<pre style='margin:0'>
Mojca Miklavec (mojca) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/86a3a9f3163877e1bc842a0e6c6341fc6536a283">https://github.com/macports/macports-ports/commit/86a3a9f3163877e1bc842a0e6c6341fc6536a283</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 86a3a9f3163877e1bc842a0e6c6341fc6536a283
</span>Author: Mojca Miklavec <mojca@macports.org>
AuthorDate: Wed Nov 22 14:30:12 2017 +0100

<span style='display:block; white-space:pre;color:#404040;'>    mingw-w64: add support for posix threads & OpenMP
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    * new subports: {i686|x86_64}-w64-mingw32-winpthreads
</span><span style='display:block; white-space:pre;color:#404040;'>    * *-gcc renamed to *-gcc-nothreads for compiler without POSIX threads
</span><span style='display:block; white-space:pre;color:#404040;'>    * *-gcc now supports POSIX threads
</span><span style='display:block; white-space:pre;color:#404040;'>    * enable libgomp / support for OpenMP
</span><span style='display:block; white-space:pre;color:#404040;'>    * remove binutils as dependency (already added by the portgroup)
</span><span style='display:block; white-space:pre;color:#404040;'>    * add missing categories
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/55265
</span>---
 cross/i686-w64-mingw32-gcc/Portfile   | 55 ++++++++++++++++++++++-------------
 cross/mingw-w64/Portfile              | 55 ++++++++++++++++++++++++++++-------
 cross/x86_64-w64-mingw32-gcc/Portfile | 55 ++++++++++++++++++++++-------------
 3 files changed, 114 insertions(+), 51 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/cross/i686-w64-mingw32-gcc/Portfile b/cross/i686-w64-mingw32-gcc/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 5edb94d..a888e2d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/cross/i686-w64-mingw32-gcc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/cross/i686-w64-mingw32-gcc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -14,9 +14,9 @@ dist_subdir         gcc[lindex [split ${version} .] 0]
</span> 
 maintainers         {mojca @mojca} openmaintainer
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # these are build + runtime dependencies
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append  port:${mingw_target}-binutils \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:${mingw_target}-headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# these are build + runtime dependencies
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# (binutils are already added by the portgroup)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:${mingw_target}-headers
</span> # not sure if useful:
 #                   port:cloog
 #                   port:ppl
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -45,34 +45,49 @@ configure.args-append \
</span> #       Installs libgcc/libstdc++ and other target support libraries in such a
 #       way that multiple GCC installs can coexist simultaneously.
 #       (add once you have the default working as it needs some extra tweaking)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#   --enable-libgomp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#       Enable OpenMP support, it is not enabled by default on MinGW platforms.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#       Requires pthreads-win32 (target) installed.
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# First bootstrapping phase
</span> subport ${mingw_target}-gcc-bootstrap {
     build.target    all-gcc
     destroot.target install-gcc
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Supporting pthread requires an additional bootstrapping phase:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# subport ${mingw_target}-libgcc {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   depends_lib-append      port:${mingw_target}-crt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   depends_build-append    bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   build.target            all-target-libgcc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   destroot.target         install-target-libgcc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   # move libgcc_*.dll to a more suitable place
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Second bootstrapping phase
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${mingw_target}-gcc-nothreads {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # these two are not needed since we are not yet requesting posix threads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # build.target          all-target-libgcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # destroot.target       install-target-libgcc
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${subport} eq ${name}} {
</span>     depends_lib-append      port:${mingw_target}-crt
     depends_build-append    bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap
<span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Final phase
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq ${name}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision                1
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append      port:${mingw_target}-crt \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:${mingw_target}-winpthreads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_build-append    path:${mingw_target}/lib/libgcc_s.a:${mingw_target}-gcc-nothreads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append   --enable-threads=posix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            --enable-libgomp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # TODO: and add notes how to fix wine in regedit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} ne "${name}-bootstrap"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        move {*}[glob ${destroot}${prefix}/${mingw_target}/lib/*.dll] \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${destroot}${prefix}/${mingw_target}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span>     pre-activate {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set gcc ${mingw_target}-gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {![catch {set installed [lindex [registry_active ${gcc}] 0]}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            registry_deactivate_composite ${gcc} "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach flavour {gcc-bootstrap gcc-nothreads gcc} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set gcc ${mingw_target}-${flavour}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![catch {set installed [lindex [registry_active ${gcc}] 0]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                registry_deactivate_composite ${gcc} "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span>         }
     }
 }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/cross/mingw-w64/Portfile b/cross/mingw-w64/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 2770e8b..6b997ab 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/cross/mingw-w64/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/cross/mingw-w64/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -8,6 +8,7 @@ set mingw_name      w64-mingw32
</span> 
 platforms           darwin
 license             ZPL-2.1
<span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          cross devel
</span> maintainers         {mojca @mojca} openmaintainer
 
 description         GCC cross-compiler for Windows 64 & 32 bits
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,16 +25,23 @@ configure.dir       ${workpath}/build
</span> build.dir           ${configure.dir}
 post-extract {      file mkdir "${build.dir}" }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# create four subports:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# create six subports:
</span> # - i686-w64-mingw32-headers
 # - i686-w64-mingw32-crt
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# - i686-w64-mingw32-winpthreads
</span> # - x86_64-w64-mingw32-headers
 # - x86_64-w64-mingw32-crt
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# - x86_64-w64-mingw32-winpthreads
</span> foreach arch {i686 x86_64} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach component {crt headers} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach component {crt headers winpthreads} {
</span>         subport ${arch}-${mingw_name}-${component} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            set mingw_arch  ${arch}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            set mingw_dir   ${component}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set mingw_arch      ${arch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set mingw_comp      ${component}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {${component} eq "winpthreads"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                set mingw_dir   mingw-w64-libraries/${component}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                set mingw_dir   mingw-w64-${component}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span>         }
     }
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -41,26 +49,51 @@ foreach arch {i686 x86_64} {
</span> if {${subport} ne ${name}} {
     set mingw_target            ${mingw_arch}-${mingw_name}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.cmd               ${worksrcpath}/mingw-w64-${mingw_dir}/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cmd               ${worksrcpath}/${mingw_dir}/configure
</span>     configure.pre_args-replace  --prefix=${prefix} --prefix=${prefix}/${mingw_target}
     configure.args-append       --host=${mingw_target}
 
     # *-headers subports
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${mingw_dir} eq "headers"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${mingw_comp} eq "headers"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        revision                1
</span>         supported_archs         noarch
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # *-crt subports
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${mingw_dir} eq "crt"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # winpthreads install three files which conflict with placeholders provided by "headers"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # a relatively ugly workaround is to copy those three files from "winpthreads" to "headers"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # and then delete them from "winpthreads" again
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            foreach f {signal time unistd} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                set f_src  ${worksrcpath}/mingw-w64-libraries/winpthreads/include/pthread_${f}.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                set f_dest ${worksrcpath}/${mingw_dir}/crt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                copy -force ${f_src} ${f_dest}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # *-crt and *-winpthreads subports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span>         # We only need a dependency on either of the two GCC compilers:
         #   - ${mingw_target}-gcc-bootstrap
         #   - ${mingw_target}-gcc
         # to build. The rest of dependencies (*-headers, *-binutils)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        # are pulled in by either of those two ports.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # are pulled in by one of those two ports.
</span>         #
         # Runtime dependency on GCC is not added to avoid dependency cycles,
         # but in fact it's GCC that needs CRT at runtime, not the other way around.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        depends_build-append    bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {${mingw_comp} eq "crt"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            depends_build-append    bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # *-winpthreads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # winpthreads needs at least stage 2 compiler (or the final one)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            depends_build-append    path:${mingw_target}/lib/libgcc_s.a:${mingw_target}-gcc-nothreads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # see above
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                foreach f {signal time unistd} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    delete ${destroot}${prefix}/${mingw_target}/include/pthread_${f}.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>         #depends_run-append     bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap
         #depends_lib-append     port:${mingw_target}-binutils
         #depends_lib-append     port:${mingw_target}-headers
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/cross/x86_64-w64-mingw32-gcc/Portfile b/cross/x86_64-w64-mingw32-gcc/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index cc00cdb..8b331a5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/cross/x86_64-w64-mingw32-gcc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/cross/x86_64-w64-mingw32-gcc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -14,9 +14,9 @@ dist_subdir         gcc[lindex [split ${version} .] 0]
</span> 
 maintainers         {mojca @mojca} openmaintainer
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # these are build + runtime dependencies
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append  port:${mingw_target}-binutils \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:${mingw_target}-headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# these are build + runtime dependencies
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# (binutils are already added by the portgroup)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:${mingw_target}-headers
</span> # not sure if useful:
 #                   port:cloog
 #                   port:ppl
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -45,34 +45,49 @@ configure.args-append \
</span> #       Installs libgcc/libstdc++ and other target support libraries in such a
 #       way that multiple GCC installs can coexist simultaneously.
 #       (add once you have the default working as it needs some extra tweaking)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#   --enable-libgomp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#       Enable OpenMP support, it is not enabled by default on MinGW platforms.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#       Requires pthreads-win32 (target) installed.
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# First bootstrapping phase
</span> subport ${mingw_target}-gcc-bootstrap {
     build.target    all-gcc
     destroot.target install-gcc
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Supporting pthread requires an additional bootstrapping phase:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# subport ${mingw_target}-libgcc {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   depends_lib-append      port:${mingw_target}-crt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   depends_build-append    bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   build.target            all-target-libgcc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   destroot.target         install-target-libgcc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#   # move libgcc_*.dll to a more suitable place
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Second bootstrapping phase
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${mingw_target}-gcc-nothreads {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # these two are not needed since we are not yet requesting posix threads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # build.target          all-target-libgcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # destroot.target       install-target-libgcc
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${subport} eq ${name}} {
</span>     depends_lib-append      port:${mingw_target}-crt
     depends_build-append    bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap
<span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Final phase
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq ${name}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision                1
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append      port:${mingw_target}-crt \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:${mingw_target}-winpthreads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_build-append    path:${mingw_target}/lib/libgcc_s.a:${mingw_target}-gcc-nothreads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append   --enable-threads=posix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            --enable-libgomp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # TODO: and add notes how to fix wine in regedit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} ne "${name}-bootstrap"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        move {*}[glob ${destroot}${prefix}/${mingw_target}/lib/*.dll] \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${destroot}${prefix}/${mingw_target}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span>     pre-activate {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set gcc ${mingw_target}-gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {![catch {set installed [lindex [registry_active ${gcc}] 0]}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            registry_deactivate_composite ${gcc} "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach flavour {gcc-bootstrap gcc-nothreads gcc} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set gcc ${mingw_target}-${flavour}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![catch {set installed [lindex [registry_active ${gcc}] 0]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                registry_deactivate_composite ${gcc} "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span>         }
     }
 }
</pre><pre style='margin:0'>

</pre>