Bugfix: ODR violation #251
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: eic-shell | |
on: | |
push: | |
branches: [ master ] | |
pull_request: | |
branches: [ master ] | |
jobs: | |
jana2_eicshell: | |
name: eic-shell | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: cvmfs-contrib/github-action-cvmfs@v2 | |
- name: cmake | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
mkdir -p $GITHUB_WORKSPACE/build | |
cd $GITHUB_WORKSPACE/build | |
cmake .. \ | |
-DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE \ | |
-DCMAKE_BUILD_TYPE=Debug \ | |
-DCMAKE_CXX_STANDARD=20 \ | |
-DUSE_PYTHON=ON \ | |
-DUSE_ROOT=ON \ | |
-DUSE_PODIO=ON \ | |
-DUSE_XERCES=ON \ | |
-DUSE_ZEROMQ=ON \ | |
-DXercesC_DIR=/opt/local | |
- name: make install | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
make -j4 install | |
- name: Examine JANA2 dynamic linking | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export JANA_PLUGIN_PATH=$JANA_HOME/plugins | |
export LD_LIBRARY_PATH=$JANA_HOME/lib:$JANA_HOME/lib/JANA/plugins:$LD_LIBRARY_PATH | |
echo "ldd bin/jana" | |
ldd bin/jana | |
echo "ldd bin/libJANA.so" | |
ldd lib/libJANA.so | |
echo "bin/jana rpath" | |
objdump -x bin/jana | grep PATH | |
echo "lib/libJANA.so rpath" | |
objdump -x lib/libJANA.so | grep PATH | |
echo "lib/JANA/plugins/TimesliceExample.so" | |
objdump -x lib/JANA/plugins/TimesliceExample.so | grep PATH | |
echo "bin/PodioExample" | |
objdump -x bin/PodioExample | grep PATH | |
- name: Run JTest plugin with 100 events | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export JANA_PLUGIN_PATH=$JANA_HOME/plugins | |
export LD_LIBRARY_PATH=$JANA_HOME/lib:$JANA_HOME/lib/JANA/plugins:$LD_LIBRARY_PATH | |
$GITHUB_WORKSPACE/bin/jana -Pplugins=JTest -Pjana:nevents=100 | |
- name: Run jana-unit-tests | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export JANA_PLUGIN_PATH=$JANA_HOME/plugins | |
export LD_LIBRARY_PATH=$JANA_HOME/lib:$JANA_HOME/lib/JANA/plugins:$LD_LIBRARY_PATH | |
$GITHUB_WORKSPACE/bin/jana-unit-tests | |
- name: Run TimesliceExample with simple (physics event) topology | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
echo "--- Running TimesliceExample with simple topology ------------------------------" | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export JANA_PLUGIN_PATH=$JANA_HOME/plugins | |
export LD_LIBRARY_PATH=$JANA_HOME/lib:$JANA_HOME/lib/JANA/plugins:$LD_LIBRARY_PATH | |
$GITHUB_WORKSPACE/bin/jana \ | |
-Pplugins=TimesliceExample \ | |
-Pjana:nevents=100 \ | |
events.root | |
- name: Run TimesliceExample with complex (timeslice) topology | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
echo "--- Running TimesliceExample with simple topology ------------------------------" | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export JANA_PLUGIN_PATH=$JANA_HOME/plugins | |
export LD_LIBRARY_PATH=$JANA_HOME/lib:$JANA_HOME/lib/JANA/plugins:$LD_LIBRARY_PATH | |
$GITHUB_WORKSPACE/bin/jana -Pplugins=TimesliceExample -Pjana:nevents=100 timeslices.root | |
- name: Compile EICrecon | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
echo "--- Compiling EICrecon ---" | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export LD_LIBRARY_PATH=$JANA_HOME/lib:$LD_LIBRARY_PATH | |
cd .. | |
git clone https://github.com/eic/EICrecon | |
cd EICrecon | |
cmake -S . -B build -DJANA_DIR=$JANA_HOME/lib/JANA/cmake -DCMAKE_BUILD_TYPE=Debug | |
cmake --build build --target install -- -j8 | |
- name: Examine EICrecon dynamic linking | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
run: | | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export JANA_PLUGIN_PATH=$JANA_HOME/plugins | |
export LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/../EICrecon/lib:${GITHUB_WORKSPACE}/../EICrecon/lib/EICrecon/plugins:${JANA_HOME}/lib:${JANA_HOME}/lib/JANA/plugins:$LD_LIBRARY_PATH | |
cd ../EICrecon | |
echo "ldd bin/eicrecon" | |
ldd bin/eicrecon | |
echo "ldd lib/libreco.so" | |
ldd lib/libreco.so | |
echo "ldd lib/EICrecon/plugins/tracking.so" | |
ldd lib/EICrecon/plugins/tracking.so | |
- name: Generate EICrecon input data | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
setup: "/opt/detector/epic-main/bin/thisepic.sh" | |
run: | | |
echo "--- Generating EICrecon input data ---" | |
npsim --compactFile ${DETECTOR_PATH}/${DETECTOR}_craterlake.xml \ | |
-G --random.seed 1 --gun.particle "e-" --gun.momentumMin "1*GeV" \ | |
--gun.momentumMax "20*GeV" --gun.distribution "uniform" -N 20 \ | |
--outputFile sim_e_1GeV_20GeV_craterlake.edm4hep.root -v WARNING | |
- name: Run EICrecon | |
uses: eic/run-cvmfs-osg-eic-shell@main | |
with: | |
platform-release: "jug_xl:nightly" | |
setup: "/opt/detector/epic-main/bin/thisepic.sh" | |
run: | | |
export JANA_HOME=$GITHUB_WORKSPACE | |
export JANA_PLUGIN_PATH=$GITHUB_WORKSPACE/../EICrecon/lib/EICrecon/plugins | |
export LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/../EICrecon/lib:${GITHUB_WORKSPACE}/../EICrecon/lib/EICrecon/plugins:${JANA_HOME}/lib:${JANA_HOME}/lib/JANA/plugins:$LD_LIBRARY_PATH | |
../EICrecon/bin/eicrecon sim_e_1GeV_20GeV_craterlake.edm4hep.root | |