blob: 08bd6f008b93b6728818c9aabf2c939ae50fccbb (
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
|
# linux-headers is needed for openssh
SYSROOT_INSTALL=1
# install two packages: linux and linux-headers
# TODO: split this, linux kernel doesn't make sense in sysroot!
ADDITIONAL_INSTALL_PACKAGE=linux-headers
# we currently build a monolitic kernel for the basic stuff which was
# available since 25 years. :-)
# use the i486 configuration file
# (TODO: adapt to config.$CARCH method later)
sed -i 's@config.i686@config.i486@g' PKGBUILD
sed -i 's@\.\./config@../config.i486@g' PKGBUILD
# the Linux kernel has it's own way for cross compilation
sed -i "s@make prepare@make prepare ARCH=$KERNEL_ARCH CROSS_COMPILE=$XTOOLS_ARCH_PREFIX@g" PKGBUILD
sed -i "s@make config@make config ARCH=$KERNEL_ARCH CROSS_COMPILE=$XTOOLS_ARCH_PREFIX@g" PKGBUILD
# remove make dependencies, currently we build without module support
# (TODO: though we can easily build kmod, but we are missing a simple ramdisk for stage1)
sed -i "s@make bzImage modules@make bzImage ARCH=$KERNEL_ARCH CROSS_COMPILE=$XTOOLS_ARCH_PREFIX@g" PKGBUILD
sed -i "s@make modules_install@#make modules_install@g" PKGBUILD
# disable documentation
sed -i "/depends=/s/xmlto//" PKGBUILD
# remove dependency on binary blob firmare (which we don't expect to
# have for a non-module kernel anyway, given KVM is not enabled:
# careful about AMD and Intel DRM driveres, they simply segfault in the
# kernel when they don't have proper access to their firmware
# warning: cannot resolve "linux-firmware", a dependency of "linux"
# warning: cannot resolve "mkinitcpio>=0.7", a dependency of "linux"
sed -i "/depends=/s/'linux-firmware'//" PKGBUILD
sed -i "/depends=/s/'mkinitcpio.*'//" PKGBUILD
# No harm: no initramdisk to build
# (2/2) Updating linux initcpios...
# call to execv failed (No such file or directory)
# error: command failed to execute correctly
|