Skip to content

Commit 1825f3d

Browse files
authored
fixing plugin tests (#5)
- Merge CRPropa#569 - Workaround by manually specifying `LD_LIBRARY_PATH` and `CRPropa_INSTALL_PREFIX`
1 parent a95e7ca commit 1825f3d

3 files changed

Lines changed: 25 additions & 14 deletions

File tree

.github/workflows/testing_plugin-template.yml

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -81,11 +81,12 @@ jobs:
8181
uses: actions/checkout@v6
8282
with:
8383
ref: "3.3"
84+
repository: "CRPropa/CRPropa3"
8485
- name: Preinstall
8586
run: |
8687
sudo apt-get update
8788
sudo apt-get install libmuparser-dev python3-venv python-dev-is-python3 libhdf5-serial-dev libomp5 libomp-dev libfftw3-dev libcfitsio-dev lcov
88-
python -m venv venv
89+
python -m venv $GITHUB_WORKSPACE/venv
8990
source $GITHUB_WORKSPACE/venv/bin/activate
9091
python -m pip install --upgrade pip
9192
pip install numpy
@@ -99,7 +100,7 @@ jobs:
99100
mkdir build
100101
cd build
101102
cmake .. -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/venv -DENABLE_PYTHON=True -DENABLE_TESTING=On -DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} -DSIMD_EXTENSIONS="none"
102-
make
103+
make -j
103104
make install
104105
- name: Configure Plugin
105106
env:
@@ -108,18 +109,21 @@ jobs:
108109
FC: ${{ matrix.config.fc }}
109110
run: |
110111
source $GITHUB_WORKSPACE/venv/bin/activate
112+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/venv/lib
111113
cd plugin-template
112114
mkdir build
113115
cd build
114-
cmake .. -DENABLE_PYTHON=True -DENABLE_TESTING=On -DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} -DSIMD_EXTENSIONS="none" -DUSE_OWN_CRPROPA=Off
116+
cmake .. -DCRPropa_INSTALL_PREFIX=$GITHUB_WORKSPACE/venv -DENABLE_PYTHON=True -DENABLE_TESTING=On -DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} -DSIMD_EXTENSIONS="none" -DUSE_OWN_CRPROPA=Off
115117
- name: Build Plugin
116118
run: |
117119
source $GITHUB_WORKSPACE/venv/bin/activate
120+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/venv/lib
118121
cd plugin-template/build
119122
make
120123
- name: Run tests
121124
run: |
122125
source $GITHUB_WORKSPACE/venv/bin/activate
126+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/venv/lib
123127
cd plugin-template/build
124128
ctest --output-on-failure --repeat until-pass:3
125129
- name: Archive test results
@@ -192,11 +196,12 @@ jobs:
192196
uses: actions/checkout@v6
193197
with:
194198
ref: "3.3"
199+
repository: "CRPropa/CRPropa3"
195200
- name: Preinstall
196201
run: |
197202
sudo apt-get update
198203
sudo apt-get install libmuparser-dev python3-venv python-dev-is-python3 libhdf5-serial-dev libomp5 libomp-dev libfftw3-dev libcfitsio-dev lcov
199-
python -m venv venv
204+
python -m venv $GITHUB_WORKSPACE/venv
200205
source $GITHUB_WORKSPACE/venv/bin/activate
201206
python -m pip install --upgrade pip
202207
pip install numpy
@@ -211,7 +216,7 @@ jobs:
211216
mkdir build
212217
cd build
213218
cmake .. -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/venv -DENABLE_PYTHON=True -DENABLE_TESTING=On -DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} -DSIMD_EXTENSIONS="none"
214-
make
219+
make -j
215220
make install
216221
- name: Configure Plugin
217222
env:
@@ -220,18 +225,21 @@ jobs:
220225
FC: ${{ matrix.config.fc }}
221226
run: |
222227
source $GITHUB_WORKSPACE/venv/bin/activate
228+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/venv/lib
223229
cd plugin-template
224230
mkdir build
225231
cd build
226-
cmake .. -DENABLE_PYTHON=True -DENABLE_TESTING=On -DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} -DSIMD_EXTENSIONS="none" -DUSE_OWN_CRPROPA=Off
232+
cmake .. -DCRPropa_INSTALL_PREFIX=$GITHUB_WORKSPACE/venv -DENABLE_PYTHON=True -DENABLE_TESTING=On -DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} -DSIMD_EXTENSIONS="none" -DUSE_OWN_CRPROPA=Off
227233
- name: Build Plugin
228234
run: |
229235
source $GITHUB_WORKSPACE/venv/bin/activate
236+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/venv/lib
230237
cd plugin-template/build
231238
make
232239
- name: Run tests
233240
run: |
234241
source $GITHUB_WORKSPACE/venv/bin/activate
242+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/venv/lib
235243
cd plugin-template/build
236244
ctest --output-on-failure --repeat until-pass:3
237245
- name: Archive test results
@@ -318,10 +326,11 @@ jobs:
318326
uses: actions/checkout@v6
319327
with:
320328
ref: "3.3"
329+
repository: "CRPropa/CRPropa3"
321330
- name: Preinstall
322331
run: |
323332
brew install hdf5 fftw cfitsio muparser libomp swig
324-
python3 -m venv venv
333+
python -m venv $GITHUB_WORKSPACE/venv
325334
source $GITHUB_WORKSPACE/venv/bin/activate
326335
python -m pip install --upgrade pip
327336
pip install numpy cmake
@@ -333,6 +342,7 @@ jobs:
333342
FC: ${{ matrix.config.fc }}
334343
CRPROPA_DATA_PATH: "/Users/runner/work/CRPropa3/CRPropa3/build/data"
335344
run: |
345+
source $GITHUB_WORKSPACE/venv/bin/activate
336346
mkdir build
337347
cd build
338348
cmake .. \
@@ -342,7 +352,7 @@ jobs:
342352
-DENABLE_TESTING=On \
343353
-DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} \
344354
-DPython_INSTALL_PACKAGE_DIR=$GITHUB_WORKSPACE/venv/lib/python3.14/site-packages
345-
make
355+
make -j
346356
make install
347357
- name: Configure Plugin
348358
env:
@@ -351,27 +361,28 @@ jobs:
351361
FC: ${{ matrix.config.fc }}
352362
CRPROPA_DATA_PATH: "/Users/runner/work/CRPropa3/CRPropa3/build/data"
353363
run: |
364+
source $GITHUB_WORKSPACE/venv/bin/activate
354365
cd plugin-template
355366
mkdir build
356367
cd build
357368
358369
cmake .. \
359-
-DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/venv \
370+
-DCRPropa_INSTALL_PREFIX=$GITHUB_WORKSPACE/venv \
360371
-DENABLE_PYTHON=True \
361-
-DPython_EXECUTABLE=$GITHUB_WORKSPACE/venv/bin/python \
362372
-DENABLE_TESTING=On \
363373
-DENABLE_SWIG_BUILTIN=${{ matrix.config.swig_builtin }} \
364-
-DPython_INSTALL_PACKAGE_DIR=$GITHUB_WORKSPACE/venv/lib/python3.14/site-packages \
365374
-DUSE_OWN_CRPROPA=Off
366375
367-
- name: Build CRPropa
376+
- name: Build Plugin
368377
run: |
378+
source $GITHUB_WORKSPACE/venv/bin/activate
369379
cd plugin-template/build
370380
make
371381
- name: Run tests
372382
env:
373383
CRPROPA_DATA_PATH: "/Users/runner/work/CRPropa3/CRPropa3/plugin-template/build/data"
374384
run: |
385+
source $GITHUB_WORKSPACE/venv/bin/activate
375386
cd plugin-template/build
376387
ctest --output-on-failure --repeat until-pass:3
377388
- name: Archive test results

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -538,8 +538,8 @@ if(ENABLE_PYTHON AND Python_FOUND)
538538
set_target_properties(crpropa-swig PROPERTIES
539539
BUILD_RPATH "$<TARGET_FILE_DIR:crpropa>"
540540
INSTALL_RPATH "@loader_path;${CMAKE_INSTALL_FULL_LIBDIR}"
541+
LINK_FLAGS "-flat_namespace -undefined suppress"
541542
)
542-
set_property(TARGET crpropa-swig APPEND PROPERTY LINK_FLAGS "-flat_namespace -undefined suppress")
543543
else()
544544
set_target_properties(crpropa-swig PROPERTIES
545545
BUILD_RPATH "$<TARGET_FILE_DIR:crpropa>"

plugin-template/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,7 @@ if(ENABLE_PYTHON)
266266
set_target_properties(${pluginName}-swig PROPERTIES INSTALL_RPATH "@loader_path;${CMAKE_INSTALL_PREFIX}/lib")
267267
set_property(TARGET ${pluginName}-swig APPEND PROPERTY LINK_FLAGS "-flat_namespace -undefined suppress")
268268
else()
269-
set_target_properties(${pluginName}-swig PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}")
269+
set_target_properties(${pluginName}-swig PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
270270
endif(APPLE)
271271

272272
endif(Python_FOUND)

0 commit comments

Comments
 (0)