| require cmake.inc |
| inherit native |
| |
| DEPENDS += "bzip2-replacement-native xz-native zlib-native ncurses-native zstd-native openssl-native" |
| |
| SRC_URI += "file://OEToolchainConfig.cmake \ |
| file://environment.d-cmake.sh \ |
| " |
| |
| LICENSE:append = " & BSD-1-Clause & MIT & BSD-2-Clause & curl & Apache-2.0" |
| LIC_FILES_CHKSUM:append = " \ |
| file://Utilities/cmjsoncpp/LICENSE;md5=5d73c165a0f9e86a1342f32d19ec5926 \ |
| file://Utilities/cmlibarchive/COPYING;md5=7ce08437ff7f5e24d72e666313ae4084 \ |
| file://Utilities/cmexpat/COPYING;md5=f4fedd6116da0e171f7cb4d2923d7ac2 \ |
| file://Utilities/cmlibrhash/COPYING;md5=a8c2a557a5c53b1c12cddbee98c099af \ |
| file://Utilities/cmlibuv/LICENSE;md5=74b6f2f7818a4e3a80d03556f71b129b \ |
| file://Utilities/cmcurl/COPYING;md5=0515352b285b9c3f66464b135c9c0fdc \ |
| file://Utilities/cmcppdap/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \ |
| " |
| |
| B = "${WORKDIR}/build" |
| do_configure[cleandirs] = "${B}" |
| |
| EXTRA_OECMAKE += "\ |
| -DCMAKE_LIBRARY_PATH=${STAGING_LIBDIR_NATIVE} \ |
| -DBUILD_CursesDialog=1 \ |
| -DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=0 \ |
| -DCMAKE_USE_SYSTEM_LIBRARY_CPPDAP=0 \ |
| -DCMAKE_USE_SYSTEM_LIBRARY_LIBARCHIVE=0 \ |
| -DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \ |
| -DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \ |
| -DCMAKE_USE_SYSTEM_LIBRARY_EXPAT=0 \ |
| -DCMAKE_USE_SYSTEM_LIBRARY_CURL=0 \ |
| -DCMAKE_DISABLE_FIND_PACKAGE_Libidn2=ON \ |
| -DENABLE_ACL=0 -DHAVE_ACL_LIBACL_H=0 \ |
| -DHAVE_SYS_ACL_H=0 \ |
| " |
| |
| # Ensure e2fsprogs isn't found on the host to remove a build dependency and reproducible builds. |
| EXTRA_OECMAKE += "-DHAVE_EXT2FS_EXT2_FS_H=0 -DHAVE_WORKING_EXT2_IOC_GETFLAGS=0" |
| |
| do_configure () { |
| ${S}/bootstrap --verbose --prefix=${prefix} \ |
| ${@oe.utils.parallel_make_argument(d, '--parallel=%d')} \ |
| ${@bb.utils.contains('CCACHE', 'ccache ', '--enable-ccache', '', d)} \ |
| -- ${EXTRA_OECMAKE} |
| } |
| |
| do_compile() { |
| oe_runmake |
| } |
| |
| do_install() { |
| oe_runmake 'DESTDIR=${D}' install |
| |
| # The following codes are here because eSDK needs to provide compatibility |
| # for SDK. That is, eSDK could also be used like traditional SDK. |
| mkdir -p ${D}${datadir}/cmake |
| install -m 644 ${UNPACKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/ |
| mkdir -p ${D}${base_prefix}/environment-setup.d |
| install -m 644 ${UNPACKDIR}/environment.d-cmake.sh ${D}${base_prefix}/environment-setup.d/cmake.sh |
| |
| # Help docs create tons of files in the native sysroot and aren't needed there |
| rm -rf ${D}${datadir}/cmake-*/Help |
| } |
| |
| do_compile[progress] = "percent" |
| |
| SYSROOT_DIRS_NATIVE += "${datadir}/cmake ${base_prefix}/environment-setup.d" |