From 85802f4d515e310e657928707800ad709a676e2a Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Mon, 15 Aug 2022 10:37:01 +0800 Subject: [PATCH 2/2] configure: adjust cross-build assumption for a pb build Don't assume a cross build for a pb target on a platform that's only supported via pb. (cherry picked from commit 70e484e885637c495be5481983dae2207fdd67bb) (Edited to remove unrelated tweak to comments in "racket/src/expander/expand/require+provide.rkt".) --- racket/src/cs/c/configure | 15 +++++++++++---- racket/src/cs/c/configure.ac | 15 +++++++++++---- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/racket/src/cs/c/configure b/racket/src/cs/c/configure index 454d79e11a..7e0fa5600d 100755 --- a/racket/src/cs/c/configure +++ b/racket/src/cs/c/configure @@ -4679,6 +4679,11 @@ case "$MACH_HOST_CPU" in ;; esac +if test "${MACH}" = "" ; then + default_mach_was_empty=yes +else + default_mach_was_empty=no +fi if test "${enable_mach}" != "" ; then MACH="${enable_mach}" @@ -4701,13 +4706,15 @@ elif test "$MACH" = "" -o "$MACH_OS" = "" ; then exit 1 fi -# For a pb build where Racket is supplied, force cross-build -# mode on the assumption that the host is not a pb build -# (because it should be created with default configure options) +# For a pb build where Racket is supplied and MACH was not originally +# empty, force cross-build mode on the assumption that the host is not +# a pb build (because it should be created with default configure options) if test "${enable_pb}" = "yes" ; then if test "${enable_racket}" != "" ; then if test "${enable_target}" = "" ; then - enable_target="${MACH}" + if test "${default_mach_was_empty}" = "no" ; then + enable_target="${MACH}" + fi fi fi fi diff --git a/racket/src/cs/c/configure.ac b/racket/src/cs/c/configure.ac index 5bce979c92..734c1e8feb 100644 --- a/racket/src/cs/c/configure.ac +++ b/racket/src/cs/c/configure.ac @@ -415,6 +415,11 @@ case "$MACH_HOST_CPU" in ;; esac +if test "${MACH}" = "" ; then + default_mach_was_empty=yes +else + default_mach_was_empty=no +fi if test "${enable_mach}" != "" ; then MACH="${enable_mach}" @@ -437,13 +442,15 @@ elif test "$MACH" = "" -o "$MACH_OS" = "" ; then exit 1 fi -# For a pb build where Racket is supplied, force cross-build -# mode on the assumption that the host is not a pb build -# (because it should be created with default configure options) +# For a pb build where Racket is supplied and MACH was not originally +# empty, force cross-build mode on the assumption that the host is not +# a pb build (because it should be created with default configure options) if test "${enable_pb}" = "yes" ; then if test "${enable_racket}" != "" ; then if test "${enable_target}" = "" ; then - enable_target="${MACH}" + if test "${default_mach_was_empty}" = "no" ; then + enable_target="${MACH}" + fi fi fi fi -- 2.32.0