ibmtss/ibmtss.spec

112 lines
4.7 KiB
RPMSpec
Raw Normal View History

#
# spec file for package ibmtss
#
# Copyright (c) 2017 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/
#
#
%define suite ibmtss
Name: ibmtss
Version: 1045
Release: 0
Summary: IBM's TPM 2.0 TSS
License: BSD-3-Clause
Group: Productivity/Security
Url: https://sourceforge.net/projects/ibmtpm20tss
Source: https://sourceforge.net/projects/ibmtpm20tss/files/ibmtss%{version}.tar.gz
Patch: makefile.patch
Source1: %{name}
Source2: %{name}.1
BuildRequires: libopenssl-devel
%ifnarch s390x s390 ppc64 ppc
BuildRequires: ibmswtpm2
%define test 1
%else
%define test ""
%endif
Recommends: %{name}-base = %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This is a user space TCG Software Stack (TSS) for TPM 2.0. It
implements the functionality equivalent to the TCG TSS working
group's planned ESAPI, SAPI, and TCTI APIs.
It comes with over 100 "TPM tools" that can be used for scripted
apps, rapid prototyping, education, and debugging.
%package base
Summary: IBM's TPM 2.0 TSS shared files
Group: Productivity/Security
BuildArch: noarch
%description base
Includes IBM's TPM 2.0 TSS certificates and policy files.
%package devel
Summary: IBM's TPM 2.0 TSS headers
Group: Development/Libraries/C and C++
Requires: %{suite} = %{version}
%description devel
Includes IBM's TPM 2.0 TSS C header files
%prep
%setup -c -q
%patch -p 1
%build
cd utils
[ -n "%{test}" ] && { %{_libexecdir}/%{suite}/tpm_server & tpm_server="$!" ; }
CCFLAGS="%{optflags}" make LNAFLAGS="-Wl,-rpath,%{_libexecdir}/%{suite}" %{?_smp_mflags}
testfailed=0
[ -n "%{test}" ] && { TPM_INTERFACE_TYPE=socsim LD_LIBRARY_PATH=. ./reg.sh || testfailed=$? ; }
[ -n "%{test}" ] && kill "$tpm_server" || :
[ "$testfailed" -eq 0 ]
%install
cd utils
install -m 755 -D -t %{buildroot}/%{_libexecdir}/%{suite} libtss.so
install -m 755 -D -t %{buildroot}/%{_libexecdir}/%{suite} \
activatecredential eventextend imaextend certify certifycreation changeeps changepps clear clearcontrol clockrateadjust clockset commit contextload contextsave create createloaded createprimary dictionaryattacklockreset dictionaryattackparameters duplicate eccparameters ecephemeral encryptdecrypt eventsequencecomplete evictcontrol flushcontext getcommandauditdigest getcapability getrandom getsessionauditdigest gettime hashsequencestart hash hierarchycontrol hierarchychangeauth hmac hmacstart import importpem load loadexternal makecredential nvcertify nvchangeauth nvdefinespace nvextend nvglobalwritelock nvincrement nvread nvreadlock nvreadpublic nvsetbits nvundefinespace nvundefinespacespecial nvwrite nvwritelock objectchangeauth pcrallocate pcrevent pcrextend pcrread pcrreset policyauthorize policyauthvalue policycommandcode policycphash policycountertimer policygetdigest policymaker policymakerpcr policyauthorizenv policynv policynvwritten policyor policypassword policypcr policyrestart policysigned policysecret policytemplate policyticket quote powerup readclock readpublic returncode rewrap rsadecrypt rsaencrypt sequenceupdate sequencecomplete setprimarypolicy shutdown sign startauthsession startup stirrandom unseal verifysignature signapp writeapp timepacket createek ntc2getconfig ntc2preconfig ntc2lockconfig
mkdir -p %{buildroot}/%{_datadir}/%{suite}
cp -a policies certificates %{buildroot}/%{_datadir}/%{suite}
mkdir -p %{buildroot}/%{_includedir}/%{suite}
cp -a tss2 *.h %{buildroot}/%{_includedir}/%{suite}
install -p -D -m 755 %{SOURCE1} %{buildroot}/%{_bindir}/%{suite}
install -p -D -m 644 %{SOURCE1}.1 %{buildroot}/%{_mandir}/man1/%{suite}.1
sed -i -e s,%UTILDIR%,%{_libexecdir}/%{suite},g -e s,%DATADIR%,%{_datadir}/%{suite},g -e s,%DOCDIR%,%{_docdir}/%{name},g \
%{buildroot}/%{_bindir}/%{suite} %{buildroot}/%{_mandir}/man1/%{suite}.1
%files
%defattr(-,root,root)
%doc ibmtss.doc LICENSE
%{_libexecdir}/%{suite}
%{_bindir}/%{suite}
%{_mandir}/man1/%{suite}.1*
%files base
%defattr(-,root,root)
%doc LICENSE
%{_datadir}/%{suite}
%files devel
%defattr(-,root,root)
%doc LICENSE
%{_includedir}/%{suite}
%changelog