You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
788B

  1. #vim: et ts =4 sts = 4 sw = 4 tw = 0
  2. set(EXAMPLES
  3. readFromString
  4. readFromStream
  5. stringWrite
  6. streamWrite
  7. )
  8. add_definitions(-D_GLIBCXX_USE_CXX11_ABI)
  9. if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
  10. add_compile_options(-Wall -Wextra)
  11. elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
  12. add_definitions(
  13. -D_SCL_SECURE_NO_WARNINGS
  14. -D_CRT_SECURE_NO_WARNINGS
  15. -D_WIN32_WINNT=0x601
  16. -D_WINSOCK_DEPRECATED_NO_WARNINGS
  17. )
  18. endif()
  19. foreach(example ${EXAMPLES})
  20. add_executable(${example} ${example}/${example}.cpp)
  21. target_include_directories(${example} PUBLIC ${CMAKE_SOURCE_DIR}/include)
  22. target_link_libraries(${example} jsoncpp_lib)
  23. endforeach()
  24. add_custom_target(examples ALL DEPENDS ${EXAMPLES})