emerge: support post_emerge hook like post_sync
authorGokdeniz Karadag <gokdenizk@gmail.com>
Fri, 18 Feb 2011 15:57:25 +0000 (07:57 -0800)
committerZac Medico <zmedico@gentoo.org>
Fri, 18 Feb 2011 15:57:25 +0000 (07:57 -0800)
This will fix bug #355447.

pym/_emerge/main.py

index 95174ccc01df573a155398d6e234e297ae8b12f1..47975e340d51b568f12f1eebf889ec7021bdff53 100644 (file)
@@ -367,6 +367,14 @@ def post_emerge(root_config, myopts, mtimedb, retval):
        if retval in (None, os.EX_OK) or (not "--pretend" in myopts):
                display_preserved_libs(vardbapi, myopts)        
 
+       from portage.output import red, bold
+       postemerge = os.path.join(settings["PORTAGE_CONFIGROOT"],
+                               portage.USER_CONFIG_PATH, "bin", "post_emerge")
+       if os.access(postemerge, os.X_OK):
+               retval = portage.process.spawn(
+                                               [postemerge], env=settings.environ())
+               if retval != os.EX_OK:
+                       print(red(" * ") + bold("spawn failed of " + postemerge))
        sys.exit(retval)
 
 def multiple_actions(action1, action2):