summaryrefslogtreecommitdiff
path: root/extra/xaos
diff options
context:
space:
mode:
authorMichał Masłowski <mtjm@mtjm.eu>2012-02-07 15:10:29 +0100
committerMichał Masłowski <mtjm@mtjm.eu>2012-02-07 15:10:29 +0100
commit4c4400925b792b694511bbbf2f645fb34495d5cf (patch)
tree86a3b3c62e75fdf9c536306d195bbbcbc7ac974c /extra/xaos
parent08adec2ac14efea1ef452e79ff86f024b9becaf3 (diff)
parent1fa6edfba8d1e31ca1c0d59e8202cd3c62ccf393 (diff)
Merge branch 'master' of ssh://parabolagnulinux.org:1863/home/parabola/abslibre-pre-mips64el
Conflicts: community/bwbar/PKGBUILD community/directfb/PKGBUILD community/extremetuxracer/PKGBUILD community/freedroidrpg/PKGBUILD community/gnash/PKGBUILD community/guake/PKGBUILD community/pidgin-libnotify/PKGBUILD community/png2ico/PKGBUILD community/ruby-gtk2/PKGBUILD community/torcs/PKGBUILD community/virtualbox/PKGBUILD extra/abiword/PKGBUILD extra/alsaplayer/PKGBUILD extra/automoc4/PKGBUILD extra/cagibi/PKGBUILD extra/fltk/PKGBUILD extra/gnome-desktop2/PKGBUILD extra/gnome-python/PKGBUILD extra/gnome-sharp/PKGBUILD extra/gnugo/PKGBUILD extra/gstreamer0.10-good/PKGBUILD extra/gtk2/PKGBUILD extra/gtkmm/PKGBUILD extra/imlib2/PKGBUILD extra/koffice/PKGBUILD extra/lcms/PKGBUILD extra/libao/PKGBUILD extra/libcue/PKGBUILD extra/libdaemon/PKGBUILD extra/libgnome-media-profiles/PKGBUILD extra/libotf/PKGBUILD extra/libotr/PKGBUILD extra/libots/PKGBUILD extra/libreoffice/PKGBUILD extra/libtiff/PKGBUILD extra/libwebkit/PKGBUILD extra/libwmf/PKGBUILD extra/libxfcegui4/PKGBUILD extra/mjpegtools/PKGBUILD extra/netpbm/PKGBUILD extra/php/PKGBUILD extra/plotutils/PKGBUILD extra/poppler/PKGBUILD extra/qrencode/PKGBUILD extra/qt/PKGBUILD extra/qtiplot/PKGBUILD extra/rssh/PKGBUILD extra/scim-chewing/PKGBUILD extra/scim-m17n/PKGBUILD extra/scim-pinyin/PKGBUILD extra/scim-tables/PKGBUILD extra/scim-uim/PKGBUILD extra/tsocks/PKGBUILD extra/vigra/PKGBUILD extra/w3m/PKGBUILD extra/wv/PKGBUILD extra/xclip/PKGBUILD extra/xfce4-datetime-plugin/PKGBUILD extra/xfce4-notes-plugin/PKGBUILD extra/xfce4-quicklauncher-plugin/PKGBUILD extra/xfce4-sensors-plugin/PKGBUILD extra/xorg-font-util/PKGBUILD extra/xorg-setxkbmap/PKGBUILD extra/xorg-xev/PKGBUILD extra/xsane/PKGBUILD extra/yakuake/PKGBUILD extra/zvbi/PKGBUILD multilib/lib32-cairo/PKGBUILD multilib/lib32-gdk-pixbuf2/PKGBUILD multilib/lib32-libcanberra/PKGBUILD multilib/lib32-libcups/PKGBUILD multilib/lib32-libglade/PKGBUILD multilib/lib32-libpng/PKGBUILD multilib/lib32-libtiff/PKGBUILD multilib/lib32-pango/PKGBUILD multilib/lib32-qt/PKGBUILD multilib/lib32-sdl_image/PKGBUILD multilib/wine/PKGBUILD testing/vlc/PKGBUILD testing/xulrunner/PKGBUILD
Diffstat (limited to 'extra/xaos')
-rw-r--r--extra/xaos/PKGBUILD11
-rw-r--r--extra/xaos/xaos-3.5-libpng15.patch131
2 files changed, 137 insertions, 5 deletions
diff --git a/extra/xaos/PKGBUILD b/extra/xaos/PKGBUILD
index 28a1f9c9f..ac5deddf1 100644
--- a/extra/xaos/PKGBUILD
+++ b/extra/xaos/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 137880 2011-09-12 06:35:34Z eric $
+# $Id: PKGBUILD 148968 2012-02-05 11:58:17Z ibiru $
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=xaos
pkgver=3.5
-pkgrel=4
+pkgrel=5
pkgdesc="A fast portable real-time interactive fractal zoomer"
arch=('i686' 'x86_64' 'mips64el')
url="http://sourceforge.net/projects/xaos/"
@@ -11,12 +11,13 @@ license=('GPL')
depends=('gsl' 'libpng' 'aalib')
options=('!makeflags')
install=xaos.install
-source=(http://downloads.sourceforge.net/sourceforge/xaos/${pkgname}-${pkgver}.tar.gz)
-md5sums=('465d1469b276501a58bf325e493ea591')
-sha1sums=('6d16a58187fba7276e6bd0547cc2fd6bb073b801')
+source=(http://downloads.sourceforge.net/sourceforge/xaos/${pkgname}-${pkgver}.tar.gz xaos-3.5-libpng15.patch)
+sha1sums=('6d16a58187fba7276e6bd0547cc2fd6bb073b801'
+ '6c51cb2ee1c5f28973680ffc3a040c2cea65fd33')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p0 -i ../xaos-3.5-libpng15.patch
./configure --prefix=/usr --with-gsl --with-aa-driver
make
}
diff --git a/extra/xaos/xaos-3.5-libpng15.patch b/extra/xaos/xaos-3.5-libpng15.patch
new file mode 100644
index 000000000..beece8339
--- /dev/null
+++ b/extra/xaos/xaos-3.5-libpng15.patch
@@ -0,0 +1,131 @@
+http://code.google.com/p/gnuxaos/issues/detail?id=55
+
+--- src/util/png.c
++++ src/util/png.c
+@@ -3,6 +3,7 @@
+ #include <aconfig.h>
+ #ifdef USE_PNG
+ #include <png.h>
++#include <zlib.h>
+ #endif
+ #include <stdlib.h>
+ #include <stdio.h>
+@@ -31,6 +32,9 @@
+ png_structp png_ptr;
+ png_infop info_ptr;
+ png_color palette[256];
++ png_color_8 sig_bit;
++ int color_type;
++ int bit_depth;
+ volatile unsigned short a = 255;
+ volatile unsigned char *b = (volatile unsigned char *) &a;
+ #ifdef _undefined_
+@@ -59,7 +63,7 @@
+ png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
+ return "No memory to create png info structure";
+ }
+- if (setjmp(png_ptr->jmpbuf)) {
++ if (setjmp(png_jmpbuf(png_ptr))) {
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ fclose(file);
+ return strerror(errno);
+@@ -78,57 +82,70 @@
+ png_set_compression_window_bits(png_ptr, 15);
+ png_set_compression_method(png_ptr, 8);
+
+- info_ptr->width = image->width;
+- info_ptr->height = image->height;
+- /*info_ptr->gamma=1.0; */
+- info_ptr->gamma = 0.5;
+- info_ptr->valid |= PNG_INFO_gAMA | PNG_INFO_pHYs;
+- info_ptr->x_pixels_per_unit = (png_uint_32) (100 / image->pixelwidth);
+- info_ptr->y_pixels_per_unit = (png_uint_32) (100 / image->pixelheight);
++ switch (image->palette->type)
++ {
++ case C256:
++ color_type = PNG_COLOR_TYPE_PALETTE;
++ bit_depth = image->bytesperpixel * 8;
++ break;
++ case SMALLITER:
++ case LARGEITER:
++ case GRAYSCALE:
++ color_type = PNG_COLOR_TYPE_GRAY;
++ bit_depth = image->bytesperpixel * 8;
++ break;
++ case TRUECOLOR:
++ case TRUECOLOR24:
++ case TRUECOLOR16:
++ color_type = PNG_COLOR_TYPE_RGB;
++ bit_depth = 8;
++ break;
++ }
+
++ png_set_IHDR (png_ptr, info_ptr, image->width, image->height, bit_depth,
++ color_type, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_BASE,
++ PNG_FILTER_TYPE_BASE);
+
+ switch (image->palette->type) {
+ case C256:
+ {
+ int i;
+- info_ptr->color_type = PNG_COLOR_TYPE_PALETTE;
+- info_ptr->bit_depth = image->bytesperpixel * 8;
+- info_ptr->palette = palette;
+- info_ptr->valid |= PNG_INFO_PLTE;
++ png_color png_palette[257];
++ int png_num_palette;
+ for (i = 0; i < image->palette->end; i++)
+- info_ptr->palette[i].red = image->palette->rgb[i][0],
+- info_ptr->palette[i].green = image->palette->rgb[i][1],
+- info_ptr->palette[i].blue = image->palette->rgb[i][2],
+- info_ptr->num_palette = image->palette->end;
++ png_palette[i].red = image->palette->rgb[i][0],
++ png_palette[i].green = image->palette->rgb[i][1],
++ png_palette[i].blue = image->palette->rgb[i][2],
++ png_num_palette = image->palette->end;
++ png_set_PLTE(png_ptr, info_ptr, png_palette, png_num_palette);
+ }
+ break;
+- case SMALLITER:
+- case LARGEITER:
+- case GRAYSCALE:
+- info_ptr->color_type = PNG_COLOR_TYPE_GRAY;
+- info_ptr->bit_depth = image->bytesperpixel * 8;
+- break;
+ case TRUECOLOR:
+ case TRUECOLOR24:
+ case TRUECOLOR16:
+- info_ptr->color_type = PNG_COLOR_TYPE_RGB;
+- info_ptr->bit_depth = 8;
+- info_ptr->sig_bit.red = 8 - image->palette->info.truec.rprec;
+- info_ptr->sig_bit.green = 8 - image->palette->info.truec.gprec;
+- info_ptr->sig_bit.blue = 8 - image->palette->info.truec.bprec;
++ sig_bit.red = 8 - image->palette->info.truec.rprec;
++ sig_bit.green = 8 - image->palette->info.truec.gprec;
++ sig_bit.blue = 8 - image->palette->info.truec.bprec;
++ png_set_sBIT(png_ptr, info_ptr, &sig_bit);
+ break;
+ }
+- info_ptr->interlace_type = 0;
++
++ png_write_info (png_ptr, info_ptr);
++
+ #ifdef _undefined_
+ png_set_text(png_ptr, info_ptr, comments,
+ sizeof(comments) / sizeof(png_text));
+ #endif
+
+- png_write_info(png_ptr, info_ptr);
++ png_set_gAMA(png_ptr, info_ptr, 0.5 /* 1.0 */);
++ png_set_pHYs(png_ptr, info_ptr, (png_uint_32) (100 / image->pixelwidth),
++ (png_uint_32) (100 / image->pixelheight),
++ PNG_RESOLUTION_UNKNOWN);
++
+ /*png_set_filler(png_ptr,0,PNG_FILLER_AFTER); */
+ png_set_packing(png_ptr);
+ if (image->palette->type & (TRUECOLOR | TRUECOLOR24 | TRUECOLOR16))
+- png_set_shift(png_ptr, &(info_ptr->sig_bit));
++ png_set_shift (png_ptr, &sig_bit);
+ if (*b == 255)
+ png_set_swap(png_ptr);
+ png_set_bgr(png_ptr);