1 |
%define upstream_name autouse |
2 |
%define upstream_version 1.08 |
3 |
|
4 |
%{?perl_default_filter} |
5 |
|
6 |
Name: perl-%{upstream_name} |
7 |
Version: %perl_convert_version %{upstream_version} |
8 |
Release: %mkrel 2 |
9 |
|
10 |
Summary: Postpone load of modules until a function is used |
11 |
License: GPL+ or Artistic |
12 |
Group: Development/Perl |
13 |
Url: http://search.cpan.org/dist/%{upstream_name} |
14 |
Source0: http://www.cpan.org/modules/by-module//%{upstream_name}-%{upstream_version}.tar.gz |
15 |
|
16 |
BuildRequires: perl(Carp) |
17 |
BuildRequires: perl(Errno) |
18 |
BuildRequires: perl(Exporter) |
19 |
BuildArch: noarch |
20 |
|
21 |
Provides: perl(autouse) |
22 |
|
23 |
%description |
24 |
If the module 'Module' is already loaded, then the declaration |
25 |
|
26 |
use autouse 'Module' => qw(func1 func2($;$)); |
27 |
|
28 |
is equivalent to |
29 |
|
30 |
use Module qw(func1 func2); |
31 |
|
32 |
If the module Module is not loaded yet, then the above declaration |
33 |
declares functions func1() and func2() in the current package. When |
34 |
these functions are called, they load the package Module if needed, and |
35 |
substitute themselves with the correct definitions. |
36 |
|
37 |
%prep |
38 |
%autosetup -n %{upstream_name}-%{upstream_version} |
39 |
|
40 |
%build |
41 |
%__perl Makefile.PL INSTALLDIRS=vendor |
42 |
%make |
43 |
|
44 |
%check |
45 |
%make test |
46 |
|
47 |
%install |
48 |
%make_install |
49 |
|
50 |
%files |
51 |
%doc README Changes LICENSE META.yml META.json |
52 |
%{_mandir}/man3/* |
53 |
%{perl_vendorlib}/* |
54 |
|
55 |
|