-
Notifications
You must be signed in to change notification settings - Fork 4
86 lines (72 loc) · 2.24 KB
/
macos.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
name: macos
on:
push:
branches:
- '*'
tags-ignore:
- '*'
pull_request:
env:
PERL5LIB: /Users/runner/perl5/lib/perl5
PERL_LOCAL_LIB_ROOT: /Users/runner/perl5
PERL_MB_OPT: --install_base /Users/runner/perl5
PERL_MM_OPT: INSTALL_BASE=/Users/runner/perl5
jobs:
perl:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v4
- name: Set up Perl
run: |
brew install perl
echo "{/Users/runner/perl5/bin}" >> $GITHUB_PATH
mkdir -p ~/bin
cd ~/bin
curl -L https://cpanmin.us/ -o cpanm
chmod +x cpanm
echo "{~/bin}" >> $GITHUB_PATH
which perl
which cpanm
- name: Install GDAL and its deps
run: brew install gdal
- name: perl -V
run: perl -V
- name: Prepare for cache
run: |
perl -V > perlversion.txt
echo '20220320a' >> perlversion.txt
ls -l perlversion.txt
- name: Cache CPAN modules
uses: actions/cache@v4
with:
path: ~/perl5
key: ${{ runner.os }}-build-${{ hashFiles('perlversion.txt') }}
restore-keys: |
${{ runner.os }}-build-${{ hashFiles('perlversion.txt') }}
- name: Install Dynamic Dependencies
run: |
cpanm --notest Path::Tiny
cpanm --notest Test::TempDir::Tiny
cpanm --notest PDL
cpanm --notest Alien::Build
cpanm --notest Alien::Build::MM
cpanm --notest Sort::Versions
cpanm --notest Alien::Build::Plugin::PkgConfig::PPWrapper
cpanm --notest --installdeps Alien::sqlite
cpanm -v Alien::sqlite
cpanm --notest --installdeps Alien::geos::af
cpanm -v Alien::geos::af
cpanm --notest --installdeps Alien::libtiff
cpanm -v Alien::libtiff
cpanm --notest --installdeps Alien::proj
cpanm -v Alien::proj
cpanm --notest --installdeps Alien::gdal
cpanm -v Alien::gdal
- name: Install Geo::GDAL::FFI deps
run: |
cpanm --installdeps Geo::GDAL::FFI
- name: Build
run: |
perl Makefile.PL
cpanm --installdeps --notest .
make test