code:
Index: smplayer-0.6.7_20090703/src/assstyles.cpp
===================================================================
--- smplayer-0.6.7_20090703.orig/src/assstyles.cpp
+++ smplayer-0.6.7_20090703/src/assstyles.cpp
@@ -23,7 +23,7 @@
 #include "colorutils.h"

 AssStyles::AssStyles() {
-	fontname = "Arial";
+	fontname = "Sans";
 	fontsize = 20;
 	primarycolor = 0xFFFFFF;
 	backcolor = 0;
Index: smplayer-0.6.7_20090703/src/videopreview/videopreview.cpp
===================================================================
--- smplayer-0.6.7_20090703.orig/src/videopreview/videopreview.cpp
+++ smplayer-0.6.7_20090703/src/videopreview/videopreview.cpp
@@ -339,7 +339,7 @@ bool VideoPreview::addPicture(const QStr
 	// Add current time text
 	if (prop.display_osd) {
 		QString stime = QTime().addSecs(time).toString("hh:mm:ss");
-		QFont font("Arial");
+		QFont font("Sans");
 		font.setBold(true);
 		QPainter painter(&scaled_picture);
 		painter.setPen( Qt::white );

repo_name: ayhanyalcinsoy/main


code:
Index: smplayer-0.6.9_20100211/src/myaction.cpp
===================================================================
--- smplayer-0.6.9_20100211.orig/src/myaction.cpp
+++ smplayer-0.6.9_20100211/src/myaction.cpp
@@ -72,14 +72,14 @@ void MyAction::change(const QIcon & icon
 }

 void MyAction::change(const QString & text ) {
-	setText( text );
+	setText( text.trimmed() );

 	QString accel_text = shortcut().toString();

 	QString s = text;
 	s.replace("&","");
 	if (!accel_text.isEmpty()) {
-		setToolTip( s + " ("+ accel_text +")");
+		setToolTip( s.trimmed() + " ("+ tr(accel_text.toAscii().constData()) +")");
 		setIconText( s );
 	}


code:
i<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>smplayer</Name>
        <Homepage>http://smplayer.sourceforge.net</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <Icon>smplayer</Icon>
        <IsA>app:gui</IsA>
        <Summary>A complete front-end for MPlayer</Summary>
        <Description>smplayer is Qt application which intends to be a complete front-end for MPlayer, from basic features like playing videos, DVDs, and VCDs to more advanced features like support for MPlayer filters and more.</Description>
        <Archive sha1sum="35320c298bf2b3d69ca4146721def3f851355ad4" type="tarbz2">https://sourceforge.net/projects/smplayer/files/SMPlayer/18.1.0/smplayer-18.1.0.tar.bz2</Archive>
        <Archive sha1sum="164ef1bcd9cbb4e51736a08fd3c7270eaef8895b" type="tarbz2">https://sourceforge.net/projects/smplayer/files/SMPlayer-themes/17.3.0/smplayer-themes-17.3.0.tar.bz2</Archive>
        <Archive sha1sum="ab30e705a54252088e28a5fb8d17fd8e6f495b41" type="tarbz2">http://sourceforge.net/projects/smplayer/files/SMPlayer-skins/15.2.0/smplayer-skins-15.2.0.tar.bz2</Archive>
        <BuildDependencies>
            <Dependency>qt5-base-devel</Dependency>
            <Dependency>qt5-script-devel</Dependency>
            <Dependency>libxkbcommon-devel</Dependency>
            <Dependency>zlib-devel</Dependency>
            <Dependency>qt5-linguist</Dependency>
        </BuildDependencies>
        </Source>

    <Package>
        <Name>smplayer</Name>
        <RuntimeDependencies>
            <Dependency>qt5-base</Dependency>
            <Dependency>qt5-script</Dependency>
            <Dependency>libX11</Dependency>
            <Dependency>zlib</Dependency>
            <Dependency>libgcc</Dependency>
            <Dependency>mpv-player</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="data">/usr/share/smplayer</Path>
            <Path fileType="data">/usr/share/applications</Path>
            <Path fileType="data">/usr/share/icons</Path>
            <Path fileType="data">/usr/share/kde4</Path>
            <Path fileType="man">/usr/share/man</Path>
            <Path fileType="doc">/usr/share/doc/smplayer</Path>
        </Files>
        </Package>

    <History>
        <Update release="5">
            <Date>2018-01-13</Date>
            <Version>18.1.0</Version>
            <Comment>Version Bump</Comment>
            <Name>Mustafa Cinasal</Name>
            <Email>muscnsl@gmail.com</Email>
        </Update>
        <Update release="4">
            <Date>2017-12-09</Date>
            <Version>17.11.2</Version>
            <Comment>Version Bump</Comment>
            <Name>Mustafa Cinasal</Name>
            <Email>muscnsl@gmail.com</Email>
        </Update>
        <Update release="4">
            <Date>2017-02-03</Date>
            <Version>17.1</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2017-01-11</Date>
            <Version>15.11</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>15.11</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-01-09</Date>
            <Version>15.11</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>smplayer</Name>
        Gelişmiş bir mplayer önyüzü
        SMPlayer es un frontend de Mplayer
        <Description xml:lang="tr">smplayer Qt ile yazılmış, gelişmiş bir mplayer önyüzüdür. Basit özelliklerinin yanı sıra, TV, DVD, VCD oynatma, mplayer filtrelerini kullanabilme gibi yetenekleri de bulunmaktadır.</Description>
        <Description xml:lang="es">SMPlayer es un reproductor multimedia gratuito y para Windows y Linux con códecs incorporados, que puede reproducir prácticamente cualquier formato de vídeo y audio. No necesita ningún códec externo. Simplemente instala SMPlayer y podrás reproducir cualquier formato sin la molestia de tener que buscar e instalar paquetes de códecs.</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 shelltools
from pisi.actionsapi import get
from pisi.actionsapi import pisitools

def setup():
    pisitools.dosed("Makefile", "^DOC_PATH=.*$", "DOC_PATH=$(PREFIX)/share/doc/smplayer")

def build():
    autotools.make("PREFIX=/usr QMAKE=/usr/lib/qt5/bin/qmake LRELEASE=/usr/lib/qt5/bin/lrelease")

def install():
    autotools.rawInstall("PREFIX=/usr DESTDIR=%s DOC_PATH=/usr/share/doc/%s" % (get.installDIR(),get.srcNAME()))
    pisitools.dodoc("Readme.txt","Release_notes.txt","Changelog","Copying.txt")


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>smtube</Name>
        <Homepage>http://smplayer.sourceforge.net/en/info</Homepage>
        <Packager>
            <Name>Pisi Linux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <IsA>app:gui</IsA>
        <Summary>Play and download Youtube videos</Summary>
        <Description>SMTube allows to search, play and download Youtube videos.</Description>
        <Archive sha1sum="753ecb83952ebd62bb311b693d1a8b7d5060c899" type="tarbz2">https://sourceforge.net/projects/smplayer/files/SMTube/17.1.0/smtube-17.1.0.tar.bz2</Archive>
        <BuildDependencies>
            <Dependency>qt5-base-devel</Dependency>
            <Dependency>qt5-script-devel</Dependency>
            <Dependency>qt5-location-devel</Dependency>
            <Dependency>qt5-webkit-devel</Dependency>
            <Dependency>qt5-linguist</Dependency>
        </BuildDependencies>
    </Source>

    <Package>
        <Name>smtube</Name>
        <RuntimeDependencies>
            <Dependency>qt5-base</Dependency>
            <Dependency>qt5-script</Dependency>
            <Dependency>qt5-webkit</Dependency>
            <Dependency>qt5-location</Dependency>
            <Dependency>libgcc</Dependency>
            </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="data">/usr/share</Path>
            <Path fileType="doc">/usr/share/doc</Path>
        </Files>
    </Package>

    <History>
        <Update release="5">
            <Date>2017-03-10</Date>
            <Version>17.1.0</Version>
            <Comment>Release bump.</Comment>
            <Name>Ayhan Yalçınsoy</Name>
            <Email>ayhanyalcinsoy@pisilinux.org</Email>
        </Update>
        <Update release="4">
            <Date>2017-02-03</Date>
            <Version>17.1.0</Version>
            <Comment>Version bump.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2017-01-11</Date>
            <Version>16.7.0</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>15.11</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-01-06</Date>
            <Version>15.11</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>smtube</Name>
        <Summary xml:lang="tr">Youtube video indirme yöneticisi</Summary>
        <Description xml:lang="tr">SMTube, youtube videolarını oynatmak indirmek ve videolar içerisinde arama yapmak için bir uygulamadı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 get
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools

def setup():
    # Make it build with libtool 1.5
    shelltools.system("rm -rf m4/lt* m4/libtool.m4")

    shelltools.export("AUTOPOINT", "true")
    shelltools.system("./bootstrap")
    autotools.autoreconf("-vfi")
    autotools.rawConfigure("\
                            --prefix=/usr \
                            --libdir=/usr/lib \
                            --sysconfdir=/etc \
                            --with-default-font-family=Sans \
                            --with-default-monospace-font-family=Monospace \
                            --with-default-font=/usr/share/fonts/dejavu/DejaVuSans.ttf \
                            --with-default-monospace-font=/usr/share/fonts/dejavu/DejaVuSansMono.ttf \
                            --with-x \
                              LUAC=luac  LUA_LIBS='`pkg-config --libs lua`' \
                              RCC=/usr/bin/rcc-qt5 \
                            --disable-qt4 \
                            --disable-asdcp \
                            --disable-coverage \
                            --disable-cprof \
                            --disable-crystalhd \
                            --disable-decklink \
                            --disable-goom \
                            --disable-kai \
                            --disable-kva \
                            --disable-maintainer-mode \
                            --disable-mmal-codec \
                            --disable-mmal-vout \
                            --disable-opensles \
                            --disable-rpi-omxil \
                            --disable-shine \
                            --disable-sndio \
                            --disable-vda \
                            --disable-vsxu \
                            --disable-wasapi \
                            --disable-altivec \
                            --disable-bonjour \
                            --disable-dependency-tracking \
                            --disable-optimizations \
                            --disable-gnomevfs \
                            --disable-growl \
                            --disable-jack \
                            --disable-oss \
                            --disable-opencv \
                            --disable-rpath \
                            --disable-static \
                            --disable-update-check \
                            --disable-silent-rules \
                            --disable-mfx \
                            --enable-ncurses \
                            --enable-a52 \
                            --enable-aa \
                            --enable-alsa \
                            --enable-bluray \
                            --enable-dc1394 \
                            --enable-dbus \
                            --enable-dca \
                            --enable-dvbpsi \
                            --enable-dvdnav \
                            --enable-dvdread \
                            --enable-faad \
                            --enable-fast-install \
                            --enable-flac \
                            --enable-freetype \
                            --enable-fribidi \
                            --enable-gnutls \
                            --enable-libcddb \
                            --enable-libmpeg2 \
                            --enable-libxml2 \
                            --enable-lirc \
                            --enable-libva \
                            --enable-live555 \
                            --enable-lua \
                            --enable-mad \
                            --enable-mkv \
                            --enable-mod \
                            --enable-mpc \
                            --enable-nls \
                            --enable-ogg \
                            --enable-opus \
                            --enable-png \
                            --enable-projectm \
                            --enable-pulse \
                            --enable-realrtsp \
                            --enable-screen \
                            --enable-sdl \
                            --enable-sftp \
                            --enable-schroedinger \
                            --enable-shared \
                            --enable-smbclient \
                            --enable-sout \
                            --enable-speex \
                            --enable-svg \
                            --enable-theora \
                            --enable-twolame \
                            --enable-upnp \
                            --enable-v4l2 \
                            --enable-vlc \
                            --enable-vcd \
                            --enable-mtp \
                            --enable-vcdx \
                            --enable-vlm \
                            --enable-vorbis \
                            --enable-x264 \
                            --enable-x265 \
                            --enable-xvideo \
                            --enable-qt5 \
                           ")
    #enable-skins2 \ --disable-qt4 \
    shelltools.export("CFLAGS", "%s -fPIC -O2 -Wall -Wextra -DLUA_COMPAT_5_1" % get.CFLAGS())

    # for fix unused dependency
    pisitools.dosed("libtool"," -shared ", " -Wl,--as-needed -shared ")

def build():
    autotools.make()

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

    for icon in ("128x128", "48x48", "32x32", "16x16"):
         pisitools.insinto("/usr/share/icons/hicolor/%s/apps/" % icon, "share/icons/%s/vlc*.png" % icon)

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


code:
#!/usr/bin/python
# -*- coding: utf-8 -*-

import os
import glob

def postInstall(fromVersion, fromRelease, toVersion, toRelease):
    os.system("/usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins")

def preRemove():
    for cache in glob.glob("/usr/lib/vlc/plugins/plugins-*-*.dat"):
        try:
            os.unlink(cache)
        except OSError:
            pass


code:
diff -ruNp vlc-2.2.3.orig/configure.ac vlc-2.2.3/configure.ac
--- vlc-2.2.3.orig/configure.ac	2016-04-05 02:45:40.000000000 +0200
+++ vlc-2.2.3/configure.ac	2016-05-21 19:19:05.527202127 +0200
@@ -2323,9 +2323,6 @@ AC_ARG_ENABLE(avcodec,
 [  --enable-avcodec        libavcodec codec (default enabled)])
 AS_IF([test "${enable_avcodec}" != "no"], [
   PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 53.34.0 libavutil >= 51.22.0], [
-    PKG_CHECK_EXISTS([libavutil < 55],, [
-      AC_MSG_ERROR([libavutil versions 55 and later are not supported.])
-    ])
     VLC_SAVE_FLAGS
     CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
     CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
@@ -2382,9 +2379,6 @@ have_avcodec_vaapi="no"
 AS_IF([test "${have_vaapi}" = "yes" -a "${have_avcodec}" = "yes"], [
   case "${avfork}" in
     ffmpeg)
-      PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [
-        AC_MSG_ERROR([VA API requires FFmpeg libavcodec < 57.10 or libav.])
-      ])
       ;;
   esac
   VLC_SAVE_FLAGS
@@ -2416,9 +2410,6 @@ AS_IF([test "${enable_dxva2}" != "no"],
   AS_IF([test "x${have_avcodec}" = "xyes"], [
     case "${avfork}" in
       ffmpeg)
-        PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [
-          AC_MSG_ERROR([DXVA2 requires FFmpeg libavcodec < 57.10 or libav.])
-        ])
         ;;
     esac
     AC_CHECK_HEADERS(dxva2api.h,
@@ -3180,9 +3171,6 @@ AS_IF([test "${have_vdpau}" = "yes" -a "
   case "${avfork}" in
     libav) av_vdpau_ver="55.26.0" ;;
     ffmpeg) av_vdpau_ver="55.42.100"
-      PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [
-        AC_MSG_ERROR([VDPAU requires FFmpeg libavcodec < 57.10 or libav.])
-      ])
       ;;
   esac
   PKG_CHECK_EXISTS([libavutil >= 52.4.0 libavcodec >= ${av_vdpau_ver}], [
diff -ruNp vlc-2.2.3.orig/modules/codec/avcodec/audio.c vlc-2.2.3/modules/codec/avcodec/audio.c
--- vlc-2.2.3.orig/modules/codec/avcodec/audio.c	2015-12-08 17:18:56.000000000 +0100
+++ vlc-2.2.3/modules/codec/avcodec/audio.c	2016-05-21 19:19:05.527202127 +0200
@@ -39,7 +39,6 @@
 #include <libavcodec/avcodec.h>
 #include <libavutil/mem.h>

-#include <libavutil/audioconvert.h>

 #include "avcodec.h"

diff -ruNp vlc-2.2.3.orig/modules/codec/avcodec/encoder.c vlc-2.2.3/modules/codec/avcodec/encoder.c
--- vlc-2.2.3.orig/modules/codec/avcodec/encoder.c	2015-10-21 18:36:45.000000000 +0200
+++ vlc-2.2.3/modules/codec/avcodec/encoder.c	2016-05-21 19:19:07.451194268 +0200
@@ -41,7 +41,6 @@
 #include <vlc_cpu.h>

 #include <libavcodec/avcodec.h>
-#include <libavutil/audioconvert.h>

 #include "avcodec.h"
 #include "avcommon.h"
@@ -311,7 +310,7 @@ int OpenEncoder( vlc_object_t *p_this )
     else if( !GetFfmpegCodec( p_enc->fmt_out.i_codec, &i_cat, &i_codec_id,
                              &psz_namecodec ) )
     {
-        if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == PIX_FMT_NONE )
+        if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == AV_PIX_FMT_NONE )
             return VLC_EGENERIC; /* handed chroma output */

         i_cat      = VIDEO_ES;
@@ -555,7 +554,7 @@ int OpenEncoder( vlc_object_t *p_this )

         if( p_codec->pix_fmts )
         {
-            const enum PixelFormat *p = p_codec->pix_fmts;
+            const enum AVPixelFormat *p = p_codec->pix_fmts;
             for( ; *p != -1; p++ )
             {
                 if( *p == p_context->pix_fmt ) break;
@@ -1017,7 +1016,7 @@ errmsg:
         }
     }

-    p_sys->frame = avcodec_alloc_frame();
+    p_sys->frame = av_frame_alloc();
     if( !p_sys->frame )
     {
         goto error;
@@ -1088,7 +1087,7 @@ static block_t *EncodeVideo( encoder_t *
     AVFrame *frame = NULL;
     if( likely(p_pict) ) {
         frame = p_sys->frame;
-        avcodec_get_frame_defaults( frame );
+        av_frame_unref( frame );
         for( i_plane = 0; i_plane < p_pict->i_planes; i_plane++ )
         {
             p_sys->frame->data[i_plane] = p_pict->p[i_plane].p_pixels;
@@ -1329,7 +1328,7 @@ static block_t *handle_delay_buffer( enc
     //How much we need to copy from new packet
     const int leftover = leftover_samples * p_sys->p_context->channels * p_sys->i_sample_bytes;

-    avcodec_get_frame_defaults( p_sys->frame );
+    av_frame_unref( p_sys->frame );
     p_sys->frame->format     = p_sys->p_context->sample_fmt;
     p_sys->frame->nb_samples = leftover_samples + p_sys->i_samples_delay;

@@ -1451,7 +1450,7 @@ static block_t *EncodeAudio( encoder_t *
     while( ( p_aout_buf->i_nb_samples >= p_sys->i_frame_size ) ||
            ( p_sys->b_variable && p_aout_buf->i_nb_samples ) )
     {
-        avcodec_get_frame_defaults( p_sys->frame );
+        av_frame_unref( p_sys->frame );
         if( p_sys->b_variable )
             p_sys->frame->nb_samples = p_aout_buf->i_nb_samples;
         else
@@ -1514,7 +1513,7 @@ void CloseEncoder( vlc_object_t *p_this
     encoder_t *p_enc = (encoder_t *)p_this;
     encoder_sys_t *p_sys = p_enc->p_sys;

-    /*FIXME: we should use avcodec_free_frame, but we don't require so new avcodec that has it*/
+    /*FIXME: we should use av_frame_free, but we don't require so new avcodec that has it*/
     av_freep( &p_sys->frame );

     vlc_avcodec_lock();
diff -ruNp vlc-2.2.3.orig/modules/codec/avcodec/vaapi.c vlc-2.2.3/modules/codec/avcodec/vaapi.c
--- vlc-2.2.3.orig/modules/codec/avcodec/vaapi.c	2014-11-16 19:57:58.000000000 +0100
+++ vlc-2.2.3/modules/codec/avcodec/vaapi.c	2016-05-21 19:19:07.452194264 +0200
@@ -595,7 +595,7 @@ static int Create( vlc_va_t *p_va, AVCod
         return err;

     /* Only VLD supported */
-    p_va->pix_fmt = PIX_FMT_VAAPI_VLD;
+    p_va->pix_fmt = AV_PIX_FMT_VAAPI_VLD;
     p_va->setup = Setup;
     p_va->get = Get;
     p_va->release = Release;
diff -ruNp vlc-2.2.3.orig/modules/codec/avcodec/video.c vlc-2.2.3/modules/codec/avcodec/video.c
--- vlc-2.2.3.orig/modules/codec/avcodec/video.c	2016-04-05 02:45:24.000000000 +0200
+++ vlc-2.2.3/modules/codec/avcodec/video.c	2016-05-21 19:19:07.453194260 +0200
@@ -108,8 +108,8 @@ static int lavc_GetFrame(struct AVCodecC
 static int  ffmpeg_GetFrameBuf    ( struct AVCodecContext *, AVFrame * );
 static void ffmpeg_ReleaseFrameBuf( struct AVCodecContext *, AVFrame * );
 #endif
-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *,
-                                          const enum PixelFormat * );
+static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *,
+                                            const enum AVPixelFormat * );

 static uint32_t ffmpeg_CodecTag( vlc_fourcc_t fcc )
 {
@@ -234,7 +234,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo
     p_sys->p_codec = p_codec;
     p_sys->i_codec_id = i_codec_id;
     p_sys->psz_namecodec = psz_namecodec;
-    p_sys->p_ff_pic = avcodec_alloc_frame();
+    p_sys->p_ff_pic = av_frame_alloc();
     p_sys->b_delayed_open = true;
     p_sys->p_va = NULL;
     vlc_sem_init( &p_sys->sem_mt, 0 );
@@ -446,7 +446,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo
     if( ffmpeg_OpenCodec( p_dec ) < 0 )
     {
         msg_Err( p_dec, "cannot open codec (%s)", p_sys->psz_namecodec );
-        avcodec_free_frame( &p_sys->p_ff_pic );
+        av_frame_free( &p_sys->p_ff_pic );
         vlc_sem_destroy( &p_sys->sem_mt );
         free( p_sys );
         return VLC_EGENERIC;
@@ -826,7 +826,7 @@ void EndVideoDec( decoder_t *p_dec )
     wait_mt( p_sys );

     if( p_sys->p_ff_pic )
-        avcodec_free_frame( &p_sys->p_ff_pic );
+        av_frame_free( &p_sys->p_ff_pic );

     if( p_sys->p_va )
         vlc_va_Delete( p_sys->p_va );
@@ -1313,8 +1313,8 @@ static void ffmpeg_ReleaseFrameBuf( stru
 }
 #endif

-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *p_context,
-                                          const enum PixelFormat *pi_fmt )
+static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *p_context,
+                                            const enum AVPixelFormat *pi_fmt )
 {
     decoder_t *p_dec = p_context->opaque;
     decoder_sys_t *p_sys = p_dec->p_sys;
@@ -1341,6 +1341,15 @@ static enum PixelFormat ffmpeg_GetFormat
     if (!can_hwaccel)
         goto end;

+#if (LIBAVCODEC_VERSION_MICRO >= 100) /* FFmpeg only */
+    if (p_context->active_thread_type)
+    {
+        msg_Warn(p_dec, "thread type %d: disabling hardware acceleration",
+                 p_context->active_thread_type);
+        goto end;
+    }
+#endif
+
     /* Profile and level information is needed now.
      * TODO: avoid code duplication with avcodec.c */
if( p_context->profile != FF_PROFILE_UNKNOWN)


code:
https://github.com/videolan/vlc/commit/c354efa3a2843d479c8fa9e929ff1064e5526bfa
--- modules/hw/vdpau/Makefile.am.orig	2015-04-16 22:29:26.299342749 -0700
+++ modules/hw/vdpau/Makefile.am	2015-04-16 22:31:40.886340950 -0700
@@ -45,6 +45,7 @@
 libvdpau_chroma_plugin_la_LIBADD = libvlc_vdpau.la
 vdpau_LTLIBRARIES += libvdpau_chroma_plugin.la

+if HAVE_XCB
 libvdpau_display_plugin_la_SOURCES = display.c
 libvdpau_display_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/../../video_output/xcb
 libvdpau_display_plugin_la_CFLAGS = $(AM_CFLAGS) $(XCB_CFLAGS)
@@ -52,3 +53,4 @@
 	../../video_output/libvlc_xcb_events.la \
 	$(AM_LIBADD) $(X_LIBS) $(X_PRE_LIBS) -lX11 $(XCB_LIBS)
 vdpau_LTLIBRARIES += libvdpau_display_plugin.la
+endif


code:
commit 41caaa08cde60c4fec4bf2e5f9610e2a1b9e6a23
Author: Vinson Lee <vlee@freedesktop.org>
Date:   Thu Feb 5 14:48:53 2015 -0800

    lua: Define LUA_COMPAT_APIINTCASTS for Lua >= 5.3.0 compatibility.

    In Lua 5.3.0, luaL_checkint was deprecated.

    This patch fixes this build error with Lua 5.3.0.

    lua/demux.c: In function ‘vlclua_demux_peek’:
    lua/demux.c:55:5: error: implicit declaration of function ‘luaL_checkint’ [-Werror=implicit-function-declaration]
         int n = luaL_checkint( L, 1 );
         ^

    Signed-off-by: Vinson Lee <vlee@freedesktop.org>
    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>

diff --git a/modules/lua/vlc.h b/modules/lua/vlc.h
index efd94f1..85c7fc1 100644
--- a/modules/lua/vlc.h
+++ b/modules/lua/vlc.h
@@ -38,6 +38,7 @@
 #include <vlc_stream.h>
 #include <vlc_demux.h>

+#define LUA_COMPAT_APIINTCASTS
 #define LUA_COMPAT_MODULE
 #include <lua.h>        /* Low level lua C API */
 #include <lauxlib.h>    /* Higher level C API */


code:
https://gist.github.com/karolherbst/fb9e3d8f6ba05f1f5d54
For use until upstream ever accepts this patch or fixes it themsleves
--- configure.ac.orig	2015-03-01 02:28:48.983932684 +0100
+++ configure.ac	2015-03-01 02:41:29.641927072 +0100
@@ -3709,7 +3709,8 @@
   ])
 ])
 AS_IF([test "${enable_qt}" != "no"], [
-  PKG_CHECK_MODULES([QT], [Qt5Core >= 5.1.0 Qt5Widgets Qt5Gui], [
+  AS_IF([test "${enable_qt}" != "4"], [
+    PKG_CHECK_MODULES([QT], [Qt5Core >= 5.1.0 Qt5Widgets Qt5Gui], [
       PKG_CHECK_MODULES([QTX11], [Qt5X11Extras], [
           VLC_ADD_LIBS([qt4],[${QTX11_LIBS}])
           VLC_ADD_CXXFLAGS([qt4],[${QTX11_CFLAGS} -DQT5_HAS_X11])
@@ -3721,20 +3722,23 @@
       AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
       AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
       AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+      enable_qt="5"
-    ], [
-      PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [
-        AS_IF([test -n "${enable_qt}"],[
-          AC_MSG_ERROR([${QT_PKG_ERRORS}.])
-        ],[
-          AC_MSG_WARN([${QT_PKG_ERRORS}.])
-        ])
-        enable_qt="no"
+    ])
+  ])
+  AS_IF([test "${enable_qt}" != "5"], [
+    PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [
+      AS_IF([test -n "${enable_qt}"],[
+        AC_MSG_ERROR([${QT_PKG_ERRORS}.])
+      ],[
+        AC_MSG_WARN([${QT_PKG_ERRORS}.])
       ])
-      QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix QtCore)"
-      AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
-      AC_PATH_PROG(RCC, rcc, rcc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
-      AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+      enable_qt="no"
     ])
+    QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix QtCore)"
+    AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+    AC_PATH_PROG(RCC, rcc, rcc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+    AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+  ])
 ])
 AS_IF([test "${enable_qt}" != "no"], [
   VLC_ADD_PLUGIN([qt4])


code:
--- modules/codec/dmo/dmo.c~	2012-09-14 00:02:04.000000000 +0800
+++ modules/codec/dmo/dmo.c	2012-10-16 07:10:41.145463290 +0800
@@ -546,7 +546,7 @@
         }

         p_bih = &p_vih->bmiHeader;
-        p_bih->biCompression = i_chroma == VLC_CODEC_RGB24 ? BI_RGB : i_chroma;
+        p_bih->biCompression = i_chroma == VLC_CODEC_RGB24 ? 0L : i_chroma;
         p_bih->biHeight *= -1;
         p_bih->biBitCount = p_dec->fmt_out.video.i_bits_per_pixel;
         p_bih->biSizeImage = p_dec->fmt_in.video.i_width *


code:
diff -rupN a/modules/codec/avcodec/vaapi.c b/modules/codec/avcodec/vaapi.c
--- a/modules/codec/avcodec/vaapi.c	2013-01-22 09:51:40.000000000 +0000
+++ b/modules/codec/avcodec/vaapi.c	2013-07-27 17:23:37.965202118 +0000
@@ -47,6 +47,7 @@

 #include <X11/Xlib.h>
 #include <va/va_x11.h>
+#include <va/va_compat.h>

 typedef struct
 {


code:
index 2debbcd..72e7fcf 100644
--- a/modules/audio_output/pulse.c
+++ b/modules/audio_output/pulse.c
@@ -472,8 +472,17 @@ static void stream_underflow_cb(pa_stream *s, void *userdata)
 {
+    uint32_t rate = pa_stream_get_sample_spec(s)->rate;
     audio_output_t *aout = userdata;

-    msg_Dbg(aout, "underflow");
-    (void) s;
+    msg_Warn(aout, "underflow");
+    stream_stop(s, aout);
+
+    aout_sys_t *sys = aout->sys;
+    sys->first_pts = VLC_TS_INVALID;
+
+    pa_operation *op = pa_stream_update_sample_rate(s, rate, NULL, NULL);
+    if (unlikely(op == NULL))
+        return;
+    pa_operation_unref(op);
 }

 static int stream_wait(pa_stream *stream, pa_threaded_mainloop *mainloop)


code:
--- share/vlc.desktop.in.OSmanOS	2013-06-24 21:00:39.000000000 +0300
+++ share/vlc.desktop.in	        2013-11-16 18:49:06.848928443 +0200
@@ -73,6 +73,7 @@
 GenericName[sv]=Mediaspelare
 Comment[sv]=Spelare för film och musik
+Comment[tr]=VLC medya oynatıcı
 Name[te]=VLC మాధ్యమ ప్రదర్శకం
 GenericName[te]=మాధ్యమ ప్రదర్శకం
 Comment[te]=మీ బహుళమాధ్యమ ప్రవాహాలను చదువు, బంధించు మరియు ప్రసారం చేయి


code:
diff --git a/configure.ac b/configure.ac
index a684338..053713a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2242,8 +2242,8 @@ AC_ARG_ENABLE(avcodec,
 [  --enable-avcodec        libavcodec codec (default enabled)])
 AS_IF([test "${enable_avcodec}" != "no"], [
   PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 53.34.0 libavutil >= 51.22.0], [
-    PKG_CHECK_EXISTS([libavcodec < 56],, [
-      AC_MSG_ERROR([libavcodec versions 56 and later are not supported yet.])
+    PKG_CHECK_EXISTS([libavcodec < 57],, [
+      AC_MSG_ERROR([libavcodec versions 57 and later are not supported yet.])
     ])
     VLC_SAVE_FLAGS
     CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"


code:
--- a/modules/access/rdp.c	2014-11-22 01:40:52.044973648 -0800
+++ b/modules/access/rdp.c	2014-11-22 01:36:44.291975380 -0800
@@ -399,7 +404,9 @@
     if ( p_sys->f_fps <= 0 ) p_sys->f_fps = 1.0;
     p_sys->i_frame_interval = 1000000 / p_sys->f_fps;

+#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2))
     freerdp_channels_global_init();
+#endif

     p_sys->p_instance = freerdp_new();
     if ( !p_sys->p_instance )
@@ -475,7 +482,10 @@

     freerdp_disconnect( p_sys->p_instance );
     freerdp_free( p_sys->p_instance );
+
+#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2))
     freerdp_channels_global_uninit();
+#endif

     if ( p_sys->p_block )
         block_Release( p_sys->p_block );


code:
--- vlc-2.2.2/configure.ac
+++ vlc-2.2.2/configure.ac
@@ -3754,10 +3754,6 @@
           AC_MSG_WARN([Not building Qt Interface with X11 helpers.])
       ])

-      PKG_CHECK_EXISTS([Qt5Core >= 5.5.0 Qt5Core < 5.6.0], [
-        AC_MSG_ERROR(["You cannot build VLC with Qt-5.5.0. You need to backport I78ef29975181ee22429c9bd4b11d96d9e68b7a9c"])
-      ])
-
       QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix Qt5Core)"
       QT_HOST_PATH="$(eval $PKG_CONFIG --variable=host_bins Qt5Core)"
       AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])


code:
X-Git-Url: https://git.videolan.org/?p=vlc.git;a=blobdiff_plain;f=modules%2Faudio_output%2Falsa.c;h=4e9fd53592d048baa8b57f30df15ab5806139d07;hp=2d1f99e9cb743bca12c6bdf32cc84a92d07fda8b;hb=47f74a83c161173b0d15e95dab8ceb7c97de51b4;hpb=6ae2905ef7fbc7de3a3a4a1bdf8ad6df46ce570a

diff --git a/modules/audio_output/alsa.c b/modules/audio_output/alsa.c
index 2d1f99e..4e9fd53 100644
--- a/modules/audio_output/alsa.c
+++ b/modules/audio_output/alsa.c
@@ -495,6 +495,15 @@ static int Start (audio_output_t *aout, audio_sample_format_t *restrict fmt)
     }
     sys->rate = fmt->i_rate;

+#if 1 /* work-around for period-long latency outputs (e.g. PulseAudio): */
+    param = AOUT_MIN_PREPARE_TIME;
+    val = snd_pcm_hw_params_set_period_time_near (pcm, hw, &param, NULL);
+    if (val)
+    {
+        msg_Err (aout, "cannot set period: %s", snd_strerror (val));
+        goto error;
+    }
+#endif
     /* Set buffer size */
     param = AOUT_MAX_ADVANCE_TIME;
     val = snd_pcm_hw_params_set_buffer_time_near (pcm, hw, &param, NULL);
@@ -503,14 +512,22 @@ static int Start (audio_output_t *aout, audio_sample_format_t *restrict fmt)
         msg_Err (aout, "cannot set buffer duration: %s", snd_strerror (val));
         goto error;
     }
-
-    param = AOUT_MIN_PREPARE_TIME;
+#if 0
+    val = snd_pcm_hw_params_get_buffer_time (hw, &param, NULL);
+    if (val)
+    {
+        msg_Warn (aout, "cannot get buffer time: %s", snd_strerror(val));
+        param = AOUT_MIN_PREPARE_TIME;
+    }
+    else
+        param /= 2;
     val = snd_pcm_hw_params_set_period_time_near (pcm, hw, &param, NULL);
     if (val)
     {
         msg_Err (aout, "cannot set period: %s", snd_strerror (val));
         goto error;
     }
+#endif

     /* Commit hardware parameters */
     val = snd_pcm_hw_params (pcm, hw);


code:
--- a/configure.ac	2016-09-21 07:10:58.885508665 +0200
+++ b/configure.ac	2016-09-21 07:19:17.835725004 +0200
@@ -3746,7 +3746,7 @@
     PKG_CHECK_MODULES([QT], [Qt5Core >= 5.1.0 Qt5Widgets Qt5Gui], [
       PKG_CHECK_MODULES([QTX11], [Qt5X11Extras], [
           VLC_ADD_LIBS([qt4],[${QTX11_LIBS}])
-          VLC_ADD_CXXFLAGS([qt4],[${QTX11_CFLAGS} -DQT5_HAS_X11])
+          VLC_ADD_CXXFLAGS([qt4],[${QTX11_CFLAGS} -DQT5_HAS_X11 -std=c++0x])
           PKG_CHECK_MODULES([XI], [xi], [
             VLC_ADD_LIBS([qt4], [${XI_LIBS}])
             VLC_ADD_CXXFLAGS([qt4], [${XI_CFLAGS} -DHAVE_XI])


code:
X-Git-Url: https://git.videolan.org/?p=vlc.git;a=blobdiff_plain;f=src%2Finput%2Fdecoder.c;h=fe3cd428c65c18bfbdadb55baf11521afdc2bfc7;hp=83aa5bf54e2c29ad93fae803117558e4fcd0f658;hb=6ae2905ef7fbc7de3a3a4a1bdf8ad6df46ce570a;hpb=5b2de76965ee8b1ab5e3257f8b6d71bbb4e9e3f9

--- a/src/input/decoder.c
+++ b/src/input/decoder.c
@@ -1162,7 +1162,10 @@
         b_paused = p_owner->b_paused;

         if (!p_audio)
+        {
+            vlc_mutex_unlock( &p_owner->lock );
             break;
+        }

         /* */
         int i_rate = INPUT_RATE_DEFAULT;
@@ -1180,6 +1183,9 @@

         if( unlikely(p_owner->b_paused != b_paused) )
             continue; /* race with input thread? retry... */
+
+        vlc_mutex_unlock( &p_owner->lock );
+
         if( p_aout == NULL )
             b_reject = true;

@@ -1199,7 +1205,6 @@

         break;
     }
-    vlc_mutex_unlock( &p_owner->lock );
 }

 static void DecoderDecodeAudio( decoder_t *p_dec, block_t *p_block )
@@ -1961,11 +1966,10 @@

         /* Parameters changed, restart the aout */
         vlc_mutex_lock( &p_owner->lock );
-
-        aout_DecDelete( p_owner->p_aout );
         p_owner->p_aout = NULL;
-
         vlc_mutex_unlock( &p_owner->lock );
+        aout_DecDelete( p_owner->p_aout );
+
         input_resource_PutAout( p_owner->p_resource, p_aout );
     }


code:
--- a/modules/codec/avcodec/audio.c	2016-09-10 13:46:51.066453337 -0700
+++ a/modules/codec/avcodec/audio.c	2016-09-10 13:42:26.061451090 -0700
@@ -38,6 +38,7 @@

 #include <libavcodec/avcodec.h>
 #include <libavutil/mem.h>
+#include <libavutil/channel_layout.h>

 #include "avcodec.h"


code:
As the 2.2 headers are still using vlc_atomics (picture)
we cannot have a way to avoid collisions with early
or late <atomic> inclusion when using GCC >= 4.7

Conditionals in vlc_atomic won't work.

Happens in ProjectM and Qt5.
---
 modules/gui/qt4/actions_manager.cpp                |  2 ++
 modules/gui/qt4/adapters/seekpoints.cpp            |  4 +--
 modules/gui/qt4/adapters/seekpoints.hpp            |  4 +--
 modules/gui/qt4/components/controller.cpp          |  2 ++
 .../gui/qt4/components/playlist/playlist_model.hpp |  4 +--
 modules/gui/qt4/components/playlist/views.cpp      |  6 ++++
 modules/gui/qt4/dialogs/messages.cpp               |  2 ++
 modules/gui/qt4/dialogs/vlm.cpp                    |  4 ---
 modules/gui/qt4/dialogs/vlm.hpp                    |  4 ++-
 modules/gui/qt4/input_manager.cpp                  |  2 ++
 modules/gui/qt4/input_manager.hpp                  |  3 +-
 modules/gui/qt4/menus.cpp                          |  2 ++
 modules/gui/qt4/qt4.hpp                            | 32 ++++++++++++++++++----
 modules/gui/qt4/util/pictureflow.cpp               |  2 ++
 modules/visualization/projectm.cpp                 |  4 +++
 15 files changed, 56 insertions(+), 21 deletions(-)

diff --git a/modules/gui/qt4/actions_manager.cpp b/modules/gui/qt4/actions_manager.cpp
index eff40d9..b7ca967 100644
--- a/modules/gui/qt4/actions_manager.cpp
+++ b/modules/gui/qt4/actions_manager.cpp
@@ -25,6 +25,8 @@
 # include "config.h"
 #endif

+#include "qt4.hpp"
+
 #include <vlc_vout.h>
 #include <vlc_keys.h>

diff --git a/modules/gui/qt4/adapters/seekpoints.cpp b/modules/gui/qt4/adapters/seekpoints.cpp
index fbf2957..a3564bb 100644
--- a/modules/gui/qt4/adapters/seekpoints.cpp
+++ b/modules/gui/qt4/adapters/seekpoints.cpp
@@ -19,14 +19,12 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/

+#include "seekpoints.hpp"

 #include "recents.hpp"
 #include "dialogs_provider.hpp"
 #include "menus.hpp"

-#include "seekpoints.hpp"
-
-#include "qt4.hpp"
 #include "input_manager.hpp"

 SeekPoints::SeekPoints( QObject *parent, intf_thread_t *p_intf_ ) :
diff --git a/modules/gui/qt4/adapters/seekpoints.hpp b/modules/gui/qt4/adapters/seekpoints.hpp
index 0083989..bbb9214 100644
--- a/modules/gui/qt4/adapters/seekpoints.hpp
+++ b/modules/gui/qt4/adapters/seekpoints.hpp
@@ -22,9 +22,7 @@
 #ifndef SEEKPOINTS_HPP
 #define SEEKPOINTS_HPP

-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
+#include "qt4.hpp"

 #include <vlc_common.h>
 #include <vlc_interface.h>
diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp
index d93e0db..c43d929 100644
--- a/modules/gui/qt4/components/controller.cpp
+++ b/modules/gui/qt4/components/controller.cpp
@@ -26,6 +26,8 @@
 # include "config.h"
 #endif

+#include "qt4.hpp"
+
 #include <vlc_vout.h>                       /* vout_thread_t for FSC */

 /* Widgets */
diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp
index f9d1d0c..1f71ac9 100644
--- a/modules/gui/qt4/components/playlist/playlist_model.hpp
+++ b/modules/gui/qt4/components/playlist/playlist_model.hpp
@@ -25,9 +25,7 @@
 #ifndef _PLAYLIST_MODEL_H_
 #define _PLAYLIST_MODEL_H_

-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
+#include "qt4.hpp"

 #include <vlc_input.h>
 #include <vlc_playlist.h>
diff --git a/modules/gui/qt4/components/playlist/views.cpp b/modules/gui/qt4/components/playlist/views.cpp
index 59f6535..0066205 100644
--- a/modules/gui/qt4/components/playlist/views.cpp
+++ b/modules/gui/qt4/components/playlist/views.cpp
@@ -21,6 +21,12 @@
  * 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/

+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "qt4.hpp"
+
 #include "components/playlist/views.hpp"
 #include "components/playlist/vlc_model.hpp"      /* VLCModel */
 #include "components/playlist/sorting.h"          /* Columns List */
diff --git a/modules/gui/qt4/dialogs/messages.cpp b/modules/gui/qt4/dialogs/messages.cpp
index 30793a2..9c79c99 100644
--- a/modules/gui/qt4/dialogs/messages.cpp
+++ b/modules/gui/qt4/dialogs/messages.cpp
@@ -24,6 +24,8 @@
 # include "config.h"
 #endif

+#include "qt4.hpp"
+
 #include "dialogs/messages.hpp"

 #include <QPlainTextEdit>
diff --git a/modules/gui/qt4/dialogs/vlm.cpp b/modules/gui/qt4/dialogs/vlm.cpp
index 0da88cc..595f015 100644
--- a/modules/gui/qt4/dialogs/vlm.cpp
+++ b/modules/gui/qt4/dialogs/vlm.cpp
@@ -23,10 +23,6 @@
  * Foundation, Inc., 51 Franklin street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/

-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
 #include "dialogs/vlm.hpp"

 #ifdef ENABLE_VLM
diff --git a/modules/gui/qt4/dialogs/vlm.hpp b/modules/gui/qt4/dialogs/vlm.hpp
index a3c6e5d..dcf7110 100644
--- a/modules/gui/qt4/dialogs/vlm.hpp
+++ b/modules/gui/qt4/dialogs/vlm.hpp
@@ -25,8 +25,10 @@
 #ifndef QVLC_VLM_DIALOG_H_
 #define QVLC_VLM_DIALOG_H_ 1

+#include "qt4.hpp"
+
 #ifdef HAVE_CONFIG_H
-# include "config.h"
+#include "config.h"
 #endif

 #ifdef ENABLE_VLM
diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp
index fd45f4a..c50cb6c 100644
--- a/modules/gui/qt4/input_manager.cpp
+++ b/modules/gui/qt4/input_manager.cpp
@@ -30,6 +30,8 @@
 # include "config.h"
 #endif

+#include "qt4.hpp"
+
 #include "input_manager.hpp"
 #include "recents.hpp"

diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp
index 7d3b76a..4fbecbb 100644
--- a/modules/gui/qt4/input_manager.hpp
+++ b/modules/gui/qt4/input_manager.hpp
@@ -29,9 +29,10 @@
 # include "config.h"
 #endif

+#include "qt4.hpp"
+
 #include <vlc_input.h>

-#include "qt4.hpp"
 #include "util/singleton.hpp"
 #include "adapters/variables.hpp"

diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp
index 116e98c..46240b0 100644
--- a/modules/gui/qt4/menus.cpp
+++ b/modules/gui/qt4/menus.cpp
@@ -34,6 +34,8 @@
 # include "config.h"
 #endif

+#include "qt4.hpp"
+
 #include <vlc_common.h>
 #include <vlc_intf_strings.h>
 #include <vlc_vout.h>                             /* vout_thread_t */
diff --git a/modules/gui/qt4/qt4.hpp b/modules/gui/qt4/qt4.hpp
index 44d7db6..5aec957 100644
--- a/modules/gui/qt4/qt4.hpp
+++ b/modules/gui/qt4/qt4.hpp
@@ -29,12 +29,7 @@
 # include "config.h"
 #endif

-#include <vlc_common.h>    /* VLC_COMMON_MEMBERS for vlc_interface.h */
-#include <vlc_interface.h> /* intf_thread_t */
-#include <vlc_playlist.h>  /* playlist_t */
-
-#define QT_NO_CAST_TO_ASCII
-#include <QString>
+#include <QtGlobal>

 #if ( QT_VERSION < 0x040600 )
 # error Update your Qt version to at least 4.6.0
@@ -43,6 +38,31 @@
 #define HAS_QT47 ( QT_VERSION >= 0x040700 )
 #define HAS_QT5  ( QT_VERSION >= 0x050000 )

+#if HAS_QT5
+  #include <QtCore/qcompilerdetection.h>
+  #if defined(Q_COMPILER_ATOMICS) && \
+             ( __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7 ) )
+   #define VLC_ATOMIC_H
+   #include <atomic>
+   using namespace std;
+   #  define atomic_store(object,desired) \
+      do { \
+          *(object) = (desired); \
+          __sync_synchronize(); \
+      } while (0)
+
+   #  define atomic_load(object) \
+       (__sync_synchronize(), *(object))
+  #endif
+#endif
+
+#include <vlc_common.h>    /* VLC_COMMON_MEMBERS for vlc_interface.h */
+#include <vlc_interface.h> /* intf_thread_t */
+#include <vlc_playlist.h>  /* playlist_t */
+
+#define QT_NO_CAST_TO_ASCII
+#include <QString>
+
 enum {
     DialogEventTypeOffset = 0,
     IMEventTypeOffset     = 100,
diff --git a/modules/gui/qt4/util/pictureflow.cpp b/modules/gui/qt4/util/pictureflow.cpp
index 9318953..a7e6a01 100644
--- a/modules/gui/qt4/util/pictureflow.cpp
+++ b/modules/gui/qt4/util/pictureflow.cpp
@@ -29,6 +29,8 @@
   THE SOFTWARE.
 */

+#include "qt4.hpp"
+
 #include "pictureflow.hpp"

 #include <QApplication>
diff --git a/modules/visualization/projectm.cpp b/modules/visualization/projectm.cpp
index e80fbf4..96d532d 100644
--- a/modules/visualization/projectm.cpp
+++ b/modules/visualization/projectm.cpp
@@ -30,6 +30,10 @@
 #endif

 #include <assert.h>
+#if defined(__GNUC__) && \
+           ( __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7 ) )
+  #define VLC_ATOMIC_H /* Ensure C atomics wont collide with old intrinsics */
+#endif

 #include <vlc_common.h>
 #include <vlc_plugin.h>
--
2.7.4


code:
--- a/modules/codec/avcodec/vaapi.c
+++ b/modules/codec/avcodec/vaapi.c
@@ -34,6 +34,9 @@
 #ifdef VLC_VA_BACKEND_XLIB
 # include <vlc_xlib.h>
 # include <va/va_x11.h>
+#if VA_MINOR_VERSION >= 34
+# include <va/va_compat.h>
+#endif
 #endif
 #ifdef VLC_VA_BACKEND_DRM
 # include <sys/types.h>


code:
From 66842e08e177e3c458fa0e4db970deae84feb625 Mon Sep 17 00:00:00 2001
From: Jean-Baptiste Kempf <jb@videolan.org>
Date: Tue, 26 May 2015 13:39:00 +0200
Subject: [PATCH 01/13] Fix C++11 compilation of atomic

Close #14569
---
 include/vlc_atomic.h | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)

Index: vlc-2.2.3/include/vlc_atomic.h
===================================================================
--- vlc-2.2.3.orig/include/vlc_atomic.h
+++ vlc-2.2.3/include/vlc_atomic.h
@@ -26,13 +26,20 @@
  * Atomic operations do not require locking, but they are not very powerful.
  */

-# if !defined (__cplusplus) && (__STDC_VERSION__ >= 201112L) \
-  && !defined (__STDC_NO_ATOMICS__)
+/* Clang older versions support atomics but lacks the stdatomic.h header */
+#if defined(__clang__)
+# if !defined(__has_include) || !__has_include(<stdatomic.h>)
+#  define __STDC_NO_ATOMICS__ 1
+# endif
+#endif

+# ifndef __cplusplus
+#  if (__STDC_VERSION__ >= 201112L) && !defined (__STDC_NO_ATOMICS__)
 /*** Native C11 atomics ***/
-#  include <stdatomic.h>
+#   include <stdatomic.h>

-# else
+#  else
+/*** Intel/GCC atomics ***/

 #  define ATOMIC_FLAG_INIT false

@@ -53,22 +60,6 @@
 #  define atomic_is_lock_free(obj) \
     false

-/* In principles, __sync_*() only supports int, long and long long and their
- * unsigned equivalents, i.e. 4-bytes and 8-bytes types, although GCC also
- * supports 1 and 2-bytes types. Some non-x86 architectures do not support
- * 8-byte atomic types (or not efficiently). */
-#  if defined (_MSC_VER)
-/* Some atomic operations of the Interlocked API are only
-   available for desktop apps. Thus we define the atomic types to
-   be at least 32 bits wide. */
-typedef      int_least32_t atomic_flag;
-typedef      int_least32_t atomic_bool;
-typedef      int_least32_t atomic_char;
-typedef      int_least32_t atomic_schar;
-typedef     uint_least32_t atomic_uchar;
-typedef      int_least32_t atomic_short;
-typedef     uint_least32_t atomic_ushort;
-#  else
 typedef          bool      atomic_flag;
 typedef          bool      atomic_bool;
 typedef          char      atomic_char;
@@ -76,7 +67,6 @@ typedef   signed char      atomic_schar;
 typedef unsigned char      atomic_uchar;
 typedef          short     atomic_short;
 typedef unsigned short     atomic_ushort;
-#  endif
 typedef          int       atomic_int;
 typedef unsigned int       atomic_uint;
 typedef          long      atomic_long;
@@ -109,10 +99,6 @@ typedef         ptrdiff_t atomic_ptrdiff
 typedef          intmax_t atomic_intmax_t;
 typedef         uintmax_t atomic_uintmax_t;

-# if defined (__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4) || (defined (__clang__) && (defined (__x86_64__) || defined (__i386__)))
-
-/*** Intel/GCC atomics ***/
-
 #  define atomic_store(object,desired) \
     do { \
         *(object) = (desired); \
@@ -203,204 +189,7 @@ typedef         uintmax_t atomic_uintmax
 #  define atomic_flag_clear_explicit(object,order) \
     atomic_flag_clear(object)

-# elif defined (__GNUC__)
-
-/*** No atomics ***/
-
-#  define atomic_store(object,desired) \
-    do { \
-        typeof (object) _obj = (object); \
-        typeof (*object) _des = (desired); \
-        vlc_global_lock(VLC_ATOMIC_MUTEX); \
-        *_obj = _des; \
-        vlc_global_unlock(VLC_ATOMIC_MUTEX); \
-    } while (0)
-#  define atomic_store_explicit(object,desired,order) \
-    atomic_store(object,desired)
-
-#  define atomic_load(object) \
-({ \
-    typeof (object) _obj = (object); \
-    typeof (*object) _old; \
-    vlc_global_lock(VLC_ATOMIC_MUTEX); \
-    _old = *_obj; \
-    vlc_global_unlock(VLC_ATOMIC_MUTEX); \
-    _old; \
-})
-#  define atomic_load_explicit(object,order) \
-    atomic_load(object)
-
-#  define atomic_exchange(object,desired) \
-({ \
-    typeof (object) _obj = (object); \
-    typeof (*object) _des = (desired); \
-    typeof (*object) _old; \
-    vlc_global_lock(VLC_ATOMIC_MUTEX); \
-    _old = *_obj; \
-    *_obj = _des; \
-    vlc_global_unlock(VLC_ATOMIC_MUTEX); \
-    _old; \
-})
-#  define atomic_exchange_explicit(object,desired,order) \
-    atomic_exchange(object,desired)
-
-#  define atomic_compare_exchange_strong(object,expected,desired) \
-({ \
-    typeof (object) _obj = (object); \
-    typeof (object) _exp = (expected); \
-    typeof (*object) _des = (desired); \
-    bool ret; \
-    vlc_global_lock(VLC_ATOMIC_MUTEX); \
-    ret = *_obj == *_exp; \
-    if (ret) \
-        *_obj = _des; \
-    else \
-        *_exp = *_obj; \
-    vlc_global_unlock(VLC_ATOMIC_MUTEX); \
-    ret; \
-})
-#  define atomic_compare_exchange_strong_explicit(object,expected,desired,order) \
-    atomic_compare_exchange_strong(object, expected, desired)
-#  define atomic_compare_exchange_weak(object,expected,desired) \
-    atomic_compare_exchange_strong(object, expected, desired)
-#  define atomic_compare_exchange_weak_explicit(object,expected,desired,order) \
-    atomic_compare_exchange_weak(object, expected, desired)
-
-#  define atomic_fetch_OP(object,desired,op) \
-({ \
-    typeof (object) _obj = (object); \
-    typeof (*object) _des = (desired); \
-    typeof (*object) _old; \
-    vlc_global_lock(VLC_ATOMIC_MUTEX); \
-    _old = *_obj; \
-    *_obj = (*_obj) op (_des); \
-    vlc_global_unlock(VLC_ATOMIC_MUTEX); \
-    _old; \
-})
-
-#  define atomic_fetch_add(object,operand) \
-    atomic_fetch_OP(object,operand,+)
-#  define atomic_fetch_add_explicit(object,operand,order) \
-    atomic_fetch_add(object,operand)
-
-#  define atomic_fetch_sub(object,operand) \
-    atomic_fetch_OP(object,operand,-)
-#  define atomic_fetch_sub_explicit(object,operand,order) \
-    atomic_fetch_sub(object,operand)
-
-#  define atomic_fetch_or(object,operand) \
-    atomic_fetch_OP(object,operand,|)
-#  define atomic_fetch_or_explicit(object,operand,order) \
-    atomic_fetch_or(object,operand)
-
-#  define atomic_fetch_xor(object,operand) \
-    atomic_fetch_OP(object,operand,^)
-#  define atomic_fetch_xor_explicit(object,operand,order) \
-    atomic_fetch_sub(object,operand)
-
-#  define atomic_fetch_and(object,operand) \
-    atomic_fetch_OP(object,operand,&)
-#  define atomic_fetch_and_explicit(object,operand,order) \
-    atomic_fetch_and(object,operand)
-
-#  define atomic_flag_test_and_set(object) \
-    atomic_exchange(object, true)
-
-#  define atomic_flag_test_and_set_explicit(object,order) \
-    atomic_flag_test_and_set(object)
-
-#  define atomic_flag_clear(object) \
-    atomic_store(object, false)
-
-#  define atomic_flag_clear_explicit(object,order) \
-    atomic_flag_clear(object)
-
-# elif defined (_MSC_VER)
-
-# include <windows.h>
-
-/*** Use the Interlocked API. ***/
-
-/* Define macros in order to dispatch to the correct function depending on the type.
-   Several ranges are need because some operations are not implemented for all types. */
-#  define atomic_type_dispatch_32_64(operation, object, ...) \
-    (sizeof(*object) == 4 ? operation((LONG *)object, __VA_ARGS__) : \
-    sizeof(*object) == 8 ? operation##64((LONGLONG *)object, __VA_ARGS__) : \
-    (abort(), 0))
-
-#  define atomic_type_dispatch_16_64(operation, object, ...) \
-    (sizeof(*object) == 2 ? operation##16((short *)object, __VA_ARGS__) : \
-    atomic_type_dispatch_32_64(operation, object, __VA_ARGS__))
-
-#  define atomic_type_dispatch_8_64(operation, object, ...) \
-    (sizeof(*object) == 1 ? operation##8((char *)object, __VA_ARGS__) : \
-    atomic_type_dispatch_16_64(operation, object, __VA_ARGS__))
-
-#  define atomic_store(object,desired) \
-    atomic_type_dispatch_16_64(InterlockedExchange, object, desired)
-#  define atomic_store_explicit(object,desired,order) \
-    atomic_store(object, desired)
-
-#  define atomic_load(object) \
-    atomic_type_dispatch_16_64(InterlockedCompareExchange, object, 0, 0)
-#  define atomic_load_explicit(object,order) \
-    atomic_load(object)
-
-#  define atomic_exchange(object,desired) \
-    atomic_type_dispatch_16_64(InterlockedExchange, object, desired)
-#  define atomic_exchange_explicit(object,desired,order) \
-    atomic_exchange(object, desired)
-
-#  define atomic_compare_exchange_strong(object,expected,desired) \
-    atomic_type_dispatch_16_64(InterlockedCompareExchange, object, *expected, desired) == *expected
-#  define atomic_compare_exchange_strong_explicit(object,expected,desired,order) \
-    atomic_compare_exchange_strong(object, expected, desired)
-#  define atomic_compare_exchange_weak(object,expected,desired) \
-    atomic_compare_exchange_strong(object, expected, desired)
-#  define atomic_compare_exchange_weak_explicit(object,expected,desired,order) \
-    atomic_compare_exchange_weak(object, expected, desired)
-
-#  define atomic_fetch_add(object,operand) \
-    atomic_type_dispatch_32_64(InterlockedExchangeAdd, object, operand)
-#  define atomic_fetch_add_explicit(object,operand,order) \
-    atomic_fetch_add(object, operand)
-
-#  define atomic_fetch_sub(object,operand) \
-    atomic_type_dispatch_32_64(InterlockedExchangeAdd, object, -(LONGLONG)operand)
-#  define atomic_fetch_sub_explicit(object,operand,order) \
-    atomic_fetch_sub(object, operand)
-
-#  define atomic_fetch_or(object,operand) \
-    atomic_type_dispatch_8_64(InterlockedOr, object, operand)
-#  define atomic_fetch_or_explicit(object,operand,order) \
-    atomic_fetch_or(object, operand)
-
-#  define atomic_fetch_xor(object,operand) \
-    atomic_type_dispatch_8_64(InterlockedXor, object, operand)
-#  define atomic_fetch_xor_explicit(object,operand,order) \
-    atomic_fetch_sub(object, operand)
-
-#  define atomic_fetch_and(object,operand) \
-    atomic_type_dispatch_8_64(InterlockedAnd, object, operand)
-#  define atomic_fetch_and_explicit(object,operand,order) \
-    atomic_fetch_and(object, operand)
-
-#  define atomic_flag_test_and_set(object) \
-    atomic_exchange(object, true)
-
-#  define atomic_flag_test_and_set_explicit(object,order) \
-    atomic_flag_test_and_set(object)
-
-#  define atomic_flag_clear(object) \
-    atomic_store(object, false)
-
-#  define atomic_flag_clear_explicit(object,order) \
-    atomic_flag_clear(object)
-
-# else
-#  error FIXME: implement atomic operations for this compiler.
-# endif
-# endif
+# endif /* !C11 */

 typedef atomic_uint_least32_t vlc_atomic_float;

@@ -427,4 +216,9 @@ static inline void vlc_atomic_store_floa
     atomic_store(atom, u.i);
 }

+# else /* C++ */
+/*** Native C++11 atomics ***/
+#   include <atomic>
+# endif /* C++ */
+
 #endif
Index: vlc-2.2.3/include/vlc_spu.h
===================================================================
--- vlc-2.2.3.orig/include/vlc_spu.h
+++ vlc-2.2.3/include/vlc_spu.h
@@ -45,9 +45,6 @@ extern "C" {

 typedef struct spu_private_t spu_private_t;

-/* Default subpicture channel ID */
-#define SPU_DEFAULT_CHANNEL (1)
-
 /**
  * Subpicture unit descriptor
  */
Index: vlc-2.2.3/include/vlc_vout_osd.h
===================================================================
--- vlc-2.2.3.orig/include/vlc_vout_osd.h
+++ vlc-2.2.3/include/vlc_vout_osd.h
@@ -26,12 +26,13 @@
 #ifndef VLC_VOUT_OSD_H
 #define VLC_VOUT_OSD_H 1

-#include <vlc_spu.h>
-
 #ifdef __cplusplus
 extern "C" {
 #endif

+//* Default subpicture channel ID */
+#define SPU_DEFAULT_CHANNEL (1)
+
 /**
  * OSD menu position and picture type defines
  */
Index: vlc-2.2.3/src/video_output/video_output.c
===================================================================
--- vlc-2.2.3.orig/src/video_output/video_output.c
+++ vlc-2.2.3/src/video_output/video_output.c
@@ -43,6 +43,7 @@
 #include <vlc_vout.h>

 #include <vlc_filter.h>
+#include <vlc_spu.h>
 #include <vlc_vout_osd.h>
 #include <vlc_image.h>

Index: vlc-2.2.3/modules/gui/qt4/dialogs/messages.hpp
===================================================================
--- vlc-2.2.3.orig/modules/gui/qt4/dialogs/messages.hpp
+++ vlc-2.2.3/modules/gui/qt4/dialogs/messages.hpp
@@ -28,8 +28,8 @@
 #include "util/singleton.hpp"
 #include "ui/messages_panel.h"
 #include <stdarg.h>
-#include <vlc_atomic.h>
 #include <QMutex>
+#include <QAtomicInt>

 class QTabWidget;
 class QPushButton;
@@ -55,7 +55,7 @@ private:
     void sinkMessage( const MsgEvent * );
     bool matchFilter( const QString& );

-    atomic_uint verbosity;
+    QAtomicInt verbosity;
     static void MsgCallback( void *, int, const vlc_log_t *, const char *,
                              va_list );

Index: vlc-2.2.3/modules/gui/qt4/dialogs/messages.cpp
===================================================================
--- vlc-2.2.3.orig/modules/gui/qt4/dialogs/messages.cpp
+++ vlc-2.2.3/modules/gui/qt4/dialogs/messages.cpp
@@ -143,7 +143,7 @@ MessagesDialog::~MessagesDialog()

 void MessagesDialog::changeVerbosity( int i_verbosity )
 {
-    atomic_store( &this->verbosity, i_verbosity );
+    verbosity = i_verbosity;
 }

 void MessagesDialog::updateConfig()
@@ -337,7 +337,7 @@ void MessagesDialog::MsgCallback( void *
 {
     MessagesDialog *dialog = (MessagesDialog *)self;
     char *str;
-    int verbosity = atomic_load( &dialog->verbosity );
+    int verbosity = dialog->verbosity;

     if( verbosity < 0 || verbosity < (type - VLC_MSG_ERR)
      || unlikely(vasprintf( &str, format, ap ) == -1) )


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>vlc</Name>
        <Homepage>http://www.videolan.org/vlc</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>LGPLv2</License>
        <Icon>vlc</Icon>
        <IsA>app:gui</IsA>
        VLC media player
        <Description>VLC is a famous video player and streamer.</Description>
        <Archive sha1sum="b960ec5bdb9a51da285430fc68962927ccc87187" type="tarxz">http://mirrors.netix.net/vlc/vlc/2.2.8/vlc-2.2.8.tar.xz</Archive>
        <BuildDependencies>
            <Dependency>libcdio-devel</Dependency>
            <Dependency>eudev-devel</Dependency>
            <Dependency>lua-devel</Dependency>
            <Dependency>lua51-devel</Dependency>
            <Dependency>libgcrypt-devel</Dependency>
            <Dependency>xcb-proto</Dependency>
            <Dependency>zlib-devel</Dependency>
            <Dependency>gtk2-devel</Dependency>
            <Dependency>zvbi-devel</Dependency>
            <Dependency>faac-devel</Dependency>
            <Dependency>flac-devel</Dependency>
            <Dependency>lirc-devel</Dependency>
            <Dependency>mesa-devel</Dependency>
            <Dependency>x265-devel</Dependency>
            <Dependency>x264-devel</Dependency>
            <Dependency>dbus-devel</Dependency>
            <Dependency>avahi-devel</Dependency>
            <Dependency>samba-devel</Dependency>
            <Dependency>aalib-devel</Dependency>
            <Dependency>faad2-devel</Dependency>
            <Dependency>speex-devel</Dependency>
            <Dependency>libva-devel</Dependency>
            <Dependency>libXt-devel</Dependency>
            <Dependency>libXv-devel</Dependency>
            <Dependency>cairo-devel</Dependency>
            <Dependency>util-macros</Dependency>
            <Dependency>libxcb-devel</Dependency>
            <Dependency>libXau-devel</Dependency>
            <Dependency>libtar-devel</Dependency>
            <Dependency>libvpx-devel</Dependency>
            <Dependency>ffmpeg-devel</Dependency>
            <Dependency>libass-devel</Dependency>
            <Dependency>libXpm-devel</Dependency>
            <Dependency>gnutls-devel</Dependency>
            <Dependency>libv4l-devel</Dependency>
            <Dependency>libdca-devel</Dependency>
            <Dependency>libmtp-devel</Dependency>
            <Dependency>libmad-devel</Dependency>
            <Dependency>libogg-devel</Dependency>
            <Dependency>libsdl-devel</Dependency>
            <Dependency>taglib-devel</Dependency>
            <Dependency>a52dec-devel</Dependency>
            <Dependency>libebml-devel</Dependency>
            <Dependency>libxml2-devel</Dependency>
            <Dependency>libcddb-devel</Dependency>
            <Dependency>libcaca-devel</Dependency>
            <Dependency>libXext-devel</Dependency>
            <Dependency>librsvg-devel</Dependency>
            <Dependency>libcdio-devel</Dependency>
            <Dependency>fribidi-devel</Dependency>
            <Dependency>libupnp-devel</Dependency>
            <Dependency>libkate-devel</Dependency>
            <Dependency>freerdp-devel</Dependency>
            <Dependency>twolame-devel</Dependency>
            <Dependency>minizip-devel</Dependency>
            <Dependency>live555-devel</Dependency>
            <Dependency>libopus-devel</Dependency>
            <Dependency>freetype-devel</Dependency>
            <Dependency>libXdmcp-devel</Dependency>
            <Dependency>kernel-headers</Dependency>
            <Dependency>xcb-util-devel</Dependency>
            <Dependency>libmpeg2-devel</Dependency>
            <Dependency>alsa-lib-devel</Dependency>
            <Dependency>libshout-devel</Dependency>
            <Dependency>libdvbpsi-devel</Dependency>
            <Dependency>libtheora-devel</Dependency>
            <Dependency>libbluray-devel</Dependency>
            <Dependency>libgcrypt-devel</Dependency>
            <Dependency>libnotify-devel</Dependency>
            <Dependency>libssh2-devel</Dependency>
            <Dependency>openssl-devel</Dependency>
            <Dependency>libvorbis-devel</Dependency>
            <Dependency>libdc1394-devel</Dependency>
            <Dependency>ncurses-devel</Dependency>
            <Dependency>libid3tag-devel</Dependency>
            <Dependency>sdl-image-devel</Dependency>
            <Dependency>libmpcdec-devel</Dependency>
            <Dependency>libdvdcss-devel</Dependency>
            <Dependency>libdvdnav-devel</Dependency>
            <Dependency>vcdimager-devel</Dependency>
            <Dependency>libraw1394-devel</Dependency>
            <Dependency>fluidsynth-devel</Dependency>
            <Dependency>libdvdread-devel</Dependency>
            <Dependency>fontconfig-devel</Dependency>
            <Dependency>libavc1394-devel</Dependency>
            <Dependency>libmodplug-devel</Dependency>
            <Dependency>libXxf86vm-devel</Dependency>
            <Dependency>gdk-pixbuf-devel</Dependency>
            <Dependency>libmatroska-devel</Dependency>
            <Dependency>libXinerama-devel</Dependency>
            <Dependency>schroedinger-devel</Dependency>
            <Dependency>crystalhd-firmware</Dependency>
            <Dependency>libgpg-error-devel</Dependency>
            <Dependency>libvncserver-devel</Dependency>
            <Dependency>libsamplerate-devel</Dependency>
            <Dependency>libjpeg-turbo-devel</Dependency>
            <Dependency>qt5-base-devel</Dependency>
            <Dependency>qt5-x11extras-devel</Dependency>
            <Dependency>libchromaprint-devel</Dependency>
            <Dependency>gstreamer-next-devel</Dependency>
            <Dependency>pulseaudio-libs-devel</Dependency>
            <Dependency>xcb-util-keysyms-devel</Dependency>
            <Dependency>gst-plugins-base-next-devel</Dependency>
            <Dependency>zvbi-devel</Dependency>
        </BuildDependencies>
        <Patches>
            <Patch level="1">ffmpeg3.patch</Patch>
            <Patch level="1">lua53_compat.patch</Patch>
            <Patch>qt4-select.patch</Patch>

            <Patch level="1">vlc-9999-libva-1.2.1-compat.patch</Patch>
            <Patch level="1">vlc-2.2.4-libav-11.7.patch</Patch>
            <Patch level="1">vlc-2.2.4-decoder-lock-scope.patch</Patch>
            <Patch level="1">vlc-2.2.2-qt5widgets.patch</Patch>
            <Patch level="1">vlc-2.2.4-alsa-large-buffers.patch</Patch>
            <Patch level="1">vlc-2.2.4-cxx0x.patch</Patch>

            <Patch level="0">vlc-2.1.1-desktop.patch</Patch>

        </Patches>
    </Source>

    <Package>
        <Name>vlc</Name>
         <RuntimeDependencies>
            <Dependency>qt5-base</Dependency>
            <Dependency>qt5-x11extras</Dependency>
            <Dependency>ncurses</Dependency>
            <Dependency>libtar</Dependency>
            <Dependency>libXpm</Dependency>
            <Dependency>fribidi</Dependency>
            <Dependency>libXi</Dependency>
            <Dependency>libXext</Dependency>
            <Dependency>minizip</Dependency>
            <Dependency>zlib</Dependency>
            <Dependency>libX11</Dependency>
            <Dependency>libgcc</Dependency>
            <Dependency>freetype</Dependency>
            <Dependency version="current">vlc-libs</Dependency>
            <Dependency>libXinerama</Dependency>
            <Dependency>dejavu-fonts</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>

            <Path fileType="library">/usr/lib/vlc/plugins/gui</Path>

            <Path fileType="data">/usr/share/vlc</Path>
            <Path fileType="data">/usr/share/applications</Path>
            <Path fileType="data">/usr/share/icons</Path>
            <Path fileType="data">/usr/share/kde4/apps/solid/actions</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="man">/usr/share/man</Path>
            <Path fileType="localedata">/usr/share/locale</Path>
        </Files>
        <Provides>
            <COMAR script="package.py">System.Package</COMAR>
        </Provides>
    </Package>

    <Package>
        <Name>vlc-lua</Name>
        Lua scripting for VLC
        <RuntimeDependencies>
            <Dependency>lua</Dependency>
            <Dependency version="current">vlc-libs</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="library">/usr/lib/vlc/lua</Path>
            <Path fileType="library">/usr/lib/vlc/plugins/lua/liblua_plugin.so</Path>
        </Files>
    </Package>

    <Package>
        <Name>vlc-libs</Name>
        Codec and plugin library files for VLC
        <RuntimeDependencies>
            <Dependency>libX11</Dependency>
            <Dependency>x264</Dependency>
            <Dependency>libgcc</Dependency>
            <Dependency>freetype</Dependency>
            <Dependency>dbus</Dependency>
            <Dependency>zlib</Dependency>
            <Dependency>gtk2</Dependency>
            <Dependency>lirc</Dependency>
            <Dependency>flac</Dependency>
            <Dependency>zvbi</Dependency>
            <Dependency>x265</Dependency>
            <Dependency>mesa</Dependency>
            <Dependency>libva</Dependency>
            <Dependency>faad2</Dependency>
            <Dependency>samba</Dependency>
            <Dependency>speex</Dependency>
            <Dependency>aalib</Dependency>
            <Dependency>cairo</Dependency>
            <Dependency>glib2</Dependency>
            <Dependency>eudev</Dependency>
            <Dependency>libpng</Dependency>
            <Dependency>libxcb</Dependency>
            <Dependency>libidn</Dependency>
            <Dependency>libmad</Dependency>
            <Dependency>libass</Dependency>
            <Dependency>gnutls</Dependency>
            <Dependency>libdca</Dependency>
            <Dependency>libsdl</Dependency>
            <Dependency>ffmpeg</Dependency>
            <Dependency>a52dec</Dependency>
            <Dependency>libmtp</Dependency>
            <Dependency>taglib</Dependency>
            <Dependency>libogg</Dependency>
            <Dependency>libvpx</Dependency>
            <Dependency>libxml2</Dependency>
            <Dependency>libssh2</Dependency>
            <Dependency>libcddb</Dependency>
            <Dependency>freerdp</Dependency>
            <Dependency>libopus</Dependency>
            <Dependency>libcaca</Dependency>
            <Dependency>twolame</Dependency>
            <Dependency>libebml</Dependency>
            <Dependency>libcdio</Dependency>
            <Dependency>librsvg</Dependency>
            <Dependency>live555</Dependency>
            <Dependency>minizip</Dependency>
            <Dependency>fribidi</Dependency>
            <Dependency>libkate</Dependency>
            <Dependency>libupnp</Dependency>
            <Dependency>libshout</Dependency>
            <Dependency>alsa-lib</Dependency>
            <Dependency>libvdpau</Dependency>
            <Dependency>libmpeg2</Dependency>
            <Dependency>libdvbpsi</Dependency>
            <Dependency>libdc1394</Dependency>
            <Dependency>sdl-image</Dependency>
            <Dependency>vcdimager</Dependency>
            <Dependency>libbluray</Dependency>
            <Dependency>libnotify</Dependency>
            <Dependency>libdvdnav</Dependency>
            <Dependency>libmpcdec</Dependency>
            <Dependency>libtheora</Dependency>
            <Dependency>libvorbis</Dependency>
            <Dependency>libgcrypt</Dependency>
            <Dependency>fontconfig</Dependency>
            <Dependency>libraw1394</Dependency>
            <Dependency>fluidsynth</Dependency>
            <Dependency>libmodplug</Dependency>
            <Dependency>libdvdread</Dependency>
            <Dependency>gdk-pixbuf</Dependency>
            <Dependency>libavc1394</Dependency>
            <Dependency>libmatroska</Dependency>
            <Dependency>schroedinger</Dependency>
            <Dependency>libvncserver</Dependency>
            <Dependency>libgpg-error</Dependency>
            <Dependency>libsamplerate</Dependency>
            <Dependency>libjpeg-turbo</Dependency>
            <Dependency>gstreamer-next</Dependency>
            <Dependency>libchromaprint</Dependency>
            <Dependency>pulseaudio-libs</Dependency>
            <Dependency>xcb-util-keysyms</Dependency>
            <Dependency>crystalhd-firmware</Dependency>
            <Dependency>gst-plugins-base-next</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="library">/usr/lib/libvlc*</Path>
            <Path fileType="library">/usr/lib/vlc</Path>
        </Files>
    </Package>

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

    <History>
        <Update release="6">
            <Date>2018-01-13</Date>
            <Version>2.2.8</Version>
            <Comment>Rebuild</Comment>
            <Name>Mustafa Cinasal</Name>
            <Email>muscnsl@gmail.com</Email>
        </Update>
        <Update release="5">
            <Date>2017-12-21</Date>
            <Version>2.2.8</Version>
            <Comment>Version Bump</Comment>
            <Name>Mustafa Cinasal</Name>
            <Email>muscnsl@gmail.com</Email>
        </Update>
        <Update release="4">
            <Date>2017-03-05</Date>
            <Version>2.2.4</Version>
            <Comment>Rebuild</Comment>
            <Name>Ertuğrul Erata</Name>
            <Email>ertugrulerata@gmail.com</Email>
        </Update>
        <Update release="4">
            <Date>2016-12-24</Date>
            <Version>2.2.4</Version>
            <Comment>Rebuild.</Comment>
            <Name>Ertuğrul Erata</Name>
            <Email>ertugrulerata@gmail.com</Email>
        </Update>
        <Update release="3">
            <Date>2016-06-20</Date>
            <Version>2.2.4</Version>
            <Comment>Version Bump</Comment>
            <Name>Alihan Öztürk</Name>
            <Email>alihan@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>2.2.0</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-03-27</Date>
            <Version>2.2.0</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>vlc</Name>
        VLC çoklu ortam oynatıcısı
        Odtwarzacz plików multimedialnych i serwer strumieni
        VLC reproductor multimedia
        <Description xml:lang="tr">Media oynatıcısı ve yayın dinleyici</Description>
        <Description xml:lang="pl">VLC jest odtwarzaczem multimediów projektu VideoLAN. Odtwarza pliki MPEG, MPEG2, MPEG4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis, płyty DVD, VCD, podkasty oraz strumienie multimedialne z różnych źródeł w sieci.</Description>
        <Description xml:lang="es">VLC es un poderoso reproductor de medios para todo tipo de formatos multimedia</Description>
    </Source>

    <Package>
        <Name>vlc-devel</Name>
        vlc için geliştirme dosyaları
        Pliki nagłówkowe vlc
    </Package>

    <Package>
        <Name>vlc-firefox</Name>
        Firefox için vlc eklentisi
    </Package>

    <Package>
        <Name>vlc-libs</Name>
        vlc için codec ve eklenti kitaplık 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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get

def setup():
    autotools.configure("--prefix=/usr")

def build():
    autotools.make()

def install():
    autotools.rawInstall("DESTDIR=%s" % get.installDIR())
    pisitools.remove("/usr/lib/*.la")
    pisitools.dodoc("ChangeLog", "README", "COPYING")


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>vo-aacenc</Name>
        <Homepage>http://sourceforge.net/projects/opencore-amr/</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>Apache-2.0</License>
        <IsA>app:cli</IsA>
        <Summary>VisualOn AAC encoder library</Summary>
        <Description>VisualOn AAC encoder library</Description>
        <Archive sha1sum="6f8eea8e13f369e3568d9cb33d78e0ac28b7eaee" type="targz">http://sourceforge.net/projects/opencore-amr/files/vo-aacenc/vo-aacenc-0.1.3.tar.gz/download</Archive>
    </Source>

    <Package>
        <Name>libvo-aacenc</Name>
        <Files>
            <Path fileType="library">/usr/lib</Path>
            <Path fileType="doc">/usr/share/doc</Path>
        </Files>
    </Package>

    <Package>
        <Name>libvo-aacenc-devel</Name>
        <RuntimeDependencies>
            <Dependency version="current">libvo-aacenc</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="header">/usr/include</Path>
            <Path fileType="library">/usr/lib/pkgconfig/vo-aacenc.pc</Path>
        </Files>
    </Package>

    <History>
        <Update release="3">
            <Date>2017-02-11</Date>
            <Version>1.3</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.3</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2014-06-18</Date>
            <Version>1.3</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>libvo-aacenc</Name>
        <Summary xml:lang="tr">VisualOn AAC kodlama kütüphanesi</Summary>
        <Description xml:lang="tr">VisualOn AAC kodlama kütüphanesi</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 setup():
    autotools.autoreconf("-vif")
    autotools.configure("--disable-dependency-tracking \
                         --disable-static \
                         --enable-example")

def build():
    autotools.make()

def install():
    autotools.rawInstall("DESTDIR=%s" % get.installDIR())
    pisitools.remove("/usr/lib/*.la")
    pisitools.dodoc("ChangeLog", "README", "COPYING")


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>vo-amrwbenc</Name>
        <Homepage>http://sourceforge.net/projects/opencore-amr/</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>Apache-2.0</License>
        <IsA>app:cli</IsA>
        <Summary>VisualOn AMR-WB encoder library</Summary>
        <Description>VisualOn AMR-WB encoder library</Description>
        <Archive sha1sum="427a147a378d258614d5d470f1f222e249535be7" type="targz">http://sourceforge.net/projects/opencore-amr/files/vo-amrwbenc/vo-amrwbenc-0.1.3.tar.gz</Archive>
    </Source>

    <Package>
        <Name>vo-amrwbenc</Name>
        <RuntimeDependencies>
            <Dependency version="current">libvo-amrwbenc</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="library">/usr/bin/amrwb-enc</Path>
        </Files>
    </Package>

    <Package>
        <Name>libvo-amrwbenc</Name>
        <Files>
            <Path fileType="library">/usr/lib</Path>
            <Path fileType="doc">/usr/share/doc</Path>
        </Files>
    </Package>

    <Package>
        <Name>libvo-amrwbenc-devel</Name>
        <RuntimeDependencies>
            <Dependency version="current">libvo-amrwbenc</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="header">/usr/include</Path>
            <Path fileType="library">/usr/lib/pkgconfig/vo-amrwbenc.pc</Path>
        </Files>
    </Package>

    <History>
        <Update release="3">
            <Date>2017-02-11</Date>
            <Version>1.3</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.3</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2014-05-27</Date>
            <Version>1.3</Version>
            <Comment>First release</Comment>
            <Name>Alihan Öztürk</Name>
            <Email>alihan@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>libvo-aacenc</Name>
        <Summary xml:lang="tr">VisualOn AMR-WB kodlama kütüphanesi</Summary>
        <Description xml:lang="tr">VisualOn AMR-WB kodlama kütüphanesi</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 pisitools
from pisi.actionsapi import qt5

def setup():
    qt5.configure()

def build():
    qt5.make()

def install():
    qt5.install()

    pisitools.dodoc("AUTHORS", "COPYING",)


code:
--- a/QtSingleApplicationQt5/qtlocalpeer.h	2015-07-15 00:37:52.607697860 -0500
+++ b/QtSingleApplicationQt5/qtlocalpeer.h	2015-07-15 00:38:05.327732874 -0500
@@ -43,6 +43,7 @@
 #include <QLocalServer>
 #include <QLocalSocket>
 #include <QDir>
+#include <QDataStream>

 #include "qtlockedfile.h"


code:
--- a/QtSingleApplicationQt5/qtlocalpeer.cpp	2015-06-29 18:39:14.977744557 -0400
+++ b/QtSingleApplicationQt5/qtlocalpeer.cpp	2015-06-29 18:39:24.680844220 -0400
@@ -41,6 +41,7 @@
 #include "qtlocalpeer.h"
 #include <QCoreApplication>
 #include <QTime>
+#include <QDataStream>

 #if defined(Q_OS_WIN)
 #include <QLibrary>


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>vokoscreen</Name>
        <Homepage>http://www.kohaupt-online.de/hp/</Homepage>
        <Packager>
            <Name>Pisilinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <Icon>vokoscreen</Icon>
        <IsA>app:gui</IsA>
        <Summary>New desktop recording program</Summary>
        <Description>Vokoscreen is a new application you to record your desktop. It’s very simple and it uses a minimalistic GUI</Description>
        <Archive sha1sum="fcc817cd96c2abfbfa548b63deb9cc7fb91e59fe" type="targz">https://github.com/vkohaupt/vokoscreen/archive/2.5.3-beta.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>qt5-base-devel</Dependency>
            <Dependency>qt5-x11extras-devel</Dependency>
            <Dependency>qt5-linguist</Dependency>
            <Dependency>qt5-qdbusviewer</Dependency>
            <Dependency>libv4l-devel</Dependency>
            <Dependency>ffmpeg-devel</Dependency>
            <Dependency>opencv-devel</Dependency>
            <Dependency>alsa-lib-devel</Dependency>
            <Dependency>libX11-devel</Dependency>
            <Dependency>opencv-devel</Dependency>
            <Dependency>libXrandr-devel</Dependency>
            <Dependency>icu4c-devel</Dependency>
        </BuildDependencies>
        <Patches>
            <!--<Patch level="1">qtlocalpeer.patch</Patch>-->
            <!--<Patch level="1">datastream.patch</Patch>-->
        </Patches>
    </Source>

    <Package>
        <Name>vokoscreen</Name>
        <RuntimeDependencies>
            <Dependency>libX11</Dependency>
            <Dependency>libgcc</Dependency>
            <Dependency>libv4l</Dependency>
            <Dependency>qt5-base</Dependency>
            <Dependency>qt5-x11extras</Dependency>
            <Dependency>alsa-lib</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="data">/usr/share/applications</Path>
            <Path fileType="doc">/usr/share/doc</Path>
            <Path fileType="man">/usr/share/man</Path>
            <Path fileType="info">/usr/share/pixmaps</Path>
        </Files>
    </Package>

    <History>
        <Update release="5">
            <Date>2017-02-03</Date>
            <Version>2.5.3</Version>
            <Comment>Version bump.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="4">
            <Date>2017-01-11</Date>
            <Version>2.5.2</Version>
            <Comment>Version bump.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2016-08-07</Date>
            <Version>2.5.0</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>2.4.19</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2016-04-14</Date>
            <Version>2.4.19</Version>
            <Comment>Version bump.</Comment>
            <Name>Stefan Gronewold(groni)</Name>
            <Email>groni@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>vokoscreen</Name>
        <Summary xml:lang="tr">Yeni masaüstü kayıt programı</Summary>
        <Description xml:lang="tr">Vokoscreen masaüstü kaydetmek için yeni bir uygulamadır.Çok basit kullanışlı bir arayüz sunar.</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 get
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools

verMAJOR = "0"
verMINOR = "0"
staticlibfile = "/usr/lib/libx264.a"

pisitools.cflags.sub("-O[\ds]", "-O3")

def getMinorVersion():
    f = file("x264.h").read()
    for i in f.split("\n"):
        if i.startswith("#define X264_BUILD"):
            return i.split()[-1]

    return "0"

def setup():
    shelltools.export("CFLAGS", "%s -O3" % get.CFLAGS())

    # force using shared gpac
    pisitools.dosed("configure", "-lgpac_static", "-lgpac")

    # these disables are here to prevent circular deps, especially with ffmpeg
    # Not delete --bit-depth=8 \
    autotools.rawConfigure("--prefix=/usr \
                            --enable-pic \
                            --enable-shared \
                            --disable-avs \
                            --disable-ffms \
                            --disable-lavf \
                            --disable-swscale \
                            --bit-depth=10 \
                            --bit-depth=8 \
                           ")

def build():
    autotools.make()

def install():
    autotools.install()

    # verMINOR = getMinorVersion()
    # pisitools.dosym("libx264.so.%s.%s" % (verMAJOR, verMINOR), "/usr/lib/libx264.so.%s" % verMAJOR)

    # No static libs
    if shelltools.isFile("%s/%s" % (get.installDIR(), staticlibfile)):
        pisitools.remove(staticlibfile)


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>x264</Name>
        <Homepage>http://developers.videolan.org/x264.html</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <IsA>library</IsA>
        <IsA>app:console</IsA>
        Open source H264/AVC encoder
        <Description>x264 is a free library for encoding H264/AVC video streams.</Description>

        <Archive sha1sum="16d3302148b92a9f0e6254fec554e0c375ccce75" type="tarbz2">https://sourceforge.net/projects/pisilinux/files/source/last_stable_x264.tar.bz2</Archive>
        <BuildDependencies>
            <Dependency>yasm-devel</Dependency>
            <Dependency>l-smash-devel</Dependency>
        </BuildDependencies>
    </Source>

    <Package>
        <Name>x264</Name>
        <RuntimeDependencies>
            <Dependency>l-smash</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="library">/usr/lib</Path>
        </Files>
    </Package>

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

    <History>
        <Update release="5">
            <Date>2017-09-20</Date>
            <Version>2245.12062016</Version>
            <Comment>Rebuild</Comment>
            <Name>Alihan Öztürk</Name>
            <Email>alihan@pisilinux.org</Email>
        </Update>
        <Update release="4">
            <Date>2016-07-22</Date>
            <Version>2245.12062016</Version>
            <Comment>Fix relase</Comment>
            <Name>Ergün Salman</Name>
            <Email>poyraz76@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2016-06-13</Date>
            <Version>2245.12062016</Version>
            <Comment>Version bump.</Comment>
            <Name>Alihan Öztürk</Name>
            <Email>alihan@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>2245</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2014-12-02</Date>
            <Version>2245</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>x264</Name>
        Açık kaynak kodlu H264/AVC çözücü
        <Description xml:lang="tr">x264 H264/AVC görüntü dosyalarını açmak için kullanılan bir kütüphane</Description>
    </Source>

    <Package>
        <Name>x264-devel</Name>
        x264 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 pisitools
from pisi.actionsapi import cmaketools
from pisi.actionsapi import shelltools

def setup():
    shelltools.cd("source")
    cmaketools.configure("-DCMAKE_INSTALL_PREFIX=/usr \
                          -DENABLE_STATIC=OFF")

def build():
    shelltools.cd("source")
    cmaketools.make()

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


code:
Submitted By:            Fernando de Oliveira <famobr at yahoo dot com dot br>
Date:                    2015-10-24
Initial Package Version: 1.8
Upstream Status:         not submitted
Origin:                  https://bitbucket.org/TimothyGu/x265/commits/a9aacc5a16116f1c663d1fcb62ad9a0985043b94/raw/
                         https://bitbucket.org/TimothyGu/x265/commits/578c5ef3dff46db38e7c36a8d3c6198a65c9746b/raw/
Description:             Add ENABLE_STATIC:BOOL=ON, so that static lib
                         can be disabled.

--- x265_11047/source/CMakeLists.txt.orig	2015-10-08 07:01:36.000000000 -0300
+++ x265_11047/source/CMakeLists.txt	2015-10-24 17:10:57.919861668 -0300
@@ -419,16 +419,21 @@
 endif()

 source_group(ASM FILES ${YASM_SRCS})
-add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${YASM_OBJS} ${YASM_SRCS})
-if(NOT MSVC)
-    set_target_properties(x265-static PROPERTIES OUTPUT_NAME x265)
-endif()
-if(EXTRA_LIB)
-    target_link_libraries(x265-static ${EXTRA_LIB})
-endif()
-install(TARGETS x265-static
-    LIBRARY DESTINATION ${LIB_INSTALL_DIR}
-    ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
+
+option(ENABLE_STATIC "Build static library" ON)
+if(ENABLE_STATIC)
+    add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${YASM_OBJS} ${YASM_SRCS})
+    if(NOT MSVC)
+        set_target_properties(x265-static PROPERTIES OUTPUT_NAME x265)
+    endif()
+    if(EXTRA_LIB)
+        target_link_libraries(x265-static ${EXTRA_LIB})
+    endif()
+    install(TARGETS x265-static
+        LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+        ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
+endif(ENABLE_STATIC)
+
 install(FILES x265.h "${PROJECT_BINARY_DIR}/x265_config.h" DESTINATION include)

 if(CMAKE_RC_COMPILER)
@@ -490,6 +495,10 @@
     endif()
 endif()

+if(NOT ENABLE_STATIC AND NOT ENABLE_SHARED)
+    message(FATAL_ERROR "Neither static nor shared libraries are enabled.")
+endif()
+
 if(X265_LATEST_TAG)
     # convert lists of link libraries into -lstdc++ -lm etc..
     foreach(LIB ${CMAKE_CXX_IMPLICIT_LINK_LIBRARIES} ${PLATFORM_LIBS})
@@ -551,12 +560,14 @@
     else()
         add_executable(cli ../COPYING ${InputFiles} ${OutputFiles} ${GETOPT} ${X265_RC_FILE}
                        ${ExportDefs} x265.cpp x265.h x265cli.h x265-extras.h x265-extras.cpp)
-        if(WIN32 OR NOT ENABLE_SHARED OR INTEL_CXX)
-            # The CLI cannot link to the shared library on Windows, it
-            # requires internal APIs not exported from the DLL
-            target_link_libraries(cli x265-static ${PLATFORM_LIBS})
-        else()
+        if(WIN32 AND NOT ENABLE_STATIC)
+            message(FATAL_ERROR "The CLI cannot link to shared library on Windows as it requires internal APIs not exported from the DLL.")
+        elseif(INTEL_CXX AND NOT ENABLE_STATIC)
+            message(FATAL_ERROR "The CLI cannot link to shared library with Intel C++ Compiler as it requires internal APIs not exported from the shared library.")
+        elseif(ENABLE_SHARED)
             target_link_libraries(cli x265-shared ${PLATFORM_LIBS})
+        else()
+            target_link_libraries(cli x265-static ${PLATFORM_LIBS})
         endif()
     endif()
     set_target_properties(cli PROPERTIES OUTPUT_NAME x265)


code:
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
    <Source>
        <Name>x265</Name>
        <Homepage>http://x265.org</Homepage>
        <Packager>
            <Name>PisiLinux Community</Name>
            <Email>admins@pisilinux.org</Email>
        </Packager>
        <License>GPLv2</License>
        <IsA>library</IsA>
        <IsA>app:console</IsA>
        Open source H265/EVC encoder
        <Description>x265 is a commercially funded open source implementation of the H.265/High Efficiency Video Coding (HEVC) compression standard.</Description>
        <Archive sha1sum="709ddcf639b414c65867683419de82bc34b587ca" type="targz">https://bitbucket.org/multicoreware/x265/downloads/x265_2.2.tar.gz</Archive>
        <BuildDependencies>
            <Dependency>yasm-devel</Dependency>
            <Dependency>cmake</Dependency>
        </BuildDependencies>
        <Patches>

        </Patches>
    </Source>

    <Package>
        <Name>x265</Name>
        <RuntimeDependencies>
            <Dependency>libgcc</Dependency>
        </RuntimeDependencies>
        <Files>
            <Path fileType="executable">/usr/bin</Path>
            <Path fileType="library">/usr/lib</Path>
        </Files>
    </Package>

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

    <History>
        <Update release="4">
            <Date>2017-02-11</Date>
            <Version>2.2</Version>
            <Comment>Version Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="3">
            <Date>2016-06-12</Date>
            <Version>1.9</Version>
            <Comment>Version Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="2">
            <Date>2016-06-09</Date>
            <Version>1.7</Version>
            <Comment>Release Bump</Comment>
            <Name>Pisi Linux Community</Name>
            <Email>admin@pisilinux.org</Email>
        </Update>
        <Update release="1">
            <Date>2015-07-23</Date>
            <Version>1.7</Version>
            <Comment>First release</Comment>
            <Name>Ayhan Yalçınsoy</Name>
            <Email>ayhanyalcinsoy@pisilinux.org</Email>
        </Update>
    </History>
</PISI>


code:
<?xml version="1.0" ?>
<PISI>
    <Source>
        <Name>x265</Name>
        Açık kaynak kodlu H265/EVC çözücü
        <Description xml:lang="tr">x265 H265/EVC görüntü dosyalarını açmak için kullanılan bir kütüphane</Description>
    </Source>

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