.include "../../Makefile.inc1" .include "../Makefile.block1" LIB= bfd INTERNALLIB= true CONTRIBDIR= ${SRCDIR}/bfd .PATH: ${CONTRIBDIR} CFLAGS+= -I${SRCDIR}/include -I${CONTRIBDIR} -I${.CURDIR} -I${.OBJDIR} CFLAGS+= -DDEBUGDIR='"/usr/lib/debug"' # no clue why this is needed FLAGS_GROUPS= target plugins # BFD32_LIBS_CFILES SRCS= archive.c archures.c bfd.c bfdio.c \ cache.c coffgen.c corefile.c \ format.c init.c libbfd.c opncls.c reloc.c \ section.c syms.c targets.c hash.c linker.c \ srec.c binary.c tekhex.c ihex.c stabs.c stab-syms.c \ merge.c dwarf2.c simple.c compress.c verilog.c # only when USE_MMAP (--with-mmap) #SRCS+= bfdwin.c # from Makefile, BFD64_BACKENDS_CFILES (x86-64 specific) SRCS+= elf64-x86-64.c elf-ifunc.c elf-nacl.c elf64.c elf.c elflink.c \ elf-attrs.c elf-strtab.c elf-eh-frame.c dwarf1.c elf32-i386.c \ elf-vxworks.c elf32.c elf64-gen.c elf32-gen.c pei-x86_64.c \ pex64igen.c cofflink.c coff-bfd.c # ALL_MACHINES_CFILES SRCS+= cpu-i386.c cpu-l1om.c cpu-k1om.c # BFD64_LIBS_CFILES SRCS+= archive64.c VECTORS= x86_64_elf64_vec \ x86_64_pei_vec \ i386_elf32_vec \ iamcu_elf32_vec \ l1om_elf64_vec \ k1om_elf64_vec \ elf64_le_vec \ elf64_be_vec \ elf32_le_vec \ elf32_be_vec # plugin support mainly for LTO ar, nm, ranlib SRCS+= plugin.c VECTORS+= plugin_vec plugins_FLAGS+= -DBINDIR=\"${TOOLS_PREFIX}${BINDIR}\" plugins_FLAGS+= -DRELPLUGINDIR=\"/../bfd-plugins\" # standard one uses lib/bfd-plugins plugins_FLAGS_FILES= plugin.c DEFAULT_VECTOR= x86_64_elf64_vec ARCHITECTURES= bfd_i386_arch bfd_l1om_arch bfd_k1om_arch _selvec= .for _v in ${VECTORS} target_FLAGS+= -DHAVE_${_v} .if !empty(_selvec) _selvec+= , .endif _selvec+= &${_v} .endfor target_FLAGS+= -DSELECT_VECS='${_selvec}' target_FLAGS+= -DSELECT_ARCHITECTURES='${ARCHITECTURES:S/^/\&/:S/$/,/} 0' target_FLAGS+= -DDEFAULT_VECTOR=${DEFAULT_VECTOR} target_FLAGS_FILES= targets.c archures.c ${SRCS}: bfd.h targets.c: targmatch.h elf32-gen.c elf32-i386.c elf64-x86-64.c: elf32-target.h elf64-gen.c elf64-x86-64.c: elf64-target.h cache.c elf32-i386.c elf64-x86-64.c: bfd_stdint.h bfd_stdint.h: touch ${.TARGET} targmatch.h: config.bfd targmatch.sed sed -f ${CONTRIBDIR}/targmatch.sed < ${CONTRIBDIR}/config.bfd \ > ${.TARGET} elf32-target.h: elfxx-target.h sed -e s/NN/32/g < ${CONTRIBDIR}/elfxx-target.h > ${.TARGET} elf64-target.h: elfxx-target.h sed -e s/NN/64/g < ${CONTRIBDIR}/elfxx-target.h > ${.TARGET} pex64igen.c: peXXigen.c sed -e s/XX/pex64/g < ${CONTRIBDIR}/peXXigen.c > ${.TARGET} CLEANFILES= bfd_stdint.h bfd.h elf64-target.h elf32-target.h targmatch.h \ pex64igen.c .include