From 817e58c278cb8ebee7743205877d0f67c431fcec Mon Sep 17 00:00:00 2001 From: root Date: Thu, 5 Jan 2012 23:14:48 +0000 Subject: Thu Jan 5 23:14:48 UTC 2012 --- kernels/linux-libre-xen/PKGBUILD | 57 ++++++++++++++----------- kernels/linux-libre-xen/linux-libre-xen.install | 2 +- 2 files changed, 33 insertions(+), 26 deletions(-) (limited to 'kernels') diff --git a/kernels/linux-libre-xen/PKGBUILD b/kernels/linux-libre-xen/PKGBUILD index d581db9e4..94fd22800 100644 --- a/kernels/linux-libre-xen/PKGBUILD +++ b/kernels/linux-libre-xen/PKGBUILD @@ -8,8 +8,8 @@ pkgbase=linux-libre-xen pkgname=('linux-libre-xen' 'linux-libre-xen-headers' 'linux-libre-xen-docs') # Build stock -LIBRE kernel # pkgname=linux-custom # Build kernel with a different name _kernelname=${pkgname#linux-libre} -_basekernel=3.0 -pkgver=${_basekernel}.4 +_basekernel=3.1 +pkgver=${_basekernel}.5 pkgrel=1 arch=('i686' 'x86_64') url="http://linux-libre.fsfla.org/" @@ -23,8 +23,10 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-li # standard config files for mkinitcpio ramdisk "${pkgname}.preset" 'boot-logo.patch' - 'fix-i915.patch' - 'change-default-console-loglevel.patch') + 'change-default-console-loglevel.patch' + 'i915-fix-ghost-tv-output.patch' + 'i915-fix-incorrect-error-message.patch' + 'usb-add-reset-resume-quirk-for-several-webcams.patch') build() { cd "${srcdir}/linux-${_basekernel}" @@ -34,8 +36,23 @@ build() { # Add freedo as boot logo patch -Np1 -i "${srcdir}/boot-logo.patch" - # fix #19234 i1915 display size - patch -Np1 -i "${srcdir}/fix-i915.patch" + # Some chips detect a ghost TV output + # mailing list discussion: http://lists.freedesktop.org/archives/intel-gfx/2011-April/010371.html + # Arch Linux bug report: FS#19234 + # + # It is unclear why this patch wasn't merged upstream, it was accepted, + # then dropped because the reasoning was unclear. However, it is clearly + # needed. + patch -Np1 -i "${srcdir}/i915-fix-ghost-tv-output.patch" + + # In 3.1.1, a DRM_DEBUG message is falsely declared as DRM_ERROR. This + # worries users, as this message is displayed even at loglevel 4. Fix + # this. + patch -Np1 -i "${srcdir}/i915-fix-incorrect-error-message.patch" + + # Add the USB_QUIRK_RESET_RESUME for several webcams + # FS#26528 + patch -Np1 -i "${srcdir}/usb-add-reset-resume-quirk-for-several-webcams.patch" # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream @@ -48,14 +65,8 @@ build() { sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config fi - # remove the "-libre" extraversion from Makefile - sed -i 's|^EXTRAVERSION =.*$|EXTRAVERSION =|g' Makefile - - # remove the sublevel from Makefile - # this ensures our kernel version is always 3.X-LIBRE - # this way, minor kernel updates will not break external modules - # we need to change this soon, see FS#16702 - sed -ri 's|^(SUBLEVEL =).*|\1|' Makefile + # set extraversion to pkgrel + sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile # get kernel version make prepare @@ -124,8 +135,13 @@ package_linux-libre-xen() { rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build} # remove the firmware rm -rf "${pkgdir}/lib/firmware" - # gzip -9 all modules to safe 100MB of space + # gzip -9 all modules to save 100MB of space find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; + # make room for external modules + ln -s "../extramodules-${_basekernel}${_kernelname:--LIBRE}" "${pkgdir}/lib/modules/${_kernver}/extramodules" + # add real version for building modules and running depmod from post_install/upgrade + mkdir -p "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--LIBRE}" + echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--LIBRE}/version" } package_linux-libre-xen-headers() { @@ -268,19 +284,10 @@ package_linux-libre-xen-docs() { cd "${srcdir}/linux-${_basekernel}" mkdir -p "${pkgdir}/usr/src/linux-${_kernver}" - cp -r Documentation "${pkgdir}/usr/src/linux-${_kernver}" + cp -al Documentation "${pkgdir}/usr/src/linux-${_kernver}" find "${pkgdir}" -type f -exec chmod 444 {} \; find "${pkgdir}" -type d -exec chmod 755 {} \; # remove a file already in linux package rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile" } - -md5sums=('44e7bc20c235a193f9b6123a8d5e9509' - 'f17e9c5f801be0b17efe78aaff0f2a0e' - 'd998ae9f06ee1f93164d43f85b295613' - '4328c5ecc3fb20979392fa6372802144' - '67463f7a6e88305d7cd14a430e9efe92' - '04b21c79df0a952c22d681dd4f4562df' - '263725f20c0b9eb9c353040792d644e5' - '9d3c56a4b999c8bfbd4018089a62f662') diff --git a/kernels/linux-libre-xen/linux-libre-xen.install b/kernels/linux-libre-xen/linux-libre-xen.install index 5ab58fd0d..2b9ef501b 100644 --- a/kernels/linux-libre-xen/linux-libre-xen.install +++ b/kernels/linux-libre-xen/linux-libre-xen.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-xen -KERNEL_VERSION=3.0-LIBRE-XEN +KERNEL_VERSION=3.1.5-1-LIBRE-XEN post_install () { # updating module dependencies -- cgit v1.2.3-54-g00ecf