conflicting pkg-config detection and initialization
Closed, ResolvedPublic

Description

pkg-config detection is done manually for gtk but for qt and ncurses it uses the
pkg.m4 macros, this create conflict between the two methods (empty vs no value
for example).

Attach a patch:

  1. add pkg-config initialization to make the pkg.m4 macros happy.
  2. remove the manual pkg-config detection.
  3. detect existence by output of pkg.m4 method.
alonbl set External Link to https://bugs.gentoo.org/show_bug.cgi?id=554686.Jul 18 2015, 10:22 AM
alonbl added projects: pinentry, Bug Report, Gentoo.
alonbl set Version to 0.9.5.

0002-build-use-pkg.m4-for-pkg-config-usage.patch - on top

remove the manual pkg-config usage, as build already use pkg.m4 macros there is
no reason to use manual pkg-config

0003-build-sync-qt4-pkg-config-behavior-with-other-pkg-co.patch - on top

optional

sync qt4 pkg-config behaviour

werner assigned this task to neal.Jul 21 2015, 3:12 PM
werner added a subscriber: neal.
werner claimed this task.Aug 24 2015, 4:38 PM
werner added a subscriber: werner.
werner removed a subscriber: alonbl.

Someone please check whether this is still the case and come up with a fix?

werner added subscribers: gnupg-hackers, alonbl.
alonbl added a comment.Feb 3 2017, 1:50 PM

Hi,

I can still see that qt[1] is using the simplified pkg macros[2], while the
configure.ac is using proprietary method[3].

We are still missing PKG_PROG_PKG_CONFIG macro in configure.ac to make pkg
macros happy, this can remove all AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
executions, see pinentry-0.9.5-build.patch, as you have PKG_CONFIG set.

The other changes to use PKG_CHECK_MODULES are optional but is there any reason
why not to use this macro instead of executing the pkg-config manually? This
macro has the advantage of allowing override via environment, and append proper
help.

If you like I can rebase this old patch set.

[1] http://git.gnupg.org/cgi-bin/gitweb.cgi?p=pinentry.git;a=blob;f=m4/qt.m4;hb=HEAD
[2]
http://git.gnupg.org/cgi-bin/gitweb.cgi?p=pinentry.git;a=blob;f=m4/pkg.m4;hb=HEAD
[3]
http:
//git.gnupg.org/cgi-bin/gitweb.cgi?p=pinentry.git;a=blob;f=configure.ac;hb=HEAD#l431

links removed as I got "Edit Error: not allowed (too many links).

marcus closed this task as Resolved.Jul 11 2017, 9:04 PM
marcus added a subscriber: marcus.

Fixed in 6053cb4f. The third patch was obsolete due to use of FIND_QT macro.