cmake_3.31.4.bb 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. require cmake.inc
  2. inherit cmake bash-completion
  3. DEPENDS += "curl expat zlib libarchive xz ncurses bzip2"
  4. SRC_URI:append:class-nativesdk = " \
  5. file://OEToolchainConfig.cmake \
  6. file://SDKToolchainConfig.cmake.template \
  7. file://cmake-setup.py \
  8. file://environment.d-cmake.sh \
  9. "
  10. LICENSE:append = " & BSD-1-Clause & MIT"
  11. LIC_FILES_CHKSUM:append = " \
  12. file://Utilities/cmjsoncpp/LICENSE;md5=5d73c165a0f9e86a1342f32d19ec5926 \
  13. file://Utilities/cmlibrhash/COPYING;md5=a8c2a557a5c53b1c12cddbee98c099af \
  14. file://Utilities/cmlibuv/LICENSE;md5=ad93ca1fffe931537fcf64f6fcce084d \
  15. "
  16. # Strip ${prefix} from ${docdir}, set result into docdir_stripped
  17. python () {
  18. prefix=d.getVar("prefix")
  19. docdir=d.getVar("docdir")
  20. if not docdir.startswith(prefix):
  21. bb.fatal('docdir must contain prefix as its prefix')
  22. docdir_stripped = docdir[len(prefix):]
  23. if len(docdir_stripped) > 0 and docdir_stripped[0] == '/':
  24. docdir_stripped = docdir_stripped[1:]
  25. d.setVar("docdir_stripped", docdir_stripped)
  26. }
  27. EXTRA_OECMAKE = " \
  28. -DCMAKE_DOC_DIR=${docdir_stripped}/cmake-${CMAKE_MAJOR_VERSION} \
  29. -DCMAKE_USE_SYSTEM_LIBRARIES=1 \
  30. -DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=0 \
  31. -DCMAKE_USE_SYSTEM_LIBRARY_CPPDAP=0 \
  32. -DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \
  33. -DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \
  34. -DKWSYS_CHAR_IS_SIGNED=1 \
  35. -DBUILD_CursesDialog=0 \
  36. -DKWSYS_LFS_WORKS=1 \
  37. -DCMake_ENABLE_DEBUGGER=0 \
  38. "
  39. do_install:append:class-nativesdk() {
  40. mkdir -p ${D}${datadir}/cmake
  41. install -m 644 ${UNPACKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
  42. mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d
  43. install -m 644 ${UNPACKDIR}/environment.d-cmake.sh ${D}${SDKPATHNATIVE}/environment-setup.d/cmake.sh
  44. # install cmake-setup.py to create arch-specific toolchain cmake file from template
  45. install -m 0644 ${UNPACKDIR}/SDKToolchainConfig.cmake.template ${D}${datadir}/cmake/
  46. install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d
  47. install -m 0755 ${UNPACKDIR}/cmake-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
  48. }
  49. FILES:${PN}:append:class-nativesdk = " ${SDKPATHNATIVE}"
  50. FILES:${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal ${datadir}/emacs ${datadir}/vim"
  51. FILES:${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}"
  52. FILES:${PN}-dev = ""
  53. BBCLASSEXTEND = "nativesdk"