summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@windriver.com>2012-06-11 18:19:00 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-12 10:10:36 (GMT)
commitd7b7f134929dbd79bcd6eff2a3dd2e65d2e88204 (patch)
treeedda6428847baf5049e8811cdb4f069d826a4ee5
parent9786663f9ce531f1f9f32deeef0276bda5604e1c (diff)
downloadpoky-d7b7f134929dbd79bcd6eff2a3dd2e65d2e88204.tar.gz
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>
-rw-r--r--meta/recipes-devtools/rpm/rpm/rpm-pkgconfigdeps.patch34
-rw-r--r--meta/recipes-devtools/rpm/rpm_5.4.9.bb3
2 files changed, 36 insertions, 1 deletions
diff --git a/meta/recipes-devtools/rpm/rpm/rpm-pkgconfigdeps.patch b/meta/recipes-devtools/rpm/rpm/rpm-pkgconfigdeps.patch
new file mode 100644
index 0000000..4aba400
--- /dev/null
+++ b/meta/recipes-devtools/rpm/rpm/rpm-pkgconfigdeps.patch
@@ -0,0 +1,34 @@
1pkgconfigdeps.sh: Change to restricting pkgconfig to the local directory
2
3Using PKG_CONFIG_PATH will allow pkg-config to fall back to the system paths,
4we don't want this as it may lead to inaccurate results in some corner cases.
5
6PKG_CONFIG_LIBDIR will ensure pkg-config stays within the install directory.
7
8Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
9
10diff -ur rpm-5.4.9.orig/scripts/pkgconfigdeps.sh rpm-5.4.9/scripts/pkgconfigdeps.sh
11--- rpm-5.4.9.orig/scripts/pkgconfigdeps.sh 2009-02-13 08:13:37.000000000 -0600
12+++ rpm-5.4.9/scripts/pkgconfigdeps.sh 2012-06-07 17:35:42.730003847 -0500
13@@ -18,8 +18,8 @@
14 *.pc)
15 # Query the dependencies of the package.
16 DIR=`dirname ${filename}`
17- PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
18- export PKG_CONFIG_PATH
19+ PKG_CONFIG_LIBDIR="$DIR:$DIR/../../share/pkgconfig"
20+ export PKG_CONFIG_LIBDIR
21 $pkgconfig --print-provides "$filename" 2> /dev/null | while read n r v ; do
22 [ -n "$n" ] || continue
23 # We have a dependency. Make a note that we need the pkgconfig
24@@ -42,8 +42,8 @@
25 [ -n "$oneshot" ] && echo "$oneshot"; oneshot=""
26 # Query the dependencies of the package.
27 DIR=`dirname ${filename}`
28- PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
29- export PKG_CONFIG_PATH
30+ PKG_CONFIG_LIBDIR="$DIR:$DIR/../../share/pkgconfig"
31+ export PKG_CONFIG_LIBDIR
32 $pkgconfig --print-requires "$filename" 2> /dev/null | while read n r v ; do
33 [ -n "$n" ] || continue
34 if [ -n "$r" ] && [ -n "$v" ]; then
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.9.bb b/meta/recipes-devtools/rpm/rpm_5.4.9.bb
index a38a684..51cf93b 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.9.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.9.bb
@@ -43,7 +43,7 @@ LICENSE = "LGPLv2.1"
43LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1" 43LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
44 44
45DEPENDS = "libpcre attr acl popt ossp-uuid file" 45DEPENDS = "libpcre attr acl popt ossp-uuid file"
46PR = "r42" 46PR = "r43"
47 47
48# rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed 48# rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed
49# in order to extract the distribution SRPM into a format we can extract... 49# 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
71 file://rpm-lua.patch \ 71 file://rpm-lua.patch \
72 file://rpm-ossp-uuid.patch \ 72 file://rpm-ossp-uuid.patch \
73 file://rpm-packageorigin.patch \ 73 file://rpm-packageorigin.patch \
74 file://rpm-pkgconfigdeps.patch \
74 " 75 "
75 76
76SRC_URI[md5sum] = "60d56ace884340c1b3fcac6a1d58e768" 77SRC_URI[md5sum] = "60d56ace884340c1b3fcac6a1d58e768"