diff options
| author | Otavio Salvador <otavio@ossystems.com.br> | 2011-06-16 14:27:47 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-07-08 17:20:57 +0100 |
| commit | 4832e84106038ef2923521e4ddd7bfd53b0a735a (patch) | |
| tree | 847ffdadd15036bcbc781e326b32c38368b2bad1 /meta/recipes-devtools/cmake | |
| parent | e5fef6bc21c1046a8f08c27f8fcb27322d56008b (diff) | |
| download | poky-4832e84106038ef2923521e4ddd7bfd53b0a735a.tar.gz | |
cmake: add nativesdk and target versions
Adds a recipe that provides the nativesdk and target versions of
CMake.
This recipe is based on code from OpenEmbeeded (rev
b1f2e1501c19540617a829b37415c0616101c7ad).
(From OE-Core rev: ea25292bbf53c7542578e5d9f4ae0531f9d78374)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/cmake')
| -rw-r--r-- | meta/recipes-devtools/cmake/cmake/dont-run-cross-binaries.patch | 22 | ||||
| -rw-r--r-- | meta/recipes-devtools/cmake/cmake_2.8.3.bb | 45 |
2 files changed, 67 insertions, 0 deletions
diff --git a/meta/recipes-devtools/cmake/cmake/dont-run-cross-binaries.patch b/meta/recipes-devtools/cmake/cmake/dont-run-cross-binaries.patch new file mode 100644 index 0000000000..4eb1794e4e --- /dev/null +++ b/meta/recipes-devtools/cmake/cmake/dont-run-cross-binaries.patch | |||
| @@ -0,0 +1,22 @@ | |||
| 1 | cmake: don't run cross-binaries on host machine | ||
| 2 | |||
| 3 | When doing the cross build we obviously cannot run those binaries on | ||
| 4 | host since they can be binary incompatible. | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [embedded specific] | ||
| 7 | |||
| 8 | Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> | ||
| 9 | |||
| 10 | diff -ru cmake-2.8.2.orig/CMakeLists.txt cmake-2.8.2/CMakeLists.txt | ||
| 11 | --- cmake-2.8.2.orig/CMakeLists.txt 2010-07-28 00:48:42.000000000 +0200 | ||
| 12 | +++ cmake-2.8.2/CMakeLists.txt 2010-07-28 01:05:17.000000000 +0200 | ||
| 13 | @@ -518,7 +518,8 @@ | ||
| 14 | |||
| 15 | # build the remaining subdirectories | ||
| 16 | ADD_SUBDIRECTORY(Source) | ||
| 17 | -ADD_SUBDIRECTORY(Utilities) | ||
| 18 | +# Come on! Running the cross-binaries on host is not a good idea. | ||
| 19 | +#ADD_SUBDIRECTORY(Utilities) | ||
| 20 | ADD_SUBDIRECTORY(Tests) | ||
| 21 | |||
| 22 | # add a test | ||
diff --git a/meta/recipes-devtools/cmake/cmake_2.8.3.bb b/meta/recipes-devtools/cmake/cmake_2.8.3.bb new file mode 100644 index 0000000000..d1048ed6ce --- /dev/null +++ b/meta/recipes-devtools/cmake/cmake_2.8.3.bb | |||
| @@ -0,0 +1,45 @@ | |||
| 1 | require cmake.inc | ||
| 2 | |||
| 3 | inherit cmake | ||
| 4 | |||
| 5 | DEPENDS += "curl expat zlib libarchive ncurses" | ||
| 6 | |||
| 7 | PR = "${INC_PR}.0" | ||
| 8 | |||
| 9 | SRC_URI += "file://dont-run-cross-binaries.patch" | ||
| 10 | |||
| 11 | SRC_URI[md5sum] = "a76a44b93acf5e3badda9de111385921" | ||
| 12 | SRC_URI[sha256sum] = "689ed02786b5cefa5515c7716784ee82a82e8ece6be5a3d629ac3cc0c05fc288" | ||
| 13 | |||
| 14 | # Strip ${prefix} from ${docdir}, set result into docdir_stripped | ||
| 15 | python () { | ||
| 16 | prefix=bb.data.getVar("prefix", d, 1) | ||
| 17 | docdir=bb.data.getVar("docdir", d, 1) | ||
| 18 | |||
| 19 | if not docdir.startswith(prefix): | ||
| 20 | raise bb.build.FuncFailed('docdir must contain prefix as its prefix') | ||
| 21 | |||
| 22 | docdir_stripped = docdir[len(prefix):] | ||
| 23 | if len(docdir_stripped) > 0 and docdir_stripped[0] == '/': | ||
| 24 | docdir_stripped = docdir_stripped[1:] | ||
| 25 | |||
| 26 | bb.data.setVar("docdir_stripped", docdir_stripped, d) | ||
| 27 | } | ||
| 28 | |||
| 29 | EXTRA_OECMAKE=" \ | ||
| 30 | -DCMAKE_DOC_DIR=${docdir_stripped}/cmake-${CMAKE_MAJOR_VERSION} \ | ||
| 31 | -DCMAKE_USE_SYSTEM_LIBRARIES=1 \ | ||
| 32 | -DKWSYS_CHAR_IS_SIGNED=1 \ | ||
| 33 | ${@base_contains('DISTRO_FEATURES', 'largefile', '-DKWSYS_LFS_WORKS=1', '-DKWSYS_LFS_DISABLE=1', d)} \ | ||
| 34 | " | ||
| 35 | |||
| 36 | # FIXME: Hack due gcc-crosssdk not being able to detect those automatically | ||
| 37 | CXXFLAGS_virtclass-nativesdk += " \ | ||
| 38 | -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/c++ \ | ||
| 39 | -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/c++/${TARGET_SYS} \ | ||
| 40 | " | ||
| 41 | |||
| 42 | FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION}" | ||
| 43 | FILES_${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}" | ||
| 44 | |||
| 45 | BBCLASSEXTEND = "nativesdk" | ||
