https://wiki.mozilla.org/Mobile/Fennec/Android
Android-x86 用のFirefox がPlay ストアに登録されていないので、自分でx86 アーキテクチャ向けのAndroid 用Firefox(Fennec) をビルドしてみた。i386-linux-android 向けのmozconfig を見つけたけれど、そのままではうまくビルドできなかったので、修正して利用してみた。Android SDK/NDK の環境はできているので、その後から始めよう。ビルドする環境はUbuntu 12.04 x86_64。Android 端末は、Inspiron duo にandroid-x86-4.0-RC1-tegav2.iso をインストール済み。
- ビルドするための依存関係の取得
$ sudo apt-get install mercurial ccache $ sudo apt-get build-dep firefox
|
- Firefox のソースの取得
$ hg clone http://hg.mozilla.org/mozilla-central/ src
|
- MOZCONFIG のカスタマイズ
$ cd src $ gedit mozconfig-android-x86
|
mozconfig-android-x86# Global options mk_add_options MOZ_MAKE_FLAGS="-j4"
# Build Fennec ac_add_options --enable-application=mobile/android
# Android ac_add_options --target=i386-linux-android ac_add_options --with-endian=little ac_add_options --with-android-ndk="$HOME/Projects/Android/android-ndk-r8" ac_add_options --with-android-sdk="$HOME/Projects/Android/android-sdk-linux/platforms/android-15" ac_add_options --with-android-version=10 ac_add_options --with-android-platform="$HOME/Projects/Android/android-ndk-r8/platforms/android-14/arch-x86" ac_add_options --with-system-zlib
# ac_add_options --disable-auto-deps ac_add_options --disable-debug ac_add_options --disable-debug-symbols ac_add_options --disable-tests ac_add_options --disable-ipdl-tests ac_add_options --enable-strip ac_add_options --enable-install-strip
# updater ac_add_options --disable-updater ac_add_options --disable-update-channel ac_add_options --disable-update-packaging
# crash reporter ac_add_options --disable-crashreporter
# maintenance service ac_add_options --disable-maintenance-service
# JDK export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
# branding ac_add_options --with-branding=mobile/android/branding/beta
|
ロゴ画像の作成
他のサイズのロゴ画像を参考にサイズ40x40 のPNG 形式画像を作成する。
./mobile/android/branding/beta/content/fennec_40x40.png
インストール先のAndroid 端末を無線LAN で接続する。
$ export ADBHOST=192.168.0.4 $ adb devices
|
- ビルドとインストール
$ export MOZCONFIG=./mozconfig-android-x86 $ make -f client.mk build_and_deploy $
|
インストーラパッケージは以下に生成される。
./obj-x86_64-unknown-linux-gnu/dist/fennec-16.0a1.en-US.android-i386.apk
- 次回ビルド時にソースを最新の状態にするには
いくつか気になることがあったので、修正してリビルドしてみた。
mozconfig-android-x86# Global options mk_add_options MOZ_MAKE_FLAGS="-j4"
# Build Fennec ac_add_options --enable-application=mobile/android
# Android ac_add_options --target=i386-linux-android ac_add_options --with-endian=little ac_add_options --with-android-ndk="/tools/android-ndk-r8" ac_add_options --with-android-sdk="/tools/android-sdk-linux/platforms/android-15" ac_add_options --with-android-version=10 ac_add_options --with-system-zlib ac_add_options --with-android-platform="/tools/android-ndk-r8/platforms/android-14/arch-x86"
# ac_add_options --disable-auto-deps ac_add_options --disable-debug ac_add_options --disable-debug-symbols ac_add_options --disable-tests ac_add_options --disable-ipdl-tests ac_add_options --enable-strip ac_add_options --enable-install-strip
# updater ac_add_options --disable-updater ac_add_options --disable-update-channel ac_add_options --disable-update-packaging
# crash reporter ac_add_options --disable-crashreporter
# maintenance service ac_add_options --disable-maintenance-service
# JDK export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
# mozilla ac_add_options --with-branding=mobile/android/branding/nightly
|
about:buildconfig の内容