1# Makefile for gperf/src
2
3# Copyright (C) 1989, 1992, 1993, 1998 Free Software Foundation, Inc.
4# written by Douglas C. Schmidt (schmidt@ics.uci.edu)
5#
6# This file is part of GNU GPERF.
7#
8# GNU GPERF is free software; you can redistribute it and/or modify
9# it under the terms of the GNU General Public License as published by
10# the Free Software Foundation; either version 1, or (at your option)
11# any later version.
12#
13# GNU GPERF is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with GNU GPERF; see the file COPYING. If not, write to the Free
20# Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111, USA.
21
22#### Start of system configuration section. ####
23
24# Directories used by "make":
25srcdir = @srcdir@
26
27# Directories used by "make install":
28prefix = @prefix@
29local_prefix = /usr/local
30exec_prefix = @exec_prefix@
31bindir = @bindir@
32
33# Programs used by "make":
34# C compiler
35CC = @CC@
36CFLAGS = @CFLAGS@
37CPP = @CPP@
38# C++ compiler
39CXX = @CXX@
40CXXFLAGS = @CXXFLAGS@
41CXXCPP = @CXXCPP@
42# Other
43MV = mv
44LN = ln
45RM = rm -f
46@SET_MAKE@
47
48# Programs used by "make install":
49INSTALL = @INSTALL@
50INSTALL_PROGRAM = @INSTALL_PROGRAM@
51INSTALL_DATA = @INSTALL_DATA@
52
53#### End of system configuration section. ####
54
55SHELL = /bin/sh
56
57VPATH = $(srcdir)
58
59OBJECTS = new.o options.o iterator.o main.o gen-perf.o key-list.o list-node.o \
60 hash-table.o bool-array.o read-line.o trace.o vectors.o version.o
61LIBS = ../lib/libgp.a -lm
62CPPFLAGS = -I. -I$(srcdir)/../lib
63
64TARGETPROG = gperf
65
66all : $(TARGETPROG)
67
68$(TARGETPROG): $(OBJECTS)
69 $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(OBJECTS) $(LIBS)
70
71# Don't use implicit rules, since AIX "make" and OSF/1 "make" don't always
72# expand $< correctly in this context.
73#
74#%.o : %.c
75# $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
76#
77#%.o : %.cc
78# $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $<
79
80# Dependencies.
81CONFIG_H = config.h
82VERSION_H = version.h
83VECTORS_H = vectors.h
84TRACE_H = trace.h
85READ_LINE_H = read-line.h read-line.icc $(TRACE_H)
86OPTIONS_H = options.h options.icc $(TRACE_H)
87LIST_NODE_H = list-node.h $(VECTORS_H)
88KEY_LIST_H = key-list.h $(LIST_NODE_H) $(VECTORS_H) $(READ_LINE_H)
89ITERATOR_H = iterator.h
90HASH_TABLE_H = hash-table.h $(LIST_NODE_H)
91BOOL_ARRAY_H = bool-array.h bool-array.icc $(TRACE_H) $(OPTIONS_H)
92GEN_PERF_H = gen-perf.h $(KEY_LIST_H) $(BOOL_ARRAY_H)
93
94bool-array.o : bool-array.cc $(BOOL_ARRAY_H) $(OPTIONS_H) $(TRACE_H)
95 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/bool-array.cc
96gen-perf.o : gen-perf.cc $(GEN_PERF_H) $(OPTIONS_H) $(TRACE_H)
97 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/gen-perf.cc
98hash-table.o : hash-table.cc $(HASH_TABLE_H) $(OPTIONS_H) $(TRACE_H)
99 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/hash-table.cc
100iterator.o : iterator.cc $(ITERATOR_H) $(TRACE_H)
101 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/iterator.cc
102key-list.o : key-list.cc $(KEY_LIST_H) $(OPTIONS_H) $(READ_LINE_H) $(HASH_TABLE_H) $(TRACE_H) $(VERSION_H)
103 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/key-list.cc
104list-node.o : list-node.cc $(LIST_NODE_H) $(OPTIONS_H) $(TRACE_H)
105 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/list-node.cc
106main.o : main.cc $(OPTIONS_H) $(GEN_PERF_H) $(TRACE_H) $(CONFIG_H)
107 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/main.cc
108new.o : new.cc $(TRACE_H) $(CONFIG_H)
109 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/new.cc
110options.o : options.cc $(OPTIONS_H) $(ITERATOR_H) $(TRACE_H) $(VECTORS_H) $(VERSION_H)
111 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/options.cc
112read-line.o : read-line.cc $(READ_LINE_H) $(OPTIONS_H) $(TRACE_H)
113 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/read-line.cc
114trace.o : trace.cc $(TRACE_H)
115 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/trace.cc
116vectors.o : vectors.cc $(VECTORS_H)
117 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/vectors.cc
118version.o : version.cc $(VERSION_H)
119 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/version.cc
120
121install : all force
122 if [ ! -d $(bindir) ] ; then mkdir $(bindir) ; fi
123 $(INSTALL_PROGRAM) $(TARGETPROG) $(bindir)/$(TARGETPROG)
124
125installdirs : force
126 if [ ! -d $(bindir) ] ; then mkdir $(bindir) ; fi
127
128uninstall : force
129 $(RM) $(bindir)/$(TARGETPROG)
130
131check : all
132
133mostlyclean : clean
134
135clean : force
136 $(RM) *~ *.s *.o *.a $(TARGETPROG) core
137
138distclean : clean
139 $(RM) config.status config.log config.cache Makefile config.h
140
141maintainer-clean : distclean
142
143force :
2
3# Copyright (C) 1989, 1992, 1993, 1998 Free Software Foundation, Inc.
4# written by Douglas C. Schmidt (schmidt@ics.uci.edu)
5#
6# This file is part of GNU GPERF.
7#
8# GNU GPERF is free software; you can redistribute it and/or modify
9# it under the terms of the GNU General Public License as published by
10# the Free Software Foundation; either version 1, or (at your option)
11# any later version.
12#
13# GNU GPERF is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with GNU GPERF; see the file COPYING. If not, write to the Free
20# Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111, USA.
21
22#### Start of system configuration section. ####
23
24# Directories used by "make":
25srcdir = @srcdir@
26
27# Directories used by "make install":
28prefix = @prefix@
29local_prefix = /usr/local
30exec_prefix = @exec_prefix@
31bindir = @bindir@
32
33# Programs used by "make":
34# C compiler
35CC = @CC@
36CFLAGS = @CFLAGS@
37CPP = @CPP@
38# C++ compiler
39CXX = @CXX@
40CXXFLAGS = @CXXFLAGS@
41CXXCPP = @CXXCPP@
42# Other
43MV = mv
44LN = ln
45RM = rm -f
46@SET_MAKE@
47
48# Programs used by "make install":
49INSTALL = @INSTALL@
50INSTALL_PROGRAM = @INSTALL_PROGRAM@
51INSTALL_DATA = @INSTALL_DATA@
52
53#### End of system configuration section. ####
54
55SHELL = /bin/sh
56
57VPATH = $(srcdir)
58
59OBJECTS = new.o options.o iterator.o main.o gen-perf.o key-list.o list-node.o \
60 hash-table.o bool-array.o read-line.o trace.o vectors.o version.o
61LIBS = ../lib/libgp.a -lm
62CPPFLAGS = -I. -I$(srcdir)/../lib
63
64TARGETPROG = gperf
65
66all : $(TARGETPROG)
67
68$(TARGETPROG): $(OBJECTS)
69 $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(OBJECTS) $(LIBS)
70
71# Don't use implicit rules, since AIX "make" and OSF/1 "make" don't always
72# expand $< correctly in this context.
73#
74#%.o : %.c
75# $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
76#
77#%.o : %.cc
78# $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $<
79
80# Dependencies.
81CONFIG_H = config.h
82VERSION_H = version.h
83VECTORS_H = vectors.h
84TRACE_H = trace.h
85READ_LINE_H = read-line.h read-line.icc $(TRACE_H)
86OPTIONS_H = options.h options.icc $(TRACE_H)
87LIST_NODE_H = list-node.h $(VECTORS_H)
88KEY_LIST_H = key-list.h $(LIST_NODE_H) $(VECTORS_H) $(READ_LINE_H)
89ITERATOR_H = iterator.h
90HASH_TABLE_H = hash-table.h $(LIST_NODE_H)
91BOOL_ARRAY_H = bool-array.h bool-array.icc $(TRACE_H) $(OPTIONS_H)
92GEN_PERF_H = gen-perf.h $(KEY_LIST_H) $(BOOL_ARRAY_H)
93
94bool-array.o : bool-array.cc $(BOOL_ARRAY_H) $(OPTIONS_H) $(TRACE_H)
95 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/bool-array.cc
96gen-perf.o : gen-perf.cc $(GEN_PERF_H) $(OPTIONS_H) $(TRACE_H)
97 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/gen-perf.cc
98hash-table.o : hash-table.cc $(HASH_TABLE_H) $(OPTIONS_H) $(TRACE_H)
99 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/hash-table.cc
100iterator.o : iterator.cc $(ITERATOR_H) $(TRACE_H)
101 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/iterator.cc
102key-list.o : key-list.cc $(KEY_LIST_H) $(OPTIONS_H) $(READ_LINE_H) $(HASH_TABLE_H) $(TRACE_H) $(VERSION_H)
103 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/key-list.cc
104list-node.o : list-node.cc $(LIST_NODE_H) $(OPTIONS_H) $(TRACE_H)
105 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/list-node.cc
106main.o : main.cc $(OPTIONS_H) $(GEN_PERF_H) $(TRACE_H) $(CONFIG_H)
107 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/main.cc
108new.o : new.cc $(TRACE_H) $(CONFIG_H)
109 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/new.cc
110options.o : options.cc $(OPTIONS_H) $(ITERATOR_H) $(TRACE_H) $(VECTORS_H) $(VERSION_H)
111 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/options.cc
112read-line.o : read-line.cc $(READ_LINE_H) $(OPTIONS_H) $(TRACE_H)
113 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/read-line.cc
114trace.o : trace.cc $(TRACE_H)
115 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/trace.cc
116vectors.o : vectors.cc $(VECTORS_H)
117 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/vectors.cc
118version.o : version.cc $(VERSION_H)
119 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(srcdir)/version.cc
120
121install : all force
122 if [ ! -d $(bindir) ] ; then mkdir $(bindir) ; fi
123 $(INSTALL_PROGRAM) $(TARGETPROG) $(bindir)/$(TARGETPROG)
124
125installdirs : force
126 if [ ! -d $(bindir) ] ; then mkdir $(bindir) ; fi
127
128uninstall : force
129 $(RM) $(bindir)/$(TARGETPROG)
130
131check : all
132
133mostlyclean : clean
134
135clean : force
136 $(RM) *~ *.s *.o *.a $(TARGETPROG) core
137
138distclean : clean
139 $(RM) config.status config.log config.cache Makefile config.h
140
141maintainer-clean : distclean
142
143force :