<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/d54197259360cc7b16dfd620d32dfeb55a2dbba3">https://github.com/macports/macports-ports/commit/d54197259360cc7b16dfd620d32dfeb55a2dbba3</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit d54197259360cc7b16dfd620d32dfeb55a2dbba3
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Thu May 6 09:58:24 2021 +0100

<span style='display:block; white-space:pre;color:#404040;'>    compilerwrapper PG: Clean up
</span>---
 _resources/port1.0/group/compilerwrapper-1.0.tcl | 33 ++++++++++++++++--------
 1 file changed, 22 insertions(+), 11 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/compilerwrapper-1.0.tcl b/_resources/port1.0/group/compilerwrapper-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 48edab3d19f..824f7eee851 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/compilerwrapper-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/compilerwrapper-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -48,6 +48,7 @@ proc compwrap::get_ccache_dir {} {
</span> }
 
 proc compwrap::trim {c} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Remove any enclosing "{....}" braces if present
</span>     if { [string range [option $c] 0 0] eq "\{" } {
         return [string range [option $c] 1 end-1 ]
     } else {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,46 +56,56 @@ proc compwrap::trim {c} {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+proc compwrap::comp_flags {tag} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    switch ${tag} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        cc      { set ftag "c" }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        default { set ftag ${tag} }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    return "[option configure.${ftag}flags] [get_canonical_archflags ${tag}]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> proc compwrap::create_wrapper {tag} {
     global prefix
 
     # Get the underlying compiler
     set comp [option configure.${tag}]
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     # If not defined, or tag not in list of known compilers to wrap, just return
     if {${comp} eq "" || [lsearch -exact [option compwrap.compilers_to_wrap] ${tag}] < 0} {
         return ${comp}
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Create the directory for the wrapper. Format is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # <port workpath>/<compiler tag>/<path to underlying compiler>
</span>     set wrapdir [option workpath]/compwrap/${tag}[file dirname ${comp}]
     if {![file exists ${wrapdir}]} {
         xinstall -d ${wrapdir}
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    switch ${tag} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        cc      { set ftag "c" }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        default { set ftag ${tag} }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Wrapper name, based on original
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Wrapper name, same as underlying compiler.
</span>     set fname ${wrapdir}/[file tail ${comp}]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     # Force recreate in case underlying compiler has changed
     file delete -force ${fname}
 
     # Basic option, to pass on all command line arguments
     set comp_opts "[trim compwrap.compiler_pre_flags] [trim compwrap.compiler_args_forward] [trim compwrap.compiler_post_flags]"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     # Add MacPorts compiler flags ?
     if { [option compwrap.add_compiler_flags] } {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set comp_opts "[option configure.${ftag}flags] [get_canonical_archflags ${tag}] ${comp_opts}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set comp_opts "[compwrap::comp_flags ${tag}] ${comp_opts}"
</span>     }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     # Add legacy support env vars
     if { [option compwrap.add_legacysupport_flags] } {
         set comp_opts "\$\{MACPORTS_LEGACY_SUPPORT_CPPFLAGS\} ${comp_opts}"
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Append ccache if active
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Prepend ccache launcher if active
</span>     if { [compwrap::use_ccache ${tag}] } {
         set comp "${prefix}/bin/ccache ${comp}"
     }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Finally create the wrapper script
</span>     ui_debug "Creating compiler wrapper ${fname}"
     set f [open ${fname} w 0755]
     puts ${f} "#!/bin/bash"
</pre><pre style='margin:0'>

</pre>