classes/qmake_base: update .pro hack
authorJonathan Liu <net147@gmail.com>
Fri, 7 Jun 2013 05:15:37 +0000 (15:15 +1000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 11 Jun 2013 14:38:03 +0000 (15:38 +0100)
This adds support for lconvert and xmlpatterns tools and tweaks the
sed expressions to handle more complex assignments in .pro files like:
LRELEASE = $$targetPath($$[QT_INSTALL_BINS]/lrelease)

(From OE-Core rev: 542fefa61f0ac1dcdacac2630fd44950ac11cdd9)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/qmake_base.bbclass

index 52e7fb0..79040cd 100644 (file)
@@ -94,9 +94,20 @@ qmake_base_do_configure() {
        fi
 
        # Hack .pro files to use OE utilities
+       LCONVERT_NAME=$(basename ${OE_QMAKE_LCONVERT})
+       LRELEASE_NAME=$(basename ${OE_QMAKE_LRELEASE})
+       LUPDATE_NAME=$(basename ${OE_QMAKE_LUPDATE})
+       XMLPATTERNS_NAME=$(basename ${OE_QMAKE_XMLPATTERNS})
        find -name '*.pro' \
-            -exec sed -i -e 's,=\s*.*/lrelease,= ${OE_QMAKE_LRELEASE},g' \
-                         -e 's,=\s*.*/lupdate,= ${OE_QMAKE_LUPDATE},g' '{}' ';'
+            -exec sed -i -e "s|\(=\s*.*\)/$LCONVERT_NAME|\1/lconvert|g" \
+                         -e "s|\(=\s*.*\)/$LRELEASE_NAME|\1/lrelease|g" \
+                         -e "s|\(=\s*.*\)/$LUPDATE_NAME|\1/lupdate|g" \
+                         -e "s|\(=\s*.*\)/$XMLPATTERNS_NAME|\1/xmlpatterns|g" \
+                         -e "s|\(=\s*.*\)/lconvert|\1/$LCONVERT_NAME|g" \
+                         -e "s|\(=\s*.*\)/lrelease|\1/$LRELEASE_NAME|g" \
+                         -e "s|\(=\s*.*\)/lupdate|\1/$LUPDATE_NAME|g" \
+                         -e "s|\(=\s*.*\)/xmlpatterns|\1/$XMLPATTERNS_NAME|g" \
+                         '{}' ';'
 
 #bbnote "Calling '${OE_QMAKE_QMAKE} -makefile -spec ${QMAKESPEC} -o Makefile $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST'"
        unset QMAKESPEC || true