From 5a13c45ce68c5834e903a0311de69dd8ceb0d4de Mon Sep 17 00:00:00 2001 From: Randy McMurchy Date: Sat, 24 Dec 2005 17:34:04 +0000 Subject: [PATCH] Updated to Firefox-1.5 and modified the method used to build the package git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5459 af4574ff-66df-0310-9fd7-8a98e5e911e0 --- general.ent | 6 +- introduction/welcome/changelog.xml | 13 +- xsoft/graphweb/firefox.xml | 285 +++++++++++++++++++---------- 3 files changed, 202 insertions(+), 102 deletions(-) diff --git a/general.ent b/general.ent index ac789c62b0..d3e5873492 100644 --- a/general.ent +++ b/general.ent @@ -1,8 +1,8 @@ - + - + @@ -474,7 +474,7 @@ - + diff --git a/introduction/welcome/changelog.xml b/introduction/welcome/changelog.xml index 9fa919e1e0..174de13f54 100644 --- a/introduction/welcome/changelog.xml +++ b/introduction/welcome/changelog.xml @@ -40,8 +40,19 @@ --> + - December 23nd, 2005 + December 24th, 2005 + + + [randy] - Updated to Firefox-1.5 and modified the method used + to build the package. + + + + + + December 23rd, 2005 [andy] - Updated librsvg to 2.12.7. diff --git a/xsoft/graphweb/firefox.xml b/xsoft/graphweb/firefox.xml index 54ab8b228f..1346df8471 100644 --- a/xsoft/graphweb/firefox.xml +++ b/xsoft/graphweb/firefox.xml @@ -5,24 +5,13 @@ %general-entities; - - - - - + + + + + ]> - - @@ -69,14 +58,6 @@ should be in our setup. - Additional Downloads - - - Required patch: - - - Firefox Dependencies Required @@ -84,26 +65,24 @@ should be in our setup. and + Note: libjpeg should have been installed + before GTK+ and should exist on your system. If + for some reason you haven't installed libjpeg, + you should remove the option from the + .mozconfig file created below. + Optional - , - , - and - (to build the gnomevfs extension), - or - (for the GSSAPI libraries to build the negotiateauth extension), - , - Xprint, - Electric Fence + and + (to build the gnomevfs extension) Installation of Firefox - The configuration of Firefox is very - similar to and hence the options are not - discussed. Refer to the instructions for - explanations and additional configuration information. + - Compile and install Firefox by - running the following commands: + The configuration of Firefox is + accomplished by creating a .mozconfig file containing + the desired configuration options. A default .mozconfig + is created below. To see the entire list of available configuration options + (and an abbreviated description of each one), issue + ./configure --help. If you are going to build the + OpenOffice package and you want to use this + Firefox installation as the default + Mozilla source, ensure you uncomment the + option from the default file created below. + You may also wish to review the entire file and uncomment any other desired + options. If you would prefer to download the file instead of creating it by + typing or cut-and-pasting, here is the URL: + (the file must be installed in the + mozilla directory and named + .mozconfig). Create the file by issuing the following + command: -export MOZILLA_OFFICIAL="1" && -export BUILD_OFFICIAL="1" && -export MOZ_PHOENIX="1" && +cat > .mozconfig << "EOF" +# This file contains the options used in the Firefox build. You may +# need to specify additional options for your specific build needs. +# Use the information provided by running './configure --help' to +# help you determine if you need to add any additional options. +# Some additional options can be added by uncommenting the examples +# in this file or adding options by inserting a line containing +# 'ac_add_options --some-option-you-need'. -sed -i 's| dist_bin="$moz_libdir"|\ -&\n run_moz="$dist_bin/run-mozilla.sh"|' browser/app/mozilla.in && -patch -Np1 -i ../firefox-&firefox-version;-gcc4-2.patch && -./configure --prefix=/usr \ - --with-default-mozilla-five-home=/usr/lib/firefox-&firefox-version; \ - --with-user-appdir=.firefox \ - --with-system-zlib \ - --with-system-png \ - --enable-application=browser \ - --enable-default-toolkit=gtk2 \ - --enable-extensions=cookie,xml-rpc,xmlextras,pref,\ -transformiix,universalchardet,webservices,inspector,\ -gnomevfs,negotiateauth \ - --enable-crypto \ - --enable-xft \ - --enable-xinerama \ - --enable-optimize \ - --enable-reorder \ - --enable-strip \ - --enable-cpp-rtti \ - --enable-single-profile \ - --disable-freetype2 \ - --disable-accessibility \ - --disable-debug \ - --disable-tests \ - --disable-logging \ - --disable-pedantic \ - --disable-installer \ - --disable-mailnews \ - --disable-ldap \ - --disable-composer \ - --disable-profilesharing && -make +# Use the default settings specified in the source tree +. $topsrcdir/browser/config/mozconfig - You should add the switch - to the configure script if you have - libjpeg installed. +# 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 +# line below. +mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../firefox-build + +# 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 + +# 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-png +ac_add_options --with-system-jpeg +ac_add_options --enable-system-cairo + +# 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 + +# This option specifies to include support for rendering the HTML +# <canvas></canvas> tag in the Firefox browser. +ac_add_options --enable-canvas + +# 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 + +# 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 + +# 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 + +# 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 used to enable source tree included LDAP support in +# the Firefox binaries. +################################################################### +# +# NOTE: You must uncomment this option if there is any chance of +# compiling the OpenOffice package from source code using this copy +# of Firefox for your Mozilla support. +# +################################################################### +#ac_add_options --enable-ldap + +# This option is used to enable support for rendering SVG files in the +# Firefox browser. Uncomment the line below to enable the option. +#ac_add_options --enable-svg + +# Uncomment this option if you desire support for dual-monitor +# display of Firefox using the X-Window Xinerama libraries. +#ac_add_options --enable-xinerama + +# This option identifies the default binary directory of the Firefox +# installation and is used to locate Firefox's installed files. This +# option is not required for end-user browsing, and is only used for +# development purposes. +#ac_add_options --with-default-mozilla-five-home=/usr/lib/firefox-&firefox-version; + +EOF + + Compile Firefox by issuing the + following command: + +make -f client.mk build This package does not come with a test suite. - Now, as the root user: + Now, as the root user, + install the package: + +make -f client.mk install && + +install -v -m755 -d /usr/lib/firefox-&firefox-version;/chrome/icons/default && +ln -v -s ../../../icons/default.xpm \ + /usr/lib/firefox-&firefox-version;/chrome/icons/default && -make install && install -v -m755 -d /usr/include/firefox-&firefox-version;/nss && -cp -v -Lf dist/private/nss/*.h dist/public/nss/*.h \ - /usr/include/firefox-&firefox-version;/nss +cp -v -Lf ../firefox-build/dist/{private,public}/nss/*.h \ + /usr/include/firefox-&firefox-version;/nss && + +chown -v -R root:root \ + /usr/lib/firefox-&firefox-version;/extensions/inspector@mozilla.org/* + + If you enabled LDAP support in the Firefox + build, install some additional interface headers as the + root user: + +install -v -m644 ../firefox-build/dist/public/ldap-private/* \ + /usr/include/firefox-&firefox-version;/ldap + + + You should run /usr/bin/firefox once as the root user (or any user with @@ -184,21 +253,25 @@ touch `find . -name *.rdf` /usr hierarchy. - Lastly, unset the build variables from the unprivileged user's - environment: - -unset MOZILLA_OFFICIAL && -unset BUILD_OFFICIAL && -unset MOZ_PHOENIX - Command Explanations - sed -i '...' browser/app/mozilla.in: This command - fixes an issue where Firefox wants to call the - profile manager instead of just invoking another copy of itself. + install -v -m755 -d .../chrome/icons/default and + ln -v -s ../../../icons/default.xpm ...: These two + commands are used to create a symlink in the required directory so that + the proper icon is displayed in the taskbar and when + Firefox windows are minimized. + + install -v -m755 -d /usr/include/firefox-&firefox-version;/nss + and cp -v -Lf ../firefox-build/dist/{private,public}/nss/*.h ...: + These commands are used to install the Mozilla Network Security Services + (NSS) interface headers to a system-wide location. + + chown -v -R root:root ...: This command changes + the ownership of some installed files to more appropriate user:group + names. @@ -208,8 +281,8 @@ unset MOZ_PHOENIX No specific configuration is required as long as the firefox script is in the user's path. If Firefox is installed in a non-standard location, - then make a symlink to the firefox script from - /usr/bin. + then make a symlink to the firefox script in the + /usr/bin directory. Many applications look for netscape when they need to open a browser. You may make the following symlink for convenience @@ -221,12 +294,27 @@ unset MOZ_PHOENIX refer to Mozdev's PluginDoc Project. If you have already installed, create the following link as the - root user to utilize the - JAVA plugin: + root user to utilize the installed + Java plugin: ln -v -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so \ /usr/lib/firefox-&firefox-version;/plugins + Some packages install Mozilla plugins into the default system-wide + directory /usr/lib/mozilla/plugins. + If desired, issue the following commands as the + root user to link any plugins + you may have installed to the Firefox plugin + directory. + +if [ -f /usr/lib/mozilla/plugins/* ]; then + for PLUGIN_FILE in $(ls /usr/lib/mozilla/plugins/*) + do + ln -v -s ../../mozilla/plugins/$(basename $PLUGIN_FILE) \ + /usr/lib/firefox-&firefox-version;/plugins + done +fi + @@ -242,7 +330,7 @@ unset MOZ_PHOENIX Numerous libraries, browser components, plugins, extensions, and helper modules installed in /usr/lib/firefox-&firefox-version; - /usr/bin/defaults, /usr/include/firefox-&firefox-version;, + /usr/include/firefox-&firefox-version;, /usr/lib/firefox-&firefox-version;, and /usr/share/idl/firefox-&firefox-version; @@ -256,7 +344,8 @@ unset MOZ_PHOENIX firefox - is the next-generation browser from Mozilla. + is a shell script that sets up the environment and + calls the firefox-bin binary. firefox