Randy McMurchy wrote:
Andrew Benton wrote these words on 07/31/05 12:11 CST:
There are some subtle but important differences between using CMMI and make -f
client.mk
make -f client.mk allows you to build in a separate obj.dir so you can build
firefox,
Actually, the book uses the --disable-installer parameter which is why
the BLFS book method doesn't create this separate dir. Right?
I've built firefox and thunderbird a whole bunch of time on solaris,
linux and windows. --disable-installer has nothing to do with objdir.
That parameter just suppresses the packaging of a binary with script
like you can download from mozilla.org. Also, you can run configure
from an object dir. I used do this.
mkdir ../firefox-build
cd ../firefox-build
../mozilla/configure ...
Also, make -f client.mk runs cvs update before anything else so that the code
is up to date.
Is this what we want? Pull from CVS?
make -f client.mk will pull from CVS and this is obviously not what you
want to do if you already have a released tarball. Giving
make -f client.mk build
runs configure and make.
make -f client.mk install
runs make install.
But more importantly, make -f client.mk reads it's configure options from the
mozconfig file
And then runs configure and make. If the configure options used
using configure were the same as what was in the mozconfig file, you
get the *same exact* thing.
They are exactly the same thing. client.mk just uses some scripts to
hash out the options you want and then sends them off to configure and
make. In my opinion, using mozconfig is much easier since you can sit
at a text editor to figure out the myriad of options to add. Also, you
can source the default options and not worry about things like
--enable-extensions which will definitely kill your build if say you
have --enable-extensions=composer for firefox (which is included in
--enable-extensions=all).
If you're curious, look in the directory mozilla/build/autoconf. The
scripts are things like mozconfig2client-mk, mozconfig2configure, etc.
If you want to test, after configure is run, look in the object dir at
config/autoconf.mk. It has all the variables and flags that will be
used (pretty much). You can compare them between make -f client.mk and
./configure.
Here's the mozconfig I use on Solaris that gets me a very nice build out
in userland. There's a whole bunch of variables to set too, but it
looks like you guys have that covered already.
Dan Nicholson
. $topsrcdir/browser/config/mozconfig
mk_add_options [EMAIL PROTECTED]@/../firefox-build
ac_add_options --enable-shared
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --enable-optimize
ac_add_options --enable-official-branding
ac_add_options --enable-default-toolkit=gtk2
ac_add_options --enable-xft
ac_add_options --disable-freetype2
ac_add_options --prefix=$GTK2
ac_add_options --disable-installer
ac_add_options --with-java-bin-path=$OPT/jdk/bin
ac_add_options --with-java-include-path=$OPT/jdk/include
--
http://linuxfromscratch.org/mailman/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page