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