build: Clean up / consolidate some OpenSSL options now that there is only one place. Also: deadstrip better?
This commit is contained in:
parent
f5065ff42b
commit
5b526cbf5b
18
GNUmakefile
18
GNUmakefile
@ -199,7 +199,6 @@ ANDROID_RELEASE_TARGETS := $(filter-out $(DEBUG_TARGETS),$(ANDROID_TARGETS))
|
|||||||
NONANDROID_RELEASE_TARGETS := $(filter-out $(ANDROID_ARM64_TARGETS),$(RELEASE_TARGETS))
|
NONANDROID_RELEASE_TARGETS := $(filter-out $(ANDROID_ARM64_TARGETS),$(RELEASE_TARGETS))
|
||||||
NONANDROID_TARGETS := $(filter-out $(ANDROID_TARGETS),$(ALL_TARGETS))
|
NONANDROID_TARGETS := $(filter-out $(ANDROID_TARGETS),$(ALL_TARGETS))
|
||||||
NONMACOS_TARGETS := $(filter-out $(MACOS_TARGETS) $(IOS_TARGETS) $(IOSSIM_TARGETS),$(ALL_TARGETS))
|
NONMACOS_TARGETS := $(filter-out $(MACOS_TARGETS) $(IOS_TARGETS) $(IOSSIM_TARGETS),$(ALL_TARGETS))
|
||||||
DEADSTRIP_TARGETS := $(filter-out $(ANDROID_TARGETS),$(NONMACOS_TARGETS))
|
|
||||||
ifneq ($(UNAME_S),OpenBSD)
|
ifneq ($(UNAME_S),OpenBSD)
|
||||||
$(NONMACOS_TARGETS): LDFLAGS += -static-libgcc
|
$(NONMACOS_TARGETS): LDFLAGS += -static-libgcc
|
||||||
endif
|
endif
|
||||||
@ -268,7 +267,8 @@ $(ANDROID_X86_TARGETS): LDFLAGS += -Lout/openssl/android/x86/usr/local/lib
|
|||||||
$(ANDROID_X86_64_TARGETS): CFLAGS += -Iout/openssl/android/x86_64/usr/local/include
|
$(ANDROID_X86_64_TARGETS): CFLAGS += -Iout/openssl/android/x86_64/usr/local/include
|
||||||
$(ANDROID_X86_64_TARGETS): LDFLAGS += -Lout/openssl/android/x86_64/usr/local/lib
|
$(ANDROID_X86_64_TARGETS): LDFLAGS += -Lout/openssl/android/x86_64/usr/local/lib
|
||||||
$(NONMACOS_TARGETS): CFLAGS += -Wno-cast-function-type
|
$(NONMACOS_TARGETS): CFLAGS += -Wno-cast-function-type
|
||||||
$(DEADSTRIP_TARGETS): LDFLAGS += -Wl,--gc-sections
|
$(MACOS_TARGETS): LDFLAGS += -Wl,-dead_strip
|
||||||
|
$(NONMACOS_TARGETS): LDFLAGS += -Wl,--gc-sections -Wl,--as-needed
|
||||||
$(IOS_TARGETS): CFLAGS += -miphoneos-version-min=9.0
|
$(IOS_TARGETS): CFLAGS += -miphoneos-version-min=9.0
|
||||||
$(IOS_TARGETS): LDFLAGS += -miphoneos-version-min=9.0
|
$(IOS_TARGETS): LDFLAGS += -miphoneos-version-min=9.0
|
||||||
ifeq ($(UNAME_S),Darwin)
|
ifeq ($(UNAME_S),Darwin)
|
||||||
@ -1144,17 +1144,17 @@ $(ANDROID_DEPS):
|
|||||||
+@export ANDROID_NDK_ROOT=$(ANDROID_NDK)
|
+@export ANDROID_NDK_ROOT=$(ANDROID_NDK)
|
||||||
+@export BUILD_PLATFORM=android
|
+@export BUILD_PLATFORM=android
|
||||||
+@export TOOLCHAIN=$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64
|
+@export TOOLCHAIN=$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64
|
||||||
+@PATH="$$TOOLCHAIN/x86_64-linux-android/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=x86_64 SSL_TARGET=android-x86_64 OPTIONS="--static -static -ffunction-sections -fdata-sections -D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
+@PATH="$$TOOLCHAIN/x86_64-linux-android/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=x86_64 SSL_TARGET=android-x86_64 OPTIONS="-D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
||||||
+@PATH="$$TOOLCHAIN/i686-linux-android/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=x86 SSL_TARGET=android-x86 OPTIONS="--static -static -ffunction-sections -fdata-sections -D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
+@PATH="$$TOOLCHAIN/i686-linux-android/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=x86 SSL_TARGET=android-x86 OPTIONS="-D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
||||||
+@PATH="$$TOOLCHAIN/arm-linux-androideabi/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=armeabi-v7a SSL_TARGET=android-arm OPTIONS="--static -static -ffunction-sections -fdata-sections --target=armv7a-linux-androideabi -Wl,--fix-cortex-a8 -D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
+@PATH="$$TOOLCHAIN/arm-linux-androideabi/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=armeabi-v7a SSL_TARGET=android-arm OPTIONS="--target=armv7a-linux-androideabi -Wl,--fix-cortex-a8 -D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
||||||
+@PATH="$$TOOLCHAIN/aarch64-linux-android/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=arm64-v8a SSL_TARGET=android-arm64 OPTIONS="--static -static -ffunction-sections -fdata-sections -D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
+@PATH="$$TOOLCHAIN/aarch64-linux-android/bin:$$TOOLCHAIN/bin:$$PATH" BUILD_TARGET=arm64-v8a SSL_TARGET=android-arm64 OPTIONS="-D__ANDROID_API__=$(ANDROID_MIN_SDK_VERSION) -Wno-macro-redefined" tools/ssl-local
|
||||||
$(filter $(BUILD_DIR)/android%,$(APP_OBJS)): | $(ANDROID_DEPS)
|
$(filter $(BUILD_DIR)/android%,$(APP_OBJS)): | $(ANDROID_DEPS)
|
||||||
|
|
||||||
ifeq ($(UNAME_S),Linux)
|
ifeq ($(UNAME_S),Linux)
|
||||||
ifneq ($(USE_SYSTEM_SSL),1)
|
ifneq ($(USE_SYSTEM_SSL),1)
|
||||||
LOCAL_DEPS := out/openssl/$(UNAME_S)/$(UNAME_M)/usr/local/lib/libssl.a
|
LOCAL_DEPS := out/openssl/$(UNAME_S)/$(UNAME_M)/usr/local/lib/libssl.a
|
||||||
$(LOCAL_DEPS):
|
$(LOCAL_DEPS):
|
||||||
+@/usr/bin/env bash tools/ssl-local
|
+@tools/ssl-local
|
||||||
$(filter $(BUILD_DIR)/debug/%,$(APP_OBJS)) $(filter $(BUILD_DIR)/release/%,$(APP_OBJS)): | $(LOCAL_DEPS)
|
$(filter $(BUILD_DIR)/debug/%,$(APP_OBJS)) $(filter $(BUILD_DIR)/release/%,$(APP_OBJS)): | $(LOCAL_DEPS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -1198,8 +1198,8 @@ endif
|
|||||||
ifeq ($(UNAME_S),Darwin)
|
ifeq ($(UNAME_S),Darwin)
|
||||||
IOS_DEPS := out/openssl/ios/ios64-xcrun/usr/local/lib/libssl.a
|
IOS_DEPS := out/openssl/ios/ios64-xcrun/usr/local/lib/libssl.a
|
||||||
$(IOS_DEPS):
|
$(IOS_DEPS):
|
||||||
+@BUILD_PLATFORM=ios BUILD_TARGET=ios64-xcrun SSL_TARGET=ios64-xcrun OPTIONS="--static -static -Os -ffunction-sections -fdata-sections -fPIC -Wno-macro-redefined -miphoneos-version-min=9.0" tools/ssl-local
|
+@BUILD_PLATFORM=ios BUILD_TARGET=ios64-xcrun SSL_TARGET=ios64-xcrun OPTIONS="-fPIC -Wno-macro-redefined -miphoneos-version-min=9.0" tools/ssl-local
|
||||||
+@BUILD_PLATFORM=ios BUILD_TARGET=iossimulator-xcrun SSL_TARGET=iossimulator-xcrun OPTIONS="--static -static -Os -ffunction-sections -fdata-sections -fPIC -Wno-macro-redefined" tools/ssl-local
|
+@BUILD_PLATFORM=ios BUILD_TARGET=iossimulator-xcrun SSL_TARGET=iossimulator-xcrun OPTIONS="-fPIC -Wno-macro-redefined" tools/ssl-local
|
||||||
$(filter $(BUILD_DIR)/ios%,$(APP_OBJS)): | $(IOS_DEPS)
|
$(filter $(BUILD_DIR)/ios%,$(APP_OBJS)): | $(IOS_DEPS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
117
tools/ssl-local
117
tools/ssl-local
@ -22,63 +22,66 @@ pwd
|
|||||||
pushd $WORK_DIR || exit 128
|
pushd $WORK_DIR || exit 128
|
||||||
rm -rf $DESTDIR
|
rm -rf $DESTDIR
|
||||||
echo $PATH
|
echo $PATH
|
||||||
export GLOBAL_OPTIONS="
|
export GLOBAL_OPTIONS=" \
|
||||||
no-apps
|
no-apps \
|
||||||
no-asm
|
no-asm \
|
||||||
no-async
|
no-async \
|
||||||
no-autoerrinit
|
no-autoerrinit \
|
||||||
no-autoload-config
|
no-autoload-config \
|
||||||
no-cmp
|
no-cmp \
|
||||||
no-cms
|
no-cms \
|
||||||
no-comp
|
no-comp \
|
||||||
no-deprecated
|
no-deprecated \
|
||||||
no-dgram
|
no-dgram \
|
||||||
no-docs
|
no-docs \
|
||||||
no-dsa
|
no-dsa \
|
||||||
no-dso
|
no-dso \
|
||||||
no-dtls
|
no-dtls \
|
||||||
no-dtls1
|
no-dtls1 \
|
||||||
no-dtls1-method
|
no-dtls1-method \
|
||||||
no-dynamic-engine
|
no-dynamic-engine \
|
||||||
no-ec2m
|
no-ec2m \
|
||||||
no-egd
|
no-egd \
|
||||||
no-engine
|
no-engine \
|
||||||
no-err
|
no-err \
|
||||||
no-filenames
|
no-filenames \
|
||||||
no-gost
|
no-gost \
|
||||||
no-http
|
no-http \
|
||||||
no-idea
|
no-idea \
|
||||||
no-legacy
|
no-legacy \
|
||||||
no-md2
|
no-md2 \
|
||||||
no-md4
|
no-md4 \
|
||||||
no-module
|
no-module \
|
||||||
no-multiblock
|
no-multiblock \
|
||||||
no-nextprotoneg
|
no-nextprotoneg \
|
||||||
no-ocsp
|
no-ocsp \
|
||||||
no-psk
|
no-psk \
|
||||||
no-shared
|
no-shared \
|
||||||
no-sock
|
no-sock \
|
||||||
no-srp
|
no-srp \
|
||||||
no-ssl
|
no-ssl \
|
||||||
no-ssl3
|
no-ssl3 \
|
||||||
no-ssl-trace
|
no-ssl-trace \
|
||||||
no-stdio
|
no-stdio \
|
||||||
no-tests
|
no-tests \
|
||||||
no-thread-pool
|
no-thread-pool \
|
||||||
no-threads
|
no-threads \
|
||||||
no-tls1
|
no-tls1 \
|
||||||
no-tls1-method
|
no-tls1-method \
|
||||||
no-trace
|
no-trace \
|
||||||
no-ui-console
|
no-ui-console \
|
||||||
no-uplink
|
no-uplink \
|
||||||
no-weak-ssl-ciphers
|
no-weak-ssl-ciphers \
|
||||||
no-whirlpool
|
no-whirlpool \
|
||||||
no-zlib
|
no-zlib \
|
||||||
-Os
|
-Os \
|
||||||
-DOPENSSL_SMALL_FOOTPRINT
|
-DOPENSSL_SMALL_FOOTPRINT \
|
||||||
-Wno-error
|
-Wno-error \
|
||||||
-ffunction-sections
|
-ffunction-sections \
|
||||||
-fdata-sections"
|
-fdata-sections \
|
||||||
|
--static \
|
||||||
|
-static \
|
||||||
|
"
|
||||||
pwd
|
pwd
|
||||||
echo "./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS" && \
|
echo "./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS" && \
|
||||||
./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS && \
|
./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS && \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user