0
0
Fork 0
haikuports/dev-qt/qt_creator/qt_creator-4.14.0.recipe

115 lines
3.8 KiB
Bash

SUMMARY="A complete IDE for C/C++ development from the makers of Qt"
DESCRIPTION="Qt Creator provides a cross-platform, complete integrated \
development environment (IDE) for application developers to create \
applications for multiple desktop, embedded, and mobile device platforms, \
such as Android and iOS."
HOMEPAGE="https://www.qt.io/ide/"
COPYRIGHT="2020 The Qt Company Ltd"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://download.qt.io/official_releases/qtcreator/${portVersion%.*}/$portVersion/qt-creator-opensource-src-$portVersion.tar.xz"
CHECKSUM_SHA256="d240109351e96446ff149cbd56341ec02ba37bfa50462a85e4d02dfe6b21201e"
SOURCE_DIR="qt-creator-opensource-src-$portVersion"
PATCHES="qt_creator-$portVersion.patchset"
ADDITIONAL_FILES="qt_creator.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
qt_creator$secondaryArchSuffix = $portVersion
app:QtCreator$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
cmd:qdoc$secondaryArchSuffix
cmd:qmake$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libLLVM_9$secondaryArchSuffix
lib:libQt5Concurrent$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Designer$secondaryArchSuffix
lib:libQt5DesignerComponents$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Help$secondaryArchSuffix
lib:libQt5Network$secondaryArchSuffix
lib:libQt5PrintSupport$secondaryArchSuffix
lib:libQt5Qml$secondaryArchSuffix
lib:libQt5Quick$secondaryArchSuffix
lib:libQt5QuickWidgets$secondaryArchSuffix
lib:libQt5Script$secondaryArchSuffix
lib:libQt5Sql$secondaryArchSuffix
lib:libQt5Svg$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
lib:libQt5Xml$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libclang$secondaryArchSuffix >= 9
devel:libGL$secondaryArchSuffix
devel:libLLVM_9$secondaryArchSuffix
devel:libQt5Concurrent$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libQt5Designer$secondaryArchSuffix
devel:libQt5DesignerComponents$secondaryArchSuffix
devel:libQt5Gui$secondaryArchSuffix
devel:libQt5Help$secondaryArchSuffix
devel:libQt5Network$secondaryArchSuffix
devel:libQt5PrintSupport$secondaryArchSuffix
devel:libQt5Qml$secondaryArchSuffix
devel:libQt5Quick$secondaryArchSuffix
devel:libQt5QuickWidgets$secondaryArchSuffix
devel:libQt5Script$secondaryArchSuffix
devel:libQt5Sql$secondaryArchSuffix
devel:libQt5Svg$secondaryArchSuffix
devel:libQt5Widgets$secondaryArchSuffix
devel:libQt5Xml$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:g++$secondaryArchSuffix
cmd:lrelease$secondaryArchSuffix
cmd:make
cmd:qdoc$secondaryArchSuffix
cmd:qmake$secondaryArchSuffix
cmd:python2
cmd:which
"
BUILD()
{
qmake -r
make $jobArgs
}
INSTALL()
{
make install INSTALL_ROOT=$appsDir/QtCreator
# Qt port doesn't support createPlatformOpenGLContext yet
rm -rf $appsDir/QtCreator/lib/qtcreator/plugins/libQmlDesigner.so
rm -rf $appsDir/QtCreator/lib/qtcreator/plugins/libQmlProfiler.so
# Create symlink to libclang from Qt's build
ln -s /system/apps/Qt5/lib/libclang* $appsDir/QtCreator/lib/qtcreator/
local APP_SIGNATURE="application/x-vnd.qt5-qtcreator"
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local LONG_INFO="$SUMMARY"
sed \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
$portDir/additional-files/qt_creator.rdef.in > qt_creator.rdef
addResourcesToBinaries qt_creator.rdef $appsDir/QtCreator/bin/qtcreator
mv $appsDir/QtCreator/bin/qtcreator "$appsDir/QtCreator/bin/Qt Creator"
mkdir -p $dataDir/deskbar/menu/Applications/Qt
addAppDeskbarSymlink "$appsDir/QtCreator/bin/Qt Creator" "Qt/Qt Creator"
}