diff options
author | Ionen Wolkens <ionen@gentoo.org> | 2024-04-02 11:34:53 -0400 |
---|---|---|
committer | Ionen Wolkens <ionen@gentoo.org> | 2024-04-02 11:50:05 -0400 |
commit | ed529e6ecf83a74ca626dcdff04a133b6675c188 (patch) | |
tree | 5dead2733377fa7b936fdecd85b6e955ee3951b3 | |
parent | sci-mathematics/singular: backport strict-aliasing/lto fix (diff) | |
download | gentoo-ed529e6ecf83a74ca626dcdff04a133b6675c188.tar.gz gentoo-ed529e6ecf83a74ca626dcdff04a133b6675c188.tar.bz2 gentoo-ed529e6ecf83a74ca626dcdff04a133b6675c188.zip |
dev-qt/qt-creator: install Devel component with IUSE=plugin-dev
Tried to compile Qt Creator's HelloWorld plugin externally and it built
fine with the USE enabled.
Debated installing unconditionally, but it installs quite a lot of
extras. Unsure about the IUSE name choice but it should hopefully do
(did feel IUSE=devel would be a bit too generic sounding).
Went for a bit hacky solution (for now) given --component integrates
poorly with cmake.eclass and does not seem(?) other ebuilds have needed
to do this yet in ::gentoo for ideas.
Closes: https://bugs.gentoo.org/928423
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
-rw-r--r-- | dev-qt/qt-creator/metadata.xml | 3 | ||||
-rw-r--r-- | dev-qt/qt-creator/qt-creator-12.0.2.ebuild | 12 | ||||
-rw-r--r-- | dev-qt/qt-creator/qt-creator-9999.ebuild | 12 |
3 files changed, 22 insertions, 5 deletions
diff --git a/dev-qt/qt-creator/metadata.xml b/dev-qt/qt-creator/metadata.xml index fcd44daa8386..89e60ab1d919 100644 --- a/dev-qt/qt-creator/metadata.xml +++ b/dev-qt/qt-creator/metadata.xml @@ -13,8 +13,9 @@ <flag name="clang">Build clang-based plugins for C/C++ development (code model, formatting, static analysis)</flag> <flag name="designer">Enable designer for QtWidgets-based UIs</flag> <flag name="help">Enable the integrated <pkg>dev-qt/qt-docs</pkg> viewer (also needed for examples)</flag> - <flag name="serialterminal">Build the serial terminal plugin</flag> + <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="webengine">Use <pkg>dev-qt/qtwebengine</pkg> with the help USE rather than bundled litehtml</flag> </use> diff --git a/dev-qt/qt-creator/qt-creator-12.0.2.ebuild b/dev-qt/qt-creator/qt-creator-12.0.2.ebuild index 9e674d8b1aa3..84a477ae119f 100644 --- a/dev-qt/qt-creator/qt-creator-12.0.2.ebuild +++ b/dev-qt/qt-creator/qt-creator-12.0.2.ebuild @@ -34,8 +34,8 @@ HOMEPAGE="https://www.qt.io/product/development-tools" LICENSE="GPL-3" SLOT="0" IUSE=" - +clang +designer doc +help qmldesigner serialterminal - +svg test +tracing webengine + +clang +designer doc +help plugin-dev qmldesigner + serialterminal +svg test +tracing webengine " REQUIRED_USE="clang? ( ${LLVM_REQUIRED_USE} )" RESTRICT="!test? ( test )" @@ -97,6 +97,14 @@ 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() { diff --git a/dev-qt/qt-creator/qt-creator-9999.ebuild b/dev-qt/qt-creator/qt-creator-9999.ebuild index 017a06e30b56..f28f40dcec29 100644 --- a/dev-qt/qt-creator/qt-creator-9999.ebuild +++ b/dev-qt/qt-creator/qt-creator-9999.ebuild @@ -34,8 +34,8 @@ HOMEPAGE="https://www.qt.io/product/development-tools" LICENSE="GPL-3" SLOT="0" IUSE=" - +clang designer doc +help qmldesigner serialterminal - +svg test +tracing webengine + +clang designer doc +help plugin-dev qmldesigner + serialterminal +svg test +tracing webengine " REQUIRED_USE="clang? ( ${LLVM_REQUIRED_USE} )" RESTRICT="!test? ( test )" @@ -97,6 +97,14 @@ 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() { |