2006-12-19 00:15:51 +01:00
|
|
|
#
|
2011-03-22 17:50:17 +01:00
|
|
|
# spec file for package expat
|
2006-12-19 00:15:51 +01:00
|
|
|
#
|
2018-09-11 14:12:22 +02:00
|
|
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
2006-12-19 00:15:51 +01:00
|
|
|
#
|
2008-11-02 15:39:25 +01:00
|
|
|
# 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.
|
|
|
|
|
2006-12-19 00:15:51 +01:00
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
|
|
#
|
|
|
|
|
2012-02-12 17:28:13 +01:00
|
|
|
|
2017-11-16 10:46:03 +01:00
|
|
|
%global do_profiling 0
|
2018-09-11 14:12:22 +02:00
|
|
|
%global unversion 2_2_6
|
2006-12-19 00:15:51 +01:00
|
|
|
Name: expat
|
2018-09-11 14:12:22 +02:00
|
|
|
Version: 2.2.6
|
2011-12-02 13:53:21 +01:00
|
|
|
Release: 0
|
2006-12-19 00:15:51 +01:00
|
|
|
Summary: XML Parser Toolkit
|
2012-02-12 17:28:13 +01:00
|
|
|
License: MIT
|
|
|
|
Group: Development/Libraries/C and C++
|
Accepting request 540028 from home:avindra
- Version update to 2.2.5 Tue October 31 2017
* Bug fixes:
- If the parser runs out of memory, make sure its internal
state reflects the memory it actually has, not the memory
it wanted to have.
- The default handler wasn't being called when it should for
a SYSTEM or PUBLIC doctype if an entity declaration handler
was registered.
- Fix a case of mistakenly reported parsing success where
XML_StopParser was called from an element handler
- Function XML_ErrorString was returning NULL rather than
a message for code XML_ERROR_INVALID_ARGUMENT
introduced with release 2.2.1
* Other changes:
- Add argument -N adding notation declarations
- various compiler-specific fixes
- Improve docbook2x-man detection
- drop expat-docbook.patch
* fixed in 0f5186c7b8e503c669e332d944712de010b265f3
- switch to github for release tarballs and website
- Version update to 2.2.4 Sat August 19 2017
* Bug fixes:
#115 Fix copying of partial characters for UTF-8 input
* Other changes:
#109 Fix "make check" for non-x86 architectures that default
to unsigned type char (-128..127 rather than 0..255)
#109 coverage.sh: Cover -funsigned-char
Autotools: Introduce --without-xmlwf argument
#65 Autotools: Replace handwritten Makefile with GNU Automake
#43 CMake: Auto-detect high quality entropy extractors, add new
option USE_libbsd=ON to use arc4random_buf of libbsd
#74 CMake: Add -fno-strict-aliasing only where supported
#114 CMake: Always honor manually set BUILD_* options
#114 CMake: Compile man page if docbook2x-man is available, only
#117 Include file tests/xmltest.log.expected in source tarball
(required for "make run-xmltest")
#111 Fix some typos in documentation
Version info bumped from 7:5:6 to 7:6:6
- Release 2.2.3 Wed August 2 2017
* Bug fixes:
#85 Fix a dangling pointer issue related to realloc
* Other changes:
#91 Linux: Allow getrandom to fail if nonblocking pool has not
yet been initialized and read /dev/urandom then, instead.
This is in line with what recent Python does.
#86 Check that a UTF-16 encoding in an XML declaration has the
right endianness
#4 #5 #7 Recover correctly when some reallocations fail
Repair "./configure && make" for systems without any
provider of high quality entropy
and try reading /dev/urandom on those
Ensure that user-defined character encodings have converter
functions when they are needed
Fix mis-leading description of argument -c in xmlwf.1
Rely on macro HAVE_ARC4RANDOM_BUF (rather than __CloudABI__)
for CloudABI
#100 Fix use of SIPHASH_MAIN in siphash.h
#23 Test suite: Fix memory leaks
Version info bumped from 7:4:6 to 7:5:6
- Release 2.2.2 Wed July 12 2017
* Security fixes:
#43 Protect against compilation without any source of high
quality entropy enabled, e.g. with CMake build system;
* [MOX-006] Fix non-NULL parser parameter validation in XML_Parse;
resulted in NULL dereference, previously;
* Bug fixes:
#69 Fix improper use of unsigned long long integer literals
* Other changes:
#73 Start requiring a C99 compiler
#49 Fix "==" Bashism in configure script
#58 Address compile warnings
#68 Fix "./buildconf.sh && ./configure" for some versions
of Dash for /bin/sh
#72 CMake: Ease use of Expat in context of a parent project
with multiple CMakeLists.txt files
#72 CMake: Resolve mistaken executable permissions
#76 Address compile warning with -DNDEBUG (not recommended!)
#77 Address compile warning about macro redefinition
* Added patch expat-docbook.patch to compile the man pages with
docbook-to-man
* Cleaned spec file with spec-cleaner
- Allow building when do_profiling is undefined
- Build with profiling when possible
- Version update to 2.2.1 Sat June 17 2017
- Security fixes:
CVE-2017-9233 / bsc#1047236 -- External entity infinite loop DoS
Details: https://libexpat.github.io/doc/cve-2017-9233/
Commit c4bf96bb51dd2a1b0e185374362ee136fe2c9d7f
- [MOX-002] CVE-2016-9063 / bsc#1047240 -- Detect integer overflow;
(Fixed version of existing downstream patches!)
- (SF.net) #539 Fix regression from fix to CVE-2016-0718 cutting off
longer tag names;
#25 More integer overflow detection (function poolGrow);
- [MOX-002] Detect overflow from len=INT_MAX call to XML_Parse;
- [MOX-005] #30 Use high quality entropy for hash initialization:
* arc4random_buf on BSD, systems with libbsd
(when configured with --with-libbsd), CloudABI
* RtlGenRandom on Windows XP / Server 2003 and later
* getrandom on Linux 3.17+
In a way, that's still part of CVE-2016-5300.
https://github.com/libexpat/libexpat/pull/30/commits
- [MOX-005] For the low quality entropy extraction fallback code,
the parser instance address can no longer leak,
- [MOX-003] Prevent use of uninitialised variable; commit
- [MOX-004] a4dc944f37b664a3ca7199c624a98ee37babdb4b
Add missing parameter validation to public API functions
and dedicated error code XML_ERROR_INVALID_ARGUMENT:
- [MOX-006] * NULL checks; commits
* Negative length (XML_Parse); commit
- [MOX-002] 70db8d2538a10f4c022655d6895e4c3e78692e7f
- [MOX-001] #35 Change hash algorithm to William Ahern's version of SipHash
to go further with fixing CVE-2012-0876.
https://github.com/libexpat/libexpat/pull/39/commits
- Bug fixes:
#32 Fix sharing of hash salt across parsers;
relevant where XML_ExternalEntityParserCreate is called
prior to XML_Parse, in particular (e.g. FBReader)
#28 xmlwf: Auto-disable use of memory-mapping (and parsing
as a single chunk) for files larger than ~1 GB (2^30 bytes)
rather than failing with error "out of memory"
#3 Fix double free after malloc failure in DTD code; commit
7ae9c3d3af433cd4defe95234eae7dc8ed15637f
#17 Fix memory leak on parser error for unbound XML attribute
prefix with new namespaces defined in the same tag;
found by Google's OSS-Fuzz; commits
xmlwf on Windows: Add missing calls to CloseHandle
- New features:
#30 Introduced environment switch EXPAT_ENTROPY_DEBUG=1
for runtime debugging of entropy extraction
Bump version info from 7:2:6 to 7:3:6
- Remove pointless --with-pic (for static only)
- Version update to 2.2.0:
* Fixes bnc#983215 CVE-2012-6702
* Fixes bnc#983216 CVE-2016-5300
* Various cmake and autotools script updates
* Fix detection of utf8 character boundaries
- Remove all patches merged upstream:
* expat-2.1.1-avoid_relying_on_undef_behaviour.patch
* expat-2.1.1-parser_crashes_on_malformed_input.patch
* expat-alloc-size.patch
* expat-visibility.patch
- add expat-2.1.1-avoid_relying_on_undef_behaviour.patch to avoid
relying on undefined behavior in the original CVE-2015-1283 fix
[bnc#980391], [bnc#983985], [CVE-2016-4472]
- add expat-2.1.1-parser_crashes_on_malformed_input.patch to fix
Expat XML parser that mishandles certain kinds of malformed input
documents [bnc#979441], [CVE-2016-0718]
- use spec-cleaner to clean specfile
- After simplification of expat-visibility.patch, it became
uneffective as no symbols are getting hidden. add
-fvisibility=hidden to CFLAGS again.
- expat-alloc-size.patch: fix braino, realloc()-like functions
should not take __attribute__(malloc)
- Update to version 2.1.1
* Fixes CVE-2015-1283 — Multiple integer overflows in the
XML_GetBuffer function
* Fix potential null pointer dereference
* Symbol XML_SetHashSalt was not exported
* Output of xmlwf -h was incomplete
* Document behavior of calling XML_SetHashSalt with salt 0
* Minor improvements to man page xmlwf(1)
- Simplify expat-visibility.patch, refresh expat-alloc-size.patch
- Drop config-guess-sub-update.patch, fixed upstream.
- Cleanup spec file with spec-cleaner
- Remove old ppc obsoletes/provides
- Added url as source.
Please see http://en.opensuse.org/SourceUrls
- Sanitize description of expat (replace it with a more current
one from the homepage)
- Update config.guess/sub for aarch64
- fix of fix of [bnc#798644]
- according to upstream changelog:
- Improved ability to build without the configure-generated
expat_config.h header. This is useful for applications
which embed Expat rather than linking in the library.
because I am not exactly sure about implication of this, rather use
-DXML_HAVE_VISIBILITY in CFLAG_VISIBILITY in expat-visibility.patch
- Executing autoreconf requires autoconf BuildRequire
- really hide private Xml* symbols [bnc#798644]
* modified visibility.patch
- update to 2.1.0
- Bug Fixes:
#1742315: Harmful XML_ParserCreateNS suggestion.
#2895533: CVE-2012-1147 - Resource leak in readfilemap.c.
#1785430: Expat build fails on linux-amd64 with gcc version>=4.1 -O3.
#1983953, 2517952, 2517962, 2649838:
Build modifications using autoreconf instead of buildconf.sh.
#2815947, #2884086: OBJEXT and EXEEXT support while building.
#1990430: CVE-2009-3720 - Parser crash with special UTF-8 sequences.
#2517938: xmlwf should return non-zero exit status if not well-formed.
#2517946: Wrong statement about XMLDecl in xmlwf.1 and xmlwf.sgml.
#2855609: Dangling positionPtr after error.
#2894085: CVE-2009-3560 - Buffer over-read and crash in big2_toUtf8().
#2958794: CVE-2012-1148 - Memory leak in poolGrow.
#2990652: CMake support.
#3010819: UNEXPECTED_STATE with a trailing "%" in entity value.
#3206497: Unitialized memory returned from XML_Parse.
#3287849: make check fails on mingw-w64.
#3496608: CVE-2012-0876 - Hash DOS attack.
- Patches:
#1749198: pkg-config support.
#3010222: Fix for bug #3010819.
#3312568: CMake support.
#3446384: Report byte offsets for attr names and values.
- New Features / API changes:
* Added new API member XML_SetHashSalt() that allows setting an
intial value (salt) for hash calculations. This is part of the
fix for bug #3496608 to randomize hash parameters.
* When compiled with XML_ATTR_INFO defined, adds new API member
XML_GetAttributeInfo() that allows retrieving the byte
offsets for attribute names and values (patch #3446384).
* Added CMake build system. See bug #2990652 and patch #3312568.
* Added run-benchmark target to Makefile.in - relies on testdata
module present in the same relative location as in the repository.
- update to 2.1.0 beta
* refreshed expat-visibility.patch
* removed obsolete expat-CVE-2009-3560.patch
* removed obsolete expat-CVE-2009-2625.patch
- hash table DOS attack fix
- accumulated bug fixes and some changes to the build system
- new conditional feature to make byte offsets for attributes
and attribute names available
- Put libraries back to %{_libdir}, /usr merge project
- add automake as buildrequire to avoid implicit dependency
- Hide non public symbols reusing existing win32 API export/imports
- annotate malloc/realloc-like functions with attribute alloc_size
to catch possible misuses in calling code.
- Remove redundant/obsolete tags/sections from specfile
(cf. packaging guidelines)
- Use %_smp_mflags for parallel build
- Add libexpat-devel to baselibs
- fix license (MIT) in spec file
- fix CVE-2009-3560.patch [bnc#566434]
- add baselibs.conf as a source
- fix DoS (CVE-2009-3560.patch) [bnc#558892]
- fix DoS (CVE-2009-2625.patch) [bnc#550664]
- test suite requires gcc-c++ to compile
- remove static libraries, shouldnt be needed anymore.
- run make check
- use Obsoletes: -XXbit only for ppc64 to help solver during distupgrade
(bnc#437293)
- obsolete old -XXbit packages (bnc#437293)
- added baselibs.conf file to build xxbit packages
for multilib support
- fix devel symlink
- move libraries from /usr/lib to /lib [#285472]
- replace deprecated %run_ldconfig with /sbin/ldconfig
- update to 2.0.1:
( from Changes )
* Fixed bugs #1515266, 1515600: The character data handler's calling
of XML_StopParser() was not handled properly; if the parser was
stopped and the handler set to NULL, the parser would segfault.
* Fixed bug #1690883: Expat failed on EBCDIC systems as it assumed
some character constants to be ASCII encoded.
* Minor cleanups of the test harness.
* Fixed xmlwf bug #1513566: "out of memory" error on file size zero.
* Fixed outline.c bug #1543233: missing a final XML_ParserFree() call.
* Fixes and improvements for Windows platform:
bugs #1409451, #1476160, 1548182, 1602769, 1717322.
* Build fixes for various platforms:
HP-UX, Tru64, Solaris 9: patch #1437840, bug #1196180.
All Unix: #1554618 (refreshed config.sub/config.guess).
#1490371, #1613457: support both, DESTDIR and INSTALL_ROOT,
without relying on GNU-Make specific features.
#1647805: Patched configure.in to work better with Intel compiler.
* Fixes to Makefile.in to have make check work correctly:
bugs #1408143, #1535603, #1536684.
* Added Open Watcom support: patch #1523242.
- split libexpat1 and libexpat-devel subpackages [#260214]
- strip .la file
- converted neededforbuild to BuildRequires
- fixed file list for debuginfo package (do not pack all of libdir)
- update to 2.0.0
- update to 2.0 pre release
- fixed filelist
- update to 1.95.8
- Build as user
- update to version 1.95.7
- in expat.h, declare enum XML_Status before using it;
put into patch "...-header.diff" [bug #23742]
- updated to version 1.95.6
- update to version 1.95.5
- update to version 1.95.4
- added parameter --target to configure
- use %{_libdir} and %{_lib}
- fix URL in spec file
- update to version 1.95.2
- spec file cleanup
- added DESTDIR
- fixed links for soname of libexpat.so*
- fixed soname of libexpat.so.1.2
- back on stable version 1.2 added build shared libexpat.so
- update on 1.95.1 on sourgeforge needed for midgard
- new description
- Don't "install" symlinks; use "cp"; reported by bs; proposed fix
by ro.
- Cleanup the spec file: better Group tag; more accurate files list.
- first SuSE package: version 1.1.
- apply Debian patch to build shared libs.
- build libexpat.a.
OBS-URL: https://build.opensuse.org/request/show/540028
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/expat?expand=0&rev=64
2017-11-09 09:26:03 +01:00
|
|
|
Url: http://libexpat.github.io
|
|
|
|
Source0: https://github.com/libexpat/libexpat/releases/download/R_%{unversion}/expat-%{version}.tar.bz2
|
2018-09-11 14:12:22 +02:00
|
|
|
Source3: https://github.com/libexpat/libexpat/releases/download/R_%{unversion}/expat-%{version}.tar.bz2.asc
|
2006-12-19 00:15:51 +01:00
|
|
|
Source1: %{name}faq.html
|
2010-01-08 17:30:06 +01:00
|
|
|
Source2: baselibs.conf
|
2018-09-11 14:12:22 +02:00
|
|
|
BuildRequires: docbook2x
|
2009-04-23 19:05:43 +02:00
|
|
|
BuildRequires: gcc-c++
|
2012-02-12 17:28:13 +01:00
|
|
|
BuildRequires: libtool
|
2016-07-14 17:19:01 +02:00
|
|
|
BuildRequires: pkgconfig
|
2006-12-19 00:15:51 +01:00
|
|
|
|
|
|
|
%description
|
2013-02-21 17:47:18 +01:00
|
|
|
Expat is an XML parser library written in C. It is a stream-oriented
|
|
|
|
parser in which an application registers handlers for things the
|
|
|
|
parser might find in the XML document (like start tags).
|
2006-12-19 00:15:51 +01:00
|
|
|
|
2007-04-27 16:43:19 +02:00
|
|
|
%package -n libexpat1
|
|
|
|
Summary: XML Parser Toolkit
|
2016-07-20 08:48:52 +02:00
|
|
|
Group: System/Libraries
|
2007-04-27 16:43:19 +02:00
|
|
|
|
|
|
|
%description -n libexpat1
|
2013-02-21 17:47:18 +01:00
|
|
|
Expat is an XML parser library written in C. It is a stream-oriented
|
|
|
|
parser in which an application registers handlers for things the
|
|
|
|
parser might find in the XML document (like start tags).
|
2007-04-27 16:43:19 +02:00
|
|
|
|
|
|
|
%package -n libexpat-devel
|
2017-11-16 11:56:06 +01:00
|
|
|
Summary: Development files for expat, an XML parser toolkit
|
2012-02-12 17:28:13 +01:00
|
|
|
Group: Development/Libraries/C and C++
|
2012-03-06 10:36:12 +01:00
|
|
|
Requires: glibc-devel
|
|
|
|
Requires: libexpat1 = %{version}
|
2007-04-27 16:43:19 +02:00
|
|
|
|
|
|
|
%description -n libexpat-devel
|
2013-02-21 17:47:18 +01:00
|
|
|
Expat is an XML parser library written in C. It is a stream-oriented
|
|
|
|
parser in which an application registers handlers for things the
|
|
|
|
parser might find in the XML document (like start tags).
|
|
|
|
|
|
|
|
This package contains the development headers for the library found
|
|
|
|
in libexpat.
|
2007-04-27 16:43:19 +02:00
|
|
|
|
2006-12-19 00:15:51 +01:00
|
|
|
%prep
|
2016-03-23 09:48:07 +01:00
|
|
|
%setup -q
|
|
|
|
|
2015-07-11 15:33:21 +02:00
|
|
|
cp %{SOURCE1} .
|
2007-06-08 00:13:26 +02:00
|
|
|
rm -f examples/*.dsp
|
2006-12-19 00:15:51 +01:00
|
|
|
|
|
|
|
%build
|
2016-07-14 17:19:01 +02:00
|
|
|
%configure \
|
2017-07-11 22:45:24 +02:00
|
|
|
--disable-silent-rules \
|
2017-10-26 15:40:29 +02:00
|
|
|
--docdir="%{_docdir}/%{name}" \
|
2017-07-11 22:45:24 +02:00
|
|
|
--disable-static
|
2017-10-07 17:19:36 +02:00
|
|
|
%if 0%{?do_profiling}
|
2017-07-11 22:45:24 +02:00
|
|
|
make %{?_smp_mflags} CFLAGS="%{optflags} %{cflags_profile_generate}"
|
|
|
|
make %{?_smp_mflags} CFLAGS="%{optflags} %{cflags_profile_generate}" LDFLAGS="%{optflags} %{cflags_profile_generate}" check
|
2017-10-26 15:40:29 +02:00
|
|
|
make %{?_smp_mflags} clean
|
2017-07-11 22:45:24 +02:00
|
|
|
make %{?_smp_mflags} CFLAGS="%{optflags} %{cflags_profile_feedback}"
|
|
|
|
%else
|
|
|
|
make %{?_smp_mflags} CFLAGS="%{optflags}"
|
|
|
|
%endif
|
2006-12-19 00:15:51 +01:00
|
|
|
|
|
|
|
%install
|
2016-07-14 17:19:01 +02:00
|
|
|
%make_install
|
|
|
|
find %{buildroot} -type f -name "*.la" -delete -print
|
2006-12-19 00:15:51 +01:00
|
|
|
|
2009-04-02 17:23:53 +02:00
|
|
|
%check
|
2015-07-11 15:33:21 +02:00
|
|
|
make %{?_smp_mflags} check
|
2009-04-02 17:23:53 +02:00
|
|
|
|
|
|
|
%post -n libexpat1 -p /sbin/ldconfig
|
|
|
|
%postun -n libexpat1 -p /sbin/ldconfig
|
2007-06-08 00:13:26 +02:00
|
|
|
|
2006-12-19 00:15:51 +01:00
|
|
|
%files
|
2017-10-26 15:40:29 +02:00
|
|
|
%{_docdir}/%{name}
|
|
|
|
%doc COPYING README.md expatfaq.html
|
2007-04-27 16:43:19 +02:00
|
|
|
%doc doc/expat.png doc/reference.html doc/style.css doc/valid-xhtml10.png
|
2017-10-26 15:40:29 +02:00
|
|
|
%doc examples/elements.c examples/outline.c examples/Makefile.am examples/Makefile.in
|
|
|
|
%doc AUTHORS Changes
|
2015-07-11 15:33:21 +02:00
|
|
|
%{_mandir}/man?/*
|
2007-04-27 16:43:19 +02:00
|
|
|
%{_bindir}/xmlwf
|
|
|
|
|
|
|
|
%files -n libexpat1
|
2012-02-12 17:28:13 +01:00
|
|
|
%{_libdir}/libexpat.so.*
|
2007-04-27 16:43:19 +02:00
|
|
|
|
|
|
|
%files -n libexpat-devel
|
2017-10-26 15:40:29 +02:00
|
|
|
|
2006-12-19 00:15:51 +01:00
|
|
|
%{_includedir}/*
|
2007-04-27 16:43:19 +02:00
|
|
|
%{_libdir}/libexpat.so
|
2012-03-06 10:33:32 +01:00
|
|
|
%{_libdir}/pkgconfig/expat.pc
|
2006-12-19 00:15:51 +01:00
|
|
|
|
2007-04-27 16:43:19 +02:00
|
|
|
%changelog
|