mirror of
git://git.code.sf.net/p/sbcl/sbcl
synced 2026-09-10 07:26:40 -04:00
github actions: use an x86 binary for building under qemu
3x faster than a target-specific binary.
This commit is contained in:
parent
a90f58b46f
commit
aa4f8aebeb
54
.github/workflows/linux-qemu.yml
vendored
54
.github/workflows/linux-qemu.yml
vendored
|
|
@ -3,58 +3,42 @@ name: Linux qemu
|
||||||
on: [push]
|
on: [push]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
ppc64le:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: ppc64le
|
strategy:
|
||||||
|
matrix:
|
||||||
|
arch: [ppc64le, riscv64]
|
||||||
|
fail-fast: false
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- run: echo "\"`git rev-parse HEAD`\"" > version.lisp-expr
|
- name: install host sbcl
|
||||||
|
run: |
|
||||||
|
echo "\"`git rev-parse HEAD`\"" > version.lisp-expr
|
||||||
|
cd tests; git clone --depth 1 https://github.com/sbcl/ansi-test.git
|
||||||
|
|
||||||
- uses: uraimo/run-on-arch-action@v3
|
- uses: uraimo/run-on-arch-action@v3
|
||||||
name: Run commands
|
name: Run commands
|
||||||
id: runcmd
|
id: runcmd
|
||||||
with:
|
with:
|
||||||
arch: none
|
arch: none
|
||||||
distro: none
|
distro: none
|
||||||
base_image: --platform=linux/ppc64le debian:trixie
|
base_image: --platform=linux/${{ matrix.arch }} debian:trixie
|
||||||
|
|
||||||
githubToken: ${{ github.token }}
|
githubToken: ${{ github.token }}
|
||||||
install: |
|
install: |
|
||||||
|
dpkg --add-architecture amd64
|
||||||
apt-get -qq update | true
|
apt-get -qq update | true
|
||||||
apt-get -qq install sbcl libzstd-dev build-essential
|
apt-get -qq install libzstd-dev build-essential curl libc6:amd64
|
||||||
|
curl -O -L https://github.com/sbcl/sbcl/releases/download/sbcl-1.4.14/sbcl-2.4.8-x86-64-linux-binary.tar.bz2
|
||||||
|
tar xf sbcl-2.4.8-x86-64-linux-binary.tar.bz2
|
||||||
|
cd sbcl-2.4.8-x86-64-linux/
|
||||||
|
./install.sh
|
||||||
|
useradd -u 1001 -m dtest
|
||||||
run: |
|
run: |
|
||||||
export SBCL_MAKE_TARGET_2_OPTIONS="--disable-ldb --disable-debugger"
|
export SBCL_MAKE_TARGET_2_OPTIONS="--disable-ldb --disable-debugger"
|
||||||
export SBCL_MAKE_JOBS=-j4
|
export SBCL_MAKE_JOBS=-j4
|
||||||
./make.sh --with-sb-core-compression --xc-host='sbcl --dynamic-space-size 700MB --lose-on-corruption --disable-ldb --disable-debugger'
|
./make.sh --with-sb-core-compression --xc-host='sbcl --dynamic-space-size 700MB --lose-on-corruption --disable-ldb --disable-debugger'
|
||||||
cd tests
|
cd tests
|
||||||
#./run-tests.sh --slow
|
#./run-tests.sh --slow
|
||||||
# ./ansi-tests.sh
|
./ansi-tests.sh
|
||||||
riscv64:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
name: riscv64
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
- name: download sbcl
|
|
||||||
run: |
|
|
||||||
curl -O -L https://github.com/sbcl/sbcl/releases/download/sbcl-1.4.14/sbcl-riscv-261x.tar.gz
|
|
||||||
tar xf sbcl-riscv-261x.tar.gz
|
|
||||||
echo "\"`git rev-parse HEAD`\"" > version.lisp-expr
|
|
||||||
- uses: uraimo/run-on-arch-action@v3
|
|
||||||
name: Run commands
|
|
||||||
id: runcmd
|
|
||||||
with:
|
|
||||||
arch: none
|
|
||||||
distro: none
|
|
||||||
base_image: --platform=linux/riscv64 debian:trixie
|
|
||||||
|
|
||||||
githubToken: ${{ github.token }}
|
|
||||||
install: |
|
|
||||||
apt-get -qq update | true
|
|
||||||
apt-get -qq install libzstd-dev build-essential
|
|
||||||
run: |
|
|
||||||
(cd sbcl; ./install.sh)
|
|
||||||
export SBCL_MAKE_TARGET_2_OPTIONS="--disable-ldb --disable-debugger"
|
|
||||||
export SBCL_MAKE_JOBS=-j4
|
|
||||||
./make.sh --with-sb-core-compression --xc-host='sbcl --dynamic-space-size 700MB --lose-on-corruption --disable-ldb --disable-debugger'
|
|
||||||
#cd tests
|
|
||||||
#./run-tests.sh --slow
|
|
||||||
# ./ansi-tests.sh
|
|
||||||
|
|
|
||||||
|
|
@ -158,9 +158,12 @@ sets the floating point modes to their current values (and thus is a no-op)."
|
||||||
;;; disabled by default. Joe User can explicitly enable them if
|
;;; disabled by default. Joe User can explicitly enable them if
|
||||||
;;; desired.
|
;;; desired.
|
||||||
(define-load-time-global *saved-floating-point-modes*
|
(define-load-time-global *saved-floating-point-modes*
|
||||||
'(:traps (#-(and arm64 win32) :overflow
|
'(:traps
|
||||||
|
#-riscv
|
||||||
|
(#-(and arm64 win32) :overflow
|
||||||
#-(or netbsd ppc (and arm64 win32)) :invalid
|
#-(or netbsd ppc (and arm64 win32)) :invalid
|
||||||
#-(and arm64 win32) :divide-by-zero)
|
#-(and arm64 win32) :divide-by-zero)
|
||||||
|
#+riscv nil
|
||||||
:rounding-mode :nearest :current-exceptions nil
|
:rounding-mode :nearest :current-exceptions nil
|
||||||
:accrued-exceptions nil :fast-mode nil
|
:accrued-exceptions nil :fast-mode nil
|
||||||
#+x86 :precision #+x86 :53-bit))
|
#+x86 :precision #+x86 :53-bit))
|
||||||
|
|
|
||||||
|
|
@ -58,9 +58,10 @@ rm -fr sandbox/scratch
|
||||||
"SUBSTITUTE.FOLD.1" "SUBSTITUTE-IF-NOT.FOLD.3"
|
"SUBSTITUTE.FOLD.1" "SUBSTITUTE-IF-NOT.FOLD.3"
|
||||||
"MISC.598" "IMAGPART.4"
|
"MISC.598" "IMAGPART.4"
|
||||||
(append #+x86 (list "CIS.4")
|
(append #+x86 (list "CIS.4")
|
||||||
#+(or arm (and arm64 (not darwin)))
|
#+(or arm riscv (and arm64 (not darwin)))
|
||||||
(list "EXP.ERROR.4" "EXP.ERROR.5" "EXP.ERROR.6" "EXP.ERROR.7" "EXPT.ERROR.4"
|
(list "EXP.ERROR.4" "EXP.ERROR.5" "EXP.ERROR.6" "EXP.ERROR.7" "EXPT.ERROR.4"
|
||||||
"EXPT.ERROR.5" "EXPT.ERROR.6" "EXPT.ERROR.7")
|
"EXPT.ERROR.5" "EXPT.ERROR.6" "EXPT.ERROR.7")
|
||||||
|
#+(or riscv loongarch64) (list "LOOP.13.8")
|
||||||
#-sb-unicode (list "MISC.638")
|
#-sb-unicode (list "MISC.638")
|
||||||
(if (member :sb-fasteval sb-impl:+internal-features+)
|
(if (member :sb-fasteval sb-impl:+internal-features+)
|
||||||
(list "INTERSECTION.FOLD.1" "UNION.FOLD.1" "SET-DIFFERENCE.FOLD.1"
|
(list "INTERSECTION.FOLD.1" "UNION.FOLD.1" "SET-DIFFERENCE.FOLD.1"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue