parent
5c24afe5f3
commit
f2ba57508f
@ -0,0 +1 @@
|
|||||||
|
/CBOR-XS-1.3.tar.gz
|
@ -0,0 +1,77 @@
|
|||||||
|
From fb089d08ff9bc5cf45570b950aa33e50ee62371b Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||||
|
Date: Tue, 29 Sep 2015 10:31:58 +0200
|
||||||
|
Subject: [PATCH] Cast char* and U8* where needed
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Building with GCC 5.1.1 and perl-5.22.0 produces various warnings about
|
||||||
|
mismatching signess. This patch corrects it.
|
||||||
|
|
||||||
|
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||||
|
---
|
||||||
|
XS.xs | 12 ++++++------
|
||||||
|
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/XS.xs b/XS.xs
|
||||||
|
index 0af7c95..134ed9e 100644
|
||||||
|
--- a/XS.xs
|
||||||
|
+++ b/XS.xs
|
||||||
|
@@ -765,7 +765,7 @@ decode_he (dec_t *dec, HV *hv)
|
||||||
|
dec->cur += len;
|
||||||
|
|
||||||
|
if (ecb_expect_false (dec->cbor.flags & F_VALIDATE_UTF8))
|
||||||
|
- if (!is_utf8_string (key, len))
|
||||||
|
+ if (!is_utf8_string ((U8*)key, len))
|
||||||
|
ERR ("corrupted CBOR data (invalid UTF-8 in map key)");
|
||||||
|
|
||||||
|
hv_store (hv, key, -len, decode_sv (dec), 0);
|
||||||
|
@@ -854,7 +854,7 @@ decode_str (dec_t *dec, int utf8)
|
||||||
|
STRLEN len = decode_uint (dec);
|
||||||
|
|
||||||
|
WANT (len);
|
||||||
|
- sv_catpvn (sv, dec->cur, len);
|
||||||
|
+ sv_catpvn (sv, (char *)dec->cur, len);
|
||||||
|
dec->cur += len;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -863,7 +863,7 @@ decode_str (dec_t *dec, int utf8)
|
||||||
|
STRLEN len = decode_uint (dec);
|
||||||
|
|
||||||
|
WANT (len);
|
||||||
|
- sv = newSVpvn (dec->cur, len);
|
||||||
|
+ sv = newSVpvn ((char*)dec->cur, len);
|
||||||
|
dec->cur += len;
|
||||||
|
|
||||||
|
if (ecb_expect_false (dec->stringref)
|
||||||
|
@@ -874,7 +874,7 @@ decode_str (dec_t *dec, int utf8)
|
||||||
|
if (utf8)
|
||||||
|
{
|
||||||
|
if (ecb_expect_false (dec->cbor.flags & F_VALIDATE_UTF8))
|
||||||
|
- if (!is_utf8_string (SvPVX (sv), SvCUR (sv)))
|
||||||
|
+ if (!is_utf8_string ((U8*)SvPVX (sv), SvCUR (sv)))
|
||||||
|
ERR ("corrupted CBOR data (invalid UTF-8 in text string)");
|
||||||
|
|
||||||
|
SvUTF8_on (sv);
|
||||||
|
@@ -1181,7 +1181,7 @@ decode_cbor (SV *string, CBOR *cbor, char **offset_return)
|
||||||
|
sv = decode_sv (&dec);
|
||||||
|
|
||||||
|
if (offset_return)
|
||||||
|
- *offset_return = dec.cur;
|
||||||
|
+ *offset_return = (char *)dec.cur;
|
||||||
|
|
||||||
|
if (!(offset_return || !sv))
|
||||||
|
if (dec.cur != dec.end && !dec.err)
|
||||||
|
@@ -1231,7 +1231,7 @@ incr_parse (CBOR *self, SV *cborstr)
|
||||||
|
1, 2, 4, 8,-1,-1,-1,-2
|
||||||
|
};
|
||||||
|
|
||||||
|
- const U8 *p = SvPVX (cborstr) + self->incr_pos;
|
||||||
|
+ const U8 *p = (U8*)SvPVX (cborstr) + self->incr_pos;
|
||||||
|
U8 m = *p & MINOR_MASK;
|
||||||
|
IV count = SvIVX (AvARRAY (self->incr_count)[AvFILLp (self->incr_count)]);
|
||||||
|
I8 ilen = incr_len[m];
|
||||||
|
--
|
||||||
|
2.4.3
|
||||||
|
|
@ -0,0 +1,29 @@
|
|||||||
|
From 5f37da992f0c9ded881d22e607d77d89c57741a3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||||
|
Date: Tue, 29 Sep 2015 10:13:05 +0200
|
||||||
|
Subject: [PATCH] Include ecb.h from system
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||||
|
---
|
||||||
|
XS.xs | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/XS.xs b/XS.xs
|
||||||
|
index 15bce1f..0af7c95 100644
|
||||||
|
--- a/XS.xs
|
||||||
|
+++ b/XS.xs
|
||||||
|
@@ -10,7 +10,7 @@
|
||||||
|
#include <float.h>
|
||||||
|
|
||||||
|
#define ECB_NO_THREADS 1
|
||||||
|
-#include "ecb.h"
|
||||||
|
+#include <ecb.h>
|
||||||
|
|
||||||
|
// compatibility with perl <5.18
|
||||||
|
#ifndef HvNAMELEN_get
|
||||||
|
--
|
||||||
|
2.4.3
|
||||||
|
|
@ -0,0 +1,79 @@
|
|||||||
|
Name: perl-CBOR-XS
|
||||||
|
Version: 1.3
|
||||||
|
Release: 1%{?dist}
|
||||||
|
Summary: Concise Binary Object Representation (CBOR)
|
||||||
|
# COPYING: GPLv3+
|
||||||
|
## Replaced by system header-only package
|
||||||
|
# ecb.h: BSD or GPLv2+
|
||||||
|
License: GPLv3+ and (BSD or GPLv2+)
|
||||||
|
Group: Development/Libraries
|
||||||
|
URL: http://search.cpan.org/dist/CBOR-XS/
|
||||||
|
Source0: http://www.cpan.org/authors/id/M/ML/MLEHMANN/CBOR-XS-%{version}.tar.gz
|
||||||
|
# Use system libecb
|
||||||
|
Patch0: CBOR-XS-1.3-Include-ecb.h-from-system.patch
|
||||||
|
# Silent compiler warnings
|
||||||
|
Patch1: CBOR-XS-1.3-Cast-char-and-U8-where-needed.patch
|
||||||
|
BuildRequires: coreutils
|
||||||
|
BuildRequires: findutils
|
||||||
|
# gcc for standard header files
|
||||||
|
BuildRequires: gcc
|
||||||
|
BuildRequires: libecb-static
|
||||||
|
BuildRequires: make
|
||||||
|
BuildRequires: perl
|
||||||
|
BuildRequires: perl(ExtUtils::MakeMaker)
|
||||||
|
BuildRequires: sed
|
||||||
|
# Run-time:
|
||||||
|
BuildRequires: perl(common::sense)
|
||||||
|
BuildRequires: perl(Exporter)
|
||||||
|
BuildRequires: perl(Math::BigFloat)
|
||||||
|
BuildRequires: perl(Math::BigInt)
|
||||||
|
BuildRequires: perl(Time::Piece)
|
||||||
|
BuildRequires: perl(Types::Serialiser)
|
||||||
|
BuildRequires: perl(URI)
|
||||||
|
BuildRequires: perl(XSLoader)
|
||||||
|
# Tests:
|
||||||
|
BuildRequires: perl(Data::Dumper)
|
||||||
|
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
||||||
|
Requires: perl(Math::BigFloat)
|
||||||
|
Requires: perl(Math::BigInt)
|
||||||
|
Requires: perl(Time::Piece)
|
||||||
|
Requires: perl(URI)
|
||||||
|
|
||||||
|
%description
|
||||||
|
This module converts Perl data structures to the Concise Binary Object
|
||||||
|
Representation (CBOR) and vice versa. CBOR is a fast binary serialisation
|
||||||
|
format that aims to use an (almost) superset of the JSON data model, i.e.
|
||||||
|
when you can represent something useful in JSON, you should be able to
|
||||||
|
represent it in CBOR.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q -n CBOR-XS-%{version}
|
||||||
|
%patch0 -p1
|
||||||
|
%patch1 -p1
|
||||||
|
# Remove bundled libecb
|
||||||
|
rm ecb.h
|
||||||
|
sed -i -e '/^ecb\.h/d' MANIFEST
|
||||||
|
|
||||||
|
%build
|
||||||
|
perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$RPM_OPT_FLAGS"
|
||||||
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
|
%install
|
||||||
|
make pure_install DESTDIR=$RPM_BUILD_ROOT
|
||||||
|
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \;
|
||||||
|
find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -exec rm -f {} \;
|
||||||
|
%{_fixperms} $RPM_BUILD_ROOT/*
|
||||||
|
|
||||||
|
%check
|
||||||
|
make test
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license COPYING
|
||||||
|
%doc Changes README
|
||||||
|
%{perl_vendorarch}/auto/*
|
||||||
|
%{perl_vendorarch}/CBOR*
|
||||||
|
%{_mandir}/man3/*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Tue Sep 29 2015 Petr Pisar <ppisar@redhat.com> 1.3-1
|
||||||
|
- Specfile autogenerated by cpanspec 1.78.
|
Loading…
Reference in new issue