From 1fa6edfba8d1e31ca1c0d59e8202cd3c62ccf393 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 6 Feb 2012 23:14:50 +0000 Subject: Mon Feb 6 23:14:50 UTC 2012 --- extra/tuxpuck/PKGBUILD | 35 +++++++++++++---- extra/tuxpuck/tuxpuck-0.8.2-ldflags.patch | 11 ++++++ extra/tuxpuck/tuxpuck-0.8.2-libpng15.patch | 63 ++++++++++++++++++++++++++++++ 3 files changed, 101 insertions(+), 8 deletions(-) create mode 100644 extra/tuxpuck/tuxpuck-0.8.2-ldflags.patch create mode 100644 extra/tuxpuck/tuxpuck-0.8.2-libpng15.patch (limited to 'extra/tuxpuck') diff --git a/extra/tuxpuck/PKGBUILD b/extra/tuxpuck/PKGBUILD index bbd316b5d..aecbcdaa6 100644 --- a/extra/tuxpuck/PKGBUILD +++ b/extra/tuxpuck/PKGBUILD @@ -1,22 +1,41 @@ -# $Id: PKGBUILD 63695 2010-01-18 10:38:26Z andrea $ +# $Id: PKGBUILD 148948 2012-02-05 11:57:19Z ibiru $ # Maintainer: Tobias Powalowski pkgname=tuxpuck pkgver=0.8.2 -pkgrel=4 +pkgrel=5 pkgdesc="Airhockey with tux" arch=('i686' 'x86_64') url="http://home.no.net/munsuun/tuxpuck/" license=('GPL2') -depends=('libjpeg>=8' 'sdl' 'libpng>=1.4.0' 'libvorbis') +depends=('libjpeg' 'sdl' 'libpng' 'libvorbis') makedepends=('freetype2') options=('!makeflags') -source=(http://ftp.de.debian.org/debian/pool/main/t/${pkgname}/${pkgname}_$pkgver.orig.tar.gz) -md5sums=('fc839abc2b1f3eafae397e1ed6487079') +source=("http://ftp.de.debian.org/debian/pool/main/t/${pkgname}/${pkgname}_$pkgver.orig.tar.gz" + 'tuxpuck-0.8.2-ldflags.patch' + 'tuxpuck-0.8.2-libpng15.patch') +md5sums=('fc839abc2b1f3eafae397e1ed6487079' + 'cb914d211bf3f519b7700fda180612b0' + 'a4da530d670a0c30ac0840aab1db0dca') build() { cd $srcdir/$pkgname-$pkgver - sed -i 's|usr/man|usr/share/man|' Makefile || return 1 - make || return 1 - make DESTDIR=$pkgdir install || return 1 + + sed -i 's|usr/man|usr/share/man|' Makefile + sed -i -e 's/-Werror//' \ + -e '/^CC/d' \ + Makefile \ + utils/Makefile \ + data/Makefile + + patch -Np0 -i "${srcdir}/tuxpuck-0.8.2-ldflags.patch" + patch -Np0 -i "${srcdir}/tuxpuck-0.8.2-libpng15.patch" + + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + + make DESTDIR=$pkgdir install } diff --git a/extra/tuxpuck/tuxpuck-0.8.2-ldflags.patch b/extra/tuxpuck/tuxpuck-0.8.2-ldflags.patch new file mode 100644 index 000000000..28fcef48a --- /dev/null +++ b/extra/tuxpuck/tuxpuck-0.8.2-ldflags.patch @@ -0,0 +1,11 @@ +--- Makefile.old 2010-10-05 10:34:57.000000000 +0200 ++++ Makefile 2010-10-05 10:35:28.000000000 +0200 +@@ -20,7 +20,7 @@ + + $(NAME) : $(OBJS) + cd data; $(MAKE) +- $(CC) $(CFLAGS) $(OBJS) data/libdata.a `sdl-config --libs` -lm -lpng \ ++ $(CC) $(LDFLAGS) $(CFLAGS) $(OBJS) data/libdata.a `sdl-config --libs` -lm -lpng \ + -ljpeg -lz -lvorbisfile -lvorbis -logg -o $(NAME) + + w32icon.o : data/icons/tuxpuck.ico diff --git a/extra/tuxpuck/tuxpuck-0.8.2-libpng15.patch b/extra/tuxpuck/tuxpuck-0.8.2-libpng15.patch new file mode 100644 index 000000000..ca9539f39 --- /dev/null +++ b/extra/tuxpuck/tuxpuck-0.8.2-libpng15.patch @@ -0,0 +1,63 @@ +--- png.c.old 2011-09-14 16:25:54.415338149 +0200 ++++ png.c 2011-09-14 17:41:02.190803110 +0200 +@@ -38,6 +38,8 @@ + png_color_16 *transv; + SDL_RWops *src = NULL; + Uint32 size; ++ int num_palette; ++ png_colorp png_palette; + + memcpy(&size, data, sizeof(Uint32)); + if (memcounter) +@@ -74,7 +76,7 @@ + * the normal method of doing things with libpng). REQUIRED unless you + * set up your own error handlers in png_create_read_struct() earlier. + */ +- if (setjmp(png_ptr->jmpbuf)) { ++ if (setjmp(png_jmpbuf(png_ptr))) { + SDL_SetError("Error reading the PNG file."); + goto done; + } +@@ -142,9 +144,9 @@ + Rmask = 0x000000FF; + Gmask = 0x0000FF00; + Bmask = 0x00FF0000; +- Amask = (info_ptr->channels == 4) ? 0xFF000000 : 0; ++ Amask = (png_get_channels(png_ptr, info_ptr) == 4) ? 0xFF000000 : 0; + } else { +- int s = (info_ptr->channels == 4) ? 0 : 8; ++ int s = (png_get_channels(png_ptr, info_ptr) == 4) ? 0 : 8; + Rmask = 0xFF000000 >> s; + Gmask = 0x00FF0000 >> s; + Bmask = 0x0000FF00 >> s; +@@ -152,7 +154,7 @@ + } + } + surface = SDL_AllocSurface(SDL_SWSURFACE, width, height, +- bit_depth * info_ptr->channels, Rmask, Gmask, ++ bit_depth * png_get_channels(png_ptr, info_ptr), Rmask, Gmask, + Bmask, Amask); + if (surface == NULL) { + SDL_SetError("Out of memory"); +@@ -197,12 +199,15 @@ + palette->colors[i].g = i; + palette->colors[i].b = i; + } +- } else if (info_ptr->num_palette > 0) { +- palette->ncolors = info_ptr->num_palette; +- for (i = 0; i < info_ptr->num_palette; ++i) { +- palette->colors[i].b = info_ptr->palette[i].blue; +- palette->colors[i].g = info_ptr->palette[i].green; +- palette->colors[i].r = info_ptr->palette[i].red; ++ } else { ++ png_get_PLTE(png_ptr, info_ptr, &png_palette, &num_palette); ++ if (num_palette > 0) { ++ palette->ncolors = num_palette; ++ for (i = 0; i < num_palette; ++i) { ++ palette->colors[i].b = png_palette[i].blue; ++ palette->colors[i].g = png_palette[i].green; ++ palette->colors[i].r = png_palette[i].red; ++ } + } + } + } -- cgit v1.2.3-54-g00ecf