3 %bcond_without tests # do not perform "make test"
6 %define pnam Dump-Streamer
7 %include /usr/lib/rpm/macros.perl
8 Summary: Data::Dump::Streamer - Accurately serialize a data structure as Perl code
9 Name: perl-Data-Dump-Streamer
12 License: GPL v1+ or Artistic
13 Group: Development/Languages/Perl
14 Source0: http://www.cpan.org/modules/by-module/Data/%{pdir}-%{pnam}-%{version}.tar.gz
15 # Source0-md5: ca6fa9ef3a29a9c423f78db3a4ff126a
16 URL: http://search.cpan.org/dist/Data-Dump-Streamer/
17 BuildRequires: perl-Module-Build
18 BuildRequires: perl-devel >= 1:5.8.0
19 BuildRequires: rpm-perlprov >= 4.1-13
21 BuildRequires: perl-B-Utils
22 BuildRequires: perl-PadWalker
24 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27 Given a list of scalars or reference variables, writes out their
28 contents in perl syntax. The references can also be objects. The
29 contents of each variable is output using the least number of Perl
30 statements as convenient, usually only one. Self-referential
31 structures, closures, and objects are output correctly.
33 The return value can be evaled to get back an identical copy of the
34 original reference structure. In some cases this may require the use
35 of utility subs that Data::Dump::Streamer will optionally export.
37 This module is very similar in concept to the core module
38 Data::Dumper, with the major differences being that this module is
39 designed to output to a stream instead of constructing its output in
40 memory (trading speed for memory), and that the traversal over the
41 data structure is effectively breadth first versus the depth first
42 traversal done by the others.
44 In fact the data structure is scanned twice, first in breadth first
45 mode to perform structural analysis, and then in depth first mode to
46 actually produce the output, but obeying the depth relationships of
50 %setup -q -n %{pdir}-%{pnam}-%{version}
53 %{__perl} Build.PL NODDS \
54 destdir=$RPM_BUILD_ROOT \
58 %{?with_tests:./Build test}
61 rm -rf $RPM_BUILD_ROOT
66 rm -rf $RPM_BUILD_ROOT
69 %defattr(644,root,root,755)
71 %dir %{perl_vendorarch}/Data/Dump
72 %{perl_vendorarch}/Data/Dump/*.pm
73 %{perl_vendorarch}/Data/Dump/Streamer
74 %dir %{perl_vendorarch}/auto/Data/Dump
75 %dir %{perl_vendorarch}/auto/Data/Dump/Streamer
76 %attr(755,root,root) %{perl_vendorarch}/auto/Data/Dump/Streamer/Streamer.so