From ec25c0f30f1be10f66730306625f95a67b8ad4b4 Mon Sep 17 00:00:00 2001 From: Michał Masłowski Date: Fri, 2 Mar 2012 21:52:52 +0100 Subject: Support building linux-libre with older libre-lemote patches. --- libre/linux-libre/PKGBUILD | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'libre') diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index 8838b8d9e..d09c44a5d 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -11,7 +11,9 @@ pkgname=('linux-libre' 'linux-libre-headers' 'linux-libre-docs') # Build stock - # pkgname=linux-custom # Build kernel with a different name _kernelname=${pkgname#linux-libre} _basekernel=3.2 -pkgver=${_basekernel}.9 +_sublevel=9 +pkgver=${_basekernel}.${_sublevel} +_lxopkgver=${_basekernel}.7 # nearly always the same as pkgver pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" @@ -31,7 +33,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-li 'i915-fix-ghost-tv-output.patch' 'i915-gpu-finish.patch' 'ext4-options.patch' - "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${pkgver}-libre-lemote_0lxo_mipsel.tar.bz2") + "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-libre-lemote_0lxo_mipsel.tar.bz2") md5sums=('27c641c4f6785fc647cdd3e44963a55c' '8e601878ccdd37111cc84500ebd81387' '79db8a444fd149e409f706830d8cee9a' @@ -85,9 +87,11 @@ build() { if [ "$CARCH" == "mips64el" ]; then sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre|" Makefile + sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \ + < "${srcdir}/lxo-config.patch" > lxo-config.patch msg2 "Adding loongson-community patches" patch -Np1 -i ${srcdir}/${_basekernel}*-*-loongson-community.patch - patch -Np0 -i "${srcdir}/lxo-config.patch" + patch -Np0 -i lxo-config.patch # ensure N32, add localversion and remove uevent helper as per # https://git.kernel.org/?p=linux/hotplug/udev.git;a=blob_plain;f=README -- cgit v1.2.3 From 6be2fb84fedb0602286ac30ce807d2894a189a9b Mon Sep 17 00:00:00 2001 From: Michał Masłowski Date: Fri, 2 Mar 2012 23:21:49 +0100 Subject: 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. --- libre/linux-libre/PKGBUILD | 23 ++++++++++++++++++----- libre/linux-libre/linux-libre.install | 12 ++++++++---- 2 files changed, 26 insertions(+), 9 deletions(-) (limited to 'libre') 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 diff --git a/libre/linux-libre/linux-libre.install b/libre/linux-libre/linux-libre.install index f05e87b9f..62f5d13bc 100644 --- a/libre/linux-libre/linux-libre.install +++ b/libre/linux-libre/linux-libre.install @@ -8,8 +8,10 @@ post_install () { # updating module dependencies echo ">>> Updating module dependencies. Please wait ..." depmod ${KERNEL_VERSION} - echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." - mkinitcpio -p linux-libre${KERNEL_NAME} + if [ command -v mkinitcpio 2>&1 > /dev/null ]; then + echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." + mkinitcpio -p linux-libre${KERNEL_NAME} + fi # compat symlinks for the official kernels only if [ -z "${KERNEL_NAME}" -o "${KERNEL_NAME}" = "-lts" ]; then @@ -50,8 +52,10 @@ post_upgrade() { # updating module dependencies echo ">>> Updating module dependencies. Please wait ..." depmod ${KERNEL_VERSION} - echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." - mkinitcpio -p linux-libre${KERNEL_NAME} + if [ command -v mkinitcpio 2>&1 > /dev/null ]; then + echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." + mkinitcpio -p linux-libre${KERNEL_NAME} + fi } post_remove() { -- cgit v1.2.3