diff options
-rw-r--r-- | meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake | 18 | ||||
-rw-r--r-- | meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/cmake/cmake_2.8.12.2.bb | 14 |
3 files changed, 33 insertions, 0 deletions
diff --git a/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake b/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake new file mode 100644 index 0000000000..60014bbf2b --- /dev/null +++ b/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake | |||
@@ -0,0 +1,18 @@ | |||
1 | set( CMAKE_SYSTEM_NAME Linux ) | ||
2 | set( CMAKE_C_FLAGS $ENV{CFLAGS} CACHE STRING "" FORCE ) | ||
3 | set( CMAKE_CXX_FLAGS $ENV{CXXFLAGS} CACHE STRING "" FORCE ) | ||
4 | set( CMAKE ASM_FLAGS ${CMAKE_C_FLAGS} CACHE STRING "" FORCE ) | ||
5 | set( CMAKE_LDFLAGS_FLAGS ${CMAKE_CXX_FLAGS} CACHE STRING "" FORCE ) | ||
6 | set( CMAKE_FIND_ROOT_PATH $ENV{OECORE_TARGET_SYSROOT} $ENV{OECORE_NATIVE_SYSROOT} ) | ||
7 | set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER ) | ||
8 | set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY ) | ||
9 | set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY ) | ||
10 | |||
11 | string(REGEX MATCH "sysroots/([a-zA-Z0-9]+)" CMAKE_SYSTEM_PROCESSOR $ENV{SDKTARGETSYSROOT}) | ||
12 | string(REGEX REPLACE "sysroots/" "" CMAKE_SYSTEM_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR}) | ||
13 | |||
14 | # Include the toolchain configuration subscripts | ||
15 | file( GLOB toolchain_config_files "${CMAKE_TOOLCHAIN_FILE}.d/*.cmake" ) | ||
16 | foreach(config ${toolchain_config_files}) | ||
17 | include(${config}) | ||
18 | endforeach() | ||
diff --git a/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh b/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh new file mode 100644 index 0000000000..0eb56b66fa --- /dev/null +++ b/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh | |||
@@ -0,0 +1 @@ | |||
alias cmake="cmake -DCMAKE_TOOLCHAIN_FILE=$OECORE_NATIVE_SYSROOT/usr/share/cmake/OEToolchainConfig.cmake" | |||
diff --git a/meta/recipes-devtools/cmake/cmake_2.8.12.2.bb b/meta/recipes-devtools/cmake/cmake_2.8.12.2.bb index de2ac6b219..66a6af629c 100644 --- a/meta/recipes-devtools/cmake/cmake_2.8.12.2.bb +++ b/meta/recipes-devtools/cmake/cmake_2.8.12.2.bb | |||
@@ -6,6 +6,10 @@ DEPENDS += "curl expat zlib libarchive" | |||
6 | 6 | ||
7 | SRC_URI += "file://dont-run-cross-binaries.patch" | 7 | SRC_URI += "file://dont-run-cross-binaries.patch" |
8 | 8 | ||
9 | SRC_URI_append_class-nativesdk = " \ | ||
10 | file://OEToolchainConfig.cmake \ | ||
11 | file://environment.d-cmake.sh" | ||
12 | |||
9 | SRC_URI[md5sum] = "17c6513483d23590cbce6957ec6d1e66" | 13 | SRC_URI[md5sum] = "17c6513483d23590cbce6957ec6d1e66" |
10 | SRC_URI[sha256sum] = "8c6574e9afabcb9fc66f463bb1f2f051958d86c85c37fccf067eb1a44a120e5e" | 14 | SRC_URI[sha256sum] = "8c6574e9afabcb9fc66f463bb1f2f051958d86c85c37fccf067eb1a44a120e5e" |
11 | 15 | ||
@@ -32,6 +36,16 @@ EXTRA_OECMAKE=" \ | |||
32 | ${@bb.utils.contains('DISTRO_FEATURES', 'largefile', '-DKWSYS_LFS_WORKS=1', '-DKWSYS_LFS_DISABLE=1', d)} \ | 36 | ${@bb.utils.contains('DISTRO_FEATURES', 'largefile', '-DKWSYS_LFS_WORKS=1', '-DKWSYS_LFS_DISABLE=1', d)} \ |
33 | " | 37 | " |
34 | 38 | ||
39 | do_install_append_class-nativesdk() { | ||
40 | mkdir -p ${D}${datadir}/cmake | ||
41 | install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/ | ||
42 | |||
43 | mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d | ||
44 | install -m 644 ${WORKDIR}/environment.d-cmake.sh ${D}${SDKPATHNATIVE}/environment-setup.d/cmake.sh | ||
45 | } | ||
46 | |||
47 | FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}" | ||
48 | |||
35 | FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION}" | 49 | FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION}" |
36 | FILES_${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}" | 50 | FILES_${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}" |
37 | 51 | ||