Skip to content

Conversation

@akritkbehera
Copy link
Contributor

@akritkbehera akritkbehera commented Oct 10, 2025

This update bumps Catch2 from version v2 to v3,

This PR includes

  • Changes to catch2.spec to use the new CMake-based v3 build system.
  • Changes to catch2.xml to detect and register the correct libraries (Catch2 and Catch2Main) for SCRAM.

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 10, 2025

cms-bot internal usage

@akritkbehera akritkbehera changed the title Catch2 update [Do Not Merge]Catch2 update Oct 10, 2025
@akritkbehera
Copy link
Contributor Author

please test with cms-sw/cmssw#49121 for CMSSW_16_0_X

@smuzaffar
Copy link
Contributor

@akritkbehera , there is no need to rename the package, just use the catch2.apec (all packages for scram are anyway lower case). Revert the rename change and force pushed it

@iarspider
Copy link
Contributor

@smuzaffar do we need to bump tool file version?

@cmsbuild
Copy link
Contributor

-1

Failed Tests: Build ClangBuild
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-00a688/48602/summary.html
COMMIT: b694055
CMSSW: CMSSW_16_0_X_2025-10-10-1100/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/10119/48602/install.sh to create a dev area with all the needed externals and cmssw changes.

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:

You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-00a688/48602/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-00a688/48602/git-merge-result

Build

I found compilation error when building:

>> Package SimCalorimetry/EcalZeroSuppressionAlgos built
Copying tmp/el8_amd64_gcc13/src/DataFormats/SoATemplate/test/testRocmSoALayoutAndView_t/libtestRocmSoALayoutAndView_t_rocm.a to productstore area:
Copying tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaCopyBufferToDeviceROCmAsync/libalpakaCopyBufferToDeviceROCmAsync_rocm.a to productstore area:
cp: cannot stat 'tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaCopyBufferToDeviceROCmAsync/libalpakaCopyBufferToDeviceROCmAsync_rocm.a': No such file or directory
>> Deleted: tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaCopyBufferToDeviceROCmAsync/libalpakaCopyBufferToDeviceROCmAsync_rocm.a
gmake: *** [config/SCRAM/GMake/Makefile.rules:1920: tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaCopyBufferToDeviceROCmAsync/libalpakaCopyBufferToDeviceROCmAsync_rocm.a] Error 1
Copying tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaMoveToDeviceAsyncROCmAsync/libalpakaMoveToDeviceAsyncROCmAsync_rocm.a to productstore area:
cp: cannot stat 'tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaMoveToDeviceAsyncROCmAsync/libalpakaMoveToDeviceAsyncROCmAsync_rocm.a': No such file or directory
>> Deleted: tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaMoveToDeviceAsyncROCmAsync/libalpakaMoveToDeviceAsyncROCmAsync_rocm.a
gmake: *** [config/SCRAM/GMake/Makefile.rules:1920: tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaMoveToDeviceAsyncROCmAsync/libalpakaMoveToDeviceAsyncROCmAsync_rocm.a] Error 1
Copying tmp/el8_amd64_gcc13/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestAtomicPairCounterROCmAsync/libalpakaTestAtomicPairCounterROCmAsync_rocm.a to productstore area:


Clang Build

I found compilation error while trying to compile with clang. Command used:

USER_CUDA_FLAGS='--expt-relaxed-constexpr' USER_CXXFLAGS='-Wno-register -fsyntax-only' /usr/bin/time -v scram build -k -j 32 COMPILER='llvm compile'

>> Entering Package TrackingTools/TrajectoryParametrization
>> Entering Package TrackingTools/TrajectoryState
>> Entering Package TrackingTools/TransientTrack
>> Entering Package TrackingTools/TransientTrackingRecHit
>> Compile sequence completed for CMSSW CMSSW_16_0_X_2025-10-10-1100
gmake: *** [There are compilation/build errors. Please see the detail log above.] Error 1
Command exited with non-zero status 1
	Command being timed: "scram build -k -j 32 COMPILER=llvm compile BUILD_LOG=yes"
	User time (seconds): 45249.95
	System time (seconds): 5527.04
	Percent of CPU this job got: 1428%


@cmsbuild
Copy link
Contributor

Pull request #10119 was updated.

@akritkbehera
Copy link
Contributor Author

please test with cms-sw/cmssw#49121 for CMSSW_16_0_X

@akritkbehera
Copy link
Contributor Author

@akritkbehera , there is no need to rename the package, just use the catch2.apec (all packages for scram are anyway lower case). Revert the rename change and force pushed it

The source archive unpacks to 'Catch2-%{realversion}', so I’m using that name here instead of %{n}.
%setup -q -n Catch2-%{version}

@cmsbuild
Copy link
Contributor

-1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-00a688/48608/summary.html
COMMIT: c0a04e0
CMSSW: CMSSW_16_0_X_2025-10-10-2300/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/10119/48608/install.sh to create a dev area with all the needed externals and cmssw changes.

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-00a688/48616/summary.html
COMMIT: 1b42c1e
CMSSW: CMSSW_16_0_X_2025-10-11-1100/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/10119/48616/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 17 lines to the logs
  • Reco comparison results: 2 differences found in the comparisons
  • DQMHistoTests: Total files compared: 51
  • DQMHistoTests: Total histograms compared: 3940073
  • DQMHistoTests: Total failures: 55
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3939998
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 50 files compared)
  • Checked 218 log files, 188 edm output root files, 51 DQM output files
  • TriggerResults: no differences found

@akritkbehera akritkbehera changed the title [Do Not Merge]Catch2 update Update Catch2 from v2 to v3 Oct 12, 2025
@akritkbehera akritkbehera marked this pull request as ready for review October 12, 2025 09:06
@smuzaffar
Copy link
Contributor

@Dr15Jones , do we care if catch2 libs are archive or shared?

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @akritkbehera for branch IB/CMSSW_16_0_X/master.

@akritkbehera, @iarspider, @smuzaffar can you please review it and eventually sign? Thanks.
@ftenchini, @mandrenguyen, @sextonkennedy you are the release manager for this.
cms-bot commands are listed here

@Dr15Jones
Copy link

do we care if catch2 libs are archive or shared?

Given catch2 is only meant to generate executables and not libraries, I don't think it matters.

@smuzaffar
Copy link
Contributor

please test with cms-sw/cmssw#49121 for CMSSW_16_0_X

@cmsbuild
Copy link
Contributor

Pull request #10119 was updated.

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-00a688/48633/summary.html
COMMIT: 38c18f0
CMSSW: CMSSW_16_0_X_2025-10-12-2300/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmsdist/10119/48633/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 20 lines to the logs
  • Reco comparison results: 8 differences found in the comparisons
  • DQMHistoTests: Total files compared: 51
  • DQMHistoTests: Total histograms compared: 3940073
  • DQMHistoTests: Total failures: 61
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3939992
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 50 files compared)
  • Checked 218 log files, 188 edm output root files, 51 DQM output files
  • TriggerResults: no differences found

@smuzaffar
Copy link
Contributor

+externals

@cms-orp, this should be merged along with cms-sw/cmssw#49121

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next IB/CMSSW_16_0_X/master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @ftenchini, @mandrenguyen, @sextonkennedy (and backports should be raised in the release meeting by the corresponding L2)
Notice This PR was tested with additional Pull Request(s), please also merge them if necessary: cms-sw/cmssw#49121

@cmsbuild
Copy link
Contributor

REMINDER @ftenchini, @mandrenguyen, @sextonkennedy: This PR was tested with cms-sw/cmssw#49121, please check if they should be merged together

@mandrenguyen
Copy link

+1

@cmsbuild cmsbuild merged commit 3e8f958 into IB/CMSSW_16_0_X/master Oct 14, 2025
9 checks passed
@smuzaffar smuzaffar deleted the update_Catch2 branch November 3, 2025 21:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants