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}
102 Files for developing applications which embed a Perl interpreter.
105 Summary: Practical Extraction and Report Language (SUID root binary)
106 Summary(pl): Practical Extraction and Report Language (SUID root binaria)
107 Group: Applications/Text
108 Group(de): Applikationen/Text
109 Group(fr): Utilitaires/Texte
110 Group(pl): Aplikacje/Tekst
111 Requires: %{name} = %{version}
113 %description -n sperl
114 Practical Extraction and Report Language (SUID root binary).
116 %description -n sperl -l pl
117 Practical Extraction and Report Language (SUID root binaria).
120 Summary: Practical Extraction and Report Language - base files
121 Summary(pl): Practical Extraction and Report Language - pliki podstawowe
122 Group: Applications/Text
123 Group(de): Applikationen/Text
124 Group(fr): Utilitaires/Texte
125 Group(pl): Aplikacje/Tekst
126 Prereq: %{name}-lib = %{version}
130 Practical Extraction and Report Language - base files, usefull
133 %description minimal -l pl
134 Practical Extraction and Report Language - pliki podstawowe, przydatne
135 dla systemów osadzonych.
156 sed "s|FPPATH|%{_builddir}/%{name}-%{version}|g" < $i.old > $i
157 chmod 755 $i; rm -f $i.old
162 # i added more ugly stuff here
163 # i know that is ugly way to set that but i dont know how do it better
164 cat > config.over <<EOF
165 installprefix=$RPM_BUILD_ROOT%{_prefix}
166 test -d \$installprefix || mkdir -p \$installprefix
167 test -d \$installprefix/bin || mkdir -p \$installprefix/bin
168 installarchlib=\`echo \$installarchlib | sed "s!\$prefix!\$installprefix!"\`
169 installbin=\`echo \$installbin | sed "s!\$prefix!\$installprefix!"\`
170 installman1dir=\`echo \$installman1dir | sed "s!\$prefix!\$installprefix!"\`
171 installman3dir=\`echo \$installman3dir | sed "s!\$prefix!\$installprefix!"\`
172 installprivlib=\`echo \$installprivlib | sed "s!\$prefix!\$installprefix!"\`
173 installscript=\`echo \$installscript | sed "s!\$prefix!\$installprefix!"\`
174 installsitelib=\`echo \$installsitelib | sed "s!\$prefix!\$installprefix!"\`
175 installsitearch=\`echo \$installsitearch | sed "s!\$prefix!\$installprefix!"\`
176 dynamic_ext=\`echo \$dynamic_ext GDBM_File NDBM_File\`
179 USETHREADS=%{!?bcond_on_perl_threads:-U}%{?bcond_on_perl_threads:-D}
183 -Darchname=%{_target_platform} \
184 -Dcccdlflags='-fPIC' \
185 -Dccdlflags='-rdynamic' \
186 -Dprefix=%{_prefix} \
187 -Dscriptdir=%{_bindir} \
188 -Dsitelib=%{_libdir}/perl5/site_perl \
189 -Dman1dir=%{_mandir}/man1 \
190 -Dman3dir=%{_mandir}/man3 \
192 -Doptimize="$RPM_OPT_FLAGS" \
193 ${USETHREADS}usethreads \
195 %ifarch sparc sparc64
203 mv Makefile Makefile.bak
204 sed -e 's#^CCDLFLAGS = -rdynamic -Wl,-rpath,/usr/lib/perl5/.*#CCDLFLAGS = -rdynamic#' \
205 Makefile.bak > Makefile
210 rm -rf $RPM_BUILD_ROOT
211 install -d $RPM_BUILD_ROOT
214 install utils/pl2pm $RPM_BUILD_ROOT%{_bindir}/pl2pm
216 ## Generate *.ph files with a trick (based on RH).
218 %{__make} all -f - <<EOF
219 PKGS = glibc-devel gdbm-devel gpm-devel libgr-devel libjpeg-devel \
220 libpng-devel libtiff-devel ncurses-devel popt-devel \
221 zlib-devel binutils libelf e2fsprogs-devel pam-devel pwdb-devel \
223 STDH = \$(filter /usr/include/%%, \$(shell rpm -q --queryformat '[%%{FILENAMES}\n]' \$(PKGS)))
224 STDH += \$(wildcard /usr/include/linux/*.h) \$(wildcard /usr/include/asm/*.h) \$(wildcard /usr/include/scsi/*.h)
225 GCCDIR = \$(shell gcc --print-file-name include)
226 GCCH = \$(filter \$(GCCDIR)/%%, \$(shell rpm -q --queryformat '[%%{FILENAMES}\n]' gcc))
228 LIBPATH = %{_builddir}/%{name}-%{version}
229 PERLLIB = $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}
230 PERLBIN = $RPM_BUILD_ROOT%{_bindir}/perl
231 PERL = LD_LIBRARY_PATH=\$(LIBPATH) PERL5LIB=\$(PERLLIB) \$(PERLBIN)
232 PHDIR = \$(PERLLIB)/%{_target_platform}%{perlthread}
233 PHBIN = $RPM_BUILD_ROOT%{_bindir}/h2ph
234 H2PH = \$(PERL) \$(PHBIN) -d \$(PHDIR)/
236 all: std-headers gcc-headers
238 std-headers: \$(STDH)
239 cd /usr/include && \$(H2PH) \$(STDH:/usr/include/%%=%%)
241 gcc-headers: \$(GCCH)
242 cd \$(GCCDIR) && \$(H2PH) \$(GCCH:\$(GCCDIR)/%%=%%)
248 cd $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}/%{_target_platform}%{perlthread}
249 sed -e "s|$RPM_BUILD_ROOT||g" < Config.pm > Config.pm.new
250 mv -f Config.pm.new Config.pm
251 sed -e "s|$RPM_BUILD_ROOT||g" < .packlist > .packlist.new
252 mv -f .packlist.new .packlist
256 find $RPM_BUILD_ROOT%{_libdir}/perl5 -name \*.ph -exec chmod 444 {} \;
257 find $RPM_BUILD_ROOT%{_libdir}/perl5 -type d -exec chmod 755 {} \;
260 rm -f $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}/*/CORE/libperl.so*
261 install libperl.so.%{version} $RPM_BUILD_ROOT%{_libdir}/
262 ln -sf libperl.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libperl.so
264 gzip -9nf README Change*
267 rm -rf $RPM_BUILD_ROOT
269 %post lib -p /sbin/ldconfig
270 %postun lib -p /sbin/ldconfig
273 %defattr(644,root,root,755)
274 %doc README.gz Change*
276 %attr(755,root,root) %{_bindir}/a2p
277 %attr(755,root,root) %{_bindir}/c2ph
278 %attr(755,root,root) %{_bindir}/find2perl
279 %attr(755,root,root) %{_bindir}/h2ph
280 %attr(755,root,root) %{_bindir}/h2xs
281 %attr(755,root,root) %{_bindir}/perl
282 %attr(755,root,root) %{_bindir}/perl%{version}
283 %attr(755,root,root) %{_bindir}/perlbug
284 %attr(755,root,root) %{_bindir}/perlcc
285 %attr(755,root,root) %{_bindir}/perldoc
286 %attr(755,root,root) %{_bindir}/pl2pm
287 %attr(755,root,root) %{_bindir}/pod2html
288 %attr(755,root,root) %{_bindir}/pod2latex
289 %attr(755,root,root) %{_bindir}/pod2man
290 %attr(755,root,root) %{_bindir}/pod2text
291 %attr(755,root,root) %{_bindir}/podselect
292 %attr(755,root,root) %{_bindir}/pstruct
293 %attr(755,root,root) %{_bindir}/s2p
294 %attr(755,root,root) %{_bindir}/splain
296 %dir %{_libdir}/perl5
297 %dir %{_libdir}/perl5/%{version}
298 %dir %{_libdir}/perl5/site_perl
299 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*
300 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*/%{version}
302 %attr( - ,root,root) %{_libdir}/perl5/%{version}/[A-Z]*
303 %attr( - ,root,root) %{_libdir}/perl5/%{version}/[a-z]*.*
304 %attr( - ,root,root) %{_libdir}/perl5/%{version}/auto
305 %attr( - ,root,root) %{_libdir}/perl5/%{version}/%{_target_platform}*
306 %attr( - ,root,root) %{_libdir}/perl5/%{version}/unicode
307 %attr( - ,root,root) %{_libdir}/perl5/%{version}/warnings
312 %defattr(644,root,root,755)
313 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
316 %defattr(644,root,root,755)
317 %attr(755,root,root) %{_libdir}/lib*.so
321 %defattr(644,root,root,755)
322 %attr(4755,root,root) %{_bindir}/sperl%{version}
323 %attr(4755,root,root) %{_bindir}/suidperl
326 %defattr(644,root,root,755)
327 %attr(755,root,root) %{_bindir}/perl
328 %attr(755,root,root) %{_bindir}/perl%{version}
330 %dir %{_libdir}/perl5
331 %dir %{_libdir}/perl5/%{version}
332 %dir %{_libdir}/perl5/site_perl
333 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*
334 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*/%{version}
336 %{_libdir}/perl5/%{version}/AutoLoader.pm
337 %{_libdir}/perl5/%{version}/Carp.pm
338 %{_libdir}/perl5/%{version}/Cwd.pm
339 %{_libdir}/perl5/%{version}/DirHandle.pm
340 %{_libdir}/perl5/%{version}/Exporter.pm
341 %{_libdir}/perl5/%{version}/File/Basename.pm
342 %{_libdir}/perl5/%{version}/File/Find.pm
343 %{_libdir}/perl5/%{version}/File/Path.pm
344 %{_libdir}/perl5/%{version}/File/Spec.pm
345 %{_libdir}/perl5/%{version}/File/Spec/Unix.pm
346 %{_libdir}/perl5/%{version}/FileHandle.pm
347 %{_libdir}/perl5/%{version}/IO/Socket/INET.pm
348 %{_libdir}/perl5/%{version}/IO/Socket/UNIX.pm
349 %{_libdir}/perl5/%{version}/IPC/Open2.pm
350 %{_libdir}/perl5/%{version}/IPC/Open3.pm
351 %{_libdir}/perl5/%{version}/SelectSaver.pm
352 %{_libdir}/perl5/%{version}/Symbol.pm
353 %{_libdir}/perl5/%{version}/Text/Tabs.pm
354 %{_libdir}/perl5/%{version}/Text/Wrap.pm
355 %{_libdir}/perl5/%{version}/Time/Local.pm
356 %{_libdir}/perl5/%{version}/attributes.pm
357 %{_libdir}/perl5/%{version}/base.pm
358 %{_libdir}/perl5/%{version}/constant.pm
359 %{_libdir}/perl5/%{version}/fields.pm
360 %{_libdir}/perl5/%{version}/integer.pm
361 %{_libdir}/perl5/%{version}/lib.pm
362 %{_libdir}/perl5/%{version}/locale.pm
363 %{_libdir}/perl5/%{version}/overload.pm
364 %{_libdir}/perl5/%{version}/strict.pm
365 %{_libdir}/perl5/%{version}/vars.pm
366 %{_libdir}/perl5/%{version}/warnings.pm
367 %{_libdir}/perl5/%{version}/warnings/register.pm
368 %{_libdir}/perl5/%{version}/%{_target_platform}*/Config.pm
369 %{_libdir}/perl5/%{version}/%{_target_platform}*/DynaLoader.pm
370 %{_libdir}/perl5/%{version}/%{_target_platform}*/IO.pm
371 %{_libdir}/perl5/%{version}/%{_target_platform}*/IO/*.pm
372 %{_libdir}/perl5/%{version}/%{_target_platform}*/POSIX.pm
373 %{_libdir}/perl5/%{version}/%{_target_platform}*/Socket.pm
374 %{_libdir}/perl5/%{version}/%{_target_platform}*/XSLoader.pm
375 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/DynaLoader/dl_findfile.al
376 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/IO/IO.so
377 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX/POSIX.so
378 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX/tmpfile.al
379 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/Socket/Socket.so
381 %dir %{_libdir}/perl5/%{version}/File
382 %dir %{_libdir}/perl5/%{version}/File/Spec
383 %dir %{_libdir}/perl5/%{version}/IO
384 %dir %{_libdir}/perl5/%{version}/IO/Socket
385 %dir %{_libdir}/perl5/%{version}/IPC
386 %dir %{_libdir}/perl5/%{version}/Text
387 %dir %{_libdir}/perl5/%{version}/Time
388 %dir %{_libdir}/perl5/%{version}/warnings
389 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*
390 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/IO
391 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto
392 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/DynaLoader
393 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/IO
394 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX
395 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/Socket