Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1134454

Summary: pkg-config --libs contains cflags
Product: Red Hat Enterprise Linux 7 Reporter: Richard W.M. Jones <rjones>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.0CC: agedosier, berrange, clalancette, dyuan, extras-qa, itamar, jdenemar, jforbes, laine, libvirt-maint, rbalakri, veillard, virt-maint
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libvirt-1.2.7-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1134453 Environment:
Last Closed: 2015-03-05 07:43:14 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1134453, 1134455    
Bug Blocks: 910269    

Description Richard W.M. Jones 2014-08-27 14:21:10 UTC
+++ This bug was initially created as a clone of Bug #1134453 +++

Description of problem:

$ pkg-config --libs libvirt
-lvirt -ldl -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic 

obviously only -lvirt and possibly -ldl should be there.

Version-Release number of selected component (if applicable):

On RHEL 7: libvirt-1.1.1-29.el7.x86_64

Additional info:

Upstream fix is

commit 1167751fcb949b44eddf3d0bfed5473e13c7e94a
Author: Daniel P. Berrange <berrange>
Date:   Fri Jun 20 17:45:05 2014 +0100

    Don't include @LIBS@ in libvirt.pc.in file
    
    The libvirt.pc file we install is ending up polluted with a
    load of compiler flags that should be private to the libvirt
    build. eg
    
    Libs: -L${libdir} -lvirt -ldl -O2 -g -pipe -Wall \
          -Wp,-D_FORTIFY_SOURCE=2 -fexceptions \
          -fstack-protector-strong --param=ssp-buffer-size=4 \
          -grecord-gcc-switches  -m64 -mtune=generic
    
    this is caused by including @LIBS@ in the Libs: line of the
    pkgconfig.pc.in file.

Comment 3 dyuan 2015-01-19 10:09:59 UTC
Install libvirt-1.2.8-13.el7.src.rpm.

# grep lvirt /root/rpmbuild/BUILD/libvirt-1.2.8/build/libvirt.pc
Libs: -L${libdir} -lvirt

# pkg-config --libs libvirt
-L/root/builder/lib -lvirt

Removed the @LIBS@ in the Libs and only -lvirt is here, move the bug to VERIFIED.

Comment 4 Richard W.M. Jones 2015-01-19 14:27:36 UTC
(In reply to dyuan from comment #3)
> # pkg-config --libs libvirt
> -L/root/builder/lib -lvirt

That's not good!

The output should be:

$ pkg-config --libs libvirt
-lvirt  

Having said that, I am unable to reproduce the output
you have given above.  For me, the output is correct
with the 1.2.8-13.el7 package.

Comment 5 dyuan 2015-01-20 03:02:32 UTC
Yes, you're right. Thanks for your comment.
I think there should be copy/paste error in comment3.
Re-check again and got the same output as yours.

# pkg-config --libs libvirt
-lvirt

Comment 7 errata-xmlrpc 2015-03-05 07:43:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2015-0323.html