Upgrade to firefox-22.0
authorHugo Villeneuve <hugo@hugovil.com>
Wed, 31 Jul 2013 02:33:48 +0000 (22:33 -0400)
committerHugo Villeneuve <hugo@hugovil.com>
Wed, 7 Aug 2013 17:50:21 +0000 (13:50 -0400)
Also upgrade related dependencies.

Using internal copy of libjpeg. If using system libjpeg, jpeg images are blank.

config/packages-list
stage3/hv-install-1
stage3/packages-update
stage5/pkg/firefox

index 1436863..c5383c1 100644 (file)
@@ -87,7 +87,7 @@ FCRON="fcron-3.0.6"
 FETCHMAIL="fetchmail-6.3.21"
 FFMPEG="ffmpeg-1.2"
 FFTW="fftw-3.3.2"
-FIREFOX="firefox-15.0.1"
+FIREFOX="firefox-22.0"
 FILE_PKG="file-5.11"
 FINDUTILS="findutils-4.4.2"
 FIRMWARE_B43_LPPHY="broadcom-wl-5.100.138"
@@ -224,7 +224,7 @@ LIBOIL="liboil-0.3.17"
 LIBOPENJPEG="openjpeg-1.5.0"
 LIBPCAP="libpcap-1.3.0"
 LIBPIPELINE="libpipeline-1.2.1"
-LIBPNG="libpng-1.5.12"
+LIBPNG="libpng-1.6.3"
 LIBPTHREAD_STUBS="libpthread-stubs-0.3"
 LIBRSVG="librsvg-2.36.3"
 LIBSAMPLERATE="libsamplerate-0.1.8"
@@ -359,7 +359,7 @@ SPAMASSASSIN="Mail-SpamAssassin-3.3.2"
 SPEEX="speex-1.2rc1"
 SPLINT="splint-3.1.1"
 SPLIX="splix-2.0.0"
-SQLITE="sqlite-autoconf-3071300"
+SQLITE="sqlite-autoconf-3071700"
 SQUIRRELMAIL="squirrelmail-1.5.1"
 STARTUP_NOTIFICATION="startup-notification-0.12"
 STRACE="strace-4.7"
index eae66e9..94dde39 100755 (executable)
@@ -27,8 +27,9 @@ ipkg ${APR} "--disable-static --with-installbuilddir=/usr/share/apr-1/build"
 ipkg ${APR_UTIL} "--with-apr=/usr --with-gdbm=/usr -with-openssl=/usr"
 ipkg ${NEON} "--with-ssl"
 ipkg -s tcl ${TCL}
-CFLAGS="${CFLAGS} -DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_UNLOCK_NOTIFY=1" \
-    ipkg ${SQLITE} "--enable-threadsafe --enable-readline --enable-dynamic-extensions"
+CFLAGS="${CFLAGS} -DSQLITE_ENABLE_FTS3=1 -DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 \
+    -DSQLITE_ENABLE_COLUMN_METADATA=1" \
+    ipkg ${SQLITE}
 ipkg -j ${SUBVERSION} "--without-berkeley-db"
 ipkg ${SUDO} "--libexecdir=/usr/lib/sudo \
     --with-all-insults \
index ab357f7..adabe66 100755 (executable)
@@ -33,7 +33,7 @@ fpkg -m apa ${APR}
 fpkg -m apa -s apr ${APR_UTIL}
 fpkg -e "tar.gz" ${NEON} "http://www.webdav.org/neon"
 fpkg -m sf -s "tcl" ${TCL}
-fpkg -e "tar.gz" ${SQLITE} "http://www.sqlite.org"
+fpkg -e "tar.gz" ${SQLITE} "http://www.sqlite.org/2013"
 fpkg ${SUBVERSION} "http://mirror.csclub.uwaterloo.ca/apache/subversion"
 fpkg -e "tar.gz" ${SUDO} "http://www.sudo.ws/sudo/dist"
 fpkg -m sf -e "tar.xz" ${STRACE}
index 1035f82..ed6ab34 100644 (file)
@@ -24,29 +24,34 @@ hvbuild()
 # line below.
 mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../_FIREFOX_BUILD_DIR_
 
-# Specify the installation prefix. If you would prefer Firefox
-# installed in a different prefix, modify the line below to fit
-# your needs. You'll also need to modify some of the instructions in
-# the BLFS book to point to your desired prefix.
 ac_add_options --prefix=/usr
 
-# Compile with a minimal level of optimization
-ac_add_options --enable-optimize
-
-# These options are used so that the Firefox or Xulrunner binaries are linked to
-# the system-installed copies of the specified libraries instead of
-# the source tree code which may not be the most recent versions.
-ac_add_options --with-system-zlib
-ac_add_options --with-system-jpeg
-ac_add_options --with-system-png
-
+# System libraries
 ac_add_options --enable-system-cairo
 ac_add_options --enable-system-lcms
 ac_add_options --enable-system-sqlite
+ac_add_options --with-system-libevent
 ac_add_options --with-system-libvpx
-ac_add_options --enable-startup-notification
+ac_add_options --with-system-zlib
+ac_add_options --with-system-bz2
+# Temporary: system-jpeg uses turbo-jpeg, but there is a bug
+# as jpeg images are blank, so use internal jpeg lib.
+# ac_add_options --with-system-jpeg
+ac_add_options --with-system-png
+ac_add_options --enable-system-ffi
+ac_add_options --enable-system-pixman
 
+ac_add_options --enable-shared-js
+ac_add_options --enable-startup-notification
 ac_add_options --enable-svg
+ac_add_options --with-pthreads
+
+# Compile with a minimal level of optimization
+ac_add_options --enable-optimize
+
+# Remove the debugging symbols from the installed binaries.
+ac_add_options --enable-strip
+ac_add_options --enable-install-strip
 
 # These two options enable support for building Firefox with
 # system-installed versions of the Network Security Services (NSS)
@@ -57,7 +62,6 @@ ac_add_options --enable-svg
 #ac_add_options --with-system-nss
 
 ac_add_options --disable-gnomevfs
-
 ac_add_options --disable-crashreporter
 ac_add_options --disable-installer
 ac_add_options --disable-updater
@@ -68,9 +72,6 @@ ac_add_options --disable-mochitest
 # use the anti-phishing blacklist
 ac_add_options --enable-safe-browsing
 
-# Remove the debugging symbols from the installed binaries.
-ac_add_options --enable-strip
-
 # If you enable javaxpcom, you must have a java compiler installed.
 ac_add_options --disable-javaxpcom
 EOF
@@ -78,11 +79,16 @@ EOF
     if [ "x${HVLABEL}" = "x${FIREFOX}-browser" ]; then
         # Point to the xulrunner libraries.
         echo "ac_add_options --with-system-libxul" >> .mozconfig
-        echo "ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-${FIREFOX_VERSION}" >> .mozconfig
+        echo "ac_add_options --with-libxul-sdk=\$(pkg-config --variable=sdkdir libxul)" >> \
+            .mozconfig
 
         # This option causes the installed binaries to have the official
         # Firefox name embedded in them.
         echo "ac_add_options --enable-official-branding" >> .mozconfig
+        echo "ac_add_options --enable-url-classifier" >> .mozconfig
+
+        # Remove an unprintable control character from the title bar
+        sed -i 's@ ""@@' browser/base/Makefile.in
     fi
 
     sed -i -e "s!_FIREFOX_BUILD_DIR_!${FIREFOX_BUILD_DIR}!g" .mozconfig
@@ -90,26 +96,40 @@ EOF
         echo "ac_add_options --disable-necko-wifi" >> .mozconfig
     fi
 
-    make -f client.mk build
-    make -f client.mk install
+    make -f client.mk
+    make -C ${LFS_TMP}/${PACKAGE}-build install
 
     if [ "x${HVLABEL}" = "x${FIREFOX}-xulrunner" ]; then
         install -v -m755 -d /usr/lib/mozilla
 
+        mkdir -pv /usr/lib/xulrunner-${FIREFOX_VERSION}/plugins
+
         # Remove old links (if applicable) and create new ones
         rm -f /usr/lib/mozilla/plugins
         ln -sv /usr/lib/xulrunner-${FIREFOX_VERSION}/plugins /usr/lib/mozilla
-        chown -Rv root:root /usr/lib/xulrunner-* \
-            /usr/share/idl/xulrunner-* \
-            /usr/include/xulrunner-*
+
+        chmod -v 755 /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/sdk/bin/xpcshell
+
+        # The libraries shipped with this package are installed into
+        # /usr/lib/xulrunner-xxx, which means they will not be found at runtime.
+        # These commands make relative symbolic links to the shared libraries
+        # from /usr/lib. They will also replace duplicate libraries that are
+        # installed in /usr/lib/xulrunner-devel-xxx/sdk/lib with symlinks in
+        # order to save some space.
+        for library in libmozalloc.so libmozjs.so libxul.so; do
+            ln -sfv ../../../xulrunner-22.0/$library \
+                /usr/lib/xulrunner-devel-22.0/sdk/lib/$library
+            ln -sfv xulrunner-22.0/$library /usr/lib/$library
+        done
 
         # Fixes the error "run-mozilla.sh: no such file or directory"
-        ln -s /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/sdk/bin/run-mozilla.sh /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/bin
-        ln -s /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/sdk/bin/xpcshell       /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/bin
+        rm -f /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/bin/{run-mozilla.sh,xpcshell}
+        ln -sv /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/sdk/bin/run-mozilla.sh \
+            /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/bin
+        ln -sv /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/sdk/bin/xpcshell \
+            /usr/lib/xulrunner-devel-${FIREFOX_VERSION}/bin
     else
-        rm /usr/bin/firefox
-        echo "#!/bin/bash" > /usr/bin/firefox
-        echo "/usr/lib/xulrunner-${FIREFOX_VERSION}/xulrunner /usr/lib/firefox-${FIREFOX_VERSION}/application.ini \"\${@}\"" >> /usr/bin/firefox
-        chmod 755 /usr/bin/firefox
+        ln -sfv ../lib/firefox-${FIREFOX_VERSION}/firefox /usr/bin
+        ln -sfv ../xulrunner-${FIREFOX_VERSION} /usr/lib/firefox-${FIREFOX_VERSION}/xulrunner
     fi
 }