Accepting request 1239363 from home:regularhunter:branches:openSUSE:Factory

Update to version 1.15
Update patch file

This is blocking newer versions of package rpcs3

OBS-URL: https://build.opensuse.org/request/show/1239363
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/pugixml?expand=0&rev=27
This commit is contained in:
2025-01-24 08:05:29 +00:00
committed by Git OBS Bridge
commit a646583cb8
7 changed files with 404 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
.osc

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

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

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

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

13
pugixml-config.patch Normal file
View File

@@ -0,0 +1,13 @@
diff --git pugixml-1.15.orig/src/pugiconfig.hpp pugixml-1.15/src/pugiconfig.hpp
index 5f1bafd..a228252 100644
--- pugixml-1.15.orig/src/pugiconfig.hpp
+++ pugixml-1.15/src/pugiconfig.hpp
@@ -47,7 +47,7 @@
// #define PUGIXML_HEADER_ONLY
// Uncomment this to enable long long support (usually enabled automatically)
-// #define PUGIXML_HAS_LONG_LONG
+#define PUGIXML_HAS_LONG_LONG
// Uncomment this to enable support for std::string_view (usually enabled automatically)
// #define PUGIXML_HAS_STRING_VIEW

264
pugixml.changes Normal file
View File

@@ -0,0 +1,264 @@
-------------------------------------------------------------------
Wed Jan 22 01:22:47 UTC 2025 - Hunter Wardlaw <wardlawhunter@gmail.com>
- Update to version 1.15:
* Updated patch file
Improvements:
* Many xml_attribute:: and xml_node:: functions now transparently support std::string_view and std::string when C++17 support is detected.
CMake improvements:
* Improve pkg-config file generation for NixOS
* PUGIXML_BUILD_APPLE_FRAMEWORK CMake option can be used to build pugixml as .xcframework
* PUGIXML_INSTALL CMake option can be used to disable installation targets
Compatibility improvements:
* Fix clang/gcc warnings -Wzero-as-null-pointer-constant, -Wuseless-cast, -Wshorten-64-to-32
* Fix unreferenced function warnings in PUGIXML_NO_STL configuration
* Fix CMake 3.31 deprecation warnings
* Stop using deprecated throw() when noexcept is available
-------------------------------------------------------------------
Mon Oct 2 09:32:01 UTC 2023 - Antoine Belvire <antoine.belvire@opensuse.org>
- Update to version 1.14:
* Improvements:
+ xml_attribute::set_name and xml_node::set_name now have overloads that
accept pointer to non-null-terminated string and size.
+ Implement parse_merge_pcdata parsing mode in which PCDATA contents is
merged into a single node when original document had comments that were
skipped during parsing.
+ xml_document::load_file now returns a more consistent error status when
given a path to a folder.
* Bug fixes:
+ Fix assertion in XPath number->string conversion when using non-English
locales.
* Compatibility improvements:
+ Fix GCC 2.95/3.3 builds.
+ Fix CMake 3.27 deprecation warnings.
+ Fix clang/gcc warnings -Wweak-vtables, -Wreserved-macro-identifier.
-------------------------------------------------------------------
Wed Nov 2 19:58:12 UTC 2022 - Antoine Belvire <antoine.belvire@opensuse.org>
- Update to version 1.13:
* xml_attribute::set_value, xml_node::set_value and xml_text::set
now have overloads that accept pointer to non-null-terminated
string and size.
* Fix error handling in xml_document::save_file that could result
in the function succeeding while running out of disk space.
* Fix memory leak during error handling of some out-of-memory
conditions during xml_document::load.
-------------------------------------------------------------------
Thu Feb 17 21:28:34 UTC 2022 - Antoine Belvire <antoine.belvire@opensuse.org>
- Update to version 1.12.1:
* Update PUGIXML_VERSION macro to 1.12.
- Run test suite on build.
-------------------------------------------------------------------
Wed Feb 9 20:55:17 UTC 2022 - Antoine Belvire <antoine.belvire@opensuse.org>
- Update to version 1.12:
* Fix a bug in xml_document move construction when the source of
the move is empty.
* Fix const-correctness issues with iterator objects to support
C++20 ranges.
* Improved detection of overly complex queries that may result in
stack overflow during parsing.
-------------------------------------------------------------------
Mon Jan 11 22:08:11 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 1.11.4:
* Add xml_node::remove_attributes and xml_node::remove_children
* Add a way to customize floating point precision via xml_attribute::set and
xml_text::set overloads
* XPath parser now limits recursion depth which prevents stack overflow on
malicious queries
* Exported CMake target name changed to pugixml::pugixml; see subsequent
patch releases
* Regression bugfixes
-------------------------------------------------------------------
Tue Feb 4 19:46:01 UTC 2020 - Antoine Belvire <antoine.belvire@opensuse.org>
- Update to version 1.10:
* XPath union operation now is ~2x faster to compute and results
in a stable order that doesn't depend on pointer order.
* Add format_skip_control_chars formatting flag to skip
non-printable ASCII characters.
* Add format_attribute_single_quote formatting flag to use single
quotes for attribute values.
* Add Visual Studio .natvis files to improve debugging
experience.
- Remove merged patches:
* pugixml-1.9-use-CMAKE_INSTALL_LIBDIR.patch.
* pugixml-1.9-install-pc-file.patch.
-------------------------------------------------------------------
Mon Mar 25 11:26:08 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Ensure neutrality of descriptions.
-------------------------------------------------------------------
Tue Jul 24 10:27:08 UTC 2018 - antoine.belvire@opensuse.org
- Install pc file:
* Add pugixml-1.9-install-pc-file.patch (picked from upstream).
* Add pugixml-1.9-use-CMAKE_INSTALL_LIBDIR.patch (picked from
upstream).
-------------------------------------------------------------------
Tue Apr 10 19:06:38 UTC 2018 - bjoern@schramke-online.de
- Update to version 1.9
* Specification changes
+ xml_document::load(const char*) (deprecated in 1.5) now has
deprecated attribute; use xml_document::load_string instead
+ xml_node::select_single_node (deprecated in 1.5) now has
deprecated attribute; use xml_node::select_node instead
* New features
+ Add move semantics support for xml_document and improve
move semantics support for other objects
+ CMake build now exports include directories
+ CMake build with BUILD_SHARED_LIBS=ON now uses dllexport
attribute for MSVC
* XPath improvements
+ Rework parser/evaluator to not rely on exceptional control
flow; longjmp is no longer used when exceptions are disabled
+ Improve error messages for certain invalid expressions such
as .[1] or (1
+ Minor performance improvements
* Compatibility improvements
+ Fix Texas Instruments compiler warnings
+ Fix compilation issues with limits.h for some versions of gcc
+ Fix compilation issues with Clang/C2
+ Fix implicit fallthrough warnings in gcc 7
+ Fix unknown attribute directive warnings in gcc 8
+ Fix cray++ compiler errors
+ Fix unsigned integer overflow errors with -fsanitize=integer
+ Fix undefined behavior sanitizer issues in compact mode
-------------------------------------------------------------------
Thu Feb 16 15:32:17 UTC 2017 - joerg.lorenzen@ki.tng.de
- Update to version 1.8
* Specification changes
+ When printing empty elements, a space is no longer added
before / in format_raw mode.
* New features
+ Added parse_embed_pcdata parsing mode in which PCDATA value
is stored in the element node if possible (significantly
reducing memory consumption for some documents).
+ Added auto-detection support for Latin-1 (ISO-8859-1)
encoding during parsing.
+ Added format_no_empty_element_tags formatting flag that
outputs start/end tags instead of empty element tags for
empty elements.
* Performance improvements
+ Minor memory allocation improvements (yielding up to 1%
memory savings in some cases).
* Compatibility improvements
+ Fixed compilation issues for Borland C++ 5.4.
+ Fixed compilation issues for some distributions of MinGW 3.8.
+ Fixed various Clang/GCC warnings.
+ Enabled move semantics support for XPath objects for MSVC
2010 and above.
-------------------------------------------------------------------
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
- Manually enable long long support
-------------------------------------------------------------------
Fri Sep 4 13:09:48 UTC 2015 - tchvatal@suse.com
- Version bump to 1.6:
* See manual.html for in-depth changelog
- Use %cmake macros properly
-------------------------------------------------------------------
Thu Mar 5 06:44:51 UTC 2015 - davejplater@gmail.com
- Update to version 1.5 and prepare for submission to factory
See bnc#905649 enable blender cycles. Pugixml needed by OpenImageIO
needed by blender for cycles.
- Upstream changes:
see http://cdn.rawgit.com/zeux/pugixml/v1.5/docs/manual/changes.html
-------------------------------------------------------------------
Tue Jul 15 19:28:01 UTC 2014 - asterios.dramis@gmail.com
- Update to version 1.4:
Specification changes:
* Documents without element nodes are now rejected with
status_no_document_element error, unless parse_fragment option is used
New features:
* Added XML fragment parsing (parse_fragment flag)
* Added PCDATA whitespace trimming (parse_trim_pcdata flag)
* Added long long support for xml_attribute and xml_text (as_llong, as_ullong
and set_value/set overloads)
* Added hexadecimal integer parsing support for
as_int/as_uint/as_llong/as_ullong
* Added xml_node::append_buffer to improve performance of assembling
documents from fragments
* xml_named_node_iterator is now bidirectional
* Reduced XPath stack consumption during compilation and evaluation (useful
for embedded systems)
Compatibility improvements:
* Improved support for platforms without wchar_t support
* Fixed several false positives in clang static analysis
* Fixed several compilation warnings for various GCC versions
Bug fixes:
* Fixed undefined pointer arithmetic in XPath implementation
* Fixed non-seekable iostream support for certain stream types, i.e. boost
file_source with pipe input
* Fixed xpath_query::return_type() for some expressions
* Fixed dllexport issues with xml_named_node_iterator
* Fixed find_child_by_attribute assertion for attributes with null name/value
- Removed fix_install_libdir.patch (not needed anynore).
-------------------------------------------------------------------
Tue Jun 24 17:27:50 UTC 2014 - perry.werneck@gmail.com
- Small change in "make install" to fix SLES build.
-------------------------------------------------------------------
Sun Feb 17 22:02:33 UTC 2013 - asterios.dramis@gmail.com
- Initial release (version 1.2).
- Added a patch (fix_install_libdir.patch) to make the package install the
library in the correct libdir (lib or lib64).

97
pugixml.spec Normal file
View File

@@ -0,0 +1,97 @@
#
# spec file for package pugixml
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define _libname libpugixml1
Name: pugixml
Version: 1.15
Release: 0
Summary: Light-weight C++ XML Processing Library
License: MIT
Group: System/Libraries
URL: https://pugixml.org/
Source0: https://github.com/zeux/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz
Patch1: pugixml-config.patch
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: pkgconfig
%description
pugixml is a light-weight C++ XML processing library. It features:
- DOM-like interface with rich traversal/modification capabilities
- Extremely fast non-validating XML parser which constructs the DOM tree from
an XML file/buffer
- XPath 1.0 implementation for complex data-driven tree queries
- Full Unicode support with Unicode interface variants and automatic encoding
conversions
%package devel
Summary: Development Files for pugixml
Group: Development/Libraries/C and C++
Requires: %{_libname} = %{version}
%description devel
This package provides development libraries and headers needed to build
software using pugixml.
%package -n %{_libname}
Summary: Light-weight C++ XML Processing Library
Group: System/Libraries
%description -n %{_libname}
pugixml is a light-weight C++ XML processing library. It features:
- DOM-like interface with rich traversal/modification capabilities
- Extremely fast non-validating XML parser which constructs the DOM tree from
an XML file/buffer
- XPath 1.0 implementation for complex data-driven tree queries
- Full Unicode support with Unicode interface variants and automatic encoding
conversions
%prep
%autosetup -p1
%build
%cmake -DPUGIXML_BUILD_TESTS=ON
%make_build
%install
%cmake_install
%post -n %{_libname} -p /sbin/ldconfig
%postun -n %{_libname} -p /sbin/ldconfig
%check
%if 0%{?suse_version} <= 1500 && 0%{?sle_version} <= 150300
# Tweak path to find libpugixml.so.1 for Leap 15.3 and older
export LD_LIBRARY_PATH="$PWD/build"
%endif
%ctest
%files devel
%doc readme.txt docs/*
%{_includedir}/*.hpp
%{_libdir}/cmake/*
%{_libdir}/pkgconfig/%{name}.pc
%{_libdir}/*.so
%files -n %{_libname}
%{_libdir}/libpugixml.so.*
%changelog