1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-13 07:34:50 +00:00

Fix building arm64 jails by copying in the needed binutils.

This commit is contained in:
Bryan Drewery 2017-02-15 16:42:49 +00:00
parent 348f67dbcf
commit 45a04670ae
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=434183
2 changed files with 30 additions and 1 deletions

View File

@ -2,7 +2,7 @@
PORTNAME= poudriere
DISTVERSION= 3.1.14
PORTREVISION= 2
PORTREVISION= 3
CATEGORIES= ports-mgmt
MASTER_SITES= LOCAL/bdrewery/${PORTNAME}/ \
http://mirror.shatow.net/freebsd/${PORTNAME}/ \

View File

@ -0,0 +1,29 @@
commit f61894880dc863258d8ef76fb1bde993b6b9ca08
Author: Bryan Drewery <bryan@shatow.net>
Date: Fri Aug 26 14:23:39 2016 -0700
For arm64 copy the latest aarch64-binutils ld into the jail at startup.
This will work like the qemu installation done at startup, and not require
messing with the jail creation/update or snapshots.
diff --git src/share/poudriere/common.sh src/share/poudriere/common.sh
index 7c1a4d7..4244b0f 100755
--- src/share/poudriere/common.sh
+++ src/share/poudriere/common.sh
@@ -1777,6 +1777,15 @@ jail_start() {
mkdir -p "${tomnt}${EMULATOR%/*}"
cp -f "${EMULATOR}" "${tomnt}${EMULATOR}"
fi
+ # Handle special ARM64 needs
+ if [ "${arch#*.}" = "aarch64" ] && ! [ -f "${tomnt}/usr/bin/ld" ]; then
+ if [ -f /usr/local/aarch64-freebsd/bin/ld ]; then
+ cp -f /usr/local/aarch64-freebsd/bin/ld \
+ "${tomnt}/usr/bin/ld"
+ else
+ err 1 "Arm64 requires aarch64-binutils to be installed."
+ fi
+ fi
if [ -d "${CCACHE_DIR:-/nonexistent}" ]; then
cat >> "${tomnt}/etc/make.conf" <<-EOF