]> git.pld-linux.org Git - packages/perl-Dist-CheckConflicts.git/blame - perl-Dist-CheckConflicts.spec
- macros for perl autodeps
[packages/perl-Dist-CheckConflicts.git] / perl-Dist-CheckConflicts.spec
CommitLineData
53b14b6e
JB
1#
2# Conditional build:
3%bcond_without tests # do not perform "make test"
4#
5%define pdir Dist
6%define pnam CheckConflicts
53b14b6e
JB
7Summary: Dist::CheckConflicts - declare version conflicts for your dist
8Summary(pl.UTF-8): Dist::CheckConflicts - deklarowanie wersji będących w konflikcie z pakietem
9Name: perl-Dist-CheckConflicts
a7b7769d 10Version: 0.11
53b14b6e
JB
11Release: 1
12# same as perl
13License: GPL v1+ or Artistic
14Group: Development/Languages/Perl
a7b7769d
JB
15Source0: http://www.cpan.org/modules/by-module/Dist/%{pdir}-%{pnam}-%{version}.tar.gz
16# Source0-md5: c8725a92b9169708b0f63036812070f2
3c8c689f 17URL: https://metacpan.org/release/Dist-CheckConflicts
621e62c2
JB
18BuildRequires: perl-ExtUtils-MakeMaker >= 6.30
19BuildRequires: perl-devel >= 1:5.8.1
53b14b6e 20BuildRequires: rpm-perlprov >= 4.1-13
3c8c689f 21BuildRequires: rpmbuild(macros) >= 1.745
53b14b6e 22%if %{with tests}
a7b7769d 23BuildRequires: perl-Module-Runtime >= 0.009
53b14b6e
JB
24BuildRequires: perl-Test-Fatal
25BuildRequires: perl-Test-Simple >= 0.88
26%endif
27BuildArch: noarch
28BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29
30%description
31One shortcoming of the CPAN clients that currently exist is that they
32have no way of specifying conflicting downstream dependencies of
33modules. This module attempts to work around this issue by allowing
34you to specify conflicting versions of modules separately, and deal
35with them after the module is done installing.
36
37For instance, say you have a module Foo, and some other module Bar
38uses Foo. If Foo were to change its API in a non-backwards-compatible
39way, this would cause Bar to break until it is updated to use the new
40API. Foo can't just depend on the fixed version of Bar, because this
41will cause a circular dependency (because Bar is already depending on
42Foo), and this doesn't express intent properly anyway - Foo doesn't
43use Bar at all. The ideal solution would be for there to be a way to
44specify conflicting versions of modules in a way that would let CPAN
45clients update conflicting modules automatically after an existing
46module is upgraded, but until that happens, this module will allow
47users to do this manually.
48
49%description -l pl.UTF-8
50Jednym z obecnych niedociągnięć klientów CPAN jest to, że nie ma
51sposobu określenia zależności będących w konflikcie z modułami.
52Niniejszy moduł próbuje obejść ten problem pozwalając określić
53osobno wersje modułów będących w konflikcie i obsłużenie ich po
54zainstalowaniu modułu.
55
56Na przykład: mamy moduł Foo, a inny moduł Bar używa Foo. Jeśli Foo
57zmieni swoje API bez kompatybilności wstecznej, spowoduje to zepsucie
58Bar do jego uaktualnienia pod kątem nowego API. Foo nie może
59zwyczajnie zależeć od poprawionej wersji Bar, bo spowodowałoby to
60zależność cykliczną (ponieważ Bar już zależy od Foo) i nie wyraża
61właściwie intencji - Foo w ogóle nie używa Bar. Idealnym rozwiązaniem
62byłoby zapewnienie sposobu określania wersji modułów będących w
63konflikcie w sposób pozwalający klientom CPAN na automatyczne
64uaktualnienie będących w konflikcie modułów po uaktualnieniu
65istniejącego modułu - ale zanim to nastąpi, ten moduł pozwala
66użytkownikom uczynić to ręcznie.
67
68%prep
69%setup -q -n %{pdir}-%{pnam}-%{version}
70
71%build
72%{__perl} Makefile.PL \
73 INSTALLDIRS=vendor
74%{__make}
75
76%{?with_tests:%{__make} test}
77
78%install
79rm -rf $RPM_BUILD_ROOT
80
81%{__make} pure_install \
82 DESTDIR=$RPM_BUILD_ROOT
83
84%clean
85rm -rf $RPM_BUILD_ROOT
86
87%files
88%defattr(644,root,root,755)
89%doc Changes README
3fe744a5 90%dir %{perl_vendorlib}/Dist
53b14b6e
JB
91%{perl_vendorlib}/Dist/CheckConflicts.pm
92%{_mandir}/man3/Dist::CheckConflicts.3pm*
This page took 0.296426 seconds and 4 git commands to generate.