diff options
author | root <root@rshg054.dnsready.net> | 2013-08-13 01:33:19 -0700 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2013-08-13 01:33:19 -0700 |
commit | 7a65a910b77ad191d69881098c47f9b0c852d92e (patch) | |
tree | 9564e611af1442f8952a8cbddb3b0ad25ed71aab /community/irrlicht | |
parent | 60da6abff6c9577a783d72865f11de7a585e912e (diff) |
Tue Aug 13 01:31:08 PDT 2013
Diffstat (limited to 'community/irrlicht')
-rw-r--r-- | community/irrlicht/PKGBUILD | 70 | ||||
-rw-r--r-- | community/irrlicht/irrlicht-1.7.2-libpng15.patch | 40 |
2 files changed, 110 insertions, 0 deletions
diff --git a/community/irrlicht/PKGBUILD b/community/irrlicht/PKGBUILD new file mode 100644 index 000000000..53ac71ce8 --- /dev/null +++ b/community/irrlicht/PKGBUILD @@ -0,0 +1,70 @@ +# $Id: PKGBUILD 79765 2012-11-12 07:14:50Z svenstaro $ +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: Hilton Medeiros <medeiros.hilton AT gmail DOT com> +# Contributor: Ali H. Caliskan <ali.h.caliskan AT gmail DOT com> +# Contributor: Paolo Fagni <paolo.fagni AT mail DOT com> +# Contributor: Lukas Kropatschek <lukas.krop AT gmail DOT com> + +pkgname=irrlicht +pkgver=1.8 +pkgrel=1 +pkgdesc="An open source high performance realtime 3D graphics engine." +arch=('i686' 'x86_64') +url="http://irrlicht.sourceforge.net/" +license=('ZLIB') +depends=('libgl' 'libjpeg' 'bzip2' 'libpng') +makedepends=('mesa' 'unzip' 'libxcursor') +optdepends=('libxcursor: run examples') +source=("http://downloads.sourceforge.net/irrlicht/$pkgname-$pkgver.zip") +noextract=($pkgname-$pkgver.zip) +md5sums=('d06329d8f466658caaf4838ba349e393') + +build() { + unzip $pkgname-$pkgver.zip + + cd $srcdir/$pkgname-$pkgver + + cd source/Irrlicht + sed -i "/^INSTALL_DIR/s:=.*:=$pkgdir/usr/lib:" \ + Makefile + + make NDEBUG=1 sharedlib + + make NDEBUG=1 + + install -d $pkgdir/usr/lib \ + $pkgdir/usr/share/licenses/$pkgname \ + $pkgdir/usr/share/$pkgname/examples/bin \ + $pkgdir/usr/share/doc/$pkgname + + make install + + cd $srcdir/$pkgname-$pkgver/ + install -m644 readme.txt $pkgdir/usr/share/licenses/$pkgname + + # Install static library and fix headers permissions + install -m644 lib/Linux/libIrrlicht.a $pkgdir/usr/lib + chmod 644 $pkgdir/usr/include/$pkgname/* + + # Install media files for examples + cp -r media $pkgdir/usr/share/$pkgname + + # Install documentation + cp -r doc/* $pkgdir/usr/share/doc/$pkgname + rm -f $pkgdir/usr/share/doc/$pkgname/*.txt + + cd $pkgdir/usr/lib + ln -s libIrrlicht.so.$pkgver libIrrlicht.so.1 + + # Just a helper for examples compilation + ln -s libIrrlicht.so.$pkgver $srcdir/$pkgname-$pkgver/lib/Linux/libIrrlicht.so + + # Edit, build and install the examples + cd $srcdir/$pkgname-$pkgver/examples + sed -i '/define USE_IRRKLANG/s:.*://&:' ./Demo/CDemo.h + sed -i '/^CXXFLAGS/d' $(grep -Rl "^CXXFLAGS =" *) + + make + + install -m755 ../bin/Linux/* /$pkgdir/usr/share/$pkgname/examples/bin/ +} diff --git a/community/irrlicht/irrlicht-1.7.2-libpng15.patch b/community/irrlicht/irrlicht-1.7.2-libpng15.patch new file mode 100644 index 000000000..a1426bf29 --- /dev/null +++ b/community/irrlicht/irrlicht-1.7.2-libpng15.patch @@ -0,0 +1,40 @@ +--- source/Irrlicht/CImageLoaderPNG.cpp ++++ source/Irrlicht/CImageLoaderPNG.cpp +@@ -28,7 +28,7 @@ + static void png_cpexcept_error(png_structp png_ptr, png_const_charp msg)
+ {
+ os::Printer::log("PNG FATAL ERROR", msg, ELL_ERROR);
+- longjmp(png_ptr->jmpbuf, 1);
++ longjmp(png_jmpbuf(png_ptr), 1);
+ }
+
+ // PNG function for file reading
+@@ -37,7 +37,7 @@ + png_size_t check;
+
+ // changed by zola {
+- io::IReadFile* file=(io::IReadFile*)png_ptr->io_ptr;
++ io::IReadFile* file=(io::IReadFile*)png_get_io_ptr(png_ptr);
+ check=(png_size_t) file->read((void*)data,(u32)length);
+ // }
+
+--- source/Irrlicht/CImageWriterPNG.cpp ++++ source/Irrlicht/CImageWriterPNG.cpp +@@ -35,7 +35,7 @@ + static void png_cpexcept_error(png_structp png_ptr, png_const_charp msg)
+ {
+ os::Printer::log("PNG FATAL ERROR", msg, ELL_ERROR);
+- longjmp(png_ptr->jmpbuf, 1);
++ longjmp(png_jmpbuf(png_ptr), 1);
+ }
+
+ // PNG function for file writing
+@@ -43,7 +43,7 @@ + {
+ png_size_t check;
+
+- io::IWriteFile* file=(io::IWriteFile*)png_ptr->io_ptr;
++ io::IWriteFile* file=(io::IWriteFile*)png_get_io_ptr(png_ptr);
+ check=(png_size_t) file->write((const void*)data,(u32)length);
+
+ if (check != length)
|