Fix floating-point exception in Zstd::Decompress #366
This file contains hidden or 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: build | |
| on: [push, pull_request] | |
| env: | |
| MOAB_CACHE_KEY: "MOAB-5.3.0" | |
| MOAB_INSTALL_PREFIX: "${{ github.workspace }}/moab" | |
| CATCH2_CACHE_KEY: "Catch2-3.8.0" | |
| CATCH2_INSTALL_PREFIX: "${{ github.workspace }}/catch2" | |
| TCLAP_CACHE_KEY: "TCLAP-1.4.0-rc1" | |
| TCLAP_INSTALL_PREFIX: "${{ github.workspace }}/tclap" | |
| ZSTD_CACHE_KEY: "ZSTD-1.5.0" | |
| ZSTD_INSTALL_PREFIX: "${{ github.workspace }}/zstd" | |
| MGARD_CACHE_KEY: "MGARD-${{ github.sha }}" | |
| MGARD_INSTALL_PREFIX: "${{ github.workspace }}/mgard" | |
| MGARD_BUILD_TYPE: "Release" | |
| MGARD_BUILD_DIR: "${{ github.workspace }}/build" | |
| jobs: | |
| build-MOAB: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - run: sudo apt-get install mpich libmpich-dev liblapack-dev | |
| - name: cache-MOAB | |
| id: cache-MOAB | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.MOAB_CACHE_KEY }}" | |
| path: "${{ env.MOAB_INSTALL_PREFIX }}" | |
| - name: build-MOAB | |
| if: steps.cache-MOAB.outputs.cache-hit != 'true' | |
| run: | | |
| wget "https://ftp.mcs.anl.gov/pub/fathom/moab-5.3.0.tar.gz" | |
| gunzip "moab-5.3.0.tar.gz" | |
| tar --file "moab-5.3.0.tar" --extract | |
| cmake -S "moab-5.3.0" -B "build" -DCMAKE_INSTALL_PREFIX="${{ env.MOAB_INSTALL_PREFIX }}" | |
| cmake --build "build" --parallel | |
| cmake --install "build" | |
| build-Catch2: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: cache-Catch2 | |
| id: cache-Catch2 | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.CATCH2_CACHE_KEY }}" | |
| path: "${{ env.CATCH2_INSTALL_PREFIX }}" | |
| - name: build-Catch2 | |
| if: steps.cache-Catch2.outputs.cache-hit != 'true' | |
| run: | | |
| wget https://github.com/catchorg/Catch2/archive/refs/tags/v3.8.0.tar.gz | |
| gunzip "v3.8.0.tar.gz" | |
| tar --file "v3.8.0.tar" --extract | |
| cmake -S "Catch2-3.8.0" -B "build" -DCMAKE_INSTALL_PREFIX="${{ env.CATCH2_INSTALL_PREFIX }}" | |
| cmake --build "build" --parallel | |
| cmake --install "build" | |
| build-TCLAP: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: cache-TCLAP | |
| id: cache-TCLAP | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.TCLAP_CACHE_KEY }}" | |
| path: "${{ env.TCLAP_INSTALL_PREFIX }}" | |
| - name: build-TCLAP | |
| if: steps.cache-TCLAP.outputs.cache-hit != 'true' | |
| run: | | |
| wget https://sourceforge.net/projects/tclap/files/tclap-1.4.0-rc1.tar.bz2 | |
| bunzip2 "tclap-1.4.0-rc1.tar.bz2" | |
| tar --file "tclap-1.4.0-rc1.tar" --extract | |
| cmake -S "tclap-1.4.0-rc1" -B "build" -DCMAKE_INSTALL_PREFIX="${{ env.TCLAP_INSTALL_PREFIX }}" | |
| cmake --build "build" --parallel | |
| cmake --install "build" | |
| build-ZSTD: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: cache-ZSTD | |
| id: cache-ZSTD | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.ZSTD_CACHE_KEY }}" | |
| path: "${{ env.ZSTD_INSTALL_PREFIX }}" | |
| - name: build-ZSTD | |
| if: steps.cache-ZSTD.outputs.cache-hit != 'true' | |
| run: | | |
| git clone -b v1.5.0 https://github.com/facebook/zstd.git zstd_src | |
| mkdir -p zstd_build | |
| cmake -S zstd_src/build/cmake -B zstd_build\ | |
| -DZSTD_MULTITHREAD_SUPPORT=ON\ | |
| -DCMAKE_INSTALL_LIBDIR=lib\ | |
| -DCMAKE_INSTALL_PREFIX="${{ env.ZSTD_INSTALL_PREFIX }}" | |
| cmake --build zstd_build --parallel | |
| cmake --install zstd_build | |
| build-MGARD: | |
| needs: [build-MOAB, build-Catch2, build-TCLAP, build-ZSTD] | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - run: sudo apt-get install mpich doxygen libmpich-dev liblapack-dev libzstd1 libzstd-dev libtclap-dev protobuf-compiler libprotobuf-dev | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - name: fetch-MOAB | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.MOAB_CACHE_KEY }}" | |
| path: "${{ env.MOAB_INSTALL_PREFIX }}" | |
| - name: fetch-Catch2 | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.CATCH2_CACHE_KEY }}" | |
| path: "${{ env.CATCH2_INSTALL_PREFIX }}" | |
| - name: fetch-TCLAP | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.TCLAP_CACHE_KEY }}" | |
| path: "${{ env.TCLAP_INSTALL_PREFIX }}" | |
| - name: fetch-ZSTD | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.ZSTD_CACHE_KEY }}" | |
| path: "${{ env.ZSTD_INSTALL_PREFIX }}" | |
| - name: configure | |
| run: cmake -S . -B "${{ env.MGARD_BUILD_DIR }}" -DCMAKE_PREFIX_PATH="${{ env.MOAB_INSTALL_PREFIX }};${{ env.CATCH2_INSTALL_PREFIX }};${{ env.TCLAP_INSTALL_PREFIX }};${{ env.ZSTD_INSTALL_PREFIX }}" -DCMAKE_BUILD_TYPE="${{ env.MGARD_BUILD_TYPE }}" -DCMAKE_INSTALL_PREFIX="${{ env.MGARD_INSTALL_PREFIX }}" -D MGARD_ENABLE_DOCS=ON | |
| - name: build | |
| run: cmake --build "${{ env.MGARD_BUILD_DIR }}" -j 8 | |
| - name: test | |
| run: "${{ env.MGARD_BUILD_DIR }}/bin/tests" | |
| - name: install | |
| run: cmake --install "${{ env.MGARD_BUILD_DIR }}" | |
| - name: cache-MGARD | |
| uses: actions/cache@v4 | |
| with: | |
| key: "${{ env.MGARD_CACHE_KEY }}" | |
| path: "${{ env.MGARD_INSTALL_PREFIX }}" |