diff --git a/.github/workflows/everything.yml b/.github/workflows/everything.yml index 46c01cf4f8..680f0c5e8b 100644 --- a/.github/workflows/everything.yml +++ b/.github/workflows/everything.yml @@ -111,7 +111,7 @@ jobs: image: ghcr.io/ornladios/adios2:ci-spack-ubuntu20.04-${{ matrix.compiler }} options: --shm-size=1g env: - GH_YML_JOBNAME: ${{ matrix.os }}-${{ matrix.gpu_backend }}${{ matrix.compiler }}-${{ matrix.parallel }} + GH_YML_JOBNAME: ${{ matrix.os }}-${{ matrix.compiler }}${{ matrix.shared == 'static' && '-static' || ''}}-${{ matrix.parallel }} GH_YML_BASE_OS: Linux GH_YML_MATRIX_OS: ${{ matrix.os }} GH_YML_MATRIX_COMPILER: ${{ matrix.compiler }} @@ -126,6 +126,7 @@ jobs: matrix: os: [ubuntu20.04] compiler: [gcc8, gcc9, gcc10, gcc11, clang6, clang10] + shared: [shared] parallel: [ompi] include: - os: ubuntu20.04 @@ -137,7 +138,16 @@ jobs: - os: ubuntu20.04 compiler: clang6 parallel: serial - + - os: ubuntu20.04 + compiler: gcc8 + shared: static + parallel: ompi + constrains: build_only + - os: ubuntu20.04 + compiler: clang6 + shared: static + parallel: ompi + constrains: build_only steps: - uses: actions/checkout@v3 with: @@ -174,6 +184,7 @@ jobs: path: .ccache key: ccache-${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.parallel }}-${{ github.sha }} - name: Test + if: ${{ matrix.constrains != 'build_only' }} run: gha/scripts/ci/gh-actions/run.sh test linux_el8: @@ -185,7 +196,7 @@ jobs: image: ghcr.io/ornladios/adios2:ci-el8-${{ matrix.compiler }} options: --shm-size=1g env: - GH_YML_JOBNAME: ${{ matrix.os }}-${{ matrix.gpu_backend }}${{ matrix.compiler }}-${{ matrix.parallel }} + GH_YML_JOBNAME: ${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.parallel }} GH_YML_BASE_OS: Linux GH_YML_MATRIX_OS: ${{ matrix.os }} GH_YML_MATRIX_COMPILER: ${{ matrix.compiler }} diff --git a/scripts/ci/cmake/ci-ubuntu20.04-clang6-static-ompi.cmake b/scripts/ci/cmake/ci-ubuntu20.04-clang6-static-ompi.cmake new file mode 100644 index 0000000000..ce9699c794 --- /dev/null +++ b/scripts/ci/cmake/ci-ubuntu20.04-clang6-static-ompi.cmake @@ -0,0 +1,44 @@ +include(ProcessorCount) +ProcessorCount(NCPUS) +math(EXPR N2CPUS "${NCPUS}*2") + +set(ENV{CC} clang-6.0) +set(ENV{CXX} clang++-6.0) +set(ENV{FC} gfortran-11) + +execute_process( + COMMAND "python3-config" "--prefix" + OUTPUT_VARIABLE PY_ROOT + OUTPUT_STRIP_TRAILING_WHITESPACE) + +set(dashboard_cache " +BUILD_SHARED_LIBS=OFF +BUILD_TESTING=OFF +ADIOS2_USE_BZip2:BOOL=ON +ADIOS2_USE_Blosc:BOOL=ON +ADIOS2_USE_DataMan:BOOL=ON +ADIOS2_USE_Fortran:BOOL=ON +ADIOS2_USE_HDF5:BOOL=ON +ADIOS2_USE_MPI:BOOL=ON +ADIOS2_USE_Python:BOOL=ON +ADIOS2_USE_SZ:BOOL=ON +ADIOS2_USE_ZeroMQ:STRING=ON +ADIOS2_USE_ZFP:BOOL=ON + +Python_ROOT_DIR:PATH=${PY_ROOT} +Python_FIND_STRATEGY:STRING=LOCATION +Python_FIND_FRAMEWORK:STRING=FIRST + +CMAKE_C_COMPILER_LAUNCHER=ccache +CMAKE_CXX_COMPILER_LAUNCHER=ccache +CMAKE_C_FLAGS:STRING=-Wall +CMAKE_CXX_FLAGS:STRING=-Wall +CMAKE_Fortran_FLAGS:STRING=-Wall + +MPIEXEC_EXTRA_FLAGS:STRING=--allow-run-as-root --oversubscribe +MPIEXEC_MAX_NUMPROCS:STRING=${N2CPUS} +") + +set(CTEST_CMAKE_GENERATOR "Ninja") +list(APPEND CTEST_UPDATE_NOTES_FILES "${CMAKE_CURRENT_LIST_FILE}") +include(${CMAKE_CURRENT_LIST_DIR}/ci-common.cmake) diff --git a/scripts/ci/cmake/ci-ubuntu20.04-gcc8-static-ompi.cmake b/scripts/ci/cmake/ci-ubuntu20.04-gcc8-static-ompi.cmake new file mode 100644 index 0000000000..40ba13974d --- /dev/null +++ b/scripts/ci/cmake/ci-ubuntu20.04-gcc8-static-ompi.cmake @@ -0,0 +1,44 @@ +include(ProcessorCount) +ProcessorCount(NCPUS) +math(EXPR N2CPUS "${NCPUS}*2") + +set(ENV{CC} gcc) +set(ENV{CXX} g++) +set(ENV{FC} gfortran) + +execute_process( + COMMAND "python3-config" "--prefix" + OUTPUT_VARIABLE PY_ROOT + OUTPUT_STRIP_TRAILING_WHITESPACE) + +set(dashboard_cache " +BUILD_SHARED_LIBS=OFF +BUILD_TESTING=OFF +ADIOS2_USE_BZip2:BOOL=ON +ADIOS2_USE_Blosc:BOOL=ON +ADIOS2_USE_DataMan:BOOL=ON +ADIOS2_USE_Fortran:BOOL=ON +ADIOS2_USE_HDF5:BOOL=ON +ADIOS2_USE_MPI:BOOL=ON +ADIOS2_USE_Python:BOOL=ON +ADIOS2_USE_SZ:BOOL=ON +ADIOS2_USE_ZeroMQ:STRING=ON +ADIOS2_USE_ZFP:BOOL=ON + +Python_ROOT_DIR:PATH=${PY_ROOT} +Python_FIND_STRATEGY:STRING=LOCATION +Python_FIND_FRAMEWORK:STRING=FIRST + +CMAKE_C_COMPILER_LAUNCHER=ccache +CMAKE_CXX_COMPILER_LAUNCHER=ccache +CMAKE_C_FLAGS:STRING=-Wall +CMAKE_CXX_FLAGS:STRING=-Wall +CMAKE_Fortran_FLAGS:STRING=-Wall + +MPIEXEC_EXTRA_FLAGS:STRING=--allow-run-as-root --oversubscribe +MPIEXEC_MAX_NUMPROCS:STRING=${N2CPUS} +") + +set(CTEST_CMAKE_GENERATOR "Ninja") +list(APPEND CTEST_UPDATE_NOTES_FILES "${CMAKE_CURRENT_LIST_FILE}") +include(${CMAKE_CURRENT_LIST_DIR}/ci-common.cmake)