ports/sysutils/debootstrap/files/patch-debootstrap
Edward Tomasz Napierala 0619a441a3 sysutils/debootstrap: make it work on arm64 without --arch
Reviewed By:	emaste
Sponsored By:	EPSRC
Differential Revision:	https://reviews.freebsd.org/D30127
2021-05-06 09:31:10 +01:00

47 lines
1.2 KiB
Text

--- debootstrap.orig 2020-03-13 02:03:08 UTC
+++ debootstrap
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!%%LOCALBASE%%/bin/bash
set -e
VERSION='@VERSION@'
@@ -14,7 +14,7 @@ if [ -z "$DEBOOTSTRAP_DIR" ]; then
if [ -x /debootstrap/debootstrap ]; then
DEBOOTSTRAP_DIR=/debootstrap
else
- DEBOOTSTRAP_DIR=/usr/share/debootstrap
+ DEBOOTSTRAP_DIR=%%DATADIR%%
fi
fi
@@ -516,13 +516,7 @@ fi
###########################################################################
-if in_path dpkg && \
- dpkg --print-architecture >/dev/null 2>&1; then
- HOST_ARCH=$(/usr/bin/dpkg --print-architecture)
-elif in_path udpkg && \
- udpkg --print-architecture >/dev/null 2>&1; then
- HOST_ARCH=$(/usr/bin/udpkg --print-architecture)
-elif [ -e "$DEBOOTSTRAP_DIR/arch" ]; then
+if [ -e "$DEBOOTSTRAP_DIR/arch" ]; then
HOST_ARCH=$(cat "$DEBOOTSTRAP_DIR/arch")
fi
HOST_OS="$HOST_ARCH"
@@ -542,6 +536,14 @@ if [ -z "$HOST_OS" ]; then
HOST_OS=freebsd
;;
esac
+fi
+
+if [ "$HOST_OS" = "freebsd" -a -z "$HOST_ARCH" ]; then
+ HOST_ARCH=`/sbin/sysctl -n hw.machine_arch`
+ if [ "$HOST_ARCH" = "aarch64" ]; then
+ HOST_ARCH=arm64
+ fi
+ EXTRACTOR_OVERRIDE=ar
fi
if [ -z "$ARCH" ]; then