From f6dd16d8d30c7993ae20e40ed27c4237909273d2 Mon Sep 17 00:00:00 2001 From: Andrey Filipenkov Date: Sat, 27 Feb 2021 13:03:17 +0300 Subject: [PATCH 1/2] fix arch armv4t being passed to linker when building boost.locale for iOS and tvOS --- boost.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/boost.sh b/boost.sh index aa05571e..6561db3b 100755 --- a/boost.sh +++ b/boost.sh @@ -704,16 +704,20 @@ unpackBoost() patchBoost() { + BOOST_BUILD_DIR="$BOOST_SRC/tools/build" if [ "$(version "$BOOST_VERSION")" -le "$(version "1.73.0")" ] && [ "$(version "$XCODE_VERSION")" -ge "$(version "11.4")" ] then echo "Patching boost in $BOOST_SRC" # https://github.com/boostorg/build/pull/560 - (cd "$BOOST_SRC" && patch --forward -p1 -d "$BOOST_SRC/tools/build" < "$CURRENT_DIR/patches/xcode-11.4.patch") + (cd "$BOOST_SRC" && patch --forward -p1 -d "$BOOST_BUILD_DIR" < "$CURRENT_DIR/patches/xcode-11.4.patch") doneSection fi + + # fixes boost passing `-arch arm` to linker which fails due to attempt to use armv4t + sed -i '' -e "s/options = -arch arm ;/#options = -arch arm ;/" "$BOOST_BUILD_DIR/src/tools/darwin.jam" } #=============================================================================== From b4a0bd8607b6a0780b28b3961ac28a55ba82bf1d Mon Sep 17 00:00:00 2001 From: Andrey Filipenkov Date: Sat, 27 Feb 2021 13:05:00 +0300 Subject: [PATCH 2/2] fix building boost.locale for iOS and tvOS pass compile flags also to cxx and linker --- boost.sh | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/boost.sh b/boost.sh index 6561db3b..959bd3f6 100755 --- a/boost.sh +++ b/boost.sh @@ -745,14 +745,20 @@ updateBoostUserConfigJam() USING_MPI="using mpi ;" # trailing space needed fi + COMMON_FLAGS_IOS="$OTHER_FLAGS ${IOS_ARCH_FLAGS[*]} $EXTRA_IOS_FLAGS -isysroot $IOS_SDK_PATH" + COMMON_FLAGS_IOS_SIM="$OTHER_FLAGS ${IOS_SIM_ARCH_FLAGS[*]} $EXTRA_IOS_SIM_FLAGS -isysroot $IOSSIM_SDK_PATH" + + COMMON_FLAGS_TVOS="$OTHER_FLAGS ${TVOS_ARCH_FLAGS[*]} $EXTRA_TVOS_FLAGS -isysroot $TVOS_SDK_PATH" + COMMON_FLAGS_TVOS_SIM="$OTHER_FLAGS ${TVOS_SIM_ARCH_FLAGS[*]} $EXTRA_TVOS_SIM_FLAGS -isysroot $TVOSSIM_SDK_PATH" + cat > "$BOOST_SRC/tools/build/src/user-config.jam" <arm iphone - "$CXX_FLAGS" - "$LD_FLAGS -isysroot $IOS_SDK_PATH" - "$OTHER_FLAGS ${IOS_ARCH_FLAGS[*]} $EXTRA_IOS_FLAGS -isysroot $IOS_SDK_PATH" + "$CXX_FLAGS $COMMON_FLAGS_IOS" + "$LD_FLAGS $COMMON_FLAGS_IOS" + "$COMMON_FLAGS_IOS" multi ; @@ -760,27 +766,27 @@ using darwin : $COMPILER_VERSION~iphonesim : $COMPILER : x86 iphone - "$CXX_FLAGS" - "$LD_FLAGS -isysroot $IOSSIM_SDK_PATH" - "$OTHER_FLAGS ${IOS_SIM_ARCH_FLAGS[*]} $EXTRA_IOS_SIM_FLAGS -isysroot $IOSSIM_SDK_PATH" + "$CXX_FLAGS $COMMON_FLAGS_IOS_SIM" + "$LD_FLAGS $COMMON_FLAGS_IOS_SIM" + "$COMMON_FLAGS_IOS_SIM" multi ; using darwin : $COMPILER_VERSION~appletv : $COMPILER : arm iphone - "$CXX_FLAGS" - "$LD_FLAGS -isysroot $TVOS_SDK_PATH" - "$OTHER_FLAGS ${TVOS_ARCH_FLAGS[*]} $EXTRA_TVOS_FLAGS -isysroot $TVOS_SDK_PATH" + "$CXX_FLAGS $COMMON_FLAGS_TVOS" + "$LD_FLAGS $COMMON_FLAGS_TVOS" + "$COMMON_FLAGS_TVOS" multi ; using darwin : $COMPILER_VERSION~appletvsim : $COMPILER : x86 iphone - "$CXX_FLAGS" - "$LD_FLAGS -isysroot $TVOSSIM_SDK_PATH" - "$OTHER_FLAGS ${TVOS_SIM_ARCH_FLAGS[*]} $EXTRA_TVOS_SIM_FLAGS -isysroot $TVOSSIM_SDK_PATH" + "$CXX_FLAGS $COMMON_FLAGS_TVOS_SIM" + "$LD_FLAGS $COMMON_FLAGS_TVOS_SIM" + "$COMMON_FLAGS_TVOS_SIM" multi ; using darwin : $COMPILER_VERSION~macos