aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2023-01-22 20:31:30 +0000
committerMichael Brown <mcb30@ipxe.org>2023-01-22 20:36:57 +0000
commit8f59911b201a89b99a2b0c8930b505cc3820b423 (patch)
treee8c2a8b22ea54654ffe6913478e71cae1b1d276a
parent2061d658b3d199ec84976e6a573f68424369be69 (diff)
downloadipxe-8f59911b201a89b99a2b0c8930b505cc3820b423.zip
ipxe-8f59911b201a89b99a2b0c8930b505cc3820b423.tar.gz
ipxe-8f59911b201a89b99a2b0c8930b505cc3820b423.tar.bz2
[arm] Support building as a Linux userspace binary for AArch64
Add support for building as a Linux userspace binary for AArch64. This allows the self-test suite to be more easily run for the 64-bit ARM code. For example: # On a native AArch64 system: # make bin-arm64-efi/tests.linux && ./bin-arm64-efi/tests.linux # On a non-AArch64 system (e.g. x86_64) via cross-compilation, # assuming that kernel and glibc headers are present within # /usr/aarch64-linux-gnu/sys-root/: # make bin-arm64-linux/tests.linux CROSS=aarch64-linux-gnu- && \ qemu-aarch64 -L /usr/aarch64-linux-gnu/sys-root/ \ ./bin-arm64-linux/tests.linux Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rw-r--r--src/arch/arm/Makefile.linux6
-rw-r--r--src/arch/arm64/Makefile.linux10
2 files changed, 16 insertions, 0 deletions
diff --git a/src/arch/arm/Makefile.linux b/src/arch/arm/Makefile.linux
new file mode 100644
index 0000000..4259044
--- /dev/null
+++ b/src/arch/arm/Makefile.linux
@@ -0,0 +1,6 @@
+# -*- makefile -*- : Force emacs to use Makefile mode
+
+# Include generic Linux Makefile
+#
+MAKEDEPS += Makefile.linux
+include Makefile.linux
diff --git a/src/arch/arm64/Makefile.linux b/src/arch/arm64/Makefile.linux
new file mode 100644
index 0000000..4f09523
--- /dev/null
+++ b/src/arch/arm64/Makefile.linux
@@ -0,0 +1,10 @@
+# -*- makefile -*- : Force emacs to use Makefile mode
+
+# Starting virtual address
+#
+LDFLAGS += -Ttext=0x400000
+
+# Include generic Linux Makefile
+#
+MAKEDEPS += arch/arm/Makefile.linux
+include arch/arm/Makefile.linux