Files
menu/CMakeLists.txt
2025-12-19 10:22:28 +08:00

46 lines
808 B
CMake

cmake_minimum_required(VERSION 3.10)
project(menu VERSION 1.3.0 LANGUAGES C)
# 设置C标准
set(CMAKE_C_STANDARD 99)
set(CMAKE_C_STANDARD_REQUIRED ON)
# 库源文件
set(MENU_SOURCES
menu.c
)
# 库头文件
set(MENU_HEADERS
menu.h
)
# 创建静态库
add_library(menu STATIC ${MENU_SOURCES})
# 设置库的公共头文件
set_target_properties(menu PROPERTIES
PUBLIC_HEADER "${MENU_HEADERS}"
)
# 包含当前目录
target_include_directories(menu PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<INSTALL_INTERFACE:include>
)
# 示例程序
option(BUILD_EXAMPLES "Build examples" ON)
if(BUILD_EXAMPLES)
# 添加示例目录
add_subdirectory(examples)
endif()
# 安装规则
install(TARGETS menu
ARCHIVE DESTINATION lib
PUBLIC_HEADER DESTINATION include
)