From: Zac Medico Date: Wed, 11 Mar 2009 07:40:25 +0000 (-0000) Subject: Bug #261670 - Generate a QA Notice if CHOST (from dyn_install) has a value X-Git-Tag: v2.1.6.8~35 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=bfc9eb64b1ffb5801b40b0785e2458cc112dc1a1;p=portage.git Bug #261670 - Generate a QA Notice if CHOST (from dyn_install) has a value which differs from the initial setting. (trunk r12810) svn path=/main/branches/2.1.6/; revision=13042 --- diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index c3684b843..00a5c682f 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -1986,6 +1986,15 @@ class dblink(object): return 1 + def _eqawarn(self, phase, lines): + from portage.elog.messages import eqawarn as _eqawarn + if self._scheduler is None: + for l in lines: + _eqawarn(l, phase=phase, key=self.settings.mycpv) + else: + self._scheduler.dblinkElog(self, + phase, _eqawarn, lines) + def _eerror(self, phase, lines): from portage.elog.messages import eerror as _eerror if self._scheduler is None: @@ -2042,29 +2051,27 @@ class dblink(object): level=logging.ERROR, noiselevel=-1) return 1 - inforoot_slot_file = os.path.join(inforoot, "SLOT") - slot = None - try: - f = open(inforoot_slot_file) + slot = '' + for var_name in ('CHOST', 'SLOT'): try: - slot = f.read().strip() - finally: - f.close() - except EnvironmentError, e: - if e.errno != errno.ENOENT: - raise - del e + val = open(os.path.join(inforoot, var_name)).readline().strip() + except EnvironmentError, e: + if e.errno != errno.ENOENT: + raise + del e + val = '' - if slot is None: - slot = "" + if var_name == 'SLOT': + slot = val + + if val != self.settings.get(var_name, ''): + self._eqawarn('preinst', + ["QA Notice: Expected %s='%s', got '%s'\n" % \ + (var_name, self.settings.get(var_name, ''), val)]) def eerror(lines): self._eerror("preinst", lines) - if slot != self.settings["SLOT"]: - showMessage("!!! WARNING: Expected SLOT='%s', got '%s'\n" % \ - (self.settings["SLOT"], slot), level=logging.WARN) - if not os.path.exists(self.dbcatdir): os.makedirs(self.dbcatdir)