diff options
Diffstat (limited to 'dev-qt/qt-creator/qt-creator-14.0.0.ebuild')
-rw-r--r-- | dev-qt/qt-creator/qt-creator-14.0.0.ebuild | 268 |
1 files changed, 0 insertions, 268 deletions
diff --git a/dev-qt/qt-creator/qt-creator-14.0.0.ebuild b/dev-qt/qt-creator/qt-creator-14.0.0.ebuild deleted file mode 100644 index a04b85dcdd48..000000000000 --- a/dev-qt/qt-creator/qt-creator-14.0.0.ebuild +++ /dev/null @@ -1,268 +0,0 @@ -# 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/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 -) - -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_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: -- 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 -} |