Our eSDK is expected to provide traditional SDK's functionality. But
for cmake, it could not function well in eSDK.

This problem is discovered by the assimp.py test case. The error message
is as below.

  testsdkext/tmp/sysroots/x86_64/usr/lib/libz.so: error adding symbols: file in 
wrong format
  collect2: error: ld returned 1 exit status

The problem is about cmake-native being unable to find the correct lib.
nativesdk-cmake has solved this problem. So make use of the solution to
solve the eSDK problem.

Signed-off-by: Chen Qi <qi.c...@windriver.com>
---
 meta/recipes-devtools/cmake/cmake-native_3.11.4.bb | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-devtools/cmake/cmake-native_3.11.4.bb 
b/meta/recipes-devtools/cmake/cmake-native_3.11.4.bb
index 9f371e9..f55c519 100644
--- a/meta/recipes-devtools/cmake/cmake-native_3.11.4.bb
+++ b/meta/recipes-devtools/cmake/cmake-native_3.11.4.bb
@@ -3,7 +3,12 @@ inherit native
 
 DEPENDS += "bzip2-replacement-native expat-native xz-native zlib-native 
curl-native"
 
-SRC_URI += 
"file://0004-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch"
+SRC_URI += 
"file://0004-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch \
+            file://OEToolchainConfig.cmake \
+            file://environment.d-cmake.sh \
+            
file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \
+            "
+
 
 B = "${WORKDIR}/build"
 do_configure[cleandirs] = "${B}"
@@ -31,6 +36,15 @@ do_compile() {
 
 do_install() {
        oe_runmake 'DESTDIR=${D}' install
+
+       # The following codes are here because eSDK needs to provide 
compatibilty
+       # for SDK. That is, eSDK could also be used like traditional SDK.
+       mkdir -p ${D}${datadir}/cmake
+       install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
+       mkdir -p ${D}${base_prefix}/environment-setup.d
+       install -m 644 ${WORKDIR}/environment.d-cmake.sh 
${D}${base_prefix}/environment-setup.d/cmake.sh
 }
 
 do_compile[progress] = "percent"
+
+SYSROOT_DIRS_NATIVE += "${datadir}/cmake ${base_prefix}/environment-setup.d"
-- 
1.9.1

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to