aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.builds/alpine-aarch64.yml29
1 files changed, 29 insertions, 0 deletions
diff --git a/.builds/alpine-aarch64.yml b/.builds/alpine-aarch64.yml
new file mode 100644
index 0000000..1719892
--- /dev/null
+++ b/.builds/alpine-aarch64.yml
@@ -0,0 +1,29 @@
+image: alpine/latest
+packages:
+- qemu-aarch64
+- qemu-openrc
+sources:
+- https://git.sr.ht/~mcf/cc
+- https://git.sr.ht/~mcf/qbe
+environment:
+ PATH: $HOME/qbe/obj:$HOME/aarch64-linux-musl-cross/bin:$PATH
+tasks:
+- setup: |
+ # work around bugs in qemu-binfmt
+ sudo sed -i -e '/qemu_suffix:=/d' -e 's/printf/env &/' /etc/init.d/qemu-binfmt
+ sudo /etc/init.d/qemu-binfmt start
+ curl -O http://musl.cc/aarch64-linux-musl-cross.tgz
+ tar --warning=no-unknown-keyword -xzf aarch64-linux-musl-cross.tgz
+- build: |
+ cd qbe
+ cat >config.h <<EOF
+ #define Defasm Gaself
+ #define Deftgt T_arm64
+ EOF
+ make
+ cd ../cc
+ ./configure \
+ --target=aarch64-linux-musl \
+ --with-ldso="$HOME/aarch64-linux-musl-cross/aarch64-linux-musl/lib/libc.so"
+ make all check bootstrap
+ file stage2/cc stage2/cc-qbe