• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2# Be very careful when renaming any files, targets, whatever, in this
3# Makefile.  Various parts of the system rely on these names having
4# particular forms.
5
6include $(top_srcdir)/Makefile.all.am
7
8#----------------------------------------------------------------------------
9# Basics, flags
10#----------------------------------------------------------------------------
11
12AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@ += \
13	-I$(top_srcdir)/coregrind \
14	-DVG_LIBDIR="\"$(pkglibdir)"\" \
15	-DVG_PLATFORM="\"@VGCONF_ARCH_PRI@-@VGCONF_OS@\""
16if VGCONF_HAVE_PLATFORM_SEC
17AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@ += \
18	-I$(top_srcdir)/coregrind \
19	-DVG_LIBDIR="\"$(pkglibdir)"\" \
20	-DVG_PLATFORM="\"@VGCONF_ARCH_SEC@-@VGCONF_OS@\""
21endif
22
23
24EXTRA_DIST = \
25	m_debuginfo/UNUSED_STABS.txt \
26	m_debuginfo/README.txt \
27	m_gdbserver/README_DEVELOPERS
28
29#----------------------------------------------------------------------------
30# The launcher.  Built for the primary target only.
31#----------------------------------------------------------------------------
32
33bin_PROGRAMS = \
34	valgrind \
35	vgdb
36
37if VGCONF_OS_IS_LINUX
38valgrind_SOURCES = \
39	launcher-linux.c \
40	m_debuglog.c
41endif
42if VGCONF_OS_IS_DARWIN
43valgrind_SOURCES = \
44	launcher-darwin.c \
45	m_debuglog.c
46endif
47
48valgrind_CPPFLAGS  = $(AM_CPPFLAGS_PRI)
49valgrind_CFLAGS    = $(AM_CFLAGS_PRI)
50valgrind_CCASFLAGS = $(AM_CCASFLAGS_PRI)
51valgrind_LDFLAGS   = $(AM_CFLAGS_PRI)
52if VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
53valgrind_LDFLAGS   += -Wl,-read_only_relocs -Wl,suppress
54endif
55
56vgdb_SOURCES = vgdb.c
57vgdb_CPPFLAGS  = $(AM_CPPFLAGS_PRI)
58vgdb_CFLAGS    = $(AM_CFLAGS_PRI)
59vgdb_CCASFLAGS = $(AM_CCASFLAGS_PRI)
60vgdb_LDFLAGS   = $(AM_CFLAGS_PRI)
61if !VGCONF_PLATVARIANT_IS_ANDROID
62vgdb_LDADD     = -lpthread
63endif
64if VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
65vgdb_LDFLAGS   += -Wl,-read_only_relocs -Wl,suppress
66endif
67
68#----------------------------------------------------------------------------
69# Darwin Mach stuff
70#----------------------------------------------------------------------------
71
72# Mach RPC interface definitions
73# Here are some more .defs files that are not used, but could be in the
74# future:
75#	clock.defs \
76#	clock_priv.defs \
77#	clock_reply.defs \
78#	exc.defs \
79#	host_priv.defs \
80#	host_security.defs \
81#	ledger.defs \
82#	lock_set.defs \
83#	mach_host.defs \
84#	mach_port.defs \
85#	notify.defs \
86#	processor.defs \
87#	processor_set.defs \
88#
89mach_user_srcs =
90mach_server_srcs =
91mach_hdrs =
92mach_defs =
93if VGCONF_OS_IS_DARWIN
94mach_user_srcs += \
95	m_mach/mach_vmUser.c \
96        m_mach/taskUser.c \
97        m_mach/thread_actUser.c \
98        m_mach/vm_mapUser.c
99mach_server_srcs += \
100	m_mach/mach_vmServer.c \
101        m_mach/taskServer.c \
102        m_mach/thread_actServer.c \
103        m_mach/vm_mapServer.c
104mach_hdrs += \
105	m_mach/mach_vm.h \
106        m_mach/task.h \
107        m_mach/thread_act.h \
108        m_mach/vm_map.h
109mach_defs += \
110	/usr/include/mach/mach_vm.defs \
111        /usr/include/mach/task.defs \
112        /usr/include/mach/thread_act.defs \
113        /usr/include/mach/vm_map.defs
114endif
115
116# Be careful w.r.t. parallel builds.  See section 27.9 of the automake info
117# page, "Handling Tools that Produce many Outputs".
118$(abs_builddir)/m_mach:
119	mkdir -p $@
120$(mach_user_srcs): $(mach_defs) $(abs_builddir)/m_mach
121	(cd m_mach && mig $(mach_defs))
122$(mach_hdrs): $(mach_defs) $(mach_user_srcs) $(abs_builddir)/m_mach
123	(cd m_mach && mig $(mach_defs))
124
125#----------------------------------------------------------------------------
126# Headers
127#----------------------------------------------------------------------------
128
129noinst_HEADERS = \
130	pub_core_aspacehl.h	\
131	pub_core_aspacemgr.h	\
132	pub_core_basics.h	\
133	pub_core_basics_asm.h	\
134	pub_core_clientstate.h	\
135	pub_core_clreq.h	\
136	pub_core_commandline.h	\
137	pub_core_coredump.h	\
138	pub_core_cpuid.h	\
139	pub_core_debuginfo.h	\
140	pub_core_debugger.h	\
141	pub_core_debuglog.h	\
142	pub_core_demangle.h	\
143	pub_core_dispatch.h	\
144	pub_core_dispatch_asm.h	\
145	pub_core_errormgr.h	\
146	pub_core_execontext.h	\
147	pub_core_gdbserver.h	\
148	pub_core_hashtable.h	\
149	pub_core_initimg.h	\
150	pub_core_libcbase.h	\
151	pub_core_libcassert.h	\
152	pub_core_libcfile.h	\
153	pub_core_libcprint.h	\
154	pub_core_libcproc.h	\
155	pub_core_libcsetjmp.h	\
156	pub_core_libcsignal.h	\
157	pub_core_mach.h		\
158	pub_core_machine.h	\
159	pub_core_mallocfree.h	\
160	pub_core_options.h	\
161	pub_core_oset.h		\
162	pub_core_redir.h	\
163	pub_core_replacemalloc.h\
164	pub_core_scheduler.h	\
165	pub_core_seqmatch.h	\
166	pub_core_sigframe.h	\
167	pub_core_signals.h	\
168	pub_core_sparsewa.h	\
169	pub_core_stacks.h	\
170	pub_core_stacktrace.h	\
171	pub_core_syscall.h	\
172	pub_core_syswrap.h	\
173	pub_core_threadstate.h	\
174	pub_core_tooliface.h	\
175	pub_core_trampoline.h	\
176	pub_core_translate.h	\
177	pub_core_transtab.h	\
178	pub_core_transtab_asm.h	\
179	pub_core_ume.h		\
180	pub_core_vki.h		\
181	pub_core_vkiscnums.h	\
182	pub_core_vkiscnums_asm.h\
183	pub_core_wordfm.h	\
184	pub_core_xarray.h	\
185	m_aspacemgr/priv_aspacemgr.h \
186	m_debuginfo/priv_misc.h	\
187	m_debuginfo/priv_storage.h	\
188	m_debuginfo/priv_tytypes.h      \
189	m_debuginfo/priv_readstabs.h	\
190	m_debuginfo/priv_readpdb.h	\
191	m_debuginfo/priv_d3basics.h	\
192	m_debuginfo/priv_readdwarf.h	\
193	m_debuginfo/priv_readdwarf3.h	\
194	m_debuginfo/priv_readelf.h	\
195	m_debuginfo/priv_readmacho.h	\
196	m_demangle/ansidecl.h	\
197	m_demangle/cp-demangle.h \
198	m_demangle/dyn-string.h	\
199	m_demangle/demangle.h	\
200	m_demangle/safe-ctype.h \
201	m_demangle/vg_libciface.h \
202	m_gdbserver/regcache.h \
203	m_gdbserver/regdef.h \
204	m_gdbserver/server.h \
205	m_gdbserver/target.h \
206	m_gdbserver/valgrind_low.h \
207	m_gdbserver/gdb/signals.h \
208	m_initimg/priv_initimg_pathscan.h \
209	m_initimg/simple_huffman.c \
210	m_scheduler/priv_sema.h \
211	m_syswrap/priv_types_n_macros.h \
212	m_syswrap/priv_syswrap-generic.h \
213	m_syswrap/priv_syswrap-linux.h \
214	m_syswrap/priv_syswrap-linux-variants.h \
215	m_syswrap/priv_syswrap-darwin.h \
216	m_syswrap/priv_syswrap-main.h \
217	m_ume/priv_ume.h
218
219#----------------------------------------------------------------------------
220# libcoregrind-<platform>.a
221#----------------------------------------------------------------------------
222
223BUILT_SOURCES = $(mach_user_srcs)
224CLEANFILES    = $(mach_user_srcs) $(mach_server_srcs) $(mach_hdrs)
225
226pkglib_LIBRARIES  = libcoregrind-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a
227if VGCONF_HAVE_PLATFORM_SEC
228pkglib_LIBRARIES += libcoregrind-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a
229endif
230
231COREGRIND_SOURCES_COMMON = \
232	m_commandline.c \
233	m_clientstate.c \
234	m_cpuid.S \
235	m_debugger.c \
236	m_debuglog.c \
237	m_errormgr.c \
238	m_execontext.c \
239	m_hashtable.c \
240	m_libcbase.c \
241	m_libcassert.c \
242	m_libcfile.c \
243	m_libcprint.c \
244	m_libcproc.c \
245	m_libcsetjmp.c \
246	m_libcsignal.c \
247	m_machine.c \
248	m_main.c \
249	m_mallocfree.c \
250	m_options.c \
251	m_oset.c \
252	m_redir.c \
253	m_seqmatch.c \
254	m_signals.c \
255	m_sparsewa.c \
256	m_stacks.c \
257	m_stacktrace.c \
258	m_syscall.c \
259	m_threadstate.c \
260	m_tooliface.c \
261	m_trampoline.S \
262	m_translate.c \
263	m_transtab.c \
264	m_vki.c \
265	m_vkiscnums.c \
266	m_wordfm.c \
267	m_xarray.c \
268	m_aspacehl.c \
269	m_aspacemgr/aspacemgr-common.c \
270	m_aspacemgr/aspacemgr-linux.c \
271	m_coredump/coredump-elf.c \
272	m_coredump/coredump-macho.c \
273	m_debuginfo/misc.c \
274	m_debuginfo/d3basics.c \
275	m_debuginfo/debuginfo.c \
276	m_debuginfo/readdwarf.c \
277	m_debuginfo/readdwarf3.c \
278	m_debuginfo/readelf.c \
279	m_debuginfo/readmacho.c \
280	m_debuginfo/readpdb.c \
281	m_debuginfo/readstabs.c \
282	m_debuginfo/storage.c \
283	m_debuginfo/tytypes.c \
284	m_demangle/cp-demangle.c \
285	m_demangle/cplus-dem.c \
286	m_demangle/demangle.c \
287	m_demangle/dyn-string.c \
288	m_demangle/safe-ctype.c \
289	m_dispatch/dispatch-x86-linux.S \
290	m_dispatch/dispatch-amd64-linux.S \
291	m_dispatch/dispatch-ppc32-linux.S \
292	m_dispatch/dispatch-ppc64-linux.S \
293	m_dispatch/dispatch-arm-linux.S \
294	m_dispatch/dispatch-s390x-linux.S \
295	m_dispatch/dispatch-x86-darwin.S \
296	m_dispatch/dispatch-amd64-darwin.S \
297	m_gdbserver/m_gdbserver.c \
298	m_gdbserver/inferiors.c \
299	m_gdbserver/m_gdbserver.c \
300	m_gdbserver/regcache.c \
301	m_gdbserver/remote-utils.c \
302	m_gdbserver/server.c \
303	m_gdbserver/signals.c \
304	m_gdbserver/target.c \
305	m_gdbserver/utils.c \
306	m_gdbserver/valgrind-low.c \
307	m_gdbserver/valgrind-low-x86.c \
308	m_gdbserver/valgrind-low-amd64.c \
309	m_gdbserver/valgrind-low-arm.c \
310	m_gdbserver/valgrind-low-ppc32.c \
311	m_gdbserver/valgrind-low-ppc64.c \
312	m_gdbserver/valgrind-low-s390x.c \
313	m_gdbserver/version.c \
314	m_initimg/initimg-linux.c \
315	m_initimg/initimg-darwin.c \
316	m_initimg/initimg-pathscan.c \
317	m_mach/mach_basics.c \
318	m_mach/mach_msg.c \
319	m_mach/mach_traps-x86-darwin.S \
320	m_mach/mach_traps-amd64-darwin.S \
321	m_replacemalloc/replacemalloc_core.c \
322	m_scheduler/scheduler.c \
323	m_scheduler/sema.c \
324	m_sigframe/sigframe-x86-linux.c \
325	m_sigframe/sigframe-amd64-linux.c \
326	m_sigframe/sigframe-ppc32-linux.c \
327	m_sigframe/sigframe-ppc64-linux.c \
328	m_sigframe/sigframe-arm-linux.c \
329	m_sigframe/sigframe-s390x-linux.c \
330	m_sigframe/sigframe-x86-darwin.c \
331	m_sigframe/sigframe-amd64-darwin.c \
332	m_syswrap/syscall-x86-linux.S \
333	m_syswrap/syscall-amd64-linux.S \
334	m_syswrap/syscall-ppc32-linux.S \
335	m_syswrap/syscall-ppc64-linux.S \
336	m_syswrap/syscall-arm-linux.S \
337	m_syswrap/syscall-s390x-linux.S \
338	m_syswrap/syscall-x86-darwin.S \
339	m_syswrap/syscall-amd64-darwin.S \
340	m_syswrap/syswrap-main.c \
341	m_syswrap/syswrap-generic.c \
342	m_syswrap/syswrap-linux.c \
343	m_syswrap/syswrap-linux-variants.c \
344	m_syswrap/syswrap-darwin.c \
345	m_syswrap/syswrap-x86-linux.c \
346	m_syswrap/syswrap-amd64-linux.c \
347	m_syswrap/syswrap-ppc32-linux.c \
348	m_syswrap/syswrap-ppc64-linux.c \
349	m_syswrap/syswrap-arm-linux.c \
350	m_syswrap/syswrap-s390x-linux.c \
351	m_syswrap/syswrap-x86-darwin.c \
352	m_syswrap/syswrap-amd64-darwin.c \
353	m_ume/elf.c \
354	m_ume/macho.c \
355	m_ume/main.c \
356	m_ume/script.c
357
358libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES = \
359    $(COREGRIND_SOURCES_COMMON)
360nodist_libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES = \
361    $(BUILT_SOURCES)
362libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CPPFLAGS = \
363    $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
364libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS = \
365    $(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
366libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CCASFLAGS = \
367    $(AM_CCASFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
368if VGCONF_HAVE_PLATFORM_SEC
369libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \
370    $(COREGRIND_SOURCES_COMMON)
371nodist_libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \
372    $(BUILT_SOURCES)
373libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CPPFLAGS = \
374    $(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
375libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS = \
376    $(AM_CFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
377libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CCASFLAGS = \
378    $(AM_CCASFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
379endif
380
381#----------------------------------------------------------------------------
382# libreplacemalloc_toolpreload-<platform>.a
383#----------------------------------------------------------------------------
384
385pkglib_LIBRARIES += libreplacemalloc_toolpreload-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a
386if VGCONF_HAVE_PLATFORM_SEC
387pkglib_LIBRARIES += libreplacemalloc_toolpreload-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a
388endif
389
390libreplacemalloc_toolpreload_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES = \
391	m_replacemalloc/vg_replace_malloc.c
392libreplacemalloc_toolpreload_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CPPFLAGS = \
393	$(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
394libreplacemalloc_toolpreload_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS = \
395	$(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) $(AM_CFLAGS_PIC)
396if VGCONF_HAVE_PLATFORM_SEC
397libreplacemalloc_toolpreload_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \
398	m_replacemalloc/vg_replace_malloc.c
399libreplacemalloc_toolpreload_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CPPFLAGS = \
400	$(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
401libreplacemalloc_toolpreload_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS = \
402	$(AM_CFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) $(AM_CFLAGS_PIC)
403endif
404
405#----------------------------------------------------------------------------
406# vgpreload_core-<platform>.a
407#----------------------------------------------------------------------------
408
409noinst_PROGRAMS  = vgpreload_core-@VGCONF_ARCH_PRI@-@VGCONF_OS@.so
410if VGCONF_HAVE_PLATFORM_SEC
411noinst_PROGRAMS += vgpreload_core-@VGCONF_ARCH_SEC@-@VGCONF_OS@.so
412endif
413
414if VGCONF_OS_IS_DARWIN
415noinst_DSYMS = $(noinst_PROGRAMS)
416endif
417
418vgpreload_core_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_SOURCES = vg_preloaded.c
419vgpreload_core_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_CPPFLAGS = \
420	$(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
421vgpreload_core_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_CFLAGS = \
422	$(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) $(AM_CFLAGS_PIC)
423vgpreload_core_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_LDFLAGS = \
424	$(PRELOAD_LDFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
425if VGCONF_HAVE_PLATFORM_SEC
426vgpreload_core_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_SOURCES = vg_preloaded.c
427vgpreload_core_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_CPPFLAGS = \
428	$(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
429vgpreload_core_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_CFLAGS = \
430	$(AM_CFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) $(AM_CFLAGS_PIC)
431vgpreload_core_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_LDFLAGS = \
432	$(PRELOAD_LDFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
433endif
434
435#----------------------------------------------------------------------------
436# gdbserver xml target descriptions
437#----------------------------------------------------------------------------
438
439GDBSERVER_XML_FILES = \
440	m_gdbserver/32bit-core-valgrind-s1.xml \
441	m_gdbserver/32bit-core-valgrind-s2.xml \
442	m_gdbserver/32bit-core.xml \
443	m_gdbserver/32bit-linux-valgrind-s1.xml \
444	m_gdbserver/32bit-linux-valgrind-s2.xml \
445	m_gdbserver/32bit-linux.xml \
446	m_gdbserver/32bit-sse-valgrind-s1.xml \
447	m_gdbserver/32bit-sse-valgrind-s2.xml \
448	m_gdbserver/32bit-sse.xml \
449	m_gdbserver/64bit-core-valgrind-s1.xml \
450	m_gdbserver/64bit-core-valgrind-s2.xml \
451	m_gdbserver/64bit-core.xml \
452	m_gdbserver/64bit-linux-valgrind-s1.xml \
453	m_gdbserver/64bit-linux-valgrind-s2.xml \
454	m_gdbserver/64bit-linux.xml \
455	m_gdbserver/64bit-sse-valgrind-s1.xml \
456	m_gdbserver/64bit-sse-valgrind-s2.xml \
457	m_gdbserver/64bit-sse.xml \
458	m_gdbserver/amd64-coresse-valgrind.xml \
459	m_gdbserver/amd64-linux-valgrind.xml \
460	m_gdbserver/arm-core-valgrind-s1.xml \
461	m_gdbserver/arm-core-valgrind-s2.xml \
462	m_gdbserver/arm-core.xml \
463	m_gdbserver/arm-vfpv3-valgrind-s1.xml \
464	m_gdbserver/arm-vfpv3-valgrind-s2.xml \
465	m_gdbserver/arm-vfpv3.xml \
466	m_gdbserver/arm-with-vfpv3-valgrind.xml \
467	m_gdbserver/arm-with-vfpv3.xml \
468	m_gdbserver/i386-coresse-valgrind.xml \
469	m_gdbserver/i386-linux-valgrind.xml \
470	m_gdbserver/power64-core-valgrind-s1.xml \
471	m_gdbserver/power64-core-valgrind-s2.xml \
472	m_gdbserver/power64-core.xml \
473	m_gdbserver/power64-linux-valgrind-s1.xml \
474	m_gdbserver/power64-linux-valgrind-s2.xml \
475	m_gdbserver/power64-linux.xml \
476	m_gdbserver/power-altivec-valgrind-s1.xml \
477	m_gdbserver/power-altivec-valgrind-s2.xml \
478	m_gdbserver/power-altivec.xml \
479	m_gdbserver/power-core.xml \
480	m_gdbserver/power-fpu-valgrind-s1.xml \
481	m_gdbserver/power-fpu-valgrind-s2.xml \
482	m_gdbserver/power-fpu.xml \
483	m_gdbserver/power-linux-valgrind-s1.xml \
484	m_gdbserver/power-linux-valgrind-s2.xml \
485	m_gdbserver/power-linux.xml \
486	m_gdbserver/powerpc-altivec32l-valgrind.xml \
487	m_gdbserver/powerpc-altivec32l.xml \
488	m_gdbserver/powerpc-altivec64l-valgrind.xml \
489	m_gdbserver/powerpc-altivec64l.xml
490
491# so as to make sure these get copied into the install tree
492pkglib_DATA  = $(GDBSERVER_XML_FILES)
493
494# so as to make sure these get copied into the tarball
495EXTRA_DIST  += $(GDBSERVER_XML_FILES)
496
497#----------------------------------------------------------------------------
498# General stuff
499#----------------------------------------------------------------------------
500
501all-local: inplace-noinst_PROGRAMS inplace-noinst_DSYMS
502	mkdir -p $(inplacedir); \
503	for f in $(pkglib_DATA); do \
504	  rm -f $(inplacedir)/$$f; \
505	  ln -f -s ../$(subdir)/$$f $(inplacedir); \
506	done
507
508clean-local: clean-noinst_DSYMS
509
510install-exec-local: install-noinst_PROGRAMS install-noinst_DSYMS
511
512#----------------------------------------------------------------------------
513# Darwin linker kludges
514#----------------------------------------------------------------------------
515
516if VGCONF_OS_IS_DARWIN
517
518BUILT_SOURCES += fixup_macho_loadcmds
519fixup_macho_loadcmds: fixup_macho_loadcmds.c
520	$(CC) -g -Wall -o fixup_macho_loadcmds fixup_macho_loadcmds.c
521
522CLEANFILES += fixup_macho_loadcmds
523
524endif
525
526EXTRA_DIST += fixup_macho_loadcmds.c
527