aboutsummaryrefslogtreecommitdiffstats
path: root/classes/qmake5_base.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'classes/qmake5_base.bbclass')
-rw-r--r--classes/qmake5_base.bbclass19
1 files changed, 14 insertions, 5 deletions
diff --git a/classes/qmake5_base.bbclass b/classes/qmake5_base.bbclass
index 48da05e8..20ff33d4 100644
--- a/classes/qmake5_base.bbclass
+++ b/classes/qmake5_base.bbclass
@@ -240,9 +240,18 @@ qmake5_base_do_install() {
qmake5_base_fix_install ${STAGING_DIR_HOST}
qmake5_base_fix_install ${STAGING_DIR_NATIVE}
- if ls ${D}${libdir}/pkgconfig/*.pc >/dev/null 2>/dev/null; then
- sed -i ${D}${libdir}/pkgconfig/*.pc \
- -e "s@-L${STAGING_LIBDIR}@-L\${libdir}@g" \
- -e "s@${STAGING_DIR_TARGET}@@g"
- fi
+ # Replace host paths with qmake built-in properties
+ find ${D} \( -name *.pri -or -name *.prl \) -exec \
+ sed -i -e 's|${STAGING_DIR_NATIVE}|$$[QT_HOST_PREFIX/get]|g' \
+ -e 's|${STAGING_DIR_HOST}|$$[QT_SYSROOT]|g' {} \;
+
+ # Replace host paths with pkg-config built-in variable
+ find ${D} -name *.pc -exec \
+ sed -i -e 's|prefix=${STAGING_DIR_HOST}|prefix=|g' \
+ -e 's|${STAGING_DIR_HOST}|${pc_sysrootdir}|g' {} \;
+
+ # Replace resolved lib path with the lib name
+ find ${D} -name *.cmake -exec \
+ sed -i -e 's@/[^;]*/lib\([^;]*\)\.\(so\|a\)@\1@g' {} \;
+
}