From 151578dc5fd3d547930b894c5fb03eb9a1b9001d Mon Sep 17 00:00:00 2001 From: John Baldwin Date: Thu, 28 Jun 2018 21:26:14 +0000 Subject: [PATCH] Remove the various build flag hacks for GCC cross-compile. The xtoolchain GCC packages have not required these flags since ports commits r465416 and r466701. The in-tree GCC 4.2.1 has also been patched in r335716 and r335717 to correctly honor --sysroot when looking for includes and libraries. Reviewed by: bdrewery Sponsored by: DARPA / AFRL Differential Revision: https://reviews.freebsd.org/D16055 --- Makefile.inc1 | 13 ------------- Makefile.libcompat | 16 ---------------- 2 files changed, 29 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 4fbb82d111ee..88da712d8db9 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -750,19 +750,6 @@ BFLAGS+= -B${WORLDTMP}/usr/bin .endif .if ${WANT_COMPILER_TYPE} == gcc || \ (defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == gcc) -# GCC requires -isystem and -L when using a cross-compiler. --sysroot -# won't set header path and -L is used to ensure the base library path -# is added before the port PREFIX library path. -XCFLAGS+= -isystem ${WORLDTMP}/usr/include -L${WORLDTMP}/usr/lib -# GCC requires -B to find /usr/lib/crti.o when using a cross-compiler -# combined with --sysroot. -XCFLAGS+= -B${WORLDTMP}/usr/lib -# Force using libc++ for external GCC. -.if defined(X_COMPILER_TYPE) && \ - ${X_COMPILER_TYPE} == gcc && ${X_COMPILER_VERSION} >= 40800 -XCXXFLAGS+= -isystem ${WORLDTMP}/usr/include/c++/v1 -std=c++11 \ - -nostdinc++ -.endif .elif ${WANT_COMPILER_TYPE} == clang || \ (defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == clang) XCFLAGS+= -target ${TARGET_TRIPLE} diff --git a/Makefile.libcompat b/Makefile.libcompat index 8d7b00047254..83c18397fa98 100644 --- a/Makefile.libcompat +++ b/Makefile.libcompat @@ -100,22 +100,6 @@ LIBCOMPATCFLAGS+= ${LIBCOMPATCPUFLAGS} \ # Clang/GCC. LIBCOMPATCFLAGS+= -B${LIBCOMPATTMP}/usr/lib${libcompat} -.if ${WANT_COMPILER_TYPE} == gcc || \ - (defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == gcc) -# GCC requires -isystem when using a cross-compiler and --sysroot. Note that -# Makefile.inc1 only applies this with an external compiler but libcompat -# always does since even in-tree GCC 4.2 needs this to override the built-in -# sysroot path which --sysroot does not actually do for headers. -LIBCOMPATCFLAGS+= -isystem ${LIBCOMPATTMP}/usr/include -# Force using libc++ for external GCC. -.if defined(X_COMPILER_TYPE) && \ - ${X_COMPILER_TYPE} == gcc && ${X_COMPILER_VERSION} >= 40800 && \ - (${MK_CLANG_BOOTSTRAP} == "no" && ${MK_GCC_BOOTSTRAP} == "no") -LIBCOMPATCXXFLAGS+= -isystem ${LIBCOMPATTMP}/usr/include/c++/v1 -std=c++11 \ - -nostdinc++ -.endif -.endif - # Yes, the flags are redundant. LIBCOMPATWMAKEENV+= \ INSTALL="sh ${.CURDIR}/tools/install.sh" \