aboutsummaryrefslogtreecommitdiff
path: root/Makefile.tool.am
diff options
context:
space:
mode:
authorsewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2005-11-29 13:05:56 +0000
committersewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2005-11-29 13:05:56 +0000
commit2c48c7b0a453d32375a4df17e153011b797ef28c (patch)
treefafe325c523667f053ec7b95ac58618acfa7fc01 /Makefile.tool.am
parent9856aacece5a8f08b869d4b371a5e543480ff501 (diff)
downloadvalgrind-2c48c7b0a453d32375a4df17e153011b797ef28c.tar.gz
Add framework for ppc64 support. Apologies in advance for the
inevitable breakage to other platforms. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5250 a5019735-40e9-0310-863c-91ae7b9d1cf9
Diffstat (limited to 'Makefile.tool.am')
-rw-r--r--Makefile.tool.am24
1 files changed, 22 insertions, 2 deletions
diff --git a/Makefile.tool.am b/Makefile.tool.am
index bab28fa02..e985aecd5 100644
--- a/Makefile.tool.am
+++ b/Makefile.tool.am
@@ -15,6 +15,9 @@ LIBREPLACEMALLOC_AMD64_LINUX = \
LIBREPLACEMALLOC_PPC32_LINUX = \
$(top_builddir)/coregrind/libreplacemalloc_toolpreload_ppc32_linux.a
+LIBREPLACEMALLOC_PPC64_LINUX = \
+ $(top_builddir)/coregrind/libreplacemalloc_toolpreload_ppc64_linux.a
+
COREGRIND_LIBS_X86_LINUX = \
$(top_builddir)/coregrind/libcoregrind_x86_linux.a \
@VEX_DIR@/libvex_x86_linux.a
@@ -27,6 +30,10 @@ COREGRIND_LIBS_PPC32_LINUX = \
$(top_builddir)/coregrind/libcoregrind_ppc32_linux.a \
@VEX_DIR@/libvex_ppc32_linux.a
+COREGRIND_LIBS_PPC64_LINUX = \
+ $(top_builddir)/coregrind/libcoregrind_ppc64_linux.a \
+ @VEX_DIR@/libvex_ppc64_linux.a
+
##.PHONY: @VEX_DIR@/libvex.a
@VEX_DIR@/libvex_x86_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
@@ -38,6 +45,9 @@ COREGRIND_LIBS_PPC32_LINUX = \
@VEX_DIR@/libvex_ppc32_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
$(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_ppc32_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_PPC32_LINUX)"
+@VEX_DIR@/libvex_ppc64_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
+ $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_ppc64_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_PPC64_LINUX)"
+
@VEX_DIR@/priv/main/vex_svnversion.h:
$(MAKE) -C @VEX_DIR@ CC="$(CC)" version
@@ -58,13 +68,19 @@ TOOL_LDFLAGS_AMD64_LINUX = \
TOOL_LDADD_PPC32_LINUX = $(COREGRIND_LIBS_PPC32_LINUX) $(TOOL_LDADD_COMMON)
TOOL_LDFLAGS_PPC32_LINUX = \
- $(TOOL_LDFLAGS_COMMON) \
+ $(TOOL_LDFLAGS_COMMON) @FLAG_M32@ \
-Wl,-T,$(top_builddir)/valt_load_address_ppc32_linux.lds
+TOOL_LDADD_PPC64_LINUX = $(COREGRIND_LIBS_PPC64_LINUX) $(TOOL_LDADD_COMMON)
+TOOL_LDFLAGS_PPC64_LINUX = \
+ $(TOOL_LDFLAGS_COMMON) -m64 \
+ -Wl,-T,$(top_builddir)/valt_load_address_ppc64_linux.lds
+
PRELOAD_LDFLAGS_COMMON = -nostdlib -shared -Wl,-z,interpose,-z,initfirst
PRELOAD_LDFLAGS_X86_LINUX = $(PRELOAD_LDFLAGS_COMMON) @FLAG_M32@
PRELOAD_LDFLAGS_AMD64_LINUX = $(PRELOAD_LDFLAGS_COMMON) -m64
-PRELOAD_LDFLAGS_PPC32_LINUX = $(PRELOAD_LDFLAGS_COMMON)
+PRELOAD_LDFLAGS_PPC32_LINUX = $(PRELOAD_LDFLAGS_COMMON) @FLAG_M32@
+PRELOAD_LDFLAGS_PPC64_LINUX = $(PRELOAD_LDFLAGS_COMMON) -m64
LIBREPLACEMALLOC_LDFLAGS_X86_LINUX = \
-Wl,--whole-archive \
@@ -78,3 +94,7 @@ LIBREPLACEMALLOC_LDFLAGS_PPC32_LINUX = \
-Wl,--whole-archive \
$(LIBREPLACEMALLOC_PPC32_LINUX) \
-Wl,--no-whole-archive
+LIBREPLACEMALLOC_LDFLAGS_PPC64_LINUX = \
+ -Wl,--whole-archive \
+ $(LIBREPLACEMALLOC_PPC64_LINUX) \
+ -Wl,--no-whole-archive