Skip to content

Commit

Permalink
CI: Build GMT dev source code with OpenMP enabled on Linux and GThrea…
Browse files Browse the repository at this point in the history
…ds enabled on Linux/macOS (#3011)
  • Loading branch information
seisman committed May 21, 2024
1 parent eaca67d commit e17a1bf
Showing 1 changed file with 32 additions and 10 deletions.
42 changes: 32 additions & 10 deletions .github/workflows/ci_tests_dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,8 @@
# installed by fetching the latest source codes from the GMT master branch and
# compiling.
#
# It is triggered when a pull request is marked as "ready as review", or labeled with
# 'run/test-gmt-dev'. It is also scheduled to run on Monday, Wednesday, and Friday on
# the main branch.
# It is triggered in a pull request if labeled with 'run/test-gmt-dev'.
# It is also scheduled to run on Monday, Wednesday, and Friday on the main branch.
#
name: GMT Dev Tests

Expand Down Expand Up @@ -87,18 +86,42 @@ jobs:
pcre
zlib
# Build and install latest GMT from GitHub
- name: Install GMT ${{ matrix.gmt_git_ref }} branch (Linux/macOS)
run: curl https://raw.githubusercontent.com/GenericMappingTools/gmt/master/ci/build-gmt.sh | bash
# Checkout current GMT repository
- name: Checkout the GMT source from ${{ matrix.gmt_git_ref }} branch
uses: actions/[email protected]
with:
repository: 'GenericMappingTools/gmt'
ref: ${{ matrix.gmt_git_ref }}
path: 'gmt'

# Build GMT from source on Linux/macOS, script is adapted from
# https://github.com/GenericMappingTools/gmt/blob/6.5.0/ci/build-gmt.sh
- name: Build GMT on Linux/macOS
run: |
if [ "$RUNNER_OS" == "macOS" ]; then
GMT_ENABLE_OPENMP=FALSE
else
GMT_ENABLE_OPENMP=TRUE
fi
cd gmt/
mkdir build
cd build
cmake -G Ninja .. \
-DCMAKE_INSTALL_PREFIX=${{ env.GMT_INSTALL_DIR }} \
-DCMAKE_BUILD_TYPE=Release \
-DGMT_ENABLE_OPENMP=${GMT_ENABLE_OPENMP} \
-DGMT_USE_THREADS=TRUE
cmake --build .
cmake --build . --target install
cd ..
rm -rf gmt/
env:
GMT_GIT_REF: ${{ matrix.gmt_git_ref }}
GMT_INSTALL_DIR: ${{ runner.temp }}/gmt-install-dir
if: runner.os != 'Windows'

- name: Install GMT ${{ matrix.gmt_git_ref }} branch (Windows)
- name: Build GMT on Windows
shell: cmd
run: |
git clone --depth=1 --single-branch --branch ${{ env.GMT_GIT_REF }} https://github.com/GenericMappingTools/gmt
cd gmt/
mkdir build
cd build
Expand All @@ -114,7 +137,6 @@ jobs:
cd ..
rm -rf gmt/
env:
GMT_GIT_REF: ${{ matrix.gmt_git_ref }}
GMT_INSTALL_DIR: ${{ runner.temp }}/gmt-install-dir
if: runner.os == 'Windows'

Expand Down

0 comments on commit e17a1bf

Please sign in to comment.