<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/3dd4d32b217807e848de3bb065d75e25efdf337d">https://github.com/macports/macports-ports/commit/3dd4d32b217807e848de3bb065d75e25efdf337d</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 3dd4d32b217 cmake 1.1 pg: fix list handling
</span>3dd4d32b217 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 3dd4d32b217807e848de3bb065d75e25efdf337d
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Wed Aug 17 15:15:19 2022 +1000

<span style='display:block; white-space:pre;color:#404040;'>    cmake 1.1 pg: fix list handling
</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/65667
</span>---
 _resources/port1.0/group/cmake-1.1.tcl | 79 ++++++++++++++++------------------
 1 file changed, 36 insertions(+), 43 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/cmake-1.1.tcl b/_resources/port1.0/group/cmake-1.1.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index d6221eb1b70..6dcea0f32a7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/cmake-1.1.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/cmake-1.1.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -313,23 +313,20 @@ pre-configure {
</span> 
     # process ${configure.cppflags} because CMake ignores $CPPFLAGS
     if {${configure.cppflags} ne ""} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set cppflags [split ${configure.cppflags}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        # reset configure.cppflags; we don't want options in double in CPPFLAGS and CFLAGS/CXXFLAGS
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.cppflags
</span>         # copy the cppflags arguments one by one into cflags and family
         # CMake does have an INCLUDE_DIRECTORIES variable but setting it from the commandline
         # doesn't have the intended effect (any longer).
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        foreach flag ${cppflags} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.cflags-append     ${flag}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.cxxflags-append   ${flag}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            # append to the ObjC flags too, even if CMake ignores them:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.objcflags-append  ${flag}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.objcxxflags-append   ${flag}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_debug "CPPFLAGS=\"${cppflags}\" inserted into CFLAGS=\"${configure.cflags}\" CXXFLAGS=\"${configure.cxxflags}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cflags-append     {*}${configure.cppflags}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxxflags-append   {*}${configure.cppflags}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # append to the ObjC flags too, even if CMake ignores them:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.objcflags-append  {*}${configure.cppflags}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.objcxxflags-append   {*}${configure.cppflags}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_debug "CPPFLAGS=\"[join ${configure.cppflags}]\" inserted into CFLAGS=\"[join ${configure.cflags}]\" CXXFLAGS=\"[join ${configure.cxxflags}]\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # reset configure.cppflags; we don't want options in double in CPPFLAGS and CFLAGS/CXXFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cppflags
</span>     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.pre_args-prepend "-G \"[join ${cmake.generator}]\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.pre_args-prepend -G \"[join ${cmake.generator}]\"
</span>     # undo a counterproductive action from the debug PG:
     configure.args-delete -DCMAKE_BUILD_TYPE=debugFull
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -350,7 +347,7 @@ pre-configure {
</span> post-configure {
     # restore configure.ccache:
     if {[info exists cmake::ccache_cache]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.ccache    ${cmake::ccache_cache}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.ccache    {*}${cmake::ccache_cache}
</span>         ui_debug "configure.ccache restored to ${cmake::ccache_cache}"
     }
     # either compile_commands.json was created because of -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -367,10 +364,10 @@ post-configure {
</span> proc cmake.save_configure_cmd {{save_log_too ""}} {
     if {${save_log_too} ne ""} {
         pre-configure {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.pre_args-prepend "-cf '${configure.cmd} "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.post_args-append "|& tee ${workpath}/.macports.${subport}.configure.log'"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.cmd "/bin/csh"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ui_debug "configure command set to `${configure.cmd} ${configure.pre_args} ${configure.args} ${configure.post_args}`"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            configure.pre_args-prepend -cf '${configure.cmd}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            configure.post_args-append |& tee ${workpath}/.macports.${subport}.configure.log'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            configure.cmd /bin/csh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_debug "configure command set to `[join [concat ${configure.cmd} ${configure.pre_args} ${configure.args} ${configure.post_args}]]`"
</span>         }
     }
     post-configure {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -378,29 +375,29 @@ proc cmake.save_configure_cmd {{save_log_too ""}} {
</span>             foreach var [array names ::env] {
                 puts ${fd} "${var}=$::env(${var})"
             }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "[join [lrange [split ${configure.env} " "] 0 end] "\n"]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} [join ${configure.env} \n]
</span>             # the following variables are no longer set in the environment at this point:
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "CPP=\"${configure.cpp}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} CPP=\"[join ${configure.cpp}]\"
</span>             # these are particularly relevant because referenced in the configure.pre_args:
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "CC=\"${configure.cc}\""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "CXX=\"${configure.cxx}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} CC=\"[join ${configure.cc}]\"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} CXX=\"[join ${configure.cxx}]\"
</span>             if {${configure.objcxx} ne ${configure.cxx}} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                puts ${fd} "OBJCXX=\"${configure.objcxx}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                puts ${fd} OBJCXX=\"[join ${configure.objcxx}]\"
</span>             }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "CFLAGS=\"${configure.cflags}\""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "CXXFLAGS=\"${configure.cxxflags}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} CFLAGS=\"[join ${configure.cflags}]\"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} CXXFLAGS=\"[join ${configure.cxxflags}]\"
</span>             if {${configure.objcflags} ne ${configure.cflags}} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                puts ${fd} "OBJCFLAGS=\"${configure.objcflags}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                puts ${fd} OBJCFLAGS=\"[join ${configure.objcflags}]\"
</span>             }
             if {${configure.objcxxflags} ne ${configure.cxxflags}} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                puts ${fd} "OBJCXXFLAGS=\"${configure.objcxxflags}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                puts ${fd} OBJCXXFLAGS=\"[join ${configure.objcxxflags}]\"
</span>             }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "LDFLAGS=\"${configure.ldflags}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} LDFLAGS=\"[join ${configure.ldflags}]\"
</span>             if {${configure.optflags} ne ""} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                puts ${fd} "configure.optflags=\"${configure.optflags}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                puts ${fd} configure.optflags=\"[join ${configure.optflags}]\"
</span>             }
             puts ${fd} "\ncd ${worksrcpath}"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            puts ${fd} "${configure.cmd} [join ${configure.pre_args}] [join ${configure.args}] [join ${configure.post_args}]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            puts ${fd} "[join [concat ${configure.cmd} ${configure.pre_args} ${configure.args} ${configure.post_args}]]"
</span>             close ${fd}
             unset fd
         }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -412,8 +409,8 @@ proc cmake.save_configure_cmd {{save_log_too ""}} {
</span> }
 
 platform darwin {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set cmake._archflag_vars {cc_archflags cxx_archflags ld_archflags objc_archflags objcxx_archflags \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        universal_cflags universal_cxxflags universal_ldflags universal_objcflags universal_objcxxflags}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set cmake._archflag_vars [list cc_archflags cxx_archflags ld_archflags objc_archflags objcxx_archflags \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        universal_cflags universal_cxxflags universal_ldflags universal_objcflags universal_objcxxflags]
</span>     pre-configure {
         # cmake will add the correct -arch flag(s) based on the value of CMAKE_OSX_ARCHITECTURES.
         if {[variant_exists universal] && [variant_isset universal]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -468,11 +465,7 @@ platform darwin {
</span> 
         configure.args-append -DCMAKE_OSX_DEPLOYMENT_TARGET="${macosx_deployment_target}"
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {${configure.sdkroot} ne ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.args-append -DCMAKE_OSX_SYSROOT="${configure.sdkroot}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.args-append -DCMAKE_OSX_SYSROOT="/"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append -DCMAKE_OSX_SYSROOT="${configure.sysroot}"
</span>     }
     post-configure {
         # Although cmake wants us not to set -arch flags ourselves when we run cmake,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -498,15 +491,15 @@ variant debug description "Enable debug binaries" {
</span>         configure.ldflags-replace        -O2 -O0
         # get most if not all possible debug info
         if {[string match *clang* ${configure.cxx}] || [string match *clang* ${configure.cc}]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            set cmake::debugopts "-g -fno-limit-debug-info -DDEBUG"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set cmake::debugopts [list -g -fno-limit-debug-info -DDEBUG]
</span>         } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            set cmake::debugopts "-g -DDEBUG"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set cmake::debugopts [list -g -DDEBUG]
</span>         }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.cflags-append         ${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.cxxflags-append       ${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.objcflags-append      ${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.objcxxflags-append    ${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.ldflags-append        ${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cflags-append         {*}${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxxflags-append       {*}${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.objcflags-append      {*}${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.objcxxflags-append    {*}${cmake::debugopts}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.ldflags-append        {*}${cmake::debugopts}
</span>         # try to ensure that info won't get stripped
         configure.args-append           -DCMAKE_STRIP:FILEPATH=/bin/echo
     }
</pre><pre style='margin:0'>

</pre>