svn commit: r280932 - in head/contrib/elftoolchain: addr2line common cxxfilt elfcopy libdwarf libelf libelftc nm readelf size strings

Ed Maste emaste at FreeBSD.org
Wed Apr 1 01:08:17 UTC 2015


Author: emaste
Date: Wed Apr  1 01:08:01 2015
New Revision: 280932
URL: https://svnweb.freebsd.org/changeset/base/280932

Log:
  Update elftoolchain to upstream revision 3179
  
  Some notable changes:
  - libdwarf: Fixed DWARF4 line section
  - elfcopy: Implement --localize-hidden
  - nm: handle object name referenced by DW_AT_specification
  - elfcopy: Add --strip-dwo and --extract-dwo options for split DWARF
  - readelf: add remaining arm64 dynamic relocation names
  - nm: Avoid integer overflow in value comparison
  
  Relnotes:	Yes
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/contrib/elftoolchain/addr2line/addr2line.c
  head/contrib/elftoolchain/common/_elftc.h
  head/contrib/elftoolchain/common/elfdefinitions.h
  head/contrib/elftoolchain/common/native-elf-format
  head/contrib/elftoolchain/cxxfilt/cxxfilt.c
  head/contrib/elftoolchain/elfcopy/archive.c
  head/contrib/elftoolchain/elfcopy/ascii.c
  head/contrib/elftoolchain/elfcopy/binary.c
  head/contrib/elftoolchain/elfcopy/elfcopy.1
  head/contrib/elftoolchain/elfcopy/elfcopy.h
  head/contrib/elftoolchain/elfcopy/main.c
  head/contrib/elftoolchain/elfcopy/sections.c
  head/contrib/elftoolchain/elfcopy/segments.c
  head/contrib/elftoolchain/elfcopy/symbols.c
  head/contrib/elftoolchain/libdwarf/_libdwarf.h
  head/contrib/elftoolchain/libdwarf/libdwarf.h
  head/contrib/elftoolchain/libdwarf/libdwarf_lineno.c
  head/contrib/elftoolchain/libelf/_libelf.h
  head/contrib/elftoolchain/libelf/_libelf_config.h
  head/contrib/elftoolchain/libelf/elf_data.c
  head/contrib/elftoolchain/libelf/elf_end.c
  head/contrib/elftoolchain/libelf/elf_errmsg.c
  head/contrib/elftoolchain/libelf/elf_errno.c
  head/contrib/elftoolchain/libelf/elf_fill.c
  head/contrib/elftoolchain/libelf/elf_flag.c
  head/contrib/elftoolchain/libelf/elf_getarhdr.c
  head/contrib/elftoolchain/libelf/elf_getarsym.c
  head/contrib/elftoolchain/libelf/elf_getbase.c
  head/contrib/elftoolchain/libelf/elf_getident.c
  head/contrib/elftoolchain/libelf/elf_hash.c
  head/contrib/elftoolchain/libelf/elf_kind.c
  head/contrib/elftoolchain/libelf/elf_next.c
  head/contrib/elftoolchain/libelf/elf_phnum.c
  head/contrib/elftoolchain/libelf/elf_rand.c
  head/contrib/elftoolchain/libelf/elf_rawfile.c
  head/contrib/elftoolchain/libelf/elf_scn.c
  head/contrib/elftoolchain/libelf/elf_shnum.c
  head/contrib/elftoolchain/libelf/elf_shstrndx.c
  head/contrib/elftoolchain/libelf/elf_version.c
  head/contrib/elftoolchain/libelf/gelf.h
  head/contrib/elftoolchain/libelf/gelf_cap.c
  head/contrib/elftoolchain/libelf/gelf_checksum.c
  head/contrib/elftoolchain/libelf/gelf_dyn.c
  head/contrib/elftoolchain/libelf/gelf_ehdr.c
  head/contrib/elftoolchain/libelf/gelf_fsize.c
  head/contrib/elftoolchain/libelf/gelf_getclass.c
  head/contrib/elftoolchain/libelf/gelf_move.c
  head/contrib/elftoolchain/libelf/gelf_phdr.c
  head/contrib/elftoolchain/libelf/gelf_rel.c
  head/contrib/elftoolchain/libelf/gelf_rela.c
  head/contrib/elftoolchain/libelf/gelf_shdr.c
  head/contrib/elftoolchain/libelf/gelf_sym.c
  head/contrib/elftoolchain/libelf/gelf_syminfo.c
  head/contrib/elftoolchain/libelf/gelf_symshndx.c
  head/contrib/elftoolchain/libelf/gelf_xlate.c
  head/contrib/elftoolchain/libelf/libelf.h
  head/contrib/elftoolchain/libelf/libelf_align.c
  head/contrib/elftoolchain/libelf/libelf_allocate.c
  head/contrib/elftoolchain/libelf/libelf_ar.c
  head/contrib/elftoolchain/libelf/libelf_ar_util.c
  head/contrib/elftoolchain/libelf/libelf_checksum.c
  head/contrib/elftoolchain/libelf/libelf_convert.m4
  head/contrib/elftoolchain/libelf/libelf_data.c
  head/contrib/elftoolchain/libelf/libelf_ehdr.c
  head/contrib/elftoolchain/libelf/libelf_extended.c
  head/contrib/elftoolchain/libelf/libelf_msize.m4
  head/contrib/elftoolchain/libelf/libelf_phdr.c
  head/contrib/elftoolchain/libelf/libelf_shdr.c
  head/contrib/elftoolchain/libelf/libelf_xlate.c
  head/contrib/elftoolchain/libelftc/_libelftc.h
  head/contrib/elftoolchain/libelftc/elftc_bfdtarget.c
  head/contrib/elftoolchain/libelftc/elftc_demangle.c
  head/contrib/elftoolchain/libelftc/libelftc.h
  head/contrib/elftoolchain/libelftc/libelftc_bfdtarget.c
  head/contrib/elftoolchain/nm/nm.c
  head/contrib/elftoolchain/readelf/readelf.c
  head/contrib/elftoolchain/size/size.c
  head/contrib/elftoolchain/strings/strings.c
Directory Properties:
  head/contrib/elftoolchain/   (props changed)

Modified: head/contrib/elftoolchain/addr2line/addr2line.c
==============================================================================
--- head/contrib/elftoolchain/addr2line/addr2line.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/addr2line/addr2line.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/param.h>
 #include <dwarf.h>
 #include <err.h>
@@ -40,7 +39,7 @@
 
 #include "_elftc.h"
 
-ELFTC_VCSID("$Id: addr2line.c 3148 2015-02-15 18:47:39Z emaste $");
+ELFTC_VCSID("$Id: addr2line.c 3174 2015-03-27 17:13:41Z emaste $");
 
 static struct option longopts[] = {
 	{"target" , required_argument, NULL, 'b'},

Modified: head/contrib/elftoolchain/common/_elftc.h
==============================================================================
--- head/contrib/elftoolchain/common/_elftc.h	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/common/_elftc.h	Wed Apr  1 01:08:01 2015	(r280932)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: _elftc.h 3139 2015-01-05 03:17:06Z kaiwang27 $
+ * $Id: _elftc.h 3175 2015-03-27 17:21:24Z emaste $
  */
 
 /**
@@ -294,7 +294,8 @@ struct name {							\
 #define	ELFTC_VCSID(ID)		__FBSDID(ID)
 #endif
 
-#if defined(__linux__) || defined(__GNU__) || defined(__GLIBC__)
+#if defined(__APPLE__) || defined(__GLIBC__) || defined(__GNU__) || \
+    defined(__linux__)
 #if defined(__GNUC__)
 #define	ELFTC_VCSID(ID)		__asm__(".ident\t\"" ID "\"")
 #else
@@ -330,8 +331,8 @@ struct name {							\
 
 #ifndef	ELFTC_GETPROGNAME
 
-#if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__minix) || \
-    defined(__NetBSD__)
+#if defined(__APPLE__) || defined(__DragonFly__) || defined(__FreeBSD__) || \
+    defined(__minix) || defined(__NetBSD__)
 
 #include <stdlib.h>
 
@@ -340,7 +341,7 @@ struct name {							\
 #endif	/* __DragonFly__ || __FreeBSD__ || __minix || __NetBSD__ */
 
 
-#if defined(__GLIBC__)
+#if defined(__GLIBC__) || defined(__linux__)
 
 /*
  * GLIBC based systems have a global 'char *' pointer referencing
@@ -350,7 +351,7 @@ extern const char *program_invocation_sh
 
 #define	ELFTC_GETPROGNAME()	program_invocation_short_name
 
-#endif	/* __GLIBC__ */
+#endif	/* __GLIBC__ || __linux__ */
 
 
 #if defined(__OpenBSD__)
@@ -368,6 +369,21 @@ extern const char *__progname;
  ** Per-OS configuration.
  **/
 
+#if defined(__APPLE__)
+
+#include <machine/endian.h>
+#define	roundup2	roundup
+
+#define	ELFTC_BYTE_ORDER			_BYTE_ORDER
+#define	ELFTC_BYTE_ORDER_LITTLE_ENDIAN		_LITTLE_ENDIAN
+#define	ELFTC_BYTE_ORDER_BIG_ENDIAN		_BIG_ENDIAN
+
+#define	ELFTC_HAVE_MMAP				1
+#define	ELFTC_HAVE_STRMODE			1
+
+#endif /* __APPLE__ */
+
+
 #if defined(__DragonFly__)
 
 #include <osreldate.h>
@@ -381,7 +397,7 @@ extern const char *__progname;
 
 #endif
 
-#if defined(__GLIBC__)
+#if defined(__GLIBC__) || defined(__linux__)
 
 #include <endian.h>
 
@@ -401,7 +417,7 @@ extern const char *__progname;
 
 #define	roundup2	roundup
 
-#endif	/* __GLIBC__ */
+#endif	/* __GLIBC__ || __linux__ */
 
 
 #if defined(__FreeBSD__)

Modified: head/contrib/elftoolchain/common/elfdefinitions.h
==============================================================================
--- head/contrib/elftoolchain/common/elfdefinitions.h	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/common/elfdefinitions.h	Wed Apr  1 01:08:01 2015	(r280932)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: elfdefinitions.h 3149 2015-02-15 19:00:06Z emaste $
+ * $Id: elfdefinitions.h 3178 2015-03-30 18:29:13Z emaste $
  */
 
 /*
@@ -171,7 +171,7 @@ _ELF_DEFINE_DT(DT_MOVEENT,          0x6F
 	"size of DT_MOVETAB entries")					\
 _ELF_DEFINE_DT(DT_MOVESZ,           0x6FFFFDFBUL,			\
 	"total size of the MOVETAB table")				\
-_ELF_DEFINE_DT(DT_FEATURE_1,        0x6FFFFDFCUL, "feature values")	\
+_ELF_DEFINE_DT(DT_FEATURE,          0x6FFFFDFCUL, "feature values")	\
 _ELF_DEFINE_DT(DT_POSFLAG_1,        0x6FFFFDFDUL,			\
 	"dynamic position flags")					\
 _ELF_DEFINE_DT(DT_SYMINSZ,          0x6FFFFDFEUL,			\

Modified: head/contrib/elftoolchain/common/native-elf-format
==============================================================================
--- head/contrib/elftoolchain/common/native-elf-format	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/common/native-elf-format	Wed Apr  1 01:08:01 2015	(r280932)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $Id: native-elf-format 2064 2011-10-26 15:12:32Z jkoshy $
+# $Id: native-elf-format 3167 2015-02-24 19:10:08Z emaste $
 #
 # Find the native ELF format for a host platform by compiling a
 # test object and examining the resulting object.
@@ -19,7 +19,7 @@ touch ${tmp_c}
 echo "/* Generated by ${program} on `date` */"
 
 cc -c ${tmp_c} -o ${tmp_o}
-readelf -h ${tmp_o} | awk '
+LC_ALL=C readelf -h ${tmp_o} | awk '
 $1 ~ "Class:" {
         sub("ELF","",$2); elfclass = $2;
     }

Modified: head/contrib/elftoolchain/cxxfilt/cxxfilt.c
==============================================================================
--- head/contrib/elftoolchain/cxxfilt/cxxfilt.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/cxxfilt/cxxfilt.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/param.h>
 #include <ctype.h>
 #include <err.h>
@@ -36,7 +35,7 @@
 
 #include "_elftc.h"
 
-ELFTC_VCSID("$Id: cxxfilt.c 2185 2011-11-19 16:07:16Z jkoshy $");
+ELFTC_VCSID("$Id: cxxfilt.c 3174 2015-03-27 17:13:41Z emaste $");
 
 #define	STRBUFSZ	8192
 

Modified: head/contrib/elftoolchain/elfcopy/archive.c
==============================================================================
--- head/contrib/elftoolchain/elfcopy/archive.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/archive.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,8 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <sys/param.h>
 #include <sys/stat.h>
 #include <err.h>
@@ -40,7 +38,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: archive.c 3102 2014-10-29 21:09:01Z jkoshy $");
+ELFTC_VCSID("$Id: archive.c 3174 2015-03-27 17:13:41Z emaste $");
 
 #define _ARMAG_LEN 8		/* length of ar magic string */
 #define _ARHDR_LEN 60		/* length of ar header */

Modified: head/contrib/elftoolchain/elfcopy/ascii.c
==============================================================================
--- head/contrib/elftoolchain/elfcopy/ascii.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/ascii.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/param.h>
 #include <ctype.h>
 #include <err.h>
@@ -37,7 +36,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: ascii.c 2358 2011-12-19 18:22:32Z kaiwang27 $");
+ELFTC_VCSID("$Id: ascii.c 3177 2015-03-30 18:19:41Z emaste $");
 
 static void append_data(struct section *s, const void *buf, size_t sz);
 static char hex_digit(uint8_t n);

Modified: head/contrib/elftoolchain/elfcopy/binary.c
==============================================================================
--- head/contrib/elftoolchain/elfcopy/binary.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/binary.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/param.h>
 #include <sys/stat.h>
 #include <err.h>
@@ -36,7 +35,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: binary.c 2358 2011-12-19 18:22:32Z kaiwang27 $");
+ELFTC_VCSID("$Id: binary.c 3174 2015-03-27 17:13:41Z emaste $");
 
 /*
  * Convert ELF object to `binary'. Sections with SHF_ALLOC flag set

Modified: head/contrib/elftoolchain/elfcopy/elfcopy.1
==============================================================================
--- head/contrib/elftoolchain/elfcopy/elfcopy.1	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/elfcopy.1	Wed Apr  1 01:08:01 2015	(r280932)
@@ -21,9 +21,9 @@
 .\" out of the use of this software, even if advised of the possibility of
 .\" such damage.
 .\"
-.\" $Id: elfcopy.1 2373 2011-12-30 07:13:44Z jkoshy $
+.\" $Id: elfcopy.1 3173 2015-03-27 16:46:13Z emaste $
 .\"
-.Dd October 03, 2011
+.Dd March 27, 2015
 .Os
 .Dt ELFCOPY 1
 .Sh NAME
@@ -63,7 +63,9 @@
 .Op Fl -adjust-warnings | Fl -change-warnings
 .Op Fl -change-section-lma Ar section Ns {+|-|=} Ns Ar val
 .Op Fl -change-section-vma Ar section Ns {+|-|=} Ns Ar val
+.Op Fl -extract-dwo
 .Op Fl -gap-fill Ns = Ns Ar val
+.Op Fl -localize-hidden
 .Op Fl -no-adjust-warnings | Fl -no-change-warnings
 .Op Fl -only-keep-debug
 .Op Fl -pad-to Ns = Ns Ar address
@@ -75,6 +77,7 @@
 .Op Fl -set-start Ns = Ns Ar address
 .Op Fl -srec-forceS3
 .Op Fl -srec-len Ns = Ns Ar val
+.Op Fl -strip-dwo
 .Op Fl -strip-unneeded
 .Ar infile
 .Op Ar outfile
@@ -220,10 +223,15 @@ Depending on the operator specified, the
 .Ar val
 will be used as an increment, a decrement or as the new value
 of the virtual memory address.
+.It Fl -extract-dwo
+Copy only .dwo debug sections to the output file.
 .It Fl -gap-fill Ns = Ns Ar val
 Fill the gaps between sections with the byte value specified by
 the argument
 .Ar val .
+.It Fl -localize-hidden
+Make all hidden symbols local to the output file.
+This includes symbols with internal visiblity.
 .It Fl -no-adjust-warnings | Fl -no-change-warnings
 Do not issue a warning if the section specified by the options
 .Fl -change-section-address ,
@@ -304,6 +312,8 @@ Set the maximum length of an S-record li
 .Ar val .
 This option is only meaningful when the output target is set to
 .Dq srec .
+.It Fl -strip-dwo
+Do not copy .dwo debug sections to the output file.
 .It Fl -strip-unneeded
 Do not copy symbols that are not needed for relocation processing.
 .El

Modified: head/contrib/elftoolchain/elfcopy/elfcopy.h
==============================================================================
--- head/contrib/elftoolchain/elfcopy/elfcopy.h	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/elfcopy.h	Wed Apr  1 01:08:01 2015	(r280932)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: elfcopy.h 3134 2014-12-23 10:43:59Z kaiwang27 $
+ * $Id: elfcopy.h 3173 2015-03-27 16:46:13Z emaste $
  */
 
 #include <sys/queue.h>
@@ -190,7 +190,9 @@ struct elfcopy {
 		STRIP_NONE = 0,
 		STRIP_ALL,
 		STRIP_DEBUG,
+		STRIP_DWO,
 		STRIP_NONDEBUG,
+		STRIP_NONDWO,
 		STRIP_UNNEEDED
 	} strip;
 
@@ -216,6 +218,7 @@ struct elfcopy {
 #define	SEC_REMOVE	0x00800000U
 #define	SEC_COPY	0x01000000U
 #define	DISCARD_LLABEL	0x02000000U
+#define	LOCALIZE_HIDDEN	0x04000000U
 
 	int		 flags;		/* elfcopy run control flags. */
 	int64_t		 change_addr;	/* Section address adjustment. */

Modified: head/contrib/elftoolchain/elfcopy/main.c
==============================================================================
--- head/contrib/elftoolchain/elfcopy/main.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/main.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/param.h>
 #include <sys/stat.h>
 
@@ -40,7 +39,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: main.c 3156 2015-02-15 21:40:01Z emaste $");
+ELFTC_VCSID("$Id: main.c 3174 2015-03-27 17:13:41Z emaste $");
 
 enum options
 {
@@ -57,9 +56,11 @@ enum options
 	ECP_GLOBALIZE_SYMBOLS,
 	ECP_KEEP_SYMBOLS,
 	ECP_KEEP_GLOBAL_SYMBOLS,
+	ECP_LOCALIZE_HIDDEN,
 	ECP_LOCALIZE_SYMBOLS,
 	ECP_NO_CHANGE_WARN,
 	ECP_ONLY_DEBUG,
+	ECP_ONLY_DWO,
 	ECP_PAD_TO,
 	ECP_PREFIX_ALLOC,
 	ECP_PREFIX_SEC,
@@ -72,6 +73,7 @@ enum options
 	ECP_SET_START,
 	ECP_SREC_FORCE_S3,
 	ECP_SREC_LEN,
+	ECP_STRIP_DWO,
 	ECP_STRIP_SYMBOLS,
 	ECP_STRIP_UNNEEDED,
 	ECP_WEAKEN_ALL,
@@ -124,6 +126,7 @@ static struct option elfcopy_longopts[] 
 	{"change-warnings", no_argument, NULL, ECP_CHANGE_WARN},
 	{"discard-all", no_argument, NULL, 'x'},
 	{"discard-locals", no_argument, NULL, 'X'},
+	{"extract-dwo", no_argument, NULL, ECP_ONLY_DWO},
 	{"gap-fill", required_argument, NULL, ECP_GAP_FILL},
 	{"globalize-symbol", required_argument, NULL, ECP_GLOBALIZE_SYMBOL},
 	{"globalize-symbols", required_argument, NULL, ECP_GLOBALIZE_SYMBOLS},
@@ -134,6 +137,7 @@ static struct option elfcopy_longopts[] 
 	{"keep-global-symbol", required_argument, NULL, 'G'},
 	{"keep-global-symbols", required_argument, NULL,
 	 ECP_KEEP_GLOBAL_SYMBOLS},
+	{"localize-hidden", no_argument, NULL, ECP_LOCALIZE_HIDDEN},
 	{"localize-symbol", required_argument, NULL, 'L'},
 	{"localize-symbols", required_argument, NULL, ECP_LOCALIZE_SYMBOLS},
 	{"no-adjust-warnings", no_argument, NULL, ECP_NO_CHANGE_WARN},
@@ -157,6 +161,7 @@ static struct option elfcopy_longopts[] 
 	{"srec-len", required_argument, NULL, ECP_SREC_LEN},
 	{"strip-all", no_argument, NULL, 'S'},
 	{"strip-debug", no_argument, 0, 'g'},
+	{"strip-dwo", no_argument, NULL, ECP_STRIP_DWO},
 	{"strip-symbol", required_argument, NULL, 'N'},
 	{"strip-symbols", required_argument, NULL, ECP_STRIP_SYMBOLS},
 	{"strip-unneeded", no_argument, NULL, ECP_STRIP_UNNEEDED},
@@ -348,6 +353,7 @@ create_elf(struct elfcopy *ecp)
 	if (ecp->strip == STRIP_DEBUG ||
 	    ecp->strip == STRIP_UNNEEDED ||
 	    ecp->flags & WEAKEN_ALL ||
+	    ecp->flags & LOCALIZE_HIDDEN ||
 	    ecp->flags & DISCARD_LOCAL ||
 	    ecp->flags & DISCARD_LLABEL ||
 	    ecp->prefix_sym != NULL ||
@@ -870,6 +876,9 @@ elfcopy_main(struct elfcopy *ecp, int ar
 		case ECP_KEEP_GLOBAL_SYMBOLS:
 			parse_symlist_file(ecp, optarg, SYMOP_KEEPG);
 			break;
+		case ECP_LOCALIZE_HIDDEN:
+			ecp->flags |= LOCALIZE_HIDDEN;
+			break;
 		case ECP_LOCALIZE_SYMBOLS:
 			parse_symlist_file(ecp, optarg, SYMOP_LOCALIZE);
 			break;
@@ -879,6 +888,9 @@ elfcopy_main(struct elfcopy *ecp, int ar
 		case ECP_ONLY_DEBUG:
 			ecp->strip = STRIP_NONDEBUG;
 			break;
+		case ECP_ONLY_DWO:
+			ecp->strip = STRIP_NONDWO;
+			break;
 		case ECP_PAD_TO:
 			ecp->pad_to = (uint64_t) strtoull(optarg, NULL, 0);
 			break;
@@ -939,6 +951,9 @@ elfcopy_main(struct elfcopy *ecp, int ar
 			ecp->flags |= SREC_FORCE_LEN;
 			ecp->srec_len = strtoul(optarg, NULL, 0);
 			break;
+		case ECP_STRIP_DWO:
+			ecp->strip = STRIP_DWO;
+			break;
 		case ECP_STRIP_SYMBOLS:
 			parse_symlist_file(ecp, optarg, SYMOP_STRIP);
 			break;
@@ -1379,6 +1394,8 @@ Usage: %s [options] infile [outfile]\n\
                                section by VAL.\n\
   --gap-fill=VAL               Fill the gaps between sections with bytes\n\
                                of value VAL.\n\
+  --localize-hidden            Make all hidden symbols local to the output\n\
+                               file.\n\
   --no-adjust-warning| --no-change-warnings\n\
                                Do not issue warnings for non-existent\n\
                                sections.\n\

Modified: head/contrib/elftoolchain/elfcopy/sections.c
==============================================================================
--- head/contrib/elftoolchain/elfcopy/sections.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/sections.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/param.h>
 #include <sys/stat.h>
 #include <err.h>
@@ -35,7 +34,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: sections.c 3150 2015-02-15 19:07:46Z emaste $");
+ELFTC_VCSID("$Id: sections.c 3174 2015-03-27 17:13:41Z emaste $");
 
 static void	add_gnu_debuglink(struct elfcopy *ecp);
 static uint32_t calc_crc32(const char *p, size_t len, uint32_t crc);
@@ -47,6 +46,7 @@ static void	insert_to_strtab(struct sect
 static int	is_append_section(struct elfcopy *ecp, const char *name);
 static int	is_compress_section(struct elfcopy *ecp, const char *name);
 static int	is_debug_section(const char *name);
+static int	is_dwo_section(const char *name);
 static int	is_modify_section(struct elfcopy *ecp, const char *name);
 static int	is_print_section(struct elfcopy *ecp, const char *name);
 static int	lookup_string(struct section *t, const char *s);
@@ -73,6 +73,11 @@ is_remove_section(struct elfcopy *ecp, c
 			return (0);
 	}
 
+	if (ecp->strip == STRIP_DWO && is_dwo_section(name))
+		return (1);
+	if (ecp->strip == STRIP_NONDWO && !is_dwo_section(name))
+		return (1);
+
 	if (is_debug_section(name)) {
 		if (ecp->strip == STRIP_ALL ||
 		    ecp->strip == STRIP_DEBUG ||
@@ -234,6 +239,16 @@ is_debug_section(const char *name)
 }
 
 static int
+is_dwo_section(const char *name)
+{
+	size_t len;
+
+	if ((len = strlen(name)) > 4 && strcmp(name + len - 4, ".dwo") == 0)
+		return (1);
+	return (0);
+}
+
+static int
 is_print_section(struct elfcopy *ecp, const char *name)
 {
 	struct sec_action *sac;

Modified: head/contrib/elftoolchain/elfcopy/segments.c
==============================================================================
--- head/contrib/elftoolchain/elfcopy/segments.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/segments.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/queue.h>
 #include <err.h>
 #include <gelf.h>
@@ -35,7 +34,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: segments.c 3134 2014-12-23 10:43:59Z kaiwang27 $");
+ELFTC_VCSID("$Id: segments.c 3177 2015-03-30 18:19:41Z emaste $");
 
 static void	insert_to_inseg_list(struct segment *seg, struct section *sec);
 

Modified: head/contrib/elftoolchain/elfcopy/symbols.c
==============================================================================
--- head/contrib/elftoolchain/elfcopy/symbols.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/elfcopy/symbols.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/param.h>
 #include <err.h>
 #include <fnmatch.h>
@@ -34,7 +33,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: symbols.c 3135 2014-12-24 08:22:43Z kaiwang27 $");
+ELFTC_VCSID("$Id: symbols.c 3174 2015-03-27 17:13:41Z emaste $");
 
 /* Symbol table buffer structure. */
 struct symbuf {
@@ -129,6 +128,17 @@ is_local_symbol(unsigned char st_info)
 }
 
 static int
+is_hidden_symbol(unsigned char st_other)
+{
+
+	if (GELF_ST_VISIBILITY(st_other) == STV_HIDDEN ||
+	    GELF_ST_VISIBILITY(st_other) == STV_INTERNAL)
+		return (1);
+
+	return (0);
+}
+
+static int
 is_local_label(const char *name)
 {
 
@@ -457,6 +467,11 @@ generate_symbols(struct elfcopy *ecp)
 			    lookup_symop_list(ecp, name, SYMOP_KEEPG) == NULL)
 				sym.st_info = GELF_ST_INFO(STB_LOCAL,
 				    GELF_ST_TYPE(sym.st_info));
+			if (ecp->flags & LOCALIZE_HIDDEN &&
+			    sym.st_shndx != SHN_UNDEF &&
+			    is_hidden_symbol(sym.st_other))
+				sym.st_info = GELF_ST_INFO(STB_LOCAL,
+				    GELF_ST_TYPE(sym.st_info));
 		} else {
 			/* STB_LOCAL binding. */
 			if (lookup_symop_list(ecp, name, SYMOP_GLOBALIZE) !=
@@ -1036,10 +1051,8 @@ match_wildcard(const char *name, const c
 	}
 
 	match = 0;
-	if (!fnmatch(pattern, name, 0)) {
+	if (!fnmatch(pattern, name, 0))
 		match = 1;
-		printf("string '%s' match to pattern '%s'\n", name, pattern);
-	}
 
 	return (reverse ? !match : match);
 }

Modified: head/contrib/elftoolchain/libdwarf/_libdwarf.h
==============================================================================
--- head/contrib/elftoolchain/libdwarf/_libdwarf.h	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libdwarf/_libdwarf.h	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: _libdwarf.h 3161 2015-02-15 21:43:36Z emaste $
+ * $Id: _libdwarf.h 3164 2015-02-19 01:20:12Z kaiwang27 $
  */
 
 #ifndef	__LIBDWARF_H_
@@ -190,6 +190,7 @@ struct _Dwarf_LineInfo {
 	Dwarf_Half	li_version;	/* Version of line info. */
 	Dwarf_Unsigned	li_hdrlen;	/* Length of line info header. */
 	Dwarf_Small	li_minlen;	/* Minimum instrutction length. */
+	Dwarf_Small	li_maxop;	/* Maximum operations per inst. */
 	Dwarf_Small	li_defstmt;	/* Default value of is_stmt. */
 	int8_t		li_lbase;    	/* Line base for special opcode. */
 	Dwarf_Small	li_lrange;    	/* Line range for special opcode. */

Modified: head/contrib/elftoolchain/libdwarf/libdwarf.h
==============================================================================
--- head/contrib/elftoolchain/libdwarf/libdwarf.h	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libdwarf/libdwarf.h	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: libdwarf.h 3149 2015-02-15 19:00:06Z emaste $
+ * $Id: libdwarf.h 3174 2015-03-27 17:13:41Z emaste $
  */
 
 #ifndef	_LIBDWARF_H_
@@ -444,7 +444,9 @@ enum Dwarf_ISA {
 };
 
 /* Function prototype definitions. */
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 Dwarf_P_Attribute dwarf_add_AT_comp_dir(Dwarf_P_Die, char *, Dwarf_Error *);
 Dwarf_P_Attribute dwarf_add_AT_const_value_signedint(Dwarf_P_Die, Dwarf_Signed,
 		    Dwarf_Error *);
@@ -831,6 +833,8 @@ int		dwarf_whatattr(Dwarf_Attribute, Dwa
 int		dwarf_whatform(Dwarf_Attribute, Dwarf_Half *, Dwarf_Error *);
 int		dwarf_whatform_direct(Dwarf_Attribute, Dwarf_Half *,
 		    Dwarf_Error *);
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 
 #endif /* !_LIBDWARF_H_ */

Modified: head/contrib/elftoolchain/libdwarf/libdwarf_lineno.c
==============================================================================
--- head/contrib/elftoolchain/libdwarf/libdwarf_lineno.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libdwarf/libdwarf_lineno.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -26,7 +26,7 @@
 
 #include "_libdwarf.h"
 
-ELFTC_VCSID("$Id: libdwarf_lineno.c 3100 2014-10-25 20:34:29Z jkoshy $");
+ELFTC_VCSID("$Id: libdwarf_lineno.c 3164 2015-02-19 01:20:12Z kaiwang27 $");
 
 static int
 _dwarf_lineno_add_file(Dwarf_LineInfo li, uint8_t **p, const char *compdir,
@@ -315,6 +315,8 @@ _dwarf_lineno_init(Dwarf_Die die, uint64
 	li->li_hdrlen = dbg->read(ds->ds_data, &offset, dwarf_size);
 	hdroff = offset;
 	li->li_minlen = dbg->read(ds->ds_data, &offset, 1);
+	if (li->li_version == 4)
+		li->li_maxop = dbg->read(ds->ds_data, &offset, 1);
 	li->li_defstmt = dbg->read(ds->ds_data, &offset, 1);
 	li->li_lbase = dbg->read(ds->ds_data, &offset, 1);
 	li->li_lrange = dbg->read(ds->ds_data, &offset, 1);

Modified: head/contrib/elftoolchain/libelf/_libelf.h
==============================================================================
--- head/contrib/elftoolchain/libelf/_libelf.h	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/_libelf.h	Wed Apr  1 01:08:01 2015	(r280932)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: _libelf.h 3011 2014-03-23 03:32:42Z jkoshy $
+ * $Id: _libelf.h 3174 2015-03-27 17:13:41Z emaste $
  */
 
 #ifndef	__LIBELF_H_
@@ -194,7 +194,9 @@ enum {
  * Function Prototypes.
  */
 
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 struct _Libelf_Data *_libelf_allocate_data(Elf_Scn *_s);
 Elf	*_libelf_allocate_elf(void);
 Elf_Scn	*_libelf_allocate_scn(Elf *_e, size_t _ndx);
@@ -230,6 +232,8 @@ int	_libelf_setshstrndx(Elf *_e, void *_
 Elf_Data *_libelf_xlate(Elf_Data *_d, const Elf_Data *_s,
     unsigned int _encoding, int _elfclass, int _direction);
 int	_libelf_xlate_shtype(uint32_t _sht);
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 
 #endif	/* __LIBELF_H_ */

Modified: head/contrib/elftoolchain/libelf/_libelf_config.h
==============================================================================
--- head/contrib/elftoolchain/libelf/_libelf_config.h	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/_libelf_config.h	Wed Apr  1 01:08:01 2015	(r280932)
@@ -23,10 +23,10 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: _libelf_config.h 3143 2015-02-15 17:57:38Z emaste $
+ * $Id: _libelf_config.h 3168 2015-02-24 19:17:47Z emaste $
  */
 
-#ifdef	__DragonFly__
+#if defined(__APPLE__) || defined(__DragonFly__)
 
 #if	defined(__amd64__)
 #define	LIBELF_ARCH		EM_X86_64

Modified: head/contrib/elftoolchain/libelf/elf_data.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_data.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_data.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -32,7 +32,7 @@
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_data.c 3009 2014-03-23 01:49:59Z jkoshy $");
+ELFTC_VCSID("$Id: elf_data.c 3177 2015-03-30 18:19:41Z emaste $");
 
 Elf_Data *
 elf_getdata(Elf_Scn *s, Elf_Data *ed)

Modified: head/contrib/elftoolchain/libelf/elf_end.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_end.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_end.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,8 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <assert.h>
 #include <libelf.h>
 #include <stdlib.h>
@@ -36,7 +34,7 @@
 #include <sys/mman.h>
 #endif
 
-ELFTC_VCSID("$Id: elf_end.c 2240 2011-11-28 06:36:48Z jkoshy $");
+ELFTC_VCSID("$Id: elf_end.c 3174 2015-03-27 17:13:41Z emaste $");
 
 int
 elf_end(Elf *e)

Modified: head/contrib/elftoolchain/libelf/elf_errmsg.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_errmsg.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_errmsg.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,15 +24,13 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 #include <stdio.h>
 #include <string.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_errmsg.c 3012 2014-03-23 03:41:38Z jkoshy $");
+ELFTC_VCSID("$Id: elf_errmsg.c 3174 2015-03-27 17:13:41Z emaste $");
 
 /*
  * Retrieve a human readable translation for an error message.

Modified: head/contrib/elftoolchain/libelf/elf_errno.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_errno.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_errno.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_errno.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_errno.c 3174 2015-03-27 17:13:41Z emaste $");
 
 int
 elf_errno(void)

Modified: head/contrib/elftoolchain/libelf/elf_fill.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_fill.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_fill.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_fill.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_fill.c 3174 2015-03-27 17:13:41Z emaste $");
 
 void
 elf_fill(int fill)

Modified: head/contrib/elftoolchain/libelf/elf_flag.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_flag.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_flag.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_flag.c 2988 2014-03-17 08:51:49Z jkoshy $");
+ELFTC_VCSID("$Id: elf_flag.c 3174 2015-03-27 17:13:41Z emaste $");
 
 unsigned int
 elf_flagarhdr(Elf_Arhdr *a, Elf_Cmd c, unsigned int flags)

Modified: head/contrib/elftoolchain/libelf/elf_getarhdr.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_getarhdr.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_getarhdr.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_getarhdr.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_getarhdr.c 3174 2015-03-27 17:13:41Z emaste $");
 
 Elf_Arhdr *
 elf_getarhdr(Elf *e)

Modified: head/contrib/elftoolchain/libelf/elf_getarsym.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_getarsym.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_getarsym.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_getarsym.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_getarsym.c 3174 2015-03-27 17:13:41Z emaste $");
 
 Elf_Arsym *
 elf_getarsym(Elf *ar, size_t *ptr)

Modified: head/contrib/elftoolchain/libelf/elf_getbase.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_getbase.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_getbase.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_getbase.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_getbase.c 3174 2015-03-27 17:13:41Z emaste $");
 
 off_t
 elf_getbase(Elf *e)

Modified: head/contrib/elftoolchain/libelf/elf_getident.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_getident.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_getident.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,15 +24,13 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <ar.h>
 #include <assert.h>
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_getident.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_getident.c 3174 2015-03-27 17:13:41Z emaste $");
 
 char *
 elf_getident(Elf *e, size_t *sz)

Modified: head/contrib/elftoolchain/libelf/elf_hash.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_hash.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_hash.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_hash.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_hash.c 3174 2015-03-27 17:13:41Z emaste $");
 
 /*
  * This elf_hash function is defined by the System V ABI.

Modified: head/contrib/elftoolchain/libelf/elf_kind.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_kind.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_kind.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_kind.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_kind.c 3174 2015-03-27 17:13:41Z emaste $");
 
 Elf_Kind
 elf_kind(Elf *e)

Modified: head/contrib/elftoolchain/libelf/elf_next.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_next.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_next.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,15 +24,13 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <ar.h>
 #include <assert.h>
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_next.c 2989 2014-03-17 09:56:46Z jkoshy $");
+ELFTC_VCSID("$Id: elf_next.c 3174 2015-03-27 17:13:41Z emaste $");
 
 Elf_Cmd
 elf_next(Elf *e)

Modified: head/contrib/elftoolchain/libelf/elf_phnum.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_phnum.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_phnum.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,14 +24,12 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <ar.h>
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_phnum.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_phnum.c 3174 2015-03-27 17:13:41Z emaste $");
 
 static int
 _libelf_getphdrnum(Elf *e, size_t *phnum)

Modified: head/contrib/elftoolchain/libelf/elf_rand.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_rand.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_rand.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,14 +24,12 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <ar.h>
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_rand.c 2991 2014-03-17 09:57:04Z jkoshy $");
+ELFTC_VCSID("$Id: elf_rand.c 3174 2015-03-27 17:13:41Z emaste $");
 
 off_t
 elf_rand(Elf *ar, off_t offset)

Modified: head/contrib/elftoolchain/libelf/elf_rawfile.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_rawfile.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_rawfile.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,13 +24,11 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_rawfile.c 3013 2014-03-23 06:16:59Z jkoshy $");
+ELFTC_VCSID("$Id: elf_rawfile.c 3174 2015-03-27 17:13:41Z emaste $");
 
 char *
 elf_rawfile(Elf *e, size_t *sz)

Modified: head/contrib/elftoolchain/libelf/elf_scn.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_scn.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_scn.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
 #include <sys/queue.h>
 
 #include <assert.h>
@@ -37,7 +36,7 @@
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_scn.c 3147 2015-02-15 18:45:23Z emaste $");
+ELFTC_VCSID("$Id: elf_scn.c 3177 2015-03-30 18:19:41Z emaste $");
 
 /*
  * Load an ELF section table and create a list of Elf_Scn structures.

Modified: head/contrib/elftoolchain/libelf/elf_shnum.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_shnum.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_shnum.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,14 +24,12 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <ar.h>
 #include <libelf.h>
 
 #include "_libelf.h"
 
-ELFTC_VCSID("$Id: elf_shnum.c 2225 2011-11-26 18:55:54Z jkoshy $");
+ELFTC_VCSID("$Id: elf_shnum.c 3174 2015-03-27 17:13:41Z emaste $");
 
 static int
 _libelf_getshdrnum(Elf *e, size_t *shnum)

Modified: head/contrib/elftoolchain/libelf/elf_shstrndx.c
==============================================================================
--- head/contrib/elftoolchain/libelf/elf_shstrndx.c	Wed Apr  1 00:49:34 2015	(r280931)
+++ head/contrib/elftoolchain/libelf/elf_shstrndx.c	Wed Apr  1 01:08:01 2015	(r280932)
@@ -24,14 +24,12 @@
  * SUCH DAMAGE.
  */
 
-#include <sys/cdefs.h>
-
 #include <ar.h>
 #include <libelf.h>
 

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-all mailing list