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
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/
33 Provides: perl-ANSIColor
34 Provides: perl-Devel-Peek
36 Provides: perl-PodParser
38 Obsoletes: perl-ANSIColor
39 Obsoletes: perl-Devel-Peek
41 Obsoletes: perl-PodParser
43 Prereq: %{name}-lib = %{version}
44 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
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,
54 #This version has support for threads compiled in.
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,
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).
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).
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.
90 Summary: Shared Perl library and other version dependant files
94 Provides a shared library for programs which embed a Perl interpreter.
97 Summary: Perl development files
98 Group: Development/Libraries
99 Requires: %{name}-lib = %{version}
100 Obsoletes: %{name}-lib-devel
103 Files for developing applications which embed a Perl interpreter.
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}
114 %description -n sperl
115 Practical Extraction and Report Language (SUID root binary).
117 %description -n sperl -l pl
118 Practical Extraction and Report Language (SUID root binaria).
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}
131 Practical Extraction and Report Language - base files, usefull
134 %description minimal -l pl
135 Practical Extraction and Report Language - pliki podstawowe, przydatne
136 dla systemów osadzonych.
157 sed "s|FPPATH|%{_builddir}/%{name}-%{version}|g" < $i.old > $i
158 chmod 755 $i; rm -f $i.old
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\`
180 USETHREADS=%{!?bcond_on_perl_threads:-U}%{?bcond_on_perl_threads:-D}
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 \
193 -Doptimize="$RPM_OPT_FLAGS" \
194 ${USETHREADS}usethreads \
196 %ifarch sparc sparc64
204 mv Makefile Makefile.bak
205 sed -e 's#^CCDLFLAGS = -rdynamic -Wl,-rpath,/usr/lib/perl5/.*#CCDLFLAGS = -rdynamic#' \
206 Makefile.bak > Makefile
211 rm -rf $RPM_BUILD_ROOT
212 install -d $RPM_BUILD_ROOT
215 install utils/pl2pm $RPM_BUILD_ROOT%{_bindir}/pl2pm
217 ## Generate *.ph files with a trick (based on RH).
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 \
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))
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)/
237 all: std-headers gcc-headers
239 std-headers: \$(STDH)
240 cd /usr/include && \$(H2PH) \$(STDH:/usr/include/%%=%%)
242 gcc-headers: \$(GCCH)
243 cd \$(GCCDIR) && \$(H2PH) \$(GCCH:\$(GCCDIR)/%%=%%)
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
257 find $RPM_BUILD_ROOT%{_libdir}/perl5 -name \*.ph -exec chmod 444 {} \;
258 find $RPM_BUILD_ROOT%{_libdir}/perl5 -type d -exec chmod 755 {} \;
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
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}*
270 gzip -9nf README Change*
273 rm -rf $RPM_BUILD_ROOT
275 %post lib -p /sbin/ldconfig
276 %postun lib -p /sbin/ldconfig
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
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}
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
302 %defattr(644,root,root,755)
303 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
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
323 %attr(755,root,root) %{_libdir}/lib*.so
327 %defattr(644,root,root,755)
328 %attr(4755,root,root) %{_bindir}/sperl%{version}
329 %attr(4755,root,root) %{_bindir}/suidperl
332 %defattr(644,root,root,755)
333 %attr(755,root,root) %{_bindir}/perl
334 %attr(755,root,root) %{_bindir}/perl%{version}
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}
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
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