FS#34644 - [firefox] can't build from source

Attached to Project: Arch Linux
Opened by Arch User (superlex) - Saturday, 06 April 2013, 19:44 GMT
Last edited by Evangelos Foutras (foutrelis) - Wednesday, 10 April 2013, 13:21 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan de Groot (JGC)
Ionut Biru (wonder)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
You can't build firefox 20 from source
(https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/firefox)

Additional info:
makepkg -s returns
" checking for nspr-config... /usr/bin/nspr-config
checking for NSPR - version >= 4.9.4... yes
configure: error: system NSPR does not support PR_STATIC_ASSERT or including prtypes.h does not provide it "

The problem seems to be " ac_add_options --with-system-nspr " in mozconfig, so nspr package.


Steps to reproduce:
Download firefox files with abs and start makepkg -s
This task depends upon

Closed by  Evangelos Foutras (foutrelis)
Wednesday, 10 April 2013, 13:21 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed in /trunk and released for both arches; wait a few hours for ABS to sync.'
Comment by A. Núñez (megadriver) - Sunday, 07 April 2013, 14:08 GMT
Found the solution!

Now you can specify CPPFLAGS in makepkg.conf, but Firefox doesn't seem to like the default ones.

Put "unset CPPFLAGS" before the "make" line, and it works!
Comment by Evangelos Foutras (foutrelis) - Sunday, 07 April 2013, 20:57 GMT
The configure script ends up falling back to '/lib/cpp' as the preprocessor command; it discards 'gcc -E' due to a _FORTIFY_SOURCE warning.¹

configure scripts generated by our current autoconf version don't have this issue; AC_PROG_CPP correctly detects 'gcc -E' as the C preprocessor command.

Firefox's configure script, however, appears to have been generated by an ancient version of autoconf which doesn't include this change from 2001 (!):

http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=f5d0e4f28b1d058f

@Allan: Any ideas on how to overcome this issue of -D_FORTIFY_SOURCE=2 being used without an optimization level during preprocessing?

(I have attached a relevant excerpt from config.log.)

¹ Firefox's configure script checks the stderr output using the following command:

$ grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"

Anything other than an empty string is considered an error.
Comment by Allan McRae (Allan) - Sunday, 07 April 2013, 22:43 GMT
autoreconf?
Comment by Evangelos Foutras (foutrelis) - Sunday, 07 April 2013, 22:48 GMT
Won't help because it needs autoconf 2.13 and that generates the same configure file.
Comment by Allan McRae (Allan) - Monday, 08 April 2013, 04:26 GMT
autoconf-2.13! So by "needs" you mean it won't update with a newer autoconf?

I am about to rebuild all of [core] so we can see how much is affected by this issue and then come to a global decision.
Comment by Evangelos Foutras (foutrelis) - Monday, 08 April 2013, 09:01 GMT
With our current autoconf version is just outputs cryptic error messages (attached). :P
Comment by Allan McRae (Allan) - Wednesday, 10 April 2013, 09:38 GMT
I suggest trying something like I have for the binutils package.

Loading...