diff options
Diffstat (limited to 'dev-qt')
-rw-r--r-- | dev-qt/Manifest.gz | bin | 11893 -> 11891 bytes | |||
-rw-r--r-- | dev-qt/qt-creator/Manifest | 6 | ||||
-rw-r--r-- | dev-qt/qt-creator/metadata.xml | 2 | ||||
-rw-r--r-- | dev-qt/qt-creator/qt-creator-14.0.2.ebuild | 272 | ||||
-rw-r--r-- | dev-qt/qt-creator/qt-creator-9999.ebuild | 3 |
5 files changed, 280 insertions, 3 deletions
diff --git a/dev-qt/Manifest.gz b/dev-qt/Manifest.gz Binary files differindex 29a600e61c78..1995c0b0cada 100644 --- a/dev-qt/Manifest.gz +++ b/dev-qt/Manifest.gz diff --git a/dev-qt/qt-creator/Manifest b/dev-qt/qt-creator/Manifest index 3955415c1e4f..1a555269fdb6 100644 --- a/dev-qt/qt-creator/Manifest +++ b/dev-qt/qt-creator/Manifest @@ -4,6 +4,8 @@ AUX qt-creator-14.0.1-clang19.patch 1046 BLAKE2B 2d1fefe8c48d448d51ca5c25e5f91cc AUX qt-creator-14.0.1-sol2-clang19-gcc15.patch 741 BLAKE2B 237b4e1f0bf1c02bd05fe4d146a029aa98ffd1f95407f806c7b917732afedc4615c73b75e07d773597717acbbe97dc1760a320e3dca7b9a919fad988ca1dae0d SHA512 9dd50273c0410d95f9324bd83147426cfaf37c792cb563d39a9c1b6db2afd5021c4c52b69c61de4640a5dc45c71b625e8906ace9ca1aeaeed61eb0bcbd39b53d AUX qt-creator-15.0.0-musl-no-execinfo.patch 1313 BLAKE2B acbc23f4e943f1d5942b8f91e75acefb24d8d396a37d15965892ef6da60891c92824628d1e719762273c5fce6752812b6d50a18b4536484c8e20cd9d5100ea62 SHA512 644c7f8337a8a7c66fbcea9f2d097ba508eea9b7a3550bcf4b3dfc267c14d5c2b9d517c0ff092aa101fd902b98af44133ac81f1ba1a5fdbe1251dda45677447d DIST qt-creator-opensource-src-14.0.1.tar.xz 52495220 BLAKE2B a93111abdc39550c18c8ecae9bbb8c645a06be373b179bca47dac4b9e9907c9a7d9c8b13a6cc834c656cd7d7e5a849a6512f8b48055ecc8ea32a0f56f6439176 SHA512 5ceacce80cd5cdef99606ca371134e5e8a5897b67ff1a52d202449e74e817bce22ee31b029b6f8643e19700742ddd8e616a48f005aae0720f200c3b03f8eab9a +DIST qt-creator-opensource-src-14.0.2.tar.xz 52423044 BLAKE2B 491b00aa9900b45e8e0dea33d4a7c99f543cf3b526931121b87d51828292b1e7e422e890c69cb904a2d5ca3c20de5fa60d87a889c0036a9624c1825b63efe57f SHA512 45b7c1aef062f59446b162006f22fcba17a99f02008624ab332ae5109a31ec55caa3548f7b61a4feb04793fa049b2a67c4a3c37aa3d3e2f3eced31bd11a48ab2 EBUILD qt-creator-14.0.1.ebuild 7646 BLAKE2B c5d0aba46ea7177fb3428902b5164cb1bcd51bba3e78cdc93fcfe115157722f0a5124104abb6414bee5ddb533d4ce9f6a59dcfb2565c6807bec4c49b28e83615 SHA512 1c0b78608cad3668701766c344e9cd92c80c2e59ee8c48c10f71875b9360dd778a534fb5caf81779ed7b8a853951837aa87d285721d0266d9401bea6fef6b00d -EBUILD qt-creator-9999.ebuild 8166 BLAKE2B 3fd9d62c83bab1ffd939182040ed2056cd234da8bd807bc38f79603bb6f350df3700d83a2277085668332d9561c061d9257bc963ec5b584b82d79a18b477ea74 SHA512 165a33ecf6e2582bb5893c4c37be648d9adbee35ec555a45856f5b6ae34aea2308482926cdc5ad24fda8416edc5d4f318c39fb35640fdcf165d7ce5788ee1f66 -MISC metadata.xml 1241 BLAKE2B 0d68bad4f8bdf857a44107e1b22299ce2e1ac84c2b2197f33e5f3c99562e4cd1d68982a2048961bd1d469a497f4cf4942005cdfb7876a6cdc720ed19e81e7a6d SHA512 33e3e7021d07f83f2ddd39120ac695394963978c80acdd8e2f0713e7cd485ac705ba11168276bb43f3f80b9c1122dd98a5359f342c2c075c2fd8ebddb93084b6 +EBUILD qt-creator-14.0.2.ebuild 7714 BLAKE2B 0e5a435f0390ea29477d0361f15c21ab0f447b1187648f637f94c405baa3d4186dfc195004eab317be03cc1a370974076e6551b497d0a92f01e43df047c11729 SHA512 fb5bd71331085dbbd0ae492e4bda42ac451e618de442f061a1457b09fad170919790d29c04f9d95b5c2eb2590b7cc33797a859ae30116c81eab0a7605b07c15a +EBUILD qt-creator-9999.ebuild 8286 BLAKE2B dd6693ed21febc906fd6b3844a5aaba0f060054dafcd56d5841994ae4d8ee29458088e6fceb55906855cc4dbcf9eec77408ed6e587e60b60e26cb6bedee7217b SHA512 080b5c8a1020396df51feabfbf481ce564903b79a4e9bff1209b8b6d989bfbf083dbf2ca071fdcea4f5efcb696cf7cc4651042ee1dcf9780e936cdd33f055acf +MISC metadata.xml 1273 BLAKE2B 3c4e41b9422bad858fae48bdc9814c7e259dcea2d1da6c383a54f809152d77f72438e05115463866bea7f87a9d79301ba65bbaa7e0fd3d2255b5fdfcc58a9a78 SHA512 a830e418863904943cd33deb4f09fbd98557502ccd37137d891957ee1883fe80b9a8091cdcb0d93c4d74c343ffdae9721ecc56414d0b2b9c7b79984687f07cf1 diff --git a/dev-qt/qt-creator/metadata.xml b/dev-qt/qt-creator/metadata.xml index 581b84c86cb1..5e0d4e8578c0 100644 --- a/dev-qt/qt-creator/metadata.xml +++ b/dev-qt/qt-creator/metadata.xml @@ -12,7 +12,7 @@ <flag name="plugin-dev">Install the 'Devel' component needed to build external Qt Creator plugins</flag> <flag name="qmldesigner">Build QmlDesigner and related plugins (Insight, StudioWelcome)</flag> <flag name="serialterminal">Build the serial terminal plugin</flag> - <flag name="tracing">Build plugins requiring tracing capabilities (CtfVisualizer, PerfProfiler, QmlProfiler)</flag> + <flag name="tracing">Build plugins for tracing requiring extra dependencies (AppStatisticsMonitor, CtfVisualizer, PerfProfiler, QmlProfiler)</flag> <flag name="webengine">Use <pkg>dev-qt/qtwebengine</pkg> with the help USE rather than bundled litehtml</flag> </use> <upstream> diff --git a/dev-qt/qt-creator/qt-creator-14.0.2.ebuild b/dev-qt/qt-creator/qt-creator-14.0.2.ebuild new file mode 100644 index 000000000000..0326b526636b --- /dev/null +++ b/dev-qt/qt-creator/qt-creator-14.0.2.ebuild @@ -0,0 +1,272 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {15..18} ) +LLVM_OPTIONAL=1 +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake flag-o-matic llvm-r1 python-any-r1 readme.gentoo-r1 xdg + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI=( + "https://code.qt.io/qt-creator/qt-creator.git" + "https://github.com/qt-creator/qt-creator.git" + ) + EGIT_SUBMODULES=( + perfparser + src/libs/qlitehtml + src/libs/qlitehtml/src/3rdparty/litehtml + ) +else + QTC_PV=${PV/_/-} + QTC_P=${PN}-opensource-src-${QTC_PV} + [[ ${QTC_PV} == ${PV} ]] && QTC_REL=official || QTC_REL=development + SRC_URI="https://download.qt.io/${QTC_REL}_releases/qtcreator/$(ver_cut 1-2)/${PV/_/-}/${QTC_P}.tar.xz" + S=${WORKDIR}/${QTC_P} + KEYWORDS="~amd64" +fi + +DESCRIPTION="Lightweight IDE for C++/QML development centering around Qt" +HOMEPAGE="https://www.qt.io/product/development-tools" + +LICENSE="GPL-3" +SLOT="0" +IUSE=" + +clang designer doc +help keyring plugin-dev qmldesigner + serialterminal +svg test +tracing webengine +" +REQUIRED_USE="clang? ( ${LLVM_REQUIRED_USE} )" +RESTRICT="!test? ( test )" + +QT_PV=6.5.4:6 + +# := is used where Qt's private APIs are used for safety +COMMON_DEPEND=" + dev-cpp/yaml-cpp:= + >=dev-qt/qt5compat-${QT_PV} + >=dev-qt/qtbase-${QT_PV}=[concurrent,dbus,gui,network,widgets,xml] + >=dev-qt/qtdeclarative-${QT_PV}= + clang? ( + $(llvm_gen_dep ' + sys-devel/clang:${LLVM_SLOT}= + sys-devel/llvm:${LLVM_SLOT}= + ') + ) + designer? ( >=dev-qt/qttools-${QT_PV}[designer] ) + help? ( + >=dev-qt/qttools-${QT_PV}[assistant] + webengine? ( >=dev-qt/qtwebengine-${QT_PV} ) + ) + keyring? ( + app-crypt/libsecret + dev-libs/glib:2 + ) + qmldesigner? ( + >=dev-qt/qtquick3d-${QT_PV}= + >=dev-qt/qtsvg-${QT_PV} + ) + serialterminal? ( >=dev-qt/qtserialport-${QT_PV} ) + svg? ( >=dev-qt/qtsvg-${QT_PV} ) + tracing? ( + app-arch/zstd:= + dev-libs/elfutils + >=dev-qt/qtcharts-${QT_PV} + >=dev-qt/qtshadertools-${QT_PV} + ) +" +# qtimageformats for .webp in examples, semi-optfeature but useful in general +RDEPEND=" + ${COMMON_DEPEND} + help? ( >=dev-qt/qtimageformats-${QT_PV} ) + qmldesigner? ( >=dev-qt/qtquicktimeline-${QT_PV} ) +" +DEPEND="${COMMON_DEPEND}" +BDEPEND=" + ${PYTHON_DEPS} + >=dev-qt/qttools-${QT_PV}[linguist] + doc? ( >=dev-qt/qttools-${QT_PV}[qdoc,qtattributionsscanner] ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-11.0.2-musl-no-execinfo.patch + "${FILESDIR}"/${PN}-12.0.0-musl-no-malloc-trim.patch + "${FILESDIR}"/${PN}-14.0.1-clang19.patch +) + +pkg_setup() { + python-any-r1_pkg_setup + use clang && llvm-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + # needed for finding docs at runtime in PF + sed -e "/_IDE_DOC_PATH/s/qtcreator/${PF}/" \ + -i cmake/QtCreatorAPIInternal.cmake || die + + if use plugin-dev; then #928423 + # cmake --install --component integrates poorly with the cmake + # eclass and the install targets are otherwise missing, so strip + # out EXCLUDE_FROM_ALL until figure out a better solution + find . \( -name CMakeLists.txt -o -name '*.cmake' \) -exec sed -i -zE \ + 's/COMPONENT[[:space:]]+Devel[[:space:]]+EXCLUDE_FROM_ALL//g' {} + || die + fi +} + +src_configure() { + # -Werror=lto-type-mismatch issues, needs looking into + filter-lto + + # temporary workaround for musl-1.2.4 (bug #903611), this ideally + # needs fixing in qtbase as *64 usage comes from its headers' macros + use elibc_musl && append-lfs-flags + + local mycmakeargs=( + -DBUILD_DEVELOPER_DOCS=$(usex doc) + -DBUILD_DOCS_BY_DEFAULT=$(usex doc) + -DBUILD_WITH_PCH=no + -DWITH_DOCS=$(usex doc) + -DWITH_TESTS=$(usex test) + + # sticking to bundled for now until it switches to KF6's + -DBUILD_LIBRARY_KSYNTAXHIGHLIGHTING=yes + + # Much can be optional, but do not want to flood users (or maintainers) + # with too many flags. Not to mention that many plugins are merely + # wrappers around still optional tools (e.g. cvs) and any unwanted + # plugins can be disabled at runtime. So optional flags are limited + # to plugins with additional build-time dependencies. + -DBUILD_LIBRARY_TRACING=$(usex tracing) # qml+perfprofiler,ctfvisual + -DBUILD_EXECUTABLE_PERFPARSER=$(usex tracing) + -DBUILD_PLUGIN_APPSTATISTICSMONITOR=$(usex tracing) + + -DBUILD_PLUGIN_CLANGCODEMODEL=$(usex clang) + -DBUILD_PLUGIN_CLANGFORMAT=$(usex clang) + -DBUILD_PLUGIN_CLANGTOOLS=$(usex clang) + -DCLANGTOOLING_LINK_CLANG_DYLIB=yes + + -DBUILD_PLUGIN_DESIGNER=$(usex designer) + + -DBUILD_PLUGIN_HELP=$(usex help) + -DBUILD_HELPVIEWERBACKEND_QTWEBENGINE=$(usex webengine) + -DBUILD_LIBRARY_QLITEHTML=$(usex help $(usex !webengine)) + # TODO?: package litehtml, but support for latest releases seem + # to lag behind and bundled may work out better for now + # https://bugreports.qt.io/browse/QTCREATORBUG-29169 + $(use help && usev !webengine -DCMAKE_DISABLE_FIND_PACKAGE_litehtml=yes) + + -DBUILD_PLUGIN_SERIALTERMINAL=$(usex serialterminal) + + -DENABLE_SVG_SUPPORT=$(usex svg) + + -DWITH_QMLDESIGNER=$(usex qmldesigner) + + # meant to be in sync with qtbase[journald], but think(?) not worth + # handling given qt-creator can use QT_FORCE_STDERR_LOGGING=1 nowadays + -Djournald=no + + # not packaged, but allow using if found + #-DCMAKE_DISABLE_FIND_PACKAGE_LibDDemangle=yes + #-DCMAKE_DISABLE_FIND_PACKAGE_LibRustcDemangle=yes + + # for bundled qtkeychain (no switch to unbundle right now) + # reminder: if ever unbundled/optional, qtbase[dbus] can be removed + -DLIBSECRET_SUPPORT=$(usex keyring) + ) + + cmake_src_configure +} + +src_test() { + local -x QT_QPA_PLATFORM=offscreen + + local CMAKE_SKIP_TESTS=( + # skipping same tests+label as upstream's CI by default + # `grep ctest .github/workflows/build_cmake.yml` + tst_perfdata + ) + + cmake_src_test --label-exclude exclude_from_precheck +} + +src_install() { + cmake_src_install + + if use doc; then + dodoc -r "${BUILD_DIR}"/doc/html + dodoc "${BUILD_DIR}"/share/doc/${PF}/qtcreator{,-dev}.qch + docompress -x /usr/share/doc/${PF}/qtcreator{,-dev}.qch + fi + + local DISABLE_AUTOFORMATTING=yes + local DOC_CONTENTS="\ +Some plugins (if used) may need optional extra dependencies/USE. + +This list provides associations with Gentoo's packages (if exists) +ordered as in Qt Creator's Help -> About Plugins (not exhaustive). + +dev-qt/qt-docs:6 with USE=\"examples qch\" is notably recommended, or +else the example tab will be empty alongside missing documentation. + +Build Systems: +- CMakeProjectManager (dev-build/cmake) +- MesonProjectManager (dev-build/meson) +- QbsProjectManager (dev-util/qbs) + +C++: +- Beautifier (dev-util/astyle and/or dev-util/uncrustify) +- ClangCodeModel (USE=clang, dev-util/clazy to understand Qt semantics) +- ClangFormat (USE=clang) + +Code Analyzer: +- ClangTools (USE=clang) +- Cppcheck (dev-util/cppcheck) +- CtfVisualizer (USE=tracing) +- PerfProfiler (USE=tracing) +- Valgrind (dev-debug/valgrind) + +Core: +- Help (USE=help + dev-qt/qt-docs:6 with USE=\"examples qch\") + +Device Support: +- Android (virtual/jdk, will also want the unpackaged Qt for Android) + +Other Languages: +- Nim (dev-lang/nim) +- Python (dev-lang/python) + +Qt Creator: +- Designer (USE=designer) + +Qt Quick: +- Insight (USE=qmldesigner) +- QmlDesigner (USE=qmldesigner) +- QmlProfiler (USE=tracing) + +Utilities: +- AppStatisticsMonitor (USE=tracing) +- Autotest (dev-cpp/catch, dev-cpp/gtest, or dev-libs/boost if used) +- Conan (dev-util/conan) +- Docker (app-containers/docker) +- Haskell (dev-lang/ghc) +- ScreenRecorder (media-video/ffmpeg) +- SerialTerminal (USE=serialterminal) +- SilverSearcher (sys-apps/the_silver_searcher) +- StudioWelcome (USE=qmldesigner) + +Version Control: +- CVS (dev-vcs/cvs) +- Fossil (dev-vcs/fossil) +- Git (dev-vcs/git) +- Mercurial (dev-vcs/mercurial) +- Subversion (dev-vcs/subversion)" + readme.gentoo_create_doc +} + +pkg_postinst() { + xdg_pkg_postinst + readme.gentoo_print_elog +} diff --git a/dev-qt/qt-creator/qt-creator-9999.ebuild b/dev-qt/qt-creator/qt-creator-9999.ebuild index 99cda33d0135..843c80b7e3c5 100644 --- a/dev-qt/qt-creator/qt-creator-9999.ebuild +++ b/dev-qt/qt-creator/qt-creator-9999.ebuild @@ -77,6 +77,7 @@ COMMON_DEPEND=" tracing? ( app-arch/zstd:= dev-libs/elfutils + >=dev-qt/qtcharts-${QT_PV} >=dev-qt/qtshadertools-${QT_PV} ) " @@ -162,6 +163,7 @@ src_configure() { # to plugins with additional build-time dependencies. -DBUILD_LIBRARY_TRACING=$(usex tracing) # qml+perfprofiler,ctfvisual -DBUILD_EXECUTABLE_PERFPARSER=$(usex tracing) + -DBUILD_PLUGIN_APPSTATISTICSMONITOR=$(usex tracing) -DBUILD_PLUGIN_CLANGCODEMODEL=$(usex clang) -DBUILD_PLUGIN_CLANGFORMAT=$(usex clang) @@ -267,6 +269,7 @@ Qt Quick: - QmlProfiler (USE=tracing) Utilities: +- AppStatisticsMonitor (USE=tracing) - Autotest (dev-cpp/catch, dev-cpp/gtest, or dev-libs/boost if used) - Conan (dev-util/conan) - Docker (app-containers/docker) |