diff options
| author | Tuomas Heimonen <tuomas.heimonen@qt.io> | 2018-08-14 10:29:17 +0300 |
|---|---|---|
| committer | Tuomas Heimonen <tuomas.heimonen@qt.io> | 2018-09-10 06:57:20 +0000 |
| commit | a0d9fb33f8475336fbdebdbab803f43c7b9107d4 (patch) | |
| tree | b89aa693d917976736a52dea805e91ad41afd7e2 | |
| parent | 8f8722d36a1341c08c86c4357da8f398cc31e771 (diff) | |
| download | meta-boot2qt-a0d9fb33f8475336fbdebdbab803f43c7b9107d4.tar.gz | |
configure-qtcreator: Add CMake support for QtCreator
Add CMake tool to QtCreator configure script
Task-number: QTPM-766
Change-Id: I1105284c532fc872cb622781ef1b3ab8b02a478d
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
| -rw-r--r-- | meta-boot2qt/classes/populate_b2qt_qt5_sdk.bbclass | 11 | ||||
| -rwxr-xr-x | meta-boot2qt/files/configure-qtcreator.sh | 12 |
2 files changed, 22 insertions, 1 deletions
diff --git a/meta-boot2qt/classes/populate_b2qt_qt5_sdk.bbclass b/meta-boot2qt/classes/populate_b2qt_qt5_sdk.bbclass index e98565c..ee1a25f 100644 --- a/meta-boot2qt/classes/populate_b2qt_qt5_sdk.bbclass +++ b/meta-boot2qt/classes/populate_b2qt_qt5_sdk.bbclass | |||
| @@ -34,6 +34,7 @@ NATIVE_SDK_MKSPEC_DIR = "${SDK_OUTPUT}${SDKPATHNATIVE}${libdir}/${QT_DIR_NAME}/m | |||
| 34 | SDK_MKSPEC = "devices/linux-oe-generic-g++" | 34 | SDK_MKSPEC = "devices/linux-oe-generic-g++" |
| 35 | SDK_DEVICE_PRI = "${SDK_MKSPEC_DIR}/qdevice.pri" | 35 | SDK_DEVICE_PRI = "${SDK_MKSPEC_DIR}/qdevice.pri" |
| 36 | SDK_DYNAMIC_FLAGS = "-O. -pipe -g" | 36 | SDK_DYNAMIC_FLAGS = "-O. -pipe -g" |
| 37 | MACHINE_CMAKE = "${SDK_OUTPUT}${SDKPATHNATIVE}${datadir}/cmake/OEToolchainConfig.cmake.d/${MACHINE}.cmake" | ||
| 37 | 38 | ||
| 38 | create_sdk_files_append () { | 39 | create_sdk_files_append () { |
| 39 | # Create the toolchain user's generic device mkspec | 40 | # Create the toolchain user's generic device mkspec |
| @@ -79,6 +80,16 @@ EOF | |||
| 79 | 80 | ||
| 80 | # Link /etc/resolv.conf is broken in the toolchain sysroot, remove it | 81 | # Link /etc/resolv.conf is broken in the toolchain sysroot, remove it |
| 81 | rm -f ${SDK_OUTPUT}${SDKTARGETSYSROOT}${sysconfdir}/resolv.conf | 82 | rm -f ${SDK_OUTPUT}${SDKTARGETSYSROOT}${sysconfdir}/resolv.conf |
| 83 | |||
| 84 | # Create and add cmake toolchain file | ||
| 85 | echo "set(CMAKE_SYSROOT ${SDKTARGETSYSROOT})" > ${MACHINE_CMAKE} | ||
| 86 | echo "set(CMAKE_PREFIX_PATH ${SDKTARGETSYSROOT}${OE_QMAKE_PATH_LIBS}/cmake)" >> ${MACHINE_CMAKE} | ||
| 87 | echo "set(compiler_flags \"${TARGET_CC_ARCH}\")" >> ${MACHINE_CMAKE} | ||
| 88 | echo "set(CMAKE_C_COMPILER_ARG1 \"\${compiler_flags}\")" >> ${MACHINE_CMAKE} | ||
| 89 | echo "set(CMAKE_CXX_COMPILER_ARG1 \"\${compiler_flags}\")" >> ${MACHINE_CMAKE} | ||
| 90 | echo "set(OE_QMAKE_PATH_EXTERNAL_HOST_BINS ${SDKPATHNATIVE}${OE_QMAKE_PATH_HOST_BINS})" >> ${MACHINE_CMAKE} | ||
| 91 | mkdir -p ${D}${datadir}/cmake/OEToolchainConfig.cmake.d/ | ||
| 92 | install -m 0644 ${MACHINE_CMAKE} ${D}${datadir}/cmake/OEToolchainConfig.cmake.d/ | ||
| 82 | } | 93 | } |
| 83 | 94 | ||
| 84 | create_qtcreator_configure_script () { | 95 | create_qtcreator_configure_script () { |
diff --git a/meta-boot2qt/files/configure-qtcreator.sh b/meta-boot2qt/files/configure-qtcreator.sh index 105e476..3e5db2d 100755 --- a/meta-boot2qt/files/configure-qtcreator.sh +++ b/meta-boot2qt/files/configure-qtcreator.sh | |||
| @@ -100,6 +100,7 @@ ${SDKTOOL} rmQt --id ${BASEID}.qt || true | |||
| 100 | ${SDKTOOL} rmTC --id ProjectExplorer.ToolChain.Gcc:${BASEID}.gcc || true | 100 | ${SDKTOOL} rmTC --id ProjectExplorer.ToolChain.Gcc:${BASEID}.gcc || true |
| 101 | ${SDKTOOL} rmTC --id ProjectExplorer.ToolChain.Gcc:${BASEID}.g++ || true | 101 | ${SDKTOOL} rmTC --id ProjectExplorer.ToolChain.Gcc:${BASEID}.g++ || true |
| 102 | ${SDKTOOL} rmDebugger --id ${BASEID}.gdb 2>/dev/null || true | 102 | ${SDKTOOL} rmDebugger --id ${BASEID}.gdb 2>/dev/null || true |
| 103 | ${SDKTOOL} rmCMake --id ${BASEID}.cmake 2>/dev/null || true | ||
| 103 | 104 | ||
| 104 | if [ -n "${REMOVEONLY}" ]; then | 105 | if [ -n "${REMOVEONLY}" ]; then |
| 105 | echo "Kit removed: ${NAME}" | 106 | echo "Kit removed: ${NAME}" |
| @@ -133,6 +134,11 @@ ${SDKTOOL} addQt \ | |||
| 133 | --type "Qdb.EmbeddedLinuxQt" \ | 134 | --type "Qdb.EmbeddedLinuxQt" \ |
| 134 | --qmake "$(type -p qmake)" | 135 | --qmake "$(type -p qmake)" |
| 135 | 136 | ||
| 137 | ${SDKTOOL} addCMake \ | ||
| 138 | --id "${BASEID}.cmake" \ | ||
| 139 | --name "CMake ${NAME}" \ | ||
| 140 | --path "$(type -p cmake)" | ||
| 141 | |||
| 136 | ${SDKTOOL} addKit \ | 142 | ${SDKTOOL} addKit \ |
| 137 | --id "${BASEID}.kit" \ | 143 | --id "${BASEID}.kit" \ |
| 138 | --name "${NAME}" \ | 144 | --name "${NAME}" \ |
| @@ -143,6 +149,10 @@ ${SDKTOOL} addKit \ | |||
| 143 | --Ctoolchain "ProjectExplorer.ToolChain.Gcc:${BASEID}.gcc" \ | 149 | --Ctoolchain "ProjectExplorer.ToolChain.Gcc:${BASEID}.gcc" \ |
| 144 | --Cxxtoolchain "ProjectExplorer.ToolChain.Gcc:${BASEID}.g++" \ | 150 | --Cxxtoolchain "ProjectExplorer.ToolChain.Gcc:${BASEID}.g++" \ |
| 145 | --icon ":/boot2qt/images/B2Qt_QtC_icon.png" \ | 151 | --icon ":/boot2qt/images/B2Qt_QtC_icon.png" \ |
| 146 | --mkspec "${MKSPEC}" | 152 | --mkspec "${MKSPEC}" \ |
| 153 | --cmake "${BASEID}.cmake" \ | ||
| 154 | --cmake-config "CMAKE_TOOLCHAIN_FILE:FILEPATH=${OECORE_NATIVE_SYSROOT}/usr/share/cmake/OEToolchainConfig.cmake" \ | ||
| 155 | --cmake-config "CMAKE_CXX_COMPILER:FILEPATH=$(type -p ${CXX})" \ | ||
| 156 | --cmake-config "CMAKE_C_COMPILER:FILEPATH=$(type -p ${CC})" | ||
| 147 | 157 | ||
| 148 | echo "Configured Qt Creator with new kit: ${NAME}" | 158 | echo "Configured Qt Creator with new kit: ${NAME}" |
