blob: 155627317152f5ba3da28ed29a9cd541ae32916f [file] [log] [blame]
Andrew Geissler7e0e3c02022-02-25 20:34:39 +00001SUMMARY = "Software stack for TPM2."
2DESCRIPTION = "OSS implementation of the TCG TPM2 Software Stack (TSS2) "
3LICENSE = "BSD-2-Clause"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=500b2e742befc3da00684d8a1d5fd9da"
5SECTION = "tpm"
6
7DEPENDS = "autoconf-archive-native libgcrypt openssl"
8
9SRC_URI = "https://github.com/tpm2-software/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.gz \
10 file://fixup_hosttools.patch \
11 "
12
Patrick Williams03907ee2022-05-01 06:28:52 -050013SRC_URI[sha256sum] = "48305e4144dcf6d10f3b25b7bccf0189fd2d1186feafd8cd68c6b17ecf0d7912"
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000014
Patrick Williamsdb4c27e2022-08-05 08:10:29 -050015UPSTREAM_CHECK_URI = "https://github.com/tpm2-software/${BPN}/releases"
16
Andrew Geissler9aee5002022-03-30 16:27:02 +000017inherit autotools pkgconfig systemd useradd
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000018
19PACKAGECONFIG ??= ""
20PACKAGECONFIG[oxygen] = ",--disable-doxygen-doc, "
21PACKAGECONFIG[fapi] = "--enable-fapi,--disable-fapi,curl json-c "
22
23EXTRA_OECONF += "--enable-static --with-udevrulesdir=${nonarch_base_libdir}/udev/rules.d/"
24EXTRA_OECONF += "--runstatedir=/run"
25EXTRA_OECONF:remove = " --disable-static"
26
Andrew Geissler9aee5002022-03-30 16:27:02 +000027USERADD_PACKAGES = "${PN}"
28GROUPADD_PARAM:${PN} = "--system tss"
29USERADD_PARAM:${PN} = "--system -M -d /var/lib/tpm -s /bin/false -g tss tss"
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000030
Patrick Williams03907ee2022-05-01 06:28:52 -050031do_configure:prepend() {
32 # do not extract the version number from git
33 sed -i -e 's/m4_esyscmd_s(\[git describe --tags --always --dirty\])/${PV}/' ${S}/configure.ac
34}
35
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000036do_install:append() {
37 # Remove /run as it is created on startup
38 rm -rf ${D}/run
39}
40
41PROVIDES = "${PACKAGES}"
42PACKAGES = " \
43 ${PN} \
44 ${PN}-dbg \
45 ${PN}-doc \
46 libtss2-mu \
47 libtss2-mu-dev \
48 libtss2-mu-staticdev \
49 libtss2-tcti-device \
50 libtss2-tcti-device-dev \
51 libtss2-tcti-device-staticdev \
52 libtss2-tcti-mssim \
53 libtss2-tcti-mssim-dev \
54 libtss2-tcti-mssim-staticdev \
55 libtss2 \
56 libtss2-dev \
57 libtss2-staticdev \
58"
59
60FILES:libtss2-tcti-device = "${libdir}/libtss2-tcti-device.so.*"
61FILES:libtss2-tcti-device-dev = " \
62 ${includedir}/tss2/tss2_tcti_device.h \
63 ${libdir}/pkgconfig/tss2-tcti-device.pc \
64 ${libdir}/libtss2-tcti-device.so"
65FILES:libtss2-tcti-device-staticdev = "${libdir}/libtss2-tcti-device.*a"
66
67FILES:libtss2-tcti-mssim = "${libdir}/libtss2-tcti-mssim.so.*"
68FILES:libtss2-tcti-mssim-dev = " \
69 ${includedir}/tss2/tss2_tcti_mssim.h \
70 ${libdir}/pkgconfig/tss2-tcti-mssim.pc \
71 ${libdir}/libtss2-tcti-mssim.so"
72FILES:libtss2-tcti-mssim-staticdev = "${libdir}/libtss2-tcti-mssim.*a"
73
74FILES:libtss2-mu = "${libdir}/libtss2-mu.so.*"
75FILES:libtss2-mu-dev = " \
76 ${includedir}/tss2/tss2_mu.h \
77 ${libdir}/pkgconfig/tss2-mu.pc \
78 ${libdir}/libtss2-mu.so"
79FILES:libtss2-mu-staticdev = "${libdir}/libtss2-mu.*a"
80
81FILES:libtss2 = "${libdir}/libtss2*so.*"
82FILES:libtss2-dev = " \
83 ${includedir} \
84 ${libdir}/pkgconfig \
85 ${libdir}/libtss2*so"
86FILES:libtss2-staticdev = "${libdir}/libtss*a"
87
88FILES:${PN} = "\
89 ${libdir}/udev \
90 /var/lib/tpm2-tss \
91 /var/run \
92 ${nonarch_base_libdir}/udev \
93 ${sysconfdir}/tmpfiles.d \
94 ${sysconfdir}/tpm2-tss \
95 ${sysconfdir}/sysusers.d"
96
97RDEPENDS:libtss2 = "libgcrypt"