summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorThomas Witt <Thomas.Witt@bmw.de>2016-08-22 16:27:11 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-09-23 15:27:05 +0100
commitd9369d1ea055a20e5fc8747b0e38916dd6d604a5 (patch)
treea34916627816d883d4b6b6a1b05b002c0326b370 /meta/classes
parent17e4586d6ec991e4b40105c9be0e1ce848c44799 (diff)
downloadpoky-d9369d1ea055a20e5fc8747b0e38916dd6d604a5.tar.gz
cmake.bbclass: call cmake with a relative path
CMake wants a relative path for CMAKE_INSTALL_*DIR, an absolute path breaks cross-compilation. This fact is documented in the following ticket: https://cmake.org/Bug/view.php?id=14367 $sysconfdir and $localstatedir are not relative to $prefix, so they are still set as absolute paths. With his change ${PROJECT}Targets.cmake that are generated by cmakes "export" function will contain relative paths instead of absolute ones. (From OE-Core rev: c03b32bd71dbe04f2f239556fea0b53215e403d7) (From OE-Core rev: 3d37394f8f279d127db85784cf01056d27c19b36) Signed-off-by: Thomas Witt <Thomas.Witt@bmw.de> Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/cmake.bbclass14
1 files changed, 7 insertions, 7 deletions
diff --git a/meta/classes/cmake.bbclass b/meta/classes/cmake.bbclass
index 02f313a861..77ab626f9f 100644
--- a/meta/classes/cmake.bbclass
+++ b/meta/classes/cmake.bbclass
@@ -108,15 +108,15 @@ cmake_do_configure() {
108 ${OECMAKE_SITEFILE} \ 108 ${OECMAKE_SITEFILE} \
109 ${OECMAKE_SOURCEPATH} \ 109 ${OECMAKE_SOURCEPATH} \
110 -DCMAKE_INSTALL_PREFIX:PATH=${prefix} \ 110 -DCMAKE_INSTALL_PREFIX:PATH=${prefix} \
111 -DCMAKE_INSTALL_BINDIR:PATH=${bindir} \ 111 -DCMAKE_INSTALL_BINDIR:PATH=${@os.path.relpath(d.getVar('bindir', True), d.getVar('prefix', True))} \
112 -DCMAKE_INSTALL_SBINDIR:PATH=${sbindir} \ 112 -DCMAKE_INSTALL_SBINDIR:PATH=${@os.path.relpath(d.getVar('sbindir', True), d.getVar('prefix', True))} \
113 -DCMAKE_INSTALL_LIBEXECDIR:PATH=${libexecdir} \ 113 -DCMAKE_INSTALL_LIBEXECDIR:PATH=${@os.path.relpath(d.getVar('libexecdir', True), d.getVar('prefix', True))} \
114 -DCMAKE_INSTALL_SYSCONFDIR:PATH=${sysconfdir} \ 114 -DCMAKE_INSTALL_SYSCONFDIR:PATH=${sysconfdir} \
115 -DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=${sharedstatedir} \ 115 -DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=${@os.path.relpath(d.getVar('sharedstatedir', True), d. getVar('prefix', True))} \
116 -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=${localstatedir} \ 116 -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=${localstatedir} \
117 -DCMAKE_INSTALL_LIBDIR:PATH=${libdir} \ 117 -DCMAKE_INSTALL_LIBDIR:PATH=${@os.path.relpath(d.getVar('libdir', True), d.getVar('prefix', True))} \
118 -DCMAKE_INSTALL_INCLUDEDIR:PATH=${includedir} \ 118 -DCMAKE_INSTALL_INCLUDEDIR:PATH=${@os.path.relpath(d.getVar('includedir', True), d.getVar('prefix', True))} \
119 -DCMAKE_INSTALL_DATAROOTDIR:PATH=${datadir} \ 119 -DCMAKE_INSTALL_DATAROOTDIR:PATH=${@os.path.relpath(d.getVar('datadir', True), d.getVar('prefix', True))} \
120 -DCMAKE_INSTALL_SO_NO_EXE=0 \ 120 -DCMAKE_INSTALL_SO_NO_EXE=0 \
121 -DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain.cmake \ 121 -DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain.cmake \
122 -DCMAKE_VERBOSE_MAKEFILE=1 \ 122 -DCMAKE_VERBOSE_MAKEFILE=1 \