[OE-core] gpgme-config

Paul Barker paul at paulbarker.me.uk
Fri Aug 8 11:26:53 UTC 2014


On Wed, Jul 23, 2014 at 04:49:52PM +0200, Martin Jansa wrote:
> On Wed, Jul 23, 2014 at 01:51:23PM +0000, Paul Barker wrote:
> > Hi all,
> > 
> > I'm trying to build opkg with 'gpg' added to PACKAGECONFIG on the master branch
> > of OE. The gpg support for opkg is provided by gpgme, which uses 'gpgme-config'
> > to determine CFLAGS and LIBS when building. After recent changes, the
> > gpgme-config script is now just a dummy and doesn't do anything.
> > 
> > Upstream gpgme do not provide a pkg-config file and an upstream issue about this
> > raised in 2012 was resolved WONTFIX (https://bugs.g10code.com/gnupg/issue1414).
> > 
> > Our options are:
> > 
> > 1) Add a .pc file to gpgme and maintain it within OE as it is very unlikely to
> >    be accepted upstream. Then I need to modify configure.ac in opkg to support
> >    both this pkg-config file (for OE) and the gpgme-config utility (for all
> >    other users of opkg).
> 
> This comment in original issue:
> The gpgme-config scripts goes along with the gpgme.m4 code.  A .pc file
> won't be able to do what we can do with this combination.
> 
> Makes me think that if we implement .pc.in which generates correct .pc
> from gpgme.m4 he won't be against accepting such patch upstream.
> 
> I think that biggest reason against -config scripts was that they aren't
> cross-compile friendly (not sysroot-aware) so you either have whole path
> to sysroot hardcoded in -config file and then have to mangle it for
> target -dev package or vice versa and you need to prefix returned values
> (like -I -L flags with sysroot).
>  
> > 2) Make an exception to the policy on -config scripts for gpgme.
> > 
> > I haven't really followed the discussion on why -config scripts needed to be
> > removed so I'll put this question to other OE developers. Would option (2) cause
> > more problems in the long run? If so, is it worth the extra effort to follow
> > option (1)?
> > 
> > I'll probably need someone to bounce a few autoconf and pkg-config questions off
> > if I implement option (1) as I'm not very familiar with either system.
> 
> I'm no expert in this as well, but there are some examples we can copy.
> 

I think I've got this now. I've created a 'gpgme.pc' file by adapting 'lua.pc'
from meta-openembedded. The Libs and Cflags were found by running 'gpgme-config'
on my development machine and they seem fairly sensible. I've then used
PKG_CHECK_MODULES() in 'configure.ac' within opkg to find gpgme using that
pkg-config file.

I'll send in a couple of patches but I'll delay the changes to 'configure.ac' in
opkg. I should be releasing opkg-0.2.3 in the next few weeks and that will
include the necessary changes.

Thanks,

-- 
Paul Barker

Email: paul at paulbarker.me.uk
http://www.paulbarker.me.uk
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 473 bytes
Desc: not available
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20140808/7cc1240a/attachment-0002.sig>


More information about the Openembedded-core mailing list