Closed Bug 1504906 Opened 7 years ago Closed 7 years ago

Build Firefox against Gtk+ 3.10 instead of 3.4.

Categories

(Firefox Build System :: Toolchains, enhancement)

enhancement
Not set
normal

Tracking

(firefox65 fixed)

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(6 files)

No description provided.
Blocks: 1501218
Versions of glib newer than the one we currently use adds a function we don't use.
We're going to bump our shipped builds to build against Gtk+ 3.10, but still want to ensure we can still build against Gtk+ 3.4. As we're using Gtk+ packages installed in the build docker image, we need to have a separate image where the Gtk+ packages are kept at version 3.4. Depends on D11136
Along with all the updated dependencies that are necessary to achieve this. Depends on D11137
This creates 32-bits variants of the same packages that were added for 64-bits builds, with a few additions: - python-defaults, so that the python package can be installed as a dependency of the libglib2.0-dev package, - xkeyboard-config, so that the xkb-data package can be installed as a dependency of the libxkbcommon0 package. Additionally, because the 32-bits and 64-bits packages are built separately (the 32-bits packages can't, on Wheezy, be built on a 64-bits host), they don't end up with the same changelog.Debian/changelog.Debian.gz file because of a timestamp within it. One way to address this would be to make the taskgraph more complex, by adding a task creating the source package, and then two tasks building the 32-bits and 64-bits binary packages from that source, but that's not worth the overhead, when a simple hack works around the problem: We make dpkg skip installing the changelog.Debian* files. Depends on D11139
When this happens we can remove Gtk < 3.10 hacks we have at toolkit code.
There aren't many, and no, we shouldn't. We can, however, remove the GTK_CHECK_VERSION(3,4,0) checks (independently of this bug).
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/mozilla-inbound/rev/2e0ed8c61e24 Use a separate docker image for base toolchain builds. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/b569742fbbf2 Build 64-bits Gtk+ 3.10 packages for Debian Wheezy. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/1f63f3761bc0 Add support for building non-amd64 Debian packages. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/6f8c933b7938 Build 32-bits Gtk+ 3.10 packages for Debian Wheezy. r=gps
Backout by mh@glandium.org: https://hg.mozilla.org/integration/mozilla-inbound/rev/9dfe0f1937e9 Backout changesets 2e0ed8c61e24, b569742fbbf2 and 6f8c933b7938 to give time to docker images to build without blocking other landings.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/mozilla-inbound/rev/f899fbb4a5d7 Add another -Werror exception for G_DEFINE_TYPE_EXTENDED. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/f8064dbb8009 Use a separate docker image for base toolchain builds. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/f7a685b16579 Build 64-bits Gtk+ 3.10 packages for Debian Wheezy. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/27b4002951a4 Build 32-bits Gtk+ 3.10 packages for Debian Wheezy. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/2fe1e2b7d9c6 Install the Gtk+ 3.10 packages and required dependencies in the build docker images. r=gps
Backout by mh@glandium.org: https://hg.mozilla.org/integration/mozilla-inbound/rev/5ece74940a5f Backed out 6 changesets (bug 1504906 and bug 1505652) to give time to toolchains and docker images to build without blocking other landings.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/mozilla-inbound/rev/49414dd9aab5 Add another -Werror exception for G_DEFINE_TYPE_EXTENDED. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/212d5f15c0ad Use a separate docker image for base toolchain builds. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/1f6291211fff Build 64-bits Gtk+ 3.10 packages for Debian Wheezy. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/fdd9922cce17 Build 32-bits Gtk+ 3.10 packages for Debian Wheezy. r=gps https://hg.mozilla.org/integration/mozilla-inbound/rev/ba4ed5fd320a Install the Gtk+ 3.10 packages and required dependencies in the build docker images. r=gps
Pushed by mozilla@jorgk.com: https://hg.mozilla.org/comm-central/rev/668ac5092dad Port bug 1504906 to comm-central: Build using Gtk+ 3.10 packages. r=rjl
Mike, is there a change in system requirements induced by this change? Should we update our system requirements page to list GTK3.10 instead of GTK3.4 from 65 onward? (This page: https://www.mozilla.org/en-US/firefox/65.0a1/system-requirements/)
Flags: needinfo?(mh+mozilla)
As mentioned in the commit, the result is still binary compatible with 3.4.
Flags: needinfo?(mh+mozilla)
Depends on: 1507030
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: