4 if [ "${CMD_NO_KERNEL_SOURCES}" = '1' -a -e "${CMD_KERNCACHE}" ]
6 #[ -d ${TEMP} ] && gen_die "temporary directory already exists! Exiting."
7 #(umask 077 && mkdir ${TEMP}) || {
8 # gen_die "Could not create temporary directory! Exiting."
10 /bin/tar -xj -C ${TEMP} -f ${CMD_KERNCACHE} kerncache.config
11 if [ -e ${TEMP}/kerncache.config ]
14 VER=`grep ^VERSION\ \= ${TEMP}/kerncache.config | awk '{ print $3 };'`
15 PAT=`grep ^PATCHLEVEL\ \= ${TEMP}/kerncache.config | awk '{ print $3 };'`
16 SUB=`grep ^SUBLEVEL\ \= ${TEMP}/kerncache.config | awk '{ print $3 };'`
17 EXV=`grep ^EXTRAVERSION\ \= ${TEMP}/kerncache.config | sed -e "s/EXTRAVERSION =//" -e "s/ //g"`
18 if [ "${PAT}" -gt '4' -a "${VER}" -ge '2' ]
20 LOV=`grep ^CONFIG_LOCALVERSION\= ${TEMP}/kerncache.config | sed -e "s/CONFIG_LOCALVERSION=\"\(.*\)\"/\1/"`
21 KV=${VER}.${PAT}.${SUB}${EXV}${LOV}
24 KV=${VER}.${PAT}.${SUB}${EXV}
29 gen_die "Could not find kerncache.config in the kernel cache! Exiting."
34 # Configure the kernel
35 # If BUILD_KERNEL=0 then assume --no-clean, menuconfig is cleared
37 VER=`grep ^VERSION\ \= ${KERNEL_DIR}/Makefile | awk '{ print $3 };'`
38 PAT=`grep ^PATCHLEVEL\ \= ${KERNEL_DIR}/Makefile | awk '{ print $3 };'`
39 SUB=`grep ^SUBLEVEL\ \= ${KERNEL_DIR}/Makefile | awk '{ print $3 };'`
40 EXV=`grep ^EXTRAVERSION\ \= ${KERNEL_DIR}/Makefile | sed -e "s/EXTRAVERSION =//" -e "s/ //g"`
41 if [ "${PAT}" -gt '4' -a "${VER}" -ge '2' -a -e ${KERNEL_DIR}/.config ]
45 #compile_generic prepare kernel > /dev/null 2>&1
47 if [ -f ${KERNEL_DIR}/include/linux/version.h ]
49 UTS_RELEASE=`grep UTS_RELEASE ${KERNEL_DIR}/include/linux/version.h | sed -e 's/#define UTS_RELEASE "\(.*\)"/\1/'`
50 LOV=`echo ${UTS_RELEASE}|sed -e "s/${VER}.${PAT}.${SUB}${EXV}//"`
51 KV=${VER}.${PAT}.${SUB}${EXV}${LOV}
53 LCV=`grep ^CONFIG_LOCALVERSION= ${KERNEL_DIR}/.config | sed -r -e "s/.*=\"(.*)\"/\1/"`
54 KV=${VER}.${PAT}.${SUB}${EXV}${LCV}
58 KV=${VER}.${PAT}.${SUB}${EXV}
63 if isTrue "${CMD_DISKLABEL}"
71 determine_real_args() {
72 if [ "${CMD_DEBUGFILE}" != '' ]
74 DEBUGFILE="${CMD_DEBUGFILE}"
77 if [ "${CMD_MAKEOPTS}" != '' ]
79 MAKEOPTS="${CMD_MAKEOPTS}"
82 if [ "${CMD_KERNELDIR}" != '' ]
84 KERNEL_DIR=${CMD_KERNELDIR}
86 KERNEL_DIR=${DEFAULT_KERNEL_SOURCE}
89 if [ "${CMD_NO_KERNEL_SOURCES}" != "1" ]
91 if [ ! -d ${KERNEL_DIR} ]
93 gen_die "kernel source directory \"${KERNEL_DIR}\" was not found!"
97 if [ "${CMD_KERNCACHE}" != "" ]
99 if [ "${KERNEL_DIR}" = '' -a "${CMD_NO_KERNEL_SOURCES}" != "1" ]
101 gen_die 'No kernel source directory!'
103 if [ ! -e "${KERNEL_DIR}" -a "${CMD_NO_KERNEL_SOURCES}" != "1" ]
105 gen_die 'No kernel source directory!'
108 if [ "${KERNEL_DIR}" = '' ]
110 gen_die 'Kernel Cache specified but no kernel tree to verify against!'
114 if [ "${CMD_KERNNAME}" != "" ]
116 KNAME=${CMD_KERNNAME}
121 if [ "${CMD_KERNEL_MAKE}" != '' ]
123 KERNEL_MAKE="${CMD_KERNEL_MAKE}"
126 if [ "${KERNEL_MAKE}" = '' ]
131 if [ "${CMD_UTILS_MAKE}" != '' ]
133 UTILS_MAKE="${CMD_UTILS_MAKE}"
136 if [ "${UTILS_MAKE}" = '' ]
141 if [ "${CMD_KERNEL_CC}" != '' ]
143 KERNEL_CC="${CMD_KERNEL_CC}"
146 if [ "${CMD_KERNEL_LD}" != '' ]
148 KERNEL_LD="${CMD_KERNEL_LD}"
151 if [ "${CMD_KERNEL_AS}" != '' ]
153 KERNEL_AS="${CMD_KERNEL_AS}"
156 if [ "${CMD_KERNEL_CROSS_COMPILE}" != '' ]
158 KERNEL_CROSS_COMPILE="${CMD_KERNEL_CROSS_COMPILE}"
161 if [ "${CMD_UTILS_CC}" != '' ]
163 UTILS_CC="${CMD_UTILS_CC}"
166 if [ "${CMD_UTILS_LD}" != '' ]
168 UTILS_LD="${CMD_UTILS_LD}"
171 if [ "${CMD_UTILS_AS}" != '' ]
173 UTILS_AS="${CMD_UTILS_AS}"
176 CACHE_DIR=`arch_replace "${CACHE_DIR}"`
177 CACHE_CPIO_DIR="${CACHE_DIR}/cpio"
178 BUSYBOX_BINCACHE=`cache_replace "${BUSYBOX_BINCACHE}"`
179 MODULE_INIT_TOOLS_BINCACHE=`cache_replace "${MODULE_INIT_TOOLS_BINCACHE}"`
180 MODUTILS_BINCACHE=`cache_replace "${MODUTILS_BINCACHE}"`
181 DIETLIBC_BINCACHE=`cache_replace "${DIETLIBC_BINCACHE}"`
182 DIETLIBC_BINCACHE_TEMP=`cache_replace "${DIETLIBC_BINCACHE_TEMP}"`
183 DEVFSD_BINCACHE=`cache_replace "${DEVFSD_BINCACHE}"`
184 DEVFSD_CONF_BINCACHE=`cache_replace "${DEVFSD_CONF_BINCACHE}"`
185 UDEV_BINCACHE=`cache_replace "${UDEV_BINCACHE}"`
186 DEVICE_MAPPER_BINCACHE=`cache_replace "${DEVICE_MAPPER_BINCACHE}"`
187 LVM2_BINCACHE=`cache_replace "${LVM2_BINCACHE}"`
188 DMRAID_BINCACHE=`cache_replace "${DMRAID_BINCACHE}"`
189 UNIONFS_BINCACHE=`cache_replace "${UNIONFS_BINCACHE}"`
190 UNIONFS_MODULES_BINCACHE=`cache_replace "${UNIONFS_MODULES_BINCACHE}"`
191 BLKID_BINCACHE=`cache_replace "${BLKID_BINCACHE}"`
193 DEFAULT_KERNEL_CONFIG=`arch_replace "${DEFAULT_KERNEL_CONFIG}"`
194 BUSYBOX_CONFIG=`arch_replace "${BUSYBOX_CONFIG}"`
195 BUSYBOX_BINCACHE=`arch_replace "${BUSYBOX_BINCACHE}"`
196 MODULE_INIT_TOOLS_BINCACHE=`arch_replace "${MODULE_INIT_TOOLS_BINCACHE}"`
197 MODUTILS_BINCACHE=`arch_replace "${MODUTILS_BINCACHE}"`
198 DIETLIBC_BINCACHE=`arch_replace "${DIETLIBC_BINCACHE}"`
199 DIETLIBC_BINCACHE_TEMP=`arch_replace "${DIETLIBC_BINCACHE_TEMP}"`
200 DEVFSD_BINCACHE=`arch_replace "${DEVFSD_BINCACHE}"`
201 DEVFSD_CONF_BINCACHE=`arch_replace "${DEVFSD_CONF_BINCACHE}"`
202 UDEV_BINCACHE=`arch_replace "${UDEV_BINCACHE}"`
203 DEVICE_MAPPER_BINCACHE=`arch_replace "${DEVICE_MAPPER_BINCACHE}"`
204 LVM2_BINCACHE=`arch_replace "${LVM2_BINCACHE}"`
205 DMRAID_BINCACHE=`arch_replace "${DMRAID_BINCACHE}"`
206 UNIONFS_BINCACHE=`arch_replace "${UNIONFS_BINCACHE}"`
207 UNIONFS_MODULES_BINCACHE=`arch_replace "${UNIONFS_MODULES_BINCACHE}"`
208 BLKID_BINCACHE=`arch_replace "${BLKID_BINCACHE}"`
210 if [ "${CMD_BOOTSPLASH}" != '' ]
212 BOOTSPLASH=${CMD_BOOTSPLASH}
215 if isTrue ${BOOTSPLASH}
222 if [ "${CMD_GENSPLASH}" != '' ]
224 GENSPLASH=${CMD_GENSPLASH}
227 if isTrue ${GENSPLASH}
234 if isTrue ${COMPRESS_INITRD}
241 if isTrue ${CMD_POSTCLEAR}
248 if [ "${CMD_MRPROPER}" != '' ]
250 MRPROPER="${CMD_MRPROPER}"
252 if [ "${CMD_MENUCONFIG}" != '' ]
254 MENUCONFIG="${CMD_MENUCONFIG}"
256 if [ "${CMD_CLEAN}" != '' ]
265 if [ "${CMD_MINKERNPACKAGE}" != '' ]
267 MINKERNPACKAGE="${CMD_MINKERNPACKAGE}"
270 if [ "${CMD_MODULESPACKAGE}" != '' ]
272 MODULESPACKAGE="${CMD_MODULESPACKAGE}"
275 if [ "${CMD_KERNCACHE}" != '' ]
277 KERNCACHE="${CMD_KERNCACHE}"
280 if [ "${CMD_NOINITRDMODULES}" != '' ]
282 NOINITRDMODULES="${CMD_NOINITRDMODULES}"
285 if [ "${CMD_INITRAMFS_OVERLAY}" != '' ]
287 INITRAMFS_OVERLAY="${CMD_INITRAMFS_OVERLAY}"
290 if [ "${CMD_MOUNTBOOT}" != '' ]
292 MOUNTBOOT="${CMD_MOUNTBOOT}"
295 if isTrue ${MOUNTBOOT}
302 if [ "${CMD_SAVE_CONFIG}" != '' ]
304 SAVE_CONFIG="${CMD_SAVE_CONFIG}"
307 if isTrue "${SAVE_CONFIG}"
314 if isTrue "${CMD_SYMLINK}"
321 if [ "${CMD_INSTALL_MOD_PATH}" != '' ]
323 INSTALL_MOD_PATH="${CMD_INSTALL_MOD_PATH}"
326 if [ "${CMD_BOOTLOADER}" != '' ]
328 BOOTLOADER="${CMD_BOOTLOADER}"
330 if [ "${CMD_BOOTLOADER}" != "${CMD_BOOTLOADER/:/}" ]
332 BOOTFS=`echo "${CMD_BOOTLOADER}" | cut -f2- -d:`
333 BOOTLOADER=`echo "${CMD_BOOTLOADER}" | cut -f1 -d:`
337 if isTrue "${CMD_OLDCONFIG}"
344 if isTrue "${CMD_NO_UDEV}"
347 if isTrue "${CMD_NO_DEVFS}"
358 if isTrue "${CMD_NO_DEVFS}"
363 if isTrue "${CMD_DEVFS}"
369 if isTrue "${CMD_LVM2}"
376 if isTrue "${CMD_EVMS2}"
383 if isTrue "${CMD_UNIONFS}"
390 if isTrue "${CMD_NO_BUSYBOX}"
397 if isTrue "${CMD_DMRAID}"
405 UNIONFS_MODULES_BINCACHE=`kv_replace "${UNIONFS_MODULES_BINCACHE}"`