1 |
# kernel26 global smage functions |
# kernel26 global smage functions |
2 |
# $Header: /magellan-cvs/smage/include/kernel26.sminc,v 1.25 2008/05/24 09:33:17 niro Exp $ |
# $Id$ |
3 |
|
|
4 |
# needed extra vars: |
# needed extra vars: |
5 |
# ${KERNEL_TYPE}: needed, 'sources' or 'image' |
# ${KERNEL_TYPE}: needed, 'sources' or 'image' |
12 |
# default setting is ${PSUBVER}-${BRANCH}-${PBUILD} |
# default setting is ${PSUBVER}-${BRANCH}-${PBUILD} |
13 |
# ${KERNEL_IMAGE_PATH}: override the default KERNEL_IMAGE_PATH (to build xen images for e.g.) |
# ${KERNEL_IMAGE_PATH}: override the default KERNEL_IMAGE_PATH (to build xen images for e.g.) |
14 |
|
|
15 |
|
sminclude mtools |
16 |
|
|
17 |
# remove me when all distris support this: |
# remove me when all distris support this: |
18 |
if [[ ${USE_KERNEL_ARCH_EXTENSION} = true ]] |
if [[ ${USE_KERNEL_ARCH_EXTENSION} = true ]] |
19 |
then |
then |
35 |
|
|
36 |
: ${DEPEND=">= sys-apps/module-init-tools-3.2 |
: ${DEPEND=">= sys-apps/module-init-tools-3.2 |
37 |
>= sys-fs/udev-115 |
>= sys-fs/udev-115 |
|
>= sys-apps/hotplug-20040401 |
|
38 |
>= sys-apps/mkinitrd-5.0.8 |
>= sys-apps/mkinitrd-5.0.8 |
39 |
>= sys-apps/initscripts-0.4.3"} |
>= sys-apps/initscripts-0.4.3"} |
40 |
|
|
73 |
|
|
74 |
# inject our kernel config |
# inject our kernel config |
75 |
cp ${KERNEL_CONFIG} ${SRCDIR}/.config || die |
cp ${KERNEL_CONFIG} ${SRCDIR}/.config || die |
76 |
make oldconfig || die |
make ARCH=${ARCH/i*86/x86} oldconfig || die |
77 |
|
|
78 |
case ${KERNEL_TYPE} in |
case ${KERNEL_TYPE} in |
79 |
image) |
image) |
80 |
mmake || die |
mmake ARCH=${ARCH/i*86/x86} || die |
81 |
;; |
;; |
82 |
|
|
83 |
sources) |
sources) |
84 |
make clean || die |
make clean || die |
85 |
|
|
86 |
# needed to compile other programs like iptables |
# needed to compile other programs like iptables |
87 |
make prepare || die |
make ARCH=${ARCH/i*86/x86} prepare || die |
88 |
# needed to cover >=2.6.14 builds |
# needed to cover >=2.6.14 builds |
89 |
# but deprecated with >=2.6.21, prepare cover all targets there |
# but deprecated with >=2.6.21, prepare cover all targets there |
90 |
[[ $(echo ${PVER} | sed "s:\.::g") < 2621 ]] && { make prepare-all || die; } |
[[ $(echo ${PVER} | sed "s:\.::g") < 2621 ]] && { make ARCH=${ARCH/i*86/x86} prepare-all || die; } |
91 |
make scripts || die |
make ARCH=${ARCH/i*86/x86} scripts || die |
92 |
|
|
93 |
# at least alsa-drivers needs this one ... |
# at least alsa-drivers needs this one ... |
94 |
touch include/linux/autoconf.h || die |
touch include/linux/autoconf.h || die |
101 |
cd ${SRCDIR} |
cd ${SRCDIR} |
102 |
|
|
103 |
# needed directories |
# needed directories |
104 |
install -d ${BINDIR}/boot || die |
minstalldir /boot || die |
105 |
|
|
106 |
# install modules |
# install modules |
107 |
make INSTALL_MOD_PATH=${BINDIR} modules_install || die |
make ARCH=${ARCH/i*86/x86} INSTALL_MOD_PATH=${BINDIR} modules_install || die |
108 |
|
|
109 |
# install kernelimage |
# install kernelimage |
110 |
if [[ -z ${KERNEL_IMAGE_PATH} ]] |
if [[ -z ${KERNEL_IMAGE_PATH} ]] |
111 |
then |
then |
112 |
local my_arch="${ARCH}" |
local my_arch="${ARCH}" |
113 |
[[ ${my_arch} = i*86 ]] && my_arch=i386 |
[[ ${my_arch} = i*86 ]] && my_arch=i386 |
114 |
install -m 0644 -o root -g root \ |
minstallfile arch/${my_arch}/boot/bzImage \ |
115 |
arch/${my_arch}/boot/bzImage \ |
/boot/kernel-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
|
${BINDIR}/boot/kernel-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
|
116 |
|| die |
|| die |
117 |
else |
else |
118 |
install -m 0644 -o root -g root \ |
minstallfile ${KERNEL_IMAGE_PATH} \ |
119 |
${KERNEL_IMAGE_PATH} \ |
/boot/kernel-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
|
${BINDIR}/boot/kernel-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
|
120 |
|| die |
|| die |
121 |
fi |
fi |
122 |
|
|
123 |
# install System.map |
# install System.map |
124 |
install -m 0644 -o root -g root \ |
minstallfile System.map \ |
125 |
System.map \ |
/boot/System.map-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
126 |
${BINDIR}/boot/System.map-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
|| die |
127 |
|
|
128 |
|
# install Module.symvers in boot and /usr/src |
129 |
|
minstallfile Module.symvers \ |
130 |
|
/boot/Module.symvers-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
131 |
|
|| die |
132 |
|
minstalldir /usr/src/linux-${PVER}-${BRANCH}-${PBUILD} || die |
133 |
|
minstallfile Module.symvers \ |
134 |
|
/usr/src/linux-${PVER}-${BRANCH}-${PBUILD} \ |
135 |
|| die |
|| die |
136 |
|
|
137 |
# install kernel description |
# install kernel description |
143 |
" > ${BINDIR}/boot/kernelversion || die |
" > ${BINDIR}/boot/kernelversion || die |
144 |
|
|
145 |
# install kernel-config from srcdir |
# install kernel-config from srcdir |
146 |
install -m 0644 -o root -g root \ |
minstallfile .config \ |
147 |
.config \ |
/boot/config-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
|
${BINDIR}/boot/config-${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION} \ |
|
148 |
|| die |
|| die |
149 |
|
|
150 |
# fix build symlink |
# fix build symlink |
152 |
then |
then |
153 |
echo "fixing build symlink" |
echo "fixing build symlink" |
154 |
rm ${BINDIR}/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/build || die |
rm ${BINDIR}/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/build || die |
155 |
ln -snf /usr/src/linux-${PVER}-${BRANCH}-${PBUILD} \ |
mlink /usr/src/linux-${PVER}-${BRANCH}-${PBUILD} \ |
156 |
${BINDIR}/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/build \ |
/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/build \ |
157 |
|| die |
|| die |
158 |
fi |
fi |
159 |
|
|
162 |
then |
then |
163 |
echo "fixing source symlink" |
echo "fixing source symlink" |
164 |
rm ${BINDIR}/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/source || die |
rm ${BINDIR}/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/source || die |
165 |
ln -snf /usr/src/linux-${PVER}-${BRANCH}-${PBUILD} \ |
mlink /usr/src/linux-${PVER}-${BRANCH}-${PBUILD} \ |
166 |
${BINDIR}/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/source \ |
/lib/modules/${PVER}-${BRANCH}-${PBUILD}${KERNEL_ARCH_EXTENSION}/source \ |
167 |
|| die |
|| die |
168 |
fi |
fi |
169 |
} |
} |
176 |
tar cvjf ${BUILDDIR}/linux-${PVER}-${BRANCH}-${PBUILD}.tar.bz2 $(basename ${SRCDIR}) || die |
tar cvjf ${BUILDDIR}/linux-${PVER}-${BRANCH}-${PBUILD}.tar.bz2 $(basename ${SRCDIR}) || die |
177 |
|
|
178 |
echo "Moving linux-${PVER}-${BRANCH}-${PBUILD} tarball to \${BINDIR}/usr/src ... " |
echo "Moving linux-${PVER}-${BRANCH}-${PBUILD} tarball to \${BINDIR}/usr/src ... " |
179 |
install -d ${BINDIR}/usr/src || die |
minstalldir /usr/src || die |
180 |
mv ${BUILDDIR}/linux-${PVER}-${BRANCH}-${PBUILD}.tar.bz2 ${BINDIR}/usr/src || die |
mv ${BUILDDIR}/linux-${PVER}-${BRANCH}-${PBUILD}.tar.bz2 ${BINDIR}/usr/src || die |
181 |
} |
} |
182 |
|
|
204 |
kernel-modules-${PVER}-${BRANCH}-${PBUILD} || die |
kernel-modules-${PVER}-${BRANCH}-${PBUILD} || die |
205 |
|
|
206 |
echo "Moving kernel-modules-${PVER}-${BRANCH}-${PBUILD} tarball to \${BINDIR}/usr/src ... " |
echo "Moving kernel-modules-${PVER}-${BRANCH}-${PBUILD} tarball to \${BINDIR}/usr/src ... " |
207 |
install -d ${BINDIR}/usr/src || die |
minstalldir /usr/src || die |
208 |
mv ${BUILDDIR}/kernel-modules-${PVER}-${BRANCH}-${PBUILD}.tar.bz2 ${BINDIR}/usr/src || die |
mv ${BUILDDIR}/kernel-modules-${PVER}-${BRANCH}-${PBUILD}.tar.bz2 ${BINDIR}/usr/src || die |
209 |
} |
} |
210 |
|
|
327 |
fi |
fi |
328 |
|
|
329 |
# if not exist create kernel-modules symlink |
# if not exist create kernel-modules symlink |
330 |
if [ ! -h ${MROOT}/usr/src/kernel-modules ] |
if [ ! -h ${MROOT}/usr/src/kernel-modules ] && |
331 |
|
[ -d ${MROOT}/usr/src/kernel-modules-${KPVER}-${KBRANCH}-${KPBUILD} ] |
332 |
then |
then |
333 |
echo "Creating kernel-modules -> kernel-modules-${KPVER}-${KBRANCH}-${KPBUILD} symlink ... " |
echo "Creating kernel-modules -> kernel-modules-${KPVER}-${KBRANCH}-${KPBUILD} symlink ... " |
334 |
[ ! -d ${MROOT}/usr/src ] && install ${MROOT}/usr/src |
[ ! -d ${MROOT}/usr/src ] && install ${MROOT}/usr/src |