[106810] trunk/base/src/port1.0

cal at macports.org cal at macports.org
Sat Jun 8 10:52:21 PDT 2013


Revision: 106810
          https://trac.macports.org/changeset/106810
Author:   cal at macports.org
Date:     2013-06-08 10:52:21 -0700 (Sat, 08 Jun 2013)
Log Message:
-----------
port1.0: provide startupitem.autoload to automatically start tasks

This is particularly useful for the certsync port. See also #35474.

Modified Paths:
--------------
    trunk/base/src/port1.0/portactivate.tcl
    trunk/base/src/port1.0/portdeactivate.tcl
    trunk/base/src/port1.0/portdestroot.tcl
    trunk/base/src/port1.0/portstartupitem.tcl

Modified: trunk/base/src/port1.0/portactivate.tcl
===================================================================
--- trunk/base/src/port1.0/portactivate.tcl	2013-06-08 17:10:00 UTC (rev 106809)
+++ trunk/base/src/port1.0/portactivate.tcl	2013-06-08 17:52:21 UTC (rev 106810)
@@ -59,7 +59,7 @@
 }
 
 proc portactivate::activate_main {args} {
-    global env subport version revision portvariants user_options PortInfo
+    global env subport version revision portvariants user_options PortInfo startupitem.autostart UI_PREFIX
 
     registry_activate $subport $version $revision $portvariants [array get user_options]
 
@@ -97,5 +97,13 @@
         ui_notice ""
     }
 
+    if {[tbool startupitem.autostart]} {
+        ui_notice "$UI_PREFIX [format [msgcat::mc "Loading %s"] [option subport]]"
+        if {[eval_targets "load"]} {
+            ui_error [format [msgcat::mc "Failed to load %s"] [option subport]]
+            return 1
+        }
+    }
+
     return 0
 }

Modified: trunk/base/src/port1.0/portdeactivate.tcl
===================================================================
--- trunk/base/src/port1.0/portdeactivate.tcl	2013-06-08 17:10:00 UTC (rev 106809)
+++ trunk/base/src/port1.0/portdeactivate.tcl	2013-06-08 17:52:21 UTC (rev 106810)
@@ -57,7 +57,15 @@
 }
 
 proc portdeactivate::deactivate_main {args} {
-    global subport version revision portvariants user_options
+    global subport version revision portvariants user_options startupitem.autostart UI_PREFIX
+
+    if {[tbool startupitem.autostart]} {
+        ui_notice "$UI_PREFIX [format [msgcat::mc "Unloading %s"] [option subport]]"
+        if {[eval_targets "unload"]} {
+            ui_warn [format [msgcat::mc "Failed to unload %s, continuing anyway."] [option subport]]
+        }
+    }
+
     registry_deactivate $subport $version $revision $portvariants [array get user_options]
     return 0
 }

Modified: trunk/base/src/port1.0/portdestroot.tcl
===================================================================
--- trunk/base/src/port1.0/portdestroot.tcl	2013-06-08 17:10:00 UTC (rev 106809)
+++ trunk/base/src/port1.0/portdestroot.tcl	2013-06-08 17:52:21 UTC (rev 106810)
@@ -49,11 +49,12 @@
 # define options
 options destroot.target destroot.destdir destroot.clean destroot.keepdirs destroot.umask \
         destroot.violate_mtree destroot.asroot destroot.delete_la_files \
-        startupitem.create startupitem.requires startupitem.init \
-        startupitem.name startupitem.start startupitem.stop startupitem.restart \
-        startupitem.type startupitem.executable \
-        startupitem.pidfile startupitem.logfile startupitem.logevents startupitem.netchange \
-        startupitem.uniquename startupitem.plist startupitem.location startupitem.install
+        startupitem.autostart startupitem.create startupitem.executable \
+        startupitem.init startupitem.install startupitem.location \
+        startupitem.logevents startupitem.logfile startupitem.name \
+        startupitem.netchange startupitem.pidfile startupitem.plist \
+        startupitem.requires startupitem.restart startupitem.start \
+        startupitem.stop startupitem.type startupitem.uniquename
 commands destroot
 
 # Set defaults

Modified: trunk/base/src/port1.0/portstartupitem.tcl
===================================================================
--- trunk/base/src/port1.0/portstartupitem.tcl	2013-06-08 17:10:00 UTC (rev 106809)
+++ trunk/base/src/port1.0/portstartupitem.tcl	2013-06-08 17:52:21 UTC (rev 106810)
@@ -64,6 +64,9 @@
 #       - for launchd, generate log messages inside daemondo
 #       - for systemstarter, generate log messages in our generated script
 #
+#   startupitem.autoload    yes/no
+#       Automatically load the startupitem after activating. Defaults to no.
+#
 
 package provide portstartupitem 1.0
 package require portutil 1.0
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130608/dfa2a1a8/attachment-0001.html>


More information about the macports-changes mailing list