Makefile.am revision 104834
1## Process this file with automake to generate Makefile.in
2
3AUTOMAKE_OPTIONS = cygnus
4
5DOCFILES = aoutx.texi  archive.texi archures.texi \
6	bfdt.texi  cache.texi coffcode.texi \
7	core.texi elf.texi elfcode.texi  format.texi  libbfd.texi  \
8	opncls.texi  reloc.texi  section.texi  \
9	syms.texi  targets.texi init.texi hash.texi linker.texi \
10	mmo.texi
11
12PROTOS = archive.p archures.p bfd.p \
13	 core.p format.p \
14	libbfd.p opncls.p reloc.p \
15	section.p syms.p targets.p  \
16	format.p  core.p init.p
17
18IPROTOS = cache.ip libbfd.ip reloc.ip init.ip archures.ip coffcode.ip
19
20# SRCDOC, SRCPROT, SRCIPROT only used to sidestep Sun Make bug in interaction 
21# between VPATH and suffix rules.  If you use GNU Make, perhaps other Makes,
22# you don't need these three:
23SRCDOC = $(srcdir)/../aoutx.h  $(srcdir)/../archive.c \
24	$(srcdir)/../archures.c $(srcdir)/../bfd.c \
25	$(srcdir)/../cache.c $(srcdir)/../coffcode.h \
26	$(srcdir)/../corefile.c $(srcdir)/../elf.c \
27	$(srcdir)/../elfcode.h  $(srcdir)/../format.c \
28	$(srcdir)/../libbfd.c $(srcdir)/../opncls.c \
29	$(srcdir)/../reloc.c  $(srcdir)/../section.c \
30	$(srcdir)/../syms.c  $(srcdir)/../targets.c \
31	$(srcdir)/../hash.c $(srcdir)/../linker.c \
32	$(srcdir)/../mmo.c
33
34SRCPROT = $(srcdir)/../archive.c $(srcdir)/../archures.c \
35	$(srcdir)/../bfd.c $(srcdir)/../coffcode.h $(srcdir)/../corefile.c \
36	$(srcdir)/../format.c $(srcdir)/../libbfd.c \
37	$(srcdir)/../opncls.c $(srcdir)/../reloc.c \
38	$(srcdir)/../section.c $(srcdir)/../syms.c \
39	$(srcdir)/../targets.c $(srcdir)/../init.c
40
41SRCIPROT = $(srcdir)/../cache.c $(srcdir)/../libbfd.c \
42	$(srcdir)/../reloc.c $(srcdir)/../cpu-h8300.c \
43	$(srcdir)/../cpu-i960.c $(srcdir)/../archures.c \
44	$(srcdir)/../init.c
45
46TEXIDIR = $(srcdir)/../../texinfo/fsf
47
48info_TEXINFOS = bfd.texinfo
49
50MKDOC = chew$(EXEEXT_FOR_BUILD)
51
52$(MKDOC): chew.o
53	$(CC_FOR_BUILD) -o $(MKDOC) chew.o $(LOADLIBES) $(LDFLAGS)
54
55chew.o: chew.c
56	$(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS) $(srcdir)/chew.c
57
58protos: libbfd.h libcoff.h bfd.h
59
60bfd.info bfd.dvi: $(DOCFILES) bfdsumm.texi bfd.texinfo
61
62# We can't replace these rules with an implicit rule, because
63# makes without VPATH support couldn't find the .h files in `..'.
64
65# We use s-XXX targets so that we can distribute the info files,
66# and permit people to rebuild them, without requiring the makeinfo
67# program.  If somebody tries to rebuild info, but none of the .texi
68# files have changed, then this Makefile will build chew, and will
69# build all of the stamp files, but will not actually have to rebuild
70# bfd.info.
71
72s-aoutx: $(MKDOC) $(srcdir)/../aoutx.h $(srcdir)/doc.str
73	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../aoutx.h >aoutx.tmp
74	$(srcdir)/../../move-if-change aoutx.tmp aoutx.texi
75	touch s-aoutx
76aoutx.texi: s-aoutx
77
78s-archive: $(MKDOC) $(srcdir)/../archive.c $(srcdir)/doc.str
79	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../archive.c >archive.tmp
80	$(srcdir)/../../move-if-change archive.tmp archive.texi
81	touch s-archive
82archive.texi: s-archive
83
84s-archures: $(MKDOC) $(srcdir)/../archures.c $(srcdir)/doc.str
85	./$(MKDOC) -f $(srcdir)/doc.str < $(srcdir)/../archures.c >archures.tmp
86	$(srcdir)/../../move-if-change archures.tmp archures.texi
87	touch s-archures
88archures.texi: s-archures
89
90# We use bfdt.texi, rather than bfd.texi, to avoid conflicting with
91# bfd.texinfo on an 8.3 filesystem.
92s-bfd: $(MKDOC) $(srcdir)/../bfd.c $(srcdir)/doc.str
93	./$(MKDOC) -f $(srcdir)/doc.str < $(srcdir)/../bfd.c >bfd.tmp
94	$(srcdir)/../../move-if-change bfd.tmp bfdt.texi
95	touch s-bfd
96bfdt.texi: s-bfd
97
98s-cache: $(MKDOC) $(srcdir)/../cache.c $(srcdir)/doc.str
99	./$(MKDOC) -f $(srcdir)/doc.str < $(srcdir)/../cache.c >cache.tmp
100	$(srcdir)/../../move-if-change cache.tmp cache.texi
101	touch s-cache
102cache.texi: s-cache
103
104s-coffcode: $(MKDOC) $(srcdir)/../coffcode.h $(srcdir)/doc.str
105	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../coffcode.h >coffcode.tmp
106	$(srcdir)/../../move-if-change coffcode.tmp coffcode.texi
107	touch s-coffcode
108coffcode.texi: s-coffcode
109
110s-core: $(MKDOC) $(srcdir)/../corefile.c $(srcdir)/doc.str
111	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../corefile.c >core.tmp
112	$(srcdir)/../../move-if-change core.tmp core.texi
113	touch s-core
114core.texi: s-core
115
116s-elf: $(MKDOC) $(srcdir)/../elf.c $(srcdir)/doc.str
117	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../elf.c >elf.tmp
118	$(srcdir)/../../move-if-change elf.tmp elf.texi
119	touch s-elf
120elf.texi: s-elf
121
122s-elfcode: $(MKDOC) $(srcdir)/../elfcode.h $(srcdir)/doc.str
123	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../elfcode.h >elfcode.tmp
124	$(srcdir)/../../move-if-change elfcode.tmp elfcode.texi
125	touch s-elfcode
126elfcode.texi: s-elfcode
127
128s-mmo: $(MKDOC) $(srcdir)/../mmo.c $(srcdir)/doc.str
129	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../mmo.c >mmo.tmp
130	$(srcdir)/../../move-if-change mmo.tmp mmo.texi
131	touch s-mmo
132mmo.texi: s-mmo
133
134s-format: $(MKDOC) $(srcdir)/../format.c $(srcdir)/doc.str
135	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../format.c >format.tmp
136	$(srcdir)/../../move-if-change format.tmp format.texi
137	touch s-format
138format.texi: s-format
139
140s-libbfd: $(MKDOC) $(srcdir)/../libbfd.c $(srcdir)/doc.str
141	./$(MKDOC) -f $(srcdir)/doc.str < $(srcdir)/../libbfd.c >libbfd.tmp
142	$(srcdir)/../../move-if-change libbfd.tmp libbfd.texi
143	touch s-libbfd
144libbfd.texi: s-libbfd
145
146s-opncls: $(MKDOC) $(srcdir)/../opncls.c $(srcdir)/doc.str
147	./$(MKDOC) -f $(srcdir)/doc.str  <$(srcdir)/../opncls.c >opncls.tmp
148	$(srcdir)/../../move-if-change opncls.tmp opncls.texi
149	touch s-opncls
150opncls.texi: s-opncls
151
152s-reloc: $(MKDOC) $(srcdir)/../reloc.c $(srcdir)/doc.str
153	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../reloc.c >reloc.tmp
154	$(srcdir)/../../move-if-change reloc.tmp reloc.texi
155	touch s-reloc
156reloc.texi: s-reloc
157
158s-section: $(MKDOC) $(srcdir)/../section.c $(srcdir)/doc.str
159	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../section.c >section.tmp
160	$(srcdir)/../../move-if-change section.tmp section.texi
161	touch s-section
162section.texi: s-section
163
164s-syms: $(MKDOC) $(srcdir)/../syms.c $(srcdir)/doc.str
165	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../syms.c >syms.tmp
166	$(srcdir)/../../move-if-change syms.tmp syms.texi
167	touch s-syms
168syms.texi: s-syms
169
170s-targets: $(MKDOC) $(srcdir)/../targets.c $(srcdir)/doc.str
171	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../targets.c >targets.tmp
172	$(srcdir)/../../move-if-change targets.tmp targets.texi
173	touch s-targets
174targets.texi: s-targets
175
176s-init: $(MKDOC) $(srcdir)/../init.c $(srcdir)/doc.str
177	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../init.c >init.tmp
178	$(srcdir)/../../move-if-change init.tmp init.texi
179	touch s-init
180init.texi: s-init
181
182s-hash: $(MKDOC) $(srcdir)/../hash.c $(srcdir)/doc.str
183	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../hash.c >hash.tmp
184	$(srcdir)/../../move-if-change hash.tmp hash.texi
185	touch s-hash
186hash.texi: s-hash
187
188s-linker: $(MKDOC) $(srcdir)/../linker.c $(srcdir)/doc.str
189	./$(MKDOC) -f $(srcdir)/doc.str <$(srcdir)/../linker.c >linker.tmp
190	$(srcdir)/../../move-if-change linker.tmp linker.texi
191	touch s-linker
192linker.texi: s-linker
193
194LIBBFD_H_DEP = \
195	$(srcdir)/../libbfd-in.h	\
196	$(srcdir)/../init.c		\
197	$(srcdir)/../libbfd.c		\
198	$(srcdir)/../cache.c		\
199	$(srcdir)/../reloc.c		\
200	$(srcdir)/../archures.c		\
201	$(srcdir)/../elf.c		\
202	$(srcdir)/header.sed		\
203	$(srcdir)/proto.str		\
204	$(MKDOC)
205
206libbfd.h: $(LIBBFD_H_DEP)
207	echo "$(LIBBFD_H_DEP)" | sed -f $(srcdir)/header.sed > $@
208	for file in $(LIBBFD_H_DEP); do \
209	  case $$file in \
210	    *-in.h) cat $$file >> $@ ;; \
211	    */header.sed) break ;; \
212	    *)	echo $$file | sed -e 's,.*/,,' -e 's,^,/* Extracted from ,' \
213				-e 's,$$,.  */,' >> $@ ; \
214		./$(MKDOC) -i -f $(srcdir)/proto.str < $$file >> $@ ;; \
215	  esac; \
216	done
217
218LIBCOFF_H_DEP = \
219	$(srcdir)/../libcoff-in.h	\
220	$(srcdir)/../coffcode.h		\
221	$(srcdir)/header.sed		\
222	$(srcdir)/proto.str		\
223	$(MKDOC)
224
225libcoff.h: $(LIBCOFF_H_DEP)
226	echo "$(LIBCOFF_H_DEP)" | sed -f $(srcdir)/header.sed > $@
227	for file in $(LIBCOFF_H_DEP); do \
228	  case $$file in \
229	    *-in.h) cat $$file >> $@ ;; \
230	    */header.sed) break ;; \
231	    *)	echo $$file | sed -e 's,.*/,,' -e 's,^,/* Extracted from ,' \
232				-e 's,$$,.  */,' >> $@ ; \
233		./$(MKDOC) -i -f $(srcdir)/proto.str < $$file >> $@ ;; \
234	  esac; \
235	done
236
237BFD_H_DEP = \
238	$(srcdir)/../bfd-in.h 		\
239	$(srcdir)/../init.c 		\
240	$(srcdir)/../opncls.c 		\
241	$(srcdir)/../libbfd.c 		\
242	$(srcdir)/../section.c 		\
243	$(srcdir)/../archures.c		\
244	$(srcdir)/../reloc.c		\
245	$(srcdir)/../syms.c		\
246	$(srcdir)/../bfd.c		\
247	$(srcdir)/../archive.c		\
248	$(srcdir)/../corefile.c		\
249	$(srcdir)/../targets.c		\
250	$(srcdir)/../format.c		\
251	$(srcdir)/header.sed		\
252	$(srcdir)/proto.str		\
253	$(srcdir)/../version.h		\
254	$(MKDOC)
255
256bfd.h: $(BFD_H_DEP)
257	echo "$(BFD_H_DEP)" | sed -f $(srcdir)/header.sed > $@
258	for file in $(BFD_H_DEP); do \
259	  case $$file in \
260	    *-in.h) cat $$file >> $@ ;; \
261	    */header.sed) break ;; \
262	    *)	echo $$file | sed -e 's,.*/,,' -e 's,^,/* Extracted from ,' \
263				-e 's,$$,.  */,' >> $@ ; \
264		./$(MKDOC) -f $(srcdir)/proto.str < $$file >> $@ ;; \
265	  esac; \
266	done
267	echo "#ifdef __cplusplus" >> $@
268	echo "}" >> $@
269	echo "#endif" >> $@
270	echo "#endif" >> $@
271
272noinst_TEXINFOS = bfdint.texi
273
274MOSTLYCLEANFILES = $(MKDOC) *.o
275
276CLEANFILES = s-* *.p *.ip
277
278DISTCLEANFILES = bfd.?? bfd.??? bfd.h libbfd.h libcoff.h texput.log
279
280MAINTAINERCLEANFILES = $(DOCFILES)
281
282# We want install to imply install-info as per GNU standards, despite the
283# cygnus option.
284install: install-info
285