From 0b4e8cec57864093ea7bf3f254cf4772bafed9d9 Mon Sep 17 00:00:00 2001 From: Hugo Villeneuve Date: Tue, 30 Jul 2013 22:33:48 -0400 Subject: [PATCH] Upgrade to firefox-22.0 Also upgrade related dependencies. Using internal copy of libjpeg. If using system libjpeg, jpeg images are blank. --- config/packages-list | 6 ++-- stage3/hv-install-1 | 5 +-- stage3/packages-update | 2 +- stage5/pkg/firefox | 82 ++++++++++++++++++++++++++---------------- 4 files changed, 58 insertions(+), 37 deletions(-) diff --git a/config/packages-list b/config/packages-list index 1436863..c5383c1 100644 --- a/config/packages-list +++ b/config/packages-list @@ -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" diff --git a/stage3/hv-install-1 b/stage3/hv-install-1 index eae66e9..94dde39 100755 --- a/stage3/hv-install-1 +++ b/stage3/hv-install-1 @@ -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 \ diff --git a/stage3/packages-update b/stage3/packages-update index ab357f7..adabe66 100755 --- a/stage3/packages-update +++ b/stage3/packages-update @@ -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} diff --git a/stage5/pkg/firefox b/stage5/pkg/firefox index 1035f82..ed6ab34 100644 --- a/stage5/pkg/firefox +++ b/stage5/pkg/firefox @@ -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 } -- 2.20.1