[perl-Cpanel-JSON-XS] Initial import (perl-Cpanel-JSON-XS-2.3404-2)

Paul Howarth pghmcfc at fedoraproject.org
Thu Apr 10 14:22:10 UTC 2014


commit f40360d1204c6f1c4a42374f407c7e99915dbf03
Author: Paul Howarth <paul at city-fan.org>
Date:   Thu Apr 10 15:20:44 2014 +0100

    Initial import (perl-Cpanel-JSON-XS-2.3404-2)
    
    This module converts Perl data structures to JSON and vice versa. Its
    primary goal is to be correct and its secondary goal is to be fast. To
    reach the latter goal it was written in C.

 .gitignore                          |    1 +
 Cpanel-JSON-XS-2.3404-no-clzf.patch |   37 ++++++++++++
 perl-Cpanel-JSON-XS.spec            |  105 +++++++++++++++++++++++++++++++++++
 sources                             |    1 +
 4 files changed, 144 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..db3f510 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/Cpanel-JSON-XS-[0-9.]*.tar.gz
diff --git a/Cpanel-JSON-XS-2.3404-no-clzf.patch b/Cpanel-JSON-XS-2.3404-no-clzf.patch
new file mode 100644
index 0000000..61a8971
--- /dev/null
+++ b/Cpanel-JSON-XS-2.3404-no-clzf.patch
@@ -0,0 +1,37 @@
+diff -Naur old/bin/cpanel_json_xs new/bin/cpanel_json_xs
+--- old/bin/cpanel_json_xs	2013-11-12 08:26:09.000000000 +1100
++++ new/bin/cpanel_json_xs	2014-04-10 18:02:15.694903565 +1000
+@@ -40,8 +40,6 @@
+ 
+ =item bencode - use Convert::Bencode, if available (used by torrent files, among others)
+ 
+-=item clzf - Compress::LZF format (requires that module to be installed)
+-
+ =item eval - evaluate the given code as (non-utf-8) Perl, basically the reverse of "-t dump"
+ 
+ =item yaml - YAML (avoid at all costs, requires the YAML module :)
+@@ -74,8 +72,6 @@
+ 
+ =item bencode - use Convert::Bencode, if available (used by torrent files, among others)
+ 
+-=item clzf - Compress::LZF format
+-
+ =item yaml - YAML
+ 
+ =item dump - Data::Dump
+@@ -176,7 +172,6 @@
+    "storable"      => sub { Storable::thaw $_ },
+    "storable-file" => sub { open my $fh, "<", \$_; Storable::fd_retrieve $fh },
+    "bencode"       => sub { require Convert::Bencode; Convert::Bencode::bdecode ($_) },
+-   "clzf"          => sub { require Compress::LZF; Compress::LZF::sthaw ($_) },
+    "yaml"          => sub { require YAML; YAML::Load ($_) },
+    "eval"          => sub { my $v = eval "no strict; no warnings; no utf8;\n#line 1 \"input\"\n$_"; die "$@" if $@; $v },
+ );
+@@ -196,7 +191,6 @@
+    "storable-file" => sub { open my $fh, ">", \my $buf; Storable::nstore_fd $_, $fh; $buf },
+ 
+    "bencode"       => sub { require Convert::Bencode; Convert::Bencode::bencode ($_) },
+-   "clzf"          => sub { require Compress::LZF; Compress::LZF::sfreeze_cr ($_) },
+    "yaml"          => sub { require YAML; YAML::Dump ($_) },
+    "dumper"        => sub {
+       require Data::Dumper;
diff --git a/perl-Cpanel-JSON-XS.spec b/perl-Cpanel-JSON-XS.spec
new file mode 100644
index 0000000..7a63993
--- /dev/null
+++ b/perl-Cpanel-JSON-XS.spec
@@ -0,0 +1,105 @@
+# Note: Compress::LZF format support has been disabled until such
+# time as the Compress::LZF module becomes available in Fedora (#1074129)
+
+Name:		perl-Cpanel-JSON-XS
+Summary:	JSON::XS for Cpanel, fast and correct serializing
+Version:	2.3404
+Release:	2%{?dist}
+License:	GPL+ or Artistic
+URL:		http://search.cpan.org/dist/Cpanel-JSON-XS/
+Source0:	http://search.cpan.org/CPAN/authors/id/R/RU/RURBAN/Cpanel-JSON-XS-%{version}.tar.gz
+Patch0:		Cpanel-JSON-XS-2.3404-no-clzf.patch
+# Module Build
+BuildRequires:	perl
+BuildRequires:	perl(ExtUtils::MakeMaker)
+# Module Runtime
+BuildRequires:	perl(Carp)
+BuildRequires:	perl(Exporter)
+BuildRequires:	perl(overload)
+BuildRequires:	perl(XSLoader)
+# Script Runtime
+#BuildRequires:	perl(Compress::LZF)
+BuildRequires:	perl(Convert::Bencode)
+BuildRequires:	perl(Data::Dump)
+BuildRequires:	perl(YAML)
+# Test Suite
+BuildRequires:	perl(common::sense) >= 3.5
+BuildRequires:	perl(Config)
+BuildRequires:	perl(Data::Dumper)
+BuildRequires:	perl(Encode) >= 1.9081
+BuildRequires:	perl(Hash::Util)
+BuildRequires:	perl(strict)
+BuildRequires:	perl(Test)
+BuildRequires:	perl(Test::More)
+BuildRequires:	perl(Tie::Array)
+BuildRequires:	perl(Tie::Hash)
+BuildRequires:	perl(utf8)
+BuildRequires:	perl(warnings)
+# Maintainer Tests
+BuildRequires:	perl(File::Copy)
+BuildRequires:	perl(Perl::MinimumVersion) >= 1.20
+BuildRequires:	perl(Test::CPAN::Meta) >= 0.12
+BuildRequires:	perl(Test::Kwalitee)
+BuildRequires:	perl(Test::MinimumVersion) >= 0.008
+BuildRequires:	perl(Test::Pod) >= 1.00
+BuildRequires:	perl(Test::Pod::Coverage) >= 1.04
+# Runtime
+Requires:	perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
+Requires:	perl(Carp)
+#Requires:	perl(Compress::LZF)
+Requires:	perl(Convert::Bencode)
+Requires:	perl(Data::Dump)
+Requires:	perl(YAML)
+
+# Avoid unwanted provides and dependencies
+%{?perl_default_filter}
+
+%description
+This module converts Perl data structures to JSON and vice versa. Its
+primary goal is to be correct and its secondary goal is to be fast. To
+reach the latter goal it was written in C.
+
+%prep
+%setup -q -n Cpanel-JSON-XS-%{version}
+
+# Drop CLZF support for now
+%patch0 -p1
+
+# Fix shellbangs
+perl -pi -e 's|^#!/opt/bin/perl|#!/usr/bin/perl|' eg/*
+
+# Make sure we don't try to do a signature check
+rm SIGNATURE
+perl -ni -e 'print unless /SIGNATURE/;' MANIFEST
+
+%build
+perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
+make %{?_smp_mflags}
+
+%install
+make pure_install DESTDIR=%{buildroot}
+find %{buildroot} -type f -name .packlist -exec rm -f {} ';'
+find %{buildroot} -type f -name '*.bs' -a -size 0 -exec rm -f {} ';'
+%{_fixperms} %{buildroot}
+
+%check
+make test IS_MAINTAINER=1 RELEASE_TESTING=1
+
+%files
+%doc Changes COPYING README eg/
+%{_bindir}/cpanel_json_xs
+%{perl_vendorarch}/auto/Cpanel/
+%{perl_vendorarch}/Cpanel/
+%{_mandir}/man1/cpanel_json_xs.1*
+%{_mandir}/man3/Cpanel::JSON::XS.3pm*
+%{_mandir}/man3/Cpanel::JSON::XS::Boolean.3pm*
+
+%changelog
+* Thu Apr 10 2014 Paul Howarth <paul at city-fan.org> - 2.3404-2
+- Incorporate feedback from package review (#1085975)
+  - Simplify %%summary
+  - Temporarily drop Compress::LZF format support from cpanel_json_xs client
+  - Add optional dependencies for module, tests and cpanel_json_xs client
+
+* Wed Apr  9 2014 Paul Howarth <paul at city-fan.org> - 2.3404-1
+- Initial RPM version
diff --git a/sources b/sources
index e69de29..389ae68 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+6fa33e4f6d5b16bcec62e3340c198437  Cpanel-JSON-XS-2.3404.tar.gz


More information about the scm-commits mailing list