Page MenuHomeFreeBSD

D2887.id.diff
No OneTemporary

D2887.id.diff

Index: head/gnu/usr.bin/binutils/Makefile
===================================================================
--- head/gnu/usr.bin/binutils/Makefile
+++ head/gnu/usr.bin/binutils/Makefile
@@ -11,7 +11,7 @@
as \
ld \
${_nm} \
- objcopy \
+ ${_objcopy} \
objdump \
${_readelf} \
${_size} \
@@ -26,5 +26,8 @@
_strings= strings
_strip= strip
.endif
+.if ${MK_ELFTOOLCHAIN_TOOLS} == "no" || ${MK_ELFCOPY_AS_OBJCOPY} == "no"
+_objcopy= objcopy
+.endif
.include <bsd.subdir.mk>
Index: head/share/mk/src.opts.mk
===================================================================
--- head/share/mk/src.opts.mk
+++ head/share/mk/src.opts.mk
@@ -234,6 +234,9 @@
.endif
.if ${__T} == "aarch64"
BROKEN_OPTIONS+=BINUTILS BINUTILS_BOOTSTRAP GCC GCC_BOOTSTRAP GDB
+__DEFAULT_YES_OPTIONS+=ELFCOPY_AS_OBJCOPY
+.else
+__DEFAULT_NO_OPTIONS+=ELFCOPY_AS_OBJCOPY
.endif
# LLVM lacks support for FreeBSD 64-bit atomic operations for ARMv4/ARMv5
.if ${__T} == "arm" || ${__T} == "armeb"
Index: head/tools/build/mk/OptionalObsoleteFiles.inc
===================================================================
--- head/tools/build/mk/OptionalObsoleteFiles.inc
+++ head/tools/build/mk/OptionalObsoleteFiles.inc
@@ -184,7 +184,9 @@
.if ${MK_BINUTILS} == no
OLD_FILES+=usr/bin/as
OLD_FILES+=usr/bin/ld
+.if ${MK_ELFTOOLCHAIN_TOOLS} != no && ${MK_ELFCOPY_AS_OBJCOPY} == no
OLD_FILES+=usr/bin/objcopy
+.endif
OLD_FILES+=usr/bin/objdump
OLD_FILES+=usr/libdata/ldscripts/elf_x86_64_fbsd.x
OLD_FILES+=usr/libdata/ldscripts/elf_x86_64_fbsd.xbn
@@ -201,7 +203,9 @@
OLD_FILES+=usr/libdata/ldscripts/elf_x86_64_fbsd.xw
OLD_FILES+=usr/share/man/man1/as.1.gz
OLD_FILES+=usr/share/man/man1/ld.1.gz
+.if ${MK_ELFTOOLCHAIN_TOOLS} != no && ${MK_ELFCOPY_AS_OBJCOPY} == no
OLD_FILES+=usr/share/man/man1/objcopy.1.gz
+.endif
OLD_FILES+=usr/share/man/man1/objdump.1.gz
OLD_FILES+=usr/share/man/man7/as.7.gz
OLD_FILES+=usr/share/man/man7/ld.7.gz
@@ -1646,7 +1650,8 @@
OLD_FILES+=usr/share/nls/uk_UA.KOI8-U/ee.cat
.endif
-.if ${MK_ELFTOOLCHAIN_TOOLS} == no
+.if ${MK_ELFTOOLCHAIN_TOOLS} == no || \
+ (${MK_ELFTOOLCHAIN_TOOLS} != no && MK_ELFCOPY_AS_OBJCOPY != no)
OLD_FILES+=usr/bin/elfcopy
OLD_FILES+=usr/share/man/man1/elfcopy.1.gz
.endif
Index: head/tools/build/options/WITHOUT_ELFCOPY_AS_OBJCOPY
===================================================================
--- head/tools/build/options/WITHOUT_ELFCOPY_AS_OBJCOPY
+++ head/tools/build/options/WITHOUT_ELFCOPY_AS_OBJCOPY
@@ -0,0 +1,4 @@
+.\" $FreeBSD$
+Set to build and install
+.Xr objcopy 1
+from GNU Binutils, instead of the one from ELF Tool Chain.
Index: head/tools/build/options/WITH_ELFCOPY_AS_OBJCOPY
===================================================================
--- head/tools/build/options/WITH_ELFCOPY_AS_OBJCOPY
+++ head/tools/build/options/WITH_ELFCOPY_AS_OBJCOPY
@@ -0,0 +1,4 @@
+.\" $FreeBSD$
+Set to build and install ELF Tool Chain's elfcopy as
+.Xr objcopy 1 ,
+instead of the one from GNU Binutils.
Index: head/usr.bin/elfcopy/Makefile
===================================================================
--- head/usr.bin/elfcopy/Makefile
+++ head/usr.bin/elfcopy/Makefile
@@ -7,7 +7,15 @@
.PATH: ${ELFCOPYDIR}
+.if ${MK_ELFCOPY_AS_OBJCOPY} != "no"
+PROG= objcopy
+objcopy.1: elfcopy.1
+ sed -e 's/\.Dt ELFCOPY 1/.Dt OBJCOPY 1/' \
+ -e 's/\.Nm elfcopy/.Nm objcopy/' < ${.ALLSRC} > ${.TARGET}
+CLEANFILES+= objcopy.1
+.else
PROG= elfcopy
+.endif
SRCS= archive.c ascii.c binary.c main.c sections.c segments.c symbols.c
@@ -17,8 +25,8 @@
CFLAGS+=-I${ELFTCDIR}/libelftc -I${ELFTCDIR}/common
-MAN= elfcopy.1 strip.1
+MAN= ${PROG}.1 strip.1
-LINKS= ${BINDIR}/elfcopy ${BINDIR}/strip
+LINKS= ${BINDIR}/${PROG} ${BINDIR}/strip
.include <bsd.prog.mk>

File Metadata

Mime Type
text/plain
Expires
Fri, Apr 3, 10:58 PM (29 m, 18 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30783629
Default Alt Text
D2887.id.diff (3 KB)

Event Timeline