]> git.pld-linux.org Git - packages/perl.git/blob - perl.spec
- remove diffrent than Linux OS specyfic man pages like perl{5004delta,5005delta}
[packages/perl.git] / perl.spec
1 %define         __find_provides %{_builddir}/%{name}-%{version}/find-perl-provides
2 %define         perlthread %{?bcond_on_perl_threads:-thread-multi}
3 Summary:        Practical Extraction and Report Language
4 Summary(de):    Praktische Extraktions- und Berichtsprache 
5 Summary(fr):    Practical Extraction and Report Language (Perl)
6 Summary(pl):    Practical Extraction and Report Language (Perl)
7 Summary(tr):    Kabuk yorumlama dili
8 Name:           perl
9 Version:        5.6.1
10 Release:        6
11 Epoch:          1
12 License:        GPL
13 Group:          Applications/Text
14 Group(de):      Applikationen/Text
15 Group(fr):      Utilitaires/Texte
16 Group(pl):      Aplikacje/Tekst
17 Source0:        ftp://ftp.perl.org/pub/perl/CPAN/src/%{name}-%{version}.tar.gz
18 Patch0:         %{name}-noroot_install.patch
19 Patch1:         %{name}-nodb.patch
20 Patch2:         %{name}-DESTDIR.patch
21 Patch3:         %{name}-find-provides.patch
22 Patch4:         %{name}-prereq.patch
23 Patch5:         %{name}-syslog.patch
24 Patch6:         %{name}-CGI-upload-tmpdir.patch
25 Patch7:         %{name}-LD_RUN_PATH.patch
26 Patch8:         %{name}-errno_h-parsing.patch
27 Patch9:         %{name}-use-LD_PRELOAD-for-libperl.so.patch
28 Patch10:        %{name}-sitearch.patch
29 Patch11:        %{name}-soname.patch
30 Patch12:        %{name}-db3.patch
31 URL:            http://www.perl.org/
32 #Requires:      csh
33 Provides:       perl-ANSIColor
34 Provides:       perl-Devel-Peek
35 Provides:       perl-DProf
36 Provides:       perl-PodParser
37 Provides:       perl-CGI
38 Obsoletes:      perl-ANSIColor
39 Obsoletes:      perl-Devel-Peek
40 Obsoletes:      perl-DProf
41 Obsoletes:      perl-PodParser
42 Obsoletes:      perl-CGI
43 Prereq:         %{name}-lib = %{version}
44 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45
46 %description
47 Perl is an interpreted language optimized for scanning arbitrary text
48 files, extracting information from those text files, and printing
49 reports based on that information. It's also a good language for many
50 system management tasks. The language is intended to be practical
51 (easy to use, efficient, complete) rather than beautiful (tiny,
52 elegant, minimal).
53
54 #This version has support for threads compiled in.
55
56 %description -l de
57 Perl ist eine Interpreter-Sprache, die zum Durchsuchen beliebiger
58 Text- dateien, Extrahieren von Informationen aus diesen Dateien und
59 Drucken von auf diesen Informationen basierenden Berichten optimiert
60 ist. Die Sprache eignet sich außerdem für viele
61 Systemverwaltungsaufgaben. Sie ist eher praktisch (einfache
62 Anwendung,effizient, vollständig) als schön (winzig, elegant,
63 minimal).
64
65 %description -l fr
66 Perl est un langage interprété, optimisé pour filtrer des fichiers
67 texte, extraire des informations de ces fichiers, et imprimer des
68 rapports basés sur ces informations. C'est aussi un bon langage pour
69 de nombreuses procédures de gestion système. Ce langage se veut
70 pratique (simple à utiliser, efficace, complet) autant qu'agréable
71 (conscrit, élégant, minimal).
72
73 %description -l pl
74 Perl jest jêzykiem przeznaczonym do skanowania plików tekstowych,
75 wyci±gania z nich informacji i drukowania raportu bazuj±cego na tych
76 informacjach. Jest równie¿ doskona³ym jêzykiem dla wielu narzêdzi do
77 nadzoru systemu. Jêzyk ten jest w zamierzeniu praktycznym (³atwym w
78 u¿yciu, efektywnym, kompletnym) bardziej ni¿ piêkny ;) (skromny,
79 elegancki, minimalny).
80
81 %description -l tr
82 Perl, metin dosyalarýný taramak, bu metin dosyalarýndan bilgi çýkarmak
83 ve bu bilgiye dayalý raporlar hazýrlamak icin geliþtirilmiþ bir
84 yorumlamalý dildir. Ayrýca pek çok sistem yönetimi görevleri için de
85 yararlý yetenekleri vardýr. Perl, güzel (ufak, zarif, minimum)
86 olmaktan çok, pratik olmaya yönelik (kullanýmý kolay, verimli,
87 eksiksiz) olarak tasarlanmýþtýr.
88
89 %package lib
90 Summary:        Shared Perl library and other version dependant files
91 Group:          Libraries
92
93 %description lib
94 Provides a shared library for programs which embed a Perl interpreter.
95
96 %package devel
97 Summary:        Perl development files
98 Group:          Development/Libraries
99 Requires:       %{name}-lib = %{version}
100 Obsoletes:      %{name}-lib-devel
101
102 %description devel
103 Files for developing applications which embed a Perl interpreter.
104
105 %package -n sperl
106 Summary:        Practical Extraction and Report Language (SUID root binary)
107 Summary(pl):    Practical Extraction and Report Language (SUID root binaria)
108 Group:          Applications/Text
109 Group(de):      Applikationen/Text
110 Group(fr):      Utilitaires/Texte
111 Group(pl):      Aplikacje/Tekst
112 Requires:       %{name} = %{version}
113
114 %description -n sperl
115 Practical Extraction and Report Language (SUID root binary).
116
117 %description -n sperl -l pl
118 Practical Extraction and Report Language (SUID root binaria).
119
120 %package minimal
121 Summary:        Practical Extraction and Report Language - base files
122 Summary(pl):    Practical Extraction and Report Language - pliki podstawowe
123 Group:          Applications/Text
124 Group(de):      Applikationen/Text
125 Group(fr):      Utilitaires/Texte
126 Group(pl):      Aplikacje/Tekst
127 Prereq:         %{name}-lib = %{version}
128 Conflicts:      %{name}
129
130 %description minimal
131 Practical Extraction and Report Language - base files, usefull
132 on embedded systems.
133
134 %description minimal -l pl
135 Practical Extraction and Report Language - pliki podstawowe, przydatne
136 dla systemów osadzonych.
137
138
139 %prep
140 %setup  -q
141 %patch0 -p1
142 %patch1 -p1
143 %patch2 -p1
144 %patch3 -p1
145 %patch4 -p1
146 %patch5 -p1
147 %patch6 -p1
148 %patch7 -p1
149 %patch8 -p1
150 %patch9 -p1
151 %patch10 -p1
152 %patch11 -p1
153 %patch12 -p1
154
155 for i in find-* ; do
156         mv -f $i $i.old
157         sed "s|FPPATH|%{_builddir}/%{name}-%{version}|g" < $i.old > $i
158         chmod 755 $i; rm -f $i.old
159 done
160
161 %build
162 # this is gross
163 # i added more ugly stuff here
164 # i know that is ugly way to set that but i dont know how do it better  
165 cat > config.over <<EOF
166 installprefix=$RPM_BUILD_ROOT%{_prefix}
167 test -d \$installprefix || mkdir -p \$installprefix
168 test -d \$installprefix/bin || mkdir -p \$installprefix/bin
169 installarchlib=\`echo \$installarchlib | sed "s!\$prefix!\$installprefix!"\`
170 installbin=\`echo \$installbin | sed "s!\$prefix!\$installprefix!"\`
171 installman1dir=\`echo \$installman1dir | sed "s!\$prefix!\$installprefix!"\`
172 installman3dir=\`echo \$installman3dir | sed "s!\$prefix!\$installprefix!"\`
173 installprivlib=\`echo \$installprivlib | sed "s!\$prefix!\$installprefix!"\`
174 installscript=\`echo \$installscript | sed "s!\$prefix!\$installprefix!"\`
175 installsitelib=\`echo \$installsitelib | sed "s!\$prefix!\$installprefix!"\`
176 installsitearch=\`echo \$installsitearch | sed "s!\$prefix!\$installprefix!"\`
177 dynamic_ext=\`echo \$dynamic_ext GDBM_File NDBM_File\`
178 EOF
179
180 USETHREADS=%{!?bcond_on_perl_threads:-U}%{?bcond_on_perl_threads:-D}
181 sh Configure \
182         -des \
183         -Dcc=%{__cc} \
184         -Darchname=%{_target_platform} \
185         -Dcccdlflags='-fPIC' \
186         -Dccdlflags='-rdynamic' \
187         -Dprefix=%{_prefix} \
188         -Dscriptdir=%{_bindir} \
189         -Dsitelib=%{_libdir}/perl5/site_perl \
190         -Dman1dir=%{_mandir}/man1 \
191         -Dman3dir=%{_mandir}/man3 \
192         -Dman3ext=3pm \
193         -Doptimize="$RPM_OPT_FLAGS" \
194         ${USETHREADS}usethreads \
195         -Uuselargefiles \
196 %ifarch sparc sparc64
197         -Ud_longdbl \
198 %endif
199         -Duseshrplib \
200         -Dd_dosuid \
201         -Ud_setresuid \
202         -Ud_setresgid 
203
204 mv Makefile Makefile.bak
205 sed -e 's#^CCDLFLAGS = -rdynamic -Wl,-rpath,/usr/lib/perl5/.*#CCDLFLAGS = -rdynamic#' \
206         Makefile.bak > Makefile
207
208 %{__make}
209
210 %install
211 rm -rf $RPM_BUILD_ROOT
212 install -d $RPM_BUILD_ROOT
213
214 %{__make} install
215 install utils/pl2pm $RPM_BUILD_ROOT%{_bindir}/pl2pm
216
217 ## Generate *.ph files with a trick (based on RH).
218
219 %{__make} all -f - <<EOF
220 PKGS    = glibc-devel gdbm-devel gpm-devel libgr-devel libjpeg-devel \
221         libpng-devel libtiff-devel ncurses-devel popt-devel \
222         zlib-devel binutils libelf e2fsprogs-devel pam-devel pwdb-devel \
223         rpm-devel
224 STDH    = \$(filter /usr/include/%%, \$(shell rpm -q --queryformat '[%%{FILENAMES}\n]' \$(PKGS)))
225 STDH    += \$(wildcard /usr/include/linux/*.h) \$(wildcard /usr/include/asm/*.h) \$(wildcard /usr/include/scsi/*.h)
226 GCCDIR  = \$(shell gcc --print-file-name include)
227 GCCH    = \$(filter \$(GCCDIR)/%%, \$(shell rpm -q --queryformat '[%%{FILENAMES}\n]' gcc))
228
229 LIBPATH = %{_builddir}/%{name}-%{version}
230 PERLLIB = $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}
231 PERLBIN = $RPM_BUILD_ROOT%{_bindir}/perl
232 PERL    = LD_LIBRARY_PATH=\$(LIBPATH) PERL5LIB=\$(PERLLIB) \$(PERLBIN)
233 PHDIR   = \$(PERLLIB)/%{_target_platform}%{perlthread}
234 PHBIN   = $RPM_BUILD_ROOT%{_bindir}/h2ph
235 H2PH    = \$(PERL) \$(PHBIN) -d \$(PHDIR)/
236
237 all: std-headers gcc-headers
238
239 std-headers: \$(STDH)
240         cd /usr/include && \$(H2PH) \$(STDH:/usr/include/%%=%%)
241
242 gcc-headers: \$(GCCH)
243         cd \$(GCCDIR) && \$(H2PH) \$(GCCH:\$(GCCDIR)/%%=%%)
244
245 EOF
246
247 ## Fix paths
248 (
249 cd $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}/%{_target_platform}%{perlthread}
250 sed -e "s|$RPM_BUILD_ROOT||g" < Config.pm > Config.pm.new
251 mv -f Config.pm.new Config.pm
252 sed -e "s|$RPM_BUILD_ROOT||g" < .packlist > .packlist.new
253 mv -f .packlist.new .packlist
254 )
255
256 ## Fix permissions
257 find $RPM_BUILD_ROOT%{_libdir}/perl5 -name \*.ph -exec chmod 444 {} \;
258 find $RPM_BUILD_ROOT%{_libdir}/perl5 -type d -exec chmod 755 {} \;
259
260 ## Fix lib
261 rm -f $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}/*/CORE/libperl.so*
262 install libperl.so.%{version} $RPM_BUILD_ROOT%{_libdir}/
263 ln -sf libperl.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libperl.so
264
265 ## Fix installed man pages list
266 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/perl{5004delta,5005delta,aix,amiga,bs2000}* \
267         $RPM_BUILD_ROOT%{_mandir}/man1/perl{cygwin,dos,hpux,machten,macos}* \
268         $RPM_BUILD_ROOT%{_mandir}/man1/perl{mpeix,os2,os390,solaris,vmesa,vms,vos,win32}*
269
270 gzip -9nf README Change*
271
272 %clean
273 rm -rf $RPM_BUILD_ROOT
274
275 %post lib -p /sbin/ldconfig
276 %postun lib -p /sbin/ldconfig
277
278 %files
279 %defattr(644,root,root,755)
280 %attr(755,root,root) %{_bindir}/a2p
281 %attr(755,root,root) %{_bindir}/find2perl
282 %attr(755,root,root) %{_bindir}/perl
283 %attr(755,root,root) %{_bindir}/perl%{version}
284 %attr(755,root,root) %{_bindir}/s2p
285
286 %dir %{_libdir}/perl5
287 %dir %{_libdir}/perl5/%{version}
288 %dir %{_libdir}/perl5/site_perl
289 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*
290 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*/%{version}
291
292 %attr( - ,root,root) %{_libdir}/perl5/%{version}/[A-Z]*
293 %attr( - ,root,root) %{_libdir}/perl5/%{version}/[a-z]*.*
294 %attr( - ,root,root) %{_libdir}/perl5/%{version}/auto
295 %attr( - ,root,root) %{_libdir}/perl5/%{version}/%{_target_platform}*
296 %attr( - ,root,root) %{_libdir}/perl5/%{version}/unicode
297 %attr( - ,root,root) %{_libdir}/perl5/%{version}/warnings
298
299 %{_mandir}/man1/*
300
301 %files lib
302 %defattr(644,root,root,755)
303 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
304
305 %files devel
306 %defattr(644,root,root,755)
307 %doc README.gz Change*
308 %attr(755,root,root) %{_bindir}/c2ph
309 %attr(755,root,root) %{_bindir}/h2ph
310 %attr(755,root,root) %{_bindir}/h2xs
311 %attr(755,root,root) %{_bindir}/perlbug
312 %attr(755,root,root) %{_bindir}/perlcc
313 %attr(755,root,root) %{_bindir}/perldoc
314 %attr(755,root,root) %{_bindir}/pl2pm
315 %attr(755,root,root) %{_bindir}/pod2html
316 %attr(755,root,root) %{_bindir}/pod2latex
317 %attr(755,root,root) %{_bindir}/pod2man
318 %attr(755,root,root) %{_bindir}/pod2text
319 %attr(755,root,root) %{_bindir}/podselect
320 %attr(755,root,root) %{_bindir}/pstruct
321 %attr(755,root,root) %{_bindir}/splain
322
323 %attr(755,root,root) %{_libdir}/lib*.so
324 %{_mandir}/man3/*
325
326 %files -n sperl
327 %defattr(644,root,root,755)
328 %attr(4755,root,root) %{_bindir}/sperl%{version}
329 %attr(4755,root,root) %{_bindir}/suidperl
330
331 %files minimal
332 %defattr(644,root,root,755)
333 %attr(755,root,root) %{_bindir}/perl
334 %attr(755,root,root) %{_bindir}/perl%{version}
335
336 %dir %{_libdir}/perl5
337 %dir %{_libdir}/perl5/%{version}
338 %dir %{_libdir}/perl5/site_perl
339 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*
340 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*/%{version}
341
342 %{_libdir}/perl5/%{version}/AutoLoader.pm
343 %{_libdir}/perl5/%{version}/Carp.pm
344 %{_libdir}/perl5/%{version}/Cwd.pm
345 %{_libdir}/perl5/%{version}/DirHandle.pm
346 %{_libdir}/perl5/%{version}/Exporter.pm
347 %{_libdir}/perl5/%{version}/File/Basename.pm
348 %{_libdir}/perl5/%{version}/File/Find.pm
349 %{_libdir}/perl5/%{version}/File/Path.pm
350 %{_libdir}/perl5/%{version}/File/Spec.pm
351 %{_libdir}/perl5/%{version}/File/Spec/Unix.pm
352 %{_libdir}/perl5/%{version}/FileHandle.pm
353 %{_libdir}/perl5/%{version}/IO/Socket/INET.pm
354 %{_libdir}/perl5/%{version}/IO/Socket/UNIX.pm
355 %{_libdir}/perl5/%{version}/IPC/Open2.pm
356 %{_libdir}/perl5/%{version}/IPC/Open3.pm
357 %{_libdir}/perl5/%{version}/SelectSaver.pm
358 %{_libdir}/perl5/%{version}/Symbol.pm
359 %{_libdir}/perl5/%{version}/Text/Tabs.pm
360 %{_libdir}/perl5/%{version}/Text/Wrap.pm
361 %{_libdir}/perl5/%{version}/Time/Local.pm
362 %{_libdir}/perl5/%{version}/attributes.pm
363 %{_libdir}/perl5/%{version}/base.pm
364 %{_libdir}/perl5/%{version}/constant.pm
365 %{_libdir}/perl5/%{version}/fields.pm
366 %{_libdir}/perl5/%{version}/integer.pm
367 %{_libdir}/perl5/%{version}/lib.pm
368 %{_libdir}/perl5/%{version}/locale.pm
369 %{_libdir}/perl5/%{version}/overload.pm
370 %{_libdir}/perl5/%{version}/strict.pm
371 %{_libdir}/perl5/%{version}/vars.pm
372 %{_libdir}/perl5/%{version}/warnings.pm
373 %{_libdir}/perl5/%{version}/warnings/register.pm
374 %{_libdir}/perl5/%{version}/%{_target_platform}*/Config.pm
375 %{_libdir}/perl5/%{version}/%{_target_platform}*/DynaLoader.pm
376 %{_libdir}/perl5/%{version}/%{_target_platform}*/IO.pm
377 %{_libdir}/perl5/%{version}/%{_target_platform}*/IO/*.pm
378 %{_libdir}/perl5/%{version}/%{_target_platform}*/POSIX.pm
379 %{_libdir}/perl5/%{version}/%{_target_platform}*/Socket.pm
380 %{_libdir}/perl5/%{version}/%{_target_platform}*/XSLoader.pm
381 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/DynaLoader/dl_findfile.al
382 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/IO/IO.so
383 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX/POSIX.so
384 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX/tmpfile.al
385 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/Socket/Socket.so
386
387 %dir %{_libdir}/perl5/%{version}/File
388 %dir %{_libdir}/perl5/%{version}/File/Spec
389 %dir %{_libdir}/perl5/%{version}/IO
390 %dir %{_libdir}/perl5/%{version}/IO/Socket
391 %dir %{_libdir}/perl5/%{version}/IPC
392 %dir %{_libdir}/perl5/%{version}/Text
393 %dir %{_libdir}/perl5/%{version}/Time
394 %dir %{_libdir}/perl5/%{version}/warnings
395 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*
396 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/IO
397 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto
398 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/DynaLoader
399 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/IO
400 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX
401 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/Socket
This page took 0.053269 seconds and 3 git commands to generate.