From 3bcdaa6f06fae7659c3ac8294503c45e6736a2e1 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 12 Dec 2023 17:29:30 +0000 Subject: gentoo auto-resync : 12:12:2023 - 17:29:30 --- dev-qt/Manifest.gz | Bin 11386 -> 11394 bytes dev-qt/qt-creator/Manifest | 5 +- .../qt-creator-11.0.2-musl-no-malloc-trim.patch | 10 - dev-qt/qt-creator/qt-creator-11.0.3.ebuild | 262 --------------------- dev-qt/qt-creator/qt-creator-12.0.1.ebuild | 254 ++++++++++++++++++++ 5 files changed, 256 insertions(+), 275 deletions(-) delete mode 100644 dev-qt/qt-creator/files/qt-creator-11.0.2-musl-no-malloc-trim.patch delete mode 100644 dev-qt/qt-creator/qt-creator-11.0.3.ebuild create mode 100644 dev-qt/qt-creator/qt-creator-12.0.1.ebuild (limited to 'dev-qt') diff --git a/dev-qt/Manifest.gz b/dev-qt/Manifest.gz index a5bac364ac90..879da7a829c0 100644 Binary files a/dev-qt/Manifest.gz and b/dev-qt/Manifest.gz differ diff --git a/dev-qt/qt-creator/Manifest b/dev-qt/qt-creator/Manifest index ae0dab796cc1..d3913cad98fb 100644 --- a/dev-qt/qt-creator/Manifest +++ b/dev-qt/qt-creator/Manifest @@ -1,9 +1,8 @@ AUX qt-creator-11.0.2-musl-no-execinfo.patch 1305 BLAKE2B 14fba3e72188403cf457de46c50960bb69336023e74173a2a67c0e3101cbf8367cc0d0a31118efdaf715a184e558b6f2277fe8025035de482f6913e139660792 SHA512 707d09268cff8981d1baf7fa08c48a2c02edf044a7a76594d545a2a020616090c8b61851dff8d8a8350c024b39be932c9f7bc266e01b87680c7982759b1d96c4 -AUX qt-creator-11.0.2-musl-no-malloc-trim.patch 400 BLAKE2B 6933d466e1c93cb71a97dade2f5cc1a1d9aecc4b376a4ccfe5b16bd7b7485f4d8230b00d93b21c8420e74094369f47d84dcb655c22f1327ba69a2b313aeff5b8 SHA512 c0a31f61723964fabdbd3e4256689a6712de5c0dc12a4e0989f1867588fd18a4f6535f30290949f3d3f982b9bb0b454d0b9b81781e3900d859fc40ac5bec1068 AUX qt-creator-12.0.0-musl-no-malloc-trim.patch 343 BLAKE2B 9c4b87a0de20616dc8cf5da4523c347f963c3459efdd9a716387690775f96abe0bb60bf0e147dd01ded79a110d1222b4009b17cece71998b46d62dd8b83eeac6 SHA512 6a0807bab971a795a156f974dab2b12699a4c90a6c7380e2dd0a136ba44354791ef7a178f79e61100c3165ec7667a72d6ca7f3c43f4958ccf9e8611995ca191d -DIST qt-creator-opensource-src-11.0.3.tar.xz 49863336 BLAKE2B 60ce53bdc0d3a2167a62cf479e9d3427b3a4f6e3ba5eb0489e0546d80fb30f9bcea1174b67cb36673a7aa2094d5f82a7d8ab34decf47fe0c260893f0a55c9795 SHA512 4d0faab02cb9b123f135b3a436e9f4132f459fd40400b9adab8af0a395b9d999f473f2bbab7cb5353f5a129bfc66e3e8dfe9143412cbd03c385a3d052ef221ca DIST qt-creator-opensource-src-12.0.0.tar.xz 50995944 BLAKE2B 1fd4abbd9386b7d15f14c141cb82e7061e99c226a8fd68aff1807fe1dd7e92348ccaee193112fa546d6350813261e1a44e01002d3f590921091cbc13731c6382 SHA512 e2383dece32d0fb49d95a4f4190ca70e182533a8a2e4eb13c782a39b700feb1eef59508c6f5b0abaf72ad09498380ccf51ef80d71ec7294b4df2745b918316af -EBUILD qt-creator-11.0.3.ebuild 7065 BLAKE2B 317107c9bab06ab5a598aab982c5b68ba349ef31da036a91b695ec41e3c3201f1b27d6833d8889bb389459f9eba9aec3155d313de81bbcdc872ce3304f83a58a SHA512 50925e55ec95729c3ec16af0b9d487686749523337df16290887af9d14a8301c14b993ad4e96bbadb652be8417b11232848a5b7dfcf4466b6072fd0ffc596653 +DIST qt-creator-opensource-src-12.0.1.tar.xz 51003336 BLAKE2B 2d4971cf81f1d1bee03c979ac4d47bd3c2814a692325d8531cedb659db5b0164cdff9d82bb4f95b932cf186fc346468e25d03ba60694f614923149c063a219cd SHA512 03a7afc1d820d07a3687a186f49bc212f4f1ab99dea5390bd3f962b4d373b1b130ed780ad5bebf1a478c77cf5e07e2af2eb701829a98c78e71b252d65a9112c7 EBUILD qt-creator-12.0.0.ebuild 6826 BLAKE2B 6b159102812867402f6c98fd145829bf4b8d429a25ff7ef66c2bf993d7249ae4cdabd4751eca850f710ac63e2874c46c8a8bf58f8a71fb45c3bb9136d2189777 SHA512 6c01a855fb5885bb47edec6c61ab4b76731ffbea3b7a85d1988d1c130cfc52a4c159f5a857edad2efeccfa3bd6a12f4b8a04cd756b3c70f9c8707cfc83cdf6c9 +EBUILD qt-creator-12.0.1.ebuild 6826 BLAKE2B 6b159102812867402f6c98fd145829bf4b8d429a25ff7ef66c2bf993d7249ae4cdabd4751eca850f710ac63e2874c46c8a8bf58f8a71fb45c3bb9136d2189777 SHA512 6c01a855fb5885bb47edec6c61ab4b76731ffbea3b7a85d1988d1c130cfc52a4c159f5a857edad2efeccfa3bd6a12f4b8a04cd756b3c70f9c8707cfc83cdf6c9 EBUILD qt-creator-9999.ebuild 6826 BLAKE2B 6b159102812867402f6c98fd145829bf4b8d429a25ff7ef66c2bf993d7249ae4cdabd4751eca850f710ac63e2874c46c8a8bf58f8a71fb45c3bb9136d2189777 SHA512 6c01a855fb5885bb47edec6c61ab4b76731ffbea3b7a85d1988d1c130cfc52a4c159f5a857edad2efeccfa3bd6a12f4b8a04cd756b3c70f9c8707cfc83cdf6c9 MISC metadata.xml 1242 BLAKE2B b0b082554e88fe15e707583e01c9883ac2c695244328eec8cfdcb948c1cd0f782940c429efaf83828fafd10c05ac468054039e8c73cc8fbf79dde1d5a2e990bc SHA512 7d877389c81c815a2691a6463b2ee122766bcd93f75fffd5faab014e06f901efa77f500bef2c67ece5fb37d5fc41e916668e38e282b72c1825cfec53c3c73e51 diff --git a/dev-qt/qt-creator/files/qt-creator-11.0.2-musl-no-malloc-trim.patch b/dev-qt/qt-creator/files/qt-creator-11.0.2-musl-no-malloc-trim.patch deleted file mode 100644 index d4936882d4d2..000000000000 --- a/dev-qt/qt-creator/files/qt-creator-11.0.2-musl-no-malloc-trim.patch +++ /dev/null @@ -1,10 +0,0 @@ -malloc_trim() is unavailable with musl ---- a/src/plugins/coreplugin/mainwindow.cpp -+++ b/src/plugins/coreplugin/mainwindow.cpp -@@ -222,5 +222,5 @@ - m_trimTimer.setInterval(60000); - // glibc may not actually free memory in free(). --#ifdef Q_OS_LINUX -+#if defined(Q_OS_LINUX) && defined(__GLIBC__) - connect(&m_trimTimer, &QTimer::timeout, this, [] { malloc_trim(0); }); - #endif diff --git a/dev-qt/qt-creator/qt-creator-11.0.3.ebuild b/dev-qt/qt-creator/qt-creator-11.0.3.ebuild deleted file mode 100644 index 089d5576fdc9..000000000000 --- a/dev-qt/qt-creator/qt-creator-11.0.3.ebuild +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -inherit cmake flag-o-matic llvm 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 qmldesigner serialterminal - +svg test +tracing webengine -" -RESTRICT="!test? ( test )" - -LLVM_MAX_SLOT=17 -QT_PV=6.2.0:6 # IDE_QT_VERSION_MIN - -# := is used where Qt's private APIs are used for safety -COMMON_DEPEND=" - >=dev-qt/qt5compat-${QT_PV} - >=dev-qt/qtbase-${QT_PV}=[concurrent,gui,network,widgets,xml] - >=dev-qt/qtdeclarative-${QT_PV}= - clang? ( - dev-cpp/yaml-cpp:= - =dev-qt/qttools-${QT_PV}[designer] ) - help? ( - >=dev-qt/qttools-${QT_PV}[assistant] - webengine? ( >=dev-qt/qtwebengine-${QT_PV} ) - ) - 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/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] ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-11.0.2-musl-no-execinfo.patch - "${FILESDIR}"/${PN}-11.0.2-musl-no-malloc-trim.patch -) - -llvm_check_deps() { - has_version -d "sys-devel/clang:${LLVM_SLOT}" -} - -pkg_setup() { - python-any-r1_pkg_setup - use clang && llvm_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 -} - -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_WITH_PCH=no - -DWITH_DOCS=$(usex doc) - -DBUILD_DEVELOPER_DOCS=$(usex doc) - -DWITH_TESTS=$(usex test) - - # TODO?: try to unbundle with =no when syntax-highlighting:6 exists - -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_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 - -DEXTERNAL_XXD=no - ') - - -DBUILD_PLUGIN_SERIALTERMINAL=$(usex serialterminal) - - -DENABLE_SVG_SUPPORT=$(usex svg) - - -DWITH_QMLDESIGNER=$(usex qmldesigner) - - -Djournald=no # not really useful unless match qtbase (needs systemd) - - # not packaged, but allow using if found - #-DCMAKE_DISABLE_FIND_PACKAGE_LibDDemangle=yes - #-DCMAKE_DISABLE_FIND_PACKAGE_LibRustcDemangle=yes - ) - - cmake_src_configure -} - -src_test() { - local -x QT_QPA_PLATFORM=offscreen - - local CMAKE_SKIP_TESTS=( - # unknown why these fails, but seems fixed in live - tst_tracing_timelineitemsrenderpass - tst_tracing_timelinenotesrenderpass - tst_tracing_timelineselectionrenderpass - # fails when built with clang, but also seems fixed in live - tst_process - # 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_compile() { - cmake_src_compile - - use doc && cmake_build {qch,html}_docs -} - -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-util/cmake) -- MesonProjectManager (dev-util/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-util/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: -- 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) -- 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-12.0.1.ebuild b/dev-qt/qt-creator/qt-creator-12.0.1.ebuild new file mode 100644 index 000000000000..74deb347c1bd --- /dev/null +++ b/dev-qt/qt-creator/qt-creator-12.0.1.ebuild @@ -0,0 +1,254 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +inherit cmake flag-o-matic llvm 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 qmldesigner serialterminal + +svg test +tracing webengine +" +RESTRICT="!test? ( test )" + +LLVM_MAX_SLOT=17 +QT_PV=6.2.0:6 # IDE_QT_VERSION_MIN + +# := is used where Qt's private APIs are used for safety +COMMON_DEPEND=" + >=dev-qt/qt5compat-${QT_PV} + >=dev-qt/qtbase-${QT_PV}=[concurrent,gui,network,widgets,xml] + >=dev-qt/qtdeclarative-${QT_PV}= + clang? ( + dev-cpp/yaml-cpp:= + =dev-qt/qttools-${QT_PV}[designer] ) + help? ( + >=dev-qt/qttools-${QT_PV}[assistant] + webengine? ( >=dev-qt/qtwebengine-${QT_PV} ) + ) + 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/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] ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-11.0.2-musl-no-execinfo.patch + "${FILESDIR}"/${PN}-12.0.0-musl-no-malloc-trim.patch +) + +llvm_check_deps() { + has_version -d "sys-devel/clang:${LLVM_SLOT}" +} + +pkg_setup() { + python-any-r1_pkg_setup + use clang && llvm_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 +} + +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_WITH_PCH=no + -DWITH_DOCS=$(usex doc) + -DBUILD_DEVELOPER_DOCS=$(usex doc) + -DWITH_TESTS=$(usex test) + + # TODO?: try to unbundle with =no when syntax-highlighting:6 exists + -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_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) + + -Djournald=no # not really useful unless match qtbase (needs systemd) + + # not packaged, but allow using if found + #-DCMAKE_DISABLE_FIND_PACKAGE_LibDDemangle=yes + #-DCMAKE_DISABLE_FIND_PACKAGE_LibRustcDemangle=yes + ) + + 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_compile() { + cmake_src_compile + + use doc && cmake_build {qch,html}_docs +} + +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-util/cmake) +- MesonProjectManager (dev-util/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-util/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: +- 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 +} -- cgit v1.2.3