blob: e985aecd5433408333d2ae239a0408b6473c3d70 [file] [log] [blame]
nethercote4388a402004-09-01 23:20:49 +00001
nethercote4388a402004-09-01 23:20:49 +00002SUBDIRS = . tests docs
3
nethercoteb35a8b92004-09-11 16:45:27 +00004include $(top_srcdir)/Makefile.all.am
tomfb7bcde2005-11-07 15:24:38 +00005include $(top_srcdir)/Makefile.install.am
nethercoteb35a8b92004-09-11 16:45:27 +00006include $(top_srcdir)/Makefile.tool-flags.am
nethercote4388a402004-09-01 23:20:49 +00007include $(top_srcdir)/Makefile.tool-inplace.am
njn717cde52005-05-10 02:47:21 +00008
tomfb7bcde2005-11-07 15:24:38 +00009LIBREPLACEMALLOC_X86_LINUX = \
10 $(top_builddir)/coregrind/libreplacemalloc_toolpreload_x86_linux.a
sewardj45f4e7c2005-09-27 19:20:21 +000011
tomfb7bcde2005-11-07 15:24:38 +000012LIBREPLACEMALLOC_AMD64_LINUX = \
13 $(top_builddir)/coregrind/libreplacemalloc_toolpreload_amd64_linux.a
14
15LIBREPLACEMALLOC_PPC32_LINUX = \
16 $(top_builddir)/coregrind/libreplacemalloc_toolpreload_ppc32_linux.a
17
sewardj2c48c7b2005-11-29 13:05:56 +000018LIBREPLACEMALLOC_PPC64_LINUX = \
19 $(top_builddir)/coregrind/libreplacemalloc_toolpreload_ppc64_linux.a
20
tomfb7bcde2005-11-07 15:24:38 +000021COREGRIND_LIBS_X86_LINUX = \
22 $(top_builddir)/coregrind/libcoregrind_x86_linux.a \
23 @VEX_DIR@/libvex_x86_linux.a
24
25COREGRIND_LIBS_AMD64_LINUX = \
26 $(top_builddir)/coregrind/libcoregrind_amd64_linux.a \
27 @VEX_DIR@/libvex_amd64_linux.a
28
29COREGRIND_LIBS_PPC32_LINUX = \
30 $(top_builddir)/coregrind/libcoregrind_ppc32_linux.a \
31 @VEX_DIR@/libvex_ppc32_linux.a
sewardj45f4e7c2005-09-27 19:20:21 +000032
sewardj2c48c7b2005-11-29 13:05:56 +000033COREGRIND_LIBS_PPC64_LINUX = \
34 $(top_builddir)/coregrind/libcoregrind_ppc64_linux.a \
35 @VEX_DIR@/libvex_ppc64_linux.a
36
sewardj45f4e7c2005-09-27 19:20:21 +000037##.PHONY: @VEX_DIR@/libvex.a
38
tomfb7bcde2005-11-07 15:24:38 +000039@VEX_DIR@/libvex_x86_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
40 $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_x86_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_X86_LINUX)"
41
42@VEX_DIR@/libvex_amd64_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
43 $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_amd64_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_AMD64_LINUX)"
44
45@VEX_DIR@/libvex_ppc32_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
46 $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_ppc32_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_PPC32_LINUX)"
sewardj45f4e7c2005-09-27 19:20:21 +000047
sewardj2c48c7b2005-11-29 13:05:56 +000048@VEX_DIR@/libvex_ppc64_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
49 $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_ppc64_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_PPC64_LINUX)"
50
sewardj45f4e7c2005-09-27 19:20:21 +000051@VEX_DIR@/priv/main/vex_svnversion.h:
52 $(MAKE) -C @VEX_DIR@ CC="$(CC)" version
53
tomfb7bcde2005-11-07 15:24:38 +000054TOOL_LDADD_COMMON = -lgcc
55TOOL_LDFLAGS_COMMON = -static \
sewardj45f4e7c2005-09-27 19:20:21 +000056 -Wl,-defsym,valt_load_address=@VALT_LOAD_ADDRESS@ \
sewardj45f4e7c2005-09-27 19:20:21 +000057 -nodefaultlibs -nostartfiles -u _start
njn717cde52005-05-10 02:47:21 +000058
tomfb7bcde2005-11-07 15:24:38 +000059TOOL_LDADD_X86_LINUX = $(COREGRIND_LIBS_X86_LINUX) $(TOOL_LDADD_COMMON)
60TOOL_LDFLAGS_X86_LINUX = \
61 $(TOOL_LDFLAGS_COMMON) @FLAG_M32@ \
62 -Wl,-T,$(top_builddir)/valt_load_address_x86_linux.lds
63
64TOOL_LDADD_AMD64_LINUX = $(COREGRIND_LIBS_AMD64_LINUX) $(TOOL_LDADD_COMMON)
65TOOL_LDFLAGS_AMD64_LINUX = \
66 $(TOOL_LDFLAGS_COMMON) -m64 \
67 -Wl,-T,$(top_builddir)/valt_load_address_amd64_linux.lds
68
69TOOL_LDADD_PPC32_LINUX = $(COREGRIND_LIBS_PPC32_LINUX) $(TOOL_LDADD_COMMON)
70TOOL_LDFLAGS_PPC32_LINUX = \
sewardj2c48c7b2005-11-29 13:05:56 +000071 $(TOOL_LDFLAGS_COMMON) @FLAG_M32@ \
tomfb7bcde2005-11-07 15:24:38 +000072 -Wl,-T,$(top_builddir)/valt_load_address_ppc32_linux.lds
73
sewardj2c48c7b2005-11-29 13:05:56 +000074TOOL_LDADD_PPC64_LINUX = $(COREGRIND_LIBS_PPC64_LINUX) $(TOOL_LDADD_COMMON)
75TOOL_LDFLAGS_PPC64_LINUX = \
76 $(TOOL_LDFLAGS_COMMON) -m64 \
77 -Wl,-T,$(top_builddir)/valt_load_address_ppc64_linux.lds
78
dirk515ef3c2005-11-10 00:40:26 +000079PRELOAD_LDFLAGS_COMMON = -nostdlib -shared -Wl,-z,interpose,-z,initfirst
tomfb7bcde2005-11-07 15:24:38 +000080PRELOAD_LDFLAGS_X86_LINUX = $(PRELOAD_LDFLAGS_COMMON) @FLAG_M32@
81PRELOAD_LDFLAGS_AMD64_LINUX = $(PRELOAD_LDFLAGS_COMMON) -m64
sewardj2c48c7b2005-11-29 13:05:56 +000082PRELOAD_LDFLAGS_PPC32_LINUX = $(PRELOAD_LDFLAGS_COMMON) @FLAG_M32@
83PRELOAD_LDFLAGS_PPC64_LINUX = $(PRELOAD_LDFLAGS_COMMON) -m64
tomfb7bcde2005-11-07 15:24:38 +000084
85LIBREPLACEMALLOC_LDFLAGS_X86_LINUX = \
86 -Wl,--whole-archive \
87 $(LIBREPLACEMALLOC_X86_LINUX) \
88 -Wl,--no-whole-archive
89LIBREPLACEMALLOC_LDFLAGS_AMD64_LINUX = \
90 -Wl,--whole-archive \
91 $(LIBREPLACEMALLOC_AMD64_LINUX) \
92 -Wl,--no-whole-archive
93LIBREPLACEMALLOC_LDFLAGS_PPC32_LINUX = \
94 -Wl,--whole-archive \
95 $(LIBREPLACEMALLOC_PPC32_LINUX) \
96 -Wl,--no-whole-archive
sewardj2c48c7b2005-11-29 13:05:56 +000097LIBREPLACEMALLOC_LDFLAGS_PPC64_LINUX = \
98 -Wl,--whole-archive \
99 $(LIBREPLACEMALLOC_PPC64_LINUX) \
100 -Wl,--no-whole-archive