diff --git a/core/combo/HOST_linux-x86.mk b/core/combo/HOST_linux-x86.mk index b5efc7127..169e2d244 100644 --- a/core/combo/HOST_linux-x86.mk +++ b/core/combo/HOST_linux-x86.mk @@ -35,7 +35,7 @@ $(combo_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG := prebuilts/gcc/linux-x86/host # We expect SSE3 floating point math. $(combo_2nd_arch_prefix)HOST_GLOBAL_CFLAGS += -msse3 -mfpmath=sse -m32 -Wa,--noexecstack -march=prescott -$(combo_2nd_arch_prefix)HOST_GLOBAL_LDFLAGS += -m32 -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +$(combo_2nd_arch_prefix)HOST_GLOBAL_LDFLAGS += -m32 -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--no-undefined-version ifneq ($(strip $(BUILD_HOST_static)),) # Statically-linked binaries are desirable for sandboxed environment diff --git a/core/combo/HOST_linux-x86_64.mk b/core/combo/HOST_linux-x86_64.mk index 9a7732488..9766f2bde 100644 --- a/core/combo/HOST_linux-x86_64.mk +++ b/core/combo/HOST_linux-x86_64.mk @@ -34,7 +34,7 @@ endef HOST_TOOLCHAIN_FOR_CLANG := prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8 HOST_GLOBAL_CFLAGS += -m64 -Wa,--noexecstack -HOST_GLOBAL_LDFLAGS += -m64 -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +HOST_GLOBAL_LDFLAGS += -m64 -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--no-undefined-version ifneq ($(strip $(BUILD_HOST_static)),) # Statically-linked binaries are desirable for sandboxed environment diff --git a/core/combo/TARGET_linux-arm.mk b/core/combo/TARGET_linux-arm.mk index 485e48cc3..b91e072f9 100644 --- a/core/combo/TARGET_linux-arm.mk +++ b/core/combo/TARGET_linux-arm.mk @@ -138,6 +138,7 @@ $(combo_2nd_arch_prefix)TARGET_GLOBAL_LDFLAGS += \ -Wl,--fatal-warnings \ -Wl,--icf=safe \ -Wl,--hash-style=gnu \ + -Wl,--no-undefined-version \ $(arch_variant_ldflags) $(combo_2nd_arch_prefix)TARGET_GLOBAL_CFLAGS += -mthumb-interwork diff --git a/core/combo/TARGET_linux-arm64.mk b/core/combo/TARGET_linux-arm64.mk index 1eb32407f..fbf8ab09a 100644 --- a/core/combo/TARGET_linux-arm64.mk +++ b/core/combo/TARGET_linux-arm64.mk @@ -115,6 +115,7 @@ TARGET_GLOBAL_LDFLAGS += \ -Wl,-maarch64linux \ -Wl,--hash-style=gnu \ -Wl,--fix-cortex-a53-843419 \ + -Wl,--no-undefined-version \ $(arch_variant_ldflags) # Disable transitive dependency library symbol resolving. diff --git a/core/combo/TARGET_linux-mips.mk b/core/combo/TARGET_linux-mips.mk index be05302ea..a70f4f80d 100644 --- a/core/combo/TARGET_linux-mips.mk +++ b/core/combo/TARGET_linux-mips.mk @@ -107,6 +107,7 @@ $(combo_2nd_arch_prefix)TARGET_GLOBAL_LDFLAGS += \ -Wl,--build-id=md5 \ -Wl,--warn-shared-textrel \ -Wl,--fatal-warnings \ + -Wl,--no-undefined-version \ $(arch_variant_ldflags) # Disable transitive dependency library symbol resolving. diff --git a/core/combo/TARGET_linux-mips64.mk b/core/combo/TARGET_linux-mips64.mk index 9704b6b79..9e4eaa6aa 100644 --- a/core/combo/TARGET_linux-mips64.mk +++ b/core/combo/TARGET_linux-mips64.mk @@ -113,6 +113,7 @@ TARGET_GLOBAL_LDFLAGS += \ -Wl,--build-id=md5 \ -Wl,--warn-shared-textrel \ -Wl,--fatal-warnings \ + -Wl,--no-undefined-version \ $(arch_variant_ldflags) # Disable transitive dependency library symbol resolving. diff --git a/core/combo/TARGET_linux-x86.mk b/core/combo/TARGET_linux-x86.mk index c4cb0f813..7d2b6de1b 100644 --- a/core/combo/TARGET_linux-x86.mk +++ b/core/combo/TARGET_linux-x86.mk @@ -129,6 +129,7 @@ $(combo_2nd_arch_prefix)TARGET_GLOBAL_LDFLAGS += -Wl,--warn-shared-textrel $(combo_2nd_arch_prefix)TARGET_GLOBAL_LDFLAGS += -Wl,--fatal-warnings $(combo_2nd_arch_prefix)TARGET_GLOBAL_LDFLAGS += -Wl,--gc-sections $(combo_2nd_arch_prefix)TARGET_GLOBAL_LDFLAGS += -Wl,--hash-style=gnu +$(combo_2nd_arch_prefix)TARGET_GLOBAL_LDFLAGS += -Wl,--no-undefined-version $(combo_2nd_arch_prefix)TARGET_C_INCLUDES := \ $(libc_root)/arch-x86/include \ diff --git a/core/combo/TARGET_linux-x86_64.mk b/core/combo/TARGET_linux-x86_64.mk index b7ec50ba6..81fafdda4 100644 --- a/core/combo/TARGET_linux-x86_64.mk +++ b/core/combo/TARGET_linux-x86_64.mk @@ -138,6 +138,7 @@ TARGET_GLOBAL_LDFLAGS += -Wl,--warn-shared-textrel TARGET_GLOBAL_LDFLAGS += -Wl,--fatal-warnings TARGET_GLOBAL_LDFLAGS += -Wl,--gc-sections TARGET_GLOBAL_LDFLAGS += -Wl,--hash-style=gnu +TARGET_GLOBAL_LDFLAGS += -Wl,--no-undefined-version TARGET_C_INCLUDES := \ $(libc_root)/arch-x86_64/include \