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