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)