1 |
vapier |
1.33 |
# Copyright 1999-2003 Gentoo Technologies, Inc. |
2 |
vapier |
1.30 |
# Distributed under the terms of the GNU General Public License v2 |
3 |
mcummings |
1.38 |
# $Header: /home/cvsroot/gentoo-x86/eclass/perl-module.eclass,v 1.37 2003/05/30 13:14:19 seemant Exp $ |
4 |
vapier |
1.33 |
# |
5 |
seemant |
1.1 |
# Author: Seemant Kulleen <seemant@gentoo.org> |
6 |
vapier |
1.33 |
# |
7 |
seemant |
1.1 |
# The perl-module eclass is designed to allow easier installation of perl |
8 |
|
|
# modules, and their incorporation into the Gentoo Linux system. |
9 |
seemant |
1.3 |
|
10 |
danarmak |
1.14 |
ECLASS=perl-module |
11 |
seemant |
1.35 |
INHERITED="${INHERITED} ${ECLASS}" |
12 |
danarmak |
1.13 |
|
13 |
seemant |
1.35 |
EXPORT_FUNCTIONS pkg_setup pkg_preinst pkg_postinst pkg_prerm pkg_postrm \ |
14 |
seemant |
1.37 |
src_compile src_install src_test \ |
15 |
|
|
perlinfo updatepod |
16 |
seemant |
1.1 |
|
17 |
mcummings |
1.25 |
eval `perl '-V:version'` |
18 |
seemant |
1.34 |
DEPEND="dev-lang/perl |
19 |
mcummings |
1.32 |
${DEPEND}" |
20 |
azarah |
1.11 |
SRC_PREP="no" |
21 |
|
|
|
22 |
seemant |
1.35 |
SITE_LIB="" |
23 |
|
|
ARCH_LIB="" |
24 |
|
|
POD_DIR="" |
25 |
|
|
|
26 |
aliz |
1.15 |
perl-module_src_prep() { |
27 |
azarah |
1.11 |
|
28 |
|
|
SRC_PREP="yes" |
29 |
mcummings |
1.21 |
perl Makefile.PL ${myconf} \ |
30 |
mcummings |
1.38 |
PREFIX=${D}/usr |
31 |
azarah |
1.11 |
} |
32 |
|
|
|
33 |
aliz |
1.15 |
perl-module_src_compile() { |
34 |
seemant |
1.6 |
|
35 |
aliz |
1.15 |
[ "${SRC_PREP}" != "yes" ] && perl-module_src_prep |
36 |
seemant |
1.7 |
make ${mymake} || die "compilation failed" |
37 |
seemant |
1.8 |
} |
38 |
|
|
|
39 |
aliz |
1.15 |
perl-module_src_test() { |
40 |
seemant |
1.9 |
make test |
41 |
seemant |
1.1 |
} |
42 |
|
|
|
43 |
aliz |
1.15 |
perl-module_src_install() { |
44 |
seemant |
1.12 |
|
45 |
seemant |
1.35 |
perlinfo |
46 |
seemant |
1.1 |
dodir ${POD_DIR} |
47 |
|
|
|
48 |
seemant |
1.9 |
test -z ${mytargets} && mytargets="install" |
49 |
mcummings |
1.31 |
eval `perl '-V:installsitearch'` |
50 |
|
|
SITE_ARCH=${installsitearch} |
51 |
|
|
eval `perl '-V:installarchlib'` |
52 |
|
|
ARCH_LIB=${installarchlib} |
53 |
|
|
|
54 |
seemant |
1.9 |
|
55 |
seemant |
1.1 |
make \ |
56 |
seemant |
1.27 |
PREFIX=${D}/usr \ |
57 |
|
|
INSTALLMAN1DIR=${D}/usr/share/man/man1 \ |
58 |
|
|
INSTALLMAN2DIR=${D}/usr/share/man/man2 \ |
59 |
|
|
INSTALLMAN3DIR=${D}/usr/share/man/man3 \ |
60 |
|
|
INSTALLMAN4DIR=${D}/usr/share/man/man4 \ |
61 |
|
|
INSTALLMAN5DIR=${D}/usr/share/man/man5 \ |
62 |
|
|
INSTALLMAN6DIR=${D}/usr/share/man/man6 \ |
63 |
|
|
INSTALLMAN7DIR=${D}/usr/share/man/man7 \ |
64 |
|
|
INSTALLMAN8DIR=${D}/usr/share/man/man8 \ |
65 |
mcummings |
1.31 |
INSTALLSITEMAN1DIR=${D}/usr/share/man/man1 \ |
66 |
|
|
INSTALLSITEMAN2DIR=${D}/usr/share/man/man2 \ |
67 |
|
|
INSTALLSITEMAN3DIR=${D}/usr/share/man/man3 \ |
68 |
|
|
INSTALLSITEMAN4DIR=${D}/usr/share/man/man4 \ |
69 |
|
|
INSTALLSITEMAN5DIR=${D}/usr/share/man/man5 \ |
70 |
|
|
INSTALLSITEMAN6DIR=${D}/usr/share/man/man6 \ |
71 |
|
|
INSTALLSITEMAN7DIR=${D}/usr/share/man/man7 \ |
72 |
|
|
INSTALLSITEMAN8DIR=${D}/usr/share/man/man8 \ |
73 |
|
|
INSTALLSITEARCH=${D}/${SITE_ARCH} \ |
74 |
|
|
INSTALLSCRIPT=${D}/usr/bin \ |
75 |
seemant |
1.27 |
${myinst} \ |
76 |
|
|
${mytargets} || die |
77 |
mcummings |
1.20 |
|
78 |
|
|
|
79 |
|
|
if [ -f ${D}${ARCH_LIB}/perllocal.pod ]; |
80 |
|
|
then |
81 |
seemant |
1.27 |
touch ${D}/${POD_DIR}/${P}.pod |
82 |
|
|
sed -e "s:${D}::g" \ |
83 |
|
|
${D}${ARCH_LIB}/perllocal.pod >> ${D}/${POD_DIR}/${P}.pod |
84 |
|
|
touch ${D}/${POD_DIR}/${P}.pod.arch |
85 |
|
|
cat ${D}/${POD_DIR}/${P}.pod >>${D}/${POD_DIR}/${P}.pod.arch |
86 |
|
|
rm -f ${D}/${ARCH_LIB}/perllocal.pod |
87 |
mcummings |
1.20 |
fi |
88 |
seemant |
1.1 |
|
89 |
mcummings |
1.20 |
if [ -f ${D}${SITE_LIB}/perllocal.pod ]; |
90 |
|
|
then |
91 |
seemant |
1.27 |
touch ${D}/${POD_DIR}/${P}.pod |
92 |
|
|
sed -e "s:${D}::g" \ |
93 |
|
|
${D}${SITE_LIB}/perllocal.pod >> ${D}/${POD_DIR}/${P}.pod |
94 |
|
|
touch ${D}/${POD_DIR}/${P}.pod.site |
95 |
|
|
cat ${D}/${POD_DIR}/${P}.pod >>${D}/${POD_DIR}/${P}.pod.site |
96 |
|
|
rm -f ${D}/${SITE_LIB}/perllocal.pod |
97 |
mcummings |
1.20 |
fi |
98 |
mcummings |
1.38 |
|
99 |
|
|
for FILE in `find ${D} -type f -name "*.html" -o -name ".packlist"`; do |
100 |
|
|
sed -ie "s:${D}:/:g" ${FILE} |
101 |
|
|
done |
102 |
seemant |
1.1 |
|
103 |
seemant |
1.9 |
dodoc Change* MANIFEST* README* ${mydoc} |
104 |
seemant |
1.35 |
} |
105 |
|
|
|
106 |
|
|
|
107 |
|
|
perl-module_pkg_setup() { |
108 |
|
|
|
109 |
|
|
perlinfo |
110 |
|
|
} |
111 |
|
|
|
112 |
|
|
|
113 |
|
|
perl-module_pkg_preinst() { |
114 |
|
|
|
115 |
|
|
perlinfo |
116 |
|
|
} |
117 |
|
|
|
118 |
|
|
perl-module_pkg_postinst() { |
119 |
|
|
|
120 |
|
|
updatepod |
121 |
|
|
} |
122 |
|
|
|
123 |
|
|
perl-module_pkg_prerm() { |
124 |
|
|
|
125 |
|
|
updatepod |
126 |
|
|
} |
127 |
|
|
|
128 |
|
|
perl-module_pkg_postrm() { |
129 |
|
|
|
130 |
|
|
updatepod |
131 |
|
|
} |
132 |
|
|
|
133 |
|
|
perlinfo() { |
134 |
|
|
|
135 |
|
|
if [ -f /usr/bin/perl ] |
136 |
|
|
then |
137 |
|
|
eval `perl '-V:installarchlib'` |
138 |
|
|
eval `perl '-V:installsitearch'` |
139 |
|
|
ARCH_LIB=${installarchlib} |
140 |
|
|
SITE_LIB=${installsitearch} |
141 |
|
|
|
142 |
|
|
eval `perl '-V:version'` |
143 |
|
|
POD_DIR="/usr/share/perl/gentoo-pods/${version}" |
144 |
|
|
fi |
145 |
|
|
|
146 |
|
|
} |
147 |
|
|
|
148 |
|
|
updatepod() { |
149 |
|
|
perlinfo |
150 |
|
|
|
151 |
|
|
if [ -d "${POD_DIR}" ] |
152 |
|
|
then |
153 |
|
|
for FILE in `find ${POD_DIR} -type f -name "*.pod.arch"`; do |
154 |
|
|
cat ${FILE} >> ${ARCH_LIB}/perllocal.pod |
155 |
|
|
rm -f ${FILE} |
156 |
|
|
done |
157 |
|
|
for FILE in `find ${POD_DIR} -type f -name "*.pod.site"`; do |
158 |
|
|
cat ${FILE} >> ${SITE_LIB}/perllocal.pod |
159 |
|
|
rm -f ${FILE} |
160 |
|
|
done |
161 |
|
|
|
162 |
|
|
#cat ${POD_DIR}/*.pod.arch >> ${ARCH_LIB}/perllocal.pod |
163 |
|
|
#cat ${POD_DIR}/*.pod.site >> ${SITE_LIB}/perllocal.pod |
164 |
|
|
#rm -f ${POD_DIR}/*.pod.site |
165 |
|
|
#rm -f ${POD_DIR}/*.pod.site |
166 |
|
|
fi |
167 |
seemant |
1.1 |
} |