<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/367da8edd701d8307554dcc9f4da442072c698c6">https://github.com/macports/macports-base/commit/367da8edd701d8307554dcc9f4da442072c698c6</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 367da8edd701d8307554dcc9f4da442072c698c6
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Tue Apr 9 02:14:58 2024 +1000

<span style='display:block; white-space:pre;color:#404040;'>    Set option default values only if no value set
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Override values are set before the packages that create the options are
</span><span style='display:block; white-space:pre;color:#404040;'>    even loaded.
</span>---
 src/package1.0/portarchivefetch.tcl | 12 ++++----
 src/package1.0/portpkg.tcl          |  2 +-
 src/package1.0/portunarchive.tcl    | 18 +++++------
 src/port1.0/portactivate.tcl        |  2 +-
 src/port1.0/portbuild.tcl           | 10 +++----
 src/port1.0/portchecksum.tcl        |  4 +--
 src/port1.0/portconfigure.tcl       | 60 ++++++++++++++++++-------------------
 src/port1.0/portdestroot.tcl        | 10 +++----
 src/port1.0/portdistcheck.tcl       |  2 +-
 src/port1.0/portextract.tcl         |  8 ++---
 src/port1.0/portfetch.tcl           | 54 ++++++++++++++++-----------------
 src/port1.0/portinstall.tcl         |  2 +-
 src/port1.0/portlivecheck.tcl       | 16 +++++-----
 src/port1.0/portmain.tcl            | 30 +++++++++----------
 src/port1.0/portpatch.tcl           |  4 +--
 src/port1.0/portsandbox.tcl         |  2 +-
 src/port1.0/portstartupitem.tcl     | 34 ++++++++++-----------
 src/port1.0/porttest.tcl            |  6 ++--
 src/port1.0/portuninstall.tcl       |  2 +-
 src/port1.0/portutil.tcl            | 10 +++++++
 20 files changed, 149 insertions(+), 139 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/package1.0/portarchivefetch.tcl b/src/package1.0/portarchivefetch.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 6a5a774f7..020f2fc8f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/package1.0/portarchivefetch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/package1.0/portarchivefetch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,17 +51,17 @@ options archive_sites archivefetch.user archivefetch.password \
</span>     archive.subdir
 
 # user name & password
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set archivefetch.user {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set archivefetch.password {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc archivefetch.user {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc archivefetch.password {}
</span> # Use EPSV for FTP transfers
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set archivefetch.use_epsv no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc archivefetch.use_epsv no
</span> # Ignore SSL certificate
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set archivefetch.ignore_sslcert no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc archivefetch.ignore_sslcert no
</span> default archivefetch.pubkeys {$archivefetch_pubkeys}
 
 default archive_sites {[portarchivefetch::filter_sites]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set archive_sites.listfile archive_sites.tcl
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set archive_sites.listpath port1.0/fetch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc archive_sites.listfile archive_sites.tcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc archive_sites.listpath port1.0/fetch
</span> default archive.subdir {${subport}}
 
 proc portarchivefetch::filter_sites {} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/package1.0/portpkg.tcl b/src/package1.0/portpkg.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 30a636e69..2cea5ba75 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/package1.0/portpkg.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/package1.0/portpkg.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -52,7 +52,7 @@ default package.resources {${workpath}/pkg_resources}
</span> default package.scripts  {${workpath}/pkg_scripts}
 # Need productbuild to make flat packages really work
 default package.flat     {[expr {[vercmp $macosx_deployment_target 10.6] >= 0}]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set pkg.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc pkg.asroot no
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/package1.0/portunarchive.tcl b/src/package1.0/portunarchive.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 1dcd39a30..e7fb2a958 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/package1.0/portunarchive.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/package1.0/portunarchive.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -47,16 +47,16 @@ namespace eval portunarchive {
</span> 
 # defaults
 default unarchive.dir {${destpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.env {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.cmd {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.pre_args {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.args {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.post_args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.env {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.cmd {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.pre_args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.post_args {}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.type {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.file {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.path {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set unarchive.skip 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.type {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.file {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.path {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc unarchive.skip 0
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portactivate.tcl b/src/port1.0/portactivate.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 4d7e32c15..bb7876f50 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portactivate.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portactivate.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -48,7 +48,7 @@ namespace eval portactivate {
</span> }
 
 options activate.asroot
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set activate.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc activate.asroot no
</span> 
 proc portactivate::activate_start {args} {
     global prefix_frozen
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portbuild.tcl b/src/port1.0/portbuild.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index a41c089c7..82ccd5e49 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portbuild.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portbuild.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -50,16 +50,16 @@ options build.asroot \
</span>         use_parallel_build
 commands build
 # defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set build.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc build.asroot no
</span> default build.dir {${worksrcpath}}
 default build.cmd {[portbuild::build_getmaketype]}
 default build.nice {${buildnicevalue}}
 default build.jobs {[portbuild::build_getjobs]}
 default build.jobs_arg {[portbuild::build_getjobsarg]}
 default build.pre_args {[portbuild::build_getargs]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set build.target all
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set build.type default
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set use_parallel_build yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc build.target all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc build.type default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc use_parallel_build yes
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -85,7 +85,7 @@ proc portbuild::add_automatic_buildsystem_dependencies {} {
</span> port::register_callback portbuild::add_automatic_buildsystem_dependencies
 # and an option to turn it off if required
 options build.type.add_deps
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set build.type.add_deps yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc build.type.add_deps yes
</span> 
 proc portbuild::build_getmaketype {args} {
     global build.type os.platform
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portchecksum.tcl b/src/port1.0/portchecksum.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 2a2c9167c..c1043ba38 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portchecksum.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portchecksum.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,8 +55,8 @@ namespace eval portchecksum {
</span> options checksums checksum.skip
 
 # Defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set checksums {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set checksum.skip false
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc checksums {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc checksum.skip false
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portconfigure.tcl b/src/port1.0/portconfigure.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 0cafac268..ad3e7038d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portconfigure.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portconfigure.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -160,27 +160,27 @@ proc portconfigure::configure_get_cxx_stdlib {} {
</span> options                            \
     compiler.require_fortran       \
     compiler.fortran_fallback
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.require_fortran      no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.require_fortran      no
</span> default compiler.fortran_fallback    {[portconfigure::get_fortran_fallback]}
 # ********** End Fortran **********
 
 # define options
 commands configure autoreconf automake autoconf xmkmf
 # defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.env       {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.env       {}
</span> default configure.pre_args  {--prefix=${prefix}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.cmd       ./configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.cmd       ./configure
</span> default configure.nice      {${buildnicevalue}}
 default configure.dir       {${worksrcpath}}
 default autoreconf.dir      {${worksrcpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set autoreconf.args     {--install --verbose}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc autoreconf.args     {--install --verbose}
</span> default autoconf.dir        {${worksrcpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set autoconf.args       --verbose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc autoconf.args       --verbose
</span> default automake.dir        {${worksrcpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set automake.args       --verbose
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set xmkmf.cmd           xmkmf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc automake.args       --verbose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc xmkmf.cmd           xmkmf
</span> default xmkmf.dir           {${worksrcpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set use_configure       yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc use_configure       yes
</span> 
 option_proc use_autoreconf  portconfigure::set_configure_type
 option_proc use_automake    portconfigure::set_configure_type
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -242,13 +242,13 @@ proc portconfigure::set_configure_type {option action args} {
</span> }
 
 options configure.asroot
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.asroot no
</span> 
 # Configure special environment variables.
 # We could have m32/m64/march/mtune be global configurable at some point.
 options configure.m32 configure.m64 configure.march configure.mtune
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.march     {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.mtune     {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.march     {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.mtune     {}
</span> # We could have debug/optimizations be global configurable at some point.
 options configure.optflags \
         configure.cflags \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -257,7 +257,7 @@ options configure.optflags \
</span>         configure.fflags configure.f90flags configure.fcflags \
         configure.classpath
 # compiler flags section
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.optflags      -Os
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.optflags      -Os
</span> default configure.cflags        {${configure.optflags}}
 default configure.objcflags     {${configure.optflags}}
 default configure.cppflags      {[portconfigure::configure_get_cppflags]}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -278,24 +278,24 @@ proc portconfigure::configure_get_ldflags {} {
</span>         return "-L${prefix}/lib -Wl,-headerpad_max_install_names"
     }
 }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.libs          {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.libs          {}
</span> default configure.fflags        {${configure.optflags}}
 default configure.f90flags      {${configure.optflags}}
 default configure.fcflags       {${configure.optflags}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.classpath     {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.classpath     {}
</span> 
 # tools section
 options configure.perl configure.python configure.ruby \
         configure.install configure.awk configure.bison \
         configure.pkg_config configure.pkg_config_path
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.perl              {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.python            {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.ruby              {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.perl              {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.python            {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.ruby              {}
</span> default configure.install           {${portutil::autoconf::install_command}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.awk               {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.bison             {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.pkg_config        {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.pkg_config_path   {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.awk               {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.bison             {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.pkg_config        {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.pkg_config_path   {}
</span> 
 options configure.build_arch configure.ld_archflags \
         configure.sdk_version configure.sdkroot \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -316,10 +316,10 @@ options configure.universal_archs configure.universal_args \
</span>         configure.universal_objcflags \
         configure.universal_cppflags configure.universal_ldflags
 default configure.universal_archs       {[portconfigure::choose_supported_archs ${universal_archs}]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.universal_args        --disable-dependency-tracking
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.universal_args        --disable-dependency-tracking
</span> default configure.universal_cflags      {[portconfigure::configure_get_universal_archflags]}
 default configure.universal_objcflags   {${configure.universal_cflags}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.universal_cppflags    {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.universal_cppflags    {}
</span> default configure.universal_ldflags     {[portconfigure::configure_get_universal_archflags]}
 
 # Select a distinct compiler (C, C preprocessor, C++)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -336,8 +336,8 @@ foreach _portconfigure_tool {cc objc cpp f77 f90 fc javac} {
</span> unset _portconfigure_tool
 default configure.compiler      {[portconfigure::configure_get_default_compiler]}
 default compiler.fallback       {[portconfigure::get_compiler_fallback]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.blacklist      {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.whitelist      {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.blacklist      {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.whitelist      {}
</span> 
 # Compiler Restrictions
 #   compiler.c_standard            Standard for the C programming language (1989, 1999, 2011, etc.)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -354,9 +354,9 @@ options                            \
</span> 
 default compiler.c_standard            {[expr {$supported_archs ne "noarch" ? 1989 : ""}]}
 default compiler.cxx_standard          {[expr {$supported_archs ne "noarch" ? 1998 : ""}]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.openmp_version        {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.mpi                   {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.thread_local_storage  no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.openmp_version        {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.mpi                   {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.thread_local_storage  no
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1666,7 +1666,7 @@ proc portconfigure::add_automatic_compiler_dependencies {} {
</span> port::register_callback portconfigure::add_automatic_compiler_dependencies
 # and an option to turn it off if required
 options configure.compiler.add_deps
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.compiler.add_deps yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.compiler.add_deps yes
</span> # helper function to add dependencies for a given compiler
 proc portconfigure::add_compiler_port_dependencies {compiler} {
     global os.major porturl
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1904,7 +1904,7 @@ proc portconfigure::configure_main {args} {
</span> 
 options configure.checks.implicit_function_declaration \
         configure.checks.implicit_function_declaration.whitelist
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set configure.checks.implicit_function_declaration yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc configure.checks.implicit_function_declaration yes
</span> default configure.checks.implicit_function_declaration.whitelist {[portconfigure::load_implicit_function_declaration_whitelist ${configure.sdk_version}]}
 
 proc portconfigure::check_implicit_function_declarations {} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portdestroot.tcl b/src/port1.0/portdestroot.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 34c902aa6..c966dd56f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portdestroot.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portdestroot.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -52,18 +52,18 @@ options destroot.target destroot.destdir destroot.clean destroot.keepdirs destro
</span> commands destroot
 
 # Set defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set destroot.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc destroot.asroot no
</span> default destroot.dir {${build.dir}}
 default destroot.cmd {${build.cmd}}
 default destroot.pre_args {[portdestroot::destroot_getargs]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set destroot.target install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc destroot.target install
</span> default destroot.post_args {${destroot.destdir}}
 default destroot.destdir {DESTDIR=${destroot}}
 default destroot.nice {${buildnicevalue}}
 default destroot.umask {$system_options(destroot_umask)}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set destroot.clean no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set destroot.keepdirs {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set destroot.violate_mtree no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc destroot.clean no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc destroot.keepdirs {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc destroot.violate_mtree no
</span> default destroot.delete_la_files {${delete_la_files}}
 
 set_ui_prefix
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portdistcheck.tcl b/src/port1.0/portdistcheck.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 3efa0f204..935f3c704 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portdistcheck.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portdistcheck.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -48,7 +48,7 @@ namespace eval portdistcheck {
</span> options distcheck.type
 
 # defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set distcheck.type moddate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc distcheck.type moddate
</span> 
 proc portdistcheck::distcheck_main {args} {
     global distcheck.type fetch.type fetch.ignore_sslcert \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portextract.tcl b/src/port1.0/portextract.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 090ed7fbb..1b8340575 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portextract.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portextract.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -47,17 +47,17 @@ options extract.only extract.mkdir extract.rename extract.asroot
</span> commands extract
 
 # Set up defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set extract.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc extract.asroot no
</span> # XXX call out to code in portutil.tcl XXX
 # This cleans the distfiles list of all site tags
 default extract.only {[portextract::disttagclean $distfiles]}
 
 default extract.dir {${workpath}}
 default extract.cmd {[findBinary gzip ${portutil::autoconf::gzip_path}]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set extract.pre_args -dc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc extract.pre_args -dc
</span> default extract.post_args {| ${portutil::autoconf::tar_command} -xf -}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set extract.mkdir no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set extract.rename no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc extract.mkdir no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc extract.rename no
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portfetch.tcl b/src/port1.0/portfetch.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index ed4f6f07d..a5c1e2e0a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portfetch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portfetch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -62,63 +62,63 @@ commands cvs
</span> commands svn
 
 # Defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set extract.suffix .tar.gz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set fetch.type standard
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc extract.suffix .tar.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc fetch.type standard
</span> 
 default bzr.cmd {[findBinary bzr $portutil::autoconf::bzr_path]}
 default bzr.dir {${workpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set bzr.revision -1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set bzr.pre_args {--builtin --no-aliases checkout --lightweight --verbose}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set bzr.args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc bzr.revision -1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc bzr.pre_args {--builtin --no-aliases checkout --lightweight --verbose}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc bzr.args {}
</span> default bzr.post_args {-r ${bzr.revision} ${bzr.url} ${worksrcdir}}
 
 default cvs.cmd {[findBinary cvs $portutil::autoconf::cvs_path]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set cvs.password {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc cvs.password {}
</span> default cvs.dir {${workpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set cvs.method export
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc cvs.method export
</span> default cvs.module {$distname}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set cvs.tag {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cvs.date {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc cvs.tag {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc cvs.date {}
</span> default cvs.env {CVS_PASSFILE=${workpath}/.cvspass}
 default cvs.pre_args {-z9 -f -d ${cvs.root}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set cvs.args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc cvs.args {}
</span> default cvs.post_args {${cvs.module}}
 
 default svn.cmd {${prefix_frozen}/bin/svn}
 default svn.dir {${workpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set svn.method export
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set svn.revision {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set svn.env {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set svn.pre_args --non-interactive
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set svn.args {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set svn.post_args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc svn.method export
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc svn.revision {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc svn.env {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc svn.pre_args --non-interactive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc svn.args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc svn.post_args {}
</span> 
 default git.cmd {[portfetch::find_git_path]}
 default git.dir {${workpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set git.branch {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc git.branch {}
</span> 
 default hg.cmd {[findBinary hg $portutil::autoconf::hg_path]}
 default hg.dir {${workpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set hg.tag tip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc hg.tag tip
</span> 
 # Set distfiles
 default distfiles {[list [portfetch::suffix [join $distname]]]}
 default dist_subdir {${name}}
 
 # user name & password
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set fetch.user {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set fetch.password {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc fetch.user {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc fetch.password {}
</span> # Use EPSV for FTP transfers
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set fetch.use_epsv yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc fetch.use_epsv yes
</span> # Ignore SSL certificate
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set fetch.ignore_sslcert no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc fetch.ignore_sslcert no
</span> # Use remote timestamps
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set fetch.remote_time no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set fetch.user_agent {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc fetch.remote_time no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc fetch.user_agent {}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set global_mirror_site macports_distfiles
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set mirror_sites.listfile mirror_sites.tcl
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set mirror_sites.listpath port1.0/fetch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc global_mirror_site macports_distfiles
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc mirror_sites.listfile mirror_sites.tcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc mirror_sites.listpath port1.0/fetch
</span> 
 # Option-executed procedures
 option_proc use_tar   portfetch::set_extract_type
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portinstall.tcl b/src/port1.0/portinstall.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 789897784..25fcd92c4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portinstall.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portinstall.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -48,7 +48,7 @@ namespace eval portinstall {
</span> options install.asroot
 
 # Set defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set install.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc install.asroot no
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portlivecheck.tcl b/src/port1.0/portlivecheck.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 7e17b4484..f9c59b43d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portlivecheck.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portlivecheck.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,15 +49,15 @@ options livecheck.url livecheck.type livecheck.md5 livecheck.regex livecheck.nam
</span> 
 # defaults
 default livecheck.url {$homepage}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.type default
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.md5 {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.regex {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.name default
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.distname default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.type default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.md5 {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.regex {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.name default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.distname default
</span> default livecheck.version {$version}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.ignore_sslcert no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.compression yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set livecheck.curloptions [list --append-http-header "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.ignore_sslcert no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.compression yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc livecheck.curloptions [list --append-http-header "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"]
</span> 
 proc portlivecheck::livecheck_main {args} {
     global livecheck.url livecheck.type livecheck.md5 livecheck.regex livecheck.name livecheck.distname livecheck.version \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portmain.tcl b/src/port1.0/portmain.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index fcd8b920d..7ff9152c5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portmain.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portmain.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -105,32 +105,32 @@ proc portmain::get_subbuildpath {} {
</span>     return [file normalize [file join $portbuildpath $subdir]]
 }
 default workpath {[getportworkpath_from_buildpath $subbuildpath]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set prefix /opt/local
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set applications_dir /Applications/MacPorts
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc prefix /opt/local
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc applications_dir /Applications/MacPorts
</span> default frameworks_dir {${prefix}/Library/Frameworks}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set destdir destroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc destdir destroot
</span> default destpath {${workpath}/${destdir}}
 # destroot is provided as a clearer name for the "destpath" variable
 default destroot {${destpath}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set filesdir files
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set revision 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set epoch 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set license unknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc filesdir files
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc epoch 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc license unknown
</span> default distname {${name}-${version}}
 default worksrcdir {$distname}
 default filespath {[file join $portpath [join $filesdir]]}
 default worksrcpath {[file join $workpath [join $worksrcdir]]}
 # empty list means all archs are supported
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set supported_archs {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set depends_skip_archcheck {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set add_users {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc supported_archs {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc depends_skip_archcheck {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc add_users {}
</span> 
 # Configure settings
 default install.user {${portutil::autoconf::install_user}}
 default install.group {${portutil::autoconf::install_group}}
 
 # Platform Settings
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set platforms darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc platforms darwin
</span> option_proc platforms _handle_platforms
 default os.platform {$os_platform}
 default os.subplatform {$os_subplatform}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -157,10 +157,10 @@ default universal_possible {[expr {${os.universal_supported} && [llength ${confi
</span> 
 default compiler.cpath {${prefix}/include}
 default compiler.library_path {${prefix}/lib}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.log_verbose_output yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.limit_flags no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.support_environment_paths no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set compiler.support_environment_sdkroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.log_verbose_output yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.limit_flags no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.support_environment_paths no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc compiler.support_environment_sdkroot no
</span> 
 # Record initial euid/egid
 set euid [geteuid]
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portpatch.tcl b/src/port1.0/portpatch.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 1185c898c..73a83ab94 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portpatch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portpatch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -47,10 +47,10 @@ commands patch
</span> 
 options patch.asroot
 # Set up defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set patch.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc patch.asroot no
</span> default patch.dir {${worksrcpath}}
 default patch.cmd {[portpatch::build_getpatchtype]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set patch.pre_args -p0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc patch.pre_args -p0
</span> 
 proc portpatch::build_getpatchtype {args} {
     if {![exists patch.type]} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portsandbox.tcl b/src/port1.0/portsandbox.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 0a70a7582..c053fd021 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portsandbox.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portsandbox.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -37,7 +37,7 @@ namespace eval portsandbox {
</span> options portsandbox_supported portsandbox_active portsandbox_profile
 default portsandbox_supported {[file executable $portutil::autoconf::sandbox_exec_path]}
 default portsandbox_active {[expr {$portsandbox_supported && $sandbox_enable}]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set portsandbox_profile {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc portsandbox_profile {}
</span> 
 # set up a suitable profile to pass to sandbox-exec, based on the target
 # command line usage would be:
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portstartupitem.tcl b/src/port1.0/portstartupitem.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 195279504..4cf681cb2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portstartupitem.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portstartupitem.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -98,30 +98,30 @@ options startupitems startupitem.autostart startupitem.debug \
</span>         startupitem.stop startupitem.type startupitem.uniquename \
         startupitem.user startupitem.daemondo.verbosity
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.autostart   no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.custom_file {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.debug       no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.executable  {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.group       {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.init        {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.autostart   no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.custom_file {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.debug       no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.executable  {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.group       {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.init        {}
</span> default startupitem.install     {$system_options(startupitem_install)}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.location    LaunchDaemons
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.logevents   no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.logfile     {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.location    LaunchDaemons
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.logevents   no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.logfile     {}
</span> default startupitem.logfile.stderr {${startupitem.logfile}}
 default startupitem.name        {${subport}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.netchange   no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.pidfile     {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.netchange   no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.pidfile     {}
</span> default startupitem.plist       {${startupitem.uniquename}.plist}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.requires    {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.restart     {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.start       {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.stop        {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.requires    {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.restart     {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.start       {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.stop        {}
</span> default startupitem.type        {[portstartupitem::get_startupitem_type]}
 default startupitem.uniquename  {org.macports.${startupitem.name}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.user        {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.user        {}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set startupitem.daemondo.verbosity  1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc startupitem.daemondo.verbosity  1
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/porttest.tcl b/src/port1.0/porttest.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 84283f0a2..11da38a19 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/porttest.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/porttest.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,12 +19,12 @@ options test.asroot test.ignore_archs test.run test.target
</span> commands test
 
 # Set defaults
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set test.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc test.asroot no
</span> default test.dir {${build.dir}}
 default test.cmd {${build.cmd}}
 default test.pre_args {${test.target}}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set test.target test
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set test.ignore_archs no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc test.target test
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc test.ignore_archs no
</span> 
 set_ui_prefix
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portuninstall.tcl b/src/port1.0/portuninstall.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index f2da4cfeb..cfb8f2414 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portuninstall.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portuninstall.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -45,7 +45,7 @@ namespace eval portuninstall {
</span> }
 
 options uninstall.asroot
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set uninstall.asroot no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+defaultc uninstall.asroot no
</span> 
 proc portuninstall::uninstall_start {args} {
     global prefix ports_dryrun
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portutil.tcl b/src/port1.0/portutil.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 712f0df3d..7534218f4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portutil.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portutil.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -497,6 +497,16 @@ proc default {option val} {
</span>     trace add variable $option [list read write unset] default_check
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# defaultc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Sets a variable to the supplied default if it does not exist.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# No trace is set, so this is suitable only for constant values.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc defaultc {option val} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global $option
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {![info exists $option]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set $option $val
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # default_check
 # trace handler to provide delayed variable & command expansion
 # for default variable values
</pre><pre style='margin:0'>

</pre>