[oe-commits] Paul Barker : qt4: remove trailing slash from prefix
git at git.openembedded.org
git at git.openembedded.org
Mon Jun 10 15:39:21 UTC 2013
Module: openembedded-core.git
Branch: dylan
Commit: fd4abad4f440bb7fe43779ec7601576bd937b59b
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=fd4abad4f440bb7fe43779ec7601576bd937b59b
Author: Paul Barker <paul at paulbarker.me.uk>
Date: Tue May 7 10:05:22 2013 +0100
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.
(From OE-Core master rev: 61a7329a5c1f0b84f447256134f5a77917f07f38)
Signed-off-by: Paul Barker <paul at paulbarker.me.uk>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/recipes-qt/qt4/qt4.inc | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/meta/recipes-qt/qt4/qt4.inc b/meta/recipes-qt/qt4/qt4.inc
index 35e3003..da73ad1 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
More information about the Openembedded-commits
mailing list