• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1include $(top_srcdir)/Makefile.tool.am
2
3SUBDIRS += perf
4
5EXTRA_DIST = docs/mc-manual.xml docs/mc-tech-docs.xml
6
7#----------------------------------------------------------------------------
8# Headers
9#----------------------------------------------------------------------------
10
11pkginclude_HEADERS = \
12	memcheck.h
13
14noinst_HEADERS = \
15	mc_include.h
16
17#----------------------------------------------------------------------------
18# memcheck-<platform>
19#----------------------------------------------------------------------------
20
21noinst_PROGRAMS  = memcheck-@VGCONF_ARCH_PRI@-@VGCONF_OS@
22if VGCONF_HAVE_PLATFORM_SEC
23noinst_PROGRAMS += memcheck-@VGCONF_ARCH_SEC@-@VGCONF_OS@
24endif
25
26MEMCHECK_SOURCES_COMMON = \
27	mc_leakcheck.c \
28	mc_malloc_wrappers.c \
29	mc_main.c \
30	mc_translate.c \
31	mc_machine.c \
32	mc_errors.c
33
34memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_SOURCES      = \
35	$(MEMCHECK_SOURCES_COMMON)
36memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_CPPFLAGS     = \
37	$(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
38memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_CFLAGS       = \
39	$(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) -O2
40memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_DEPENDENCIES = \
41	$(TOOL_DEPENDENCIES_@VGCONF_PLATFORM_PRI_CAPS@)
42memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_LDADD        = \
43	$(TOOL_LDADD_@VGCONF_PLATFORM_PRI_CAPS@)
44memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_LDFLAGS      = \
45	$(TOOL_LDFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
46memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_LINK = \
47	$(top_builddir)/coregrind/link_tool_exe_@VGCONF_OS@ \
48	@VALT_LOAD_ADDRESS_PRI@ \
49	$(LINK) \
50	$(memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_CFLAGS) \
51	$(memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_LDFLAGS)
52
53if VGCONF_HAVE_PLATFORM_SEC
54memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_SOURCES      = \
55	$(MEMCHECK_SOURCES_COMMON)
56memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_CPPFLAGS     = \
57	$(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
58memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_CFLAGS       = \
59	$(AM_CFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) -O2
60memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_DEPENDENCIES = \
61	$(TOOL_DEPENDENCIES_@VGCONF_PLATFORM_SEC_CAPS@)
62memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_LDADD        = \
63	$(TOOL_LDADD_@VGCONF_PLATFORM_SEC_CAPS@)
64memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_LDFLAGS      = \
65	$(TOOL_LDFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
66memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_LINK = \
67	$(top_builddir)/coregrind/link_tool_exe_@VGCONF_OS@ \
68	@VALT_LOAD_ADDRESS_SEC@ \
69	$(LINK) \
70	$(memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_CFLAGS) \
71	$(memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_LDFLAGS)
72endif
73
74mc_main.o: CFLAGS += -fomit-frame-pointer
75
76#----------------------------------------------------------------------------
77# vgpreload_memcheck-<platform>.so
78#----------------------------------------------------------------------------
79
80noinst_PROGRAMS += vgpreload_memcheck-@VGCONF_ARCH_PRI@-@VGCONF_OS@.so
81if VGCONF_HAVE_PLATFORM_SEC
82noinst_PROGRAMS += vgpreload_memcheck-@VGCONF_ARCH_SEC@-@VGCONF_OS@.so
83endif
84
85if VGCONF_OS_IS_DARWIN
86noinst_DSYMS = $(noinst_PROGRAMS)
87endif
88
89VGPRELOAD_MEMCHECK_SOURCES_COMMON = mc_replace_strmem.c
90
91vgpreload_memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_SOURCES      = \
92	$(VGPRELOAD_MEMCHECK_SOURCES_COMMON)
93vgpreload_memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_CPPFLAGS     = \
94	$(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
95vgpreload_memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_CFLAGS       = \
96	$(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) $(AM_CFLAGS_PIC) -O2
97vgpreload_memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_DEPENDENCIES = \
98	$(LIBREPLACEMALLOC_@VGCONF_PLATFORM_PRI_CAPS@)
99vgpreload_memcheck_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_LDFLAGS      = \
100	$(PRELOAD_LDFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) \
101	$(LIBREPLACEMALLOC_LDFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
102
103if VGCONF_HAVE_PLATFORM_SEC
104vgpreload_memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_SOURCES      = \
105	$(VGPRELOAD_MEMCHECK_SOURCES_COMMON)
106vgpreload_memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_CPPFLAGS     = \
107	$(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
108vgpreload_memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_CFLAGS       = \
109	$(AM_CFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) $(AM_CFLAGS_PIC) -O2
110vgpreload_memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_DEPENDENCIES = \
111	$(LIBREPLACEMALLOC_@VGCONF_PLATFORM_SEC_CAPS@)
112vgpreload_memcheck_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_LDFLAGS      = \
113	$(PRELOAD_LDFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) \
114	$(LIBREPLACEMALLOC_LDFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
115endif
116
117mc_replace_strmem.o: CFLAGS += -fno-omit-frame-pointer
118
119