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