Files
haikuports/media-libs/gst_plugins_base/gst_plugins_base-1.18.5.recipe
2021-11-02 19:14:03 +10:00

146 lines
4.7 KiB
Bash

SUMMARY="GStreamer Base Plug-ins"
DESCRIPTION="GStreamer Base Plug-ins is a well-groomed and well-maintained collection of \
GStreamer plug-ins and elements, spanning the range of possible types of elements one \
would want to write for GStreamer. It also contains helper libraries and base classes \
useful for writing elements. A wide range of video and audio decoders, encoders, and \
filters are included."
HOMEPAGE="https://gstreamer.freedesktop.org/"
COPYRIGHT="Erik Walthinsen"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-$portVersion.tar.xz"
CHECKSUM_SHA256="960b7af4585700db0fdd5b843554e11e2564fed9e061f591fae88a7be6446fa3"
SOURCE_DIR="gst-plugins-base-$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="0.1805.0"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
gst_plugins_base$secondaryArchSuffix = $portVersion
cmd:gst_device_monitor_1.0$secondaryArchSuffix = $portVersion
cmd:gst_discoverer_1.0$secondaryArchSuffix = $portVersion
cmd:gst_play_1.0$secondaryArchSuffix = $portVersion
lib:libgstallocators_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstapp_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstaudio_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstfft_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstpbutils_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstriff_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstrtp_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstrtsp_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstsdp_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgsttag_1.0$secondaryArchSuffix = $libVersionCompat
lib:libgstvideo_1.0$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgstreamer_1.0$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libogg$secondaryArchSuffix
lib:libopus$secondaryArchSuffix
lib:liborc_0.4$secondaryArchSuffix
lib:libtheoradec$secondaryArchSuffix
lib:libtheoraenc$secondaryArchSuffix
lib:libvorbis$secondaryArchSuffix
lib:libvorbisidec$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
SUPPLEMENTS="
gstreamer$secondaryArchSuffix
"
PROVIDES_devel="
gst_plugins_base${secondaryArchSuffix}_devel = $portVersion
devel:libgstallocators_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstapp_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstaudio_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstfft_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstpbutils_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstriff_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstrtp_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstrtsp_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstsdp_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgsttag_1.0$secondaryArchSuffix = $libVersionCompat
devel:libgstvideo_1.0$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
gst_plugins_base$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libfreetype$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgstreamer_1.0$secondaryArchSuffix >= $libVersion
devel:libogg$secondaryArchSuffix
devel:libopus$secondaryArchSuffix
devel:liborc_0.4$secondaryArchSuffix
devel:libtheora$secondaryArchSuffix
devel:libvorbis$secondaryArchSuffix
devel:libvorbisidec$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:bison
cmd:flex
cmd:gcc$secondaryArchSuffix
cmd:grep
cmd:ld$secondaryArchSuffix
cmd:make
cmd:meson
cmd:ninja
cmd:orcc$secondaryArchSuffix
cmd:pkg_config$secondaryArchSuffix
cmd:python
cmd:python3
cmd:which
"
BUILD()
{
export CFLAGS="-lnetwork"
meson build \
--buildtype=release \
--prefix=$prefix \
--bindir=$binDir \
--libdir=$libDir \
--libexecdir=$libDir \
--datadir=$dataDir \
--mandir=$manDir \
--includedir=$includeDir \
-D doc=disabled \
-D examples=disabled \
-D test=disabled \
-D nls=disabled \
-D orc=enabled
ninja -C build $jobArgs
}
INSTALL()
{
ninja -C build install
prepareInstalledDevelLibs libgstallocators-1.0 libgstapp-1.0 \
libgstaudio-1.0 libgstfft-1.0 libgstpbutils-1.0 libgstriff-1.0 \
libgstrtp-1.0 libgstrtsp-1.0 libgstsdp-1.0 libgsttag-1.0 \
libgstvideo-1.0
fixPkgconfig
mv -f $includeDir/gstreamer-1.0/gst $includeDir/
rm -rf $includeDir/gstreamer-1.0
# devel package
packageEntries devel $developDir
}