code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>libnut</Name>
        NUT dosya biçemi kitaplığı ve araçları
        <Description xml:lang="tr">libnut NUT çokluortam sistemini kullanmak ve düzenlemek için gerekli olan kitaplıkları ve araçları içerir.</Description>
    </Source>

    <Package>
        <Name>libnut-devel</Name>
        libnut için geliştirme dosyaları
    </Package>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt

from pisi.actionsapi import get
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools

# Disable automagic curl dep used for online update checking
shelltools.export("CURL_CFLAGS", "")
shelltools.export("CURL_LIBS", "")

# Sets number of threads for a parallel build
shelltools.export("DRAKETHREADS", get.makeJOBS().replace("-j", ""))

pisitools.flags.add("-DBOOST_FILESYSTEM_VERSION=3")

def setup():
   # pisitools.dosed("configure.in", "curl", deleteLine=True)

    autotools.autoreconf("-fiv")
    autotools.configure("--enable-gui \
                                       --without-curl \
                                       --with-flac \
                                    --with-boost-libdir=/usr/lib ")

def build():
    shelltools.system("rake")

def install():
    shelltools.system('rake install DESTDIR="%s"' % get.installDIR())

    pisitools.dodoc("AUTHORS", "NEWS*", "README*")

repo_name: ayhanyalcinsoy/main


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>mkvtoolnix</Name>
        <Homepage>http://www.bunkus.org/videotools/mkvtoolnix/</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <Icon>mmg</Icon>
        <IsA>app:console</IsA>
        <IsA>app:gui</IsA>
        <Summary>A set of tools to create, alter and inspect Matroska files</Summary>
        <Description>MKVToolnix is a set of tools (mkvmerge, mkvinfo and mkvextract) With these tools one can get information about (mkvinfo) Matroska files, extract tracks/data from (mkvextract) Matroska files and create (mkvmerge) Matroska files from other media files.</Description>
        <Archive sha1sum="451d8c38374c6cd261039338dd997d49e5d330d9" type="tarxz">https://mkvtoolnix.download/sources/mkvtoolnix-19.0.0.tar.xz</Archive>
        <BuildDependencies>
            <Dependency>qt5-base-devel</Dependency>
            <Dependency>qt5-multimedia-devel</Dependency>
            <Dependency>zlib-devel</Dependency>
            <Dependency>ruby-devel</Dependency>
            <Dependency>rubygems</Dependency>
            <Dependency>flac-devel</Dependency>
            <Dependency>boost-devel</Dependency>
            <Dependency>libogg-devel</Dependency>
            <Dependency>libebml-devel</Dependency>
            <Dependency>libvorbis-devel</Dependency>
            <Dependency>libmatroska-devel</Dependency>
            <Dependency>docbook-xsl</Dependency>
            <Dependency>libxslt-devel</Dependency>
            <Dependency>pulseaudio-libs-devel</Dependency>
            <Dependency>pugixml-devel</Dependency>
            <Dependency>file</Dependency>
             <Dependency>imagemagick-devel</Dependency>
        </BuildDependencies>
    </Source>

    <Package>
        <Name>mkvtoolnix</Name>
        <RuntimeDependencies>
            <Dependency>pugixml</Dependency>
            <Dependency>flac</Dependency>
            <Dependency>boost</Dependency>
            <Dependency>libogg</Dependency>
            <Dependency>file</Dependency>
            <Dependency>libvorbis</Dependency>
            <Dependency>zlib</Dependency>
            <Dependency>qt5-base</Dependency>
            <Dependency>qt5-multimedia</Dependency>
            <Dependency>libgcc</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="man">/usr/share/man</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="data">/usr/share/mime</Path>
            <Path fileType="data">/usr/share/icons</Path>
            <Path fileType="data">/usr/share/pixmaps</Path>
            <Path fileType="data">/usr/share/mkvtoolnix</Path>
            <Path fileType="data">/usr/share/applications</Path>
            <Path fileType="localedata">/usr/share/locale</Path>
        </Files>
    </Package>

    <History>
        <Update release="6">
            <Date>2017-03-17</Date>
            <Version>19.0.0</Version>
            <Comment>Version bump</Comment>
            <Name>Mustafa Cinasal</Name>
            <Email>muscnsl@gmail.com</Email>
        </Update>
        <Update release="5">
            <Date>2017-03-17</Date>
            <Version>9.7.1</Version>
            <Comment>Version bump</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="4">
            <Date>2016-11-04</Date>
            <Version>9.5.0</Version>
            <Comment>Version bump.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2016-08-11</Date>
            <Version>9.3.1</Version>
            <Comment>Version bump.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>8.5.2</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-04-08</Date>
            <Version>8.5.2</Version>
            <Comment>First release</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>mkvtoolnix</Name>
        <Summary xml:lang="tr">Matroska dosyalarını yaratmak, değiştirmek ve incelemek için araçlar</Summary>
        <Description xml:lang="tr">mkvtoolnix Matroska (MKV) dosyaları ile kullanılmak için bilgi edinme aracı (mkvinfo), veri/iz çıkarmak aracı (mkvextract) ve MKV oluşturma aracı (mkvmerge) içeren araç setidir.</Description>
    </Source>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/copyleft/gpl.txt

from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get

def build():
    autotools.make()

def install():
    autotools.rawInstall("DESTDIR=%s" % get.installDIR())

    pisitools.dodoc("AUTHORS", "ChangeLog*", "COPYING", "README*")


code:
		<meta charset="utf-8">
		<TITLE>Dropbox :: Folder listing :: files</TITLE>
		<link rel="shortcut icon" href="http://www.dropbox.com/static/1238803391/images/favicon.ico"/>
		<link rel="stylesheet" href="http://www.dropbox.com/static/1241315492/css/sprites.css" type="text/css" media="screen"/>

				Contents of files:
				Size
				Date Modified

					Parent folder

						Index file generated on 19-02-2012 21:27 with
						pyndexer
						v.0.7

					© 2010 Dropbox

				python_ldpath_and_doc.patch
				9 KB
				19-02-2012 16:46


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>unoconv</Name>
        <Homepage>http://dag.wieers.com/home-made/unoconv</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <IsA>app:console</IsA>
        <Summary>A document converter</Summary>
        <Description>unoconv converts between any document format that OpenOffice / OpenOffice understands.</Description>
        <Archive sha1sum="c4d764f9cd8461955ca1c3564a522449ed264c19" type="targz">http://dag.wieers.com/home-made/unoconv/unoconv-0.7.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>asciidoc</Dependency>
            <Dependency>xmlto</Dependency>
        </BuildDependencies>

    </Source>

    <Package>
        <Name>unoconv</Name>
        <RuntimeDependencies>
            <Dependency>asciidoc</Dependency>
            <Dependency>xmlto</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="man">/usr/share/man</Path>
            <Path fileType="doc">/usr/share/doc</Path>
        </Files>
    </Package>

    <History>
        <Update release="3">
            <Date>2017-02-05</Date>
            <Version>0.7</Version>
            <Comment>Rebuild</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>0.7</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-03-23</Date>
            <Version>0.7</Version>
            <Comment>First release</Comment>
            <Name>Stefan Gronewold</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>unoconv</Name>
        <Summary xml:lang="tr">Bir belge dönüştürücü</Summary>
        <Description xml:lang="tr">unoconv, her belge biçimini OpenOffice ve OpenOffice'in anlayacağı biçime dönüştüren bir terminal uygulamasıdır.</Description>
    </Source>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt

from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get

def setup():
    autotools.configure("--with-xml-prefix=/usr \
                         --disable-xmltest \
                         --disable-static")

def build():
    autotools.make()

def install():
    autotools.rawInstall("DESTDIR=\"%s\"" % get.installDIR())
    pisitools.dodoc("AUTHORS", "BUGS", "ChangeLog", "FAQ", "HACKING", "NEWS", "README", "THANKS", "TODO")


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>vcdimager</Name>
        <Homepage>http://www.vcdimager.org/</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <IsA>app:console</IsA>
        <IsA>library</IsA>
        VCD and SVCD image file maker and converter
        <Description>VCDImager is a full-featured mastering suite for authoring, disassembling and analyzing Video CD's and Super Video CD's.  The core functionality consists of directly making Video CD BIN/CUE-style CD images from mpeg files.</Description>
        <Archive sha1sum="8c245555c3e21dcbc3d4dbb2ecca74f609545424" type="targz">http://ftp.gnu.org/gnu/vcdimager/vcdimager-0.7.24.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>libcdio-devel</Dependency>
            <Dependency>popt</Dependency>
        </BuildDependencies>
    </Source>

    <Package>
        <Name>vcdimager</Name>
        <RuntimeDependencies>
            <Dependency>libcdio</Dependency>
            <Dependency>popt</Dependency>
            <Dependency>libxml2</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="library">/usr/lib</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="info">/usr/share/info</Path>
            <Path fileType="man">/usr/share/man</Path>
        </Files>
    </Package>

    <Package>
        <Name>vcdimager-devel</Name>
        Development files for vcdimager
        <RuntimeDependencies>
            <Dependency release="current">vcdimager</Dependency>
            <Dependency>libcdio-devel</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="header">/usr/include</Path>
            <Path fileType="data">/usr/lib/pkgconfig</Path>
        </Files>
    </Package>

    <History>
        <Update release="3">
            <Date>2017-03-05</Date>
            <Version>0.7.24</Version>
            <Comment>Rebuild</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2017-02-05</Date>
            <Version>0.7.24</Version>
            <Comment>Rebuild</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>0.7.24</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2014-05-20</Date>
            <Version>0.7.24</Version>
            <Comment>First release</Comment>
            <Name>Serdar Soytetir</Name>
            <Email>kaptan@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>vcdimager</Name>
        VCD ve SVDC görüntü dosyası oluşturucu ve çevirici
        <Description xml:lang="tr">VCDImager Video CD ve Super Video CD'leri yaratmaya, parçalarına ayırmaya ve analiz etmeye yarayan kapsamlı bir CD görüntüsü yazma uygulamasıdır. En temel özelliği .mpeg dosyalarından direk BIN/CUE uzantılı CD görüntüleri yaratabilmesidir.</Description>
    </Source>

    <Package>
        <Name>vcdimager-devel</Name>
        vcdimager için geliştirme dosyaları
    </Package>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file `http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.

from pisi.actionsapi import shelltools
from pisi.actionsapi import pisitools
from pisi.actionsapi import autotools
from pisi.actionsapi import cmaketools
from pisi.actionsapi import get

def setup():
    shelltools.system("rm -rf CMakeCache.txt")
    shelltools.cd("..")
    shelltools.makedirs("cmake-make")
    shelltools.cd("cmake-make")
    shelltools.system("cmake ../blender-2.79 \
                      -DCMAKE_INSTALL_PREFIX=/usr \
                      -DFREETYPE_INCLUDE_DIRS=/usr/include/freetype2 \
                      -DCMAKE_BUILD_TYPE=Release \
                      -DCMAKE_SKIP_RPATH=ON \
                      -DWITH_JACK=ON \
                      -DWITH_JACK_DYNLOAD=ON \
                      -DWITH_IMAGE_OPENEXR=ON \
                      -DWITH_OPENCOLORIO=OFF \
                      -DWITH_OPENIMAGEIO=ON \
                      -DWITH_FFTW3=ON\
                      -DWITH_PLAYER=ON \
                      -DWITH_CODEC_FFMPEG=ON \
                      -DWITH_INSTALL_PORTABLE=OFF \
                      -DWITH_GAMEENGINE=ON \
                      -DWITH_PYTHON_INSTALL=OFF \
                      -DWITH_MOD_OCEANSIM=ON \
                      -DPYTHON_VERSION=3.6 \
                      -DPYTHON_LIBPATH=/usr/lib \
                      -DPYTHON_LIBRARY=python3.6m \
                      -DPYTHON_INCLUDE_DIRS=/usr/include/python3.6m \
                      -DWITH_CODEC_SNDFILE=ON ")

def build():
    shelltools.cd("../cmake-make")
    cmaketools.make()

def install():
    shelltools.cd("../cmake-make/")
    cmaketools.rawInstall("DESTDIR=%s" % get.installDIR())

    pisitools.domove("/usr/bin/blender", "/usr/bin", "blender-bin")


code:
commit 94eed33f878e35a8c7b69b0c23b3b30026460f33
Author: hasufell <hasufell@gentoo.org>
Date:   Fri Jul 19 18:50:08 2013 +0200

    remove stupid uninstall snippet

    whoever coded this... it is dangerous
    uninstall methods have NO PLACE in install rules

diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt
index c84d944..2b9bf46 100644
--- a/source/creator/CMakeLists.txt
+++ b/source/creator/CMakeLists.txt
@@ -268,12 +268,6 @@ endif()
 # Install Targets (Generic, All Platforms)

-# important to make a clean  install each time, else old scripts get loaded.
-install(
-	CODE
-	"file(REMOVE_RECURSE ${TARGETDIR_VER})"
-)
-
 if(WITH_PYTHON)
 	# install(CODE "message(\"copying blender scripts...\")")


code:
diff -up blender-2.67b/source/blender/makesrna/intern/rna_access.c.rna blender-2.67b/source/blender/makesrna/intern/rna_access.c
--- blender-2.67b/source/blender/makesrna/intern/rna_access.c.rna	2013-05-16 12:43:18.000000000 +0200
+++ blender-2.67b/source/blender/makesrna/intern/rna_access.c	2013-06-14 16:35:39.263926932 +0200
@@ -1273,13 +1273,15 @@ void RNA_property_enum_items_gettexted(b
 			int totitem = 0;

 			/* count */
-			for (i = 0; (*item)[i].identifier; i++)
-				totitem++;
+			if (*item)
+			  for (i = 0; (*item)[i].identifier; i++)
+			    totitem++;

 			nitem = MEM_callocN(sizeof(EnumPropertyItem) * (totitem + 1), "enum_items_gettexted");

-			for (i = 0; (*item)[i].identifier; i++)
-				nitem[i] = (*item)[i];
+			if (*item)
+			  for (i = 0; (*item)[i].identifier; i++)
+			    nitem[i] = (*item)[i];

 			*free = TRUE;
 		}


code:
#!/bin/sh

# stop this script if the local blender path is a symlink
 if [ -L \${HOME}/.blender ]; then
echo "Detected a symbolic link for \${HOME}/.blender"
echo "Sorry, to avoid dangerous situations, the Blender binary can"
echo "not be started until	you have removed the symbolic link:"
echo "  # rm -i \${HOME}/.blender"
exit 1
fi

export BLENDER_SYSTEM_SCRIPTS="/usr/share/blender/scripts"
export BLENDER_SYSTEM_DATAFILES="/usr/share/blender/${VERSION}/datafiles"

exec blender-bin "$@"


code:
[Desktop Entry]
Name=Blender
GenericName=3D modeller
GenericName[es]=modelador 3D
GenericName[de]=3D-Modellierer
GenericName[fr]=modeleur 3D
GenericName[ru]=Редактор 3D-моделей
GenericName[tr]=3D Modelleyici
Comment=3D modeling, animation, rendering and post-production
Comment[es]=modelado 3D, animación, renderizado y post-producción
Comment[de]=3D-Modellierung, Animation, Rendering und Nachbearbeitung
Comment[tr]=Blender, özgür bir üç boyutlu modelleme ve canlandırma uygulamasıdır.
Exec=blender
Icon=blender
Terminal=false
Type=Application
Categories=Graphics;3DGraphics;
MimeType=application/x-blender;


code:
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
    <mime-type type="application/x-blender">
        <comment xml:lang="en">Blender Scene</comment>
        <comment xml:lang="tr">Blender Sahnesi</comment>
        <glob pattern="*.blend" />
  </mime-type>
</mime-info>


code:
diff -ur blender-2.76/CMakeLists.txt blender-2.76.ffmpeg/CMakeLists.txt
--- blender-2.76/CMakeLists.txt	2015-10-12 00:58:22.000000000 +0200
+++ blender-2.76.ffmpeg/CMakeLists.txt	2016-04-16 15:31:11.524037254 +0200
@@ -982,7 +982,7 @@

 	if(WITH_CODEC_FFMPEG)
 		set(FFMPEG /usr CACHE PATH "FFMPEG Directory")
-		set(FFMPEG_LIBRARIES avformat avcodec avutil avdevice swscale CACHE STRING "FFMPEG Libraries")
+		set(FFMPEG_LIBRARIES avformat avcodec avutil avdevice swscale avfilter CACHE STRING "FFMPEG Libraries")

 		mark_as_advanced(FFMPEG)

diff -ur blender-2.76/intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp blender-2.76.ffmpeg/intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp
--- blender-2.76/intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp	2015-10-07 02:09:33.000000000 +0200
+++ blender-2.76.ffmpeg/intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp	2016-04-16 15:31:11.524037254 +0200
@@ -58,9 +58,9 @@
 		got_frame = 0;

 		if(!frame)
-			frame = avcodec_alloc_frame();
+			frame = av_frame_alloc();
 		else
-			avcodec_get_frame_defaults(frame);
+			av_frame_unref(frame);

 		read_length = avcodec_decode_audio4(m_codecCtx, frame, &got_frame, &packet);
 		if(read_length < 0)
diff -ur blender-2.76/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp blender-2.76.ffmpeg/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp
--- blender-2.76/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp	2015-10-07 02:09:33.000000000 +0200
+++ blender-2.76.ffmpeg/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp	2016-04-16 15:31:11.524037254 +0200
@@ -202,7 +202,7 @@
 			m_frame = av_frame_alloc();
 			if (!m_frame)
 				AUD_THROW(AUD_ERROR_FFMPEG, codec_error);
-			avcodec_get_frame_defaults(m_frame);
+			av_frame_unref(m_frame);
 			m_frame->linesize[0]    = m_input_size * samplesize;
 			m_frame->format         = m_codecCtx->sample_fmt;
 			m_frame->nb_samples     = m_input_size;
diff -ur blender-2.76/source/blender/blenkernel/intern/writeffmpeg.c blender-2.76.ffmpeg/source/blender/blenkernel/intern/writeffmpeg.c
--- blender-2.76/source/blender/blenkernel/intern/writeffmpeg.c	2015-10-12 00:58:22.000000000 +0200
+++ blender-2.76.ffmpeg/source/blender/blenkernel/intern/writeffmpeg.c	2016-04-16 15:31:11.527370628 +0200
@@ -138,8 +138,8 @@
 	context->audio_time += (double) context->audio_input_samples / (double) c->sample_rate;

 #ifdef FFMPEG_HAVE_ENCODE_AUDIO2
-	frame = avcodec_alloc_frame();
-	avcodec_get_frame_defaults(frame);
+	frame = av_frame_alloc();
+	av_frame_unref(frame);
 	frame->pts = context->audio_time / av_q2d(c->time_base);
 	frame->nb_samples = context->audio_input_samples;
 	frame->format = c->sample_fmt;
@@ -172,7 +172,7 @@
 	}

 	if (!got_output) {
-		avcodec_free_frame(&frame);
+		av_frame_free(&frame);
 		return 0;
 	}
 #else
@@ -202,7 +202,7 @@
 		if (av_interleaved_write_frame(context->outfile, &pkt) != 0) {
 			fprintf(stderr, "Error writing audio packet!\n");
 			if (frame)
-				avcodec_free_frame(&frame);
+				av_frame_free(&frame);
 			return -1;
 		}

@@ -210,7 +210,7 @@
 	}

 	if (frame)
-		avcodec_free_frame(&frame);
+		av_frame_free(&frame);

 	return 0;
 }
@@ -224,7 +224,7 @@
 	int size;

 	/* allocate space for the struct */
-	f = avcodec_alloc_frame();
+	f = av_frame_alloc();
 	if (!f) return NULL;
 	size = avpicture_get_size(pix_fmt, width, height);
 	/* allocate the actual picture buffer */
@@ -363,8 +363,8 @@
 	int height = c->height;
 	AVFrame *rgb_frame;

-	if (c->pix_fmt != PIX_FMT_BGR32) {
-		rgb_frame = alloc_picture(PIX_FMT_BGR32, width, height);
+	if (c->pix_fmt != AV_PIX_FMT_BGR32) {
+		rgb_frame = alloc_picture(AV_PIX_FMT_BGR32, width, height);
 		if (!rgb_frame) {
 			BKE_report(reports, RPT_ERROR, "Could not allocate temporary frame");
 			return NULL;
@@ -414,14 +414,14 @@
 		}
 	}

-	if (c->pix_fmt != PIX_FMT_BGR32) {
+	if (c->pix_fmt != AV_PIX_FMT_BGR32) {
 		sws_scale(context->img_convert_ctx, (const uint8_t *const *) rgb_frame->data,
 		          rgb_frame->linesize, 0, c->height,
 		          context->current_frame->data, context->current_frame->linesize);
 		delete_picture(rgb_frame);
 	}

-	context->current_frame->format = PIX_FMT_BGR32;
+	context->current_frame->format = AV_PIX_FMT_BGR32;
 	context->current_frame->width = width;
 	context->current_frame->height = height;

@@ -586,12 +586,12 @@
 	}
 	else {
 		/* makes HuffYUV happy ... */
-		c->pix_fmt = PIX_FMT_YUV422P;
+		c->pix_fmt = AV_PIX_FMT_YUV422P;
 	}

 	if (context->ffmpeg_type == FFMPEG_XVID) {
 		/* arghhhh ... */
-		c->pix_fmt = PIX_FMT_YUV420P;
+		c->pix_fmt = AV_PIX_FMT_YUV420P;
 		c->codec_tag = (('D' << 24) + ('I' << 16) + ('V' << 8) + 'X');
 	}

@@ -604,26 +604,26 @@
 	/* Keep lossless encodes in the RGB domain. */
 	if (codec_id == AV_CODEC_ID_HUFFYUV) {
 		if (rd->im_format.planes == R_IMF_PLANES_RGBA) {
-			c->pix_fmt = PIX_FMT_BGRA;
+			c->pix_fmt = AV_PIX_FMT_BGRA;
 		}
 		else {
-			c->pix_fmt = PIX_FMT_RGB32;
+			c->pix_fmt = AV_PIX_FMT_RGB32;
 		}
 	}

 	if (codec_id == AV_CODEC_ID_FFV1) {
-		c->pix_fmt = PIX_FMT_RGB32;
+		c->pix_fmt = AV_PIX_FMT_RGB32;
 	}

 	if (codec_id == AV_CODEC_ID_QTRLE) {
 		if (rd->im_format.planes == R_IMF_PLANES_RGBA) {
-			c->pix_fmt = PIX_FMT_ARGB;
+			c->pix_fmt = AV_PIX_FMT_ARGB;
 		}
 	}

 	if (codec_id == AV_CODEC_ID_PNG) {
 		if (rd->im_format.planes == R_IMF_PLANES_RGBA) {
-			c->pix_fmt = PIX_FMT_RGBA;
+			c->pix_fmt = AV_PIX_FMT_RGBA;
 		}
 	}

@@ -661,7 +661,7 @@

 	context->current_frame = alloc_picture(c->pix_fmt, c->width, c->height);

-	context->img_convert_ctx = sws_getContext(c->width, c->height, PIX_FMT_BGR32, c->width, c->height, c->pix_fmt, SWS_BICUBIC,
+	context->img_convert_ctx = sws_getContext(c->width, c->height, AV_PIX_FMT_BGR32, c->width, c->height, c->pix_fmt, SWS_BICUBIC,
 	                                 NULL, NULL, NULL);
 	return st;
 }
diff -ur blender-2.76/source/blender/imbuf/intern/anim_movie.c blender-2.76.ffmpeg/source/blender/imbuf/intern/anim_movie.c
--- blender-2.76/source/blender/imbuf/intern/anim_movie.c	2015-10-07 02:09:33.000000000 +0200
+++ blender-2.76.ffmpeg/source/blender/imbuf/intern/anim_movie.c	2016-04-16 15:31:11.527370628 +0200
@@ -474,6 +474,10 @@
 	const int *inv_table;
 #endif

+	anim->last_width = -1;
+	anim->last_height = -1;
+	anim->last_pixfmt = AV_PIX_FMT_NONE;
+
 	if (anim == NULL) return(-1);

 	streamcount = anim->streamindex;
@@ -562,21 +566,21 @@
 	anim->next_pts = -1;
 	anim->next_packet.stream_index = -1;

-	anim->pFrame = avcodec_alloc_frame();
+	anim->pFrame = av_frame_alloc();
 	anim->pFrameComplete = false;
-	anim->pFrameDeinterlaced = avcodec_alloc_frame();
-	anim->pFrameRGB = avcodec_alloc_frame();
+	anim->pFrameDeinterlaced = av_frame_alloc();
+	anim->pFrameRGB = av_frame_alloc();

-	if (avpicture_get_size(PIX_FMT_RGBA, anim->x, anim->y) !=
+	if (avpicture_get_size(AV_PIX_FMT_RGBA, anim->x, anim->y) !=
 	    anim->x * anim->y * 4)
 	{
 		fprintf(stderr,
 		        "ffmpeg has changed alloc scheme ... ARGHHH!\n");
 		avcodec_close(anim->pCodecCtx);
 		avformat_close_input(&anim->pFormatCtx);
-		av_free(anim->pFrameRGB);
-		av_free(anim->pFrameDeinterlaced);
-		av_free(anim->pFrame);
+		av_frame_free(&anim->pFrameRGB);
+		av_frame_free(&anim->pFrameDeinterlaced);
+		av_frame_free(&anim->pFrame);
 		anim->pCodecCtx = NULL;
 		return -1;
 	}
@@ -606,7 +610,7 @@
 	        anim->pCodecCtx->pix_fmt,
 	        anim->x,
 	        anim->y,
-	        PIX_FMT_RGBA,
+	        AV_PIX_FMT_RGBA,
 	        SWS_FAST_BILINEAR | SWS_PRINT_INFO | SWS_FULL_CHR_H_INT,
 	        NULL, NULL, NULL);

@@ -615,9 +619,9 @@
 		        "Can't transform color space??? Bailing out...\n");
 		avcodec_close(anim->pCodecCtx);
 		avformat_close_input(&anim->pFormatCtx);
-		av_free(anim->pFrameRGB);
-		av_free(anim->pFrameDeinterlaced);
-		av_free(anim->pFrame);
+		av_frame_free(&anim->pFrameRGB);
+		av_frame_free(&anim->pFrameDeinterlaced);
+		av_frame_free(&anim->pFrame);
 		anim->pCodecCtx = NULL;
 		return -1;
 	}
@@ -644,6 +648,74 @@
 	return (0);
 }

+static void delete_filter_graph(struct anim *anim) {
+    if (anim->filter_graph) {
+        av_frame_free(&anim->filter_frame);
+        avfilter_graph_free(&anim->filter_graph);
+    }
+}
+
+static int init_filter_graph(struct anim *anim, enum AVPixelFormat pixfmt, int width, int height) {
+    AVFilterInOut *inputs = NULL, *outputs = NULL;
+    char args[512];
+    int res;
+
+    delete_filter_graph(anim);
+    anim->filter_graph = avfilter_graph_alloc();
+    snprintf(args, sizeof(args),
+             "buffer=video_size=%dx%d:pix_fmt=%d:time_base=1/1:pixel_aspect=0/1[in];"
+             "[in]yadif[out];"
+             "[out]buffersink",
+             width, height, pixfmt);
+    res = avfilter_graph_parse2(anim->filter_graph, args, &inputs, &outputs);
+    if (res < 0)
+        return res;
+    if(inputs || outputs)
+        return -1;
+    res = avfilter_graph_config(anim->filter_graph, NULL);
+    if (res < 0)
+        return res;
+
+    anim->buffersrc_ctx = avfilter_graph_get_filter(anim->filter_graph, "Parsed_buffer_0");
+    anim->buffersink_ctx = avfilter_graph_get_filter(anim->filter_graph, "Parsed_buffersink_2");
+    if (!anim->buffersrc_ctx || !anim->buffersink_ctx)
+        return -1;
+    anim->filter_frame = av_frame_alloc();
+    anim->last_width = width;
+    anim->last_height = height;
+    anim->last_pixfmt = pixfmt;
+
+    return 0;
+}
+
+static int process_filter_graph(struct anim *anim, AVPicture *dst, const AVPicture *src,
+                                enum AVPixelFormat pixfmt, int width, int height) {
+    int res;
+
+    if (!anim->filter_graph || width != anim->last_width ||
+        height != anim->last_height || pixfmt != anim->last_pixfmt) {
+        res = init_filter_graph(anim, pixfmt, width, height);
+        if (res < 0)
+            return res;
+    }
+
+    memcpy(anim->filter_frame->data, src->data, sizeof(src->data));
+    memcpy(anim->filter_frame->linesize, src->linesize, sizeof(src->linesize));
+    anim->filter_frame->width = width;
+    anim->filter_frame->height = height;
+    anim->filter_frame->format = pixfmt;
+    res = av_buffersrc_add_frame(anim->buffersrc_ctx, anim->filter_frame);
+    if (res < 0)
+        return res;
+    res = av_buffersink_get_frame(anim->buffersink_ctx, anim->filter_frame);
+    if (res < 0)
+        return res;
+    av_picture_copy(dst, (const AVPicture *) anim->filter_frame, pixfmt, width, height);
+    av_frame_unref(anim->filter_frame);
+
+    return 0;
+}
+
 /* postprocess the image in anim->pFrame and do color conversion
  * and deinterlacing stuff.
  *
@@ -677,7 +749,8 @@

 	if (anim->ib_flags & IB_animdeinterlace) {
-		if (avpicture_deinterlace(
+		if (process_filter_graph(
+		        anim,
 		        (AVPicture *)
 		        anim->pFrameDeinterlaced,
 		        (const AVPicture *)
@@ -695,7 +768,7 @@

 	avpicture_fill((AVPicture *) anim->pFrameRGB,
 	               (unsigned char *) ibuf->rect,
-	               PIX_FMT_RGBA, anim->x, anim->y);
+	               AV_PIX_FMT_RGBA, anim->x, anim->y);

 	if (ENDIAN_ORDER == B_ENDIAN) {
 		int *dstStride   = anim->pFrameRGB->linesize;
@@ -1138,16 +1211,18 @@
 {
 	if (anim == NULL) return;

+	delete_filter_graph(anim);
+
 	if (anim->pCodecCtx) {
 		avcodec_close(anim->pCodecCtx);
 		avformat_close_input(&anim->pFormatCtx);
-		av_free(anim->pFrameRGB);
-		av_free(anim->pFrame);
+		av_frame_free(&anim->pFrameRGB);
+		av_frame_free(&anim->pFrame);

 		if (anim->ib_flags & IB_animdeinterlace) {
 			MEM_freeN(anim->pFrameDeinterlaced->data[0]);
 		}
-		av_free(anim->pFrameDeinterlaced);
+		av_frame_free(&anim->pFrameDeinterlaced);
 		sws_freeContext(anim->img_convert_ctx);
 		IMB_freeImBuf(anim->last_frame);
 		if (anim->next_packet.stream_index != -1) {
diff -ur blender-2.76/source/blender/imbuf/intern/IMB_anim.h blender-2.76.ffmpeg/source/blender/imbuf/intern/IMB_anim.h
--- blender-2.76/source/blender/imbuf/intern/IMB_anim.h	2015-10-07 02:09:33.000000000 +0200
+++ blender-2.76.ffmpeg/source/blender/imbuf/intern/IMB_anim.h	2016-04-16 15:31:11.527370628 +0200
@@ -76,6 +76,9 @@
 #  include <libavformat/avformat.h>
 #  include <libavcodec/avcodec.h>
 #  include <libswscale/swscale.h>
+#  include <libavfilter/avfilter.h>
+#  include <libavfilter/buffersrc.h>
+#  include <libavfilter/buffersink.h>
 #endif

 #ifdef WITH_REDCODE
@@ -175,6 +178,14 @@
 	int64_t last_pts;
 	int64_t next_pts;
 	AVPacket next_packet;
+
+	AVFilterContext *buffersink_ctx;
+	AVFilterContext *buffersrc_ctx;
+	AVFilterGraph *filter_graph;
+	AVFrame *filter_frame;
+	int last_width;
+	int last_height;
+	enum AVPixelFormat last_pixfmt;
 #endif

 #ifdef WITH_REDCODE
diff -ur blender-2.76/source/blender/imbuf/intern/indexer.c blender-2.76.ffmpeg/source/blender/imbuf/intern/indexer.c
--- blender-2.76/source/blender/imbuf/intern/indexer.c	2015-10-07 02:09:33.000000000 +0200
+++ blender-2.76.ffmpeg/source/blender/imbuf/intern/indexer.c	2016-04-16 15:31:11.527370628 +0200
@@ -519,7 +519,7 @@
 		rv->c->pix_fmt = rv->codec->pix_fmts[0];
 	}
 	else {
-		rv->c->pix_fmt = PIX_FMT_YUVJ420P;
+		rv->c->pix_fmt = AV_PIX_FMT_YUVJ420P;
 	}

 	rv->c->sample_aspect_ratio =
@@ -554,7 +554,7 @@
 	if (st->codec->width != width || st->codec->height != height ||
 	    st->codec->pix_fmt != rv->c->pix_fmt)
 	{
-		rv->frame = avcodec_alloc_frame();
+		rv->frame = av_frame_alloc();
 		avpicture_fill((AVPicture *) rv->frame,
 		               MEM_mallocN(avpicture_get_size(
 		                               rv->c->pix_fmt,
@@ -675,7 +675,7 @@
 		sws_freeContext(ctx->sws_ctx);

 		MEM_freeN(ctx->frame->data[0]);
-		av_free(ctx->frame);
+		av_frame_free(&ctx->frame);
 	}

 	get_proxy_filename(ctx->anim, ctx->proxy_size,
@@ -905,7 +905,7 @@

 	memset(&next_packet, 0, sizeof(AVPacket));

-	in_frame = avcodec_alloc_frame();
+	in_frame = av_frame_alloc();

 	stream_size = avio_size(context->iFormatCtx->pb);

@@ -973,7 +973,7 @@
 		} while (frame_finished);
 	}

-	av_free(in_frame);
+	av_frame_free(&in_frame);

 	return 1;
 }
diff -ur blender-2.76/source/gameengine/VideoTexture/VideoFFmpeg.cpp blender-2.76.ffmpeg/source/gameengine/VideoTexture/VideoFFmpeg.cpp
--- blender-2.76/source/gameengine/VideoTexture/VideoFFmpeg.cpp	2015-10-12 00:58:22.000000000 +0200
+++ blender-2.76.ffmpeg/source/gameengine/VideoTexture/VideoFFmpeg.cpp	2016-04-16 15:31:11.527370628 +0200
@@ -79,11 +79,16 @@
 	BLI_listbase_clear(&m_frameCacheBase);
 	BLI_listbase_clear(&m_packetCacheFree);
 	BLI_listbase_clear(&m_packetCacheBase);
+	last_width = -1;
+	last_height = -1;
+	last_pixfmt = AV_PIX_FMT_NONE;
+
 }

 // destructor
 VideoFFmpeg::~VideoFFmpeg ()
 {
+	delete_filter_graph(this);
 }

 void VideoFFmpeg::refresh(void)
@@ -140,23 +145,23 @@
 AVFrame	*VideoFFmpeg::allocFrameRGB()
 {
 	AVFrame *frame;
-	frame = avcodec_alloc_frame();
+	frame = av_frame_alloc();
 	if (m_format == RGBA32)
 	{
 		avpicture_fill((AVPicture*)frame,
 			(uint8_t*)MEM_callocN(avpicture_get_size(
-				PIX_FMT_RGBA,
+				AV_PIX_FMT_RGBA,
 				m_codecCtx->width, m_codecCtx->height),
 				"ffmpeg rgba"),
-			PIX_FMT_RGBA, m_codecCtx->width, m_codecCtx->height);
+			AV_PIX_FMT_RGBA, m_codecCtx->width, m_codecCtx->height);
 	} else
 	{
 		avpicture_fill((AVPicture*)frame,
 			(uint8_t*)MEM_callocN(avpicture_get_size(
-				PIX_FMT_RGB24,
+				AV_PIX_FMT_RGB24,
 				m_codecCtx->width, m_codecCtx->height),
 				"ffmpeg rgb"),
-			PIX_FMT_RGB24, m_codecCtx->width, m_codecCtx->height);
+			AV_PIX_FMT_RGB24, m_codecCtx->width, m_codecCtx->height);
 	}
 	return frame;
 }
@@ -236,8 +241,8 @@
 	m_codecCtx = codecCtx;
 	m_formatCtx = formatCtx;
 	m_videoStream = videoStream;
-	m_frame = avcodec_alloc_frame();
-	m_frameDeinterlaced = avcodec_alloc_frame();
+	m_frame = av_frame_alloc();
+	m_frameDeinterlaced = av_frame_alloc();

 	// allocate buffer if deinterlacing is required
 	avpicture_fill((AVPicture*)m_frameDeinterlaced,
@@ -248,10 +253,10 @@
 		m_codecCtx->pix_fmt, m_codecCtx->width, m_codecCtx->height);

 	// check if the pixel format supports Alpha
-	if (m_codecCtx->pix_fmt == PIX_FMT_RGB32 ||
-		m_codecCtx->pix_fmt == PIX_FMT_BGR32 ||
-		m_codecCtx->pix_fmt == PIX_FMT_RGB32_1 ||
-		m_codecCtx->pix_fmt == PIX_FMT_BGR32_1)
+	if (m_codecCtx->pix_fmt == AV_PIX_FMT_RGB32 ||
+		m_codecCtx->pix_fmt == AV_PIX_FMT_BGR32 ||
+		m_codecCtx->pix_fmt == AV_PIX_FMT_RGB32_1 ||
+		m_codecCtx->pix_fmt == AV_PIX_FMT_BGR32_1)
 	{
 		// allocate buffer to store final decoded frame
 		m_format = RGBA32;
@@ -262,7 +267,7 @@
 			m_codecCtx->pix_fmt,
 			m_codecCtx->width,
 			m_codecCtx->height,
-			PIX_FMT_RGBA,
+			AV_PIX_FMT_RGBA,
 			SWS_FAST_BILINEAR,
 			NULL, NULL, NULL);
 	} else
@@ -276,7 +281,7 @@
 			m_codecCtx->pix_fmt,
 			m_codecCtx->width,
 			m_codecCtx->height,
-			PIX_FMT_RGB24,
+			AV_PIX_FMT_RGB24,
 			SWS_FAST_BILINEAR,
 			NULL, NULL, NULL);
 	}
@@ -293,13 +298,81 @@
 		av_free(m_frameDeinterlaced);
 		m_frameDeinterlaced = NULL;
 		MEM_freeN(m_frameRGB->data[0]);
-		av_free(m_frameRGB);
+		av_frame_free(&m_frameRGB);
 		m_frameRGB = NULL;
 		return -1;
 	}
 	return 0;
 }

+void VideoFFmpeg::delete_filter_graph(VideoFFmpeg* video) {
+    if (video->filter_graph) {
+        av_frame_free(&video->filter_frame);
+        avfilter_graph_free(&video->filter_graph);
+    }
+}
+
+int VideoFFmpeg::init_filter_graph(VideoFFmpeg* video, enum AVPixelFormat pixfmt, int width, int height) {
+    AVFilterInOut *inputs = NULL, *outputs = NULL;
+    char args[512];
+    int res;
+
+    delete_filter_graph(video);
+    video->filter_graph = avfilter_graph_alloc();
+    snprintf(args, sizeof(args),
+             "buffer=video_size=%dx%d:pix_fmt=%d:time_base=1/1:pixel_aspect=0/1[in];"
+             "[in]yadif[out];"
+             "[out]buffersink",
+             width, height, pixfmt);
+    res = avfilter_graph_parse2(video->filter_graph, args, &inputs, &outputs);
+    if (res < 0)
+        return res;
+    if(inputs || outputs)
+        return -1;
+    res = avfilter_graph_config(video->filter_graph, NULL);
+    if (res < 0)
+        return res;
+
+    video->buffersrc_ctx = avfilter_graph_get_filter(video->filter_graph, "Parsed_buffer_0");
+    video->buffersink_ctx = avfilter_graph_get_filter(video->filter_graph, "Parsed_buffersink_2");
+    if (!video->buffersrc_ctx || !video->buffersink_ctx)
+        return -1;
+    video->filter_frame = av_frame_alloc();
+    video->last_width = width;
+    video->last_height = height;
+    video->last_pixfmt = pixfmt;
+
+    return 0;
+}
+
+int VideoFFmpeg::process_filter_graph(VideoFFmpeg* video, AVPicture *dst, const AVPicture *src,
+                                      enum AVPixelFormat pixfmt, int width, int height) {
+    int res;
+
+    if (!video->filter_graph || width != video->last_width ||
+        height != video->last_height || pixfmt != video->last_pixfmt) {
+        res = init_filter_graph(video, pixfmt, width, height);
+        if (res < 0)
+            return res;
+    }
+
+    memcpy(video->filter_frame->data, src->data, sizeof(src->data));
+    memcpy(video->filter_frame->linesize, src->linesize, sizeof(src->linesize));
+    video->filter_frame->width = width;
+    video->filter_frame->height = height;
+    video->filter_frame->format = pixfmt;
+    res = av_buffersrc_add_frame(video->buffersrc_ctx, video->filter_frame);
+    if (res < 0)
+        return res;
+    res = av_buffersink_get_frame(video->buffersink_ctx, video->filter_frame);
+    if (res < 0)
+        return res;
+    av_picture_copy(dst, (const AVPicture *) video->filter_frame, pixfmt, width, height);
+    av_frame_unref(video->filter_frame);
+
+    return 0;
+}
+
 /*
  * This thread is used to load video frame asynchronously.
  * It provides a frame caching service.
@@ -392,7 +465,7 @@
 					{
 						if (video->m_deinterlace)
 						{
-							if (avpicture_deinterlace(
+							if (process_filter_graph(video,
 								(AVPicture*) video->m_frameDeinterlaced,
 								(const AVPicture*) video->m_frame,
 								video->m_codecCtx->pix_fmt,
@@ -486,14 +559,14 @@
 		{
 			BLI_remlink(&m_frameCacheBase, frame);
 			MEM_freeN(frame->frame->data[0]);
-			av_free(frame->frame);
+			av_frame_free(&frame->frame);
 			delete frame;
 		}
 		while ((frame = (CacheFrame *)m_frameCacheFree.first) != NULL)
 		{
 			BLI_remlink(&m_frameCacheFree, frame);
 			MEM_freeN(frame->frame->data[0]);
-			av_free(frame->frame);
+			av_frame_free(&frame->frame);
 			delete frame;
 		}
 		while ((packet = (CachePacket *)m_packetCacheBase.first) != NULL)
@@ -1057,7 +1130,7 @@

 				if (m_deinterlace)
 				{
-					if (avpicture_deinterlace(
+					if (process_filter_graph(this,
 						(AVPicture*) m_frameDeinterlaced,
 						(const AVPicture*) m_frame,
 						m_codecCtx->pix_fmt,
diff -ur blender-2.76/source/gameengine/VideoTexture/VideoFFmpeg.h blender-2.76.ffmpeg/source/gameengine/VideoTexture/VideoFFmpeg.h
--- blender-2.76/source/gameengine/VideoTexture/VideoFFmpeg.h	2015-10-10 10:20:56.000000000 +0200
+++ blender-2.76.ffmpeg/source/gameengine/VideoTexture/VideoFFmpeg.h	2016-04-16 15:31:11.527370628 +0200
@@ -39,6 +39,9 @@
 extern "C" {
 #include <pthread.h>
 #include "ffmpeg_compat.h"
+#include <libavfilter/avfilter.h>
+#include <libavfilter/buffersrc.h>
+#include <libavfilter/buffersink.h>
 #include "DNA_listBase.h"
 #include "BLI_threads.h"
 #include "BLI_blenlib.h"
@@ -207,6 +210,18 @@

 	AVFrame	*allocFrameRGB();
 	static void *cacheThread(void *);
+
+	AVFilterContext *buffersink_ctx;
+	AVFilterContext *buffersrc_ctx;
+	AVFilterGraph *filter_graph;
+	AVFrame *filter_frame;
+	int last_width;
+	int last_height;
+	enum AVPixelFormat last_pixfmt;
+
+	static void delete_filter_graph(VideoFFmpeg* video);
+	static int init_filter_graph(VideoFFmpeg* video, enum AVPixelFormat pixfmt, int width, int height);
+	static int process_filter_graph(VideoFFmpeg* video, AVPicture *dst, const AVPicture *src, enum AVPixelFormat pixfmt, int width, int height);
 };

 inline VideoFFmpeg *getFFmpeg(PyImage *self)


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>blender</Name>
        <Homepage>http://www.blender.org/</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <Icon>blender</Icon>
        <IsA>app:gui</IsA>
        <Summary>3D modeling, animation, rendering and post-production application</Summary>
        <Description>blender is the essential software solution you need for 3D, from modeling, animation, rendering and post-production to interactive creation and playback.</Description>
        <Archive sha1sum="6ab865e09a826b93d70302114c189403938d1692" type="targz">http://download.blender.org/source/blender-2.79.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>boost-devel</Dependency>
            <Dependency>cmake</Dependency> -->
            <Dependency>ffmpeg-devel</Dependency>
            <Dependency>fftw3-devel</Dependency>
            <Dependency>freetype-devel</Dependency>
            <Dependency versionFrom="2.0.0">glew-devel</Dependency>
            <Dependency>icu4c-devel</Dependency>
            <Dependency>ilmbase-devel</Dependency>
            <Dependency>jack-audio-connection-kit-devel</Dependency>
            <Dependency>libdc1394-devel</Dependency>
            <Dependency>libgomp</Dependency>
            <Dependency>libjpeg-turbo-devel</Dependency>
            <Dependency>libpng-devel</Dependency>
            <Dependency>libsdl-devel</Dependency>
            <Dependency>libsndfile-devel</Dependency>
            <Dependency>libspnav-devel</Dependency>
            <Dependency>libX11-devel</Dependency>
            <Dependency>libXi-devel</Dependency>
            <Dependency>libXxf86vm-devel</Dependency>
            <Dependency>mesa-devel</Dependency>
            <Dependency>mesa-glu-devel</Dependency>
            <Dependency>openal-devel</Dependency>
            <Dependency>openexr-devel</Dependency>
            <Dependency>openjpeg-devel</Dependency>
            <Dependency>python3-devel</Dependency>
            <Dependency>tiff-devel</Dependency>
            <Dependency>openimageio-devel</Dependency>
            <Dependency>webp-devel</Dependency>
            <Dependency>zlib-devel</Dependency>
            <Dependency>python3-requests</Dependency>
        </BuildDependencies>
        <Patches>
            <!--<Patch level="1">blender-2.67b-rna.patch</Patch>-->
            <!--<Patch level="1">06-blender-2.68-fix-install-rules.patch</Patch>
            <Patch level="1">ffmpeg3.patch</Patch>-->
        </Patches>
    </Source>

    <Package>
        <Name>blender</Name>
        <RuntimeDependencies>
            <Dependency>boost</Dependency>
            <Dependency>ffmpeg</Dependency>
            <Dependency>fftw3</Dependency>
            <Dependency>freetype</Dependency>
            <Dependency versionFrom="2.0.0">glew</Dependency>
            <Dependency>ilmbase</Dependency>
            <Dependency>jack-audio-connection-kit</Dependency>
            <Dependency>libgcc</Dependency>
            <Dependency>libdc1394</Dependency>
            <Dependency>libgomp</Dependency>
            <Dependency>libjpeg-turbo</Dependency>
            <Dependency>libpng</Dependency>
            <Dependency>libsdl</Dependency>
            <Dependency>libsndfile</Dependency>
            <Dependency>libspnav</Dependency>
            <Dependency>libX11</Dependency>
            <Dependency>libXi</Dependency>
            <Dependency>libXxf86vm</Dependency>
            <Dependency>mesa</Dependency>
            <Dependency>mesa-glu</Dependency>
            <Dependency>openal</Dependency>
            <Dependency>openexr-libs</Dependency>
            <Dependency>openjpeg</Dependency>
            <Dependency>python3</Dependency>
            <Dependency>tiff</Dependency>
            <Dependency>openimageio</Dependency>
            <Dependency>zlib</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="data">/usr/lib/python3.3/</Path>
            <Path fileType="data">/usr/share/blender/</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="data">/usr/share/pixmaps/</Path>
            <Path fileType="data">/usr/share/man/man1</Path>
            <Path fileType="data">/usr/share/icons</Path>
            <Path fileType="data">/usr/share/applications</Path>
            <Path fileType="data">/usr/share/mime</Path>
            <Path fileType="localedata">/usr/share/locale</Path>
        </Files>
        <AdditionalFiles>
            <AdditionalFile owner="root" permission="0644" target="/usr/share/mime/packages/blender.xml">blender.xml</AdditionalFile>
            <AdditionalFile owner="root" permission="0755" target="/usr/bin/blender">blender-wrapper</AdditionalFile>
            <AdditionalFile owner="root" permission="0755" target="/usr/share/applications/blender.desktop">blender.desktop</AdditionalFile>
        </AdditionalFiles>
    </Package>

    <History>
        <Update release="6">
            <Date>2018-02-14</Date>
            <Version>2.79</Version>
            <Comment>Version bump</Comment>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Update>
        <Update release="5">
            <Date>2017-05-28</Date>
            <Version>2.78c</Version>
            <Comment>Version bump</Comment>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Update>
        <Update release="4">
            <Date>2017-03-17</Date>
            <Version>2.78</Version>
            <Comment>Version bump</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2016-06-15</Date>
            <Version>2.75a</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-15</Date>
            <Version>2.75a</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
       <Update release="1">
            <Date>2016-05-08</Date>
            <Version>2.75a</Version>
            <Comment>First release</Comment>
            <Name>Ali Algul</Name>
            <Email>alialgul@pisilinux.org</Email>
      </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>blender</Name>
        <Summary xml:lang="tr">3D animasyon sistemi</Summary>
        <Description xml:lang="tr">Blender 3B modelleme ve animasyon yapmaya yarayan açık kaynak bir yazılımdır.</Description>
    </Source>
</PISI>


code:
<PISI>
    <Name>multimedia.editor</Name>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt

from pisi.actionsapi import shelltools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get

WorkDir = "dvdauthor"

def setup():
    # disable ImageMagick, use GraphicsMagick
    shelltools.export("MAGICKCONFIG", "/bin/true")
    autotools.configure("--disable-rpath \
                         --enable-default-video-format=NTSC")

def build():
    autotools.make()

def install():
    autotools.rawInstall("DESTDIR=%s" % get.installDIR())

    pisitools.dodoc("TODO", "README", "ChangeLog", "NEWS")


code:
diff --git a/src/compat.h b/src/compat.h
index 126dcd7..93de081 100644
--- a/src/compat.h
+++ b/src/compat.h
@@ -1,6 +1,8 @@
 // basic headers
 #define _GNU_SOURCE /* really just for strndup */

+#include "config.h"
+
 #ifdef HAVE_STDBOOL_H
 # include <stdbool.h>
 #else


code:
Description: Fix for #807657 -- missing include "config.h"
Author: Tobias Frost <tobi@frost.de>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=807657
Last-Update: 2016-01-07
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/compat.h
+++ b/src/compat.h
@@ -1,6 +1,8 @@
 // basic headers
 #define _GNU_SOURCE /* really just for strndup */

+#include "config.h"
+
 #ifdef HAVE_STDBOOL_H
 # include <stdbool.h>
 #else
@@ -17,6 +19,7 @@
 # define __bool_true_false_are_defined 1
 #endif

+
 #include <stdio.h>

 #ifdef HAVE_STDLIB_H


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>dvdauthor</Name>
        <Homepage>http://dvdauthor.sourceforge.net/</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <IsA>app:console</IsA>
        <Summary>A simple DVD tool</Summary>
        <Description>dvdauthor is a set of simple tools to help you author a DVD.</Description>
        <Archive sha1sum="a9636d165bf546e3e2b25b7397c33dbfa2895e6a" type="targz">https://sourceforge.net/projects/dvdauthor/files/dvdauthor/0.7.1/dvdauthor-0.7.1.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>fribidi-devel</Dependency>
            <Dependency>libdvdread-devel</Dependency>
            <Dependency>imagemagick-devel</Dependency>
            <Dependency>GraphicsMagick-devel</Dependency>
            <Dependency>fontconfig-devel</Dependency>
            <Dependency>freetype-devel</Dependency>
            <Dependency>libpng-devel</Dependency>
            <Dependency>libxml2-devel</Dependency>
        </BuildDependencies>
        <Patches>
            <Patch level="1">dvdauthor-fix-build.patch</Patch>
        </Patches>
    </Source>

    <Package>
        <Name>dvdauthor</Name>
        <RuntimeDependencies>
            <Dependency>libpng</Dependency>
            <Dependency>fribidi</Dependency>
            <Dependency>libxml2</Dependency>
            <Dependency>freetype</Dependency>
            <Dependency>fontconfig</Dependency>
            <Dependency>libdvdread</Dependency>
            <Dependency>GraphicsMagick</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="library">/usr/lib</Path>
            <Path fileType="man">/usr/share/man</Path>
            <Path fileType="data">/usr/share</Path>
        </Files>
    </Package>

    <History>
        <Update release="2">
            <Date>2017-02-03</Date>
            <Version>0.7.1</Version>
            <Comment>Rebuild for new Toolchains.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-07-09</Date>
            <Version>0.7.1</Version>
            <Comment>First release</Comment>
            <Name>Osman Erkan</Name>
            <Email>osman.erkan@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>dvdauthor</Name>
        <Summary xml:lang="tr">Basit bir DVD yaratma aracı</Summary>
        <Description xml:lang="tr">dvdauthor DVD oynatıcıya takıldığında sorunsuzca oynatılabilecek bir DVD üretebilen bir uygulamadır.</Description>
    </Source>
</PISI>


code:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt

from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import libtools
from pisi.actionsapi import get

def setup():
    libtools.libtoolize("-fc")
    autotools.aclocal()
    autotools.autoconf()
    autotools.automake("--add-missing --copy")
    autotools.configure()

def build():
    autotools.make()

def install():
    autotools.rawInstall("DESTDIR=%s" % get.installDIR())

    pisitools.dodoc("AUTHORS", "ChangeLog", "README")


code:
This patch was first introduced in version 3.8.3-3

It fixes http://bugs.debian.org/208672
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -74,6 +74,8 @@

 if ID3_NEEDZLIB
 LDADD        = $(top_builddir)/zlib/src/libz.la
+else
+libid3_la_LIBADD  = -lz
 endif

 libid3_la_LDFLAGS = \


code:
Create a local m4 subdirectory
--- a/Makefile.am
+++ b/Makefile.am
@@ -12,6 +12,8 @@
 # require automake 1.5
 AUTOMAKE_OPTIONS = 1.5

+ACLOCAL_AMFLAGS = -I m4
+
 EXTRA_DIST =                    \
         HISTORY                 \
         config.h.win32          \


code:
This patch imports the proper C++ headers
--- a/include/id3/id3lib_strings.h
+++ b/include/id3/id3lib_strings.h
@@ -30,6 +30,7 @@
 #define _ID3LIB_STRINGS_H_

 #include <string>
+#include <cstring>

 #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
 namespace std
--- a/include/id3/writers.h
+++ b/include/id3/writers.h
@@ -30,7 +30,7 @@

 #include "id3/writer.h"
 #include "id3/id3lib_streams.h"
-//#include <string.h>
+#include <cstring>

 class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer
 {


code:
This patch fixes some function headers in demo code used during 'make check'
--- a/examples/demo_info.cpp
+++ b/examples/demo_info.cpp
@@ -309,7 +309,7 @@

 #define DEBUG

-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
 {
   ID3D_INIT_DOUT();

--- a/examples/demo_convert.cpp
+++ b/examples/demo_convert.cpp
@@ -84,7 +84,7 @@
   }
 }

-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
 {
   flags_t ulFlag = ID3TT_ALL;
   gengetopt_args_info args;
--- a/examples/demo_copy.cpp
+++ b/examples/demo_copy.cpp
@@ -81,7 +81,7 @@
   }
 }

-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
 {
   int ulFlag = ID3TT_ID3;
   ID3D_INIT_DOUT();
--- a/examples/demo_tag.cpp
+++ b/examples/demo_tag.cpp
@@ -46,7 +46,7 @@
     os << "v2";
 }

-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
 {
   int ulFlag = ID3TT_ID3;
   ID3D_INIT_DOUT();


code:
This patch adds debian-made man pages
--- /dev/null
+++ b/doc/man/id3info.1
@@ -0,0 +1,31 @@
+.TH ID3INFO 1 "May 2000" local "User Command"
+.SH NAME
+id3info \- Display id3 tag information.
+.SH SYNOPSIS
+.B id3info
+.RB [
+.I OPTION
+.RB ]
+.RB [
+.I FILE
+.RB ]
+.br
+.SH DESCRIPTION
+.B Id3info
+displays both the id3v1 and id3v2 tag information for a file.
+Id3info will not differentiate between the two types of tags.
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Display help and exit
+.TP
+.B \-v, \-\-version
+Display version information and exit
+.SH SEE ALSO
+id3convert(1), id3tag(1), id3v2(1)
+.SH AUTHOR
+.B id3lib
+was originally designed and implemented by Dirk Mahoney and is
+maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
+Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.
+
--- /dev/null
+++ b/doc/man/id3tag.1
@@ -0,0 +1,69 @@
+.TH ID3TAG 1 "May 2000" local "User Command"
+.SH NAME
+id3tag \- Tags an mp3 file with id3v1 and/or id3v2 tags.
+.SH SYNOPSIS
+.B id3tag
+.RB [
+.I OPTION
+.RB ] ...
+.RB [
+.I FILE
+.RB ] ...
+.br
+.SH DESCRIPTION
+.B Id3tag
+will render both types of tag by default.  Only the last
+tag type indicated in the option list will be used.  Non-
+rendered will remain unchanged in the original file.  Will
+also parse and convert Lyrics3 v2.0 frames, but will not
+render them.
+
+.SH OPTIONS
+.TP
+.B \-1, \-\-v1tag
+Render only the id3v1 tag
+.TP
+.B \-2, \-\-v2tag
+Render only the id3v2 tag
+.TP
+.B \-h, \-\-help
+Display help and exit
+.TP
+.B \-v, \-\-version
+Display version information and exit
+.TP
+.B \-a, \-\-artist ARTIST
+Set the artist information
+.TP
+.B \-s, \-\-song SONG
+Set the song title information
+.TP
+.B \-A, \-\-album ALBUM
+Set the album title information
+.TP
+.B \-c, \-\-comment COMMENT
+Set the comment information
+.TP
+.B \-C, \-\-desc DESCRIPTION
+Set the comment description
+.TP
+.B \-g, \-\-genre num
+Set the genre number
+.TP
+.B \-y, \-\-year num
+Set the year
+.TP
+.B \-t, \-\-track num
+Set the track number
+.TP
+.B \-T, \-\-total num
+Set the total number of tracks on the album
+
+.SH SEE ALSO
+id3convert(1), id3info(1), id3v2(1)
+.SH AUTHOR
+.B id3lib
+was originally designed and implemented by Dirk Mahoney and is
+maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
+Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.
+
--- /dev/null
+++ b/doc/man/id3convert.1
@@ -0,0 +1,47 @@
+.TH ID3CONVERT 1 "May 2000" local "User Command"
+.SH NAME
+id3convert \- Converts between id3v1 and id3v2 tags of an mp3 file.
+.SH SYNOPSIS
+.B id3convert
+.RB [
+.I OPTION
+.RB ]
+.RB [
+.I FILE
+.RB ]
+.br
+.SH DESCRIPTION
+.B Id3convert
+converts between id3v1 and id3v2 tags of an mp3 file. Id3convert will render
+both types of tag by default. Only the last tag type indicated in the option
+list will be used. Non-rendered tags will remain unchanged in the original
+file. Id3convert will also parse and convert Lyrics3 v2.0 frames, but will
+not render them.
+
+.SH OPTIONS
+.TP
+.B \-1, \-\-v1tag
+Render only the id3v1 tag
+.TP
+.B \-2, \-\-v2tag
+Render only the id3v2 tag
+.TP
+.B \-s, \-\-strip
+Strip, rather than render, the tags
+.TP
+.B \-p, \-\-padding
+Use padding in the tag
+.TP
+.B \-h, \-\-help
+Display help and exit
+.TP
+.B \-v, \-\-version
+Display version information and exit
+
+.SH SEE ALSO
+id3tag(1), id3info(1), id3v2(1)
+.SH AUTHOR
+.B id3lib
+was originally designed and implemented by Dirk Mahoney and is
+maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
+Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.
--- /dev/null
+++ b/doc/man/id3cp.1
@@ -0,0 +1,38 @@
+.TH ID3CP 1 "July 2001" local "User Command"
+.SH NAME
+id3cp \- Copies tags from one file to another.
+.SH SYNOPSIS
+.B id3cp
+.RB [
+.I OPTION
+.RB ] ...
+.RB [
+.I SOURCE
+.RB ]
+.RB [
+.I DEST
+.RB ]
+.br
+.SH DESCRIPTION
+.B Id3cp
+copies tags from SOURCE to DEST.
+.SH OPTIONS
+.TP
+.B \-1, \-\-v1tag
+Render only the id3v1 tag
+.TP
+.B \-2, \-\-v2tag
+Render only the id3v2 tag
+.TP
+.B \-h, \-\-help
+Display help and exit
+.TP
+.B \-v, \-\-version
+Display version information and exit
+.SH SEE ALSO
+id3convert(1), id3info(1), id3v2(1)
+.SH AUTHOR
+.B id3lib
+was originally designed and implemented by Dirk Mahoney and is
+maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
+Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.


code:
Patch from 'Spoon' to fix issues with writing certain unicode characters
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-02-17  Jerome Couderc
+
+    * Patch from Spoon to fix UTF-16 writing bug
+      http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
+
 2003-03-02 Sunday 17:38   Thijmen Klok <thijmen@id3lib.org>

 	* THANKS (1.20): added more people
--- a/src/io_helpers.cpp
+++ b/src/io_helpers.cpp
@@ -363,11 +363,22 @@
     // Write the BOM: 0xFEFF
     unicode_t BOM = 0xFEFF;
     writer.writeChars((const unsigned char*) &BOM, 2);
+    // Patch from Spoon : 2004-08-25 14:17
+    //   http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
+    // Wrong code
+    //for (size_t i = 0; i < size; i += 2)
+    //{
+    //  unicode_t ch = (data[i] << 8) | data[i+1];
+    //  writer.writeChars((const unsigned char*) &ch, 2);
+    //}
+    // Right code
+    unsigned char *pdata = (unsigned char *) data.c_str();
     for (size_t i = 0; i < size; i += 2)
     {
-      unicode_t ch = (data[i] << 8) | data[i+1];
+      unicode_t ch = (pdata[i] << 8) | pdata[i+1];
       writer.writeChars((const unsigned char*) &ch, 2);
     }
+    // End patch
   }
   return writer.getCur() - beg;
 }


code:
This patch fixes an issues where temporary files were created in an insecure
way.

It was first intruduced in version 3.8.3-7 and fixes
http://bugs.debian.org/438540
--- a/src/tag_file.cpp
+++ b/src/tag_file.cpp
@@ -242,8 +242,8 @@
     strcpy(sTempFile, filename.c_str());
     strcat(sTempFile, sTmpSuffix.c_str());

-#if ((defined(__GNUC__) && __GNUC__ >= 3  ) || !defined(HAVE_MKSTEMP))
-    // This section is for Windows folk && gcc 3.x folk
+#if !defined(HAVE_MKSTEMP)
+    // This section is for Windows folk
     fstream tmpOut;
     createFile(sTempFile, tmpOut);

@@ -257,7 +257,7 @@
       tmpOut.write((char *)tmpBuffer, nBytes);
     }

-#else //((defined(__GNUC__) && __GNUC__ >= 3  ) || !defined(HAVE_MKSTEMP))
+#else //!defined(HAVE_MKSTEMP)

     // else we gotta make a temp file, copy the tag into it, copy the
     // rest of the old file after the tag, delete the old file, rename
@@ -270,7 +270,7 @@
       //ID3_THROW_DESC(ID3E_NoFile, "couldn't open temp file");
     }

-    ofstream tmpOut(fd);
+    ofstream tmpOut(sTempFile);
     if (!tmpOut)
     {
       tmpOut.close();
@@ -285,14 +285,14 @@
     uchar tmpBuffer[BUFSIZ];
     while (file)
     {
-      file.read(tmpBuffer, BUFSIZ);
+      file.read((char *)tmpBuffer, BUFSIZ);
       size_t nBytes = file.gcount();
-      tmpOut.write(tmpBuffer, nBytes);
+      tmpOut.write((char *)tmpBuffer, nBytes);
     }

     close(fd); //closes the file

-#endif ////((defined(__GNUC__) && __GNUC__ >= 3  ) || !defined(HAVE_MKSTEMP))
+#endif ////!defined(HAVE_MKSTEMP)

     tmpOut.close();
     file.close();


code:
We don't actually need iomanip.h
--- a/configure.in
+++ b/configure.in
@@ -227,7 +227,6 @@
 )
 AC_CHECK_HEADERS(               \
   string                        \
-  iomanip.h                     \
   ,,AC_MSG_ERROR([Missing a vital header file for id3lib])
 )


code:
This patch adds C wrapper functions for field encoding.

It was first introduced in version 3.8.3-8 and fixes
http://bugs.debian.org/281292
--- a/include/id3.h
+++ b/include/id3.h
@@ -104,6 +104,9 @@
   ID3_C_EXPORT void                 CCONV ID3Field_GetBINARY          (const ID3Field *field, uchar *buffer, size_t buffLength);
   ID3_C_EXPORT void                 CCONV ID3Field_FromFile           (ID3Field *field, const char *fileName);
   ID3_C_EXPORT void                 CCONV ID3Field_ToFile             (const ID3Field *field, const char *fileName);
+  ID3_C_EXPORT bool                 CCONV ID3Field_SetEncoding        (ID3Field *field, ID3_TextEnc enc);
+  ID3_C_EXPORT ID3_TextEnc          CCONV ID3Field_GetEncoding        (const ID3Field *field);
+  ID3_C_EXPORT bool                 CCONV ID3Field_IsEncodable        (const ID3Field *field);

   /* field-info wrappers */
   ID3_C_EXPORT char*                CCONV ID3FrameInfo_ShortName     (ID3_FrameID frameid);
--- a/src/c_wrapper.cpp
+++ b/src/c_wrapper.cpp
@@ -681,6 +681,39 @@
     }
   }

+  ID3_C_EXPORT bool CCONV
+  ID3Field_SetEncoding(ID3Field *field, ID3_TextEnc enc)
+  {
+    bool changed = false;
+    if (field)
+    {
+      ID3_CATCH(changed = reinterpret_cast<ID3_Field *>(field)->SetEncoding(enc));
+    }
+    return changed;
+  }
+
+  ID3_C_EXPORT ID3_TextEnc CCONV
+  ID3Field_GetEncoding(const ID3Field *field)
+  {
+    ID3_TextEnc enc = ID3TE_NONE;
+    if (field)
+    {
+      ID3_CATCH(enc = reinterpret_cast<const ID3_Field *>(field)->GetEncoding());
+    }
+    return enc;
+  }
+
+  ID3_C_EXPORT bool CCONV
+  ID3Field_IsEncodable(const ID3Field *field)
+  {
+    bool isEncodable = false;
+    if (field)
+    {
+      ID3_CATCH(isEncodable = reinterpret_cast<const ID3_Field *>(field)->IsEncodable());
+    }
+    return isEncodable;
+  }
+
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */


code:
This patch fixes some function headers and imports in order for 'make check'
to work.

It was first introduced in version 3.8.3-9
diff -Naur id3lib-3.8.3.orig/examples/findeng.cpp id3lib-3.8.3/examples/findeng.cpp
--- id3lib-3.8.3.orig/examples/findeng.cpp	2003-03-02 01:23:00.000000000 +0100
+++ id3lib-3.8.3/examples/findeng.cpp	2009-12-10 00:58:12.173795997 +0100
@@ -9,7 +9,7 @@
 using std::cout;
 using std::endl;

-int main(unsigned argc, char* argv[])
+int main(int argc, char* argv[])
 {
   ID3D_INIT_DOUT();
   ID3D_INIT_WARNING();
diff -Naur id3lib-3.8.3.orig/examples/findstr.cpp id3lib-3.8.3/examples/findstr.cpp
--- id3lib-3.8.3.orig/examples/findstr.cpp	2003-03-02 01:23:00.000000000 +0100
+++ id3lib-3.8.3/examples/findstr.cpp	2009-12-10 00:57:48.036819825 +0100
@@ -9,7 +9,7 @@
 using std::cout;
 using std::endl;

-int main(unsigned argc, char* argv[])
+int main(int argc, char* argv[])
 {
   ID3D_INIT_DOUT();
   ID3D_INIT_WARNING();
diff -Naur id3lib-3.8.3.orig/examples/test_io.cpp id3lib-3.8.3/examples/test_io.cpp
--- id3lib-3.8.3.orig/examples/test_io.cpp	2003-03-02 01:23:00.000000000 +0100
+++ id3lib-3.8.3/examples/test_io.cpp	2009-12-10 00:57:03.612111640 +0100
@@ -11,6 +11,9 @@
 #include <id3/io_strings.h>
 #include <id3/utils.h>

+using std::cin;
+using std::hex;
+using std::dec;
 using std::cout;
 using std::endl;
 using std::cerr;
@@ -18,7 +21,7 @@
 using namespace dami;

 int
-main(size_t argc, const char** argv)
+main(int argc, const char** argv)
 {
   ID3D_INIT_DOUT();
   ID3D_INIT_WARNING();


code:
This patch adds a check for a null pointer
--- a/src/header_tag.cpp
+++ b/src/header_tag.cpp
@@ -54,7 +54,7 @@
 {
   size_t bytesUsed = ID3_TagHeader::SIZE;

-  if (_info->is_extended)
+  if (_info && _info->is_extended)
   {
     bytesUsed += _info->extended_bytes;
   }


code:
This patch fixes some minor spelling mistakes
diff -Naur id3lib-3.8.3.orig//ChangeLog id3lib-3.8.3//ChangeLog
--- id3lib-3.8.3.orig//ChangeLog	2010-06-08 05:21:47.817061336 +0200
+++ id3lib-3.8.3//ChangeLog	2010-06-08 05:21:05.320811354 +0200
@@ -2266,7 +2266,7 @@
 	* examples/demo_info.cpp (1.19):
 	(PrintInformation): When printing synced lyrics info, now uses a
 	MemoryReader, BinaryNumberReader, and TextReader to extract the
-	infromation from the binary field.  This is a cheat, since these
+	information from the binary field.  This is a cheat, since these
 	classes aren't normally exposed to folks using the library.
 	Hopefully they will be exposed soon enough for the next major
 	release.
diff -Naur id3lib-3.8.3.orig//doc/id3v2.3.0.html id3lib-3.8.3//doc/id3v2.3.0.html
--- id3lib-3.8.3.orig//doc/id3v2.3.0.html	2010-06-08 05:21:47.859810543 +0200
+++ id3lib-3.8.3//doc/id3v2.3.0.html	2010-06-08 05:21:05.373811128 +0200
@@ -2157,7 +2157,7 @@
  64.Native American
  65.Cabaret
  66.New Wave
- 67.Psychadelic
+ 67.Psychedelic
  68.Rave
  69.Showtunes
  70.Trailer
@@ -2254,4 +2254,4 @@
 Email: johan@id3.org

-
\ No newline at end of file
+
diff -Naur id3lib-3.8.3.orig//doc/id3v2.3.0.txt id3lib-3.8.3//doc/id3v2.3.0.txt
--- id3lib-3.8.3.orig//doc/id3v2.3.0.txt	2010-06-08 05:21:47.860810639 +0200
+++ id3lib-3.8.3//doc/id3v2.3.0.txt	2010-06-08 05:21:05.374811307 +0200
@@ -1929,7 +1929,7 @@
      64.Native American
      65.Cabaret
      66.New Wave
-     67.Psychadelic
+     67.Psychedelic
      68.Rave
      69.Showtunes
      70.Trailer
diff -Naur id3lib-3.8.3.orig//id3com/id3com.idl id3lib-3.8.3//id3com/id3com.idl
--- id3lib-3.8.3.orig//id3com/id3com.idl	2010-06-08 05:21:47.818060988 +0200
+++ id3lib-3.8.3//id3com/id3com.idl	2010-06-08 05:21:05.355061546 +0200
@@ -179,7 +179,7 @@
       /* USER */ ID3_TERMSOFUSE,        /**< Terms of use */
       /* USLT */ ID3_UNSYNCEDLYRICS,    /**< Unsynchronized lyric/text transcription */
       /* WCOM */ ID3_WWWCOMMERCIALINFO, /**< Commercial information */
-      /* WCOP */ ID3_WWWCOPYRIGHT,      /**< Copyright/Legal infromation */
+      /* WCOP */ ID3_WWWCOPYRIGHT,      /**< Copyright/Legal information */
       /* WOAF */ ID3_WWWAUDIOFILE,      /**< Official audio file webpage */
       /* WOAR */ ID3_WWWARTIST,         /**< Official artist/performer webpage */
       /* WOAS */ ID3_WWWAUDIOSOURCE,    /**< Official audio source webpage */
diff -Naur id3lib-3.8.3.orig//include/id3/globals.h id3lib-3.8.3//include/id3/globals.h
--- id3lib-3.8.3.orig//include/id3/globals.h	2010-06-08 05:21:47.818060988 +0200
+++ id3lib-3.8.3//include/id3/globals.h	2010-06-08 05:22:27.395811102 +0200
@@ -313,7 +313,7 @@
   /* USER */ ID3FID_TERMSOFUSE,        /**< Terms of use */
   /* USLT */ ID3FID_UNSYNCEDLYRICS,    /**< Unsynchronized lyric/text transcription */
   /* WCOM */ ID3FID_WWWCOMMERCIALINFO, /**< Commercial information */
-  /* WCOP */ ID3FID_WWWCOPYRIGHT,      /**< Copyright/Legal infromation */
+  /* WCOP */ ID3FID_WWWCOPYRIGHT,      /**< Copyright/Legal information */
   /* WOAF */ ID3FID_WWWAUDIOFILE,      /**< Official audio file webpage */
   /* WOAR */ ID3FID_WWWARTIST,         /**< Official artist/performer webpage */
   /* WOAS */ ID3FID_WWWAUDIOSOURCE,    /**< Official audio source webpage */
@@ -608,7 +608,7 @@
   "Native American",   //64
   "Cabaret",           //65
   "New Wave",          //66
-  "Psychadelic",       //67
+  "Psychedelic",       //67
   "Rave",              //68
   "Showtunes",         //69
   "Trailer",           //70
@@ -686,7 +686,7 @@
   "Christian Rock ",       //141
   "Merengue",              //142
   "Salsa",                 //143
-  "Trash Metal",           //144
+  "Thrash Metal",          //144
   "Anime",                 //145
   "JPop",                  //146
   "Synthpop"               //147
diff -Naur id3lib-3.8.3.orig//src/field.cpp id3lib-3.8.3//src/field.cpp
--- id3lib-3.8.3.orig//src/field.cpp	2010-06-08 05:21:47.818060988 +0200
+++ id3lib-3.8.3//src/field.cpp	2010-06-08 05:21:05.373811128 +0200
@@ -719,7 +719,7 @@
 // USER       ID3FID_TERMSOFUSE        Terms of use
 // USLT  ULT  ID3FID_UNSYNCEDLYRICS    Unsynchronized lyric/text transcription
 // WCOM  WCM  ID3FID_WWWCOMMERCIALINFO Commercial information
-// WCOP  WCM  ID3FID_WWWCOPYRIGHT      Copyright/Legal infromation
+// WCOP  WCM  ID3FID_WWWCOPYRIGHT      Copyright/Legal information
 // WOAF  WCP  ID3FID_WWWAUDIOFILE      Official audio file webpage
 // WOAR  WAF  ID3FID_WWWARTIST         Official artist/performer webpage
 // WOAS  WAR  ID3FID_WWWAUDIOSOURCE    Official audio source webpage
@@ -813,7 +813,7 @@
   {ID3FID_TERMSOFUSE,        ""   , "USER", false, false, ID3FD_TermsOfUse,    "Terms of use"},
   {ID3FID_UNSYNCEDLYRICS,    "ULT", "USLT", false, false, ID3FD_GeneralText,   "Unsynchronized lyric/text transcription"},
   {ID3FID_WWWCOMMERCIALINFO, "WCM", "WCOM", false, false, ID3FD_URL,           "Commercial information"},
-  {ID3FID_WWWCOPYRIGHT,      "WCP", "WCOP", false, false, ID3FD_URL,           "Copyright/Legal infromation"},
+  {ID3FID_WWWCOPYRIGHT,      "WCP", "WCOP", false, false, ID3FD_URL,           "Copyright/Legal information"},
   {ID3FID_WWWAUDIOFILE,      "WAF", "WOAF", false, false, ID3FD_URL,           "Official audio file webpage"},
   {ID3FID_WWWARTIST,         "WAR", "WOAR", false, false, ID3FD_URL,           "Official artist/performer webpage"},
   {ID3FID_WWWAUDIOSOURCE,    "WAS", "WOAS", false, false, ID3FD_URL,           "Official audio source webpage"},


code:
Description: Fix crashes when reading VBR MP3 file.
Bug-Ubuntu: https://launchpad.net/bugs/444466
Origin: upstream, http://sourceforge.net/tracker/?func=detail&aid=937707&group_id=979&atid=300979
Forwarded: yes
Author: Urs Fleisch

Index: id3lib3.8.3-3.8.3/src/mp3_parse.cpp
===================================================================
--- id3lib3.8.3-3.8.3.orig/src/mp3_parse.cpp	2009-10-06 23:12:10.381250132 +0200
+++ id3lib3.8.3-3.8.3/src/mp3_parse.cpp	2009-10-06 23:14:09.545252591 +0200
@@ -465,7 +465,7 @@
   // from http://www.xingtech.com/developer/mp3/

   const size_t VBR_HEADER_MIN_SIZE = 8;     // "xing" + flags are fixed
-  const size_t VBR_HEADER_MAX_SIZE = 116;   // frames, bytes, toc and scale are optional
+  const size_t VBR_HEADER_MAX_SIZE = 120;   // frames, bytes, toc and scale are optional

   if (mp3size >= vbr_header_offest + VBR_HEADER_MIN_SIZE)
   {


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>id3lib</Name>
        <Homepage>http://id3lib.sourceforge.net/</Homepage>
        <Packager>
            <Name>Mustafa Cinasal</Name>
            <Email>muscnsl@gmail.com</Email>
        </Packager>
        <License>GPLv1</License>
        <IsA>driver</IsA>
        ID3v1 ve ID3v2 etiketlerini okumak, yazmak ve değiştirmek için kullanılan kitaplık
        <Description>ID3v1 ve ID3v2 etiketlerini okumak, yazmak ve değiştirmek için kullanılan kitaplık</Description>
        <Archive sha1sum="c92c880da41d1ec0b242745a901702ae87970838" type="targz">https://sourceforge.net/projects/id3lib/files/id3lib/3.8.3/id3lib-3.8.3.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>zlib-devel</Dependency>
            <Dependency>libgcc</Dependency>
        </BuildDependencies>
        <Patches>
            <Patch>00-add-libz-to-compilation.patch</Patch>
            <Patch>05-create-m4-directory.patch</Patch>
            <Patch>10-fix-compilation-with-cpp-headers.patch</Patch>
            <Patch>15-fix-headers-of-main-functions.patch</Patch>
            <Patch>20-create-manpages.patch</Patch>
            <Patch>30-fix-utf16.patch</Patch>
            <Patch>40-deal-with-mkstemp.patch</Patch>
            <Patch>50-remove-outdated-check.patch</Patch>
            <Patch>60-add-c-wrapper-functions.patch</Patch>
            <Patch>60-fix_make_check.patch</Patch>
            <Patch>60-id3lib-missing-nullpointer-check.patch</Patch>
            <Patch>60-spelling.patch</Patch>
            <Patch>61-fix_vbr_stack_smash.patch</Patch>
        </Patches>
    </Source>
    <Package>
        <Name>id3lib</Name>
        <RuntimeDependencies>
            <Dependency>zlib</Dependency>
            <Dependency>libgcc</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="library">/usr/lib</Path>
            <Path fileType="doc">/usr/share/doc</Path>
        </Files>
    </Package>
    <Package>
        <Name>id3lib-devel</Name>
        Development files for id3lib
        <RuntimeDependencies>
            <Dependency release="current">id3lib</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="header">/usr/include</Path>
        </Files>
    </Package>
    <History>
        <Update release="1">
            <Date>2017-12-17</Date>
            <Version>3.8.3</Version>
            <Comment>First release.</Comment>
            <Name>Mustafa Cinasal</Name>
            <Email>muscnsl@gmail.com</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>id3lib</Name>
        <Summary xml:lang="tr">ID3v1 ve ID3v2 etiketlerini okumak, yazmak ve değiştirmek için kullanılan kitaplık</Summary>
        <Description xml:lang="tr">ID3v1 ve ID3v2 etiketlerini okumak, yazmak ve değiştirmek için kullanılan kitaplık</Description>
    </Source>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/copyleft/gpl.txt

from pisi.actionsapi import qt5
#from pisi.actionsapi import pisitools

# if pisi can't find source directory, see /var/pisi/ktageditor/work/ and:
# WorkDir="ktageditor-"+ get.srcVERSION() +"/sub_project_dir/"

def setup():
    qt5.configure()

def build():
    qt5.make()

def install():
    qt5.install()

# Take a look at the source folder for these file as documentation.
#    pisitools.dodoc("AUTHORS", "BUGS", "ChangeLog", "COPYING", "README")

# If there is no install rule for a runnable binary, you can
# install it to binary directory.
#    pisitools.dobin("ktageditor")

# You can use these as variables, they will replace GUI values before build.
# Package Name : ktageditor
# Version : 0.2.0
# Summary : KTag Editor is an Audio tag editor developed in Qt5 framework.

# For more information, you can look at the Actions API
# from the Help menu and toolbar.


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>ktageditor</Name>
        <Homepage>https://sourceforge.net/projects/ktageditor/</Homepage>
        <Packager>
            <Name>Stefan Gronewold</Name>
            <Email>groni@pisilinux.org</Email>
        </Packager>
        <License>LGPL</License>
        KTag Editor is an Audio tag editor developed in Qt5 framework.
        <Description>KTag Editor is a free open source ID3v tag editor developed in Qt5 framework. Supported files are mp3, wav, ogg, wma, flac, asf</Description>
        <BuildDependencies>
            <Dependency>qt5-base-devel</Dependency>
            <Dependency>qt5-phonon-devel</Dependency>
            <Dependency>taglib-devel</Dependency>
            <Dependency>qt5-phonon-backend-gstreamer</Dependency>
        </BuildDependencies>
        <Archive type="zip" sha1sum="00057d8e20465381d12990d22109bcd8943838b3">https://sourceforge.net/projects/ktageditor/files/Source/0.2.0/ktageditor.zip</Archive>
    </Source>
    <Package>
        <Name>ktageditor</Name>
        KTag Editor is an Audio tag editor developed in Qt5 framework.
        <RuntimeDependencies>
            <Dependency>qt5-base</Dependency>
            <Dependency>qt5-phonon</Dependency>
            <Dependency>qt5-phonon-backend-gstreamer</Dependency>
            <Dependency>libgcc</Dependency>
            <Dependency>taglib</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="data">/usr/share</Path>
        </Files>
    </Package>
    <History>
        <Update release="1">
            <Date>2017-01-21</Date>
            <Version>0.2.0</Version>
            <Comment>First Release</Comment>
            <Name>Stefan Gronewold</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt

from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import perlmodules
from pisi.actionsapi import get

# .la files needed to load modules
KeepSpecial = ["libtool"]

def setup():
    # ghostscript is better than dps
    # unstable fpx support disabled
    # trio is for old systems not providing vsnprintf
    autotools.configure("--enable-openmp \
                         --enable-shared \
                         --disable-static \
                         --disable-openmp \
                         --with-threads \
                         --with-modules \
                         --with-magick-plus-plus \
                         --with-perl \
                         --with-bzlib \
                         --without-dps \
                         --without-fpx \
                         --with-gslib \
                         --with-jbig \
                         --with-jpeg \
                         --with-jp2 \
                         --with-lcms \
                         --with-png \
                         --with-tiff \
                         --without-trio \
                         --with-ttf \
                         --with-wmf \
                         --with-fontpath=/usr/share/fonts \
                         --with-gs-font-dir=/usr/share/fonts/default/ghostscript \
                         --with-xml \
                         --with-zlib \
                         --with-x \
                         --with-quantum-depth=16")

    pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ")

def build():
    autotools.make()
    autotools.make("perl-build")

def install():
    autotools.rawInstall("DESTDIR=%s" % get.installDIR())
    autotools.rawInstall("DESTDIR=%s -C PerlMagick" % get.installDIR())
    for d in ("demo/", "Changelog", "README.txt"):
        pisitools.insinto("/usr/share/doc/PerlMagick", "PerlMagick/%s" % d)

    pisitools.remove("/usr/lib/*.la")
    perlmodules.removePacklist()
    perlmodules.removePodfiles()


code:
diff -up GraphicsMagick-1.3.14/PerlMagick/Makefile.PL.in.perl_linkage GraphicsMagick-1.3.14/PerlMagick/Makefile.PL.in
--- GraphicsMagick-1.3.14/PerlMagick/Makefile.PL.in.perl_linkage	2012-02-25 14:43:38.000000000 -0600
+++ GraphicsMagick-1.3.14/PerlMagick/Makefile.PL.in	2012-02-26 07:35:38.542731280 -0600
@@ -78,7 +78,7 @@ WriteMakefile
    'INSTALLBIN'	=> $magick_BIN_DIR,

    # Library specification
-   'LIBS'	=> ["-L$magick_LIB_DIR -lGraphicsMagick $magick_LDFLAGS $magick_DEP_LIBS"],
+   'LIBS'	=> ["-L$magick_LIB_DIR -L../magick/.libs -lGraphicsMagick $magick_LDFLAGS $magick_DEP_LIBS"],

    # Perl binary name (if a Perl binary is built)
    'MAP_TARGET'	=> 'PerlMagick',


code:
diff -up GraphicsMagick-1.3.16/Magick++/bin/GraphicsMagick++-config.in.multilib GraphicsMagick-1.3.16/Magick++/bin/GraphicsMagick++-config.in
--- GraphicsMagick-1.3.16/Magick++/bin/GraphicsMagick++-config.in.multilib	2011-11-12 14:39:22.000000000 -0600
+++ GraphicsMagick-1.3.16/Magick++/bin/GraphicsMagick++-config.in	2012-06-24 11:25:12.603862643 -0500
@@ -33,13 +33,13 @@ while test $# -gt 0; do
       echo '@MAGICK_API_CPPFLAGS@'
       ;;
     --cxxflags)
-      echo '@CXXFLAGS@'
+      echo ''
       ;;
     --ldflags)
-      echo '@MAGICK_API_LDFLAGS@'
+      echo ''
       ;;
     --libs)
-      echo '-lGraphicsMagick++ @MAGICK_API_LIBS@'
+      echo '-lGraphicsMagick++'
       ;;
     *)
       echo "${usage}" 1>&2
diff -up GraphicsMagick-1.3.16/magick/GraphicsMagick-config.in.multilib GraphicsMagick-1.3.16/magick/GraphicsMagick-config.in
--- GraphicsMagick-1.3.16/magick/GraphicsMagick-config.in.multilib	2011-11-12 14:39:26.000000000 -0600
+++ GraphicsMagick-1.3.16/magick/GraphicsMagick-config.in	2012-06-24 11:14:55.947571850 -0500
@@ -30,16 +30,16 @@ while test $# -gt 0; do
       echo @PACKAGE_VERSION@
       ;;
     --cflags)
-      echo '@CFLAGS@'
+      echo ''
       ;;
     --cppflags)
       echo '@MAGICK_API_CPPFLAGS@'
       ;;
     --ldflags)
-      echo '@MAGICK_API_LDFLAGS@'
+      echo ''
       ;;
     --libs)
-      echo '@MAGICK_API_LIBS@'
+      echo '-lGraphicsMagick'
       ;;
     *)
       echo "${usage}" 1>&2


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>GraphicsMagick</Name>
        <Homepage>http://www.graphicsmagick.org</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>MIT</License>
        <IsA>library</IsA>
        GraphicsMagick Image Processing System
        <Description>GraphicsMagick is a comprehensive image processing package which is initially based on ImageMagick 5.5.2, but which has undergone significant re-work by the GraphicsMagick Group to significantly improve the quality and performance of the software.</Description>
        <Archive sha1sum="0dcf4c1f6f3ead29147ea0392a148ce50cd64bb4" type="tarxz">https://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/1.3.25/GraphicsMagick-1.3.25.tar.xz</Archive>
        <BuildDependencies>
            <Dependency>tiff-devel</Dependency>
            <Dependency>webp-devel</Dependency>
            <Dependency>lcms2-devel</Dependency>
            <Dependency>libSM-devel</Dependency>
            <Dependency>libwmf-devel</Dependency>
            <Dependency>libICE-devel</Dependency>
            <Dependency>jasper-devel</Dependency>
            <Dependency>jbigkit-devel</Dependency>
            <Dependency>libXext-devel</Dependency>
            <Dependency>libjpeg-turbo-devel</Dependency>
            <Dependency>ghostscript-devel</Dependency>
            <Dependency>zlib-devel</Dependency>
            <Dependency>libxml2-devel</Dependency>
            <Dependency>freetype-devel</Dependency>
            <Dependency>xz-devel</Dependency>
        </BuildDependencies>
        <Patches>
            <Patch level="1">GraphicsMagick-1.3.14-perl_linkage.patch</Patch>
            <Patch level="1">GraphicsMagick-1.3.16-multilib.patch</Patch>
        </Patches>
    </Source>

    <Package>
        <Name>GraphicsMagick</Name>
        <IsA>app:console</IsA>
        <RuntimeDependencies>
            <Dependency>tiff</Dependency>
            <Dependency>webp</Dependency>
            <Dependency>zlib</Dependency>
            <Dependency>bzip2</Dependency>
            <Dependency>libgcc</Dependency>
            <Dependency>freetype</Dependency>
            <Dependency>libX11</Dependency>
            <Dependency>libxml2</Dependency>
            <Dependency>libpng</Dependency>
            <Dependency>lcms2</Dependency>
            <Dependency>libwmf</Dependency>
            <Dependency>jasper</Dependency>
            <Dependency>libXext</Dependency>
            <Dependency>jbigkit</Dependency>
            <Dependency>libgomp</Dependency>
            <Dependency>ghostscript</Dependency>
            <Dependency>libjpeg-turbo</Dependency>
            <Dependency>libtool-ltdl</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="config">/etc</Path>
            <Path fileType="executable">/usr/bin/gm</Path>
            <Path fileType="library">/usr/lib/GraphicsMagick-*</Path>
            <Path fileType="library">/usr/lib/lib*</Path>
            <Path fileType="data">/usr/share/GraphicsMagick-*</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="man">/usr/share/man</Path>
        </Files>
    </Package>

    <Package>
        <Name>GraphicsMagick-devel</Name>
        Development files for GraphicsMagick
        <RuntimeDependencies>
            <Dependency release="current">GraphicsMagick</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin/*-config</Path>
            <Path fileType="header">/usr/include</Path>
            <Path fileType="data">/usr/lib/pkgconfig</Path>
            <Path fileType="doc">/usr/share/doc/GraphicsMagick/www</Path>
            <Path fileType="man">/usr/share/man/man1/*-config.*</Path>
        </Files>
    </Package>

    <Package>
        <Name>PerlMagick</Name>
        GraphicsMagick perl bindings
        <RuntimeDependencies>
            <Dependency release="current">GraphicsMagick</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="library">/usr/lib/perl5</Path>
            <Path fileType="doc">/usr/share/doc/PerlMagick</Path>
        </Files>
    </Package>

    <History>
        <Update release="4">
            <Date>2017-04-13</Date>
            <Version>1.3.25</Version>
            <Comment>Rebuild.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2016-11-06</Date>
            <Version>1.3.25</Version>
            <Comment>Version bump.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>1.3.23</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-01-24</Date>
            <Version>1.3.23</Version>
            <Comment>First release</Comment>
            <Name>Ertuğrul Erata</Name>
            <Email>ertugrulerata@gmail.com</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>GraphicsMagick</Name>
        <Summary xml:lang="tr">GraphicsMagick Resim İşleme Sistemi</Summary>
        <Description xml:lang="tr">GraphicsMagick, başlangıçta ImageMagick 5.5.2 sürümünü temel almış kapsamlı bir resim işleme paketidir. Yazılımın kalitesini ve performansını önemli derecede artırmak için bu pakette büyük bir değişiklik yapılmıştır.</Description>
    </Source>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt

from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get

def setup():
    autotools.autoreconf("-vfi")

    autotools.configure("--with-slang-driver \
                         --with-x11-driver \
                         --disable-static")

def build():
    autotools.make("CC=%s" % get.CC())

def install():
    autotools.rawInstall("DESTDIR=%s" % get.installDIR())

    pisitools.dodoc("ChangeLog", "AUTHORS", "NEWS", "README*", "COPYING", "ANNOUNCE")


code:
Get rid of aclocal warning:
/usr/share/aclocal/aalib.m4:12: warning: underquoted definition of AM_PATH_AALIB
--- aalib-1.4.0/aalib.m4
+++ aalib-1.4.0/aalib.m4
@@ -11,3 +11,3 @@
 dnl
-AC_DEFUN(AM_PATH_AALIB,
+AC_DEFUN([AM_PATH_AALIB],
 [dnl


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>aalib</Name>
        <Homepage>http://aa-project.sourceforge.net/aalib/</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <IsA>library</IsA>
        An ASCII-graphics Library
        <Description>Aalib is an ASCII-graphics library generating ASCII character outputs.</Description>
        <Archive sha1sum="a23269e950a249d2ef93625837cace45ddbce03b" type="targz">mirrors://sourceforge/aa-project/aalib-1.4rc5.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>gpm</Dependency>
            <Dependency>ncurses-devel</Dependency>
        </BuildDependencies>
        <Patches>
            <Patch level="1">m4.patch</Patch>
        </Patches>
    </Source>

    <Package>
        <Name>aalib</Name>
        <RuntimeDependencies>
            <Dependency>gpm</Dependency>
            <Dependency>ncurses</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="library">/usr/lib</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="info">/usr/share/info</Path>
            <Path fileType="man">/usr/share/man</Path>
        </Files>
    </Package>

    <Package>
        <Name>aalib-devel</Name>
        Development files for aalib
        <RuntimeDependencies>
            <Dependency release="current">aalib</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="data">/usr/share/aclocal</Path>
            <Path fileType="header">/usr/include</Path>
            <Path fileType="man">/usr/share/man/man3</Path>
        </Files>
    </Package>

    <History>
        <Update release="3">
            <Date>2017-02-05</Date>
            <Version>1.4_rc5</Version>
            <Comment>Rebuild</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>1.4_rc5</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2014-05-20</Date>
            <Version>1.4_rc5</Version>
            <Comment>First release</Comment>
            <Name>Serdar Soytetir</Name>
            <Email>kaptan@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>aalib</Name>
        Bir ASCII-grafik Kitaplığı
        <Description xml:lang="tr">AAlib, bir ASCII sanatı grafik kütüphanesidir. Görsel bir ekran gibi çalışır, ancak oluşturulan çıktı platform bağımsız olarak ASCII karakterler ile gösterilir.</Description>
        <Description xml:lang="fr">Aalib est une librairie de graphiques ASCII générant des sorties en caractères ASCII.</Description>
        <Description xml:lang="es">Aalib es una librería gráfica ASCII que genera salidas con caracteres ASCII.</Description>
    </Source>

    <Package>
        <Name>aalib-devel</Name>
        aalib için geliştirme dosyaları
    </Package>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/copyleft/gpl.txt

from pisi.actionsapi import cmaketools
from pisi.actionsapi import get
from pisi.actionsapi import pisitools

def setup():
    cmaketools.configure("-DCMAKE_INSTALL_PREFIX=/usr \
        -DCMAKE_BUILD_TYPE=Release \
        -DASSIMP_BUILD_SAMPLES=OFF")

def build():
    cmaketools.make()

def install():
    cmaketools.rawInstall("DESTDIR=%s" % get.installDIR())

    pisitools.dodoc("LICENSE", "Readme.md", "README")


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>assimp</Name>
        <Homepage>http://assimp.sourceforge.net/index.html</Homepage>
        <Packager>
            <Name>Stefan Gronewold</Name>
            <Email>groni@pisilinux.org</Email>
        </Packager>
        <License>BSD</License>
        A JavaScript 3D rendering API for Qt Quick
        <Description>APIs are provided for C and C++. There are various bindings to other languages (C#, Java, Python, Delphi, D). Assimp also runs on Android and iOS.</Description>
        <BuildDependencies>
            <Dependency>boost-devel</Dependency>
            <Dependency>cmake</Dependency>
            <Dependency>glib2-devel</Dependency>
            <Dependency>zlib-devel</Dependency>
            <Dependency>pkgconfig</Dependency>
            <Dependency>minizip-devel</Dependency>
            <Dependency>git</Dependency>
        </BuildDependencies>
        <Archive sha1sum="ce3589f9455c743e993fd802bdaaed72838cd3f4" type="targz">https://github.com/assimp/assimp/archive/v4.1.0.tar.gz</Archive>
    </Source>
    <Package>
        <Name>assimp</Name>
        Portable Open Source library to import various well-known 3D model formats in an uniform manner
        <RuntimeDependencies>
            <Dependency>libgcc</Dependency>
            <Dependency>minizip</Dependency>
            <Dependency>zlib</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="library">/usr/lib</Path>
            <Path fileType="doc">/usr/share/doc</Path>
        </Files>
    </Package>

    <Package>
        <Name>assimp-devel</Name>
        Development files for assimp
        <RuntimeDependencies>
            <Dependency>boost-devel</Dependency>
            <Dependency release="current">assimp</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="header">/usr/include</Path>
            <Path fileType="config">/usr/lib/cmake</Path>
            <Path fileType="data">/usr/lib/pkgconfig</Path>
        </Files>
    </Package>

    <History>
        <Update release="2">
            <Date>2018-01-28</Date>
            <Version>4.1.0</Version>
            <Comment>Version Bump.</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2017-02-21</Date>
            <Version>3.3.1</Version>
            <Comment>First Release</Comment>
            <Name>Stefan Gronewold</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt

from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools

def setup():
    autotools.configure("--enable-mmx \
                         --enable-sse \
                         --disable-altivec")

def build():
    autotools.make()

def install():
    autotools.install()

    pisitools.dodoc("AUTHORS", "COPYING", "NEWS", "README", "TODO")