diff options
Diffstat (limited to 'libre')
-rw-r--r-- | libre/linux-libre/PKGBUILD | 23 | ||||
-rw-r--r-- | libre/linux-libre/linux-libre.install | 12 |
2 files changed, 26 insertions, 9 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 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() { |