]> git.pld-linux.org Git - SPECS.git/blob - perl-Async-MergePoint.spec
SPECS updated Mon 29 Apr 22:05:02 CEST 2024
[SPECS.git] / perl-Async-MergePoint.spec
1 #
2 # Conditional build:
3 %bcond_without  tests           # do not perform "make test"
4 #
5 %define pdir    Async
6 %define pnam    MergePoint
7 Summary:        Async::MergePoint - resynchronise diverged control flow
8 Summary(pl.UTF-8):      Async::MergePoint - ponowna synchronizacja rozdzielonego sterowania
9 Name:           perl-Async-MergePoint
10 Version:        0.04
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-authors/id/P/PE/PEVANS/Async-MergePoint-%{version}.tar.gz
16 # Source0-md5:  e9055c122e02fd75c8d604bb1dca49ca
17 URL:            http://search.cpan.org/dist/Async-MergePoint/
18 BuildRequires:  perl-devel >= 1:5.8.0
19 BuildRequires:  rpm-perlprov >= 4.1-13
20 %if %{with tests}
21 BuildRequires:  perl-Test-Exception
22 %endif
23 BuildArch:      noarch
24 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25
26 %description
27 Often in program logic, multiple different steps need to be taken that
28 are independent of each other, but their total result is needed before
29 the next step can be taken. In synchonous code, the usual approach is
30 to do them sequentially.
31
32 An asynchronous or event-based program could do this, but if each step
33 involves some IO idle time, better overall performance can often be
34 gained by running the steps in parallel. A Async::MergePoint object
35 can then be used to wait for all of the steps to complete, before
36 passing the combined result of each step on to the next stage.
37
38 %description -l pl.UTF-8
39 Często w logice programu trzeba wykonać kilka czynności niezależnych
40 od siebie, ale ich łączny wynik jest potrzebny przed przejściem do
41 następnego kroku. W kodzie synchronicznym zwykle wykonuje się je
42 sekwencyjnie.
43
44 W programie asynchronicznym lub sterowanym zdarzeniami można zrobić
45 tak samo, ale jeśli każdy z kroków obejmuje jakiś czas bezczynności
46 we/wy, lepszą wydajność całkowitą osiąga się wykonując czynności
47 równolegle. W takim wypadku można wykorzystać obiekt Async::MergePoint
48 w celu zaczekania na wykonanie wszystkich czynności przed przekazaniem
49 wyniku do następnego etapu.
50
51 %prep
52 %setup -q -n %{pdir}-%{pnam}-%{version}
53
54 %build
55 %{__perl} Build.PL \
56         destdir=$RPM_BUILD_ROOT \
57         installdirs=vendor
58 ./Build
59
60 %{?with_tests:./Build test}
61
62 %install
63 rm -rf $RPM_BUILD_ROOT
64
65 ./Build install
66
67 %clean
68 rm -rf $RPM_BUILD_ROOT
69
70 %files
71 %defattr(644,root,root,755)
72 %doc Changes README
73 %dir %{perl_vendorlib}/Async
74 %{perl_vendorlib}/Async/MergePoint.pm
75 %{_mandir}/man3/Async::MergePoint.3pm*
This page took 0.76039 seconds and 3 git commands to generate.