]> TLD Linux GIT Repositories - packages/lvm2.git/blobdiff - lvm2.spec
- PLD merge
[packages/lvm2.git] / lvm2.spec
index 30fccefa0c97ae42394e0cad0c91ff4d324b79a6..3e02e4471a65b7a8214d638e258ae68f41a16ffb 100644 (file)
--- a/lvm2.spec
+++ b/lvm2.spec
@@ -1,15 +1,14 @@
 # TODO
 # - vgscan --ignorelocking failure creates /var/lock/lvm (even if /var is not yet mounted)
 # - --with-replicators (=internal/shared/none, default is none)?
-# - OCF agents?
 #
 # Conditional build:
-%bcond_without initrd          # don't build initrd version
+%bcond_with    initrd          # don't build initrd version
 %bcond_without uClibc          # link initrd version with uClibc
 %bcond_with    dietlibc        # link initrd version with dietlibc
 %bcond_with    glibc           # link initrd version with static GLIBC
 %bcond_without  cluster                # disable all cluster support (clvmd&cmirrord)
-%bcond_with    lvmetad         # enable lvmetad
+%bcond_without lvmetad         # disable lvmetad
 %bcond_without selinux         # disable SELinux
 
 %ifarch sparc64 sparc
 Summary:       The new version of Logical Volume Manager for Linux
 Summary(pl.UTF-8):     Nowa wersja Logical Volume Managera dla Linuksa
 Name:          lvm2
-Version:       2.02.98
-Release:       3
+Version:       2.02.105
+Release:       1
 License:       GPL v2 and LGPL v2.1
 Group:         Applications/System
 Source0:       ftp://sources.redhat.com/pub/lvm2/LVM2.%{version}.tgz
-# Source0-md5: 1ce5b7f9981e1d02dfd1d3857c8d9fbe
+# Source0-md5: b5b3540661fc70bf329b526c1cfbcf3a
 Source1:       %{name}-tmpfiles.conf
 Source2:       clvmd.service
 Source3:       clvmd.sysconfig
@@ -62,7 +61,7 @@ BuildRequires:        ncurses-devel
 BuildRequires: pkgconfig
 BuildRequires: readline-devel
 BuildRequires: rpmbuild(macros) >= 1.647
-BuildRequires: udev-devel >= 143
+BuildRequires: udev-devel >= 1:143
 %if %{with initrd}
 %if %{with dietlibc}
 BuildRequires: dietlibc-static >= 2:0.32-7
@@ -163,11 +162,24 @@ This daemon relies on the cluster infrastructure provided by the
 Cluster MANager (CMAN), which must be set up and running in order for
 cmirrord to function.
 
+%package resource-agents
+Summary:       OCF Resource Agents for LVM2 processes
+Summary(pl.UTF-8):     Agenci OCF do monitorowania procesów LVM2
+Group:         Applications/System
+Requires:      %{name} = %{version}-%{release}
+Requires:      resource-agents
+
+%description resource-agents
+OCF Resource Agents for LVM2 processes.
+
+%description resource-agents -l pl.UTF-8
+Agenci OCF do monitorowania procesów LVM2.
+
 %package -n device-mapper
 Summary:       Userspace support for the device-mapper
 Summary(pl.UTF-8):     Wsparcie dla mapowania urządzeń w przestrzeni użytkownika
 Group:         Base
-Requires(post,preun,postun):   systemd-units >= 38
+Requires(post,postun): /sbin/ldconfig
 Requires:      systemd-units >= 38
 
 %description -n device-mapper
@@ -289,13 +301,12 @@ cp -f /usr/share/automake/config.sub autoconf
        ac_cv_lib_dl_dlopen=no \
        %{?with_uClibc:ac_cv_func_siginterrupt=no} \
        %{?debug:--enable-debug} \
-       --with-optimisation="%{rpmcflags} -Os" \
+       --disable-nls \
+       --disable-readline \
+       --enable-selinux%{!?with_glibc:=no} \
        --enable-static_link \
        --with-lvm1=internal \
-       --disable-selinux \
-       --%{?with_glibc:en}%{!?with_glibc:dis}able-selinux \
-       --disable-readline \
-       --disable-nls
+       --with-optimisation="%{rpmcflags} -Os"
 # glibc version links with normal static libdevicemapper which has selinux enabled
 # and we need to keep these in sync between device-mapper and lvm2
 
@@ -310,6 +321,16 @@ cp -f /usr/share/automake/config.sub autoconf
 mv -f tools/lvm.static initrd-lvm
 mv -f tools/dmsetup.static initrd-dmsetup
 
+# check if tools works
+for tool in initrd-lvm initrd-dmsetup; do
+       LVM_SYSTEM_DIR=$(pwd) ./$tool help && rc=$? || rc=$?
+       if [ $rc -gt 127 ]; then
+               echo >&2 "Unexpected failure (exit status: $rc) from $tool. Does this tool work?!"
+               exit 1
+       fi
+done
+
+
 %{?with_dietlibc:mv -f libdm/ioctl/libdevmapper.a diet-libdevmapper.a}
 %{__make} clean
 
@@ -317,34 +338,37 @@ unset CC
 %endif
 
 %configure \
-       --with-usrlibdir=%{_libdir} \
-       %{?debug:--enable-debug} \
-       --with-optimisation="%{rpmcflags}" \
-       --enable-readline \
-       --enable-fsadm \
        --enable-applib \
        --enable-cmdlib \
-       %{?with_lvmetad:--enable-lvmetad} \
+       %{?debug:--enable-debug} \
        --enable-dmeventd \
-       --with-dmeventd-path=%{_sbindir}/dmeventd \
+       --enable-fsadm \
+       %{?with_lvmetad:--enable-lvmetad} \
+       --enable-ocf \
+       --enable-readline \
+       %{!?with_selinux:--disable-selinux} \
        --enable-pkgconfig \
        --enable-udev_sync \
        --enable-udev_rules \
+       --with-cluster=internal \
 %if %{with cluster}
        --with-clvmd=corosync \
        --enable-cmirrord \
 %endif
+       --with-dmeventd-path=%{_sbindir}/dmeventd \
+       --with-interface=ioctl \
        --with-lvm1=internal \
+       --with-mirrors=internal \
+       --with-optimisation="%{rpmcflags}" \
        --with-pool=internal \
-       --with-cluster=internal \
        --with-snapshots=internal \
-       --with-mirrors=internal \
+       --with-systemdsystemunitdir=%{systemdunitdir} \
        --with-thin=internal \
-       --with-thin-check="" \
-       --with-interface=ioctl \
+       --with-thin-check=%{_sbindir}/thin_check \
+       --with-thin-dump=%{_sbindir}/thin_dump \
+       --with-thin-repair=%{_sbindir}/thin_repair \
        --with-udev-prefix=/ \
-       --with-systemd_dir=%{systemdunitdir} \
-       %{!?with_selinux:--disable-selinux}
+       --with-usrlibdir=%{_libdir}
 
 %{__make} -j1
 %{__make} -j1 -C libdm LIB_STATIC=libdevmapper.a
@@ -461,12 +485,26 @@ fi
 %{_mandir}/man8/vg*.8*
 %attr(750,root,root) %dir %{_sysconfdir}/lvm
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/lvm.conf
+%attr(750,root,root) %dir %{_sysconfdir}/lvm/profile
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/profile/default.profile
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/profile/thin-performance.profile
+%if %{with lvmetad}
+/lib/udev/rules.d/69-dm-lvm-metad.rules
+%endif
 %{_sysconfdir}/tmpfiles.d/lvm2.conf
-%{systemdunitdir}/lvm2-monitor.service
 %{systemdunitdir}/blk-availability.service
+%if %{with lvmetad}
+%{systemdunitdir}/lvm2-lvmetad.service
+%{systemdunitdir}/lvm2-lvmetad.socket
+%endif
+%{systemdunitdir}/lvm2-monitor.service
+%{systemdunitdir}/lvm2-pvscan@.service
 %dir %{_sysconfdir}/lvm/cache
 %ghost %{_sysconfdir}/lvm/cache/.cache
 %attr(754,root,root) /etc/rc.d/init.d/blk-availability
+%if %{with lvmetad}
+%attr(754,root,root) /etc/rc.d/init.d/lvm2-lvmetad
+%endif
 %attr(754,root,root) /etc/rc.d/init.d/lvm2-monitor
 %dir %attr(700,root,root) /var/run/lvm
 
@@ -486,6 +524,11 @@ fi
 %attr(754,root,root) /etc/rc.d/init.d/cmirrord
 %endif
 
+%files resource-agents
+%defattr(644,root,root,755)
+%dir %{_prefix}/lib/ocf/resource.d/lvm2
+%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/lvm2/VolumeGroup
+
 %files -n device-mapper
 %defattr(644,root,root,755)
 %doc *_DM