From a20c232c583df958afd3d2295c871d93fdc736f3 Mon Sep 17 00:00:00 2001 From: Kaihao Bai Date: Tue, 11 Apr 2023 14:54:09 +0800 Subject: [PATCH] optimize spec --- perl-Math-BigInt.spec | 78 ++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 50 deletions(-) diff --git a/perl-Math-BigInt.spec b/perl-Math-BigInt.spec index 508b094..2b8ffd5 100644 --- a/perl-Math-BigInt.spec +++ b/perl-Math-BigInt.spec @@ -1,81 +1,59 @@ -%define anolis_release 2 +%define anolis_release 3 +%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(Math::BigInt\\)\\s*$ +%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(Carp\\)\\s*$ +%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(.::t/.*.inc\\) +%global __requires_exclude %{__requires_exclude}|perl\\(Math::BigFloat::Subclass\\) +%global __requires_exclude %{__requires_exclude}|perl\\(Math::BigInt::(BareCalc\|Scalar\|Subclass)\\) +%global __requires_exclude %{__requires_exclude}|perl\\(Math::BigInt::Lib::(Minimal\|TestUtil)\\) +%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_libexecdir} + %global cpan_version 1.999837 Name: perl-Math-BigInt Epoch: 1 -# Keep 4-digit version to compete with perl.spec Version: %(echo %{cpan_version} | sed 's/\(\.....\)/\1./') Release: %{anolis_release}%{?dist} -Summary: Arbitrary-size integer and float mathematics +Summary: Arbitrary-size integer and float precision mathematics License: GPL-1.0-or-later OR Artistic-1.0-Perl URL: https://metacpan.org/release/Math-BigInt Source0: https://cpan.metacpan.org/authors/id/P/PJ/PJACKLAM/Math-BigInt-%{cpan_version}.tar.gz -BuildArch: noarch -BuildRequires: coreutils -BuildRequires: make -BuildRequires: perl-generators -BuildRequires: perl-interpreter -BuildRequires: perl(Config) -BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76 -BuildRequires: perl(strict) -BuildRequires: perl(warnings) -BuildRequires: sed -# Run-time: -BuildRequires: perl(Carp) >= 1.22 -BuildRequires: perl(constant) -BuildRequires: perl(Exporter) -BuildRequires: perl(integer) -BuildRequires: perl(Math::Complex) >= 1.39 -BuildRequires: perl(overload) -BuildRequires: perl(Scalar::Util) -# Tests: -BuildRequires: perl(base) -BuildRequires: perl(lib) -# Module::Signature not used -# Socket not used -BuildRequires: perl(Test::More) >= 0.94 -Requires: perl(Carp) >= 1.22 -Requires: perl(Math::Complex) >= 1.39 -Conflicts: perl < 4:5.22.0-347 +BuildRequires: coreutils make sed +BuildRequires: perl-generators perl-interpreter perl(Config) +BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76 perl(strict) +BuildRequires: perl(warnings) perl(Carp) >= 1.22 perl(constant) +BuildRequires: perl(Exporter) perl(integer) perl(Math::Complex) >= 1.39 +BuildRequires: perl(overload) perl(Scalar::Util) perl(base) +BuildRequires: perl(lib) perl(Test::More) >= 0.94 +Requires: perl(Carp) >= 1.22 perl(Math::Complex) >= 1.39 %if !%{defined perl_bootstrap} Requires: perl(Math::BigRat) %endif +Conflicts: perl < 4:5.22.0-347 -# Do not export unversioned module -%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(Math::BigInt\\)\\s*$ -%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(Carp\\)\\s*$ - -# Filter modules bundled for tests -%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(.::t/.*.inc\\) -%global __requires_exclude %{__requires_exclude}|perl\\(Math::BigFloat::Subclass\\) -%global __requires_exclude %{__requires_exclude}|perl\\(Math::BigInt::(BareCalc\|Scalar\|Subclass)\\) -%global __requires_exclude %{__requires_exclude}|perl\\(Math::BigInt::Lib::(Minimal\|TestUtil)\\) -%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_libexecdir} +BuildArch: noarch %description -This provides Perl modules for arbitrary-size integer and float mathematics. +Math::BigInt and Math::BigFloat are modules for arbitrary precision arithmetic. %package tests Summary: Tests for %{name} -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name} = %{EVR} Requires: perl-Test-Harness %description tests -Tests from %{name}. Execute them -with "%{_libexecdir}/%{name}/test". +Tests from %{name}. Execute them with "%{_libexecdir}/%{name}/test". %package doc Summary: Documentation files for %{name} -Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name} = %{EVR} BuildArch: noarch %description doc The %{name}-doc package contains documentation files for %{name}. %prep -%setup -q -n Math-BigInt-%{cpan_version} +%autosetup -p1 -n Math-BigInt-%{cpan_version} -# Help generators to recognize Perl scripts for F in t/*.t t/alias.inc `find t -name *.pm`; do perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!.*perl\b}{$Config{startperl}}' "$F" chmod +x "$F" @@ -89,12 +67,10 @@ perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 %{make_install} %{_fixperms} %{buildroot}/* -# Install tests mkdir -p %{buildroot}%{_libexecdir}/%{name} cp -a t %{buildroot}%{_libexecdir}/%{name} rm %{buildroot}%{_libexecdir}/%{name}/t/00sig.t cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF' -#!/bin/sh cd %{_libexecdir}/%{name} && exec prove -I . -j "$(getconf _NPROCESSORS_ONLN)" EOF chmod +x %{buildroot}%{_libexecdir}/%{name}/test @@ -106,7 +82,6 @@ make test %files %license LICENSE -# NEW file is useless %{perl_vendorlib}/* %{_mandir}/man3/* @@ -117,6 +92,9 @@ make test %doc BUGS CHANGES CREDITS examples GOALS HISTORY README TODO %changelog +* Tue Apr 11 2023 Kaihao Bai - 1:1.9998.37-3 +- optimize spec + * Mon Feb 06 2023 mgb01105731 - 1:1.9998.37-2 - remove versioned MODULE_COMPAT_ requires -- Gitee