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 gzip -9nf README Change*
268 rm -rf $RPM_BUILD_ROOT
270 %post lib -p /sbin/ldconfig
271 %postun lib -p /sbin/ldconfig
274 %defattr(644,root,root,755)
275 %doc README.gz Change*
277 %attr(755,root,root) %{_bindir}/a2p
278 %attr(755,root,root) %{_bindir}/find2perl
279 %attr(755,root,root) %{_bindir}/perl
280 %attr(755,root,root) %{_bindir}/perl%{version}
281 %attr(755,root,root) %{_bindir}/s2p
283 %dir %{_libdir}/perl5
284 %dir %{_libdir}/perl5/%{version}
285 %dir %{_libdir}/perl5/site_perl
286 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*
287 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*/%{version}
289 %attr( - ,root,root) %{_libdir}/perl5/%{version}/[A-Z]*
290 %attr( - ,root,root) %{_libdir}/perl5/%{version}/[a-z]*.*
291 %attr( - ,root,root) %{_libdir}/perl5/%{version}/auto
292 %attr( - ,root,root) %{_libdir}/perl5/%{version}/%{_target_platform}*
293 %attr( - ,root,root) %{_libdir}/perl5/%{version}/unicode
294 %attr( - ,root,root) %{_libdir}/perl5/%{version}/warnings
299 %defattr(644,root,root,755)
300 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
303 %defattr(644,root,root,755)
304 %attr(755,root,root) %{_bindir}/c2ph
305 %attr(755,root,root) %{_bindir}/h2ph
306 %attr(755,root,root) %{_bindir}/h2xs
307 %attr(755,root,root) %{_bindir}/perlbug
308 %attr(755,root,root) %{_bindir}/perlcc
309 %attr(755,root,root) %{_bindir}/perldoc
310 %attr(755,root,root) %{_bindir}/pl2pm
311 %attr(755,root,root) %{_bindir}/pod2html
312 %attr(755,root,root) %{_bindir}/pod2latex
313 %attr(755,root,root) %{_bindir}/pod2man
314 %attr(755,root,root) %{_bindir}/pod2text
315 %attr(755,root,root) %{_bindir}/podselect
316 %attr(755,root,root) %{_bindir}/pstruct
317 %attr(755,root,root) %{_bindir}/splain
319 %attr(755,root,root) %{_libdir}/lib*.so
323 %defattr(644,root,root,755)
324 %attr(4755,root,root) %{_bindir}/sperl%{version}
325 %attr(4755,root,root) %{_bindir}/suidperl
328 %defattr(644,root,root,755)
329 %attr(755,root,root) %{_bindir}/perl
330 %attr(755,root,root) %{_bindir}/perl%{version}
332 %dir %{_libdir}/perl5
333 %dir %{_libdir}/perl5/%{version}
334 %dir %{_libdir}/perl5/site_perl
335 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*
336 %dir %{_libdir}/perl5/site_perl/%{_target_platform}*/%{version}
338 %{_libdir}/perl5/%{version}/AutoLoader.pm
339 %{_libdir}/perl5/%{version}/Carp.pm
340 %{_libdir}/perl5/%{version}/Cwd.pm
341 %{_libdir}/perl5/%{version}/DirHandle.pm
342 %{_libdir}/perl5/%{version}/Exporter.pm
343 %{_libdir}/perl5/%{version}/File/Basename.pm
344 %{_libdir}/perl5/%{version}/File/Find.pm
345 %{_libdir}/perl5/%{version}/File/Path.pm
346 %{_libdir}/perl5/%{version}/File/Spec.pm
347 %{_libdir}/perl5/%{version}/File/Spec/Unix.pm
348 %{_libdir}/perl5/%{version}/FileHandle.pm
349 %{_libdir}/perl5/%{version}/IO/Socket/INET.pm
350 %{_libdir}/perl5/%{version}/IO/Socket/UNIX.pm
351 %{_libdir}/perl5/%{version}/IPC/Open2.pm
352 %{_libdir}/perl5/%{version}/IPC/Open3.pm
353 %{_libdir}/perl5/%{version}/SelectSaver.pm
354 %{_libdir}/perl5/%{version}/Symbol.pm
355 %{_libdir}/perl5/%{version}/Text/Tabs.pm
356 %{_libdir}/perl5/%{version}/Text/Wrap.pm
357 %{_libdir}/perl5/%{version}/Time/Local.pm
358 %{_libdir}/perl5/%{version}/attributes.pm
359 %{_libdir}/perl5/%{version}/base.pm
360 %{_libdir}/perl5/%{version}/constant.pm
361 %{_libdir}/perl5/%{version}/fields.pm
362 %{_libdir}/perl5/%{version}/integer.pm
363 %{_libdir}/perl5/%{version}/lib.pm
364 %{_libdir}/perl5/%{version}/locale.pm
365 %{_libdir}/perl5/%{version}/overload.pm
366 %{_libdir}/perl5/%{version}/strict.pm
367 %{_libdir}/perl5/%{version}/vars.pm
368 %{_libdir}/perl5/%{version}/warnings.pm
369 %{_libdir}/perl5/%{version}/warnings/register.pm
370 %{_libdir}/perl5/%{version}/%{_target_platform}*/Config.pm
371 %{_libdir}/perl5/%{version}/%{_target_platform}*/DynaLoader.pm
372 %{_libdir}/perl5/%{version}/%{_target_platform}*/IO.pm
373 %{_libdir}/perl5/%{version}/%{_target_platform}*/IO/*.pm
374 %{_libdir}/perl5/%{version}/%{_target_platform}*/POSIX.pm
375 %{_libdir}/perl5/%{version}/%{_target_platform}*/Socket.pm
376 %{_libdir}/perl5/%{version}/%{_target_platform}*/XSLoader.pm
377 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/DynaLoader/dl_findfile.al
378 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/IO/IO.so
379 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX/POSIX.so
380 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX/tmpfile.al
381 %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/Socket/Socket.so
383 %dir %{_libdir}/perl5/%{version}/File
384 %dir %{_libdir}/perl5/%{version}/File/Spec
385 %dir %{_libdir}/perl5/%{version}/IO
386 %dir %{_libdir}/perl5/%{version}/IO/Socket
387 %dir %{_libdir}/perl5/%{version}/IPC
388 %dir %{_libdir}/perl5/%{version}/Text
389 %dir %{_libdir}/perl5/%{version}/Time
390 %dir %{_libdir}/perl5/%{version}/warnings
391 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*
392 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/IO
393 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto
394 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/DynaLoader
395 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/IO
396 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/POSIX
397 %dir %{_libdir}/perl5/%{version}/%{_target_platform}*/auto/Socket