fixed issue with accessing PDF in single-point nf interval (with Alex… #214
This file contains 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: | |
schedule: | |
#Every 50 days at midnight | |
- cron: "0 0 1/600 * *" | |
jobs: | |
Build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest] | |
#gcc_v: [10] # Version of GFortran we want to use. | |
#gcc_v: [7,8,9,10] # Version of GFortran we want to use. | |
gcc_v: [10,13] # Version of GFortran we want to use. | |
#python-version: [3.9] | |
env: | |
FC: gfortran-${{matrix.gcc_v}} | |
GCC_V: ${{matrix.gcc_v}} | |
steps: | |
- name: Set vars | |
id: vars | |
#run: echo ::set-output name=tag::${GITHUB_REF#refs/*/} | |
run: echo name=tag::${GITHUB_REF#refs/*/} >> $GITHUB_OUTPUT | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Install GFortran Linux | |
if: contains( matrix.os, 'ubuntu') | |
run: | | |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test | |
sudo apt-get update | |
sudo apt-get install -y gcc-${GCC_V} gfortran-${GCC_V} | |
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \ | |
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \ | |
--slave /usr/bin/gcov gcov /usr/bin/gcov-${GCC_V} | |
- name: configure_build_check | |
if: contains( matrix.os, 'ubuntu') | |
run: | | |
#FC=gfortran-${{matrix.gcc_v}} | |
#GCOV=gcov-${{matrix.gcc_v}} | |
# build and run unit tests | |
gfortran-${{matrix.gcc_v}} --version | |
./configure FC=gfortran-${{matrix.gcc_v}} | |
make -j4 check | |
# then make sure we can build also with the exact coefficient functions | |
make clean | |
./configure FC=gfortran-${{matrix.gcc_v}} --enable-exact-coefs | |
make -j4 check | |
compilejobFedorax86_64_GNU: | |
name: Fedorax86_64_GNU | |
runs-on: ubuntu-latest | |
container: | |
image: fedora:latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install | |
run: | | |
yum -y install gcc gcc-c++ gcc-gfortran make wget which cmake cmake-data cmake-filesystem lhapdf lhapdf-devel | |
- name: Compile | |
run: | | |
cmake -S . -B BUILD -DCMAKE_INSTALL_PREFIX=$(pwd)/../INSTALL -DHOPPET_ENABLE_FPES=ON -DCMAKE_BUILD_TYPE=Debug | |
cmake --build BUILD -j | |
cmake --install BUILD | |
ctest --test-dir BUILD -j 2 --output-on-failure | |
compilejobFedorax86_64_Intel_HPCKIT: | |
name: Fedorax86_64_Intel_HPCKIT | |
runs-on: ubuntu-latest | |
container: fedora:latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install | |
run: | | |
dnf -y install findutils procps gcc gcc-c++ gcc-gfortran make wget which cmake cmake-data cmake-filesystem lhapdf lhapdf-devel | |
tee > /tmp/oneAPI.repo << EOF | |
[oneAPI] | |
name=Intel(R) oneAPI repository | |
baseurl=https://yum.repos.intel.com/oneapi | |
enabled=1 | |
gpgcheck=1 | |
repo_gpgcheck=1 | |
gpgkey=https://yum.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | |
EOF | |
sudo mv /tmp/oneAPI.repo /etc/yum.repos.d/ | |
dnf -y clean all | |
dnf -y install intel-oneapi-compiler-dpcpp-cpp intel-oneapi-compiler-fortran | |
source /opt/intel/oneapi/compiler/latest/env/vars.sh | |
- name: Compile_with_ifx | |
run: | | |
source /opt/intel/oneapi/compiler/latest/env/vars.sh | |
cmake -S . -B BUILDifx -DCMAKE_Fortran_COMPILER=ifx -DCMAKE_INSTALL_PREFIX=$(pwd)/../INSTALLifx | |
cmake --build BUILDifx -j | |
cmake --install BUILDifx | |
ctest --test-dir BUILDifx -j 2 --output-on-failure | |
- name: Compile_with_ifort | |
run: | | |
source /opt/intel/oneapi/compiler/latest/env/vars.sh | |
cmake -S . -B BUILDifort -DCMAKE_Fortran_COMPILER=ifort -DCMAKE_INSTALL_PREFIX=$(pwd)/../INSTALLifort | |
cmake --build BUILDifort -j | |
cmake --install BUILDifort | |
ctest --test-dir BUILDifort -j 2 --output-on-failure | |
compilejobCentos7_IBM_XL: | |
name: Centos7ppc64le_IBM_XL | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: QEMU | |
run: | | |
set -x | |
sudo apt update | |
sudo apt install --yes binfmt-support qemu-user-static wget | |
- name: Compile_with_xlf | |
uses: addnab/docker-run-action@v3 | |
with: | |
image: ppc64le/centos | |
options: -v ${{ github.workspace }}:/work --platform=linux/ppc64le | |
run: | | |
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* | |
sed -i 's|#baseurl=https://mirror.centos.org|baseurl=https://vault.centos.org|g' /etc/yum.repos.d/CentOS-* | |
yum -y install epel-release wget | |
wget https://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/rhel7/ibm-xl-compiler-eval.repo -O /etc/yum.repos.d/ibm-xl-compiler-eval.repo | |
sed -i 's/http:/https:/g' /etc/yum.repos.d/ibm-xl-compiler-eval.repo | |
yum -y install xlf cmake3 lhapdf-devel wget | |
pwd | |
ls | |
cd work | |
export PATH=/opt/ibm/xlf/16.1.1/bin/:$PATH | |
export LICENSE=accept | |
xlf_configure <<< 1 >/dev/null | |
cmake3 -S . -B BUILDxlf -DCMAKE_Fortran_COMPILER=xlf -DCMAKE_INSTALL_PREFIX=$(pwd)/../INSTALLxlf | |
cmake3 --build BUILDxlf -j | |
cmake3 --install BUILDxlf | |
ctest3 --test-dir BUILDxlf -j 2 --output-on-failure | |
compilejobOSX: | |
runs-on: macos-latest | |
name: OSXx86_64_GNU | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install | |
run: | | |
brew install wget coreutils gcc | |
brew tap davidchall/hep | |
brew install lhapdf | |
- name: Compile | |
run: | | |
cmake -S . -B BUILD -DCMAKE_INSTALL_PREFIX=$(pwd)/../INSTALL -DCMAKE_Fortran_COMPILER=gfortran-13 -DHOPPET_ENABLE_FPES=ON -DCMAKE_BUILD_TYPE=Debug | |
cmake --build BUILD -j 2 | |
cmake --install BUILD | |
ctest --test-dir BUILD -j 2 --output-on-failure |