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