CMベースでTWRPをbuildする[例SC-03D]
まずはCMかaojpをrepo syncした後を想定して書いてます
1.作業フォルダのbootable/recoveryのフォルダを消す
2.作業フォルダに移動
- コード: 全て選択
cd ”terminalに作業フォルダごとドラッグアンドドロップすると楽”
3.↓のURLからgit clone
https://github.com/omnirom/android_bootable_recovery- コード: 全て選択
git clone -b android-4.4 git@github.com:omnirom/android_bootable_recovery.git bootable/recovery
4./device/samsung/msm8660-common/BoardConfigCommon.mkのファイルを見る
↓の記述がないかみる
- コード: 全て選択
TARGET_RECOVERY_INITRC :=
この機種はなかったのでスルー
もしあったらそのinit.rcに以下を記述
- コード: 全て選択
export PATH /sbin
export LD_LIBRARY_PATH .:/sbin
4-1.# Recovery の部分を編集
- コード: 全て選択
# Recovery
TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
TARGET_RECOVERY_FSTAB := device/samsung/msm8660-common/rootdir/etc/fstab.qcom
RECOVERY_FSTAB_VERSION := 2
と下にも# Recovery があったので注意
- コード: 全て選択
# Recovery
BOARD_CUSTOM_GRAPHICS := ../../../device/samsung/msm8660-common/recovery/graphics.c
ここの
- コード: 全て選択
TARGET_RECOVERY_FSTAB := device/samsung/msm8660-common/rootdir/etc/fstab.qcom
RECOVERY_FSTAB_VERSION := 2
以外をすべて消して# TWRP config を追加↓
https://github.com/TeamWin/device_samsung_hercules/blob/ics/BoardConfig.mk#L515.fstabの編集
さっきの/device/samsung/msm8660-common/BoardConfigCommon.mkのファイルに
- コード: 全て選択
TARGET_RECOVERY_FSTAB := device/samsung/msm8660-common/rootdir/etc/fstab.qcom
という記述があるのがわかると思うのでそこのファイルを開いて↓のURLように編集する
https://github.com/TeamWin/device_samsung_hercules/blob/ics/recovery.fstabこの機種はこんな感じになった
- コード: 全て選択
# Android fstab file.
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#<src>
/boot emmc /dev/block/mmcblk0p8
/efs ext4 /dev/block/mmcblk0p21
/recovery emmc /dev/block/mmcblk0p22
/data ext4 /dev/block/mmcblk0p25 length=-16384
/system ext4 /dev/block/mmcblk0p24
/cache ext4 /dev/block/mmcblk0p26
/sdcard vfat /dev/block/mmcblk0p28
/external_sdcard vfat /dev/block/mmcblk1p1 /dev/block/mmcblk1
元はこんな感じなので違いを見比べてください
https://github.com/kbc-developers/android_device_samsung_msm8660-common/blob/cm-11.0/rootdir/etc/fstab.qcom- コード: 全て選択
# Android fstab file.
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/mmcblk0p8 /boot emmc defaults defaults
/dev/block/mmcblk0p22 /recovery emmc defaults defaults
/dev/block/mmcblk0p24 /system ext4 ro,errors=panic wait
/dev/block/mmcblk0p26 /cache ext4 nosuid,nodev,barrier=1 wait,check
/dev/block/mmcblk0p21 /efs ext4 nosuid,nodev,barrier=1 wait,check
/dev/block/mmcblk0p25 /data ext4 nosuid,nodev,noatime,noauto_da_alloc,errors=panic wait,check,encryptable=footer,length=-16384
/devices/platform/msm_sdcc.1/mmc_host/mmc0/mmc0 auto auto defaults voldmanaged=sdcard0:28,nonremovable,noemulatedsd
/devices/platform/msm_sdcc.3/mmc_host/mmc2/mmc2 auto auto defaults voldmanaged=sdcard1:auto,noemulatedsd
/devices/platform/msm_hsusb_host.0 auto auto defaults voldmanaged=usbdisk:auto
6.make
- コード: 全て選択
. build/envsetup.sh
lunch cm_celoxdcm-userdebug
make -j12 recoveryimage
7.sc03d_recovery_ramdiskのフォルダを作成
kernel/samsung/に(mkdirでコマンド入力でもいいけどめんどくさいので右クリックフォルダ作成でw)
8.out/target/product/celoxdcm/recovery/rootの中身をすべてコピーして
kernel/samsung/sc03d_recovery_ramdiskの中に放り込む
9.kernel/samsung/msm8660-dcmのフォルダがあるところに移動(cd
make
- コード: 全て選択
. build-sc03d_recovery.sh
あとは勝手にmsm8660-dcm/out/SC03D/RECO/bin以下ディレクトリにできてる
名前がCWMの名前になってるけど気になるならrecovery_versionを編集すればok
※補足 CWM作成は6-9までの手順で
できたやつ↓
http://www1.axfc.net/u/3254567
めんどくさかったのでリネームしてないでsやっぱリネームした
http://www1.axfc.net/u/3255980某所には書けないんでこちらで
ただリネームしただけではダメみたいなんで再upしました。
すみません
作り方はわかったはずなんで今後自分がupすることはないでしょう。
zip形式のはupdate用なんでCWM→TWRPにするとき(または逆の場合)は
使えないはずです