Created attachment 8765989 [details] [diff] [review] add global autotools options to @old_configure_options Starting with firefox-48.0_beta , configure.py now seems to parse all of the .mozconfig options before passing them through to ./old-configure; part of this parsing includes all of the options that ./old-configure normally accepts, as is specified in "@old_configure_options" from build/moz.configure/old.configure. However, not in this list are the standard options that every autotools package presents, such as those that define basic system install paths: --bindir, --libdir, --datadir, etc. etc. etc.. Although not all of these standard options are necessarily implemented, some of them (especially --libdir) need to be passed through on linux. I took a guess at which ones might be useful based on Makefile.in's throughout the codebase, and made up the attached patch to try and help with this issue.
Comment on attachment 8765989 [details] [diff] [review] add global autotools options to @old_configure_options Review of attachment 8765989 [details] [diff] [review]: ----------------------------------------------------------------- Please provide a commit message. ::: build/moz.configure/old.configure @@ +154,4 @@ > > > @old_configure_options( > + '--bindir', Let's not add the ones that aren't used: bindir, libexecdir, mandir.
Created attachment 8767718 [details] [diff] [review] Add path specifier options to @old_configure_options Try2 -- comment added, extra options removed
Attachment #8767718 - Flags: review?(mh+mozilla) → review+
Why is this path missing in tree? I guess distros (at least Fedora) needs that to build the package. Firefox is always installed to /usr/lib without this patch.
(In reply to Martin Stránský from comment #3) > Why is this path missing in tree? I guess distros (at least Fedora) needs > that to build the package. Firefox is always installed to /usr/lib without > this patch. I'm not exactly understanding your question as phrased -- I will take it to mean you don't understand the use-case where firefox should be built with a 'libdir' path that isn't the default /usr/lib ? /usr/lib is not the de-facto native-abi installation path on all linux systems, many often install to /usr/lib64 for instance if they support multilib (that is, concurrent 64bit and 32bit) installations (while /usr/lib32 is the 32bit path). Also, it is quite possible that someone may want to build firefox with --libdir=/opt or some other path. It often does not suffice to just use --prefix for these things, the other path overrides that autotools allows should also be exposed so that the codebase can be built appropriately.
Pushed by email@example.com: https://hg.mozilla.org/integration/fx-team/rev/f5bfd9e3ebcf Add ability to specify system paths to @old_configure_options. r=glandium
Comment on attachment 8767718 [details] [diff] [review] Add path specifier options to @old_configure_options Approval Request Comment [Feature/regressing bug #]: regression from python configure [User impact if declined]: Distros where /usr/lib64 is the library directory (e.g. Fedora, SuSE, etc.) can't build without going through hoops to support that directory. Most notably, that breaks finding system plugins. [Describe test coverage new/current, TreeHerder]: n/a [Risks and why]: Technically NPOTB: the patch only adds 3 supported flags to configure which aren't used for mozilla builds (if they were, the build would simply fail, because the flags aren't supported currently), and sends those flags to the still-existing autoconf-based configure. [String/UUID change made/needed]: n/a
Status: NEW → RESOLVED
Last Resolved: 2 years ago
status-firefox51: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla51
Comment on attachment 8767718 [details] [diff] [review] Add path specifier options to @old_configure_options NPOTB, Aurora50+, Beta49+
status-firefox49: --- → affected
status-firefox50: --- → affected
status-firefox50: affected → fixed
status-firefox49: affected → fixed
You need to log in before you can comment on or make changes to this bug.