0
0
Fork 0
haikuports/dev-qt/qt6-multimedia/qt6_multimedia-6.2.1.recipe

133 lines
4.1 KiB
Bash

SUMMARY="Classes for audio, video, radio and camera functionality"
DESCRIPTION="Qt is a cross-platform application framework that is widely \
used for developing software with a graphical user interface, and also used \
for developing non-GUI programs such as command-line tools and consoles for \
servers."
HOMEPAGE="https://qt.io/"
COPYRIGHT="2015-2021 The Qt Company Ltd."
LICENSE="GNU LGPL v2.1
GNU LGPL v3
GNU FDL v1"
REVISION="1"
SOURCE_URI="https://download.qt.io/official_releases/qt/${portVersion%.*}/$portVersion/submodules/qtmultimedia-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256="07764ad31d4d4ef679c3ceb861e762d12690b4fa899b3ccec45e5353309a90d0"
SOURCE_DIR="qtmultimedia-everywhere-src-$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
qt6_multimedia$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Multimedia$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6MultimediaQuick$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6MultimediaWidgets$secondaryArchSuffix = $portVersion compat >= 6
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgobject_2.0$secondaryArchSuffix
lib:libgstapp_1.0$secondaryArchSuffix
lib:libgstaudio_1.0$secondaryArchSuffix
lib:libgstallocators_1.0$secondaryArchSuffix
lib:libgstbadaudio_1.0$secondaryArchSuffix
lib:libgstbase_1.0$secondaryArchSuffix
lib:libgstpbutils_1.0$secondaryArchSuffix
lib:libgstreamer_1.0$secondaryArchSuffix
lib:libgsttag_1.0$secondaryArchSuffix
lib:libgstvideo_1.0$secondaryArchSuffix
lib:libgstphotography_1.0$secondaryArchSuffix
lib:libgthread_2.0$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libQt6Core$secondaryArchSuffix
lib:libQt6Gui$secondaryArchSuffix
lib:libQt6Qml$secondaryArchSuffix
lib:libQt6Quick$secondaryArchSuffix
lib:libQt6QmlModels$secondaryArchSuffix
lib:libQt6ShaderTools$secondaryArchSuffix
lib:libQt6Svg$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
qt6_multimedia${secondaryArchSuffix}_devel = $portVersion compat >= 6
devel:libQt6Multimedia$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6MultimediaQuick$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6MultimediaWidgets$secondaryArchSuffix = $portVersion compat >= 6
"
REQUIRES_devel="
qt6_multimedia$secondaryArchSuffix == $portVersion base
qt6_base${secondaryArchSuffix}_devel
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libcrypto$secondaryArchSuffix
devel:libgl$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgobject_2.0$secondaryArchSuffix
devel:libgstapp_1.0$secondaryArchSuffix
devel:libgstaudio_1.0$secondaryArchSuffix
devel:libgstallocators_1.0$secondaryArchSuffix
devel:libgstbadaudio_1.0$secondaryArchSuffix
devel:libgstbase_1.0$secondaryArchSuffix
devel:libgstpbutils_1.0$secondaryArchSuffix
devel:libgstreamer_1.0$secondaryArchSuffix
devel:libgstvideo_1.0$secondaryArchSuffix
devel:libgstphotography_1.0$secondaryArchSuffix
devel:liborc_0.4$secondaryArchSuffix
devel:libQt6Core$secondaryArchSuffix
devel:libQt6Gui$secondaryArchSuffix
devel:libQt6Qml$secondaryArchSuffix
devel:libQt6QmlModels$secondaryArchSuffix
devel:libQt6Quick$secondaryArchSuffix
devel:libQt6ShaderTools$secondaryArchSuffix
devel:libQt6Svg$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:awk
cmd:cmake
cmd:find
cmd:g++$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:ninja
cmd:perl
cmd:pkg_config$secondaryArchSuffix
cmd:python3.7
cmd:sed
cmd:xargs
"
BUILD()
{
export DISABLE_ASLR=1
cmake -B build -S $sourceDir -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_FLAGS=-fPIC
find -name cmake_install.cmake -exec sed -i "s|set(CMAKE_INSTALL_PREFIX.*|set(CMAKE_INSTALL_PREFIX \"$prefix\")|" {} \;
ninja -C build $jobArgs
}
INSTALL()
{
ninja -C build install
prepareInstalledDevelLibs libQt6Multimedia libQt6MultimediaQuick libQt6MultimediaWidgets
cd $libDir
for i in lib*.so.6.*;do
ln -fs $i $(echo $i | cut -f1,2 -d.)
done
packageEntries devel \
$developDir \
$libDir/cmake \
$dataDir/Qt6/mkspecs
}