Red Hat Bugzilla – Bug 464963
Last modified: 2008-10-13 08:11:29 EDT
perl-CGI-SpeedyCGI-2.22-2.fc10.src.rpm Failed To Build From Source against the rawhide tree. See http://fedoraproject.org/wiki/FTBFS for more information.
Created attachment 318293 [details]
root.log for i386
Created attachment 318294 [details]
build.log for i386
Created attachment 318295 [details]
mock.log for i386
Created attachment 318296 [details]
root.log for x86_64
Created attachment 318297 [details]
build.log for x86_64
Created attachment 318298 [details]
mock.log for x86_64
John, do you also have a suggestion how to solve that? I know, that it is broken, but nobody came up with a solution, even fedora-devel-list ignored
As discussed on IRC:
[01:39] < ixs> rsc: found it. please wait for a patch.
[01:40] < rsc> ixs: sooo fast?
[01:43] < ixs> yeah, it's a problem with the new compiler. gcc seems to have changed it's understanding of inline functions which are
optimized into oblivion. the patch changes these inline functions into external ones, making the thing compile. It's dirty
and someone should fix it up in order to be conditional or so depending on the compiler understanding of inlineness, but it
should work for now.
[01:43] < ixs> http://www.greenend.org.uk/rjk/2003/03/inline.html
[01:46] < ixs> rsc: http://www.nabble.com/inline-functions-with-gnu99-td16231641.html is a good description of the problem.
The offending functions are defined as SPEEDY_INLINE which is a macro extending to __inline__ when compiled as gcc.
The quickfix is to drop the following lines at the end of the %prep macro, removing this macro:
# DIRTYFIX - Clean out all references to SPEEDY_INLINE in order to fix
# problems with current gcc builds
sed -i -e 's/#define SPEEDY_INLINE __inline__/#define SPEEDY_INLINE/' src/speedy_inc.h
An alternative patch doing the same in a somewhat saner way is attached.
My reading of the gcc manpage is that -O3 would most likely optimize the code in a similar way then manually defining inline would do. You might want to look into this.
Anyway, it works for now:
Created attachment 320079 [details]
Patch to remove inline definitions to fix current FTBFS issues
Created attachment 320080 [details]
Better version, doing a full cleanup of the inline definitions
Package: perl-CGI-SpeedyCGI-2.22-3.fc10 Tag: dist-f10 Status: complete Built by: robert