[110805] trunk/dports/lang

jeremyhu at macports.org jeremyhu at macports.org
Fri Sep 6 10:40:48 PDT 2013


Revision: 110805
          https://trac.macports.org/changeset/110805
Author:   jeremyhu at macports.org
Date:     2013-09-06 10:40:48 -0700 (Fri, 06 Sep 2013)
Log Message:
-----------
gcc*: Fix runtime linking and install info files (#36629)

Modified Paths:
--------------
    trunk/dports/lang/dragonegg-3.0/Portfile
    trunk/dports/lang/dragonegg-3.1/Portfile
    trunk/dports/lang/dragonegg-3.2/Portfile
    trunk/dports/lang/dragonegg-3.3/Portfile
    trunk/dports/lang/dragonegg-3.4/Portfile
    trunk/dports/lang/gcc42/Portfile
    trunk/dports/lang/gcc43/Portfile
    trunk/dports/lang/gcc44/Portfile
    trunk/dports/lang/gcc45/Portfile
    trunk/dports/lang/gcc46/Portfile
    trunk/dports/lang/gcc47/Portfile
    trunk/dports/lang/gcc48/Portfile
    trunk/dports/lang/gcc49/Portfile

Modified: trunk/dports/lang/dragonegg-3.0/Portfile
===================================================================
--- trunk/dports/lang/dragonegg-3.0/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/dragonegg-3.0/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -9,12 +9,12 @@
 name                    dragonegg-${llvm_version}
 
 subport                 ${name}-gcc-4.5 {
-    revision            2
+    revision            3
     set gcc_version     4.5
     set gcc_version_no_dot 45
 }
 subport                 ${name}-gcc-4.6 {
-    revision            2
+    revision            3
     set gcc_version     4.6
     set gcc_version_no_dot 46
 }

Modified: trunk/dports/lang/dragonegg-3.1/Portfile
===================================================================
--- trunk/dports/lang/dragonegg-3.1/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/dragonegg-3.1/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -9,17 +9,17 @@
 name                    dragonegg-${llvm_version}
 
 subport                 ${name}-gcc-4.5 {
-    revision            2
+    revision            3
     set gcc_version     4.5
     set gcc_version_no_dot 45
 }
 subport                 ${name}-gcc-4.6 {
-    revision            2
+    revision            3
     set gcc_version     4.6
     set gcc_version_no_dot 46
 }
 subport                 ${name}-gcc-4.7 {
-    revision            2
+    revision            3
     set gcc_version     4.7
     set gcc_version_no_dot 47
 }

Modified: trunk/dports/lang/dragonegg-3.2/Portfile
===================================================================
--- trunk/dports/lang/dragonegg-3.2/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/dragonegg-3.2/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -9,17 +9,17 @@
 name                    dragonegg-${llvm_version}
 
 subport                 ${name}-gcc-4.5 {
-    revision            2
+    revision            3
     set gcc_version     4.5
     set gcc_version_no_dot 45
 }
 subport                 ${name}-gcc-4.6 {
-    revision            2
+    revision            3
     set gcc_version     4.6
     set gcc_version_no_dot 46
 }
 subport                 ${name}-gcc-4.7 {
-    revision            2
+    revision            3
     set gcc_version     4.7
     set gcc_version_no_dot 47
 }

Modified: trunk/dports/lang/dragonegg-3.3/Portfile
===================================================================
--- trunk/dports/lang/dragonegg-3.3/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/dragonegg-3.3/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -9,22 +9,22 @@
 name                    dragonegg-${llvm_version}
 
 subport                 ${name}-gcc-4.5 {
-    revision            3
+    revision            4
     set gcc_version     4.5
     set gcc_version_no_dot 45
 }
 subport                 ${name}-gcc-4.6 {
-    revision            3
+    revision            4
     set gcc_version     4.6
     set gcc_version_no_dot 46
 }
 subport                 ${name}-gcc-4.7 {
-    revision            3
+    revision            4
     set gcc_version     4.7
     set gcc_version_no_dot 47
 }
 subport                 ${name}-gcc-4.8 {
-    revision            3
+    revision            4
     set gcc_version     4.8
     set gcc_version_no_dot 48
 }

Modified: trunk/dports/lang/dragonegg-3.4/Portfile
===================================================================
--- trunk/dports/lang/dragonegg-3.4/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/dragonegg-3.4/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -9,27 +9,27 @@
 name                    dragonegg-${llvm_version}
 
 subport                 ${name}-gcc-4.5 {
-    revision            0
+    revision            1
     set gcc_version     4.5
     set gcc_version_no_dot 45
 }
 subport                 ${name}-gcc-4.6 {
-    revision            0
+    revision            1
     set gcc_version     4.6
     set gcc_version_no_dot 46
 }
 subport                 ${name}-gcc-4.7 {
-    revision            0
+    revision            1
     set gcc_version     4.7
     set gcc_version_no_dot 47
 }
 subport                 ${name}-gcc-4.8 {
-    revision            0
+    revision            1
     set gcc_version     4.8
     set gcc_version_no_dot 48
 }
 subport                 ${name}-gcc-4.9 {
-    revision            0
+    revision            1
     set gcc_version     4.9
     set gcc_version_no_dot 49
 }

Modified: trunk/dports/lang/gcc42/Portfile
===================================================================
--- trunk/dports/lang/gcc42/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc42/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -5,7 +5,7 @@
 
 name			gcc42
 version			4.2.4
-revision		8
+revision		9
 platforms		darwin
 categories		lang
 maintainers		mww openmaintainer
@@ -116,14 +116,20 @@
 destroot.target		install install-info-host
 
 post-destroot {
-	file delete -force ${destroot}${prefix}/share/man/man7 \
-		${destroot}${prefix}/share/info
+    file delete ${destroot}${prefix}/share/info/dir
 
-    foreach dylib {libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
+    foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+        
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }

Modified: trunk/dports/lang/gcc43/Portfile
===================================================================
--- trunk/dports/lang/gcc43/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc43/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -6,7 +6,7 @@
 
 name                gcc43
 version             4.3.6
-revision            8
+revision            9
 platforms           darwin
 categories          lang
 maintainers         mww openmaintainer
@@ -137,18 +137,25 @@
 destroot.target     install install-info-host
 
 post-destroot {
-    file delete -force ${destroot}${prefix}/share/man/man7 \
-        ${destroot}${prefix}/share/info
     # install/copy ffitarget.h only if we have it
     if {![catch {set ffitarget.h [glob ${destroot}${prefix}/lib/${name}/gcc/*/${version}/include/ffitarget.h]} result]} {
         file copy ${ffitarget.h} ${destroot}${prefix}/include/${name}/
     }
 
-    foreach dylib {libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
+    file delete ${destroot}${prefix}/share/info/dir
+
+    foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+        
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }

Modified: trunk/dports/lang/gcc44/Portfile
===================================================================
--- trunk/dports/lang/gcc44/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc44/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -7,7 +7,7 @@
 name                gcc44
 epoch               1
 version             4.4.7
-revision            7
+revision            8
 platforms           darwin
 categories          lang
 maintainers         mww openmaintainer
@@ -138,8 +138,6 @@
 destroot.target     install install-info-host
 
 post-destroot {
-    file delete -force ${destroot}${prefix}/share/man/man7 \
-        ${destroot}${prefix}/share/info
     # install/copy ffitarget.h only if we have it
     if {![catch {set ffitarget.h [glob ${destroot}${prefix}/lib/${name}/gcc/*/${version}/include/ffitarget.h]} result]} {
         file copy ${ffitarget.h} ${destroot}${prefix}/include/${name}/
@@ -149,11 +147,20 @@
     file rename ${destroot}${prefix}/share/python/classfile.py \
                 ${destroot}${prefix}/share/python/classfile-44.py
 
-    foreach dylib {libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
+    file delete ${destroot}${prefix}/share/info/dir
+
+    foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+        
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }

Modified: trunk/dports/lang/gcc45/Portfile
===================================================================
--- trunk/dports/lang/gcc45/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc45/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -10,7 +10,7 @@
 
 epoch               1
 version             4.5.4
-revision            8
+revision            9
 platforms           darwin
 categories          lang
 maintainers         mww openmaintainer
@@ -214,8 +214,6 @@
     }
 } else {
 post-destroot {
-    file delete -force ${destroot}${prefix}/share/man/man7 \
-        ${destroot}${prefix}/share/info
     # install/copy ffitarget.h only if we have it
     if {![catch {set ffitarget.h [glob ${destroot}${prefix}/lib/${name}/gcc/*/${version}/include/ffitarget.h]} result]} {
         file copy ${ffitarget.h} ${destroot}${prefix}/include/${name}/
@@ -230,11 +228,20 @@
         eval file copy ${worksrcpath}/../gcc-${version}/gcc/config/darwin-sections.def [glob ${destroot}${prefix}/lib/${name}/gcc/*/${version}/plugin/include/config]
     }
 
-    foreach dylib {libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
+    file delete ${destroot}${prefix}/share/info/dir
+
+    foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+        
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.3.dylib libstdc++.6.dylib libobjc-gnu.2.dylib libgomp.1.dylib libssp.0.dylib} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }

Modified: trunk/dports/lang/gcc46/Portfile
===================================================================
--- trunk/dports/lang/gcc46/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc46/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -9,7 +9,7 @@
 
 # Whenever this port is bumped for version/revision, please revbump dragonegg-3.[012] and dragonegg-3.[34]-gcc-4.6
 version             4.6.4
-revision            2
+revision            3
 platforms           darwin
 categories          lang
 maintainers         mww openmaintainer
@@ -134,18 +134,25 @@
 destroot.target     install install-info-host
 
 post-destroot {
-    file delete -force ${destroot}${prefix}/share/man/man7 \
-        ${destroot}${prefix}/share/info
     # install/copy ffitarget.h only if we have it
     if {![catch {set ffitarget.h [glob ${destroot}${prefix}/lib/${name}/gcc/*/${version}/include/ffitarget.h]} result]} {
         file copy ${ffitarget.h} ${destroot}${prefix}/include/${name}/
     }
 
-    foreach dylib {libgcc_s.1.dylib libgfortran.3.dylib libquadmath.0.dylib libstdc++.6.dylib libgomp.1.dylib libssp.0.dylib} {
+    file delete ${destroot}${prefix}/share/info/dir
+
+    foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+        
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.3.dylib libquadmath.0.dylib libstdc++.6.dylib libgomp.1.dylib libssp.0.dylib} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }

Modified: trunk/dports/lang/gcc47/Portfile
===================================================================
--- trunk/dports/lang/gcc47/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc47/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -10,7 +10,7 @@
 
 # Whenever this port is bumped for version/revision, please revbump dragonegg-3.[34]-gcc-4.7
 version             4.7.3
-revision            2
+revision            3
 platforms           darwin
 categories          lang
 maintainers         mww openmaintainer
@@ -133,18 +133,25 @@
 destroot.target     install install-info-host
 
 post-destroot {
-    file delete -force ${destroot}${prefix}/share/man/man7 \
-        ${destroot}${prefix}/share/info
     # install/copy ffitarget.h only if we have it
     if {![catch {set ffitarget.h [glob ${destroot}${prefix}/lib/${name}/gcc/*/${version}/include/ffitarget.h]} result]} {
         file copy ${ffitarget.h} ${destroot}${prefix}/include/${name}/
     }
 
-    foreach 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} {
+    file delete ${destroot}${prefix}/share/info/dir
+
+    foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+        
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {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} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }

Modified: trunk/dports/lang/gcc48/Portfile
===================================================================
--- trunk/dports/lang/gcc48/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc48/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -10,7 +10,7 @@
 # Whenever this port is bumped for version/revision, please revbump dragonegg-3.[34]-gcc-4.8
 epoch               2
 version             4.8.1
-revision            2
+revision            3
 platforms           darwin
 categories          lang
 maintainers         mww openmaintainer
@@ -143,7 +143,10 @@
     post-destroot {
         file mkdir ${destroot}${prefix}/lib/libgcc.merged
 
-        set dylibs {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}
+        # 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
@@ -169,7 +172,9 @@
 
             # strip debug symbols to supress debugger warnings:
             # http://trac.macports.org/attachment/ticket/34831
-            system "strip -x ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
+            if {! [string match *libgcc_ext* ${dylib}]} {
+                system "strip -x ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
+            }
         }
 
         file delete -force ${destroot}${prefix}/bin              
@@ -185,14 +190,20 @@
     }
 } else {
 post-destroot {
-    file delete -force ${destroot}${prefix}/share/man/man7
-    file delete -force ${destroot}${prefix}/share/info
+    file delete ${destroot}${prefix}/share/info/dir
 
-    foreach 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 file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {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} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }

Modified: trunk/dports/lang/gcc49/Portfile
===================================================================
--- trunk/dports/lang/gcc49/Portfile	2013-09-06 16:15:55 UTC (rev 110804)
+++ trunk/dports/lang/gcc49/Portfile	2013-09-06 17:40:48 UTC (rev 110805)
@@ -9,7 +9,7 @@
 
 # Whenever this port is bumped for version/revision, please revbump dragonegg-3.4-gcc-4.9
 version             4.9-20130901
-revision            0
+revision            1
 platforms           darwin
 categories          lang
 maintainers         mww openmaintainer
@@ -144,7 +144,10 @@
     post-destroot {
         file mkdir ${destroot}${prefix}/lib/libgcc.merged
 
-        set dylibs {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}
+        # 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
@@ -170,7 +173,9 @@
 
             # strip debug symbols to supress debugger warnings:
             # http://trac.macports.org/attachment/ticket/34831
-            system "strip -x ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
+            if {! [string match *libgcc_ext* ${dylib}]} {
+                system "strip -x ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
+            }
         }
 
         file delete -force ${destroot}${prefix}/bin              
@@ -186,14 +191,20 @@
     }
 } else {
 post-destroot {
-    file delete -force ${destroot}${prefix}/share/man/man7
-    file delete -force ${destroot}${prefix}/share/info
+    file delete ${destroot}${prefix}/share/info/dir
 
-    foreach 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 file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
+        set extension [file extension ${file}]
+        set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
+        
+        file rename ${file} ${newfile}
+    }
+
+    foreach dylib {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} {
         # 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}]} {
+        if {[file exists ${prefix}/lib/libgcc/${dylib}]} {
             delete ${destroot}${prefix}/lib/${name}/${dylib}
             ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
         }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130906/7085bef8/attachment-0001.html>


More information about the macports-changes mailing list