SHA256
1
0
forked from pool/pugixml

Accepting request 340208 from devel:libraries:c_c++

- Update to version 1.7
  * New integer parsing/formatting implementation
    + Functions that convert from and to integers (e.g. as_int/set_value)
      do not rely on CRT any more.
    + New implementation is 3-5x faster and is always correct wrt
      overflow or underflow. This is a behavior change - where previously
      as_uint() would return UINT_MAX on a value "-1", it now returns 0.
  * New features
    + XPath objects (xpath_query, xpath_node_set, xpath_variable_set)
      are now movable if your compiler supports C++11. Additionally,
      xpath_variable_set is copyable.
    + Added format_indent_attributes that makes the resulting XML friendlier
      to line diff/merge tools.
    + Added a variant of xml_node::attribute function with a hint that
      can improve lookup performance.
    + Custom allocation functions are now allowed (but not required)
      to throw instead of returning a null pointer.
  * Bug fixes
    + Fix Clang 3.7 crashes in out-of-memory cases (C++ DR 1748)
    + Fix xpath_node_set assignment to provide strong exception guarantee
    + Fix saving for custom xml_writer implementations that can throw from write()
- Add pugixml-config.patch to enable long long support, works better than
  enabling via build flags.

OBS-URL: https://build.opensuse.org/request/show/340208
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pugixml?expand=0&rev=4
This commit is contained in:
Stephan Kulow 2015-10-25 18:12:59 +00:00 committed by Git OBS Bridge
commit 00cb73bfbe
5 changed files with 47 additions and 5 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:473705c496d45ee6a74f73622b175dfb5dde0de372c4dc61a5acb964516cd9de
size 346616

3
pugixml-1.7.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fbe10d46f61d769f7d92a296102e4e2bd3ee16130f11c5b10a1aae590ea1f5ca
size 354472

13
pugixml-config.patch Normal file
View File

@ -0,0 +1,13 @@
Index: pugixml-1.7/src/pugiconfig.hpp
===================================================================
--- pugixml-1.7.orig/src/pugiconfig.hpp
+++ pugixml-1.7/src/pugiconfig.hpp
@@ -44,7 +44,7 @@
// #define PUGIXML_HEADER_ONLY
// Uncomment this to enable long long support
-// #define PUGIXML_HAS_LONG_LONG
+#define PUGIXML_HAS_LONG_LONG
#endif

View File

@ -1,3 +1,30 @@
-------------------------------------------------------------------
Wed Oct 21 09:26:33 UTC 2015 - idonmez@suse.com
- Update to version 1.7
* New integer parsing/formatting implementation
+ Functions that convert from and to integers (e.g. as_int/set_value)
do not rely on CRT any more.
+ New implementation is 3-5x faster and is always correct wrt
overflow or underflow. This is a behavior change - where previously
as_uint() would return UINT_MAX on a value "-1", it now returns 0.
* New features
+ XPath objects (xpath_query, xpath_node_set, xpath_variable_set)
are now movable if your compiler supports C++11. Additionally,
xpath_variable_set is copyable.
+ Added format_indent_attributes that makes the resulting XML friendlier
to line diff/merge tools.
+ Added a variant of xml_node::attribute function with a hint that
can improve lookup performance.
+ Custom allocation functions are now allowed (but not required)
to throw instead of returning a null pointer.
* Bug fixes
+ Fix Clang 3.7 crashes in out-of-memory cases (C++ DR 1748)
+ Fix xpath_node_set assignment to provide strong exception guarantee
+ Fix saving for custom xml_writer implementations that can throw from write()
- Add pugixml-config.patch to enable long long support, works better than
enabling via build flags.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Oct 9 08:41:24 UTC 2015 - idonmez@suse.com Fri Oct 9 08:41:24 UTC 2015 - idonmez@suse.com

View File

@ -18,13 +18,14 @@
%define _libname libpugixml1 %define _libname libpugixml1
Name: pugixml Name: pugixml
Version: 1.6 Version: 1.7
Release: 0 Release: 0
Summary: Light-weight C++ XML Processing Library Summary: Light-weight C++ XML Processing Library
License: MIT License: MIT
Group: System/Libraries Group: System/Libraries
Url: http://pugixml.org/ Url: http://pugixml.org/
Source0: https://github.com/zeux/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz Source0: https://github.com/zeux/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz
Patch1: pugixml-config.patch
BuildRequires: cmake BuildRequires: cmake
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: gcc-c++ BuildRequires: gcc-c++
@ -69,10 +70,11 @@ The library is extremely portable and easy to integrate and use.
%prep %prep
%setup -q %setup -q
%patch1 -p1
%build %build
cd scripts cd scripts
%cmake -DBUILD_DEFINES="-DPUGIXML_HAS_LONG_LONG" %cmake
make %{?_smp_mflags} make %{?_smp_mflags}
%install %install