Opened 8 years ago
Last modified 8 years ago
#52481 closed defect
KDEPIM4 and gpgme: header conflict — at Initial Version
Reported by: | RJVB (René Bertin) | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.4 |
Keywords: | Cc: | nicos@…, mk@…, devans@… | |
Port: | kdepimlibs4 |
Description
So, the sequel to https://trac.macports.org/ticket/52342...
Half a night and day of rebuilding later, I am now convinced that the most reasonable and efficient way forward is to patch port:gpgme and port:kdelibs4 such that the 2 incompatible gpgme++ versions have their own include directories from which the compiler shouldn't normally read headers by accident. IOW, -I${prefix}/include/KDE
or -I${prefix}/include/gpgme
is required to select the appropriate header source directory.
KDE clearly intend to maintain their own gpgme++ wrappers for the time being, which means they must have a reason that we should consider as certainly good enough for us (= not to try and patch KDE code).
The companion ticket that proposes the required patch to port:gpgme : https://trac.macports.org/attachment/ticket/52479
@Nicos: let me repeat that moving the KDE4 headers to ${prefix}/include/KDE4 is both simple and required for compatibility with my upcoming KF5 ports. Almost all that is required is rebuilding port:kdelibs4 with -DINCLUDE_INSTALL_DIR=${kde4.include_dirs}
in configure.args . No dependents need to be rev-bumped, all dependents will find the moved kdelibs4 headers, and all but a select few will install their own headers there too (= the -DINCLUDE_INSTALL_DIR=${kde4.include_dirs}
configure arg. doesn't have to be repeated for all dependents). If you want to test this more fully it should be possible to add that configure arg. to the KDEPIM4 ports only, for now. I haven't tested this.
PS: I also have kdepim*-devel ports in my MacStrop repo that update KDEPIM4 to the very latest version.