From owner-svn-src-all@freebsd.org Thu Nov 29 15:48:38 2018 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 328CA1141B36; Thu, 29 Nov 2018 15:48:38 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C98F7718D4; Thu, 29 Nov 2018 15:48:37 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AA6221B8E0; Thu, 29 Nov 2018 15:48:37 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id wATFmb7B004104; Thu, 29 Nov 2018 15:48:37 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id wATFmapA004098; Thu, 29 Nov 2018 15:48:36 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201811291548.wATFmapA004098@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 29 Nov 2018 15:48:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r341239 - in stable/12: gnu/usr.bin/binutils tools/build/mk tools/build/options X-SVN-Group: stable-12 X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: in stable/12: gnu/usr.bin/binutils tools/build/mk tools/build/options X-SVN-Commit-Revision: 341239 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C98F7718D4 X-Spamd-Result: default: False [0.77 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_SPAM_SHORT(0.23)[0.228,0]; NEURAL_SPAM_MEDIUM(0.25)[0.254,0]; NEURAL_SPAM_LONG(0.29)[0.292,0] X-Rspamd-Server: mx1.freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Nov 2018 15:48:38 -0000 Author: emaste Date: Thu Nov 29 15:48:36 2018 New Revision: 341239 URL: https://svnweb.freebsd.org/changeset/base/341239 Log: MFC r340984: Do not install GNU ld if lld is /usr/bin/ld GNU binutils ld.bfd 2.17.50 does not support ifuncs and produces broken binaries when ifuncs are in use. When LLD_IS_LD is default we have an ifunc-capable system linker and can just avoid installing ld.bfd. Merged to stable/12 as libc's ifunc use has been merged there; ifunc use has not been merged to releng/12.0 so this change does not need to be either. Modified: stable/12/gnu/usr.bin/binutils/Makefile stable/12/tools/build/mk/OptionalObsoleteFiles.inc stable/12/tools/build/options/WITHOUT_BINUTILS stable/12/tools/build/options/WITH_BINUTILS Directory Properties: stable/12/ (props changed) Modified: stable/12/gnu/usr.bin/binutils/Makefile ============================================================================== --- stable/12/gnu/usr.bin/binutils/Makefile Thu Nov 29 15:42:32 2018 (r341238) +++ stable/12/gnu/usr.bin/binutils/Makefile Thu Nov 29 15:48:36 2018 (r341239) @@ -8,9 +8,13 @@ SUBDIR= doc\ libopcodes \ libbinutils \ as \ - ld \ objdump +# When we use ld.lld as /usr/bin/ld, do not install the non-ifunc-capable +# GNU binutils 2.17.50 ld. +.if ${MK_LLD_IS_LD} == "no" +SUBDIR+=ld +.endif SUBDIR_DEPEND_libbinutils=libbfd # for bfdver.h SUBDIR_DEPEND_as=libbfd libiberty libopcodes Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Nov 29 15:42:32 2018 (r341238) +++ stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Nov 29 15:48:36 2018 (r341239) @@ -208,7 +208,6 @@ OLD_FILES+=usr/bin/as OLD_FILES+=usr/bin/ld OLD_FILES+=usr/share/man/man1/ld.1.gz .endif -OLD_FILES+=usr/bin/ld.bfd OLD_FILES+=usr/bin/objdump OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.x OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xbn @@ -411,6 +410,9 @@ OLD_FILES+=usr/share/man/man7/as.7.gz OLD_FILES+=usr/share/man/man7/ld.7.gz OLD_FILES+=usr/share/man/man7/ldint.7.gz OLD_FILES+=usr/share/man/man7/binutils.7.gz +.endif +.if ${MK_BINUTILS} == no || ${MK_LLD_IS_LD} == yes +OLD_FILES+=usr/bin/ld.bfd .endif .if ${MK_BLACKLIST} == no Modified: stable/12/tools/build/options/WITHOUT_BINUTILS ============================================================================== --- stable/12/tools/build/options/WITHOUT_BINUTILS Thu Nov 29 15:42:32 2018 (r341238) +++ stable/12/tools/build/options/WITHOUT_BINUTILS Thu Nov 29 15:48:36 2018 (r341239) @@ -1,4 +1,9 @@ .\" $FreeBSD$ -Set to not build or install binutils (as, ld, and objdump) as part +Set to not build or install GNU +.Xr as 1 , +.Xr objdump 1 , +and for some CPU architectures +.Xr ld.bfd 1 +as part of the normal system build. The resulting system cannot build programs from source. Modified: stable/12/tools/build/options/WITH_BINUTILS ============================================================================== --- stable/12/tools/build/options/WITH_BINUTILS Thu Nov 29 15:42:32 2018 (r341238) +++ stable/12/tools/build/options/WITH_BINUTILS Thu Nov 29 15:48:36 2018 (r341239) @@ -1,3 +1,8 @@ .\" $FreeBSD$ -Set to build and install binutils (as, ld, and objdump) as part +Set to build and install GNU +.Xr as 1 , +.Xr objdump 1 , +and for some CPU architectures +.Xr ld.bfd 1 +as part of the normal system build.