diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 663899ff1b..fe81686732 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,15 +15,18 @@ jobs: os : [ macos-latest ] cxx : [ clang++, /usr/local/bin/g++-10 ] build_type : [ Release, Debug ] - prerequisites : [ gcc@10 boost eigen open-mpi ] + task_backend: [ Pthreads, PaRSEC ] + prerequisites : [ gcc@10 boost eigen open-mpi bison@3.7 ] name: "${{ matrix.os }}: ${{ matrix.cxx }} ${{ matrix.build_type }}" runs-on: ${{ matrix.os }} env: CXX : ${{ matrix.cxx }} BUILD_CONFIG : > + -DMADNESS_TASK_BACKEND=${{ matrix.task_backend }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DMPIEXEC_PREFLAGS='--bind-to;none;--allow-run-as-root' + -DCMAKE_PREFIX_PATH=/usr/local/opt/bison -DTA_ASSERT_POLICY=TA_ASSERT_THROW steps: @@ -34,7 +37,9 @@ jobs: run: cmake -P ${{github.workspace}}/ci/host_system_info.cmake - name: Install ${{matrix.prerequisites}} - run: brew install ${{matrix.prerequisites}} + run: | + brew install ${{matrix.prerequisites}} + echo "/usr/local/opt/bison/bin" >> $GITHUB_PATH - name: "Configure build: ${{ env.BUILD_CONFIG }}" shell: bash diff --git a/.travis.yml b/.travis.yml index c49b53a6eb..0bf6535c4a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -30,6 +30,14 @@ env: matrix: fast_finish: true include: + - compiler: gcc + env: GCC_VERSION=7 BUILD_TYPE=Debug MADNESS_OVER_PARSEC=1 + addons: + apt: + packages: + - *base_packages + - g++-7 + - gfortran-7 - compiler: gcc env: GCC_VERSION=7 BUILD_TYPE=Debug addons: @@ -47,7 +55,7 @@ matrix: - g++-7 - gfortran-7 - compiler: gcc - env: GCC_VERSION=8 BUILD_TYPE=Debug COMPUTE_COVERAGE=1 + env: GCC_VERSION=8 BUILD_TYPE=Debug COMPUTE_COVERAGE=1 MADNESS_OVER_PARSEC=1 addons: apt: packages: @@ -57,13 +65,13 @@ matrix: - compiler: gcc env: GCC_VERSION=8 BUILD_TYPE=Release addons: - apt: + apt: packages: - *base_packages - g++-8 - gfortran-8 - compiler: gcc - env: GCC_VERSION=9 BUILD_TYPE=Debug + env: GCC_VERSION=9 BUILD_TYPE=Debug MADNESS_OVER_PARSEC=1 addons: apt: sources: @@ -72,48 +80,6 @@ matrix: - *base_packages - g++-9 - gfortran-9 - - compiler: gcc - env: GCC_VERSION=9 BUILD_TYPE=Release - addons: - apt: - sources: - - sourceline: 'ppa:ubuntu-toolchain-r/test' - packages: - - *base_packages - - g++-9 - - gfortran-9 - allow_failures: # travis focal images broken right now: https://travis-ci.community/t/clang-10-was-recently-broken-on-linux-unmet-dependencies-for-clang-10-clang-tidy-10-valgrind/11527 - - compiler: clang - env: CLANG_VERSION=11 GCC_VERSION=8 BUILD_TYPE=Debug - addons: - apt: - sources: - - sourceline: 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' - key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - packages: - - *base_packages - - g++-8 - - gfortran-8 - - clang-11 - - libc++-11-dev - - libc++abi-11-dev - - compiler: clang - env: CLANG_VERSION=11 GCC_VERSION=8 BUILD_TYPE=Release DEPLOY=1 - addons: - apt: - sources: - - sourceline: 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' - key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - packages: - - *base_packages - - g++-8 - - gfortran-8 - - clang-11 - - libc++-11-dev - - libc++abi-11-dev - - libclang1-9 # libclang for doxygen - - graphviz # provides dot for doxygen graphs - - fonts-liberation # recommended by graphviz before_install: - env diff --git a/bin/build-madness-linux.sh b/bin/build-madness-linux.sh index 3e7b253937..d255bff92d 100755 --- a/bin/build-madness-linux.sh +++ b/bin/build-madness-linux.sh @@ -50,8 +50,12 @@ if [ "$BUILD_TYPE" = "Debug" ]; then mkdir -p madness cd madness + if [ -n "${MADNESS_OVER_PARSEC}" ]; then + MADNESS_BACKEND_OPTION="-DMADNESS_TASK_BACKEND=PaRSEC" + fi + # check out the tracked tag of MADNESS - git clone https://github.com/m-a-d-n-e-s-s/madness madness_src && cd madness_src && git checkout ${MADNESS_TAG} && cd .. + git clone https://github.com/TESSEorg/madness.git madness_src && cd madness_src && git checkout ${MADNESS_TAG} && cd .. cmake madness_src \ -DCMAKE_TOOLCHAIN_FILE="${TRAVIS_BUILD_DIR}/cmake/toolchains/travis.cmake" \ @@ -71,7 +75,8 @@ if [ "$BUILD_TYPE" = "Debug" ]; then -DENABLE_LIBXC=OFF \ -DENABLE_GPERFTOOLS=OFF \ -DASSERTION_TYPE=throw \ - -DDISABLE_WORLD_GET_DEFAULT=ON + -DDISABLE_WORLD_GET_DEFAULT=ON \ + ${MADNESS_BACKEND_OPTION} # Build+install MADworld interface make -j2 install VERBOSE=1 diff --git a/cmake/modules/FindOrFetchMADWorld.cmake b/cmake/modules/FindOrFetchMADWorld.cmake index 2884e49af1..818e1d61a0 100644 --- a/cmake/modules/FindOrFetchMADWorld.cmake +++ b/cmake/modules/FindOrFetchMADWorld.cmake @@ -38,7 +38,8 @@ if (NOT TARGET MADworld) include(FetchContent) FetchContent_Declare( MADNESS - GIT_REPOSITORY https://github.com/m-a-d-n-e-s-s/madness.git + # GIT_REPOSITORY https://github.com/m-a-d-n-e-s-s/madness.git + GIT_REPOSITORY https://github.com/TESSEorg/madness.git GIT_TAG ${TA_TRACKED_MADNESS_TAG} ) FetchContent_MakeAvailable(MADNESS)