summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils
diff options
context:
space:
mode:
authorSimon J. Gerraty <sjg@FreeBSD.org>2015-05-27 01:19:58 +0000
committerSimon J. Gerraty <sjg@FreeBSD.org>2015-05-27 01:19:58 +0000
commit98e0ffaefb0f241cda3a72395d3be04192ae0d47 (patch)
tree55c065b6730aaac2afb6c29933ee6ec5fa4c4249 /gnu/usr.bin/binutils
parentb17ff922d4072ae132ece458f5b5d74a236880ac (diff)
parente81032ad243db32b8fd615b2d55ee94b9f6a5b6a (diff)
Notes
Diffstat (limited to 'gnu/usr.bin/binutils')
-rw-r--r--gnu/usr.bin/binutils/Makefile29
-rw-r--r--gnu/usr.bin/binutils/as/as.13
-rw-r--r--gnu/usr.bin/binutils/doc/Makefile30
-rw-r--r--gnu/usr.bin/binutils/doc/Makefile.depend12
-rw-r--r--gnu/usr.bin/binutils/doc/asconfig.texi90
-rw-r--r--gnu/usr.bin/binutils/ld/Makefile2
-rw-r--r--gnu/usr.bin/binutils/ld/Makefile.depend.host49
-rw-r--r--gnu/usr.bin/binutils/ld/ld.13
-rw-r--r--gnu/usr.bin/binutils/libbfd/Makefile.depend.host120
-rw-r--r--gnu/usr.bin/binutils/libbfd/bfd.h13
10 files changed, 225 insertions, 126 deletions
diff --git a/gnu/usr.bin/binutils/Makefile b/gnu/usr.bin/binutils/Makefile
index 1ba36a6a2660..1c863dfa7a33 100644
--- a/gnu/usr.bin/binutils/Makefile
+++ b/gnu/usr.bin/binutils/Makefile
@@ -1,7 +1,30 @@
# $FreeBSD$
-SUBDIR= libiberty libbfd libopcodes libbinutils \
- addr2line as ld nm objcopy objdump readelf \
- size strings strip doc
+.include <src.opts.mk>
+
+SUBDIR= doc\
+ libiberty \
+ libbfd \
+ libopcodes \
+ libbinutils \
+ ${_addr2line} \
+ as \
+ ld \
+ ${_nm} \
+ objcopy \
+ objdump \
+ ${_readelf} \
+ ${_size} \
+ ${_strings} \
+ ${_strip}
+
+.if ${MK_ELFTOOLCHAIN_TOOLS} == "no"
+_addr2line= addr2line
+_nm= nm
+_readelf= readelf
+_size= size
+_strings= strings
+_strip= strip
+.endif
.include <bsd.subdir.mk>
diff --git a/gnu/usr.bin/binutils/as/as.1 b/gnu/usr.bin/binutils/as/as.1
index 40ee7e43ea5c..d53610db7841 100644
--- a/gnu/usr.bin/binutils/as/as.1
+++ b/gnu/usr.bin/binutils/as/as.1
@@ -33,7 +33,7 @@
. ds R" ""
. ds C` ""
. ds C' ""
-'br\}
+\}
.el\{\
. ds -- \|\(em\|
. ds PI \(*p
@@ -107,7 +107,6 @@
.ds Ae A\h'-(\w'A'u*4/10)'E
. \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
. \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
diff --git a/gnu/usr.bin/binutils/doc/Makefile b/gnu/usr.bin/binutils/doc/Makefile
index 38c1b8b33ab7..ba17ab997ae3 100644
--- a/gnu/usr.bin/binutils/doc/Makefile
+++ b/gnu/usr.bin/binutils/doc/Makefile
@@ -2,30 +2,10 @@
.include "../Makefile.inc0"
-.PATH: ${SRCDIR}/gas/doc ${SRCDIR}/ld ${SRCDIR}/bfd/doc
+.PATH: ${SRCDIR}/gas/doc \
+ ${SRCDIR}/ld \
+ ${SRCDIR}/binutils/doc
-INFO= as ld binutils
-INFOSECTION= "Programming & development tools."
-INFOENTRY_as= "* As: (as). The GNU assembler."
-INFOENTRY_ld= "* Ld: (ld). The GNU linker."
-INFOENTRY_binutils= "* Binutils: (binutils). The GNU Binary Utilities."
+MAN= ld.7 ldint.7 as.7 binutils.7
-MAKEINFOFLAGS+= --no-validate
-MAKEINFOFLAGS+= -I ${SRCDIR}/libiberty
-MAKEINFOFLAGS+= -I ${SRCDIR}/bfd/doc
-
-CLEANFILES= bfdver.texi configdoc.texi config.texi gasver.texi ldver.texi
-
-as.info: as.texinfo asconfig.texi bfdver.texi c-i386.texi gasver.texi
-ld.info: ld.texinfo bfdsumm.texi ldver.texi configdoc.texi
-
-configdoc.texi: gen-doc.texi
- ln -sf ${.ALLSRC} ${.TARGET}
-
-.PATH: ${SRCDIR}/binutils/doc
-binutils.info: binutils.texi config.texi
-
-bfdver.texi config.texi gasver.texi ldver.texi:
- echo "@set VERSION ${VERSION}" > ${.TARGET}
-
-.include <bsd.info.mk>
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/binutils/doc/Makefile.depend b/gnu/usr.bin/binutils/doc/Makefile.depend
new file mode 100644
index 000000000000..57b7e10c3d71
--- /dev/null
+++ b/gnu/usr.bin/binutils/doc/Makefile.depend
@@ -0,0 +1,12 @@
+# Autogenerated - do NOT edit!
+
+DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,}
+
+DIRDEPS = \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif
diff --git a/gnu/usr.bin/binutils/doc/asconfig.texi b/gnu/usr.bin/binutils/doc/asconfig.texi
deleted file mode 100644
index f3fcf349faf3..000000000000
--- a/gnu/usr.bin/binutils/doc/asconfig.texi
+++ /dev/null
@@ -1,90 +0,0 @@
-@c $FreeBSD$
-@c Copyright 1992, 1993, 1994, 1996, 1997, 1999, 2000, 2001, 2002,
-@c 2003, 2005
-@c Free Software Foundation, Inc.
-@c This file is part of the documentation for the GAS manual
-
-@c Configuration settings for all-inclusive version of manual
-
-@c switches:------------------------------------------------------------
-@c Properties of the manual
-@c ========================
-@c Discuss all architectures?
-@clear ALL-ARCH
-@c A generic form of manual (not tailored to specific target)?
-@clear GENERIC
-@c Include text on assembler internals?
-@set INTERNALS
-@c Many object formats supported in this config?
-@clear MULTI-OBJ
-
-@c Object formats of interest
-@c ==========================
-@clear AOUT
-@clear COFF
-@set ELF
-@clear SOM
-
-@c CPUs of interest
-@c ================
-@clear ALPHA
-@clear ARC
-@set ARM
-@clear BFIN
-@clear CRIS
-@clear D10V
-@clear D30V
-@clear H8/300
-@clear HPPA
-@clear I370
-@set I80386
-@clear I860
-@clear I960
-@set IA64
-@clear IP2K
-@clear M32C
-@clear M32R
-@clear xc16x
-@clear M68HC11
-@clear M680X0
-@clear MCORE
-@set MIPS
-@clear MMIX
-@clear MS1
-@clear MSP430
-@clear PDP11
-@clear PJ
-@set PPC
-@clear SH
-@set SPARC
-@clear TIC54X
-@clear V850
-@clear VAX
-@clear XTENSA
-@clear Z80
-@clear Z8000
-
-@c Does this version of the assembler use the difference-table kludge?
-@clear DIFF-TBL-KLUGE
-
-@c Do all machines described use IEEE floating point?
-@clear IEEEFLOAT
-
-@c Is a word 32 bits, or 16?
-@set W32
-@clear W16
-
-@c Do symbols have different characters than usual?
-@clear SPECIAL-SYMS
-
-@c strings:------------------------------------------------------------
-@c Name of the assembler:
-@set AS as
-@c Name of C compiler:
-@set GCC gcc
-@c Name of linker:
-@set LD ld
-@c Text for target machine (best not used in generic case; but just in case...)
-@set TARGET machine specific
-@c Name of object format NOT SET in generic version
-@set OBJ-NAME ELF
diff --git a/gnu/usr.bin/binutils/ld/Makefile b/gnu/usr.bin/binutils/ld/Makefile
index 6c59945808a2..d0946f338f2e 100644
--- a/gnu/usr.bin/binutils/ld/Makefile
+++ b/gnu/usr.bin/binutils/ld/Makefile
@@ -70,4 +70,6 @@ afterinstall:
${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
${LDSCRIPTS:S|^|ldscripts/|} ${DESTDIR}${SCRIPTDIR}
+GENDIRDEPS_FILTER.host+= Nusr.bin/yacc
+
.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/binutils/ld/Makefile.depend.host b/gnu/usr.bin/binutils/ld/Makefile.depend.host
new file mode 100644
index 000000000000..41a9683ec630
--- /dev/null
+++ b/gnu/usr.bin/binutils/ld/Makefile.depend.host
@@ -0,0 +1,49 @@
+# Autogenerated - do NOT edit!
+
+DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,}
+
+DIRDEPS = \
+ gnu/usr.bin/binutils/libbfd \
+ gnu/usr.bin/binutils/libiberty \
+ usr.bin/yacc \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+eelf_i386_fbsd.o: eelf_i386_fbsd.c
+eelf_i386_fbsd.o: ldgram.h
+eelf_i386_fbsd.po: eelf_i386_fbsd.c
+eelf_i386_fbsd.po: ldgram.h
+eelf_x86_64_fbsd.o: eelf_x86_64_fbsd.c
+eelf_x86_64_fbsd.o: ldgram.h
+eelf_x86_64_fbsd.po: eelf_x86_64_fbsd.c
+eelf_x86_64_fbsd.po: ldgram.h
+ldctor.o: ldgram.h
+ldctor.po: ldgram.h
+ldemul.o: ldemul-list.h
+ldemul.po: ldemul-list.h
+ldexp.o: ldgram.h
+ldexp.po: ldgram.h
+ldfile.o: ldgram.h
+ldfile.po: ldgram.h
+ldgram.o: ldgram.c
+ldgram.po: ldgram.c
+ldlang.o: ldgram.h
+ldlang.po: ldgram.h
+ldlex.o: ldgram.h
+ldlex.o: ldlex.c
+ldlex.po: ldgram.h
+ldlex.po: ldlex.c
+ldmain.o: ldgram.h
+ldmain.po: ldgram.h
+ldmisc.o: ldgram.h
+ldmisc.po: ldgram.h
+ldwrite.o: ldgram.h
+ldwrite.po: ldgram.h
+lexsup.o: ldgram.h
+lexsup.po: ldgram.h
+mri.o: ldgram.h
+mri.po: ldgram.h
+.endif
diff --git a/gnu/usr.bin/binutils/ld/ld.1 b/gnu/usr.bin/binutils/ld/ld.1
index a7cbdffd0cd1..04594173b39b 100644
--- a/gnu/usr.bin/binutils/ld/ld.1
+++ b/gnu/usr.bin/binutils/ld/ld.1
@@ -33,7 +33,7 @@
. ds R" ""
. ds C` ""
. ds C' ""
-'br\}
+\}
.el\{\
. ds -- \|\(em\|
. ds PI \(*p
@@ -107,7 +107,6 @@
.ds Ae A\h'-(\w'A'u*4/10)'E
. \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
. \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
diff --git a/gnu/usr.bin/binutils/libbfd/Makefile.depend.host b/gnu/usr.bin/binutils/libbfd/Makefile.depend.host
new file mode 100644
index 000000000000..c5f94aaf36a9
--- /dev/null
+++ b/gnu/usr.bin/binutils/libbfd/Makefile.depend.host
@@ -0,0 +1,120 @@
+# Autogenerated - do NOT edit!
+
+DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,}
+
+DIRDEPS = \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+archive.o: config.h
+archive.po: config.h
+archive64.o: config.h
+archive64.po: config.h
+archures.o: config.h
+archures.po: config.h
+bfd.o: bfdver.h
+bfd.o: config.h
+bfd.po: bfdver.h
+bfd.po: config.h
+bfdio.o: config.h
+bfdio.po: config.h
+bfdwin.o: config.h
+bfdwin.po: config.h
+binary.o: config.h
+binary.po: config.h
+cache.o: config.h
+cache.po: config.h
+coffgen.o: config.h
+coffgen.po: config.h
+cofflink.o: config.h
+cofflink.po: config.h
+corefile.o: config.h
+corefile.po: config.h
+cpu-i386.o: config.h
+cpu-i386.po: config.h
+dwarf1.o: config.h
+dwarf1.po: config.h
+dwarf2.o: config.h
+dwarf2.po: config.h
+efi-app-ia32.o: config.h
+efi-app-ia32.po: config.h
+efi-app-x86_64.o: config.h
+efi-app-x86_64.po: config.h
+elf-attrs.o: config.h
+elf-attrs.po: config.h
+elf-eh-frame.o: config.h
+elf-eh-frame.po: config.h
+elf-strtab.o: config.h
+elf-strtab.po: config.h
+elf-vxworks.o: config.h
+elf-vxworks.po: config.h
+elf.o: config.h
+elf.po: config.h
+elf32-i386.o: config.h
+elf32-i386.o: elf32-target.h
+elf32-i386.po: config.h
+elf32-i386.po: elf32-target.h
+elf32.o: config.h
+elf32.po: config.h
+elf64-gen.o: config.h
+elf64-gen.o: elf64-target.h
+elf64-gen.po: config.h
+elf64-gen.po: elf64-target.h
+elf64-x86-64.o: config.h
+elf64-x86-64.o: elf64-target.h
+elf64-x86-64.po: config.h
+elf64-x86-64.po: elf64-target.h
+elf64.o: config.h
+elf64.po: config.h
+elflink.o: config.h
+elflink.po: config.h
+format.o: config.h
+format.po: config.h
+hash.o: config.h
+hash.po: config.h
+ihex.o: config.h
+ihex.po: config.h
+init.o: config.h
+init.po: config.h
+libbfd.o: config.h
+libbfd.po: config.h
+linker.o: config.h
+linker.po: config.h
+merge.o: config.h
+merge.po: config.h
+opncls.o: config.h
+opncls.po: config.h
+peigen.o: config.h
+peigen.o: peigen.c
+peigen.po: config.h
+peigen.po: peigen.c
+pepigen.o: config.h
+pepigen.o: pepigen.c
+pepigen.po: config.h
+pepigen.po: pepigen.c
+pex64igen.o: config.h
+pex64igen.o: pex64igen.c
+pex64igen.po: config.h
+pex64igen.po: pex64igen.c
+reloc.o: config.h
+reloc.po: config.h
+section.o: config.h
+section.po: config.h
+simple.o: config.h
+simple.po: config.h
+srec.o: config.h
+srec.po: config.h
+stabs.o: config.h
+stabs.po: config.h
+syms.o: config.h
+syms.po: config.h
+targets.o: config.h
+targets.o: targmatch.h
+targets.po: config.h
+targets.po: targmatch.h
+tekhex.o: config.h
+tekhex.po: config.h
+.endif
diff --git a/gnu/usr.bin/binutils/libbfd/bfd.h b/gnu/usr.bin/binutils/libbfd/bfd.h
index f65123351d7c..fee147c23375 100644
--- a/gnu/usr.bin/binutils/libbfd/bfd.h
+++ b/gnu/usr.bin/binutils/libbfd/bfd.h
@@ -1386,6 +1386,9 @@ typedef struct bfd_section
/* Nonzero if this section has TLS related relocations. */
unsigned int has_tls_reloc:1;
+ /* Nonzero if this section has a call to __tls_get_addr. */
+ unsigned int has_tls_get_addr_call:1;
+
/* Nonzero if this section has a gp reloc. */
unsigned int has_gp_reloc:1;
@@ -1646,11 +1649,11 @@ extern asection bfd_ind_section;
/* segment_mark, sec_info_type, use_rela_p, has_tls_reloc, */ \
0, 0, 0, 0, \
\
- /* has_gp_reloc, need_finalize_relax, reloc_done, */ \
- 0, 0, 0, \
+ /* has_tls_get_addr_call, has_gp_reloc, need_finalize_relax, */ \
+ 0, 0, 0, \
\
- /* vma, lma, size, rawsize */ \
- 0, 0, 0, 0, \
+ /* reloc_done, vma, lma, size, rawsize */ \
+ 0, 0, 0, 0, 0, \
\
/* output_offset, output_section, alignment_power, */ \
0, (struct bfd_section *) &SEC, 0, \
@@ -2903,6 +2906,8 @@ in the instruction. */
/* PowerPC and PowerPC64 thread-local storage relocations. */
BFD_RELOC_PPC_TLS,
+ BFD_RELOC_PPC_TLSGD,
+ BFD_RELOC_PPC_TLSLD,
BFD_RELOC_PPC_DTPMOD,
BFD_RELOC_PPC_TPREL16,
BFD_RELOC_PPC_TPREL16_LO,