File tpm2-0-tss.spec of Package tpm2-0-tss

#
# spec file for package tpm2-0-tss
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           tpm2-0-tss
Version:        1.3.0
Release:        0
Summary:        Intel's TCG Software Stack access libraries for TPM 2.0 chips
License:        BSD-2-Clause
Group:          Productivity/Security
Url:            https://github.com/tpm2-software/tpm2-tss
Source0:        https://github.com/tpm2-software/tpm2-tss/archive/%{version}.tar.gz
Source2:        baselibs.conf
Patch0:         version_fix.patch
BuildRequires:  autoconf-archive
BuildRequires:  automake
BuildRequires:  gcc-c++
BuildRequires:  libtool
BuildRequires:  pkg-config
Requires(pre):  pwdutils
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
The tpm2-0-tss package provides a TPM 2.0 TSS implementation. This
implementation is developed by INTEL. This package contains the libraries,
see the tpm2.0-abrmd package for the resource manager daemon, tpm2.0-tools for
utilities.

%package devel
Summary:        Development headers for the Intel TSS library for TPM 2.0 chips
Group:          Development/Libraries/C and C++
Requires:       glibc-devel
Requires:       libsapi0 = %{version}
Requires:       libtcti-device0 = %{version}
Requires:       libtcti-socket0 = %{version}
Requires:       tpm2-0-tss = %{version}

%description devel
This package provides the development files for the libsapi library
for accessing TPM 2.0 chips.

%package -n libsapi0
Summary:        TPM2 System API library
# Non-SLPP package name from earlier
Group:          System/Libraries
Obsoletes:      libtss2 < %version-%release
Provides:       libtss2 = %version-%release

%description -n libsapi0
This package provides the library to access the TSS (TCG Software Stack) for
accessing TPM 2.0 chips.

%package -n libtcti-device0
Summary:        TCTI library for communicating with a TPM device node
Group:          System/Libraries

%description -n libtcti-device0
TPM Command Transmission Interface library for communicating with a
TPM device node.

%package -n libtcti-socket0
Summary:        TCTI library for communicating with a TPM over a socket
Group:          System/Libraries

%description -n libtcti-socket0
TPM Command Transmission Interface library for communicating with a
TPM over a socket.

%prep
%setup -q -n tpm2-tss-%{version}
# TODO: XX:
# this fixes the autoconf version number which is determined via git and
# doesn't work in OBS. The distribution tarball may fix this in the future for
# us. If we don'T do this then the pkg-config *.pc files don't contain a
# version number and dependent packages like tpm2.0-tools fail to build.
#
# the version number needs to be fixed with each version change!
%patch0 -p1

%build
# we are still using the source tarball here. there is a release tarball for
# 1.3.0, but some files like README and CHANGELOG are missing there. The next
# release should work for us.
bash bootstrap
%configure --disable-static
make %{?_smp_mflags} PTHREAD_LDFLAGS=-pthread

%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print

%post -n libsapi0 -p /sbin/ldconfig
%postun -n libsapi0 -p /sbin/ldconfig
%post -n libtcti-device0 -p /sbin/ldconfig
%postun -n libtcti-device0 -p /sbin/ldconfig
%post -n libtcti-socket0 -p /sbin/ldconfig
%postun -n libtcti-socket0 -p /sbin/ldconfig

%files
%defattr(-,root,root)
%doc *.md LICENSE
%{_mandir}/man3/*
%{_mandir}/man7/tcti-*

%files devel
%defattr(-,root,root)
%{_includedir}/tcti
%{_includedir}/sapi
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc

%files -n libsapi0
%defattr(-,root,root)
%{_libdir}/libsapi.so.*

%files -n libtcti-device0
%defattr(-,root,root)
%{_libdir}/libtcti-device.so.*

%files -n libtcti-socket0
%defattr(-,root,root)
%{_libdir}/libtcti-socket.so.*

%changelog
openSUSE Build Service is sponsored by