Skip to content

Support for LCG109#203

Closed
olantwin wants to merge 15 commits intomainfrom
feat/lcg-109-system-packages
Closed

Support for LCG109#203
olantwin wants to merge 15 commits intomainfrom
feat/lcg-109-system-packages

Conversation

@olantwin
Copy link
Copy Markdown
Contributor

After several false starts, another attempt of using packages from LCG where possible.

@olantwin olantwin force-pushed the feat/lcg-109-system-packages branch from 3a619e4 to adeab45 Compare March 23, 2026 20:04
Use config tools and pkg-config instead of hardcoded paths. Add
checks for eigen3, clhep, xrootd. Relax library checks and guard
brew calls on non-macOS platforms.
@olantwin olantwin force-pushed the feat/lcg-109-system-packages branch from adeab45 to 32ca13f Compare March 25, 2026 14:39
Update Python package versions, fmt, and apfel to match LCG 109.
Use config tools (pythia8-config, geant4-config, genie-config,
pkg-config) and GCC introspection to find dependency paths when
building with --always-prefer-system. Covers ROOT, GENIE, FairShip,
and ROOTEGPythia6.
Pass -std=gnu11 unconditionally for GEANT3 C code to fix K&R-style
declarations broken by GCC 15's default -std=gnu23. Add GCC 15
libstdc++ to LD_LIBRARY_PATH for FairRoot, disable FairRoot tests
to avoid Catch2 RPATH issue, and guard the tests subdirectory.
Make module load entries conditional on the dependency being built
(not system-provided) across evtgen, geant3, genie, pythia,
tauolapp, and vgm recipes. Resolve FairShip modulefile include
paths at build time instead of using runtime env vars.
LCG views do not set *_ROOT environment variables. Fall back to
searching CMAKE_PREFIX_PATH for package include directories.
Also handle lib64 for HepMC3.
Search CMAKE_PREFIX_PATH when *_ROOT is unset. Replace EvtGen's
EVTGEN_VERSION check with a proper file-based detection.
Handle lib64 for EvtGen.
CMAKE_SHARED_LINKER_FLAGS was missing -L for the GCC runtime lib
directory, causing shared libraries to link against the system
libstdc++ instead of the LCG GCC 15 one.
@olantwin olantwin force-pushed the feat/lcg-109-system-packages branch from 32ca13f to 5588d80 Compare March 26, 2026 09:04
Fetch Git LFS files (field maps etc.) before rsync to avoid
installing pointer stubs. Clean stale CMakeCache.txt from in-source
cmake runs. Patch FairShip Python files to load libCLHEP instead of
the non-existent libG4clhep in Geant4 11.
The compiler needs the include path to find Pythia8/Pythia.h when
detecting the system installation.
The compiler needs the include path to find LHAPDF/LHAPDF.h when
detecting the system installation.
The compiler needs the include path to find HepMC/HepMCDefs.h when
detecting the system installation.
Skip building when alibuild-generate-module is already available.
@olantwin
Copy link
Copy Markdown
Contributor Author

Superseded by #216 (consolidated LCG branch)

@olantwin olantwin closed this Apr 10, 2026
@olantwin olantwin deleted the feat/lcg-109-system-packages branch April 21, 2026 13:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant