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