Blame SPECS/sid.spec

41ea92
#global commit 13a0dd86874b5d7558a0e131f3deaa42cd7d9d23
41ea92
%{?commit:%global shortcommit %(c=%{commit}; echo ${c:0:7})}
41ea92
%{?commit:%global commitdate 20200828}
41ea92
%{?commit:%global scmsnap %{commitdate}git%{shortcommit}}
41ea92
41ea92
%global enable_dm_mpath_support 1
41ea92
41ea92
##############################################################################
41ea92
# SID
41ea92
##############################################################################
41ea92
41ea92
Name: sid
41ea92
%if 0%{?rhel}
41ea92
Epoch: %{rhel}
41ea92
%endif
41ea92
Version: 0.0.4
41ea92
Release: 6%{?scmsnap:.%{scmsnap}}%{?dist}
41ea92
Summary: Storage Instantiation Daemon (SID)
41ea92
41ea92
License: GPLv2+
41ea92
URL: http://sid-project.github.io
41ea92
%if %{defined commit}
41ea92
Source0: https://github.com/sid-project/%{name}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz
41ea92
%else
41ea92
Source0: https://github.com/sid-project/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz
41ea92
%endif
41ea92
41ea92
Patch0: sid-0-0-5-modules-ucmd-dm_mpath-sync-with-mpath_valid-changes.patch
41ea92
41ea92
BuildRequires: make
41ea92
BuildRequires: autoconf
41ea92
BuildRequires: automake
41ea92
BuildRequires: libtool
41ea92
BuildRequires: gcc
41ea92
BuildRequires: systemd-rpm-macros
41ea92
BuildRequires: systemd-devel >= 221
41ea92
BuildRequires: libudev-devel >= 174
41ea92
BuildRequires: libuuid-devel
41ea92
BuildRequires: libblkid-devel
41ea92
%if %{enable_dm_mpath_support}
41ea92
BuildRequires: device-mapper-multipath-devel >= 0.8.4-7
41ea92
%endif
41ea92
41ea92
Requires: systemd
41ea92
Requires: systemd-udev
41ea92
Requires: %{name}-base-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-log-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-resource-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-tools = %{?epoch}:%{version}-%{release}
41ea92
41ea92
%description
41ea92
Storage Instantiation Daemon (SID) aims to help with Linux storage
41ea92
device state tracking that encompasses device layers, groups and whole
41ea92
stacks by monitoring progression of events. Based on monitored states
41ea92
and further recorded information, it is able to trigger associated
41ea92
actions for well-defined triggers, including activation and deactivation
41ea92
of devices and their layers in the stack.
41ea92
41ea92
%prep
41ea92
%if %{defined commit}
41ea92
%autosetup -p1 -n sid-%{commit}
41ea92
%else
41ea92
%autosetup -p1 -n sid-%{version}
41ea92
%endif
41ea92
41ea92
%if ! %{enable_dm_mpath_support}
41ea92
%global configure_dm_mpath --disable-mod-dm_mpath
41ea92
%endif
41ea92
41ea92
%build
41ea92
./autogen.sh
41ea92
%configure %{?configure_dm_mpath}
41ea92
%make_build
41ea92
41ea92
%install
41ea92
make DESTDIR=%{buildroot} install
41ea92
rm -f %{buildroot}/%{_libdir}/sid/*.{a,la}
41ea92
rm -f %{buildroot}/%{_libdir}/sid/modules/ucmd/block/*.{a,la}
41ea92
rm -f %{buildroot}/%{_libdir}/sid/modules/ucmd/type/*.{a,la}
41ea92
41ea92
%files
41ea92
%license COPYING
41ea92
%{_sbindir}/sid
41ea92
%config(noreplace) %{_sysconfdir}/sysconfig/sid.sysconfig
41ea92
%{_udevrulesdir}/00-sid.rules
41ea92
%{_unitdir}/sid.socket
41ea92
%{_unitdir}/sid.service
41ea92
%{_mandir}/man8/sid.8.gz
41ea92
%doc README.md
41ea92
41ea92
%post
41ea92
%systemd_post sid.socket sid.service
41ea92
41ea92
%preun
41ea92
%systemd_preun sid.service sid.socket
41ea92
41ea92
%postun
41ea92
%systemd_postun sid.service sid.socket
41ea92
41ea92
##############################################################################
41ea92
# SID-BASE-LIBS
41ea92
##############################################################################
41ea92
41ea92
%package base-libs
41ea92
Summary: Libraries for Storage Instantiation Daemon (SID) base
41ea92
License: GPLv2+
41ea92
%description base-libs
41ea92
This package contains shared libraries with low-level functionality needed for
41ea92
Storage Instantiation Daemon (SID), its modules and related tools. Currently,
41ea92
it contains basic support for bitmaps, buffering, IPC, hashing, lists, memory
41ea92
handling and other helper functions.
41ea92
41ea92
%files base-libs
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidbase.so.*
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-BASE-LIBS-DEVEL
41ea92
##############################################################################
41ea92
41ea92
%package base-libs-devel
41ea92
Summary: Development files for Storage Instantiation Daemon (SID) base
41ea92
License: GPLv2+
41ea92
Requires: %{name}-base-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
%description base-libs-devel
41ea92
This package contains development files for Storage Instantiation Daemon (SID)
41ea92
base libraries.
41ea92
41ea92
%files base-libs-devel
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidbase.so
41ea92
%dir %{_includedir}/sid
41ea92
%{_includedir}/sid/config.h
41ea92
%dir %{_includedir}/sid/base
41ea92
%{_includedir}/sid/base/bitmap.h
41ea92
%{_includedir}/sid/base/buffer-common.h
41ea92
%{_includedir}/sid/base/buffer.h
41ea92
%{_includedir}/sid/base/common.h
41ea92
%{_includedir}/sid/base/comms.h
41ea92
%{_includedir}/sid/base/list.h
41ea92
%{_includedir}/sid/base/mem.h
41ea92
%{_includedir}/sid/base/util.h
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-LOG-LIBS
41ea92
##############################################################################
41ea92
41ea92
%package log-libs
41ea92
Summary: Libraries for Storage Instantiation Daemon (SID) logging
41ea92
License: GPLv2+
41ea92
%description log-libs
41ea92
This package contains shared libraries with logging support needed for Storage
41ea92
Instantiation daemon (SID), its modules and related tools.
41ea92
41ea92
%files log-libs
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidlog.so.*
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-LOG-LIBS-DEVEL
41ea92
##############################################################################
41ea92
41ea92
%package log-libs-devel
41ea92
Summary: Development files for Storage Instantiation Daemon (SID) logging
41ea92
License: GPLv2+
41ea92
Requires: %{name}-log-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
%description log-libs-devel
41ea92
This package contains development files for Storage Instantiation Daemon (SID)
41ea92
logging libraries.
41ea92
41ea92
%files log-libs-devel
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidlog.so
41ea92
%dir %{_includedir}/sid
41ea92
%dir %{_includedir}/sid/log
41ea92
%{_includedir}/sid/log/log.h
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-IFACE-LIBS
41ea92
##############################################################################
41ea92
41ea92
%package iface-libs
41ea92
Summary: Libraries for Storage Instantiation Daemon (SID) interfaces
41ea92
License: GPLv2+
41ea92
Requires: %{name}-base-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
%description iface-libs
41ea92
This package contains shared libraries to support interfaces used in Storage
41ea92
Instantiation Daemon (SID), its modules and related tools.
41ea92
41ea92
%files iface-libs
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidiface_servicelink.so.*
41ea92
%{_libdir}/sid/libsidiface_usid.so.*
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-IFACE-LIBS-DEVEL
41ea92
##############################################################################
41ea92
41ea92
%package iface-libs-devel
41ea92
Summary: Development files for Storage Instantiation Daemon (SID) interfaces
41ea92
License: GPLv2+
41ea92
Requires: %{name}-iface-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
%description iface-libs-devel
41ea92
This package contains development files for Storage Instantiation Daemon (SID)
41ea92
interface libraries.
41ea92
41ea92
%files iface-libs-devel
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidiface_servicelink.so
41ea92
%{_libdir}/sid/libsidiface_usid.so
41ea92
%dir %{_includedir}/sid
41ea92
%dir %{_includedir}/sid/iface
41ea92
%{_includedir}/sid/iface/service-link.h
41ea92
%{_includedir}/sid/iface/usid.h
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-RESOURCE-LIBS
41ea92
##############################################################################
41ea92
41ea92
%package resource-libs
41ea92
Summary: Libraries for Storage Instantiation Daemon (SID) resources
41ea92
License: GPLv2+
41ea92
Requires: %{name}-base-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-log-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-iface-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
# Systemd supports event loop since v221
41ea92
Requires: systemd-libs >= 221
41ea92
%description resource-libs
41ea92
This package contains shared libraries to support high-level resources that
41ea92
represent hierarchical units of reusable code used in Storage Instantiation
41ea92
Daemon (SID), its modules and related tools. Currently, it contains support
41ea92
for aggregation, key-value store, module loading and registry, worker process
41ea92
control, bridging SID core and udev and creating an instance of SID as a whole.
41ea92
41ea92
%files resource-libs
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidresource.so.*
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-RESOURCE-LIBS-DEVEL
41ea92
##############################################################################
41ea92
41ea92
%package resource-libs-devel
41ea92
Summary: Development files for Storage Instantiation Daemon (SID) resources
41ea92
License: GPLv2+
41ea92
Requires: %{name}-resource-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
%description resource-libs-devel
41ea92
This package contains development files for Storage Instantiation Daemon (SID)
41ea92
resource libraries.
41ea92
41ea92
%files resource-libs-devel
41ea92
%dir %{_libdir}/sid
41ea92
%{_libdir}/sid/libsidresource.so
41ea92
%dir %{_includedir}/sid
41ea92
%dir %{_includedir}/sid/resource
41ea92
%{_includedir}/sid/resource/kv-store.h
41ea92
%{_includedir}/sid/resource/module-registry.h
41ea92
%{_includedir}/sid/resource/module.h
41ea92
%{_includedir}/sid/resource/resource-type-regs.h
41ea92
%{_includedir}/sid/resource/resource.h
41ea92
%{_includedir}/sid/resource/ucmd-module.h
41ea92
%{_includedir}/sid/resource/worker-control.h
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-TOOLS
41ea92
##############################################################################
41ea92
41ea92
%package tools
41ea92
Summary: Storage Instantiation Daemon (SID) supporting tools
41ea92
Requires: %{name}-base-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-log-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-iface-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: systemd-udev
41ea92
%description tools
41ea92
This package contains tools to support Storage Instantiation Daemon (SID).
41ea92
41ea92
41ea92
%files tools
41ea92
%{_udevrulesdir}/../usid
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-MOD-DUMMIES
41ea92
##############################################################################
41ea92
%package mod-dummies
41ea92
Summary: Dummy block and type module for Storage Instantiation Daemon (SID)
41ea92
Requires: %{name}-log-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-resource-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
%description mod-dummies
41ea92
This package contains dummy block and type modules for Storage Instantiation
41ea92
Daemon (SID). Their only purpose is to test SID module functionality and hook
41ea92
execution.
41ea92
41ea92
%files mod-dummies
41ea92
%dir %{_libdir}/sid
41ea92
%dir %{_libdir}/sid/modules/
41ea92
%dir %{_libdir}/sid/modules/ucmd
41ea92
%dir %{_libdir}/sid/modules/ucmd/block
41ea92
%dir %{_libdir}/sid/modules/ucmd/type
41ea92
%{_libdir}/sid/modules/ucmd/block/dummy_block.so
41ea92
%{_libdir}/sid/modules/ucmd/type/dummy_type.so
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-MOD-BLOCK-BLKID
41ea92
##############################################################################
41ea92
41ea92
%package mod-block-blkid
41ea92
Summary: Blkid block module for Storage Instantiation Daemon (SID)
41ea92
Requires: %{name}-log-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-resource-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
%description mod-block-blkid
41ea92
This package contains blkid block module for Storage Instantiation Daemon (SID).
41ea92
41ea92
%files mod-block-blkid
41ea92
%dir %{_libdir}/sid
41ea92
%dir %{_libdir}/sid/modules
41ea92
%dir %{_libdir}/sid/modules/ucmd
41ea92
%dir %{_libdir}/sid/modules/ucmd/block
41ea92
%{_libdir}/sid/modules/ucmd/block/blkid.so
41ea92
%doc README.md
41ea92
41ea92
41ea92
##############################################################################
41ea92
# SID-MOD-BLOCK-DM_MPATH
41ea92
##############################################################################
41ea92
41ea92
%if %{enable_dm_mpath_support}
41ea92
41ea92
%package mod-block-dm-mpath
41ea92
Summary: Device-mapper multipath block module for Storage Instantiation Daemon (SID)
41ea92
Requires: %{name}-log-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: %{name}-resource-libs%{?_isa} = %{?epoch}:%{version}-%{release}
41ea92
Requires: device-mapper-multipath-libs >= 0.8.4-7
41ea92
%description mod-block-dm-mpath
41ea92
This package contains device-mapper multipath block module for Storage
41ea92
Instantiation Daemon (SID).
41ea92
41ea92
%files mod-block-dm-mpath
41ea92
%dir %{_libdir}/sid
41ea92
%dir %{_libdir}/sid/modules
41ea92
%dir %{_libdir}/sid/modules/ucmd
41ea92
%dir %{_libdir}/sid/modules/ucmd/block
41ea92
%{_libdir}/sid/modules/ucmd/block/dm_mpath.so
41ea92
%doc README.md
41ea92
41ea92
%endif
41ea92
41ea92
41ea92
%changelog
41ea92
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 8:0.0.4-6
41ea92
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
41ea92
  Related: rhbz#1991688
41ea92
41ea92
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 8:0.0.4-5
41ea92
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
41ea92
41ea92
* Fri Jan 29 2021 Peter Rajnoha <prajnoha@redhat.com> - 0.0.4-4
41ea92
- Add epoch to rpm spec file for RHEL-based releases.
41ea92
41ea92
* Fri Jan 29 2021 Peter Rajnoha <prajnoha@redhat.com> - 0.0.4-3
41ea92
- Sync with mpath_valid changes.
41ea92
41ea92
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.4-2
41ea92
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
41ea92
41ea92
* Tue Oct 06 2020 Peter Rajnoha <prajnoha@redhat.com> - 0.0.4-1
41ea92
- Initial release.