3 %bcond_with tests # don't perform "make tests"
4 %bcond_with dynamic # link libstdc++ and libgcc dynamically
6 Summary: AppArmor userlevel parser utility
7 Summary(pl.UTF-8): Narzędzie przestrzeni użytkownika do przetwarzania AppArmor
13 Group: Applications/System
14 Source0: http://launchpad.net/apparmor/2.13/%{version}/+download/apparmor-%{version}.tar.gz
15 # Source0-md5: 81468fb2b7ba7966910f617371073391
17 Patch0: %{name}-pld.patch
18 # Drop when upstream does cache rebuild based on hash and not on mtime
19 Patch1: %{name}-cache-rebuild.patch
20 URL: http://wiki.apparmor.net/
23 BuildRequires: gettext-tools
24 BuildRequires: libapparmor-devel >= 1:%{version}
25 BuildRequires: libcap-devel
26 BuildRequires: libstdc++-devel
27 # for apparmor_profile which links statically sometimes
28 %if %{without dynamic}
29 BuildRequires: libapparmor-static
30 BuildRequires: libstdc++-static
32 BuildRequires: perl-tools-pod
34 %if %(test -e /sys/kernel/security/apparmor/features ; echo $?)
35 # apparmor enabled kernel running and fs mounted
36 BuildRequires: /sys/kernel/security/apparmor/features
38 BuildRequires: perl-Locale-gettext
39 BuildRequires: perl-Test-Harness
40 BuildRequires: perl-tools-devel
42 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45 AppArmor Parser is a userlevel program that is used to load in program
46 profiles to the AppArmor Security kernel module. This package is part
47 of a suite of tools that used to be named SubDomain.
49 %description -l pl.UTF-8
50 AppArmor Parser to program przestrzeni użytkownika służący do
51 wczytywania profili programów dla modułu bezpieczeństwa AppArmor jądra
52 Linuksa. Ten pakiet jest częścią zestawu narzędzi nazywanych
56 %setup -q -n apparmor-%{version}
60 # avoid unnecessary rebuilding on install
61 %{__sed} -i -e '/^\.PHONY: af_names.h/d' parser/Makefile
62 %{__sed} -i -e '/^\.\(PHONY\|SILENT\): \$(AAREOBJECT)/d' parser/Makefile
65 %{__make} -j1 -C parser \
68 CFLAGS="%{rpmcflags} %{rpmcppflags}" \
69 %{?with_dynamic:AAREOBJECTS='$(AAREOBJECT)' AARE_LDFLAGS= AALIB=-lapparmor} \
73 %{__make} -j1 -C parser tests \
75 %{?with_dynamic:AAREOBJECTS='$(AAREOBJECT)' AARE_LDFLAGS=-lstdc++ AALIB=-lapparmor} \
80 rm -rf $RPM_BUILD_ROOT
81 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/lib/apparmor,/subdomain}
83 %{__make} -C parser install \
84 DESTDIR=$RPM_BUILD_ROOT \
86 SYSTEMD_UNIT_DIR=$RPM_BUILD_ROOT%{systemdunitdir} \
89 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/apparmor
94 rm -rf $RPM_BUILD_ROOT
97 /sbin/chkconfig --add apparmor
100 if [ "$1" = "0" ]; then
101 /sbin/chkconfig --del apparmor
104 %files -f %{name}.lang
105 %defattr(644,root,root,755)
107 %attr(755,root,root) /sbin/apparmor_parser
108 %attr(755,root,root) %{_sbindir}/aa-teardown
109 %dir %{_sysconfdir}/apparmor
110 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor/parser.conf
111 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor/subdomain.conf
112 %attr(754,root,root) /etc/rc.d/init.d/apparmor
113 %{systemdunitdir}/apparmor.service
115 /lib/apparmor/rc.apparmor.functions
116 %attr(754,root,root) /lib/apparmor/apparmor.systemd
118 %dir /var/lib/apparmor
119 %{_mandir}/man5/apparmor.d.5*
120 %{_mandir}/man5/subdomain.conf.5*
121 %{_mandir}/man7/apparmor.7*
122 %{_mandir}/man8/aa-teardown.8*
123 %{_mandir}/man8/apparmor_parser.8*