-Completed transition to new ipkg method (ipkg.def), but still problem with eglibc...
[hvlinux.git] / stage3 / cis-firefox
index 5062900..e42e0be 100755 (executable)
@@ -1,4 +1,6 @@
 #!/bin/sh
+set -o errexit
+
 # First argument of this script is the package name
 
 # Reading system configuration informations, functions and package versions.
@@ -6,21 +8,24 @@ source ../sysinfos
 source ../functions
 source ../packages-list
 
-# Applying patches (if any)
-apply_patches ${1} &&
+PACKAGE=${1}
 
-# Get the name of the decompressed directory
-SOURCE_DIR=$(static_decompressed_dirname ${1})
+# Applying patches (if any)
+apply_patches ${PACKAGE}
 
 FIREFOX_BUILD_DIR="${1}-build"
+FIREFOX_PKG_VERSION="firefox-$(get_pkg_ver ${PACKAGE})"
 
-cd ${LFS_TMP}/${SOURCE_DIR} &&
+cd ${LFS_TMP}/${PACKAGE}
 cat > .mozconfig << "EOF"
 # This file contains the options used in the Firefox build.
 
 # Use the default settings specified in the source tree
 . $topsrcdir/browser/config/mozconfig
 
+# build the browser
+ac_add_options --enable-application=browser
+
 # Create an object directory and specify to build the package in that
 # directory. If desired, modify the location of the object directory
 # to a directory inside the source tree by removing '../' from the
@@ -33,43 +38,55 @@ mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../_FIREFOX_BUILD_DIR_
 # 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 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 --enable-system-cairo
-# --with-system-png: Problem with missing apng support
-
-# This option causes the installed binaries to have the official
-# Firefox name embedded in them. Due to license restrictions, you
-# may not distribute binaries created using this option.
-ac_add_options --enable-official-branding
+ac_add_options --enable-system-lcms
+ac_add_options --enable-system-sqlite
+# comment this if you have not installed png with the apng patch
+ac_add_options --with-system-png
 
 # This option is used to enable support for rendering SVG files in the
 # Firefox browser. Comment out the line to disable the option.
 ac_add_options --enable-svg
 
-# This option is used so that the debugging symbols are removed from
-# the installed binaries during the installation process. Comment out
-# this option if you may have a need to retain the debugging symbols
-# in the installed binaries. Note that this can substantially
-# increase the size of the installed binaries.
-ac_add_options --enable-strip
+# These two options enable support for building Firefox with
+# system-installed versions of the Network Security Services (NSS)
+# and Netscape Portable Runtime (NSPR) libraries. We build these
+# as part of xulrunner, so we can use them here.  For a standalone
+# firefox you might want to comment these.
+#ac_add_options --with-system-nspr
+#ac_add_options --with-system-nss
 
-# This option is added so that test libraries and programs are not
-# built. These would only be required for debugging purposes.
-ac_add_options --disable-tests
+# uncomment this if you did not build curl
+ac_add_options --disable-crashreporter
 
 # This option is added so that the Mozilla Installer program is not
 # built or installed. The program is not required for a BLFS
 # installation of Firefox.
 ac_add_options --disable-installer
 
+# The updater is not useful if you build from source.
+ac_add_options --disable-updater
+
 # This option is used to disable the a11y support in the Firefox
 # binaries. Comment out this option if you require a11y support.
 ac_add_options --disable-accessibility
 
+# This option is added so that test libraries and programs are not
+# built. These would only be required for debugging purposes.
+ac_add_options --disable-tests
+
+# The mochitest is a separate test feature and has caused problems
+# in the past.
+ac_add_options --disable-mochitest
+
 # This option is used to enable source tree included LDAP support in
 # the Firefox binaries.
 ###################################################################
@@ -84,38 +101,48 @@ ac_add_options --disable-accessibility
 #   make[3]: *** No targets specified and no makefile found.  Stop.
 ######ac_add_options --enable-ldap
 
-# These two options enable support for building Firefox with
-# system-installed versions of the Network Security Services (NSS)
-# and Netscape Portable Runtime (NSPR) libraries. Uncomment both
-# lines to enable support for system-installed NSS/NSPR.
-#ac_add_options --with-system-nss
-# --with-system-nss: Problem with missing nss-config in nss-3.12!!!
-#ac_add_options --with-system-nspr
+# This option causes the installed binaries to have the official
+# Firefox name embedded in them. Due to license restrictions, you
+# may not distribute binaries created using this option.
+ac_add_options --enable-official-branding
+
+# use the anti-phishing blacklist
+ac_add_options --enable-safe-browsing
+
+# This option is used so that the debugging symbols are removed from
+# the installed binaries during the installation process. Comment out
+# this option if you may have a need to retain the debugging symbols
+# in the installed binaries. Note that this can substantially
+# increase the size of the installed binaries.
+ac_add_options --enable-strip
+
+# Point to the xulrunner libraries - comment this for a standalone browser
+#ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-1.9.0.7
+
 EOF
 
-sed -i -e "s!_FIREFOX_BUILD_DIR_!${FIREFOX_BUILD_DIR}!g" .mozconfig &&
+sed -i -e "s!_FIREFOX_BUILD_DIR_!${FIREFOX_BUILD_DIR}!g" .mozconfig
 
-make -f client.mk build &&
-make -f client.mk install &&
+make -f client.mk build
+make -f client.mk install
 
 # Many applications look for netscape when they need to open a browser...
-ln -v -sf firefox /usr/bin/netscape &&
+ln -v -sf firefox /usr/bin/netscape
 
 # Remove old links
-rm -f /usr/lib/mozilla &&
-rm -f /usr/lib/firefox &&
-rm -f /usr/lib/${1}/plugins/libjavaplugin_oji.so &&
+rm -f /usr/lib/mozilla
+rm -f /usr/lib/firefox
+rm -f /usr/lib/${FIREFOX_PKG_VERSION}/plugins/libjavaplugin_oji.so
 
-ln -v -sf ${1} /usr/lib/mozilla &&
-ln -v -sf ${1} /usr/lib/firefox &&
+ln -v -sf ${FIREFOX_PKG_VERSION} /usr/lib/mozilla
+ln -v -sf ${FIREFOX_PKG_VERSION} /usr/lib/firefox
 # To use the installed Java plugin.
-ln -v -s ${JAVA_HOME}/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/${1}/plugins &&
+ln -v -s ${JAVA_HOME}/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/${FIREFOX_PKG_VERSION}/plugins
 
 # Addition to /etc/ld.so.conf
 # This is necessary for shared library libmozjs.so (needed by gxine)
-string_add "/usr/lib/${1}" /etc/ld.so.conf &&
+string_add "/usr/lib/${FIREFOX_PKG_VERSION}" /etc/ld.so.conf
 
 ldconfig
 
- # Return last error
 exit $?