Files
haikuports/dev-qt/qt5/qt5-5.12.2.recipe
Gerasim Troeglazov d57f29b009 Qt5: bump version
2019-03-22 19:11:35 +10:00

572 lines
23 KiB
Bash

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-2019 The Qt Company Ltd."
LICENSE="GNU LGPL v2.1
GNU LGPL v3"
REVISION="1"
SOURCE_URI="https://download.qt.io/official_releases/qt/5.12/${portVersion/\~/-}/single/qt-everywhere-src-${portVersion/\~/-}.tar.xz"
CHECKSUM_SHA256="59b8cb4e728450b21224dcaaa40eb25bafc5196b6988f2225c394c6b7f881ff5"
SOURCE_DIR="qt-everywhere-src-${portVersion/\~/-}"
PATCHES="qt5-$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="
qt5$secondaryArchSuffix = $portVersion compat >= 5
lib:libqt5$secondaryArchSuffix = $portVersion compat >= 5
# qtbase
lib:libQt5Concurrent$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Core$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5DBus$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5EglFSDeviceIntegration$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Gui$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Network$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5OpenGL$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5PrintSupport$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Sql$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Test$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Widgets$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Xml$secondaryArchSuffix = $portVersion compat >= 5
# qt3d
lib:libQt53DAnimation$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DCore$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DExtras$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DInput$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DLogic$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DQuick$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DQuickAnimation$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DQuickExtras$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DQuickInput$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DQuickRender$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DQuickScene2D$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt53DRender$secondaryArchSuffix = $portVersion compat >= 5
# qtcharts
lib:libQt5Charts$secondaryArchSuffix = $portVersion compat >= 5
# qtconnectivity
lib:libQt5Bluetooth$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Nfc$secondaryArchSuffix = $portVersion compat >= 5
# qtdatavis3d
lib:libQt5DataVisualization$secondaryArchSuffix = $portVersion compat >= 5
# qtdeclarative
lib:libQt5Qml$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Quick$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5QuickControls2$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5QuickParticles$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5QuickShapes$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5QuickTemplates2$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5QuickTest$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5QuickWidgets$secondaryArchSuffix = $portVersion compat >= 5
# qtgamepad
lib:libQt5Gamepad$secondaryArchSuffix = $portVersion compat >= 5
# qtlocation
lib:libQt5Location$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Positioning$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5PositioningQuick$secondaryArchSuffix = $portVersion compat >= 5
# qtmultimedia
lib:libQt5Multimedia$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5MultimediaGstTools$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5MultimediaQuick$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5MultimediaWidgets$secondaryArchSuffix = $portVersion compat >= 5
# qtnetworkauth
lib:libQt5NetworkAuth$secondaryArchSuffix = $portVersion compat >= 5
# qtpurchasing
lib:libQt5Purchasing$secondaryArchSuffix = $portVersion compat >= 5
# qtremoteobjects
lib:libQt5RemoteObjects$secondaryArchSuffix = $portVersion compat >= 5
# qtscript
lib:libQt5Script$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5ScriptTools$secondaryArchSuffix = $portVersion compat >= 5
# qtscxml
lib:libQt5Scxml$secondaryArchSuffix = $portVersion compat >= 5
# qtsensors
lib:libQt5Sensors$secondaryArchSuffix = $portVersion compat >= 5
# qtserialbus
lib:libQt5SerialBus$secondaryArchSuffix = $portVersion compat >= 5
# qtserialport
lib:libQt5SerialPort$secondaryArchSuffix = $portVersion compat >= 5
# qtspeech
lib:libQt5TextToSpeech$secondaryArchSuffix = $portVersion compat >= 5
# qtsvg
lib:libQt5Svg$secondaryArchSuffix = $portVersion compat >= 5
# qttools
lib:libQt5Help$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5Designer$secondaryArchSuffix = $portVersion compat >= 5
lib:libQt5DesignerComponents$secondaryArchSuffix = $portVersion compat >= 5
# qtvirtualkeyboard
lib:libQt5VirtualKeyboard$secondaryArchSuffix = $portVersion compat >= 5
# qtwebchannel
lib:libQt5WebChannel$secondaryArchSuffix = $portVersion compat >= 5
# qtwebsockets
lib:libQt5WebSockets$secondaryArchSuffix = $portVersion compat >= 5
# qtxmlpatterns
lib:libQt5XmlPatterns$secondaryArchSuffix = $portVersion compat >= 5
# qtwebview
lib:libQt5WebView$secondaryArchSuffix = $portVersion compat >= 5
"
REQUIRES="
haiku$secondaryArchSuffix
cmd:qsystray
lib:libcrypto$secondaryArchSuffix
lib:libdouble_conversion$secondaryArchSuffix
lib:libegl$secondaryArchSuffix
lib:libflite$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libfontconfig$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libglu$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgstapp_1.0$secondaryArchSuffix
lib:libgstaudio_1.0$secondaryArchSuffix
lib:libgstbadaudio_1.0$secondaryArchSuffix
lib:libgstbadvideo_1.0$secondaryArchSuffix
lib:libgstreamer_1.0$secondaryArchSuffix
lib:libgstvideo_1.0$secondaryArchSuffix
lib:libicudata$secondaryArchSuffix
lib:libicui18n$secondaryArchSuffix
lib:libicuuc$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:libpcre2_16$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libsqlite3$secondaryArchSuffix
lib:libtiff$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
qt5${secondaryArchSuffix}_devel = $portVersion compat >= 5
devel:libqt5$secondaryArchSuffix = $portVersion compat >= 5
# qtbase
devel:libQt5Bootstrap$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Concurrent$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Core$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5DBus$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5EdidSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Gui$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Network$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5OpenGL$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5OpenGLExtensions$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5PrintSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Sql$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Test$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Widgets$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Xml$secondaryArchSuffix = $portVersion compat >= 5
# qt3d
devel:libQt53DAnimation$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DCore$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DExtras$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DInput$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DLogic$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DQuick$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DQuickAnimation$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DQuickExtras$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DQuickInput$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DQuickRender$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DQuickScene2D$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt53DRender$secondaryArchSuffix = $portVersion compat >= 5
# qtcharts
devel:libQt5Charts$secondaryArchSuffix = $portVersion compat >= 5
# qtconnectivity
devel:libQt5Bluetooth$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Nfc$secondaryArchSuffix = $portVersion compat >= 5
# qtdatavis3d
devel:libQt5DataVisualization$secondaryArchSuffix = $portVersion compat >= 5
# qtdeclarative
devel:libQt5PacketProtocol$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Qml$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QmlDebug$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Quick$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QuickControls2$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QuickParticles$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QuickShapes$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QuickTemplates2$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QuickTest$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QuickWidgets$secondaryArchSuffix = $portVersion compat >= 5
# qtgamepad
devel:libQt5Gamepad$secondaryArchSuffix = $portVersion compat >= 5
# qtlocation
devel:libQt5Location$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Positioning$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5PositioningQuick$secondaryArchSuffix = $portVersion compat >= 5
# qtmultimedia
devel:libQt5Multimedia$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5MultimediaGstTools$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5MultimediaQuick$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5MultimediaWidgets$secondaryArchSuffix = $portVersion compat >= 5
# qtnetworkauth
devel:libQt5NetworkAuth$secondaryArchSuffix = $portVersion compat >= 5
# qtpurchasing
devel:libQt5Purchasing$secondaryArchSuffix = $portVersion compat >= 5
# qtquick1
devel:libQt5QmlDevTools$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5UiTools$secondaryArchSuffix = $portVersion compat >= 5
# qtremoteobjects
devel:libQt5RemoteObjects$secondaryArchSuffix = $portVersion compat >= 5
# qtscript
devel:libQt5Script$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5ScriptTools$secondaryArchSuffix = $portVersion compat >= 5
# qtscxml
devel:libQt5Scxml$secondaryArchSuffix = $portVersion compat >= 5
# qtsensors
devel:libQt5Sensors$secondaryArchSuffix = $portVersion compat >= 5
# qtserialbus
devel:libQt5SerialBus$secondaryArchSuffix = $portVersion compat >= 5
# qtserialport
devel:libQt5SerialPort$secondaryArchSuffix = $portVersion compat >= 5
# qtspeech
devel:libQt5TextToSpeech$secondaryArchSuffix = $portVersion compat >= 5
# qtsvg
devel:libQt5Svg$secondaryArchSuffix = $portVersion compat >= 5
# qttools
devel:libQt5Designer$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5DesignerComponents$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5Help$secondaryArchSuffix = $portVersion compat >= 5
# qtvirtualkeyboard
devel:libQt5VirtualKeyboard$secondaryArchSuffix = $portVersion compat >= 5
# qtwebchannel
devel:libQt5WebChannel$secondaryArchSuffix = $portVersion compat >= 5
# qtwebsockets
devel:libQt5WebSockets$secondaryArchSuffix = $portVersion compat >= 5
# qtxmlpatterns
devel:libQt5XmlPatterns$secondaryArchSuffix = $portVersion compat >= 5
# qtwebview
devel:libQt5WebView$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5AccessibilitySupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5DeviceDiscoverySupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5EdidSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5EglSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5EglFSDeviceIntegration$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5EventDispatcherSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5FbSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5FontDatabaseSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5OpenGLExtensions$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5PacketProtocol$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5PlatformCompositorSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QmlDebug$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5QmlDevTools$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5ServiceSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5ThemeSupport$secondaryArchSuffix = $portVersion compat >= 5
devel:libQt5UiTools$secondaryArchSuffix = $portVersion compat >= 5
cmd:canbusutil$secondaryArchSuffix = $portVersion compat >= 5
cmd:fixqt4headers.pl$secondaryArchSuffix = $portVersion compat >= 5
cmd:moc$secondaryArchSuffix = $portVersion compat >= 5
cmd:qgltf$secondaryArchSuffix = $portVersion compat >= 5
cmd:qlalr$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmake$secondaryArchSuffix = $portVersion compat >= 5
cmd:qml$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmlcachegen$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmleasing$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmlimportscanner$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmllint$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmlmin$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmlplugindump$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmlprofiler$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmlpreview$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmlscene$secondaryArchSuffix = $portVersion compat >= 5
cmd:qmltestrunner$secondaryArchSuffix = $portVersion compat >= 5
cmd:qscxmlc$secondaryArchSuffix = $portVersion compat >= 5
cmd:qvkgen$secondaryArchSuffix = $portVersion compat >= 5
cmd:rcc$secondaryArchSuffix = $portVersion compat >= 5
cmd:repc$secondaryArchSuffix = $portVersion compat >= 5
cmd:syncqt.pl$secondaryArchSuffix = $portVersion compat >= 5
cmd:uic$secondaryArchSuffix = $portVersion compat >= 5
cmd:xmlpatterns$secondaryArchSuffix = $portVersion compat >= 5
cmd:xmlpatternsvalidator$secondaryArchSuffix = $portVersion compat >= 5
"
# 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="
qt5$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libglu$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libz$secondaryArchSuffix
devel:libgl$secondaryArchSuffix
"
PROVIDES_docs="
qt5${secondaryArchSuffix}_docs = $portVersion
"
REQUIRES_docs="
qt5${secondaryArchSuffix}_devel == $portVersion base
"
PROVIDES_examples="
qt5${secondaryArchSuffix}_examples = $portVersion
"
REQUIRES_examples="
qt5${secondaryArchSuffix}_devel == $portVersion base
"
PROVIDES_tools="
qt5${secondaryArchSuffix}_tools = $portVersion compat >= 5
app:Assistant$secondaryArchSuffix = $portVersion compat >= 5
app:Designer$secondaryArchSuffix = $portVersion compat >= 5
app:Linguist$secondaryArchSuffix = $portVersion compat >= 5
app:QDBusViewer$secondaryArchSuffix = $portVersion compat >= 5
cmd:assistant$secondaryArchSuffix = $portVersion compat >= 5
cmd:designer$secondaryArchSuffix = $portVersion compat >= 5
cmd:lconvert$secondaryArchSuffix = $portVersion compat >= 5
cmd:linguist$secondaryArchSuffix = $portVersion compat >= 5
cmd:lrelease$secondaryArchSuffix = $portVersion compat >= 5
cmd:lupdate$secondaryArchSuffix = $portVersion compat >= 5
cmd:pixeltool$secondaryArchSuffix = $portVersion compat >= 5
cmd:qcollectiongenerator$secondaryArchSuffix = $portVersion compat >= 5
cmd:qdbus$secondaryArchSuffix = $portVersion compat >= 5
cmd:qdbuscpp2xml$secondaryArchSuffix = $portVersion compat >= 5
cmd:qdbusviewer$secondaryArchSuffix = $portVersion compat >= 5
cmd:qdbusxml2cpp$secondaryArchSuffix = $portVersion compat >= 5
cmd:qdistancefieldgenerator$secondaryArchSuffix = $portVersion compat >= 5
cmd:qdoc$secondaryArchSuffix = $portVersion compat >= 5
cmd:qhelpgenerator$secondaryArchSuffix = $portVersion compat >= 5
cmd:qtattributionsscanner$secondaryArchSuffix = $portVersion compat >= 5
cmd:qtdiag$secondaryArchSuffix = $portVersion compat >= 5
cmd:qtpaths$secondaryArchSuffix = $portVersion compat >= 5
cmd:qtplugininfo$secondaryArchSuffix = $portVersion compat >= 5
"
REQUIRES_tools="
qt5$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libLLVM_5.0$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libclang$secondaryArchSuffix >= 5
devel:libclanganalysis$secondaryArchSuffix >= 5
devel:libLLVM_5.0$secondaryArchSuffix
devel:libcrypto$secondaryArchSuffix >= 1.0.0
devel:libdouble_conversion$secondaryArchSuffix
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:libgstbadvideo_1.0$secondaryArchSuffix
devel:libgstbase_1.0$secondaryArchSuffix
devel:libgstpbutils_1.0$secondaryArchSuffix
devel:libgstreamer_1.0$secondaryArchSuffix
devel:libgstvideo_1.0$secondaryArchSuffix
devel:libicuuc$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:liborc_0.4$secondaryArchSuffix
devel:libpcre2_16$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libsqlite3$secondaryArchSuffix
devel:libssl$secondaryArchSuffix >= 1.0.0
devel:libtiff$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:awk
cmd:bison
cmd:cmp
cmd:find
cmd:flex
cmd:g++$secondaryArchSuffix
cmd:gperf
cmd:grep
cmd:ld$secondaryArchSuffix
cmd:ninja
cmd:make
cmd:orcc$secondaryArchSuffix
cmd:perl
cmd:pkg_config$secondaryArchSuffix
cmd:python
cmd:ruby
cmd:sed
cmd:xargs
cmd:which
"
BUILD()
{
export LLVM_INSTALL_DIR="$(llvm-config --prefix)"
CPPFLAGS=-D_BSD_SOURCE ./configure \
-prefix $prefix \
-bindir $binDir \
-libdir $libDir \
-libexecdir $libExecDir \
-headerdir $includeDir \
-docdir $docDir/Qt5 \
-datadir $dataDir/Qt5 \
-archdatadir $dataDir/Qt5 \
-hostdatadir $dataDir/Qt5 \
-translationdir $dataDir/Qt5/translations \
-sysconfdir $settingsDir \
-testsdir $dataDir/Qt5/tests \
-examplesdir $dataDir/Qt5/examples \
-importdir $dataDir/Qt5/imports \
-qmldir $dataDir/Qt5/qml \
-plugindir $addOnsDir/Qt5 \
-platform haiku-g++ -no-pch \
-nomake examples -release -opensource \
-confirm-license -no-iconv \
-no-rpath -system-sqlite \
-gstreamer 1.0 \
-strip
make $jobArgs
}
INSTALL()
{
export QT_INSTALL_HEADERS=$includeDir
export LLVM_INSTALL_DIR="$(llvm-config --prefix)"
make install
# build and install docs
PATH=$PATH:$binDir
LIBRARY_PATH=$LIBRARY_PATH:$libDir
make docs
make install_docs
# copy all examples
_base=$dataDir/Qt5/examples
mkdir -p $_base
cp ${sourceDir}/qtbase/examples/examples.pro $_base
_fdirs=$(find "${sourceDir}" -maxdepth 2 -type d -name examples)
for _dir in $_fdirs; do
_mod=$(basename ${_dir%/examples})
if [ -e "$_dir/README" ]; then
cp $_dir/README $_dir/README.$_mod
fi
cp -rn $_dir/* $_base
done
rm $libDir/*.la
fixPkgconfig
prepareInstalledDevelLibs \
libQt53DAnimation libQt53DCore libQt53DExtras libQt53DInput \
libQt53DLogic libQt53DQuick libQt53DQuickAnimation \
libQt53DQuickExtras libQt53DQuickInput libQt53DQuickRender \
libQt53DQuickScene2D libQt53DRender libQt5Bluetooth libQt5Charts \
libQt5Concurrent libQt5Core libQt5DataVisualization libQt5DBus \
libQt5Designer libQt5DesignerComponents libQt5EglFSDeviceIntegration \
libQt5Gamepad libQt5Gui libQt5Help libQt5Location libQt5Multimedia \
libQt5MultimediaGstTools libQt5MultimediaQuick libQt5MultimediaWidgets \
libQt5Network libQt5NetworkAuth libQt5Nfc libQt5OpenGL \
libQt5Positioning libQt5PositioningQuick libQt5PrintSupport libQt5Purchasing \
libQt5Qml libQt5Quick libQt5QuickControls2 libQt5QuickParticles \
libQt5QuickTemplates2 libQt5QuickTest libQt5QuickWidgets \
libQt5RemoteObjects libQt5Script libQt5ScriptTools libQt5Scxml \
libQt5Sensors libQt5SerialBus libQt5SerialPort libQt5Sql libQt5Svg \
libQt5Test libQt5TextToSpeech libQt5WebChannel libQt5WebSockets \
libQt5WebView libQt5Widgets libQt5Xml libQt5XmlPatterns
cd $libDir
for i in lib*.so.5.*;do
ln -fs $i $(echo $i | cut -f1,2 -d.)
done
mv -f $libDir/*.a $developLibDir/
mv -f $libDir/*.prl $developLibDir/
# fix mkspec for static libs
grep -rl $dataDir/Qt5/mkspecs/modules/*.pri -e "staticlib" | xargs sed -i 's%$$QT_MODULE_LIB_BASE%'${developLibDir}'%g'
devCommands="canbusutil fixqt4headers.pl
moc qgltf qlalr qmake qml qmlcachegen qmleasing qmlimportscanner
qmllint qmlmin qmlplugindump qmlpreview qmlprofiler qmlscene qmltestrunner
qscxmlc qvkgen rcc repc syncqt.pl uic xmlpatterns xmlpatternsvalidator"
for i in $devCommands; do
devPackageCommands="$devPackageCommands $binDir/$i"
done
# move tools to apps folder
mkdir -p $appsDir/Qt5/lib
mv $binDir/assistant $appsDir/Qt5/Assistant
ln -s $appsDir/Qt5/Assistant $binDir/assistant
mv $binDir/qdbusviewer $appsDir/Qt5/QDBusViewer
ln -s $appsDir/Qt5/QDBusViewer $binDir/qdbusviewer
mv $binDir/designer $appsDir/Qt5/Designer
ln -s $appsDir/Qt5/Designer $binDir/designer
mv $binDir/linguist $appsDir/Qt5/Linguist
ln -s $appsDir/Qt5/Linguist $binDir/linguist
mv $binDir/qdoc $appsDir/Qt5/qdoc
ln -s $appsDir/Qt5/qdoc $binDir/qdoc
cp -f /system/$relativeLibDir/libclang* $appsDir/Qt5/lib
strip $appsDir/Qt5/lib/*
toolsCommands="assistant designer lconvert linguist lrelease lupdate pixeltool
qcollectiongenerator qdistancefieldgenerator qdbus qdbuscpp2xml qdbusviewer qdbusxml2cpp
qdoc qhelpgenerator qtattributionsscanner qtdiag qtpaths qtplugininfo"
for i in $toolsCommands; do
toolsPackageCommands="$toolsPackageCommands $binDir/$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 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/Qt5/$j"
addAppDeskbarSymlink "$appsDir/Qt5/$j" "Qt/$j"
mimeset -f "$appsDir/Qt5/$j"
done
packageEntries docs \
$docDir/Qt5
packageEntries examples \
$dataDir/Qt5/examples
packageEntries devel \
$developDir \
$devPackageCommands \
$libDir/cmake \
$dataDir/Qt5/mkspecs
packageEntries tools \
$appsDir \
$toolsPackageCommands \
${DIR_QT_DEVELOP_DESKBAR}
}