Bug 342984 - plasma framework plugins should be built as a bundle plugin and not a shared library
Summary: plasma framework plugins should be built as a bundle plugin and not a shared ...
Status: RESOLVED INTENTIONAL
Alias: None
Product: libplasma
Classification: Frameworks and Libraries
Component: libplasma (other bugs)
Version First Reported In: unspecified
Platform: Fink Packages macOS
: NOR normal
Target Milestone: ---
Assignee: Marco Martin
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-17 23:03 UTC by Hanspeter Niederstrasser
Modified: 2020-11-24 20:00 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
patch to build plugins as MODULE (3.35 KB, patch)
2015-01-17 23:05 UTC, Hanspeter Niederstrasser
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Hanspeter Niederstrasser 2015-01-17 23:03:25 UTC
The plasma-framework plugins (calendarplugin, corebindingsplugin, plasmacomponentsplugin, plasmaextracomponentsplugin, and platformcomponentsplugin) are being built as shared libraries. They should be built as bundles (MODULE) in the CMakeLists.txt file. 

Reproducible: Always


Actual Results:  
When built as SHARED as in the current code, libplasmacomponentsplugin.dylib gets installed to $PREFIX/share/qt5/qml/org/kde/plasma/components, but is given an install_name of $PREFIX/lib/libplasmacomponentsplugin.dylib. This mismatch can cause problems. It is also given a compatibility_version of 0.0.0. Expected Results: Since the plugin is not supposed to be a linkable library, it should be built as MODULE in CMakeLists.txt. This corrects the install_name/install location mismatch. The change should not have any effect on non-OS X systems.
Comment 1 Hanspeter Niederstrasser 2015-01-17 23:05:57 UTC
Created attachment 90486 [details]
patch to build plugins as MODULE
Comment 2 Marco Martin 2015-03-12 09:33:44 UTC
can you do a review request with it?
Comment 3 Hanspeter Niederstrasser 2015-03-14 11:13:19 UTC
Trying to figure out how to use reviewboard.  Current rbtools and the instructions at https://techbase.kde.org/Development/Review_Board don't match up.
Comment 4 Nate Graham 2020-11-24 20:00:22 UTC
I tried this out and it looks like Plasma relies on the old behavior:

"file:///home/nate/kde/usr/share/plasma/shells/org.kde.plasma.desktop/contents/views/Desktop.qml" 
 "Error loading QML file.\n22: module \"org.kde.plasma.core\" plugin \"corebindingsplugin\" not found\n"
Could not set containment property on rootObject
"file:///home/nate/kde/usr/share/plasma/shells/org.kde.plasma.desktop/contents/views/Panel.qml" 
 "Error loading QML file.\n23: module \"org.kde.plasma.core\" plugin \"corebindingsplugin\" not found\n"

As a result I'm afraid we cannot change this without breaking ABI compatibility among users of the current shared library, sorry. Perhaps we can re-think this for KF6. :)