Files
quickjs-prj/CMakeLists.txt
2026-02-02 12:48:25 +08:00

50 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.10)
project(quickjs-demo C)
# 设置 C 标准
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
# 设置输出目录
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
# 添加 yps-quickjs 子目录
add_subdirectory(yps-quickjs)
# 创建 demo 可执行文件
add_executable(demo main.c)
# 链接 yps-quickjs 库
target_link_libraries(demo PRIVATE ypqjs)
# 创建 simple_demo 可执行文件
add_executable(simple_demo simple_demo.c)
# 链接 yps-quickjs 库
target_link_libraries(simple_demo PRIVATE ypqjs)
# Windows 特定配置
if(WIN32)
# 设置 8MB 栈大小
if(MSVC)
set_target_properties(demo PROPERTIES
LINK_FLAGS "/STACK:8388608"
)
else()
set_target_properties(demo PROPERTIES
LINK_FLAGS "-Wl,--stack,8388608"
)
endif()
endif()
# 添加 include 目录
target_include_directories(demo PRIVATE
${CMAKE_SOURCE_DIR}/yps-quickjs
)
# 安装规则
install(TARGETS demo DESTINATION bin)
install(FILES main.c DESTINATION src/examples)