# is unusable. So we have to tell ld not to generate that, with --build-id=none.
TOOL_LDFLAGS_COMMON_LINUX = \
-static -nodefaultlibs -nostartfiles -u _start @FLAG_NO_BUILD_ID@
-TOOL_LDFLAGS_COMMON_AIX5 = \
- -static -Wl,-e_start_valgrind
TOOL_LDFLAGS_COMMON_DARWIN = \
-nodefaultlibs -nostartfiles -Wl,-u,__start -Wl,-e,__start
TOOL_LDFLAGS_S390X_LINUX = \
$(TOOL_LDFLAGS_COMMON_LINUX) @FLAG_M64@
-TOOL_LDFLAGS_PPC32_AIX5 = \
- $(TOOL_LDFLAGS_COMMON_AIX5) @FLAG_MAIX32@
-
-TOOL_LDFLAGS_PPC64_AIX5 = \
- $(TOOL_LDFLAGS_COMMON_AIX5) @FLAG_MAIX64@ -Wl,-bbigtoc
-
TOOL_LDFLAGS_X86_DARWIN = \
$(TOOL_LDFLAGS_COMMON_DARWIN) -arch i386
TOOL_LDFLAGS_AMD64_DARWIN = \
$(TOOL_LDFLAGS_COMMON_DARWIN) -arch x86_64
+# MIPS Linux default start symbol is __start, not _start like on x86 or amd
+TOOL_LDFLAGS_MIPS32_LINUX = \
+ -static -nodefaultlibs -nostartfiles -u __start @FLAG_NO_BUILD_ID@ \
+ @FLAG_M32@
+
+# On Android we must ask for non-executable stack, not sure why.
+if VGCONF_PLATFORMS_INCLUDE_ARM_LINUX
+if VGCONF_PLATVARIANT_IS_ANDROID
+TOOL_LDFLAGS_ARM_LINUX += -Wl,-z,noexecstack
+endif
+endif
+
# NB for 64-bit darwin. We may want to set -Wl,-pagezero_size to
# something smaller than the default of 4G, so as to facilitate
# loading clients who are also linked thusly (currently m_ume.c
LIBREPLACEMALLOC_ARM_LINUX = \
$(top_builddir)/coregrind/libreplacemalloc_toolpreload-arm-linux.a
-LIBREPLACEMALLOC_PPC32_AIX5 = \
- $(top_builddir)/coregrind/libreplacemalloc_toolpreload-ppc32-aix5.a
-
-LIBREPLACEMALLOC_PPC64_AIX5 = \
- $(top_builddir)/coregrind/libreplacemalloc_toolpreload-ppc64-aix5.a
-
LIBREPLACEMALLOC_X86_DARWIN = \
$(top_builddir)/coregrind/libreplacemalloc_toolpreload-x86-darwin.a
LIBREPLACEMALLOC_S390X_LINUX = \
$(top_builddir)/coregrind/libreplacemalloc_toolpreload-s390x-linux.a
+LIBREPLACEMALLOC_MIPS32_LINUX = \
+ $(top_builddir)/coregrind/libreplacemalloc_toolpreload-mips32-linux.a
LIBREPLACEMALLOC_LDFLAGS_X86_LINUX = \
-Wl,--whole-archive \
$(LIBREPLACEMALLOC_ARM_LINUX) \
-Wl,--no-whole-archive
-LIBREPLACEMALLOC_LDFLAGS_PPC32_AIX5 = \
- $(LIBREPLACEMALLOC_PPC32_AIX5)
-
-LIBREPLACEMALLOC_LDFLAGS_PPC64_AIX5 = \
- $(LIBREPLACEMALLOC_PPC64_AIX5)
-
LIBREPLACEMALLOC_LDFLAGS_X86_DARWIN = \
$(LIBREPLACEMALLOC_X86_DARWIN)
$(LIBREPLACEMALLOC_S390X_LINUX) \
-Wl,--no-whole-archive
+LIBREPLACEMALLOC_LDFLAGS_MIPS32_LINUX = \
+ -Wl,--whole-archive \
+ $(LIBREPLACEMALLOC_MIPS32_LINUX) \
+ -Wl,--no-whole-archive
+
#----------------------------------------------------------------------------
# General stuff
#----------------------------------------------------------------------------