]> git.pld-linux.org Git - SPECS.git/blob - perl-Math-BigInt-Lite.spec
SPECS updated Mon 29 Apr 22:05:02 CEST 2024
[SPECS.git] / perl-Math-BigInt-Lite.spec
1 #
2 # Conditional build:
3 %bcond_without  tests   # do not perform "make test"
4 #
5 %define         pdir    Math
6 %define         pnam    BigInt-Lite
7 Summary:        Math::BigInt::Lite - what BigInts are before they become big
8 Summary(pl.UTF-8):      Math::BigInt::Lite - czym były BigInty zanim stały się duże
9 Name:           perl-Math-BigInt-Lite
10 Version:        0.14
11 Release:        1
12 # same as perl
13 License:        GPL v1+ or Artistic
14 Group:          Development/Languages/Perl
15 Source0:        http://www.cpan.org/modules/by-module/Math/%{pdir}-%{pnam}-%{version}.tar.gz
16 # Source0-md5:  eaf0d0f526b355d525e7f2857b62be7e
17 URL:            http://search.cpan.org/dist/Math-BigInt-Lite/
18 BuildRequires:  perl-Math-BigInt >= 1.94
19 BuildRequires:  perl-Math-BigRat >= 0.19
20 BuildRequires:  perl-devel >= 1:5.8.0
21 BuildRequires:  rpm-perlprov >= 4.1-13
22 %if %{with tests}
23 BuildRequires:  perl-Test-Simple >= 0.52
24 %endif
25 Requires:       perl-Math-BigInt >= 1.94
26 Requires:       perl-Math-BigRat >= 0.19
27 BuildArch:      noarch
28 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29
30 %description
31 Math::BigInt is not very good suited to work with small (read: typical
32 less than 10 digits) numbers, since it has a quite high per-operation
33 overhead and is thus too slow. But for some simple applications, you
34 don't need rounding, infinity nor NaN handling, and yet want fast
35 speed for small numbers without the risk of overflowing. This is were
36 Math::BigInt::Lite comes into play.
37
38 Math::BigInt::Lite objects should behave in every way like
39 Math::BigInt objects, that is apart from the different label, you
40 should not be able to tell the difference. Since Math::BigInt::Lite is
41 designed with speed in mind, there are certain limitations build-in.
42 In praxis, however, you will not feel them, because everytime
43 something gets to big to pass as Lite (literally), it will upgrade the
44 objects and operation in question to Math::BigInt.
45
46 %description -l pl.UTF-8
47 Moduł Math::BigInt nie jest dobrze dopasowany do pracy z małymi (tzn.
48 najczęściej poniżej 10 cyfr) liczbami, ponieważ ma zbyt duży narzut na
49 każdą operację, przez co jest zbyt wolny. Ale dla niektórych prostych
50 aplikacji nie potrzebne jest zaokrąglanie, obsługa nieskończoności czy
51 NaN, za to potrzebna jest szybkość obliczeń na małych liczbach bez
52 ryzyka przepełnienia. Jest to sytuacja, dla której został stworzony
53 Math::BigInt::Lite.
54
55 Obiekty Math::BigInt::Lite powinny zachowywać się tak samo jak obiekty
56 Math::BigInt - bez widocznej różnicy oprócz nazwy. Ponieważ moduł
57 Math::BigInt::Lite jest zaprojektowany z myślą o szybkości, ma pewne
58 ograniczenia. W praktyce nie powinniśmy ich odczuć, ponieważ jeśli
59 tylko coś staje się zbyt duże do przekazania jako Lite, obiekt
60 zostanie powiększony, a operacja przeprowadzona przez Math::BigInt.
61
62 %prep
63 %setup -q -n %{pdir}-%{pnam}-%{version}
64
65 %build
66 %{__perl} Makefile.PL \
67         INSTALLDIRS=vendor
68 %{__make}
69
70 %{?with_tests:%{__make} test}
71
72 %install
73 rm -rf $RPM_BUILD_ROOT
74
75 %{__make} install \
76         DESTDIR=$RPM_BUILD_ROOT
77
78 %clean
79 rm -rf $RPM_BUILD_ROOT
80
81 %files
82 %defattr(644,root,root,755)
83 %doc BUGS CHANGES LICENSE NEW README TODO
84 %{perl_vendorlib}/Math/BigInt/Lite.pm
85 %{_mandir}/man3/Math::BigInt::Lite.3pm*
This page took 1.256556 seconds and 3 git commands to generate.