diff options
author | root <root@rshg054.dnsready.net> | 2012-02-06 23:14:50 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-02-06 23:14:50 +0000 |
commit | 1fa6edfba8d1e31ca1c0d59e8202cd3c62ccf393 (patch) | |
tree | 8d7ccc2dc9d08a4c3cde26aa01c887e9a0fc2fa1 /community/qpxtool | |
parent | bdb5b3e66f6afa586ea147f69af5e4ba388f7615 (diff) |
Mon Feb 6 23:14:50 UTC 2012
Diffstat (limited to 'community/qpxtool')
-rw-r--r-- | community/qpxtool/PKGBUILD | 14 | ||||
-rw-r--r-- | community/qpxtool/libpng15.patch | 127 |
2 files changed, 135 insertions, 6 deletions
diff --git a/community/qpxtool/PKGBUILD b/community/qpxtool/PKGBUILD index 9d8987cb2..9147bc92d 100644 --- a/community/qpxtool/PKGBUILD +++ b/community/qpxtool/PKGBUILD @@ -1,26 +1,28 @@ -# $Id: PKGBUILD 15647 2010-04-13 11:41:23Z spupykin $ +# $Id: PKGBUILD 63724 2012-02-05 12:09:25Z ibiru $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Krzysztof Stasiorowski <krzysiekst@gmail.com> pkgname=qpxtool pkgver=0.7.1_002 -pkgrel=1 +pkgrel=3 pkgdesc="Allows better controll over optical drives to include QChecks and optimization settings." arch=('i686' 'x86_64') url="http://qpxtool.sourceforge.net/" license=('GPL') depends=('qt') -source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2) -md5sums=('755321a0196b16d06857550aac74ff50') +source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2 + libpng15.patch) +md5sums=('755321a0196b16d06857550aac74ff50' + 'ab9af7610277652c77c6d114422b2266') build() { cd $srcdir/$pkgname-$pkgver - # Fix strict aliasing warnings export CFLAGS="$CFLAGS -fno-strict-aliasing" sed -i 's|lib64|lib|' configure + patch -p1 <$srcdir/libpng15.patch ./configure --prefix=/usr - make || return 1 + make mkdir -p $pkgdir/usr/bin make DESTDIR=$pkgdir install } diff --git a/community/qpxtool/libpng15.patch b/community/qpxtool/libpng15.patch new file mode 100644 index 000000000..05e6f49d2 --- /dev/null +++ b/community/qpxtool/libpng15.patch @@ -0,0 +1,127 @@ +diff -wbBur qpxtool-0.7.1_002/console/f1tattoo/f1tattoo.cpp qpxtool-0.7.1_002.my/console/f1tattoo/f1tattoo.cpp +--- qpxtool-0.7.1_002/console/f1tattoo/f1tattoo.cpp 2009-11-25 10:55:44.000000000 +0300 ++++ qpxtool-0.7.1_002.my/console/f1tattoo/f1tattoo.cpp 2012-01-23 13:53:37.000000000 +0400 +@@ -129,28 +129,28 @@ + + png_read_info(png_ptr, info_ptr); + +- printf("Image size: %ld x %ld\n", info_ptr->width, info_ptr->height); ++ printf("Image size: %u x %u\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; + } + +-// width = info_ptr->width; +-// height = info_ptr->height; +-// bit_depth = info_ptr->bit_depth; ++// width = png_get_image_width(png_ptr, info_ptr); ++// height = png_get_image_height(png_ptr, info_ptr); ++// bit_depth = png_get_bit_depth(png_ptr, info_ptr); + + 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 +168,53 @@ + 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); ++ ++ int num_palette; ++ png_colorp plte; ++ png_get_PLTE(png_ptr, info_ptr, &plte, &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 : %d\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 = plte[c].red; ++ g = plte[c].green; ++ b = plte[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; |