Skip to content

Instantly share code, notes, and snippets.

@jmingov
Created February 16, 2015 19:38
Show Gist options
  • Save jmingov/9d411219b82c398453f4 to your computer and use it in GitHub Desktop.
Save jmingov/9d411219b82c398453f4 to your computer and use it in GitHub Desktop.
#####################################################
# Create SAMSUNG TAB S 8.4 (5)
#####################################################
f_gtab_kernel5(){
echo "Downloading Android Toolchain"
if [[ $LOCALGIT == 1 ]]; then
echo "Copying toolchain to rootfs"
cp -rf ${basepwd}/arm-eabi-4.7 ${basedir}/toolchain
else
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.7 ${basedir}/toolchain
fi
echo "Setting export paths"
# Set path for Kernel building
export ARCH=arm
export SUBARCH=arm
export CROSS_COMPILE=${basedir}/toolchain/bin/arm-eabi-
if [[ $FROZENKERNEL == 1 ]]; then
echo "Using frozen kernel"
cp -rf ${basepwd}/flash/ ${basedir}/flashkernel
rm -rf ${basedir}/flashkernel/data ${basedir}/flashkernel/sdcard ${basedir}/flashkernel/system/app ${basedir}/flashkernel/META-INF/com/google/android/updater-script
cp -rf ${basepwd}/devices/frozen_kernels/5.0.1/klim/* ${basedir}/flashkernel/
if [ -f "${basedir}/flash/META-INF/com/google/android/updater-script" ]; then
if grep -Fxq "#KERNEL_SCRIPT_START" "${basedir}/flash/META-INF/com/google/android/updater-script"
then
echo "Kernel already added to main updater-script"
else
echo "Adding Kernel install to updater-script in main update.zip"
cat ${basedir}/flashkernel/META-INF/com/google/android/updater-script >> ${basedir}/flash/META-INF/com/google/android/updater-script
cp -f ${basedir}/flashkernel/kernel/kernel ${basedir}/flash/kernel/kernel
fi
fi
else
f_kernel_build_init
echo "Downloading Kernel"
if [[ $LOCALGIT == 1 ]]; then
echo "Copying kernel to rootfs"
cp -rf ${basepwd}/nexus10-5 ${basedir}/kernel
else
git clone https://github.com/eousphoros/android_kernel_samsung_exynos5420.git -b cm-12.0 ${basedir}/kernel
fi
cd ${basedir}/kernel
make clean
sleep 10
make kali_defconfig
# Attach kernel builder to updater-script
echo "#KERNEL_SCRIPT_START" >> ${basedir}/flashkernel/META-INF/com/google/android/updater-script
cat << EOF > ${basedir}/flashkernel/META-INF/com/google/android/updater-script
assert(getprop("ro.product.device") == "manta" || getprop("ro.build.product") == "manta");
ui_print("* Starting Kernel install for Nexus 10... *");
ui_print("* Mounting System... *");
mount("ext4", "EMMC", "/dev/block/platform/dw_mmc.0/by-name/system", "/system");
package_extract_dir("system", "/system");
set_perm_recursive(0, 0, 0644, 0644, "/system/lib/modules");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/init.d");
package_extract_dir("kernel", "/tmp");
set_perm(0, 0, 0755, "/tmp/cleansystem.sh");
ui_print("* Cleaning /system/app... *");
run_program("/tmp/cleansystem.sh");
ui_print("* Installing Kernel... *");
package_extract_file("boot.img", "/dev/block/platform/dw_mmc.0/by-name/boot");
unmount("/system");
ui_print("* Kernel installation completed... *");
EOF
f_kernel_build
cd ${basedir}/flashkernel/kernel
abootimg --create ${basedir}/flashkernel/boot.img -f ${basedir}/kernel/ramdisk/5/bootimg.cfg -k ${basedir}/kernel/arch/arm/boot/zImage -r ${basedir}/kernel/ramdisk/5/initrd.img
cd ${basedir}
if [ -d "${basedir}/flash/" ]; then
cp ${basedir}/flashkernel/boot.img ${basedir}/flash/boot.img
fi
fi
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment