blob: 1d8f06409514df7e340c5241e2e120711c345d39 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
pkgbase=linux-linode
_basekernel=3.5
_kernelname=${pkgbase#linux}
_srcname=linux-${_basekernel}
pkgver=${_basekernel}.0
pkgrel=1
arch=(x86_64)
url="https://github.com/yardenac/linux-linode"
license=(GPL2)
makedepends=(xmlto docbook-xsl)
options=('!strip')
source=("http://www.kernel.org/pub/linux/kernel/v3.x/${_srcname}.tar.xz"
# "http://www.kernel.org/pub/linux/kernel/v3.x/patch-${pkgver}.xz"
'config.x86_64'
'menu.lst'
"${pkgbase}.preset"
'change-default-console-loglevel.patch')
md5sums=('24153eaaa81dedc9481ada8cd9c3b83d'
'3cd625b0194470350f6c72a37f7cfb34'
'd01f2350ec9f92e2eabcde0f11be24f2'
'ee66f3cd0c5bc0ba0f65499784d19f30'
'9d3c56a4b999c8bfbd4018089a62f662')
pkgdesc="Kernel for Arch Linux on Linode"
depends=('coreutils' 'linux-firmware' 'kmod' 'mkinitcpio>=0.7')
provides=(kernel26 linux)
conflicts=(kernel26 linux grub grub-legacy)
replaces=(kernel26 linux)
backup=(etc/mkinitcpio.d/${pkgbase}.preset)
install=${pkgbase}.install
build() {
cd "${srcdir}/${_srcname}"
# patch -p1 -i "${srcdir}/patch-${pkgver}"
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
cp "${srcdir}/config.x86_64" ./.config
sed -i '2iexit 0' scripts/depmod.sh
sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config
sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile
make prepare
# msg "Stopping build"; return 1
CFLAGS=${CFLAGS}" -march=corei7 -mtune=corei7 -mcpu=corei7 "
CXXFLAGS=${CXXFLAGS}" -march=corei7 -mtune=corei7 -mcpu=corei7 "
ionice -c 3 nice -n 19 make ${MAKEFLAGS} bzImage modules
}
package_linux-linode() {
KARCH=x86
cd "${srcdir}/${_srcname}"
_kernver="$(make kernelrelease)"
mkdir -p "${pkgdir}"/{lib/{modules,firmware},boot}
make INSTALL_MOD_PATH="${pkgdir}" modules_install
cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}"
install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux"
install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset"
sed \
-e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \
-e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \
-i "${startdir}/${pkgbase}.install"
sed \
-e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \
-e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \
-e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \
-i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset"
rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build}
rm -rf "${pkgdir}/lib/firmware"
find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
emdir="extramodules-${_basekernel}${_kernelname:--ARCH}"
mkdir -p "${pkgdir}/lib/modules/${emdir}"
ln -s "../${emdir}" "${pkgdir}/lib/modules/${_kernver}/extramodules"
echo "${_kernver}" >| "${pkgdir}/lib/modules/${emdir}/version"
mv "${pkgdir}/"{lib,usr/}
depmod -b "${pkgdir}" -F System.map "${_kernver}"
mkdir -p ${pkgdir}/boot/grub
sed "s/%VER%/${pkgver}-${pkgrel}/ig" ${srcdir}/menu.lst > ${pkgdir}/boot/grub/menu.lst
}
|