-%include /usr/lib/rpm/macros.perl
+#
+# Conditional build:
+%bcond_without ruby # build without Ruby bindings
+
Summary: Library to provide key AppArmor symbols
Summary(pl.UTF-8): Biblioteka udostępniająca kluczowe symbole AppArmor
Name: libapparmor
-Version: 2.6.1
-Release: 1
+Version: 3.0.1
+Release: 2
Epoch: 1
License: LGPL v2.1
Group: Libraries
-Source0: http://launchpad.net/apparmor/2.6/%{version}/+download/apparmor-%{version}.tar.gz
-# Source0-md5: e2dabce946cb8258834f90f0a6c87726
-URL: http://apparmor.wiki.kernel.org/
-BuildRequires: autoconf
+Source0: http://launchpad.net/apparmor/3.0/%{version}/+download/apparmor-%{version}.tar.gz
+# Source0-md5: e05eab22bdd1dfc64854856a7292cf09
+Patch0: %{name}-private.patch
+URL: http://wiki.apparmor.net/
+BuildRequires: autoconf >= 2.50
BuildRequires: automake >= 1.4
BuildRequires: bison
BuildRequires: flex
+BuildRequires: gcc >= 5:3.2
BuildRequires: libtool
BuildRequires: perl-devel
BuildRequires: perl-tools-pod
-BuildRequires: python-devel
-BuildRequires: rpmbuild(macros) >= 1.272
+BuildRequires: pkgconfig
+BuildRequires: python3-devel
+BuildRequires: rpmbuild(macros) >= 1.745
BuildRequires: rpm-perlprov
BuildRequires: rpm-pythonprov
-BuildRequires: ruby-devel
+%{?with_ruby:BuildRequires: ruby-devel}
BuildRequires: swig-perl
BuildRequires: swig-python
-BuildRequires: swig-ruby
+%{?with_ruby:BuildRequires: swig-ruby}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
%description static -l pl.UTF-8
Statyczna biblioteka libapparmor.
-%package -n perl-apparmor
+%package -n perl-LibAppArmor
Summary: AppArmor Perl bindings
Summary(pl.UTF-8): Dowiązania do AppArmor dla Perla
Summary(pt_BR.UTF-8): Módulos Perl para acessar os recursos do AppArmor
Group: Development/Languages/Perl
+Obsoletes: perl-apparmor
Requires: %{name} = %{epoch}:%{version}-%{release}
-%description -n perl-apparmor
+%description -n perl-LibAppArmor
AppArmor Perl bindings.
-%description -n perl-apparmor -l pl.UTF-8
+%description -n perl-LibAppArmor -l pl.UTF-8
Dowiązania do AppArmor dla Perla.
-%description -n perl-apparmor -l pt_BR.UTF-8
+%description -n perl-LibAppArmor -l pt_BR.UTF-8
Módulos Perl para acessar os recursos do AppArmor.
-%package -n python-apparmor
+%package -n python3-LibAppArmor
Summary: AppArmor Python bindings
Summary(pl.UTF-8): Dowiązania do AppArmor dla Pythona
Summary(pt_BR.UTF-8): Módulos Python para acessar os recursos do AppArmor
Group: Development/Languages/Python
-%pyrequires_eq python
+%pyrequires_eq python3
+Obsoletes: python3-apparmor
Requires: %{name} = %{epoch}:%{version}-%{release}
-%description -n python-apparmor
+%description -n python3-LibAppArmor
AppArmor Python bindings.
-%description -n python-apparmor -l pl.UTF-8
+%description -n python3-LibAppArmor -l pl.UTF-8
Dowiązania do AppArmor dla Pythona.
-%description -n python-apparmor -l pt_BR.UTF-8
+%description -n python3-LibAppArmor -l pt_BR.UTF-8
Módulos Python para acessar os recursos do AppArmor.
-%package -n ruby-apparmor
+%package -n ruby-LibAppArmor
Summary: AppArmor Ruby bindings
Summary(pl.UTF-8): Dowiązania do AppArmor dla języka Ruby
Group: Development/Languages
+Obsoletes: ruby-apparmor
Requires: %{name} = %{epoch}:%{version}-%{release}
%{?ruby_mod_ver_requires_eq}
-%description -n ruby-apparmor
+%description -n ruby-LibAppArmor
AppArmor Ruby bindings.
-%description -n ruby-apparmor -l pl.UTF-8
+%description -n ruby-LibAppArmor -l pl.UTF-8
Dowiązania do AppArmor dla języka Ruby.
%prep
%setup -q -n apparmor-%{version}
+%patch0 -p1
%build
cd libraries/libapparmor
%{__automake}
%configure \
+ %{?with_ruby:--with-ruby} \
--with-python \
- --with-perl \
- --with-ruby
+ --with-perl
%{__make} -j1 \
CC="%{__cc}" \
- CFLAGS="%{rpmcflags}"
+ CFLAGS="%{rpmcflags} -fPIC"
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} -C libraries/libapparmor install \
+%{__make} -j1 -C libraries/libapparmor install \
+ RUBYARCHDIR=$RPM_BUILD_ROOT%{ruby_vendorarchdir} \
DESTDIR=$RPM_BUILD_ROOT
%py_postclean
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libapparmor.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libapparmor.so.1
-%attr(755,root,root) %{_libdir}/libimmunix.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libimmunix.so.1
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libapparmor.so
-%attr(755,root,root) %{_libdir}/libimmunix.so
%{_libdir}/libapparmor.la
-%{_libdir}/libimmunix.la
%{_includedir}/aalogparse
%{_includedir}/sys/apparmor.h
+%{_includedir}/sys/apparmor_private.h
+%{_pkgconfigdir}/libapparmor.pc
%{_mandir}/man2/aa_change_hat.2*
%{_mandir}/man2/aa_change_profile.2*
+%{_mandir}/man2/aa_find_mountpoint.2*
+%{_mandir}/man2/aa_getcon.2*
+%{_mandir}/man2/aa_query_label.2*
+%{_mandir}/man2/aa_stack_profile.2*
+%{_mandir}/man3/aa_features.3*
+%{_mandir}/man3/aa_kernel_interface.3*
+%{_mandir}/man3/aa_policy_cache.3*
+%{_mandir}/man3/aa_splitcon.3*
%files static
%defattr(644,root,root,755)
%{_libdir}/libapparmor.a
-%{_libdir}/libimmunix.a
-%files -n perl-apparmor
+%files -n perl-LibAppArmor
%defattr(644,root,root,755)
%{perl_vendorarch}/LibAppArmor.pm
%dir %{perl_vendorarch}/auto/LibAppArmor
-%{perl_vendorarch}/auto/LibAppArmor/LibAppArmor.bs
%attr(755,root,root) %{perl_vendorarch}/auto/LibAppArmor/LibAppArmor.so
-%files -n python-apparmor
+%files -n python3-LibAppArmor
%defattr(644,root,root,755)
-%dir %{py_sitedir}/LibAppArmor
-%attr(755,root,root) %{py_sitedir}/LibAppArmor/_LibAppArmor.so
-%{py_sitedir}/LibAppArmor/__init__.py[co]
-%{py_sitedir}/LibAppArmor-*.egg-info
-
-%files -n ruby-apparmor
+%dir %{py3_sitedir}/LibAppArmor
+%attr(755,root,root) %{py3_sitedir}/LibAppArmor/_LibAppArmor.*.so
+%{py3_sitedir}/LibAppArmor/__pycache__
+%{py3_sitedir}/LibAppArmor/*.py
+%{py3_sitedir}/LibAppArmor-*.egg-info
+
+%if %{with ruby}
+%files -n ruby-LibAppArmor
%defattr(644,root,root,755)
-%attr(755,root,root) %{ruby_sitearchdir}/LibAppArmor.so
+%attr(755,root,root) %{ruby_vendorarchdir}/LibAppArmor.so
+%endif