diff --git a/build-libssl.sh b/build-libssl.sh index e4cba5e..006d9ab 100755 --- a/build-libssl.sh +++ b/build-libssl.sh @@ -50,6 +50,7 @@ echo_help() echo " --ios-sdk=SDKVERSION Override iOS SDK version" echo " --noparallel Disable running make with parallel jobs (make -j)" echo " --tvos-sdk=SDKVERSION Override tvOS SDK version" + echo " --disable-bitcode Disable embedding Bitcode" echo " -v, --verbose Enable verbose logging" echo " --verbose-on-error Dump last 500 lines from log file if an error occurs (for Travis builds)" echo " --version=VERSION OpenSSL version to build (defaults to ${DEFAULTVERSION})" @@ -189,6 +190,7 @@ ARCHS="" BRANCH="" CLEANUP="" CONFIG_ENABLE_EC_NISTP_64_GCC_128="" +CONFIG_DISABLE_BITCODE="" CONFIG_NO_DEPRECATED="" IOS_SDKVERSION="" LOG_VERBOSE="" @@ -218,6 +220,9 @@ case $i in --ec-nistp-64-gcc-128) CONFIG_ENABLE_EC_NISTP_64_GCC_128="true" ;; + --disable-bitcode) + CONFIG_DISABLE_BITCODE="true" + ;; -h|--help) echo_help exit @@ -377,6 +382,9 @@ else fi echo " iOS SDK: ${IOS_SDKVERSION}" echo " tvOS SDK: ${TVOS_SDKVERSION}" +if [ "${CONFIG_DISABLE_BITCODE}" == "true" ]; then + echo " Bitcode embedding disabled" +fi echo " Number of make threads: ${BUILD_THREADS}" if [ -n "${CONFIG_OPTIONS}" ]; then echo " Configure options: ${CONFIG_OPTIONS}" diff --git a/config/20-ios-tvos-cross.conf b/config/20-ios-tvos-cross.conf index be525dd..f2654b5 100644 --- a/config/20-ios-tvos-cross.conf +++ b/config/20-ios-tvos-cross.conf @@ -9,7 +9,7 @@ "ios-tvos-cross-base" => { template => 1, cflags => combine('-isysroot $(CROSS_TOP)/SDKs/$(CROSS_SDK) -fno-common', - sub { (defined($ENV{'SDKVERSION'}) && $ENV{'SDKVERSION'} =~ /^(9|[1-9][0-9]+)\./ && $disabled{shared}) + sub { ((!defined($ENV{'CONFIG_DISABLE_BITCODE'}) || $ENV{'CONFIG_DISABLE_BITCODE'} ne 'true') && defined($ENV{'SDKVERSION'}) && $ENV{'SDKVERSION'} =~ /^(9|[1-9][0-9]+)\./ && $disabled{shared}) ? '-fembed-bitcode' : (); }, ), }, diff --git a/scripts/build-loop-archs.sh b/scripts/build-loop-archs.sh index 9b47fb8..fe68301 100755 --- a/scripts/build-loop-archs.sh +++ b/scripts/build-loop-archs.sh @@ -61,8 +61,10 @@ do fi # Embed bitcode for SDK >= 9 - if [[ "${SDKVERSION}" == 9.* || "${SDKVERSION}" == [0-9][0-9].* ]]; then - LOCAL_CONFIG_OPTIONS="${LOCAL_CONFIG_OPTIONS} -fembed-bitcode" + if [ "${CONFIG_DISABLE_BITCODE}" != "true" ]; then + if [[ "${SDKVERSION}" == 9.* || "${SDKVERSION}" == [0-9][0-9].* ]]; then + LOCAL_CONFIG_OPTIONS="${LOCAL_CONFIG_OPTIONS} -fembed-bitcode" + fi fi # Add platform specific config options diff --git a/scripts/build-loop-targets.sh b/scripts/build-loop-targets.sh index ca3c5c7..9abb074 100755 --- a/scripts/build-loop-targets.sh +++ b/scripts/build-loop-targets.sh @@ -32,6 +32,7 @@ do export SDKVERSION export IOS_MIN_SDK_VERSION export TVOS_MIN_SDK_VERSION + export CONFIG_DISABLE_BITCODE # Determine platform if [[ "${TARGET}" == "ios-sim-cross-"* ]]; then