Hi,
On 06/28/2013 02:16 PM, Andrea Musuruane wrote:
Hi,
while performing the review of pcsx2 I noticed that upstream customize heavily
CFLAGS.
https://bugzilla.rpmfusion.org/show_bug.cgi?id=2455#c55
Although RPM_OPT_FLAGS are passed to the compiler, a great number of optimization flags
(e.g. -fxxxxx) are also used. A few are in contrast with optimizations turned on by
"-O2".
The Fedora guidelines say:
"Overriding these flags for performance optimizations (for instance, -O3 instead of
-O2) is generally discouraged. If you can present benchmarks that show a significant
speedup for this particular code, this could be revisited on a case-by-case basis. Adding
to and overriding or filtering parts of these flags is permitted if there's a good
reason to do so; the rationale for doing so must be documented in the specfile. "
Upstream says:
"PCSX2 is not an ordinary sofware. Most of the code executed are self-generated by
PCSX2 itself (aka dynamic recompiler/virtual machine). That mean 1/ gcc flags have no much
impact on speed 2/ some gcc flags (used to) crash PCSX2 It would need a careful test to
check which flags can be enabled/disabled. Too much work for myself, but you're
welcome ;). Note: strict aliasing is surely still broken."
So, what to do? Asking the submitter to check is each flags work is a daunting task and
probably not his job. Removing upstream flags might broke the emulator. Using upstream
flags is against the guidelines. I'd go for the latter - but I'd like to check if
other RPM Fusion packagers agree.
I would say lets document in the spec why it is special, and use upstream's CFLAGS.
Regards,
Hans