Confirmed users, Bureaucrats and Sysops emeriti
792
edits
No edit summary |
|||
Line 35: | Line 35: | ||
* Standard [https://developer.mozilla.org/En/Linux_Build_Prerequisites Linux build environment] or [https://developer.mozilla.org/En/Developer_Guide/Build_Instructions/Mac_OS_X_Prerequisites Mac OS X build environment] | * Standard [https://developer.mozilla.org/En/Linux_Build_Prerequisites Linux build environment] or [https://developer.mozilla.org/En/Developer_Guide/Build_Instructions/Mac_OS_X_Prerequisites Mac OS X build environment] | ||
* [http://developer.android.com/sdk/ndk | * [http://developer.android.com/sdk/ndk/index.html Android r3 NDK] | ||
* [http://developer.android.com/sdk/ Android SDK] | * [http://developer.android.com/sdk/ Android SDK] | ||
==== Quickstart (Linux) ==== | ==== Quickstart (Linux) ==== | ||
Download the SDK and NDK: | |||
wget http://dl.google.com/android/android-sdk_r05-linux_86.tgz | |||
wget http://dl.google.com/android/android- | wget http://dl.google.com/android/ndk/android-ndk-r3-linux-x86.zip | ||
wget http://dl.google.com/android/ndk/android-ndk- | |||
Then unpack them: | |||
unzip android-ndk- | unzip android-ndk-r3-linux-x86.zip | ||
tar xvfz android- | tar xvfz android-sdk_r05-linux_86.tgz | ||
The SDK needs to be setup manually. | The SDK needs to be setup manually. | ||
Line 60: | Line 55: | ||
* Click Save & Apply | * Click Save & Apply | ||
* Installed Packages->Update All... | * Installed Packages->Update All... | ||
* | * Select at least the Android SDK, API level 6. Optinally you can install API levels 4 and 7. | ||
* Click Install | * Click Install, Accept, etc. | ||
=== Building === | === Building === | ||
==== Full Build ==== | ==== Full Build ==== | ||
Normal build, with the following mozconfig | Normal Firefox build, with the following mozconfig. If building fennec, clone the mobile-browser repo as 'mobile' in the toplevel mozilla dir. This assumes that the NDK/SDK were unpacked in the parent directory; if they're elsewhere, change the paths accordingly. | ||
ac_add_options --enable-application=browser | ac_add_options --enable-application=browser | ||
Line 130: | Line 85: | ||
# android options | # android options | ||
ac_add_options --target=arm-android-eabi | ac_add_options --target=arm-android-eabi | ||
ac_add_options --with-android-ndk="$PWD/../android-ndk- | |||
ac_add_options --with-android-sdk="$PWD/../android-sdk-linux_86/platforms/android- | ac_add_options --with-android-ndk="$PWD/../android-ndk-r3" | ||
ac_add_options --with-android-sdk="$PWD/../android-sdk-linux_86/platforms/android-6" | |||
ac_add_options --with-android-tools="$PWD/../android-sdk-linux_86/tools" | ac_add_options --with-android-tools="$PWD/../android-sdk-linux_86/tools" | ||
ac_add_options --with-endian=little | ac_add_options --with-endian=little | ||
Line 144: | Line 100: | ||
ac_add_options --disable-tests | ac_add_options --disable-tests | ||
A standard build should succeed with those paths (note: if you get build bustage in widget, then we're still waiting on a patch that removes the need to poke android internals for gfx). | |||
After that build finishes, a make inside embedding/android should generate a gecko.apk that's installable on an Android device. | |||
==== JS/NSPR only ==== | ==== JS/NSPR only ==== |