bug fixes for tests after introduction of tool cdimscj #243
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: Meson | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| jobs: | |
| build: | |
| name: ${{ matrix.os }}/${{ matrix.arch }}/${{ matrix.compiler }}-v${{ matrix.version }}/Mode-${{ matrix.mode }}/Int${{ matrix.int }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [windows-latest, ubuntu-latest, macos-15-intel] | |
| compiler: ['gcc'] | |
| arch: ['x64'] | |
| version: ['13'] | |
| int: ['32', '64'] | |
| mode: ['static', 'shared'] | |
| include: | |
| - os: windows-latest | |
| compiler: intel | |
| version: '2025.0' | |
| int: '32' | |
| mode: 'static' | |
| - os: windows-latest | |
| compiler: intel | |
| version: '2025.0' | |
| int: '64' | |
| mode: 'static' | |
| - os: ubuntu-latest | |
| compiler: intel | |
| version: '2025.0' | |
| int: '32' | |
| mode: 'static' | |
| - os: ubuntu-latest | |
| compiler: intel | |
| version: '2025.0' | |
| int: '32' | |
| mode: 'shared' | |
| - os: ubuntu-latest | |
| compiler: intel | |
| version: '2025.0' | |
| int: '64' | |
| mode: 'static' | |
| - os: ubuntu-latest | |
| compiler: intel | |
| version: '2025.0' | |
| int: '64' | |
| mode: 'shared' | |
| - os: macos-latest | |
| compiler: gcc | |
| version: '14' | |
| arch: 'arm64' | |
| int: '32' | |
| mode: 'static' | |
| - os: macos-latest | |
| compiler: gcc | |
| version: '14' | |
| arch: 'arm64' | |
| int: '64' | |
| mode: 'static' | |
| - os: macos-latest | |
| compiler: gcc | |
| version: '13' | |
| arch: 'arm64' | |
| int: '32' | |
| mode: 'shared' | |
| - os: macos-latest | |
| compiler: gcc | |
| version: '14' | |
| arch: 'arm64' | |
| int: '64' | |
| mode: 'shared' | |
| - os: ubuntu-24.04-arm | |
| compiler: gcc | |
| version: '14' | |
| arch: 'arm64' | |
| int: '32' | |
| mode: 'static' | |
| - os: ubuntu-24.04-arm | |
| compiler: gcc | |
| version: '14' | |
| arch: 'arm64' | |
| int: '64' | |
| mode: 'static' | |
| - os: ubuntu-24.04-arm | |
| compiler: gcc | |
| version: '14' | |
| arch: 'arm64' | |
| int: '32' | |
| mode: 'shared' | |
| - os: ubuntu-24.04-arm | |
| compiler: gcc | |
| version: '14' | |
| arch: 'arm64' | |
| int: '64' | |
| mode: 'shared' | |
| # - os: ubuntu-latest | |
| # compiler: nvidia-hpc | |
| # version: '25.1' | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Check out CUTEST | |
| uses: actions/checkout@v4 | |
| - name: Setup Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| - name: Install Meson and Ninja | |
| shell: bash | |
| run: | | |
| pip install meson==1.4.1 | |
| pip install ninja | |
| - name: Set the environment variables CUTEST | |
| shell: bash | |
| run: echo "CUTEST=$GITHUB_WORKSPACE" >> $GITHUB_ENV | |
| - name: Install compilers | |
| uses: fortran-lang/setup-fortran@main | |
| with: | |
| compiler: ${{ matrix.compiler }} | |
| version: ${{ matrix.version }} | |
| # Uncomment this section to obtain ssh access to VM | |
| # - name: Setup tmate session | |
| # if: matrix.os == 'macos-13' | |
| # uses: mxschmitt/action-tmate@v3 | |
| - name: Setup CUTEST | |
| shell: bash | |
| run: | | |
| INT64="false" | |
| TESTS="true" | |
| if [[ "${{matrix.int}}" == "64" ]]; then | |
| INT64="true" | |
| TESTS="false" | |
| fi | |
| if [[ "${{matrix.mode}}" == "static" ]]; then | |
| MODE="static" | |
| else | |
| MODE="shared" | |
| TESTS="false" | |
| fi | |
| QUADRUPLE="true" | |
| if [[ "${{ matrix.compiler }}" == "intel" || "${{ matrix.os }}" == "ubuntu-24.04-arm" ]]; then | |
| QUADRUPLE="false" | |
| fi | |
| SANITIZER="none" | |
| if [[ "${{matrix.os}}" == "ubuntu-latest" && "${{ matrix.compiler }}" == "gcc" && "${{matrix.mode}}" == "static" ]]; then | |
| SANITIZER="address,undefined" | |
| fi | |
| meson setup builddir --buildtype=debug \ | |
| -Db_sanitize=${SANITIZER} \ | |
| --prefix=$GITHUB_WORKSPACE/cutest \ | |
| -Ddefault_library=${MODE} \ | |
| -Dquadruple=${QUADRUPLE} \ | |
| -Dint64=${INT64} \ | |
| -Dtests=${TESTS} | |
| - name: Build CUTEST | |
| shell: bash | |
| run: | | |
| meson compile -C builddir | |
| - uses: actions/upload-artifact@v4 | |
| if: failure() | |
| with: | |
| name: ${{ matrix.os }}_${{ matrix.compiler }}-v${{ matrix.version }}_Int${{ matrix.int }}_meson-log.txt | |
| path: builddir/meson-logs/meson-log.txt | |
| - name: Install CUTEST | |
| shell: bash | |
| run: | | |
| meson install -C builddir | |
| - uses: actions/upload-artifact@v4 | |
| if: failure() | |
| with: | |
| name: ${{ matrix.os }}_${{ matrix.compiler }}-v${{ matrix.version }}_Int${{ matrix.int }}_install-log.txt | |
| path: builddir/meson-logs/install-log.txt | |
| - name: Test CUTEST | |
| if: matrix.int == '32' | |
| shell: bash | |
| run: | | |
| if [[ "${{matrix.mode}}" == "static" ]]; then | |
| meson test -C builddir | |
| else | |
| cd src/test | |
| if [[ "${{ matrix.os }}" == "ubuntu-24.04-arm" ]]; then | |
| LIBDIR="lib" | |
| DLEXT="so" | |
| SHARED="-shared" | |
| export LD_LIBRARY_PATH="$(pwd):${GITHUB_WORKSPACE}/cutest/$LIBDIR:$LD_LIBRARY_PATH" | |
| fi | |
| if [[ "${{ matrix.os }}" == "ubuntu-latest" ]]; then | |
| LIBDIR="lib" | |
| DLEXT="so" | |
| SHARED="-shared" | |
| export LD_LIBRARY_PATH="$(pwd):${GITHUB_WORKSPACE}/cutest/$LIBDIR:$LD_LIBRARY_PATH" | |
| fi | |
| if [[ "${{matrix.os}}" == "macos-15-intel" ]]; then | |
| LIBDIR="lib" | |
| DLEXT="dylib" | |
| SHARED="-dynamiclib" | |
| export DYLD_LIBRARY_PATH="$(pwd):${GITHUB_WORKSPACE}/cutest/$LIBDIR:$DYLD_LIBRARY_PATH" | |
| fi | |
| if [[ "${{matrix.os}}" == "macos-latest" ]]; then | |
| LIBDIR="lib" | |
| DLEXT="dylib" | |
| SHARED="-dynamiclib" | |
| export DYLD_LIBRARY_PATH="$(pwd):${GITHUB_WORKSPACE}/cutest/$LIBDIR:$DYLD_LIBRARY_PATH" | |
| fi | |
| if [[ "${{ matrix.os }}" == "windows-latest" ]]; then | |
| LIBDIR="bin" | |
| DLEXT="dll" | |
| SHARED="-shared" | |
| export PATH="$(pwd):${GITHUB_WORKSPACE}/cutest/$LIBDIR:$PATH" | |
| fi | |
| if [[ "${{ matrix.compiler }}" == "intel" ]]; then | |
| PPF="-fpp" | |
| PPC="" | |
| else | |
| PPF="-cpp" | |
| PPC="-cpp" | |
| fi | |
| ${FC} ${SHARED} -fPIC c_elfun_single.f c_group_single.f c_range_single.f -o libc_single.${DLEXT} | |
| ${FC} ${SHARED} -fPIC u_elfun_single.f u_group_single.f u_range_single.f -o libu_single.${DLEXT} | |
| ${FC} ${SHARED} -fPIC q_elfun_single.f q_group_single.f q_range_single.f -o libq_single.${DLEXT} | |
| ${FC} ${SHARED} -fPIC c_elfun_double.f c_group_double.f c_range_double.f -o libc_double.${DLEXT} | |
| ${FC} ${SHARED} -fPIC u_elfun_double.f u_group_double.f u_range_double.f -o libu_double.${DLEXT} | |
| ${FC} ${SHARED} -fPIC q_elfun_double.f q_group_double.f q_range_double.f -o libq_double.${DLEXT} | |
| ${FC} ${SHARED} -fPIC c_elfun_quadruple.f c_group_quadruple.f c_range_quadruple.f -o libc_quadruple.${DLEXT} | |
| ${FC} ${SHARED} -fPIC u_elfun_quadruple.f u_group_quadruple.f u_range_quadruple.f -o libu_quadruple.${DLEXT} | |
| ${FC} ${SHARED} -fPIC q_elfun_quadruple.f q_group_quadruple.f q_range_quadruple.f -o libq_quadruple.${DLEXT} | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_32 ctest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o ctest_single | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_32 ctest_threaded.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o ctest_threaded_single | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_32 utest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o utest_single | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_32 utest_threaded.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o utest_threaded_single | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_32 lqptest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o lqp_test_single | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_32 ctest.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o ctest_c_single | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_32 utest.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o utest_c_single | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_32 ctest_c.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o ctest2_c_single | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_32 utest_c.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_single -o utest2_c_single | |
| ./ctest_single ./libc_single.${DLEXT} | |
| ./ctest_threaded_single ./libc_single.${DLEXT} | |
| ./utest_single ./libu_single.${DLEXT} | |
| ./utest_threaded_single ./libu_single.${DLEXT} | |
| ./lqp_test_single ./libq_single.${DLEXT} | |
| ./ctest_c_single ./libc_single.${DLEXT} | |
| ./utest_c_single ./libu_single.${DLEXT} | |
| ./ctest2_c_single ./libc_single.${DLEXT} | |
| ./utest2_c_single ./libu_single.${DLEXT} | |
| ${FC} ${PPF} -DCUTEST_SHARED ctest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o ctest_double | |
| ${FC} ${PPF} -DCUTEST_SHARED ctest_threaded.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o ctest_threaded_double | |
| ${FC} ${PPF} -DCUTEST_SHARED utest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o utest_double | |
| ${FC} ${PPF} -DCUTEST_SHARED utest_threaded.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o utest_threaded_double | |
| ${FC} ${PPF} -DCUTEST_SHARED lqptest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o lqp_test_double | |
| ${CC} ${PPC} -DCUTEST_SHARED ctest.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o ctest_c_double | |
| ${CC} ${PPC} -DCUTEST_SHARED utest.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o utest_c_double | |
| ${CC} ${PPC} -DCUTEST_SHARED ctest_c.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o ctest2_c_double | |
| ${CC} ${PPC} -DCUTEST_SHARED utest_c.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_double -o utest2_c_double | |
| ./ctest_double ./libc_double.${DLEXT} | |
| ./ctest_threaded_double ./libc_double.${DLEXT} | |
| ./utest_double ./libu_double.${DLEXT} | |
| ./utest_threaded_double ./libu_double.${DLEXT} | |
| ./lqp_test_double ./libq_double.${DLEXT} | |
| ./ctest_c_double ./libc_double.${DLEXT} | |
| ./utest_c_double ./libu_double.${DLEXT} | |
| ./ctest2_c_double ./libc_double.${DLEXT} | |
| ./utest2_c_double ./libu_double.${DLEXT} | |
| if [[ "${{ matrix.compiler }}" != "intel" && "${{ matrix.os }}" != "ubuntu-24.04-arm" ]]; then | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_128 ctest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o ctest_quadruple | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_128 ctest_threaded.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o ctest_threaded_quadruple | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_128 utest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o utest_quadruple | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_128 utest_threaded.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o utest_threaded_quadruple | |
| ${FC} ${PPF} -DCUTEST_SHARED -DREAL_128 lqptest.F90 -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o lqp_test_quadruple | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_128 ctest.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o ctest_c_quadruple | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_128 utest.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o utest_c_quadruple | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_128 ctest_c.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o ctest2_c_quadruple | |
| ${CC} ${PPC} -DCUTEST_SHARED -DREAL_128 utest_c.c -I${GITHUB_WORKSPACE}/cutest/include -I${GITHUB_WORKSPACE}/cutest/modules -L${GITHUB_WORKSPACE}/cutest/${LIBDIR} -lcutest_quadruple -o utest2_c_quadruple | |
| ./ctest_quadruple ./libc_quadruple.${DLEXT} | |
| ./ctest_threaded_quadruple ./libc_quadruple.${DLEXT} | |
| ./utest_quadruple ./libu_quadruple.${DLEXT} | |
| ./utest_threaded_quadruple ./libu_quadruple.${DLEXT} | |
| ./lqp_test_quadruple ./libq_quadruple.${DLEXT} | |
| ./ctest_c_quadruple ./libc_quadruple.${DLEXT} | |
| ./utest_c_quadruple ./libu_quadruple.${DLEXT} | |
| ./ctest2_c_quadruple ./libc_quadruple.${DLEXT} | |
| ./utest2_c_quadruple ./libu_quadruple.${DLEXT} | |
| fi | |
| fi | |
| - uses: actions/upload-artifact@v4 | |
| if: failure() | |
| with: | |
| name: ${{ matrix.os }}_${{ matrix.compiler }}-v${{ matrix.version }}_Int${{ matrix.int }}_testlog.txt | |
| path: builddir/meson-logs/testlog.txt |