CMakeLists.txt 517 B

12345678910111213141516171819202122
  1. cmake_minimum_required(VERSION 3.24...3.28)
  2. project(cxx_modules_objlib CXX)
  3. include("${CMAKE_SOURCE_DIR}/../cxx-modules-rules.cmake")
  4. add_library(objlib OBJECT)
  5. target_sources(objlib
  6. PUBLIC
  7. FILE_SET CXX_MODULES
  8. BASE_DIRS
  9. "${CMAKE_CURRENT_SOURCE_DIR}"
  10. FILES
  11. importable.cxx)
  12. target_compile_features(objlib PUBLIC cxx_std_20)
  13. add_executable(objmain)
  14. target_sources(objmain
  15. PRIVATE
  16. main.cxx)
  17. target_link_libraries(objmain PRIVATE objlib)
  18. add_test(NAME objmain COMMAND objmain)