<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[123168] trunk/dports/lang</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/123168">123168</a></dd>
<dt>Author</dt> <dd>ryandesign@macports.org</dd>
<dt>Date</dt> <dd>2014-08-05 20:15:38 -0700 (Tue, 05 Aug 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre>gcc410: new port, version 4.10-20140727 (#43529); libgcc-devel subport is now in this portfile
gcc49: update to 4.9.1 (#43502); enable lto; libgcc subport is now in this portfile
gcc48: update to 4.8.3 (#43789); removed libgcc subport
Patches added to the above ports to deal with OS X deployment target values >= 10.10 (#43978)
Modeline added to the above ports
dragonegg-3.3-gcc-4.8, dragonegg-3.4-gcc-4.8: increase revision to rebuild</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportslangdragonegg33Portfile">trunk/dports/lang/dragonegg-3.3/Portfile</a></li>
<li><a href="#trunkdportslangdragonegg34Portfile">trunk/dports/lang/dragonegg-3.4/Portfile</a></li>
<li><a href="#trunkdportslanggcc410Portfile">trunk/dports/lang/gcc410/Portfile</a></li>
<li><a href="#trunkdportslanggcc48Portfile">trunk/dports/lang/gcc48/Portfile</a></li>
<li><a href="#trunkdportslanggcc49Portfile">trunk/dports/lang/gcc49/Portfile</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li>trunk/dports/lang/gcc410/</li>
<li><a href="#trunkdportslanggcc410filesmpgcc410">trunk/dports/lang/gcc410/files/mp-gcc410</a></li>
<li><a href="#trunkdportslanggcc410filespatch1010diff">trunk/dports/lang/gcc410/files/patch-10.10.diff</a></li>
<li><a href="#trunkdportslanggcc48filespatch1010diff">trunk/dports/lang/gcc48/files/patch-10.10.diff</a></li>
<li><a href="#trunkdportslanggcc49filespatch1010diff">trunk/dports/lang/gcc49/files/patch-10.10.diff</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkdportslanggcc410filesmpgcc49">trunk/dports/lang/gcc410/files/mp-gcc49</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportslangdragonegg33Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/dragonegg-3.3/Portfile (123167 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/dragonegg-3.3/Portfile        2014-08-06 02:44:18 UTC (rev 123167)
+++ trunk/dports/lang/dragonegg-3.3/Portfile        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx"> set gcc_version_no_dot 47
</span><span class="cx"> }
</span><span class="cx"> subport ${name}-gcc-4.8 {
</span><del>- revision 7
</del><ins>+ revision 8
</ins><span class="cx"> set gcc_version 4.8
</span><span class="cx"> set gcc_version_no_dot 48
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkdportslangdragonegg34Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/dragonegg-3.4/Portfile (123167 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/dragonegg-3.4/Portfile        2014-08-06 02:44:18 UTC (rev 123167)
+++ trunk/dports/lang/dragonegg-3.4/Portfile        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx"> set gcc_version_no_dot 47
</span><span class="cx"> }
</span><span class="cx"> subport ${name}-gcc-4.8 {
</span><del>- revision 2
</del><ins>+ revision 3
</ins><span class="cx"> set gcc_version 4.8
</span><span class="cx"> set gcc_version_no_dot 48
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkdportslanggcc410Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/gcc410/Portfile (122759 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc49/Portfile        2014-07-29 00:24:13 UTC (rev 122759)
+++ trunk/dports/lang/gcc410/Portfile        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
</ins><span class="cx"> # $Id$
</span><span class="cx">
</span><span class="cx"> PortSystem 1.0
</span><span class="lines">@@ -4,12 +5,11 @@
</span><span class="cx"> PortGroup select 1.0
</span><span class="cx"> PortGroup compiler_blacklist_versions 1.0
</span><span class="cx">
</span><del>-name gcc49
</del><ins>+name gcc410
</ins><span class="cx"> subport libgcc-devel {}
</span><span class="cx">
</span><del>-# Whenever this port is bumped for version/revision, please revbump dragonegg-*-gcc-4.9
-version 4.9-20140416
-revision 2
</del><ins>+# Whenever this port is bumped for version/revision, please revbump dragonegg-*-gcc-4.10
+version 4.10-20140727
</ins><span class="cx"> platforms darwin
</span><span class="cx"> categories lang
</span><span class="cx"> maintainers mww openmaintainer
</span><span class="lines">@@ -29,20 +29,21 @@
</span><span class="cx"> http://gcc.skazkaforyou.com/snapshots/${version}/
</span><span class="cx">
</span><span class="cx"> distname gcc-${version}
</span><ins>+use_bzip2 yes
</ins><span class="cx">
</span><del>-checksums rmd160 ee65d3bf87d79dbfb306233328ee3e3defe702b1 \
- sha256 a1bac4e9fe8d8eca0c70fe22374e34abecd138dfc49130b01d73133f68b03b48
</del><ins>+checksums rmd160 fa7eeb4087bdbc46bd5dc002a0f072e0b2cf84df \
+ sha256 8bead70d4fb6cb91caa5be94bf2f26f46fa539ca70aab64d177aecf460c3dc7e
</ins><span class="cx">
</span><del>-use_bzip2 yes
-
</del><span class="cx"> depends_lib port:gmp port:mpfr port:libiconv port:libmpc path:lib/pkgconfig/cloog-isl.pc:cloog port:libgcc-devel
</span><span class="cx"> depends_run port:gcc_select port:ld64 port:cctools
</span><span class="cx">
</span><span class="cx"> depends_skip_archcheck-append gcc_select ld64 cctools
</span><span class="cx"> license_noconflict gmp mpfr ppl libmpc
</span><span class="cx">
</span><del>-set major 4.9
</del><ins>+patchfiles patch-10.10.diff
</ins><span class="cx">
</span><ins>+set major 4.10
+
</ins><span class="cx"> platform darwin {
</span><span class="cx"> configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
</span><span class="cx"> }
</span><span class="lines">@@ -107,7 +108,7 @@
</span><span class="cx">
</span><span class="cx"> destroot.target install install-info-host
</span><span class="cx">
</span><del>-if {${subport} == "libgcc-devel"} {
</del><ins>+if {${subport} eq "libgcc-devel"} {
</ins><span class="cx"> conflicts libgcc
</span><span class="cx">
</span><span class="cx"> # http://trac.macports.org/ticket/35770
</span><span class="lines">@@ -194,7 +195,7 @@
</span><span class="cx"> foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
</span><span class="cx"> set extension [file extension ${file}]
</span><span class="cx"> set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
</span><del>-
</del><ins>+
</ins><span class="cx"> file rename ${file} ${newfile}
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -248,4 +249,4 @@
</span><span class="cx">
</span><span class="cx"> livecheck.type regex
</span><span class="cx"> livecheck.url ftp://gcc.gnu.org/pub/gcc/snapshots/
</span><del>-livecheck.regex LATEST-4.9 -> (4.9-\[0-9\]+)
</del><ins>+livecheck.regex LATEST-4.10 -> (4.10-\[0-9\]+)
</ins></span></pre></div>
<a id="trunkdportslanggcc410filesmpgcc410fromrev122759trunkdportslanggcc49filesmpgcc49"></a>
<div class="copfile"><h4>Copied: trunk/dports/lang/gcc410/files/mp-gcc410 (from rev 122759, trunk/dports/lang/gcc49/files/mp-gcc49) (0 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc410/files/mp-gcc410         (rev 0)
+++ trunk/dports/lang/gcc410/files/mp-gcc410        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+bin/gcc-mp-4.10
+bin/cpp-mp-4.10
+bin/c++-mp-4.10
+bin/g++-mp-4.10
+bin/gcj-mp-4.10
+bin/gcov-mp-4.10
+bin/gfortran-mp-4.10
</ins></span></pre></div>
<a id="trunkdportslanggcc410filesmpgcc49"></a>
<div class="delfile"><h4>Deleted: trunk/dports/lang/gcc410/files/mp-gcc49 (122759 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc49/files/mp-gcc49        2014-07-29 00:24:13 UTC (rev 122759)
+++ trunk/dports/lang/gcc410/files/mp-gcc49        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -1,7 +0,0 @@
</span><del>-bin/gcc-mp-4.9
-bin/cpp-mp-4.9
-bin/c++-mp-4.9
-bin/g++-mp-4.9
-bin/gcj-mp-4.9
-bin/gcov-mp-4.9
-bin/gfortran-mp-4.9
</del></span></pre></div>
<a id="trunkdportslanggcc410filespatch1010diff"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/gcc410/files/patch-10.10.diff (0 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc410/files/patch-10.10.diff         (rev 0)
+++ trunk/dports/lang/gcc410/files/patch-10.10.diff        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -0,0 +1,89 @@
</span><ins>+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
+@@ -940,8 +940,10 @@
+
+ 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
+ #elif SANITIZER_FREEBSD
+ // There is no 'd_off' field on FreeBSD.
+ #else
+--- libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h.orig
++++ libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
+@@ -392,12 +392,20 @@
+ #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_FREEBSD
+ struct __sanitizer_dirent {
+ unsigned int d_fileno;
</ins></span></pre></div>
<a id="trunkdportslanggcc48Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/gcc48/Portfile (123167 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc48/Portfile        2014-08-06 02:44:18 UTC (rev 123167)
+++ trunk/dports/lang/gcc48/Portfile        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
</ins><span class="cx"> # $Id$
</span><span class="cx">
</span><span class="cx"> PortSystem 1.0
</span><span class="lines">@@ -5,12 +6,10 @@
</span><span class="cx"> PortGroup compiler_blacklist_versions 1.0
</span><span class="cx">
</span><span class="cx"> name gcc48
</span><del>-subport libgcc {}
</del><span class="cx">
</span><span class="cx"> # Whenever this port is bumped for version/revision, please revbump dragonegg-*-gcc-4.8
</span><span class="cx"> epoch 2
</span><del>-version 4.8.2
-revision 2
</del><ins>+version 4.8.3
</ins><span class="cx"> platforms darwin
</span><span class="cx"> categories lang
</span><span class="cx"> maintainers mww openmaintainer
</span><span class="lines">@@ -28,18 +27,19 @@
</span><span class="cx"> gnu:gcc/gcc-${version}
</span><span class="cx">
</span><span class="cx"> distname gcc-${version}
</span><del>-
-checksums rmd160 a417e682baa20877c290f6dc7d3d03a0c3710371 \
- sha256 09dc2276c73424bbbfda1dbddc62bbbf900c9f185acf7f3e1d773ce2d7e3cdc8
-
</del><span class="cx"> use_bzip2 yes
</span><span class="cx">
</span><ins>+checksums rmd160 2c7214ff607cbe822282c04d1d6f9fea765c82c5 \
+ sha256 6a8e4f11b185f4fe2ed9d7fc053e80f8c7e73f800c045f51f9d8bea33f080f1e
+
</ins><span class="cx"> depends_lib port:gmp port:mpfr port:libiconv port:libmpc path:lib/pkgconfig/cloog-isl.pc:cloog path:lib/libgcc/libgcc_s.1.dylib:libgcc
</span><span class="cx"> depends_run port:gcc_select port:ld64 port:cctools
</span><span class="cx">
</span><span class="cx"> depends_skip_archcheck-append gcc_select ld64 cctools
</span><span class="cx"> license_noconflict gmp mpfr ppl libmpc
</span><span class="cx">
</span><ins>+patchfiles patch-10.10.diff
+
</ins><span class="cx"> set major 4.8
</span><span class="cx">
</span><span class="cx"> platform darwin {
</span><span class="lines">@@ -106,87 +106,6 @@
</span><span class="cx">
</span><span class="cx"> destroot.target install install-info-host
</span><span class="cx">
</span><del>-if {${subport} == "libgcc"} {
- conflicts libgcc-devel
-
- # http://trac.macports.org/ticket/35770
- # http://trac.macports.org/ticket/38814
- # While there can be multiple versions of these runtimes in a single
- # process, it is not possible to pass objects between different versions,
- # so we simplify this by having the libgcc port provide the newest version
- # of these runtimes for all versions of gcc to use.
- #
- # If there is a binary incompatible change to the runtime in a future
- # version of gcc, then the latest version of gcc to provide a given ABI
- # version should continue to provide a subport for that and older gcc
- # versions.
-
- depends_lib-delete path:lib/libgcc/libgcc_s.1.dylib:libgcc
-
- configure.args-delete --libdir=${prefix}/lib/${name}
- configure.args-append --libdir=${prefix}/lib/libgcc
-
- configure.args-delete --enable-languages=c,c++,objc,obj-c++,lto,fortran,java
- configure.args-append --enable-languages=c,c++,objc,obj-c++,lto,fortran
-
- # TODO: Possibly disable bootstrap with appropriate configure flags.
- # the problem is that libstdc++'s configure script tests for tls support
- # using the running compiler (not gcc for which libstdc++ is being built).
- # Thus when we build with clang, we get a mismatch
- # http://trac.macports.org/ticket/36116
- #compiler.blacklist-append {clang < 425}
- #configure.args-append --disable-bootstrap
- #build.target all
-
- post-destroot {
- file mkdir ${destroot}${prefix}/lib/libgcc.merged
-
- # Note that we really don't want to include libgcc_ext.10.[45].dylib here, but install_name_tool
- # doesn't know how to change the id of stubs, and it's easier than recreating them for each
- # gcc port.
- set dylibs {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.3.dylib libquadmath.0.dylib libstdc++.6.dylib libobjc-gnu.4.dylib libgomp.1.dylib libitm.1.dylib libssp.0.dylib libasan.0.dylib libatomic.1.dylib}
-
- foreach dylib ${dylibs} {
- # Different OS versions (eg: Leopard) or architectures (eg: PPC) don't produce all the dylibs
- # https://trac.macports.org/ticket/40098
- # https://trac.macports.org/ticket/40100
- if {! [file exists ${destroot}${prefix}/lib/libgcc/${dylib}]} {
- continue
- }
-
- move ${destroot}${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/libgcc.merged
- if {[variant_isset universal]} {
- foreach archdir [glob ${destroot}${prefix}/lib/libgcc/*/] {
- set archdir_nodestroot [string map "${destroot}/ /" ${archdir}]
- if {[file exists ${archdir}/${dylib}]} {
- system "install_name_tool -id ${prefix}/lib/libgcc/${dylib} ${archdir}/${dylib}"
- foreach link ${dylibs} {
- system "install_name_tool -change ${archdir_nodestroot}${link} ${prefix}/lib/libgcc/${link} ${archdir}/${dylib}"
- }
- system "lipo -create -output ${destroot}${prefix}/lib/libgcc.merged/${dylib}~ ${destroot}${prefix}/lib/libgcc.merged/${dylib} ${archdir}/${dylib} && mv ${destroot}${prefix}/lib/libgcc.merged/${dylib}~ ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
- }
- }
- }
-
- # strip debug symbols to supress debugger warnings:
- # http://trac.macports.org/attachment/ticket/34831
- if {! [string match *libgcc_ext* ${dylib}]} {
- system "strip -x ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
- }
- }
-
- file delete -force ${destroot}${prefix}/bin
- file delete -force ${destroot}${prefix}/share
- file delete -force ${destroot}${prefix}/include
- file delete -force ${destroot}${prefix}/lib/libgcc
- file delete -force ${destroot}${prefix}/libexec
-
- move ${destroot}${prefix}/lib/libgcc.merged ${destroot}${prefix}/lib/libgcc
-
- # For binary compatibility with binaries that linked against the old libstdcxx port
- ln -s libgcc/libstdc++.6.dylib ${destroot}${prefix}/lib/libstdc++.6.dylib
- }
-} else {
</del><span class="cx"> post-destroot {
</span><span class="cx"> file delete ${destroot}${prefix}/share/info/dir
</span><span class="cx">
</span><span class="lines">@@ -220,8 +139,6 @@
</span><span class="cx"> select.group gcc
</span><span class="cx"> select.file ${filespath}/mp-${name}
</span><span class="cx">
</span><del>-}
-
</del><span class="cx"> platform powerpc {
</span><span class="cx"> configure.universal_archs ppc ppc64
</span><span class="cx"> }
</span><span class="lines">@@ -248,4 +165,3 @@
</span><span class="cx"> livecheck.type regex
</span><span class="cx"> livecheck.url http://gcc.gnu.org/gcc-4.8/
</span><span class="cx"> livecheck.regex GCC (4\\.8\\.\[0-9\])
</span><del>-
</del></span></pre></div>
<a id="trunkdportslanggcc48filespatch1010diff"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/gcc48/files/patch-10.10.diff (0 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc48/files/patch-10.10.diff         (rev 0)
+++ trunk/dports/lang/gcc48/files/patch-10.10.diff        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+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;
</ins></span></pre></div>
<a id="trunkdportslanggcc49Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/gcc49/Portfile (123167 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc49/Portfile        2014-08-06 02:44:18 UTC (rev 123167)
+++ trunk/dports/lang/gcc49/Portfile        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -1,3 +1,4 @@
</span><ins>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
</ins><span class="cx"> # $Id$
</span><span class="cx">
</span><span class="cx"> PortSystem 1.0
</span><span class="lines">@@ -5,42 +6,41 @@
</span><span class="cx"> PortGroup compiler_blacklist_versions 1.0
</span><span class="cx">
</span><span class="cx"> name gcc49
</span><del>-subport libgcc-devel {}
</del><ins>+subport libgcc {}
</ins><span class="cx">
</span><span class="cx"> # Whenever this port is bumped for version/revision, please revbump dragonegg-*-gcc-4.9
</span><del>-version 4.9-20140416
-revision 2
</del><ins>+epoch 1
+version 4.9.1
</ins><span class="cx"> platforms darwin
</span><span class="cx"> categories lang
</span><span class="cx"> maintainers mww openmaintainer
</span><span class="cx"> # an exception in the license allows dependents to not be GPL
</span><span class="cx"> license {GPL-3+ Permissive}
</span><del>-description The GNU compiler collection, prerelease BETA
</del><ins>+description The GNU compiler collection
</ins><span class="cx"> long_description The GNU compiler collection, including front ends for \
</span><del>- C, C++, Objective-C, Objective-C++, Fortran and Java. \
- This is a prerelease BETA version!
</del><ins>+ C, C++, Objective-C, Objective-C++, Fortran and Java.
</ins><span class="cx">
</span><span class="cx"> homepage http://gcc.gnu.org/
</span><del>-master_sites http://gcc.petsads.us/snapshots/${version} \
- ftp://ftp.gwdg.de/pub/linux/gcc/snapshots/${version}/ \
- ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/snapshots/${version}/ \
- ftp://gcc.gnu.org/pub/gcc/snapshots/${version}/ \
- http://mirrors-us.seosue.com/gcc/snapshots/${version}/ \
- http://gcc.skazkaforyou.com/snapshots/${version}/
</del><ins>+master_sites ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/releases/gcc-${version}/ \
+ ftp://ftp.gwdg.de/pub/linux/gcc/releases/gcc-${version}/ \
+ ftp://gcc.ftp.nluug.nl/mirror/languages/gcc/releases/gcc-${version}/ \
+ ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/ \
+ gnu:gcc/gcc-${version}
</ins><span class="cx">
</span><span class="cx"> distname gcc-${version}
</span><ins>+use_bzip2 yes
</ins><span class="cx">
</span><del>-checksums rmd160 ee65d3bf87d79dbfb306233328ee3e3defe702b1 \
- sha256 a1bac4e9fe8d8eca0c70fe22374e34abecd138dfc49130b01d73133f68b03b48
</del><ins>+checksums rmd160 7a829a260648a190afa1d6c616c78ddc861f4f7d \
+ sha256 d334781a124ada6f38e63b545e2a3b8c2183049515a1abab6d513f109f1d717e
</ins><span class="cx">
</span><del>-use_bzip2 yes
-
-depends_lib port:gmp port:mpfr port:libiconv port:libmpc path:lib/pkgconfig/cloog-isl.pc:cloog port:libgcc-devel
</del><ins>+depends_lib port:gmp port:mpfr port:libiconv port:libmpc path:lib/pkgconfig/cloog-isl.pc:cloog path:lib/libgcc/libgcc_s.1.dylib:libgcc
</ins><span class="cx"> depends_run port:gcc_select port:ld64 port:cctools
</span><span class="cx">
</span><span class="cx"> depends_skip_archcheck-append gcc_select ld64 cctools
</span><span class="cx"> license_noconflict gmp mpfr ppl libmpc
</span><span class="cx">
</span><ins>+patchfiles patch-10.10.diff
+
</ins><span class="cx"> set major 4.9
</span><span class="cx">
</span><span class="cx"> platform darwin {
</span><span class="lines">@@ -49,7 +49,7 @@
</span><span class="cx">
</span><span class="cx"> configure.dir ${workpath}/build
</span><span class="cx"> configure.cmd ${worksrcpath}/configure
</span><del>-configure.args --enable-languages=c,c++,objc,obj-c++,fortran,java \
</del><ins>+configure.args --enable-languages=c,c++,objc,obj-c++,lto,fortran,java \
</ins><span class="cx"> --libdir=${prefix}/lib/${name} \
</span><span class="cx"> --includedir=${prefix}/include/${name} \
</span><span class="cx"> --infodir=${prefix}/share/info \
</span><span class="lines">@@ -107,8 +107,8 @@
</span><span class="cx">
</span><span class="cx"> destroot.target install install-info-host
</span><span class="cx">
</span><del>-if {${subport} == "libgcc-devel"} {
- conflicts libgcc
</del><ins>+if {${subport} eq "libgcc"} {
+ conflicts libgcc-devel
</ins><span class="cx">
</span><span class="cx"> # http://trac.macports.org/ticket/35770
</span><span class="cx"> # http://trac.macports.org/ticket/38814
</span><span class="lines">@@ -122,7 +122,7 @@
</span><span class="cx"> # version should continue to provide a subport for that and older gcc
</span><span class="cx"> # versions.
</span><span class="cx">
</span><del>- depends_lib-delete port:libgcc-devel
</del><ins>+ depends_lib-delete path:lib/libgcc/libgcc_s.1.dylib:libgcc
</ins><span class="cx">
</span><span class="cx"> configure.args-delete --libdir=${prefix}/lib/${name}
</span><span class="cx"> configure.args-append --libdir=${prefix}/lib/libgcc
</span><span class="lines">@@ -194,7 +194,7 @@
</span><span class="cx"> foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
</span><span class="cx"> set extension [file extension ${file}]
</span><span class="cx"> set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
</span><del>-
</del><ins>+
</ins><span class="cx"> file rename ${file} ${newfile}
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -247,5 +247,5 @@
</span><span class="cx"> configure.universal_args
</span><span class="cx">
</span><span class="cx"> livecheck.type regex
</span><del>-livecheck.url ftp://gcc.gnu.org/pub/gcc/snapshots/
-livecheck.regex LATEST-4.9 -> (4.9-\[0-9\]+)
</del><ins>+livecheck.url http://gcc.gnu.org/gcc-4.9/
+livecheck.regex GCC (4\\.9\\.\[0-9\])
</ins></span></pre></div>
<a id="trunkdportslanggcc49filespatch1010diff"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/gcc49/files/patch-10.10.diff (0 => 123168)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/gcc49/files/patch-10.10.diff         (rev 0)
+++ trunk/dports/lang/gcc49/files/patch-10.10.diff        2014-08-06 03:15:38 UTC (rev 123168)
</span><span class="lines">@@ -0,0 +1,89 @@
</span><ins>+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;
</ins></span></pre>
</div>
</div>
</body>
</html>