Merge remote-tracking branch 'remotes/axelgenus/man-pages-it'
[gentoo.git] / dev-lang / perl / perl-5.22.1.ebuild
1 # Copyright 1999-2015 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Id$
4
5 EAPI=5
6
7 inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing
8
9 PATCH_VER=1
10
11 PERL_OLDVERSEN="5.22.0"
12 MODULE_AUTHOR=SHAY
13
14 SHORT_PV="${PV%.*}"
15 MY_P="perl-${PV/_rc/-RC}"
16 MY_PV="${PV%_rc*}"
17
18 DESCRIPTION="Larry Wall's Practical Extraction and Report Language"
19
20 SRC_URI="
21         mirror://cpan/src/5.0/${MY_P}.tar.bz2
22         mirror://cpan/authors/id/${MODULE_AUTHOR:0:1}/${MODULE_AUTHOR:0:2}/${MODULE_AUTHOR}/${MY_P}.tar.bz2
23         mirror://gentoo/${MY_P}-patches-${PATCH_VER}.tar.xz
24         https://dev.gentoo.org/~dilfridge/distfiles/${MY_P}-patches-${PATCH_VER}.tar.xz
25 "
26 HOMEPAGE="http://www.perl.org/"
27
28 LICENSE="|| ( Artistic GPL-1+ )"
29 SLOT="0/${SHORT_PV}"
30 KEYWORDS="~alpha ~amd64 ~amd64-fbsd ~amd64-linux ~arm ~arm64 ~hppa ~hppa-hpux ~ia64 ~ia64-hpux ~ia64-linux ~m68k ~m68k-mint ~mips ~ppc ~ppc64 ~ppc-aix ~ppc-macos ~s390 ~sh ~sparc ~sparc64-solaris ~sparc-solaris ~x64-freebsd ~x64-macos ~x64-solaris ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~x86-linux ~x86-macos ~x86-solaris"
31 IUSE="berkdb debug doc gdbm ithreads"
32
33 RDEPEND="
34         berkdb? ( sys-libs/db:* )
35         gdbm? ( >=sys-libs/gdbm-1.8.3 )
36         app-arch/bzip2
37         sys-libs/zlib
38 "
39 DEPEND="${RDEPEND}
40         !prefix? ( elibc_FreeBSD? ( sys-freebsd/freebsd-mk-defs ) )
41 "
42 PDEPEND="
43         >=app-admin/perl-cleaner-2.5
44         >=virtual/perl-File-Temp-0.230.400-r2
45         >=virtual/perl-Data-Dumper-2.154.0
46         virtual/perl-Test-Harness
47 "
48 # bug 390719, bug 523624
49 # virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker
50
51 S="${WORKDIR}/${MY_P}"
52
53 dual_scripts() {
54         src_remove_dual      perl-core/Archive-Tar        2.40.0       ptar ptardiff ptargrep
55         src_remove_dual      perl-core/Digest-SHA         5.950.0       shasum
56         src_remove_dual      perl-core/CPAN               2.110.0        cpan
57         src_remove_dual      perl-core/Encode             2.720.0       enc2xs piconv
58         src_remove_dual      perl-core/ExtUtils-MakeMaker 7.40.100       instmodsh
59         src_remove_dual      perl-core/ExtUtils-ParseXS   3.280.0       xsubpp
60         src_remove_dual      perl-core/IO-Compress        2.68.0        zipdetails
61         src_remove_dual      perl-core/JSON-PP            2.273.0      json_pp
62         src_remove_dual      perl-core/Module-CoreList    5.201.512.130 corelist
63         src_remove_dual      perl-core/Pod-Parser         1.630.0       pod2usage podchecker podselect
64         src_remove_dual      perl-core/Pod-Perldoc        3.250.0       perldoc
65         src_remove_dual      perl-core/Test-Harness       3.350.0       prove
66         src_remove_dual      perl-core/podlators          2.5.3         pod2man pod2text
67         src_remove_dual_man  perl-core/podlators          2.5.3         /usr/share/man/man1/perlpodstyle.1
68 }
69
70 # eblit-include [--skip] <function> [version]
71 eblit-include() {
72         local skipable=false
73         [[ $1 == "--skip" ]] && skipable=true && shift
74         [[ $1 == pkg_* ]] && skipable=true
75
76         local e v func=$1 ver=$2
77         [[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
78         for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
79                 e="${FILESDIR}/eblits/${func}${v}.eblit"
80                 if [[ -e ${e} ]] ; then
81                         . "${e}"
82                         return 0
83                 fi
84         done
85         ${skipable} && return 0
86         die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
87 }
88
89 # eblit-run-maybe <function>
90 # run the specified function if it is defined
91 eblit-run-maybe() {
92         [[ $(type -t "$@") == "function" ]] && "$@"
93 }
94
95 # eblit-run <function> [version]
96 # aka: src_unpack() { eblit-run src_unpack ; }
97 eblit-run() {
98         eblit-include --skip common "${*:2}"
99         eblit-include "$@"
100         eblit-run-maybe eblit-$1-pre
101         eblit-${PN}-$1
102         eblit-run-maybe eblit-$1-post
103 }
104
105 src_prepare()   { eblit-run src_prepare   v50160001 ; }
106 src_configure() { eblit-run src_configure v50180002 ; }
107 #src_compile()  { eblit-run src_compile   v50160001 ; }
108 src_test()              {
109         export NO_GENTOO_NETWORK_TESTS=1;
110         eblit-run src_test      v50160001 ;
111 }
112 src_install()   { eblit-run src_install   v50200001 ; }
113
114 # FILESDIR might not be available during binpkg install
115 # FIXME: version passing
116 for x in setup {pre,post}{inst,rm} ; do
117         e="${FILESDIR}/eblits/pkg_${x}-v50220001.eblit"
118         if [[ -e ${e} ]] ; then
119                 . "${e}"
120                 eval "pkg_${x}() { eblit-run pkg_${x} v50160001 ; }"
121         fi
122 done