Add Kerberos MIT license for cc_sha1.c
[platform/core/security/tef-simulator.git] / packaging / tef-simulator.spec
1 Name:       tef-simulator
2 Summary:    TEF TrustZone simulator and it's utilities
3 Version:    0.0.1
4 Release:    1
5 Group:      Security
6 License:    Apache-2.0 and MIT and BSD
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    %{name}.manifest
9 ExcludeArch: armv6l armv7hl armv7l aarch64
10 BuildRequires: cmake
11 BuildRequires: boost-devel
12 BuildRequires: pkgconfig(dlog)
13 BuildRequires: pkgconfig(openssl)
14 BuildRequires: pkgconfig(cynara-client)
15 BuildRequires: pkgconfig(cynara-session)
16 BuildRequires: pkgconfig(cynara-creds-socket)
17 BuildRequires: pkgconfig(security-manager)
18 BuildRequires: pkgconfig(libsystemd-daemon)
19 BuildRequires: pkgconfig(tef-libteec)
20 PreReq: tef-libteec
21
22 %{?systemd_requires}
23
24 %define bin_dir %{?TZ_SYS_BIN:%TZ_SYS_BIN}%{!?TZ_SYS_BIN:%_bindir}
25 %define lib_dir %{?TZ_SYS_LIB:%TZ_SYS_LIB}%{!?TZ_SYS_LIB:%_libdir}
26 %define data_dir %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE}%{!?TZ_SYS_RO_SHARE:%_datadir}
27 %define include_dir %{?TZ_SYS_INCLUDE:%TZ_SYS_INCLUDE}%{!?TZ_SYS_INCLUDE:%_includedir}
28 %define tastore_dir /opt/tastore
29 %define link_tastore_dir %{lib_dir}/tastore
30
31 %define build_bin_dir %{buildroot}%{bin_dir}
32 %define build_lib_dir %{buildroot}%{lib_dir}
33 %define build_data_dir %{buildroot}%{data_dir}
34 %define build_include_dir %{buildroot}%{include_dir}
35 %define build_tastore_dir %{buildroot}%{tastore_dir}
36 %define build_unit_dir %{buildroot}%{_unitdir}
37
38 %define smack_domain_name System
39
40 %description
41 TEF Simulator provides a TrustZone simulated environment
42 which can be used on platforms not supporting ARM TrustZone
43 environment natively (ex. on an emulator).
44
45
46 %package -n %{name}-client
47 Summary:   TEF TrustZone simulator client for CA compilation
48 Group:     Security/Libraries
49 License:   Apache-2.0 and BSD-3-Clause
50 Requires: tef-simulator
51
52 %description -n %{name}-client
53 TEF Simulator Client contains a libteec library compatible
54 with TEF Simulator, required to build Client Applications.
55
56
57 %package -n %{name}-devkit
58 Summary:   TEF TrustZone simulator devkit for TA compilation
59 Group:     Security/Libraries
60 License:   Apache-2.0 and BSD-3-Clause
61
62 Requires: tef-simulator
63
64 %description -n %{name}-devkit
65 TEF Simulator Devkit provides a static library required to
66 build Trusted Applications, which are meant to work together
67 with TEF Simulator.
68
69 %prep
70 %setup -q
71 cp %{SOURCE1} .
72
73 %build
74 # cannot call cmake rpmbuild macro because of scripts removing libTEEStub.a, which is a part of devkit
75 cmake . \
76         -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:RELEASE} \
77         -DBIN_DIR=%{build_bin_dir} \
78         -DLIB_DIR=%{build_lib_dir} \
79         -DDATA_DIR=%{build_data_dir} \
80         -DINCLUDE_DIR=%{build_include_dir} \
81         -DTASTORE_DIR=%{build_tastore_dir} \
82         -DSYSTEMD_UNIT_DIR=%{build_unit_dir} \
83         -DSYSTEMD_CFG_BIN_DIR=%{bin_dir} \
84         -DPKGCFG_LIB_DIR=%{lib_dir} \
85         -DPKGCFG_PREFIX=/usr \
86         -DPKGCFG_VERSION=%{version} \
87         -DSMACK_DOMAIN_NAME=%{smack_domain_name} \
88         -DARCH=%{__isa_bits} \
89         -DTIZEN=1
90 make %{?jobs:-j%jobs}
91
92 %install
93 make install
94 cp rapidxml/license.txt LICENSE.MIT
95 cp include/include/LICENSE LICENSE.BSD
96
97 %pre
98
99 %post
100 ln -sf %{tastore_dir} %{link_tastore_dir}
101 tef-update.sh simulator
102 systemctl enable tef-simulator
103
104 %preun
105
106 %postun
107 if [ $1 = 0 ] ; then
108     tef-update.sh
109 fi
110
111 %files -n %{name}
112 %license LICENSE
113 %license LICENSE.MIT
114 %license LICENSE.Krb5-MIT
115 %manifest tef-simulator.manifest
116 %attr(111,security_fw,security_fw) %{bin_dir}/tef-simulator-daemon
117 %{lib_dir}/libtef-simulator-ssflib.so
118 %attr(770,root,security_fw) %{tastore_dir}
119 %attr(444,security_fw,security_fw) %{_unitdir}/tef-simulator.service
120 %attr(444,security_fw,security_fw) %{_unitdir}/tef-simulator.socket
121 %attr(755,security_fw,security_fw) %{lib_dir}/tef/simulator/libteec.so
122
123 %files -n %{name}-devkit
124 %license LICENSE
125 %license LICENSE.MIT
126 %license LICENSE.BSD
127 %{bin_dir}/TA_PackageBuilder.sh
128 %{bin_dir}/TAPackageMaker
129 %{lib_dir}/libTEEStub.a
130 %{lib_dir}/libtef-simulator-log.a
131 %{lib_dir}/libtef-simulator-osal.a
132 %{include_dir}/tee_internal_api.h
133 %{lib_dir}/pkgconfig/tef-simulator-devkit.pc
134 %{data_dir}/cmake/Modules/TEFSimulatorDevkit.cmake