qt6: initial recipe for beta5

build ok, untested
This commit is contained in:
Jerome Duval
2020-11-19 00:36:07 +01:00
parent 6ed61c079d
commit 7b8bb2b908
2 changed files with 1599 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,565 @@
SUMMARY="A comprehensive C++ application development framework"
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-2020 The Qt Company Ltd."
LICENSE="GNU LGPL v2.1
GNU LGPL v3
FDL"
REVISION="1"
SOURCE_URI="https://download.qt.io/development_releases/qt/${portVersion%.*}/${portVersion/\~/-}/single/qt-everywhere-src-${portVersion/\~/-}.tar.xz"
CHECKSUM_SHA256="0955320341731051d682e155d4f1252453f933725fb140a7606c3482cafea3b4"
SOURCE_DIR="qt-everywhere-src-${portVersion/\~/-}"
PATCHES="qt6-$portVersion.patchset"
ADDITIONAL_FILES="
Assistant.rdef.in
Designer.rdef.in
Linguist.rdef.in
QDBusViewer.rdef.in
"
ARCHITECTURES="!x86_gcc2 x86 ?x86_64"
SECONDARY_ARCHITECTURES="?x86"
PROVIDES="
qt6$secondaryArchSuffix = $portVersion compat >= 6
lib:libqt6$secondaryArchSuffix = $portVersion compat >= 6
# qtbase
lib:libQt6Concurrent$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Core$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Core5Compat$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6DBus$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6EglFSDeviceIntegration$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Gui$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Network$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6OpenGL$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6OpenGLWidgets$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6PrintSupport$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Sql$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Test$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6UiTools$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Widgets$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Xml$secondaryArchSuffix = $portVersion compat >= 6
# qt3d
lib:libQt63DAnimation$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DCore$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DExtras$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DInput$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DLogic$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DQuick$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DQuickAnimation$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DQuickExtras$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DQuickInput$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DQuickRender$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DQuickScene2D$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt63DRender$secondaryArchSuffix = $portVersion compat >= 6
# qtcharts
lib:libQt6Charts$secondaryArchSuffix = $portVersion compat >= 6
# qtconnectivity
lib:libQt6Bluetooth$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Nfc$secondaryArchSuffix = $portVersion compat >= 6
# qtdatavis3d
lib:libQt6DataVisualization$secondaryArchSuffix = $portVersion compat >= 6
# qtdeclarative
lib:libQt6Qml$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QmlModels$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QmlWorkerScript$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Quick$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Quick3D$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Quick3DAssetImport$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Quick3DRender$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Quick3DRuntimeRender$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Quick3DUtils$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QuickControls2$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QuickControls2Impl$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QuickParticles$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QuickShapes$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QuickTemplates2$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QuickTest$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6QuickWidgets$secondaryArchSuffix = $portVersion compat >= 6
# qtgamepad
lib:libQt6Gamepad$secondaryArchSuffix = $portVersion compat >= 6
# qtlocation
lib:libQt6Location$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Positioning$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6PositioningQuick$secondaryArchSuffix = $portVersion compat >= 6
# qtlottie
lib:libQt6Bodymovin$secondaryArchSuffix = $portVersion compat >= 6
# qtmultimedia
lib:libQt6Multimedia$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6MultimediaGstTools$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6MultimediaQuick$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6MultimediaWidgets$secondaryArchSuffix = $portVersion compat >= 6
# qtnetworkauth
lib:libQt6NetworkAuth$secondaryArchSuffix = $portVersion compat >= 6
# qtpurchasing
lib:libQt6Purchasing$secondaryArchSuffix = $portVersion compat >= 6
# qtremoteobjects
lib:libQt6RemoteObjects$secondaryArchSuffix = $portVersion compat >= 6
# qtscript
lib:libQt6Script$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6ScriptTools$secondaryArchSuffix = $portVersion compat >= 6
# qtscxml
lib:libQt6Scxml$secondaryArchSuffix = $portVersion compat >= 6
# qtsensors
lib:libQt6Sensors$secondaryArchSuffix = $portVersion compat >= 6
# qtserialbus
lib:libQt6SerialBus$secondaryArchSuffix = $portVersion compat >= 6
# qtserialport
lib:libQt6SerialPort$secondaryArchSuffix = $portVersion compat >= 6
# qtspeech
lib:libQt6TextToSpeech$secondaryArchSuffix = $portVersion compat >= 6
# qtsvg
lib:libQt6Svg$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6SvgWidgets$secondaryArchSuffix = $portVersion compat >= 6
# qttools
lib:libQt6Help$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6Designer$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6DesignerComponents$secondaryArchSuffix = $portVersion compat >= 6
lib:libQt6ShaderTools$secondaryArchSuffix = $portVersion compat >= 6
# qtvirtualkeyboard
lib:libQt6VirtualKeyboard$secondaryArchSuffix = $portVersion compat >= 6
# qtwebchannel
lib:libQt6WebChannel$secondaryArchSuffix = $portVersion compat >= 6
# qtwebsockets
lib:libQt6WebSockets$secondaryArchSuffix = $portVersion compat >= 6
# qtxmlpatterns
lib:libQt6XmlPatterns$secondaryArchSuffix = $portVersion compat >= 6
# qtwebview
lib:libQt6WebView$secondaryArchSuffix = $portVersion compat >= 6
"
REQUIRES="
haiku$secondaryArchSuffix
cmd:qsystray
lib:libdouble_conversion$secondaryArchSuffix
lib:libegl$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libfontconfig$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgthread_2.0$secondaryArchSuffix
lib:libharfbuzz$secondaryArchSuffix
lib:libicudata$secondaryArchSuffix >= 66
lib:libicui18n$secondaryArchSuffix >= 66
lib:libicuuc$secondaryArchSuffix >= 66
lib:libintl$secondaryArchSuffix
lib:libpcre2_16$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libz$secondaryArchSuffix
lib:libzstd$secondaryArchSuffix
"
PROVIDES_devel="
qt6${secondaryArchSuffix}_devel = $portVersion compat >= 6
devel:libqt6$secondaryArchSuffix = $portVersion compat >= 6
# qtbase
devel:libQt6Bootstrap$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Concurrent$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Core$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Core5Compat$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Core_qobject$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6DBus$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6EdidSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Gui$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Network$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6OpenGL$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6OpenGLExtensions$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6OpenGLWidgets$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6PrintSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Sql$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Test$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Widgets$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Xml$secondaryArchSuffix = $portVersion compat >= 6
# qt3d
devel:libQt63DAnimation$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DCore$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DExtras$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DInput$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DLogic$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DQuick$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DQuickAnimation$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DQuickExtras$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DQuickInput$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DQuickRender$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DQuickScene2D$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt63DRender$secondaryArchSuffix = $portVersion compat >= 6
# qtcharts
devel:libQt6Charts$secondaryArchSuffix = $portVersion compat >= 6
# qtconnectivity
devel:libQt6Bluetooth$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Nfc$secondaryArchSuffix = $portVersion compat >= 6
# qtdatavis3d
devel:libQt6DataVisualization$secondaryArchSuffix = $portVersion compat >= 6
# qtdeclarative
devel:libQt6PacketProtocol$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Qml$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QmlDebug$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QmlModels$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QmlWorkerScript$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Quick$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Quick3D$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Quick3DAssetImport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Quick3DRender$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Quick3DRuntimeRender$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Quick3DUtils$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QuickControls2$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QuickControls2Impl$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QuickParticles$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QuickShapes$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QuickTemplates2$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QuickTest$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QuickWidgets$secondaryArchSuffix = $portVersion compat >= 6
# qtgamepad
devel:libQt6Gamepad$secondaryArchSuffix = $portVersion compat >= 6
# qtlocation
devel:libQt6Location$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Positioning$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6PositioningQuick$secondaryArchSuffix = $portVersion compat >= 6
# qtlottie
devel:libQt6Bodymovin$secondaryArchSuffix = $portVersion compat >= 6
# qtmultimedia
devel:libQt6Multimedia$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6MultimediaGstTools$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6MultimediaQuick$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6MultimediaWidgets$secondaryArchSuffix = $portVersion compat >= 6
# qtnetworkauth
devel:libQt6NetworkAuth$secondaryArchSuffix = $portVersion compat >= 6
# qtpurchasing
devel:libQt6Purchasing$secondaryArchSuffix = $portVersion compat >= 6
# qtquick1
devel:libQt6QmlDevTools$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6UiTools$secondaryArchSuffix = $portVersion compat >= 6
# qtremoteobjects
devel:libQt6RemoteObjects$secondaryArchSuffix = $portVersion compat >= 6
# qtscript
devel:libQt6Script$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6ScriptTools$secondaryArchSuffix = $portVersion compat >= 6
# qtscxml
devel:libQt6Scxml$secondaryArchSuffix = $portVersion compat >= 6
# qtsensors
devel:libQt6Sensors$secondaryArchSuffix = $portVersion compat >= 6
# qtserialbus
devel:libQt6SerialBus$secondaryArchSuffix = $portVersion compat >= 6
# qtserialport
devel:libQt6SerialPort$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6ShaderTools$secondaryArchSuffix = $portVersion compat >= 6
# qtspeech
devel:libQt6TextToSpeech$secondaryArchSuffix = $portVersion compat >= 6
# qtsvg
devel:libQt6Svg$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6SvgWidgets$secondaryArchSuffix = $portVersion compat >= 6
# qttools
devel:libQt6Designer$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6DesignerComponents$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6Help$secondaryArchSuffix = $portVersion compat >= 6
# qtvirtualkeyboard
devel:libQt6VirtualKeyboard$secondaryArchSuffix = $portVersion compat >= 6
# qtwebchannel
devel:libQt6WebChannel$secondaryArchSuffix = $portVersion compat >= 6
# qtwebsockets
devel:libQt6WebSockets$secondaryArchSuffix = $portVersion compat >= 6
# qtxmlpatterns
devel:libQt6XmlPatterns$secondaryArchSuffix = $portVersion compat >= 6
# qtwebview
devel:libQt6WebView$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6AccessibilitySupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6DeviceDiscoverySupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6EdidSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6EglSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6EglFSDeviceIntegration$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6EventDispatcherSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6FbSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6FontDatabaseSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6OpenGLExtensions$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6PacketProtocol$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6PlatformCompositorSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QmlCompiler$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QmlDebug$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6QmlDevTools$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6ServiceSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6ThemeSupport$secondaryArchSuffix = $portVersion compat >= 6
devel:libQt6UiTools$secondaryArchSuffix = $portVersion compat >= 6
cmd:balsam = $portVersion compat >= 6
cmd:meshdebug = $portVersion compat >= 6
cmd:moc = $portVersion compat >= 6
cmd:qgltf = $portVersion compat >= 6
cmd:qlalr = $portVersion compat >= 6
cmd:qmake = $portVersion compat >= 6
cmd:qml = $portVersion compat >= 6
cmd:qmlcachegen = $portVersion compat >= 6
cmd:qmleasing = $portVersion compat >= 6
cmd:qmlformat = $portVersion compat >= 6
cmd:qmlimportscanner = $portVersion compat >= 6
cmd:qmllint = $portVersion compat >= 6
cmd:qmlmin = $portVersion compat >= 6
cmd:qmlplugindump = $portVersion compat >= 6
cmd:qmlprofiler = $portVersion compat >= 6
cmd:qmlpreview = $portVersion compat >= 6
cmd:qmlscene = $portVersion compat >= 6
cmd:qmltestrunner = $portVersion compat >= 6
cmd:qmltyperegistrar = $portVersion compat >= 6
cmd:qscxmlc = $portVersion compat >= 6
cmd:qvkgen = $portVersion compat >= 6
cmd:rcc = $portVersion compat >= 6
cmd:repc = $portVersion compat >= 6
cmd:shadergen = $portVersion compat >= 6
cmd:syncqt.pl = $portVersion compat >= 6
cmd:tracegen = $portVersion compat >= 6
cmd:uic = $portVersion compat >= 6
cmd:xmlpatterns = $portVersion compat >= 6
cmd:xmlpatternsvalidator = $portVersion compat >= 6
# new in Qt6
cmd:androiddeployqt = portVersion compat >= 6
cmd:androidtestrunner = portVersion compat >= 6
cmd:cmake_automoc_parser = portVersion compat >= 6
cmd:qmltime = portVersion compat >= 6
cmd:qsb = portVersion compat >= 6
cmd:qt_cmake = portVersion compat >= 6
cmd:qt_cmake_private = portVersion compat >= 6
cmd:qt_cmake_private_install.cmake = portVersion compat >= 6
cmd:qt_cmake_standalone_test = portVersion compat >= 6
cmd:qt_configure_module = portVersion compat >= 6
cmd:qt_internal_configure_tests = portVersion compat >= 6
cmd:shadergen = portVersion compat >= 6
"
# if libssl and libcrypto are not in REQUIRES_devel,
# qmake will decide that there is no system OpenSSL support
# and thus build Qt apps without any SSL support.
REQUIRES_devel="
qt6$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libglu$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libz$secondaryArchSuffix
lib:libzstd$secondaryArchSuffix
devel:libgl$secondaryArchSuffix
"
PROVIDES_tools="
qt6${secondaryArchSuffix}_tools = $portVersion compat >= 6
app:Assistant$secondaryArchSuffix = $portVersion compat >= 6
app:Designer$secondaryArchSuffix = $portVersion compat >= 6
app:Linguist$secondaryArchSuffix = $portVersion compat >= 6
app:QDBusViewer$secondaryArchSuffix = $portVersion compat >= 6
cmd:assistant = $portVersion compat >= 6
cmd:designer = $portVersion compat >= 6
cmd:lconvert = $portVersion compat >= 6
cmd:linguist = $portVersion compat >= 6
cmd:lprodump = $portVersion compat >= 6
cmd:lrelease = $portVersion compat >= 6
cmd:lrelease_pro = $portVersion compat >= 6
cmd:lupdate = $portVersion compat >= 6
cmd:lupdate_pro = $portVersion compat >= 6
cmd:pixeltool = $portVersion compat >= 6
cmd:qcollectiongenerator = $portVersion compat >= 6
cmd:qdbus = $portVersion compat >= 6
cmd:qdbuscpp2xml = $portVersion compat >= 6
cmd:qdbusviewer = $portVersion compat >= 6
cmd:qdbusxml2cpp = $portVersion compat >= 6
cmd:qdistancefieldgenerator = $portVersion compat >= 6
cmd:qdoc = $portVersion compat >= 6
cmd:qhelpgenerator = $portVersion compat >= 6
cmd:qtattributionsscanner = $portVersion compat >= 6
cmd:qtdiag = $portVersion compat >= 6
cmd:qtpaths = $portVersion compat >= 6
cmd:qtplugininfo = $portVersion compat >= 6
"
REQUIRES_tools="
qt6$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libLLVM_9$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
# devel:libclang$secondaryArchSuffix >= 9
# devel:libclanganalysis$secondaryArchSuffix >= 9
# devel:libLLVM_9$secondaryArchSuffix
devel:libcrypto$secondaryArchSuffix
devel:libdouble_conversion$secondaryArchSuffix >= 3
devel:libegl$secondaryArchSuffix
# devel:libflite$secondaryArchSuffix
devel:libfontconfig$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libgl$secondaryArchSuffix
# devel:libglu$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
# devel:libgstapp_1.0$secondaryArchSuffix
# devel:libgstaudio_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:libharfbuzz$secondaryArchSuffix
devel:libicuuc$secondaryArchSuffix >= 66
devel:libjpeg$secondaryArchSuffix
# devel:libopenal$secondaryArchSuffix
# devel:liborc_0.4$secondaryArchSuffix
devel:libpcre2_16$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libsqlite3$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
# devel:libtiff$secondaryArchSuffix >= 6
# devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
devel:libzstd$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:awk
# cmd:bison
cmd:cmake >= 3.18
# cmd:cmp
cmd:find
# cmd:flex
cmd:g++$secondaryArchSuffix
# cmd:gperf
# cmd:grep
cmd:ld$secondaryArchSuffix
cmd:make
cmd:ninja
# cmd:orcc$secondaryArchSuffix
cmd:perl
cmd:pkg_config$secondaryArchSuffix
cmd:python3
# cmd:ruby
cmd:sed
cmd:xargs
# cmd:which
"
BUILD()
{
# export LLVM_INSTALL_DIR="$(llvm-config --prefix)"
export CMAKE_C_FLAGS=-fPIC
export CMAKE_CXX_FLAGS=-fPIC
CPPFLAGS=-D_BSD_SOURCE ./configure \
-prefix $prefix \
-bindir $prefix/bin \
-libdir $libDir \
-libexecdir $libExecDir \
-headerdir $includeDir \
-docdir $docDir/Qt6 \
-datadir $dataDir/Qt6 \
-archdatadir $dataDir/Qt6 \
-translationdir $dataDir/Qt6/translations \
-sysconfdir $settingsDir \
-testsdir $dataDir/Qt6/tests \
-examplesdir $dataDir/Qt6/examples \
-qmldir $dataDir/Qt6/qml \
-plugindir $addOnsDir/Qt6 \
-platform haiku-g++ -no-pch \
-nomake examples -nomake tests \
-release -opensource \
-confirm-license \
-no-rpath -system-sqlite \
-feature-ipc_posix \
-strip
ninja $jobArgs
}
INSTALL()
{
export QT_INSTALL_HEADERS=$includeDir
export LLVM_INSTALL_DIR="$(llvm-config --prefix)"
ninja install
fixPkgconfig
prepareInstalledDevelLibs \
libQt6Concurrent libQt6Core libQt6Core5Compat libQt6DBus \
libQt6Designer libQt6DesignerComponents libQt6EglFSDeviceIntegration \
libQt6Gui libQt6Help libQt6Network libQt6OpenGL libQt6OpenGLWidgets \
libQt6PrintSupport \
libQt6Qml libQt6QmlModels libQt6QmlWorkerScript libQt6Quick \
libQt6Quick3D libQt6Quick3DAssetImport \
libQt6Quick3DRuntimeRender libQt6Quick3DUtils libQt6QuickControls2 libQt6QuickControls2Impl \
libQt6QuickParticles libQt6QuickShapes libQt6QuickTemplates2 libQt6QuickTest libQt6QuickWidgets \
libQt6ShaderTools libQt6Sql libQt6Svg libQt6SvgWidgets \
libQt6Test libQt6UiTools libQt6Widgets libQt6Xml
cd $libDir
for i in lib*.so.6.*;do
ln -fs $i $(echo $i | cut -f1,2 -d.)
done
mv -f $libDir/*.a $developLibDir/
mv -f $libDir/*.prl $developLibDir/
mkdir -p $dataDir/Qt6
mv $prefix/mkspecs $dataDir/Qt6/
devCommands="balsam
meshdebug moc qlalr qmake qml qmlcachegen qmleasing qmlformat qmlimportscanner
qmllint qmlplugindump qmlpreview qmlprofiler qmlscene qmltestrunner qmltyperegistrar
qvkgen rcc syncqt.pl tracegen uic
androiddeployqt androidtestrunner cmake_automoc_parser qmltime qsb qt-cmake
qt-cmake-private qt-cmake-private-install.cmake qt-cmake-standalone-test
qt-configure-module qt-internal-configure-tests shadergen"
for i in $devCommands; do
devPackageCommands="$devPackageCommands $prefix/bin/$i"
done
# move tools to apps folder
mkdir -p $appsDir/Qt6/lib
mv $prefix/bin/qdbusviewer $appsDir/Qt6/QDBusViewer
ln -s $appsDir/Qt6/QDBusViewer $prefix/bin/qdbusviewer
mv $prefix/bin/designer $appsDir/Qt6/Designer
ln -s $appsDir/Qt6/Designer $prefix/bin/designer
mv $prefix/bin/linguist $appsDir/Qt6/Linguist
ln -s $appsDir/Qt6/Linguist $prefix/bin/linguist
toolsCommands="designer lconvert linguist lprodump lrelease lrelease-pro
lupdate lupdate-pro pixeltool qdistancefieldgenerator qdbus
qdbuscpp2xml qdbusviewer qdbusxml2cpp qhelpgenerator qtattributionsscanner
qtdiag qtpaths qtplugininfo"
for i in $toolsCommands; do
toolsPackageCommands="$toolsPackageCommands $prefix/bin/$i"
done
DIR_QT_DEVELOP_DESKBAR="${dataDir}/deskbar/menu/Applications/Qt"
mkdir -p ${DIR_QT_DEVELOP_DESKBAR}
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
#local MINOR="`echo "$portVersion" | cut -d. -f3`"
local MINOR="0"
local VARIETY="B_APPV_DEVELOPMENT"
iconFiles="Assistant Designer Linguist QDBusViewer"
for j in $iconFiles; do
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@VARIETY@|$VARIETY|" \
$portDir/additional-files/$j.rdef.in > $sourceDir/$j.rdef
addResourcesToBinaries $sourceDir/$j.rdef "$appsDir/Qt6/$j"
addAppDeskbarSymlink "$appsDir/Qt6/$j" "Qt/$j"
mimeset -f "$appsDir/Qt6/$j"
done
packageEntries devel \
$developDir \
$devPackageCommands \
$libDir/cmake \
$dataDir/Qt6/mkspecs
packageEntries tools \
$appsDir \
$toolsPackageCommands \
${DIR_QT_DEVELOP_DESKBAR}
}