Fix building with libpng15 wrt #357161 by Lars Wendler
authorSamuli Suominen <ssuominen@gentoo.org>
Sun, 7 Aug 2011 15:54:31 +0000 (15:54 +0000)
committerSamuli Suominen <ssuominen@gentoo.org>
Sun, 7 Aug 2011 15:54:31 +0000 (15:54 +0000)
Package-Manager: portage-2.2.0_alpha47/cvs/Linux x86_64

app-cdr/qpxtool/ChangeLog
app-cdr/qpxtool/Manifest
app-cdr/qpxtool/files/qpxtool-0.7.0-libpng15.patch [new file with mode: 0644]
app-cdr/qpxtool/qpxtool-0.7.0-r1.ebuild

index d1ab870e2adb2497f315dd87c0cd0eb560e07803..b34c3edc57a2fb24aa55ea0a901a4da2f9b7beef 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for app-cdr/qpxtool
-# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-cdr/qpxtool/ChangeLog,v 1.21 2010/01/25 20:08:33 carlo Exp $
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/qpxtool/ChangeLog,v 1.22 2011/08/07 15:54:30 ssuominen Exp $
+
+  07 Aug 2011; Samuli Suominen <ssuominen@gentoo.org> qpxtool-0.7.0-r1.ebuild,
+  +files/qpxtool-0.7.0-libpng15.patch:
+  Fix building with libpng15 wrt #357161 by Lars Wendler
 
 *qpxtool-0.7.0-r1 (25 Jan 2010)
 
index ad36c111cdb6c5fa27b4ae9b666160595a95912c..29714d9053f8e1af9c3c59c72b9539c4d81c241e 100644 (file)
@@ -1,7 +1,18 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
 AUX qpxtool-0.7.0-ldlibs.patch 1319 RMD160 92cf9725ebadab570623069298373b85e29b23f2 SHA1 fd845dc9c06fa4a34e1eba193b5e4c5ec466f7c2 SHA256 86403bee16f4387893cc4c80d748977e69ce743da477c63fe58a6158809c05ef
+AUX qpxtool-0.7.0-libpng15.patch 4372 RMD160 ed33a69be5ba4bc11274027d1384301511933c7a SHA1 91dfc818a1058ef27db4048e16be83657cba4215 SHA256 c1223c211457b28d0c23afbf738a4c7476bcb912a7d15f281e53d056574952ce
 AUX qpxtool-0.7.0-locale-install-race-patch 1003 RMD160 9878b28548e80f2cf61f98dd5697ab555954f9af SHA1 32a0bf1e6ecc093c4eb7faa903d97208c1109552 SHA256 35b625380ac55771b37cd770895f65c4c0ee8666eb2be57b4ac2c72ff77f6282
 AUX qpxtool-0.7.0-lrelease.patch 409 RMD160 9829ac03b770313c724625d1d66d8705ec1e3dbf SHA1 c036fffca12d48eb462170ddab0d4767cd00ea42 SHA256 7f0a171f6a94b0924a8495daed75a9803afa1eafdc3f20c0186cbd75a250ca96
 DIST qpxtool-0.7.0.tar.bz2 482918 RMD160 e2919beff1ade5c49d19c6e04cd4b17e7c7df7d5 SHA1 6e58bc7da5556e138ebf48758cbdbfd718f5ab7e SHA256 e5abf00c032e14a5b0cbc2359b4bc69833faf9c976273809904a0644ec5dfdbd
-EBUILD qpxtool-0.7.0-r1.ebuild 1037 RMD160 021918154689d5fa7d12da6aa2ab649e0b34684b SHA1 74a413c8219fb5dc3a77c8e1b1be2e8636860c6f SHA256 172af1d40a798a8e3db166b016eafc75bce5835fbac845ece37b738610bb53cc
-MISC ChangeLog 3215 RMD160 01d27167d817cc12896f45741ad503ccc22c4ebe SHA1 69a964c6da611a913f46cf3245d85c80d351e865 SHA256 94e87fa5dd39a1ed8d266f696e8c8aeb05bd4b7aeca7b6531cc7629c900efa4f
+EBUILD qpxtool-0.7.0-r1.ebuild 1083 RMD160 cb6ec730fae58ccdcd102924d9e39a770af14243 SHA1 fe03d5d6cfffc2f6e8ec2528cff2a7316ce2ae6d SHA256 ed76ae199e4a17cb0f1fcbb25d81325f03460c9c9953d0b00add4806b8ebdca9
+MISC ChangeLog 3395 RMD160 ee60f0f8e226e975a13f9f859240bd11c3a9fe5c SHA1 c1e2bad62c87565abe8674919614128cfb15932d SHA256 6c8309793e0555ff9fb9cfb32f2e351ce2ef7dd692e601ec3efec3cae7e0e340
 MISC metadata.xml 166 RMD160 02ca0a5d9279c1b52c3887f5a1f52f3feb002af9 SHA1 b9fccc7c24aa717c30efef068fd544a692f264f6 SHA256 ce62d1e5b04e01d03a732ee6d33b3d500810de8e55af4a527c970e5b475735d8
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.17 (GNU/Linux)
+
+iF4EAREIAAYFAk4+tG8ACgkQXkR9YqOcLPG6tgD/T8SZCvdH8J6T/nWH2C2sqyUt
+3KXQJo8OjsupHJwLCZYA/1Aq0QqR27ZXb+akP7viK7fFzVydNE8lfuBmVAc7LWF8
+=V6ju
+-----END PGP SIGNATURE-----
diff --git a/app-cdr/qpxtool/files/qpxtool-0.7.0-libpng15.patch b/app-cdr/qpxtool/files/qpxtool-0.7.0-libpng15.patch
new file mode 100644 (file)
index 0000000..b1be8db
--- /dev/null
@@ -0,0 +1,125 @@
+--- console/f1tattoo/f1tattoo.cpp
++++ console/f1tattoo/f1tattoo.cpp
+@@ -96,6 +96,10 @@
+       int      c;
+       int32_t  r,g,b;
+ 
++      png_colorp palette;
++      int num_palette;
++      png_get_PLTE(png_ptr, info_ptr, &palette, &num_palette);
++
+       if (fread(header, 1, 8, fp) < 8) {
+               printf("Error reading PNG header\n");
+               fclose(fp);     
+@@ -129,9 +133,9 @@
+ 
+       png_read_info(png_ptr, info_ptr);
+ 
+-      printf("Image size: %ld x %ld\n", info_ptr->width, info_ptr->height);
++      printf("Image size: %ld x %ld\n", png_get_image_width(png_ptr, info_ptr), png_get_image_height(png_ptr, info_ptr));
+ 
+-      if (info_ptr->width != 3744U || info_ptr->height != rows ) {
++      if (png_get_image_width(png_ptr, info_ptr) != 3744U || png_get_image_height(png_ptr, info_ptr) != rows ) {
+               printf("Image should be 3744 x %d", rows);
+               return 1;
+       }
+@@ -143,14 +147,14 @@
+       number_of_passes = png_set_interlace_handling(png_ptr);
+       png_read_update_info(png_ptr, info_ptr);
+ 
+-      printf("Color type: [%d] ", info_ptr->color_type);
+-      switch (info_ptr->color_type) {
++      printf("Color type: [%d] ", png_get_color_type(png_ptr, info_ptr));
++      switch (png_get_color_type(png_ptr, info_ptr)) {
+           case PNG_COLOR_TYPE_GRAY:
+                       printf("PNG_COLOR_TYPE_GRAY\n");
+                       break;
+           case PNG_COLOR_TYPE_PALETTE:
+                       printf("PNG_COLOR_TYPE_PALETTE\n");
+-                      if (!(info_ptr->valid & PNG_INFO_PLTE)) {
++                      if (!(png_get_valid(png_ptr,info_ptr,PNG_INFO_PLTE))) {
+                               printf("PNG color type is indexed, but no palette found!");
+                               goto err_read_png;
+                       }
+@@ -168,49 +172,49 @@
+                       printf("unlnown PNG color type!\n");
+                       goto err_read_png;
+       }
+-      printf("Bit depth : %d\n", info_ptr->bit_depth);
+-      if (info_ptr->bit_depth != 8) {
++      printf("Bit depth : %d\n", png_get_bit_depth(png_ptr, info_ptr));
++      if (png_get_bit_depth(png_ptr, info_ptr) != 8) {
+               printf("Unsupported bit depth!\n");
+               goto err_read_png;
+       }
+-      if (info_ptr->valid & PNG_INFO_PLTE) {
+-              printf("Palette   : %d colors\n", info_ptr->num_palette);
++      if (png_get_valid(png_ptr,info_ptr,PNG_INFO_PLTE)) {
++              printf("Palette   : %d colors\n", num_palette);
+       } else {
+               printf("Palette   : NO\n");
+       }
+-      printf("ROW bytes : %ld\n", info_ptr->rowbytes);
++      printf("ROW bytes : %ld\n", png_get_rowbytes(png_ptr, info_ptr));
+ 
+ 
+       raw_row_pointer = buf;
+-      png_row_pointer = (png_byte*) malloc(info_ptr->rowbytes);
++      png_row_pointer = (png_byte*) malloc(png_get_rowbytes(png_ptr, info_ptr));
+       for (row=0; row<rows; row++) {
+               if (setjmp(png_jmpbuf(png_ptr))) {
+                       printf("png_jmpbuf failed!\n");
+                       goto err_read_png;
+               }
+               png_read_row(png_ptr, png_row_pointer, NULL);
+-              if (info_ptr->width < 3744U)
++              if (png_get_image_width(png_ptr, info_ptr) < 3744U)
+                       memset(raw_row_pointer, 0, 3744);
+ 
+-              switch (info_ptr->color_type) {
++              switch (png_get_color_type(png_ptr, info_ptr)) {
+                   case PNG_COLOR_TYPE_GRAY:
+-                              for (col=0; col<info_ptr->width; col++) {
++                              for (col=0; col<png_get_image_width(png_ptr, info_ptr); col++) {
+                                       raw_row_pointer[col] = png_row_pointer[col] ^ 0xFF;
+ //                                    memcpy(raw_row_pointer, png_row_pointer, 3744);
+                               }
+                               break;
+                   case PNG_COLOR_TYPE_PALETTE:
+-                              for (col=0; col<info_ptr->width; col++) {
++                              for (col=0; col<png_get_image_width(png_ptr, info_ptr); col++) {
+                                       c = png_row_pointer[col];
+-                                      r = info_ptr->palette[c].red;
+-                                      g = info_ptr->palette[c].green;
+-                                      b = info_ptr->palette[c].blue;
++                                      r = palette[c].red;
++                                      g = palette[c].green;
++                                      b = palette[c].blue;
+                                       c = (r*11 + g*16 + b*5) / 32;
+                                       raw_row_pointer[col] = c ^ 0xFF;
+                               }
+                               break;
+                   case PNG_COLOR_TYPE_RGB:
+-                              for (col=0; col<info_ptr->width; col++) {
++                              for (col=0; col<png_get_image_width(png_ptr, info_ptr); col++) {
+                                       r = png_row_pointer[col*3];
+                                       g = png_row_pointer[col*3+1];
+                                       b = png_row_pointer[col*3+2];
+@@ -219,7 +223,7 @@
+                               }
+                               break;
+                   case PNG_COLOR_TYPE_RGB_ALPHA:
+-                              for (col=0; col<info_ptr->width; col++) {
++                              for (col=0; col<png_get_image_width(png_ptr, info_ptr); col++) {
+                                       r = png_row_pointer[col*4];
+                                       g = png_row_pointer[col*4+1];
+                                       b = png_row_pointer[col*4+2];
+@@ -228,7 +232,7 @@
+                               }
+                               break;
+                   case PNG_COLOR_TYPE_GRAY_ALPHA:
+-                              for (col=0; col<info_ptr->width; col++) {
++                              for (col=0; col<png_get_image_width(png_ptr, info_ptr); col++) {
+                                       raw_row_pointer[col] = png_row_pointer[col*2] ^ 0xFF;
+                               }
+                               break;
index 4be5a5274a384142935849c5c60963599eb9480e..7df01189969f608c820356c2fdcda34b4061a174 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2010 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-cdr/qpxtool/qpxtool-0.7.0-r1.ebuild,v 1.1 2010/01/25 20:08:33 carlo Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/qpxtool/qpxtool-0.7.0-r1.ebuild,v 1.2 2011/08/07 15:54:30 ssuominen Exp $
 
 EAPI=2
 inherit eutils toolchain-funcs qt4-r2
@@ -23,6 +23,7 @@ src_prepare() {
        epatch "${FILESDIR}"/${P}-lrelease.patch
        epatch "${FILESDIR}"/${P}-ldlibs.patch
        epatch "${FILESDIR}"/${P}-locale-install-race-patch
+       epatch "${FILESDIR}"/${P}-libpng15.patch
 }
 
 src_configure() {