commit:     54b8dc19fb80e6e6a10ccd8f14dc9765793b6f24
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 12 10:43:54 2018 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Tue Jun 12 10:44:10 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54b8dc19

sys-libs/csu: require Clang or gcc-apple compiler

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 sys-libs/csu/csu-85.ebuild | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/sys-libs/csu/csu-85.ebuild b/sys-libs/csu/csu-85.ebuild
index f8c0f3f7d29..4e6c9fd1daf 100644
--- a/sys-libs/csu/csu-85.ebuild
+++ b/sys-libs/csu/csu-85.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -16,6 +16,13 @@ KEYWORDS="~ppc-macos ~x64-macos ~x86-macos"
 IUSE=""
 S=${WORKDIR}/Csu-${PV}
 
+# for now it seems FSF GCC can't compile this thing, so we need
+# gcc-apple or clang (which is also sort of "-apple")
+DEPEND="|| (
+               sys-devel/clang
+               =sys-devel/gcc-apple-4.2.1*
+       )"
+
 src_prepare() {
        # since we don't have crt0, we can't build it either
        sed -i \
@@ -39,6 +46,12 @@ src_prepare() {
 }
 
 src_compile() {
+       # FSF GCC-7.3.0 most notably complains about private_externs, but it
+       # also has issues with the assembly, so use gcc-apple, if it is
+       # installed.  Normally, (non-ppc) users will have clang installed,
+       # so this isn't used, should they have gcc-apple installed, then
+       # this wouldn't hurt either.
+       type -P gcc-4.2.1 > /dev/null && export CC=gcc-4.2.1
        emake USRLIBDIR="${EPREFIX}"/lib || die
 }
 

Reply via email to