Files
haikuports/media-libs/gst_plugins_base/gst_plugins_base-1.24.7.recipe
2024-09-12 22:35:26 +10:00

154 lines
5.1 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="2"
SOURCE_URI="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-$portVersion.tar.xz"
CHECKSUM_SHA256="1528d1746a393299f5ac17ebf13a32a660202f1e29d0a852a2250f6a059a2fda"
SOURCE_DIR="gst-plugins-base-$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="0.2407.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:libgstgl_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:libEGL$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libgirepository_1.0$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:libpng16$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:libgstgl_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:libEGL$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libgirepository_1.0$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgstreamer_1.0$secondaryArchSuffix >= $libVersion
devel:libogg$secondaryArchSuffix
devel:libopus$secondaryArchSuffix
devel:liborc_0.4$secondaryArchSuffix
devel:libpng16$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: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 tests=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 libgstgl-1.0 libgstpbutils-1.0 \
libgstriff-1.0 libgstrtp-1.0 libgstrtsp-1.0 libgstsdp-1.0 \
libgsttag-1.0 libgstvideo-1.0
fixPkgconfig
# move gstglconfig.h to includeDir
mv $libDir/gstreamer-1.0/include/gst/gl/gstglconfig.h $includeDir/gstreamer-1.0/gst/gl
rm -rf $libDir/gstreamer-1.0/include
# devel package
packageEntries devel $developDir
}