From owner-svn-src-all@freebsd.org Tue Oct 31 00:03:38 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AE33EE2F8B9; Tue, 31 Oct 2017 00:03:38 +0000 (UTC) (envelope-from bdrewery@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 mx1.freebsd.org (Postfix) with ESMTPS id 19D5D77A83; Tue, 31 Oct 2017 00:03:37 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v9V03bxZ046883; Tue, 31 Oct 2017 00:03:37 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v9V03afF046876; Tue, 31 Oct 2017 00:03:36 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201710310003.v9V03afF046876@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Tue, 31 Oct 2017 00:03:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r325181 - in head: lib/libgcc_eh lib/libgcc_s share/mk targets/pseudo/userland/gnu targets/pseudo/userland/lib X-SVN-Group: head X-SVN-Commit-Author: bdrewery X-SVN-Commit-Paths: in head: lib/libgcc_eh lib/libgcc_s share/mk targets/pseudo/userland/gnu targets/pseudo/userland/lib X-SVN-Commit-Revision: 325181 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 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: Tue, 31 Oct 2017 00:03:39 -0000 Author: bdrewery Date: Tue Oct 31 00:03:36 2017 New Revision: 325181 URL: https://svnweb.freebsd.org/changeset/base/325181 Log: DIRDEPS_BUILD: libgcc now depends on MK_LLVM_LIBUNWIND The dependency on gnu/lib/libgcc or lib/libgcc* is determined at 'make dirdeps' time. Sponsored by: Dell EMC Isilon Added: head/lib/libgcc_eh/Makefile.depend (contents, props changed) head/lib/libgcc_s/Makefile.depend (contents, props changed) Modified: head/lib/libgcc_eh/Makefile.inc head/share/mk/local.dirdeps.mk head/share/mk/local.gendirdeps.mk head/targets/pseudo/userland/gnu/Makefile.depend head/targets/pseudo/userland/lib/Makefile.depend Added: head/lib/libgcc_eh/Makefile.depend ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libgcc_eh/Makefile.depend Tue Oct 31 00:03:36 2017 (r325181) @@ -0,0 +1,13 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif Modified: head/lib/libgcc_eh/Makefile.inc ============================================================================== --- head/lib/libgcc_eh/Makefile.inc Tue Oct 31 00:03:32 2017 (r325180) +++ head/lib/libgcc_eh/Makefile.inc Tue Oct 31 00:03:36 2017 (r325181) @@ -29,7 +29,8 @@ CXXFLAGS+= -std=c++11 .endif CXXFLAGS+= -fno-rtti STATIC_CXXFLAGS+= -fvisibility=hidden -fPIC +# Probably need to just move this earlier or use CXXFLAGS .if ${MK_DIRDEPS_BUILD} == "yes" # Avoid dependency on lib/libc++ -CFLAGS+= -I${SRCTOP}/contrib/libc++/include +CFLAGS+= -isystem ${SRCTOP}/contrib/libc++/include -nostdinc++ .endif Added: head/lib/libgcc_s/Makefile.depend ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libgcc_s/Makefile.depend Tue Oct 31 00:03:36 2017 (r325181) @@ -0,0 +1,16 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + gnu/lib/csu \ + include \ + include/xlocale \ + lib/${CSU_DIR} \ + lib/libc \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif Modified: head/share/mk/local.dirdeps.mk ============================================================================== --- head/share/mk/local.dirdeps.mk Tue Oct 31 00:03:32 2017 (r325180) +++ head/share/mk/local.dirdeps.mk Tue Oct 31 00:03:36 2017 (r325181) @@ -76,6 +76,19 @@ DIRDEPS += \ cddl/usr.bin/ctfmerge.host .endif +# Add in proper libgcc (gnu or LLVM) if not building libcc and libc is needed. +# Add both gcc_s and gcc_eh as dependencies as the decision to build +# -static or not is not known here. +.if ${DEP_RELDIR:M*libgcc*} == "" && ${DIRDEPS:Mlib/libc} +.if ${MK_LLVM_LIBUNWIND} == "yes" +DIRDEPS+= \ + lib/libgcc_eh \ + lib/libgcc_s +.else +DIRDEPS+= gnu/lib/libgcc +.endif +.endif + # Bootstrap support. Give hints to DIRDEPS if there is no Makefile.depend* # generated yet. This can be based on things such as SRC files and LIBADD. # These hints will not factor into the final Makefile.depend as only what is @@ -124,7 +137,6 @@ _SRCS= ${SRCS} ${_PROGS_SRCS} # Has C files. The C_DIRDEPS are shared with C++ files as well. C_DIRDEPS= \ gnu/lib/csu \ - gnu/lib/libgcc \ include \ include/arpa \ include/protocols \ @@ -135,6 +147,7 @@ C_DIRDEPS= \ lib/libc \ lib/libcompiler_rt \ +# libgcc is needed as well but is added later. .if ${MK_GSSAPI} != "no" C_DIRDEPS+= include/gssapi Modified: head/share/mk/local.gendirdeps.mk ============================================================================== --- head/share/mk/local.gendirdeps.mk Tue Oct 31 00:03:32 2017 (r325180) +++ head/share/mk/local.gendirdeps.mk Tue Oct 31 00:03:36 2017 (r325181) @@ -10,6 +10,9 @@ GENDIRDEPS_FILTER+= \ Ngnu/lib/libssp/libssp_nonshared \ Ncddl/usr.bin/ctf* \ Nlib/libc_nonshared \ + Ngnu/lib/libgcc \ + Nlib/libgcc_eh \ + Nlib/libgcc_s \ Ntargets/pseudo/stage* \ Ntools/* Modified: head/targets/pseudo/userland/gnu/Makefile.depend ============================================================================== --- head/targets/pseudo/userland/gnu/Makefile.depend Tue Oct 31 00:03:32 2017 (r325180) +++ head/targets/pseudo/userland/gnu/Makefile.depend Tue Oct 31 00:03:36 2017 (r325181) @@ -9,7 +9,6 @@ DIRDEPS = \ gnu/lib/csu \ gnu/lib/libdialog \ - gnu/lib/libgcc \ gnu/lib/libgcov \ gnu/lib/libgomp \ gnu/lib/libreadline/history/doc \ @@ -43,6 +42,10 @@ DIRDEPS = \ .if ${MK_GPL_DTC} != "no" DIRDEPS+= gnu/usr.bin/dtc +.endif + +.if ${MK_LLVM_LIBUNWIND} == "no" +DIRDEPS+= gnu/lib/libgcc .endif .include Modified: head/targets/pseudo/userland/lib/Makefile.depend ============================================================================== --- head/targets/pseudo/userland/lib/Makefile.depend Tue Oct 31 00:03:32 2017 (r325180) +++ head/targets/pseudo/userland/lib/Makefile.depend Tue Oct 31 00:03:36 2017 (r325181) @@ -224,6 +224,12 @@ DIRDEPS+= lib/libgpio DIRDEPS+= lib/libefivar .endif +.if ${MK_LLVM_LIBUNWIND} != "no" +DIRDEPS+= \ + lib/libgcc_eh \ + lib/libgcc_s +.endif + .if ${MK_OFED} != "no" DIRDEPS+= \ contrib/ofed/usr.lib/libcxgb4 \