1 |
266 |
jeremybenn |
# Makefile for fixincludes.
|
2 |
|
|
#
|
3 |
|
|
# Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2009
|
4 |
|
|
# Free Software Foundation, Inc.
|
5 |
|
|
|
6 |
|
|
#This file is part of fixincludes.
|
7 |
|
|
|
8 |
|
|
#fixincludes 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 3, or (at your option)
|
11 |
|
|
#any later version.
|
12 |
|
|
|
13 |
|
|
#fixincludes 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 fixincludes; see the file COPYING3. If not see
|
20 |
|
|
#.
|
21 |
|
|
|
22 |
|
|
SHELL=@SHELL@
|
23 |
|
|
|
24 |
|
|
# Some versions of `touch' (such as the version on Solaris 2.8)
|
25 |
|
|
# do not correctly set the timestamp due to buggy versions of `utime'
|
26 |
|
|
# in the kernel. So, we use `echo' instead.
|
27 |
|
|
STAMP = echo timestamp >
|
28 |
|
|
|
29 |
|
|
CC = @CC@
|
30 |
|
|
CFLAGS = @CFLAGS@
|
31 |
|
|
WARN_CFLAGS = @WARN_CFLAGS@ @WARN_PEDANTIC@ @WERROR@
|
32 |
|
|
LDFLAGS = @LDFLAGS@
|
33 |
|
|
INCLUDES = -I. -I$(srcdir) -I../include -I$(srcdir)/../include
|
34 |
|
|
FIXINC_CFLAGS = -DHAVE_CONFIG_H $(INCLUDES)
|
35 |
|
|
|
36 |
|
|
# Directory where sources are, from where we are.
|
37 |
|
|
srcdir = @srcdir@
|
38 |
|
|
VPATH = $(srcdir)
|
39 |
|
|
|
40 |
|
|
# Directory in which to put the directories used by the compiler.
|
41 |
|
|
libdir = @libdir@
|
42 |
|
|
# Directory in which GCC puts its executables.
|
43 |
|
|
libexecdir = @libexecdir@
|
44 |
|
|
|
45 |
|
|
# End of variables for you to override.
|
46 |
|
|
|
47 |
|
|
# The target that we're configured for.
|
48 |
|
|
target = @target@
|
49 |
|
|
target_noncanonical:=@target_noncanonical@
|
50 |
|
|
|
51 |
|
|
# The version of GCC in this tree
|
52 |
|
|
gcc_version := $(shell cat $(srcdir)/../gcc/BASE-VER)
|
53 |
|
|
|
54 |
|
|
# Directory in which the compiler finds libraries etc.
|
55 |
|
|
libsubdir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)
|
56 |
|
|
# Directory in which the compiler finds executables
|
57 |
|
|
libexecsubdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version)
|
58 |
|
|
# Where our executable files go
|
59 |
|
|
itoolsdir = $(libexecsubdir)/install-tools
|
60 |
|
|
# Where our data files go
|
61 |
|
|
itoolsdatadir = $(libsubdir)/install-tools
|
62 |
|
|
|
63 |
|
|
# Locate mkinstalldirs.
|
64 |
|
|
mkinstalldirs=$(SHELL) $(srcdir)/../mkinstalldirs
|
65 |
|
|
|
66 |
|
|
AUTOCONF = autoconf
|
67 |
|
|
AUTOHEADER = autoheader
|
68 |
|
|
ACLOCAL = aclocal
|
69 |
|
|
ACLOCAL_AMFLAGS = -I ../gcc -I .. -I ../config
|
70 |
|
|
|
71 |
|
|
default : all
|
72 |
|
|
|
73 |
|
|
# Now figure out from those variables how to compile and link.
|
74 |
|
|
|
75 |
|
|
.c.o:
|
76 |
|
|
$(CC) -c $(CFLAGS) $(WARN_CFLAGS) $(CPPFLAGS) $(FIXINC_CFLAGS) $<
|
77 |
|
|
|
78 |
|
|
# The only suffixes we want for implicit rules are .c and .o.
|
79 |
|
|
.SUFFIXES:
|
80 |
|
|
.SUFFIXES: .c .o
|
81 |
|
|
|
82 |
|
|
#
|
83 |
|
|
|
84 |
|
|
## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
85 |
|
|
##
|
86 |
|
|
## Makefile for constructing the "best" include fixer we can
|
87 |
|
|
##
|
88 |
|
|
## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
89 |
|
|
|
90 |
|
|
LIBIBERTY=../libiberty/libiberty.a
|
91 |
|
|
|
92 |
|
|
ALLOBJ = fixincl.o fixtests.o fixfixes.o server.o procopen.o \
|
93 |
|
|
fixlib.o fixopts.o
|
94 |
|
|
|
95 |
|
|
TESTOBJ = fixincl.o fixlib.o fixtests.o fixopts.o
|
96 |
|
|
FIXOBJ = fixfixes.o fixlib.o fixopts.o
|
97 |
|
|
|
98 |
|
|
HDR = server.h fixlib.h
|
99 |
|
|
FI = fixincl@EXEEXT@
|
100 |
|
|
AF = applyfix@EXEEXT@
|
101 |
|
|
|
102 |
|
|
all : @TARGET@ fixinc.sh mkheaders
|
103 |
|
|
gen : $(srcdir)/fixincl.x
|
104 |
|
|
|
105 |
|
|
|
106 |
|
|
oneprocess : full-stamp
|
107 |
|
|
twoprocess : test-stamp $(AF)
|
108 |
|
|
|
109 |
|
|
full-stamp : $(ALLOBJ) $(LIBIBERTY)
|
110 |
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $(FI) $(ALLOBJ) $(LIBIBERTY)
|
111 |
|
|
$(STAMP) $@
|
112 |
|
|
|
113 |
|
|
test-stamp : $(TESTOBJ) $(LIBIBERTY)
|
114 |
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $(FI) $(TESTOBJ) $(LIBIBERTY)
|
115 |
|
|
$(STAMP) $@
|
116 |
|
|
|
117 |
|
|
$(AF): $(FIXOBJ) $(LIBIBERTY)
|
118 |
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(FIXOBJ) $(LIBIBERTY)
|
119 |
|
|
|
120 |
|
|
$(ALLOBJ) : $(HDR)
|
121 |
|
|
fixincl.o : fixincl.c $(srcdir)/fixincl.x
|
122 |
|
|
fixtests.o : fixtests.c
|
123 |
|
|
fixfixes.o : fixfixes.c $(srcdir)/fixincl.x
|
124 |
|
|
server.o : server.c
|
125 |
|
|
procopen.o : procopen.c
|
126 |
|
|
fixlib.o : fixlib.c
|
127 |
|
|
|
128 |
|
|
fixinc.sh : fixinc.in mkfixinc.sh Makefile
|
129 |
|
|
srcdir="$(srcdir)" $(SHELL) $(srcdir)/mkfixinc.sh $(target)
|
130 |
|
|
|
131 |
|
|
$(srcdir)/fixincl.x: @MAINT@ fixincl.tpl inclhack.def
|
132 |
|
|
cd $(srcdir) ; $(SHELL) ./genfixes
|
133 |
|
|
|
134 |
|
|
mostlyclean :
|
135 |
|
|
rm -f *.o *-stamp $(AF) $(FI) *~ fixinc.sh
|
136 |
|
|
|
137 |
|
|
clean: mostlyclean
|
138 |
|
|
rm -f mkheaders mkheaders.almost
|
139 |
|
|
|
140 |
|
|
distclean: clean
|
141 |
|
|
rm -f Makefile config.h config.log config.status stamp-h
|
142 |
|
|
|
143 |
|
|
maintainer-clean: distclean
|
144 |
|
|
rm -f $(srcdir)/fixincl.x
|
145 |
|
|
|
146 |
|
|
distclean : clean
|
147 |
|
|
|
148 |
|
|
Makefile: $(srcdir)/Makefile.in config.status
|
149 |
|
|
$(SHELL) ./config.status Makefile
|
150 |
|
|
|
151 |
|
|
mkheaders.almost: $(srcdir)/mkheaders.in config.status
|
152 |
|
|
CONFIG_FILES=mkheaders.almost:mkheaders.in \
|
153 |
|
|
CONFIG_HEADERS= ./config.status
|
154 |
|
|
|
155 |
|
|
mkheaders: mkheaders.almost $(srcdir)/../gcc/BASE-VER
|
156 |
|
|
sed -e 's/@gcc_version@/$(gcc_version)/' < $< > $@T
|
157 |
|
|
mv -f $@T $@
|
158 |
|
|
|
159 |
|
|
config.h: stamp-h
|
160 |
|
|
stamp-h: $(srcdir)/config.h.in config.status
|
161 |
|
|
$(SHELL) ./config.status config.h
|
162 |
|
|
|
163 |
|
|
config.status: $(srcdir)/configure
|
164 |
|
|
$(SHELL) ./config.status --recheck
|
165 |
|
|
|
166 |
|
|
$(srcdir)/configure: @MAINT@ $(srcdir)/configure.ac $(srcdir)/aclocal.m4
|
167 |
|
|
cd $(srcdir) && $(AUTOCONF)
|
168 |
|
|
|
169 |
|
|
$(srcdir)/config.h.in: @MAINT@ $(srcdir)/configure.ac
|
170 |
|
|
cd $(srcdir) && $(AUTOHEADER)
|
171 |
|
|
|
172 |
|
|
$(srcdir)/aclocal.m4: @MAINT@ $(srcdir)/configure.ac
|
173 |
|
|
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
174 |
|
|
|
175 |
|
|
check : all
|
176 |
|
|
autogen -T $(srcdir)/check.tpl $(srcdir)/inclhack.def
|
177 |
|
|
$(SHELL) ./check.sh $(srcdir)/tests/base
|
178 |
|
|
@rm -f ./check.sh
|
179 |
|
|
|
180 |
|
|
install : all
|
181 |
|
|
-rm -rf $(DESTDIR)$(itoolsdir)
|
182 |
|
|
$(mkinstalldirs) $(DESTDIR)$(itoolsdir)
|
183 |
|
|
$(mkinstalldirs) $(DESTDIR)$(itoolsdatadir)/include
|
184 |
|
|
$(INSTALL_DATA) $(srcdir)/README-fixinc \
|
185 |
|
|
$(DESTDIR)$(itoolsdatadir)/include/README
|
186 |
|
|
$(INSTALL_SCRIPT) fixinc.sh $(DESTDIR)$(itoolsdir)/fixinc.sh
|
187 |
|
|
$(INSTALL_PROGRAM) fixincl@EXEEXT@ \
|
188 |
|
|
$(DESTDIR)$(itoolsdir)/fixincl@EXEEXT@
|
189 |
|
|
$(INSTALL_SCRIPT) mkheaders $(DESTDIR)$(itoolsdir)/mkheaders
|
190 |
|
|
|
191 |
|
|
.PHONY: dvi pdf info html install-pdf install-info install-html
|
192 |
|
|
|
193 |
|
|
dvi :
|
194 |
|
|
pdf :
|
195 |
|
|
info :
|
196 |
|
|
html :
|
197 |
|
|
install-pdf :
|
198 |
|
|
install-info :
|
199 |
|
|
install-html :
|
200 |
|
|
installcheck :
|