97 lines
2.3 KiB
Bash
Executable File
97 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
|
|
export PATH=${PATH}:`pwd`/.arm-2008q1/bin
|
|
export ARCH=arm
|
|
export CROSS_COMPILE=arm-none-eabi-
|
|
|
|
|
|
dirbuild="`pwd`/out/`date +%F_%H-%M`"
|
|
soucedir="`pwd`/kernel-2.6.33"
|
|
|
|
mkdir -f "`pwd`/out"
|
|
mkdir ${dirbuild}
|
|
cd ${soucedir}
|
|
|
|
#### info
|
|
|
|
echo "dirbuild = ${dirbuild}"
|
|
echo "soucedir = ${soucedir}"
|
|
|
|
|
|
### copy utils & config
|
|
|
|
cp ${soucedir}/.config ./config
|
|
cp -f ${soucedir}/.config ${soucedir}/arch/arm/configs/g900_defconfig
|
|
|
|
#cd ${dirbuild}
|
|
#ln -s ../.util/default.txt ${dirbuild}/default.txt
|
|
#ln -s ../.util/haret-0.5.2.exe ${dirbuild}/haret-0.5.2.exe
|
|
#ln -s ../.util/gspi8385_fw.tar.gz ${dirbuild}/gspi8385_fw.tar.gz
|
|
|
|
|
|
### remove debug
|
|
|
|
cd ${soucedir}
|
|
if [ ! -f .config.debug ]; then
|
|
mv .config .config.debug
|
|
fi
|
|
#sed 's/\(\(.*\)DEBUG\(.*\)\)=[y0-9]/# \1 is not set/' .config.debug > .config
|
|
|
|
cp .config.debug .config
|
|
|
|
### make
|
|
|
|
echo "make android kernel"
|
|
sed 's!CONFIG_INITRAMFS_SOURCE=\"../\(\.*\)\(.*\)!CONFIG_INITRAMFS_SOURCE="../ramfs-android/"!' ${soucedir}/.config > ${soucedir}/config
|
|
mv -f config .config
|
|
make zImage
|
|
cp ${soucedir}/arch/arm/boot/zImage ${dirbuild}/zImage-android
|
|
|
|
echo "make linux kernel"
|
|
sed 's!CONFIG_INITRAMFS_SOURCE=\"../\(\.*\)\(.*\)!CONFIG_INITRAMFS_SOURCE="../ramfs-linux/"!' ${soucedir}/.config > ${soucedir}/config
|
|
mv -f config .config
|
|
make zImage
|
|
cp ${soucedir}/arch/arm/boot/zImage ${dirbuild}/zImage-linux
|
|
|
|
echo "make noramfs kernel"
|
|
sed 's!CONFIG_INITRAMFS_SOURCE=\"../\(\.*\)\(.*\)!CONFIG_INITRAMFS_SOURCE=""!' ${soucedir}/.config > ${soucedir}/config
|
|
mv -f config .config
|
|
make zImage
|
|
cp ${soucedir}/arch/arm/boot/zImage ${dirbuild}/zImage-noramfs
|
|
|
|
|
|
echo "make & copy modules on ${dirbuild}"
|
|
make modules
|
|
INSTALL_MOD_PATH="${dirbuild}" make modules_install
|
|
|
|
echo "pack modules"
|
|
|
|
cd ${dirbuild}
|
|
rm -f lib/modules/2.6.33/source
|
|
rm -f lib/modules/2.6.33/build
|
|
tar -czf modules-2.6.33.tar.gz lib
|
|
rm -rf lib
|
|
echo "pack modules done"
|
|
|
|
|
|
### recovery debug config
|
|
cd ${soucedir}
|
|
mv -f .config.debug .config
|
|
|
|
### diff patch
|
|
echo "create diff patch"
|
|
cd ${soucedir}/..
|
|
diff -NEur --exclude-from=ignore .2.6.33-vanila kernel-2.6.33 | gzip > ${dirbuild}/g900-2.6.33.patch.gz
|
|
echo "diff done"
|
|
|
|
cd ${dirbuild}/..
|
|
rm last
|
|
ln -s ${dirbuild} last
|
|
chown angell.angell ${dirbuild} -R
|
|
chown angell.angell last
|
|
|
|
echo "recompile for debug "
|
|
cd ${soucedir}
|
|
make
|