blob: bab28fa0226627e00b7a700dbe794d21414cfbf0 [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
18COREGRIND_LIBS_X86_LINUX = \
19 $(top_builddir)/coregrind/libcoregrind_x86_linux.a \
20 @VEX_DIR@/libvex_x86_linux.a
21
22COREGRIND_LIBS_AMD64_LINUX = \
23 $(top_builddir)/coregrind/libcoregrind_amd64_linux.a \
24 @VEX_DIR@/libvex_amd64_linux.a
25
26COREGRIND_LIBS_PPC32_LINUX = \
27 $(top_builddir)/coregrind/libcoregrind_ppc32_linux.a \
28 @VEX_DIR@/libvex_ppc32_linux.a
sewardj45f4e7c2005-09-27 19:20:21 +000029
30##.PHONY: @VEX_DIR@/libvex.a
31
tomfb7bcde2005-11-07 15:24:38 +000032@VEX_DIR@/libvex_x86_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
33 $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_x86_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_X86_LINUX)"
34
35@VEX_DIR@/libvex_amd64_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
36 $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_amd64_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_AMD64_LINUX)"
37
38@VEX_DIR@/libvex_ppc32_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h
39 $(MAKE) -C @VEX_DIR@ CC="$(CC)" libvex_ppc32_linux.a EXTRA_CFLAGS="$(AM_CFLAGS_PPC32_LINUX)"
sewardj45f4e7c2005-09-27 19:20:21 +000040
41@VEX_DIR@/priv/main/vex_svnversion.h:
42 $(MAKE) -C @VEX_DIR@ CC="$(CC)" version
43
tomfb7bcde2005-11-07 15:24:38 +000044TOOL_LDADD_COMMON = -lgcc
45TOOL_LDFLAGS_COMMON = -static \
sewardj45f4e7c2005-09-27 19:20:21 +000046 -Wl,-defsym,valt_load_address=@VALT_LOAD_ADDRESS@ \
sewardj45f4e7c2005-09-27 19:20:21 +000047 -nodefaultlibs -nostartfiles -u _start
njn717cde52005-05-10 02:47:21 +000048
tomfb7bcde2005-11-07 15:24:38 +000049TOOL_LDADD_X86_LINUX = $(COREGRIND_LIBS_X86_LINUX) $(TOOL_LDADD_COMMON)
50TOOL_LDFLAGS_X86_LINUX = \
51 $(TOOL_LDFLAGS_COMMON) @FLAG_M32@ \
52 -Wl,-T,$(top_builddir)/valt_load_address_x86_linux.lds
53
54TOOL_LDADD_AMD64_LINUX = $(COREGRIND_LIBS_AMD64_LINUX) $(TOOL_LDADD_COMMON)
55TOOL_LDFLAGS_AMD64_LINUX = \
56 $(TOOL_LDFLAGS_COMMON) -m64 \
57 -Wl,-T,$(top_builddir)/valt_load_address_amd64_linux.lds
58
59TOOL_LDADD_PPC32_LINUX = $(COREGRIND_LIBS_PPC32_LINUX) $(TOOL_LDADD_COMMON)
60TOOL_LDFLAGS_PPC32_LINUX = \
61 $(TOOL_LDFLAGS_COMMON) \
62 -Wl,-T,$(top_builddir)/valt_load_address_ppc32_linux.lds
63
dirk515ef3c2005-11-10 00:40:26 +000064PRELOAD_LDFLAGS_COMMON = -nostdlib -shared -Wl,-z,interpose,-z,initfirst
tomfb7bcde2005-11-07 15:24:38 +000065PRELOAD_LDFLAGS_X86_LINUX = $(PRELOAD_LDFLAGS_COMMON) @FLAG_M32@
66PRELOAD_LDFLAGS_AMD64_LINUX = $(PRELOAD_LDFLAGS_COMMON) -m64
67PRELOAD_LDFLAGS_PPC32_LINUX = $(PRELOAD_LDFLAGS_COMMON)
68
69LIBREPLACEMALLOC_LDFLAGS_X86_LINUX = \
70 -Wl,--whole-archive \
71 $(LIBREPLACEMALLOC_X86_LINUX) \
72 -Wl,--no-whole-archive
73LIBREPLACEMALLOC_LDFLAGS_AMD64_LINUX = \
74 -Wl,--whole-archive \
75 $(LIBREPLACEMALLOC_AMD64_LINUX) \
76 -Wl,--no-whole-archive
77LIBREPLACEMALLOC_LDFLAGS_PPC32_LINUX = \
78 -Wl,--whole-archive \
79 $(LIBREPLACEMALLOC_PPC32_LINUX) \
80 -Wl,--no-whole-archive