<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/b69f0cf9b8f8ce4b87cd565d2e7575ffb0ea414e">https://github.com/macports/macports-base/commit/b69f0cf9b8f8ce4b87cd565d2e7575ffb0ea414e</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 b69f0cf9b Resolve filesystem paths read from macports.conf
</span>b69f0cf9b is described below
<span style='display:block; white-space:pre;color:#808000;'>commit b69f0cf9b8f8ce4b87cd565d2e7575ffb0ea414e
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Tue Feb 27 13:27:27 2024 +1100
<span style='display:block; white-space:pre;color:#404040;'> Resolve filesystem paths read from macports.conf
</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/69327
</span>---
src/macports1.0/macports.tcl | 29 +++++++++++++++++++++--------
1 file changed, 21 insertions(+), 8 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 4fa9983a4..855ea6103 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;'>@@ -45,19 +45,28 @@ package require mpcommon 1.0
</span>
namespace eval macports {
namespace export bootstrap_options user_options portinterp_options open_mports ui_priorities
<span style='display:block; white-space:pre;background:#ffe0e0;'>- variable bootstrap_options "\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- portdbpath binpath auto_path extra_env sources_conf prefix portdbformat \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variable bootstrap_options [dict create]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Config file options with no special handling
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach opt [list binpath auto_path extra_env portdbformat \
</span> portarchivetype hfscompression portautoclean \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- porttrace portverbose keeplogs destroot_umask variants_conf rsync_server rsync_options \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ porttrace portverbose keeplogs destroot_umask rsync_server rsync_options \
</span> rsync_dir startupitem_autostart startupitem_type startupitem_install \
place_worksymlink xcodeversion xcodebuildcmd xcodecltversion xcode_license_unaccepted \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configureccache ccache_dir ccache_size configuredistcc configurepipe buildnicevalue buildmakejobs \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- applications_dir frameworks_dir developer_dir universal_archs build_arch macosx_sdk_version macosx_deployment_target \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configureccache ccache_size configuredistcc configurepipe buildnicevalue buildmakejobs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ universal_archs build_arch macosx_sdk_version macosx_deployment_target \
</span> macportsuser proxy_override_env proxy_http proxy_https proxy_ftp proxy_rsync proxy_skip \
master_site_local patch_site_local archive_site_local buildfromsource \
revupgrade_autorun revupgrade_mode revupgrade_check_id_loadcmds \
host_blacklist preferred_hosts sandbox_enable sandbox_network delete_la_files cxx_stdlib \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- packagemaker_path default_compilers pkg_post_unarchive_deletions ui_interactive"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_compilers pkg_post_unarchive_deletions ui_interactive] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dict set bootstrap_options $opt {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Config file options that are a filesystem path and should be fully resolved
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach opt [list applications_dir ccache_dir developer_dir frameworks_dir \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ packagemaker_path portdbpath prefix sources_conf variants_conf] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dict set bootstrap_options $opt is_path 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> variable user_options {}
variable portinterp_options "\
portdbpath porturl portpath portbuildpath auto_path prefix prefix_frozen portsharepath \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -999,9 +1008,13 @@ proc mportinit {{up_ui_options {}} {up_options {}} {up_variations {}}} {
</span> set fd [open $file r]
while {[gets $fd line] >= 0} {
if {[regexp $conf_option_re $line match option ignore val] == 1} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {$option in $bootstrap_options} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set macports::$option [string trim $val]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[dict exists $bootstrap_options $option]} {
</span> global macports::$option
<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;'>+ set $option [realpath [string trim $val]]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set $option [string trim $val]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
}
}
</pre><pre style='margin:0'>
</pre>