1# Automake input for strace. 2# 3# Copyright (c) 2002-2009 Roland McGrath <roland@redhat.com> 4# Copyright (c) 2006-2016 Dmitry V. Levin <ldv@altlinux.org> 5# Copyright (c) 2008-2015 Mike Frysinger <vapier@gentoo.org> 6# Copyright (c) 2015 Elvira Khabirova <lineprinter0@gmail.com> 7# Copyright (c) 2002-2017 The strace developers. 8# All rights reserved. 9# 10# Redistribution and use in source and binary forms, with or without 11# modification, are permitted provided that the following conditions 12# are met: 13# 1. Redistributions of source code must retain the above copyright 14# notice, this list of conditions and the following disclaimer. 15# 2. Redistributions in binary form must reproduce the above copyright 16# notice, this list of conditions and the following disclaimer in the 17# documentation and/or other materials provided with the distribution. 18# 3. The name of the author may not be used to endorse or promote products 19# derived from this software without specific prior written permission. 20# 21# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 22# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 23# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 24# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 25# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 26# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 30# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 32if HAVE_M32_RUNTIME 33TESTS_M32 = tests-m32 34endif 35if HAVE_MX32_RUNTIME 36TESTS_MX32 = tests-mx32 37endif 38SUBDIRS = tests $(TESTS_M32) $(TESTS_MX32) 39 40bin_PROGRAMS = strace 41man_MANS = strace.1 42bin_SCRIPTS = strace-graph strace-log-merge 43 44OS = linux 45# ARCH is `i386', `m68k', `sparc', etc. 46ARCH = @arch@ 47 48ACLOCAL_AMFLAGS = -I m4 49AM_CFLAGS = $(WARN_CFLAGS) 50AM_CPPFLAGS = -I$(builddir)/$(OS)/$(ARCH) \ 51 -I$(srcdir)/$(OS)/$(ARCH) \ 52 -I$(builddir)/$(OS) \ 53 -I$(srcdir)/$(OS) \ 54 -I$(builddir) \ 55 -I$(srcdir) 56 57AM_CFLAGS_FOR_BUILD = $(WARN_CFLAGS_FOR_BUILD) 58AM_CPPFLAGS_FOR_BUILD = $(AM_CPPFLAGS) 59 60include xlat/Makemodule.am 61 62strace_CPPFLAGS = $(AM_CPPFLAGS) 63strace_CFLAGS = $(AM_CFLAGS) 64strace_LDFLAGS = 65strace_LDADD = libstrace.a 66noinst_LIBRARIES = libstrace.a 67 68libstrace_a_CPPFLAGS = $(strace_CPPFLAGS) 69libstrace_a_CFLAGS = $(strace_CFLAGS) 70libstrace_a_SOURCES = \ 71 fstatfs.c \ 72 fstatfs64.c \ 73 ipc.c \ 74 sigreturn.c \ 75 socketcall.c \ 76 statfs.c \ 77 statfs64.c \ 78 sync_file_range.c \ 79 sync_file_range2.c \ 80 upeek.c \ 81 upoke.c \ 82 # end of libstrace_a_SOURCES 83 84strace_SOURCES = \ 85 access.c \ 86 affinity.c \ 87 aio.c \ 88 alpha.c \ 89 bjm.c \ 90 block.c \ 91 bpf.c \ 92 btrfs.c \ 93 cacheflush.c \ 94 capability.c \ 95 caps0.h \ 96 caps1.h \ 97 chdir.c \ 98 chmod.c \ 99 clone.c \ 100 copy_file_range.c \ 101 count.c \ 102 defs.h \ 103 desc.c \ 104 dirent.c \ 105 dirent64.c \ 106 dm.c \ 107 dyxlat.c \ 108 empty.h \ 109 epoll.c \ 110 evdev.c \ 111 eventfd.c \ 112 execve.c \ 113 fadvise.c \ 114 fallocate.c \ 115 fanotify.c \ 116 fchownat.c \ 117 fcntl.c \ 118 fetch_seccomp_fprog.c \ 119 fetch_struct_flock.c \ 120 fetch_struct_mmsghdr.c \ 121 fetch_struct_msghdr.c \ 122 fetch_struct_stat.c \ 123 fetch_struct_stat64.c \ 124 fetch_struct_statfs.c \ 125 file_handle.c \ 126 file_ioctl.c \ 127 fs_x_ioctl.c \ 128 flock.c \ 129 flock.h \ 130 futex.c \ 131 gcc_compat.h \ 132 get_robust_list.c \ 133 getcpu.c \ 134 getcwd.c \ 135 getrandom.c \ 136 hdio.c \ 137 hostname.c \ 138 inotify.c \ 139 io.c \ 140 ioctl.c \ 141 ioperm.c \ 142 iopl.c \ 143 ioprio.c \ 144 ipc_defs.h \ 145 ipc_msg.c \ 146 ipc_msgctl.c \ 147 ipc_sem.c \ 148 ipc_shm.c \ 149 ipc_shmctl.c \ 150 kcmp.c \ 151 kernel_types.h \ 152 kexec.c \ 153 keyctl.c \ 154 ldt.c \ 155 link.c \ 156 linux/asm_stat.h \ 157 linux/x32/asm_stat.h \ 158 linux/x86_64/asm_stat.h \ 159 lookup_dcookie.c \ 160 loop.c \ 161 lseek.c \ 162 macros.h \ 163 mem.c \ 164 membarrier.c \ 165 memfd_create.c \ 166 mknod.c \ 167 mmsghdr.c \ 168 mount.c \ 169 mpers_type.h \ 170 mq.c \ 171 msghdr.c \ 172 msghdr.h \ 173 mtd.c \ 174 native_defs.h \ 175 net.c \ 176 netlink.c \ 177 netlink.h \ 178 netlink_sock_diag.c \ 179 nlattr.c \ 180 nlattr.h \ 181 nsfs.c \ 182 nsfs.h \ 183 nsig.h \ 184 numa.c \ 185 oldstat.c \ 186 open.c \ 187 or1k_atomic.c \ 188 pathtrace.c \ 189 perf.c \ 190 perf_event_struct.h \ 191 personality.c \ 192 pkeys.c \ 193 poll.c \ 194 prctl.c \ 195 print_dev_t.c \ 196 print_fields.h \ 197 print_mq_attr.c \ 198 print_msgbuf.c \ 199 print_sg_req_info.c \ 200 print_sigevent.c \ 201 print_statfs.c \ 202 print_struct_stat.c \ 203 print_time.c \ 204 print_timespec.c \ 205 print_timeval.c \ 206 print_timex.c \ 207 printmode.c \ 208 printrusage.c \ 209 printsiginfo.c \ 210 printsiginfo.h \ 211 process.c \ 212 process_vm.c \ 213 ptp.c \ 214 ptrace.h \ 215 qualify.c \ 216 quota.c \ 217 readahead.c \ 218 readlink.c \ 219 reboot.c \ 220 regs.h \ 221 renameat.c \ 222 resource.c \ 223 rt_sigframe.c \ 224 rt_sigreturn.c \ 225 rtc.c \ 226 sched.c \ 227 sched_attr.h \ 228 scsi.c \ 229 seccomp.c \ 230 seccomp_fprog.h \ 231 sendfile.c \ 232 sg_io_v3.c \ 233 sg_io_v4.c \ 234 sigaltstack.c \ 235 sigevent.h \ 236 signal.c \ 237 signalfd.c \ 238 sock.c \ 239 sockaddr.c \ 240 socketutils.c \ 241 sram_alloc.c \ 242 stat.c \ 243 stat.h \ 244 stat64.c \ 245 statfs.c \ 246 statfs.h \ 247 statx.c \ 248 statx.h \ 249 strace.c \ 250 swapon.c \ 251 syscall.c \ 252 sysctl.c \ 253 sysent.h \ 254 sysinfo.c \ 255 syslog.c \ 256 sysmips.c \ 257 term.c \ 258 time.c \ 259 times.c \ 260 truncate.c \ 261 ubi.c \ 262 uid.c \ 263 uid16.c \ 264 umask.c \ 265 umount.c \ 266 uname.c \ 267 userfaultfd.c \ 268 ustat.c \ 269 util.c \ 270 utime.c \ 271 utimes.c \ 272 v4l2.c \ 273 wait.c \ 274 xattr.c \ 275 xlat.c \ 276 xlat.h \ 277 xmalloc.c \ 278 # end of strace_SOURCES 279 280if USE_LIBUNWIND 281strace_SOURCES += unwind.c 282strace_CPPFLAGS += $(libunwind_CPPFLAGS) 283strace_LDFLAGS += $(libunwind_LDFLAGS) 284strace_LDADD += $(libunwind_LIBS) 285endif 286 287@CODE_COVERAGE_RULES@ 288CODE_COVERAGE_BRANCH_COVERAGE = 1 289CODE_COVERAGE_GENHTML_OPTIONS = $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT) \ 290 --prefix $(shell cd $(abs_top_srcdir)/.. && pwd || echo .) 291CODE_COVERAGE_IGNORE_PATTERN = '/usr/include/*' 292strace_CPPFLAGS += $(CODE_COVERAGE_CPPFLAGS) 293strace_CFLAGS += $(CODE_COVERAGE_CFLAGS) 294strace_LDADD += $(CODE_COVERAGE_LDFLAGS) 295 296# Enable this to get link map generated 297#strace_LDFLAGS += -Wl,-Map=strace.mapfile 298 299EXTRA_DIST = \ 300 $(man_MANS) \ 301 .version \ 302 COPYING \ 303 CREDITS \ 304 ChangeLog \ 305 ChangeLog-CVS \ 306 README-linux-ptrace \ 307 debian/changelog \ 308 debian/compat \ 309 debian/control \ 310 debian/copyright \ 311 debian/rules \ 312 debian/source/format \ 313 debian/strace-udeb.install \ 314 debian/strace.docs \ 315 debian/strace.examples \ 316 debian/strace.install \ 317 debian/strace.manpages \ 318 debian/strace64.install \ 319 debian/strace64.manpages \ 320 debian/watch \ 321 generate_sen.sh \ 322 ioctl_iocdef.c \ 323 ioctlsort.c \ 324 linux/32/ioctls_inc.h \ 325 linux/32/ioctls_inc_align16.h \ 326 linux/32/ioctls_inc_align32.h \ 327 linux/32/ioctls_inc_align64.h \ 328 linux/32/syscallent.h \ 329 linux/64/ioctls_inc.h \ 330 linux/64/syscallent.h \ 331 linux/aarch64/arch_regs.c \ 332 linux/aarch64/arch_regs.h \ 333 linux/aarch64/arch_rt_sigframe.c\ 334 linux/aarch64/arch_sigreturn.c \ 335 linux/aarch64/errnoent1.h \ 336 linux/aarch64/get_error.c \ 337 linux/aarch64/get_scno.c \ 338 linux/aarch64/get_syscall_args.c\ 339 linux/aarch64/ioctls_arch0.h \ 340 linux/aarch64/ioctls_arch1.h \ 341 linux/aarch64/ioctls_inc0.h \ 342 linux/aarch64/ioctls_inc1.h \ 343 linux/aarch64/set_error.c \ 344 linux/aarch64/set_scno.c \ 345 linux/aarch64/signalent1.h \ 346 linux/aarch64/syscallent.h \ 347 linux/aarch64/syscallent1.h \ 348 linux/alpha/arch_getrval2.c \ 349 linux/alpha/arch_regs.c \ 350 linux/alpha/arch_regs.h \ 351 linux/alpha/arch_rt_sigframe.c \ 352 linux/alpha/arch_sigreturn.c \ 353 linux/alpha/errnoent.h \ 354 linux/alpha/get_error.c \ 355 linux/alpha/get_scno.c \ 356 linux/alpha/get_syscall_args.c \ 357 linux/alpha/get_syscall_result.c\ 358 linux/alpha/ioctls_arch0.h \ 359 linux/alpha/ioctls_inc0.h \ 360 linux/alpha/set_error.c \ 361 linux/alpha/set_scno.c \ 362 linux/alpha/signalent.h \ 363 linux/alpha/syscallent.h \ 364 linux/alpha/userent.h \ 365 linux/arc/arch_regs.c \ 366 linux/arc/arch_regs.h \ 367 linux/arc/arch_rt_sigframe.c \ 368 linux/arc/get_error.c \ 369 linux/arc/get_scno.c \ 370 linux/arc/get_syscall_args.c \ 371 linux/arc/ioctls_arch0.h \ 372 linux/arc/ioctls_inc0.h \ 373 linux/arc/set_error.c \ 374 linux/arc/set_scno.c \ 375 linux/arc/syscallent.h \ 376 linux/arch_regs.h \ 377 linux/arch_sigreturn.c \ 378 linux/arm/arch_regs.c \ 379 linux/arm/arch_regs.h \ 380 linux/arm/arch_rt_sigframe.c \ 381 linux/arm/arch_sigreturn.c \ 382 linux/arm/get_error.c \ 383 linux/arm/get_scno.c \ 384 linux/arm/get_syscall_args.c \ 385 linux/arm/ioctls_arch0.h \ 386 linux/arm/ioctls_inc0.h \ 387 linux/arm/set_error.c \ 388 linux/arm/set_scno.c \ 389 linux/arm/syscallent.h \ 390 linux/arm/userent.h \ 391 linux/avr32/arch_regs.c \ 392 linux/avr32/arch_regs.h \ 393 linux/avr32/arch_rt_sigframe.c \ 394 linux/avr32/get_error.c \ 395 linux/avr32/get_scno.c \ 396 linux/avr32/get_syscall_args.c \ 397 linux/avr32/ioctls_arch0.h \ 398 linux/avr32/ioctls_inc0.h \ 399 linux/avr32/set_error.c \ 400 linux/avr32/set_scno.c \ 401 linux/avr32/syscallent.h \ 402 linux/avr32/userent.h \ 403 linux/bfin/arch_regs.c \ 404 linux/bfin/arch_rt_sigframe.c \ 405 linux/bfin/get_error.c \ 406 linux/bfin/get_scno.c \ 407 linux/bfin/get_syscall_args.c \ 408 linux/bfin/get_syscall_result.c \ 409 linux/bfin/ioctls_arch0.h \ 410 linux/bfin/ioctls_inc0.h \ 411 linux/bfin/rt_sigframe.h \ 412 linux/bfin/set_error.c \ 413 linux/bfin/set_scno.c \ 414 linux/bfin/syscallent.h \ 415 linux/bfin/userent.h \ 416 linux/crisv10/arch_regs.c \ 417 linux/crisv10/arch_rt_sigframe.c\ 418 linux/crisv10/arch_sigreturn.c \ 419 linux/crisv10/get_error.c \ 420 linux/crisv10/get_scno.c \ 421 linux/crisv10/get_syscall_args.c \ 422 linux/crisv10/get_syscall_result.c \ 423 linux/crisv10/rt_sigframe.h \ 424 linux/crisv10/set_error.c \ 425 linux/crisv10/set_scno.c \ 426 linux/crisv10/syscallent.h \ 427 linux/crisv10/userent.h \ 428 linux/crisv32/arch_regs.c \ 429 linux/crisv32/arch_rt_sigframe.c\ 430 linux/crisv32/arch_sigreturn.c \ 431 linux/crisv32/get_error.c \ 432 linux/crisv32/get_scno.c \ 433 linux/crisv32/get_syscall_args.c \ 434 linux/crisv32/get_syscall_result.c \ 435 linux/crisv32/rt_sigframe.h \ 436 linux/crisv32/set_error.c \ 437 linux/crisv32/set_scno.c \ 438 linux/crisv32/syscallent.h \ 439 linux/crisv32/userent.h \ 440 linux/dummy.h \ 441 linux/errnoent.h \ 442 linux/getregs_old.h \ 443 linux/hppa/arch_regs.c \ 444 linux/hppa/arch_regs.h \ 445 linux/hppa/arch_rt_sigframe.c \ 446 linux/hppa/errnoent.h \ 447 linux/hppa/get_error.c \ 448 linux/hppa/get_scno.c \ 449 linux/hppa/get_syscall_args.c \ 450 linux/hppa/get_syscall_result.c \ 451 linux/hppa/ioctls_arch0.h \ 452 linux/hppa/ioctls_inc0.h \ 453 linux/hppa/rt_sigframe.h \ 454 linux/hppa/set_error.c \ 455 linux/hppa/set_scno.c \ 456 linux/hppa/signalent.h \ 457 linux/hppa/syscallent.h \ 458 linux/i386/arch_regs.c \ 459 linux/i386/arch_regs.h \ 460 linux/i386/arch_rt_sigframe.c \ 461 linux/i386/arch_sigreturn.c \ 462 linux/i386/get_error.c \ 463 linux/i386/get_scno.c \ 464 linux/i386/get_syscall_args.c \ 465 linux/i386/ioctls_arch0.h \ 466 linux/i386/ioctls_inc0.h \ 467 linux/i386/rt_sigframe.h \ 468 linux/i386/set_error.c \ 469 linux/i386/set_scno.c \ 470 linux/i386/syscallent.h \ 471 linux/i386/userent.h \ 472 linux/i386/userent0.h \ 473 linux/ia64/arch_getrval2.c \ 474 linux/ia64/arch_regs.c \ 475 linux/ia64/arch_regs.h \ 476 linux/ia64/arch_rt_sigframe.c \ 477 linux/ia64/get_error.c \ 478 linux/ia64/get_scno.c \ 479 linux/ia64/get_syscall_args.c \ 480 linux/ia64/ioctls_arch0.h \ 481 linux/ia64/ioctls_inc0.h \ 482 linux/ia64/rt_sigframe.h \ 483 linux/ia64/set_error.c \ 484 linux/ia64/set_scno.c \ 485 linux/ia64/syscallent.h \ 486 linux/ia64/userent.h \ 487 linux/inet_diag.h \ 488 linux/m68k/arch_regs.c \ 489 linux/m68k/arch_regs.h \ 490 linux/m68k/arch_rt_sigframe.c \ 491 linux/m68k/arch_sigreturn.c \ 492 linux/m68k/get_error.c \ 493 linux/m68k/get_scno.c \ 494 linux/m68k/get_syscall_args.c \ 495 linux/m68k/ioctls_arch0.h \ 496 linux/m68k/ioctls_inc0.h \ 497 linux/m68k/rt_sigframe.h \ 498 linux/m68k/set_error.c \ 499 linux/m68k/set_scno.c \ 500 linux/m68k/syscallent.h \ 501 linux/m68k/userent.h \ 502 linux/metag/arch_regs.c \ 503 linux/metag/arch_regs.h \ 504 linux/metag/arch_rt_sigframe.c \ 505 linux/metag/get_error.c \ 506 linux/metag/get_scno.c \ 507 linux/metag/get_syscall_args.c \ 508 linux/metag/ioctls_arch0.h \ 509 linux/metag/ioctls_inc0.h \ 510 linux/metag/set_error.c \ 511 linux/metag/set_scno.c \ 512 linux/metag/syscallent.h \ 513 linux/microblaze/arch_regs.c \ 514 linux/microblaze/arch_rt_sigframe.c\ 515 linux/microblaze/arch_sigreturn.c \ 516 linux/microblaze/get_error.c \ 517 linux/microblaze/get_scno.c \ 518 linux/microblaze/get_syscall_args.c \ 519 linux/microblaze/get_syscall_result.c \ 520 linux/microblaze/ioctls_arch0.h \ 521 linux/microblaze/ioctls_inc0.h \ 522 linux/microblaze/set_error.c \ 523 linux/microblaze/set_scno.c \ 524 linux/microblaze/syscallent.h \ 525 linux/microblaze/userent.h \ 526 linux/mips/arch_getrval2.c \ 527 linux/mips/arch_regs.c \ 528 linux/mips/arch_regs.h \ 529 linux/mips/arch_rt_sigframe.c \ 530 linux/mips/arch_sigreturn.c \ 531 linux/mips/errnoent.h \ 532 linux/mips/genstub.sh \ 533 linux/mips/get_error.c \ 534 linux/mips/get_scno.c \ 535 linux/mips/get_syscall_args.c \ 536 linux/mips/ioctls_arch0.h \ 537 linux/mips/ioctls_inc0.h \ 538 linux/mips/rt_sigframe.h \ 539 linux/mips/set_error.c \ 540 linux/mips/set_scno.c \ 541 linux/mips/signalent.h \ 542 linux/mips/syscallent-compat.h \ 543 linux/mips/syscallent-n32.h \ 544 linux/mips/syscallent-n64.h \ 545 linux/mips/syscallent-o32.h \ 546 linux/mips/syscallent.h \ 547 linux/mips/userent.h \ 548 linux/mtd-abi.h \ 549 linux/netlink_diag.h \ 550 linux/nios2/arch_regs.c \ 551 linux/nios2/arch_regs.h \ 552 linux/nios2/arch_rt_sigframe.c \ 553 linux/nios2/get_error.c \ 554 linux/nios2/get_scno.c \ 555 linux/nios2/get_syscall_args.c \ 556 linux/nios2/ioctls_arch0.h \ 557 linux/nios2/ioctls_inc0.h \ 558 linux/nios2/set_error.c \ 559 linux/nios2/set_scno.c \ 560 linux/nios2/syscallent.h \ 561 linux/or1k/arch_regs.c \ 562 linux/or1k/arch_regs.h \ 563 linux/or1k/arch_rt_sigframe.c \ 564 linux/or1k/get_error.c \ 565 linux/or1k/get_scno.c \ 566 linux/or1k/get_syscall_args.c \ 567 linux/or1k/ioctls_arch0.h \ 568 linux/or1k/ioctls_inc0.h \ 569 linux/or1k/set_error.c \ 570 linux/or1k/set_scno.c \ 571 linux/or1k/syscallent.h \ 572 linux/or1k/userent.h \ 573 linux/packet_diag.h \ 574 linux/personality.h \ 575 linux/powerpc/arch_regs.c \ 576 linux/powerpc/arch_regs.h \ 577 linux/powerpc/arch_rt_sigframe.c\ 578 linux/powerpc/arch_sigreturn.c \ 579 linux/powerpc/errnoent.h \ 580 linux/powerpc/get_error.c \ 581 linux/powerpc/get_scno.c \ 582 linux/powerpc/get_syscall_args.c \ 583 linux/powerpc/getregs_old.c \ 584 linux/powerpc/getregs_old.h \ 585 linux/powerpc/ioctls_arch0.h \ 586 linux/powerpc/ioctls_inc0.h \ 587 linux/powerpc/set_error.c \ 588 linux/powerpc/set_scno.c \ 589 linux/powerpc/syscallent.h \ 590 linux/powerpc/userent.h \ 591 linux/powerpc64/arch_regs.c \ 592 linux/powerpc64/arch_regs.h \ 593 linux/powerpc64/arch_rt_sigframe.c\ 594 linux/powerpc64/arch_sigreturn.c \ 595 linux/powerpc64/errnoent.h \ 596 linux/powerpc64/errnoent1.h \ 597 linux/powerpc64/get_error.c \ 598 linux/powerpc64/get_scno.c \ 599 linux/powerpc64/get_syscall_args.c \ 600 linux/powerpc64/getregs_old.c \ 601 linux/powerpc64/getregs_old.h \ 602 linux/powerpc64/ioctls_arch0.h \ 603 linux/powerpc64/ioctls_arch1.h \ 604 linux/powerpc64/ioctls_inc0.h \ 605 linux/powerpc64/ioctls_inc1.h \ 606 linux/powerpc64/rt_sigframe.h \ 607 linux/powerpc64/set_error.c \ 608 linux/powerpc64/set_scno.c \ 609 linux/powerpc64/signalent1.h \ 610 linux/powerpc64/syscallent.h \ 611 linux/powerpc64/syscallent1.h \ 612 linux/powerpc64/userent.h \ 613 linux/ptp_clock.h \ 614 linux/riscv/arch_regs.c \ 615 linux/riscv/arch_regs.h \ 616 linux/riscv/arch_rt_sigframe.c \ 617 linux/riscv/errnoent1.h \ 618 linux/riscv/get_error.c \ 619 linux/riscv/get_scno.c \ 620 linux/riscv/get_syscall_args.c \ 621 linux/riscv/ioctls_arch0.h \ 622 linux/riscv/ioctls_arch1.h \ 623 linux/riscv/ioctls_inc0.h \ 624 linux/riscv/ioctls_inc1.h \ 625 linux/riscv/set_error.c \ 626 linux/riscv/set_scno.c \ 627 linux/riscv/signalent1.h \ 628 linux/riscv/syscallent.h \ 629 linux/riscv/syscallent1.h \ 630 linux/rt_sigframe.h \ 631 linux/s390/arch_regs.c \ 632 linux/s390/arch_regs.h \ 633 linux/s390/arch_rt_sigframe.c \ 634 linux/s390/arch_sigreturn.c \ 635 linux/s390/get_error.c \ 636 linux/s390/get_scno.c \ 637 linux/s390/get_syscall_args.c \ 638 linux/s390/ioctls_arch0.h \ 639 linux/s390/ioctls_inc0.h \ 640 linux/s390/rt_sigframe.h \ 641 linux/s390/set_error.c \ 642 linux/s390/set_scno.c \ 643 linux/s390/syscallent.h \ 644 linux/s390/userent.h \ 645 linux/s390/userent0.h \ 646 linux/s390/userent1.h \ 647 linux/s390x/arch_regs.c \ 648 linux/s390x/arch_regs.h \ 649 linux/s390x/arch_rt_sigframe.c \ 650 linux/s390x/arch_sigreturn.c \ 651 linux/s390x/get_error.c \ 652 linux/s390x/get_scno.c \ 653 linux/s390x/get_syscall_args.c \ 654 linux/s390x/ioctls_arch0.h \ 655 linux/s390x/ioctls_inc0.h \ 656 linux/s390x/rt_sigframe.h \ 657 linux/s390x/set_error.c \ 658 linux/s390x/set_scno.c \ 659 linux/s390x/syscallent.h \ 660 linux/s390x/userent.h \ 661 linux/sh/arch_getrval2.c \ 662 linux/sh/arch_regs.c \ 663 linux/sh/arch_rt_sigframe.c \ 664 linux/sh/get_error.c \ 665 linux/sh/get_scno.c \ 666 linux/sh/get_syscall_args.c \ 667 linux/sh/get_syscall_result.c \ 668 linux/sh/ioctls_arch0.h \ 669 linux/sh/ioctls_inc0.h \ 670 linux/sh/set_error.c \ 671 linux/sh/set_scno.c \ 672 linux/sh/syscallent.h \ 673 linux/sh/userent.h \ 674 linux/sh/userent0.h \ 675 linux/sh64/arch_regs.c \ 676 linux/sh64/arch_regs.h \ 677 linux/sh64/arch_rt_sigframe.c \ 678 linux/sh64/get_error.c \ 679 linux/sh64/get_scno.c \ 680 linux/sh64/get_syscall_args.c \ 681 linux/sh64/get_syscall_result.c \ 682 linux/sh64/ioctls_arch0.h \ 683 linux/sh64/ioctls_inc0.h \ 684 linux/sh64/rt_sigframe.h \ 685 linux/sh64/set_error.c \ 686 linux/sh64/set_scno.c \ 687 linux/sh64/syscallent.h \ 688 linux/sh64/userent.h \ 689 linux/signalent.h \ 690 linux/smc_diag.h \ 691 linux/sock_diag.h \ 692 linux/sparc/arch_getrval2.c \ 693 linux/sparc/arch_regs.c \ 694 linux/sparc/arch_regs.h \ 695 linux/sparc/arch_rt_sigframe.c \ 696 linux/sparc/arch_sigreturn.c \ 697 linux/sparc/errnoent.h \ 698 linux/sparc/gen.pl \ 699 linux/sparc/get_error.c \ 700 linux/sparc/get_scno.c \ 701 linux/sparc/get_syscall_args.c \ 702 linux/sparc/ioctls_arch0.h \ 703 linux/sparc/ioctls_inc0.h \ 704 linux/sparc/rt_sigframe.h \ 705 linux/sparc/set_error.c \ 706 linux/sparc/set_scno.c \ 707 linux/sparc/signalent.h \ 708 linux/sparc/syscallent.h \ 709 linux/sparc/userent.h \ 710 linux/sparc64/arch_getrval2.c \ 711 linux/sparc64/arch_regs.c \ 712 linux/sparc64/arch_regs.h \ 713 linux/sparc64/arch_rt_sigframe.c\ 714 linux/sparc64/arch_sigreturn.c \ 715 linux/sparc64/errnoent.h \ 716 linux/sparc64/errnoent1.h \ 717 linux/sparc64/get_error.c \ 718 linux/sparc64/get_scno.c \ 719 linux/sparc64/get_syscall_args.c\ 720 linux/sparc64/ioctls_arch0.h \ 721 linux/sparc64/ioctls_arch1.h \ 722 linux/sparc64/ioctls_inc0.h \ 723 linux/sparc64/ioctls_inc1.h \ 724 linux/sparc64/rt_sigframe.h \ 725 linux/sparc64/set_error.c \ 726 linux/sparc64/set_scno.c \ 727 linux/sparc64/signalent.h \ 728 linux/sparc64/signalent1.h \ 729 linux/sparc64/syscallent.h \ 730 linux/sparc64/syscallent1.h \ 731 linux/sparc64/userent.h \ 732 linux/subcall.h \ 733 linux/syscall.h \ 734 linux/tile/arch_regs.c \ 735 linux/tile/arch_regs.h \ 736 linux/tile/arch_rt_sigframe.c \ 737 linux/tile/arch_sigreturn.c \ 738 linux/tile/errnoent1.h \ 739 linux/tile/get_error.c \ 740 linux/tile/get_scno.c \ 741 linux/tile/get_syscall_args.c \ 742 linux/tile/ioctls_arch0.h \ 743 linux/tile/ioctls_arch1.h \ 744 linux/tile/ioctls_inc0.h \ 745 linux/tile/ioctls_inc1.h \ 746 linux/tile/rt_sigframe.h \ 747 linux/tile/set_error.c \ 748 linux/tile/set_scno.c \ 749 linux/tile/signalent1.h \ 750 linux/tile/syscallent.h \ 751 linux/tile/syscallent1.h \ 752 linux/tile/userent.h \ 753 linux/ubi-user.h \ 754 linux/unix_diag.h \ 755 linux/userent.h \ 756 linux/userent0.h \ 757 linux/x32/arch_regs.c \ 758 linux/x32/arch_regs.h \ 759 linux/x32/arch_rt_sigframe.c \ 760 linux/x32/arch_sigreturn.c \ 761 linux/x32/errnoent1.h \ 762 linux/x32/get_error.c \ 763 linux/x32/get_scno.c \ 764 linux/x32/get_syscall_args.c \ 765 linux/x32/ioctls_arch0.h \ 766 linux/x32/ioctls_arch1.h \ 767 linux/x32/ioctls_inc0.h \ 768 linux/x32/ioctls_inc1.h \ 769 linux/x32/rt_sigframe.h \ 770 linux/x32/set_error.c \ 771 linux/x32/set_scno.c \ 772 linux/x32/signalent1.h \ 773 linux/x32/syscallent.h \ 774 linux/x32/syscallent1.h \ 775 linux/x32/userent.h \ 776 linux/x86_64/arch_regs.c \ 777 linux/x86_64/arch_regs.h \ 778 linux/x86_64/arch_rt_sigframe.c \ 779 linux/x86_64/arch_sigreturn.c \ 780 linux/x86_64/errnoent1.h \ 781 linux/x86_64/errnoent2.h \ 782 linux/x86_64/gentab.pl \ 783 linux/x86_64/get_error.c \ 784 linux/x86_64/get_scno.c \ 785 linux/x86_64/get_syscall_args.c \ 786 linux/x86_64/getregs_old.c \ 787 linux/x86_64/getregs_old.h \ 788 linux/x86_64/ioctls_arch0.h \ 789 linux/x86_64/ioctls_arch1.h \ 790 linux/x86_64/ioctls_arch2.h \ 791 linux/x86_64/ioctls_inc0.h \ 792 linux/x86_64/ioctls_inc1.h \ 793 linux/x86_64/ioctls_inc2.h \ 794 linux/x86_64/rt_sigframe.h \ 795 linux/x86_64/set_error.c \ 796 linux/x86_64/set_scno.c \ 797 linux/x86_64/signalent1.h \ 798 linux/x86_64/signalent2.h \ 799 linux/x86_64/syscallent.h \ 800 linux/x86_64/syscallent1.h \ 801 linux/x86_64/syscallent2.h \ 802 linux/x86_64/userent.h \ 803 linux/xtensa/arch_regs.c \ 804 linux/xtensa/arch_rt_sigframe.c \ 805 linux/xtensa/get_error.c \ 806 linux/xtensa/get_scno.c \ 807 linux/xtensa/get_syscall_args.c \ 808 linux/xtensa/get_syscall_result.c \ 809 linux/xtensa/ioctls_arch0.h \ 810 linux/xtensa/ioctls_inc0.h \ 811 linux/xtensa/set_error.c \ 812 linux/xtensa/set_scno.c \ 813 linux/xtensa/syscallent.h \ 814 linux/xtensa/userent.h \ 815 mpers.awk \ 816 mpers.sh \ 817 mpers_test.sh \ 818 mpers_xlat.h \ 819 scno.head \ 820 strace-graph \ 821 strace-log-merge \ 822 strace.spec \ 823 $(XLAT_INPUT_FILES) \ 824 $(XLAT_HEADER_FILES) \ 825 xlat/gen.sh \ 826 xlate.el 827 828.PHONY: check-valgrind-local 829check-valgrind-local: 830 831.PHONY: srpm 832srpm: dist-xz 833 rpmbuild --define '%_srcrpmdir .' -ts $(distdir).tar.xz 834 835$(srcdir)/.version: 836 $(AM_V_GEN)echo $(VERSION) > $@-t && mv $@-t $@ 837 838strace_SOURCES_c = \ 839 $(filter %.c,$(strace_SOURCES)) $(filter %.c,$(libstrace_a_SOURCES)) 840 841sys_func.h: $(patsubst %,$(srcdir)/%,$(strace_SOURCES_c)) 842 for f in $^; do \ 843 sed -n 's/^SYS_FUNC(.*/extern &;/p' $$f; \ 844 done | sort -u > $@ 845 846syscallent_names = subcall.h syscallent.h syscallent1.h \ 847 syscallent-n32.h syscallent-n64.h syscallent-o32.h 848syscallent_patterns = $(patsubst %,\%/%,$(syscallent_names)) 849syscallent_files = $(filter $(syscallent_patterns),$(EXTRA_DIST)) 850 851sen.h: $(patsubst %,$(srcdir)/%,$(syscallent_files)) 852 for f in $^; do cat -- $$f; done | \ 853 $(srcdir)/generate_sen.sh > $@ 854 855dist-hook: 856 $(AM_V_GEN)echo $(VERSION) > $(distdir)/.tarball-version 857 ${AM_V_GEN}echo $(COPYRIGHT_YEAR) > $(distdir)/.year 858 859today = $(shell date +%Y-%m-%d) 860version_regexp = $(subst .,\.,$(VERSION)) 861news_check_regexp = 'Noteworthy changes in release $(version_regexp) ($(today))' 862 863news-check: NEWS 864 $(AM_V_GEN)if head -1 $< | \ 865 grep -x $(news_check_regexp) >/dev/null; then \ 866 :; \ 867 else \ 868 echo >&2 '$<: check failed'; \ 869 exit 1; \ 870 fi 871 872ioctlsort_CC = $(CC_FOR_BUILD) 873ioctlsort_DEFS = $(DEFS) 874ioctlsort_INCLUDES = $(DEFAULT_INCLUDES) $(INCLUDES) 875ioctlsort_CPPFLAGS = $(AM_CPPFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) 876ioctlsort_CFLAGS = $(AM_CFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) 877ioctlsort_LDFLAGS = $(AM_LDFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) 878 879ioctls_inc_h = $(wildcard $(srcdir)/$(OS)/$(ARCH)/ioctls_inc*.h) 880ioctlent_h = $(patsubst $(srcdir)/$(OS)/$(ARCH)/ioctls_inc%,ioctlent%,$(ioctls_inc_h)) 881ioctl_redefs_h = $(filter-out ioctl_redefs0.h,$(subst ioctlent,ioctl_redefs,$(ioctlent_h))) 882 883ioctl_redefs%.h: ioctlent%.h ioctlent0.h 884 sort $< > $<-t 885 sort ioctlent0.h | comm -23 $<-t - | \ 886 sed -r -n 's/^\{ "([^"]+)", (0x[[:xdigit:]]+) \},$$/#ifdef \1\n# undef \1\n# define \1 \2\n#endif/p' \ 887 > $@-t 888 rm -f $<-t 889 mv $@-t $@ 890 891ioctlent%.h: ioctlsort% 892 ./$< > $@ 893 894# Need to pick up <linux/ioctl.h> definitions *for host* while compiling 895# ioctlsort *for build*, hence this magic. 896ioctl_iocdef.i: $(srcdir)/ioctl_iocdef.c 897 $(CPP) -P $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ 898 $(strace_CPPFLAGS) $(CPPFLAGS) $< -o $@ 899 900ioctl_iocdef.h: ioctl_iocdef.i 901 sed -n 's/^DEFINE HOST/#define /p' $< > $@ 902 903ioctlsort%$(BUILD_EXEEXT): ioctlsort%.o 904 $(ioctlsort_CC) $(ioctlsort_CFLAGS) $(ioctlsort_LDFLAGS) $< -o $@ 905 906ioctlsort%.o: ioctls_all%.h ioctl_iocdef.h $(srcdir)/ioctlsort.c 907 $(ioctlsort_CC) $(ioctlsort_DEFS) $(ioctlsort_INCLUDES) $(ioctlsort_CPPFLAGS) $(ioctlsort_CFLAGS) -DIOCTLSORT_INC=\"$<\" -c -o $@ $(srcdir)/ioctlsort.c 908 909ioctls_all%.h: $(srcdir)/$(OS)/$(ARCH)/ioctls_inc%.h $(srcdir)/$(OS)/$(ARCH)/ioctls_arch%.h 910 cat $^ > $@ 911 912BUILT_SOURCES = $(ioctl_redefs_h) $(ioctlent_h) \ 913 native_printer_decls.h native_printer_defs.h printers.h sen.h sys_func.h .version 914CLEANFILES = $(ioctl_redefs_h) $(ioctlent_h) $(mpers_preproc_files) \ 915 ioctl_iocdef.h ioctl_iocdef.i \ 916 native_printer_decls.h native_printer_defs.h printers.h sen.h sys_func.h 917DISTCLEANFILES = gnu/stubs-32.h gnu/stubs-x32.h 918 919include scno.am 920 921$(strace_OBJECTS): scno.h 922 923# defines mpers_source_files 924include mpers.am 925srcdir_mpers_source_files = $(patsubst %,$(srcdir)/%,$(mpers_source_files)) 926mpers_preproc_files = $(mpers_source_files:.c=.c.mpers.i) 927 928mpers_NAME = 929mpers_PREFIX = $(mpers_NAME)_ 930mpers_DEFS = $(DEFS) 931mpers_INCLUDES = $(DEFAULT_INCLUDES) $(INCLUDES) 932mpers_CPPFLAGS = $(strace_CPPFLAGS) $(CPPFLAGS) 933mpers_sh_opts = $(mpers_DEFS) $(mpers_INCLUDES) $(mpers_CPPFLAGS) 934libmpers_CPPFLAGS = $(strace_CPPFLAGS) -DIN_MPERS 935libmpers_CFLAGS = $(strace_CFLAGS) 936 937# mpers targets 938 939mpers-m%.stamp: $(srcdir_mpers_source_files) | printers.h 940 for f in $^; do \ 941 CC="$(CC)" CFLAGS="$(mpers_sh_opts) -DMPERS_IS_$(mpers_NAME)" \ 942 CPP="$(CPP)" CPPFLAGS="$(mpers_sh_opts) -DIN_MPERS -DMPERS_IS_$(mpers_NAME)" \ 943 $(srcdir)/mpers.sh -$(mpers_NAME) $$f || exit; \ 944 done 945 > $@ 946 947m%_type_defs.h: $(srcdir_mpers_source_files) 948 for f in $^; do \ 949 sed -r -n 's/^#[[:space:]]*include DEF_MPERS_TYPE\(([^)]+)\)/#ifdef MPERS_$(mpers_PREFIX)\1\n# define \1 MPERS_$(mpers_PREFIX)\1\n#endif/p' $$f || exit; \ 950 done > $@-t 951 echo '#undef MPERS_PRINTER_NAME' >> $@-t 952 echo '#define MPERS_PRINTER_NAME(printer_name) printer_name' >> $@-t 953 echo '#include "$(mpers_PREFIX)printer_decls.h"' >> $@-t 954 echo '#include MPERS_$(mpers_PREFIX)IOCTL_MACROS' >> $@-t 955 mv $@-t $@ 956 957m%_funcs.h: $(srcdir_mpers_source_files) 958 for f in $^; do \ 959 sed -r -n 's/^SYS_FUNC\(([^)]+)\)/#undef sys_\1\n#define sys_\1 $(mpers_PREFIX)sys_\1/p' $$f || exit; \ 960 done > $@-t && \ 961 echo '#include "sys_func.h"' >> $@-t 962 mv $@-t $@ 963 964# printers 965 966%.c.mpers.i: $(srcdir)/%.c 967 $(CPP) -P $(mpers_sh_opts) -DIN_MPERS_BOOTSTRAP $< -o $@ 968 969mpers_printer_decl_pattern = ^MPERS_PRINTER_DECL\(([^,)]+),[[:space:]]*([^,)]+),[[:space:]]*([^)]+)\)$$ 970 971printers.h: $(mpers_preproc_files) 972 echo '/* Generated by Makefile from $^; do not edit. */' > $@-t 973 echo 'typedef struct {' >> $@-t 974 for f in $^; do \ 975 sed -r -n 's/$(mpers_printer_decl_pattern)/ \1 (*\2)(\3);\n#define \2 MPERS_PRINTER_NAME(\2)\n/p' $$f \ 976 || exit; \ 977 done >> $@-t 978 echo '} struct_printers;' >> $@-t 979 echo 'extern const struct_printers *printers;' >> $@-t 980 echo '#define MPERS_PRINTER_NAME(printer_name) printers->printer_name' >> $@-t 981 mv $@-t $@ 982 983%_printer_decls.h: $(mpers_preproc_files) 984 echo '/* Generated by Makefile from $^; do not edit. */' > $@-t 985 for f in $^; do \ 986 sed -r -n 's/$(mpers_printer_decl_pattern)/extern \1 $(mpers_PREFIX)\2(\3);/p' $$f \ 987 || exit; \ 988 done >> $@-t 989 mv $@-t $@ 990 991%_printer_defs.h: $(mpers_preproc_files) 992 echo '/* Generated by Makefile from $^; do not edit. */' > $@-t 993 for f in $^; do \ 994 sed -r -n 's/$(mpers_printer_decl_pattern)/.\2 = $(mpers_PREFIX)\2,/p' $$f \ 995 || exit; \ 996 done >> $@-t 997 mv $@-t $@ 998 999native_printer_decls.h native_printer_defs.h: mpers_PREFIX = 1000 1001if HAVE_M32_MPERS 1002 1003strace_LDADD += libmpers-m32.a 1004noinst_LIBRARIES += libmpers-m32.a 1005libmpers_m32_a_SOURCES = $(mpers_source_files) 1006libmpers_m32_a_CPPFLAGS = $(libmpers_CPPFLAGS) -DMPERS_IS_m32 -I$(builddir)/mpers-m32 1007libmpers_m32_a_CFLAGS = $(libmpers_CFLAGS) 1008mpers_m32_targets = mpers-m32.stamp m32_type_defs.h m32_funcs.h m32_printer_decls.h m32_printer_defs.h 1009 1010BUILT_SOURCES += $(mpers_m32_targets) 1011CLEANFILES += $(mpers_m32_targets) 1012 1013$(mpers_m32_targets): mpers_NAME = m32 1014 1015endif # HAVE_M32_MPERS 1016 1017if HAVE_MX32_MPERS 1018 1019strace_LDADD += libmpers-mx32.a 1020noinst_LIBRARIES += libmpers-mx32.a 1021libmpers_mx32_a_SOURCES = $(mpers_source_files) 1022libmpers_mx32_a_CPPFLAGS = $(libmpers_CPPFLAGS) -DMPERS_IS_mx32 -I$(builddir)/mpers-mx32 1023libmpers_mx32_a_CFLAGS = $(libmpers_CFLAGS) 1024mpers_mx32_targets = mpers-mx32.stamp mx32_type_defs.h mx32_funcs.h mx32_printer_decls.h mx32_printer_defs.h 1025 1026BUILT_SOURCES += $(mpers_mx32_targets) 1027CLEANFILES += $(mpers_mx32_targets) 1028 1029$(mpers_mx32_targets): mpers_NAME = mx32 1030 1031endif # HAVE_MX32_MPERS 1032 1033clean-local: 1034 -rm -rf mpers-m32 mpers-mx32 1035 1036if MAINTAINER_MODE 1037 1038gen_changelog_start_date = 2009-07-08 20:00 1039$(srcdir)/ChangeLog: $(srcdir)/gitlog-to-changelog $(srcdir)/Makefile.in \ 1040 $(srcdir)/.version 1041 @rm -f $@.new 1042 (cd $(srcdir); \ 1043 ./gitlog-to-changelog --append-dot \ 1044 --since='$(gen_changelog_start_date)'; \ 1045 echo; echo; echo 'See ChangeLog-CVS for older changes.' \ 1046 ) > $@.new 1047 chmod 444 $@.new 1048 mv -f $@.new $@ 1049 1050$(srcdir)/CREDITS: $(srcdir)/CREDITS.in $(srcdir)/.mailmap \ 1051 $(srcdir)/Makefile.in $(srcdir)/.version 1052 $(AM_V_GEN) \ 1053 ( \ 1054 cd $(srcdir); \ 1055 sed '/^##/,$$d' CREDITS.in; \ 1056 { sed -n '1,/^##>/d; s/ */\t/; s/^./&/p' CREDITS.in; \ 1057 git log --pretty=format:'%aN %aE'; \ 1058 } | LC_ALL=C sort -u \ 1059 | awk -F'\t' '{printf("\t%s <%s>\n",$$1,$$2)}'; \ 1060 ) > $@-t && mv $@-t $@ 1061 1062export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner --mode=go-w,go+rX 1063 1064endif 1065