dependency tracking in bfd
[deliverable/binutils-gdb.git] / bfd / Makefile.am
1 ## Process this file with automake to generate Makefile.in
2
3 AUTOMAKE_OPTIONS = 1.11 no-dist foreign
4 ACLOCAL_AMFLAGS = -I . -I .. -I ../config
5
6 # Uncomment the following line when doing a release.
7 # RELEASE=y
8
9 INCDIR = $(srcdir)/../include
10 CSEARCH = -I. -I$(srcdir) -I$(INCDIR)
11
12 SUBDIRS = doc po
13
14 bfddocdir = doc
15 bfdlibdir = @bfdlibdir@
16 bfdincludedir = @bfdincludedir@
17
18 bfdlib_LTLIBRARIES = libbfd.la
19
20 WARN_CFLAGS = @WARN_CFLAGS@
21 NO_WERROR = @NO_WERROR@
22 AM_CFLAGS = $(WARN_CFLAGS)
23 AM_CPPFLAGS = -DBINDIR='"$(bindir)"'
24 if PLUGINS
25 LIBDL = -ldl
26 endif
27
28 # bfd.h goes here, for now
29 BFD_H = bfd.h
30
31 # Jim Kingdon notes:
32 # Writing S-records should be included in all (or at least most)
33 # *-*-coff, *-*-aout, etc., configurations, because people will want to
34 # be able to use objcopy to create S-records. (S-records are not useful
35 # for the debugger, so if you are downloading things as S-records you
36 # need two copies of the executable, one to download and one for the
37 # debugger).
38 BFD32_LIBS = \
39 archive.lo archures.lo bfd.lo bfdio.lo bfdwin.lo \
40 cache.lo coffgen.lo corefile.lo \
41 format.lo init.lo libbfd.lo opncls.lo reloc.lo \
42 section.lo syms.lo targets.lo hash.lo linker.lo \
43 srec.lo binary.lo tekhex.lo ihex.lo stabs.lo stab-syms.lo \
44 merge.lo dwarf2.lo simple.lo compress.lo verilog.lo
45
46 BFD64_LIBS = archive64.lo
47
48 BFD32_LIBS_CFILES = \
49 archive.c archures.c bfd.c bfdio.c bfdwin.c \
50 cache.c coffgen.c corefile.c \
51 format.c init.c libbfd.c opncls.c reloc.c \
52 section.c syms.c targets.c hash.c linker.c \
53 srec.c binary.c tekhex.c ihex.c stabs.c stab-syms.c \
54 merge.c dwarf2.c simple.c compress.c verilog.c
55
56 BFD64_LIBS_CFILES = archive64.c
57
58 # This list is alphabetized to make it easier to keep in sync
59 # with the decls and initializer in archures.c.
60 ALL_MACHINES = \
61 cpu-alpha.lo \
62 cpu-arc.lo \
63 cpu-arm.lo \
64 cpu-avr.lo \
65 cpu-bfin.lo \
66 cpu-cr16.lo \
67 cpu-cr16c.lo \
68 cpu-cris.lo \
69 cpu-crx.lo \
70 cpu-d10v.lo \
71 cpu-d30v.lo \
72 cpu-dlx.lo \
73 cpu-fr30.lo \
74 cpu-frv.lo \
75 cpu-h8300.lo \
76 cpu-h8500.lo \
77 cpu-hppa.lo \
78 cpu-i370.lo \
79 cpu-i386.lo \
80 cpu-l1om.lo \
81 cpu-i860.lo \
82 cpu-i960.lo \
83 cpu-ia64.lo \
84 cpu-ip2k.lo \
85 cpu-iq2000.lo \
86 cpu-lm32.lo \
87 cpu-m10200.lo \
88 cpu-m10300.lo \
89 cpu-m32c.lo \
90 cpu-m32r.lo \
91 cpu-m68hc11.lo \
92 cpu-m68hc12.lo \
93 cpu-m68k.lo \
94 cpu-m88k.lo \
95 cpu-maxq.lo \
96 cpu-mcore.lo \
97 cpu-mep.lo \
98 cpu-microblaze.lo \
99 cpu-mips.lo \
100 cpu-mmix.lo \
101 cpu-moxie.lo \
102 cpu-msp430.lo \
103 cpu-mt.lo \
104 cpu-ns32k.lo \
105 cpu-openrisc.lo \
106 cpu-or32.lo \
107 cpu-pdp11.lo \
108 cpu-pj.lo \
109 cpu-plugin.lo \
110 cpu-powerpc.lo \
111 cpu-rs6000.lo \
112 cpu-s390.lo \
113 cpu-score.lo \
114 cpu-sh.lo \
115 cpu-sparc.lo \
116 cpu-spu.lo \
117 cpu-tic30.lo \
118 cpu-tic4x.lo \
119 cpu-tic54x.lo \
120 cpu-tic80.lo \
121 cpu-v850.lo \
122 cpu-vax.lo \
123 cpu-w65.lo \
124 cpu-we32k.lo \
125 cpu-xc16x.lo \
126 cpu-xstormy16.lo \
127 cpu-xtensa.lo \
128 cpu-z80.lo \
129 cpu-z8k.lo
130
131 ALL_MACHINES_CFILES = \
132 cpu-alpha.c \
133 cpu-arc.c \
134 cpu-arm.c \
135 cpu-avr.c \
136 cpu-bfin.c \
137 cpu-cr16.c \
138 cpu-cr16c.c \
139 cpu-cris.c \
140 cpu-crx.c \
141 cpu-d10v.c \
142 cpu-d30v.c \
143 cpu-dlx.c \
144 cpu-fr30.c \
145 cpu-frv.c \
146 cpu-h8300.c \
147 cpu-h8500.c \
148 cpu-hppa.c \
149 cpu-i370.c \
150 cpu-i386.c \
151 cpu-l1om.c \
152 cpu-i860.c \
153 cpu-i960.c \
154 cpu-ia64.c \
155 cpu-ip2k.c \
156 cpu-iq2000.c \
157 cpu-lm32.c \
158 cpu-m10200.c \
159 cpu-m10300.c \
160 cpu-m32c.c \
161 cpu-m32r.c \
162 cpu-m68hc11.c \
163 cpu-m68hc12.c \
164 cpu-m68k.c \
165 cpu-m88k.c \
166 cpu-maxq.c \
167 cpu-mcore.c \
168 cpu-mep.c \
169 cpu-microblaze.c \
170 cpu-mips.c \
171 cpu-mmix.c \
172 cpu-moxie.c \
173 cpu-msp430.c \
174 cpu-mt.c \
175 cpu-ns32k.c \
176 cpu-openrisc.c \
177 cpu-or32.c \
178 cpu-pdp11.c \
179 cpu-pj.c \
180 cpu-plugin.c \
181 cpu-powerpc.c \
182 cpu-rs6000.c \
183 cpu-s390.c \
184 cpu-score.c \
185 cpu-sh.c \
186 cpu-sparc.c \
187 cpu-spu.c \
188 cpu-tic30.c \
189 cpu-tic4x.c \
190 cpu-tic54x.c \
191 cpu-tic80.c \
192 cpu-v850.c \
193 cpu-vax.c \
194 cpu-w65.c \
195 cpu-we32k.c \
196 cpu-xc16x.c \
197 cpu-xstormy16.c \
198 cpu-xtensa.c \
199 cpu-z80.c \
200 cpu-z8k.c
201
202 # The .o files needed by all of the 32 bit vectors that are configured into
203 # target_vector in targets.c if configured with --enable-targets=all.
204 BFD32_BACKENDS = \
205 aout-adobe.lo \
206 aout-arm.lo \
207 aout-cris.lo \
208 aout-ns32k.lo \
209 aout-sparcle.lo \
210 aout-tic30.lo \
211 aout0.lo \
212 aout32.lo \
213 armnetbsd.lo \
214 bout.lo \
215 cf-i386lynx.lo \
216 cf-sparclynx.lo \
217 coff-apollo.lo \
218 coff-arm.lo \
219 coff-aux.lo \
220 coff-go32.lo \
221 coff-h8300.lo \
222 coff-h8500.lo \
223 coff-i386.lo \
224 coff-i860.lo \
225 coff-i960.lo \
226 coff-m68k.lo \
227 coff-m88k.lo \
228 coff-maxq.lo \
229 coff-mips.lo \
230 coff-or32.lo \
231 coff-rs6000.lo \
232 coff-sh.lo \
233 coff-sparc.lo \
234 coff-stgo32.lo \
235 coff-svm68k.lo \
236 coff-tic30.lo \
237 coff-tic4x.lo \
238 coff-tic54x.lo \
239 coff-tic80.lo \
240 coff-u68k.lo \
241 coff-w65.lo \
242 coff-we32k.lo \
243 coff-z80.lo \
244 coff-z8k.lo \
245 cofflink.lo \
246 dwarf1.lo \
247 ecoff.lo \
248 ecofflink.lo \
249 elf-attrs.lo \
250 elf-eh-frame.lo \
251 elf-ifunc.lo \
252 elf-m10200.lo \
253 elf-m10300.lo \
254 elf-strtab.lo \
255 elf-vxworks.lo \
256 elf.lo \
257 elf32-am33lin.lo \
258 elf32-arc.lo \
259 elf32-arm.lo \
260 elf32-avr.lo \
261 elf32-bfin.lo \
262 elf32-cr16.lo \
263 elf32-cr16c.lo \
264 elf32-cris.lo \
265 elf32-crx.lo \
266 elf32-d10v.lo \
267 elf32-d30v.lo \
268 elf32-dlx.lo \
269 elf32-fr30.lo \
270 elf32-frv.lo \
271 elf32-gen.lo \
272 elf32-h8300.lo \
273 elf32-hppa.lo \
274 elf32-i370.lo \
275 elf32-i386.lo \
276 elf32-i860.lo \
277 elf32-i960.lo \
278 elf32-ip2k.lo \
279 elf32-iq2000.lo \
280 elf32-lm32.lo \
281 elf32-m32c.lo \
282 elf32-m32r.lo \
283 elf32-m68hc11.lo \
284 elf32-m68hc12.lo \
285 elf32-m68hc1x.lo \
286 elf32-m68k.lo \
287 elf32-m88k.lo \
288 elf32-mcore.lo \
289 elf32-mep.lo \
290 elf32-microblaze.lo \
291 elf32-mips.lo \
292 elf32-moxie.lo \
293 elf32-msp430.lo \
294 elf32-mt.lo \
295 elf32-openrisc.lo \
296 elf32-or32.lo \
297 elf32-pj.lo \
298 elf32-ppc.lo \
299 elf32-s390.lo \
300 elf32-sh-symbian.lo \
301 elf32-sh.lo \
302 elf32-sh64-com.lo \
303 elf32-sh64.lo \
304 elf32-sparc.lo \
305 elf32-spu.lo \
306 elf32-v850.lo \
307 elf32-vax.lo \
308 elf32-xc16x.lo \
309 elf32-xstormy16.lo \
310 elf32-xtensa.lo \
311 elf32.lo \
312 elflink.lo \
313 elfxx-mips.lo \
314 elfxx-sparc.lo \
315 epoc-pe-arm.lo \
316 epoc-pei-arm.lo \
317 hp300bsd.lo \
318 hp300hpux.lo \
319 i386aout.lo \
320 i386bsd.lo \
321 i386dynix.lo \
322 i386freebsd.lo \
323 i386linux.lo \
324 i386lynx.lo \
325 i386mach3.lo \
326 i386msdos.lo \
327 i386netbsd.lo \
328 i386os9k.lo \
329 ieee.lo \
330 m68k4knetbsd.lo \
331 m68klinux.lo \
332 m68knetbsd.lo \
333 m88kmach3.lo \
334 m88kopenbsd.lo \
335 mach-o.lo \
336 mach-o-i386.lo \
337 mipsbsd.lo \
338 newsos3.lo \
339 nlm.lo \
340 nlm32-i386.lo \
341 nlm32-ppc.lo \
342 nlm32-sparc.lo \
343 nlm32.lo \
344 ns32knetbsd.lo \
345 oasys.lo \
346 pc532-mach.lo \
347 pdp11.lo \
348 pe-arm-wince.lo \
349 pe-arm.lo \
350 pe-i386.lo \
351 pe-mcore.lo \
352 pe-mips.lo \
353 pe-ppc.lo \
354 pe-sh.lo \
355 pef.lo \
356 pei-arm-wince.lo \
357 pei-arm.lo \
358 pei-i386.lo \
359 pei-mcore.lo \
360 pei-mips.lo \
361 pei-ppc.lo \
362 pei-sh.lo \
363 peigen.lo \
364 plugin.lo \
365 ppcboot.lo \
366 reloc16.lo \
367 riscix.lo \
368 som.lo \
369 sparclinux.lo \
370 sparclynx.lo \
371 sparcnetbsd.lo \
372 sunos.lo \
373 vax1knetbsd.lo \
374 vaxbsd.lo \
375 vaxnetbsd.lo \
376 versados.lo \
377 vms-gsd.lo \
378 vms-hdr.lo \
379 vms-misc.lo \
380 vms-tir.lo \
381 vms.lo \
382 vmsutil.lo \
383 xcofflink.lo \
384 xsym.lo \
385 xtensa-isa.lo \
386 xtensa-modules.lo
387
388 BFD32_BACKENDS_CFILES = \
389 aout-adobe.c \
390 aout-arm.c \
391 aout-cris.c \
392 aout-ns32k.c \
393 aout-sparcle.c \
394 aout-tic30.c \
395 aout0.c \
396 aout32.c \
397 armnetbsd.c \
398 bout.c \
399 cf-i386lynx.c \
400 cf-sparclynx.c \
401 coff-apollo.c \
402 coff-arm.c \
403 coff-aux.c \
404 coff-go32.c \
405 coff-h8300.c \
406 coff-h8500.c \
407 coff-i386.c \
408 coff-i860.c \
409 coff-i960.c \
410 coff-m68k.c \
411 coff-m88k.c \
412 coff-maxq.c \
413 coff-mips.c \
414 coff-or32.c \
415 coff-rs6000.c \
416 coff-sh.c \
417 coff-sparc.c \
418 coff-stgo32.c \
419 coff-svm68k.c \
420 coff-tic30.c \
421 coff-tic4x.c \
422 coff-tic54x.c \
423 coff-tic80.c \
424 coff-u68k.c \
425 coff-w65.c \
426 coff-we32k.c \
427 coff-z80.c \
428 coff-z8k.c \
429 cofflink.c \
430 dwarf1.c \
431 ecoff.c \
432 ecofflink.c \
433 elf-attrs.c \
434 elf-eh-frame.c \
435 elf-ifunc.c \
436 elf-m10200.c \
437 elf-m10300.c \
438 elf-strtab.c \
439 elf-vxworks.c \
440 elf.c \
441 elf32-am33lin.c \
442 elf32-arc.c \
443 elf32-arm.c \
444 elf32-avr.c \
445 elf32-bfin.c \
446 elf32-cr16.c \
447 elf32-cr16c.c \
448 elf32-cris.c \
449 elf32-crx.c \
450 elf32-d10v.c \
451 elf32-d30v.c \
452 elf32-dlx.c \
453 elf32-fr30.c \
454 elf32-frv.c \
455 elf32-gen.c \
456 elf32-h8300.c \
457 elf32-hppa.c \
458 elf32-i370.c \
459 elf32-i386.c \
460 elf32-i860.c \
461 elf32-i960.c \
462 elf32-ip2k.c \
463 elf32-iq2000.c \
464 elf32-lm32.c \
465 elf32-m32c.c \
466 elf32-m32r.c \
467 elf32-m68hc11.c \
468 elf32-m68hc12.c \
469 elf32-m68hc1x.c \
470 elf32-m68k.c \
471 elf32-m88k.c \
472 elf32-mcore.c \
473 elf32-mep.c \
474 elf32-microblaze.c \
475 elf32-mips.c \
476 elf32-moxie.c \
477 elf32-msp430.c \
478 elf32-mt.c \
479 elf32-openrisc.c \
480 elf32-or32.c \
481 elf32-pj.c \
482 elf32-ppc.c \
483 elf32-s390.c \
484 elf32-sh-symbian.c \
485 elf32-sh.c \
486 elf32-sh64-com.c \
487 elf32-sh64.c \
488 elf32-sparc.c \
489 elf32-spu.c \
490 elf32-v850.c \
491 elf32-vax.c \
492 elf32-xc16x.c \
493 elf32-xstormy16.c \
494 elf32-xtensa.c \
495 elf32.c \
496 elflink.c \
497 elfxx-mips.c \
498 elfxx-sparc.c \
499 epoc-pe-arm.c \
500 epoc-pei-arm.c \
501 hp300bsd.c \
502 hp300hpux.c \
503 i386aout.c \
504 i386bsd.c \
505 i386dynix.c \
506 i386freebsd.c \
507 i386linux.c \
508 i386lynx.c \
509 i386mach3.c \
510 i386msdos.c \
511 i386netbsd.c \
512 i386os9k.c \
513 ieee.c \
514 m68k4knetbsd.c \
515 m68klinux.c \
516 m68knetbsd.c \
517 m88kmach3.c \
518 m88kopenbsd.c \
519 mach-o.c \
520 mach-o-i386.c \
521 mipsbsd.c \
522 newsos3.c \
523 nlm.c \
524 nlm32-i386.c \
525 nlm32-ppc.c \
526 nlm32-sparc.c \
527 nlm32.c \
528 ns32knetbsd.c \
529 oasys.c \
530 pc532-mach.c \
531 pdp11.c \
532 pe-arm-wince.c \
533 pe-arm.c \
534 pe-i386.c \
535 pe-mcore.c \
536 pe-mips.c \
537 pe-ppc.c \
538 pe-sh.c \
539 pef.c \
540 pei-arm-wince.c \
541 pei-arm.c \
542 pei-i386.c \
543 pei-mcore.c \
544 pei-mips.c \
545 pei-ppc.c \
546 pei-sh.c \
547 plugin.c \
548 ppcboot.c \
549 reloc16.c \
550 riscix.c \
551 som.c \
552 sparclinux.c \
553 sparclynx.c \
554 sparcnetbsd.c \
555 sunos.c \
556 vax1knetbsd.c \
557 vaxbsd.c \
558 vaxnetbsd.c \
559 versados.c \
560 vms-gsd.c \
561 vms-hdr.c \
562 vms-misc.c \
563 vms-tir.c \
564 vms.c \
565 vmsutil.c \
566 xcofflink.c \
567 xsym.c \
568 xtensa-isa.c \
569 xtensa-modules.c
570
571 # The .o files needed by all of the 64 bit vectors that are configured into
572 # target_vector in targets.c if configured with --enable-targets=all
573 # and --enable-64-bit-bfd.
574 # elf32-ia64.c requires a 64-bit bfd_vma, and hence can not be put in
575 # BFD32_BACKENDS.
576 BFD64_BACKENDS = \
577 aix5ppc-core.lo \
578 aout64.lo \
579 coff-alpha.lo \
580 coff-x86_64.lo \
581 coff64-rs6000.lo \
582 demo64.lo \
583 elf32-ia64.lo \
584 elf32-score.lo \
585 elf32-score7.lo \
586 elf64-alpha.lo \
587 elf64-gen.lo \
588 elf64-hppa.lo \
589 elf64-ia64.lo \
590 elf64-mips.lo \
591 elf64-mmix.lo \
592 elf64-ppc.lo \
593 elf64-s390.lo \
594 elf64-sh64.lo \
595 elf64-sparc.lo \
596 elf64-x86-64.lo \
597 elf64.lo \
598 elfn32-mips.lo \
599 mmo.lo \
600 nlm32-alpha.lo \
601 nlm64.lo \
602 pe-x86_64.lo \
603 pei-ia64.lo \
604 pei-x86_64.lo \
605 pepigen.lo \
606 pex64igen.lo
607
608 BFD64_BACKENDS_CFILES = \
609 aix5ppc-core.c \
610 aout64.c \
611 coff-alpha.c \
612 coff-x86_64.c \
613 coff64-rs6000.c \
614 demo64.c \
615 elf32-score.c \
616 elf32-score7.c \
617 elf64-alpha.c \
618 elf64-gen.c \
619 elf64-hppa.c \
620 elf64-mips.c \
621 elf64-mmix.c \
622 elf64-ppc.c \
623 elf64-s390.c \
624 elf64-sh64.c \
625 elf64-sparc.c \
626 elf64-x86-64.c \
627 elf64.c \
628 elfn32-mips.c \
629 mmo.c \
630 nlm32-alpha.c \
631 nlm64.c \
632 pe-x86_64.c \
633 pei-ia64.c \
634 pei-x86_64.c
635
636 OPTIONAL_BACKENDS = \
637 aix386-core.lo \
638 cisco-core.lo \
639 hpux-core.lo \
640 irix-core.lo \
641 lynx-core.lo \
642 osf-core.lo \
643 sco5-core.lo \
644 trad-core.lo
645
646 OPTIONAL_BACKENDS_CFILES = \
647 aix386-core.c \
648 cisco-core.c \
649 hpux-core.c \
650 irix-core.c \
651 lynx-core.c \
652 osf-core.c \
653 sco5-core.c \
654 trad-core.c
655
656 # We want to rerun configure if configure.in, config.bfd or
657 # configure.host change. configure.in is needed since the version
658 # number in Makefile comes from configure.in.
659 CONFIG_STATUS_DEPENDENCIES = \
660 $(srcdir)/configure.in \
661 $(srcdir)/config.bfd \
662 $(srcdir)/configure.host
663
664 # These are defined by configure.in:
665 WORDSIZE = @wordsize@
666 ALL_BACKENDS = @all_backends@
667 BFD_BACKENDS = @bfd_backends@
668 BFD_MACHINES = @bfd_machines@
669 TDEFAULTS = @tdefaults@
670
671 INCLUDES = @HDEFINES@ @COREFLAG@ @TDEFINES@ $(CSEARCH) $(CSWITCHES) @INCINTL@
672
673 # C source files that correspond to .o's.
674 SOURCE_CFILES = \
675 $(BFD32_LIBS_CFILES) \
676 $(BFD64_LIBS_CFILES) \
677 $(ALL_MACHINES_CFILES) \
678 $(BFD32_BACKENDS_CFILES) \
679 $(BFD64_BACKENDS_CFILES) \
680 $(OPTIONAL_BACKENDS_CFILES)
681
682 BUILD_CFILES = \
683 elf32-ia64.c elf64-ia64.c peigen.c pepigen.c pex64igen.c
684
685 CFILES = $(SOURCE_CFILES) $(BUILD_CFILES)
686
687 ## This is a list of all .h files which are in the source tree.
688 SOURCE_HFILES = \
689 aout-target.h aoutf1.h aoutx.h coffcode.h coffswap.h ecoffswap.h \
690 elf-bfd.h elf-hppa.h elf32-hppa.h \
691 elf64-hppa.h elfcode.h elfcore.h \
692 freebsd.h genlink.h go32stub.h \
693 libaout.h libbfd.h libcoff.h libecoff.h libhppa.h libieee.h \
694 libnlm.h liboasys.h libpei.h libxcoff.h mach-o.h \
695 netbsd.h nlm-target.h nlmcode.h nlmswap.h ns32k.h \
696 pef.h pef-traceback.h peicode.h som.h version.h \
697 vms.h xcoff-target.h xsym.h
698
699 ## ... and all .h files which are in the build tree.
700 BUILD_HFILES = \
701 bfdver.h elf32-target.h elf64-target.h targmatch.h bfd_stdint.h
702
703 # Ensure they are built early:
704 BUILT_SOURCES = $(BUILD_HFILES)
705
706 HFILES = $(SOURCE_HFILES) $(BUILD_HFILES)
707
708 SRC_POTFILES = $(SOURCE_CFILES) $(SOURCE_HFILES)
709 BLD_POTFILES = $(BUILD_CFILES) $(BUILD_HFILES)
710
711 po/SRC-POTFILES.in: @MAINT@ Makefile $(SRC_POTFILES)
712 for file in $(SRC_POTFILES); do echo $$file; done \
713 | LC_ALL=C sort > tmp.src \
714 && mv tmp.src $(srcdir)/po/SRC-POTFILES.in
715
716 po/BLD-POTFILES.in: @MAINT@ Makefile $(BLD_POTFILES)
717 for file in $(BLD_POTFILES); do echo $$file; done \
718 | LC_ALL=C sort > tmp.bld \
719 && mv tmp.bld $(srcdir)/po/BLD-POTFILES.in
720
721 all diststuff: info
722
723 # Various kinds of .o files to put in libbfd.a:
724 # BFD_BACKENDS Routines the configured targets need.
725 # BFD_MACHINES Architecture-specific routines the configured targets need.
726 # COREFILE Core file routines for a native configuration
727 # bfd64_libs Routines for 64bit support
728 OFILES = $(BFD_BACKENDS) $(BFD_MACHINES) @COREFILE@ @bfd64_libs@
729
730 stamp-ofiles: Makefile
731 rm -f tofiles
732 f=""; \
733 for i in $(OFILES) ; do \
734 case " $$f " in \
735 *" $$i "*) ;; \
736 *) f="$$f $$i" ;; \
737 esac ; \
738 done ; \
739 echo $$f > tofiles
740 $(SHELL) $(srcdir)/../move-if-change tofiles ofiles
741 touch stamp-ofiles
742
743 ofiles: stamp-ofiles ; @true
744
745 # Since BFD64_LIBS is optional and we can't have substitution in
746 # libbfd_la_SOURCES, we put BFD64_LIBS in OFILES instead.
747 # However, list all sources in EXTRA_libbfd_la_SOURCES so the
748 # dependency tracking fragments are picked up in the Makefile.
749 libbfd_la_SOURCES = $(BFD32_LIBS_CFILES)
750 EXTRA_libbfd_la_SOURCES = $(CFILES)
751 libbfd_la_DEPENDENCIES = $(OFILES) ofiles
752 libbfd_la_LIBADD = `cat ofiles` @SHARED_LIBADD@ $(LIBDL)
753 libbfd_la_LDFLAGS = -release `cat libtool-soversion` @SHARED_LDFLAGS@
754
755 # libtool will build .libs/libbfd.a. We create libbfd.a in the build
756 # directory so that we don't have to convert all the programs that use
757 # libbfd.a simultaneously. This is a hack which should be removed if
758 # everything else starts using libtool. FIXME.
759
760 noinst_LIBRARIES = libbfd.a
761 libbfd_a_SOURCES =
762
763 stamp-lib: libbfd.la
764 libtooldir=`$(LIBTOOL) --config | sed -n -e 's/^objdir=//p'`; \
765 if [ -f $$libtooldir/libbfd.a ]; then \
766 cp $$libtooldir/libbfd.a libbfd.tmp; \
767 $(RANLIB) libbfd.tmp; \
768 $(SHELL) $(srcdir)/../move-if-change libbfd.tmp libbfd.a; \
769 else true; fi
770 touch stamp-lib
771
772 libbfd.a: stamp-lib ; @true
773
774 # This file holds an array associating configuration triplets and
775 # vector names. It is built from config.bfd. It is not compiled by
776 # itself, but is included by targets.c.
777 targmatch.h: config.bfd targmatch.sed
778 rm -f targmatch.h
779 sed -f $(srcdir)/targmatch.sed < $(srcdir)/config.bfd > targmatch.new
780 mv -f targmatch.new targmatch.h
781
782 # When compiling archures.c and targets.c, supply the default target
783 # info from configure.
784
785 targets.lo: targets.c Makefile
786 if am__fastdepCC
787 $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $(TDEFAULTS) $(srcdir)/targets.c
788 mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
789 else
790 if AMDEP
791 source='targets.c' object='$@' libtool=yes @AMDEPBACKSLASH@
792 DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
793 endif
794 $(LTCOMPILE) -c -o $@ $(TDEFAULTS) $(srcdir)/targets.c
795 endif
796
797 archures.lo: archures.c Makefile
798 if am__fastdepCC
799 $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $(TDEFAULTS) $(srcdir)/archures.c
800 mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
801 else
802 if AMDEP
803 source='archures.c' object='$@' libtool=yes @AMDEPBACKSLASH@
804 DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
805 endif
806 $(LTCOMPILE) -c -o $@ $(TDEFAULTS) $(srcdir)/archures.c
807 endif
808
809 dwarf2.lo: dwarf2.c Makefile
810 if am__fastdepCC
811 $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ -DDEBUGDIR=\"$(DEBUGDIR)\" $(srcdir)/dwarf2.c
812 mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
813 else
814 if AMDEP
815 source='dwarf2.c' object='$@' libtool=yes @AMDEPBACKSLASH@
816 DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
817 endif
818 $(LTCOMPILE) -c -o $@ -DDEBUGDIR=\"$(DEBUGDIR)\" $(srcdir)/dwarf2.c
819 endif
820
821 elf32-target.h : elfxx-target.h
822 rm -f elf32-target.h
823 sed -e s/NN/32/g < $(srcdir)/elfxx-target.h > elf32-target.new
824 mv -f elf32-target.new elf32-target.h
825
826 elf64-target.h : elfxx-target.h
827 rm -f elf64-target.h
828 sed -e s/NN/64/g < $(srcdir)/elfxx-target.h > elf64-target.new
829 mv -f elf64-target.new elf64-target.h
830
831 elf32-ia64.c : elfxx-ia64.c
832 rm -f elf32-ia64.c
833 sed -e s/NN/32/g < $(srcdir)/elfxx-ia64.c > elf32-ia64.new
834 mv -f elf32-ia64.new elf32-ia64.c
835
836 elf64-ia64.c : elfxx-ia64.c
837 rm -f elf64-ia64.c
838 sed -e s/NN/64/g < $(srcdir)/elfxx-ia64.c > elf64-ia64.new
839 mv -f elf64-ia64.new elf64-ia64.c
840
841 peigen.c : peXXigen.c
842 rm -f peigen.c
843 sed -e s/XX/pe/g < $(srcdir)/peXXigen.c > peigen.new
844 mv -f peigen.new peigen.c
845
846 pepigen.c : peXXigen.c
847 rm -f pepigen.c
848 sed -e s/XX/pep/g < $(srcdir)/peXXigen.c > pepigen.new
849 mv -f pepigen.new pepigen.c
850
851 pex64igen.c: peXXigen.c
852 rm -f pex64igen.c
853 sed -e s/XX/pex64/g < $(srcdir)/peXXigen.c > pex64igen.new
854 mv -f pex64igen.new pex64igen.c
855
856 BFD_H_DEPS= $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
857 LOCAL_H_DEPS= libbfd.h sysdep.h config.h
858 $(BFD32_LIBS) \
859 $(BFD64_LIBS) \
860 $(ALL_MACHINES) \
861 $(BFD32_BACKENDS) \
862 $(BFD64_BACKENDS) \
863 $(OPTIONAL_BACKENDS): $(BFD_H) $(BFD_H_DEPS) $(LOCAL_H_DEPS)
864
865 install-bfdlibLTLIBRARIES: @INSTALL_LIBBFD_TRUE@install_libbfd
866 @$(NORMAL_INSTALL)
867
868 uninstall-bfdlibLTLIBRARIES: @INSTALL_LIBBFD_TRUE@uninstall_libbfd
869 @$(NORMAL_UNINSTALL)
870
871 .PHONY: install_libbfd uninstall_libbfd
872 install_libbfd: $(bfdlib_LTLIBRARIES) $(BFD_H)
873 $(mkinstalldirs) $(DESTDIR)$(bfdlibdir)
874 $(mkinstalldirs) $(DESTDIR)$(bfdincludedir)
875 @list='$(bfdlib_LTLIBRARIES)'; for p in $$list; do \
876 if test -f $$p; then \
877 echo "$(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(bfdlibdir)/$$p"; \
878 $(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(bfdlibdir)/$$p; \
879 else :; fi; \
880 done
881 $(INSTALL_DATA) $(BFD_H) $(DESTDIR)$(bfdincludedir)/bfd.h
882 $(INSTALL_DATA) $(INCDIR)/ansidecl.h $(DESTDIR)$(bfdincludedir)/ansidecl.h
883 $(INSTALL_DATA) $(INCDIR)/symcat.h $(DESTDIR)$(bfdincludedir)/symcat.h
884 $(INSTALL_DATA) $(INCDIR)/bfdlink.h $(DESTDIR)$(bfdincludedir)/bfdlink.h
885
886 uninstall_libbfd:
887 list='$(bfdlib_LTLIBRARIES)'; for p in $$list; do \
888 $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(bfdlibdir)/$$p; \
889 done
890 rm -f $(DESTDIR)$(bfdincludedir)/bfd.h
891 rm -f $(DESTDIR)$(bfdincludedir)/ansidecl.h
892 rm -f $(DESTDIR)$(bfdincludedir)/symcat.h
893 rm -f $(DESTDIR)$(bfdincludedir)/bfdlink.h
894
895 host-aout.lo: Makefile
896
897 # The following program can be used to generate a simple config file
898 # which can be folded into an h-XXX file for a new host, with some editing.
899 aout-params.h: gen-aout
900 ./gen-aout host > aout-params.h
901 gen-aout: $(srcdir)/gen-aout.c Makefile
902 $(CC) -o gen-aout $(CFLAGS) $(LFLAGS) $(srcdir)/gen-aout.c
903
904 $(BFD_H): stmp-bfd-h ; @true
905
906 stmp-bfd-h: bfd-in3.h
907 rm -f bfd-tmp.h
908 cp bfd-in3.h bfd-tmp.h
909 $(SHELL) $(srcdir)/../move-if-change bfd-tmp.h $(BFD_H)
910 rm -f bfd-tmp.h
911 touch stmp-bfd-h
912
913 BFD_H_FILES = bfd-in.h init.c opncls.c libbfd.c section.c archures.c \
914 reloc.c syms.c bfd.c bfdio.c bfdwin.c \
915 archive.c corefile.c targets.c format.c compress.c
916 BFD64_H_FILES = archive64.c
917 LIBBFD_H_FILES = libbfd-in.h init.c libbfd.c bfdio.c bfdwin.c \
918 cache.c reloc.c archures.c elf.c
919 LIBCOFF_H_FILES = libcoff-in.h coffcode.h
920
921 # Could really use a "copy-if-change"...
922 headers:
923 (cd $(bfddocdir); $(MAKE) protos $(FLAGS_TO_PASS))
924 cp $(bfddocdir)/bfd.h bfd-in2.h-new
925 $(SHELL) $(srcdir)/../move-if-change bfd-in2.h-new $(srcdir)/bfd-in2.h
926 cp $(bfddocdir)/libbfd.h libbfd.h-new
927 $(SHELL) $(srcdir)/../move-if-change libbfd.h-new $(srcdir)/libbfd.h
928 cp $(bfddocdir)/libcoff.h libcoff.h-new
929 $(SHELL) $(srcdir)/../move-if-change libcoff.h-new $(srcdir)/libcoff.h
930
931 # We only rebuild the header files automatically if we have been
932 # configured with --enable-maintainer-mode.
933
934 $(srcdir)/bfd-in2.h: @MAINT@ stmp-bin2-h ; @true
935 stmp-bin2-h: $(BFD_H_FILES) $(BFD64_H_FILES)
936 (cd $(bfddocdir); $(MAKE) $(FLAGS_TO_PASS) bfd.h)
937 cp $(bfddocdir)/bfd.h bfd-in2.h-new
938 $(SHELL) $(srcdir)/../move-if-change bfd-in2.h-new $(srcdir)/bfd-in2.h
939 touch stmp-bin2-h
940
941 $(srcdir)/libbfd.h: @MAINT@ stmp-lbfd-h ; @true
942 stmp-lbfd-h: $(LIBBFD_H_FILES)
943 (cd $(bfddocdir); $(MAKE) $(FLAGS_TO_PASS) libbfd.h)
944 cp $(bfddocdir)/libbfd.h libbfd.h-new
945 $(SHELL) $(srcdir)/../move-if-change libbfd.h-new $(srcdir)/libbfd.h
946 touch stmp-lbfd-h
947
948 $(srcdir)/libcoff.h: @MAINT@ stmp-lcoff-h ; @true
949 stmp-lcoff-h: $(LIBCOFF_H_FILES)
950 (cd $(bfddocdir); $(MAKE) $(FLAGS_TO_PASS) libcoff.h)
951 cp $(bfddocdir)/libcoff.h libcoff.h-new
952 $(SHELL) $(srcdir)/../move-if-change libcoff.h-new $(srcdir)/libcoff.h
953 touch stmp-lcoff-h
954
955 MOSTLYCLEANFILES = ofiles stamp-ofiles
956
957 CLEANFILES = bfd.h dep.sed stmp-bfd-h DEP DEPA DEP1 DEP2 libbfd.a stamp-lib \
958 stmp-bin2-h stmp-lbfd-h stmp-lcoff-h
959
960 DISTCLEANFILES = $(BUILD_CFILES) $(BUILD_HFILES) libtool-soversion
961
962 bfdver.h: $(srcdir)/version.h $(srcdir)/Makefile.in
963 @echo "creating $@"
964 @bfd_version=`echo "$(VERSION)" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$$/\1\2\3\4\5/'` ;\
965 bfd_version_string="\"$(VERSION)\"" ;\
966 bfd_soversion="$(VERSION)" ;\
967 bfd_version_package="\"$(PKGVERSION)\"" ;\
968 report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\
969 if test "x$(RELEASE)" = x ; then \
970 bfd_version_date=`sed -n -e 's/.*DATE //p' < $(srcdir)/version.h` ;\
971 bfd_version_string="\"$(VERSION).$${bfd_version_date}\"" ;\
972 bfd_soversion="$(VERSION).$${bfd_version_date}" ;\
973 fi ;\
974 sed -e "s,@bfd_version@,$$bfd_version," \
975 -e "s,@bfd_version_string@,$$bfd_version_string," \
976 -e "s,@bfd_version_package@,$$bfd_version_package," \
977 -e "s,@report_bugs_to@,$$report_bugs_to," \
978 < $(srcdir)/version.h > $@; \
979 echo "$${bfd_soversion}" > libtool-soversion
This page took 0.04861 seconds and 5 git commands to generate.