Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

46 lines
967B

  1. cmake_minimum_required(VERSION 3.2)
  2. project(ScopeGuard VERSION 0.0.1)
  3. message(STATUS "~~~ ${PROJECT_NAME} v${PROJECT_VERSION} ~~~")
  4. set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
  5. option(UNITTEST "Build Unit Tests" ON)
  6. if( CMAKE_BUILD_TYPE )
  7. message(STATUS "Build Type : ${CMAKE_BUILD_TYPE}")
  8. else()
  9. message(STATUS "Build Type : None")
  10. endif()
  11. add_compile_options(-Wall
  12. -Wextra
  13. -pedantic
  14. -Werror
  15. -Wshadow
  16. -Wold-style-cast
  17. )
  18. set(CMAKE_CXX_STANDARD 14)
  19. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  20. set(CMAKE_CXX_EXTENSIONS OFF)
  21. add_library(ScopeGuard INTERFACE)
  22. target_include_directories(ScopeGuard INTERFACE
  23. $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
  24. $<INSTALL_INTERFACE:include>)
  25. if( UNITTEST )
  26. enable_testing()
  27. add_subdirectory("test")
  28. endif()
  29. include(Install)