From 6f0dd9f7cb4166f22b78c0813819c636f6382e4f Mon Sep 17 00:00:00 2001 From: Adam YH Lee Date: Fri, 4 Sep 2015 17:28:30 -0700 Subject: Remove double slash when QT_DIR_NAME is empty When `QT_DIR_NAME` is defined as an empty string (default is "qt5"), package.bbclass will throw lots of QA warnings because now the paths contain double slashes ("//"). We can address these warnings by explicitly defining a slash in the variable itself. Signed-off-by: Adam YH Lee Signed-off-by: Martin Jansa --- classes/qmake5_base.bbclass | 2 +- classes/qmake5_paths.bbclass | 38 +++++++++++++-------------- recipes-qt/maliit/maliit-framework-qt5_git.bb | 4 +-- recipes-qt/qt5/nativesdk-qtbase_git.bb | 8 +++--- recipes-qt/qt5/qt5-creator_3.3.1.bb | 20 +++++++------- recipes-qt/qt5/qtbase_git.bb | 4 +-- recipes-qt/qt5/qtdeclarative_git.bb | 4 +-- recipes-qt/qt5/qttools_git.bb | 4 +-- 8 files changed, 42 insertions(+), 42 deletions(-) diff --git a/classes/qmake5_base.bbclass b/classes/qmake5_base.bbclass index d371ff38..9ebfa08e 100644 --- a/classes/qmake5_base.bbclass +++ b/classes/qmake5_base.bbclass @@ -32,7 +32,7 @@ EXTRA_OEMAKE = " \ OE_QMAKESPEC = "${QMAKE_MKSPEC_PATH_NATIVE}/mkspecs/${OE_QMAKE_PLATFORM_NATIVE}" OE_XQMAKESPEC = "${QMAKE_MKSPEC_PATH}/mkspecs/${OE_QMAKE_PLATFORM}" -OE_QMAKE_QMAKE = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" +OE_QMAKE_QMAKE = "${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qmake" OE_QMAKE_COMPILER = "${CC}" OE_QMAKE_CC = "${CC}" OE_QMAKE_CFLAGS = "${CFLAGS}" diff --git a/classes/qmake5_paths.bbclass b/classes/qmake5_paths.bbclass index c0310776..90e1789b 100644 --- a/classes/qmake5_paths.bbclass +++ b/classes/qmake5_paths.bbclass @@ -2,48 +2,48 @@ # about conflicts with qt4, then you can add qmake5_paths.bbclass # to your distro layer and flatten all QT_DIR_NAME directories -QT_DIR_NAME ?= "qt5" +QT_DIR_NAME ?= "/qt5" # This is useful for target recipes to reference native mkspecs -QMAKE_MKSPEC_PATH_NATIVE = "${STAGING_LIBDIR_NATIVE}/${QT_DIR_NAME}" -QMAKE_MKSPEC_PATH_TARGET = "${STAGING_LIBDIR}/${QT_DIR_NAME}" +QMAKE_MKSPEC_PATH_NATIVE = "${STAGING_LIBDIR_NATIVE}${QT_DIR_NAME}" +QMAKE_MKSPEC_PATH_TARGET = "${STAGING_LIBDIR}${QT_DIR_NAME}" QMAKE_MKSPEC_PATH = "${QMAKE_MKSPEC_PATH_TARGET}" QMAKE_MKSPEC_PATH_class-native = "${QMAKE_MKSPEC_PATH_NATIVE}" QMAKE_MKSPEC_PATH_class-nativesdk = "${QMAKE_MKSPEC_PATH_NATIVE}" OE_QMAKE_PATH_PREFIX = "${prefix}" -OE_QMAKE_PATH_HEADERS = "${includedir}/${QT_DIR_NAME}" +OE_QMAKE_PATH_HEADERS = "${includedir}${QT_DIR_NAME}" OE_QMAKE_PATH_LIBS = "${libdir}" OE_QMAKE_PATH_ARCHDATA = "${libdir}" OE_QMAKE_PATH_DATA = "${datadir}" OE_QMAKE_PATH_BINS = "${bindir}" -OE_QMAKE_PATH_LIBEXECS = "${libdir}/${QT_DIR_NAME}/libexec" -OE_QMAKE_PATH_PLUGINS = "${libdir}/${QT_DIR_NAME}/plugins" -OE_QMAKE_PATH_IMPORTS = "${libdir}/${QT_DIR_NAME}/imports" -OE_QMAKE_PATH_QML = "${libdir}/${QT_DIR_NAME}/qml" +OE_QMAKE_PATH_LIBEXECS = "${libdir}${QT_DIR_NAME}/libexec" +OE_QMAKE_PATH_PLUGINS = "${libdir}${QT_DIR_NAME}/plugins" +OE_QMAKE_PATH_IMPORTS = "${libdir}${QT_DIR_NAME}/imports" +OE_QMAKE_PATH_QML = "${libdir}${QT_DIR_NAME}/qml" OE_QMAKE_PATH_TRANSLATIONS = "${datadir}/translations" OE_QMAKE_PATH_DOCS = "${docdir}" OE_QMAKE_PATH_SETTINGS = "${sysconfdir}" OE_QMAKE_PATH_EXAMPLES = "${datadir}/examples" OE_QMAKE_PATH_TESTS = "${datadir}/tests" OE_QMAKE_PATH_HOST_PREFIX = "" -OE_QMAKE_PATH_HOST_BINS = "${bindir}/${QT_DIR_NAME}" +OE_QMAKE_PATH_HOST_BINS = "${bindir}${QT_DIR_NAME}" OE_QMAKE_PATH_HOST_DATA = "${QMAKE_MKSPEC_PATH_TARGET}" OE_QMAKE_PATH_HOST_LIBS = "${STAGING_LIBDIR}" -OE_QMAKE_PATH_EXTERNAL_HOST_BINS = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}" +OE_QMAKE_PATH_EXTERNAL_HOST_BINS = "${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}" # for qt5 components we're using QT_DIR_NAME subdirectory in more # variables, because we don't want conflicts with qt4 # This block is usefull for components which install their # own files without QT_DIR_NAME but need to reference paths e.g. # with QT headers -OE_QMAKE_PATH_QT_HEADERS = "${includedir}/${QT_DIR_NAME}" -OE_QMAKE_PATH_QT_ARCHDATA = "${libdir}/${QT_DIR_NAME}" -OE_QMAKE_PATH_QT_DATA = "${datadir}/${QT_DIR_NAME}" -OE_QMAKE_PATH_QT_BINS = "${bindir}/${QT_DIR_NAME}" -OE_QMAKE_PATH_QT_TRANSLATIONS = "${datadir}/${QT_DIR_NAME}/translations" -OE_QMAKE_PATH_QT_DOCS = "${docdir}/${QT_DIR_NAME}" -OE_QMAKE_PATH_QT_SETTINGS = "${sysconfdir}/${QT_DIR_NAME}" -OE_QMAKE_PATH_QT_EXAMPLES = "${datadir}/${QT_DIR_NAME}/examples" -OE_QMAKE_PATH_QT_TESTS = "${datadir}/${QT_DIR_NAME}/tests" +OE_QMAKE_PATH_QT_HEADERS = "${includedir}${QT_DIR_NAME}" +OE_QMAKE_PATH_QT_ARCHDATA = "${libdir}${QT_DIR_NAME}" +OE_QMAKE_PATH_QT_DATA = "${datadir}${QT_DIR_NAME}" +OE_QMAKE_PATH_QT_BINS = "${bindir}${QT_DIR_NAME}" +OE_QMAKE_PATH_QT_TRANSLATIONS = "${datadir}${QT_DIR_NAME}/translations" +OE_QMAKE_PATH_QT_DOCS = "${docdir}${QT_DIR_NAME}" +OE_QMAKE_PATH_QT_SETTINGS = "${sysconfdir}${QT_DIR_NAME}" +OE_QMAKE_PATH_QT_EXAMPLES = "${datadir}${QT_DIR_NAME}/examples" +OE_QMAKE_PATH_QT_TESTS = "${datadir}${QT_DIR_NAME}/tests" diff --git a/recipes-qt/maliit/maliit-framework-qt5_git.bb b/recipes-qt/maliit/maliit-framework-qt5_git.bb index 490670d9..83da8cad 100644 --- a/recipes-qt/maliit/maliit-framework-qt5_git.bb +++ b/recipes-qt/maliit/maliit-framework-qt5_git.bb @@ -63,8 +63,8 @@ EXTRA_OEMAKE += "INSTALL_ROOT=${D}" do_install_append() { #Fix absolute paths - sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ${D}/${libdir}/${QT_DIR_NAME}/mkspecs/features/maliit-framework.prf - sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ${D}/${libdir}/${QT_DIR_NAME}/mkspecs/features/maliit-plugins.prf + sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ${D}/${libdir}${QT_DIR_NAME}/mkspecs/features/maliit-framework.prf + sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ${D}/${libdir}${QT_DIR_NAME}/mkspecs/features/maliit-plugins.prf install -d ${D}${datadir}/applications install -m 644 ${WORKDIR}/maliit-server.desktop ${D}${datadir}/applications diff --git a/recipes-qt/qt5/nativesdk-qtbase_git.bb b/recipes-qt/qt5/nativesdk-qtbase_git.bb index 9fe45543..69e2b3bc 100644 --- a/recipes-qt/qt5/nativesdk-qtbase_git.bb +++ b/recipes-qt/qt5/nativesdk-qtbase_git.bb @@ -89,7 +89,7 @@ QT_CONFIG_FLAGS += " \ " # qtbase is exception, as these are used as install path for sysroots -OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" +OE_QMAKE_PATH_HOST_DATA = "${libdir}${QT_DIR_NAME}" OE_QMAKE_PATH_HOST_LIBS = "${libdir}" do_generate_qt_config_file() { @@ -143,7 +143,7 @@ export OE_QMAKE_AR export OE_QMAKE_STRIP # another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location -OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qmake" OE_QMAKE_QMAKE = "bin/qmake" do_configure() { @@ -268,9 +268,9 @@ do_generate_qt_environment_file() { echo 'export OE_QMAKE_RCC=${OE_QMAKE_PATH_HOST_BINS}/rcc' >> $script echo 'export OE_QMAKE_QDBUSCPP2XML=${OE_QMAKE_PATH_HOST_BINS}/qdbuscpp2xml' >> $script echo 'export OE_QMAKE_QDBUSXML2CPP=${OE_QMAKE_PATH_HOST_BINS}/qdbusxml2cpp' >> $script - echo 'export OE_QMAKE_QT_CONFIG=`qmake -query QT_INSTALL_LIBS`/${QT_DIR_NAME}/mkspecs/qconfig.pri' >> $script + echo 'export OE_QMAKE_QT_CONFIG=`qmake -query QT_INSTALL_LIBS`${QT_DIR_NAME}/mkspecs/qconfig.pri' >> $script echo 'export OE_QMAKE_PATH_HOST_BINS=${OE_QMAKE_PATH_HOST_BINS}' >> $script - echo 'export QMAKESPEC=`qmake -query QT_INSTALL_LIBS`/${QT_DIR_NAME}/mkspecs/linux-oe-g++' >> $script + echo 'export QMAKESPEC=`qmake -query QT_INSTALL_LIBS`${QT_DIR_NAME}/mkspecs/linux-oe-g++' >> $script # Use relocable sysroot sed -i -e 's:${SDKPATHNATIVE}:$OECORE_NATIVE_SYSROOT:g' $script diff --git a/recipes-qt/qt5/qt5-creator_3.3.1.bb b/recipes-qt/qt5/qt5-creator_3.3.1.bb index 97ca450e..48e65bb5 100644 --- a/recipes-qt/qt5/qt5-creator_3.3.1.bb +++ b/recipes-qt/qt5/qt5-creator_3.3.1.bb @@ -28,7 +28,7 @@ SRC_URI[sha256sum] = "afefb73a05cdc36cdfb8a760c2b39eb6c366a22ef47c7d365d446092dd S = "${WORKDIR}/qt-creator-opensource-src-${PV}" -EXTRA_QMAKEVARS_PRE += "IDE_LIBRARY_BASENAME=${baselib}/${QT_DIR_NAME}" +EXTRA_QMAKEVARS_PRE += "IDE_LIBRARY_BASENAME=${baselib}${QT_DIR_NAME}" do_configure_prepend() { # causes gcc infinite loop with 4.9.x for arm targets similar to @@ -38,11 +38,11 @@ do_configure_prepend() { do_configure_append() { # Find native tools - sed -i 's:${STAGING_BINDIR}.*/lrelease:${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/lrelease:g' ${B}/share/qtcreator/translations/Makefile - sed -i 's:${STAGING_BINDIR}.*/qdoc:${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qdoc:g' ${B}/Makefile + sed -i 's:${STAGING_BINDIR}.*/lrelease:${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/lrelease:g' ${B}/share/qtcreator/translations/Makefile + sed -i 's:${STAGING_BINDIR}.*/qdoc:${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qdoc:g' ${B}/Makefile # see qtbase-native.inc - # sed -i 's:QT_INSTALL_DOCS=${docdir}:QT_INSTALL_DOCS=${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/doc:g' ${B}/Makefile + # sed -i 's:QT_INSTALL_DOCS=${docdir}:QT_INSTALL_DOCS=${STAGING_DATADIR_NATIVE}${QT_DIR_NAME}/doc:g' ${B}/Makefile } do_compile_append() { @@ -56,22 +56,22 @@ do_install() { # install desktop and ensure that qt-creator finds qmake install -d ${D}${datadir}/applications install -m 0644 ${WORKDIR}/qtcreator.desktop.in ${D}${datadir}/applications/qtcreator.desktop - sed -i 's:@QT5_QMAKE@:${bindir}/${QT_DIR_NAME}:g' ${D}${datadir}/applications/qtcreator.desktop + sed -i 's:@QT5_QMAKE@:${bindir}${QT_DIR_NAME}:g' ${D}${datadir}/applications/qtcreator.desktop } FILES_${PN} += " \ ${datadir}/qtcreator \ ${datadir}/icons \ - ${libdir}/${QT_DIR_NAME}/qtcreator \ + ${libdir}${QT_DIR_NAME}/qtcreator \ " FILES_${PN}-dbg += " \ - ${libdir}/${QT_DIR_NAME}/qtcreator/.debug \ - ${libdir}/${QT_DIR_NAME}/qtcreator/plugins/.debug \ - ${libdir}/${QT_DIR_NAME}/qtcreator/plugins/qbs/plugins/.debug \ + ${libdir}${QT_DIR_NAME}/qtcreator/.debug \ + ${libdir}${QT_DIR_NAME}/qtcreator/plugins/.debug \ + ${libdir}${QT_DIR_NAME}/qtcreator/plugins/qbs/plugins/.debug \ " FILES_${PN}-dev += " \ - ${libdir}/${QT_DIR_NAME}/qtcreator/*${SOLIBSDEV} \ + ${libdir}${QT_DIR_NAME}/qtcreator/*${SOLIBSDEV} \ " RDEPENDS_${PN} += "perl" diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 087ebf35..70e35c23 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -154,7 +154,7 @@ EOF QMAKE_MKSPEC_PATH = "${B}" # another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location -OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qmake" OE_QMAKE_QMAKE = "bin/qmake" # qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell @@ -219,7 +219,7 @@ do_compile_append() { } do_install_append() { - install -m 0755 ${B}/qmake/bin/qmake ${D}/${bindir}/${QT_DIR_NAME} + install -m 0755 ${B}/qmake/bin/qmake ${D}/${bindir}${QT_DIR_NAME} ### Fix up the binaries to the right location ### TODO: FIX diff --git a/recipes-qt/qt5/qtdeclarative_git.bb b/recipes-qt/qt5/qtdeclarative_git.bb index 15d176b9..105c9cde 100644 --- a/recipes-qt/qt5/qtdeclarative_git.bb +++ b/recipes-qt/qt5/qtdeclarative_git.bb @@ -16,7 +16,7 @@ SRC_URI += " \ file://0001-qmltestexample-fix-link.patch \ " -EXTRA_OEMAKE += "QMAKE_SYNCQT=${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/syncqt" +EXTRA_OEMAKE += "QMAKE_SYNCQT=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/syncqt" PACKAGECONFIG ??= "qtxmlpatterns" PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns" @@ -27,7 +27,7 @@ do_configure_prepend() { sed -e 's/^\(!qtHaveModule(xmlpatterns)\)/!OE_QTXMLPATTERNS_ENABLED|\1/' -i ${S}/tests/auto/quick/quick.pro #set the path for syncqt properly - echo "QT_TOOL.syncqt.binary = \"${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/syncqt\"" > ${B}/.qmake.cache + echo "QT_TOOL.syncqt.binary = \"${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/syncqt\"" > ${B}/.qmake.cache } EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtxmlpatterns', 'CONFIG+=OE_QTXMLPATTERNS_ENABLED', '', d)}" diff --git a/recipes-qt/qt5/qttools_git.bb b/recipes-qt/qt5/qttools_git.bb index fff2a746..5651f568 100644 --- a/recipes-qt/qt5/qttools_git.bb +++ b/recipes-qt/qt5/qttools_git.bb @@ -18,8 +18,8 @@ SRC_URI += " \ file://0003-add-noqtwebkit-configuration.patch \ " -FILES_${PN}-tools += "${datadir}/${QT_DIR_NAME}/phrasebooks" -FILES_${PN}-examples = "${datadir}/${QT_DIR_NAME}/examples" +FILES_${PN}-tools += "${datadir}${QT_DIR_NAME}/phrasebooks" +FILES_${PN}-examples = "${datadir}${QT_DIR_NAME}/examples" PACKAGECONFIG ??= "" PACKAGECONFIG_class-native ??= "linguistonly" -- cgit v1.2.3