[Bug 813197] New: icecream messages confuse configure
https://bugzilla.novell.com/show_bug.cgi?id=813197 https://bugzilla.novell.com/show_bug.cgi?id=813197#c0 Summary: icecream messages confuse configure Classification: openSUSE Product: openSUSE Factory Version: 13.1 Milestone 0 Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: Development AssignedTo: coolo@suse.com ReportedBy: matz@suse.com QAContact: qa-bugs@suse.de CC: llunak@suse.com Found By: --- Blocker: --- When ICECC hits some errors it will make gcc compile locally. The intent is that even errors in icecream (like timeout in scheduler or the assigned remote worker) don't influence compilation. For debugging we give messages about this, though, like: ICECC[4963] 20:59:58: got exception 1 (this should be an exception!) That's all nice and dandy if it weren't for configure scripts. Some of those tests capture stdout/stderr of the compiler and take any message is hinting for an error, i.e. don't just look at the exit code. This can lead to features being disabled when icecream doesn't work at the wrong time. Recently this caused a rather ugly sequence of events for s390x in Factory for instance. Due to the network problems last week icecream hit timeouts, and when building binutils this caused it's configure to think that -fPIC wasn't working, hence libbfd.so was built without -fPIC, which then later lead to segfaults in all binutils, linker, assembler, everything. The package was thought to be succeeded nevertheless, and now the s390x tree is broken, as you can't even recompile binutils anymore, as the linker won't work. Obviously there are workarounds for that, but it shows that the icecream messages really are a problem. The proposed solution would be to make icecream instead log to a file, possibly only when a certain environment variable is set (so that this log-to-file could be done only in the rpmbuild chroot, not for regular usage from users). this file could then be cated at the end of %build. There might be other solutions, but one thing needs to happen, icecream must not write anything to stdout/stderr (nor to other filedescriptors dup'ed from them) inside the build environment. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=813197
https://bugzilla.novell.com/show_bug.cgi?id=813197#c1
Michael Matz
https://bugzilla.novell.com/show_bug.cgi?id=813197
https://bugzilla.novell.com/show_bug.cgi?id=813197#c2
--- Comment #2 from Richard Biener
https://bugzilla.novell.com/show_bug.cgi?id=813197
https://bugzilla.novell.com/show_bug.cgi?id=813197#c3
--- Comment #3 from Lubos Lunak
That's all nice and dandy if it weren't for configure scripts. Some of those tests capture stdout/stderr of the compiler and take any message is hinting for an error, i.e. don't just look at the exit code. This can lead to features being disabled when icecream doesn't work at the wrong time.
Strictly speaking, this is the real problem.
The proposed solution would be to make icecream instead log to a file, possibly only when a certain environment variable is set (so that this log-to-file could be done only in the rpmbuild chroot, not for regular usage from users). this file could then be cated at the end of %build.
$ icecc --help ... ICECC_LOGFILE if set, additional debug information is logged to the specified file -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=813197
https://bugzilla.novell.com/show_bug.cgi?id=813197#c4
--- Comment #4 from Richard Biener
(In reply to comment #0)
That's all nice and dandy if it weren't for configure scripts. Some of those tests capture stdout/stderr of the compiler and take any message is hinting for an error, i.e. don't just look at the exit code. This can lead to features being disabled when icecream doesn't work at the wrong time.
Strictly speaking, this is the real problem.
The proposed solution would be to make icecream instead log to a file, possibly only when a certain environment variable is set (so that this log-to-file could be done only in the rpmbuild chroot, not for regular usage from users). this file could then be cated at the end of %build.
$ icecc --help ... ICECC_LOGFILE if set, additional debug information is logged to the specified file
But we are not interested in additional debug info, we are interested in regular diagnostic messages to be redirected to a file. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=813197
https://bugzilla.novell.com/show_bug.cgi?id=813197#c5
--- Comment #5 from Lubos Lunak
https://bugzilla.novell.com/show_bug.cgi?id=813197
https://bugzilla.novell.com/show_bug.cgi?id=813197#c6
Stephan Kulow
http://bugzilla.novell.com/show_bug.cgi?id=813197
http://bugzilla.novell.com/show_bug.cgi?id=813197#c7
Ruediger Oertel
participants (1)
-
bugzilla_noreply@novell.com