Skip to content

Commit 8daeead

Browse files
Merge pull request #1 from piyumalanthony/buildpipeline
Buildpipeline
2 parents e23e3f3 + d5303a6 commit 8daeead

File tree

1 file changed

+164
-0
lines changed

1 file changed

+164
-0
lines changed

.github/workflows/makefile.yml

Lines changed: 164 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,164 @@
1+
name: Makefile CI
2+
3+
on:
4+
push:
5+
branches: [ "master", "buildpipeline" ]
6+
pull_request:
7+
branches: [ "master", "buildpipeline" ]
8+
9+
jobs:
10+
build-linux-x86-64:
11+
name: Linux x86-64
12+
runs-on: ubuntu-22.04
13+
14+
steps:
15+
- name: Checkout
16+
uses: actions/checkout@v4
17+
18+
- name: Build
19+
run: |
20+
mkdir bin
21+
cd src
22+
make
23+
rm *.o
24+
mv baseml codeml basemlg mcmctree infinitesites pamp evolver yn00 chi2 ../bin
25+
cd ..
26+
mkdir -p dist
27+
tar --exclude='.git' \
28+
--exclude='./dist' \
29+
-czvf dist/paml-4.10.linux-x86_64.tar.gz .
30+
31+
32+
- name: Upload Built Binary
33+
# Only upload for one of the gcc & cmake tests
34+
uses: actions/upload-artifact@v4
35+
with:
36+
name: Linux-x86-64
37+
path: dist/paml-4.10.linux-x86_64.tar.gz
38+
if-no-files-found: error
39+
40+
build-linux-aarch64:
41+
name: Linux aarch64
42+
runs-on: ubuntu-22.04-arm
43+
44+
steps:
45+
- name: Checkout
46+
uses: actions/checkout@v4
47+
48+
- name: Build
49+
run: |
50+
mkdir bin
51+
cd src
52+
make
53+
rm *.o
54+
mv baseml codeml basemlg mcmctree infinitesites pamp evolver yn00 chi2 ../bin
55+
cd ..
56+
mkdir -p dist
57+
tar --exclude='.git' \
58+
--exclude='./dist' \
59+
-czvf dist/paml-4.10.linux-arm.tar.gz .
60+
61+
62+
- name: Upload Built Binary
63+
# Only upload for one of the gcc & cmake tests
64+
uses: actions/upload-artifact@v4
65+
with:
66+
name: Linux-aarch64
67+
path: dist/paml-4.10.linux-arm.tar.gz
68+
if-no-files-found: error
69+
70+
build-macos-x86_64:
71+
name: Mac OS x86-64
72+
runs-on: macos-13
73+
74+
steps:
75+
- name: Checkout
76+
uses: actions/checkout@v4
77+
78+
- name: Build
79+
run: |
80+
mkdir bin
81+
cd src
82+
make
83+
rm *.o
84+
mv baseml codeml basemlg mcmctree infinitesites pamp evolver yn00 chi2 ../bin
85+
cd ..
86+
mkdir -p dist
87+
tar --exclude='.git' \
88+
--exclude='./dist' \
89+
-czvf dist/paml-4.10.mac-x86_64.tar.gz .
90+
91+
92+
- name: Upload Built Binary
93+
# Only upload for one of the gcc & cmake tests
94+
uses: actions/upload-artifact@v4
95+
with:
96+
name: Mac-x86-64
97+
path: dist/paml-4.10.mac-x86_64.tar.gz
98+
if-no-files-found: error
99+
100+
build-macos-arm:
101+
name: Mac OS ARM64
102+
runs-on: macos-14
103+
104+
steps:
105+
- name: Checkout
106+
uses: actions/checkout@v4
107+
108+
- name: Build
109+
run: |
110+
mkdir bin
111+
cd src
112+
make
113+
rm *.o
114+
mv baseml codeml basemlg mcmctree infinitesites pamp evolver yn00 chi2 ../bin
115+
cd ..
116+
mkdir -p dist
117+
tar --exclude='.git' \
118+
--exclude='./dist' \
119+
-czvf dist/paml-4.10.mac-arm.tar.gz .
120+
121+
122+
- name: Upload Built Binary
123+
# Only upload for one of the gcc & cmake tests
124+
uses: actions/upload-artifact@v4
125+
with:
126+
name: MAC-Arm
127+
path: dist/paml-4.10.mac-arm.tar.gz
128+
if-no-files-found: error
129+
130+
build-windows-x86_64:
131+
name: Windows x86-64
132+
runs-on: windows-2022
133+
134+
steps:
135+
- name: Checkout
136+
uses: actions/checkout@v4
137+
138+
- name: Install zip
139+
run: choco install zip -y
140+
shell: powershell
141+
142+
- name: Build
143+
shell: cmd
144+
run: |
145+
mkdir bin
146+
cd src
147+
make
148+
rm *.o
149+
mv baseml codeml basemlg mcmctree infinitesites pamp evolver yn00 chi2 ../bin
150+
cd ..
151+
152+
- name: Zip repository
153+
shell: bash
154+
run: |
155+
mkdir -p dist
156+
zip -r dist/paml-4.10.win-x86_64.zip . -x ".git/*" "dist/*"
157+
158+
- name: Upload Built Binary
159+
uses: actions/upload-artifact@v4
160+
with:
161+
name: Windows-x86-64
162+
path: dist/paml-4.10.win-x86_64.zip
163+
if-no-files-found: error
164+

0 commit comments

Comments
 (0)