1212 workflow_dispatch :
1313 inputs :
1414 type :
15- description : ' The type of CI to run (all, houdini, mac , extra, ax, blosc, abi)'
15+ description : ' The type of CI to run (all, houdini, latest , extra, ax, blosc, abi)'
1616 required : true
1717 default : ' all'
1818
@@ -21,6 +21,10 @@ concurrency:
2121 group : ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
2222 cancel-in-progress : true
2323
24+ defaults :
25+ run :
26+ shell : bash
27+
2428jobs :
2529 # ############################################################################
2630 # ################################# Houdini ##################################
7276 - uses : actions/checkout@v3
7377 - name : timestamp
7478 id : timestamp
75- shell : bash
7679 run : echo "::set-output name=timestamp::`date -u +'%Y-%m-%dT%H:%M:%SZ'`"
7780 - name : download_houdini
7881 run : ./ci/download_houdini.sh ${{ matrix.config.houdini_version }} ON
@@ -131,36 +134,43 @@ jobs:
131134 - name : test
132135 run : cd build && ctest -V
133136
134- # Test latest dependencies, latest compilers and options through homebrew on macos
135- macos- latest :
137+ # Test latest dependencies, latest compilers and options
138+ latest :
136139 if : |
137140 github.event_name != 'workflow_dispatch' ||
138141 github.event.inputs.type == 'all' ||
139- github.event.inputs.type == 'mac'
140- runs-on : macos-12
142+ github.event.inputs.type == 'latest'
143+ runs-on : ${{ matrix.config.runson }}
144+ env :
145+ CXX : ${{ matrix.config.cxx }}
141146 strategy :
142147 matrix :
143148 config :
144- # Don't link against boost on macos with GCC, there are some symbol issues
145- # with brew using clang to build its dependencies vs us trying to use GCC
146- - { brew_compiler: gcc@13, cmake: '-D CMAKE_CXX_COMPILER=/usr/local/opt/ gcc@13/bin/g++-13 -DOPENVDB_USE_DELAYED_LOADING=OFF' }
147- - { brew_compiler: llvm@16, cmake: '-D CMAKE_CXX_COMPILER=/usr/local/opt/llvm@16 /bin/clang++' }
149+ - { runson: ubuntu-latest, cxx: g++, cmake: '' }
150+ - { runson: ubuntu-latest, cxx: clang++, cmake: '' }
151+ # @todo gcc on macos
152+ - { runson: macos-latest, cxx: '', cmake: '-D CMAKE_CXX_COMPILER=/usr/local/opt/llvm@15 /bin/clang++' }
148153 fail-fast : false
149154 steps :
150- - uses : actions/checkout@v3
151- - name : install
152- shell : bash
153- run : ./ci/install_macos.sh latest ${{ matrix.config.brew_compiler }}
154- - name : build
155- shell : bash
156- run : >
157- ./ci/build.sh -v
158- --build-type=Release
159- --components=\"core,python,bin,view,render,test\"
160- --cargs=\"-DOPENVDB_CXX_STRICT=OFF -DCMAKE_CXX_STANDARD=20 ${{ matrix.config.cmake }}\"
161- - name : test
162- shell : bash
163- run : cd build && ctest -V
155+ - uses : actions/checkout@v3
156+ - name : install_deps
157+ run : |
158+ if [ "$RUNNER_OS" == "Linux" ]; then
159+ sudo apt-get -q install -y libboost-dev libboost-iostreams-dev libtbb-dev libblosc-dev llvm-dev libgtest-dev libcppunit-dev pybind11-dev
160+ elif [ "$RUNNER_OS" == "macOS" ]; then
161+ ./ci/install_macos_ax.sh 15
162+ brew install googletest
163+ else
164+ echo "$RUNNER_OS not supported"; exit 1
165+ fi
166+ - name : build
167+ run : >
168+ ./ci/build.sh -v
169+ --build-type=Release
170+ --components=\"core,axcore,python,bin,render,test,axtest,axbin\"
171+ --cargs=\"-DCMAKE_CXX_STANDARD=20 -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/install ${{ matrix.config.cmake }}\"
172+ - name : test
173+ run : cd build && ctest -V
164174
165175 # ############################################################################
166176 # ########################### AX Library Extras ##############################
@@ -290,16 +300,13 @@ jobs:
290300 steps :
291301 - uses : actions/checkout@v3
292302 - name : llvm
293- shell : bash
294303 run : ./ci/install_llvm_windows.sh ${{ matrix.config.crt }}
295304 - name : install
296- shell : bash
297305 run : |
298306 vcpkg update
299307 vcpkg install zlib tbb cppunit blosc python3 \
300308 boost-iostreams boost-system boost-any boost-uuid boost-interprocess boost-algorithm pybind11
301309 - name : build
302- shell : bash
303310 run : >
304311 ./ci/build.sh -v
305312 --config=${{ matrix.config.build }}
@@ -322,7 +329,6 @@ jobs:
322329 echo "$Env:VCPKG_INSTALLATION_ROOT\installed\${{ matrix.config.vc }}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
323330 echo "$Env:VDB_INSTALL_PREFIX\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
324331 - name : test
325- shell : bash
326332 run : cd build && ctest -V -C ${{ matrix.config.build }}
327333
328334 # ############################################################################
@@ -345,7 +351,6 @@ jobs:
345351 steps :
346352 - uses : actions/checkout@v3
347353 - name : install_blosc
348- shell : bash
349354 run : sudo ./ci/install_blosc.sh ${{ matrix.blosc }}
350355 - name : build
351356 run : >
@@ -374,7 +379,7 @@ jobs:
374379 with :
375380 fetch-depth : 0
376381 - name : install_deps
377- run : sudo apt-get -q install -y libboost-dev libboost-system-dev libboost- iostreams-dev libtbb-dev libblosc-dev elfutils
382+ run : sudo apt-get -q install -y libboost-dev libboost-iostreams-dev libtbb-dev libblosc-dev elfutils
378383 # abi-compliance-checker and abi-dumper
379384 #
380385 # @note that abi-dumper is available through apt but at the time of writing this
0 commit comments