diff --git a/browser/config/tooltool-manifests/linux32/releng.manifest b/browser/config/tooltool-manifests/linux32/releng.manifest index 9bc6b0e01e2..9bf4aad7f53 100644 --- a/browser/config/tooltool-manifests/linux32/releng.manifest +++ b/browser/config/tooltool-manifests/linux32/releng.manifest @@ -7,10 +7,11 @@ "unpack": true }, { -"size": 4079256, -"digest": "bb5238558bcf6db2ca395513c8dccaa15dd61b3c375598eb6a685356b0c1a2d9840e3bf81bc00242b872fd798541f53d723777c754412abf0e772b7cc284937c", +"size": 11179576, +"digest": "91567ce8e2bb8ab0ebc60c31e90731d88a1ea889fb71bcf55c735746a60fa7610b7e040ea3d8f727b6f692ae3ee703d6f3b30cdbd76fdf5617f77d9c38aa20ed", "algorithm": "sha512", "filename": "gtk3.tar.xz", +"setup": "setup.sh", "unpack": true }, { diff --git a/browser/config/tooltool-manifests/linux64/clang.manifest b/browser/config/tooltool-manifests/linux64/clang.manifest index ba2d63fe998..f804ab75c4c 100644 --- a/browser/config/tooltool-manifests/linux64/clang.manifest +++ b/browser/config/tooltool-manifests/linux64/clang.manifest @@ -10,10 +10,11 @@ "unpack": true }, { -"size": 4431740, -"digest": "68fc56b0fb0cdba629b95683d6649ff76b00dccf97af90960c3d7716f6108b2162ffd5ffcd5c3a60a21b28674df688fe4dabc67345e2da35ec5abeae3d48c8e3", +"size": 12057960, +"digest": "6105d6432943141cffb40020dc5ba3a793650bdeb3af9bd5e56d3796c5f03df9962a73e521646cd71fbfb5e266c1e74716ad722fb6055589dfb7d35175bca89e", "algorithm": "sha512", "filename": "gtk3.tar.xz", +"setup": "setup.sh", "unpack": true } ] diff --git a/browser/config/tooltool-manifests/linux64/releng.manifest b/browser/config/tooltool-manifests/linux64/releng.manifest index 0001721cb8e..83180f42fe6 100644 --- a/browser/config/tooltool-manifests/linux64/releng.manifest +++ b/browser/config/tooltool-manifests/linux64/releng.manifest @@ -7,10 +7,11 @@ "unpack": true }, { -"size": 4431740, -"digest": "68fc56b0fb0cdba629b95683d6649ff76b00dccf97af90960c3d7716f6108b2162ffd5ffcd5c3a60a21b28674df688fe4dabc67345e2da35ec5abeae3d48c8e3", +"size": 12057960, +"digest": "6105d6432943141cffb40020dc5ba3a793650bdeb3af9bd5e56d3796c5f03df9962a73e521646cd71fbfb5e266c1e74716ad722fb6055589dfb7d35175bca89e", "algorithm": "sha512", "filename": "gtk3.tar.xz", +"setup": "setup.sh", "unpack": true }, { diff --git a/browser/config/tooltool-manifests/linux64/tsan.manifest b/browser/config/tooltool-manifests/linux64/tsan.manifest index 80609e02c1a..1dfe9c0ba96 100644 --- a/browser/config/tooltool-manifests/linux64/tsan.manifest +++ b/browser/config/tooltool-manifests/linux64/tsan.manifest @@ -10,10 +10,11 @@ "unpack": true }, { -"size": 4431740, -"digest": "68fc56b0fb0cdba629b95683d6649ff76b00dccf97af90960c3d7716f6108b2162ffd5ffcd5c3a60a21b28674df688fe4dabc67345e2da35ec5abeae3d48c8e3", +"size": 12057960, +"digest": "6105d6432943141cffb40020dc5ba3a793650bdeb3af9bd5e56d3796c5f03df9962a73e521646cd71fbfb5e266c1e74716ad722fb6055589dfb7d35175bca89e", "algorithm": "sha512", "filename": "gtk3.tar.xz", +"setup": "setup.sh", "unpack": true } ] diff --git a/build/unix/build-gtk3/build-gtk3.sh b/build/unix/build-gtk3/build-gtk3.sh index 24a5ae2933c..9e8d5c0c8f3 100644 --- a/build/unix/build-gtk3/build-gtk3.sh +++ b/build/unix/build-gtk3/build-gtk3.sh @@ -57,7 +57,7 @@ build() { cd build/$name eval ../../$name-$version/configure --disable-static $* $configure_args make $make_flags - make install-strip DESTDIR=$root_dir/gtk3 + make install DESTDIR=$root_dir/gtk3 find $root_dir/gtk3 -name \*.la -delete cd ../.. } @@ -103,5 +103,44 @@ build gtk+ rm -rf $root_dir/gtk3/usr/local/share/gtk-doc rm -rf $root_dir/gtk3/usr/local/share/locale +# 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 > $root_dir/gtk3/usr/local/etc/fonts/local.conf + + + + /usr/share/X11/fonts + +EOF + +cat < $root_dir/gtk3/setup.sh +#!/bin/sh + +cd \$(dirname \$0) + +# pango expects absolute paths in pango.modules, and TOOLTOOL_DIR may vary... +LD_LIBRARY_PATH=./usr/local/lib \ +PANGO_SYSCONFDIR=./usr/local/etc \ +PANGO_LIBDIR=./usr/local/lib \ +./usr/local/bin/pango-querymodules > ./usr/local/etc/pango/pango.modules + +# same with gdb-pixbuf and loaders.cache +LD_LIBRARY_PATH=./usr/local/lib \ +GDK_PIXBUF_MODULE_FILE=./usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \ +GDK_PIXBUF_MODULEDIR=./usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders \ +./usr/local/bin/gdk-pixbuf-query-loaders > ./usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache + +# The fontconfig version in the tooltool package has known uses of +# uninitialized memory when creating its cache, and while most users +# will already have an existing cache, running Firefox on automation +# will create it. Combined with valgrind, this generates irrelevant +# errors. +# So create the fontconfig cache beforehand. +./usr/local/bin/fc-cache +EOF + +chmod +x $root_dir/gtk3/setup.sh + cd $cwd tar -C $root_dir -Jcf gtk3.tar.xz gtk3 diff --git a/build/unix/mozconfig.gtk b/build/unix/mozconfig.gtk index 8050b05e1cb..5849a9c4371 100644 --- a/build/unix/mozconfig.gtk +++ b/build/unix/mozconfig.gtk @@ -11,7 +11,6 @@ if [ -d "$TOOLTOOL_DIR/gtk3" ]; then export PATH="$TOOLTOOL_DIR/gtk3/usr/local/bin:${PATH}" # Ensure cairo, gdk-pixbuf, etc. are not taken from the system installed packages. LDFLAGS="-L$TOOLTOOL_DIR/gtk3/usr/local/lib ${LDFLAGS}" - mk_add_options "export LD_LIBRARY_PATH=$TOOLTOOL_DIR/gtk3/usr/local/lib" ac_add_options --enable-default-toolkit=cairo-gtk3 # Set things up to use Gtk+3 from the tooltool package @@ -22,37 +21,8 @@ if [ -d "$TOOLTOOL_DIR/gtk3" ]; then mk_add_options "export GDK_PIXBUF_MODULEDIR=$TOOLTOOL_DIR/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders" mk_add_options "export LD_LIBRARY_PATH=$TOOLTOOL_DIR/gtk3/usr/local/lib" - # pango expects absolute paths in pango.modules, and TOOLTOOL_DIR may vary... - LD_LIBRARY_PATH=$TOOLTOOL_DIR/gtk3/usr/local/lib \ - PANGO_SYSCONFDIR=$TOOLTOOL_DIR/gtk3/usr/local/etc \ - PANGO_LIBDIR=$TOOLTOOL_DIR/gtk3/usr/local/lib \ - $TOOLTOOL_DIR/gtk3/usr/local/bin/pango-querymodules > $TOOLTOOL_DIR/gtk3/usr/local/etc/pango/pango.modules - - # same with gdb-pixbuf and loaders.cache - LD_LIBRARY_PATH=$TOOLTOOL_DIR/gtk3/usr/local/lib \ - GDK_PIXBUF_MODULE_FILE=$TOOLTOOL_DIR/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \ - GDK_PIXBUF_MODULEDIR=$TOOLTOOL_DIR/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders \ - $TOOLTOOL_DIR/gtk3/usr/local/bin/gdk-pixbuf-query-loaders > $TOOLTOOL_DIR/gtk3/usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache - - # The fontconfig version in the tooltool package has known uses of - # uninitialized memory when creating its cache, and while most users - # will already have an existing cache, running Firefox on automation - # will create it. Combined with valgrind, this generates irrelevant - # errors. - # So create the fontconfig cache beforehand. - $TOOLTOOL_DIR/gtk3/usr/local/bin/fc-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 > $TOOLTOOL_DIR/gtk3/usr/local/etc/fonts/local.conf - - - - /usr/share/X11/fonts - -EOF - + # Until a tooltool with bug 1188571 landed is available everywhere + $TOOLTOOL_DIR/gtk3/setup.sh else ac_add_options --enable-default-toolkit=cairo-gtk2 fi diff --git a/js/src/devtools/rootAnalysis/build/gcc.manifest b/js/src/devtools/rootAnalysis/build/gcc.manifest index 7dcd080f309..83274df282e 100644 --- a/js/src/devtools/rootAnalysis/build/gcc.manifest +++ b/js/src/devtools/rootAnalysis/build/gcc.manifest @@ -10,10 +10,11 @@ "unpack": true }, { -"size": 4431740, -"digest": "68fc56b0fb0cdba629b95683d6649ff76b00dccf97af90960c3d7716f6108b2162ffd5ffcd5c3a60a21b28674df688fe4dabc67345e2da35ec5abeae3d48c8e3", +"size": 12057960, +"digest": "6105d6432943141cffb40020dc5ba3a793650bdeb3af9bd5e56d3796c5f03df9962a73e521646cd71fbfb5e266c1e74716ad722fb6055589dfb7d35175bca89e", "algorithm": "sha512", "filename": "gtk3.tar.xz", +"setup": "setup.sh", "unpack": true } ]