Skip to content

[rootest] improve cmake of root/meta tests #19589

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 25 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
24ad31f
[roottest] adjust meta/autoloading tests
linev Aug 8, 2025
9502aa7
[rootest] use cmake for meta/callfunc
linev Aug 8, 2025
701dd67
[rootest] convert to cmake meta/cmsUnload
linev Aug 8, 2025
34e95d3
[roottest] improve cmake for meta/dictSelection
linev Aug 8, 2025
7e17673
[roottest] adjust cmake for meta/enumPayloadManipulation test
linev Aug 8, 2025
57bf4c2
[roottest] improve cmake for meta/enums tests
linev Aug 8, 2025
8613774
[roottest] improve cmake for meta/evolution tests
linev Aug 8, 2025
8d8dfa9
[roottest] improve cmake in meta/fwdDecls tests
linev Aug 8, 2025
3e3c6b4
[roottest] improve cmake for meta/genreflex tests
linev Aug 8, 2025
8e6f1e9
[roottest] adjust cmake for genreflex sub-tests
linev Aug 8, 2025
3cdd1dc
[roottest] adjust cmake for meta/genreflex sub-tests
linev Aug 8, 2025
afbd085
[roottest] switch genreflex/ROOT-5768 to cmake
linev Aug 8, 2025
b677faf
[roottest] use fixtures in meta/MakeProject
linev Aug 8, 2025
0d77723
[roottest] adjust meta/iotypeioname test
linev Aug 11, 2025
87891e5
[roottest] remove unused files for meta/loadAllLibs
linev Aug 11, 2025
7613c5a
[roottest] make explicit list of meta/method tests
linev Aug 11, 2025
c7550b4
[roottest] explicit list of meta/naming tests
linev Aug 11, 2025
0f96e2e
[roottest adjust cmake for meta/race-12552 test
linev Aug 11, 2025
a276879
[roottest] adjust cmake for meta/ROOT-5694
linev Aug 11, 2025
ec78cf8
[roottest] use cmake for meta/ROOT-7462 tests
linev Aug 11, 2025
a9e8fe0
[roottest] adjust meta/ROOT-10804 test
linev Aug 11, 2025
819d198
[roottest] adjust cmake for meta/rootmap tests
linev Aug 11, 2025
d456eec
[roottest] adjust cmake for meta/tclass tests
linev Aug 11, 2025
1c8b25a
[roottest] adjust meta/tuple cmake
linev Aug 11, 2025
0a3e126
[roottest] convert to cmake meta/ROOT-7181 tests
linev Aug 11, 2025
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
1 change: 0 additions & 1 deletion roottest/root/meta/MakeProject/.rootrc

This file was deleted.

48 changes: 28 additions & 20 deletions roottest/root/meta/MakeProject/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
ROOTTEST_GENERATE_DICTIONARY(stl_makeproject_test stl_makeproject_test.h LINKDEF stl_makeproject_test_linkdef.h NO_ROOTMAP NO_CXXMODULE)
ROOTTEST_GENERATE_DICTIONARY(stl_makeproject_test
stl_makeproject_test.h
LINKDEF stl_makeproject_test_linkdef.h
NO_ROOTMAP NO_CXXMODULE
FIXTURES_SETUP root-meta-MakeProject-stl_makeproject_test-fixture)
# If we build roottest in-tree, add a dependecy on Hist because the header
# includes TH1D.
if(TARGET Hist)
add_dependencies(stl_makeproject_test Hist)
endif()

if(ROOT_runtime_cxxmodules_FOUND)
# FIXME: For C++ modules builds, module.modulemap is generated during configuration time
if(runtime_cxxmodules)
# FIXME: For C++ modules builds, module.modulemap is generated during configuration time
# and it is not needed during execution of stltest*, but later for other tests it needs to be back in build directory.
# FIXME: We need to run some tests in serial mode, because in very-parallel builds,
# since they access the same build directory, they could conflict via existent/not module.modulemap file.
Expand All @@ -18,8 +22,7 @@ if(ROOT_runtime_cxxmodules_FOUND)
OUTCNV atlasaod_convert.sh
OUTREF atlasaod.ref
LABELS longtest
RUN_SERIAL
)
RUN_SERIAL)

ROOTTEST_ADD_TEST(runcms310
COPY_TO_BUILDDIR enable_modulemap.sh
Expand All @@ -39,34 +42,35 @@ if(ROOT_runtime_cxxmodules_FOUND)
OUTCNV aliceesd_convert.sh
OUTREF aliceesd.ref
RUN_SERIAL)

ROOTTEST_ADD_TEST(examples
COPY_TO_BUILDDIR enable_modulemap.sh
COPY_TO_BUILDDIR enable_modulemap.sh disable_modulemap.sh stl_makeproject_test.h
PRECMD ./enable_modulemap.sh ${CMAKE_CURRENT_BINARY_DIR}
COPY_TO_BUILDDIR stl_makeproject_test.h
MACRO create_makeproject_examples.C
OUTREF create_makeproject_examples.ref
DEPENDS ${GENERATE_DICTIONARY_TEST} stl_makeproject_test-build)
FIXTURES_REQUIRED root-meta-MakeProject-stl_makeproject_test-fixture
FIXTURES_SETUP root-meta-MakeProject-examples-fixture)

ROOTTEST_ADD_TEST(stltest
COPY_TO_BUILDDIR disable_modulemap.sh enable_modulemap.sh
PRECMD ./disable_modulemap.sh ${CMAKE_CURRENT_BINARY_DIR}
MACRO runstltest.C
POSTCMD ./enable_modulemap.sh ${CMAKE_CURRENT_BINARY_DIR}
OUTREF teststlCTEST.ref
DEPENDS examples)
FIXTURES_REQUIRED root-meta-MakeProject-examples-fixture
FIXTURES_SETUP root-meta-MakeProject-stltest-fixture)

ROOTTEST_ADD_TEST(stltest2
COPY_TO_BUILDDIR disable_modulemap.sh enable_modulemap.sh
PRECMD ./disable_modulemap.sh ${CMAKE_CURRENT_BINARY_DIR}
MACRO runstltest2.C
POSTCMD ./enable_modulemap.sh ${CMAKE_CURRENT_BINARY_DIR}
DEPENDS stltest)
OUTREF stltest2.ref
FIXTURES_REQUIRED root-meta-MakeProject-stltest-fixture)

ROOTTEST_ADD_TEST(foreign
COPY_TO_BUILDDIR enable_modulemap.sh foreign.root
PRECMD ./enable_modulemap.sh ${CMAKE_CURRENT_BINARY_DIR}
MACRO runforeign.C
OUTREF foreign.ref
RUN_SERIAL)
else()
ROOTTEST_ADD_TEST(runatlasaod
Expand All @@ -88,24 +92,28 @@ else()
MACRO runaliceesd.C
OUTCNV aliceesd_convert.sh
OUTREF aliceesd.ref)

ROOTTEST_ADD_TEST(examples
COPY_TO_BUILDDIR stl_makeproject_test.h
MACRO create_makeproject_examples.C
OUTREF create_makeproject_examples.ref
DEPENDS ${GENERATE_DICTIONARY_TEST} stl_makeproject_test-build)
FIXTURES_REQUIRED root-meta-MakeProject-stl_makeproject_test-fixture
FIXTURES_SETUP root-meta-MakeProject-examples-fixture)

ROOTTEST_ADD_TEST(stltest
MACRO runstltest.C
OUTREF teststlCTEST${ref_suffix}
DEPENDS examples)

FIXTURES_REQUIRED root-meta-MakeProject-examples-fixture
FIXTURES_SETUP root-meta-MakeProject-stltest-fixture)

ROOTTEST_ADD_TEST(stltest2
MACRO runstltest2.C
DEPENDS stltest)
OUTREF stltest2.ref
FIXTURES_REQUIRED root-meta-MakeProject-stltest-fixture)

ROOTTEST_ADD_TEST(foreign
COPY_TO_BUILDDIR foreign.root
MACRO runforeign.C)
COPY_TO_BUILDDIR foreign.root
MACRO runforeign.C
OUTREF foreign.ref)
endif()

134 changes: 0 additions & 134 deletions roottest/root/meta/MakeProject/Makefile

This file was deleted.

6 changes: 3 additions & 3 deletions roottest/root/meta/MakeProject/foreign.ref
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
Processing runforeign.C...
Warning in <TClass::Init>: no dictionary for class ndtf::FinalStateParticle is available
MakeProject has generated 1 classes in foreign
MAKEP file has been generated
foreign.so has been generated
foreign.so has been dynamically linked
foreign/MAKEP file has been generated
Shared lib foreign/foreign.so has been generated
Shared lib foreign/foreign.so has been dynamically linked
10 changes: 10 additions & 0 deletions roottest/root/meta/MakeProject/foreign_win32.ref
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

Processing runforeign.C...
Warning in <TClass::Init>: no dictionary for class ndtf::FinalStateParticle is available


foreignProjectSource.cxx
MakeProject has generated 1 classes in foreign
foreign/MAKEP file has been generated
Shared lib foreign/foreign.so has been generated
Shared lib foreign/foreign.so has been dynamically linked
10 changes: 10 additions & 0 deletions roottest/root/meta/MakeProject/foreign_win64.ref
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

Processing runforeign.C...
Warning in <TClass::Init>: no dictionary for class ndtf::FinalStateParticle is available


foreignProjectSource.cxx
MakeProject has generated 1 classes in foreign
foreign/MAKEP file has been generated
Shared lib foreign/foreign.so has been generated
Shared lib foreign/foreign.so has been dynamically linked
7 changes: 0 additions & 7 deletions roottest/root/meta/MakeProject/teststl.ref

This file was deleted.

8 changes: 5 additions & 3 deletions roottest/root/meta/ROOT-10804/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
ROOTTEST_GENERATE_REFLEX_DICTIONARY(ROOT10804 ROOT10804.h SELECTION selection.xml)
set(depends ${GENERATE_REFLEX_TEST})
ROOTTEST_GENERATE_REFLEX_DICTIONARY(ROOT10804
ROOT10804.h
SELECTION selection.xml
FIXTURES_SETUP root-meta-10804-fixture)

ROOTTEST_ADD_TEST(execROOT10804
MACRO execROOT10804.C
OUTREF execROOT10804.oref
ERRREF execROOT10804.eref
DEPENDS ${depends})
FIXTURES_REQUIRED root-meta-10804-fixture)
1 change: 0 additions & 1 deletion roottest/root/meta/ROOT-5694/.rootrc

This file was deleted.

6 changes: 3 additions & 3 deletions roottest/root/meta/ROOT-5694/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@ if(NOT MSVC OR win_broken_tests)
ROOTTEST_GENERATE_REFLEX_DICTIONARY(One One.h
SELECTION One_selection.xml
NO_ROOTMAP
FIXTURES_SETUP execLoadLibs_fixture)
FIXTURES_SETUP root-meta-5694-One-fixture)

ROOTTEST_GENERATE_REFLEX_DICTIONARY(Two Two.h
SELECTION Two_selection.xml
NO_ROOTMAP
FIXTURES_SETUP execLoadLibs_fixture)
FIXTURES_SETUP root-meta-5694-Two-fixture)
ROOTTEST_ADD_TEST(execLoadLibs
MACRO execLoadLibs.C
OUTREF execLoadLibs.oref
ERRREF execLoadLibs.eref
FIXTURES_REQUIRED execLoadLibs_fixture)
FIXTURES_REQUIRED root-meta-5694-One-fixture root-meta-5694-Two-fixture)
endif()
17 changes: 0 additions & 17 deletions roottest/root/meta/ROOT-5694/Makefile

This file was deleted.

2 changes: 0 additions & 2 deletions roottest/root/meta/ROOT-7181/.rootrc

This file was deleted.

52 changes: 44 additions & 8 deletions roottest/root/meta/ROOT-7181/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,44 @@
#-------------------------------------------------------------------------------
#
# Placeholder file to translate the tests to the new CTest system. Meanwhile we
# define a CTest test that calls 'make' in ${CMAKE_CURRENT_SOURCE_DIR}
#
#-------------------------------------------------------------------------------

ROOTTEST_ADD_OLDTEST()
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/inc)

ROOTTEST_GENERATE_REFLEX_DICTIONARY(btag
inc/BTagVertex_v1.h
SELECTION inc/btag_selection.xml
FIXTURES_SETUP root-meta-7181-btag-fixture)

ROOTTEST_GENERATE_REFLEX_DICTIONARY(jet
inc/Jet_v1.h
SELECTION inc/jet_selection.xml
FIXTURES_SETUP root-meta-7181-jet-fixture)

ROOTTEST_GENERATE_REFLEX_DICTIONARY(sjet
inc/SJet_v1.h
SELECTION inc/sjet_selection.xml
FIXTURES_SETUP root-meta-7181-sjet-fixture)

macro(ROOT_7181_TEST name use_rmap)
if(${use_rmap} STREQUAL "true")
set(testname rmap-${name})
else()
set(testname ${name})
endif()

ROOTTEST_ADD_TEST(${testname}
MACRO runscript.C
MACROARG "\"${CMAKE_CURRENT_SOURCE_DIR}/scripts/${name}.script\",${use_rmap}"
ROOTEXE_OPTS -e "gInterpreter->AddIncludePath(\"-I${CMAKE_CURRENT_SOURCE_DIR}\")"
-e "gInterpreter->AddIncludePath(\"-I${CMAKE_CURRENT_SOURCE_DIR}/inc\")"
OUTREF ${testname}.ref
FIXTURES_REQUIRED root-meta-7181-btag-fixture
root-meta-7181-jet-fixture
root-meta-7181-sjet-fixture)
endmacro(ROOT_7181_TEST)

ROOT_7181_TEST(case1 false)
ROOT_7181_TEST(case2 false)
ROOT_7181_TEST(case3 false)
ROOT_7181_TEST(case4 false)

ROOT_7181_TEST(case1 true)
ROOT_7181_TEST(case2 true)
ROOT_7181_TEST(case3 true)
ROOT_7181_TEST(case4 true)
Loading
Loading