OK, I got FF to work with xulrunner.  Here are the stats (-j1):

xulrunner:
SBU=25.664
77188 /usr/src/firefox/firefox-12.0.source.tar.bz2 size (75.378 MB)
893608 kilobytes build size (872.664 MB)
md5sum : 80c3e5927274de7f181fb5f931ac5fd4 /usr/src/firefox/firefox-12.0.source.tar.bz2

firefox:
SBU=.300

The scripts are actually what are in the book (thanks Andy), but I think I'd like to add some more text describing what is going on.

I still need to test the non-xulrunner instructions, but I think they are OK too with the caveat that the command:

tar -xvf firefox-build-dir/dist/firefox-12.0.en-US.linux-$(uname -m).tar.bz2 -C /usr/lib/firefox-12.0 --strip-components=1

needs to have an empty /usr/lib/firefox-12.0 to prevent a hang. Normally it would be empty, but it might not be if the user has some false starts.

  -- Bruce
# If you have a multicore machine you can speed up the build by running
# several jobs at once, but if you have a single core, delete this line:
#mk_add_options MOZ_MAKE_FLAGS="-j4"

# If you have installed Yasm delete this option:
ac_add_options --disable-webm

# If you have installed DBus-Glib delete this option:
ac_add_options --disable-dbus

# If you have installed wireless-tools delete this option:
ac_add_options --disable-necko-wifi

# If you have installed libnotify delete this option:
ac_add_options --disable-libnotify

# If you have installed xulrunner uncomment these two lines:
ac_add_options --with-system-libxul
ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-12.0

# Uncomment these if you have installed them:
# ac_add_options --enable-startup-notification
# ac_add_options --enable-system-hunspell
ac_add_options --enable-system-sqlite
#ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
# ac_add_options --with-system-nspr
# ac_add_options --with-system-nss

mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-build-dir
ac_add_options --enable-official-branding
ac_add_options --prefix=/usr

ac_add_options --disable-crashreporter
ac_add_options --disable-debug
ac_add_options --disable-debug-symbols
ac_add_options --disable-installer
ac_add_options --disable-static
ac_add_options --disable-tests
ac_add_options --disable-updater
ac_add_options --enable-shared
ac_add_options --enable-system-cairo
ac_add_options --enable-system-ffi
ac_add_options --with-pthreads
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --with-system-zlib

ac_add_options --enable-optimize
ac_add_options --enable-strip
ac_add_options --enable-install-strip
ac_add_options --disable-mochitest
#!/bin/bash

source /usr/src/stats

#######################

DIR=`pwd`
APP=firefox-12.0
PROGRAM=$APP.source
LOG=$DIR/$APP-xul.log
TITLE=$PROGRAM
TIMEFORMAT="$TIMEFMT $TITLE"

BUILDDIR=/tmp/firefox
#DEST=$BUILDDIR/install

rm -f        $LOG
$SUDO rm -rf $BUILDDIR
mkdir        $BUILDDIR
cd           $BUILDDIR

before=`df -k / | grep / | sed -e "s/ \{2,\}/ /g" | cut -d' ' -f3`

tar -xf $DIR/$PROGRAM.tar.?z* || exit 1

cd mozilla-release
{ time \
  {
    echo Making $TITLE
    date

    cp $DIR/ffconfigxul  mozconfig  &&

    sed -i '/fcntl.h/a#include <unistd.h>' \
      ipc/chromium/src/base/{file_util_linux,message_pump_libevent}.cc          
    &&

    sed -i '/sys\/time\.h/a#include <unistd.h>' 
ipc/chromium/src/base/time_posix.cc &&
    sed -i 's# ""##' browser/base/Makefile.in                                   
    &&

    make -f client.mk                             &&

    echo "BLFS Start INSTALL"                     &&
    $SUDO make -C firefox-build-dir install       &&
    $SUDO rm -f /usr/bin/firefox                  &&

    $SUDO bash -c "cat > /usr/bin/firefox << 'HERE_DOC'
#!/bin/bash
/usr/lib/xulrunner-12.0/xulrunner /usr/lib/firefox-12.0/application.ini "${@}"
HERE_DOC
"

    $SUDO chmod 755 /usr/bin/firefox              &&
    $SUDO mkdir -p /usr/lib/mozilla/plugins       &&
    $SUDO ln -sv ../mozilla/plugins /usr/lib/$APP 
  }
} 2>&1 | tee -a $LOG

if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;

stats $LOG $DIR/$PROGRAM.tar.?z* $before

exit 0

#!/bin/bash

source /usr/src/stats

#######################

DIR=`pwd`
PROGRAM=firefox-12.0.source
LOG=$DIR/xulrunner-12.log
TITLE=$PROGRAM
TIMEFORMAT="$TIMEFMT $TITLE"

BUILDDIR=/tmp/xulrunner
#DEST=$BUILDDIR/install

rm -f       $LOG
sudo rm -rf $BUILDDIR
mkdir       $BUILDDIR
cd          $BUILDDIR

before=`df -k / | grep / | sed -e "s/ \{2,\}/ /g" | cut -d' ' -f3`

tar -xf $DIR/$PROGRAM.tar.?z* || exit 1

cd mozilla-release
{ time \
  {
    echo Making $TITLE
    date

    cp $DIR/xulconfig mozconfig &&

    sed -i '/fcntl.h/a#include <unistd.h>' \
      ipc/chromium/src/base/{file_util_linux,message_pump_libevent}.cc          
    &&

    sed -i '/sys\/time\.h/a#include <unistd.h>' 
ipc/chromium/src/base/time_posix.cc &&
    make -f client.mk          &&

    echo "BLFS Start INSTALL"  &&

    $SUDO rm -rf                      /usr/lib/xulrunner-12.0/        &&

    $SUDO make -C xulrunner-build-dir install                         &&
    $SUDO mkdir -p                    /usr/lib/mozilla/plugins        &&
    $SUDO rm -rf                      /usr/lib/xulrunner-12.0/plugins &&
    $SUDO ln -svfn ../mozilla/plugins /usr/lib/xulrunner-12.0         &&

    for library in /usr/lib/xulrunner-devel-12.0/sdk/lib/*.so; do 
       $SUDO ln -sfnv ${library#/usr/lib/} /usr${library#*sdk}
    done

  }
} 2>&1 | tee -a $LOG

if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;

stats $LOG $DIR/$PROGRAM.tar.?z* $before

exit 0

# If you have a multicore machine you can speed up the build by running
# several jobs at once, but if you have a single core, delete this line:
#mk_add_options MOZ_MAKE_FLAGS="-j4"

# If you have installed Yasm delete this option:
ac_add_options --disable-webm

# If you have installed DBus-Glib delete this option:
ac_add_options --disable-dbus

# If you have installed wireless-tools delete this option:
ac_add_options --disable-necko-wifi

# If you have installed libnotify delete this option:
ac_add_options --disable-libnotify

# Uncomment these if you have installed them:
# ac_add_options --enable-startup-notification
# ac_add_options --enable-system-hunspell
ac_add_options --enable-system-sqlite
#ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
# ac_add_options --with-system-nspr
# ac_add_options --with-system-nss

mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/xulrunner-build-dir
ac_add_options --disable-crashreporter
ac_add_options --disable-debug
ac_add_options --disable-debug-symbols
ac_add_options --disable-installer
ac_add_options --disable-static
ac_add_options --disable-tests
ac_add_options --disable-updater
ac_add_options --enable-shared
ac_add_options --enable-system-cairo
ac_add_options --enable-system-ffi
ac_add_options --prefix=/usr
ac_add_options --with-pthreads
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --with-system-zlib

ac_add_options --enable-optimize
ac_add_options --enable-strip
ac_add_options --enable-install-strip
ac_add_options --disable-mochitest

ac_add_options --enable-application=xulrunner
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to