CMakeLists.txt 644 B

1234567891011121314151617181920212223242526
  1. cmake_minimum_required(VERSION 3.10)
  2. project(cjson)
  3. set(CMAKE_C_STANDARD 11)
  4. set(CMAKE_CXX_STANDARD 17)
  5. include_directories(${CMAKE_CURRENT_LIST_DIR}/include)
  6. include_directories(${CMAKE_CURRENT_LIST_DIR}/../pocketpy/include)
  7. if(MSVC)
  8. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /utf-8 /O2")
  9. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc /utf-8 /O2")
  10. else()
  11. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2")
  12. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexceptions -O2")
  13. endif()
  14. set(CMAKE_POSITION_INDEPENDENT_CODE ON)
  15. add_library(
  16. cjson
  17. STATIC
  18. ${CMAKE_CURRENT_LIST_DIR}/src/cJSON.c
  19. ${CMAKE_CURRENT_LIST_DIR}/src/cJSONw.cpp
  20. )