Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions core/base/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -198,23 +198,24 @@ 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
FILE_SET private_header_files
TYPE HEADERS
BASE_DIRS inc/ src/
FILES
${RELATIVE_BASE_INC_HEADERS}
${RELATIVE_INC_HEADERS}
inc/LinkDef.h
src/TListOfTypes.h
)
endif()
Expand Down
31 changes: 30 additions & 1 deletion core/clib/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
Expand Down
16 changes: 16 additions & 0 deletions core/clingutils/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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()
Expand Down
20 changes: 18 additions & 2 deletions core/cont/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -72,6 +73,21 @@ target_sources(Core PRIVATE
target_include_directories(Core
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>)

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)
30 changes: 30 additions & 0 deletions core/dictgen/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
31 changes: 30 additions & 1 deletion core/foundation/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -25,6 +25,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
Expand All @@ -37,6 +39,8 @@ set(FOUNDATION_SOURCES

set(FOUNDATION_HEADER_DIRS inc/)



target_sources(Core PRIVATE ${FOUNDATION_SOURCES})

target_include_directories(Core
Expand All @@ -61,5 +65,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)
21 changes: 20 additions & 1 deletion core/gui/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand All @@ -46,4 +50,19 @@ target_include_directories(Core PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
)

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()
26 changes: 24 additions & 2 deletions core/imt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,15 @@ ROOT_LINKER_LIBRARY(Imt
target_link_libraries(Imt PRIVATE Thread INTERFACE Core)

if(imt)
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
Expand All @@ -57,8 +60,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
Expand All @@ -69,4 +75,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()
11 changes: 11 additions & 0 deletions core/lz4/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,16 @@ target_link_libraries(Core PRIVATE xxHash::xxHash LZ4::LZ4)
target_include_directories(Core PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/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/ZipLZ4.h
)
endif()

ROOT_INSTALL_HEADERS()
12 changes: 11 additions & 1 deletion core/lzma/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,15 @@ target_sources(Core PRIVATE src/ZipLZMA.c)
target_link_libraries(Core PRIVATE LibLZMA::LibLZMA)

target_include_directories(Core PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/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/ZipLZMA.h
)
endif()
ROOT_INSTALL_HEADERS()
14 changes: 14 additions & 0 deletions core/macosx/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,20 @@ if(cocoa)

target_sources(Core PRIVATE $<TARGET_OBJECTS:Macosx>)

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
inc/LinkDef.h
)
endif()

endif()

ROOT_INSTALL_HEADERS()
Loading
Loading