# # spec file for package lvm2 # # Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Url: http://sources.redhat.com/cluster/clvm/ Name: lvm2 BuildRequires: libcorosync-devel BuildRequires: libdlm-devel BuildRequires: libopenais-devel BuildRequires: libselinux-devel BuildRequires: readline-devel BuildRequires: pkgconfig(udev) Requires: device-mapper >= 1.02.25 Provides: lvm PreReq: %fillup_prereq %insserv_prereq /sbin/mkinitrd Version: 2.02.98 Release: 0 Summary: Logical Volume Manager Tools License: GPL-2.0 and LGPL-2.1 Group: System/Base Source: ftp://sources.redhat.com/pub/%{name}/LVM2.%{version}.tgz Source1: lvm.conf Source2: boot.lvm Source3: sysconfig.lvm Source4: mkinitrd-lvm2-setup.sh Source5: mkinitrd-lvm2-boot.sh Source6: 64-lvm2.rules Source7: collect_lvm Source8: clvmd.ocf Source11: boot.device-mapper Source12: mkinitrd-devmapper-setup.sh Source13: mkinitrd-devmapper-boot.sh Source14: baselibs.conf Patch: improve_probing.diff Patch2: no-inc-audit.diff Patch3: no_buildroot_shared.diff Patch4: sys_mount_instead_linux_fs.diff Patch6: man_page_sectors.diff Patch13: pipe_buff-definition.diff Patch19: dont_ignore_tmp_device_file.diff Patch20: support-drbd-filter.diff Patch22: handle_extended_devt.diff Patch61: device-mapper-dmsetup-export.patch Patch65: device-mapper-dmsetup-deps-export.patch Patch66: device-mapper-type_punning.diff Patch70: sleep-try-open-count.diff Patch81: udev-rules_update.diff Patch82: udev_sync-cookie_set-1-on-each-dm_task_set_cookie-ca.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # Not a real replacement but we drop evms Provides: evms = 2.5.5 Provides: evms-devel = 2.5.5 Provides: evms-gui = 2.5.5 Provides: evms-ha = 2.5.5 Obsoletes: evms <= 2.5.5 Obsoletes: evms-devel <= 2.5.5 Obsoletes: evms-gui <= 2.5.5 Obsoletes: evms-ha <= 2.5.5 %define _udevdir %(pkg-config --variable=udevdir udev) %description Programs and man pages for configuring and using the LVM2 Logical Volume Manager. %prep %setup -q -n LVM2.%{version} %patch -p1 %patch2 %patch3 %patch4 %patch6 -p1 %patch13 -p1 %patch19 -p1 %patch20 -p1 %patch22 -p1 %patch61 -p1 %patch65 -p1 %patch66 -p1 %patch70 -p1 %patch81 -p1 %patch82 -p1 %build export MODPROBE_CMD=/sbin/modprobe %configure --prefix=/ \ --bindir=/bin --libdir=/%_lib --with-usrlibdir=%_libdir \ --sbindir=/sbin --enable-dmeventd \ --with-udevdir=%{_udevdir}/rules.d \ --with-dmeventd_path=/sbin/dmeventd \ --with-device-uid=0 --with-device-gid=6 --with-device-mode=0640 \ --enable-udev_sync --enable-udev_rules \ --enable-cmdlib --enable-dmeventd \ --enable-realtime --enable-pkgconfig \ --enable-selinux \ --with-clvmd=corosync --datarootdir=/usr/share --with-default-locking-dir=/run/lock/lvm export SUSE_ASNEEDED=0 make -j1 # symlinks are generated in parallel! %{?_smp_mflags} %install make install DESTDIR=$RPM_BUILD_ROOT install -d -m 755 $RPM_BUILD_ROOT/etc/lvm install -d -m 755 $RPM_BUILD_ROOT/etc/lvm/backup install -d -m 755 $RPM_BUILD_ROOT/etc/lvm/archive install -d -m 755 $RPM_BUILD_ROOT/etc/lvm/metadata install -m 644 %{SOURCE1} $RPM_BUILD_ROOT/etc/lvm mkdir -p $RPM_BUILD_ROOT/etc/init.d install -m 755 %{SOURCE2} $RPM_BUILD_ROOT/etc/init.d install -m 744 %{SOURCE11} $RPM_BUILD_ROOT/etc/init.d install -d $RPM_BUILD_ROOT/lib/mkinitrd/scripts install -m 755 %{SOURCE4} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/setup-lvm2.sh install -m 755 %{SOURCE5} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/boot-lvm2.sh install -m 755 %{SOURCE12} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/setup-dm.sh install -m 755 %{SOURCE13} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/boot-dm.sh mkdir -p $RPM_BUILD_ROOT/var/adm/fillup-templates install -m 644 %{SOURCE3} $RPM_BUILD_ROOT/var/adm/fillup-templates install -m755 -D %{S:8} $RPM_BUILD_ROOT/usr/lib/ocf/resource.d/lvm2/clvmd rm -f $RPM_BUILD_ROOT/%_libdir/liblvm2cmd.so ln -sf liblvm2cmd.so.2.02 $RPM_BUILD_ROOT/%_lib/liblvm2cmd.so rm -f $RPM_BUILD_ROOT/%_libdir/libdevmapper-event-lvm2.so ln -sf libdevmapper-event-lvm2.so.2.02 $RPM_BUILD_ROOT/%_lib/libdevmapper-event-lvm2.so pushd $RPM_BUILD_ROOT/%_lib ln -sf device-mapper/libdevmapper-event-lvm2mirror.so libdevmapper-event-lvm2mirror.so.2.02 ln -sf device-mapper/libdevmapper-event-lvm2snapshot.so libdevmapper-event-lvm2snapshot.so.2.02 ln -sf device-mapper/libdevmapper-event-lvm2raid.so libdevmapper-event-lvm2raid.so.2.02 popd install -d $RPM_BUILD_ROOT/usr/sbin mv $RPM_BUILD_ROOT/sbin/clvmd $RPM_BUILD_ROOT/usr/sbin/clvmd mkdir -p $RPM_BUILD_ROOT/usr/share rm $RPM_BUILD_ROOT/usr/include/lvm2cmd.h # install and collect_lvm install -m755 -D %{S:7} $RPM_BUILD_ROOT%{_udevdir}/collect_lvm %post %{fillup_and_insserv -n lvm boot.lvm} [ -x /sbin/mkinitrd_setup ] && /sbin/mkinitrd_setup if [ -e /var/lib/no_initrd_recreation_by_suspend ]; then echo "Skipping recreation of existing initial ramdisks, due" echo "to presence of /var/lib/no_initrd_recreation_by_suspend" elif [ -x /sbin/mkinitrd ]; then /sbin/mkinitrd fi /sbin/ldconfig %preun %{stop_on_removal boot.lvm} %postun %{insserv_cleanup} [ -x /sbin/mkinitrd_setup ] && /sbin/mkinitrd_setup if [ -e /var/lib/no_initrd_recreation_by_suspend ]; then echo "Skipping recreation of existing initial ramdisks, due" echo "to presence of /var/lib/no_initrd_recreation_by_suspend" elif [ -x /sbin/mkinitrd ]; then /sbin/mkinitrd fi /sbin/ldconfig %files %defattr(-,root,root) %doc README WHATS_NEW doc/* %dir /etc/lvm %dir /etc/lvm/backup %dir /etc/lvm/archive %dir /etc/lvm/metadata %config /etc/lvm/lvm.conf %config /etc/init.d/boot.lvm %dir /lib/mkinitrd %dir /lib/mkinitrd/scripts %{_udevdir}/rules.d/11-dm-lvm.rules %{_udevdir}/collect_lvm /lib/mkinitrd/scripts/setup-lvm2.sh /lib/mkinitrd/scripts/boot-lvm2.sh /var/adm/fillup-templates/sysconfig.lvm /sbin/blkdeactivate /sbin/fsadm /sbin/lvchange /sbin/lvconvert /sbin/lvcreate /sbin/lvdisplay /sbin/lvextend /sbin/lvm /sbin/lvmchange /sbin/lvmdiskscan /sbin/lvmdump /sbin/lvmsadc /sbin/lvmsar /sbin/lvreduce /sbin/lvremove /sbin/lvrename /sbin/lvresize /sbin/lvs /sbin/lvscan /sbin/pvchange /sbin/pvck /sbin/pvcreate /sbin/pvdisplay /sbin/pvmove /sbin/pvremove /sbin/pvresize /sbin/pvs /sbin/pvscan /sbin/vgcfgbackup /sbin/vgcfgrestore /sbin/vgchange /sbin/vgck /sbin/vgconvert /sbin/vgcreate /sbin/vgdisplay /sbin/vgexport /sbin/vgextend /sbin/vgimport /sbin/vgimportclone /sbin/vgmerge /sbin/vgmknodes /sbin/vgreduce /sbin/vgremove /sbin/vgrename /sbin/vgs /sbin/vgscan /sbin/vgsplit /sbin/lvmconf %dir /%_lib/device-mapper /%_lib/device-mapper/libdevmapper-event-lvm2mirror.so /%_lib/device-mapper/libdevmapper-event-lvm2snapshot.so /%_lib/device-mapper/libdevmapper-event-lvm2raid.so /%_lib/libdevmapper-event-lvm2mirror.so /%_lib/libdevmapper-event-lvm2snapshot.so /%_lib/libdevmapper-event-lvm2raid.so /%_lib/liblvm2cmd.so /%_lib/libdevmapper-event-lvm2mirror.so.2.02 /%_lib/libdevmapper-event-lvm2snapshot.so.2.02 /%_lib/libdevmapper-event-lvm2raid.so.2.02 /%_lib/liblvm2cmd.so.2.02 /%_lib/libdevmapper-event-lvm2.so /%_lib/libdevmapper-event-lvm2.so.2.02 %{_mandir}/man5/lvm.conf.5.gz %{_mandir}/man8/blkdeactivate.8.gz %{_mandir}/man8/fsadm.8.gz %{_mandir}/man8/lvchange.8.gz %{_mandir}/man8/lvcreate.8.gz %{_mandir}/man8/lvconvert.8.gz %{_mandir}/man8/lvdisplay.8.gz %{_mandir}/man8/lvmdump.8.gz %{_mandir}/man8/lvextend.8.gz %{_mandir}/man8/lvm.8.gz %{_mandir}/man8/lvmchange.8.gz %{_mandir}/man8/lvmdiskscan.8.gz %{_mandir}/man8/lvreduce.8.gz %{_mandir}/man8/lvremove.8.gz %{_mandir}/man8/lvrename.8.gz %{_mandir}/man8/lvresize.8.gz %{_mandir}/man8/lvs.8.gz %{_mandir}/man8/lvscan.8.gz %{_mandir}/man8/pvchange.8.gz %{_mandir}/man8/pvck.8.gz %{_mandir}/man8/pvcreate.8.gz %{_mandir}/man8/pvdisplay.8.gz %{_mandir}/man8/pvmove.8.gz %{_mandir}/man8/pvremove.8.gz %{_mandir}/man8/pvresize.8.gz %{_mandir}/man8/pvs.8.gz %{_mandir}/man8/pvscan.8.gz %{_mandir}/man8/vgcfgbackup.8.gz %{_mandir}/man8/vgcfgrestore.8.gz %{_mandir}/man8/vgchange.8.gz %{_mandir}/man8/vgck.8.gz %{_mandir}/man8/vgconvert.8.gz %{_mandir}/man8/vgcreate.8.gz %{_mandir}/man8/vgdisplay.8.gz %{_mandir}/man8/vgexport.8.gz %{_mandir}/man8/vgextend.8.gz %{_mandir}/man8/vgimport.8.gz %{_mandir}/man8/vgimportclone.8.gz %{_mandir}/man8/vgmerge.8.gz %{_mandir}/man8/vgmknodes.8.gz %{_mandir}/man8/vgreduce.8.gz %{_mandir}/man8/vgremove.8.gz %{_mandir}/man8/vgrename.8.gz %{_mandir}/man8/vgs.8.gz %{_mandir}/man8/vgscan.8.gz %{_mandir}/man8/vgsplit.8.gz %{_mandir}/man8/lvmconf.8.gz %{_mandir}/man8/lvmsadc.8.gz %{_mandir}/man8/lvmsar.8.gz %package -n device-mapper # bug437293 %ifarch ppc64 Obsoletes: device-mapper-64bit %endif # Version: 1.02.77 Release: 0 Url: ftp://sources.redhat.com/pub/lvm2/ Summary: Device Mapper Tools Group: System/Base %description -n device-mapper Programs, libraries, and man pages for configuring and using the device mapper. %post -n device-mapper %{run_ldconfig} [ -x /sbin/mkinitrd_setup ] && mkinitrd_setup %{insserv_cleanup} %postun -n device-mapper %{run_ldconfig} [ -x /sbin/mkinitrd_setup ] && mkinitrd_setup %{insserv_cleanup} %files -n device-mapper %defattr(-,root,root) %doc COPYING COPYING.LIB README VERSION_DM WHATS_NEW_DM %config /etc/init.d/boot.device-mapper /%_lib/libdevmapper.so.1.02 /%_lib/libdevmapper-event.so.1.02 %{_udevdir}/rules.d/10-dm.rules #%{_udevdir}/rules.d/12-dm-permissions.rules %{_udevdir}/rules.d/13-dm-disk.rules %{_udevdir}/rules.d/95-dm-notify.rules /sbin/dmsetup /sbin/dmeventd %{_mandir}/man8/dmsetup.8.gz %{_mandir}/man8/dmeventd.8.gz %dir /lib/mkinitrd %dir /lib/mkinitrd/scripts /lib/mkinitrd/scripts/setup-dm.sh /lib/mkinitrd/scripts/boot-dm.sh %package -n device-mapper-devel Version: 1.02.77 Release: 0 Summary: Development package for the device mapper Group: System/Base Requires: device-mapper = 1.02.77 %description -n device-mapper-devel Files needed for software development using the device mapper %files -n device-mapper-devel %defattr(-,root,root) /%_libdir/libdevmapper.so /%_libdir/libdevmapper-event.so /%_libdir/pkgconfig/*.pc /usr/include/libdevmapper.h /usr/include/libdevmapper-event.h %package clvm Url: http://sources.redhat.com/cluster/clvm/ Version: 2.02.98 Release: 0 Requires: device-mapper >= 1.02.25 Requires: lvm2 = %{version} Requires: openais Provides: clvm Summary: Clustered LVM2 Group: System/Base %description clvm A daemon for using LVM2 Logival Volumes in a clustered environment. %files clvm %defattr(-,root,root) /usr/sbin/clvmd %dir /usr/lib/ocf %dir /usr/lib/ocf/resource.d %dir /usr/lib/ocf/resource.d/lvm2 /usr/lib/ocf/resource.d/lvm2/clvmd %{_mandir}/man8/clvmd.8.gz %changelog