rpm: Ensure pkgconfig deps don't stray from the package being built

Force pkg-config to only look in the install directory, and not be
able to fall back to system pkg-config directories for resolution.

(From OE-Core rev: 7afcfeb1db00c800485b2f3a89dad1ed84083979)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mark Hatle
2012-06-11 13:19:00 -05:00
committed by Richard Purdie
parent 9786663f9c
commit d7b7f13492
2 changed files with 36 additions and 1 deletions

View File

@@ -0,0 +1,34 @@
pkgconfigdeps.sh: Change to restricting pkgconfig to the local directory
Using PKG_CONFIG_PATH will allow pkg-config to fall back to the system paths,
we don't want this as it may lead to inaccurate results in some corner cases.
PKG_CONFIG_LIBDIR will ensure pkg-config stays within the install directory.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
diff -ur rpm-5.4.9.orig/scripts/pkgconfigdeps.sh rpm-5.4.9/scripts/pkgconfigdeps.sh
--- rpm-5.4.9.orig/scripts/pkgconfigdeps.sh 2009-02-13 08:13:37.000000000 -0600
+++ rpm-5.4.9/scripts/pkgconfigdeps.sh 2012-06-07 17:35:42.730003847 -0500
@@ -18,8 +18,8 @@
*.pc)
# Query the dependencies of the package.
DIR=`dirname ${filename}`
- PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
- export PKG_CONFIG_PATH
+ PKG_CONFIG_LIBDIR="$DIR:$DIR/../../share/pkgconfig"
+ export PKG_CONFIG_LIBDIR
$pkgconfig --print-provides "$filename" 2> /dev/null | while read n r v ; do
[ -n "$n" ] || continue
# We have a dependency. Make a note that we need the pkgconfig
@@ -42,8 +42,8 @@
[ -n "$oneshot" ] && echo "$oneshot"; oneshot=""
# Query the dependencies of the package.
DIR=`dirname ${filename}`
- PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
- export PKG_CONFIG_PATH
+ PKG_CONFIG_LIBDIR="$DIR:$DIR/../../share/pkgconfig"
+ export PKG_CONFIG_LIBDIR
$pkgconfig --print-requires "$filename" 2> /dev/null | while read n r v ; do
[ -n "$n" ] || continue
if [ -n "$r" ] && [ -n "$v" ]; then

View File

@@ -43,7 +43,7 @@ LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
DEPENDS = "libpcre attr acl popt ossp-uuid file"
PR = "r42"
PR = "r43"
# rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed
# in order to extract the distribution SRPM into a format we can extract...
@@ -71,6 +71,7 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.9-0.20120508.src.rpm;ex
file://rpm-lua.patch \
file://rpm-ossp-uuid.patch \
file://rpm-packageorigin.patch \
file://rpm-pkgconfigdeps.patch \
"
SRC_URI[md5sum] = "60d56ace884340c1b3fcac6a1d58e768"