diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 1fdb8e7..655e6ba 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -17,11 +17,25 @@ jobs: matrix: os: [ubuntu-latest, macos-latest] toolchain: - - {compiler: gcc, version: 11} - - {compiler: intel-classic, version: '2021.9'} - include: + - {compiler: gcc, version: 15} + - {compiler: gcc, version: 16} + - {compiler: intel, version: '2021.1'} + - {compiler: intel, version: '2022.0'} + - {compiler: intel, version: '2023.0'} + - {compiler: intel, version: '2024.0'} + exclude: + - os: macos-latest + toolchain: {compiler: gcc, version: 16} + - os: macos-latest + toolchain: {compiler: intel, version: '2022.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2023.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2024.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2025.0'} - os: ubuntu-latest - toolchain: {compiler: intel, version: '2023.2'} + toolchain: {compiler: intel, version: 2021.1} steps: - uses: fortran-lang/setup-fortran@v1.6.1 diff --git a/.github/workflows/fpm.yml b/.github/workflows/fpm.yml index 7977703..7b9464b 100644 --- a/.github/workflows/fpm.yml +++ b/.github/workflows/fpm.yml @@ -3,43 +3,80 @@ name: fpm on: [push, pull_request] jobs: - gcc-build: + test_fpm: + if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }} + name: ${{ matrix.os }}_${{ matrix.compiler }}_fpm runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: - os: [ubuntu-latest] - gcc_v: [12] # Version of GFortran we want to use. include: - - os: ubuntu-latest - os-arch: linux-x86_64 + - {os: ubuntu-latest, compiler: gfortran } + - {os: ubuntu-latest, compiler: ifx } + - {os: windows-latest, compiler: gfortran } + - {os: windows-latest, compiler: ifx, fpm-version: "0.12.0"} + - {os: macos-latest, compiler: gfortran } + steps: + - name: Setup Fortran + uses: gha3mi/setup-fortran-conda@latest + with: + compiler: ${{ matrix.compiler }} + fpm-version: ${{ matrix.fpm-version }} - env: - FC: gfortran - GCC_V: ${{ matrix.gcc_v }} + - name: fpm test (debug) + if: always() + run: fpm test --profile debug --compiler ${{ matrix.compiler }} --verbose - steps: - - name: Checkout code - uses: actions/checkout@v1 - - - name: Install GFortran Linux - if: contains(matrix.os, 'ubuntu') - run: | - 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: fpm test (release) + if: always() + run: fpm test --profile release --compiler ${{ matrix.compiler }} --verbose + + - name: fpm example (debug) + if: always() + run: fpm run --example --all --profile debug --compiler ${{ matrix.compiler }} --verbose + + - name: fpm example (release) + if: always() + run: fpm run --example --all --profile release --compiler ${{ matrix.compiler }} --verbose + +# jobs: +# gcc-build: +# runs-on: ${{ matrix.os }} +# strategy: +# fail-fast: false +# matrix: +# os: [ubuntu-latest] +# gcc_v: [15] # Version of GFortran we want to use. +# include: +# - os: ubuntu-latest +# os-arch: linux-x86_64 + +# env: +# FC: gfortran +# GCC_V: ${{ matrix.gcc_v }} + +# steps: +# - name: Checkout code +# uses: actions/checkout@v1 + +# - name: Install GFortran Linux +# if: contains(matrix.os, 'ubuntu') +# run: | +# 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: Install fpm - uses: fortran-lang/setup-fpm@v5 - with: - fpm-version: 'v0.10.1' - - - name: Build FPLOT - run: | - gfortran --version - fpm build - - - name: Run tests - run: | - gfortran --version - fpm test \ No newline at end of file +# - name: Install fpm +# uses: fortran-lang/setup-fpm@v5 +# with: +# fpm-version: 'v0.10.1' + +# - name: Build FPLOT +# run: | +# gfortran --version +# fpm build + +# - name: Run tests +# run: | +# gfortran --version +# fpm test \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index d3369b6..043ce0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.24) project( fplot LANGUAGES Fortran - VERSION 1.8.3 + VERSION 1.8.4 ) # Confgiure everything diff --git a/fpm.toml b/fpm.toml index 8a3d9c4..c5d3a27 100644 --- a/fpm.toml +++ b/fpm.toml @@ -1,5 +1,5 @@ name = "fplot" -version = "1.8.3" +version = "1.8.4" license = "GPL-3.0" author = "Jason Christopherson" maintainer = "Jason Christopherson"