Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 572652 - kde-frameworks/extra-cmake-modules should not depend on dev-qt/qtcore
Summary: kde-frameworks/extra-cmake-modules should not depend on dev-qt/qtcore
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] KDE (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 568972
  Show dependency tree
 
Reported: 2016-01-22 23:11 UTC by legrand.cedric.01
Modified: 2016-04-10 11:43 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description legrand.cedric.01 2016-01-22 23:11:29 UTC
Almost everything is in the title.

For the details, I checked in ECM CMakeLists, and only the tests need qtcore (and some others BTW). The problem is that if you need ECM on a Qt free system, it is a bit annoying to build it for, finally, nothing.
I don't have any example of non-Qt applications using it (except maybe oxygen-icons, I did not check), but ECM provides usefull Wayland find modules, which may be used on Qt-free systems. I know it should rarely happen today, but we don't know tomorrow ;)

I must admit that I did not take time to test it, but archlinux extra-cmake-modules-git (AUR) does not depend on Qt, so in theory it should be good to just drop the dependency.

Finally, I'm sorry if my English is not perfect, I'm not a native speaker (and someone should learn to French schools how to learn languages, eheh).

Reproducible: Always

Steps to Reproduce:
Just emerge kde-frameworks without dev-qt/qtcore installed.
Actual Results:  
Brings dev-qt/qtcore in dependencies.

Expected Results:  
No dev-qt/* at all.
Comment 1 Michael Palimaka (kensington) gentoo-dev 2016-01-23 07:32:10 UTC
We found in the past that ECM installs some modules that that call qmake (such as ECMQueryQmake.cmake).
Comment 2 Andreas Sturmlechner gentoo-dev 2016-01-23 19:04:54 UTC
Yes it would be nice. But if Arch haven't created a split-out package with the qmake parts (and I doubt it) they might be just wrong. ;)
Comment 3 legrand.cedric.01 2016-01-23 19:29:48 UTC
From bug 556238: "extra-cmake-modules requires qmake from qtcore". I did not see that, but if we think this way, we should add a dependency on Wayland for FindWayland.cmake, and for all other modules depending on other packages. From my point of view, the right answer would be "plasma-workspace-wallpapers requires qmake from qtcore". The bug would still be fixed, leaving extra-cmake-modules without big dependencies.

Andreas, I would say neither of these. After checking, Archlinux does not patch ECM and only does cmake/make/make install (see https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=extra-cmake-modules-git). As a general rule, We may see it like this: if a software uses an ECM depending on a package, it must itself depend on this package. This would allow a package to use ECM without bringing useless dependencies. AFAIK, Gentoo is the only distro shipping an ECM package bringing such a big dependency.

If it is a problem for you, we could install only parts of ECM depending on use flags, but it would be too much work to maintain for what it is, at least from my point of view.
Comment 4 Arfrever Frehtes Taifersar Arahesis 2016-03-24 15:59:54 UTC
app-i18n/fcitx can be successfully installed with kde-frameworks/extra-cmake-modules installed and Qt 5 not installed at all.

Please drop dependency on dev-qt/qtcore:5 to allow users of Fcitx and e.g. GNOME to install app-i18n/fcitx without needlessly installing dev-qt/qtcore:5.
Comment 5 Arfrever Frehtes Taifersar Arahesis 2016-03-24 16:12:05 UTC
Test suite is optionally using dev-qt/linguist-tools:5 and dev-qt/qtcore:5:

tests/CMakeLists.txt:

find_package(Qt5LinguistTools CONFIG)
set_package_properties(
    Qt5LinguistTools
    PROPERTIES
        URL "http://www.qt.io/"
        DESCRIPTION "Qt5 linguist tools."
        TYPE OPTIONAL
        PURPOSE "Required to run tests for the ECMPoQmTools module."
)

find_package(Qt5Core CONFIG)
set_package_properties(
    Qt5Core
    PROPERTIES
        URL "http://www.qt.io/"
        DESCRIPTION "Qt5 core library."
        TYPE OPTIONAL
        PURPOSE "Required to run tests for the ECMQtDeclareLoggingCategory module, and for some tests of the KDEInstallDirs module."
)



dev-qt/qttest is rather not used, so I suggest to add KDE_TEST="false".
You might use DEPEND="test? ( $(add_qt_dep qtcore) $(add_qt_dep linguist-tools) )" if desired.
Comment 6 Michael Palimaka (kensington) gentoo-dev 2016-03-26 17:29:16 UTC
In overlay:

https://gitweb.gentoo.org/proj/kde.git/commit/?id=0efb4b00d16904295d1eee505f0765274db37397