git: c6081dea597a - main - Add elfctl to toolchain.
Marcin Wojtas
mw at FreeBSD.org
Fri May 21 13:34:51 UTC 2021
The branch main has been updated by mw:
URL: https://cgit.FreeBSD.org/src/commit/?id=c6081dea597a475e4bbcc8588ece03ae78b58978
commit c6081dea597a475e4bbcc8588ece03ae78b58978
Author: Marcin Wojtas <mw at FreeBSD.org>
AuthorDate: 2021-05-21 09:27:27 +0000
Commit: Marcin Wojtas <mw at FreeBSD.org>
CommitDate: 2021-05-21 13:32:42 +0000
Add elfctl to toolchain.
Add elfctl program to toolchain to allow modifying ELF feature flags
during system build.
Submitted by: Dawid Gorecki <dgr at semihalf.com>
Obtained from: Semihalf
Sponsored by: Stormshield
Differential Revision: https://reviews.freebsd.org/D29552
---
Makefile.inc1 | 8 +++++---
share/mk/sys.mk | 2 ++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/Makefile.inc1 b/Makefile.inc1
index 5ae1ec72c279..5fd1fe81c2e7 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -199,7 +199,7 @@ MK_SYSTEM_LINKER= no
.if defined(CROSS_TOOLCHAIN_PREFIX)
CROSS_BINUTILS_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
.endif
-XBINUTILS= AS AR LD NM OBJCOPY RANLIB SIZE STRINGS STRIPBIN
+XBINUTILS= AS AR ELFCTL LD NM OBJCOPY RANLIB SIZE STRINGS STRIPBIN
.for BINUTIL in ${XBINUTILS}
.if defined(CROSS_BINUTILS_PREFIX) && \
exists(${CROSS_BINUTILS_PREFIX}/${${BINUTIL}})
@@ -794,8 +794,8 @@ HMAKE+= PATH=${TMPPATH} METALOG=${METALOG} -DNO_ROOT
CROSSENV+= CC="${XCC} ${XCFLAGS}" CXX="${XCXX} ${XCXXFLAGS} ${XCFLAGS}" \
CPP="${XCPP} ${XCFLAGS}" \
- AS="${XAS}" AR="${XAR}" LD="${XLD}" LLVM_LINK="${XLLVM_LINK}" \
- NM=${XNM} OBJCOPY="${XOBJCOPY}" \
+ AS="${XAS}" AR="${XAR}" ELFCTL="${XELFCTL}" LD="${XLD}" \
+ LLVM_LINK="${XLLVM_LINK}" NM=${XNM} OBJCOPY="${XOBJCOPY}" \
RANLIB=${XRANLIB} STRINGS=${XSTRINGS} \
SIZE="${XSIZE}" STRIPBIN="${XSTRIPBIN}"
@@ -2600,6 +2600,7 @@ _dtrace_tools= cddl/lib/libctf cddl/lib/libspl cddl/usr.bin/ctfconvert \
.if ${MK_ELFTOOLCHAIN_BOOTSTRAP} != "no"
_elftctools= lib/libelftc \
lib/libpe \
+ usr.bin/elfctl \
usr.bin/objcopy \
usr.bin/nm \
usr.bin/size \
@@ -2613,6 +2614,7 @@ _elftctools+= usr.bin/addr2line
# the target (for at least crunchide).
_elftctools= lib/libelftc \
lib/libpe \
+ usr.bin/elfctl \
usr.bin/objcopy
.endif
diff --git a/share/mk/sys.mk b/share/mk/sys.mk
index 8f456b28593a..89ac2c549656 100644
--- a/share/mk/sys.mk
+++ b/share/mk/sys.mk
@@ -210,6 +210,8 @@ ECHODIR ?= true
.endif
.endif
+ELFCTL ?= elfctl
+
.if ${.MAKEFLAGS:M-N}
# bmake -N is supposed to skip executing anything but it does not skip
# exeucting '+' commands. The '+' feature is used where .MAKE
More information about the dev-commits-src-main
mailing list