<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-base.
</pre>
<p><a href="https://github.com/macports/macports-base/commit/b86ef1ee82936f26d6d276b88b940b051cd94d3e">https://github.com/macports/macports-base/commit/b86ef1ee82936f26d6d276b88b940b051cd94d3e</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit b86ef1ee82936f26d6d276b88b940b051cd94d3e
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Thu Jul 4 16:14:43 2024 +1000
<span style='display:block; white-space:pre;color:#404040;'> Allow backslash line continuation in macports.conf
</span>---
src/macports1.0/macports.tcl | 31 +++++++++++++++++++++----------
1 file changed, 21 insertions(+), 10 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/macports1.0/macports.tcl b/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index f3463a716..5af6973a2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1117,20 +1117,31 @@ proc mportinit {{up_ui_options {}} {up_options {}} {up_variations {}}} {
</span> foreach file $conf_files {
if {[file exists $file]} {
set fd [open $file r]
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ set continuation 0
</span> while {[gets $fd line] >= 0} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[regexp $conf_option_re $line match option ignore val] == 1} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[dict exists $bootstrap_options $option]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- global macports::$option
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set val [string trim $val]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[dict exists $bootstrap_options $option is_path]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[catch {set $option [realpath $val]}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set $option [file normalize $val]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set $option $val
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set next_continuation [expr {[string index $line end] eq "\\"}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$next_continuation} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set line [string range $line 0 end-1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$continuation} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set val $line
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {[regexp $conf_option_re $line match option ignore val] != 1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ continue
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[dict exists $bootstrap_options $option]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global macports::$option
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set val [string trim $val]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[dict exists $bootstrap_options $option is_path]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[catch {set $option [realpath $val]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set $option [file normalize $val]
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {$continuation} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend $option {*}$val
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set $option $val
</span> }
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ set continuation $next_continuation
</span> }
close $fd
}
</pre><pre style='margin:0'>
</pre>