Bug 1187222 - Support building GTK3 in suite/ (mozconfig change) r=bustage (post-land-review) a=ewong in a CLOSED TREE
new file mode 100644
--- /dev/null
+++ b/suite/config/mozconfigs/linux32/mozconfig.gtk
@@ -0,0 +1,48 @@
+# $topsrcdir/gtk3 comes from tooltool, when the tooltool manifest contains it.
+if [ -d "$topsrcdir/gtk3" ]; then
+ if [ -z "$PKG_CONFIG_LIBDIR" ]; then
+ echo PKG_CONFIG_LIBDIR must be set >&2
+ exit 1
+ fi
+ export PKG_CONFIG_SYSROOT_DIR="$topsrcdir/gtk3"
+ export PKG_CONFIG_PATH="$topsrcdir/gtk3/usr/local/lib/pkgconfig"
+ export PATH="$topsrcdir/gtk3/usr/local/bin:${PATH}"
+ # Ensure cairo, gdk-pixbuf, etc. are not taken from the system installed packages.
+ LDFLAGS="-L$topsrcdir/gtk3/usr/local/lib ${LDFLAGS}"
+ mk_add_options "export LD_LIBRARY_PATH=$topsrcdir/gtk3/usr/local/lib"
+ ac_add_options --enable-default-toolkit=cairo-gtk3
+
+ # Set things up to use Gtk+3 from the tooltool package
+ mk_add_options "export FONTCONFIG_PATH=$topsrcdir/gtk3/usr/local/etc/fonts"
+ mk_add_options "export PANGO_SYSCONFDIR=$topsrcdir/gtk3/usr/local/etc"
+ mk_add_options "export PANGO_LIBDIR=$topsrcdir/gtk3/usr/local/lib"
+ mk_add_options "export GDK_PIXBUF_MODULE_FILE=$topsrcdir/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"
+ mk_add_options "export GDK_PIXBUF_MODULEDIR=$topsrcdir/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders"
+ mk_add_options "export LD_LIBRARY_PATH=$topsrcdir/gtk3/usr/local/lib"
+
+ # pango expects absolute paths in pango.modules, and topsrcdir may vary...
+ LD_LIBRARY_PATH=$topsrcdir/gtk3/usr/local/lib \
+ PANGO_SYSCONFDIR=$topsrcdir/gtk3/usr/local/etc \
+ PANGO_LIBDIR=$topsrcdir/gtk3/usr/local/lib \
+ $topsrcdir/gtk3/usr/local/bin/pango-querymodules > $topsrcdir/gtk3/usr/local/etc/pango/pango.modules
+
+ # same with gdb-pixbuf and loaders.cache
+ LD_LIBRARY_PATH=$topsrcdir/gtk3/usr/local/lib \
+ GDK_PIXBUF_MODULE_FILE=$topsrcdir/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \
+ GDK_PIXBUF_MODULEDIR=$topsrcdir/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders \
+ $topsrcdir/gtk3/usr/local/bin/gdk-pixbuf-query-loaders > $topsrcdir/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
+
+ # mock build environment doesn't have fonts in /usr/share/fonts, but
+ # has some in /usr/share/X11/fonts. Add this directory to the
+ # fontconfig configuration without changing the gtk3 tooltool package.
+ cat << EOF > $topsrcdir/gtk3/usr/local/etc/fonts/local.conf
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<fontconfig>
+ <dir>/usr/share/X11/fonts</dir>
+</fontconfig>
+EOF
+
+else
+ ac_add_options --enable-default-toolkit=cairo-gtk2
+fi
--- a/suite/config/mozconfigs/linux32/nightly
+++ b/suite/config/mozconfigs/linux32/nightly
@@ -22,8 +22,10 @@ export MOZ_DEBUG_SYMBOLS=1
ac_add_options --enable-debug-symbols="-gdwarf-2"
mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py'
# Needed to enable breakpad in application.ini
export MOZILLA_OFFICIAL=1
#Use ccache
ac_add_options --with-ccache=/usr/bin/ccache
+
+. "./mozconfig.gtk"