-
Notifications
You must be signed in to change notification settings - Fork 191
135 lines (108 loc) · 3.61 KB
/
job3.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
name: Job3 - Sequential FreeFEM version
on: [push]
jobs:
linux:
strategy:
fail-fast: false
matrix:
version: [20.04, 22.04]
name: Job3 - Ubuntu ${{ matrix.version }}
runs-on: ubuntu-${{ matrix.version }}
steps:
- uses: actions/checkout@main
- name: Install
run: |
sudo apt update
sudo apt install gcc g++ gfortran m4 patch \
git libblas-dev liblapack-dev libsuitesparse-dev \
libhdf5-dev libgsl-dev flex bison wget cmake autoconf \
automake autotools-dev
- name: Configure
run: |
autoreconf -i
./configure --enable-download --without-mpi --prefix="${HOME}/freefem"
./3rdparty/getall -a -o ARPACK,METIS,ParMETIS,ScaLAPACK,Scotch,SuiteSparse,SuperLU,mmg,parmmg,hpddm,bemtool,Boost,libpthread-google,TetGen,Ipopt,NLopt,freeYams,FFTW,Gmm++,MMG3D,mshmet,MUMPS,htool
- name: Build
run: make -j2
- name: Check
continue-on-error: true
run: make check
- name: Install
run: make install
macos:
strategy:
fail-fast: false
matrix:
version: [11, 12]
name: Job3 - MacOS ${{ matrix.version }}
runs-on: macos-${{ matrix.version }}
env:
CC: clang
CXX: clang++
FC: gfortran
F77: gfortran
steps:
- uses: actions/checkout@main
- name: Install
run: brew install gcc m4 git flex bison suitesparse hdf5 cmake wget autoconf automake
- name: Symlink GCC & Fortran
run: |
sudo ln -fs /usr/local/bin/gfortran-12 /usr/local/bin/gfortran
sudo ln -fs /usr/local/bin/gcc-12 /usr/local/bin/gcc
sudo ln -fs /usr/local/bin/g++-12 /usr/local/bin/g++
# symlink dylib location for previous versions
sudo ln -fs /usr/local/opt/gcc/lib/gcc/12 /usr/local/opt/gcc/lib/gcc/11
sudo ln -fs /usr/local/opt/gcc/lib/gcc/12 /usr/local/opt/gcc/lib/gcc/10
- name: Configure
run: |
autoreconf -i
./configure --enable-download --without-mpi --prefix="${HOME}/freefem"
./3rdparty/getall -a -o ARPACK,METIS,ParMETIS,ScaLAPACK,Scotch,SuiteSparse,SuperLU,mmg,parmmg,hpddm,bemtool,Boost,libpthread-google,TetGen,Ipopt,NLopt,freeYams,FFTW,Gmm++,MMG3D,mshmet,MUMPS,htool
- name: Build
run: make -j2
- name: Check
continue-on-error: true
run: make check
- name: Install
run: make install
windows:
name: Job3 - Windows
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
- uses: msys2/setup-msys2@v2
with:
update: true
install: >-
mingw-w64-x86_64-toolchain
make
m4
patch
git
flex
bison
unzip
mingw-w64-x86_64-openblas
mingw-w64-x86_64-hdf5
mingw-w64-x86_64-gsl
autoconf
automake-wrapper
pkg-config
pkgfile
tar
mingw-w64-x86_64-cmake
- uses: actions/checkout@v4
- name: Configure
run: |
autoreconf -i
./configure --enable-download --without-mpi --prefix="${HOME}/freefem"
./3rdparty/getall -a -o ARPACK,METIS,ParMETIS,ScaLAPACK,Scotch,SuiteSparse,SuperLU,mmg,parmmg,hpddm,bemtool,Boost,libpthread-google,TetGen,Ipopt,NLopt,freeYams,FFTW,Gmm++,MMG3D,mshmet,MUMPS,htool
- name: Build
run: make -j2
- name: Check
continue-on-error: true
run: make check
- name: Install
run: make install