]>
Commit | Line | Data |
---|---|---|
2f1a1aea FCE |
1 | # Makefile.am --- automake input file for systemtap |
2 | ## process this file with automake to produce Makefile.in | |
3 | ||
42b926b7 RM |
4 | AUTOMAKE_OPTIONS = dist-bzip2 |
5 | ||
e460639f RM |
6 | pkglibexecdir = ${libexecdir}/${PACKAGE} |
7 | ||
6bc51533 | 8 | AM_CPPFLAGS = -DBINDIR='"$(bindir)"' -DPKGDATADIR='"${pkgdatadir}"' -DPKGLIBDIR='"$(pkglibexecdir)"' |
f00a8372 | 9 | |
78f6bba6 FCE |
10 | AM_CFLAGS = -D_GNU_SOURCE -fexceptions -Wall -Wextra -Werror -Wshadow -Wunused -Wformat=2 -W |
11 | AM_CXXFLAGS = -Wall -Wextra -Werror | |
77de5e9e | 12 | |
be168105 | 13 | dist_man_MANS = stap.1 stapprobes.5 stapfuncs.5 stapex.5 staprun.8 lket.5 lket-b2a.1 man/stapprobes.iosched.5 man/stapprobes.netdev.5 man/stapprobes.nfs.5 man/stapprobes.nfsd.5 man/stapprobes.pagefault.5 man/stapprobes.process.5 man/stapprobes.rpc.5 man/stapprobes.scsi.5 man/stapprobes.signal.5 man/stapprobes.socket.5 man/stapprobes.tcp.5 man/stapprobes.udp.5 |
a63a95dc | 14 | bin_PROGRAMS = stap staprun |
56e12059 | 15 | stap_SOURCES = main.cxx \ |
f4b28491 | 16 | parse.cxx staptree.cxx elaborate.cxx translate.cxx \ |
1b78aef5 | 17 | tapsets.cxx buildrun.cxx loc2c.c hash.cxx mdfour.c \ |
c3a3c0c9 | 18 | cache.cxx util.cxx coveragedb.cxx |
42feb3c0 | 19 | stap_LDADD = @stap_LIBS@ @sqlite3_LIBS@ |
e9d58a72 | 20 | |
78f6bba6 | 21 | stap_CXXFLAGS = $(AM_CXXFLAGS) |
e460639f RM |
22 | stap_CPPFLAGS = $(AM_CPPFLAGS) |
23 | stap_LDFLAGS = $(AM_LDFLAGS) | |
24 | ||
25 | CLEANFILES = | |
26 | ||
27 | if BUILD_ELFUTILS | |
fa1d05cd RM |
28 | # This tells automake's "make distcheck" what we need to compile. |
29 | DISTCHECK_CONFIGURE_FLAGS = --with-elfutils=$(elfutils_abs_srcdir) | |
30 | ||
e460639f RM |
31 | stap_CPPFLAGS += -Iinclude-elfutils |
32 | stap_LDFLAGS += -Llib-elfutils -Wl,-rpath-link,lib-elfutils \ | |
33 | -Wl,--enable-new-dtags,-rpath,$(pkglibdir) | |
34 | BUILT_SOURCES = stamp-elfutils | |
35 | CLEANFILES += stamp-elfutils | |
36 | stamp-elfutils: config.status | |
37 | $(MAKE) $(AM_MAKEFLAGS) -C build-elfutils all | |
38 | for dir in libelf libebl libdw libdwfl backends; do \ | |
39 | $(MAKE) $(AM_MAKEFLAGS) -C build-elfutils/$$dir install; \ | |
40 | done | |
41 | touch $@ | |
42 | stap_DEPENDENCIES = lib-elfutils/libdw.so | |
43 | lib-elfutils/libdw.so: stamp-elfutils ; | |
44 | ||
45 | .PHONY: install-elfutils | |
46 | install-elfutils: | |
17a127da | 47 | mkdir -p $(DESTDIR)$(pkglibdir) |
a3e695ac | 48 | for file in lib-elfutils/*.so* lib-elfutils/${PACKAGE_NAME}/*.so*; do \ |
17a127da | 49 | $(INSTALL_PROGRAM) $$file $(DESTDIR)$(pkglibdir); \ |
a3e695ac | 50 | done |
e460639f RM |
51 | install-exec-local: install-elfutils |
52 | endif | |
d04cf5ff | 53 | |
98aab489 DS |
54 | staprun_SOURCES = runtime/staprun/staprun.c runtime/staprun/staprun_funcs.c\ |
55 | runtime/staprun/ctl.c runtime/staprun/common.c \ | |
56 | runtime/staprun/cap.c runtime/staprun/symbols.c | |
e65b03c1 | 57 | |
98aab489 | 58 | staprun_CPPFLAGS = $(AM_CPPFLAGS) -DSINGLE_THREADED |
e65b03c1 | 59 | staprun_CFLAGS = @PROCFLAGS@ $(AM_CFLAGS) |
10b20266 | 60 | staprun_LDADD = @PROCFLAGS@ @cap_LIBS@ |
2f1a1aea | 61 | |
98aab489 DS |
62 | stapio_SOURCES = runtime/staprun/stapio.c \ |
63 | runtime/staprun/mainloop.c runtime/staprun/common.c \ | |
64 | runtime/staprun/ctl.c \ | |
65 | runtime/staprun/relay.c runtime/staprun/relay_old.c | |
66 | ||
67 | stapio_CFLAGS = @PROCFLAGS@ $(AM_CFLAGS) | |
68 | stapio_LDADD = @PROCFLAGS@ -lpthread | |
69 | ||
70 | install-exec-hook: | |
7ab87feb FCE |
71 | if [ `id -u` -eq 0 ]; then chmod 04111 "$(DESTDIR)$(bindir)/staprun"; fi |
72 | ||
73 | # Why the "id -u" condition? This way, an unprivileged user can run | |
74 | # make install, and have "sudo stap ...." or "sudo staprun ...." work later. | |
75 | ||
98aab489 DS |
76 | |
77 | pkglibexec_PROGRAMS = stapio | |
78 | CLEANFILES += $(pkglibexec_PROGRAMS) | |
e460639f | 79 | |
5a5e5134 | 80 | noinst_PROGRAMS = loc2c-test |
51e874a1 | 81 | loc2c_test_SOURCES = loc2c-test.c loc2c.c |
e460639f RM |
82 | loc2c_test_CPPFLAGS = $(stap_CPPFLAGS) |
83 | loc2c_test_LDFLAGS = $(stap_LDFLAGS) | |
84 | loc2c_test_LDADD = $(stap_LDADD) | |
51e874a1 | 85 | |
35a04c8e FCE |
86 | # crash(8) extension |
87 | if BUILD_CRASHMOD | |
88 | STAPLOG=staplog.so | |
89 | ||
90 | $(STAPLOG): staplog.c | |
91 | $(CC) -shared -rdynamic $(LDFLAGS) $(CFLAGS) -fPIC -o $@ $< | |
92 | all-local: $(STAPLOG) | |
93 | install-exec-local: $(STAPLOG) | |
17a127da | 94 | $(INSTALL) $(STAPLOG) $(DESTDIR)$(pkglibdir) |
35a04c8e FCE |
95 | else |
96 | endif | |
97 | ||
2f1a1aea FCE |
98 | # Get extra libs as needed |
99 | LDADD = | |
100 | ||
6a39967c | 101 | EXTRA_DIST = buildrun.h elaborate.h loc2c.h session.h \ |
840e48ba | 102 | parse.h staptree.h tapsets.h translate.h \ |
9c94117b | 103 | cache.h hash.h mdfour.h util.h staplog.c coveragedb.h \ |
94cfa802 DS |
104 | examples testsuite systemtap.spec runtime tapset |
105 | ||
106 | SAMPLE_DEST_DIR = $(distdir)/examples/samples | |
107 | ||
2686f60a WC |
108 | SAMPLE_SRC = $(srcdir)/testsuite/systemtap.samples/iotask.stp \ |
109 | $(srcdir)/testsuite/systemtap.samples/kmalloc-stacks.stp \ | |
110 | $(srcdir)/testsuite/systemtap.samples/kmalloc-top \ | |
111 | $(srcdir)/testsuite/systemtap.samples/pfaults.stp \ | |
112 | $(srcdir)/testsuite/systemtap.samples/profile.stp \ | |
113 | $(srcdir)/testsuite/systemtap.samples/tcp_connections.stp \ | |
114 | $(srcdir)/testsuite/systemtap.samples/topsys.stp | |
94cfa802 DS |
115 | |
116 | # Copy some of the testsuite sample scripts to the distdir | |
117 | # 'examples/samples' directory. | |
118 | dist-add-samples: $(SAMPLE_SRC) | |
119 | rm -rf $(SAMPLE_DEST_DIR) | |
120 | mkdir -p $(SAMPLE_DEST_DIR) | |
121 | cp $(SAMPLE_SRC) $(SAMPLE_DEST_DIR) | |
122 | ||
123 | dist-hook: dist-add-samples | |
f00a8372 | 124 | find $(distdir) -name CVS -o -name '*~' -o -name '.#*' | xargs rm -rf |
a544b4ae | 125 | find $(distdir) -name '*.o' -o -name '*.ko' -o -name '*.cmd' -o -name '*.mod.c' -o -name '.??*' | xargs rm -rf |
2752649c | 126 | find $(distdir) -name 'stap' -o -name '*.log' -o -name '*.sum' -o -name 'site.exp' | xargs rm -rf |
0d49d7bc | 127 | |
ecfa3e8b | 128 | install-data-local: |
437040c3 | 129 | # mkdir -p $(DESTDIR)$(pkgdatadir)/runtime/transport $(DESTDIR)$(pkgdatadir)/tapset |
ef9e124a MH |
130 | (cd $(srcdir)/runtime; for f in *.[ch]; do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/$$f; done) |
131 | (cd $(srcdir)/runtime/transport; for f in *.[ch]; \ | |
132 | do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/transport/$$f; done) | |
4b2c4ab5 | 133 | (cd $(srcdir)/tapset; find . \( -name '*.stp' -o -name README \) -print \ |
ef9e124a | 134 | | while read f; do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/tapset/$$f; done) |
ecfa3e8b | 135 | |
e885b2ec WC |
136 | TEST_COV_DIR = coverage |
137 | ||
af56020f | 138 | gcov: |
e885b2ec | 139 | @-$(MAKE) clean CXXFLAGS="-g -fprofile-arcs -ftest-coverage" all check |
af56020f | 140 | @gcov *.gcno >/dev/null 2>&1 |
af56020f FCE |
141 | @rm -f `ls -1 *.gcov | fgrep -v .cxx.gcov` |
142 | ls -l *.cxx.gcov | |
143 | ||
e885b2ec WC |
144 | lcov: |
145 | @lcov --directory . -z | |
146 | @-$(MAKE) clean CXXFLAGS="-g -fprofile-arcs -ftest-coverage" all check | |
147 | @lcov --directory . -c -o stap.info | |
148 | @genhtml -o ./$(TEST_COV_DIR) stap.info | |
149 | ||
1e7ad3bf | 150 | clean-local: |
f00a8372 RM |
151 | rm -f *.gcov *.gcno *.gcda ${PACKAGE_TARNAME}-*.tar.gz |
152 | rm -rf ${PACKAGE_TARNAME}-${PACKAGE_VERSION} | |
e885b2ec WC |
153 | rm -rf $(TEST_COV_DIR) |
154 | rm -rf stap.info | |
35a04c8e | 155 | rm -rf staplog.so |
4d4f412b FCE |
156 | |
157 | uninstall-local: | |
158 | rm -rf $(DESTDIR)$(pkgdatadir) | |
159 | rm -rf $(DESTDIR)$(libexecdir)/$(PACKAGE) | |
35a04c8e | 160 | rm -rf $(DESTDIR)$(libdir)/$(PACKAGE) |
4d4f412b | 161 | -rm -rf $(DESTDIR)$(localstatedir)/cache/$(PACKAGE) |
35a04c8e | 162 | # XXX: leaves behind man pages |
8129fd92 | 163 | |
814bc89d | 164 | SUBDIRS = testsuite |
1fbcfde6 | 165 | if BUILD_LKET_B2A |
814bc89d | 166 | SUBDIRS += runtime/lket/b2a |
1fbcfde6 | 167 | endif |
5ba96b90 | 168 | |
5ba96b90 | 169 | check: |
17a127da RM |
170 | SRCDIR=`cd $(srcdir); pwd`; \ |
171 | $(MAKE) -C testsuite check SYSTEMTAP_RUNTIME=$$SRCDIR/runtime SYSTEMTAP_TAPSET=$$SRCDIR/tapset LD_LIBRARY_PATH=$(PWD)/lib-elfutils:$(PWD)/lib-elfutils/systemtap SYSTEMTAP_PATH=$(PWD) RUNTESTFLAGS="$(RUNTESTFLAGS)" | |
5ba96b90 FCE |
172 | |
173 | installcheck: | |
174 | $(MAKE) -C testsuite installcheck RUNTESTFLAGS="$(RUNTESTFLAGS)" |