multimedia-tools: cleanup and use the "sysroot" build flag

As with system-tools before.

Use PKG_DEPENDS_CONFIG where appropriate.
This commit is contained in:
Andre Heider 2019-12-14 13:15:23 +01:00
parent 85d8668dee
commit 7273d94094
13 changed files with 77 additions and 47 deletions

View File

@ -8,10 +8,12 @@ PKG_LICENSE="GPL"
PKG_SITE="http://mediaarea.net/en/MediaInfo/Download/Source"
PKG_URL="http://mediaarea.net/download/source/libmediainfo/${PKG_VERSION}/libmediainfo_${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain libzen zlib"
PKG_DEPENDS_CONFIG="libzen"
PKG_LONGDESC="MediaInfo is a convenient unified display of the most relevant technical and tag data for video and audio files"
PKG_TOOLCHAIN="manual"
PKG_BUILD_FLAGS="-sysroot"
make_target() {
configure_target() {
cd Project/GNU/Library
do_autoreconf
./configure \
@ -21,15 +23,19 @@ make_target() {
--disable-shared \
--prefix=/usr \
--enable-visibility
}
make_target() {
make
}
post_makeinstall_target() {
mkdir -p $SYSROOT_PREFIX/usr/include/MediaInfo
cp -aP ../../../Source/MediaInfo/* $SYSROOT_PREFIX/usr/include/MediaInfo
makeinstall_target() {
mkdir -p $INSTALL/usr/include/MediaInfo $INSTALL/usr/lib/pkgconfig
cp -aP ../../../Source/MediaInfo/*.h $INSTALL/usr/include/MediaInfo
for i in Archive Audio Duplicate Export Image Multiple Reader Tag Text Video ; do
mkdir -p $SYSROOT_PREFIX/usr/include/MediaInfo/$i/
cp -aP ../../../Source/MediaInfo/$i/*.h $SYSROOT_PREFIX/usr/include/MediaInfo/$i/
mkdir -p $INSTALL/usr/include/MediaInfo/$i/
cp -aP ../../../Source/MediaInfo/$i/*.h $INSTALL/usr/include/MediaInfo/$i/
done
cp -P libmediainfo-config $TOOLCHAIN/bin
cp -P .libs/* $INSTALL/usr/lib
cp -P libmediainfo.pc $INSTALL/usr/lib/pkgconfig
}

View File

@ -10,8 +10,9 @@ PKG_URL="http://mediaarea.net/download/source/libzen/${PKG_VERSION}/libzen_${PKG
PKG_DEPENDS_TARGET="toolchain"
PKG_LONGDESC="MediaInfo is a convenient unified display of the most relevant technical and tag data for video and audio files"
PKG_TOOLCHAIN="manual"
PKG_BUILD_FLAGS="-sysroot"
make_target() {
configure_target() {
cd Project/GNU/Library
do_autoreconf
./configure \
@ -20,16 +21,19 @@ make_target() {
--enable-static \
--disable-shared \
--prefix=/usr
}
make_target() {
make
}
post_makeinstall_target() {
mkdir -p $SYSROOT_PREFIX/usr/include/ZenLib
cp -aP ../../../Source/ZenLib/*.h $SYSROOT_PREFIX/usr/include/ZenLib
makeinstall_target() {
mkdir -p $INSTALL/usr/include/ZenLib $INSTALL/usr/lib/pkgconfig
cp -aP ../../../Source/ZenLib/*.h $INSTALL/usr/include/ZenLib
for i in HTTP_Client Format/Html Format/Http ; do
mkdir -p $SYSROOT_PREFIX/usr/include/ZenLib/$i/
cp -aP ../../../Source/ZenLib/$i/*.h $SYSROOT_PREFIX/usr/include/ZenLib/$i/
mkdir -p $INSTALL/usr/include/ZenLib/$i/
cp -aP ../../../Source/ZenLib/$i/*.h $INSTALL/usr/include/ZenLib/$i/
done
cp -P libzen-config $TOOLCHAIN/bin
cp -P .libs/* $INSTALL/usr/lib
cp -P libzen.pc $INSTALL/usr/lib/pkgconfig
}

View File

@ -8,21 +8,24 @@ PKG_LICENSE="GPL"
PKG_SITE="http://mediaarea.net/en/MediaInfo/Download/Source"
PKG_URL="http://mediaarea.net/download/source/mediainfo/${PKG_VERSION}/mediainfo_${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain libmediainfo"
PKG_DEPENDS_CONFIG="libzen libmediainfo"
PKG_LONGDESC="A convenient unified display of the most relevant technical and tag data for video and audio files."
PKG_TOOLCHAIN="manual"
PKG_BUILD_FLAGS="-sysroot"
pre_configure_target() {
export LDFLAGS="$LDFLAGS -L$(get_build_dir libmediainfo)/Project/GNU/Library/.libs -L$(get_build_dir libzen)/Project/GNU/Library/.libs"
export LIBS="-lmediainfo -lzen"
}
make_target() {
configure_target() {
cd Project/GNU/CLI
do_autoreconf
echo $PATH
./configure \
--host=$TARGET_NAME \
--build=$HOST_NAME \
--prefix=/usr
}
make_target() {
make
}
makeinstall_target() {
make install DESTDIR=$INSTALL
}

View File

@ -11,6 +11,7 @@ PKG_URL="ftp://ftp.freedesktop.org/pub/mesa/demos/$PKG_VERSION/$PKG_NAME-$PKG_VE
PKG_DEPENDS_TARGET="toolchain libX11 mesa glu glew"
PKG_LONGDESC="Mesa 3D demos - installed are the well known glxinfo and glxgears."
PKG_TOOLCHAIN="autotools"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="--without-glut"

View File

@ -9,6 +9,7 @@ PKG_SITE="http://www.mpg123.org/"
PKG_URL="http://downloads.sourceforge.net/sourceforge/mpg123/mpg123-$PKG_VERSION.tar.bz2"
PKG_DEPENDS_TARGET="toolchain alsa-lib"
PKG_LONGDESC="A console based real time MPEG Audio Player for Layer 1, 2 and 3."
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="--disable-shared \
--enable-static"

View File

@ -10,6 +10,7 @@ PKG_URL="https://github.com/mpv-player/mpv/archive/v$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain waf:host alsa ffmpeg libass libdrm"
PKG_LONGDESC="A media player based on MPlayer and mplayer2. It supports a wide variety of video file formats, audio and video codecs, and subtitle types."
PKG_TOOLCHAIN="manual"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="--prefix=/usr \
--disable-libsmbclient \

View File

@ -9,11 +9,13 @@ PKG_SITE="http://www.avalpa.com/the-key-values/15-free-software/33-opencaster"
PKG_URL="http://ftp.de.debian.org/debian/pool/main/o/opencaster/opencaster_${PKG_VERSION}+dfsg.orig.tar.gz"
PKG_DEPENDS_TARGET="toolchain zlib"
PKG_LONGDESC="A free and open source MPEG2 transport stream data generator and packet manipulator."
PKG_BUILD_FLAGS="-sysroot"
pre_configure_target() {
PKG_MAKE_OPTS_TARGET="CC=$CC"
}
pre_makeinstall_target() {
mkdir -p $INSTALL
makeinstall_target() {
mkdir -p $INSTALL/usr/bin
make install DESTDIR=$INSTALL/usr/bin
}

View File

@ -8,13 +8,18 @@ PKG_LICENSE="GPLv3"
PKG_SITE="https://github.com/ralph-irving/squeezelite"
PKG_URL="https://github.com/ralph-irving/squeezelite/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain faad2 ffmpeg flac libmad libvorbis mpg123 soxr libogg"
PKG_DEPENDS_CONFIG="mpg123"
PKG_LONGDESC="A client for the Logitech Media Server."
PKG_BUILD_FLAGS="-sysroot"
pre_make_target() {
export OPTS="-DDSD -DFFMPEG -DRESAMPLE -DVISEXPORT -DLINKALL"
export LDFLAGS="$LDFLAGS -lFLAC -lvorbisfile -lvorbis -logg"
make_target() {
make \
OPTS="-DDSD -DFFMPEG -DRESAMPLE -DVISEXPORT -DLINKALL" \
CFLAGS="$CFLAGS $(pkg-config --cflags libmpg123 vorbisfile vorbis ogg)" \
LDFLAGS="$LDFLAGS $(pkg-config --libs libmpg123 vorbisfile vorbis ogg)"
}
makeinstall_target() {
:
mkdir -p $INSTALL/usr/bin
cp -p squeezelite $INSTALL/usr/bin
}

View File

@ -10,6 +10,9 @@ PKG_SITE="http://georgi.unixsol.org/programs/tsdecrypt"
PKG_URL="http://georgi.unixsol.org/programs/tsdecrypt/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain libdvbcsa openssl"
PKG_LONGDESC="A tool that reads incoming mpeg transport stream over UDP/RTP and then decrypts it using libdvbcsa/ffdecsa."
PKG_BUILD_FLAGS="-sysroot"
PKG_MAKEINSTALL_OPTS_TARGET="PREFIX=/usr"
make_target() {
make CC=$CC LINK="$LD -o"
@ -18,7 +21,3 @@ make_target() {
post_make_target() {
make strip STRIP=$STRIP
}
makeinstall_target() {
: # nop
}

View File

@ -10,15 +10,11 @@ PKG_SITE="https://github.com/kynesim/tstools"
PKG_URL="https://github.com/kynesim/tstools/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain"
PKG_LONGDESC="This is a set of cross-platform command line tools for working with MPEG data."
PKG_BUILD_FLAGS="-sysroot"
PKG_MAKE_OPTS_TARGET="CROSS_COMPILE=$TARGET_PREFIX prefix=/usr"
PKG_MAKEINSTALL_OPTS_TARGET="${PKG_MAKE_OPTS_TARGET}"
pre_make_target() {
make builddirs
}
make_target() {
make CROSS_COMPILE=$TARGET_PREFIX
}
makeinstall_target() {
:
}

View File

@ -0,0 +1,12 @@
diff -ur a/Makefile b/Makefile
--- a/Makefile 2015-10-30 17:34:51.000000000 +0100
+++ b/Makefile 2019-12-14 12:58:16.655141460 +0100
@@ -43,7 +43,7 @@
man1dir=$(mandir)/man1
manext=.1
-INSTALL=install
+INSTALL=install --strip-program=$(CROSS_COMPILE)strip
INSTALL_PROGRAM=$(INSTALL) -m 0555 -s
INSTALL_LIB=$(INSTALL) -m 0444 -s
INSTALL_DATA=$(INSTALL) -m 0444

View File

@ -17,7 +17,6 @@ PKG_IS_ADDON="yes"
PKG_ADDON_NAME="Multimedia Tools"
PKG_ADDON_TYPE="xbmc.python.script"
PKG_DEPENDS_TARGET="toolchain \
alsa-utils \
mediainfo \
@ -30,23 +29,23 @@ PKG_DEPENDS_TARGET="toolchain \
addon() {
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin/
# alsamixer
cp -P $(get_build_dir alsa-utils)/.$TARGET_NAME/alsamixer/alsamixer $ADDON_BUILD/$PKG_ADDON_ID/bin/
cp -P $(get_install_dir alsa-utils)/.noinstall/alsamixer $ADDON_BUILD/$PKG_ADDON_ID/bin/
# mediainfo
cp -P $(get_build_dir mediainfo)/Project/GNU/CLI/mediainfo $ADDON_BUILD/$PKG_ADDON_ID/bin
cp -P $(get_install_dir mediainfo)/usr/bin/mediainfo $ADDON_BUILD/$PKG_ADDON_ID/bin
# mpg123
cp -P $(get_install_dir mpg123)/usr/bin/* $ADDON_BUILD/$PKG_ADDON_ID/bin/
# opencaster
cp -P $(get_install_dir opencaster)/* $ADDON_BUILD/$PKG_ADDON_ID/bin/
cp -P $(get_install_dir opencaster)/usr/bin/* $ADDON_BUILD/$PKG_ADDON_ID/bin/
# squeezelite
cp -P $(get_build_dir squeezelite)/squeezelite $ADDON_BUILD/$PKG_ADDON_ID/bin/
cp -P $(get_install_dir squeezelite)/usr/bin/squeezelite $ADDON_BUILD/$PKG_ADDON_ID/bin/
# tsdecrypt
cp -P $(get_build_dir tsdecrypt)/tsdecrypt $ADDON_BUILD/$PKG_ADDON_ID/bin
cp -P $(get_install_dir tsdecrypt)/usr/bin/tsdecrypt $ADDON_BUILD/$PKG_ADDON_ID/bin
# tstools
cp -P $(get_build_dir tstools)/bin/* $ADDON_BUILD/$PKG_ADDON_ID/bin/
cp -P $(get_install_dir tstools)/usr/bin/* $ADDON_BUILD/$PKG_ADDON_ID/bin/
}

View File

@ -30,8 +30,9 @@ post_makeinstall_target() {
# so we avoid resetting our soundconfig
rm -rf $INSTALL/usr/lib/udev/rules.d/90-alsa-restore.rules
mkdir -p $INSTALL/.noinstall
for i in aconnect alsamixer amidi aplaymidi arecord arecordmidi aseqdump aseqnet iecset; do
rm -rf $INSTALL/usr/bin/$i
mv $INSTALL/usr/bin/$i $INSTALL/.noinstall
done
mkdir -p $INSTALL/usr/lib/udev