From 38eab99b0f820f0d7720c7bc4c1dab4a7d5eaeab Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sun, 6 Apr 2014 03:44:19 +0000 Subject: Sun Apr 6 03:39:50 UTC 2014 --- community/chmsee/PKGBUILD | 8 +- community/drumkv1/PKGBUILD | 41 +++ community/drumkv1/drumkv1.install | 13 + community/ffms2/PKGBUILD | 23 +- community/geary/PKGBUILD | 18 +- community/iasl/PKGBUILD | 12 +- community/libvdpau-va-gl/PKGBUILD | 6 +- community/minetest/PKGBUILD | 10 +- community/ninja/PKGBUILD | 48 +++ community/openttd/PKGBUILD | 6 +- community/samplv1/PKGBUILD | 41 +++ community/samplv1/samplv1.install | 13 + community/synthv1/PKGBUILD | 41 +++ community/synthv1/synthv1.install | 13 + extra/hwloc/PKGBUILD | 8 +- extra/perl-dbd-sqlite/PKGBUILD | 6 +- extra/xf86-video-intel/PKGBUILD | 16 +- extra/xf86-video-intel/git_fixes.diff | 327 --------------------- .../sna-avoid-discarding-damage.patch | 103 +++++++ 19 files changed, 378 insertions(+), 375 deletions(-) create mode 100644 community/drumkv1/PKGBUILD create mode 100644 community/drumkv1/drumkv1.install create mode 100644 community/ninja/PKGBUILD create mode 100644 community/samplv1/PKGBUILD create mode 100644 community/samplv1/samplv1.install create mode 100644 community/synthv1/PKGBUILD create mode 100644 community/synthv1/synthv1.install delete mode 100644 extra/xf86-video-intel/git_fixes.diff create mode 100644 extra/xf86-video-intel/sna-avoid-discarding-damage.patch diff --git a/community/chmsee/PKGBUILD b/community/chmsee/PKGBUILD index 96236dd59..cb7d6f40e 100644 --- a/community/chmsee/PKGBUILD +++ b/community/chmsee/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 106444 2014-03-03 14:17:49Z lcarlier $ +# $Id: PKGBUILD 108848 2014-04-05 05:53:40Z lcarlier $ # Maintainer : Laurent Carlier # Contributor: dionydonny # Contributor: Ermanno pkgname=chmsee pkgver=2.0.2 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64') pkgdesc="A chm (MS HTML help file format) viewer based on xulrunner." url="http://chmsee.googlecode.com/" license=('GPL') -depends=('xulrunner>21.0' 'xulrunner<28.0' 'chmlib' 'desktop-file-utils') +depends=('xulrunner>21.0' 'xulrunner<29.0' 'chmlib' 'desktop-file-utils') makedepends=('python2') source=(https://chmsee.googlecode.com/files/$pkgname-$pkgver.tar.gz chmsee) @@ -20,7 +20,7 @@ md5sums=('c6a6ce009395c72ecf0530500ecda37c' prepare() { cd $pkgname-$pkgver - sed -i -e 's/^\(MaxVersion=\).*/\127.*/' application.ini + sed -i -e 's/^\(MaxVersion=\).*/\128.*/' application.ini } build() { diff --git a/community/drumkv1/PKGBUILD b/community/drumkv1/PKGBUILD new file mode 100644 index 000000000..8decc5f2d --- /dev/null +++ b/community/drumkv1/PKGBUILD @@ -0,0 +1,41 @@ +# $Id$ +# Maintainer: speps + +pkgname=drumkv1 +pkgver=0.4.0 +pkgrel=1 +pkgdesc="An old-school drum-kit sampler" +arch=(i686 x86_64) +url="http://$pkgname.sourceforge.net/$pkgname-index.html" +license=('GPL') +groups=('lv2-plugins') +depends=('jack' 'liblo' 'lv2' 'qt5-base' + 'desktop-file-utils' 'hicolor-icon-theme' 'shared-mime-info') +install="$pkgname.install" +source=("http://download.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") +md5sums=('d2be11a7c06d62ad789bc4bf7884e1eb') + +prepare() { + cd $pkgname-$pkgver + + # x86_64 lib path fix + sed -i "s/lib64/lib/" src/src_lv2{,ui}.pro + + # i686 -reduce-relocations + if [[ $CARCH = i686 ]]; then + export CXXFLAGS+=" -fPIE" + fi +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir/" install +} + +# vim:set ts=2 sw=2 et: diff --git a/community/drumkv1/drumkv1.install b/community/drumkv1/drumkv1.install new file mode 100644 index 000000000..ec1a84bbb --- /dev/null +++ b/community/drumkv1/drumkv1.install @@ -0,0 +1,13 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + update-mime-database usr/share/mime + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/community/ffms2/PKGBUILD b/community/ffms2/PKGBUILD index 9223888cc..21cb225b1 100644 --- a/community/ffms2/PKGBUILD +++ b/community/ffms2/PKGBUILD @@ -1,27 +1,34 @@ -# $Id: PKGBUILD 105637 2014-02-12 15:41:55Z alucryd $$ +# $Id: PKGBUILD 108861 2014-04-05 13:39:12Z alucryd $$ # Maintainer: Maxime Gauduin pkgname=ffms2 -pkgver=2.19 -pkgrel=2 +pkgver=2.19.r81.047b479 +pkgrel=1 pkgdesc='A libav/ffmpeg based source library and Avisynth plugin for easy frame accurate access' arch=('i686' 'x86_64') url='https://github.com/FFMS/ffms2' license=('GPL') depends=('ffmpeg') +makedepends=('git') provides=('vapoursynth-plugin-ffms2') -source=("https://github.com/FFMS/ffms2/archive/${pkgver}.tar.gz") -sha256sums=('6f1379514f03a14092fdfc9941960a9b86f5b78d86f9e000eeddf3bf50d42811') +source=("git+https://github.com/FFMS/ffms2.git") +sha256sums=('SKIP') + +pkgver() { + cd ${pkgname} + + printf "%s" "$(git describe --tags | sed 's/-/.r/; s/-g/./')" +} build() { - cd ${pkgname}-${pkgver} + cd ${pkgname} - ./configure --prefix='/usr' --enable-shared --disable-static --enable-avresample + ./autogen.sh --prefix='/usr' --enable-shared --disable-static --enable-avresample make } package() { - cd ${pkgname}-${pkgver} + cd ${pkgname} make DESTDIR="${pkgdir}" install diff --git a/community/geary/PKGBUILD b/community/geary/PKGBUILD index 501602da5..a0e6f12fe 100755 --- a/community/geary/PKGBUILD +++ b/community/geary/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 107709 2014-03-18 17:01:32Z flexiondotorg $ +# $Id: PKGBUILD 108852 2014-04-05 12:09:16Z alucryd $ # Maintainer: Maxime Gauduin # Contributor : sebikul # Contributor : Massimiliano Torromeo pkgname=geary pkgver=0.6.0 -pkgrel=1 +pkgrel=2 pkgdesc='A lightweight email client for the GNOME desktop' arch=('i686' 'x86_64') url='http://www.yorba.org/projects/geary/' license=('GPL3') -depends=('desktop-file-utils' 'gmime' 'libcanberra' 'libgee' 'libnotify' 'libsecret' 'webkitgtk') +depends=('gnome-keyring' 'gmime' 'libcanberra' 'libgee' 'libnotify' 'webkitgtk') makedepends=('cmake' 'gnome-doc-utils' 'gobject-introspection' 'intltool' 'vala') install="${pkgname}.install" source=("https://download.gnome.org/sources/${pkgname}/${pkgver%.?}/${pkgname}-${pkgver}.tar.xz") @@ -18,13 +18,19 @@ sha256sums=('44ad1dc2c81c50006c751f8e72aa817f07002188da4c29e158060524a1962715') build() { cd ${pkgname}-${pkgver} - ./configure \ - --prefix=/usr + + if [[ -d build ]]; then + rm -rf build + fi + mkdir build && cd build + + cmake .. -DCMAKE_BUILD_TYPE='Release' -DCMAKE_INSTALL_PREFIX='/usr' -D{DESKTOP_UPDATE,GSETTINGS_COMPILE{,_IN_PLACE},ICON_UPDATE}='FALSE' make } package() { - cd ${pkgname}-${pkgver} + cd ${pkgname}-${pkgver}/build + make DESTDIR="${pkgdir}" install } diff --git a/community/iasl/PKGBUILD b/community/iasl/PKGBUILD index 474085f09..ad5583f12 100644 --- a/community/iasl/PKGBUILD +++ b/community/iasl/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 104510 2014-01-22 06:49:46Z lcarlier $ +# $Id: PKGBUILD 108836 2014-04-05 03:36:38Z lcarlier $ # Maintainer : Laurent Carlier # Contributor: Giovanni Scafora # Contributor: Alessio 'mOlOk' Bolognino pkgname=iasl -pkgver=20140114 +pkgver=20140325 pkgrel=1 pkgdesc="Intel ACPI Source Language compiler" arch=('i686' 'x86_64') @@ -16,7 +16,7 @@ options=('!makeflags') #install=iasl.install source=(http://acpica.org/sites/acpica/files/acpica-unix-${pkgver}.tar.gz LICENSE) -md5sums=('77d5aaa723b98314dae80cac1b33514d' +md5sums=('08c2ee7ba766c76c9be379d121878cd8' '8615526144f69ea4e870d9bc37df9b29') build() { @@ -26,12 +26,6 @@ build() { make clean make - -# if [[ $CARCH == i686 ]]; then -# make BITS=32 -# else -# make BITS=64 -# fi } package() { diff --git a/community/libvdpau-va-gl/PKGBUILD b/community/libvdpau-va-gl/PKGBUILD index 2207c9e66..1c7c1fce6 100644 --- a/community/libvdpau-va-gl/PKGBUILD +++ b/community/libvdpau-va-gl/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 106487 2014-03-04 13:51:46Z bpiotrowski $ +# $Id: PKGBUILD 108863 2014-04-05 16:08:43Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski # Contributor: Behem0th pkgname=libvdpau-va-gl -pkgver=0.3.3 +pkgver=0.3.4 pkgrel=1 pkgdesc='VDPAU driver with OpenGL/VAAPI backend' arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ license=('LGPL3') depends=('libvdpau' 'libva' 'libgl' 'ffmpeg' 'glu') makedepends=('cmake') source=($url/archive/v$pkgver.tar.gz) -md5sums=('bb999d94c3e8116ef05a431a7e775c00') +md5sums=('09ceb2f75eafccc9b002d35ede0de6a5') build() { cd $pkgname-$pkgver diff --git a/community/minetest/PKGBUILD b/community/minetest/PKGBUILD index f5a6bea71..23c4d03c2 100644 --- a/community/minetest/PKGBUILD +++ b/community/minetest/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 104382 2014-01-19 17:35:53Z bgyorgy $ +# $Id: PKGBUILD 108846 2014-04-05 05:27:19Z lcarlier $ # Maintainer: Laurent Carlier # Contributor: Konsta Kokkinen pkgname=minetest pkgver=0.4.9 -pkgrel=2 +pkgrel=3 pkgdesc='An Infiniminer/Minecraft inspired game' arch=('i686' 'x86_64') url='http://minetest.net/' license=('GPL') -depends=('sqlite' 'openal' 'libvorbis' 'curl' 'irrlicht' 'hicolor-icon-theme') +depends=('sqlite' 'leveldb' 'openal' 'libvorbis' 'curl' 'irrlicht' 'hicolor-icon-theme') makedepends=('cmake') install=minetest.install source=(${pkgname}-${pkgver}.tar.gz::https://github.com/minetest/${pkgname}/tarball/${pkgver} @@ -29,7 +29,9 @@ prepare() { build() { cd "$srcdir"/minetest-minetest-* - cmake . -DCMAKE_INSTALL_PREFIX=/usr + cmake . -DCMAKE_INSTALL_PREFIX=/usr \ + -DENABLE_GETTEXT=on \ + -DENABLE_LEVELDB=on make } diff --git a/community/ninja/PKGBUILD b/community/ninja/PKGBUILD new file mode 100644 index 000000000..c9cd5a61e --- /dev/null +++ b/community/ninja/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 108867 2014-04-05 22:02:16Z anatolik $ +# Maintainer: Anatol Pomozov +# Contributor: Filip Brcic +# Contributor: Mika Fischer +# Contributor: Gergely Imreh + +pkgname=ninja +pkgver=1.4.0 +pkgrel=1 +pkgdesc='Small build system with a focus on speed' +arch=(i686 x86_64) +url='http://martine.github.io/ninja/' +license=(Apache) +depends=(gcc-libs) +makedepends=(asciidoc python2 re2c python2 emacs-nox) +checkdepends=(gtest) +source=(https://github.com/martine/ninja/archive/v$pkgver.zip) +sha1sums=('5de3dcd1564056f4f350d99f950f581214893a05') + +build() { + cd ninja-$pkgver + + python2 ./bootstrap.py + emacs -Q --batch -f batch-byte-compile misc/ninja-mode.el + asciidoc doc/manual.asciidoc +} + +check() { + cd ninja-$pkgver + + python2 ./configure.py --with-gtest=/usr/src/gtest + ./ninja ninja_test + ./ninja_test --gtest_filter=-SubprocessTest.SetWithLots +} + +package() { + cd ninja-$pkgver + + install -m755 -D ninja "$pkgdir/usr/bin/ninja" + install -m644 -D doc/manual.asciidoc "$pkgdir/usr/share/doc/ninja/manual.asciidoc" + install -m644 -D doc/manual.html "$pkgdir/usr/share/doc/ninja/manual.html" + + install -m644 -D misc/ninja-mode.el "$pkgdir/usr/share/emacs/site-lisp/ninja-mode.el" + install -m644 -D misc/ninja-mode.elc "$pkgdir/usr/share/emacs/site-lisp/ninja-mode.elc" + + install -m644 -D misc/bash-completion "$pkgdir/usr/share/bash-completion/completions/ninja" + install -m644 -D misc/zsh-completion "$pkgdir/usr/share/zsh/site-functions/_ninja" +} diff --git a/community/openttd/PKGBUILD b/community/openttd/PKGBUILD index bcfb893a7..d37a08ce5 100644 --- a/community/openttd/PKGBUILD +++ b/community/openttd/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 102297 2013-12-07 12:05:54Z lcarlier $ +# $Id: PKGBUILD 108838 2014-04-05 04:20:00Z lcarlier $ # Maintainer: Vesa Kaihlavirta pkgname=openttd -pkgver=1.3.3 +pkgver=1.4.0 pkgrel=1 pkgdesc='An engine for running Transport Tycoon Deluxe.' arch=('i686' 'x86_64') @@ -13,7 +13,7 @@ install=openttd.install optdepends=('openttd-opengfx: free graphics' 'openttd-opensfx: free soundset') source=("http://binaries.openttd.org/releases/${pkgver}/${pkgname}-${pkgver}-source.tar.xz") -sha256sums=('6991ed2c0170481800c3a92a1b43546821a658de91d3ac7efe868588387eca5d') +sha256sums=('d85bcb89d499a177a904f627ce407a086db8b26bc9a021030ee7f5534fbe0955') package() { cd ${pkgname}-${pkgver} diff --git a/community/samplv1/PKGBUILD b/community/samplv1/PKGBUILD new file mode 100644 index 000000000..8e9ae518c --- /dev/null +++ b/community/samplv1/PKGBUILD @@ -0,0 +1,41 @@ +# $Id$ +# Maintainer: speps + +pkgname=samplv1 +pkgver=0.4.0 +pkgrel=1 +pkgdesc="Polyphonic sampler synthesizer with stereo fx" +arch=(i686 x86_64) +url="http://$pkgname.sourceforge.net/$pkgname-index.html" +license=('GPL') +groups=('lv2-plugins') +depends=('jack' 'liblo' 'lv2' 'qt5-base' + 'desktop-file-utils' 'hicolor-icon-theme' 'shared-mime-info') +install="$pkgname.install" +source=("http://download.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") +md5sums=('dbd306fa2aeb1ac005a7467028b9c779') + +prepare() { + cd $pkgname-$pkgver + + # x86_64 lib path fix + sed -i "s/lib64/lib/" src/src_lv2{,ui}.pro + + # i686 -reduce-relocations + if [[ $CARCH = i686 ]]; then + export CXXFLAGS+=" -fPIE" + fi +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir/" install +} + +# vim:set ts=2 sw=2 et: diff --git a/community/samplv1/samplv1.install b/community/samplv1/samplv1.install new file mode 100644 index 000000000..ec1a84bbb --- /dev/null +++ b/community/samplv1/samplv1.install @@ -0,0 +1,13 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + update-mime-database usr/share/mime + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/community/synthv1/PKGBUILD b/community/synthv1/PKGBUILD new file mode 100644 index 000000000..b79f71ec6 --- /dev/null +++ b/community/synthv1/PKGBUILD @@ -0,0 +1,41 @@ +# $Id$ +# Maintainer: speps + +pkgname=synthv1 +pkgver=0.4.0 +pkgrel=1 +pkgdesc="An old-school all-digital 4-oscillator subtractive polyphonic synthesizer with stereo fx" +arch=(i686 x86_64) +url="http://$pkgname.sourceforge.net/$pkgname-index.html" +license=('GPL') +groups=('lv2-plugins') +depends=('jack' 'liblo' 'lv2' 'qt5-base' + 'desktop-file-utils' 'hicolor-icon-theme' 'shared-mime-info') +install="$pkgname.install" +source=("http://download.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") +md5sums=('f32510e1f5065f574970b13035d9ff57') + +prepare() { + cd $pkgname-$pkgver + + # x86_64 lib path fix + sed -i "s/lib64/lib/" src/src_lv2{,ui}.pro + + # i686 -reduce-relocations + if [[ $CARCH = i686 ]]; then + export CXXFLAGS+=" -fPIE" + fi +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir/" install +} + +# vim:set ts=2 sw=2 et: diff --git a/community/synthv1/synthv1.install b/community/synthv1/synthv1.install new file mode 100644 index 000000000..ec1a84bbb --- /dev/null +++ b/community/synthv1/synthv1.install @@ -0,0 +1,13 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + update-mime-database usr/share/mime + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/extra/hwloc/PKGBUILD b/extra/hwloc/PKGBUILD index d6e7ea7bd..9f52a5ae2 100644 --- a/extra/hwloc/PKGBUILD +++ b/extra/hwloc/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 208140 2014-03-18 07:41:23Z eric $ +# $Id: PKGBUILD 209842 2014-04-05 18:40:31Z eric $ # Maintainer : Stéphane Gaudreault # Contributor: Sylvain HENRY # Contributor: Hervé YVIQUEL pkgname=hwloc -pkgver=1.8.1 +pkgver=1.9 pkgrel=1 pkgdesc="Portable Hardware Locality is a portable abstraction of hierarchical architectures" arch=('i686' 'x86_64') @@ -12,8 +12,8 @@ url="http://www.open-mpi.org/projects/hwloc/" license=('BSD') depends=('sh' 'pciutils' 'cairo' 'libxml2') options=('!docs') -source=(http://www.open-mpi.org/software/hwloc/v${pkgver%.*}/downloads/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('fe465bc02da7b4a96b362ea73bdc0b8e4cf80040') +source=(http://www.open-mpi.org/software/hwloc/v${pkgver}/downloads/${pkgname}-${pkgver}.tar.bz2) +sha1sums=('99646446502e0f9952170bf1082be63361d99b6d') build() { cd ${pkgname}-${pkgver} diff --git a/extra/perl-dbd-sqlite/PKGBUILD b/extra/perl-dbd-sqlite/PKGBUILD index 70f9ee742..4ebb56f6d 100644 --- a/extra/perl-dbd-sqlite/PKGBUILD +++ b/extra/perl-dbd-sqlite/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 192099 2013-08-05 20:52:00Z eric $ +# $Id: PKGBUILD 209840 2014-04-05 17:56:16Z eric $ # Maintainer: pkgname=perl-dbd-sqlite -pkgver=1.40 +pkgver=1.42 pkgrel=1 pkgdesc="Self-contained RDBMS in a DBI driver" arch=('i686' 'x86_64') @@ -11,7 +11,7 @@ license=('GPL' 'PerlArtistic') depends=('perl-dbi' 'sqlite') options=('!emptydirs') source=(http://www.cpan.org/authors/id/I/IS/ISHIGAKI/DBD-SQLite-${pkgver}.tar.gz) -md5sums=('b9876882186499583428b14cf5c0e29c') +md5sums=('86cfaf477cb9ddc39508f74f4268fc79') build() { cd DBD-SQLite-${pkgver} diff --git a/extra/xf86-video-intel/PKGBUILD b/extra/xf86-video-intel/PKGBUILD index cea87f2d6..a72065549 100644 --- a/extra/xf86-video-intel/PKGBUILD +++ b/extra/xf86-video-intel/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 208571 2014-03-24 15:08:58Z andyrtr $ +# $Id: PKGBUILD 209836 2014-04-05 17:16:44Z lcarlier $ # Maintainer: AndyRTR # Maintainer: Jan de Groot pkgname=xf86-video-intel pkgver=2.99.911 -pkgrel=1 +pkgrel=2 arch=(i686 x86_64) url="http://xorg.freedesktop.org/" license=('custom') @@ -23,8 +23,16 @@ provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna') conflicts=('xorg-server<1.15.0' 'X-ABI-VIDEODRV_VERSION<15' 'X-ABI-VIDEODRV_VERSION>=16' 'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 'xf86-video-intel-legacy') groups=('xorg-drivers' 'xorg') -source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('4e7a68491bcc4d49912c5ec3ee688badce3f929ce1b7618ede9d8001827270d6') +source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2 + sna-avoid-discarding-damage.patch) +sha256sums=('4e7a68491bcc4d49912c5ec3ee688badce3f929ce1b7618ede9d8001827270d6' + '122637d66a70d40b098b0bb732000c8227ea1dd155af0c71f605f87934822dcb') + +prepare() { + cd ${pkgname}-${pkgver} + # Fix FS#39747 (merged upstream) + patch -Np1 -i ../sna-avoid-discarding-damage.patch +} build() { cd ${pkgname}-${pkgver} diff --git a/extra/xf86-video-intel/git_fixes.diff b/extra/xf86-video-intel/git_fixes.diff deleted file mode 100644 index dfc33928f..000000000 --- a/extra/xf86-video-intel/git_fixes.diff +++ /dev/null @@ -1,327 +0,0 @@ -From 699b4fd3139d1d6d02911d6c8f193ead3445f613 Mon Sep 17 00:00:00 2001 -From: Chris Wilson -Date: Sat, 01 Feb 2014 20:13:53 +0000 -Subject: sna: Undo region translation before returning - -Signed-off-by: Chris Wilson ---- -diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c -index aecae51..d654660 100644 ---- a/src/sna/sna_accel.c -+++ b/src/sna/sna_accel.c -@@ -2433,6 +2433,9 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable, - sna_damage_add(&priv->cpu_damage, region); - discard_gpu = false; - } -+ -+ if (dx | dy) -+ RegionTranslate(region, -dx, -dy); - } else - sna_pixmap_free_cpu(sna, priv, false); - } --- -cgit v0.9.0.2-2-gbebe -From 26613b046012f0ad968a15ab6bdfa8f6a6652e77 Mon Sep 17 00:00:00 2001 -From: Chris Wilson -Date: Sat, 01 Feb 2014 21:37:41 +0000 -Subject: sna: Allow more inplace promotions of CPU to GPU bo - -If the CPU bo is wholly damaged, then it makes an ideal candidate for -simply converting into the GPU bo. - -Signed-off-by: Chris Wilson ---- -diff --git a/src/sna/kgem.c b/src/sna/kgem.c -index f7404df..788b710 100644 ---- a/src/sna/kgem.c -+++ b/src/sna/kgem.c -@@ -6743,14 +6743,19 @@ kgem_replace_bo(struct kgem *kgem, - return dst; - } - --bool kgem_bo_convert_to_gpu(struct kgem *kgem, struct kgem_bo *bo) -+bool kgem_bo_convert_to_gpu(struct kgem *kgem, -+ struct kgem_bo *bo, -+ unsigned flags) - { -- DBG(("%s: converting handle=%d from CPU to GPU\n", __FUNCTION__, bo->handle)); -+ DBG(("%s: converting handle=%d from CPU to GPU, flags=%x\n", __FUNCTION__, bo->handle)); - assert(bo->tiling == I915_TILING_NONE); - - if (kgem->has_llc) - return true; - -+ if (flags & MOVE_ASYNC_HINT && __kgem_bo_is_busy(kgem, bo)) -+ return false; -+ - assert(bo->snoop); - - kgem_bo_submit(kgem, bo); -diff --git a/src/sna/kgem.h b/src/sna/kgem.h -index f670b60..4c4996f 100644 ---- a/src/sna/kgem.h -+++ b/src/sna/kgem.h -@@ -301,7 +301,9 @@ struct kgem_bo *kgem_create_cpu_2d(struct kgem *kgem, - int bpp, - uint32_t flags); - --bool kgem_bo_convert_to_gpu(struct kgem *kgem, struct kgem_bo *bo); -+bool kgem_bo_convert_to_gpu(struct kgem *kgem, -+ struct kgem_bo *bo, -+ unsigned flags); - - uint32_t kgem_bo_get_binding(struct kgem_bo *bo, uint32_t format); - void kgem_bo_set_binding(struct kgem_bo *bo, uint32_t format, uint16_t offset); -diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c -index d654660..9d7dec4 100644 ---- a/src/sna/sna_accel.c -+++ b/src/sna/sna_accel.c -@@ -3868,7 +3868,7 @@ sna_pixmap_move_to_gpu(PixmapPtr pixmap, unsigned flags) - - if (tiling == I915_TILING_NONE && - priv->cpu_bo && !priv->shm && -- kgem_bo_convert_to_gpu(&sna->kgem, priv->cpu_bo)) { -+ kgem_bo_convert_to_gpu(&sna->kgem, priv->cpu_bo, flags)) { - assert(!priv->mapped); - assert(!IS_STATIC_PTR(priv->ptr)); - #ifdef DEBUG_MEMORY -@@ -3933,6 +3933,28 @@ sna_pixmap_move_to_gpu(PixmapPtr pixmap, unsigned flags) - if (priv->cpu_damage == NULL) - goto done; - -+ if (DAMAGE_IS_ALL(priv->cpu_damage) && -+ priv->gpu_bo->tiling == I915_TILING_NONE && -+ priv->cpu_bo && !priv->shm && -+ kgem_bo_convert_to_gpu(&sna->kgem, priv->cpu_bo, flags)) { -+ assert(!priv->mapped); -+ assert(!IS_STATIC_PTR(priv->ptr)); -+#ifdef DEBUG_MEMORY -+ sna->debug_memory.cpu_bo_allocs--; -+ sna->debug_memory.cpu_bo_bytes -= kgem_bo_size(priv->cpu_bo); -+#endif -+ sna_pixmap_free_gpu(sna, priv); -+ priv->gpu_bo = priv->cpu_bo; -+ priv->cpu_bo = NULL; -+ priv->ptr = NULL; -+ pixmap->devPrivate.ptr = NULL; -+ sna_damage_all(&priv->gpu_damage, -+ pixmap->drawable.width, -+ pixmap->drawable.height); -+ sna_damage_destroy(&priv->cpu_damage); -+ goto done; -+ } -+ - if (priv->shm) { - assert(!priv->flush); - sna_add_flush_pixmap(sna, priv, priv->cpu_bo); --- -cgit v0.9.0.2-2-gbebe -From ed8d4f0ce3bff662d02063528df64d478ac0dc00 Mon Sep 17 00:00:00 2001 -From: Chris Wilson -Date: Sat, 01 Feb 2014 21:38:47 +0000 -Subject: sna: Skip discarding CPU bo when using as a render target - -The issue with unwanted serialisation does not affect the async -move-to-cpu of a render target. - -Signed-off-by: Chris Wilson ---- -diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c -index 9d7dec4..4221a55 100644 ---- a/src/sna/sna_accel.c -+++ b/src/sna/sna_accel.c -@@ -2420,19 +2420,45 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable, - - sna_damage_destroy(&priv->gpu_damage); - -- if ((flags & MOVE_READ) == 0 && -+ if ((flags & (MOVE_READ | MOVE_ASYNC_HINT)) == 0 && - priv->cpu_bo && !priv->cpu_bo->flush && - __kgem_bo_is_busy(&sna->kgem, priv->cpu_bo)) { -+ DBG(("%s: active CPU bo replacing\n", __FUNCTION__)); -+ assert(!priv->shm); -+ assert(!IS_STATIC_PTR(priv->ptr)); -+ - if (!region_subsumes_pixmap(region, pixmap)) { -+ DBG(("%s: partial replacement\n", __FUNCTION__)); - if (get_drawable_deltas(drawable, pixmap, &dx, &dy)) - RegionTranslate(region, dx, dy); - -- sna_damage_subtract(&priv->cpu_damage, region); -- if (sna_pixmap_move_to_gpu(pixmap, MOVE_READ | MOVE_ASYNC_HINT)) { -- sna_pixmap_free_cpu(sna, priv, false); -- sna_damage_add(&priv->cpu_damage, region); -- discard_gpu = false; -+ if (sna->kgem.has_llc && -+ sna_pixmap_choose_tiling(pixmap, -+ DEFAULT_TILING) == I915_TILING_NONE) { -+#ifdef DEBUG_MEMORY -+ sna->debug_memory.cpu_bo_allocs--; -+ sna->debug_memory.cpu_bo_bytes -= kgem_bo_size(priv->cpu_bo); -+#endif -+ DBG(("%s: promoting CPU bo to GPU bo\n", __FUNCTION__)); -+ sna_pixmap_free_gpu(sna, priv); -+ priv->gpu_bo = priv->cpu_bo; -+ priv->cpu_bo = NULL; -+ priv->ptr = NULL; -+ pixmap->devPrivate.ptr = NULL; -+ -+ sna_damage_destroy(&priv->cpu_damage); -+ } else { -+ DBG(("%s: pushing surrounding damage to GPU bo\n", __FUNCTION__)); -+ sna_damage_subtract(&priv->cpu_damage, region); -+ assert(priv->cpu_damage); -+ if (sna_pixmap_move_to_gpu(pixmap, MOVE_READ | MOVE_ASYNC_HINT)) { -+ sna_pixmap_free_cpu(sna, priv, false); -+ if (priv->flush) -+ sna_add_flush_pixmap(sna, priv, priv->gpu_bo); -+ discard_gpu = false; -+ } - } -+ sna_damage_add(&priv->cpu_damage, region); - - if (dx | dy) - RegionTranslate(region, -dx, -dy); --- -cgit v0.9.0.2-2-gbebe -From 8b0748c57ee4c38ea98c4b6ca18cb2b99f8f9ed4 Mon Sep 17 00:00:00 2001 -From: Chris Wilson -Date: Sat, 01 Feb 2014 21:54:43 +0000 -Subject: sna: Add some more DBG for choosing render targets - -Signed-off-by: Chris Wilson ---- -diff --git a/src/sna/gen6_render.c b/src/sna/gen6_render.c -index 08c9f78..aadc6f7 100644 ---- a/src/sna/gen6_render.c -+++ b/src/sna/gen6_render.c -@@ -1831,6 +1831,8 @@ gen6_composite_set_target(struct sna *sna, - BoxRec box; - unsigned int hint; - -+ DBG(("%s: (%d, %d)x(%d, %d), partial?=%d\n", __FUNCTION__, x, y, w, h)); -+ - op->dst.pixmap = get_drawable_pixmap(dst->pDrawable); - op->dst.format = dst->format; - op->dst.width = op->dst.pixmap->drawable.width; -diff --git a/src/sna/gen7_render.c b/src/sna/gen7_render.c -index 1574813..a90bd15 100644 ---- a/src/sna/gen7_render.c -+++ b/src/sna/gen7_render.c -@@ -2111,6 +2111,8 @@ gen7_composite_set_target(struct sna *sna, - BoxRec box; - unsigned int hint; - -+ DBG(("%s: (%d, %d)x(%d, %d), partial?=%d\n", __FUNCTION__, x, y, w, h)); -+ - op->dst.pixmap = get_drawable_pixmap(dst->pDrawable); - op->dst.format = dst->format; - op->dst.width = op->dst.pixmap->drawable.width; -diff --git a/src/sna/gen8_render.c b/src/sna/gen8_render.c -index 5c718bc..c096db1 100644 ---- a/src/sna/gen8_render.c -+++ b/src/sna/gen8_render.c -@@ -1862,6 +1862,8 @@ gen8_composite_set_target(struct sna *sna, - BoxRec box; - unsigned int hint; - -+ DBG(("%s: (%d, %d)x(%d, %d), partial?=%d\n", __FUNCTION__, x, y, w, h)); -+ - op->dst.pixmap = get_drawable_pixmap(dst->pDrawable); - op->dst.format = dst->format; - op->dst.width = op->dst.pixmap->drawable.width; --- -cgit v0.9.0.2-2-gbebe -From 853588ad5be9407d2123f6055458ca84e72b8eb9 Mon Sep 17 00:00:00 2001 -From: Chris Wilson -Date: Sat, 01 Feb 2014 21:55:09 +0000 -Subject: sna: If IGNORE_CPU is not set we must mark the move as MOVE_READ - -Logic reversal in discarding CPU damage. An old bug revealed by the more -aggressive attempts to discard CPU damage. - -Signed-off-by: Chris Wilson ---- -diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c -index 4221a55..acf4849 100644 ---- a/src/sna/sna_accel.c -+++ b/src/sna/sna_accel.c -@@ -3689,7 +3689,7 @@ cpu_fail: - goto cpu_fail; - - if (!sna_drawable_move_region_to_cpu(&pixmap->drawable, ®ion, -- (flags & IGNORE_CPU ? MOVE_READ : 0) | MOVE_WRITE | MOVE_ASYNC_HINT)) { -+ (flags & IGNORE_CPU ? 0 : MOVE_READ) | MOVE_WRITE | MOVE_ASYNC_HINT)) { - DBG(("%s: failed to move-to-cpu, fallback\n", __FUNCTION__)); - goto cpu_fail; - } --- -cgit v0.9.0.2-2-gbebe -From 7f08250a8960f90f6bd34de8c4a17870703bfa60 Mon Sep 17 00:00:00 2001 -From: Chris Wilson -Date: Sun, 02 Feb 2014 03:52:11 +0000 -Subject: sna: Reconstruct damage for the partially replaced discarded CPU bo - -Signed-off-by: Chris Wilson ---- -diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c -index acf4849..d31fa22 100644 ---- a/src/sna/sna_accel.c -+++ b/src/sna/sna_accel.c -@@ -2432,7 +2432,7 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable, - if (get_drawable_deltas(drawable, pixmap, &dx, &dy)) - RegionTranslate(region, dx, dy); - -- if (sna->kgem.has_llc && -+ if (sna->kgem.has_llc && !priv->pinned && - sna_pixmap_choose_tiling(pixmap, - DEFAULT_TILING) == I915_TILING_NONE) { - #ifdef DEBUG_MEMORY -@@ -2440,13 +2440,17 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable, - sna->debug_memory.cpu_bo_bytes -= kgem_bo_size(priv->cpu_bo); - #endif - DBG(("%s: promoting CPU bo to GPU bo\n", __FUNCTION__)); -- sna_pixmap_free_gpu(sna, priv); -+ if (priv->gpu_bo) -+ sna_pixmap_free_gpu(sna, priv); - priv->gpu_bo = priv->cpu_bo; - priv->cpu_bo = NULL; - priv->ptr = NULL; - pixmap->devPrivate.ptr = NULL; - -- sna_damage_destroy(&priv->cpu_damage); -+ priv->gpu_damage = priv->cpu_damage; -+ priv->cpu_damage = NULL; -+ -+ discard_gpu = false; - } else { - DBG(("%s: pushing surrounding damage to GPU bo\n", __FUNCTION__)); - sna_damage_subtract(&priv->cpu_damage, region); -@@ -2456,6 +2460,12 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable, - if (priv->flush) - sna_add_flush_pixmap(sna, priv, priv->gpu_bo); - discard_gpu = false; -+ -+ assert(priv->cpu_damage == NULL); -+ sna_damage_all(&priv->gpu_damage, -+ pixmap->drawable.width, -+ pixmap->drawable.height); -+ sna_damage_subtract(&priv->gpu_damage, region); - } - } - sna_damage_add(&priv->cpu_damage, region); -@@ -3959,9 +3969,9 @@ sna_pixmap_move_to_gpu(PixmapPtr pixmap, unsigned flags) - if (priv->cpu_damage == NULL) - goto done; - -- if (DAMAGE_IS_ALL(priv->cpu_damage) && -+ if (DAMAGE_IS_ALL(priv->cpu_damage) && priv->cpu_bo && -+ !priv->pinned && !priv->shm && - priv->gpu_bo->tiling == I915_TILING_NONE && -- priv->cpu_bo && !priv->shm && - kgem_bo_convert_to_gpu(&sna->kgem, priv->cpu_bo, flags)) { - assert(!priv->mapped); - assert(!IS_STATIC_PTR(priv->ptr)); --- -cgit v0.9.0.2-2-gbebe - diff --git a/extra/xf86-video-intel/sna-avoid-discarding-damage.patch b/extra/xf86-video-intel/sna-avoid-discarding-damage.patch new file mode 100644 index 000000000..8e97ee591 --- /dev/null +++ b/extra/xf86-video-intel/sna-avoid-discarding-damage.patch @@ -0,0 +1,103 @@ +From 3310ee89c1f1a663de5f5b12b8125809a213996f Mon Sep 17 00:00:00 2001 +From: Chris Wilson +Date: Sat, 05 Apr 2014 11:18:31 +0000 +Subject: sna: Avoid discarding damage when applying WHOLE hint to pixmap migration + +Once again, we must be careful when promoting from a region to whole +pixmap migration that we do not discard required damage. + +Fixes regression from +commit 27ac9f574f65cbd535751c925e9b2e2d7c8a6b3a [2.99.911] +Author: Chris Wilson +Date: Thu Feb 27 08:33:52 2014 +0000 + + sna: Avoid promoting region-to-whole migration and discarding damage + +Reported-by: gedgon@gmail.com +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77063 +Signed-off-by: Chris Wilson +--- +diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c +index 0116d54..71ba34d 100644 +--- a/src/sna/sna_accel.c ++++ b/src/sna/sna_accel.c +@@ -2500,7 +2500,10 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable, + flags |= MOVE_INPLACE_HINT; + } + +- if (flags & MOVE_WHOLE_HINT && priv->gpu_damage == NULL) ++ if ((flags & (MOVE_WHOLE_HINT | MOVE_READ)) == (MOVE_WHOLE_HINT | MOVE_READ)) ++ return _sna_pixmap_move_to_cpu(pixmap, flags); ++ ++ if (flags & MOVE_WHOLE_HINT && priv->gpu_damage == NULL && priv->cpu_damage == NULL) + return _sna_pixmap_move_to_cpu(pixmap, flags); + + if (priv->gpu_damage == NULL && +@@ -2527,22 +2530,18 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable, + return _sna_pixmap_move_to_cpu(pixmap, flags); + } + +- if ((flags & MOVE_READ) == 0 && +- priv->gpu_damage && +- region_subsumes_damage(region, priv->gpu_damage)) { +- DBG(("%s: region [(%d, %d), (%d, %d)] subsumes damage [(%d,%d), (%d, %d)]\n", ++ if (flags & MOVE_WHOLE_HINT) { ++ DBG(("%s: region (%d, %d), (%d, %d) marked with WHOLE hint, pixmap %dx%d\n", + __FUNCTION__, + region->extents.x1, + region->extents.y1, + region->extents.x2, + region->extents.y2, +- priv->gpu_damage->extents.x1, +- priv->gpu_damage->extents.y1, +- priv->gpu_damage->extents.x2, +- priv->gpu_damage->extents.y2)); ++ pixmap->drawable.width, ++ pixmap->drawable.height)); + if (dx | dy) + RegionTranslate(region, -dx, -dy); +- return _sna_pixmap_move_to_cpu(pixmap, flags); ++ return _sna_pixmap_move_to_cpu(pixmap, flags | MOVE_READ); + } + + if (priv->move_to_gpu && !priv->move_to_gpu(sna, priv, MOVE_READ)) { +@@ -4471,17 +4470,19 @@ try_upload_tiled_x(PixmapPtr pixmap, RegionRec *region, + if (wedged(sna)) + return false; + +- DBG(("%s: bo? %d, can map? %d\n", __FUNCTION__, +- priv->gpu_bo != NULL, +- priv->gpu_bo ? kgem_bo_can_map__cpu(&sna->kgem, priv->gpu_bo, true) : 0)); +- + replaces = region->data == NULL && + w >= pixmap->drawable.width && + h >= pixmap->drawable.height; + ++ DBG(("%s: bo? %d, can map? %d, replaces? %d\n", __FUNCTION__, ++ priv->gpu_bo != NULL, ++ priv->gpu_bo ? kgem_bo_can_map__cpu(&sna->kgem, priv->gpu_bo, true) : 0, ++ replaces)); ++ + if (priv->gpu_bo && (replaces || priv->gpu_bo->proxy)) { + DBG(("%s: discarding cached upload proxy\n", __FUNCTION__)); + sna_pixmap_free_gpu(sna, priv); ++ replaces = true; /* Mark it all GPU damaged afterwards */ + } + assert(priv->gpu_bo == NULL || priv->gpu_bo->proxy == NULL); + +@@ -4616,8 +4617,11 @@ sna_put_zpixmap_blt(DrawablePtr drawable, GCPtr gc, RegionPtr region, + return true; + + hint = MOVE_WRITE; +- if (w == pixmap->drawable.width && h*stride > 4096) ++ if (w == pixmap->drawable.width && (h+1)*stride > 65536) { ++ DBG(("%s: large upload (%d bytes), marking WHOLE_HINT\n", ++ __FUNCTION__, h*stride)); + hint |= MOVE_WHOLE_HINT; ++ } + + if (!sna_drawable_move_region_to_cpu(&pixmap->drawable, region, hint)) + return false; +-- +cgit v0.9.0.2-2-gbebe + -- cgit v1.2.3-54-g00ecf