-
Notifications
You must be signed in to change notification settings - Fork 0
170 lines (147 loc) · 4.64 KB
/
cl-host.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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
name: CL-host
on: [push]
jobs:
ecl:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- uses: actions/cache@v1
id: ecl-cache3
with:
path: /tmp/ecl
key: ecl-cache3
- name: build host ecl
if: steps.ecl-cache3.outputs.cache-hit != 'true'
run: |
wget -q https://github.com/sbcl/sbcl/releases/download/sbcl-1.4.14/ecl.tgz
tar xf ecl.tgz
cd ecl
./configure --prefix=/usr/ --enable-threads
make
working-directory: /tmp
- name: install ecl
run: |
sudo make install
echo '(setf *debugger-hook* (lambda (c fun) (princ c) (si::tpl-backtrace) (quit 1)))' > ~/.eclrc
working-directory: /tmp/ecl
- name: build
env:
SBCL_MAKE_TARGET_2_OPTIONS: --disable-ldb --disable-debugger
run: ./make.sh --xc-host='ecl'
clisp:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: instal host clisp
run: |
sudo apt-get -qq update | true
sudo apt-get -qq install clisp git-restore-mtime
- name: build
env:
SBCL_MAKE_TARGET_2_OPTIONS: --disable-ldb --disable-debugger
run: |
git restore-mtime
./make.sh --xc-host='clisp -on-error exit'
- name: archive clisp-xc fasls
run: tar --transform 's,^,clisp-host/,' -cf clisp-host-fasls.tgz obj/from-xc/
- name: upload clisp-xc archive
uses: actions/upload-artifact@v3
with:
name: xc-host-fasls
path: clisp-host-fasls.tgz
ccl:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: instal host ccl
run: |
wget -q https://github.com/sbcl/sbcl/releases/download/sbcl-1.4.14/ccl-host.tgz
tar xf ccl-host.tgz
sudo apt-get -qq update | true
sudo apt-get -qq install git-restore-mtime
- name: build
env:
SBCL_MAKE_TARGET_2_OPTIONS: --disable-ldb --disable-debugger
run: |
git restore-mtime
./make.sh --xc-host='ccl-host/lx86cl64 --batch'
- name: archive ccl-xc fasls
run: tar --transform 's,^,ccl-host/,' -cf ccl-host-fasls.tgz obj/from-xc/
- name: upload ccl-xc archive
uses: actions/upload-artifact@v3
with:
name: xc-host-fasls
path: ccl-host-fasls.tgz
cmucl:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: instal host cmucl
run: |
mkdir cmucl
cd cmucl
wget -q https://github.com/sbcl/sbcl/releases/download/sbcl-1.4.14/cmucl.tar.bz2
tar xf cmucl.tar.bz2
echo '(setf ext:*gc-verbose* nil)' > ~/.cmucl-init.lisp
sudo apt-get -qq update | true
sudo apt-get -qq install git-restore-mtime
working-directory: /tmp/
- name: build
env:
SBCL_MAKE_TARGET_2_OPTIONS: --disable-ldb --disable-debugger
run: |
git restore-mtime
./make.sh --xc-host='/tmp/cmucl/bin/lisp -batch'
- name: archive cmucl-xc fasls
run: tar --transform 's,^,cmucl-host/,' -cf cmucl-host-fasls.tgz obj/from-xc/
- name: upload cmucl-xc archive
uses: actions/upload-artifact@v3
with:
name: xc-host-fasls
path: cmucl-host-fasls.tgz
sbcl:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: instal host sbcl
run: |
sudo apt-get -qq update | true
sudo apt-get -qq install sbcl libcapstone-dev git-restore-mtime
- name: build
env:
SBCL_MAKE_TARGET_2_OPTIONS: --disable-ldb --disable-debugger
run: |
git restore-mtime
./make.sh --xc-host='sbcl --dynamic-space-size 600MB --lose-on-corruption --disable-ldb --disable-debugger'
- name: archive sbcl-xc fasls
run: tar --transform 's,^,sbcl-host/,' -cf sbcl-host-fasls.tgz obj/from-xc/
- name: upload sbcl-xc archive
uses: actions/upload-artifact@v3
with:
name: xc-host-fasls
path: sbcl-host-fasls.tgz
compare-xc-host-fasls:
runs-on: ubuntu-latest
timeout-minutes: 5
needs: [ccl, sbcl, cmucl, clisp]
steps:
- name: download xc-host fasls
uses: actions/download-artifact@v3
with:
name: xc-host-fasls
- name: extract xc-host fasls
run: |
tar xf ccl-host-fasls.tgz
tar xf sbcl-host-fasls.tgz
tar xf clisp-host-fasls.tgz
tar xf cmucl-host-fasls.tgz
- name: compare xc-host fasls
run: |
diff -ur sbcl-host/ ccl-host/
diff -ur sbcl-host/ clisp-host/ || true
diff -ur sbcl-host/ cmucl-host/ || true