1 Summary: A general purpose content screening and reputation solution
5 Source: %{name}-%{version}.tar.gz
6 License: Apache-2.0 and BSL-1.0
7 Group: Security/Service
10 BuildRequires: pkgconfig(dlog)
11 BuildRequires: pkgconfig(libsystemd-daemon)
12 BuildRequires: pkgconfig(vconf)
13 BuildRequires: pkgconfig(elementary)
14 BuildRequires: pkgconfig(sqlite3)
15 BuildRequires: pkgconfig(pkgmgr)
16 BuildRequires: pkgconfig(glib-2.0)
17 Requires: lib%{name}-common = %{version}-%{release}
21 General purpose content screening and reputation solution. Can scan
22 file contents and checking url to prevent malicious items.
24 %global service_name csr
25 %global bin_dir %{_bindir}
26 %global sbin_dir /sbin
27 %global ro_data_dir %{_datadir}
28 %global rw_data_dir /opt/share
29 %global ro_db_dir %{ro_data_dir}/%{service_name}/dbspace
30 %global rw_db_dir %{rw_data_dir}/%{service_name}/dbspace
31 %global sample_engine_ro_res_dir %{ro_data_dir}/%{service_name}/engine
32 %global sample_engine_rw_working_dir %{rw_data_dir}/%{service_name}/engine
33 %global sample_engine_dir %{_libdir}
34 %global test_dir %{rw_data_dir}/%{service_name}-test
36 %package -n lib%{name}-common
37 Summary: Common library package for %{name}
39 Group: Security/Libraries
40 Requires: %{sbin_dir}/ldconfig
41 Requires: %{sbin_dir}/ldconfig
43 %description -n lib%{name}-common
44 csr-framework common library package.
46 %package -n lib%{name}-client
47 Summary: Client library package for %{name}
49 Group: Security/Libraries
50 BuildRequires: pkgconfig(capi-base-common)
51 Requires: %{name} = %{version}-%{release}
52 Requires: %{sbin_dir}/ldconfig
53 Requires: %{sbin_dir}/ldconfig
55 %description -n lib%{name}-client
56 csr-framework client library package.
59 Summary: Development files for %{name}
61 Group: Security/Development
62 BuildRequires: pkgconfig(capi-base-common)
63 Requires: %{name} = %{version}-%{release}
66 csr-framework developemnt files including headers and pkgconfig file.
69 Summary: test program for %{name}
70 License: Apache-2.0 and BSL-1.0
71 Group: Security/Testing
72 BuildRequires: boost-devel
73 BuildRequires: pkgconfig(pkgmgr-info)
74 Requires: %{name} = %{version}
77 test program of csr-framework
84 -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:RELEASE} \
85 -DCMAKE_VERBOSE_MAKEFILE=ON \
86 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
87 -DSERVICE_NAME=%{service_name} \
88 -DVERSION=%{version} \
89 -DINCLUDE_INSTALL_DIR:PATH=%{_includedir} \
90 -DBIN_DIR:PATH=%{bin_dir} \
91 -DSYSTEMD_UNIT_DIR=%{_unitdir} \
92 -DSYSTEMD_UNIT_USER_DIR=%{_unitdir_user} \
93 -DRO_DBSPACE:PATH=%{ro_db_dir} \
94 -DRW_DBSPACE:PATH=%{rw_db_dir} \
95 -DSAMPLE_ENGINE_RO_RES_DIR:PATH=%{sample_engine_ro_res_dir} \
96 -DSAMPLE_ENGINE_RW_WORKING_DIR:PATH=%{sample_engine_rw_working_dir} \
97 -DSAMPLE_ENGINE_DIR:PATH=%{sample_engine_dir} \
98 -DTEST_DIR:PATH=%{test_dir}
100 make %{?jobs:-j%jobs}
104 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
105 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants
106 ln -s ../%{service_name}.service %{buildroot}%{_unitdir}/multi-user.target.wants/%{service_name}.service
107 ln -s ../%{service_name}.socket %{buildroot}%{_unitdir}/sockets.target.wants/%{service_name}.socket
108 ln -s ../%{service_name}-popup.socket %{buildroot}%{_unitdir}/sockets.target.wants/%{service_name}-popup.socket
110 mkdir -p %{buildroot}%{ro_data_dir}/license
111 cp LICENSE %{buildroot}%{ro_data_dir}/license/%{name}
112 cp LICENSE.BSL-1.0 %{buildroot}%{ro_data_dir}/license/%{name}.BSL-1.0
113 cp LICENSE %{buildroot}%{ro_data_dir}/license/lib%{name}-client
114 cp LICENSE %{buildroot}%{ro_data_dir}/license/lib%{name}-common
115 cp LICENSE %{buildroot}%{ro_data_dir}/license/%{name}-test
116 cp LICENSE.BSL-1.0 %{buildroot}%{ro_data_dir}/license/%{name}-test.BSL-1.0
118 mkdir -p %{buildroot}%{ro_db_dir}
119 mkdir -p %{buildroot}%{rw_db_dir}
120 mkdir -p %{buildroot}%{sample_engine_ro_res_dir}
121 cp data/scripts/*.sql %{buildroot}%{ro_db_dir}
124 systemctl daemon-reload
126 systemctl start %{service_name}.socket
127 systemctl start %{service_name}.service
128 systemctl start %{service_name}-popup.socket
132 systemctl restart %{service_name}.socket
133 systemctl restart %{service_name}.service
134 systemctl restart %{service_name}-popup.socket
139 systemctl stop %{service_name}.service
140 systemctl stop %{service_name}.socket
141 systemctl stop %{service_name}-popup.socket
146 systemctl daemon-reload
149 %post -n lib%{name}-common -p %{sbin_dir}/ldconfig
150 %post -n lib%{name}-client -p %{sbin_dir}/ldconfig
151 %postun -n lib%{name}-common -p %{sbin_dir}/ldconfig
152 %postun -n lib%{name}-client -p %{sbin_dir}/ldconfig
155 %defattr(-,root,root,-)
156 %manifest %{service_name}.manifest
157 %{ro_data_dir}/license/%{name}
158 %{ro_data_dir}/license/%{name}.BSL-1.0
159 %{bin_dir}/%{service_name}-server
160 %{bin_dir}/%{service_name}-popup
161 %{_unitdir}/multi-user.target.wants/%{service_name}.service
162 %{_unitdir}/%{service_name}.service
163 %{_unitdir}/sockets.target.wants/%{service_name}.socket
164 %{_unitdir}/%{service_name}.socket
165 %{_unitdir}/%{service_name}-popup.service
166 %{_unitdir}/sockets.target.wants/%{service_name}-popup.socket
167 %{_unitdir}/%{service_name}-popup.socket
169 %dir %{ro_data_dir}/%{service_name}
170 %dir %{rw_data_dir}/%{service_name}
173 %attr(444, system, system) %{ro_db_dir}/*.sql
175 # sample engine related files
176 %dir %{sample_engine_dir}
177 %dir %{sample_engine_ro_res_dir}
178 %dir %attr(775, system, system) %{sample_engine_rw_working_dir}
179 %{sample_engine_dir}/lib%{service_name}-cs-engine.so
180 %{sample_engine_dir}/lib%{service_name}-wp-engine.so
181 %attr(-, system, system) %{sample_engine_rw_working_dir}/*
183 %files -n lib%{name}-common
184 %defattr(-,root,root,-)
185 %manifest %{service_name}-common.manifest
186 %{ro_data_dir}/license/lib%{name}-common
187 %{_libdir}/lib%{service_name}-common.so.*
189 %files -n lib%{name}-client
190 %defattr(-,root,root,-)
191 %manifest %{service_name}-client.manifest
192 %{ro_data_dir}/license/lib%{name}-client
193 %{_libdir}/lib%{service_name}-client.so.*
196 %defattr(-,root,root,-)
197 %{_includedir}/csr/content-screening.h
198 %{_includedir}/csr/content-screening-types.h
199 %{_includedir}/csr/web-protection.h
200 %{_includedir}/csr/web-protection-types.h
201 %{_includedir}/csr/error.h
202 %{_includedir}/csr/engine-manager.h
203 %{_libdir}/pkgconfig/%{service_name}.pc
204 %{_libdir}/lib%{service_name}-client.so
205 %{_libdir}/lib%{service_name}-common.so
208 %defattr(-,root,root,-)
209 %manifest %{service_name}-test.manifest
210 %{ro_data_dir}/license/%{name}-test
211 %{ro_data_dir}/license/%{name}-test.BSL-1.0
212 %{bin_dir}/%{service_name}-test
213 %{bin_dir}/%{service_name}-popup-test
214 %{bin_dir}/%{service_name}-threadpool-test