Do an EBUILD_EXIT_STATUS_FILE sanity check in spawnebuild()
authorZac Medico <zmedico@gentoo.org>
Sat, 8 Dec 2007 23:02:45 +0000 (23:02 -0000)
committerZac Medico <zmedico@gentoo.org>
Sat, 8 Dec 2007 23:02:45 +0000 (23:02 -0000)
where it spawns misc-functions.sh after the install phase.
(trunk r8874)

svn path=/main/branches/2.1.2/; revision=8875

pym/portage.py

index fad76b6509961587dbbb04f8398056c70a50756f..4ce2e7f50999c48ff81fa6db371dae3918372029 100644 (file)
@@ -3716,6 +3716,8 @@ def spawnebuild(mydo,actionmap,mysettings,debug,alwaysdep=0,logfile=None):
                                os.path.basename(MISC_SH_BINARY))
                        mycommand = " ".join([_shell_quote(misc_sh_binary),
                                "install_qa_check", "install_symlink_html_docs"])
+                       _doebuild_exit_status_unlink(
+                               mysettings.get("EBUILD_EXIT_STATUS_FILE"))
                        filter_calling_env_state = mysettings._filter_calling_env
                        if os.path.exists(os.path.join(mysettings["T"], "environment")):
                                mysettings._filter_calling_env = True
@@ -3724,7 +3726,14 @@ def spawnebuild(mydo,actionmap,mysettings,debug,alwaysdep=0,logfile=None):
                                        logfile=logfile, **kwargs)
                        finally:
                                mysettings._filter_calling_env = filter_calling_env_state
-                       if qa_retval:
+                       msg = _doebuild_exit_status_check(mydo, mysettings)
+                       if msg:
+                               qa_retval = 1
+                               from textwrap import wrap
+                               mysettings["EBUILD_PHASE"] = mydo
+                               _eerror(mysettings, wrap(msg, 72))
+                               mysettings["EBUILD_PHASE"] = ""
+                       if qa_retval != os.EX_OK:
                                writemsg("!!! install_qa_check failed; exiting.\n",
                                        noiselevel=-1)
                        return qa_retval