]> git.pld-linux.org Git - packages/cpanminus.git/blame - cpanminus.spec
drop cpanminus/fatscript.pm, same as bindir/cpanm
[packages/cpanminus.git] / cpanminus.spec
CommitLineData
294891f4
ER
1#
2# Conditional build:
3%bcond_without tests # do not perform "make test"
4
5%include /usr/lib/rpm/macros.perl
6Summary: Get, unpack, build and install CPAN modules
7Name: cpanminus
8Version: 1.7001
9Release: 1
10License: GPL+ or Artistic
11Group: Development/Libraries
12Source0: http://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-%{name}-%{version}.tar.gz
13# Source0-md5: 4655c5903e2885085262cf5f15ff5ae3
14Source1: http://pkgs.fedoraproject.org/cgit/perl-App-cpanminus.git/plain/fatunpack
15# Source1-md5: c6c93648af22e2e47f94d391868cef06
16URL: http://search.cpan.org/dist/App-cpanminus/
17BuildRequires: %{_bindir}/podselect
18BuildRequires: perl(ExtUtils::MakeMaker) >= 6.30
19BuildRequires: perl(File::Path)
20BuildRequires: perl(File::Spec)
21BuildRequires: perl(Getopt::Long)
22BuildRequires: perl(strict)
23BuildRequires: perl(warnings)
24BuildRequires: rpm-perlprov >= 4.1-13
25# Run-time:
26# Nothing special. The tests are very poor. But we run perl -c at built-time
27# to check for correct unpacking. So we need non-optional run-time
28# dependencies at build-time too:
29BuildRequires: perl(Config)
30BuildRequires: perl(aliased)
31BuildRequires: perl(constant)
32# CPAN::DistnameInfo not needed for compilation
33# CPAN::Meta not needed for copmilation
34# CPAN::Meta::Check not needed for compilation
35# CPAN::Meta::Prereqs not needed for compilation
36BuildRequires: perl(CPAN::Meta::Requirements)
37# CPAN::Meta::YAML not needed for compilation
38BuildRequires: perl(Cwd)
39# Digest::SHA not needed for compilation
40# Dumpvalue not needed for compilation
41# ExtUtils::Manifest not needed for compilation
42BuildRequires: perl(File::Basename)
43BuildRequires: perl(File::Copy)
44BuildRequires: perl(File::Find)
45# File::pushd not needed for compilation
46BuildRequires: perl(File::Temp)
47# HTTP::Tiny not needed for compilation
48# JSON::PP not needed for compilation
49# local::lib not needed for compilation
50# Module::CoreList not needed for compilation
51# Module::CPANfile not needed for compilation
52# Module::Metadata not needed for compilation
53BuildRequires: perl(Parse::CPAN::Meta)
54# POSIX not needed for compilation
55# Safe not needed for compilation
56BuildRequires: perl(String::ShellQuote)
57BuildRequires: perl(Symbol)
58BuildRequires: perl(version)
59# version::vpp not needed for compilation
60BuildRequires: perl(warnings::register)
61# YAML not needed for compilation
62# Tests:
63BuildRequires: perl(Test::More)
64# Current dependency generator cannot parse compressed code. Use PPI to find them, and list them manually:
65# Archive::Tar is optional
66# Archive::Zip is optional
67# Compress::Zlib is optional
68Requires: perl(CPAN::DistnameInfo)
69Requires: perl(CPAN::Meta)
70Requires: perl(CPAN::Meta::Check)
71Requires: perl(CPAN::Meta::Prereqs)
72Requires: perl(CPAN::Meta::YAML)
73Requires: perl(Digest::SHA)
74Requires: perl(ExtUtils::Install) >= 1.46
75Requires: perl(ExtUtils::MakeMaker) >= 6.31
76Requires: perl(ExtUtils::Manifest)
77# File::HomeDir is optional
78Requires: perl(File::pushd)
79# HTTP getter by LWP::UserAgent or wget or curl or HTTP::Tiny
80Requires: perl(HTTP::Tiny)
81Requires: perl(local::lib)
82# LWP::Protocol::https is optional
83# LWP::UserAgent is optional
84Requires: perl(Module::Build)
85Requires: perl(Module::CPANfile)
86Requires: perl(Module::CoreList)
87Requires: perl(Module::Metadata)
88# Module::Signature is optional
89Requires: perl(version::vpp)
90# Win32 not used
91Requires: perl(YAML)
92BuildArch: noarch
93BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
94
95%description
96Why? It's dependency free, requires zero configuration, and stands
97alone but it's maintainable and extensible with plug-ins and friendly
98to shell scripting. When running, it requires only 10 MB of RAM.
99
100%prep
101%setup -q -n App-%{name}-%{version}
102# Unbundle fat-packed modules
103podselect lib/App/cpanminus.pm > lib/App/cpanminus.pod
104
105for F in bin/cpanm lib/App/cpanminus/fatscript.pm; do
106 %{__perl} %{SOURCE1} --libdir lib --filter '^App/cpanminus' "$F" > "${F}.stripped"
107 perl -c -Ilib "${F}.stripped"
108 mv "${F}.stripped" "$F"
109done
110
111%build
112%{__perl} Makefile.PL INSTALLDIRS=vendor
113%{__make}
114%{?with_tests:%{__make} test}
115
116%install
117rm -rf $RPM_BUILD_ROOT
118%{__make} pure_install \
119 DESTDIR=$RPM_BUILD_ROOT
120
121%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/App/cpanminus/.packlist
122%{__rm} $RPM_BUILD_ROOT%{perl_vendorlib}/App/cpanminus.pod
23870d16
ER
123# same as bindir/cpanm
124%{__rm} $RPM_BUILD_ROOT%{perl_vendorlib}/App/cpanminus/fatscript.pm
294891f4
ER
125
126%clean
127rm -rf $RPM_BUILD_ROOT
128
129%files
130%defattr(644,root,root,755)
131%doc Changes README
132%attr(755,root,root) %{_bindir}/cpanm
133%{perl_vendorlib}/App/cpanminus.pm
134%{perl_vendorlib}/App/cpanminus
135%{_mandir}/man1/cpanm.1*
136%{_mandir}/man3/App::cpanminus*
This page took 0.084999 seconds and 4 git commands to generate.