Subject: bug#10626: closed (Re: Should configure fail if pkg-config fails?)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 07 Apr 2012 20:49:02 +0000

Your bug report

#10626: Should configure fail if pkg-config fails?

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
10626: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10626
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: Should configure fail if pkg-config fails?
From: Paul Eggert <[email-masked]>
To: Jordi Gutiérrez Hermoso <[email-masked]>
Cc: [email-masked]
Date: Sat, 07 Apr 2012 13:48:24 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

On 03/21/2012 12:54 PM, Jordi Gutiérrez Hermoso wrote:
> I trust your good judgement, so I say you just push this.

Thanks, I waited until the trunk was open for small
non-regression fixes like this, and just now pushed
it as bzr 107794 in the trunk.  I'm marking the bug as done.

http://bzr.savannah.gnu.org/lh/emacs/trunk/revision/107794

Subject: Re: Should configure fail if pkg-config fails?
From: Paul Eggert <[email-masked]>
To: Jordi Gutiérrez Hermoso <[email-masked]>
Cc: [email-masked]
Date: Sat, 28 Jan 2012 01:07:50 -0800
List-Id: <debbugs-submit.debbugs.gnu.org>

On 01/24/2012 06:15 PM, Jordi Gutiérrez Hermoso wrote:
> it shouldn't assume that GTK+ is working correctly if
> pkg-config returns nonzero exit status.

True enough.  Here's a proposed patch, which I'd like to
install into the trunk.  I'm CC'ing this to bug-gnu-emacs
instead of to emacs-devel, so that it has a proper bug number.

=== modified file 'ChangeLog'
--- ChangeLog	2012-01-19 07:21:25 +0000
+++ ChangeLog	2012-01-28 09:04:13 +0000
@@ -1,3 +1,11 @@
+2012-01-28  Paul Eggert  <[email-masked]>
+
+	Check pkg-config exit status when configuring.
+	* configure.in (PKG_CHECK_MODULES): Do not assume that pkg-config
+	works; check its exit status.  Problem reported by Jordi Gutiérrez
+	Hermoso in
+	<http://lists.gnu.org/archive/html/emacs-devel/2012-01/msg00787.html>.
+
 2012-01-16  Juanma Barranquero  <[email-masked]>
 
 	* .bzrignore: Ignore etc/__pycache__.

=== modified file 'configure.in'
--- configure.in	2012-01-19 07:21:25 +0000
+++ configure.in	2012-01-28 09:04:13 +0000
@@ -1124,17 +1124,14 @@
      if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
         AC_MSG_CHECKING(for $2)
 
-        if $PKG_CONFIG --exists "$2" 2>&AS_MESSAGE_LOG_FD; then
-            AC_MSG_RESULT(yes)
+        if $PKG_CONFIG --exists "$2" 2>&AS_MESSAGE_LOG_FD &&
+	   $1_CFLAGS=`$PKG_CONFIG --cflags "$2" 2>&AS_MESSAGE_LOG_FD` &&
+	   $1_LIBS=`$PKG_CONFIG --libs "$2" 2>&AS_MESSAGE_LOG_FD`; then
+
+	    $1_CFLAGS=`AS_ECHO(["$$1_CFLAGS"]) | sed -e 's,///*,/,g'`
+	    $1_LIBS=`AS_ECHO(["$$1_LIBS"]) | sed -e 's,///*,/,g'`
+            AC_MSG_RESULT([yes CFLAGS='$$1_CFLAGS' LIBS='$$1_LIBS'])
             succeeded=yes
-
-            AC_MSG_CHECKING($1_CFLAGS)
-            $1_CFLAGS=`$PKG_CONFIG --cflags "$2"|sed -e 's,///*,/,g'`
-            AC_MSG_RESULT($$1_CFLAGS)
-
-            AC_MSG_CHECKING($1_LIBS)
-            $1_LIBS=`$PKG_CONFIG --libs "$2"|sed -e 's,///*,/,g'`
-            AC_MSG_RESULT($$1_LIBS)
         else
             AC_MSG_RESULT(no)
             $1_CFLAGS=""