aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Barker <paul@paulbarker.me.uk>2013-05-07 10:05:22 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-09 08:44:30 +0100
commit61a7329a5c1f0b84f447256134f5a77917f07f38 (patch)
tree41b6008c43f15bc7e25c92c6d327c2dc418d0326
parent8ec07ae2ebfd97aa1413a3c3be0dc612eee7e929 (diff)
downloadopenembedded-core-contrib-61a7329a5c1f0b84f447256134f5a77917f07f38.tar.gz
qt4: remove trailing slash from prefix
The trailing slashs on "Prefix=${prefix}/" and "-prefix ${prefix}/" are passed through to the generated pkgconfig files and may be joined to paths like "/include" yielding a final path with a double forward-slash (eg. "/usr//include"). This may end up in the debugging symbols in other applications or libraries which depend on qt4 which in turn causes the debugedit program to fail with the message "canonicalization unexpectedly shrank by one character" when it tries to replace the double forward-slash with a single forward-slash. Thus the function split_and_strip_files fails and ultimately do_package fails. As this slash is removed from the prefix it is added into the regular expression used to fix up pkgconfig files later in the recipe. This error was seen in vlc in meta-openembedded and should be solved by this change in openembedded-core. Signed-off-by: Paul Barker <paul@paulbarker.me.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-qt/qt4/qt4.inc6
1 files changed, 3 insertions, 3 deletions
diff --git a/meta/recipes-qt/qt4/qt4.inc b/meta/recipes-qt/qt4/qt4.inc
index 37fc1dd7d5..84c0ae9dab 100644
--- a/meta/recipes-qt/qt4/qt4.inc
+++ b/meta/recipes-qt/qt4/qt4.inc
@@ -213,7 +213,7 @@ do_configure() {
cp -f ${WORKDIR}/linux.conf mkspecs/common/
echo "[Paths]" > $QT_CONF_PATH
- echo "Prefix=${prefix}/" >> $QT_CONF_PATH
+ echo "Prefix=${prefix}" >> $QT_CONF_PATH
echo "Documentation=${docdir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
echo "Headers=${includedir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
echo "Libraries=${libdir}" >> $QT_CONF_PATH
@@ -229,7 +229,7 @@ do_configure() {
${EXTRA_QMAKE_MUNGE}|| true
echo yes | QT_LICENSE_FILE="${QT_LICENSE_FILE}" ./configure -v \
- -prefix ${prefix}/ \
+ -prefix ${prefix} \
-bindir ${bindir} \
-libdir ${libdir} \
-datadir ${datadir}/${QT_DIR_NAME} \
@@ -358,7 +358,7 @@ do_install() {
# QT abuses $includedir to point to its headers, which breaks pkgconfig sysroot, so manually fix it up here:
for pc in ${D}${libdir}/pkgconfig/*.pc ; do
- sed -i -e "s:prefix}include/${QT_DIR_NAME}/$(basename $pc .pc):prefix}/include:" \
+ sed -i -e "s:prefix}/include/${QT_DIR_NAME}/$(basename $pc .pc):prefix}/include:" \
-e 's:IP{:I${:g' $pc
done