GNOME Bugzilla – Bug 583518
--no-poison only works sometimes
Last modified: 2009-05-22 22:54:41 UTC
I think it's only working when -a is also passed.
Could you note the modules that are failing, and the modules that shouldn't be skipped? Do you get messages like those: module %(mod)s will be build even though %(dep)s failed module %(mod)s not built due to non buildable %(dep)s ?
OK, while running "jhbuild build --no-poison", samba4 failed to build then libmapi and evolution-mapi were skipped: Linking bin/asn1_compile ld: fatal: symbol `flock' is multiply-defined: (file heimdal/../heimdal_build/replace.ho type=FUNC; file bin/mergedobj/heimdal_roken.o type=FUNC); ld: fatal: File processing errors. No output written to bin/asn1_compile collect2: ld returned 1 exit status make: *** [bin/asn1_compile] Error 1 *** error during phase build of samba4: ########## Error running make -j4 *** [128/207] [1] rerun phase build [2] ignore error and continue to build [3] give up on module [4] start shell [5] reload configuration [6] go to phase force_checkout [7] go to phase configure [8] go to phase clean [9] go to phase distclean choice: 3 *** module libmapi not built due to non buildable samba4 *** [129/207] *** module evolution-mapi not built due to non buildable libmapi *** [130/207] *** Checking out evolution-webcal *** [131/207] git fetch git pull --rebase ^SCurrent branch master is up to date. *** Building evolution-webcal *** [131/207] make -j4
The code is simple enough: if self.config.nopoison: self.message(_('module %(mod)s will be build even though %(dep)s failed') % { 'mod':module.name, 'dep':dep }) else: self.message(_('module %(mod)s not built due to non buildable %(dep)s') % { 'mod':module.name, 'dep':dep }) And the code to set config.nopoison from the cmdline arg is also straightforward; I am quite lost here. Could you add print config.nopoison to jhbuild/commands/base.py, line 337, and print self.config.nopoison to jhbuild/frontends/buildscript.py, line 82 ?
After reloading the configuration when a module fails, config.nopoison is False.
commit 244069425f821010bfa141dad31361126f3f84c9 Author: Frédéric Péters <fpeters@0d.be> Date: Sat May 23 00:51:28 2009 +0200 keep track of configuration options set from the command line The configuration values were reset to default values when the user choosed to reload the configuration (from the terminal frontend), and options set from the command line (such as --no-poison) were therefore lost. (GNOME bug 583518)