Remove Git::LoadCPAN to ensure we use only system perl modules
Git tries very hard to rely on as few non-core modules as possible. The
few that it does (currently Error and Mail::Address) are bundled. We've
disabled such bundling since it became an option in 2.17.0.
Go a step further and remove the Git::LoadCPAN wrapper. This allows
rpm's automatic dependency generator to find and add the needed
requirements.
With this change we can remove the manual 'Requires:' for perl(Error)
and perl(Mail::Address).
'Requires: perl(Error)' in the main git package has been unneeded for
many years. It was added in edddb83
("Update to latest upstream
release. Fix some bugs at the same time", 2007-11-27), which was
git-1.5.3.6. It was needed for 'git svn' and 'git remote'. 'git svn'
requires perl(Git), which in turn requires perl(Error).
In git-1.5.5, 'git remote' was converted to a builtin command in C
rather than perl, removing the perl(Error) dependency.
Lastly, move the 'BuildRequires: perl(Error)' from perl-Git to the main
list of BuildRequires.
This commit is contained in:
parent
b3c76729a3
commit
b5fac2ab8d
13
git.spec
13
git.spec
@ -139,6 +139,7 @@ BuildRequires: libsecret-devel
|
|||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
BuildRequires: openssl-devel
|
BuildRequires: openssl-devel
|
||||||
BuildRequires: pcre2-devel
|
BuildRequires: pcre2-devel
|
||||||
|
BuildRequires: perl(Error)
|
||||||
BuildRequires: perl(Test)
|
BuildRequires: perl(Test)
|
||||||
%if 0%{?fedora}
|
%if 0%{?fedora}
|
||||||
BuildRequires: perl-generators
|
BuildRequires: perl-generators
|
||||||
@ -200,7 +201,6 @@ BuildRequires: time
|
|||||||
|
|
||||||
Requires: git-core = %{version}-%{release}
|
Requires: git-core = %{version}-%{release}
|
||||||
Requires: git-core-doc = %{version}-%{release}
|
Requires: git-core-doc = %{version}-%{release}
|
||||||
Requires: perl(Error)
|
|
||||||
%if ! %{defined perl_bootstrap}
|
%if ! %{defined perl_bootstrap}
|
||||||
Requires: perl(Term::ReadKey)
|
Requires: perl(Term::ReadKey)
|
||||||
%endif
|
%endif
|
||||||
@ -304,7 +304,6 @@ Summary: Git tools for sending patches via email
|
|||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
Requires: git = %{version}-%{release}, perl-Git = %{version}-%{release}
|
Requires: git = %{version}-%{release}, perl-Git = %{version}-%{release}
|
||||||
Requires: perl(Authen::SASL)
|
Requires: perl(Authen::SASL)
|
||||||
Requires: perl(Mail::Address)
|
|
||||||
Requires: perl(Net::SMTP::SSL)
|
Requires: perl(Net::SMTP::SSL)
|
||||||
Requires: perl(Git)
|
Requires: perl(Git)
|
||||||
%description email
|
%description email
|
||||||
@ -362,9 +361,7 @@ Requires: git = %{version}-%{release}
|
|||||||
%package -n perl-Git
|
%package -n perl-Git
|
||||||
Summary: Perl interface to Git
|
Summary: Perl interface to Git
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
BuildRequires: perl(Error)
|
|
||||||
Requires: git = %{version}-%{release}
|
Requires: git = %{version}-%{release}
|
||||||
Requires: perl(Error)
|
|
||||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||||
%description -n perl-Git
|
%description -n perl-Git
|
||||||
%{summary}.
|
%{summary}.
|
||||||
@ -480,6 +477,11 @@ EOF
|
|||||||
chmod +x %{__perl_requires}
|
chmod +x %{__perl_requires}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
# Remove Git::LoadCPAN to ensure we use only system perl modules. This also
|
||||||
|
# allows the dependencies to be automatically processed by rpm.
|
||||||
|
rm -rf perl/Git/LoadCPAN{.pm,/}
|
||||||
|
grep -rlZ '^use Git::LoadCPAN::' | xargs -r0 sed -i 's/Git::LoadCPAN:://g'
|
||||||
|
|
||||||
%build
|
%build
|
||||||
make %{?_smp_mflags} all %{?with_docs:doc}
|
make %{?_smp_mflags} all %{?with_docs:doc}
|
||||||
|
|
||||||
@ -886,6 +888,9 @@ make test || ./print-failed-test-output
|
|||||||
%{?with_docs:%{_pkgdocdir}/git-svn.html}
|
%{?with_docs:%{_pkgdocdir}/git-svn.html}
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Apr 07 2018 Todd Zullinger <tmz@pobox.com>
|
||||||
|
- Remove Git::LoadCPAN to ensure we use only system perl modules
|
||||||
|
|
||||||
* Mon Apr 02 2018 Todd Zullinger <tmz@pobox.com>
|
* Mon Apr 02 2018 Todd Zullinger <tmz@pobox.com>
|
||||||
- Allow git-p4 subpackage to be toggled via --with/--without
|
- Allow git-p4 subpackage to be toggled via --with/--without
|
||||||
- Use %%bcond_(with|without) to enable/disable python3
|
- Use %%bcond_(with|without) to enable/disable python3
|
||||||
|
Loading…
Reference in New Issue
Block a user