diff --git a/core/base/CMakeLists.txt b/core/base/CMakeLists.txt index f6b8a0be390cd..395fedf0dfb8b 100644 --- a/core/base/CMakeLists.txt +++ b/core/base/CMakeLists.txt @@ -199,15 +199,15 @@ set(BASE_SOURCES src/TVirtualX.cxx ) -set(RELATIVE_BASE_INC_HEADERS ${BASE_HEADERS}) -list(TRANSFORM RELATIVE_BASE_INC_HEADERS PREPEND inc/) +set(RELATIVE_INC_HEADERS ${BASE_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) # only here complete list of headers can be propogated to parent cmake file set_property(TARGET Core APPEND PROPERTY DICT_HEADERS ${BASE_HEADERS}) target_sources(Core PRIVATE ${BASE_SOURCES}) -if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") # https://discourse.cmake.org/t/file-set-xyz-is-listed-in-interface-file-sets-of-w-but-has-not-been-exported/9131/3 +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") target_sources( Core PRIVATE @@ -215,7 +215,8 @@ if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") # https://discourse.cmake.org/t/file TYPE HEADERS BASE_DIRS inc/ src/ FILES - ${RELATIVE_BASE_INC_HEADERS} + ${RELATIVE_INC_HEADERS} + inc/LinkDef.h src/TListOfTypes.h ) endif() diff --git a/core/clib/CMakeLists.txt b/core/clib/CMakeLists.txt index 64a874c3bc8f5..034ae14af7c48 100644 --- a/core/clib/CMakeLists.txt +++ b/core/clib/CMakeLists.txt @@ -8,12 +8,28 @@ # CMakeLists.txt file for building ROOT core/clib package ############################################################################ -set_property(TARGET Core APPEND PROPERTY DICT_HEADERS +set(CLIB_HEADERS strlcpy.h snprintf.h strtok.h ) +set(RELATIVE_INC_HEADERS ${CLIB_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +set(CLIB_RES_HEADERS + mmalloc.h + mmconfig.h + mmprivate.h +) + +set(RELATIVE_RES_HEADERS ${CLIB_RES_HEADERS}) +list(TRANSFORM RELATIVE_RES_HEADERS PREPEND res/) + +set_property(TARGET Core APPEND PROPERTY DICT_HEADERS + ${CLIB_HEADERS} +) + ROOT_OBJECT_LIBRARY(Clib src/attach.c src/detach.c @@ -31,6 +47,19 @@ ROOT_OBJECT_LIBRARY(Clib src/strlcpy.c ) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Clib + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ res/ + FILES + ${RELATIVE_INC_HEADERS} + ${RELATIVE_RES_HEADERS} + ) +endif() + target_include_directories(Clib PUBLIC $ diff --git a/core/clingutils/CMakeLists.txt b/core/clingutils/CMakeLists.txt index c3d1294aa0c87..f3589373e39be 100644 --- a/core/clingutils/CMakeLists.txt +++ b/core/clingutils/CMakeLists.txt @@ -25,6 +25,22 @@ ROOT_OBJECT_LIBRARY(ClingUtils src/TClingUtils.cxx ) +set(RELATIVE_RES_HEADERS RStl.h TClingUtils.h) +list(TRANSFORM RELATIVE_RES_HEADERS PREPEND res/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + ClingUtils + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS res/ inc/ + FILES + ${RELATIVE_RES_HEADERS} + inc/root_std_complex.h + ) +endif() + if(NOT MSVC) target_compile_options(ClingUtils PRIVATE -Wno-error) endif() diff --git a/core/cont/CMakeLists.txt b/core/cont/CMakeLists.txt index 421f8e8f0bee3..8a968e5a1db80 100644 --- a/core/cont/CMakeLists.txt +++ b/core/cont/CMakeLists.txt @@ -7,8 +7,7 @@ ############################################################################ # CMakeLists.txt file for building ROOT core/cont package ############################################################################ - -set_property(TARGET Core APPEND PROPERTY DICT_HEADERS +set(CONT_HEADERS ROOT/TSeq.hxx TArrayC.h TArrayD.h @@ -40,6 +39,8 @@ set_property(TARGET Core APPEND PROPERTY DICT_HEADERS TVirtualCollectionProxy.h ) +set_property(TARGET Core APPEND PROPERTY DICT_HEADERS ${CONT_HEADERS}) + target_sources(Core PRIVATE src/TArrayC.cxx src/TArray.cxx @@ -72,6 +73,21 @@ target_sources(Core PRIVATE target_include_directories(Core PUBLIC $) +set(RELATIVE_INC_HEADERS ${CONT_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + ) +endif() + ROOT_INSTALL_HEADERS() ROOT_ADD_TEST_SUBDIRECTORY(test) diff --git a/core/dictgen/CMakeLists.txt b/core/dictgen/CMakeLists.txt index 3df26f190b2bd..ab601687d258c 100644 --- a/core/dictgen/CMakeLists.txt +++ b/core/dictgen/CMakeLists.txt @@ -27,6 +27,36 @@ ROOT_OBJECT_LIBRARY(Dictgen XMLReader.cxx ) +set(DICTGEN_HEADERS + BaseSelectionRule.h + ClassSelectionRule.h + cygpath.h + DictSelectionReader.h + LinkdefReader.h + OptionParser.h + rootcling_impl.h + Scanner.h + SelectionRules.h + TModuleGenerator.h + VariableSelectionRule.h + XMLReader.h +) + +set(RELATIVE_RES_HEADERS ${DICTGEN_HEADERS}) +list(TRANSFORM RELATIVE_RES_HEADERS PREPEND res/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Dictgen + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS res/ + FILES + ${RELATIVE_RES_HEADERS} + ) +endif() + # This directory contains files that include llvm, which can give warnings. if(NOT MSVC) target_compile_options(Dictgen PRIVATE -Wno-error) diff --git a/core/foundation/CMakeLists.txt b/core/foundation/CMakeLists.txt index 63b93ac475843..410894214651f 100644 --- a/core/foundation/CMakeLists.txt +++ b/core/foundation/CMakeLists.txt @@ -8,7 +8,7 @@ # CMakeLists.txt file for building ROOT core/foundation package ############################################################################ -set_property(TARGET Core APPEND PROPERTY DICT_HEADERS +set(FOUNDATION_HEADERS ESTLType.h RStringView.h TClassEdit.h @@ -26,6 +26,8 @@ set_property(TARGET Core APPEND PROPERTY DICT_HEADERS ROOT/TypeTraits.hxx ) +set_property(TARGET Core APPEND PROPERTY DICT_HEADERS ${FOUNDATION_HEADERS}) + set(FOUNDATION_SOURCES src/FoundationUtils.cxx src/RConversionRuleParser.cxx @@ -38,6 +40,8 @@ set(FOUNDATION_SOURCES set(FOUNDATION_HEADER_DIRS inc/) + + target_sources(Core PRIVATE ${FOUNDATION_SOURCES}) target_include_directories(Core @@ -62,5 +66,30 @@ set_target_properties(Foundation_Stage1 PROPERTIES VISIBILITY_INLINES_HIDDEN "ON" ) + +set(RELATIVE_INC_HEADERS ${FOUNDATION_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Foundation_Stage1 + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + ) + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + ) +endif() + ROOT_INSTALL_HEADERS(${FOUNDATION_HEADER_DIRS}) ROOT_ADD_TEST_SUBDIRECTORY(test) diff --git a/core/gui/CMakeLists.txt b/core/gui/CMakeLists.txt index b51d25f3a6046..dc70c777de000 100644 --- a/core/gui/CMakeLists.txt +++ b/core/gui/CMakeLists.txt @@ -8,7 +8,7 @@ # CMakeLists.txt file for building ROOT core/meta package ############################################################################ -set_property(TARGET Core APPEND PROPERTY DICT_HEADERS +set(GUI_HEADERS GuiTypes.h TApplicationImp.h TBrowser.h @@ -25,6 +25,10 @@ set_property(TARGET Core APPEND PROPERTY DICT_HEADERS TToggle.h ) + + +set_property(TARGET Core APPEND PROPERTY DICT_HEADERS ${GUI_HEADERS}) + target_sources(Core PRIVATE src/InitGui.cxx src/TApplicationImp.cxx @@ -46,4 +50,19 @@ target_include_directories(Core PUBLIC $ ) +set(RELATIVE_INC_HEADERS ${GUI_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + ) +endif() + ROOT_INSTALL_HEADERS() diff --git a/core/imt/CMakeLists.txt b/core/imt/CMakeLists.txt index c99e8cd53ece9..a0f84d72136bb 100644 --- a/core/imt/CMakeLists.txt +++ b/core/imt/CMakeLists.txt @@ -25,13 +25,15 @@ target_link_libraries(Imt PRIVATE Thread INTERFACE Core) if(imt) target_link_libraries(Imt PRIVATE TBB::tbb) - - ROOT_GENERATE_DICTIONARY(G__Imt STAGE1 + set(IMT_HEADERS ROOT/TTaskGroup.hxx ROOT/RTaskArena.hxx ROOT/RSlotStack.hxx ROOT/TExecutor.hxx ROOT/TThreadExecutor.hxx + ) + ROOT_GENERATE_DICTIONARY(G__Imt STAGE1 + ${IMT_HEADERS} LINKDEF LinkDef.h MODULE @@ -52,8 +54,11 @@ if(imt) ROOT_ADD_TEST_SUBDIRECTORY(test) else() - ROOT_GENERATE_DICTIONARY(G__Imt STAGE1 + set(IMT_HEADERS ROOT/TExecutor.hxx + ) + ROOT_GENERATE_DICTIONARY(G__Imt STAGE1 + ${IMT_HEADERS} LINKDEF LinkDef.h MODULE @@ -64,4 +69,20 @@ else() ) endif() +set(RELATIVE_INC_HEADERS ${IMT_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Imt + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + inc/LinkDef.h + ) +endif() + ROOT_INSTALL_HEADERS() diff --git a/core/lz4/CMakeLists.txt b/core/lz4/CMakeLists.txt index ca23f250b59e1..a8422e5d8a35b 100644 --- a/core/lz4/CMakeLists.txt +++ b/core/lz4/CMakeLists.txt @@ -9,5 +9,16 @@ target_link_libraries(Core PRIVATE xxHash::xxHash LZ4::LZ4) target_include_directories(Core PUBLIC $ ) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + inc/ZipLZ4.h + ) +endif() ROOT_INSTALL_HEADERS() diff --git a/core/lzma/CMakeLists.txt b/core/lzma/CMakeLists.txt index f19eec364cb8d..2aa6d43497530 100644 --- a/core/lzma/CMakeLists.txt +++ b/core/lzma/CMakeLists.txt @@ -13,5 +13,15 @@ target_sources(Core PRIVATE src/ZipLZMA.c) target_link_libraries(Core PRIVATE LibLZMA::LibLZMA) target_include_directories(Core PUBLIC $) - +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + inc/ZipLZMA.h + ) +endif() ROOT_INSTALL_HEADERS() diff --git a/core/macosx/CMakeLists.txt b/core/macosx/CMakeLists.txt index e3e38e959316f..7d4d8d84a40e8 100644 --- a/core/macosx/CMakeLists.txt +++ b/core/macosx/CMakeLists.txt @@ -35,6 +35,20 @@ if(cocoa) target_sources(Core PRIVATE $) + if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Macosx + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + inc/CocoaUtils.h + inc/TMacOSXSystem.h + inc/LinkDef.h + ) + endif() + endif() ROOT_INSTALL_HEADERS() diff --git a/core/meta/CMakeLists.txt b/core/meta/CMakeLists.txt index 8e010343a9a34..efb8f35e3ecbf 100644 --- a/core/meta/CMakeLists.txt +++ b/core/meta/CMakeLists.txt @@ -8,7 +8,7 @@ # CMakeLists.txt file for building ROOT core/meta package ############################################################################ -set_property(TARGET Core APPEND PROPERTY DICT_HEADERS +set(META_HEADERS TBaseClass.h TClassGenerator.h TClass.h @@ -52,6 +52,8 @@ set_property(TARGET Core APPEND PROPERTY DICT_HEADERS TVirtualObject.h ) +set_property(TARGET Core APPEND PROPERTY DICT_HEADERS ${META_HEADERS}) + target_sources(Core PRIVATE src/TBaseClass.cxx src/TClass.cxx @@ -93,5 +95,19 @@ target_include_directories(Core $ ) +set(RELATIVE_INC_HEADERS ${META_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + ) +endif() ROOT_INSTALL_HEADERS() ROOT_ADD_TEST_SUBDIRECTORY(test) diff --git a/core/metacling/src/CMakeLists.txt b/core/metacling/src/CMakeLists.txt index ce830802a9b21..3339dfdd19aaf 100644 --- a/core/metacling/src/CMakeLists.txt +++ b/core/metacling/src/CMakeLists.txt @@ -37,6 +37,37 @@ ROOT_OBJECT_LIBRARY(MetaCling TClingValue.cxx ) +set (METACLING_HEADERS + ClingRAII.h + TClingBaseClassInfo.h + TClingCallbacks.h + TClingCallFunc.h + TClingClassInfo.h + TClingDataMemberInfo.h + TClingDeclInfo.h + TClingDiagnostics.h + TCling.h + TClingMemberIter.h + TClingMethodArgInfo.h + TClingMethodInfo.h + TClingRdictModuleFileExtension.h + TClingTypedefInfo.h + TClingTypeInfo.h + TClingValue.h +) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + MetaCling + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS ./ + FILES + ${METACLING_HEADERS} + ) +endif() + # This directory contains files that include llvm, which can give warnings. if(NOT MSVC) target_compile_options(MetaCling PRIVATE -Wno-error) diff --git a/core/multiproc/CMakeLists.txt b/core/multiproc/CMakeLists.txt index b506d8de530e4..125e4ceac0bfa 100644 --- a/core/multiproc/CMakeLists.txt +++ b/core/multiproc/CMakeLists.txt @@ -12,16 +12,21 @@ if(WIN32) return() endif() + +set(MULTIPROC_HEADERS + MPCode.h + MPSendRecv.h + PoolUtils.h + TMPClient.h + TMPWorker.h + TMPWorkerExecutor.h + TProcPool.h + ROOT/TProcessExecutor.hxx +) + ROOT_STANDARD_LIBRARY_PACKAGE(MultiProc STAGE1 HEADERS - MPCode.h - MPSendRecv.h - PoolUtils.h - TMPClient.h - TMPWorker.h - TMPWorkerExecutor.h - TProcPool.h - ROOT/TProcessExecutor.hxx + ${MULTIPROC_HEADERS} SOURCES src/MPSendRecv.cxx src/TMPClient.cxx @@ -33,3 +38,19 @@ ROOT_STANDARD_LIBRARY_PACKAGE(MultiProc STAGE1 Core Net ) + +set(RELATIVE_INC_HEADERS ${MULTIPROC_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + MultiProc + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + inc/LinkDef.h + ) +endif() diff --git a/core/rint/CMakeLists.txt b/core/rint/CMakeLists.txt index 80e9aea0e0fe6..cec473c3899c3 100644 --- a/core/rint/CMakeLists.txt +++ b/core/rint/CMakeLists.txt @@ -8,11 +8,15 @@ # CMakeLists.txt file for building ROOT core/rint package ############################################################################ +set(RINT_HEADERS + TRint.h + TTabCom.h +) + ROOT_STANDARD_LIBRARY_PACKAGE(Rint STAGE1 HEADERS - TRint.h - TTabCom.h + ${RINT_HEADERS} SOURCES src/TRint.cxx src/TTabCom.cxx @@ -23,5 +27,20 @@ ROOT_STANDARD_LIBRARY_PACKAGE(Rint ) target_include_directories(Core PRIVATE inc) +set(RELATIVE_INC_HEADERS ${RINT_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Rint + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + inc/LinkDef.h + ) +endif() ROOT_ADD_TEST_SUBDIRECTORY(test) diff --git a/core/testsupport/CMakeLists.txt b/core/testsupport/CMakeLists.txt index eaa1b032e0451..71ed513e25bb8 100644 --- a/core/testsupport/CMakeLists.txt +++ b/core/testsupport/CMakeLists.txt @@ -26,6 +26,19 @@ install(TARGETS ${libname} PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${header_dir}) set_property(GLOBAL APPEND PROPERTY ROOT_EXPORTED_TARGETS ${libname}) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + ${libname} + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/${header_dir} + FILES + inc/${header_dir}/TestSupport.hxx + ) +endif() + + # Make it usable inside and outside of ROOT under a single name if somebody writes their own tests using ROOT_ADD_GTEST add_library(ROOT::TestSupport ALIAS ${libname}) diff --git a/core/textinput/CMakeLists.txt b/core/textinput/CMakeLists.txt index a06f61d5a0b96..1e2cf2fc12033 100644 --- a/core/textinput/CMakeLists.txt +++ b/core/textinput/CMakeLists.txt @@ -36,4 +36,38 @@ target_include_directories(Core src ) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ src/ + FILES + inc/Getline.h + src/Getline_color.h + src/textinput/Callbacks.h + src/textinput/Callbacks.h + src/textinput/Color.h + src/textinput/Display.h + src/textinput/Editor.h + src/textinput/History.h + src/textinput/InputData.h + src/textinput/KeyBinding.h + src/textinput/Range.h + src/textinput/Reader.h + src/textinput/SignalHandler.h + src/textinput/StreamReader.h + src/textinput/StreamReaderUnix.h + src/textinput/StreamReaderWin.h + src/textinput/TerminalConfigUnix.h + src/textinput/TerminalDisplay.h + src/textinput/TerminalDisplayUnix.h + src/textinput/TerminalDisplayWin.h + src/textinput/Text.h + src/textinput/TextInputContext.h + src/textinput/TextInput.h + ) +endif() + ROOT_INSTALL_HEADERS() diff --git a/core/thread/CMakeLists.txt b/core/thread/CMakeLists.txt index 83133efce59a4..19dae01ef2e38 100644 --- a/core/thread/CMakeLists.txt +++ b/core/thread/CMakeLists.txt @@ -27,23 +27,27 @@ else() ) endif() +set(THREAD_HEADERS + TAtomicCount.h + TCondition.h + TConditionImp.h + TMutex.h + TMutexImp.h + TRWLock.h + TSemaphore.h + TThreadFactory.h + TThread.h + TThreadImp.h + TThreadPool.h + ROOT/TRWSpinLock.hxx + ROOT/TSpinMutex.hxx + ROOT/TThreadedObject.hxx +) + ROOT_STANDARD_LIBRARY_PACKAGE(Thread HEADERS ${PLATFORM_HEADERS} - TAtomicCount.h - TCondition.h - TConditionImp.h - TMutex.h - TMutexImp.h - TRWLock.h - TSemaphore.h - TThreadFactory.h - TThread.h - TThreadImp.h - TThreadPool.h - ROOT/TRWSpinLock.hxx - ROOT/TSpinMutex.hxx - ROOT/TThreadedObject.hxx + ${THREAD_HEADERS} SOURCES src/TCondition.cxx src/TConditionImp.cxx @@ -69,6 +73,22 @@ target_include_directories(Core PUBLIC $ ) +set(RELATIVE_INC_HEADERS ${PLATFORM_HEADERS} ${THREAD_HEADERS}) +list(TRANSFORM RELATIVE_INC_HEADERS PREPEND inc/) + +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Thread + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + ${RELATIVE_INC_HEADERS} + inc/LinkDef.h + ) +endif() + target_link_libraries(Thread PUBLIC ${CMAKE_THREAD_LIBS_INIT}) target_include_directories(Thread PUBLIC diff --git a/core/unix/CMakeLists.txt b/core/unix/CMakeLists.txt index f1bfed48174af..91742f801e719 100644 --- a/core/unix/CMakeLists.txt +++ b/core/unix/CMakeLists.txt @@ -15,6 +15,18 @@ endif() set_property(TARGET Core APPEND PROPERTY DICT_HEADERS TUnixSystem.h) target_sources(Core PRIVATE src/TUnixSystem.cxx) target_include_directories(Core PRIVATE inc ../clib/res) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + inc/TUnixSystem.h + inc/LinkDef.h + ) +endif() if (CMAKE_SYSTEM_NAME MATCHES FreeBSD) target_link_libraries(Core PRIVATE execinfo util) diff --git a/core/winnt/CMakeLists.txt b/core/winnt/CMakeLists.txt index e5810ab8ecb4a..1f1aa47886716 100644 --- a/core/winnt/CMakeLists.txt +++ b/core/winnt/CMakeLists.txt @@ -30,4 +30,20 @@ target_link_libraries(Core PRIVATE target_include_directories(Core PRIVATE inc) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + inc/TWin32SplashThread.h + inc/TWinNTSystem.h + inc/Win32Constants.h + inc/Windows4Root.h + inc/LinkDef.h + ) +endif() + ROOT_INSTALL_HEADERS() diff --git a/core/zip/CMakeLists.txt b/core/zip/CMakeLists.txt index 558cbde6aaed1..13f1947f762a8 100644 --- a/core/zip/CMakeLists.txt +++ b/core/zip/CMakeLists.txt @@ -19,6 +19,22 @@ target_include_directories(Core PUBLIC $ ) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ src/ + FILES + inc/Compression.h + inc/RZip.h + src/Bits.h + src/Tailor.h + src/ZIP.h + ) +endif() + ROOT_INSTALL_HEADERS() ROOT_ADD_TEST_SUBDIRECTORY(test) diff --git a/core/zstd/CMakeLists.txt b/core/zstd/CMakeLists.txt index 899fcc8dbd3e7..9c80673d7b113 100644 --- a/core/zstd/CMakeLists.txt +++ b/core/zstd/CMakeLists.txt @@ -8,4 +8,15 @@ target_link_libraries(Core PRIVATE ZSTD::ZSTD) target_include_directories(Core PUBLIC $) +if(NOT CMAKE_VERSION VERSION_LESS "3.23.0") + target_sources( + Core + PRIVATE + FILE_SET private_header_files + TYPE HEADERS + BASE_DIRS inc/ + FILES + inc/ZipZSTD.h + ) +endif() ROOT_INSTALL_HEADERS()