Krolyxon
Commit 1c8ea41

Branches

Refs →

nsxiv1c8ea41

add github actions (#195)

this runs both default and minimal build with gcc, clang and tcc.
Author
NRK
Date
2021-12-29 03:36 +0600
Committer
NRK · 2021-12-29 17:16 +0600
Parent
2e2942d
Commit
1c8ea413f3ef3528e7e6b5357f75bc4332189e0b

+41 −0

1 file changed

  1. A .github/workflows/build.yml +41 −0
A .github/workflows/build.yml View
@@ -0,0 +1,41 @@
1+name: Build
2+
3+on:
4+ push:
5+ branches: [ master ]
6+ pull_request:
7+ branches: [ master ]
8+
9+# NOTE: "stable" tcc is too old and fails at linking. instead using git version.
10+jobs:
11+ full-build:
12+ runs-on: ubuntu-latest
13+ steps:
14+ - uses: actions/checkout@v2
15+ - name: make
16+ run: |
17+ sudo apt-get install libimlib2 libimlib2-dev xserver-xorg-core xserver-xorg-dev \
18+ libxft2 libxft-dev libexif12 libexif-dev \
19+ gcc clang >/dev/null
20+ git clone --quiet --depth 1 'https://github.com/TinyCC/tinycc.git'
21+ ( cd tinycc && ./configure && make && sudo make install; ) >/dev/null
22+ export OPT_DEP_DEFAULT=1
23+ echo "### GCC BUILD ###" && make clean && CC=gcc make -s
24+ echo "### CLANG BUILD ###" && make clean && CC=clang make -s
25+ echo "### TCC BUILD ###" && make clean && CC=tcc make -s
26+
27+ minimal-build:
28+ runs-on: ubuntu-latest
29+ steps:
30+ - uses: actions/checkout@v2
31+ - name: make
32+ run: |
33+ sudo apt-get install libimlib2 libimlib2-dev xserver-xorg-core xserver-xorg-dev \
34+ gcc clang >/dev/null
35+ sudo apt-get remove libxft2 libxft-dev libexif12 libexif-dev >/dev/null
36+ git clone --quiet --depth 1 'https://github.com/TinyCC/tinycc.git'
37+ ( cd tinycc && ./configure && make && sudo make install; ) >/dev/null
38+ export OPT_DEP_DEFAULT=0
39+ echo "### GCC BUILD ###" && make clean && CC=gcc make -s
40+ echo "### CLANG BUILD ###" && make clean && CC=clang make -s
41+ echo "### TCC BUILD ###" && make clean && CC=tcc make -s