Add nbdkit-srpm-macros
This commit is contained in:
parent
9f65d71f46
commit
90d0f9b2f0
23
nbdkit-find-provides
Executable file
23
nbdkit-find-provides
Executable file
@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash -
|
||||||
|
|
||||||
|
# Generate RPM provides automatically for nbdkit packages and filters.
|
||||||
|
# Copyright (C) 2009-2022 Red Hat Inc.
|
||||||
|
|
||||||
|
# To test:
|
||||||
|
# find /usr/lib64/nbdkit/plugins | ./nbdkit-find-provides VER REL
|
||||||
|
# find /usr/lib64/nbdkit/filters | ./nbdkit-find-provides VER REL
|
||||||
|
|
||||||
|
ver="$1"
|
||||||
|
rel="$2"
|
||||||
|
|
||||||
|
function process_file
|
||||||
|
{
|
||||||
|
if [[ $1 =~ /plugins/nbdkit-.*-plugin ]] ||
|
||||||
|
[[ $1 =~ /filters/nbdkit-.*-filter ]]; then
|
||||||
|
echo "Provides:" "$(basename $1 .so)" "=" "$ver-$rel"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
while read line; do
|
||||||
|
process_file "$line"
|
||||||
|
done
|
3
nbdkit.attr
Normal file
3
nbdkit.attr
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
%__nbdkit_provides %{_rpmconfigdir}/nbdkit-find-provides %{version} %{release}
|
||||||
|
%__nbdkit_path %{_libdir}/nbdkit/(plugins|filters)/nbdkit-.*-(plugin|filter)(\.so)?$
|
||||||
|
%__nbdkit_flags exeonly
|
88
nbdkit.spec
88
nbdkit.spec
@ -53,7 +53,7 @@ ExclusiveArch: x86_64
|
|||||||
|
|
||||||
Name: nbdkit
|
Name: nbdkit
|
||||||
Version: 1.30.0
|
Version: 1.30.0
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: NBD server
|
Summary: NBD server
|
||||||
|
|
||||||
License: BSD
|
License: BSD
|
||||||
@ -74,6 +74,11 @@ Source2: libguestfs.keyring
|
|||||||
# Maintainer script which helps with handling patches.
|
# Maintainer script which helps with handling patches.
|
||||||
Source3: copy-patches.sh
|
Source3: copy-patches.sh
|
||||||
|
|
||||||
|
# For automatic RPM Provides generation.
|
||||||
|
# See: https://rpm-software-management.github.io/rpm/manual/dependency_generators.html
|
||||||
|
Source4: nbdkit.attr
|
||||||
|
Source5: nbdkit-find-provides
|
||||||
|
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
%if 0%{patches_touch_autotools}
|
%if 0%{patches_touch_autotools}
|
||||||
BuildRequires: autoconf, automake, libtool
|
BuildRequires: autoconf, automake, libtool
|
||||||
@ -144,6 +149,11 @@ BuildRequires: %{_sbindir}/ss
|
|||||||
BuildRequires: %{_bindir}/stat
|
BuildRequires: %{_bindir}/stat
|
||||||
BuildRequires: %{_bindir}/ssh-keygen
|
BuildRequires: %{_bindir}/ssh-keygen
|
||||||
|
|
||||||
|
# This package has RPM rules that create the automatic Provides: for
|
||||||
|
# nbdkit plugins and filters. This means nbdkit build depends on
|
||||||
|
# itself, but it's a simple noarch package so easy to install.
|
||||||
|
## XXX TEMP DISABLE XXX BuildRequires: nbdkit-srpm-macros >= 1.30.0
|
||||||
|
|
||||||
# nbdkit is a metapackage pulling the server and a useful subset
|
# nbdkit is a metapackage pulling the server and a useful subset
|
||||||
# of the plugins and filters.
|
# of the plugins and filters.
|
||||||
Requires: nbdkit-server%{?_isa} = %{version}-%{release}
|
Requires: nbdkit-server%{?_isa} = %{version}-%{release}
|
||||||
@ -185,7 +195,6 @@ reading the nbdkit(1) and nbdkit-plugin(3) manual pages.
|
|||||||
%package server
|
%package server
|
||||||
Summary: The %{name} server
|
Summary: The %{name} server
|
||||||
License: BSD
|
License: BSD
|
||||||
Provides: %{name}-null-plugin = %{version}-%{release}
|
|
||||||
|
|
||||||
%description server
|
%description server
|
||||||
This package contains the %{name} server with only the null plugin
|
This package contains the %{name} server with only the null plugin
|
||||||
@ -198,21 +207,6 @@ the metapackage "nbdkit".
|
|||||||
Summary: Basic plugins for %{name}
|
Summary: Basic plugins for %{name}
|
||||||
License: BSD
|
License: BSD
|
||||||
Requires: %{name}-server%{?_isa} = %{version}-%{release}
|
Requires: %{name}-server%{?_isa} = %{version}-%{release}
|
||||||
Provides: %{name}-data-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-eval-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-file-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-floppy-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-full-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-info-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-memory-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-ondemand-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-pattern-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-partitioning-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-random-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-sh-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-sparse-random-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-split-plugin = %{version}-%{release}
|
|
||||||
Provides: %{name}-zero-plugin = %{version}-%{release}
|
|
||||||
|
|
||||||
|
|
||||||
%description basic-plugins
|
%description basic-plugins
|
||||||
@ -508,41 +502,6 @@ VMware VDDK for accessing VMware disks and servers.
|
|||||||
Summary: Basic filters for %{name}
|
Summary: Basic filters for %{name}
|
||||||
License: BSD
|
License: BSD
|
||||||
Requires: %{name}-server%{?_isa} = %{version}-%{release}
|
Requires: %{name}-server%{?_isa} = %{version}-%{release}
|
||||||
Provides: %{name}-blocksize-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-blocksize-policy-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-cache-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-cacheextents-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-checkwrite-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-cow-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-ddrescue-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-delay-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-error-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-exitlast-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-exitwhen-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-exportname-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-extentlist-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-fua-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-ip-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-limit-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-log-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-multi-conn-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-nocache-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-noextents-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-nofilter-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-noparallel-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-nozero-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-offset-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-partition-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-pause-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-protect-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-rate-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-readahead-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-retry-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-retry-request-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-stats-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-swab-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-tls-fallback-filter = %{version}-%{release}
|
|
||||||
Provides: %{name}-truncate-filter = %{version}-%{release}
|
|
||||||
|
|
||||||
%description basic-filters
|
%description basic-filters
|
||||||
This package contains filters for %{name} which only depend on simple
|
This package contains filters for %{name} which only depend on simple
|
||||||
@ -673,8 +632,19 @@ for %{name}. Install this package if you want to develop
|
|||||||
plugins for %{name}.
|
plugins for %{name}.
|
||||||
|
|
||||||
|
|
||||||
|
%package srpm-macros
|
||||||
|
Summary: RPM Provides rules for %{name} plugins and filters
|
||||||
|
License: BSD
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description srpm-macros
|
||||||
|
This package contains RPM rules that create the automatic Provides:
|
||||||
|
for %{name} plugins and filters found in the plugins directory.
|
||||||
|
|
||||||
|
|
||||||
%package bash-completion
|
%package bash-completion
|
||||||
Summary: Bash tab-completion for %{name}
|
Summary: Bash tab-completion for %{name}
|
||||||
|
License: BSD
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
Requires: bash-completion >= 2.0
|
Requires: bash-completion >= 2.0
|
||||||
Requires: %{name}-server = %{version}-%{release}
|
Requires: %{name}-server = %{version}-%{release}
|
||||||
@ -757,6 +727,11 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-S3-plugin
|
|||||||
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-S3-plugin.1*
|
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-S3-plugin.1*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
# Install RPM dependency generator.
|
||||||
|
mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/
|
||||||
|
install -m 0644 %{SOURCE4} $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/
|
||||||
|
install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_rpmconfigdir}/
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
%ifnarch %{broken_test_arches}
|
%ifnarch %{broken_test_arches}
|
||||||
@ -1192,6 +1167,12 @@ export LIBGUESTFS_TRACE=1
|
|||||||
%{_libdir}/pkgconfig/nbdkit.pc
|
%{_libdir}/pkgconfig/nbdkit.pc
|
||||||
|
|
||||||
|
|
||||||
|
%files srpm-macros
|
||||||
|
%license LICENSE
|
||||||
|
%{_rpmconfigdir}/fileattrs/nbdkit.attr
|
||||||
|
%{_rpmconfigdir}/nbdkit-find-provides
|
||||||
|
|
||||||
|
|
||||||
%files bash-completion
|
%files bash-completion
|
||||||
%license LICENSE
|
%license LICENSE
|
||||||
%dir %{_datadir}/bash-completion/completions
|
%dir %{_datadir}/bash-completion/completions
|
||||||
@ -1199,6 +1180,9 @@ export LIBGUESTFS_TRACE=1
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Feb 28 2022 Richard W.M. Jones <rjones@redhat.com> - 1.30.0-2
|
||||||
|
- Add nbdkit-srpm-macros
|
||||||
|
|
||||||
* Thu Feb 24 2022 Richard W.M. Jones <rjones@redhat.com> - 1.30.0-1
|
* Thu Feb 24 2022 Richard W.M. Jones <rjones@redhat.com> - 1.30.0-1
|
||||||
- New stable version 1.30.0
|
- New stable version 1.30.0
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user