Skip to content

Commit

Permalink
init
Browse files Browse the repository at this point in the history
  • Loading branch information
urbanjost committed Oct 2, 2021
0 parents commit 6c4cb4d
Show file tree
Hide file tree
Showing 367 changed files with 109,744 additions and 0 deletions.
45 changes: 45 additions & 0 deletions .github/workflows/deploy_api_docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#name: Build FORD docs & deploy to gh-pages
name: Build FORD(1) docs
on:
push:
branches:
- main

jobs:
build:
name: Deploy docs
runs-on: ubuntu-latest
steps:
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.x'

- name: Install dependencies
run: python -m pip install --upgrade pip ford

- name: Checkout master
uses: actions/checkout@v1

- name: Build docs
run: |
ford ford.md
ls
tree
- name: Deploy
uses: JamesIves/github-pages-deploy-action@releases/v3
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
#BRANCH: gh_pages
BRANCH: master
FOLDER: docs/fpm-ford
TARGET_FOLDER: docs/fpm-ford
# ford(1) deletes the output directory before running
# so be careful to specify a unique subdirectory in
# your ford(1) configuration files

# valid inputs are ['SSH', 'ACCESS_TOKEN', 'GITHUB_TOKEN', 'BRANCH',
# 'FOLDER', 'TARGET_FOLDER', 'BASE_BRANCH', 'COMMIT_MESSAGE', 'CLEAN',
# 'CLEAN_EXCLUDE', 'GIT_CONFIG_NAME', 'GIT_CONFIG_EMAIL', 'REPOSITORY_NAME',
# 'WORKSPACE', 'SINGLE_COMMIT', 'LFS', 'SILENT', 'PRESERVE']
55 changes: 55 additions & 0 deletions .github/workflows/test_gfortran_macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: run fpm test on macos with gfortran

on: [push, pull_request]

jobs:
Build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ macos-latest ]
include:
- os: macos-latest
gcc_v: 9
env:
FC: gfortran
GCC_V: ${{ matrix.gcc_v }}
TZ: UTC+04:00

steps:
- name: Checkout code
uses: actions/checkout@v1

- name: Install GFortran macOS
run: |
ls /usr/local/bin/gfortran-*
ln -s /usr/local/bin/gfortran-${GCC_V} /usr/local/bin/gfortran
which gfortran-${GCC_V}
which gfortran
- name: Install fpm
uses: fortran-lang/setup-fpm@v3
with:
use-haskell: ${{ matrix.haskell }}
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Display environment
run: |
#make -k -p -fNOTTHERE
echo "end" > foo.f90
gfortran -cpp -E -dM foo.f90
gfortran --version
fpm --version
- name: tests MacOS (debug)
run: fpm test --profile debug

- name: tests MacOS (release)
run: fpm test --profile release

# - name: Run demo programs (fpm run)
# run: fpm run --profile release

- name: cleanup MacOS
run: ls -ltras
72 changes: 72 additions & 0 deletions .github/workflows/test_gfortran_mingw64_windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
name: run fpm test on windows mingw64 with gfortran

on: [push, pull_request]

env:
CTEST_TIME_TIMEOUT: "50" # some failures hang forever

jobs:
build:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
include: [
{ msystem: MINGW64, arch: x86_64 },
]
env:
FC: gfortran
TZ: UTC+04:00
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v2

- name: Setup MinGW native environment
uses: msys2/setup-msys2@v2
if: contains(matrix.msystem, 'MINGW')
with:
msystem: ${{ matrix.msystem }}
update: false
install: >-
git
wget
mingw-w64-${{ matrix.arch }}-gcc
mingw-w64-${{ matrix.arch }}-gcc-fortran
- name: Install fpm
run: |
echo $PATH
pwd
uname -a
wget https://raw.githubusercontent.com/urbanjost/easy/main/bootstrap/fpm.F90
gfortran fpm.F90 -o fpm
ls -l
- name: tests (release)
run: |
gfortran --version
PATH=$PATH:.
fpm test --compiler gfortran --profile release -flag "-D _WIN32"
env:
FPM_COMPILER: gfortran
CC: gcc
CXX: g++
FC: gfortran
TZ: UTC+04:00

- name: tests (debug)
run: |
PATH=$PATH:.
gfortran --version
fpm test --compiler gfortran --profile debug -flag "-D _WIN32"
env:
FPM_COMPILER: gfortran
CC: gcc
CXX: g++
FC: gfortran
TZ: UTC+04:00

- name: cleanup
run: ls -ltras
52 changes: 52 additions & 0 deletions .github/workflows/test_gfortran_msys_windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: run fpm test with msys windows gfortran

on: [push, pull_request]

env:
CTEST_TIME_TIMEOUT: "5" # some failures hang forever
FC: gfortran
TZ: UTC+04:00

jobs:
gfortran-windows-msys2-mingw64:
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v1

- name: Setup MinGW (MSYS2)
uses: msys2/setup-msys2@v2
with:
msystem: MINGW64
update: false
install: >-
git
wget
mingw-w64-x86_64-gcc-fortran
- name: Install fpm
shell: msys2 {0}
run: |
wget https://raw.githubusercontent.com/urbanjost/easy/main/bootstrap/fpm.F90
gfortran fpm.F90 -o fpm
- name: Run tests and demo programs (debug)
shell: msys2 {0}
run: |
gfortran --version
./fpm test --profile release -flag "-D _WIN32"
env:
FC: gfortran
TZ: UTC+04:00

- name: Run tests and demo programs (release)
shell: msys2 {0}
run: |
gfortran --version
./fpm test --profile release -flag "-D _WIN32"
env:
FC: gfortran
TZ: UTC+04:00

- name: cleanup
run: dir
55 changes: 55 additions & 0 deletions .github/workflows/test_gfortran_ubuntu.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: run fpm test on ubuntu with gfortran

on: [push, pull_request]

jobs:
Build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest ]
include:
- os: ubuntu-latest
gcc_v: 9

env:
FC: gfortran
GCC_V: ${{ matrix.gcc_v }}
TZ: UTC+04:00

steps:
- name: Checkout code
uses: actions/checkout@v1

- name: Install GFortran Linux
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/bingcov gcov /usr/bin/gcov-${GCC_V}
- name: Install fpm
uses: fortran-lang/setup-fpm@v3
with:
use-haskell: ${{ matrix.haskell }}
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Display environment
run: |
#make -k -p -fNOTTHERE
echo "end" > foo.f90
gfortran -cpp -E -dM foo.f90
gfortran --version
fpm --version
- name: run fpm test on ubuntu with gfortran (debug)
run: fpm test --profile debug

- name: run fpm test on ubuntu with gfortran (release)
run: fpm test --profile release

# - name: Run demo programs (fpm run)
# run: fpm run --profile release

- name: cleanup Linux
run: ls -ltras
49 changes: 49 additions & 0 deletions .github/workflows/test_gfortran_windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: run fpm test on windows with gfortran

on: [push, pull_request]

jobs:
Build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest]
include:
- os: windows-latest
gcc_v: 8

env:
FC: gfortran
GCC_V: ${{ matrix.gcc_v }}
TZ: UTC+04:00

steps:
- name: Checkout code
uses: actions/checkout@v1

- name: Install fpm
uses: fortran-lang/setup-fpm@v3
with:
use-haskell: ${{ matrix.haskell }}
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Display environment
run: |
#make -k -p -fNOTTHERE
echo "end" > foo.f90
gfortran -cpp -E -dM foo.f90
gfortran --version
fpm --version
- name: tests MSWindows (debug)
run: fpm test --profile debug -flag "-D _WIN32"

- name: tests MSWindows (release)
run: fpm test --profile release -flag "-D _WIN32"

# - name: Run demo programs (fpm run)
# run: fpm run --profile release

- name: cleanup MSWindows
run: dir
62 changes: 62 additions & 0 deletions .github/workflows/test_intel_ubuntu.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: run fpm test on linux with intel

on: [push, pull_request]

jobs:
# Build with Intel toolchain
intel-build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04]
fc: [ifort]
cc: [icc]

env:
FC: ${{ matrix.fc }}
CC: ${{ matrix.cc }}
FPM_COMPILER: ifort
TZ: UTC+04:00
APT_PACKAGES: >-
intel-oneapi-compiler-fortran
intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic
intel-oneapi-mkl-devel
asciidoctor
steps:
- name: Checkout code
uses: actions/checkout@v2

- uses: actions/setup-python@v1
with:
python-version: '3.x'

- name: Add Intel repository
run: |
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
rm GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt-get update
- name: Install Intel oneAPI compiler
run: |
sudo apt-get install ${{ env.APT_PACKAGES }}
source /opt/intel/oneapi/setvars.sh
printenv >> $GITHUB_ENV
- name: Install fpm
uses: fortran-lang/setup-fpm@v3
with:
use-haskell: ${{ matrix.haskell }}
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Run Intel unit tests on Linux
run: |
printenv TZ
printenv FPM_COMPILER
printenv OMP_NUM_THREADS
fpm test --profile release --compiler ifort
env:
OMP_NUM_THREADS: 2,1
Binary file added Archive/892.zip
Binary file not shown.
Loading

0 comments on commit 6c4cb4d

Please sign in to comment.