]> git.pld-linux.org Git - packages/apparmor-parser.git/blobdiff - apparmor-parser.spec
- updated URLs
[packages/apparmor-parser.git] / apparmor-parser.spec
index 41f8def833a5faf18bc8dbb8b796f49b4b2507b6..99c1443dad49eb73b77ece2d5051ef893e8dd978 100644 (file)
@@ -1,29 +1,46 @@
-
-%bcond_without tests
-
-%define                _ver 2.3
-%define                _svnrel 1284
+#
+# Conditional build:
+%bcond_with    tests   # don't perform "make tests"
+%bcond_with    dynamic # link libstdc++ and libgcc dynamically
+#
 Summary:       AppArmor userlevel parser utility
 Summary(pl.UTF-8):     Narzędzie przestrzeni użytkownika do przetwarzania AppArmor
 Name:          apparmor-parser
-Version:       %{_ver}.%{_svnrel}
+Version:       3.1.7
 Release:       1
 Epoch:         1
-License:       GPL
+License:       GPL v2
 Group:         Applications/System
-# Source0:     http://forge.novell.com/modules/xfcontent/private.php/apparmor/AppArmor-%{_ver}/%{name}-%{_ver}-%{_svnrel}.tar.gz
-Source0:       %{name}-%{_ver}-%{_svnrel}.tar.bz2
-# Source0-md5: 5c086cc2505c97fdb30af9ace0b3b6bf
+Source0:       https://launchpad.net/apparmor/3.1/%{version}/+download/apparmor-%{version}.tar.gz
+# Source0-md5: eee581ab969f708f1e4c6f2847c0c7a6
 Source1:       %{name}.init
-Patch0:                %{name}-init-args.patch
-Patch1:                %{name}-make.patch
-URL:           http://forge.novell.com/modules/xfmod/project/?apparmor
+Patch0:                %{name}-pld.patch
+# Drop when upstream does cache rebuild based on hash and not on mtime
+Patch1:                %{name}-cache-rebuild.patch
+Patch2:                cap.patch
+URL:           https://wiki.apparmor.net/
 BuildRequires: bison
 BuildRequires: flex
-BuildRequires: gettext-devel
+BuildRequires: gettext-tools
+BuildRequires: libapparmor-devel >= 1:%{version}
 BuildRequires: libcap-devel
-BuildRequires: perl-tools-devel
+BuildRequires: libstdc++-devel
+# for apparmor_profile which links statically sometimes
+%if %{without dynamic}
+BuildRequires: libapparmor-static
+BuildRequires: libstdc++-static
+%endif
 BuildRequires: perl-tools-pod
+%if %{with tests}
+%if %(test -e /sys/kernel/security/apparmor/features ; echo $?)
+# apparmor enabled kernel running and fs mounted
+BuildRequires: /sys/kernel/security/apparmor/features
+%endif
+BuildRequires: perl-Locale-gettext
+BuildRequires: perl-Test-Harness
+BuildRequires: perl-tools-devel
+Requires(post,preun): /sbin/chkconfig
+%endif
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -38,31 +55,41 @@ Linuksa. Ten pakiet jest częścią zestawu narzędzi nazywanych
 SubDomain.
 
 %prep
-%setup -q -n %{name}-%{_ver}
-%patch0 -p2
-%patch1 -p0
+%setup -q -n apparmor-%{version}
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+
+# avoid unnecessary rebuilding on install
+%{__sed} -i -e '/^\.PHONY: af_names.h/d' parser/Makefile
+%{__sed} -i -e '/^\.\(PHONY\|SILENT\): \$(AAREOBJECT)/d' parser/Makefile
 
 %build
-%{__make} main \
+%{__make} -j1 -C parser \
        CC="%{__cc}" \
        CXX="%{__cxx}" \
-       CFLAGS="%{rpmcflags}"
+       CFLAGS="%{rpmcflags} %{rpmcppflags}" \
+       %{?with_dynamic:AAREOBJECTS='$(AAREOBJECT)' AARE_LDFLAGS= AALIB=-lapparmor} \
+       USE_SYSTEM=1
 
-%{?with_tests:%{__make} tests}
+%if %{with tests}
+%{__make} -j1 -C parser tests \
+       CC="%{__cc}" \
+       %{?with_dynamic:AAREOBJECTS='$(AAREOBJECT)' AARE_LDFLAGS=-lstdc++ AALIB=-lapparmor} \
+       USE_SYSTEM=1
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/lib/apparmor,/var/cache/apparmor}
 
-install -d $RPM_BUILD_ROOT{%{_sysconfdir}/{apparmor,rc.d/init.d},/sbin,/subdomain,/var/lib/apparmor}
-
-install apparmor_parser $RPM_BUILD_ROOT/sbin
-install subdomain.conf $RPM_BUILD_ROOT%{_sysconfdir}/apparmor
-install rc.apparmor.functions $RPM_BUILD_ROOT%{_sysconfdir}/apparmor
-install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/apparmor
-
-%{__make} -C po install \
+%{__make} -C parser install \
        DESTDIR=$RPM_BUILD_ROOT \
-       NAME=%{name}
+       DISTRO=systemd \
+       SYSTEMD_UNIT_DIR=$RPM_BUILD_ROOT%{systemdunitdir} \
+       USE_SYSTEM=1
+
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/apparmor
 
 %find_lang %{name}
 
@@ -79,12 +106,21 @@ fi
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc README
+%doc parser/README
 %attr(755,root,root) /sbin/apparmor_parser
+%attr(755,root,root) %{_sbindir}/aa-teardown
 %dir %{_sysconfdir}/apparmor
-%{_sysconfdir}/apparmor/rc.apparmor.functions
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor/subdomain.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor/parser.conf
 %attr(754,root,root) /etc/rc.d/init.d/apparmor
-#%attr(754,root,root) /etc/rc.d/init.d/aaeventd
-/subdomain
-/var/lib/apparmor
+%{systemdunitdir}/apparmor.service
+%dir /lib/apparmor
+%attr(755,root,root) /lib/apparmor/profile-load
+/lib/apparmor/rc.apparmor.functions
+%attr(754,root,root) /lib/apparmor/apparmor.systemd
+%attr(700,root,root) %dir /var/cache/apparmor
+%dir /var/lib/apparmor
+%{_mandir}/man5/apparmor.d.5*
+%{_mandir}/man7/apparmor.7*
+%{_mandir}/man7/apparmor_xattrs.7*
+%{_mandir}/man8/aa-teardown.8*
+%{_mandir}/man8/apparmor_parser.8*
This page took 0.037836 seconds and 4 git commands to generate.