[Home]

Summary:ASTERISK-15055: [patch] Use pkg-config to find gmime libraries.
Reporter:Jeffrey C. Ollie (jcollie)Labels:
Date Opened:2009-10-29 13:42:27Date Closed:2010-11-09 14:35:07.000-0600
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Core/BuildSystem
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) 0008-change-configure.ac-to-look-for-pkg-config-gmime-2.0.patch
( 1) 20100917__issue16155.diff.txt
( 2) issue16155.patch
Description:Use pkg-config to find gmime libraries - that way the libraries can be found even if they are in non-standard locations.
Comments:By: Jared Smith (jsmith) 2010-04-20 20:50:39

I've tested this patch and it's working great for me on Fedora and CentOS systems.

By: Tilghman Lesher (tilghman) 2010-06-11 12:29:51

On Ubuntu, the two commands output differently, so I think it's mandatory that we verify that it works correctly on non-RH-derived systems (what jcollie and jsmith are using):

tilghman@gadolinium:~/Asterisk/asterisk-trunk$ gmime-config --cflags
-I/usr/include/gmime-2.0 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
tilghman@gadolinium:~/Asterisk/asterisk-trunk$ pkg-config gmime-2.0 --cflags
-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gmime-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
tilghman@gadolinium:~/Asterisk/asterisk-trunk$ gmime-config --libs
-L/usr/lib -lgmime-2.0 -lz -lnsl -lz -lnsl -Wl,--export-dynamic -pthread -lgobject-2.0 -lgmodule-2.0 -ldl -lgthread-2.0 -lrt -lglib-2.0
tilghman@gadolinium:~/Asterisk/asterisk-trunk$ pkg-config gmime-2.0 --libs
-lgmime-2.0 -lz -lnsl -lgobject-2.0 -lglib-2.0

By: Paul Belanger (pabelanger) 2010-06-11 12:43:12

Tested patch under Ubuntu 10.04, works.

By: Digium Subversion (svnbot) 2010-06-11 15:14:13

Repository: asterisk
Revision: 270042

U   trunk/configure
U   trunk/configure.ac
U   trunk/include/asterisk/autoconfig.h.in

------------------------------------------------------------------------
r270042 | pabelanger | 2010-06-11 15:14:13 -0500 (Fri, 11 Jun 2010) | 11 lines

Use pkg-config to find gmime libraries

This way the libraries can be found even if they are in
non-standard locations.

(closes issue ASTERISK-15055)
Reported by: jcollie
Patches:
     0008-change-configure.ac-to-look-for-pkg-config-gmime-2.0.patch uploaded by jcollie (license 412)
Tested by: jsmith, tilghman, pabelanger

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=270042

By: Digium Subversion (svnbot) 2010-06-12 20:53:54

Repository: asterisk
Revision: 270151

U   trunk/configure
U   trunk/configure.ac
U   trunk/include/asterisk/autoconfig.h.in

------------------------------------------------------------------------
r270151 | pabelanger | 2010-06-12 20:53:54 -0500 (Sat, 12 Jun 2010) | 3 lines

Reverting patch and reopening issue ASTERISK-15055, as patch breaks
FreeBSD / OSX builds.

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=270151

By: Paul Belanger (pabelanger) 2010-06-12 20:56:43

@jcollie: We'll need to know what platforms gmime-config does not work with. IE: FreeBSD and Mac OSX.

By: Jeffrey C. Ollie (jcollie) 2010-06-16 23:05:05

I do not have access to any platforms other than Fedora/CentOS.  I would say that if pkg-config/gmime-config doesn't work on a platform is not a bug in Asterisk, but a bug in the platform.

By: Tilghman Lesher (tilghman) 2010-06-17 00:02:27

That's fine, but we still need to be compatible with those platforms.  I think what pabelanger was really asking is where on Fedora and CentOS does gmime-config not work, where using pkg-config would be better (your patch).  We need a use case for this, since this patch broke other platforms.  We then can tailor the autoconf script to those situations and avoid breaking other platforms.

If there is no use case (that is, if both Fedora and CentOS work fine with gmime-config), then this issue will be closed with no action.

By: Jeffrey C. Ollie (jcollie) 2010-06-17 07:12:00

I just looked around on my Fedora 12, 13, and rawhide systems and there is no "gmime-config"...  So obviously trying to use "gmime-config" will fail.  Also, Fedora provides two different versions of gmime, 2.4 and 2.2.  Asterisk has not been patched to use 2.4 yet so even if there was a "gmime-config" program it's not clear that it would actually link to the correct version.

By: Tilghman Lesher (tilghman) 2010-09-17 16:46:42

I think I figured out why this was failing on OS X.  Your original patch assumed that if pkg-config was found, then GMIME was found, which is incorrect logic.  I have fixed this logic in the attached patch, for the 1.8 branch.

By: Leonardo Cardozo Vargas (lcvleo) 2010-11-08 10:04:52.000-0600

In my case, this problem persists.
Asterisk 1.8.0, CentOS 5.5 64-bit, Gmime 2.4.7.

By: Tilghman Lesher (tilghman) 2010-11-08 13:24:54.000-0600

Unsurprising, because we have NOT committed anything, due to the lack of testing feedback.  Please TEST the provided patch and provide feedback.  That is the ONLY way that this is likely to ever be fixed.

By: Digium Subversion (svnbot) 2010-11-09 14:27:25.000-0600

Repository: asterisk
Revision: 294429

U   branches/1.6.2/configure
U   branches/1.6.2/configure.ac

------------------------------------------------------------------------
r294429 | tilghman | 2010-11-09 14:27:24 -0600 (Tue, 09 Nov 2010) | 8 lines

Detect GMime properly on systems where gmime flags and libs are configured with pkg-config.

(closes issue ASTERISK-15055)
Reported by: jcollie
Patches:
      20100917__issue16155.diff.txt uploaded by tilghman (license 14)
Tested by: tilghman

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=294429

By: Digium Subversion (svnbot) 2010-11-09 14:33:06.000-0600

Repository: asterisk
Revision: 294430

_U  branches/1.8/
U   branches/1.8/configure
U   branches/1.8/configure.ac
U   branches/1.8/include/asterisk/autoconfig.h.in

------------------------------------------------------------------------
r294430 | tilghman | 2010-11-09 14:33:06 -0600 (Tue, 09 Nov 2010) | 15 lines

Merged revisions 294429 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
 r294429 | tilghman | 2010-11-09 14:27:23 -0600 (Tue, 09 Nov 2010) | 8 lines
 
 Detect GMime properly on systems where gmime flags and libs are configured with pkg-config.
 
 (closes issue ASTERISK-15055)
  Reported by: jcollie
  Patches:
        20100917__issue16155.diff.txt uploaded by tilghman (license 14)
  Tested by: tilghman
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=294430

By: Digium Subversion (svnbot) 2010-11-09 14:35:06.000-0600

Repository: asterisk
Revision: 294431

_U  trunk/
U   trunk/configure
U   trunk/configure.ac
U   trunk/include/asterisk/autoconfig.h.in

------------------------------------------------------------------------
r294431 | tilghman | 2010-11-09 14:35:06 -0600 (Tue, 09 Nov 2010) | 22 lines

Merged revisions 294430 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
 r294430 | tilghman | 2010-11-09 14:33:05 -0600 (Tue, 09 Nov 2010) | 15 lines
 
 Merged revisions 294429 via svnmerge from
 https://origsvn.digium.com/svn/asterisk/branches/1.6.2
 
 ........
   r294429 | tilghman | 2010-11-09 14:27:23 -0600 (Tue, 09 Nov 2010) | 8 lines
   
   Detect GMime properly on systems where gmime flags and libs are configured with pkg-config.
   
   (closes issue ASTERISK-15055)
    Reported by: jcollie
    Patches:
          20100917__issue16155.diff.txt uploaded by tilghman (license 14)
    Tested by: tilghman
 ........
................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=294431