<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>