Closed Bug 329517 Opened 19 years ago Closed 8 years ago

One Firefox runtime works on all GNU/Linux distributions (per architecture)

Categories

(Firefox Build System :: General, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: gk4, Unassigned)

Details

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5 Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5 Regardless of how Firefox is installed, it should be able to run on any GNU/Linux distribution (ie,. Fedora, OpenSuSE, RHEL, SLES, NLD, Debian, ...); however, this is difficult because of the differing levels of C++ libraries provided on these systems. Historically, the C++ ABI on Linux has been unstable and the Linux distros must provide compatibility packages. This can be resolved by the application at build time when using ABI techniques described by the LSB. http://researchweb.watson.ibm.com/journal/sj/442/yeoh.pdf http://www-128.ibm.com/developerworks/library/l-lsb.html http://www.linuxbase.org/test/registered.html Reproducible: Always
Sounds like we should just ditch the libstdc++ dependency.
Sounds a bit of a big job, but confirming. :P
Status: UNCONFIRMED → NEW
Ever confirmed: true
Ditching libstdc++ is trivial: other dependencies aren't quite so trivial, but at leadst aren't dependent on the c++ abi.
The desire is to build Firefox with the lsbcc wrapper script to link it to well a well defined level of the library ABIs. You should use lsbcc instead of gcc in your makefiles. LSB Desktop 3.1 is coming out this March. You should go with those ABI definitions. Please refer to the referenced URLs.
Are you proposing that we do this for the official binary builds, or simply support it in the build system? Have you tried building with LSB already (by setting CC/CXX in the environment or using the chroot script)? I'm having trouble finding important details about what LSB actually specifies: does it include GTK2 and pango? If we do runtime detection of optional libs such as dbus/libgnomeui does that affect certification? From what I have seen, the the only significant advantage of the LSB scripts over our existing build mechanisms is that we could build backwards-compatible binaries on new OSes, instead of using the least-common-denominator OS to produce our release packages.
The LSB would be the virtual LCD OS. See chapter 10 of the LSB Desktop 3.1 for the current scope of the desktop portion of the specification. http://ftp.freestandards.org/~mats/rcbooks/LSB-Desktop-generic/LSB-Desktop-generic.html
glandium: as a Linux packaging guru, what are your thoughts on keeping this bug open?
Flags: needinfo?(mh+mozilla)
We're already ensuring Firefox works across the most common distros. See the compatibility matrix https://developer.mozilla.org/en-US/docs/Linux_Compatibility_Matrix
Status: NEW → RESOLVED
Closed: 8 years ago
Flags: needinfo?(mh+mozilla)
Resolution: --- → WORKSFORME
Component: Build Config → General
Product: Firefox → Firefox Build System
You need to log in before you can comment on or make changes to this bug.