Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
0097a30
fix ci
sandro-elsweijer Apr 30, 2026
f3cce7a
add newline at eof
sandro-elsweijer Apr 30, 2026
da7660f
simplify depends on cmake option by making it mandatory
sandro-elsweijer Apr 30, 2026
eb061dd
move dependencies into separate cmake script
sandro-elsweijer Apr 30, 2026
000aa1a
rename dependencies to thirdparty
sandro-elsweijer Apr 30, 2026
43d8e04
remove MakeAvailable() duplication and align fixes
sandro-elsweijer Apr 30, 2026
84b85ee
added jq to docker image instead of installing it in the ci
sandro-elsweijer Apr 30, 2026
4118df9
Reapply "Improvement: Implement FetchContent"
sandro-elsweijer Apr 30, 2026
f60b819
Merge branch 'submodule_adjustment' into reintroduce_fetchcontent
sandro-elsweijer Apr 30, 2026
48e5ac5
remove comment
sandro-elsweijer Apr 30, 2026
449bf65
increase counter [run ci]
sandro-elsweijer Apr 30, 2026
9250bb9
rename dependency file in ci [run ci]
sandro-elsweijer Apr 30, 2026
4c8a84b
reintroduce deleted comment
sandro-elsweijer Apr 30, 2026
d750d68
remove reintroduced netcdf linkage
sandro-elsweijer Apr 30, 2026
762093d
adapt path of thirdparty file in ci [run ci]
sandro-elsweijer Apr 30, 2026
ad4c88e
fix ci runner bug [run ci]
sandro-elsweijer Apr 30, 2026
0b08e59
use checkout action instead of manual checkout [run ci]
sandro-elsweijer Apr 30, 2026
50a1de9
fix checkout [run ci]
sandro-elsweijer Apr 30, 2026
37f54fa
move folder creation [run ci]
sandro-elsweijer Apr 30, 2026
da96b61
remove redundant include
sandro-elsweijer Apr 30, 2026
7a7843b
remove wrong comment
sandro-elsweijer Apr 30, 2026
254c5d5
deactivate ci caching to debug the ci
sandro-elsweijer Apr 30, 2026
9961d39
[run ci]
sandro-elsweijer Apr 30, 2026
01bbd66
fix advanced options from fetchcontent
sandro-elsweijer May 4, 2026
9e1db72
make options internal instead of advanced
sandro-elsweijer May 4, 2026
05860a7
remove git_progress due to buffer overflow
sandro-elsweijer May 4, 2026
3b5e8d1
enable cache and increase counter
sandro-elsweijer May 4, 2026
7d6bb44
Merge branch 'main' into reintroduce_fetchcontent
sandro-elsweijer May 11, 2026
13709bb
update fetchcontent news
sandro-elsweijer May 11, 2026
edf250b
capitalize github variable
sandro-elsweijer May 11, 2026
541af75
update comment
sandro-elsweijer May 11, 2026
388d966
update comment
sandro-elsweijer May 11, 2026
adbab79
capitalize TRUE and FALSE
sandro-elsweijer May 11, 2026
211c928
indent
sandro-elsweijer May 11, 2026
0aef724
remove redundant mark as advanced
sandro-elsweijer May 11, 2026
4a42b66
[run ci]
sandro-elsweijer May 20, 2026
e14dd53
[run ci]
sandro-elsweijer May 20, 2026
19b3077
add sc and p4est source to cache
sandro-elsweijer May 20, 2026
d65caec
[run ci]
sandro-elsweijer May 20, 2026
fa0a0ec
Two more upper case GITHUB_ENV vars
benegee May 20, 2026
2b91986
Merge branch 'main' into reintroduce_fetchcontent
benegee May 20, 2026
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
78 changes: 48 additions & 30 deletions .github/workflows/test_preparation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,10 +66,6 @@ jobs:
# This seems to be necessary because of the docker container
- name: disable ownership checks
run: git config --global --add safe.directory '*'
- name: init submodules
run: git submodule init
- name: update submodules
run: git submodule update
- name: Get input vars
run: export MAKEFLAGS="${{ inputs.MAKEFLAGS }}"
&& export IGNORE_CACHE="${{ inputs.IGNORE_CACHE }}"
Expand All @@ -83,20 +79,24 @@ jobs:
# SC installation
#
- name: store sc folders in var
run: echo SC_BUILD=$PWD/sc/build >> $GITHUB_ENV
run: echo SC_SOURCE=$PWD/sc >> $GITHUB_ENV
&& echo SC_BUILD=$PWD/sc/build >> $GITHUB_ENV
&& echo SC_DEBUG=$PWD/sc/build/Debug >> $GITHUB_ENV
&& echo SC_RELEASE=$PWD/sc/build/Release >> $GITHUB_ENV
- name: Get sc commit hash
run: hash=`git rev-parse HEAD:sc` && echo sc_commit=$hash >> $GITHUB_ENV
- name: Get sc commit hash and url from thirdparty.json
run: |
hash=$(jq -r '.thirdparty[] | select(.name=="SC") .source.ref' cmake/thirdparty.json)
echo SC_COMMIT=$hash >> $GITHUB_ENV
url=$(jq -r '.thirdparty[] | select(.name=="SC") .source.url' cmake/thirdparty.json)
echo SC_URL=$url >> $GITHUB_ENV
- name: Check cache for previous sc installation
id: sc_cmake_cache
uses: actions/cache@v5
with:
path: |
${{ env.SC_DEBUG }}
${{ env.SC_RELEASE }}
${{ env.SC_SOURCE }}
# You can increase the counter at the end to force a new key and hence recomputing the cache
key: sc-cmake-MPI-${{ inputs.MPI }}-${{ env.sc_commit }}-${{ inputs.CACHE_COUNTER }}
key: sc-cmake-MPI-${{ inputs.MPI }}-${{ env.SC_COMMIT }}-${{ inputs.CACHE_COUNTER }}
- name: Log that no cache was found
run: echo USED_CACHE=0 >> $GITHUB_ENV
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' }}
Expand All @@ -107,22 +107,29 @@ jobs:
if: ${{ inputs.IGNORE_CACHE == 1 }}
# The true at the end is to ignore errors that i.e. occur when the folders do not exist
run: rm -r $SC_BUILD || true
- name: make folders
run: mkdir -p $SC_DEBUG $SC_RELEASE
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: install sc
run: echo "Install sc"
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
## sc debug
- uses: actions/checkout@v6
with:
repository: cburstedde/libsc
ref: ${{ env.SC_COMMIT }}
fetch-depth: 1
path: ${{ env.SC_SOURCE }}
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: make folders
run: mkdir -p $SC_DEBUG $SC_RELEASE
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
## sc debug build
- name: sc cmake debug
run: cd $SC_DEBUG && cmake ../../ -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$SC_DEBUG/install -Dmpi=$MPI -GNinja
run: cd $SC_DEBUG && cmake $SC_SOURCE -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$SC_DEBUG/install -Dmpi=$MPI -GNinja
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: sc build debug
run: cd $SC_DEBUG && ninja $MAKEFLAGS && ninja $MAKEFLAGS install
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
## sc release
## sc release build
- name: sc cmake release
run: cd $SC_RELEASE && cmake ../../ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$SC_RELEASE/install -Dmpi=$MPI -GNinja
run: cd $SC_RELEASE && cmake $SC_SOURCE -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$SC_RELEASE/install -Dmpi=$MPI -GNinja
if: ${{ steps.sc_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: sc build release
run: cd $SC_RELEASE && ninja $MAKEFLAGS && ninja $MAKEFLAGS install
Expand All @@ -131,46 +138,57 @@ jobs:
# P4EST
#
- name: store p4est folders in var
run: echo P4EST_BUILD=$PWD/p4est/build >> $GITHUB_ENV
run: echo P4EST_SOURCE=$PWD/p4est >> $GITHUB_ENV
&& echo P4EST_BUILD=$PWD/p4est/build >> $GITHUB_ENV
&& echo P4EST_DEBUG=$PWD/p4est/build/Debug >> $GITHUB_ENV
&& echo P4EST_RELEASE=$PWD/p4est/build/Release >> $GITHUB_ENV
- name: Get p4est commit hash
run: hash=`git rev-parse HEAD:p4est` && echo p4est_commit=$hash >> $GITHUB_ENV
- name: Get p4est commit hash and url from thirdparty.json
run: |
hash=$(jq -r '.thirdparty[] | select(.name=="P4EST") .source.ref' cmake/thirdparty.json)
echo P4EST_COMMIT=$hash >> $GITHUB_ENV
url=$(jq -r '.thirdparty[] | select(.name=="P4EST") .source.url' cmake/thirdparty.json)
echo P4EST_URL=$url >> $GITHUB_ENV
- name: Check cache for previous p4est installation
id: p4est_cmake_cache
uses: actions/cache@v5
with:
path: |
${{ env.P4EST_DEBUG }}
${{ env.P4EST_RELEASE }}
${{ env.P4EST_SOURCE }}
# You can increase the counter at the end to force a new key and hence recomputing the cache
key: p4est-cmake-MPI-${{ inputs.MPI }}-${{ env.p4est_commit }}-${{ env.sc_commit }}-${{ inputs.CACHE_COUNTER }}
key: p4est-cmake-MPI-${{ inputs.MPI }}-${{ env.P4EST_COMMIT }}-${{ env.SC_COMMIT }}-${{ inputs.CACHE_COUNTER }}
- name: Log that no cache was found
run: echo USED_CACHE=0 >> $GITHUB_ENV
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' }}
- name: Cache info
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
run: echo No cache found or cache will be ignored. IGNORE_CACHE=$IGNORE_CACHE
- name: install p4est
run: echo "Install p4est"
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: if ignore cache, delete folders
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
# The true at the end is to ignore errors that i.e. occur when the folders do not exist
run: rm -r $P4EST_BUILD || true
- name: install p4est
run: echo "Install p4est"
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- uses: actions/checkout@v6
with:
repository: cburstedde/p4est
ref: ${{ env.P4EST_COMMIT }}
fetch-depth: 1
path: ${{ env.P4EST_SOURCE }}
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: make folders
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
run: mkdir -p $P4EST_DEBUG $P4EST_RELEASE
## p4est debug
## p4est debug build
- name: p4est cmake debug
run: cd $P4EST_DEBUG && cmake ../../ -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$P4EST_DEBUG/install -DP4EST_USE_SYSTEM_SC=ON -DSC_DIR=$SC_DEBUG/install/cmake -DP4EST_ENABLE_MPI=$MPI -GNinja
run: cd $P4EST_DEBUG && cmake $P4EST_SOURCE -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$P4EST_DEBUG/install -DP4EST_USE_SYSTEM_SC=ON -DSC_DIR=$SC_DEBUG/install/cmake -DP4EST_ENABLE_MPI=$MPI -GNinja
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: p4est build debug
run: cd $P4EST_DEBUG && ninja $MAKEFLAGS && ninja $MAKEFLAGS install
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
## p4est release
## p4est release build
- name: p4est cmake release
run: cd $P4EST_RELEASE && cmake ../../ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$P4EST_RELEASE/install -DP4EST_USE_SYSTEM_SC=ON -DSC_DIR=$SC_DEBUG/install/cmake -DP4EST_ENABLE_MPI=$MPI -GNinja
run: cd $P4EST_RELEASE && cmake $P4EST_SOURCE -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$P4EST_RELEASE/install -DP4EST_USE_SYSTEM_SC=ON -DSC_DIR=$SC_RELEASE/install/cmake -DP4EST_ENABLE_MPI=$MPI -GNinja
if: ${{ steps.p4est_cmake_cache.outputs.cache-hit != 'true' || inputs.IGNORE_CACHE == 1 }}
- name: p4est build release
run: cd $P4EST_RELEASE && ninja $MAKEFLAGS && ninja $MAKEFLAGS install
Expand Down
4 changes: 0 additions & 4 deletions .github/workflows/test_t8code_w_shipped_submodules.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,6 @@ jobs:
# This seems to be necessary because of the docker container
- name: disable ownership checks
run: git config --global --add safe.directory '*'
- name: init submodules
run: git submodule init
- name: update submodules
run: git submodule update
- name: Get input vars
run: export MAKEFLAGS="${{ inputs.MAKEFLAGS }}"
&& export MPI="${{ inputs.MPI }}"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/testsuite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ jobs:
with:
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
IGNORE_CACHE: false # Use this to force a new installation of sc and p4est for this specific workflow run
CACHE_COUNTER: 0 # Increase this number to force a new installation of sc and p4est and to update the cache once
CACHE_COUNTER: 9 # Increase this number to force a new installation of sc and p4est and to update the cache once
MPI: ${{ matrix.MPI }}

# Run parallel tests for sc and p4est with and without MPI
Expand Down
8 changes: 0 additions & 8 deletions .gitmodules

This file was deleted.

Loading