]>
Commit | Line | Data |
---|---|---|
bb368aad VM |
1 | ## Process this file with automake to generate Makefile.in |
2 | # | |
76bdc726 | 3 | # Copyright (C) 2021-2023 Free Software Foundation, Inc. |
bb368aad VM |
4 | # |
5 | # This file is free software; you can redistribute it and/or modify | |
6 | # it under the terms of the GNU General Public License as published by | |
7 | # the Free Software Foundation; either version 3 of the License, or | |
8 | # (at your option) any later version. | |
9 | # | |
10 | # This program is distributed in the hope that it will be useful, | |
11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | # GNU General Public License for more details. | |
14 | # | |
15 | # You should have received a copy of the GNU General Public License | |
16 | # along with this program; see the file COPYING3. If not see | |
17 | # <http://www.gnu.org/licenses/>. | |
18 | ||
19 | AUTOMAKE_OPTIONS = foreign | |
20 | ACLOCAL_AMFLAGS = -I . -I .. -I ../.. | |
21 | ||
22 | CCSOURCES = \ | |
23 | Application.cc \ | |
24 | BaseMetric.cc \ | |
25 | BaseMetricTreeNode.cc \ | |
26 | CallStack.cc \ | |
27 | CatchOutOfMemory.cc \ | |
28 | ClassFile.cc \ | |
29 | Command.cc \ | |
30 | CompCom.cc \ | |
31 | DataObject.cc \ | |
32 | DataSpace.cc \ | |
33 | Data_window.cc \ | |
34 | DataStream.cc \ | |
35 | DbeApplication.cc \ | |
36 | DbeFile.cc \ | |
37 | DbeJarFile.cc \ | |
38 | DbeLock.cc \ | |
39 | DbeSession.cc \ | |
40 | DbeThread.cc \ | |
41 | DbeView.cc \ | |
42 | DerivedMetrics.cc \ | |
43 | Disasm.cc \ | |
44 | Dwarf.cc \ | |
45 | DwarfLib.cc \ | |
46 | Elf.cc \ | |
47 | Emsg.cc \ | |
48 | Experiment.cc \ | |
49 | Exp_Layout.cc \ | |
50 | ExpGroup.cc \ | |
51 | Expression.cc \ | |
52 | FileData.cc \ | |
53 | Filter.cc \ | |
54 | FilterSet.cc \ | |
55 | Function.cc \ | |
56 | HeapMap.cc \ | |
57 | HeapData.cc \ | |
58 | HeapActivity.cc \ | |
59 | Hist_data.cc \ | |
60 | IndexObject.cc \ | |
61 | IOActivity.cc \ | |
62 | LoadObject.cc \ | |
63 | MachineModel.cc \ | |
64 | MemObject.cc \ | |
65 | MemorySpace.cc \ | |
66 | Metric.cc \ | |
67 | MetricList.cc \ | |
68 | Module.cc \ | |
69 | Ovw_data.cc \ | |
70 | PRBTree.cc \ | |
71 | PathTree.cc \ | |
72 | PreviewExp.cc \ | |
73 | Print.cc \ | |
74 | SAXParserFactory.cc \ | |
75 | Sample.cc \ | |
76 | Settings.cc \ | |
77 | SourceFile.cc \ | |
78 | Stabs.cc \ | |
79 | Stats_data.cc \ | |
80 | StringBuilder.cc \ | |
81 | Table.cc \ | |
82 | QLParser.tab.cc \ | |
83 | dbe_collctrl.cc \ | |
84 | i18n.cc \ | |
85 | parse.cc \ | |
86 | UserLabel.cc \ | |
87 | util.cc \ | |
88 | Dbe.cc \ | |
89 | $(NULL) | |
90 | ||
91 | CSOURCES = \ | |
92 | dbe_hwcdrv.c \ | |
93 | dbe_hwcfuncs.c \ | |
94 | dbe_hwctable.c \ | |
95 | dbe_memmgr.c \ | |
96 | gethrtime.c \ | |
97 | $(NULL) | |
98 | ||
99 | LIBGPROFNG = libgprofng.la | |
100 | ||
c10622fe VM |
101 | # This is where we get zlib from. zlibdir is -L../zlib and zlibinc is |
102 | # -I../zlib, unless we were configured with --with-system-zlib, in which | |
103 | # case both are empty. | |
104 | ZLIB = @zlibdir@ -lz | |
105 | ZLIBINC = @zlibinc@ | |
106 | ||
6284f0aa VM |
107 | LOCALEDIR = @localedir@ |
108 | SYSCONFDIR = @sysconfdir@ | |
109 | ||
110 | AM_CPPFLAGS = $(GPROFNG_CPPFLAGS) -DLOCALEDIR=\"$(LOCALEDIR)\" \ | |
7b688004 | 111 | -DSYSCONFDIR=\"$(SYSCONFDIR)\" -DLIBDIR=\"$(libdir)\" \ |
6284f0aa | 112 | -I.. -I$(srcdir) \ |
bb368aad VM |
113 | -I$(srcdir)/../common \ |
114 | -I$(srcdir)/../../include -I$(srcdir)/../../opcodes \ | |
c10622fe | 115 | -I../../bfd -I$(srcdir)/../../bfd $(ZLIBINC) |
61a1f2e7 | 116 | AM_CFLAGS = $(GPROFNG_CFLAGS) $(PTHREAD_CFLAGS) \ |
61a1f2e7 | 117 | $(GPROFNG_NO_SWITCH_CFLAGS) |
bb368aad VM |
118 | AM_CXXFLAGS = $(AM_CFLAGS) |
119 | ||
50192212 VM |
120 | QLParser.tab.cc QLParser.tab.hh: QLParser.yy |
121 | $(BISON) $^ | |
122 | ||
50192212 VM |
123 | BUILT_SOURCES = QLParser.tab.hh |
124 | EXTRA_DIST = QLParser.yy $(man_MANS) | |
bb368aad VM |
125 | |
126 | ||
6c924cf2 | 127 | pkglib_LTLIBRARIES = $(LIBGPROFNG) |
bb368aad VM |
128 | libgprofng_la_SOURCES = $(CCSOURCES) $(CSOURCES) |
129 | libgprofng_la_LDFLAGS = -version-info 0:0:0 | |
b8283575 VM |
130 | |
131 | # Pass -lpthread instead of $(PTHREAD_LIBS) due to $(PTHREAD_LIBS) being empty | |
132 | # when -nostdlib is passed to libtool. | |
133 | # See bug 29364 - libgprofng.so: needs to link against -pthread | |
bb368aad VM |
134 | libgprofng_la_LIBADD = $(top_builddir)/../opcodes/libopcodes.la \ |
135 | $(top_builddir)/../bfd/libbfd.la \ | |
136 | $(GPROFNG_LIBADD) \ | |
b8283575 | 137 | -lpthread -ldl |
bb368aad | 138 | |
6284f0aa | 139 | dbedir = $(SYSCONFDIR) |
bb368aad VM |
140 | dbe_DATA = $(srcdir)/gprofng.rc |
141 | ||
142 | ||
143 | bin_PROGRAMS = gp-archive gp-collect-app gprofng gp-display-text gp-display-src | |
144 | ||
145 | gp_archive_SOURCES = gp-archive.cc ArchiveExp.cc | |
c10622fe | 146 | gp_archive_LDADD = $(LIBGPROFNG) $(CLOCK_GETTIME_LINK) $(ZLIB) |
bb368aad VM |
147 | |
148 | gp_collect_app_SOURCES = gp-collect-app.cc checks.cc envsets.cc count.cc | |
c10622fe | 149 | gp_collect_app_LDADD = $(LIBGPROFNG) $(CLOCK_GETTIME_LINK) $(ZLIB) |
bb368aad VM |
150 | |
151 | gprofng_SOURCES = gprofng.cc | |
c10622fe | 152 | gprofng_LDADD = $(LIBGPROFNG) $(CLOCK_GETTIME_LINK) $(ZLIB) |
bb368aad VM |
153 | |
154 | gp_display_src_SOURCES = gp-display-src.cc | |
c10622fe | 155 | gp_display_src_LDADD = $(LIBGPROFNG) $(CLOCK_GETTIME_LINK) $(ZLIB) |
bb368aad VM |
156 | |
157 | gp_display_text_SOURCES = gp-display-text.cc ipc.cc ipcio.cc | |
c10622fe | 158 | gp_display_text_LDADD = $(LIBGPROFNG) $(CLOCK_GETTIME_LINK) $(ZLIB) |
bb368aad VM |
159 | |
160 | ||
161 | if BUILD_MAN | |
162 | ||
9d92d2cc VM |
163 | man_MANS = gprofng.1 \ |
164 | gp-archive.1 \ | |
165 | gp-collect-app.1 \ | |
166 | gp-display-src.1 \ | |
167 | gp-display-text.1 | |
168 | ||
169 | MAINTAINERCLEANFILES = $(man_MANS) | |
170 | ||
bb368aad VM |
171 | # The man pages depend on the version number and on a help2man include file. |
172 | common_mandeps = $(top_srcdir)/../bfd/version.m4 | |
173 | ||
174 | # Use -o so that the `missing' program can infer the output file. | |
175 | # Embolden subcommand names in the output, and include a SEE ALSO. | |
176 | # Arrange to regenerate the output if we have help2man, but leave the | |
177 | # disted output there otherwise. | |
178 | # Some extra annoying complexity is in place so that people without | |
179 | # help2man dno't accidentally overwrite the manpage. | |
180 | ||
181 | INFO_PAGE = "gprofng" | |
182 | MANUAL = "User Commands" | |
183 | TEXT_GPROFNG = "the driver for the gprofng tool suite" | |
184 | TEXT_GP_ARCHIVE = "archive gprofng experiment data" | |
185 | TEXT_GP_COLLECT_APP = "collect performance data for the target application" | |
186 | TEXT_GP_DISPLAY_SRC = "display the source code, optionally interleaved with the disassembly of the target object" | |
187 | TEXT_GP_DISPLAY_TEXT = "display the performance data in plain text format" | |
188 | ||
189 | HELP2MAN_OPT = --libtool --no-info --info-page=$(INFO_PAGE) --manual=$(MANUAL) | |
190 | H2M_FILTER = | sed 's/\.TP/\.TP\n.B/' | sed 's/Commands:/\.SH COMMANDS/' \ | |
191 | | sed 's/See also:/\.SH SEE ALSO/' | sed 's/Documentation:/.SH DOCUMENTATION/' \ | |
192 | | sed 's/Limitations:/.SH LIMITATIONS/' | |
193 | ||
194 | gprofng.1: $(srcdir)/gprofng.cc $(common_mandeps) | ./gprofng$(EXEEXT) | |
195 | $(AM_V_GEN)_BUILDING_MANPAGE=1 $(HELP2MAN) $(HELP2MAN_OPT) \ | |
196 | --name=$(TEXT_GPROFNG) ./gprofng$(EXEEXT) $(H2M_FILTER) > $@ | |
197 | ||
198 | gp-archive.1: $(srcdir)/gp-archive.cc $(common_mandeps) | ./gp-archive$(EXEEXT) | |
199 | $(AM_V_GEN)_BUILDING_MANPAGE=1 $(HELP2MAN) $(HELP2MAN_OPT) \ | |
200 | --name=$(TEXT_GP_ARCHIVE) ./gp-archive$(EXEEXT) $(H2M_FILTER) > $@ | |
201 | ||
202 | gp-collect-app.1: $(srcdir)/gp-collect-app.cc $(common_mandeps) | ./gp-collect-app$(EXEEXT) | |
203 | $(AM_V_GEN)_BUILDING_MANPAGE=1 $(HELP2MAN) $(HELP2MAN_OPT) \ | |
204 | --name=$(TEXT_GP_COLLECT_APP) ./gp-collect-app$(EXEEXT) $(H2M_FILTER) > $@ | |
205 | ||
206 | gp-display-src.1: $(srcdir)/gp-display-src.cc $(srcdir)/Command.cc \ | |
207 | $(common_mandeps) | ./gp-display-src$(EXEEXT) | |
208 | $(AM_V_GEN)_BUILDING_MANPAGE=1 $(HELP2MAN) $(HELP2MAN_OPT) \ | |
209 | --name=$(TEXT_GP_DISPLAY_SRC) ./gp-display-src$(EXEEXT) $(H2M_FILTER) > $@ | |
210 | ||
211 | gp-display-text.1: $(srcdir)/gp-display-text.cc $(srcdir)/Command.cc \ | |
212 | $(common_mandeps) | ./gp-display-text$(EXEEXT) | |
213 | $(AM_V_GEN)_BUILDING_MANPAGE=1 $(HELP2MAN) $(HELP2MAN_OPT) \ | |
214 | --name=$(TEXT_GP_DISPLAY_TEXT) ./gp-display-text$(EXEEXT) $(H2M_FILTER) > $@ | |
215 | ||
216 | endif | |
217 | ||
218 | # Distribution involves building the binaries to generate the manpage, | |
219 | # so ensure that the necessary libraries are built at dist time. | |
220 | dist-hook: $(LIBGPROFNG) | |
221 | ||
6c924cf2 VM |
222 | .PHONY: install-data-local |
223 | ||
224 | install-data-local: install-pkglibLTLIBRARIES | |
225 | rm -f $(DESTDIR)/$(pkglibdir)/*.la $(DESTDIR)/$(pkglibdir)/*.a |