1 %define certsvc_test_build 0
4 Summary: Certification service
7 Group: Security/Libraries
9 Source0: %{name}-%{version}.tar.gz
10 Source1001: %{name}.manifest
11 Requires(post): findutils
13 BuildRequires: pkgconfig(dlog)
14 BuildRequires: pkgconfig(openssl)
15 BuildRequires: pkgconfig(libpcrecpp)
16 BuildRequires: pkgconfig(xmlsec1)
17 BuildRequires: pkgconfig(libxml-2.0)
18 BuildRequires: pkgconfig(libxslt)
19 BuildRequires: pkgconfig(db-util)
20 BuildRequires: pkgconfig(libsystemd-daemon)
21 BuildRequires: pkgconfig(key-manager)
22 BuildRequires: pkgconfig(libtzplatform-config)
23 BuildRequires: pkgconfig(libsystemd-journal)
24 BuildRequires: boost-devel
25 Requires: pkgconfig(libtzplatform-config)
26 Requires: ca-certificates-tizen
27 Requires: ca-certificates-mozilla
28 Requires: ca-certificates
35 Summary: Certification service (development files)
36 Group: Development/Libraries
37 Requires: %{name} = %{version}-%{release}
40 Certification service (development files)
42 %if 0%{?certsvc_test_build}
44 Summary: Certification service (tests)
45 Group: Security/Testing
46 BuildRequires: pkgconfig(dpl-test-efl)
48 Requires: ca-certificates-tizen
49 Requires: %{name} = %{version}-%{release}
52 Certification service (tests)
60 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
61 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
62 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
64 export CFLAGS="$CFLAGS -DTIZEN_ENGINEER_MODE"
65 export CXXFLAGS="$CXXFLAGS -DTIZEN_ENGINEER_MODE"
66 export FFLAGS="$FFLAGS -DTIZEN_ENGINEER_MODE"
69 export CFLAGS="$CFLAGS -DTIZEN_EMULATOR_MODE"
70 export CXXFLAGS="$CXXFLAGS -DTIZEN_EMULATOR_MODE"
71 export FFLAGS="$FFLAGS -DTIZEN_EMULATOR_MODE"
74 %{!?build_type:%define build_type "Release"}
75 cmake . -DPREFIX=%{_prefix} \
76 -DEXEC_PREFIX=%{_exec_prefix} \
79 -DINCLUDEDIR=%{_includedir} \
80 -DTZ_SYS_SHARE=%TZ_SYS_SHARE \
81 -DTZ_SYS_BIN=%TZ_SYS_BIN \
82 -DTZ_SYS_ETC=%TZ_SYS_ETC \
83 -DTZ_SYS_RO_WRT_ENGINE=%TZ_SYS_RO_WRT_ENGINE \
84 -DTZ_SYS_DB=%TZ_SYS_DB \
85 %if 0%{?certsvc_test_build}
86 -DCERTSVC_TEST_BUILD=1 \
87 -DTZ_SYS_RO_APP=%TZ_SYS_RO_APP \
89 -DCMAKE_BUILD_TYPE=%{build_type} \
90 -DSYSTEMD_UNIT_DIR=%{_unitdir}
96 mkdir -p %{buildroot}%{TZ_SYS_SHARE}/license
97 cp LICENSE %{buildroot}%{TZ_SYS_SHARE}/license/%{name}
99 mkdir -p %{buildroot}%{TZ_SYS_SHARE}/cert-svc/certs/user
100 mkdir -p %{buildroot}%{TZ_SYS_SHARE}/cert-svc/certs/trusteduser
101 mkdir -p %{buildroot}%{TZ_SYS_SHARE}/cert-svc/pkcs12
102 mkdir -p %{buildroot}%{TZ_SYS_SHARE}/cert-svc/dbspace
105 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
106 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants
107 ln -s ../cert-server.service %{buildroot}%{_unitdir}/multi-user.target.wants/
108 ln -s ../cert-server.socket %{buildroot}%{_unitdir}/sockets.target.wants/
110 ln -sf %{TZ_SYS_ETC}/ssl/certs %{buildroot}%{TZ_SYS_SHARE}/cert-svc/certs/ssl
117 systemctl stop cert-server.service
122 systemctl daemon-reload
124 systemctl restart cert-server.service
127 echo "make ca-certificate.crt"
128 %{TZ_SYS_BIN}/make-ca-certificate.sh
129 rm %{TZ_SYS_BIN}/make-ca-certificate.sh
131 echo "create certs-meta.db"
132 rm -rf %{TZ_SYS_SHARE}/cert-svc/dbspace/certs-meta.db
133 %{TZ_SYS_BIN}/cert_svc_create_clean_store_db.sh %{TZ_SYS_SHARE}/cert-svc/cert_svc_store_db.sql
134 %{TZ_SYS_BIN}/initialize_store_db.sh
135 if [[ -e %{TZ_SYS_SHARE}/cert-svc/dbspace/certs-meta.db ]]; then
136 cat %{TZ_SYS_SHARE}/cert-svc/root-cert.sql | sqlite3 %{TZ_SYS_SHARE}/cert-svc/dbspace/certs-meta.db
138 rm %{TZ_SYS_SHARE}/cert-svc/cert_svc_store_db.sql
139 rm %{TZ_SYS_SHARE}/cert-svc/root-cert.sql
140 rm %{TZ_SYS_BIN}/cert_svc_create_clean_store_db.sh
141 rm %{TZ_SYS_BIN}/initialize_store_db.sh
147 %defattr(644,system,system,755)
148 %manifest %{name}.manifest
149 # Read only files install as root
150 %attr(755,root,root) %{TZ_SYS_BIN}/cert-server
151 %attr(644,root,root) %{_unitdir}/cert-server.service
152 %attr(644,root,root) %{_unitdir}/cert-server.socket
153 %attr(777,root,root) %{_unitdir}/multi-user.target.wants/cert-server.service
154 %attr(777,root,root) %{_unitdir}/sockets.target.wants/cert-server.socket
155 %attr(755,root,root) %{_libdir}/libcert-svc.so.*
156 %attr(755,root,root) %{_libdir}/libcert-svc-vcore.so.*
157 %attr(644,root,root) %{TZ_SYS_SHARE}/license/%{name}
158 %attr(644,root,root) %{TZ_SYS_RO_WRT_ENGINE}/schema.xsd
159 %attr(644,root,root) %{TZ_SYS_SHARE}/cert-svc/cert_svc_store_db.sql
160 %attr(755,root,root) %{TZ_SYS_BIN}/cert_svc_create_clean_store_db.sh
161 %attr(755,root,root) %{TZ_SYS_BIN}/make-ca-certificate.sh
162 %attr(755,root,root) %{TZ_SYS_BIN}/initialize_store_db.sh
164 # Resource files install as system
165 %{TZ_SYS_SHARE}/cert-svc/certs/user
166 %{TZ_SYS_SHARE}/cert-svc/certs/trusteduser
167 %{TZ_SYS_SHARE}/cert-svc/pkcs12
168 %{TZ_SYS_SHARE}/cert-svc/dbspace
169 %{TZ_SYS_SHARE}/cert-svc/certs/ssl
173 %defattr(-,root,root,-)
175 %{_libdir}/pkgconfig/*
176 %{_libdir}/libcert-svc.so
177 %{_libdir}/libcert-svc-vcore.so
179 %if 0%{?certsvc_test_build}
181 %defattr(644,system,system,755)
182 %attr(755,root,root) %{TZ_SYS_BIN}/cert-svc-test*
183 %{TZ_SYS_RO_APP}/widget/tests/vcore_widget_uncompressed/*
184 %{TZ_SYS_RO_APP}/widget/tests/vcore_widget_uncompressed_negative_hash/*
185 %{TZ_SYS_RO_APP}/widget/tests/vcore_widget_uncompressed_negative_signature/*
186 %{TZ_SYS_RO_APP}/widget/tests/vcore_widget_uncompressed_negative_certificate/*
187 %{TZ_SYS_RO_APP}/widget/tests/vcore_widget_uncompressed_partner/*
188 %{TZ_SYS_RO_APP}/widget/tests/vcore_widget_uncompressed_partner_operator/*
189 %{TZ_SYS_RO_APP}/widget/tests/vcore_keys/*
190 %{TZ_SYS_RO_APP}/widget/tests/vcore_certs/*
191 %{TZ_SYS_RO_APP}/widget/tests/vcore_config/*
192 %{TZ_SYS_RO_APP}/widget/tests/pkcs12/*
193 %{TZ_SYS_RO_APP}/widget/tests/reference/*
194 %{TZ_SYS_ETC}/ssl/certs/8956b9bc.0
195 %{TZ_SYS_SHARE}/ca-certificates/wac/root_cacert0.pem
196 %{TZ_SYS_SHARE}/cert-svc/pkcs12/*
197 %{TZ_SYS_SHARE}/cert-svc/cert-type/*
198 %{TZ_SYS_SHARE}/cert-svc/tests/orig_c/data/caflag/*
199 %{TZ_SYS_SHARE}/cert-svc/certs/root_ca*.der
200 %{TZ_SYS_SHARE}/cert-svc/tests/*