blob: 1102bb95a56b4449c30a521ef8a123c361af8187 [file] [log] [blame]
Andrew Geisslerbffdb3e2020-08-21 16:13:29 -05001SUMMARY = "BearSSL is an implementation of the SSL/TLS protocol (RFC 5246) written in C"
2DESCRIPTION = "BearSSL is an implementation of the SSL/TLS protocol (RFC \
35246) written in C. It aims at offering the following features: \
4 * Be correct and secure. In particular, insecure protocol versions and \
5 choices of algorithms are not supported, by design; cryptographic \
6 algorithm implementations are constant-time by default. \
7 * Be small, both in RAM and code footprint. For instance, a minimal \
8 server implementation may fit in about 20 kilobytes of compiled code \
9 and 25 kilobytes of RAM. \
10 * Be highly portable. BearSSL targets not only “big” operating systems \
11 like Linux and Windows, but also small embedded systems and even special \
12 contexts like bootstrap code. \
13 * Be feature-rich and extensible. SSL/TLS has many defined cipher suites \
14 and extensions; BearSSL should implement most of them, and allow extra \
15 algorithm implementations to be added afterwards, possibly from third \
16 parties."
17HOMEPAGE = "https://bearssl.org"
18
19SECTION = "libs"
20
Andrew Geisslerd688a012020-09-18 13:36:00 -050021inherit lib_package
22
Andrew Geisslerbffdb3e2020-08-21 16:13:29 -050023LICENSE = "MIT"
24LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=1fc37e1037ae673975fbcb96a98f7191"
25
26SRCREV = "8ef7680081c61b486622f2d983c0d3d21e83caad"
27SRC_URI = "git://www.bearssl.org/git/BearSSL;protocol=https;nobranch=1 \
28 file://0001-conf-Unix.mk-remove-fixed-command-definitions.patch \
29 file://0002-test-test_x509.c-fix-potential-overflow-issue.patch \
Andrew Geisslerd688a012020-09-18 13:36:00 -050030 file://0001-make-Pass-LDFLAGS-when-building-shared-objects.patch \
Andrew Geisslerbffdb3e2020-08-21 16:13:29 -050031 "
32
33# without compile errors like
34# <..>/ld: build/obj/ghash_pclmul.o: warning: relocation against `br_ghash_pclmul' in read-only section `.text'
35CFLAGS += "-fPIC"
36
37S = "${WORKDIR}/git"
38B = "${S}"
Andrew Geisslerd688a012020-09-18 13:36:00 -050039
40do_install() {
41 mkdir -p ${D}/${bindir} ${D}/${libdir}
42 install -m 0644 ${B}/build/brssl ${D}/${bindir}
43 install -m 0644 ${B}/build/libbearssl.so ${D}/${libdir}/libbearssl.so.6.0.0
44 ln -s libbearssl.so.6.0.0 ${D}/${libdir}/libbearssl.so.6
45 ln -s libbearssl.so.6.0.0 ${D}/${libdir}/libbearssl.so
46}