[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 22/34: Update README and guix invocations in test suite
From: |
Andy Wingo |
Subject: |
[Guile-commits] 22/34: Update README and guix invocations in test suite |
Date: |
Mon, 20 May 2019 09:55:54 -0400 (EDT) |
wingo pushed a commit to branch master
in repository guile.
commit c0e9302e9fbeda58ace0385404074f9846915496
Author: Andy Wingo <address@hidden>
Date: Thu May 16 13:56:56 2019 +0200
Update README and guix invocations in test suite
---
README.md | 28 +++++++++++++++++++++++-----
tests/Makefile | 15 ++++++++-------
2 files changed, 31 insertions(+), 12 deletions(-)
diff --git a/README.md b/README.md
index 7eb4994..14e3378 100644
--- a/README.md
+++ b/README.md
@@ -28,10 +28,28 @@ Guile needs a simple, light-weight code generation library.
The GNU
Lightning architecture-specific backends provide the bulk of this
functionality, and Lightening wraps it all in a lightweight API.
+## Supported targets
+
+Lightening can generate code for the x86-64, i686, and AArch64
+architectures. It supports the calling conventions of MS Windows,
+GNU/Linux, and Mac OS.
+
+Lightening is automatically tested using GitLab's continuous integration
+for under the supported architectures, for GNU/Linux; for a list of
+recent jobs, see [the CI
+page](https://gitlab.com/wingo/lightening/-/jobs).
+
+## Future targets
+
+ARMv7 support will come soon.
+
+Lightening has some inherited code from GNU Lightning for MIPS, PPC64,
+and s390. Patches to adapt this code to the Lightening code structure
+are quite welcome.
+
+RISC-V support would be fun too.
+
## Status
-Only the x86-64 port is currently usable. I plan to re-enable 32-bit
-x86 shortly, and then work on 32-bit and 64-bit ARM. Other
-architectures may come with time, but help is very much appreciated
-there. The test suite is still in progress but will be fairly
-comprehensive in terms of API surface.
+Lightening is used in GNU Guile since version 2.9.2 and seems to work
+well.
diff --git a/tests/Makefile b/tests/Makefile
index 1b3cd88..02d34af 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -1,10 +1,9 @@
TESTS=$(sort $(basename $(wildcard *.c)))
TARGETS=native ia32 aarch64
-# Suitable values of cross-compiler variables for Debian, having previously
done:
+# Suitable values of cross-compiler variables for Debian:
#
-# CC_IA32 = gcc -m32
-# CC_AARCH64 = gcc-aarch64-linux-gnu
+# make test CC_IA32=i668-linux-gnu-gcc CC_AARCH64=aarch64-linux-gnu-gcc
#
# The relevant packages that you need to run this:
#
@@ -12,12 +11,14 @@ TARGETS=native ia32 aarch64
# dpkg --add-architecture arm64
# apt-get update -qq
# apt-get install -y \
-# libc6-dev:amd64 libc6-dev:i386 libc6-dev:arm64 \
-# gcc gcc-multilib gcc-aarch64-linux-gnu make
+# libc6-dev:amd64 gcc make \
+# qemu binfmt-support qemu-user-static \
+# gcc-i686-linux-gnu libc6-dev-i386-cross libc6:i386 \
+# gcc-aarch64-linux-gnu libc6-dev-arm64-cross libc6:arm64
#
CC = gcc
-CC_IA32='guix environment --pure -s i686-linux --ad-hoc gcc-toolchain glibc --
gcc'
-CC_AARCH64='guix environment --pure -s aarch64-linux --ad-hoc gcc-toolchain
glibc -- gcc'
+CC_IA32=guix environment --pure -s i686-linux --ad-hoc gcc-toolchain glibc --
gcc
+CC_AARCH64=guix environment --pure -s aarch64-linux --ad-hoc gcc-toolchain
glibc -- gcc
CFLAGS = -Wall -O0 -g
all: $(foreach TARGET,$(TARGETS),$(addprefix test-$(TARGET)-,$(TESTS)))
- [Guile-commits] 13/34: Add support for aarch64 in CI, (continued)
- [Guile-commits] 13/34: Add support for aarch64 in CI, Andy Wingo, 2019/05/20
- [Guile-commits] 20/34: Attempt to fix CI on Debian, Andy Wingo, 2019/05/20
- [Guile-commits] 21/34: Attempt to fix CI on Debian for AArch64, Andy Wingo, 2019/05/20
- [Guile-commits] 08/34: Fix compilation on aarch64, Andy Wingo, 2019/05/20
- [Guile-commits] 30/34: Add ARMv7 testing to CI, Andy Wingo, 2019/05/20
- [Guile-commits] 31/34: Attempt to get CI working on ARMv7, Andy Wingo, 2019/05/20
- [Guile-commits] 33/34: Update README, Andy Wingo, 2019/05/20
- [Guile-commits] 29/34: ARMv7 backend passing all tests!, Andy Wingo, 2019/05/20
- [Guile-commits] 05/34: Rework register saving to avoid push/pop, Andy Wingo, 2019/05/20
- [Guile-commits] 28/34: ARMv7 backend compiling without warnings, Andy Wingo, 2019/05/20
- [Guile-commits] 22/34: Update README and guix invocations in test suite,
Andy Wingo <=
- [Guile-commits] 32/34: Fix CI on ARMv7, Andy Wingo, 2019/05/20
- [Guile-commits] 23/34: Remove software floating-point ARMv7 support; ARMv7 test env, Andy Wingo, 2019/05/20
- [Guile-commits] 27/34: Beginnings of VFP port to lightening, Andy Wingo, 2019/05/20
- [Guile-commits] 26/34: Port of arm-cpu.c to current lightening, Andy Wingo, 2019/05/20
- [Guile-commits] 03/34: First pass at aarch64 assembler port, Andy Wingo, 2019/05/20
- [Guile-commits] 25/34: Beginnings of ARMv7 backend, Andy Wingo, 2019/05/20