Mobile/Build/Fennec: Difference between revisions

From MozillaWiki
< Mobile‎ | Build
Jump to navigation Jump to search
(→‎Building Fennec and Xulrunner: taken from 'Mozilla_Source_Code_(Mercurial)' to fix suggested usage of autoconf (see bug 433786))
Line 32: Line 32:
ac_add_app_options mobile --enable-application=mobile
ac_add_app_options mobile --enable-application=mobile
ac_add_app_options mobile --with-libxul-sdk=../xulrunner/dist
ac_add_app_options mobile --with-libxul-sdk=../xulrunner/dist
# configure will be automatically generated using the 'autoconf-2.13'
# command.  If autoconf-2.13 isn't the right name for your system, as
# is the case on OS X using MacPorts, use the real command name as
# demonstrated below.
mk_add_options xulrunner AUTOCONF=autoconf213
mk_add_options mobile AUTOCONF=autoconf213
</pre>
</pre>



Revision as of 16:17, 16 May 2008

Building Fennec and Xulrunner

pull the code from hg

hg clone http://hg.mozilla.org/mozilla-central
cd mozilla-central
hg clone http://hg.mozilla.org/mobile-browser mobile

Your mozconfig should look like this:

# Options for client.mk.
mk_add_options MOZ_BUILD_PROJECTS="xulrunner mobile"
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../mobilebase

# Global options
#ac_add_options --enable-debug
#ac_add_options --disable-optimize
#ac_add_options --enable-logging
#ac_cv_visibility_pragma=no

#ac_add_options --enable-timeline
ac_add_options --disable-dbus

# XULRunner options
ac_add_app_options xulrunner --enable-application=xulrunner
ac_add_app_options xulrunner --disable-javaxpcom
ac_add_app_options xulrunner --with-arm-kuser

# mobile options
ac_add_app_options mobile --enable-application=mobile
ac_add_app_options mobile --with-libxul-sdk=../xulrunner/dist

# configure will be automatically generated using the 'autoconf-2.13'
# command.  If autoconf-2.13 isn't the right name for your system, as
# is the case on OS X using MacPorts, use the real command name as
# demonstrated below.
mk_add_options xulrunner AUTOCONF=autoconf213
mk_add_options mobile AUTOCONF=autoconf213

then pull nss and nspr, and build:

python2.5 client.py checkout

make -f client.mk build

Building Fennec with the Gecko SDK

First download the appropriate Gecko SDK from [1]


Then pull Mozilla (for the build system) Fennec from hg

hg clone http://hg.mozilla.org/mozilla-central
cd mozilla-central
hg clone http://hg.mozilla.org/mobile-browser mobile


Your mozconfig should look like this:

# Options for client.mk.
mk_add_options MOZ_BUILD_PROJECTS="xulrunner mobile"
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-fennec


ac_add_options  --enable-application=mobile
ac_add_options  --with-libxul-sdk=<path to the SDK you downloaded and extracted>

Note: if you are building for x86 ubuntu, you will want to add "ac_add_options --disable-dbus" to your mozconfig

You then need to pull nspr and nss, simply because client.mk assumes you want to configure it.

python client.py checkout

And finally, build

make -f client.mk build