tushu/CMakeLists.txt

43 lines
1.0 KiB
CMake
Raw Normal View History

2026-05-06 04:45:04 +00:00
cmake_minimum_required(VERSION 3.14)
project(BookManager VERSION 1.0.0 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
# MSVC UTF-8 编译选项
if (MSVC)
add_compile_options(/utf-8)
endif()
# ============================================
# 头文件目录
# ============================================
include_directories(${CMAKE_SOURCE_DIR}/include)
# ============================================
# 主程序可执行文件
# ============================================
add_executable(book_manager
src/main.cpp
src/app.cpp
src/book.cpp
)
target_include_directories(book_manager PRIVATE
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include>
)
# ============================================
# 测试可执行文件(使用标准库 assert
# ============================================
add_executable(basic_test
tests/basic_test.cpp
src/app.cpp
src/book.cpp
)
target_include_directories(basic_test PRIVATE
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include>
)