2a026ca501
When systemd and tpm2-tss with fapi support are enabled, the fakeroot
script fail with:
<stdin>:35: Failed to resolve user 'tss': No such process.
When fapi support is enabled, tpm2-tss package install additional
configuration files that are expecting tss user and group exist [1].
/etc/sysusers.d/tpm2-tss.conf
/etc/tmpfiles.d/tpm2-tss-fapi.conf
The build fail in the fakeroot environment while handling tmpfiles
installed by tpm2-tss with fapi by host-systemd.
tss user and group is currently created by the tpm2-abrmd package but
tpm2-tss package also provide a udev rule file tpm-udev.rules [2] that
set the ownership of dev nodes /dev/tpmX and /dev/tpmrmX to tss
user/group. So tpm2-tss package must define TPM2_TSS_USERS to create
tss user and group, not tpm2-abrmd package.
So, move TPM2_ABRMD_USERS to TPM2_TSS_USERS.
Note: tpm2-abrmd is nowadays deprecated since the in-kernel Resource
Manager (available since kernel 4.12) is preferred [3].
[1] https://github.com/tpm2-software/tpm2-tss/blob/4.1.3/INSTALL.md?plain=1#L184
[2] https://github.com/tpm2-software/tpm2-tss/blob/4.1.3/dist/tpm-udev.rules
[3] https://github.com/tpm2-software/tpm2-abrmd/blob/3.0.0/README.md?plain=1#L39
Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 2cdd3d1ccf
)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
33 lines
1.2 KiB
Makefile
33 lines
1.2 KiB
Makefile
################################################################################
|
|
#
|
|
# tpm2-abrmd
|
|
#
|
|
################################################################################
|
|
|
|
TPM2_ABRMD_VERSION = 2.3.3
|
|
TPM2_ABRMD_SITE = https://github.com/tpm2-software/tpm2-abrmd/releases/download/$(TPM2_ABRMD_VERSION)
|
|
TPM2_ABRMD_LICENSE = BSD-2-Clause
|
|
TPM2_ABRMD_LICENSE_FILES = LICENSE
|
|
TPM2_ABRMD_SELINUX_MODULES = tpm2
|
|
TPM2_ABRMD_INSTALL_STAGING = YES
|
|
TPM2_ABRMD_DEPENDENCIES = libglib2 tpm2-tss host-pkgconf
|
|
TPM2_ABRMD_CONF_OPTS = \
|
|
--disable-defaultflags \
|
|
--with-systemdsystemunitdir=$(if $(BR2_INIT_SYSTEMD),/usr/lib/systemd/system,no) \
|
|
--with-udevrulesdir=$(if $(BR2_PACKAGE_HAS_UDEV),/usr/lib/udev/rules.d,no)
|
|
|
|
# uses C99 code but forgets to pass -std=c99 when --disable-defaultflags is used
|
|
TPM2_ABRMD_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -std=c99"
|
|
|
|
define TPM2_ABRMD_INSTALL_INIT_SYSTEMD
|
|
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(TARGET_DIR) \
|
|
install-systemdpresetDATA install-systemdsystemunitDATA
|
|
endef
|
|
|
|
define TPM2_ABRMD_INSTALL_INIT_SYSV
|
|
$(INSTALL) -D -m 0755 $(TPM2_ABRMD_PKGDIR)/S80tpm2-abrmd \
|
|
$(TARGET_DIR)/etc/init.d/S80tpm2-abrmd
|
|
endef
|
|
|
|
$(eval $(autotools-package))
|