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