Skip to content

asfg

asfg #39

Workflow file for this run

name: CL-host
on: [push]
jobs:
ecl:
runs-on: ubuntu-24.04
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-24.04
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: install 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@v4
with:
name: xc-host-fasls-clisp
path: clisp-host-fasls.tgz
ccl:
runs-on: ubuntu-24.04
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: install 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@v4
with:
name: xc-host-fasls-ccl
path: ccl-host-fasls.tgz
cmucl:
runs-on: ubuntu-24.04
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: install 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
echo '(setf *batch-mode* t)' >> ~/.cmucl-init.lisp
echo '(setf *debugger-hook* (lambda (c fun) (princ c) (debug:backtrace) (quit nil 1)))' >> ~/.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 -dynamic-space-size 1024'
- 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@v4
with:
name: xc-host-fasls-cmucl
path: cmucl-host-fasls.tgz
sbcl:
runs-on: ubuntu-24.04
timeout-minutes: 45
steps:
- uses: actions/checkout@v1
- name: install 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@v4
with:
name: xc-host-fasls-sbcl
path: sbcl-host-fasls.tgz
- name: self build
env:
SBCL_MAKE_TARGET_2_OPTIONS: --disable-ldb --disable-debugger
run: |
cp src/runtime/sbcl output/sbcl.core /tmp
git reset --hard
git restore-mtime
./make.sh --xc-host='/tmp/sbcl --core /tmp/sbcl.core --dynamic-space-size 600MB --lose-on-corruption --disable-ldb --disable-debugger'
- name: archive self-xc fasls
run: tar --transform 's,^,self-host/,' -cf self-host-fasls.tgz obj/from-xc/
- name: upload self-xc archive
uses: actions/upload-artifact@v4
with:
name: xc-host-fasls-self
path: self-host-fasls.tgz
compare-xc-host-fasls:
runs-on: ubuntu-24.04
timeout-minutes: 5
needs: [ccl, sbcl, cmucl, clisp]
strategy:
matrix:
host: [ccl, clisp, cmucl, self]
or: [false]
fail-fast: false
steps:
- name: download xc-host fasls
uses: actions/download-artifact@v4
with:
pattern: xc-host-fasls-*
merge-multiple: true
- name: extract xc-host fasls
run: |
tar xf sbcl-host-fasls.tgz
tar xf ${{ matrix.host }}-host-fasls.tgz
- name: compare xc-host fasls
run: |
diff -ur sbcl-host/ ${{ matrix.host }}-host/ || ${{ matrix.or }}