ブログネタ
Android に参加中!
JellyBean ( android-4.1.1_r1 ) が公開されたので、GalaxyNexus で動かしてみた。
その時のメモ。
作業ディレクトリの準備
$ mkdir -p ~/jb_work
$ export ANDROID_ROOT=~/jb_work

ソースコードのダウンロード
$ cd $ANDROID_ROOT
$ repo init -u https://bitbucket.org/sola/jcrom_manifest -m jb-master.xml
$ repo sync

ソースコードの無いバイナリファイルのダウンロード
$ cd $ANDROID_ROOT
$ wget https://dl.google.com/dl/android/aosp/broadcom-maguro-jro03c-38ebfe02.tgz
$ wget https://dl.google.com/dl/android/aosp/imgtec-maguro-jro03c-c1162ee1.tgz
$ wget https://dl.google.com/dl/android/aosp/invensense-maguro-jro03c-9323759c.tgz
$ wget https://dl.google.com/dl/android/aosp/samsung-maguro-jro03c-c6bdd0ed.tgz
$ tar zxvf broadcom-maguro-jro03c-38ebfe02.tgz
$ tar zxvf imgtec-maguro-jro03c-c1162ee1.tgz
$ tar zxvf invensense-maguro-jro03c-9323759c.tgz
$ tar zxvf samsung-maguro-jro03c-c6bdd0ed.tgz
$ ./extract-broadcom-maguro.sh
$ ./extract-imgtec-maguro.sh
$ ./extract-invensense-maguro.sh
$ ./extract-samsung-maguro.sh

端末から必要なファイルを吸い出す
adb コマンドを使用するので、adb コマンドへのパスを通しておくこと。
ここで使用する端末は、JellyBean をのせた GalaxyNexus であること。
自分はこの辺のを SC-04D に書き込んで使用した。
http://forum.xda-developers.com/showthread.php?t=1737849
$ cd $ANDROID_ROOT/jcrom/samsung/maguro/proprietary/
$ ./extract-files.sh

ccache の設定
設定しておくと、2回目以降のビルド時間を短縮出来る。
JellyBean でパスが変更になってる。
$ export USE_CCACHE=1
$ $ANDROID_ROOT/prebuilts/misc/linux-x86/ccache/ccache -M 50G

Android のビルド
$ cd $ANDROID_ROOT
$ source build/envsetup.sh
$ lunch full_maguro-userdebug
$ make (-j8 等で並列ビルド可能)
$ make otapackage

$ANDROID_ROOT/out/target/product/maguro/full_maguro-ota-eng.xxxx.zip が作成される。
xxxx の部分はユーザ名が入る。
clockwork recovery 等を使用して、full_maguro-ota-eng.xxxx.zip と gapps を書き込む。
gapps 適当に探してくること。
細かい内容は勉強会等の別の機会で補足します。

次は JCROM 化。
出来たらこちら( JCROM Project )で紹介します。