[arch-commits] Commit in vbam/trunk (PKGBUILD vbam-ffmpeg2.patch vbam-util.patch)

Maxime Gauduin alucryd at archlinux.org
Mon Jan 5 10:09:07 UTC 2015


    Date: Monday, January 5, 2015 @ 11:09:07
  Author: alucryd
Revision: 125390

FS#43333: vbam 1.8.0.1229-1

Added:
  vbam/trunk/vbam-ffmpeg2.patch
  vbam/trunk/vbam-util.patch
Modified:
  vbam/trunk/PKGBUILD

--------------------+
 PKGBUILD           |   68 ++++++++++++++++++++++++++++++---------------------
 vbam-ffmpeg2.patch |   34 +++++++++++++++++++++++++
 vbam-util.patch    |   11 ++++++++
 3 files changed, 85 insertions(+), 28 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-01-05 10:04:41 UTC (rev 125389)
+++ PKGBUILD	2015-01-05 10:09:07 UTC (rev 125390)
@@ -1,32 +1,41 @@
 # $Id$
-# Maintainer: Maxime Gauduin <alucryd at gmail.com>
+# Maintainer: Maxime Gauduin <alucryd at archlinux.org>
 # Contributor: Bartłomiej Piotrowski <nospam at bpiotrowski.pl>
 
 pkgbase=vbam
 pkgname=('vbam-cli' 'vbam-gtk' 'vbam-wx')
-pkgver=1.8.0.1202
-pkgrel=4
+pkgver=1.8.0.1229
+pkgrel=1
 arch=('i686' 'x86_64')
 url='http://vba-m.com'
 license=('GPL2')
-makedepends=('cmake' 'desktop-file-utils' 'freetype2' 'gtkglextmm'
+makedepends=('cmake' 'desktop-file-utils' 'ffmpeg' 'freetype2' 'gtkglextmm'
              'imagemagick' 'glew' 'libjpeg' 'libpng' 'libsndfile' 'libxrandr'
-             'openal' 'wxgtk2.8' 'zip')
+             'openal' 'subversion' 'wxgtk2.8' 'zip')
 [[ $CARCH == i686 ]] && makedepends+=('nasm')
-source=("http://downloads.sourceforge.net/project/vbam/vbam-src/vbam-r${pkgver##*.}-src.tar.bz2"
-        'http://downloads.sourceforge.net/sfml/SFML-1.6-sdk-linux-64.tar.gz'
+source=("vbam::svn+http://svn.code.sf.net/p/vbam/code/trunk#revision=${pkgver##*.}"
+        'http://www.sfml-dev.org/files/SFML-1.6-sdk-linux-64.tar.gz'
         'http://www.lonesock.net/files/soil.zip'
         'sfml.patch'
-        'soil.patch')
-sha256sums=('148d866c08d7a810be5c845247d212f1d1d07395f2ccdecef10ad81a76072877'
+        'soil.patch'
+        'vbam-util.patch'
+        'vbam-ffmpeg2.patch')
+sha256sums=('SKIP'
             '05bdc32286ab2ec8cb1ccdafe53f31830284e09e11ebfc3ab3836c99a0d9654b'
             'a2305b8d64f6d636e36d669bbdb0ca5445d1345c754b3d61d3f037dad2e5f701'
             'c3c2fc48f4edc303ad24d91583a57aef9b7ca3b78de1d6734cb666745fff9bad'
-            '65705aeef90667bd4e28dd03ac0b43685470f2925b642637b7ff6e2f3acd34c7')
+            '65705aeef90667bd4e28dd03ac0b43685470f2925b642637b7ff6e2f3acd34c7'
+            '54515cd8207cc110940c748c9bef801cb160a51071fdedcbea681d9af04bd09e'
+            '91c468480ba5bfbe208a50dc6118a6229aabd3e9c7d41b0d59454b25014343b0')
 
 prepare() {
   patch -Np0 -i soil.patch
   patch -Np0 -i sfml.patch
+
+  cd vbam
+
+  patch -Np1 -i ../vbam-util.patch
+  patch -Np1 -i ../vbam-ffmpeg2.patch
   sed 's/wxrc/wxrc-2.8/g' -i {po/update_pot.sh,src/wx/CMakeLists.txt}
 }
 
@@ -44,6 +53,8 @@
   popd
 
 # Build VBA-M
+  cd vbam
+
   if [[ -d build ]]; then
     rm -rf build
   fi
@@ -50,24 +61,25 @@
   mkdir build && cd build
 
   local _cmakeargs="-DCMAKE_BUILD_TYPE='Release' \
+                    -DCMAKE_CXX_FLAGS=-I${srcdir}/staging/usr/include \
+                    -DCMAKE_INSTALL_PREFIX='/usr' \
                     -DCMAKE_SKIP_RPATH='TRUE' \
-                    -DCMAKE_INSTALL_PREFIX='/usr' \
-                    -DCMAKE_CXX_FLAGS=-I${srcdir}/staging/usr/include \
-                    -DENABLE_GTK='ON' -DENABLE_WX='ON' \
+                    -DENABLE_GTK='TRUE' -DENABLE_WX='TRUE' \
+                    -DENABLE_FFMPEG='TRUE' -DENABLE_LINK='TRUE' \
+                    -DSFML_INCLUDE_DIR='../../staging/usr/include/SFML' \
+                    -DSFML_AUDIO_INCLUDE_DIR='../../staging/usr/include/SFML/Audio' \
+                    -DSFML_AUDIO_LIBRARY='../../staging/usr/lib/libsfml-audio-s.a' \
+                    -DSFML_GRAPHICS_INCLUDE_DIR='../../staging/usr/include/SFML/Graphics' \
+                    -DSFML_GRAPHICS_LIBRARY='../../staging/usr/lib/libsfml-graphics-s.a' \
+                    -DSFML_NETWORK_INCLUDE_DIR='../../staging/usr/include/SFML/Network' \
+                    -DSFML_NETWORK_LIBRARY='../../staging/usr/lib/libsfml-network-s.a' \
+                    -DSFML_SYSTEM_INCLUDE_DIR='../../staging/usr/include/SFML/System' \
+                    -DSFML_SYSTEM_LIBRARY='../../staging/usr/lib/libsfml-system-s.a' \
                     -DwxWidgets_CONFIG_EXECUTABLE='/usr/bin/wx-config-2.8' \
-                    -DwxWidgets_wxrc_EXECUTABLE='/usr/bin/wxrc-2.8'
-                    -DSFML_INCLUDE_DIR='../staging/usr/include/SFML' \
-                    -DSFML_AUDIO_INCLUDE_DIR='../staging/usr/include/SFML/Audio' \
-                    -DSFML_AUDIO_LIBRARY='../staging/usr/lib/libsfml-audio-s.a' \
-                    -DSFML_GRAPHICS_INCLUDE_DIR='../staging/usr/include/SFML/Graphics' \
-                    -DSFML_GRAPHICS_LIBRARY='../staging/usr/lib/libsfml-graphics-s.a' \
-                    -DSFML_NETWORK_INCLUDE_DIR='../staging/usr/include/SFML/Network' \
-                    -DSFML_NETWORK_LIBRARY='../staging/usr/lib/libsfml-network-s.a' \
-                    -DSFML_SYSTEM_INCLUDE_DIR='../staging/usr/include/SFML/System' \
-                    -DSFML_SYSTEM_LIBRARY='../staging/usr/lib/libsfml-system-s.a'"
+                    -DwxWidgets_wxrc_EXECUTABLE='/usr/bin/wxrc-2.8'"
 
   if [[ $CARCH == i686 ]]; then
-    cmake .. ${_cmakeargs} -DENABLE_ASM_{CORE,SCALERS}='ON'
+    cmake .. ${_cmakeargs} -DENABLE_ASM_{CORE,SCALERS}='TRUE'
   else
     cmake .. ${_cmakeargs}
   fi
@@ -79,7 +91,7 @@
 depends=('libgl' 'libpng' 'sdl')
 backup=('etc/vbam.cfg')
 
-  cd build
+  cd vbam/build
 
   make DESTDIR="${pkgdir}" install
   rm -rf "${pkgdir}"/usr/{bin/{g,wx}vbam,share}
@@ -91,7 +103,7 @@
 conflicts=('vbam-wx')
 install='vbam-gtk.install'
 
-  cd build
+  cd vbam/build
 
   make DESTDIR="${pkgdir}" install
   rm -rf "${pkgdir}"/{etc,usr/bin/vbam}
@@ -100,12 +112,12 @@
 
 package_vbam-wx() {
 pkgdesc='Nintendo GameBoy Advance emulator'
-depends=('wxgtk2.8')
+depends=('ffmpeg' 'wxgtk2.8')
 conflicts=('vbam-gtk')
 options=('!emptydirs')
 install='vbam-wx.install'
 
-  cd build
+  cd vbam/build
 
   make DESTDIR="${pkgdir}" install
   rm -rf "${pkgdir}"/{etc,usr/{bin,share}/vbam}

Added: vbam-ffmpeg2.patch
===================================================================
--- vbam-ffmpeg2.patch	                        (rev 0)
+++ vbam-ffmpeg2.patch	2015-01-05 10:09:07 UTC (rev 125390)
@@ -0,0 +1,34 @@
+--- vbam/src/common/ffmpeg.cpp.orig	2015-01-05 10:25:47.729542646 +0100
++++ vbam/src/common/ffmpeg.cpp	2015-01-05 10:34:18.034895901 +0100
+@@ -178,17 +178,31 @@ MediaRet MediaRecorder::setup_video_stre
+     // make sure RGB is supported (mostly not)
+     if(codec->pix_fmts) {
+ 	const enum PixelFormat *p;
++#if LIBAVCODEC_VERSION_MAJOR < 55
+ 	int64_t mask = 0;
++#endif
+ 	for(p = codec->pix_fmts; *p != -1; p++) {
+ 	    // may get complaints about 1LL; thus the cast
++#if LIBAVCODEC_VERSION_MAJOR < 55
+ 	    mask |= ((int64_t)1) << *p;
++#endif
+ 	    if(*p == pixfmt)
+ 		break;
+ 	}
+ 	if(*p == -1) {
+ 	    // if not supported, use a converter to the next best format
+ 	    // this is swscale, the converter used by the output demo
++#if LIBAVCODEC_VERSION_MAJOR < 55
+ 	    enum PixelFormat dp = (PixelFormat)avcodec_find_best_pix_fmt(mask, pixfmt, 0, NULL);
++#else
++#if LIBAVCODEC_VERSION_MICRO >= 100
++// FFmpeg
++		enum AVPixelFormat dp = avcodec_find_best_pix_fmt_of_list(codec->pix_fmts, pixfmt, 0, NULL);
++#else
++// Libav
++		enum AVPixelFormat dp = avcodec_find_best_pix_fmt2(codec->pix_fmts, pixfmt, 0, NULL);
++#endif
++#endif
+ 	    if(dp == -1)
+ 		dp = codec->pix_fmts[0];
+ 	    if(!(convpic = avcodec_alloc_frame()) ||

Added: vbam-util.patch
===================================================================
--- vbam-util.patch	                        (rev 0)
+++ vbam-util.patch	2015-01-05 10:09:07 UTC (rev 125390)
@@ -0,0 +1,11 @@
+--- vbam-1.8.0.1228/src/Util.h
++++ vbam-1.8.0.1228/src/Util.h
+@@ -23,6 +23,7 @@
+ bool utilIsZipFile(const char *);
+ void utilStripDoubleExtension(const char *, char *);
+ IMAGE_TYPE utilFindType(const char *);
++IMAGE_TYPE utilFindType(const char *, char (&)[2048]);
+ uint8_t *utilLoad(const char *, bool (*)(const char*), uint8_t *, int &);
+ 
+ void utilPutDword(uint8_t *, uint32_t);
+



More information about the arch-commits mailing list