aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-qt/qt5/qt5-creator_git.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-qt/qt5/qt5-creator_git.bb')
-rw-r--r--recipes-qt/qt5/qt5-creator_git.bb82
1 files changed, 54 insertions, 28 deletions
diff --git a/recipes-qt/qt5/qt5-creator_git.bb b/recipes-qt/qt5/qt5-creator_git.bb
index a3960042..85bfcc35 100644
--- a/recipes-qt/qt5/qt5-creator_git.bb
+++ b/recipes-qt/qt5/qt5-creator_git.bb
@@ -7,77 +7,103 @@ SUMMARY = "Qt Creator is a new cross-platform Qt IDE"
# 'System GDB at /usr/bin/gdb.
HOMEPAGE = "https://qt-project.org/"
-LICENSE = "GPLv3"
+LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = " \
file://LICENSE.GPL3-EXCEPT;md5=763d8c535a234d9a3fb682c7ecb6c073 \
"
-inherit qmake5
+inherit qmake5 pkgconfig mime-xdg
-DEPENDS = "qtbase qtscript qtwebkit qtxmlpatterns qtx11extras qtdeclarative qttools qttools-native qtsvg chrpath-replacement-native"
-DEPENDS_append_toolchain-clang = " clang llvm-common"
-DEPENDS_append_libc-musl = " libexecinfo"
-
-SRCREV = "8181363fa90eb651591bf71e1a840e1c998429f4"
-PV = "4.9.2+git${SRCPV}"
+DEPENDS += "qtbase qtscript qtxmlpatterns qtx11extras qtdeclarative qttools qttools-native qtsvg chrpath-replacement-native zlib"
+DEPENDS:append:libc-musl = " libexecinfo"
+SRCREV = "39ac7b1bf6add473026687003311b702742b6b21"
+PV = "4.15.2+git${SRCPV}"
# Patches from https://github.com/meta-qt5/qtcreator/commits/b4.9.2
# 4.9.2.meta-qt5.1
SRC_URI = " \
- git://code.qt.io/qt-creator/qt-creator.git;branch=4.9 \
- file://0001-clangformat-AllowShortIfStatementsOnASingleLine-is-n.patch \
+ git://code.qt.io/qt-creator/qt-creator.git;branch=4.15 \
+ file://0001-app-Use-malloc_trim-only-on-glibc.patch \
+ file://0002-clangformat-Fix-build-with-LLVM-13.patch \
+ file://0003-clangformat-Fix-build-with-LLVM-13.patch \
"
-SRC_URI_append_libc-musl = " file://0001-Link-with-libexecinfo-on-musl.patch"
+SRC_URI:append:libc-musl = " file://0001-Link-with-libexecinfo-on-musl.patch"
S = "${WORKDIR}/git"
-EXTRA_QMAKEVARS_PRE += "IDE_LIBRARY_BASENAME=${baselib}${QT_DIR_NAME}"
+EXTRA_QMAKEVARS_PRE += " \
+ IDE_LIBRARY_BASENAME=${baselib}${QT_DIR_NAME} \
+ CONFIG+=disable_external_rpath \
+"
EXTRANATIVEPATH += "chrpath-native"
-do_configure_append() {
+PACKAGECONFIG ??= ""
+PACKAGECONFIG:append:toolchain-clang = " clang"
+
+# Important note: In case clang was added to qttools' PACKAGECONFIG, it has to
+# be added here too - otherwise build fails trying to link native clang libraries
+PACKAGECONFIG[clang] = ",,clang"
+
+COMPATIBLE_HOST:toolchain-clang:riscv32 = "null"
+COMPATIBLE_HOST:toolchain-clang:riscv64 = "null"
+
+do_configure:append() {
# Find native tools
sed -i 's:${STAGING_BINDIR}.*/qdoc:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdoc:g' ${B}/Makefile
if [ -e ${B}/share/qtcreator/translations/Makefile ]; then
- sed -i 's:${STAGING_BINDIR}.*/lrelease:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lrelease:g' ${B}/share/qtcreator/translations/Makefile
- sed -i 's:${STAGING_BINDIR}.*/lupdate:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lupdate:g' ${B}/share/qtcreator/translations/Makefile
- sed -i 's:${STAGING_BINDIR}.*/xmlpatterns:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/xmlpatterns:g' ${B}/share/qtcreator/translations/Makefile
- sed -i 's:${STAGING_BINDIR}.*/lconvert:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lconvert:g' ${B}/share/qtcreator/translations/Makefile
+ sed -i 's:${STAGING_BINDIR}/lrelease:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lrelease:g' ${B}/share/qtcreator/translations/Makefile
+ sed -i 's:${STAGING_BINDIR}/lupdate:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lupdate:g' ${B}/share/qtcreator/translations/Makefile
+ sed -i 's:${STAGING_BINDIR}/xmlpatterns:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/xmlpatterns:g' ${B}/share/qtcreator/translations/Makefile
+ sed -i 's:${STAGING_BINDIR}/lconvert:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lconvert:g' ${B}/share/qtcreator/translations/Makefile
fi
}
do_install() {
oe_runmake install INSTALL_ROOT=${D}${prefix}
-}
-do_install_append_toolchain-clang () {
- # Remove RPATHs embedded in bins
- chrpath --delete ${D}${libdir}/qtcreator/plugins/libClang*
- chrpath --delete ${D}${libexecdir}/qtcreator/clang*
+ if [ "${@bb.utils.contains("PACKAGECONFIG", "clang", "1", "0", d)}" = "1" ]; then
+ # Remove RPATHs embedded in bins
+ chrpath --delete ${D}${libdir}/qtcreator/plugins/libClang*
+ chrpath --delete ${D}${libexecdir}/qtcreator/clang*
+ fi
}
-FILES_${PN} += " \
+FILES:${PN} += " \
${datadir}/qtcreator \
${datadir}/metainfo \
${datadir}/icons \
${libdir}${QT_DIR_NAME}/qtcreator \
"
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
${libdir}${QT_DIR_NAME}/qtcreator/*${SOLIBSDEV} \
"
-RDEPENDS_${PN} += "perl python"
-RCONFLICTS_${PN} = "qt-creator"
+RDEPENDS:${PN} += "perl python3"
+RCONFLICTS:${PN} = "qt-creator"
# To give best user experience out of the box..
-RRECOMMENDS_${PN} += " \
+RRECOMMENDS:${PN} += " \
packagegroup-qt5-toolchain-target \
binutils \
ccache \
make \
gcc-symlinks g++-symlinks cpp-symlinks \
gdb \
+ cmake \
+ qtwebengine-dev \
+ qtwebengine-mkspecs \
+ qtwebengine-plugins \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'qtwebengine-qmlplugins', '', d)} \
"
# ERROR: qt5-creator-4.5.1-r0 do_package_qa: QA Issue: No GNU_HASH in the elf binary: '/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/qt5-creator/4.5.1-r0/packages-split/qt5-creator/usr/lib/qt5/qtcreator/libqbscore.so.1.10.1'
-INSANE_SKIP_${PN} += "ldflags"
+INSANE_SKIP:${PN} += "ldflags"
+
+inherit features_check
+REQUIRED_DISTRO_FEATURES ?= "x11 opengl"
+
+python() {
+ if 'meta-python2' not in d.getVar('BBFILE_COLLECTIONS').split():
+ raise bb.parse.SkipRecipe('Requires meta-python2 to be present.')
+}