[125310] trunk/dports/lang/gcc49
larryv at macports.org
larryv at macports.org
Fri Sep 12 21:59:28 PDT 2014
Revision: 125310
https://trac.macports.org/changeset/125310
Author: larryv at macports.org
Date: 2014-09-12 21:59:28 -0700 (Fri, 12 Sep 2014)
Log Message:
-----------
gcc49, libgcc: Update patch for Yosemite build
Use the newer patch from the gcc-patches mailing list[1] and drop the
irrelevant and invalid fixes for 32-bit inodes[2].
[1] https://gcc.gnu.org/ml/gcc-patches/2014-08/msg02428.html
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61407#c39
Modified Paths:
--------------
trunk/dports/lang/gcc49/Portfile
Added Paths:
-----------
trunk/dports/lang/gcc49/files/Fix-__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__.patch
Removed Paths:
-------------
trunk/dports/lang/gcc49/files/patch-10.10.diff
Modified: trunk/dports/lang/gcc49/Portfile
===================================================================
--- trunk/dports/lang/gcc49/Portfile 2014-09-13 02:40:47 UTC (rev 125309)
+++ trunk/dports/lang/gcc49/Portfile 2014-09-13 04:59:28 UTC (rev 125310)
@@ -40,7 +40,8 @@
depends_skip_archcheck-append gcc_select ld64 cctools
license_noconflict gmp mpfr ppl libmpc
-patchfiles patch-10.10.diff
+patch.pre_args -p1
+patchfiles Fix-__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__.patch
set major 4.9
Added: trunk/dports/lang/gcc49/files/Fix-__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__.patch
===================================================================
--- trunk/dports/lang/gcc49/files/Fix-__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__.patch (rev 0)
+++ trunk/dports/lang/gcc49/files/Fix-__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__.patch 2014-09-13 04:59:28 UTC (rev 125310)
@@ -0,0 +1,184 @@
+From gcc-patches-return-376219-listarch-gcc-patches=gcc dot gnu dot org at gcc dot gnu dot org Tue Aug 26 18:11:50 2014
+Return-Path: <gcc-patches-return-376219-listarch-gcc-patches=gcc dot gnu dot org at gcc dot gnu dot org>
+Delivered-To: listarch-gcc-patches at gcc dot gnu dot org
+Received: (qmail 25306 invoked by alias); 26 Aug 2014 18:11:50 -0000
+Mailing-List: contact gcc-patches-help at gcc dot gnu dot org; run by ezmlm
+Precedence: bulk
+List-Id: <gcc-patches.gcc.gnu.org>
+List-Archive: <http://gcc.gnu.org/ml/gcc-patches/>
+List-Post: <mailto:gcc-patches at gcc dot gnu dot org>
+List-Help: <mailto:gcc-patches-help at gcc dot gnu dot org>
+Sender: gcc-patches-owner at gcc dot gnu dot org
+Delivered-To: mailing list gcc-patches at gcc dot gnu dot org
+Received: (qmail 25285 invoked by uid 89); 26 Aug 2014 18:11:48 -0000
+Authentication-Results: sourceware.org; auth=none
+X-Virus-Found: No
+X-Spam-SWARE-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2
+X-HELO: mail-we0-f177.google.com
+Received: from mail-we0-f177.google.com (HELO mail-we0-f177.google.com) (74.125.82.177) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Tue, 26 Aug 2014 18:11:47 +0000
+Received: by mail-we0-f177.google.com with SMTP id w62so15108145wes.36 for <gcc-patches at gcc.gnu.org>; Tue, 26 Aug 2014 11:11:44 -0700 (PDT)
+X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=jQ8aZHBAd6aQJ3IMFFUC1zIOTmzfBeJqWQhaseZNEsU=; b=RhREQ4ihhLt2jJtbfxJSCLGCo/lICme+YCyHeZpI/AzO1i+eTcMJ94dAcfmYVa3Sck Cf9oFxCOw3VU5kktoLrlatc24kJjYFpovV1UxFJco67XdorzR6mr0F6VQXH0gaC2g3Jz lqb4wLPhGIEzkCGn9JAUV7LKa+Sc2pBR8nZMVqiOiNSy0h08EUfP7q2uJk5OrJKpVMOK ekDdKFEvO8IwglW4WGjohbTADyprazBNjDfnBkML/1oKIgMUXgMlBiY7O2fhbnr4mGEz yDciKi9gsmxXY0+2r3VbzyXw+wXtJWlujzgfmv7ImN/0wQ2xfJMWbd1z450A/V+HK/PU b90g==
+X-Gm-Message-State: ALoCoQl0hzSRQSEGOgbvgyiep3ufqSqyioui3xbjhaWFUBFKcB9UvLGzQ95p/4hGHUfPlpQHv1JK
+X-Received: by 10.180.74.42 with SMTP id q10mr23507919wiv.39.1409076704756; Tue, 26 Aug 2014 11:11:44 -0700 (PDT)
+Received: from localhost.localdomain (host81-133-133-27.in-addr.btopenworld.com. [81.133.133.27]) by mx.google.com with ESMTPSA id cy9sm14548123wib.18.2014.08.26.11.11.43 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 26 Aug 2014 11:11:44 -0700 (PDT)
+From: James Clarke <jrtc27 at jrtc27 dot com>
+To: gcc-patches at gcc dot gnu dot org
+Cc: James Clarke <jrtc27 at jrtc27 dot com>
+Subject: [PATCH v4 1/2] Fix __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
+Date: Tue, 26 Aug 2014 19:11:31 +0100
+Message-Id: <1409076692-65815-2-git-send-email-jrtc27 at jrtc27.com>
+In-Reply-To: <1409076692-65815-1-git-send-email-jrtc27 at jrtc27 dot com>
+References: <1409076692-65815-1-git-send-email-jrtc27 at jrtc27.com>
+
+Previously, this macro had taken the form 10X0, where X is the minor
+version number, e.g. 1090 for OS X 10.9 Mavericks. However, as of OS X
+10.10 Yosemite, it should take the form 10XX00, i.e. 101000 for 10.10.
+
+Added a test for the new format and fixed the formatting for the
+existing ones.
+
+gcc/ChangeLog:
+
+ * config/darwin-c.c (version_as_macro): Added extra 0 for OS X 10.10
+ and above
+ * config/darwin-driver.c (darwin_find_version_from_kernel): Removed
+ kernel version check to avoid incrementing it after every major OS X
+ release
+
+gcc/testsuite/ChangeLog:
+
+ * gcc.db/darwin-minversion-1.c: Fixed formatting
+ * gcc.db/darwin-minversion-2.c: Fixed formatting
+ * gcc.db/darwin-minversion-3.c: Fixed formatting
+ * gcc.dg/darwin-minversion-4.c: Added test for OS X 10.10
+---
+ gcc/config/darwin-c.c | 25 +++++++++++++++++++------
+ gcc/config/darwin-driver.c | 2 --
+ gcc/testsuite/gcc.dg/darwin-minversion-1.c | 3 ++-
+ gcc/testsuite/gcc.dg/darwin-minversion-2.c | 3 ++-
+ gcc/testsuite/gcc.dg/darwin-minversion-3.c | 3 ++-
+ gcc/testsuite/gcc.dg/darwin-minversion-4.c | 12 ++++++++++++
+ 6 files changed, 37 insertions(+), 11 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.dg/darwin-minversion-4.c
+
+diff --git a/gcc/config/darwin-c.c b/gcc/config/darwin-c.c
+index 892ba35..7fe4b1f 100644
+--- a/gcc/config/darwin-c.c
++++ b/gcc/config/darwin-c.c
+@@ -571,21 +571,34 @@ find_subframework_header (cpp_reader *pfile, const char *header, cpp_dir **dirp)
+ }
+
+ /* Return the value of darwin_macosx_version_min suitable for the
+- __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ macro,
+- so '10.4.2' becomes 1040. The lowest digit is always zero.
++ __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ macro, so '10.4.2'
++ becomes 1040 and '10.10.0' becomes 101000. The lowest digit is
++ always zero, as is the second lowest for '10.10.x' and above.
+ Print a warning if the version number can't be understood. */
+ static const char *
+ version_as_macro (void)
+ {
+- static char result[] = "1000";
++ static char result[7] = "1000";
++ int minorDigitIdx;
+
+ if (strncmp (darwin_macosx_version_min, "10.", 3) != 0)
+ goto fail;
+ if (! ISDIGIT (darwin_macosx_version_min[3]))
+ goto fail;
+- result[2] = darwin_macosx_version_min[3];
+- if (darwin_macosx_version_min[4] != '\0'
+- && darwin_macosx_version_min[4] != '.')
++
++ minorDigitIdx = 3;
++ result[2] = darwin_macosx_version_min[minorDigitIdx++];
++ if (ISDIGIT (darwin_macosx_version_min[minorDigitIdx]))
++ {
++ /* Starting with OS X 10.10, the macro ends '00' rather than '0',
++ i.e. 10.10.x becomes 101000 rather than 10100. */
++ result[3] = darwin_macosx_version_min[minorDigitIdx++];
++ result[4] = '0';
++ result[5] = '0';
++ result[6] = '\0';
++ }
++ if (darwin_macosx_version_min[minorDigitIdx] != '\0'
++ && darwin_macosx_version_min[minorDigitIdx] != '.')
+ goto fail;
+
+ return result;
+diff --git a/gcc/config/darwin-driver.c b/gcc/config/darwin-driver.c
+index 8b6ae93..eb478e8 100644
+--- a/gcc/config/darwin-driver.c
++++ b/gcc/config/darwin-driver.c
+@@ -57,8 +57,6 @@ darwin_find_version_from_kernel (char *new_flag)
+ 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/gcc/testsuite/gcc.dg/darwin-minversion-1.c b/gcc/testsuite/gcc.dg/darwin-minversion-1.c
+index d8a3243..6221d61 100644
+--- a/gcc/testsuite/gcc.dg/darwin-minversion-1.c
++++ b/gcc/testsuite/gcc.dg/darwin-minversion-1.c
+@@ -2,7 +2,8 @@
+ /* { dg-options "-mmacosx-version-min=10.1" } */
+ /* { dg-do run { target *-*-darwin* } } */
+
+-int main(void)
++int
++main ()
+ {
+ #if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1010
+ fail me;
+diff --git a/gcc/testsuite/gcc.dg/darwin-minversion-2.c b/gcc/testsuite/gcc.dg/darwin-minversion-2.c
+index fd4975a..8e18d52 100644
+--- a/gcc/testsuite/gcc.dg/darwin-minversion-2.c
++++ b/gcc/testsuite/gcc.dg/darwin-minversion-2.c
+@@ -2,7 +2,8 @@
+ /* { dg-options "-mmacosx-version-min=10.1 -mmacosx-version-min=10.3" } */
+ /* { dg-do run { target *-*-darwin* } } */
+
+-int main(void)
++int
++main ()
+ {
+ #if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1030
+ fail me;
+diff --git a/gcc/testsuite/gcc.dg/darwin-minversion-3.c b/gcc/testsuite/gcc.dg/darwin-minversion-3.c
+index d0c5934..4fcb969 100644
+--- a/gcc/testsuite/gcc.dg/darwin-minversion-3.c
++++ b/gcc/testsuite/gcc.dg/darwin-minversion-3.c
+@@ -2,7 +2,8 @@
+ /* { dg-options "-mmacosx-version-min=10.4.10" } */
+ /* { dg-do compile { target *-*-darwin* } } */
+
+-int main(void)
++int
++main ()
+ {
+ #if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1040
+ fail me;
+diff --git a/gcc/testsuite/gcc.dg/darwin-minversion-4.c b/gcc/testsuite/gcc.dg/darwin-minversion-4.c
+new file mode 100644
+index 0000000..1cb42eb
+--- /dev/null
++++ b/gcc/testsuite/gcc.dg/darwin-minversion-4.c
+@@ -0,0 +1,12 @@
++/* Test that major versions greater than 9 work and have the additional 0. */
++/* { dg-options "-mmacosx-version-min=10.10.0" } */
++/* { dg-do compile { target *-*-darwin* } } */
++
++int
++main ()
++{
++#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 101000
++ fail me;
++#endif
++ return 0;
++}
+--
+2.1.0
+
Deleted: trunk/dports/lang/gcc49/files/patch-10.10.diff
===================================================================
--- trunk/dports/lang/gcc49/files/patch-10.10.diff 2014-09-13 02:40:47 UTC (rev 125309)
+++ trunk/dports/lang/gcc49/files/patch-10.10.diff 2014-09-13 04:59:28 UTC (rev 125310)
@@ -1,89 +0,0 @@
-https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61407#c16
---- gcc/config/darwin-c.c.orig
-+++ gcc/config/darwin-c.c
-@@ -572,20 +572,31 @@ find_subframework_header (cpp_reader *pfile, const char *header, cpp_dir **dirp)
-
- /* Return the value of darwin_macosx_version_min suitable for the
- __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ macro,
-- so '10.4.2' becomes 1040. The lowest digit is always zero.
-- Print a warning if the version number can't be understood. */
-+ so '10.4.2' becomes 1040 and '10.10.0' becomes 101000. The lowest
-+ digit is always zero. Print a warning if the version number
-+ can't be understood. */
- static const char *
- version_as_macro (void)
- {
-- static char result[] = "1000";
-+ static char result[7] = "1000";
-+ int minorDigitIdx;
-
- if (strncmp (darwin_macosx_version_min, "10.", 3) != 0)
- goto fail;
- if (! ISDIGIT (darwin_macosx_version_min[3]))
- goto fail;
-- result[2] = darwin_macosx_version_min[3];
-- if (darwin_macosx_version_min[4] != '\0'
-- && darwin_macosx_version_min[4] != '.')
-+
-+ minorDigitIdx = 3;
-+ result[2] = darwin_macosx_version_min[minorDigitIdx++];
-+ if (ISDIGIT(darwin_macosx_version_min[minorDigitIdx])) {
-+ /* Starting with 10.10 numeration for mactro changed */
-+ result[3] = darwin_macosx_version_min[minorDigitIdx++];
-+ result[4] = '0';
-+ result[5] = '0';
-+ result[6] = '\0';
-+ }
-+ if (darwin_macosx_version_min[minorDigitIdx] != '\0'
-+ && darwin_macosx_version_min[minorDigitIdx] != '.')
- goto fail;
-
- return result;
---- gcc/config/darwin-driver.c.orig
-+++ gcc/config/darwin-driver.c
-@@ -57,7 +57,7 @@ darwin_find_version_from_kernel (char *new_flag)
- version_p = osversion + 1;
- if (ISDIGIT (*version_p))
- major_vers = major_vers * 10 + (*version_p++ - '0');
-- if (major_vers > 4 + 9)
-+ if (major_vers > 4 + 10)
- goto parse_failed;
- if (*version_p++ != '.')
- goto parse_failed;
---- libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc.orig
-+++ libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
-@@ -835,8 +835,10 @@ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_type);
-
- COMPILER_CHECK(sizeof(__sanitizer_dirent) <= sizeof(dirent));
- CHECK_SIZE_AND_OFFSET(dirent, d_ino);
--#if SANITIZER_MAC
-+#if SANITIZER_MAC && ( !defined(__DARWIN_64_BIT_INO_T) || __DARWIN_64_BIT_INO_T)
- CHECK_SIZE_AND_OFFSET(dirent, d_seekoff);
-+#elif SANITIZER_MAC
-+// There is no d_seekoff with non 64-bit ino_t
- #else
- CHECK_SIZE_AND_OFFSET(dirent, d_off);
- #endif
---- libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h.orig
-+++ libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
-@@ -275,12 +275,20 @@ namespace __sanitizer {
- #endif
-
- #if SANITIZER_MAC
-+# if ! defined(__DARWIN_64_BIT_INO_T) || __DARWIN_64_BIT_INO_T
- struct __sanitizer_dirent {
- unsigned long long d_ino;
- unsigned long long d_seekoff;
- unsigned short d_reclen;
- // more fields that we don't care about
- };
-+# else
-+ struct __sanitizer_dirent {
-+ unsigned int d_ino;
-+ unsigned short d_reclen;
-+ // more fields that we don't care about
-+ };
-+# endif
- #elif SANITIZER_ANDROID || defined(__x86_64__)
- struct __sanitizer_dirent {
- unsigned long long d_ino;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140912/aa44ead6/attachment-0001.html>
More information about the macports-changes
mailing list