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