Build with media-libs/libpng-1.5 Bug #380357
authorAlfredo Tupone <tupone@gentoo.org>
Wed, 14 Sep 2011 15:46:54 +0000 (15:46 +0000)
committerAlfredo Tupone <tupone@gentoo.org>
Wed, 14 Sep 2011 15:46:54 +0000 (15:46 +0000)
Package-Manager: portage-2.1.10.15/cvs/Linux i686

games-arcade/tuxpuck/ChangeLog
games-arcade/tuxpuck/Manifest
games-arcade/tuxpuck/files/tuxpuck-0.8.2-png15.patch [new file with mode: 0644]
games-arcade/tuxpuck/tuxpuck-0.8.2-r1.ebuild

index 58fc591cce4e23bc061129dda064561de02889ee..a197d44024797759be034c2f5ac4343f24a0e8fb 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for games-arcade/tuxpuck
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-arcade/tuxpuck/ChangeLog,v 1.14 2011/08/02 18:12:45 zmedico Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-arcade/tuxpuck/ChangeLog,v 1.15 2011/09/14 15:46:53 tupone Exp $
+
+  14 Sep 2011; Tupone Alfredo <tupone@gentoo.org> tuxpuck-0.8.2-r1.ebuild,
+  +files/tuxpuck-0.8.2-png15.patch:
+  Build with media-libs/libpng-1.5 Bug #380357 by Diego Elio Pettenò
 
   02 Aug 2011; Zac Medico <zmedico@gentoo.org> tuxpuck-0.8.2-r1.ebuild:
   Bug #376741 - Make unpack call compatible with both PMS and
index 3be3c5313335e2f0baba618ee74d4a1965650cb1..c97f7b5ca456e591e60abe393de7817b558e5997 100644 (file)
@@ -2,14 +2,15 @@
 Hash: SHA1
 
 AUX tuxpuck-0.8.2-ldflags.patch 407 RMD160 7f11a5f06822ae42f2cd4b341c5dc8786ee0c8cc SHA1 c76202cc13f6570718f229b2501174dc37affb12 SHA256 0a5f8610ef0001b5c98834f850ec9a3ade5437703ea04cb363f7cc6f5b39fec5
+AUX tuxpuck-0.8.2-png15.patch 2124 RMD160 ec3ac731987c518ad74ff62c3c21def383327981 SHA1 aa98fa027dd639feeed2d2d7d4102bfd836db94f SHA256 cf9a3a51876fd00e1b4fd34afe1ca79763facd6b0326628186b342da0fd9b68f
 DIST tuxpuck-0.8.2.tar.gz 384009 RMD160 806b89030416d9b8ac2ed1eca003445cf07e3c4e SHA1 47e86114dfa38d0189e00e0cf9fc67dd4085fccc SHA256 62d9604ed69c27b9ca2be1312bc705b36de8ed509c539c6d81193e7846272f18
-EBUILD tuxpuck-0.8.2-r1.ebuild 1282 RMD160 1d05ecdffe778a1f26ec71379865ddabacb4698f SHA1 ac9d30ebb4925d20bcd2aa4893265c85a80c3b9a SHA256 662890bfc2ffc771b6f9e43411cbc8197cf076b99f6d8f20b9f19d991b231fa1
-MISC ChangeLog 3360 RMD160 f7ee505dd388be0bae3abd958c8567b189367349 SHA1 59db9ac0482cbb2e4dc84ffc3f9d5c359e24fb5d SHA256 a9367f5ad6214d198fe14098e531bd227e5a3371087f757225d3afbab1ee1247
+EBUILD tuxpuck-0.8.2-r1.ebuild 1316 RMD160 5f52a8d56ed50caf76404af84d7d820d69f16e73 SHA1 1e19e1b9ab72734945a0be2bfd17413d0e99666d SHA256 159b05b9f9e3261b620283377833cb34570a2bbaceecc49ec5e67eadeb944833
+MISC ChangeLog 3541 RMD160 24b8cb695ad7aa5379dd41c9dd0d0c2496b05044 SHA1 cad905b0d21b4db7567c054187179e94e0d2ed3a SHA256 8a5c56c9e194a1778d6da2d071192f31c2dd86808866041765406eadff31fc95
 MISC metadata.xml 158 RMD160 cbd9984bb6b426c8c9cee5022fe0a26261612fea SHA1 be5251fa1dacef5c41b74761bb1c8c54fb633b9e SHA256 1423a4fdd4a79b1728a2056d9e300f7e1074253095d82726218d9e9b953888a3
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.17 (GNU/Linux)
+Version: GnuPG v2.0.18 (GNU/Linux)
 
-iEYEARECAAYFAk44PiUACgkQ/ejvha5XGaMYsgCfdBL5IdQR/iwIMAqpaInUIcxb
-po0AmgNtTzB+XyY+lewo4uTWu/O6wn8T
-=yFSK
+iEYEARECAAYFAk5wzBkACgkQIY77eQFFFC0IsQCfZo1J+++aOTDinvcGiMyAdn3C
+X7MAn0PFPj3wbBUp9thnyppAu2Ci7NW+
+=o/3N
 -----END PGP SIGNATURE-----
diff --git a/games-arcade/tuxpuck/files/tuxpuck-0.8.2-png15.patch b/games-arcade/tuxpuck/files/tuxpuck-0.8.2-png15.patch
new file mode 100644 (file)
index 0000000..ca9539f
--- /dev/null
@@ -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;
++      }
+       }
+     }
+   }
index 796c1508e72f22fbadd8f975695bdc40d23394d4..7c46334088da0a2722c23f4125356fabe812334f 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-arcade/tuxpuck/tuxpuck-0.8.2-r1.ebuild,v 1.7 2011/08/02 18:12:45 zmedico Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-arcade/tuxpuck/tuxpuck-0.8.2-r1.ebuild,v 1.8 2011/09/14 15:46:53 tupone Exp $
 
 EAPI=2
 inherit eutils games
@@ -34,7 +34,8 @@ src_prepare() {
                utils/Makefile \
                data/Makefile \
                || die "sed failed"
-       epatch "${FILESDIR}"/${P}-ldflags.patch
+       epatch "${FILESDIR}"/${P}-ldflags.patch \
+               "${FILESDIR}"/${P}-png15.patch
 }
 
 src_compile() {