CMakeLists.txt 596 B

12345678910111213141516171819202122
  1. cmake_minimum_required(VERSION 3.24)
  2. project(cxx_modules_public_req_private CXX)
  3. include("${CMAKE_SOURCE_DIR}/../cxx-modules-rules.cmake")
  4. add_library(public_req_private)
  5. target_sources(public_req_private
  6. PRIVATE
  7. FILE_SET private TYPE CXX_MODULES
  8. BASE_DIRS
  9. "${CMAKE_CURRENT_SOURCE_DIR}"
  10. FILES
  11. priv.cxx
  12. PUBLIC
  13. FILE_SET public TYPE CXX_MODULES
  14. BASE_DIRS
  15. "${CMAKE_CURRENT_SOURCE_DIR}"
  16. FILES
  17. pub.cxx)
  18. target_compile_features(public_req_private PUBLIC cxx_std_20)
  19. add_test(NAME cmake-version COMMAND "${CMAKE_COMMAND}" --version)