KGB KERNEL - A Kernel for Gingerbread
Linux 2.6.35.7 kernel for SCH-I500 devices running TouchWiz Gingerbread ROMs
Originally based on Samsung's EH09 source drop for Mesmerize. Relevant updates have been made from EI20 and EH03.
BUILDING THE KERNEL
1. Set up a build environment.
2. Obtain and install/unpack an appropriate cross-compiler toolchain targeting the ARM architecture, such as Sourcery Lite arm-2011.03 GNU/Linux.
Edit build.sh and set TOOLCHAIN and TOOLCHAIN_PREFIX. Also edit Makefile and set CROSS_COMPILE. These should correspond to the location of the toolchain and the filenames within the /bin directory where the toolchain is installed.
For example, if you installed Sourcery Lite arm-2011.03 GNU/Linux to /opt/toolchains/arm-2011.03:
TOOLCHAIN=/opt/toolchains/arm-2011.03/bin
TOOLCHAIN_PREFIX=arm-none-linux-gnueabi-
CROSS_COMPILE=/opt/toolchains/arm-2011.03/bin/arm-none-linux-gnueabi-
3. Run one of the following from the command line:
./build.sh (Build the kernel)
./build_log.sh (Build the kernel, and log the process to a text file in the kernel source directory)
4. Copy the Odin and/or CWM packages that are created in /build/out to somewhere else.
The build script automatically deletes /build/out at the beginning of every build.
NOTES
Directories:
/build: Catch-all for kernel build-related files that aren't technically part of the source tree
/build/initramfs: initramfs template
/build/update-zip: CWM zip package template
/build/initramfs-*: Unmodified initramfs's extracted from stock EH09, EI20, and EH03 kernels (for reference)
/build/bin: Working directory for build script during kernel build process
/build/out: Output directory for Odin- and CWM-compatible packages
Files:
/build.sh: Build script
/build_log.sh: Log wrapper for build script
/arch/arm/configs/kgb_defconfig: Default kernel configuration template