summaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.6.3.1.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-networking/recipes-connectivity/mbedtls/mbedtls_3.6.3.1.bb')
-rw-r--r--meta-networking/recipes-connectivity/mbedtls/mbedtls_3.6.3.1.bb78
1 files changed, 78 insertions, 0 deletions
diff --git a/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.6.3.1.bb b/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.6.3.1.bb
new file mode 100644
index 0000000000..0b64d661c4
--- /dev/null
+++ b/meta-networking/recipes-connectivity/mbedtls/mbedtls_3.6.3.1.bb
@@ -0,0 +1,78 @@
1SUMMARY = "Lightweight crypto and SSL/TLS library"
2DESCRIPTION = "mbedtls is a lean open source crypto library \
3for providing SSL and TLS support in your programs. It offers \
4an intuitive API and documented header files, so you can actually \
5understand what the code does. It features: \
6 \
7 - Symmetric algorithms, like AES, Blowfish, Triple-DES, DES, ARC4, \
8 Camellia and XTEA \
9 - Hash algorithms, like SHA-1, SHA-2, RIPEMD-160 and MD5 \
10 - Entropy pool and random generators, like CTR-DRBG and HMAC-DRBG \
11 - Public key algorithms, like RSA, Elliptic Curves, Diffie-Hellman, \
12 ECDSA and ECDH \
13 - SSL v3 and TLS 1.0, 1.1 and 1.2 \
14 - Abstraction layers for ciphers, hashes, public key operations, \
15 platform abstraction and threading \
16"
17
18HOMEPAGE = "https://tls.mbed.org/"
19
20LICENSE = "Apache-2.0 | GPL-2.0-or-later"
21LIC_FILES_CHKSUM = "file://LICENSE;md5=379d5819937a6c2f1ef1630d341e026d"
22
23SECTION = "libs"
24
25SRC_URI = "git://github.com/Mbed-TLS/mbedtls.git;protocol=https;branch=main;tag=v${PV} \
26 file://run-ptest \
27 "
28
29SRCREV = "6fb5120fde4ab889bea402f5ab230c720b0a3b9a"
30
31UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
32
33inherit cmake update-alternatives ptest
34
35PACKAGECONFIG ??= "shared-libs programs ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
36PACKAGECONFIG[shared-libs] = "-DUSE_SHARED_MBEDTLS_LIBRARY=ON,-DUSE_SHARED_MBEDTLS_LIBRARY=OFF"
37PACKAGECONFIG[programs] = "-DENABLE_PROGRAMS=ON,-DENABLE_PROGRAMS=OFF"
38PACKAGECONFIG[werror] = "-DMBEDTLS_FATAL_WARNINGS=ON,-DMBEDTLS_FATAL_WARNINGS=OFF"
39# Make X.509 and TLS calls use PSA
40# https://github.com/Mbed-TLS/mbedtls/blob/development/docs/use-psa-crypto.md
41PACKAGECONFIG[psa] = ""
42PACKAGECONFIG[tests] = "-DENABLE_TESTING=ON,-DENABLE_TESTING=OFF"
43
44# For now the only way to enable PSA is to explicitly pass a -D via CFLAGS
45CFLAGS:append = "${@bb.utils.contains('PACKAGECONFIG', 'psa', ' -DMBEDTLS_USE_PSA_CRYPTO', '', d)}"
46
47PROVIDES += "polarssl"
48RPROVIDES:${PN} = "polarssl"
49
50PACKAGES =+ "${PN}-programs"
51FILES:${PN}-programs = "${bindir}/"
52
53ALTERNATIVE:${PN}-programs = "${@bb.utils.contains('PACKAGECONFIG', 'programs', 'hello', '', d)}"
54ALTERNATIVE_LINK_NAME[hello] = "${bindir}/hello"
55
56BBCLASSEXTEND = "native nativesdk"
57
58CVE_PRODUCT = "mbed_tls"
59
60# Strip host paths from autogenerated test files
61do_compile:append() {
62 sed -i 's+${S}/++g' ${B}/tests/*.c 2>/dev/null || :
63 sed -i 's+${B}/++g' ${B}/tests/*.c 2>/dev/null || :
64}
65
66# Export source files/headers needed by Arm Trusted Firmware
67sysroot_stage_all:append() {
68 sysroot_stage_dir "${S}/library" "${SYSROOT_DESTDIR}/usr/share/mbedtls-source/library"
69 sysroot_stage_dir "${S}/include" "${SYSROOT_DESTDIR}/usr/share/mbedtls-source/include"
70}
71
72do_install_ptest () {
73 install -d ${D}${PTEST_PATH}/tests
74 install -d ${D}${PTEST_PATH}/framework
75 cp -f ${B}/tests/test_suite_* ${D}${PTEST_PATH}/tests/
76 find ${D}${PTEST_PATH}/tests/ -type f -name "*.c" -delete
77 cp -fR ${S}/framework/data_files ${D}${PTEST_PATH}/framework/
78}