]> git.pld-linux.org Git - packages/setools.git/blame - setools.spec
- tcl rebuild
[packages/setools.git] / setools.spec
CommitLineData
4df63b55
JB
1#
2# Conditional build:
3%bcond_without java # Java bindings
4%bcond_without python # Python bindings
5#
6Summary: Policy analysis tools for SELinux
7Summary(pl.UTF-8): Narzędzia do analizy polityk SELinuksa
db420033 8Name: setools
4df63b55 9Version: 3.3.8
fa2db552 10Release: 2
4df63b55
JB
11License: GPL v2+ (tools), LGPL v2.1+ (libraries)
12Group: Applications/System
13#Source0Download: http://oss.tresys.com/projects/setools/wiki/download
14Source0: http://oss.tresys.com/projects/setools/chrome/site/dists/%{name}-%{version}/%{name}-%{version}.tar.bz2
15# Source0-md5: d68d0d4e4da0f01da0f208782ff04b91
16Source1: seaudit.pamd
17Patch0: %{name}-swig.patch
18Patch1: %{name}-sh.patch
19Patch2: %{name}-tcl.patch
20Patch3: %{name}-format.patch
21Patch4: %{name}-swig-part2.patch
22Patch5: %{name}-link.patch
23URL: http://oss.tresys.com/projects/setools/
24BuildRequires: autoconf >= 2.59
25BuildRequires: automake
fde4ef77 26BuildRequires: bison
4df63b55 27BuildRequires: bzip2-devel
2f15a047 28BuildRequires: flex
4df63b55
JB
29BuildRequires: gcc >= 5:3.2
30BuildRequires: gtk+2-devel >= 2:2.8
31%{?with_java:BuildRequires: jdk >= 1.2}
3c7c1bc2 32BuildRequires: libglade2-devel >= 2.0
4df63b55
JB
33BuildRequires: libselinux-devel >= 1.30
34BuildRequires: libsepol-devel >= 2.0.29
35BuildRequires: libsepol-static >= 2.0.29
36BuildRequires: libstdc++-devel
37BuildRequires: libtool
38BuildRequires: libxml2-devel >= 2
db420033 39BuildRequires: perl-base
5511c837 40BuildRequires: pkgconfig
4df63b55
JB
41%{?with_python:BuildRequires: python-devel >= 1:2.7}
42BuildRequires: rpmbuild(macros) >= 1.219
43BuildRequires: sqlite3-devel >= 3.2.0
44BuildRequires: swig >= 2.0.0
45%{?with_python:BuildRequires: swig-python >= 2.0.0}
46BuildRequires: swig-tcl >= 2.0.0
47BuildRequires: tcl-devel >= 8.4
48BuildRequires: tk-devel >= 8.4
49Requires: %{name}-libs = %{version}-%{release}
50Suggests: policy-sources
db420033
JB
51BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52
4df63b55
JB
53%define pkgdatadir %{_datadir}/%{name}-3.3
54
55# python modules use Py* symbols, some of .so files are versioned
56%define skip_post_check_so .*%{py_sitedir}/setools/.*
57
db420033 58%description
4df63b55
JB
59SETools is a collection of graphical tools, command-line tools, and
60libraries designed to facilitate SELinux policy analysis.
61
62The base package includes the following console tools:
63- seaudit-report: audit log analysis tool
64- sechecker: SELinux policy checking tool
65- secmds command line tools: seinfo, sesearch, findcon, replcon, and
66 indexcon
67- sediff: semantic policy difference tool
db420033 68
63b63c72 69%description -l pl.UTF-8
4df63b55
JB
70SETools to zbiór narzędzi graficznych, narzędzi linii poleceń oraz
71bibliotek mających na celu ułatwienie analizy polityk SELinuksa.
72
73Pakiet podstawowy zawiera narzędzia terminalowe:
74- seaudit-report - narzędzie do analizy logu audytowego
75- sechecker - narzędzie do sprawdzania polityk SELinuksa
76- narzędzia linii poleceń secmds: seinfo, sesearch, findcon, replcon
77 oraz indexcon
78- sediff - narzędzie do znajdywania różnic semantycznych polityk
79
80%package gui
81Summary: Policy analysis graphical tools for SELinux
82Summary(pl.UTF-8): Graficzne narzędzia do analizy polityk SELinuksa
83License: GPL v2+
84Group: Applications/System
85Requires: %{name} = %{version}-%{release}
86Requires: gtk+2 >= 2:2.8
87Requires: tk >= 8.4
88Requires: tk-BWidget >= 1.8
89
90%description gui
91SETools is a collection of graphical tools, command-line tools, and
92libraries designed to facilitate SELinux policy analysis.
93
94This package includes the following graphical tools:
95- apol: policy analysis tool
96- seaudit: audit log analysis tool
97- sediffx: semantic policy difference tool
98
99%description gui -l pl.UTF-8
100SETools to zbiór narzędzi graficznych, narzędzi linii poleceń oraz
101bibliotek mających na celu ułatwienie analizy polityk SELinuksa.
102
103Ten pakiet zawiera narzędzia graficzne:
104- apol - narzędzie do analizy polityk
105- seaudit - narzędzie do analizy logu audytowego
106- sediffx - narzędzie do znajdywania różnic semantycznych polityk
107
108%package libs
109Summary: Policy analysis support libraries for SELinux
110Summary(pl.UTF-8): Biblioteki wspierające analizę polityk SELinuksa
111License: LGPL v2.1+
112Group: Libraries
113Requires: libselinux >= 1.30
114Requires: libsepol >= 2.0.29
115Requires: sqlite3 >= 3.2.0
116
117%description libs
118SETools is a collection of graphical tools, command-line tools, and
119libraries designed to facilitate SELinux policy analysis.
120
121This package includes the following run-time libraries:
122- libapol: policy analysis library
123- libpoldiff: semantic policy difference library
124- libqpol: library that abstracts policy internals
125- libseaudit: parse and filter SELinux audit messages in log files
126- libsefs: SELinux file contexts library
127
128%description libs -l pl.UTF-8
129SETools to zbiór narzędzi graficznych, narzędzi linii poleceń oraz
130bibliotek mających na celu ułatwienie analizy polityk SELinuksa.
131
132Ten pakiet zawiera biblioteki uruchomieniowe:
133- libapol - analizy polityk
134- libpoldiff - różnic semantycznych polityk
135- libqpol - abstrakcji wnętrzności polityk
136- libseaudit - analizy i filtrowania komunikatów audytowych SELinuksa
137 z plików logów
138- libsefs - kontekstów plików SELinuksa
db420033 139
4d18f116 140%package devel
4df63b55
JB
141Summary: Header files for SETools libraries
142Summary(pl.UTF-8): Pliki nagłówkowe bibliotek SETools
143License: LGPL v2.1+
4d18f116 144Group: Development/Libraries
4df63b55 145Requires: %{name}-libs = %{version}-%{release}
4d18f116
JB
146
147%description devel
4df63b55
JB
148Header files for SETools libraries: libapol, libpoldiff, libqpol,
149libseaudit, libsefs.
4d18f116 150
63b63c72 151%description devel -l pl.UTF-8
4df63b55
JB
152Pliki nagłówkowe bibliotek SETools: libapol, libpoldiff, libqpol,
153libseaudit, libsefs.
4d18f116
JB
154
155%package static
4df63b55
JB
156Summary: Static SETools libraries
157Summary(pl.UTF-8): Statyczne biblioteki SETools
158License: LGPL v2.1+
4d18f116
JB
159Group: Development/Libraries
160Requires: %{name}-devel = %{version}-%{release}
161
162%description static
4df63b55 163Static SETools libraries.
4d18f116 164
63b63c72 165%description static -l pl.UTF-8
4df63b55
JB
166Statyczne biblioteki SETools.
167
168%package -n java-setools
169Summary: Java bindings for SELinux policy analysis libraries
170Summary(pl.UTF-8): Wiązania Javy do bibliotek analizy polityk SELinuksa
171License: LGPL v2.1+
172Group: Libraries/Java
173Requires: %{name}-libs = %{version}-%{release}
174Requires: jre >= 1.2
175
176%description -n java-setools
177SETools is a collection of graphical tools, command-line tools, and
178libraries designed to facilitate SELinux policy analysis.
179
180This package includes Java bindings for the following libraries:
181- libapol: policy analysis library
182- libpoldiff: semantic policy difference library
183- libqpol: library that abstracts policy internals
184- libseaudit: parse and filter SELinux audit messages in log files
185- libsefs: SELinux file contexts library
186
187%description -n java-setools -l pl.UTF-8
188SETools to zbiór narzędzi graficznych, narzędzi linii poleceń oraz
189bibliotek mających na celu ułatwienie analizy polityk SELinuksa.
190
191Ten pakiet zawiera wiązania Javy do bibliotek uruchomieniowych:
192- libapol - analizy polityk
193- libpoldiff - różnic semantycznych polityk
194- libqpol - abstrakcji wnętrzności polityk
195- libseaudit - analizy i filtrowania komunikatów audytowych SELinuksa
196 z plików logów
197- libsefs - kontekstów plików SELinuksa
198
199%package -n python-setools
200Summary: Python bindings for SELinux policy analysis libraries
201Summary(pl.UTF-8): Wiązania Pythona do bibliotek analizy polityk SELinuksa
202License: LGPL v2.1+ (core modules), GPL v2+ (seinfo and sesearch)
203Group: Libraries/Python
204Requires: %{name}-libs = %{version}-%{release}
205
206%description -n python-setools
207SETools is a collection of graphical tools, command-line tools, and
208libraries designed to facilitate SELinux policy analysis.
209
210This package includes Python bindings for the following libraries:
211- libapol: policy analysis library
212- libpoldiff: semantic policy difference library
213- libqpol: library that abstracts policy internals
214- libseaudit: parse and filter SELinux audit messages in log files
215- libsefs: SELinux file contexts library
216
217%description -n python-setools -l pl.UTF-8
218SETools to zbiór narzędzi graficznych, narzędzi linii poleceń oraz
219bibliotek mających na celu ułatwienie analizy polityk SELinuksa.
220
221Ten pakiet zawiera wiązania Pythona do bibliotek uruchomieniowych:
222- libapol - analizy polityk
223- libpoldiff - różnic semantycznych polityk
224- libqpol - abstrakcji wnętrzności polityk
225- libseaudit - analizy i filtrowania komunikatów audytowych SELinuksa
226 z plików logów
227- libsefs - kontekstów plików SELinuksa
228
229%package -n tcl-setools
230Summary: Tcl bindings for SELinux policy analysis libraries
231Summary(pl.UTF-8): Wiązania Tcl-a do bibliotek analizy polityk SELinuksa
232License: LGPL v2.1+
233Group: Libraries
234Requires: %{name}-libs = %{version}-%{release}
235Requires: tcl >= 8.4
236
237%description -n tcl-setools
238SETools is a collection of graphical tools, command-line tools, and
239libraries designed to facilitate SELinux policy analysis.
240
241This package includes Tcl bindings for the following libraries:
242- libapol: policy analysis library
243- libpoldiff: semantic policy difference library
244- libqpol: library that abstracts policy internals
245- libseaudit: parse and filter SELinux audit messages in log files
246- libsefs: SELinux file contexts library
247
248%description -n tcl-setools -l pl.UTF-8
249SETools to zbiór narzędzi graficznych, narzędzi linii poleceń oraz
250bibliotek mających na celu ułatwienie analizy polityk SELinuksa.
251
252Ten pakiet zawiera wiązania Tcl-a do bibliotek uruchomieniowych:
253- libapol - analizy polityk
254- libpoldiff - różnic semantycznych polityk
255- libqpol - abstrakcji wnętrzności polityk
256- libseaudit - analizy i filtrowania komunikatów audytowych SELinuksa
257 z plików logów
258- libsefs - kontekstów plików SELinuksa
4d18f116 259
db420033 260%prep
28988f53 261%setup -q
3c7c1bc2 262%patch0 -p1
4df63b55
JB
263%patch1 -p1
264%patch2 -p1
265%patch3 -p1
266%patch4 -p1
267%patch5 -p1
db420033
JB
268
269%build
4df63b55
JB
270%{__libtoolize}
271%{__aclocal} -I m4
272%{__autoconf}
273%{__autoheader}
274%{__automake}
275%configure \
276 CLASSPATH=. \
277 TCLSH_PROG=/usr/bin/tclsh \
278 WISH_PROG=/usr/bin/wish \
279 --disable-bwidget-check \
280 --disable-selinux-check \
281 %{?with_java:--enable-swig-java} \
282 %{?with_python:--enable-swig-python} \
283 --with-java-prefix=%{java_home}
284
285%{__make}
db420033
JB
286
287%install
288rm -rf $RPM_BUILD_ROOT
4df63b55 289install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},/etc/pam.d}
db420033
JB
290
291%{__make} install \
4df63b55
JB
292 DESTDIR=$RPM_BUILD_ROOT
293
294cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/seaudit
295cp -p packages/rpm/*.desktop $RPM_BUILD_ROOT%{_desktopdir}
296cp -p apol/apol.png seaudit/seaudit.png sediff/sediffx.png $RPM_BUILD_ROOT%{_pixmapsdir}
297
298# let rpm autodetect dependencies
299chmod 755 $RPM_BUILD_ROOT%{_libdir}/lib*.so* \
300 $RPM_BUILD_ROOT%{_libdir}/setools/*/*.so*
301%if %{with python}
302chmod 755 $RPM_BUILD_ROOT%{py_sitedir}/setools/*.so*
303%py_comp $RPM_BUILD_ROOT%{py_sitedir}/setools
304%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}/setools
305%py_postclean
306%endif
307
308%if %{with java}
309# replace symlinks with direct jars
310%{__mv} $RPM_BUILD_ROOT%{pkgdatadir}/*.jar $RPM_BUILD_ROOT%{_javadir}
311%endif
db420033
JB
312
313%clean
314rm -rf $RPM_BUILD_ROOT
315
4df63b55
JB
316%post libs -p /sbin/ldconfig
317%postun libs -p /sbin/ldconfig
5511c837 318
4df63b55
JB
319%post -n java-setools -p /sbin/ldconfig
320%postun -n java-setools -p /sbin/ldconfig
5511c837 321
db420033
JB
322%files
323%defattr(644,root,root,755)
4df63b55
JB
324%attr(755,root,root) %{_bindir}/findcon
325%attr(755,root,root) %{_bindir}/indexcon
326%attr(755,root,root) %{_bindir}/replcon
327%attr(755,root,root) %{_bindir}/seaudit-report
328%attr(755,root,root) %{_bindir}/sechecker
329%attr(755,root,root) %{_bindir}/sediff
330%attr(755,root,root) %{_bindir}/seinfo
331%attr(755,root,root) %{_bindir}/sesearch
332%dir %{pkgdatadir}
333%{pkgdatadir}/sechecker-profiles
334%{pkgdatadir}/sechecker_help.txt
335%{pkgdatadir}/seaudit-report-service
336%{pkgdatadir}/seaudit-report.conf
337%{pkgdatadir}/seaudit-report.css
338%{_mandir}/man1/findcon.1*
339%{_mandir}/man1/indexcon.1*
340%{_mandir}/man1/replcon.1*
341%{_mandir}/man1/sechecker.1*
342%{_mandir}/man1/sediff.1*
343%{_mandir}/man1/seinfo.1*
344%{_mandir}/man1/sesearch.1*
345%{_mandir}/man8/seaudit-report.8*
346
347%files gui
348%defattr(644,root,root,755)
349%attr(755,root,root) %{_bindir}/apol
350%attr(755,root,root) %{_bindir}/sediffx
351%attr(755,root,root) %{_sbindir}/seaudit
352%dir %{_libdir}/setools/apol_tcl
353%attr(755,root,root) %{_libdir}/setools/apol_tcl/libapol_tcl.so.*.*
354%{_libdir}/setools/apol_tcl/pkgIndex.tcl
355%{pkgdatadir}/apol.gif
356%{pkgdatadir}/apol_help.txt
357%{pkgdatadir}/apol_perm_mapping_*
358%{pkgdatadir}/domaintrans_help.txt
359%{pkgdatadir}/dot_seaudit
360%{pkgdatadir}/file_relabel_help.txt
361%{pkgdatadir}/infoflow_help.txt
362%{pkgdatadir}/sediff_help.txt
363%{pkgdatadir}/seaudit_help.txt
364%{pkgdatadir}/types_relation_help.txt
365%{pkgdatadir}/*.glade
366%{pkgdatadir}/*.png
367%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/seaudit
368%{_desktopdir}/apol.desktop
369%{_desktopdir}/seaudit.desktop
370%{_desktopdir}/sediffx.desktop
371%{_pixmapsdir}/apol.png
372%{_pixmapsdir}/seaudit.png
373%{_pixmapsdir}/sediffx.png
374%{_mandir}/man1/apol.1*
375%{_mandir}/man1/sediffx.1*
376%{_mandir}/man8/seaudit.8*
377
378%files libs
379%defattr(644,root,root,755)
380%doc AUTHORS COPYING ChangeLog KNOWN-BUGS NEWS README TODO
381%attr(755,root,root) %{_libdir}/libapol.so.*.*
382%attr(755,root,root) %ghost %{_libdir}/libapol.so.4
383%attr(755,root,root) %{_libdir}/libpoldiff.so.*.*.*
384%attr(755,root,root) %ghost %{_libdir}/libpoldiff.so.1
385%attr(755,root,root) %{_libdir}/libqpol.so.*.*
386%attr(755,root,root) %ghost %{_libdir}/libqpol.so.1
387%attr(755,root,root) %{_libdir}/libseaudit.so.*.*
388%attr(755,root,root) %ghost %{_libdir}/libseaudit.so.4
389%attr(755,root,root) %{_libdir}/libsefs.so.*.*.*
390%attr(755,root,root) %ghost %{_libdir}/libsefs.so.4
4d18f116
JB
391
392%files devel
393%defattr(644,root,root,755)
4df63b55
JB
394%attr(755,root,root) %{_libdir}/libapol.so
395%attr(755,root,root) %{_libdir}/libpoldiff.so
396%attr(755,root,root) %{_libdir}/libqpol.so
397%attr(755,root,root) %{_libdir}/libseaudit.so
398%attr(755,root,root) %{_libdir}/libsefs.so
399%{_includedir}/apol
400%{_includedir}/poldiff
401%{_includedir}/qpol
402%{_includedir}/seaudit
403%{_includedir}/sefs
404%{_pkgconfigdir}/libapol.pc
405%{_pkgconfigdir}/libpoldiff.pc
406%{_pkgconfigdir}/libqpol.pc
407%{_pkgconfigdir}/libseaudit.pc
408%{_pkgconfigdir}/libsefs.pc
4d18f116
JB
409
410%files static
411%defattr(644,root,root,755)
4df63b55
JB
412%{_libdir}/libapol.a
413%{_libdir}/libpoldiff.a
414%{_libdir}/libqpol.a
415%{_libdir}/libseaudit.a
416%{_libdir}/libsefs.a
417
418%if %{with java}
419%files -n java-setools
420%defattr(644,root,root,755)
421%attr(755,root,root) %{_libdir}/libjapol.so.*.*
422%attr(755,root,root) %ghost %{_libdir}/libjapol.so.4
423%attr(755,root,root) %{_libdir}/libjapol.so
424%attr(755,root,root) %{_libdir}/libjpoldiff.so.*.*.*
425%attr(755,root,root) %ghost %{_libdir}/libjpoldiff.so.1
426%attr(755,root,root) %{_libdir}/libjpoldiff.so
427%attr(755,root,root) %{_libdir}/libjqpol.so.*.*
428%attr(755,root,root) %ghost %{_libdir}/libjqpol.so.1
429%attr(755,root,root) %{_libdir}/libjqpol.so
430%attr(755,root,root) %{_libdir}/libjseaudit.so.*.*
431%attr(755,root,root) %ghost %{_libdir}/libjseaudit.so.4
432%attr(755,root,root) %{_libdir}/libjseaudit.so
433%attr(755,root,root) %{_libdir}/libjsefs.so.*.*.*
434%attr(755,root,root) %ghost %{_libdir}/libjsefs.so.4
435%attr(755,root,root) %{_libdir}/libjsefs.so
436%{_javadir}/apol.jar
437%{_javadir}/poldiff.jar
438%{_javadir}/qpol.jar
439%{_javadir}/seaudit.jar
440%{_javadir}/sefs.jar
441%endif
442
443%if %{with python}
444%files -n python-setools
445%defattr(644,root,root,755)
446%dir %{py_sitedir}/setools
447%attr(755,root,root) %{py_sitedir}/setools/_apol.so*
448%attr(755,root,root) %{py_sitedir}/setools/_poldiff.so*
449%attr(755,root,root) %{py_sitedir}/setools/_qpol.so*
450%attr(755,root,root) %{py_sitedir}/setools/_seaudit.so*
451%attr(755,root,root) %{py_sitedir}/setools/_sefs.so*
452%attr(755,root,root) %{py_sitedir}/setools/_seinfo.so
453%attr(755,root,root) %{py_sitedir}/setools/_sesearch.so
454%{py_sitedir}/setools/__init__.py[co]
455%{py_sitedir}/setools/apol.py[co]
456%{py_sitedir}/setools/poldiff.py[co]
457%{py_sitedir}/setools/qpol.py[co]
458%{py_sitedir}/setools/seaudit.py[co]
459%{py_sitedir}/setools/sefs.py[co]
460%{py_sitedir}/setools-1.0-py*.egg-info
461%dir %{py_sitescriptdir}/setools
462%{py_sitescriptdir}/setools/__init__.py[co]
463%endif
464
465%files -n tcl-setools
466%defattr(644,root,root,755)
467%dir %{_libdir}/setools
468%dir %{_libdir}/setools/apol
469%attr(755,root,root) %{_libdir}/setools/apol/libtapol.so.*.*
470%{_libdir}/setools/apol/pkgIndex.tcl
471%dir %{_libdir}/setools/poldiff
472%attr(755,root,root) %{_libdir}/setools/poldiff/libtpoldiff.so.*.*.*
473%{_libdir}/setools/poldiff/pkgIndex.tcl
474%dir %{_libdir}/setools/qpol
475%attr(755,root,root) %{_libdir}/setools/qpol/libtqpol.so.*.*
476%{_libdir}/setools/qpol/pkgIndex.tcl
477%dir %{_libdir}/setools/seaudit
478%attr(755,root,root) %{_libdir}/setools/seaudit/libtseaudit.so.*.*
479%{_libdir}/setools/seaudit/pkgIndex.tcl
480%dir %{_libdir}/setools/sefs
481%attr(755,root,root) %{_libdir}/setools/sefs/libtsefs.so.*.*.*
482%{_libdir}/setools/sefs/pkgIndex.tcl
This page took 0.151905 seconds and 4 git commands to generate.