X-Git-Url: http://git.pld-linux.org/?p=packages%2Fzfs.git;a=blobdiff_plain;f=zfs.spec;h=3034720fed79ca3301cfdbc1a50e4e86ffc18322;hp=613fb73140c3ee1509318e364878ff68028efc7c;hb=597c77d;hpb=e8614c59572115d5324c86660f7b1d66c1fa1f88 diff --git a/zfs.spec b/zfs.spec index 613fb73..3034720 100644 --- a/zfs.spec +++ b/zfs.spec @@ -8,7 +8,8 @@ # Conditional build: %bcond_without kernel # don't build kernel modules %bcond_without userspace # don't build userspace programs -%bcond_without python # CPython module +%bcond_without python2 # CPython 2.x module +%bcond_without python3 # CPython 3.x module %bcond_with verbose # verbose build (V=1) # # The goal here is to have main, userspace, package built once with @@ -27,22 +28,23 @@ exit 1 %define _duplicate_files_terminate_build 0 -%define rel 5 +%define rel 1 %define pname zfs Summary: Native Linux port of the ZFS filesystem Summary(pl.UTF-8): Natywny linuksowy port systemu plików ZFS Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel} -%define gitrev 1511_g4338c5c06 -Version: 0.7.9 +Version: 0.8.4 Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}} License: CDDL Group: Applications/System -#Source0: https://github.com/zfsonlinux/zfs/releases/download/zfs-%{version}/%{pname}-%{version}.tar.gz -Source0: %{pname}-%{version}-%{gitrev}.tar.gz -# Source0-md5: ceb367d302942e2291f1ad86c1e0d2be +Source0: https://github.com/openzfs/zfs/releases/download/zfs-%{version}/%{pname}-%{version}.tar.gz +# Source0-md5: f0c203c59c4fcd44187a64758707469f Patch0: x32.patch Patch1: am.patch -URL: http://zfsonlinux.org/ +Patch2: %{pname}-sh.patch +Patch3: link.patch +Patch4: kernel-5.8.patch +URL: https://zfsonlinux.org/ BuildRequires: autoconf >= 2.50 BuildRequires: automake BuildRequires: libtool @@ -51,15 +53,30 @@ BuildRequires: rpmbuild(macros) >= 1.714 %{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2} %endif %if %{with userspace} +# only for mmap_libaio test command +#BuildRequires: libaio-devel BuildRequires: libblkid-devel BuildRequires: libselinux-devel +# if xdr gets removed from glibc +#BuildRequires: libtirpc-devel BuildRequires: libuuid-devel +BuildRequires: openssl-devel +BuildRequires: pkgconfig +BuildRequires: udev-devel BuildRequires: zlib-devel -%if %{with python} -BuildRequires: rpm-pythonprov -BuildRequires: python-modules +%if %{with python2} +BuildRequires: python-cffi +BuildRequires: python-modules >= 1:2.6 BuildRequires: python-setuptools %endif +%if %{with python3} +BuildRequires: python3-cffi +BuildRequires: python3-modules >= 1:3.4 +BuildRequires: python3-setuptools +%endif +%if %{with python2} || %{with python3} +BuildRequires: rpm-pythonprov +%endif %endif Requires: %{pname}-libs = %{version}-%{release} Obsoletes: spl < 0.7.9-2 @@ -139,13 +156,30 @@ ZFS support for Dracut. Obsługa ZFS-a dla Dracuta. %package -n python-pyzfs -Summary: Wrapper for libzfs_core C library +Summary: Python 2 wrapper for libzfs_core C library +Summary(pl.UTF-8): Interfejs Pythona 2 do biblioteki C libzfs_core License: Apache v2.0 Group: Libraries/Python Requires: %{pname}-libs = %{version}-%{release} %description -n python-pyzfs -Wrapper for libzfs_core C library. +Python 2 wrapper for libzfs_core C library. + +%description -n python-pyzfs -l pl.UTF-8 +Interfejs Pythona 2 do biblioteki C libzfs_core. + +%package -n python3-pyzfs +Summary: Python 3 wrapper for libzfs_core C library +Summary(pl.UTF-8): Interfejs Pythona 3 do biblioteki C libzfs_core +License: Apache v2.0 +Group: Libraries/Python +Requires: %{pname}-libs = %{version}-%{release} + +%description -n python3-pyzfs +Python 3 wrapper for libzfs_core C library. + +%description -n python3-pyzfs -l pl.UTF-8 +Interfejs Pythona 3 do biblioteki C libzfs_core. %package -n kernel-zfs-common-devel Summary: ZFS Linux kernel headers @@ -242,6 +276,17 @@ p=`pwd`\ %setup -q -n %{pname}-%{version} %patch0 -p1 %patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 + +%{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+python2(\s|$),#!%{__python}\1,' \ + cmd/arc_summary/arc_summary2 + +%{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+python3(\s|$),#!%{__python3}\1,' \ + cmd/arc_summary/arc_summary3 \ + cmd/arcstat/arcstat \ + cmd/dbufstat/dbufstat %build %{__libtoolize} @@ -254,6 +299,7 @@ p=`pwd`\ %if %{with userspace} %configure \ --disable-silent-rules \ + --enable-systemd \ --with-config="user" \ --with-linux=%{_kernelsrcdir} \ --with-systemdunitdir=%{systemdunitdir} \ @@ -265,9 +311,15 @@ p=`pwd`\ %{__make} \ %{?with_verbose:V=1} -%if %{with python} +%if %{with python2} cd contrib/pyzfs -%py_build %{?with_tests:test} +%py_build +cd ../.. +%endif + +%if %{with python3} +cd contrib/pyzfs +%py3_build cd ../.. %endif %endif @@ -287,7 +339,7 @@ cp -a installed/* $RPM_BUILD_ROOT DESTDIR=$RPM_BUILD_ROOT \ DEFAULT_INIT_DIR=/etc/rc.d/init.d -%if %{with python} +%if %{with python2} %{__rm} -rf $RPM_BUILD_ROOT%{py_sitescriptdir} cd contrib/pyzfs %py_install @@ -300,6 +352,14 @@ cd ../.. %{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/libzfs_core/test %endif +%if %{with python3} +%{__rm} -rf $RPM_BUILD_ROOT{%{py3_sitescriptdir},/usr/local/share/python3*} +cd contrib/pyzfs +%py3_install +cd ../.. +%{__rm} -r $RPM_BUILD_ROOT%{py3_sitescriptdir}/libzfs_core/test +%endif + install -d $RPM_BUILD_ROOT%{_pkgconfigdir} %{__mv} $RPM_BUILD_ROOT%{_npkgconfigdir}/* $RPM_BUILD_ROOT%{_pkgconfigdir} @@ -321,12 +381,13 @@ rm -rf $RPM_BUILD_ROOT %if %{with userspace} %files %defattr(644,root,root,755) -%doc AUTHORS COPYRIGHT LICENSE README.md +%doc AUTHORS COPYRIGHT LICENSE NEWS NOTICE README.md %attr(755,root,root) /sbin/mount.zfs -%attr(755,root,root) %{_bindir}/arc_summary.py -%attr(755,root,root) %{_bindir}/arcstat.py -%attr(755,root,root) %{_bindir}/dbufstat.py +%attr(755,root,root) %{_bindir}/arc_summary +%attr(755,root,root) %{_bindir}/arcstat +%attr(755,root,root) %{_bindir}/dbufstat %attr(755,root,root) %{_bindir}/zgenhostid +%attr(755,root,root) %{_bindir}/zvol_wait %attr(755,root,root) %{_sbindir}/fsck.zfs %attr(755,root,root) %{_sbindir}/zdb %attr(755,root,root) %{_sbindir}/zed @@ -354,11 +415,14 @@ rm -rf $RPM_BUILD_ROOT /etc/systemd/system-preset/50-zfs.preset /lib/systemd/system-generators/zfs-mount-generator %{systemdunitdir}/zfs.target +%{systemdunitdir}/zfs-import.service %{systemdunitdir}/zfs-import.target %{systemdunitdir}/zfs-import-cache.service %{systemdunitdir}/zfs-import-scan.service %{systemdunitdir}/zfs-mount.service %{systemdunitdir}/zfs-share.service +%{systemdunitdir}/zfs-volume-wait.service +%{systemdunitdir}/zfs-volumes.target %{systemdunitdir}/zfs-zed.service %attr(755,root,root) /lib/udev/vdev_id %attr(755,root,root) /lib/udev/zvol_id @@ -374,6 +438,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_datadir}/zfs/*.sh %{_mandir}/man1/zhack.1* %{_mandir}/man1/ztest.1* +%{_mandir}/man1/zvol_wait.1* %{_mandir}/man5/spl-module-parameters.5* %{_mandir}/man5/vdev_id.conf.5* %{_mandir}/man5/zfs-events.5* @@ -440,18 +505,27 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/module-setup.sh %attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/mount-zfs.sh %attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/parse-zfs.sh +%attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/zfs-env-bootfs.service %attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/zfs-generator.sh %attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/zfs-lib.sh %attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/zfs-load-key.sh %attr(755,root,root) %{dracutlibdir}/modules.d/90zfs/zfs-needshutdown.sh -%if %{with python} +%if %{with python2} %files -n python-pyzfs %defattr(644,root,root,755) %doc contrib/pyzfs/README %{py_sitescriptdir}/libzfs_core %{py_sitescriptdir}/pyzfs-*-py*.egg-info %endif + +%if %{with python3} +%files -n python3-pyzfs +%defattr(644,root,root,755) +%doc contrib/pyzfs/README +%{py3_sitescriptdir}/libzfs_core +%{py3_sitescriptdir}/pyzfs-*-py*.egg-info +%endif %endif %if %{with kernel}