[Bug 493550] New: osc build --icecream doesn't for non-C++ pkgs
http://bugzilla.novell.com/show_bug.cgi?id=493550 Summary: osc build --icecream doesn't for non-C++ pkgs Classification: openSUSE Product: openSUSE.org Version: unspecified Platform: Other OS/Version: Other Status: NEW Severity: Critical Priority: P5 - None Component: BuildService AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: mmeeks@novell.com QAContact: adrian@novell.com CC: coolo@suse.de Found By: --- I have the latest openSUSE:Devel:Tools installed. Packages that don't install gcc-c++ [ or perhaps all packages ] don't use icecream correctly. The log output for: $ osc build --icecream=8 SUSE_SLE-11_GA i586 kernel-default.spec contains: [snip] Executing /sbin/conf.d/SuSEconfig.groff... Executing /sbin/conf.d/SuSEconfig.permissions... Finished. using icecream with 8 jobs '/usr/bin/gcc' is no executable. Installed ccache wrapper as /var/tmp/build-root/var/lib/build/ccache/bin/gcc Installed ccache wrapper as /var/tmp/build-root/var/lib/build/ccache/bin/cc [snip] The string "'/usr/bin/gcc' is no executable" contains a couple of bugs, and comes from icecream - Coolo, please accept my humble patch to icecream (attached). It turns out the real problem is that /usr/bin/g++ is not there [ cf. the patch ]. Why is it not there ? it should be: /usr/bin/build has: ADDITIONAL_PACKS="" .. test "$ccache" = '1' && ADDITIONAL_PACKS="$ADDITIONAL_PACKS ccache" test "$icecream" -gt 1 && ADDITIONAL_PACKS="$ADDITIONAL_PACKS icecream gcc-c++" And the ADDITIONAL_PACKS argument is set correctly, and passed to: set -- init_buildsystem "${definesnstuff[@]}" "${repos[@]}" $CLEAN_BUILD $USEUSEDFORBUILD $CREATE_BUILD_BINARIES $RPMLIST "$MYSRCDIR/$SPECFILE" $ADDITIONAL_PACKS and it appears as expected in the log: [snip] running changelog2spec --target rpm --file /home/michael/osc/home:michael_meeks:netbook/kernel-default/kernel-default.spec init_buildsystem --rpmlist /tmp/rpmlist.mU7vq8 /home/michael/osc/home:michael_meeks:netbook/kernel-default/kernel-default.spec ccache icecream gcc-c++ ... reordering...done [snip] Unfortunately it is not actually installed ;-) interestingly - icecream and cache are - but they appear in /tmp/rpmlist.... why is that ? Apparently the obs logic duplicates (some of) the 'build' logic in this regard (why?) cf. osc/build.py: if opts.icecream: buildargs.append('--icecream %s' % opts.icecream) xp.append('icecream') .. if xp: extra_pkgs += xp And of course, I assume that ends up in /tmp/rmplist.... *so* - one vile hack is to add: xp.append('gcc-g++') to the code her - but how can that be right ? a better approach would (surely) be to fix the ADDITIONAL_PACKAGES logic, and remove the hack for ccache / icecream that appends packages that 'build' should do itself; and to fix the root cause of the problem in (I assume): /usr/lib/build/init_buildsystem which is obviously not handling it's arguments properly. -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=493550
User mmeeks@novell.com added comment
http://bugzilla.novell.com/show_bug.cgi?id=493550#c1
--- Comment #1 from Michael Meeks
http://bugzilla.novell.com/show_bug.cgi?id=493550
User mmeeks@novell.com added comment
http://bugzilla.novell.com/show_bug.cgi?id=493550#c2
--- Comment #2 from Michael Meeks
http://bugzilla.novell.com/show_bug.cgi?id=493550
Leon Wang
http://bugzilla.novell.com/show_bug.cgi?id=493550
Adrian Schröter
http://bugzilla.novell.com/show_bug.cgi?id=493550
User lnussel@novell.com added comment
http://bugzilla.novell.com/show_bug.cgi?id=493550#c3
Ludwig Nussel
http://bugzilla.novell.com/show_bug.cgi?id=493550
User lnussel@novell.com added comment
http://bugzilla.novell.com/show_bug.cgi?id=493550#c4
Ludwig Nussel
http://bugzilla.novell.com/show_bug.cgi?id=493550
User lnussel@novell.com added comment
http://bugzilla.novell.com/show_bug.cgi?id=493550#c5
Ludwig Nussel
participants (1)
-
bugzilla_noreply@novell.com