aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/cmake
diff options
context:
space:
mode:
authorMartin Jansa <martin.jansa@gmail.com>2014-04-02 12:25:33 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-04-04 11:49:23 +0100
commit4f2dee0d8c2c3f60cb8f8021343e973cae31fc50 (patch)
tree47e5eadd0937aba57df753a811f712411d53fe07 /meta/recipes-devtools/cmake
parent9fcd3af8626e1b0979b0cde745fe0880ccc50de7 (diff)
downloadopenembedded-core-contrib-4f2dee0d8c2c3f60cb8f8021343e973cae31fc50.tar.gz
cmake: Add ugly hack from meta-qt5 to prevent cmake trying to detect qt5
* cmake doesn't have dependency on qt4/qt5, so these tests usually fail but still can cause undeterministic results or build failures (when OE_QMAKE_PATH_EXTERNAL_HOST_BINS is undefined or native qmake removed while running the test in cmake) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/cmake')
-rw-r--r--meta/recipes-devtools/cmake/cmake.inc22
1 files changed, 22 insertions, 0 deletions
diff --git a/meta/recipes-devtools/cmake/cmake.inc b/meta/recipes-devtools/cmake/cmake.inc
index 1d5303fdb2f..a0fcf490ec6 100644
--- a/meta/recipes-devtools/cmake/cmake.inc
+++ b/meta/recipes-devtools/cmake/cmake.inc
@@ -21,6 +21,28 @@ SRC_URI = "http://www.cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz
inherit autotools-brokensep
+# Ugly hack to work around undefined OE_QMAKE_PATH_EXTERNAL_HOST_BINS variable
+# and possibly missing qmake binary (qtbase-native can be removed from sysroot
+# e.g. in order to upgrade it, even when there is target qtbase)
+
+# Fixes errors like this in cmake(-native).do_configure:
+#| -- Performing Test run_pic_test - Success
+#| CMake Error at tmp-eglibc/sysroots/qemuarm/usr/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:27 (message):
+#| The imported target "Qt5::Core" references the file
+#|
+#| "/qmake"
+#|
+#| but this file does not exist. Possible reasons include:
+
+do_configure_prepend() {
+ sed -i 's/^find_package(Qt5Core QUIET)$/#find_package(Qt5Core QUIET)/g' ${S}/Tests/RunCMake/CMakeLists.txt
+ sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core REQUIRED)/g' ${S}/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
+ sed -i 's/^ find_package(Qt5Widgets REQUIRED)/# find_package(Qt5Widgets REQUIRED)/g' ${S}/Tests/QtAutomoc/CMakeLists.txt
+ sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core REQUIRED)/g' ${S}/Tests/Qt4And5Automoc/CMakeLists.txt
+ sed -i 's/^ find_package(Qt5Widgets QUIET NO_MODULE)/# find_package(Qt5Widgets QUIET NO_MODULE)/g' ${S}/Tests/CMakeLists.txt
+ sed -i 's/^find_package(Qt5Widgets QUIET)/#find_package(Qt5Widgets QUIET)/g' ${S}/Source/QtDialog/CMakeLists.txt
+}
+
do_configure () {
./configure --prefix=${prefix}
}