mediainfo: split package into its components

This commit is contained in:
Samir Benmendil 2017-03-28 21:48:25 +01:00
parent 340f237d0b
commit 4f7dccace4
4 changed files with 132 additions and 46 deletions

37
libmediainfo/PKGBUILD Normal file
View File

@ -0,0 +1,37 @@
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: hydro <hydro@freenet.de>
pkgname=libmediainfo
pkgver=0.7.93
pkgrel=1
pkgdesc="shared library for mediainfo"
arch=('i686' 'x86_64')
url="http://mediaarea.net"
license=('GPL')
depends=( 'curl' 'libmms' 'libzen')
makedepends=('libtool' 'automake' 'autoconf')
source=(https://mediaarea.net/download/source/libmediainfo/$pkgver/libmediainfo_$pkgver.tar.bz2
libmediainfo-0.7.50-libmms.patch)
sha256sums=('9643c4624aeb6dbcf12aded240bc773272644f17bad5d7534fdda1ca62ee75b0'
'0adfbac0efee13e1f58dcfa5d2e50b3bc30029a9b1cf812e2d62d1e3308beeeb')
build() {
cd "$srcdir"/MediaInfoLib/Project/GNU/Library
sh ./autogen.sh
./configure --prefix=/usr --enable-shared --disable-static --with-libcurl --with-libmms
make clean
(cd ../../.. && patch -p1 <"$srcdir"/libmediainfo-0.7.50-libmms.patch)
make
}
package() {
cd "$srcdir"/MediaInfoLib/Project/GNU/Library
make DESTDIR="$pkgdir" install
for i in MediaInfo MediaInfoDLL; do
install -dm 755 "$pkgdir"/usr/include/$i
install -m 644 "$srcdir"/MediaInfoLib/Source/$i/*.h "$pkgdir"/usr/include/$i
done
install -dm 755 "$pkgdir"/usr/lib/pkgconfig
install -m 644 "$srcdir"/MediaInfoLib/Project/GNU/Library/libmediainfo.pc "$pkgdir"/usr/lib/pkgconfig
sed -i -e 's|Version: |Version: '$pkgver'|g' "$pkgdir"/usr/lib/pkgconfig/libmediainfo.pc
}

View File

@ -0,0 +1,50 @@
diff -wbBur MediaInfoLib/Source/MediaInfo/Reader/Reader_libmms.cpp MediaInfoLib.my/Source/MediaInfo/Reader/Reader_libmms.cpp
--- MediaInfoLib/Source/MediaInfo/Reader/Reader_libmms.cpp 2011-08-25 15:14:50.000000000 +0400
+++ MediaInfoLib.my/Source/MediaInfo/Reader/Reader_libmms.cpp 2011-10-05 17:29:12.000000000 +0400
@@ -48,10 +48,8 @@
#else
#ifdef MEDIAINFO_LIBMMS_FROMSOURCE
#include "mmsx.h"
- #include "mmsh.h"
#else //MEDIAINFO_LIBMMS_FROMSOURCE
#include "libmms/mmsx.h"
- #include "libmms/mmsh.h"
#endif //MEDIAINFO_LIBMMS_FROMSOURCE
#endif
#include <iostream>
@@ -71,34 +69,9 @@
//---------------------------------------------------------------------------
size_t Reader_libmms::Format_Test(MediaInfo_Internal* MI, const String &File_Name)
{
- mmsx_t* Handle;
-
- //Opening the file
- #if MEDIAINFO_LIBMMS_DESCRIBE_SUPPORT
- if (MI->Config.File_Mmsh_Describe_Only_Get())
- {
- // Use MMSH & Send a DESCRIBE request
- mmsh_t* MmshHandle;
-
- MmshHandle=mmsh_describe_request(0, 0, Ztring(File_Name).To_Local().c_str());
- if (MmshHandle==NULL)
- return 0;
-
- Handle=mmsx_set_mmsh_handle(MmshHandle);
- if (Handle==NULL)
- {
- mmsh_close(MmshHandle);
- return 0;
- }
- }
- else
- #endif //MEDIAINFO_LIBMMS_DESCRIBE_SUPPORT
- {
- // Use MMS or MMSH (Send a DESCRIBE & PLAY request)
- Handle=mmsx_connect(0, 0, Ztring(File_Name).To_Local().c_str(), (int)-1);
+ mmsx_t* Handle=mmsx_connect(0, 0, Ztring(File_Name).To_Local().c_str(), (int)-1);
if (Handle==NULL)
return 0;
- }
//Init
size_t Buffer_Size_Max;

37
libzen/PKGBUILD Normal file
View File

@ -0,0 +1,37 @@
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: hydro <hydro@freenet.de>
pkgname=libzen
pkgver=0.4.34
pkgrel=1
pkgdesc="shared library for libmediainfo and mediainfo"
arch=('i686' 'x86_64')
url="http://mediaarea.net"
license=('BSD')
depends=('gcc-libs')
makedepends=('libtool' 'automake' 'autoconf')
source=(https://mediaarea.net/download/source/libzen/${pkgver}/${pkgname}_${pkgver}.tar.bz2)
sha256sums=('83774fe093bd14fb72da9c537021a8ffc3f6ff952a1401cd6f91de6628ac790a')
build() {
cd "$srcdir"/ZenLib/Project/GNU/Library
[ -x configure ] || sh ./autogen.sh
[ -f Makefile ] || ./configure --prefix=/usr --enable-shared
make clean
make
}
package() {
cd "$srcdir"/ZenLib/Project/GNU/Library
make DESTDIR="$pkgdir" install
install -dm 755 "$pkgdir"/usr/include/ZenLib
install -m 644 "$srcdir"/ZenLib/Source/ZenLib/*.h "$pkgdir"/usr/include/ZenLib
for i in HTTP_Client Format/Html Format/Http; do
install -dm0755 "$pkgdir"/usr/include/ZenLib/$i
install -m0644 "$srcdir"/ZenLib/Source/ZenLib/$i/*.h "$pkgdir"/usr/include/ZenLib/$i
done
install -dm 755 "$pkgdir"/usr/lib/pkgconfig
install -m 644 "$srcdir"/ZenLib/Project/GNU/Library/libzen.pc "$pkgdir"/usr/lib/pkgconfig
sed -i -e 's|Version: |Version: '$pkgver'|g' "$pkgdir"/usr/lib/pkgconfig/libzen.pc
install -D -m 644 "$srcdir"/ZenLib/License.txt "$pkgdir"/usr/share/licenses/libzen/License.txt
}

View File

@ -1,5 +1,5 @@
# NOTE this package only provides mediainfo cli
# when wxwidget will be ported to Qt, we will include the mediainfo gui to this package
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: hydro <hydro@freenet.de>
pkgname=mediainfo
pkgver=0.7.93
@ -8,58 +8,20 @@ pkgdesc="Supplies technical and tag information about a video or audio file"
arch=('x86_64')
url="http://mediaarea.net"
license=('GPL')
depends=('gcc-libs' 'curl' 'libmms')
depends=('libmediainfo')
makedepends=('libtool' 'automake' 'autoconf')
_zenver=0.4.34
source=("https://mediaarea.net/download/source/mediainfo/$pkgver/mediainfo_$pkgver.tar.bz2"
"https://mediaarea.net/download/source/libmediainfo/$pkgver/libmediainfo_$pkgver.tar.bz2"
"https://mediaarea.net/download/source/libzen/${_zenver}/libzen_${_zenver}.tar.bz2")
sha256sums=('29ff5aacddd1c5ce2ad889aa895c5b6d8ba3db12fff23e64ffe130fe9a707dbf'
'9643c4624aeb6dbcf12aded240bc773272644f17bad5d7534fdda1ca62ee75b0'
'83774fe093bd14fb72da9c537021a8ffc3f6ff952a1401cd6f91de6628ac790a')
source=(https://mediaarea.net/download/source/mediainfo/$pkgver/mediainfo_$pkgver.tar.bz2)
sha256sums=('29ff5aacddd1c5ce2ad889aa895c5b6d8ba3db12fff23e64ffe130fe9a707dbf')
build() {
# we just need to build libzen,
# libmediainfo will grab the static lib automatically
msg "building libzen"
cd "$srcdir"/ZenLib/Project/GNU/Library
./autogen.sh
./configure --prefix=/usr \
--disable-shared \
--enable-static
make
msg "building libmediainfo"
cd "$srcdir"/MediaInfoLib/Project/GNU/Library
./autogen.sh
./configure --prefix=/usr \
--enable-shared \
--disable-static \
--with-libcurl \
--with-libmms \
--enable-staticlibs
make
msg "building mediainfo"
cd "$srcdir"/MediaInfo/Project/GNU/CLI
./autogen.sh
sh ./autogen.sh
./configure --prefix=/usr
make
}
package() {
msg "installing libmediainfo"
cd "$srcdir"/MediaInfoLib/Project/GNU/Library
make DESTDIR="$pkgdir" install
for i in MediaInfo MediaInfoDLL; do
install -dm 755 "$pkgdir"/usr/include/$i
install -m 644 "$srcdir"/MediaInfoLib/Source/$i/*.h "$pkgdir"/usr/include/$i
done
install -dm 755 "$pkgdir"/usr/lib/pkgconfig
install -m 644 "$srcdir"/MediaInfoLib/Project/GNU/Library/libmediainfo.pc "$pkgdir"/usr/lib/pkgconfig
sed -i -e 's|Version: |Version: '$pkgver'|g' "$pkgdir"/usr/lib/pkgconfig/libmediainfo.pc
msg "installing mediainfo"
cd "$srcdir"/MediaInfo/Project/GNU/CLI
make DESTDIR="$pkgdir" install
}
# vim:set ts=2 sw=2 et: