xref: /netbsd-src/external/gpl3/binutils.old/dist/gprof/Makefile.am (revision e992f068c547fd6e84b3f104dc2340adcc955732)
1## Process this file with automake to generate Makefile.in
2#
3#   Copyright (C) 2012-2022 Free Software Foundation, Inc.
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
20AUTOMAKE_OPTIONS = foreign no-dist no-texinfo.tex info-in-builddir
21ACLOCAL_AMFLAGS = -I .. -I ../config -I ../bfd
22TEXINFO_TEX = ../texinfo/texinfo.tex
23
24SUFFIXES = .c .m
25
26SUBDIRS = po
27
28BASEDIR = $(srcdir)/..
29BFDDIR = $(BASEDIR)/bfd
30INCDIR	= $(BASEDIR)/include
31
32WARN_CFLAGS = @WARN_CFLAGS@
33NO_WERROR = @NO_WERROR@
34AM_CFLAGS = $(WARN_CFLAGS)
35
36AM_CPPFLAGS = -DDEBUG -I../bfd -I$(srcdir)/../include \
37	-I$(srcdir)/../bfd @INCINTL@ @LARGEFILE_CPPFLAGS@ -I. \
38	-DLOCALEDIR="\"$(datadir)/locale\""
39
40bin_PROGRAMS = gprof
41
42## Convenience var listing pure sources.
43sources = basic_blocks.c call_graph.c cg_arcs.c cg_dfn.c \
44	cg_print.c corefile.c gmon_io.c gprof.c hertz.c hist.c source.c \
45	search_list.c symtab.c sym_ids.c utils.c \
46	i386.c alpha.c vax.c sparc.c mips.c aarch64.c
47gprof_SOURCES = $(sources) flat_bl.c bsd_callg_bl.c fsf_callg_bl.c
48gprof_DEPENDENCIES = ../bfd/libbfd.la ../libiberty/libiberty.a $(LIBINTL_DEP)
49gprof_LDADD = ../bfd/libbfd.la ../libiberty/libiberty.a $(LIBINTL)
50
51noinst_HEADERS = \
52	basic_blocks.h call_graph.h cg_arcs.h cg_dfn.h cg_print.h \
53	corefile.h gmon.h gmon_io.h gmon_out.h gprof.h hertz.h hist.h \
54	search_list.h source.h sym_ids.h symtab.h utils.h
55
56BUILT_SOURCES = flat_bl.c bsd_callg_bl.c fsf_callg_bl.c
57EXTRA_DIST    = $(BUILT_SOURCES) bbconv.pl $(man_MANS)
58
59diststuff: $(BUILT_SOURCES) info $(man_MANS)
60
61# development.sh is used to determine -Werror default.
62CONFIG_STATUS_DEPENDENCIES = $(BFDDIR)/development.sh
63
64# This empty rule is a hack against gmake patched by Apple.
65%.o:%.m
66
67.m.c:
68	$(AM_V_GEN)awk -f $(srcdir)/gen-c-prog.awk > $@ \
69	    FUNCTION=`(echo $*|sed -e 's,.*/,,g' -e 's/_bl//')`_blurb \
70	    FILE=$*.m $<
71
72POTFILES = $(sources) $(noinst_HEADERS)
73po/POTFILES.in: @MAINT@ Makefile
74	for f in $(POTFILES); do echo $$f; done | LC_ALL=C sort > tmp \
75	  && mv tmp $(srcdir)/po/POTFILES.in
76
77MANCONF  = -Dman
78
79TEXI2POD = perl $(srcdir)/../etc/texi2pod.pl $(AM_MAKEINFOFLAGS)
80
81POD2MAN = pod2man --center="GNU" --release="binutils-$(VERSION)" --section=1
82
83info_TEXINFOS = gprof.texi
84gprof_TEXINFOS = config.texi
85man_MANS = gprof.1
86
87AM_MAKEINFOFLAGS = -I "$(srcdir)" -I "$(top_srcdir)/../bfd/doc" -I ../bfd/doc \
88		   --no-split
89TEXI2DVI = texi2dvi -I "$(srcdir)" -I "$(top_srcdir)/../bfd/doc" -I ../bfd/doc
90
91config.texi:
92	$(AM_V_GEN)echo "@set top_srcdir $(top_srcdir)" >> ./config.texi
93
94# Build the man page from the texinfo file
95# The sed command removes the no-adjust Nroff command so that
96# the man output looks standard.
97gprof.1: $(srcdir)/gprof.texi config.texi
98	$(AM_V_GEN)touch $@
99	$(AM_V_at)-$(TEXI2POD) $(MANCONF) -Dgprof < $(srcdir)/gprof.texi > gprof.pod
100	$(AM_V_at)-($(POD2MAN) gprof.pod | \
101	       sed -e '/^.if n .na/d' > $@.T$$$$ && \
102	       mv -f $@.T$$$$ $@) || \
103	       (rm -f $@.T$$$$ && exit 1)
104	$(AM_V_at)rm -f gprof.pod
105
106html-local: doc/gprof/index.html
107doc/gprof/index.html: gprof.texi $(gprof_TEXINFOS)
108	$(AM_V_at)$(MKDIR_P) doc
109	$(AM_V_GEN)$(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) \
110	  --split=node -I$(srcdir) $(srcdir)/gprof.texi -o doc/gprof
111
112MAINTAINERCLEANFILES = gprof.info
113