From eb34535d22f1eeb0d7eefa8b0d9f9ef82a9f90d1 Mon Sep 17 00:00:00 2001 From: Evgeny Posenitskiy <45995097+q-posev@users.noreply.github.com> Date: Tue, 1 Feb 2022 14:21:29 +0100 Subject: [PATCH] Test QMCkl with the latest TREXIO + MacOS CI (#58) * FIX: update the metadata group of the TREXIO file This change is required to make `test_qmckl_trexio` pass with the recent additions to the TREXIO (see `unsafe` attribute of the metadata group). * Install the latest TREXIO in GH actions * Enable CI test on MacOS * Fix TREXIO installation on MacOS * Update TREXIO pkg-config path * Change PKG_CONFIG_PATH * Fix F77 issue of autoconf * Disable useless F77 check --- .github/workflows/test-build.yml | 108 +++++++++++++-------- configure.ac | 1 - share/qmckl/test_data/chbrclf/metadata.txt | 3 +- 3 files changed, 68 insertions(+), 44 deletions(-) diff --git a/.github/workflows/test-build.yml b/.github/workflows/test-build.yml index e49d444..a4dd421 100644 --- a/.github/workflows/test-build.yml +++ b/.github/workflows/test-build.yml @@ -18,70 +18,94 @@ jobs: - name: Install dependencies run: sudo apt-get install emacs autoconf libhdf5-dev - - name: Install trexio + #- name: Install trexio from the distribution tarball + # run: | + # export TAG=v2.1.0 + # export VERSION=2.1.0 + # wget https://github.com/TREX-CoE/trexio/releases/download/${TAG}/trexio-${VERSION}.tar.gz + # tar -zxf trexio-${VERSION}.tar.gz + # cd trexio-${VERSION} + # ./configure --prefix=/usr + # make -j 4 + # sudo make install + - name: Install the latest TREXIO from the GitHub clone run: | - export TAG=v2.1.0 - export VERSION=2.1.0 - wget https://github.com/TREX-CoE/trexio/releases/download/${TAG}/trexio-${VERSION}.tar.gz - tar -zxf trexio-${VERSION}.tar.gz - cd trexio-${VERSION} + git clone https://github.com/TREX-CoE/trexio.git + cd trexio + ./autogen.sh ./configure --prefix=/usr - make -j 8 + make -j 4 sudo make install - - name: Build + - name: Build QMCkl run: | ./autogen.sh ./configure --enable-silent-rules --enable-debug - make -j 8 + make -j 4 - name: Run test - run: | - make -j check + run: make -j 4 check - name: Archive test log file if: failure() uses: actions/upload-artifact@v2 with: - name: test-report + name: test-report-ubuntu path: test-suite.log - name: Dist test - run: | - make distcheck + run: make distcheck - name: Archive test log file if: failure() uses: actions/upload-artifact@v2 with: - name: dist-report + name: dist-report-ubuntu path: test-suite.log + x86_macos: -# x86_macos: -# -# runs-on: macos-latest -# name: x86 MacOS latest -# -# steps: -# - uses: actions/checkout@v2 -# - name: install dependencies -# run: | -# brew install gfortran-10 -# brew install emacs -# brew install autoconf automake libtool -# - name: install trexio -# run: | -# wget https://github.com/TREX-CoE/trexio/releases/download/v1.0/trexio-1.0.0.tar.gz -# tar -zxf trexio-1.0.0.tar.gz -# cd trexio-1.0.0 -# ./configure -# make -j 8 -# sudo make install -# - name: Run test -# run: | -# ./autogen.sh -# ./configure --enable-silent-rules --enable-debug -# make -j 8 -# make -j check -# make distcheck + runs-on: macos-latest + name: x86 MacOS latest + + steps: + - uses: actions/checkout@v2 + - name: install dependencies + run: brew install emacs hdf5 automake pkg-config + + - name: Symlink gfortran (macOS) + if: runner.os == 'macOS' + run: | + # make sure gfortran is available + # https://github.com/actions/virtual-environments/issues/2524 + # https://github.com/cbg-ethz/dce/blob/master/.github/workflows/pkgdown.yaml + sudo ln -s /usr/local/bin/gfortran-10 /usr/local/bin/gfortran + sudo mkdir /usr/local/gfortran + sudo ln -s /usr/local/Cellar/gcc@10/*/lib/gcc/10 /usr/local/gfortran/lib + gfortran --version + + - name: Install the latest TREXIO from the GitHub clone + run: | + git clone https://github.com/TREX-CoE/trexio.git + cd trexio + ./autogen.sh + ./configure --prefix=${PWD}/_install --enable-silent-rules + make -j 4 + make install + + - name: Build QMCkl + run: | + export PKG_CONFIG_PATH=${PWD}/trexio/_install/lib/pkgconfig:$PKG_CONFIG_PATH + ./autogen.sh + ./configure --enable-silent-rules --enable-debug + make -j 4 + + - name: Run test + run: make -j 4 check + + - name: Archive test log file + if: failure() + uses: actions/upload-artifact@v2 + with: + name: test-report-macos + path: test-suite.log diff --git a/configure.ac b/configure.ac index 3e0b83e..1f58783 100644 --- a/configure.ac +++ b/configure.ac @@ -75,7 +75,6 @@ AC_PROG_CC m4_version_prereq([2.70],[], [AC_PROG_CC_C99]) AS_IF([test "$ac_cv_prog_cc_c99" = "no"], [AC_MSG_ERROR([The compiler does not support C99])]) AC_PROG_CC_C_O -AC_PROG_F77 AC_PROG_FC AC_PROG_FC_C_O AC_FC_SRCEXT([f90]) diff --git a/share/qmckl/test_data/chbrclf/metadata.txt b/share/qmckl/test_data/chbrclf/metadata.txt index 834b9f7..b2f0327 100644 --- a/share/qmckl/test_data/chbrclf/metadata.txt +++ b/share/qmckl/test_data/chbrclf/metadata.txt @@ -2,9 +2,10 @@ rank_metadata_code 0 rank_metadata_author 0 metadata_code_num_isSet 0 metadata_author_num_isSet 0 +metadata_unsafe_isSet 0 len_metadata_package_version 6 metadata_package_version -2.0.0 +2.2.0 len_metadata_description 0 metadata_description metadata_code