OSDN Git Service

first commit master
authoris01rebuild <is01rebuild@gmail.com>
Wed, 2 Mar 2011 10:18:40 +0000 (19:18 +0900)
committeris01rebuild <is01rebuild@gmail.com>
Wed, 2 Mar 2011 10:18:40 +0000 (19:18 +0900)
.gitignore [new file with mode: 0644]
pc/symlink/Makefile [new file with mode: 0644]
pc/symlink/README [new file with mode: 0644]
pc/symlink/ubi.cfg [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..d4b9493
--- /dev/null
@@ -0,0 +1,3 @@
+*~
+#*
+.#*
diff --git a/pc/symlink/Makefile b/pc/symlink/Makefile
new file mode 100644 (file)
index 0000000..f798744
--- /dev/null
@@ -0,0 +1,130 @@
+EXECDIR:=/sqlite_journals/is01root
+SU:=$(EXECDIR)/_su
+BUSYBOX:=$(EXECDIR)/busybox
+##############
+UNUBI_MTD:=mtd2.bin
+WRITE_PARTITION:=recovery_wr
+#SERIAL:=-s SSHEX012345
+##############
+MKBOOTIMG:=mkbootimg
+MKBOOTFS:=mkbootfs
+UNUBINIZE:=./unubinize.pl
+SPLIT_BOOTIMG:=./split_bootimg.pl
+#
+KERNEL:=$(UNUBI_MTD).out-kernel
+##############
+TARGET:=donut_symlink_boot.img
+FILES:=./ramdisk/init.rc
+BOOTIMG:=my_mkboot.img
+RAMDISKDIR:=ramdisk
+RAMDISK:=my_ramdisk.img
+UBICFG:=ubi.cfg
+CMDLINE:="console=ttyMSM2,115200n8 androidboot.hardware=qcom"
+#############
+.PHONY:all
+all:copy
+#push_bootimage
+#all:pull unubi patch copy push_bootimage
+#reboot
+
+#ubi
+.PHONY:ubi
+ubi:$(TARGET)
+
+
+$(TARGET):$(BOOTIMG) $(UBICFG)
+       ubinize -o $@ -p 128KiB -m 2048 -O 256 $(UBICFG)
+
+#mkboot
+$(BOOTIMG):$(RAMDISK) $(KERNEL)
+       $(MKBOOTIMG) --kernel $(KERNEL) --ramdisk $(RAMDISK) --cmdline $(CMDLINE) --base 0x20000000 -o $@
+
+$(RAMDISK):$(FILES)
+       rm -rf ramdisk/*~
+       $(MKBOOTFS) $(RAMDISKDIR) > $(RAMDISK)
+
+$(FILES):
+
+.PHONY:copy
+copy:
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) mkdir -p /data/data_ex
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) mkdir -p /data/data_ex/donut_orig
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) cp -a /data/* /data/data_ex/donut_orig/
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) mkdir -p /data/system_ex
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) mkdir -p /data/system_ex/donut_orig
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) cp -a /system/* /data/system_ex/donut_orig/
+#      adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) rm -rf  /data/data_ex/donut_orig/system_ex
+
+
+.PHONY:pull
+pull:pull_clean
+       adb $(SERIAL) shell mkdir /data/backup0
+       adb $(SERIAL) shell chmod 777 /data/backup0
+       adb $(SERIAL) shell $(SU) 0 dd if=/dev/mtd/mtd0 of=/data/backup0/mtd0.bin
+       adb $(SERIAL) shell $(SU) 0 dd if=/dev/mtd/mtd2 of=/data/backup0/mtd2.bin
+       adb $(SERIAL) shell $(SU) 0 chmod 444 /data/backup0/mtd0.bin
+       adb $(SERIAL) shell $(SU) 0 chmod 444 /data/backup0/mtd2.bin
+       adb $(SERIAL) pull /data/backup0/$(UNUBI_MTD)
+       cp -v $(UNUBI_MTD) $(basename $(UNUBI_MTD))_`md5sum $(UNUBI_MTD) | awk '{print $$1}'`.bin
+       adb shell $(SU) 0 $(BUSYBOX)  cp /data/backup0/$(UNUBI_MTD) "/data/backup0/$(basename $(UNUBI_MTD))_\`$(BUSYBOX) md5sum /data/backup0/$(UNUBI_MTD) | $(BUSYBOX) awk '{print \$$1}'\`.bin"
+
+
+.PHONY:unubi
+unubi:
+       $(UNUBINIZE) $(UNUBI_MTD)
+       $(SPLIT_BOOTIMG) $(UNUBI_MTD).out
+       mkdir -p ramdisk
+       ( cd ramdisk; \
+       cat ../$(UNUBI_MTD).out-ramdisk.cpio | cpio -i )
+
+
+.PHONY:patch
+patch:
+       ( cd ramdisk; \
+       cp -a init.rc init.rc.bak; \
+       patch init.rc < ../init.rc.patch; \
+       mv system system0; \
+       mv initlogo.rle initlogo.rle.bak; \
+       )
+       cp -v default.prop ramdisk/default.prop
+#      chmod 750 init.rc; \
+#      mv init.rc init.rc.bak; \
+#      cat init.rc.bak | grep -v '#' > init.rc; \
+
+
+.PHONY:push_flash_image
+push_flash_image:
+       adb $(SERIAL) push flash_image /sqlite_journals/is01root
+
+.PHONY:push_bootimage
+push_bootimage:$(TARGET)
+       adb $(SERIAL) push $(TARGET) /data/backup0/
+       adb $(SERIAL) shell $(SU) 0 $(EXECDIR)/flash_image $(WRITE_PARTITION) /data/backup0/$(TARGET)
+
+.PHONY:reboot
+reboot:
+       adb $(SERIAL) shell $(SU) 0 reboot recovery
+
+
+.clean:target_donut_clean
+target_donut_clean:
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) rm -rf /data/data_ex/donut_orig
+       adb $(SERIAL) shell $(SU) 0 $(BUSYBOX) rm -rf /data/system_ex/donut_orig
+
+
+.PHONY:pull_clean
+pull_clean:
+       rm -f $(UNUBI_MTD) $(UNUBI_MTD).out $(UNUBI_MTD).out-ramdisk.cpio $(UNUBI_MTD).out-kernel
+       rm -rf ramdisk
+
+.PHONY:local_clean
+local_clean:
+       rm -f $(RAMDISK)
+       rm -f $(BOOTIMG)
+       rm -f $(TARGET)
+       rm -rf *~
+
+.PHONY:clean
+clean: local_clean
+# pull_clean 
+#target_donut_clean 
diff --git a/pc/symlink/README b/pc/symlink/README
new file mode 100644 (file)
index 0000000..14d6b5a
--- /dev/null
@@ -0,0 +1,20 @@
+IS01rooterが入っているか、busybox&_suがインストールされている環境で
+symlinkの準備をするだけのものです。
+
+デフォルトではsymlinkな1.6向けのコピーを行うのみです。
+Makefile内には、各種ターゲットがあります。
+init.rcを調整するか、patchを準備すると一発symlink作成もできます。
+
+cp -a /data/* /data/data_ex/donut_orig/
+でデータをデータ内にコピーします。
+自分自身はエラーで回避されると思いますが、
+/data/data_ex/donut_orig/data_ex
+/data/data_ex/donut_orig/system_ex
+が入れ子になると容量を無駄に消費する上、
+ディレクトリ構成上勘違いしやすくなるかとおもいます。
+/data/* ではなく個別にコピーするか、
+入れ子になってしまった部分は削除するとよいかもしれません。
+
+端末が複数台ある場合は下記変数を有効化するとよいと思います。
+シリアルは adb devices で一覧がでます。
+#SERIAL:=-s SSSSS012345
diff --git a/pc/symlink/ubi.cfg b/pc/symlink/ubi.cfg
new file mode 100644 (file)
index 0000000..d5b312a
--- /dev/null
@@ -0,0 +1,8 @@
+[boot]
+mode=ubi
+image=my_mkboot.img
+vol_id=0
+vol_size=200MiB
+vol_type=dynamic
+vol_name=boot
+vol_flags=autoresize