summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs/csu')
-rw-r--r--sys-libs/csu/csu-85.ebuild15
1 files changed, 14 insertions, 1 deletions
diff --git a/sys-libs/csu/csu-85.ebuild b/sys-libs/csu/csu-85.ebuild
index f8c0f3f7d29c..4e6c9fd1daf8 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
}