[oe] [meta-qt5][PATCH 1/2] qt5: make populate_sdk_qt5 reusable

Samuli Piippo samuli.piippo at theqtcompany.com
Wed Sep 2 09:28:55 UTC 2015


Split the populate_sdk_qt5 bbclass into two parts, where the generation
of qt.conf is moved to a new base bbclass. It is reusable in toolchain
meta recipes that use different tasks than meta-toolchain-qt5.

Signed-off-by: Samuli Piippo <samuli.piippo at theqtcompany.com>
---
 classes/populate_sdk_qt5.bbclass      | 34 ++--------------------------------
 classes/populate_sdk_qt5_base.bbclass | 31 +++++++++++++++++++++++++++++++
 2 files changed, 33 insertions(+), 32 deletions(-)
 create mode 100644 classes/populate_sdk_qt5_base.bbclass

diff --git a/classes/populate_sdk_qt5.bbclass b/classes/populate_sdk_qt5.bbclass
index 149a448..bbf137d 100644
--- a/classes/populate_sdk_qt5.bbclass
+++ b/classes/populate_sdk_qt5.bbclass
@@ -1,38 +1,8 @@
 # Copyright (C) 2014 O.S. Systems Software LTDA.
 
+inherit populate_sdk_qt5_base
+
 TOOLCHAIN_HOST_TASK += "nativesdk-packagegroup-qt5-toolchain-host"
 TOOLCHAIN_TARGET_TASK += "packagegroup-qt5-toolchain-target"
 
-# This allow reuse of Qt paths
-inherit qmake5_paths
-
-create_sdk_files_prepend () {
-    # make a symbolic link to mkspecs for compatibility with QTCreator
-    (cd ${SDK_OUTPUT}/${SDKPATHNATIVE}; \
-         ln -sf ${SDKTARGETSYSROOT}${libdir}/${QT_DIR_NAME}/mkspecs mkspecs;)
-
-    # Generate a qt.conf file to be deployed with the SDK
-    qtconf=${SDK_OUTPUT}/${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/qt.conf
-    touch $qtconf
-    echo '[Paths]' >> $qtconf
-    echo 'Prefix = ${OE_QMAKE_PATH_PREFIX}' >> $qtconf
-    echo 'Headers = ${OE_QMAKE_PATH_QT_HEADERS}' >> $qtconf
-    echo 'Libraries = ${OE_QMAKE_PATH_LIBS}' >> $qtconf
-    echo 'ArchData = ${OE_QMAKE_PATH_QT_ARCHDATA}' >> $qtconf
-    echo 'Data = ${OE_QMAKE_PATH_QT_DATA}' >> $qtconf
-    echo 'Binaries = ${OE_QMAKE_PATH_QT_BINS}' >> $qtconf
-    echo 'LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}' >> $qtconf
-    echo 'Plugins = ${OE_QMAKE_PATH_PLUGINS}' >> $qtconf
-    echo 'Imports = ${OE_QMAKE_PATH_IMPORTS}' >> $qtconf
-    echo 'Qml2Imports = ${OE_QMAKE_PATH_QML}' >> $qtconf
-    echo 'Translations = ${OE_QMAKE_PATH_QT_TRANSLATIONS}' >> $qtconf
-    echo 'Documentation = ${OE_QMAKE_PATH_QT_DOCS}' >> $qtconf
-    echo 'Settings = ${OE_QMAKE_PATH_QT_SETTINGS}' >> $qtconf
-    echo 'Examples = ${OE_QMAKE_PATH_QT_EXAMPLES}' >> $qtconf
-    echo 'Tests = ${OE_QMAKE_PATH_QT_TESTS}' >> $qtconf
-    echo 'HostPrefix = ${SDKPATHNATIVE}' >> $qtconf
-    echo 'HostBinaries = ${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}' >> $qtconf
-    echo 'Sysroot = ${SDKTARGETSYSROOT}' >> $qtconf
-}
-
 FEATURE_PACKAGES_qtcreator-debug = "packagegroup-qt5-qtcreator-debug"
diff --git a/classes/populate_sdk_qt5_base.bbclass b/classes/populate_sdk_qt5_base.bbclass
new file mode 100644
index 0000000..4a1eed3
--- /dev/null
+++ b/classes/populate_sdk_qt5_base.bbclass
@@ -0,0 +1,31 @@
+# This allow reuse of Qt paths
+inherit qmake5_paths
+
+create_sdk_files_prepend () {
+    # make a symbolic link to mkspecs for compatibility with QTCreator
+    (cd ${SDK_OUTPUT}/${SDKPATHNATIVE}; \
+         ln -sf ${SDKTARGETSYSROOT}${libdir}/${QT_DIR_NAME}/mkspecs mkspecs;)
+
+    # Generate a qt.conf file to be deployed with the SDK
+    qtconf=${SDK_OUTPUT}/${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}/qt.conf
+    touch $qtconf
+    echo '[Paths]' >> $qtconf
+    echo 'Prefix = ${OE_QMAKE_PATH_PREFIX}' >> $qtconf
+    echo 'Headers = ${OE_QMAKE_PATH_QT_HEADERS}' >> $qtconf
+    echo 'Libraries = ${OE_QMAKE_PATH_LIBS}' >> $qtconf
+    echo 'ArchData = ${OE_QMAKE_PATH_QT_ARCHDATA}' >> $qtconf
+    echo 'Data = ${OE_QMAKE_PATH_QT_DATA}' >> $qtconf
+    echo 'Binaries = ${OE_QMAKE_PATH_QT_BINS}' >> $qtconf
+    echo 'LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}' >> $qtconf
+    echo 'Plugins = ${OE_QMAKE_PATH_PLUGINS}' >> $qtconf
+    echo 'Imports = ${OE_QMAKE_PATH_IMPORTS}' >> $qtconf
+    echo 'Qml2Imports = ${OE_QMAKE_PATH_QML}' >> $qtconf
+    echo 'Translations = ${OE_QMAKE_PATH_QT_TRANSLATIONS}' >> $qtconf
+    echo 'Documentation = ${OE_QMAKE_PATH_QT_DOCS}' >> $qtconf
+    echo 'Settings = ${OE_QMAKE_PATH_QT_SETTINGS}' >> $qtconf
+    echo 'Examples = ${OE_QMAKE_PATH_QT_EXAMPLES}' >> $qtconf
+    echo 'Tests = ${OE_QMAKE_PATH_QT_TESTS}' >> $qtconf
+    echo 'HostPrefix = ${SDKPATHNATIVE}' >> $qtconf
+    echo 'HostBinaries = ${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS}' >> $qtconf
+    echo 'Sysroot = ${SDKTARGETSYSROOT}' >> $qtconf
+}
-- 
1.9.1




More information about the Openembedded-devel mailing list