svn commit: r521870 - in head/base: binutils binutils/files gcc6 gcc6/files
John Baldwin
jhb at FreeBSD.org
Thu Jan 2 19:20:08 UTC 2020
Author: jhb (src,doc committer)
Date: Thu Jan 2 19:20:06 2020
New Revision: 521870
URL: https://svnweb.freebsd.org/changeset/ports/521870
Log:
Various fixes to base/binutils and base/gcc6.
- Add --with-sysroot=/ to CONFIGURE_ARGS. base/binutils needs this so
that ld honors --sysroot in linker scripts. base/gcc6 needs this so
that the C++ include paths honor --sysroot.
- Remove a hack from GCC's configure to force C++98 mode when building
GCC with GCC. libc++ assumes C++11, so this hack was breaking the
build of base/gcc6 natively when the system compiler was GCC.
- Add toolchain makefiles installed to /usr/share/toolchains.
These are suitable to be used by CROSS_TOOLCHAIN when doing a native
arch build. These makefiles enable appropriate knobs so that the
in-tree components that are replaced by each package are not built
or installed. The freebsd-gcc toolchain makefile includes the
binutils toolchain makefile if it is present.
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D22984
Added:
head/base/binutils/files/
head/base/binutils/files/freebsd-binutils.mk (contents, props changed)
head/base/gcc6/files/freebsd-gcc.mk (contents, props changed)
Modified:
head/base/binutils/Makefile
head/base/binutils/pkg-plist
head/base/gcc6/Makefile
head/base/gcc6/files/patch-configure
head/base/gcc6/pkg-plist
Modified: head/base/binutils/Makefile
==============================================================================
--- head/base/binutils/Makefile Thu Jan 2 19:17:26 2020 (r521869)
+++ head/base/binutils/Makefile Thu Jan 2 19:20:06 2020 (r521870)
@@ -3,6 +3,7 @@
PORTNAME= binutils
PORTVERSION= 2.33.1
PORTEPOCH= 0
+PORTREVISION= 1
CATEGORIES= base
MASTER_SITES= SOURCEWARE/binutils/releases
PKGNAMEPREFIX= ${OPSYS:tl}-
@@ -35,6 +36,7 @@ CONFIGURE_ARGS+= --disable-host-shared \
--disable-shared \
--disable-nls \
--with-system-zlib \
+ --with-sysroot="/" \
--enable-relro=no \
--enable-x86-relax-relocations=no \
--target=${BUTARGET}
@@ -117,5 +119,7 @@ post-install:
${STAGEDIR}${MANPREFIX}/man/man1/${tool}.1 \
${STAGEDIR}${PREFIX}/${BUTARGET}/bin/${tool}
.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/share/toolchains
+ ${INSTALL_DATA} ${.CURDIR}/files/freebsd-binutils.mk ${STAGEDIR}${PREFIX}/share/toolchains/
.include <bsd.port.post.mk>
Added: head/base/binutils/files/freebsd-binutils.mk
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/base/binutils/files/freebsd-binutils.mk Thu Jan 2 19:20:06 2020 (r521870)
@@ -0,0 +1,4 @@
+CROSS_BINUTILS_PREFIX=/usr/bin/
+export WITH_PORT_BASE_BINUTILS=yes
+export WITHOUT_BINUTILS=yes
+export WITHOUT_LLD_IS_LD=yes
Modified: head/base/binutils/pkg-plist
==============================================================================
--- head/base/binutils/pkg-plist Thu Jan 2 19:17:26 2020 (r521869)
+++ head/base/binutils/pkg-plist Thu Jan 2 19:20:06 2020 (r521870)
@@ -561,3 +561,4 @@ bin/objdump
share/man/man1/as.1.gz
share/man/man1/ld.1.gz
share/man/man1/objdump.1.gz
+share/toolchains/freebsd-binutils.mk
Modified: head/base/gcc6/Makefile
==============================================================================
--- head/base/gcc6/Makefile Thu Jan 2 19:17:26 2020 (r521869)
+++ head/base/gcc6/Makefile Thu Jan 2 19:20:06 2020 (r521870)
@@ -2,6 +2,7 @@
PORTNAME= gcc
PORTVERSION= 6.5.0
+PORTREVISION= 1
CATEGORIES= base
MASTER_SITES= GCC/releases/gcc-${DISTVERSION} \
http://www.mpfr.org/mpfr-3.1.6/:mpfr \
@@ -32,6 +33,7 @@ CONFIGURE_ENV+= ${_tool}_FOR_TARGET="${${_tool}}"
USES= gmake libtool tar:xz makeinfo
PLIST_SUB= OPSYS=${OPSYS:tl} \
+ SUFFIX=${SUFFIX} \
GCC_TARGET=${GCC_TARGET} \
GCC_VERSION=${PORTVERSION}
@@ -47,6 +49,7 @@ CONFIGURE_ARGS+= \
--disable-nls \
--without-headers \
--with-gxx-include-dir=/usr/include/c++/v1/ \
+ --with-sysroot="/" \
--with-build-sysroot=${CROSS_SYSROOT} \
-with-pkgversion="GNU Collection for FreeBSD"
@@ -119,5 +122,7 @@ post-install:
.if ${ARCH} == "amd64" || ${ARCH} == "i386"
${RM} ${STAGEDIR}/usr/lib/gcc/${GCC_TARGET}/${PORTVERSION}/include/float.h
.endif
+ @${MKDIR} ${STAGEDIR}${PREFIX}/share/toolchains
+ ${INSTALL_DATA} ${FILESDIR}/freebsd-gcc.mk ${STAGEDIR}${PREFIX}/share/toolchains/freebsd-gcc${SUFFIX}.mk
.include <bsd.port.post.mk>
Added: head/base/gcc6/files/freebsd-gcc.mk
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/base/gcc6/files/freebsd-gcc.mk Thu Jan 2 19:20:06 2020 (r521870)
@@ -0,0 +1,8 @@
+XCC=/usr/bin/cc
+XCXX=/usr/bin/c++
+XCPP=/usr/bin/cpp
+X_COMPILER_TYPE=gcc
+export WITH_PORT_BASE_GCC=yes
+export WITHOUT_GCC=yes
+export WITHOUT_CLANG_IS_CC=yes
+.sinclude "freebsd-binutils.mk"
Modified: head/base/gcc6/files/patch-configure
==============================================================================
--- head/base/gcc6/files/patch-configure Thu Jan 2 19:17:26 2020 (r521869)
+++ head/base/gcc6/files/patch-configure Thu Jan 2 19:20:06 2020 (r521870)
@@ -1,6 +1,6 @@
---- configure.orig 2015-05-03 17:29:57 UTC
-+++ configure
-@@ -3675,10 +3675,6 @@ case "${target}" in
+--- configure.orig 2017-01-09 13:01:26.582656000 -0800
++++ configure 2019-03-26 14:29:44.995174000 -0700
+@@ -3717,10 +3717,6 @@ case "${target}" in
*-*-dragonfly*)
;;
*-*-freebsd*)
@@ -11,3 +11,16 @@
;;
*-*-kaos*)
# Remove unsupported stuff on all kaOS configurations.
+@@ -5450,12 +5446,6 @@ $as_echo "$as_me: WARNING: trying to bootstrap a cross
+ as_fn_error "invalid option for --enable-bootstrap" "$LINENO" 5
+ ;;
+ esac
+-
+-# When bootstrapping with GCC, build stage 1 in C++98 mode to ensure that a
+-# C++98 compiler can still start the bootstrap.
+-if test "$enable_bootstrap:$GXX" = "yes:yes"; then
+- CXX="$CXX -std=gnu++98"
+-fi
+
+ # Used for setting $lt_cv_objdir
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
Modified: head/base/gcc6/pkg-plist
==============================================================================
--- head/base/gcc6/pkg-plist Thu Jan 2 19:17:26 2020 (r521869)
+++ head/base/gcc6/pkg-plist Thu Jan 2 19:20:06 2020 (r521870)
@@ -27,3 +27,4 @@ share/man/man1/gcov-tool.1.gz
share/man/man7/fsf-funding.7.gz
share/man/man7/gfdl.7.gz
share/man/man7/gpl.7.gz
+share/toolchains/freebsd-gcc%%SUFFIX%%.mk
More information about the svn-ports-all
mailing list