summaryrefslogtreecommitdiff
path: root/libre/linux-libre/PKGBUILD
diff options
context:
space:
mode:
authorMichał Masłowski <mtjm@mtjm.eu>2012-03-02 23:21:49 +0100
committerMichał Masłowski <mtjm@mtjm.eu>2012-03-02 23:21:49 +0100
commit6be2fb84fedb0602286ac30ce807d2894a189a9b (patch)
tree1c64473f7471499ff77ff7e1e06adfc86e79532c /libre/linux-libre/PKGBUILD
parentec25c0f30f1be10f66730306625f95a67b8ad4b4 (diff)
downloadabslibre-6be2fb84fedb0602286ac30ce807d2894a189a9b.tar.gz
abslibre-6be2fb84fedb0602286ac30ce807d2894a189a9b.tar.bz2
abslibre-6be2fb84fedb0602286ac30ce807d2894a189a9b.zip
mips64el kernel changes (untested).
Have builtin USB storage support to enable booting the system from USB disks without initramfs (which would be very slow to load with PMON). Don't require mkinitcpio (issue #230). Install also an uncompressed kernel, oprofile needs it.
Diffstat (limited to 'libre/linux-libre/PKGBUILD')
-rw-r--r--libre/linux-libre/PKGBUILD23
1 files changed, 18 insertions, 5 deletions
diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD
index d09c44a5d..f31815bb3 100644
--- a/libre/linux-libre/PKGBUILD
+++ b/libre/linux-libre/PKGBUILD
@@ -93,12 +93,16 @@ build() {
patch -Np1 -i ${srcdir}/${_basekernel}*-*-loongson-community.patch
patch -Np0 -i lxo-config.patch
-# ensure N32, add localversion and remove uevent helper as per
+# ensure N32, add localversion, remove uevent helper as per
# https://git.kernel.org/?p=linux/hotplug/udev.git;a=blob_plain;f=README
- sed -i -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \
+# and make USB storage support builtin (e.g. for booting from USB
+# disks without slowly loading an initramfs)
+ sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \
-e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \
-e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \
- -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"-LIBRE\"|g" ./.config
+ -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"-LIBRE\"|g" \
+ -e "s|(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*|\1=y|g"
+ ./.config
else
cat "${srcdir}/config.${CARCH}" > ./.config # simpler
fi
@@ -132,7 +136,9 @@ build() {
# build!
if [ "$CARCH" == "mips64el" ]; then
- make ${MAKEFLAGS} vmlinuz modules
+ # bzImage is arch-specific and not supported on mips; vmlinux is
+ # useful for oprofile.
+ make ${MAKEFLAGS} vmlinux vmlinuz modules
else
make ${MAKEFLAGS} bzImage modules
fi
@@ -141,13 +147,19 @@ build() {
package_linux-libre() {
pkgdesc="The Linux-libre Kernel and modules"
groups=('base')
- depends=('coreutils' 'module-init-tools>=3.16' 'mkinitcpio>=0.7')
+ depends=('coreutils' 'module-init-tools>=3.16')
optdepends=('crda: to set the correct wireless channels of your country')
provides=('kernel26' "linux=$pkgver")
conflicts=('kernel26' 'kernel26-libre' 'linux')
replaces=('kernel26' 'kernel26-libre' 'linux')
backup=("etc/mkinitcpio.d/${pkgname}.preset")
install=${pkgname}.install
+ if [ "$CARCH" = "mips64el" ]; then
+ optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)')
+ conflicts+=('mkinitcpio<0.7')
+ else
+ depends+=('mkinitcpio>=0.7')
+ fi
cd "${srcdir}/linux-${_basekernel}"
@@ -162,6 +174,7 @@ package_linux-libre() {
if [ "$CARCH" == "mips64el" ]; then
cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgname}"
+ cp vmlinux "${pkgdir}/boot/vmlinux-${pkgname}"
else
cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgname}"
fi