From 97f28f92eca28d79e9424337e64f61d438dc29ab Mon Sep 17 00:00:00 2001 From: Fabian Groffen Date: Sun, 19 Oct 2014 19:03:49 +0000 Subject: First steps towards support for OS X Yosemite (Portage version: 2.2.14_rc1-prefix/cvs/Darwin i386, signed Manifest commit with key 0x5F75F607C5C74E89) --- sys-devel/gcc-apple/ChangeLog | 7 ++- .../files/gcc-apple-4.2.1_p5666-darwin14.patch | 57 ++++++++++++++++++++++ .../gcc-apple/gcc-apple-4.2.1_p5666-r1.ebuild | 5 +- 3 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 sys-devel/gcc-apple/files/gcc-apple-4.2.1_p5666-darwin14.patch (limited to 'sys-devel') diff --git a/sys-devel/gcc-apple/ChangeLog b/sys-devel/gcc-apple/ChangeLog index 390bef898fc7..07689ed794e3 100644 --- a/sys-devel/gcc-apple/ChangeLog +++ b/sys-devel/gcc-apple/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sys-devel/gcc-apple # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc-apple/ChangeLog,v 1.26 2014/06/15 18:00:07 grobian Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc-apple/ChangeLog,v 1.27 2014/10/19 19:03:49 grobian Exp $ + + 19 Oct 2014; Fabian Groffen + +files/gcc-apple-4.2.1_p5666-darwin14.patch, + files/gcc-apple-4.2.1_p5666-perl-5.18.patch, gcc-apple-4.2.1_p5666-r1.ebuild: + First steps towards support for OS X Yosemite 15 Jun 2014; Fabian Groffen +files/gcc-apple-4.2.1_p5666-perl-5.18.patch, gcc-apple-4.2.1_p5666-r1.ebuild: diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1_p5666-darwin14.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1_p5666-darwin14.patch new file mode 100644 index 000000000000..d33d66d7ffbe --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.2.1_p5666-darwin14.patch @@ -0,0 +1,57 @@ +Darwin 14 is 10.10, but the encoding scheme doesn't allow this, so +encode everything from Darwin 14 and up as 10.9. + +Darwin 14 has some newer preprocessor stuff in its headers, work around +that. + +Lift some seemingly arbitrary restriction for Darwin 14 and up. + +--- gcc/config/darwin-c.c ++++ gcc/config/darwin-c.c +@@ -945,6 +945,10 @@ + result[2] = darwin_macosx_version_min[3]; + if (darwin_macosx_version_min[4] != '\0') + { ++ if (ISDIGIT(darwin_macosx_version_min[4])) ++ { ++ result[2] = '9'; /* latest version we can encode */ ++ } else { + if (darwin_macosx_version_min[4] != '.') + goto fail; + if (! ISDIGIT (darwin_macosx_version_min[5])) +@@ -952,6 +956,7 @@ + if (darwin_macosx_version_min[6] != '\0') + goto fail; + result[3] = darwin_macosx_version_min[5]; ++ } + } + else + result[3] = '0'; +--- gcc/libgcov.c ++++ gcc/libgcov.c +@@ -34,6 +34,14 @@ + #include "coretypes.h" + #include "tm.h" + ++/* to deal with XBC headers from 10.10 */ ++#ifndef __has_extension ++#define __has_extension(x) 0 ++#endif ++#ifndef __has_feature ++#define __has_feature(x) 0 ++#endif ++ + /* APPLE LOCAL begin instant off 6414141 */ + #if defined(__APPLE__) && !defined(__STATIC__) && !defined(__ppc__) && !defined(__ppc64__) && !defined(__arm__) + #include +--- gcc/config/darwin-driver.c ++++ gcc/config/darwin-driver.c +@@ -174,8 +174,6 @@ + version_p = osversion + 1; + if (ISDIGIT (*version_p)) + major_vers = major_vers * 10 + (*version_p++ - '0'); +- if (major_vers > 4 + 9) +- goto parse_failed; + if (*version_p++ != '.') + goto parse_failed; + version_pend = strchr(version_p, '.'); diff --git a/sys-devel/gcc-apple/gcc-apple-4.2.1_p5666-r1.ebuild b/sys-devel/gcc-apple/gcc-apple-4.2.1_p5666-r1.ebuild index a9cc887fde9a..431809fc2c60 100644 --- a/sys-devel/gcc-apple/gcc-apple-4.2.1_p5666-r1.ebuild +++ b/sys-devel/gcc-apple/gcc-apple-4.2.1_p5666-r1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc-apple/gcc-apple-4.2.1_p5666-r1.ebuild,v 1.4 2014/06/15 18:00:07 grobian Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc-apple/gcc-apple-4.2.1_p5666-r1.ebuild,v 1.5 2014/10/19 19:03:49 grobian Exp $ EAPI="3" @@ -111,6 +111,9 @@ src_prepare() { [[ ${CHOST} == *86*-apple-darwin8 ]] && \ epatch "${FILESDIR}"/${PN}-${GCC_VERS}-dsymutil.patch + # Pseudo-support OS X 10.10 + epatch "${FILESDIR}"/${P}-darwin14.patch + # bootstrapping might fail with host provided gcc on 10.4/x86 if ! is_crosscompile && ! echo "int main(){return 0;}" | gcc -o "${T}"/foo \ -mdynamic-no-pic -x c - >/dev/null 2>&1; -- cgit v1.2.3-65-gdbad