3rdparty/expat: Updated to expat 2.6.4.
This commit is contained in:
parent
d69383bfb6
commit
288839a395
14
3rdparty/expat/CMake.README
vendored
14
3rdparty/expat/CMake.README
vendored
@ -3,25 +3,25 @@
|
|||||||
The cmake based buildsystem for expat works on Windows (cygwin, mingw, Visual
|
The cmake based buildsystem for expat works on Windows (cygwin, mingw, Visual
|
||||||
Studio) and should work on all other platform cmake supports.
|
Studio) and should work on all other platform cmake supports.
|
||||||
|
|
||||||
Assuming ~/expat-2.2.10 is the source directory of expat, add a subdirectory
|
Assuming ~/expat-2.6.4 is the source directory of expat, add a subdirectory
|
||||||
build and change into that directory:
|
build and change into that directory:
|
||||||
~/expat-2.2.10$ mkdir build && cd build
|
~/expat-2.6.4$ mkdir build && cd build
|
||||||
~/expat-2.2.10/build$
|
~/expat-2.6.4/build$
|
||||||
|
|
||||||
From that directory, call cmake first, then call make, make test and
|
From that directory, call cmake first, then call make, make test and
|
||||||
make install in the usual way:
|
make install in the usual way:
|
||||||
~/expat-2.2.10/build$ cmake ..
|
~/expat-2.6.4/build$ cmake ..
|
||||||
-- The C compiler identification is GNU
|
-- The C compiler identification is GNU
|
||||||
-- The CXX compiler identification is GNU
|
-- The CXX compiler identification is GNU
|
||||||
....
|
....
|
||||||
-- Configuring done
|
-- Configuring done
|
||||||
-- Generating done
|
-- Generating done
|
||||||
-- Build files have been written to: /home/patrick/expat-2.2.10/build
|
-- Build files have been written to: /home/patrick/expat-2.6.4/build
|
||||||
|
|
||||||
If you want to specify the install location for your files, append
|
If you want to specify the install location for your files, append
|
||||||
-DCMAKE_INSTALL_PREFIX=/your/install/path to the cmake call.
|
-DCMAKE_INSTALL_PREFIX=/your/install/path to the cmake call.
|
||||||
|
|
||||||
~/expat-2.2.10/build$ make && make test && make install
|
~/expat-2.6.4/build$ make && make test && make install
|
||||||
Scanning dependencies of target expat
|
Scanning dependencies of target expat
|
||||||
[ 5%] Building C object CMakeFiles/expat.dir/lib/xmlparse.c.o
|
[ 5%] Building C object CMakeFiles/expat.dir/lib/xmlparse.c.o
|
||||||
[ 11%] Building C object CMakeFiles/expat.dir/lib/xmlrole.c.o
|
[ 11%] Building C object CMakeFiles/expat.dir/lib/xmlrole.c.o
|
||||||
@ -36,7 +36,7 @@ Visual Studio Command Prompt or when using mingw, you must open a cmd.exe and
|
|||||||
make sure that gcc can be called. On Windows, you also might want to specify a
|
make sure that gcc can be called. On Windows, you also might want to specify a
|
||||||
special Generator for CMake:
|
special Generator for CMake:
|
||||||
for Visual Studio builds do:
|
for Visual Studio builds do:
|
||||||
cmake .. -G "Visual Studio 15 2017" && msbuild /m expat.sln
|
cmake .. -G "Visual Studio 16 2019" && msbuild /m expat.sln
|
||||||
for mingw builds do:
|
for mingw builds do:
|
||||||
cmake .. -G "MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=D:\expat-install
|
cmake .. -G "MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=D:\expat-install
|
||||||
&& gmake && gmake install
|
&& gmake && gmake install
|
||||||
|
565
3rdparty/expat/CMakeLists.txt
vendored
565
3rdparty/expat/CMakeLists.txt
vendored
@ -1,44 +1,52 @@
|
|||||||
# This file is copyrighted under the BSD-license for buildsystem files of KDE
|
# __ __ _
|
||||||
# copyright 2010, Patrick Spendrin <ps_ml@gmx.de>
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2010 Patrick Spendrin <ps_ml@gmx.de>
|
||||||
|
# Copyright (c) 2012 Karl Waclawek <karl@waclawek.net>
|
||||||
|
# Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2016 Sergei Nikulov <sergey.nikulov@gmail.com>
|
||||||
|
# Copyright (c) 2016 Björn Lindahl <bjorn.lindahl@foi.se>
|
||||||
|
# Copyright (c) 2016 Tobias Taschner <github@tc84.de>
|
||||||
|
# Copyright (c) 2016 Ben Boeckel <ben.boeckel@kitware.com>
|
||||||
|
# Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
# Copyright (c) 2017 Rolf Eike Beer <eike@sf-mail.de>
|
||||||
|
# Copyright (c) 2017 Stephen Groat <stephen@groat.us>
|
||||||
|
# Copyright (c) 2017 Franek Korta <fkorta@gmail.com>
|
||||||
|
# Copyright (c) 2018 pedro-vicente <pedro.vicente@space-research.org>
|
||||||
|
# Copyright (c) 2018 Frank Rast <frank.rast@gefeg.com>
|
||||||
|
# Copyright (c) 2018 userwithuid <userwithuid@gmail.com>
|
||||||
|
# Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
|
||||||
|
# Copyright (c) 2019 Kishore Kunche <kishore.kunche@intel.com>
|
||||||
|
# Copyright (c) 2019 xantares <xantares09@hotmail.com>
|
||||||
|
# Copyright (c) 2019 Mohammed Khajapasha <mohammed.khajapasha@intel.com>
|
||||||
|
# Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
# Copyright (c) 2019 Bhargava Shastry <bhargava.shastry@ethereum.org>
|
||||||
|
# Copyright (c) 2020 Maciej Sroczyński <macieksroczynski@poczta.fm>
|
||||||
|
# Copyright (c) 2020 Gulliver <gulliver@traumkristalle.net>
|
||||||
|
# Copyright (c) 2020 Thomas Beutlich <tc@tbeu.de>
|
||||||
|
# Copyright (c) 2021 Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>
|
||||||
|
# Copyright (c) 2022 Johnny Jazeix <jazeix@gmail.com>
|
||||||
|
# Copyright (c) 2022 David Faure <david.faure@kdab.com>
|
||||||
|
# Unlike most of Expat,
|
||||||
|
# this file is copyrighted under the BSD-license for buildsystem files of KDE.
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 3.1.3)
|
cmake_minimum_required(VERSION 3.5.0)
|
||||||
|
|
||||||
# This allows controlling documented build time switches
|
|
||||||
# when Expat is pulled in using the add_subdirectory function, e.g.
|
|
||||||
#
|
|
||||||
# set(EXPAT_BUILD_DOCS OFF)
|
|
||||||
# set(EXPAT_BUILD_TOOLS OFF)
|
|
||||||
# add_subdirectory(${expat_SOURCE_DIR}/expat ${expat_BINARY_DIR})
|
|
||||||
#
|
|
||||||
# would disable compilation of the xmlwf CLI and its man page.
|
|
||||||
# Without activating behaviour NEW for policy CMP0077 here,
|
|
||||||
# a user with -Wdev enabled would see warning
|
|
||||||
#
|
|
||||||
# Policy CMP0077 is not set: option() honors normal variables. Run "cmake
|
|
||||||
# --help-policy CMP0077" for policy details. Use the cmake_policy command to
|
|
||||||
# set the policy and suppress this warning.
|
|
||||||
#
|
|
||||||
# For compatibility with older versions of CMake, option is clearing the
|
|
||||||
# normal variable 'EXPAT_BUILD_DOCS'.
|
|
||||||
#
|
|
||||||
# and effectively not be able to adjust option EXPAT_BUILD_DOCS.
|
|
||||||
#
|
|
||||||
# For more details please see:
|
|
||||||
# - https://cmake.org/cmake/help/latest/policy/CMP0077.html
|
|
||||||
# - https://github.com/libexpat/libexpat/pull/419
|
|
||||||
#
|
|
||||||
if(POLICY CMP0077)
|
|
||||||
cmake_policy(SET CMP0077 NEW)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
project(expat
|
project(expat
|
||||||
VERSION
|
VERSION
|
||||||
2.2.10
|
2.6.4
|
||||||
LANGUAGES
|
LANGUAGES
|
||||||
C
|
C
|
||||||
)
|
)
|
||||||
|
set(CMAKE_C_STANDARD 99)
|
||||||
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
||||||
|
set(CMAKE_C_EXTENSIONS OFF) # i.e. -std=c99 rather than default -std=gnu99
|
||||||
|
|
||||||
set(PACKAGE_BUGREPORT "expat-bugs@libexpat.org")
|
set(PACKAGE_BUGREPORT "https://github.com/libexpat/libexpat/issues")
|
||||||
set(PACKAGE_NAME "expat")
|
set(PACKAGE_NAME "expat")
|
||||||
set(PACKAGE_VERSION "${PROJECT_VERSION}")
|
set(PACKAGE_VERSION "${PROJECT_VERSION}")
|
||||||
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
|
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
|
||||||
@ -47,11 +55,6 @@ set(PACKAGE_TARNAME "${PACKAGE_NAME}")
|
|||||||
include(CMakePackageConfigHelpers)
|
include(CMakePackageConfigHelpers)
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
#
|
|
||||||
# Detect use by means of add_subdirectory
|
|
||||||
#
|
|
||||||
get_directory_property(_EXPAT_PARENT_DIRECTORY PARENT_DIRECTORY)
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Configuration defaults
|
# Configuration defaults
|
||||||
#
|
#
|
||||||
@ -75,51 +78,114 @@ if(MSVC)
|
|||||||
else()
|
else()
|
||||||
set(_EXPAT_BUILD_PKGCONFIG_DEFAULT ON)
|
set(_EXPAT_BUILD_PKGCONFIG_DEFAULT ON)
|
||||||
endif()
|
endif()
|
||||||
|
if(DEFINED BUILD_SHARED_LIBS)
|
||||||
|
set(_EXPAT_SHARED_LIBS_DEFAULT ${BUILD_SHARED_LIBS})
|
||||||
|
else()
|
||||||
|
set(_EXPAT_SHARED_LIBS_DEFAULT ON)
|
||||||
|
endif()
|
||||||
|
if(NOT CMAKE_BUILD_TYPE)
|
||||||
|
set(CMAKE_BUILD_TYPE NoConfig) # so that accessing EXPAT_*_POSTFIX will be waterproof
|
||||||
|
endif()
|
||||||
|
string(TOUPPER "${CMAKE_BUILD_TYPE}" _EXPAT_BUILD_TYPE_UPPER)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Configuration
|
# Configuration
|
||||||
#
|
#
|
||||||
option(EXPAT_BUILD_TOOLS "build the xmlwf tool for expat library" ${_EXPAT_BUILD_TOOLS_DEFAULT})
|
|
||||||
option(EXPAT_BUILD_EXAMPLES "build the examples for expat library" ON)
|
macro(expat_shy_set var default cache type desc)
|
||||||
option(EXPAT_BUILD_TESTS "build the tests for expat library" ON)
|
# Macro expat_shy_set came into life because:
|
||||||
option(EXPAT_SHARED_LIBS "build a shared expat library" ON)
|
# - Expat was previously using an inconsistent mix of CMake's native set()
|
||||||
option(EXPAT_BUILD_DOCS "build man page for xmlwf" ${_EXPAT_BUILD_DOCS_DEFAULT})
|
# and option() to define public build time options.
|
||||||
option(EXPAT_BUILD_FUZZERS "build fuzzers for the expat library" OFF)
|
# - option() is more friendly than set() with regard to configuring an
|
||||||
option(EXPAT_BUILD_PKGCONFIG "build pkg-config file" ${_EXPAT_BUILD_PKGCONFIG_DEFAULT})
|
# external project that is pulled in by means of add_subdirectory() --
|
||||||
option(EXPAT_OSSFUZZ_BUILD "build fuzzers via ossfuzz for the expat library" OFF)
|
# see comments in issue #597 -- so we wanted to get away from set().
|
||||||
|
# - option() auto-converts non-bool values to bool when writing to the CMake
|
||||||
|
# cache, so we needed something that supports non-bool better and hence
|
||||||
|
# wanted to get away from plain option(), too.
|
||||||
|
#
|
||||||
|
# As a result, this function serves as a hybrid between CMake's regular set()
|
||||||
|
# and option(): from set() it takes support for non-bool types and the function
|
||||||
|
# name and signature whereas from option() (with policy CMP0077 mode NEW) it
|
||||||
|
# takes being shy when a value has previously been defined for that variable.
|
||||||
|
#
|
||||||
|
# So that resolves all need for set(.. FORCE) when pulling in Expat by means of
|
||||||
|
# add_subdirectory().
|
||||||
|
#
|
||||||
|
if(NOT ${cache} STREQUAL "CACHE")
|
||||||
|
message(SEND_ERROR "Macro usage is: expat_shy_set(var default CACHE type desc)")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(DEFINED ${var})
|
||||||
|
# NOTE: The idea is to (ideally) only add to the cache if
|
||||||
|
# there is no cache entry, yet. "if(DEFINED CACHE{var})"
|
||||||
|
# requires CMake >=3.14.
|
||||||
|
if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.14" AND NOT DEFINED "CACHE{${var}}")
|
||||||
|
set("${var}" "${${var}}" CACHE "${type}" "${desc}")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
set("${var}" "${default}" CACHE "${type}" "${desc}")
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
expat_shy_set(EXPAT_BUILD_TOOLS ${_EXPAT_BUILD_TOOLS_DEFAULT} CACHE BOOL "Build the xmlwf tool for expat library")
|
||||||
|
expat_shy_set(EXPAT_BUILD_EXAMPLES ON CACHE BOOL "Build the examples for expat library")
|
||||||
|
expat_shy_set(EXPAT_BUILD_TESTS ON CACHE BOOL "Build the tests for expat library")
|
||||||
|
expat_shy_set(EXPAT_SHARED_LIBS ${_EXPAT_SHARED_LIBS_DEFAULT} CACHE BOOL "Build a shared expat library")
|
||||||
|
expat_shy_set(EXPAT_BUILD_DOCS ${_EXPAT_BUILD_DOCS_DEFAULT} CACHE BOOL "Build man page for xmlwf")
|
||||||
|
expat_shy_set(EXPAT_BUILD_FUZZERS OFF CACHE BOOL "Build fuzzers for the expat library")
|
||||||
|
expat_shy_set(EXPAT_BUILD_PKGCONFIG ${_EXPAT_BUILD_PKGCONFIG_DEFAULT} CACHE BOOL "Build pkg-config file")
|
||||||
|
expat_shy_set(EXPAT_OSSFUZZ_BUILD OFF CACHE BOOL "Build fuzzers via ossfuzz for the expat library")
|
||||||
if(UNIX OR _EXPAT_HELP)
|
if(UNIX OR _EXPAT_HELP)
|
||||||
option(EXPAT_WITH_LIBBSD "utilize libbsd (for arc4random_buf)" OFF)
|
expat_shy_set(EXPAT_WITH_LIBBSD OFF CACHE BOOL "Utilize libbsd (for arc4random_buf)")
|
||||||
endif()
|
endif()
|
||||||
option(EXPAT_ENABLE_INSTALL "install expat files in cmake install target" ON)
|
expat_shy_set(EXPAT_ENABLE_INSTALL ON CACHE BOOL "Install expat files in cmake install target")
|
||||||
set(EXPAT_CONTEXT_BYTES 1024 CACHE STRING "Define to specify how much context to retain around the current parse point")
|
expat_shy_set(EXPAT_CONTEXT_BYTES 1024 CACHE STRING "Define to specify how much context to retain around the current parse point, 0 to disable")
|
||||||
mark_as_advanced(EXPAT_CONTEXT_BYTES)
|
mark_as_advanced(EXPAT_CONTEXT_BYTES)
|
||||||
option(EXPAT_DTD "Define to make parameter entity parsing functionality available" ON)
|
expat_shy_set(EXPAT_DTD ON CACHE BOOL "Define to make parameter entity parsing functionality available")
|
||||||
mark_as_advanced(EXPAT_DTD)
|
mark_as_advanced(EXPAT_DTD)
|
||||||
option(EXPAT_NS "Define to make XML Namespaces functionality available" ON)
|
expat_shy_set(EXPAT_GE ON CACHE BOOL "Define to make general entity parsing functionality available")
|
||||||
|
mark_as_advanced(EXPAT_GE)
|
||||||
|
expat_shy_set(EXPAT_NS ON CACHE BOOL "Define to make XML Namespaces functionality available")
|
||||||
mark_as_advanced(EXPAT_NS)
|
mark_as_advanced(EXPAT_NS)
|
||||||
option(EXPAT_WARNINGS_AS_ERRORS "Treat all compiler warnings as errors" OFF)
|
expat_shy_set(EXPAT_WARNINGS_AS_ERRORS OFF CACHE BOOL "Treat all compiler warnings as errors")
|
||||||
if(UNIX OR _EXPAT_HELP)
|
if(UNIX OR _EXPAT_HELP)
|
||||||
option(EXPAT_DEV_URANDOM "Define to include code reading entropy from `/dev/urandom'." ON)
|
expat_shy_set(EXPAT_DEV_URANDOM ON CACHE BOOL "Define to include code reading entropy from `/dev/urandom'.")
|
||||||
set(EXPAT_WITH_GETRANDOM "AUTO" CACHE STRING
|
expat_shy_set(EXPAT_WITH_GETRANDOM "AUTO" CACHE STRING "Make use of getrandom function (ON|OFF|AUTO) [default=AUTO]")
|
||||||
"Make use of getrandom function (ON|OFF|AUTO) [default=AUTO]")
|
expat_shy_set(EXPAT_WITH_SYS_GETRANDOM "AUTO" CACHE STRING "Make use of syscall SYS_getrandom (ON|OFF|AUTO) [default=AUTO]")
|
||||||
set(EXPAT_WITH_SYS_GETRANDOM "AUTO" CACHE STRING
|
|
||||||
"Make use of syscall SYS_getrandom (ON|OFF|AUTO) [default=AUTO]")
|
|
||||||
mark_as_advanced(EXPAT_DEV_URANDOM)
|
mark_as_advanced(EXPAT_DEV_URANDOM)
|
||||||
endif()
|
endif()
|
||||||
set(EXPAT_CHAR_TYPE "char" CACHE STRING "Character type to use (char|ushort|wchar_t) [default=char]")
|
expat_shy_set(EXPAT_CHAR_TYPE "char" CACHE STRING "Character type to use (char|ushort|wchar_t) [default=char]")
|
||||||
option(EXPAT_ATTR_INFO "Define to allow retrieving the byte offsets for attribute names and values" OFF)
|
expat_shy_set(EXPAT_ATTR_INFO OFF CACHE BOOL "Define to allow retrieving the byte offsets for attribute names and values")
|
||||||
mark_as_advanced(EXPAT_ATTR_INFO)
|
mark_as_advanced(EXPAT_ATTR_INFO)
|
||||||
option(EXPAT_LARGE_SIZE "Make XML_GetCurrent* functions return <(unsigned) long long> rather than <(unsigned) long>" OFF)
|
expat_shy_set(EXPAT_LARGE_SIZE OFF CACHE BOOL "Make XML_GetCurrent* functions return <(unsigned) long long> rather than <(unsigned) long>")
|
||||||
mark_as_advanced(EXPAT_LARGE_SIZE)
|
mark_as_advanced(EXPAT_LARGE_SIZE)
|
||||||
option(EXPAT_MIN_SIZE "Get a smaller (but slower) parser (in particular avoid multiple copies of the tokenizer)" OFF)
|
expat_shy_set(EXPAT_MIN_SIZE OFF CACHE BOOL "Get a smaller (but slower) parser (in particular avoid multiple copies of the tokenizer)")
|
||||||
mark_as_advanced(EXPAT_MIN_SIZE)
|
mark_as_advanced(EXPAT_MIN_SIZE)
|
||||||
if(MSVC OR _EXPAT_HELP)
|
if(MSVC OR _EXPAT_HELP)
|
||||||
set(EXPAT_MSVC_STATIC_CRT OFF CACHE BOOL "Use /MT flag (static CRT) when compiling in MSVC")
|
expat_shy_set(EXPAT_MSVC_STATIC_CRT OFF CACHE BOOL "Use /MT flag (static CRT) when compiling in MSVC")
|
||||||
|
endif()
|
||||||
|
if(NOT _EXPAT_HELP)
|
||||||
|
expat_shy_set(_EXPAT_M32 OFF CACHE BOOL "(Unofficial!) Produce 32bit code with -m32")
|
||||||
|
mark_as_advanced(_EXPAT_M32)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(EXPAT_BUILD_TESTS)
|
||||||
|
# We have to call enable_language() before modifying any CMAKE_CXX_* variables
|
||||||
|
enable_language(CXX)
|
||||||
|
|
||||||
|
set(CMAKE_CXX_STANDARD 11)
|
||||||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
set(CMAKE_CXX_EXTENSIONS OFF) # i.e. -std=c++11 rather than default -std=gnu++11
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#
|
#
|
||||||
# Environment checks
|
# Environment checks
|
||||||
#
|
#
|
||||||
|
if(EXPAT_DTD AND NOT EXPAT_GE)
|
||||||
|
message(SEND_ERROR "Option EXPAT_DTD requires that EXPAT_GE is also enabled.")
|
||||||
|
message(SEND_ERROR "Please either enable option EXPAT_GE (recommended) or disable EXPAT_DTD also.")
|
||||||
|
endif()
|
||||||
|
|
||||||
if(EXPAT_WITH_LIBBSD)
|
if(EXPAT_WITH_LIBBSD)
|
||||||
find_library(LIB_BSD NAMES bsd)
|
find_library(LIB_BSD NAMES bsd)
|
||||||
if(NOT LIB_BSD)
|
if(NOT LIB_BSD)
|
||||||
@ -129,6 +195,26 @@ if(EXPAT_WITH_LIBBSD)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(MSVC)
|
||||||
|
# For the three types of MSVC version values, please see:
|
||||||
|
# - https://cmake.org/cmake/help/latest/variable/MSVC_VERSION.html
|
||||||
|
# - https://sourceforge.net/p/predef/wiki/Compilers/
|
||||||
|
# - https://en.wikipedia.org/wiki/Microsoft_Visual_Studio#History
|
||||||
|
set(_EXPAT_MSVC_REQUIRED_INT 1800) # i.e. 12.0/2013/1800; see PR #426
|
||||||
|
set(_EXPAT_MSVC_SUPPORTED_INT 1920)
|
||||||
|
set(_EXPAT_MSVC_SUPPORTED_DISPLAY "Visual Studio 16.0/2019/${_EXPAT_MSVC_SUPPORTED_INT}")
|
||||||
|
|
||||||
|
if(MSVC_VERSION VERSION_LESS ${_EXPAT_MSVC_SUPPORTED_INT})
|
||||||
|
if(MSVC_VERSION VERSION_LESS ${_EXPAT_MSVC_REQUIRED_INT})
|
||||||
|
message(SEND_ERROR "MSVC_VERSION ${MSVC_VERSION} is TOO OLD to compile Expat without errors.")
|
||||||
|
message(SEND_ERROR "Please use officially supported ${_EXPAT_MSVC_SUPPORTED_DISPLAY} or later. Thank you!")
|
||||||
|
else()
|
||||||
|
message(WARNING "MSVC_VERSION ${MSVC_VERSION} is NOT OFFICIALLY SUPPORTED by Expat.")
|
||||||
|
message(WARNING "Please use ${_EXPAT_MSVC_SUPPORTED_DISPLAY} or later. Thank you!")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
macro(_expat_copy_bool_int source_ref dest_ref)
|
macro(_expat_copy_bool_int source_ref dest_ref)
|
||||||
if(${source_ref})
|
if(${source_ref})
|
||||||
set(${dest_ref} 1)
|
set(${dest_ref} 1)
|
||||||
@ -202,12 +288,16 @@ endif()
|
|||||||
|
|
||||||
_expat_copy_bool_int(EXPAT_ATTR_INFO XML_ATTR_INFO)
|
_expat_copy_bool_int(EXPAT_ATTR_INFO XML_ATTR_INFO)
|
||||||
_expat_copy_bool_int(EXPAT_DTD XML_DTD)
|
_expat_copy_bool_int(EXPAT_DTD XML_DTD)
|
||||||
|
_expat_copy_bool_int(EXPAT_GE XML_GE)
|
||||||
_expat_copy_bool_int(EXPAT_LARGE_SIZE XML_LARGE_SIZE)
|
_expat_copy_bool_int(EXPAT_LARGE_SIZE XML_LARGE_SIZE)
|
||||||
_expat_copy_bool_int(EXPAT_MIN_SIZE XML_MIN_SIZE)
|
_expat_copy_bool_int(EXPAT_MIN_SIZE XML_MIN_SIZE)
|
||||||
_expat_copy_bool_int(EXPAT_NS XML_NS)
|
_expat_copy_bool_int(EXPAT_NS XML_NS)
|
||||||
if(NOT WIN32)
|
if(NOT WIN32)
|
||||||
_expat_copy_bool_int(EXPAT_DEV_URANDOM XML_DEV_URANDOM)
|
_expat_copy_bool_int(EXPAT_DEV_URANDOM XML_DEV_URANDOM)
|
||||||
endif()
|
endif()
|
||||||
|
if(NOT EXPAT_CONTEXT_BYTES GREATER 0) # in particular with -DEXPAT_CONTEXT_BYTES=OFF
|
||||||
|
set(EXPAT_CONTEXT_BYTES 0)
|
||||||
|
endif()
|
||||||
set(XML_CONTEXT_BYTES ${EXPAT_CONTEXT_BYTES})
|
set(XML_CONTEXT_BYTES ${EXPAT_CONTEXT_BYTES})
|
||||||
|
|
||||||
macro(expat_install)
|
macro(expat_install)
|
||||||
@ -217,7 +307,6 @@ macro(expat_install)
|
|||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
configure_file(expat_config.h.cmake "${CMAKE_CURRENT_BINARY_DIR}/expat_config.h")
|
configure_file(expat_config.h.cmake "${CMAKE_CURRENT_BINARY_DIR}/expat_config.h")
|
||||||
add_definitions(-DHAVE_EXPAT_CONFIG_H)
|
|
||||||
expat_install(FILES "${CMAKE_CURRENT_BINARY_DIR}/expat_config.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
expat_install(FILES "${CMAKE_CURRENT_BINARY_DIR}/expat_config.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||||
|
|
||||||
|
|
||||||
@ -226,14 +315,24 @@ if(FLAG_NO_STRICT_ALIASING)
|
|||||||
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -fno-strict-aliasing")
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -fno-strict-aliasing")
|
||||||
endif()
|
endif()
|
||||||
if(FLAG_VISIBILITY)
|
if(FLAG_VISIBILITY)
|
||||||
add_definitions(-DXML_ENABLE_VISIBILITY=1)
|
if(EXPAT_SHARED_LIBS)
|
||||||
|
add_definitions(-DXML_ENABLE_VISIBILITY=1)
|
||||||
|
endif()
|
||||||
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -fvisibility=hidden")
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -fvisibility=hidden")
|
||||||
endif()
|
endif()
|
||||||
|
if(MINGW)
|
||||||
|
# Without __USE_MINGW_ANSI_STDIO the compiler produces a false positive
|
||||||
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -Wno-pedantic-ms-format")
|
||||||
|
endif()
|
||||||
if (EXPAT_WARNINGS_AS_ERRORS)
|
if (EXPAT_WARNINGS_AS_ERRORS)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
add_definitions(/WX)
|
add_definitions(/WX)
|
||||||
else()
|
else()
|
||||||
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -Werror")
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -Werror")
|
||||||
|
if(MINGW)
|
||||||
|
# To avoid "error: unknown conversion type character ‘l’ in format [-Werror=format=]"
|
||||||
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -Wno-format")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_COMPILE_FLAGS}")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_COMPILE_FLAGS}")
|
||||||
@ -243,10 +342,12 @@ if (MSVC)
|
|||||||
if (EXPAT_MSVC_STATIC_CRT)
|
if (EXPAT_MSVC_STATIC_CRT)
|
||||||
message("-- Using static CRT ${EXPAT_MSVC_STATIC_CRT}")
|
message("-- Using static CRT ${EXPAT_MSVC_STATIC_CRT}")
|
||||||
foreach(flag_var
|
foreach(flag_var
|
||||||
|
CMAKE_CXX_FLAGS_${_EXPAT_BUILD_TYPE_UPPER}
|
||||||
CMAKE_CXX_FLAGS_DEBUG
|
CMAKE_CXX_FLAGS_DEBUG
|
||||||
CMAKE_CXX_FLAGS_RELEASE
|
CMAKE_CXX_FLAGS_RELEASE
|
||||||
CMAKE_CXX_FLAGS_MINSIZEREL
|
CMAKE_CXX_FLAGS_MINSIZEREL
|
||||||
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
||||||
|
CMAKE_C_FLAGS_${_EXPAT_BUILD_TYPE_UPPER}
|
||||||
CMAKE_C_FLAGS_DEBUG
|
CMAKE_C_FLAGS_DEBUG
|
||||||
CMAKE_C_FLAGS_RELEASE
|
CMAKE_C_FLAGS_RELEASE
|
||||||
CMAKE_C_FLAGS_MINSIZEREL
|
CMAKE_C_FLAGS_MINSIZEREL
|
||||||
@ -257,43 +358,32 @@ if (MSVC)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(_EXPAT_M32 AND NOT MSVC)
|
||||||
|
foreach(flag_var
|
||||||
|
CMAKE_CXX_FLAGS_${_EXPAT_BUILD_TYPE_UPPER}
|
||||||
|
CMAKE_CXX_FLAGS_DEBUG
|
||||||
|
CMAKE_CXX_FLAGS_RELEASE
|
||||||
|
CMAKE_CXX_FLAGS_MINSIZEREL
|
||||||
|
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
||||||
|
CMAKE_C_FLAGS_${_EXPAT_BUILD_TYPE_UPPER}
|
||||||
|
CMAKE_C_FLAGS_DEBUG
|
||||||
|
CMAKE_C_FLAGS_RELEASE
|
||||||
|
CMAKE_C_FLAGS_MINSIZEREL
|
||||||
|
CMAKE_C_FLAGS_RELWITHDEBINFO
|
||||||
|
)
|
||||||
|
set(${flag_var} "${${flag_var}} -m32")
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
|
|
||||||
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/lib)
|
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/lib)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS -wd4996)
|
add_definitions(-D_CRT_SECURE_NO_WARNINGS -wd4996)
|
||||||
endif()
|
endif()
|
||||||
if(WIN32)
|
|
||||||
if(_EXPAT_UNICODE_WCHAR_T)
|
|
||||||
set(_POSTFIX_WIDE "w")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC AND NOT EXPAT_SHARED_LIBS)
|
|
||||||
if(EXPAT_MSVC_STATIC_CRT)
|
|
||||||
set(_POSTFIX_CRT "MT")
|
|
||||||
else()
|
|
||||||
set(_POSTFIX_CRT "MD")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(postfix_var
|
|
||||||
CMAKE_DEBUG_POSTFIX
|
|
||||||
CMAKE_RELEASE_POSTFIX
|
|
||||||
CMAKE_MINSIZEREL_POSTFIX
|
|
||||||
CMAKE_RELWITHDEBINFO_POSTFIX
|
|
||||||
)
|
|
||||||
if(postfix_var STREQUAL "CMAKE_DEBUG_POSTFIX")
|
|
||||||
set(_POSTFIX_DEBUG "d")
|
|
||||||
else()
|
|
||||||
set(_POSTFIX_DEBUG "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(${postfix_var} "${_POSTFIX_WIDE}${_POSTFIX_DEBUG}${_POSTFIX_CRT}" CACHE STRING "Windows binary postfix, e.g. libexpat<postfix=[w][d][MD|MT]>.lib")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# C library
|
# C library
|
||||||
#
|
#
|
||||||
set(expat_SRCS
|
set(_EXPAT_C_SOURCES
|
||||||
lib/xmlparse.c
|
lib/xmlparse.c
|
||||||
lib/xmlrole.c
|
lib/xmlrole.c
|
||||||
lib/xmltok.c
|
lib/xmltok.c
|
||||||
@ -304,39 +394,116 @@ set(expat_SRCS
|
|||||||
|
|
||||||
if(EXPAT_SHARED_LIBS)
|
if(EXPAT_SHARED_LIBS)
|
||||||
set(_SHARED SHARED)
|
set(_SHARED SHARED)
|
||||||
if(MSVC)
|
if(WIN32)
|
||||||
set(expat_SRCS ${expat_SRCS} lib/libexpat.def)
|
macro(_expat_def_file_toggle source_var target_var)
|
||||||
|
if(${source_var})
|
||||||
|
set(${target_var} " ") # i.e. not commented out, a single space
|
||||||
|
else()
|
||||||
|
set(${target_var} ";") # i.e. commented out
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
if(EXPAT_DTD OR EXPAT_GE)
|
||||||
|
set(_EXPAT_DTD_OR_GE TRUE)
|
||||||
|
else()
|
||||||
|
set(_EXPAT_DTD_OR_GE FALSE)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
_expat_def_file_toggle(_EXPAT_DTD_OR_GE _EXPAT_COMMENT_DTD_OR_GE)
|
||||||
|
_expat_def_file_toggle(EXPAT_ATTR_INFO _EXPAT_COMMENT_ATTR_INFO)
|
||||||
|
|
||||||
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/lib/libexpat.def.cmake" "${CMAKE_CURRENT_BINARY_DIR}/lib/libexpat.def")
|
||||||
|
set(_EXPAT_EXTRA_SOURCES ${_EXPAT_EXTRA_SOURCES} "${CMAKE_CURRENT_BINARY_DIR}/lib/libexpat.def")
|
||||||
|
|
||||||
|
# Add DLL version
|
||||||
|
string(REPLACE "." "," _EXPAT_DLL_VERSION ${PROJECT_VERSION}.0)
|
||||||
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/win32/version.rc.cmake" "${CMAKE_CURRENT_BINARY_DIR}/win32/version.rc")
|
||||||
|
set(_EXPAT_EXTRA_SOURCES ${_EXPAT_EXTRA_SOURCES} "${CMAKE_CURRENT_BINARY_DIR}/win32/version.rc")
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(_SHARED STATIC)
|
set(_SHARED STATIC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Avoid colliding with Expat.dll of Perl's XML::Parser::Expat
|
add_library(expat ${_SHARED} ${_EXPAT_C_SOURCES} ${_EXPAT_EXTRA_SOURCES})
|
||||||
if(WIN32 AND NOT MINGW)
|
add_library(expat::expat ALIAS expat)
|
||||||
set(_EXPAT_OUTPUT_NAME libexpat) # CMAKE_*_POSTFIX applies, see above
|
if(_EXPAT_LIBM_FOUND)
|
||||||
else()
|
target_link_libraries(expat m)
|
||||||
if(_EXPAT_UNICODE)
|
|
||||||
set(_EXPAT_OUTPUT_NAME expatw)
|
|
||||||
else()
|
|
||||||
set(_EXPAT_OUTPUT_NAME expat)
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(expat ${_SHARED} ${expat_SRCS})
|
|
||||||
if(EXPAT_WITH_LIBBSD)
|
if(EXPAT_WITH_LIBBSD)
|
||||||
target_link_libraries(expat ${LIB_BSD})
|
target_link_libraries(expat ${LIB_BSD})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(LIBCURRENT 7) # sync
|
#
|
||||||
set(LIBREVISION 12) # with
|
# Library filename postfix
|
||||||
set(LIBAGE 6) # configure.ac!
|
#
|
||||||
|
if(_EXPAT_UNICODE)
|
||||||
|
set(_POSTFIX_WIDE "w")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(MSVC AND NOT EXPAT_SHARED_LIBS)
|
||||||
|
if(EXPAT_MSVC_STATIC_CRT)
|
||||||
|
set(_POSTFIX_CRT "MT")
|
||||||
|
else()
|
||||||
|
set(_POSTFIX_CRT "MD")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
foreach(build_type_upper
|
||||||
|
${_EXPAT_BUILD_TYPE_UPPER}
|
||||||
|
DEBUG
|
||||||
|
RELEASE
|
||||||
|
MINSIZEREL
|
||||||
|
RELWITHDEBINFO
|
||||||
|
)
|
||||||
|
if(WIN32 AND build_type_upper STREQUAL "DEBUG")
|
||||||
|
set(_POSTFIX_DEBUG "d")
|
||||||
|
else()
|
||||||
|
set(_POSTFIX_DEBUG "") # needs a reset because of being looped
|
||||||
|
endif()
|
||||||
|
|
||||||
|
expat_shy_set(EXPAT_${build_type_upper}_POSTFIX "${_POSTFIX_WIDE}${_POSTFIX_DEBUG}${_POSTFIX_CRT}" CACHE STRING "Library filename postfix for build type ${build_type_upper}; yields filenames libexpat<postfix=[w][d][MD|MT]>.(dll|dylib|lib|so)")
|
||||||
|
mark_as_advanced(EXPAT_${build_type_upper}_POSTFIX)
|
||||||
|
set_property(TARGET expat PROPERTY ${build_type_upper}_POSTFIX ${EXPAT_${build_type_upper}_POSTFIX})
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
set(LIBCURRENT 11) # sync
|
||||||
|
set(LIBREVISION 0) # with
|
||||||
|
set(LIBAGE 10) # configure.ac!
|
||||||
math(EXPR LIBCURRENT_MINUS_AGE "${LIBCURRENT} - ${LIBAGE}")
|
math(EXPR LIBCURRENT_MINUS_AGE "${LIBCURRENT} - ${LIBAGE}")
|
||||||
|
|
||||||
set_property(TARGET expat PROPERTY OUTPUT_NAME "${_EXPAT_OUTPUT_NAME}")
|
|
||||||
if(NOT WIN32)
|
if(NOT WIN32)
|
||||||
set_property(TARGET expat PROPERTY VERSION ${LIBCURRENT_MINUS_AGE}.${LIBAGE}.${LIBREVISION})
|
set_property(TARGET expat PROPERTY VERSION ${LIBCURRENT_MINUS_AGE}.${LIBAGE}.${LIBREVISION})
|
||||||
set_property(TARGET expat PROPERTY SOVERSION ${LIBCURRENT_MINUS_AGE})
|
set_property(TARGET expat PROPERTY SOVERSION ${LIBCURRENT_MINUS_AGE})
|
||||||
set_property(TARGET expat PROPERTY NO_SONAME ${NO_SONAME})
|
set_property(TARGET expat PROPERTY NO_SONAME ${NO_SONAME})
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
if(NOT CMAKE_VERSION VERSION_GREATER_EQUAL 3.17)
|
||||||
|
message(FATAL_ERROR "Expat requires CMake >=3.17 on platform \"APPLE\".")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# NOTE: This intends to talk CMake into compatibility with GNU Libtool
|
||||||
|
math(EXPR _EXPAT_MACHO_COMPATIBILITY_VERSION "${LIBCURRENT} + 1")
|
||||||
|
set(_EXPAT_MACHO_CURRENT_VERSION "${_EXPAT_MACHO_COMPATIBILITY_VERSION}.${LIBREVISION}")
|
||||||
|
set_property(TARGET expat PROPERTY MACHO_COMPATIBILITY_VERSION ${_EXPAT_MACHO_COMPATIBILITY_VERSION})
|
||||||
|
set_property(TARGET expat PROPERTY MACHO_CURRENT_VERSION ${_EXPAT_MACHO_CURRENT_VERSION})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(MINGW AND EXPAT_SHARED_LIBS)
|
||||||
|
set_target_properties(expat PROPERTIES SUFFIX "-${LIBCURRENT_MINUS_AGE}.dll")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WIN32 AND NOT MINGW)
|
||||||
|
# NOTE: This avoids a name collision with Expat.dll of Perl's XML::Parser::Expat
|
||||||
|
# on Windows by resorting to filename libexpat.dll since Expat 1.95.3.
|
||||||
|
# Everything but MSVC is already adding prefix "lib", automatically.
|
||||||
|
# NOTE: "set_property(TARGET expat PROPERTY PREFIX lib)" would only affect *.dll
|
||||||
|
# files but not *.lib files, so we have to rely on property OUTPUT_NAME, instead.
|
||||||
|
# Target property <CONFIG>_POSTFIX still applies.
|
||||||
|
set(_EXPAT_OUTPUT_NAME libexpat)
|
||||||
|
set_property(TARGET expat PROPERTY OUTPUT_NAME ${_EXPAT_OUTPUT_NAME})
|
||||||
|
else()
|
||||||
|
set(_EXPAT_OUTPUT_NAME expat)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_include_directories(expat
|
target_include_directories(expat
|
||||||
@ -346,8 +513,8 @@ target_include_directories(expat
|
|||||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT EXPAT_SHARED_LIBS AND WIN32)
|
if(WIN32 AND EXPAT_SHARED_LIBS)
|
||||||
target_compile_definitions(expat PUBLIC -DXML_STATIC)
|
target_compile_definitions(expat PRIVATE VER_FILEVERSION=${_EXPAT_DLL_VERSION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
expat_install(TARGETS expat EXPORT expat
|
expat_install(TARGETS expat EXPORT expat
|
||||||
@ -361,12 +528,42 @@ expat_install(FILES lib/expat.h lib/expat_external.h DESTINATION ${CMAKE_INSTALL
|
|||||||
# pkg-config file
|
# pkg-config file
|
||||||
#
|
#
|
||||||
if(EXPAT_BUILD_PKGCONFIG)
|
if(EXPAT_BUILD_PKGCONFIG)
|
||||||
set(prefix ${CMAKE_INSTALL_PREFIX})
|
if(CMAKE_INSTALL_LIBDIR MATCHES "^/")
|
||||||
set(exec_prefix "\${prefix}")
|
set(_expat_pkgconfig_libdir "${CMAKE_INSTALL_LIBDIR}")
|
||||||
set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
|
else()
|
||||||
set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
|
set(_expat_pkgconfig_libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
|
||||||
configure_file(expat.pc.in ${CMAKE_CURRENT_BINARY_DIR}/expat.pc @ONLY)
|
endif()
|
||||||
expat_install(FILES ${CMAKE_CURRENT_BINARY_DIR}/expat.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
|
||||||
|
if(CMAKE_INSTALL_INCLUDEDIR MATCHES "^/")
|
||||||
|
set(_expat_pkgconfig_includedir "${CMAKE_INSTALL_INCLUDEDIR}")
|
||||||
|
else()
|
||||||
|
set(_expat_pkgconfig_includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set_target_properties(expat PROPERTIES
|
||||||
|
pkgconfig_prefix "${CMAKE_INSTALL_PREFIX}"
|
||||||
|
pkgconfig_exec_prefix "\${prefix}"
|
||||||
|
pkgconfig_libdir "${_expat_pkgconfig_libdir}"
|
||||||
|
pkgconfig_includedir "${_expat_pkgconfig_includedir}"
|
||||||
|
pkgconfig_version "${PACKAGE_VERSION}")
|
||||||
|
|
||||||
|
foreach(_build_type ${CMAKE_BUILD_TYPE} Debug Release RelWithDebInfo MinSizeRel)
|
||||||
|
string(TOLOWER "${_build_type}" _build_type_lower)
|
||||||
|
string(TOUPPER "${_build_type}" _build_type_upper)
|
||||||
|
set_property(TARGET expat PROPERTY "pkgconfig_${_build_type_lower}_name" "expat${EXPAT_${_build_type_upper}_POSTFIX}")
|
||||||
|
set_property(TARGET expat PROPERTY "pkgconfig_${_build_type_lower}_output_name" "${_EXPAT_OUTPUT_NAME}${EXPAT_${_build_type_upper}_POSTFIX}")
|
||||||
|
if(_EXPAT_LIBM_FOUND)
|
||||||
|
set_property(TARGET expat PROPERTY "pkgconfig_libm" "-lm")
|
||||||
|
else()
|
||||||
|
set_property(TARGET expat PROPERTY "pkgconfig_libm" "")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
file(GENERATE
|
||||||
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/expat.pc
|
||||||
|
INPUT ${PROJECT_SOURCE_DIR}/expat.pc.cmake)
|
||||||
|
|
||||||
|
expat_install(FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/expat.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -374,15 +571,18 @@ endif()
|
|||||||
#
|
#
|
||||||
if(EXPAT_BUILD_TOOLS)
|
if(EXPAT_BUILD_TOOLS)
|
||||||
set(xmlwf_SRCS
|
set(xmlwf_SRCS
|
||||||
xmlwf/xmlwf.c
|
|
||||||
xmlwf/xmlfile.c
|
|
||||||
xmlwf/codepage.c
|
xmlwf/codepage.c
|
||||||
xmlwf/readfilemap.c
|
xmlwf/readfilemap.c
|
||||||
|
xmlwf/xmlfile.c
|
||||||
|
xmlwf/xmlwf.c
|
||||||
)
|
)
|
||||||
|
|
||||||
add_executable(xmlwf ${xmlwf_SRCS})
|
add_executable(xmlwf ${xmlwf_SRCS})
|
||||||
set_property(TARGET xmlwf PROPERTY RUNTIME_OUTPUT_DIRECTORY xmlwf)
|
set_property(TARGET xmlwf PROPERTY RUNTIME_OUTPUT_DIRECTORY xmlwf)
|
||||||
target_link_libraries(xmlwf expat)
|
target_link_libraries(xmlwf expat)
|
||||||
|
if(_EXPAT_LIBM_FOUND)
|
||||||
|
target_link_libraries(xmlwf m)
|
||||||
|
endif()
|
||||||
expat_install(TARGETS xmlwf DESTINATION ${CMAKE_INSTALL_BINDIR})
|
expat_install(TARGETS xmlwf DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
|
||||||
if(MINGW AND _EXPAT_UNICODE_WCHAR_T)
|
if(MINGW AND _EXPAT_UNICODE_WCHAR_T)
|
||||||
@ -409,13 +609,11 @@ endif()
|
|||||||
# C code examples
|
# C code examples
|
||||||
#
|
#
|
||||||
if(EXPAT_BUILD_EXAMPLES)
|
if(EXPAT_BUILD_EXAMPLES)
|
||||||
add_executable(elements examples/elements.c)
|
foreach(_target element_declarations elements outline)
|
||||||
set_property(TARGET elements PROPERTY RUNTIME_OUTPUT_DIRECTORY examples)
|
add_executable(${_target} examples/${_target}.c)
|
||||||
target_link_libraries(elements expat)
|
set_property(TARGET ${_target} PROPERTY RUNTIME_OUTPUT_DIRECTORY examples)
|
||||||
|
target_link_libraries(${_target} expat)
|
||||||
add_executable(outline examples/outline.c)
|
endforeach()
|
||||||
set_property(TARGET outline PROPERTY RUNTIME_OUTPUT_DIRECTORY examples)
|
|
||||||
target_link_libraries(outline expat)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -423,16 +621,8 @@ endif()
|
|||||||
#
|
#
|
||||||
if(EXPAT_BUILD_TESTS)
|
if(EXPAT_BUILD_TESTS)
|
||||||
## these are unittests that can be run on any platform
|
## these are unittests that can be run on any platform
|
||||||
enable_language(CXX)
|
|
||||||
enable_testing()
|
enable_testing()
|
||||||
|
|
||||||
set(test_SRCS
|
|
||||||
tests/chardata.c
|
|
||||||
tests/memcheck.c
|
|
||||||
tests/minicheck.c
|
|
||||||
tests/structdata.c
|
|
||||||
)
|
|
||||||
|
|
||||||
if(NOT MSVC)
|
if(NOT MSVC)
|
||||||
if(MINGW)
|
if(MINGW)
|
||||||
set(host whatever-mingw32) # for nothing but run.sh
|
set(host whatever-mingw32) # for nothing but run.sh
|
||||||
@ -448,17 +638,67 @@ if(EXPAT_BUILD_TESTS)
|
|||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
add_executable(runtests tests/runtests.c ${test_SRCS})
|
set(_EXPAT_TEST_TARGETS runtests runtests_cxx)
|
||||||
set_property(TARGET runtests PROPERTY RUNTIME_OUTPUT_DIRECTORY tests)
|
|
||||||
target_link_libraries(runtests expat)
|
|
||||||
expat_add_test(runtests $<TARGET_FILE:runtests>)
|
|
||||||
|
|
||||||
add_executable(runtestspp tests/runtestspp.cpp ${test_SRCS})
|
add_executable(runtests
|
||||||
set_property(TARGET runtestspp PROPERTY RUNTIME_OUTPUT_DIRECTORY tests)
|
tests/acc_tests.c
|
||||||
target_link_libraries(runtestspp expat)
|
tests/alloc_tests.c
|
||||||
expat_add_test(runtestspp $<TARGET_FILE:runtestspp>)
|
tests/basic_tests.c
|
||||||
|
tests/chardata.c
|
||||||
|
tests/common.c
|
||||||
|
tests/dummy.c
|
||||||
|
tests/handlers.c
|
||||||
|
tests/memcheck.c
|
||||||
|
tests/minicheck.c
|
||||||
|
tests/misc_tests.c
|
||||||
|
tests/ns_tests.c
|
||||||
|
tests/nsalloc_tests.c
|
||||||
|
tests/runtests.c
|
||||||
|
tests/structdata.c
|
||||||
|
${_EXPAT_C_SOURCES}
|
||||||
|
)
|
||||||
|
|
||||||
|
add_executable(runtests_cxx
|
||||||
|
tests/acc_tests_cxx.cpp
|
||||||
|
tests/alloc_tests_cxx.cpp
|
||||||
|
tests/basic_tests_cxx.cpp
|
||||||
|
tests/chardata_cxx.cpp
|
||||||
|
tests/common_cxx.cpp
|
||||||
|
tests/dummy_cxx.cpp
|
||||||
|
tests/handlers_cxx.cpp
|
||||||
|
tests/memcheck_cxx.cpp
|
||||||
|
tests/minicheck_cxx.cpp
|
||||||
|
tests/misc_tests_cxx.cpp
|
||||||
|
tests/ns_tests_cxx.cpp
|
||||||
|
tests/nsalloc_tests_cxx.cpp
|
||||||
|
tests/runtests_cxx.cpp
|
||||||
|
tests/structdata_cxx.cpp
|
||||||
|
${_EXPAT_C_SOURCES}
|
||||||
|
)
|
||||||
|
|
||||||
|
foreach(_target ${_EXPAT_TEST_TARGETS})
|
||||||
|
target_compile_definitions(${_target} PRIVATE -DXML_TESTING)
|
||||||
|
|
||||||
|
set_property(TARGET ${_target} PROPERTY RUNTIME_OUTPUT_DIRECTORY tests)
|
||||||
|
expat_add_test(${_target} $<TARGET_FILE:${_target}>)
|
||||||
|
|
||||||
|
if(_EXPAT_LIBM_FOUND)
|
||||||
|
target_link_libraries(${_target} m)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(EXPAT_WITH_LIBBSD)
|
||||||
|
target_link_libraries(${_target} ${LIB_BSD})
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
add_executable(benchmark tests/benchmark/benchmark.c)
|
||||||
|
set_property(TARGET benchmark PROPERTY RUNTIME_OUTPUT_DIRECTORY tests/benchmark)
|
||||||
|
target_link_libraries(benchmark expat)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# Fuzzers
|
||||||
|
#
|
||||||
if(EXPAT_BUILD_FUZZERS)
|
if(EXPAT_BUILD_FUZZERS)
|
||||||
if(NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
|
if(NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
|
||||||
message(SEND_ERROR
|
message(SEND_ERROR
|
||||||
@ -491,7 +731,7 @@ if(EXPAT_BUILD_FUZZERS)
|
|||||||
set(encoding_types UTF-16 UTF-8 ISO-8859-1 US-ASCII UTF-16BE UTF-16LE)
|
set(encoding_types UTF-16 UTF-8 ISO-8859-1 US-ASCII UTF-16BE UTF-16LE)
|
||||||
set(fuzz_targets xml_parse_fuzzer xml_parsebuffer_fuzzer)
|
set(fuzz_targets xml_parse_fuzzer xml_parsebuffer_fuzzer)
|
||||||
|
|
||||||
add_library(fuzzpat STATIC ${expat_SRCS})
|
add_library(fuzzpat STATIC ${_EXPAT_C_SOURCES})
|
||||||
if(NOT EXPAT_OSSFUZZ_BUILD)
|
if(NOT EXPAT_OSSFUZZ_BUILD)
|
||||||
target_compile_options(fuzzpat PRIVATE -fsanitize=fuzzer-no-link)
|
target_compile_options(fuzzpat PRIVATE -fsanitize=fuzzer-no-link)
|
||||||
endif()
|
endif()
|
||||||
@ -526,6 +766,23 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# C/C++ config affecting multiple targets
|
||||||
|
#
|
||||||
|
if(WIN32)
|
||||||
|
set(_EXPAT_STATIC_TARGETS ${_EXPAT_TEST_TARGETS})
|
||||||
|
if(NOT EXPAT_SHARED_LIBS)
|
||||||
|
list(APPEND _EXPAT_STATIC_TARGETS expat)
|
||||||
|
endif()
|
||||||
|
if(EXPAT_BUILD_FUZZERS)
|
||||||
|
list(APPEND _EXPAT_STATIC_TARGETS fuzzpat)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
foreach(_target ${_EXPAT_STATIC_TARGETS})
|
||||||
|
target_compile_definitions(${_target} PUBLIC -DXML_STATIC)
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
|
|
||||||
#
|
#
|
||||||
# Custom target "run-xmltest"
|
# Custom target "run-xmltest"
|
||||||
#
|
#
|
||||||
@ -656,20 +913,31 @@ elseif(EXPAT_CHAR_TYPE STREQUAL "wchar_t")
|
|||||||
else()
|
else()
|
||||||
set(_EXPAT_CHAR_TYPE_SUMMARY "ERROR")
|
set(_EXPAT_CHAR_TYPE_SUMMARY "ERROR")
|
||||||
endif()
|
endif()
|
||||||
string(TOUPPER "${CMAKE_BUILD_TYPE}" _EXPAT_BUILD_TYPE_UPPER)
|
# NOTE: We're not accessing global property GENERATOR_IS_MULTI_CONFIG
|
||||||
|
# because that would require CMake >=3.9
|
||||||
|
if(CMAKE_CONFIGURATION_TYPES)
|
||||||
|
set(_EXPAT_GENERATOR_IS_MULTI_CONFIG TRUE)
|
||||||
|
else()
|
||||||
|
set(_EXPAT_GENERATOR_IS_MULTI_CONFIG FALSE)
|
||||||
|
endif()
|
||||||
|
|
||||||
message(STATUS "===========================================================================")
|
message(STATUS "===========================================================================")
|
||||||
message(STATUS "")
|
message(STATUS "")
|
||||||
message(STATUS "Configuration")
|
message(STATUS "Configuration")
|
||||||
|
message(STATUS " Generator .................. ${CMAKE_GENERATOR}")
|
||||||
|
if(_EXPAT_GENERATOR_IS_MULTI_CONFIG)
|
||||||
|
message(STATUS " Build types ................ ${CMAKE_CONFIGURATION_TYPES}")
|
||||||
|
else()
|
||||||
|
message(STATUS " Build type ................. ${CMAKE_BUILD_TYPE}")
|
||||||
|
endif()
|
||||||
message(STATUS " Prefix ..................... ${CMAKE_INSTALL_PREFIX}")
|
message(STATUS " Prefix ..................... ${CMAKE_INSTALL_PREFIX}")
|
||||||
message(STATUS " Build type ................. ${CMAKE_BUILD_TYPE}")
|
|
||||||
message(STATUS " Shared libraries ........... ${EXPAT_SHARED_LIBS}")
|
message(STATUS " Shared libraries ........... ${EXPAT_SHARED_LIBS}")
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
message(STATUS " Static CRT ................. ${EXPAT_MSVC_STATIC_CRT}")
|
message(STATUS " Static CRT ................. ${EXPAT_MSVC_STATIC_CRT}")
|
||||||
endif()
|
endif()
|
||||||
message(STATUS " Character type ............. ${_EXPAT_CHAR_TYPE_SUMMARY}")
|
message(STATUS " Character type ............. ${_EXPAT_CHAR_TYPE_SUMMARY}")
|
||||||
if(WIN32)
|
if(NOT _EXPAT_GENERATOR_IS_MULTI_CONFIG)
|
||||||
message(STATUS " Binary postfix ............. ${CMAKE_${_EXPAT_BUILD_TYPE_UPPER}_POSTFIX}")
|
message(STATUS " Library name postfix ....... ${EXPAT_${_EXPAT_BUILD_TYPE_UPPER}_POSTFIX}")
|
||||||
endif()
|
endif()
|
||||||
message(STATUS "")
|
message(STATUS "")
|
||||||
message(STATUS " Build documentation ........ ${EXPAT_BUILD_DOCS}")
|
message(STATUS " Build documentation ........ ${EXPAT_BUILD_DOCS}")
|
||||||
@ -685,6 +953,7 @@ message(STATUS " // Advanced options, changes not advised")
|
|||||||
message(STATUS " Attributes info .......... ${EXPAT_ATTR_INFO}")
|
message(STATUS " Attributes info .......... ${EXPAT_ATTR_INFO}")
|
||||||
message(STATUS " Context bytes ............ ${EXPAT_CONTEXT_BYTES}")
|
message(STATUS " Context bytes ............ ${EXPAT_CONTEXT_BYTES}")
|
||||||
message(STATUS " DTD support .............. ${EXPAT_DTD}")
|
message(STATUS " DTD support .............. ${EXPAT_DTD}")
|
||||||
|
message(STATUS " General entities ......... ${EXPAT_GE}")
|
||||||
message(STATUS " Large size ............... ${EXPAT_LARGE_SIZE}")
|
message(STATUS " Large size ............... ${EXPAT_LARGE_SIZE}")
|
||||||
message(STATUS " Minimum size ............. ${EXPAT_MIN_SIZE}")
|
message(STATUS " Minimum size ............. ${EXPAT_MIN_SIZE}")
|
||||||
message(STATUS " Namespace support ........ ${EXPAT_NS}")
|
message(STATUS " Namespace support ........ ${EXPAT_NS}")
|
||||||
|
2
3rdparty/expat/COPYING
vendored
2
3rdparty/expat/COPYING
vendored
@ -1,5 +1,5 @@
|
|||||||
Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
|
Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
|
||||||
Copyright (c) 2001-2019 Expat maintainers
|
Copyright (c) 2001-2022 Expat maintainers
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
a copy of this software and associated documentation files (the
|
a copy of this software and associated documentation files (the
|
||||||
|
744
3rdparty/expat/Changes
vendored
744
3rdparty/expat/Changes
vendored
@ -1,6 +1,742 @@
|
|||||||
NOTE: We are looking for help with a few things:
|
__ __ _
|
||||||
https://github.com/libexpat/libexpat/labels/help%20wanted
|
___\ \/ /_ __ __ _| |_
|
||||||
If you can help, please get in touch. Thanks!
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
!! <blink>Expat is UNDERSTAFFED and WITHOUT FUNDING.</blink> !!
|
||||||
|
!! ~~~~~~~~~~~~ !!
|
||||||
|
!! The following topics need *additional skilled C developers* to progress !!
|
||||||
|
!! in a timely manner or at all (loosely ordered by descending priority): !!
|
||||||
|
!! !!
|
||||||
|
!! - <blink>fixing a complex non-public security issue</blink>, !!
|
||||||
|
!! - teaming up on researching and fixing future security reports and !!
|
||||||
|
!! ClusterFuzz findings with few-days-max response times in communication !!
|
||||||
|
!! in order to (1) have a sound fix ready before the end of a 90 days !!
|
||||||
|
!! grace period and (2) in a sustainable manner, !!
|
||||||
|
!! - implementing and auto-testing XML 1.0r5 support !!
|
||||||
|
!! (needs discussion before pull requests), !!
|
||||||
|
!! - smart ideas on fixing the Autotools CMake files generation issue !!
|
||||||
|
!! without breaking CI (needs discussion before pull requests), !!
|
||||||
|
!! - the Windows binaries topic (needs requirements engineering first), !!
|
||||||
|
!! - pushing migration from `int` to `size_t` further !!
|
||||||
|
!! including edge-cases test coverage (needs discussion before anything). !!
|
||||||
|
!! !!
|
||||||
|
!! For details, please reach out via e-mail to sebastian@pipping.org so we !!
|
||||||
|
!! can schedule a voice call on the topic, in English or German. !!
|
||||||
|
!! !!
|
||||||
|
!! THANK YOU! Sebastian Pipping -- Berlin, 2024-03-09 !!
|
||||||
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
|
Release 2.6.4 Wed November 6 2024
|
||||||
|
Security fixes:
|
||||||
|
#915 CVE-2024-50602 -- Fix crash within function XML_ResumeParser
|
||||||
|
from a NULL pointer dereference by disallowing function
|
||||||
|
XML_StopParser to (stop or) suspend an unstarted parser.
|
||||||
|
A new error code XML_ERROR_NOT_STARTED was introduced to
|
||||||
|
properly communicate this situation. // CWE-476 CWE-754
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#903 CMake: Add alias target "expat::expat"
|
||||||
|
#905 docs: Document use via CMake >=3.18 with FetchContent
|
||||||
|
and SOURCE_SUBDIR and its consequences
|
||||||
|
#902 tests: Reduce use of global parser instance
|
||||||
|
#904 tests: Resolve duplicate handler
|
||||||
|
#317 #918 tests: Improve tests on doctype closing (ex CVE-2019-15903)
|
||||||
|
#914 Fix signedness of format strings
|
||||||
|
#919 #920 Version info bumped from 10:3:9 (libexpat*.so.1.9.3)
|
||||||
|
to 11:0:10 (libexpat*.so.1.10.0); see https://verbump.de/
|
||||||
|
for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#907 CI: Upgrade Clang from 18 to 19
|
||||||
|
#913 CI: Drop macos-12 and add macos-15
|
||||||
|
#910 CI: Adapt to breaking changes in GitHub Actions
|
||||||
|
#898 Add missing entries to .gitignore
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Hanno Böck
|
||||||
|
José Eduardo Gutiérrez Conejo
|
||||||
|
José Ricardo Cardona Quesada
|
||||||
|
|
||||||
|
Release 2.6.3 Wed September 4 2024
|
||||||
|
Security fixes:
|
||||||
|
#887 #890 CVE-2024-45490 -- Calling function XML_ParseBuffer with
|
||||||
|
len < 0 without noticing and then calling XML_GetBuffer
|
||||||
|
will have XML_ParseBuffer fail to recognize the problem
|
||||||
|
and XML_GetBuffer corrupt memory.
|
||||||
|
With the fix, XML_ParseBuffer now complains with error
|
||||||
|
XML_ERROR_INVALID_ARGUMENT just like sibling XML_Parse
|
||||||
|
has been doing since Expat 2.2.1, and now documented.
|
||||||
|
Impact is denial of service to potentially artitrary code
|
||||||
|
execution.
|
||||||
|
#888 #891 CVE-2024-45491 -- Internal function dtdCopy can have an
|
||||||
|
integer overflow for nDefaultAtts on 32-bit platforms
|
||||||
|
(where UINT_MAX equals SIZE_MAX).
|
||||||
|
Impact is denial of service to potentially artitrary code
|
||||||
|
execution.
|
||||||
|
#889 #892 CVE-2024-45492 -- Internal function nextScaffoldPart can
|
||||||
|
have an integer overflow for m_groupSize on 32-bit
|
||||||
|
platforms (where UINT_MAX equals SIZE_MAX).
|
||||||
|
Impact is denial of service to potentially artitrary code
|
||||||
|
execution.
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#851 #879 Autotools: Sync CMake templates with CMake 3.28
|
||||||
|
#853 Autotools: Always provide path to find(1) for portability
|
||||||
|
#861 Autotools: Ensure that the m4 directory always exists.
|
||||||
|
#870 Autotools: Simplify handling of SIZEOF_VOID_P
|
||||||
|
#869 Autotools: Support non-GNU sed
|
||||||
|
#856 Autotools|CMake: Fix main() to main(void)
|
||||||
|
#865 Autotools|CMake: Fix compile tests for HAVE_SYSCALL_GETRANDOM
|
||||||
|
#863 Autotools|CMake: Stop requiring dos2unix
|
||||||
|
#854 #855 CMake: Fix check for symbols size_t and off_t
|
||||||
|
#864 docs|tests: Convert README to Markdown and update
|
||||||
|
#741 Windows: Drop support for Visual Studio <=15.0/2017
|
||||||
|
#886 Drop needless XML_DTD guards around is_param access
|
||||||
|
#885 Fix typo in a code comment
|
||||||
|
#894 #896 Version info bumped from 10:2:9 (libexpat*.so.1.9.2)
|
||||||
|
to 10:3:9 (libexpat*.so.1.9.3); see https://verbump.de/
|
||||||
|
for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#880 Readme: Promote the call for help
|
||||||
|
#868 CI: Fix various issues
|
||||||
|
#849 CI: Allow triggering GitHub Actions workflows manually
|
||||||
|
#851 #872 ..
|
||||||
|
#873 #879 CI: Adapt to breaking changes in GitHub Actions
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Alexander Bluhm
|
||||||
|
Berkay Eren Ürün
|
||||||
|
Dag-Erling Smørgrav
|
||||||
|
Ferenc Géczi
|
||||||
|
TaiYou
|
||||||
|
|
||||||
|
Release 2.6.2 Wed March 13 2024
|
||||||
|
Security fixes:
|
||||||
|
#839 #842 CVE-2024-28757 -- Prevent billion laughs attacks with
|
||||||
|
isolated use of external parsers. Please see the commit
|
||||||
|
message of commit 1d50b80cf31de87750103656f6eb693746854aa8
|
||||||
|
for details.
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#839 #841 Reject direct parameter entity recursion
|
||||||
|
and avoid the related undefined behavior
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#847 Autotools: Fix build for DOCBOOK_TO_MAN containing spaces
|
||||||
|
#837 Add missing #821 and #824 to 2.6.1 change log
|
||||||
|
#838 #843 Version info bumped from 10:1:9 (libexpat*.so.1.9.1)
|
||||||
|
to 10:2:9 (libexpat*.so.1.9.2); see https://verbump.de/
|
||||||
|
for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Philippe Antoine
|
||||||
|
Tomas Korbar
|
||||||
|
and
|
||||||
|
Clang UndefinedBehaviorSanitizer
|
||||||
|
OSS-Fuzz / ClusterFuzz
|
||||||
|
|
||||||
|
Release 2.6.1 Thu February 29 2024
|
||||||
|
Bug fixes:
|
||||||
|
#817 Make tests independent of CPU speed, and thus more robust
|
||||||
|
#828 #836 Expose billion laughs API with XML_DTD defined and
|
||||||
|
XML_GE undefined, regression from 2.6.0
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#829 Hide test-only code behind new internal macro
|
||||||
|
#833 Autotools: Reject expat_config.h.in defining SIZEOF_VOID_P
|
||||||
|
#821 #824 Autotools: Fix "make clean" for case:
|
||||||
|
./configure --without-docbook && make clean all
|
||||||
|
#819 Address compiler warnings
|
||||||
|
#832 #834 Version info bumped from 10:0:9 (libexpat*.so.1.9.0)
|
||||||
|
to 10:1:9 (libexpat*.so.1.9.1); see https://verbump.de/
|
||||||
|
for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#818 CI: Adapt to breaking changes in clang-format
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
David Hall
|
||||||
|
Snild Dolkow
|
||||||
|
|
||||||
|
Release 2.6.0 Tue February 6 2024
|
||||||
|
Security fixes:
|
||||||
|
#789 #814 CVE-2023-52425 -- Fix quadratic runtime issues with big tokens
|
||||||
|
that can cause denial of service, in partial where
|
||||||
|
dealing with compressed XML input. Applications
|
||||||
|
that parsed a document in one go -- a single call to
|
||||||
|
functions XML_Parse or XML_ParseBuffer -- were not affected.
|
||||||
|
The smaller the chunks/buffers you use for parsing
|
||||||
|
previously, the bigger the problem prior to the fix.
|
||||||
|
Backporters should be careful to no omit parts of
|
||||||
|
pull request #789 and to include earlier pull request #771,
|
||||||
|
in order to not break the fix.
|
||||||
|
#777 CVE-2023-52426 -- Fix billion laughs attacks for users
|
||||||
|
compiling *without* XML_DTD defined (which is not common).
|
||||||
|
Users with XML_DTD defined have been protected since
|
||||||
|
Expat >=2.4.0 (and that was CVE-2013-0340 back then).
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#753 Fix parse-size-dependent "invalid token" error for
|
||||||
|
external entities that start with a byte order mark
|
||||||
|
#780 Fix NULL pointer dereference in setContext via
|
||||||
|
XML_ExternalEntityParserCreate for compilation with
|
||||||
|
XML_DTD undefined
|
||||||
|
#812 #813 Protect against closing entities out of order
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#723 Improve support for arc4random/arc4random_buf
|
||||||
|
#771 #788 Improve buffer growth in XML_GetBuffer and XML_Parse
|
||||||
|
#761 #770 xmlwf: Support --help and --version
|
||||||
|
#759 #770 xmlwf: Support custom buffer size for XML_GetBuffer and read
|
||||||
|
#744 xmlwf: Improve language and URL clickability in help output
|
||||||
|
#673 examples: Add new example "element_declarations.c"
|
||||||
|
#764 Be stricter about macro XML_CONTEXT_BYTES at build time
|
||||||
|
#765 Make inclusion to expat_config.h consistent
|
||||||
|
#726 #727 Autotools: configure.ac: Support --disable-maintainer-mode
|
||||||
|
#678 #705 ..
|
||||||
|
#706 #733 #792 Autotools: Sync CMake templates with CMake 3.26
|
||||||
|
#795 Autotools: Make installation of shipped man page doc/xmlwf.1
|
||||||
|
independent of docbook2man availability
|
||||||
|
#815 Autotools|CMake: Add missing -DXML_STATIC to pkg-config file
|
||||||
|
section "Cflags.private" in order to fix compilation
|
||||||
|
against static libexpat using pkg-config on Windows
|
||||||
|
#724 #751 Autotools|CMake: Require a C99 compiler
|
||||||
|
(a de-facto requirement already since Expat 2.2.2 of 2017)
|
||||||
|
#793 Autotools|CMake: Fix PACKAGE_BUGREPORT variable
|
||||||
|
#750 #786 Autotools|CMake: Make test suite require a C++11 compiler
|
||||||
|
#749 CMake: Require CMake >=3.5.0
|
||||||
|
#672 CMake: Lowercase off_t and size_t to help a bug in Meson
|
||||||
|
#746 CMake: Sort xmlwf sources alphabetically
|
||||||
|
#785 CMake|Windows: Fix generation of DLL file version info
|
||||||
|
#790 CMake: Build tests/benchmark/benchmark.c as well for
|
||||||
|
a build with -DEXPAT_BUILD_TESTS=ON
|
||||||
|
#745 #757 docs: Document the importance of isFinal + adjust tests
|
||||||
|
accordingly
|
||||||
|
#736 docs: Improve use of "NULL" and "null"
|
||||||
|
#713 docs: Be specific about version of XML (XML 1.0r4)
|
||||||
|
and version of C (C99); (XML 1.0r5 will need a sponsor.)
|
||||||
|
#762 docs: reference.html: Promote function XML_ParseBuffer more
|
||||||
|
#779 docs: reference.html: Add HTML anchors to XML_* macros
|
||||||
|
#760 docs: reference.html: Upgrade to OK.css 1.2.0
|
||||||
|
#763 #739 docs: Fix typos
|
||||||
|
#696 docs|CI: Use HTTPS URLs instead of HTTP at various places
|
||||||
|
#669 #670 ..
|
||||||
|
#692 #703 ..
|
||||||
|
#733 #772 Address compiler warnings
|
||||||
|
#798 #800 Address clang-tidy warnings
|
||||||
|
#775 #776 Version info bumped from 9:10:8 (libexpat*.so.1.8.10)
|
||||||
|
to 10:0:9 (libexpat*.so.1.9.0); see https://verbump.de/
|
||||||
|
for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#700 #701 docs: Document security policy in file SECURITY.md
|
||||||
|
#766 docs: Improve parse buffer variables in-code documentation
|
||||||
|
#674 #738 ..
|
||||||
|
#740 #747 ..
|
||||||
|
#748 #781 #782 Refactor coverage and conformance tests
|
||||||
|
#714 #716 Refactor debug level variables to unsigned long
|
||||||
|
#671 Improve handling of empty environment variable value
|
||||||
|
in function getDebugLevel (without visible user effect)
|
||||||
|
#755 #774 ..
|
||||||
|
#758 #783 ..
|
||||||
|
#784 #787 tests: Improve test coverage with regard to parse chunk size
|
||||||
|
#660 #797 #801 Fuzzing: Improve fuzzing coverage
|
||||||
|
#367 #799 Fuzzing|CI: Start running OSS-Fuzz fuzzing regression tests
|
||||||
|
#698 #721 CI: Resolve some Travis CI leftovers
|
||||||
|
#669 CI: Be robust towards absence of Git tags
|
||||||
|
#693 #694 CI: Set permissions to "contents: read" for security
|
||||||
|
#709 CI: Pin all GitHub Actions to specific commits for security
|
||||||
|
#739 CI: Reject spelling errors using codespell
|
||||||
|
#798 CI: Enforce clang-tidy clean code
|
||||||
|
#773 #808 ..
|
||||||
|
#809 #810 CI: Upgrade Clang from 15 to 18
|
||||||
|
#796 CI: Start using Clang's Control Flow Integrity sanitizer
|
||||||
|
#675 #720 #722 CI: Adapt to breaking changes in GitHub Actions Ubuntu images
|
||||||
|
#689 CI: Adapt to breaking changes in Clang/LLVM Debian packaging
|
||||||
|
#763 CI: Adapt to breaking changes in codespell
|
||||||
|
#803 CI: Adapt to breaking changes in Cppcheck
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Ivan Galkin
|
||||||
|
Joyce Brum
|
||||||
|
Philippe Antoine
|
||||||
|
Rhodri James
|
||||||
|
Snild Dolkow
|
||||||
|
spookyahell
|
||||||
|
Steven Garske
|
||||||
|
and
|
||||||
|
Clang AddressSanitizer
|
||||||
|
Clang UndefinedBehaviorSanitizer
|
||||||
|
codespell
|
||||||
|
GCC Farm Project
|
||||||
|
OSS-Fuzz
|
||||||
|
Sony Mobile
|
||||||
|
|
||||||
|
Release 2.5.0 Tue October 25 2022
|
||||||
|
Security fixes:
|
||||||
|
#616 #649 #650 CVE-2022-43680 -- Fix heap use-after-free after overeager
|
||||||
|
destruction of a shared DTD in function
|
||||||
|
XML_ExternalEntityParserCreate in out-of-memory situations.
|
||||||
|
Expected impact is denial of service or potentially
|
||||||
|
arbitrary code execution.
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#612 #645 Fix corruption from undefined entities
|
||||||
|
#613 #654 Fix case when parsing was suspended while processing nested
|
||||||
|
entities
|
||||||
|
#616 #652 #653 Stop leaking opening tag bindings after a closing tag
|
||||||
|
mismatch error where a parser is reset through
|
||||||
|
XML_ParserReset and then reused to parse
|
||||||
|
#656 CMake: Fix generation of pkg-config file
|
||||||
|
#658 MinGW|CMake: Fix static library name
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#663 Protect header expat_config.h from multiple inclusion
|
||||||
|
#666 examples: Make use of XML_GetBuffer and be more
|
||||||
|
consistent across examples
|
||||||
|
#648 Address compiler warnings
|
||||||
|
#667 #668 Version info bumped from 9:9:8 to 9:10:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Jann Horn
|
||||||
|
Mark Brand
|
||||||
|
Osyotr
|
||||||
|
Rhodri James
|
||||||
|
and
|
||||||
|
Google Project Zero
|
||||||
|
|
||||||
|
Release 2.4.9 Tue September 20 2022
|
||||||
|
Security fixes:
|
||||||
|
#629 #640 CVE-2022-40674 -- Heap use-after-free vulnerability in
|
||||||
|
function doContent. Expected impact is denial of service
|
||||||
|
or potentially arbitrary code execution.
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#634 MinGW: Fix mis-compilation for -D__USE_MINGW_ANSI_STDIO=0
|
||||||
|
#614 docs: Fix documentation on effect of switch XML_DTD on
|
||||||
|
symbol visibility in doc/reference.html
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#638 MinGW: Make fix-xmltest-log.sh drop more Wine bug output
|
||||||
|
#596 #625 Autotools: Sync CMake templates with CMake 3.22
|
||||||
|
#608 CMake: Migrate from use of CMAKE_*_POSTFIX to
|
||||||
|
dedicated variables EXPAT_*_POSTFIX to stop affecting
|
||||||
|
other projects
|
||||||
|
#597 #599 Windows|CMake: Add missing -DXML_STATIC to test runners
|
||||||
|
and fuzzers
|
||||||
|
#512 #621 Windows|CMake: Render .def file from a template to fix
|
||||||
|
linking with -DEXPAT_DTD=OFF and/or -DEXPAT_ATTR_INFO=ON
|
||||||
|
#611 #621 MinGW|CMake: Apply MSVC .def file when linking
|
||||||
|
#622 #624 MinGW|CMake: Sync library name with GNU Autotools,
|
||||||
|
i.e. produce libexpat-1.dll rather than libexpat.dll
|
||||||
|
by default. Filename libexpat.dll.a is unaffected.
|
||||||
|
#632 MinGW|CMake: Set missing variable CMAKE_RC_COMPILER in
|
||||||
|
toolchain file "cmake/mingw-toolchain.cmake" to avoid
|
||||||
|
error "windres: Command not found" on e.g. Ubuntu 20.04
|
||||||
|
#597 #627 CMake: Unify inconsistent use of set() and option() in
|
||||||
|
context of public build time options to take need for
|
||||||
|
set(.. FORCE) in projects using Expat by means of
|
||||||
|
add_subdirectory(..) off Expat's users' shoulders
|
||||||
|
#626 #641 Stop exporting API symbols when building a static library
|
||||||
|
#644 Resolve use of deprecated "fgrep" by "grep -F"
|
||||||
|
#620 CMake: Make documentation on variables a bit more consistent
|
||||||
|
#636 CMake: Drop leading whitespace from a #cmakedefine line in
|
||||||
|
file expat_config.h.cmake
|
||||||
|
#594 xmlwf: Fix harmless variable mix-up in function nsattcmp
|
||||||
|
#592 #593 #610 Address Cppcheck warnings
|
||||||
|
#643 Address Clang 15 compiler warnings
|
||||||
|
#642 #644 Version info bumped from 9:8:8 to 9:9:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#597 #598 CI: Windows: Start covering MSVC 2022
|
||||||
|
#619 CI: macOS: Migrate off deprecated macOS 10.15
|
||||||
|
#632 CI: Linux: Make migration off deprecated Ubuntu 18.04 work
|
||||||
|
#643 CI: Upgrade Clang from 14 to 15
|
||||||
|
#637 apply-clang-format.sh: Add support for BSD find
|
||||||
|
#633 coverage.sh: Exclude MinGW headers
|
||||||
|
#635 coverage.sh: Fix name collision for -funsigned-char
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
David Faure
|
||||||
|
Felix Wilhelm
|
||||||
|
Frank Bergmann
|
||||||
|
Rhodri James
|
||||||
|
Rosen Penev
|
||||||
|
Thijs Schreijer
|
||||||
|
Vincent Torri
|
||||||
|
and
|
||||||
|
Google Project Zero
|
||||||
|
|
||||||
|
Release 2.4.8 Mon March 28 2022
|
||||||
|
Other changes:
|
||||||
|
#587 pkg-config: Move "-lm" to section "Libs.private"
|
||||||
|
#587 CMake|MSVC: Fix pkg-config section "Libs"
|
||||||
|
#55 #582 CMake|macOS: Start using linker arguments
|
||||||
|
"-compatibility_version <version>" and
|
||||||
|
"-current_version <version>" in a way compatible with
|
||||||
|
GNU Libtool
|
||||||
|
#590 #591 Version info bumped from 9:7:8 to 9:8:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#589 CI: Upgrade Clang from 13 to 14
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
evpobr
|
||||||
|
Kai Pastor
|
||||||
|
Sam James
|
||||||
|
|
||||||
|
Release 2.4.7 Fri March 4 2022
|
||||||
|
Bug fixes:
|
||||||
|
#572 #577 Relax fix to CVE-2022-25236 (introduced with release 2.4.5)
|
||||||
|
with regard to all valid URI characters (RFC 3986),
|
||||||
|
i.e. the following set (excluding whitespace):
|
||||||
|
ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz
|
||||||
|
0123456789 % -._~ :/?#[]@ !$&'()*+,;=
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#555 #570 #581 CMake|Windows: Store Expat version in the DLL
|
||||||
|
#577 Document consequences of namespace separator choices not just
|
||||||
|
in doc/reference.html but also in header <expat.h>
|
||||||
|
#577 Document Expat's lack of validation of namespace URIs against
|
||||||
|
RFC 3986, and that the XML 1.0r4 specification doesn't
|
||||||
|
require Expat to validate namespace URIs, and that Expat
|
||||||
|
may do more in that regard in future releases.
|
||||||
|
If you find need for strict RFC 3986 URI validation on
|
||||||
|
application level today, https://uriparser.github.io/ may
|
||||||
|
be of interest.
|
||||||
|
#579 Fix documentation of XML_EndDoctypeDeclHandler in <expat.h>
|
||||||
|
#575 Document that a call to XML_FreeContentModel can be done at
|
||||||
|
a later time from outside the element declaration handler
|
||||||
|
#574 Make hardcoded namespace URIs easier to find in code
|
||||||
|
#573 Update documentation on use of XML_POOR_ENTOPY on Solaris
|
||||||
|
#569 #571 tests: Resolve use of macros NAN and INFINITY for GNU G++
|
||||||
|
4.8.2 on Solaris.
|
||||||
|
#578 #580 Version info bumped from 9:6:8 to 9:7:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Jeffrey Walton
|
||||||
|
Johnny Jazeix
|
||||||
|
Thijs Schreijer
|
||||||
|
|
||||||
|
Release 2.4.6 Sun February 20 2022
|
||||||
|
Bug fixes:
|
||||||
|
#566 Fix a regression introduced by the fix for CVE-2022-25313
|
||||||
|
in release 2.4.5 that affects applications that (1)
|
||||||
|
call function XML_SetElementDeclHandler and (2) are
|
||||||
|
parsing XML that contains nested element declarations
|
||||||
|
(e.g. "<!ELEMENT junk ((bar|foo|xyz+), zebra*)>").
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#567 #568 Version info bumped from 9:5:8 to 9:6:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Matt Sergeant
|
||||||
|
Samanta Navarro
|
||||||
|
Sergei Trofimovich
|
||||||
|
and
|
||||||
|
NixOS
|
||||||
|
Perl XML::Parser
|
||||||
|
|
||||||
|
Release 2.4.5 Fri February 18 2022
|
||||||
|
Security fixes:
|
||||||
|
#562 CVE-2022-25235 -- Passing malformed 2- and 3-byte UTF-8
|
||||||
|
sequences (e.g. from start tag names) to the XML
|
||||||
|
processing application on top of Expat can cause
|
||||||
|
arbitrary damage (e.g. code execution) depending
|
||||||
|
on how invalid UTF-8 is handled inside the XML
|
||||||
|
processor; validation was not their job but Expat's.
|
||||||
|
Exploits with code execution are known to exist.
|
||||||
|
#561 CVE-2022-25236 -- Passing (one or more) namespace separator
|
||||||
|
characters in "xmlns[:prefix]" attribute values
|
||||||
|
made Expat send malformed tag names to the XML
|
||||||
|
processor on top of Expat which can cause
|
||||||
|
arbitrary damage (e.g. code execution) depending
|
||||||
|
on such unexpectable cases are handled inside the XML
|
||||||
|
processor; validation was not their job but Expat's.
|
||||||
|
Exploits with code execution are known to exist.
|
||||||
|
#558 CVE-2022-25313 -- Fix stack exhaustion in doctype parsing
|
||||||
|
that could be triggered by e.g. a 2 megabytes
|
||||||
|
file with a large number of opening braces.
|
||||||
|
Expected impact is denial of service or potentially
|
||||||
|
arbitrary code execution.
|
||||||
|
#560 CVE-2022-25314 -- Fix integer overflow in function copyString;
|
||||||
|
only affects the encoding name parameter at parser creation
|
||||||
|
time which is often hardcoded (rather than user input),
|
||||||
|
takes a value in the gigabytes to trigger, and a 64-bit
|
||||||
|
machine. Expected impact is denial of service.
|
||||||
|
#559 CVE-2022-25315 -- Fix integer overflow in function storeRawNames;
|
||||||
|
needs input in the gigabytes and a 64-bit machine.
|
||||||
|
Expected impact is denial of service or potentially
|
||||||
|
arbitrary code execution.
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#557 #564 Version info bumped from 9:4:8 to 9:5:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Ivan Fratric
|
||||||
|
Samanta Navarro
|
||||||
|
and
|
||||||
|
Google Project Zero
|
||||||
|
JetBrains
|
||||||
|
|
||||||
|
Release 2.4.4 Sun January 30 2022
|
||||||
|
Security fixes:
|
||||||
|
#550 CVE-2022-23852 -- Fix signed integer overflow
|
||||||
|
(undefined behavior) in function XML_GetBuffer
|
||||||
|
(that is also called by function XML_Parse internally)
|
||||||
|
for when XML_CONTEXT_BYTES is defined to >0 (which is both
|
||||||
|
common and default).
|
||||||
|
Impact is denial of service or more.
|
||||||
|
#551 CVE-2022-23990 -- Fix unsigned integer overflow in function
|
||||||
|
doProlog triggered by large content in element type
|
||||||
|
declarations when there is an element declaration handler
|
||||||
|
present (from a prior call to XML_SetElementDeclHandler).
|
||||||
|
Impact is denial of service or more.
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#544 #545 xmlwf: Fix a memory leak on output file opening error
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#546 Autotools: Fix broken CMake support under Cygwin
|
||||||
|
#554 Windows: Add missing files to the installer to fix
|
||||||
|
compilation with CMake from installed sources
|
||||||
|
#552 #554 Version info bumped from 9:3:8 to 9:4:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Carlo Bramini
|
||||||
|
hwt0415
|
||||||
|
Roland Illig
|
||||||
|
Samanta Navarro
|
||||||
|
and
|
||||||
|
Clang LeakSan and the Clang team
|
||||||
|
|
||||||
|
Release 2.4.3 Sun January 16 2022
|
||||||
|
Security fixes:
|
||||||
|
#531 #534 CVE-2021-45960 -- Fix issues with left shifts by >=29 places
|
||||||
|
resulting in
|
||||||
|
a) realloc acting as free
|
||||||
|
b) realloc allocating too few bytes
|
||||||
|
c) undefined behavior
|
||||||
|
depending on architecture and precise value
|
||||||
|
for XML documents with >=2^27+1 prefixed attributes
|
||||||
|
on a single XML tag a la
|
||||||
|
"<r xmlns:a='[..]' a:a123='[..]' [..] />"
|
||||||
|
where XML_ParserCreateNS is used to create the parser
|
||||||
|
(which needs argument "-n" when running xmlwf).
|
||||||
|
Impact is denial of service, or more.
|
||||||
|
#532 #538 CVE-2021-46143 (ZDI-CAN-16157) -- Fix integer overflow
|
||||||
|
on variable m_groupSize in function doProlog leading
|
||||||
|
to realloc acting as free.
|
||||||
|
Impact is denial of service or more.
|
||||||
|
#539 CVE-2022-22822 to CVE-2022-22827 -- Prevent integer overflows
|
||||||
|
near memory allocation at multiple places. Mitre assigned
|
||||||
|
a dedicated CVE for each involved internal C function:
|
||||||
|
- CVE-2022-22822 for function addBinding
|
||||||
|
- CVE-2022-22823 for function build_model
|
||||||
|
- CVE-2022-22824 for function defineAttribute
|
||||||
|
- CVE-2022-22825 for function lookup
|
||||||
|
- CVE-2022-22826 for function nextScaffoldPart
|
||||||
|
- CVE-2022-22827 for function storeAtts
|
||||||
|
Impact is denial of service or more.
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#535 CMake: Make call to file(GENERATE [..]) work for CMake <3.19
|
||||||
|
#541 Autotools|CMake: MinGW: Make run.sh(.in) work for Cygwin
|
||||||
|
and MSYS2 by not going through Wine on these platforms
|
||||||
|
#527 #528 Address compiler warnings
|
||||||
|
#533 #543 Version info bumped from 9:2:8 to 9:3:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#536 CI: Check for realistic minimum CMake version
|
||||||
|
#529 #539 CI: Cover compilation with -m32
|
||||||
|
#529 CI: Store coverage reports as artifacts for download
|
||||||
|
#528 CI: Upgrade Clang from 11 to 13
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
An anonymous whitehat
|
||||||
|
Christopher Degawa
|
||||||
|
J. Peter Mugaas
|
||||||
|
Tyson Smith
|
||||||
|
and
|
||||||
|
GCC Farm Project
|
||||||
|
Trend Micro Zero Day Initiative
|
||||||
|
|
||||||
|
Release 2.4.2 Sun December 19 2021
|
||||||
|
Other changes:
|
||||||
|
#509 #510 Link againgst libm for function "isnan"
|
||||||
|
#513 #514 Include expat_config.h as early as possible
|
||||||
|
#498 Autotools: Include files with release archives:
|
||||||
|
- buildconf.sh
|
||||||
|
- fuzz/*.c
|
||||||
|
#507 #519 Autotools: Sync CMake templates with CMake 3.20
|
||||||
|
#495 #524 CMake: MinGW: Fix pkg-config section "Libs" for
|
||||||
|
- non-release build types (e.g. -DCMAKE_BUILD_TYPE=Debug)
|
||||||
|
- multi-config CMake generators (e.g. Ninja Multi-Config)
|
||||||
|
#502 #503 docs: Document that function XML_GetBuffer may return NULL
|
||||||
|
when asking for a buffer of 0 (zero) bytes size
|
||||||
|
#522 #523 docs: Fix return value docs for both
|
||||||
|
XML_SetBillionLaughsAttackProtection* functions
|
||||||
|
#525 #526 Version info bumped from 9:1:8 to 9:2:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Donghee Na
|
||||||
|
Joergen Ibsen
|
||||||
|
Kai Pastor
|
||||||
|
|
||||||
|
Release 2.4.1 Sun May 23 2021
|
||||||
|
Bug fixes:
|
||||||
|
#488 #490 Autotools: Fix installed header expat_config.h for multilib
|
||||||
|
systems; regression introduced in 2.4.0 by pull request #486
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#491 #492 Version info bumped from 9:0:8 to 9:1:8;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Gentoo's QA check "multilib_check_headers"
|
||||||
|
|
||||||
|
Release 2.4.0 Sun May 23 2021
|
||||||
|
Security fixes:
|
||||||
|
#34 #466 #484 CVE-2013-0340/CWE-776 -- Protect against billion laughs attacks
|
||||||
|
(denial-of-service; flavors targeting CPU time or RAM or both,
|
||||||
|
leveraging general entities or parameter entities or both)
|
||||||
|
by tracking and limiting the input amplification factor
|
||||||
|
(<amplification> := (<direct> + <indirect>) / <direct>).
|
||||||
|
By conservative default, amplification up to a factor of 100.0
|
||||||
|
is tolerated and rejection only starts after 8 MiB of output bytes
|
||||||
|
(=<direct> + <indirect>) have been processed.
|
||||||
|
The fix adds the following to the API:
|
||||||
|
- A new error code XML_ERROR_AMPLIFICATION_LIMIT_BREACH to
|
||||||
|
signals this specific condition.
|
||||||
|
- Two new API functions ..
|
||||||
|
- XML_SetBillionLaughsAttackProtectionMaximumAmplification and
|
||||||
|
- XML_SetBillionLaughsAttackProtectionActivationThreshold
|
||||||
|
.. to further tighten billion laughs protection parameters
|
||||||
|
when desired. Please see file "doc/reference.html" for details.
|
||||||
|
If you ever need to increase the defaults for non-attack XML
|
||||||
|
payload, please file a bug report with libexpat.
|
||||||
|
- Two new XML_FEATURE_* constants ..
|
||||||
|
- that can be queried using the XML_GetFeatureList function, and
|
||||||
|
- that are shown in "xmlwf -v" output.
|
||||||
|
- Two new environment variable switches ..
|
||||||
|
- EXPAT_ACCOUNTING_DEBUG=(0|1|2|3) and
|
||||||
|
- EXPAT_ENTITY_DEBUG=(0|1)
|
||||||
|
.. for runtime debugging of accounting and entity processing.
|
||||||
|
Specific behavior of these values may change in the future.
|
||||||
|
- Two new command line arguments "-a FACTOR" and "-b BYTES"
|
||||||
|
for xmlwf to further tighten billion laughs protection
|
||||||
|
parameters when desired.
|
||||||
|
If you ever need to increase the defaults for non-attack XML
|
||||||
|
payload, please file a bug report with libexpat.
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#332 #470 For (non-default) compilation with -DEXPAT_MIN_SIZE=ON (CMake)
|
||||||
|
or CPPFLAGS=-DXML_MIN_SIZE (GNU Autotools): Fix segfault
|
||||||
|
for UTF-16 payloads containing CDATA sections.
|
||||||
|
#485 #486 Autotools: Fix generated CMake files for non-64bit and
|
||||||
|
non-Linux platforms (e.g. macOS and MinGW in particular)
|
||||||
|
that were introduced with release 2.3.0
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#468 #469 xmlwf: Improve help output and the xmlwf man page
|
||||||
|
#463 xmlwf: Improve maintainability through some refactoring
|
||||||
|
#477 xmlwf: Fix man page DocBook validity
|
||||||
|
#456 Autotools: Sync CMake templates with CMake 3.18
|
||||||
|
#458 #459 CMake: Support absolute paths for both CMAKE_INSTALL_LIBDIR
|
||||||
|
and CMAKE_INSTALL_INCLUDEDIR
|
||||||
|
#471 #481 CMake: Add support for standard variable BUILD_SHARED_LIBS
|
||||||
|
#457 Unexpose symbol _INTERNAL_trim_to_complete_utf8_characters
|
||||||
|
#467 Resolve macro HAVE_EXPAT_CONFIG_H
|
||||||
|
#472 Delete unused legacy helper file "conftools/PrintPath"
|
||||||
|
#473 #483 Improve attribution
|
||||||
|
#464 #465 #477 doc/reference.html: Fix XHTML validity
|
||||||
|
#475 #478 doc/reference.html: Replace the 90s look by OK.css
|
||||||
|
#479 Version info bumped from 8:0:7 to 9:0:8
|
||||||
|
due to addition of new symbols and error codes;
|
||||||
|
see https://verbump.de/ for what these numbers do
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#456 CI: Enable periodic runs
|
||||||
|
#457 CI: Start covering the list of exported symbols
|
||||||
|
#474 CI: Isolate coverage task
|
||||||
|
#476 #482 CI: Adapt to breaking changes in image "ubuntu-18.04"
|
||||||
|
#477 CI: Cover well-formedness and DocBook/XHTML validity
|
||||||
|
of doc/reference.html and doc/xmlwf.xml
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Dimitry Andric
|
||||||
|
Eero Helenius
|
||||||
|
Nick Wellnhofer
|
||||||
|
Rhodri James
|
||||||
|
Tomas Korbar
|
||||||
|
Yury Gribov
|
||||||
|
and
|
||||||
|
Clang LeakSan
|
||||||
|
JetBrains
|
||||||
|
OSS-Fuzz
|
||||||
|
|
||||||
|
Release 2.3.0 Thu March 25 2021
|
||||||
|
Bug fixes:
|
||||||
|
#438 When calling XML_ParseBuffer without a prior successful call to
|
||||||
|
XML_GetBuffer as a user, no longer trigger undefined behavior
|
||||||
|
(by adding an integer to a NULL pointer) but rather return
|
||||||
|
XML_STATUS_ERROR and set the error code to (new) code
|
||||||
|
XML_ERROR_NO_BUFFER. Found by UBSan (UndefinedBehaviorSanitizer)
|
||||||
|
of Clang 11 (but not Clang 9).
|
||||||
|
#444 xmlwf: Exit status 2 was used for both:
|
||||||
|
- malformed input files (documented) and
|
||||||
|
- invalid command-line arguments (undocumented).
|
||||||
|
The case of invalid command-line arguments now
|
||||||
|
has its own exit status 4, resolving the ambiguity.
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#439 xmlwf: Add argument -k to allow continuing after
|
||||||
|
non-fatal errors
|
||||||
|
#439 xmlwf: Add section about exit status to the -h help output
|
||||||
|
#422 #426 #447 Windows: Drop support for Visual Studio <=14.0/2015
|
||||||
|
#434 Windows: CMake: Detect unsupported Visual Studio at
|
||||||
|
configure time (rather than at compile time)
|
||||||
|
#382 #428 testrunner: Make verbose mode (argument "-v") report
|
||||||
|
about passed tests, and make default mode report about
|
||||||
|
failures, as well.
|
||||||
|
#442 CMake: Call "enable_language(CXX)" prior to tinkering
|
||||||
|
with CMAKE_CXX_* variables
|
||||||
|
#448 Document use of libexpat from a CMake-based project
|
||||||
|
#451 Autotools: Install CMake files as generated by CMake 3.19.6
|
||||||
|
so that users with "find_package(expat [..] CONFIG [..])"
|
||||||
|
are served on distributions that are *not* using the CMake
|
||||||
|
build system inside for libexpat packaging
|
||||||
|
#436 #437 Autotools: Drop obsolescent macro AC_HEADER_STDC
|
||||||
|
#450 #452 Autotools: Resolve use of obsolete macro AC_CONFIG_HEADER
|
||||||
|
#441 Address compiler warnings
|
||||||
|
#443 Version info bumped from 7:12:6 to 8:0:7
|
||||||
|
due to addition of error code XML_ERROR_NO_BUFFER
|
||||||
|
(see https://verbump.de/ for what these numbers do)
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#435 #446 Replace Travis CI by GitHub Actions
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Alexander Richardson
|
||||||
|
Oleksandr Popovych
|
||||||
|
Thomas Beutlich
|
||||||
|
Tim Bray
|
||||||
|
and
|
||||||
|
Clang LeakSan, Clang 11 UBSan and the Clang team
|
||||||
|
|
||||||
Release 2.2.10 Sat October 3 2020
|
Release 2.2.10 Sat October 3 2020
|
||||||
Bug fixes:
|
Bug fixes:
|
||||||
@ -46,7 +782,7 @@ Release 2.2.10 Sat October 3 2020
|
|||||||
#354 #355 ..
|
#354 #355 ..
|
||||||
#356 #412 Address compiler warnings
|
#356 #412 Address compiler warnings
|
||||||
#368 #369 Address pngcheck warnings with doc/*.png images
|
#368 #369 Address pngcheck warnings with doc/*.png images
|
||||||
Version info bumped from 7:11:6 to 7:12:6
|
#425 Version info bumped from 7:11:6 to 7:12:6
|
||||||
|
|
||||||
Special thanks to:
|
Special thanks to:
|
||||||
asavah
|
asavah
|
||||||
|
24
3rdparty/expat/ConfigureChecks.cmake
vendored
24
3rdparty/expat/ConfigureChecks.cmake
vendored
@ -2,6 +2,7 @@ include(CheckCCompilerFlag)
|
|||||||
include(CheckCSourceCompiles)
|
include(CheckCSourceCompiles)
|
||||||
include(CheckIncludeFile)
|
include(CheckIncludeFile)
|
||||||
include(CheckIncludeFiles)
|
include(CheckIncludeFiles)
|
||||||
|
include(CheckLibraryExists)
|
||||||
include(CheckSymbolExists)
|
include(CheckSymbolExists)
|
||||||
include(TestBigEndian)
|
include(TestBigEndian)
|
||||||
|
|
||||||
@ -45,18 +46,25 @@ else(WORDS_BIGENDIAN)
|
|||||||
endif(WORDS_BIGENDIAN)
|
endif(WORDS_BIGENDIAN)
|
||||||
|
|
||||||
if(HAVE_SYS_TYPES_H)
|
if(HAVE_SYS_TYPES_H)
|
||||||
check_symbol_exists("off_t" "sys/types.h" OFF_T)
|
check_c_source_compiles("
|
||||||
check_symbol_exists("size_t" "sys/types.h" SIZE_T)
|
#include <sys/types.h>
|
||||||
else(HAVE_SYS_TYPES_H)
|
int main(void) {
|
||||||
set(OFF_T "long")
|
const off_t offset = -123;
|
||||||
set(SIZE_T "unsigned")
|
return 0;
|
||||||
endif(HAVE_SYS_TYPES_H)
|
}"
|
||||||
|
HAVE_OFF_T)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT HAVE_OFF_T)
|
||||||
|
set(off_t "long")
|
||||||
|
endif()
|
||||||
|
|
||||||
check_c_source_compiles("
|
check_c_source_compiles("
|
||||||
|
#define _GNU_SOURCE
|
||||||
#include <stdlib.h> /* for NULL */
|
#include <stdlib.h> /* for NULL */
|
||||||
#include <unistd.h> /* for syscall */
|
#include <unistd.h> /* for syscall */
|
||||||
#include <sys/syscall.h> /* for SYS_getrandom */
|
#include <sys/syscall.h> /* for SYS_getrandom */
|
||||||
int main() {
|
int main(void) {
|
||||||
syscall(SYS_getrandom, NULL, 0, 0);
|
syscall(SYS_getrandom, NULL, 0, 0);
|
||||||
return 0;
|
return 0;
|
||||||
}"
|
}"
|
||||||
@ -64,3 +72,5 @@ check_c_source_compiles("
|
|||||||
|
|
||||||
check_c_compiler_flag("-fno-strict-aliasing" FLAG_NO_STRICT_ALIASING)
|
check_c_compiler_flag("-fno-strict-aliasing" FLAG_NO_STRICT_ALIASING)
|
||||||
check_c_compiler_flag("-fvisibility=hidden" FLAG_VISIBILITY)
|
check_c_compiler_flag("-fvisibility=hidden" FLAG_VISIBILITY)
|
||||||
|
|
||||||
|
check_library_exists(m cos "" _EXPAT_LIBM_FOUND)
|
||||||
|
41
3rdparty/expat/Makefile.am
vendored
41
3rdparty/expat/Makefile.am
vendored
@ -6,7 +6,12 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2018 KangLin <kl222@126.com>
|
||||||
|
# Copyright (c) 2022 Johnny Jazeix <jazeix@gmail.com>
|
||||||
|
# Copyright (c) 2023 Sony Corporation / Snild Dolkow <snild@sony.com>
|
||||||
|
# Copyright (c) 2024 Alexander Bluhm <alexander.bluhm@gmx.net>
|
||||||
|
# Copyright (c) 2024 Dag-Erling Smørgrav <des@des.dev>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -53,20 +58,36 @@ pkgconfig_DATA = expat.pc
|
|||||||
pkgconfigdir = $(libdir)/pkgconfig
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
|
|
||||||
|
|
||||||
|
dist_cmake_DATA = \
|
||||||
|
cmake/autotools/expat.cmake
|
||||||
|
|
||||||
|
nodist_cmake_DATA = \
|
||||||
|
cmake/autotools/expat-config-version.cmake \
|
||||||
|
cmake/autotools/expat-noconfig.cmake \
|
||||||
|
cmake/expat-config.cmake
|
||||||
|
|
||||||
|
cmakedir = $(libdir)/cmake/expat-@PACKAGE_VERSION@
|
||||||
|
|
||||||
|
|
||||||
_EXTRA_DIST_CMAKE = \
|
_EXTRA_DIST_CMAKE = \
|
||||||
cmake/expat-config.cmake.in \
|
cmake/autotools/expat-noconfig__linux.cmake.in \
|
||||||
|
cmake/autotools/expat-noconfig__macos.cmake.in \
|
||||||
|
cmake/autotools/expat-noconfig__windows.cmake.in \
|
||||||
|
cmake/autotools/expat-package-init.cmake \
|
||||||
cmake/mingw-toolchain.cmake \
|
cmake/mingw-toolchain.cmake \
|
||||||
\
|
\
|
||||||
CMakeLists.txt \
|
CMakeLists.txt \
|
||||||
CMake.README \
|
CMake.README \
|
||||||
ConfigureChecks.cmake \
|
ConfigureChecks.cmake \
|
||||||
|
expat.pc.cmake \
|
||||||
expat_config.h.cmake
|
expat_config.h.cmake
|
||||||
|
|
||||||
_EXTRA_DIST_WINDOWS = \
|
_EXTRA_DIST_WINDOWS = \
|
||||||
win32/build_expat_iss.bat \
|
win32/build_expat_iss.bat \
|
||||||
win32/expat.iss \
|
win32/expat.iss \
|
||||||
win32/MANIFEST.txt \
|
win32/MANIFEST.txt \
|
||||||
win32/README.txt
|
win32/README.txt \
|
||||||
|
win32/version.rc.cmake
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
$(_EXTRA_DIST_CMAKE) \
|
$(_EXTRA_DIST_CMAKE) \
|
||||||
@ -74,11 +95,14 @@ EXTRA_DIST = \
|
|||||||
\
|
\
|
||||||
conftools/expat.m4 \
|
conftools/expat.m4 \
|
||||||
conftools/get-version.sh \
|
conftools/get-version.sh \
|
||||||
conftools/PrintPath \
|
\
|
||||||
|
fuzz/xml_parsebuffer_fuzzer.c \
|
||||||
|
fuzz/xml_parse_fuzzer.c \
|
||||||
\
|
\
|
||||||
xmlwf/xmlwf_helpgen.py \
|
xmlwf/xmlwf_helpgen.py \
|
||||||
xmlwf/xmlwf_helpgen.sh \
|
xmlwf/xmlwf_helpgen.sh \
|
||||||
\
|
\
|
||||||
|
buildconf.sh \
|
||||||
Changes \
|
Changes \
|
||||||
README.md \
|
README.md \
|
||||||
\
|
\
|
||||||
@ -92,10 +116,10 @@ buildlib:
|
|||||||
@echo 'ERROR: is no longer supported. INSTEAD please:' >&2
|
@echo 'ERROR: is no longer supported. INSTEAD please:' >&2
|
||||||
@echo 'ERROR:' >&2
|
@echo 'ERROR:' >&2
|
||||||
@echo 'ERROR: * Mass-patch Makefile.am, e.g.' >&2
|
@echo 'ERROR: * Mass-patch Makefile.am, e.g.' >&2
|
||||||
@echo 'ERROR: # find -name Makefile.am -exec sed \' >&2
|
@echo 'ERROR: # find . -name Makefile.am -exec sed \' >&2
|
||||||
@echo 'ERROR: -e "s,libexpat\.la,libexpatw.la," \' >&2
|
@echo 'ERROR: -e "s,libexpat\.la,libexpatw.la," \' >&2
|
||||||
@echo 'ERROR: -e "s,libexpat_la,libexpatw_la," \' >&2
|
@echo 'ERROR: -e "s,libexpat_la,libexpatw_la," \' >&2
|
||||||
@echo 'ERROR: -i {} +' >&2
|
@echo 'ERROR: -i.bak {} +' >&2
|
||||||
@echo 'ERROR:' >&2
|
@echo 'ERROR:' >&2
|
||||||
@echo 'ERROR: * Run automake to re-generate Makefile.in files' >&2
|
@echo 'ERROR: * Run automake to re-generate Makefile.in files' >&2
|
||||||
@echo 'ERROR:' >&2
|
@echo 'ERROR:' >&2
|
||||||
@ -110,6 +134,11 @@ buildlib:
|
|||||||
run-benchmark:
|
run-benchmark:
|
||||||
$(MAKE) -C tests/benchmark
|
$(MAKE) -C tests/benchmark
|
||||||
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/recset.xml 65535 3
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/recset.xml 65535 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_attr.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_cdata.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_comment.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_tag.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_text.xml 4096 3
|
||||||
|
|
||||||
.PHONY: download-xmlts-zip
|
.PHONY: download-xmlts-zip
|
||||||
download-xmlts-zip:
|
download-xmlts-zip:
|
||||||
|
162
3rdparty/expat/Makefile.in
vendored
162
3rdparty/expat/Makefile.in
vendored
@ -1,7 +1,7 @@
|
|||||||
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -22,7 +22,12 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2018 KangLin <kl222@126.com>
|
||||||
|
# Copyright (c) 2022 Johnny Jazeix <jazeix@gmail.com>
|
||||||
|
# Copyright (c) 2023 Sony Corporation / Snild Dolkow <snild@sony.com>
|
||||||
|
# Copyright (c) 2024 Alexander Bluhm <alexander.bluhm@gmx.net>
|
||||||
|
# Copyright (c) 2024 Dag-Erling Smørgrav <des@des.dev>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -134,16 +139,20 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
|||||||
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx-11.m4 \
|
||||||
$(top_srcdir)/configure.ac
|
$(top_srcdir)/configure.ac
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
$(ACLOCAL_M4)
|
$(ACLOCAL_M4)
|
||||||
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
|
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
|
||||||
$(am__configure_deps) $(am__DIST_COMMON)
|
$(am__configure_deps) $(dist_cmake_DATA) $(am__DIST_COMMON)
|
||||||
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
||||||
configure.lineno config.status.lineno
|
configure.lineno config.status.lineno
|
||||||
mkinstalldirs = $(install_sh) -d
|
mkinstalldirs = $(install_sh) -d
|
||||||
CONFIG_HEADER = expat_config.h
|
CONFIG_HEADER = expat_config.h
|
||||||
CONFIG_CLEAN_FILES = expat.pc run.sh
|
CONFIG_CLEAN_FILES = expat.pc cmake/expat-config.cmake \
|
||||||
|
cmake/autotools/expat-config-version.cmake \
|
||||||
|
cmake/autotools/expat-noconfig.cmake run.sh
|
||||||
CONFIG_CLEAN_VPATH_FILES =
|
CONFIG_CLEAN_VPATH_FILES =
|
||||||
AM_V_P = $(am__v_P_@AM_V@)
|
AM_V_P = $(am__v_P_@AM_V@)
|
||||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||||
@ -199,8 +208,9 @@ am__uninstall_files_from_dir = { \
|
|||||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||||
}
|
}
|
||||||
am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
|
am__installdirs = "$(DESTDIR)$(cmakedir)" "$(DESTDIR)$(cmakedir)" \
|
||||||
DATA = $(pkgconfig_DATA)
|
"$(DESTDIR)$(pkgconfigdir)"
|
||||||
|
DATA = $(dist_cmake_DATA) $(nodist_cmake_DATA) $(pkgconfig_DATA)
|
||||||
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
||||||
distclean-recursive maintainer-clean-recursive
|
distclean-recursive maintainer-clean-recursive
|
||||||
am__recursive_targets = \
|
am__recursive_targets = \
|
||||||
@ -227,18 +237,17 @@ am__define_uniq_tagged_files = \
|
|||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
done | $(am__uniquify_input)`
|
done | $(am__uniquify_input)`
|
||||||
ETAGS = etags
|
|
||||||
CTAGS = ctags
|
|
||||||
CSCOPE = cscope
|
|
||||||
DIST_SUBDIRS = lib examples tests xmlwf doc
|
DIST_SUBDIRS = lib examples tests xmlwf doc
|
||||||
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/expat.pc.in \
|
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/expat.pc.in \
|
||||||
$(srcdir)/expat_config.h.in $(srcdir)/run.sh.in \
|
$(srcdir)/expat_config.h.in $(srcdir)/run.sh.in \
|
||||||
|
$(top_srcdir)/cmake/autotools/expat-config-version.cmake.in \
|
||||||
|
$(top_srcdir)/cmake/expat-config.cmake.in \
|
||||||
$(top_srcdir)/conftools/ar-lib $(top_srcdir)/conftools/compile \
|
$(top_srcdir)/conftools/ar-lib $(top_srcdir)/conftools/compile \
|
||||||
$(top_srcdir)/conftools/config.guess \
|
$(top_srcdir)/conftools/config.guess \
|
||||||
$(top_srcdir)/conftools/config.sub \
|
$(top_srcdir)/conftools/config.sub \
|
||||||
$(top_srcdir)/conftools/install-sh \
|
$(top_srcdir)/conftools/install-sh \
|
||||||
$(top_srcdir)/conftools/ltmain.sh \
|
$(top_srcdir)/conftools/ltmain.sh \
|
||||||
$(top_srcdir)/conftools/missing AUTHORS COPYING \
|
$(top_srcdir)/conftools/missing AUTHORS COPYING README.md \
|
||||||
conftools/ar-lib conftools/compile conftools/config.guess \
|
conftools/ar-lib conftools/compile conftools/config.guess \
|
||||||
conftools/config.sub conftools/depcomp conftools/install-sh \
|
conftools/config.sub conftools/depcomp conftools/install-sh \
|
||||||
conftools/ltmain.sh conftools/missing
|
conftools/ltmain.sh conftools/missing
|
||||||
@ -281,6 +290,8 @@ DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 $(distdir).tar.lz \
|
|||||||
$(distdir).tar.xz
|
$(distdir).tar.xz
|
||||||
GZIP_ENV = --best
|
GZIP_ENV = --best
|
||||||
DIST_TARGETS = dist-lzip dist-xz dist-bzip2 dist-gzip
|
DIST_TARGETS = dist-lzip dist-xz dist-bzip2 dist-gzip
|
||||||
|
# Exists only to be overridden by the user if desired.
|
||||||
|
AM_DISTCHECK_DVI_TARGET = dvi
|
||||||
distuninstallcheck_listfiles = find . -type f -print
|
distuninstallcheck_listfiles = find . -type f -print
|
||||||
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
|
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
|
||||||
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
|
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
|
||||||
@ -301,8 +312,10 @@ AWK = @AWK@
|
|||||||
CC = @CC@
|
CC = @CC@
|
||||||
CCDEPMODE = @CCDEPMODE@
|
CCDEPMODE = @CCDEPMODE@
|
||||||
CFLAGS = @CFLAGS@
|
CFLAGS = @CFLAGS@
|
||||||
CPP = @CPP@
|
CMAKE_SHARED_LIBRARY_PREFIX = @CMAKE_SHARED_LIBRARY_PREFIX@
|
||||||
CPPFLAGS = @CPPFLAGS@
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CSCOPE = @CSCOPE@
|
||||||
|
CTAGS = @CTAGS@
|
||||||
CXX = @CXX@
|
CXX = @CXX@
|
||||||
CXXCPP = @CXXCPP@
|
CXXCPP = @CXXCPP@
|
||||||
CXXDEPMODE = @CXXDEPMODE@
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
@ -318,10 +331,20 @@ ECHO_C = @ECHO_C@
|
|||||||
ECHO_N = @ECHO_N@
|
ECHO_N = @ECHO_N@
|
||||||
ECHO_T = @ECHO_T@
|
ECHO_T = @ECHO_T@
|
||||||
EGREP = @EGREP@
|
EGREP = @EGREP@
|
||||||
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
|
EXPAT_ATTR_INFO = @EXPAT_ATTR_INFO@
|
||||||
|
EXPAT_CHAR_TYPE = @EXPAT_CHAR_TYPE@
|
||||||
|
EXPAT_CONTEXT_BYTES = @EXPAT_CONTEXT_BYTES@
|
||||||
|
EXPAT_DTD = @EXPAT_DTD@
|
||||||
|
EXPAT_LARGE_SIZE = @EXPAT_LARGE_SIZE@
|
||||||
|
EXPAT_MIN_SIZE = @EXPAT_MIN_SIZE@
|
||||||
|
EXPAT_NS = @EXPAT_NS@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
FILEMAP = @FILEMAP@
|
FILEMAP = @FILEMAP@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
|
HAVE_CXX11 = @HAVE_CXX11@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
@ -331,6 +354,8 @@ LD = @LD@
|
|||||||
LDFLAGS = @LDFLAGS@
|
LDFLAGS = @LDFLAGS@
|
||||||
LIBAGE = @LIBAGE@
|
LIBAGE = @LIBAGE@
|
||||||
LIBCURRENT = @LIBCURRENT@
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBDIR_BASENAME = @LIBDIR_BASENAME@
|
||||||
|
LIBM = @LIBM@
|
||||||
LIBOBJS = @LIBOBJS@
|
LIBOBJS = @LIBOBJS@
|
||||||
LIBREVISION = @LIBREVISION@
|
LIBREVISION = @LIBREVISION@
|
||||||
LIBS = @LIBS@
|
LIBS = @LIBS@
|
||||||
@ -339,6 +364,7 @@ LIPO = @LIPO@
|
|||||||
LN_S = @LN_S@
|
LN_S = @LN_S@
|
||||||
LTLIBOBJS = @LTLIBOBJS@
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAINT = @MAINT@
|
||||||
MAKEINFO = @MAKEINFO@
|
MAKEINFO = @MAKEINFO@
|
||||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
MKDIR_P = @MKDIR_P@
|
MKDIR_P = @MKDIR_P@
|
||||||
@ -360,9 +386,12 @@ RANLIB = @RANLIB@
|
|||||||
SED = @SED@
|
SED = @SED@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
SHELL = @SHELL@
|
SHELL = @SHELL@
|
||||||
|
SIZEOF_VOID_P = @SIZEOF_VOID_P@
|
||||||
|
SO_MAJOR = @SO_MAJOR@
|
||||||
|
SO_MINOR = @SO_MINOR@
|
||||||
|
SO_PATCH = @SO_PATCH@
|
||||||
STRIP = @STRIP@
|
STRIP = @STRIP@
|
||||||
VERSION = @VERSION@
|
VERSION = @VERSION@
|
||||||
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
|
||||||
abs_builddir = @abs_builddir@
|
abs_builddir = @abs_builddir@
|
||||||
abs_srcdir = @abs_srcdir@
|
abs_srcdir = @abs_srcdir@
|
||||||
abs_top_builddir = @abs_top_builddir@
|
abs_top_builddir = @abs_top_builddir@
|
||||||
@ -429,20 +458,34 @@ LIBTOOLFLAGS = --verbose
|
|||||||
SUBDIRS = lib $(am__append_1) $(am__append_2) $(am__append_3)
|
SUBDIRS = lib $(am__append_1) $(am__append_2) $(am__append_3)
|
||||||
pkgconfig_DATA = expat.pc
|
pkgconfig_DATA = expat.pc
|
||||||
pkgconfigdir = $(libdir)/pkgconfig
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
|
dist_cmake_DATA = \
|
||||||
|
cmake/autotools/expat.cmake
|
||||||
|
|
||||||
|
nodist_cmake_DATA = \
|
||||||
|
cmake/autotools/expat-config-version.cmake \
|
||||||
|
cmake/autotools/expat-noconfig.cmake \
|
||||||
|
cmake/expat-config.cmake
|
||||||
|
|
||||||
|
cmakedir = $(libdir)/cmake/expat-@PACKAGE_VERSION@
|
||||||
_EXTRA_DIST_CMAKE = \
|
_EXTRA_DIST_CMAKE = \
|
||||||
cmake/expat-config.cmake.in \
|
cmake/autotools/expat-noconfig__linux.cmake.in \
|
||||||
|
cmake/autotools/expat-noconfig__macos.cmake.in \
|
||||||
|
cmake/autotools/expat-noconfig__windows.cmake.in \
|
||||||
|
cmake/autotools/expat-package-init.cmake \
|
||||||
cmake/mingw-toolchain.cmake \
|
cmake/mingw-toolchain.cmake \
|
||||||
\
|
\
|
||||||
CMakeLists.txt \
|
CMakeLists.txt \
|
||||||
CMake.README \
|
CMake.README \
|
||||||
ConfigureChecks.cmake \
|
ConfigureChecks.cmake \
|
||||||
|
expat.pc.cmake \
|
||||||
expat_config.h.cmake
|
expat_config.h.cmake
|
||||||
|
|
||||||
_EXTRA_DIST_WINDOWS = \
|
_EXTRA_DIST_WINDOWS = \
|
||||||
win32/build_expat_iss.bat \
|
win32/build_expat_iss.bat \
|
||||||
win32/expat.iss \
|
win32/expat.iss \
|
||||||
win32/MANIFEST.txt \
|
win32/MANIFEST.txt \
|
||||||
win32/README.txt
|
win32/README.txt \
|
||||||
|
win32/version.rc.cmake
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
$(_EXTRA_DIST_CMAKE) \
|
$(_EXTRA_DIST_CMAKE) \
|
||||||
@ -450,11 +493,14 @@ EXTRA_DIST = \
|
|||||||
\
|
\
|
||||||
conftools/expat.m4 \
|
conftools/expat.m4 \
|
||||||
conftools/get-version.sh \
|
conftools/get-version.sh \
|
||||||
conftools/PrintPath \
|
\
|
||||||
|
fuzz/xml_parsebuffer_fuzzer.c \
|
||||||
|
fuzz/xml_parse_fuzzer.c \
|
||||||
\
|
\
|
||||||
xmlwf/xmlwf_helpgen.py \
|
xmlwf/xmlwf_helpgen.py \
|
||||||
xmlwf/xmlwf_helpgen.sh \
|
xmlwf/xmlwf_helpgen.sh \
|
||||||
\
|
\
|
||||||
|
buildconf.sh \
|
||||||
Changes \
|
Changes \
|
||||||
README.md \
|
README.md \
|
||||||
\
|
\
|
||||||
@ -467,7 +513,7 @@ all: expat_config.h
|
|||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
am--refresh: Makefile
|
am--refresh: Makefile
|
||||||
@:
|
@:
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
@for dep in $?; do \
|
@for dep in $?; do \
|
||||||
case '$(am__configure_deps)' in \
|
case '$(am__configure_deps)' in \
|
||||||
*$$dep*) \
|
*$$dep*) \
|
||||||
@ -493,9 +539,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
$(SHELL) ./config.status --recheck
|
$(SHELL) ./config.status --recheck
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
$(am__cd) $(srcdir) && $(AUTOCONF)
|
$(am__cd) $(srcdir) && $(AUTOCONF)
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||||
$(am__aclocal_m4_deps):
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
@ -506,7 +552,7 @@ expat_config.h: stamp-h1
|
|||||||
stamp-h1: $(srcdir)/expat_config.h.in $(top_builddir)/config.status
|
stamp-h1: $(srcdir)/expat_config.h.in $(top_builddir)/config.status
|
||||||
@rm -f stamp-h1
|
@rm -f stamp-h1
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status expat_config.h
|
cd $(top_builddir) && $(SHELL) ./config.status expat_config.h
|
||||||
$(srcdir)/expat_config.h.in: $(am__configure_deps)
|
$(srcdir)/expat_config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
|
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
|
||||||
rm -f stamp-h1
|
rm -f stamp-h1
|
||||||
touch $@
|
touch $@
|
||||||
@ -515,6 +561,12 @@ distclean-hdr:
|
|||||||
-rm -f expat_config.h stamp-h1
|
-rm -f expat_config.h stamp-h1
|
||||||
expat.pc: $(top_builddir)/config.status $(srcdir)/expat.pc.in
|
expat.pc: $(top_builddir)/config.status $(srcdir)/expat.pc.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||||
|
cmake/expat-config.cmake: $(top_builddir)/config.status $(top_srcdir)/cmake/expat-config.cmake.in
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||||
|
cmake/autotools/expat-config-version.cmake: $(top_builddir)/config.status $(top_srcdir)/cmake/autotools/expat-config-version.cmake.in
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||||
|
cmake/autotools/expat-noconfig.cmake: $(top_builddir)/config.status
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||||
run.sh: $(top_builddir)/config.status $(srcdir)/run.sh.in
|
run.sh: $(top_builddir)/config.status $(srcdir)/run.sh.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||||
|
|
||||||
@ -526,6 +578,48 @@ clean-libtool:
|
|||||||
|
|
||||||
distclean-libtool:
|
distclean-libtool:
|
||||||
-rm -f libtool config.lt
|
-rm -f libtool config.lt
|
||||||
|
install-dist_cmakeDATA: $(dist_cmake_DATA)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
@list='$(dist_cmake_DATA)'; test -n "$(cmakedir)" || list=; \
|
||||||
|
if test -n "$$list"; then \
|
||||||
|
echo " $(MKDIR_P) '$(DESTDIR)$(cmakedir)'"; \
|
||||||
|
$(MKDIR_P) "$(DESTDIR)$(cmakedir)" || exit 1; \
|
||||||
|
fi; \
|
||||||
|
for p in $$list; do \
|
||||||
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||||
|
echo "$$d$$p"; \
|
||||||
|
done | $(am__base_list) | \
|
||||||
|
while read files; do \
|
||||||
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(cmakedir)'"; \
|
||||||
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(cmakedir)" || exit $$?; \
|
||||||
|
done
|
||||||
|
|
||||||
|
uninstall-dist_cmakeDATA:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
@list='$(dist_cmake_DATA)'; test -n "$(cmakedir)" || list=; \
|
||||||
|
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||||
|
dir='$(DESTDIR)$(cmakedir)'; $(am__uninstall_files_from_dir)
|
||||||
|
install-nodist_cmakeDATA: $(nodist_cmake_DATA)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
@list='$(nodist_cmake_DATA)'; test -n "$(cmakedir)" || list=; \
|
||||||
|
if test -n "$$list"; then \
|
||||||
|
echo " $(MKDIR_P) '$(DESTDIR)$(cmakedir)'"; \
|
||||||
|
$(MKDIR_P) "$(DESTDIR)$(cmakedir)" || exit 1; \
|
||||||
|
fi; \
|
||||||
|
for p in $$list; do \
|
||||||
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||||
|
echo "$$d$$p"; \
|
||||||
|
done | $(am__base_list) | \
|
||||||
|
while read files; do \
|
||||||
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(cmakedir)'"; \
|
||||||
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(cmakedir)" || exit $$?; \
|
||||||
|
done
|
||||||
|
|
||||||
|
uninstall-nodist_cmakeDATA:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
@list='$(nodist_cmake_DATA)'; test -n "$(cmakedir)" || list=; \
|
||||||
|
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||||
|
dir='$(DESTDIR)$(cmakedir)'; $(am__uninstall_files_from_dir)
|
||||||
install-pkgconfigDATA: $(pkgconfig_DATA)
|
install-pkgconfigDATA: $(pkgconfig_DATA)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
|
@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
|
||||||
@ -653,7 +747,6 @@ cscopelist-am: $(am__tagged_files)
|
|||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
|
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
|
||||||
|
|
||||||
distdir: $(BUILT_SOURCES)
|
distdir: $(BUILT_SOURCES)
|
||||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
@ -797,7 +890,7 @@ distcheck: dist
|
|||||||
$(DISTCHECK_CONFIGURE_FLAGS) \
|
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||||||
--srcdir=../.. --prefix="$$dc_install_base" \
|
--srcdir=../.. --prefix="$$dc_install_base" \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) \
|
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
&& $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
||||||
@ -853,7 +946,7 @@ check: check-recursive
|
|||||||
all-am: Makefile $(DATA) expat_config.h
|
all-am: Makefile $(DATA) expat_config.h
|
||||||
installdirs: installdirs-recursive
|
installdirs: installdirs-recursive
|
||||||
installdirs-am:
|
installdirs-am:
|
||||||
for dir in "$(DESTDIR)$(pkgconfigdir)"; do \
|
for dir in "$(DESTDIR)$(cmakedir)" "$(DESTDIR)$(cmakedir)" "$(DESTDIR)$(pkgconfigdir)"; do \
|
||||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||||
done
|
done
|
||||||
install: install-recursive
|
install: install-recursive
|
||||||
@ -908,7 +1001,8 @@ info: info-recursive
|
|||||||
|
|
||||||
info-am:
|
info-am:
|
||||||
|
|
||||||
install-data-am: install-pkgconfigDATA
|
install-data-am: install-dist_cmakeDATA install-nodist_cmakeDATA \
|
||||||
|
install-pkgconfigDATA
|
||||||
|
|
||||||
install-dvi: install-dvi-recursive
|
install-dvi: install-dvi-recursive
|
||||||
|
|
||||||
@ -954,7 +1048,8 @@ ps: ps-recursive
|
|||||||
|
|
||||||
ps-am:
|
ps-am:
|
||||||
|
|
||||||
uninstall-am: uninstall-pkgconfigDATA
|
uninstall-am: uninstall-dist_cmakeDATA uninstall-nodist_cmakeDATA \
|
||||||
|
uninstall-pkgconfigDATA
|
||||||
|
|
||||||
.MAKE: $(am__recursive_targets) all install-am install-strip
|
.MAKE: $(am__recursive_targets) all install-am install-strip
|
||||||
|
|
||||||
@ -966,14 +1061,16 @@ uninstall-am: uninstall-pkgconfigDATA
|
|||||||
distclean-generic distclean-hdr distclean-libtool \
|
distclean-generic distclean-hdr distclean-libtool \
|
||||||
distclean-tags distcleancheck distdir distuninstallcheck dvi \
|
distclean-tags distcleancheck distdir distuninstallcheck dvi \
|
||||||
dvi-am html html-am info info-am install install-am \
|
dvi-am html html-am info info-am install install-am \
|
||||||
install-data install-data-am install-dvi install-dvi-am \
|
install-data install-data-am install-dist_cmakeDATA \
|
||||||
install-exec install-exec-am install-html install-html-am \
|
install-dvi install-dvi-am install-exec install-exec-am \
|
||||||
install-info install-info-am install-man install-pdf \
|
install-html install-html-am install-info install-info-am \
|
||||||
|
install-man install-nodist_cmakeDATA install-pdf \
|
||||||
install-pdf-am install-pkgconfigDATA install-ps install-ps-am \
|
install-pdf-am install-pkgconfigDATA install-ps install-ps-am \
|
||||||
install-strip installcheck installcheck-am installdirs \
|
install-strip installcheck installcheck-am installdirs \
|
||||||
installdirs-am maintainer-clean maintainer-clean-generic \
|
installdirs-am maintainer-clean maintainer-clean-generic \
|
||||||
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
||||||
ps ps-am tags tags-am uninstall uninstall-am \
|
ps ps-am tags tags-am uninstall uninstall-am \
|
||||||
|
uninstall-dist_cmakeDATA uninstall-nodist_cmakeDATA \
|
||||||
uninstall-pkgconfigDATA
|
uninstall-pkgconfigDATA
|
||||||
|
|
||||||
.PRECIOUS: Makefile
|
.PRECIOUS: Makefile
|
||||||
@ -985,10 +1082,10 @@ buildlib:
|
|||||||
@echo 'ERROR: is no longer supported. INSTEAD please:' >&2
|
@echo 'ERROR: is no longer supported. INSTEAD please:' >&2
|
||||||
@echo 'ERROR:' >&2
|
@echo 'ERROR:' >&2
|
||||||
@echo 'ERROR: * Mass-patch Makefile.am, e.g.' >&2
|
@echo 'ERROR: * Mass-patch Makefile.am, e.g.' >&2
|
||||||
@echo 'ERROR: # find -name Makefile.am -exec sed \' >&2
|
@echo 'ERROR: # find . -name Makefile.am -exec sed \' >&2
|
||||||
@echo 'ERROR: -e "s,libexpat\.la,libexpatw.la," \' >&2
|
@echo 'ERROR: -e "s,libexpat\.la,libexpatw.la," \' >&2
|
||||||
@echo 'ERROR: -e "s,libexpat_la,libexpatw_la," \' >&2
|
@echo 'ERROR: -e "s,libexpat_la,libexpatw_la," \' >&2
|
||||||
@echo 'ERROR: -i {} +' >&2
|
@echo 'ERROR: -i.bak {} +' >&2
|
||||||
@echo 'ERROR:' >&2
|
@echo 'ERROR:' >&2
|
||||||
@echo 'ERROR: * Run automake to re-generate Makefile.in files' >&2
|
@echo 'ERROR: * Run automake to re-generate Makefile.in files' >&2
|
||||||
@echo 'ERROR:' >&2
|
@echo 'ERROR:' >&2
|
||||||
@ -1002,6 +1099,11 @@ buildlib:
|
|||||||
run-benchmark:
|
run-benchmark:
|
||||||
$(MAKE) -C tests/benchmark
|
$(MAKE) -C tests/benchmark
|
||||||
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/recset.xml 65535 3
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/recset.xml 65535 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_attr.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_cdata.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_comment.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_tag.xml 4096 3
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/aaaaaa_text.xml 4096 3
|
||||||
|
|
||||||
.PHONY: download-xmlts-zip
|
.PHONY: download-xmlts-zip
|
||||||
download-xmlts-zip:
|
download-xmlts-zip:
|
||||||
|
161
3rdparty/expat/README.md
vendored
161
3rdparty/expat/README.md
vendored
@ -1,12 +1,21 @@
|
|||||||
[](https://travis-ci.org/libexpat/libexpat)
|
[](https://github.com/libexpat/libexpat/actions/workflows/linux.yml)
|
||||||
[](https://ci.appveyor.com/project/libexpat/libexpat)
|
[](https://ci.appveyor.com/project/libexpat/libexpat)
|
||||||
[](https://repology.org/metapackage/expat/versions)
|
[](https://repology.org/metapackage/expat/versions)
|
||||||
|
[](https://sourceforge.net/projects/expat/files/)
|
||||||
|
[](https://github.com/libexpat/libexpat/releases)
|
||||||
|
|
||||||
|
> [!CAUTION]
|
||||||
|
>
|
||||||
|
> Expat is **understaffed** and without funding.
|
||||||
|
> There is a [call for help with details](https://github.com/libexpat/libexpat/blob/master/expat/Changes)
|
||||||
|
> at the top of the `Changes` file.
|
||||||
|
|
||||||
|
|
||||||
# Expat, Release 2.2.10
|
# Expat, Release 2.6.4
|
||||||
|
|
||||||
This is Expat, a C library for parsing XML, started by
|
This is Expat, a C99 library for parsing
|
||||||
[James Clark](https://en.wikipedia.org/wiki/James_Clark_(programmer)) in 1997.
|
[XML 1.0 Fourth Edition](https://www.w3.org/TR/2006/REC-xml-20060816/), started by
|
||||||
|
[James Clark](https://en.wikipedia.org/wiki/James_Clark_%28programmer%29) in 1997.
|
||||||
Expat is a stream-oriented XML parser. This means that you register
|
Expat is a stream-oriented XML parser. This means that you register
|
||||||
handlers with the parser before starting the parse. These handlers
|
handlers with the parser before starting the parse. These handlers
|
||||||
are called when the parser discovers the associated structures in the
|
are called when the parser discovers the associated structures in the
|
||||||
@ -14,13 +23,14 @@ document being parsed. A start tag is an example of the kind of
|
|||||||
structures for which you may register handlers.
|
structures for which you may register handlers.
|
||||||
|
|
||||||
Expat supports the following compilers:
|
Expat supports the following compilers:
|
||||||
|
|
||||||
- GNU GCC >=4.5
|
- GNU GCC >=4.5
|
||||||
- LLVM Clang >=3.5
|
- LLVM Clang >=3.5
|
||||||
- Microsoft Visual Studio >=9.0/2008
|
- Microsoft Visual Studio >=16.0/2019 (rolling `${today} minus 5 years`)
|
||||||
|
|
||||||
Windows users can use the
|
Windows users can use the
|
||||||
[`expat_win32` package](https://sourceforge.net/projects/expat/files/expat_win32/),
|
[`expat-win32bin-*.*.*.{exe,zip}` download](https://github.com/libexpat/libexpat/releases),
|
||||||
which includes both precompiled libraries and executables, and source code for
|
which includes both pre-compiled libraries and executables, and source code for
|
||||||
developers.
|
developers.
|
||||||
|
|
||||||
Expat is [free software](https://www.gnu.org/philosophy/free-sw.en.html).
|
Expat is [free software](https://www.gnu.org/philosophy/free-sw.en.html).
|
||||||
@ -30,6 +40,106 @@ contained in the file
|
|||||||
distributed with this package.
|
distributed with this package.
|
||||||
This license is the same as the MIT/X Consortium license.
|
This license is the same as the MIT/X Consortium license.
|
||||||
|
|
||||||
|
|
||||||
|
## Using libexpat in your CMake-Based Project
|
||||||
|
|
||||||
|
There are three documented ways of using libexpat with CMake:
|
||||||
|
|
||||||
|
### a) `find_package` with Module Mode
|
||||||
|
|
||||||
|
This approach leverages CMake's own [module `FindEXPAT`](https://cmake.org/cmake/help/latest/module/FindEXPAT.html).
|
||||||
|
|
||||||
|
Notice the *uppercase* `EXPAT` in the following example:
|
||||||
|
|
||||||
|
```cmake
|
||||||
|
cmake_minimum_required(VERSION 3.0) # or 3.10, see below
|
||||||
|
|
||||||
|
project(hello VERSION 1.0.0)
|
||||||
|
|
||||||
|
find_package(EXPAT 2.2.8 MODULE REQUIRED)
|
||||||
|
|
||||||
|
add_executable(hello
|
||||||
|
hello.c
|
||||||
|
)
|
||||||
|
|
||||||
|
# a) for CMake >=3.10 (see CMake's FindEXPAT docs)
|
||||||
|
target_link_libraries(hello PUBLIC EXPAT::EXPAT)
|
||||||
|
|
||||||
|
# b) for CMake >=3.0
|
||||||
|
target_include_directories(hello PRIVATE ${EXPAT_INCLUDE_DIRS})
|
||||||
|
target_link_libraries(hello PUBLIC ${EXPAT_LIBRARIES})
|
||||||
|
```
|
||||||
|
|
||||||
|
### b) `find_package` with Config Mode
|
||||||
|
|
||||||
|
This approach requires files from…
|
||||||
|
|
||||||
|
- libexpat >=2.2.8 where packaging uses the CMake build system
|
||||||
|
or
|
||||||
|
- libexpat >=2.3.0 where packaging uses the GNU Autotools build system
|
||||||
|
on Linux
|
||||||
|
or
|
||||||
|
- libexpat >=2.4.0 where packaging uses the GNU Autotools build system
|
||||||
|
on macOS or MinGW.
|
||||||
|
|
||||||
|
Notice the *lowercase* `expat` in the following example:
|
||||||
|
|
||||||
|
```cmake
|
||||||
|
cmake_minimum_required(VERSION 3.0)
|
||||||
|
|
||||||
|
project(hello VERSION 1.0.0)
|
||||||
|
|
||||||
|
find_package(expat 2.2.8 CONFIG REQUIRED char dtd ns)
|
||||||
|
|
||||||
|
add_executable(hello
|
||||||
|
hello.c
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(hello PUBLIC expat::expat)
|
||||||
|
```
|
||||||
|
|
||||||
|
### c) The `FetchContent` module
|
||||||
|
|
||||||
|
This approach — as demonstrated below — requires CMake >=3.18 for both the
|
||||||
|
[`FetchContent` module](https://cmake.org/cmake/help/latest/module/FetchContent.html)
|
||||||
|
and its support for the `SOURCE_SUBDIR` option to be available.
|
||||||
|
|
||||||
|
Please note that:
|
||||||
|
- Use of the `FetchContent` module with *non-release* SHA1s or `master`
|
||||||
|
of libexpat is neither advised nor considered officially supported.
|
||||||
|
- Pinning to a specific commit is great for robust CI.
|
||||||
|
- Pinning to a specific commit needs updating every time there is a new
|
||||||
|
release of libexpat — either manually or through automation —,
|
||||||
|
to not miss out on libexpat security updates.
|
||||||
|
|
||||||
|
For an example that pulls in libexpat via Git:
|
||||||
|
|
||||||
|
```cmake
|
||||||
|
cmake_minimum_required(VERSION 3.18)
|
||||||
|
|
||||||
|
include(FetchContent)
|
||||||
|
|
||||||
|
project(hello VERSION 1.0.0)
|
||||||
|
|
||||||
|
FetchContent_Declare(
|
||||||
|
expat
|
||||||
|
GIT_REPOSITORY https://github.com/libexpat/libexpat/
|
||||||
|
GIT_TAG 000000000_GIT_COMMIT_SHA1_HERE_000000000 # i.e. Git tag R_0_Y_Z
|
||||||
|
SOURCE_SUBDIR expat/
|
||||||
|
)
|
||||||
|
|
||||||
|
FetchContent_MakeAvailable(expat)
|
||||||
|
|
||||||
|
add_executable(hello
|
||||||
|
hello.c
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(hello PUBLIC expat)
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Building from a Git Clone
|
||||||
|
|
||||||
If you are building Expat from a check-out from the
|
If you are building Expat from a check-out from the
|
||||||
[Git repository](https://github.com/libexpat/libexpat/),
|
[Git repository](https://github.com/libexpat/libexpat/),
|
||||||
you need to run a script that generates the configure script using the
|
you need to run a script that generates the configure script using the
|
||||||
@ -43,6 +153,11 @@ autoconf 2.58 or newer. Run the script like this:
|
|||||||
Once this has been done, follow the same instructions as for building
|
Once this has been done, follow the same instructions as for building
|
||||||
from a source distribution.
|
from a source distribution.
|
||||||
|
|
||||||
|
|
||||||
|
## Building from a Source Distribution
|
||||||
|
|
||||||
|
### a) Building with the configure script (i.e. GNU Autotools)
|
||||||
|
|
||||||
To build Expat from a source distribution, you first run the
|
To build Expat from a source distribution, you first run the
|
||||||
configuration shell script in the top level distribution directory:
|
configuration shell script in the top level distribution directory:
|
||||||
|
|
||||||
@ -88,10 +203,10 @@ support this mode of compilation (yet):
|
|||||||
|
|
||||||
1. Mass-patch `Makefile.am` files to use `libexpatw.la` for a library name:
|
1. Mass-patch `Makefile.am` files to use `libexpatw.la` for a library name:
|
||||||
<br/>
|
<br/>
|
||||||
`find -name Makefile.am -exec sed
|
`find . -name Makefile.am -exec sed
|
||||||
-e 's,libexpat\.la,libexpatw.la,'
|
-e 's,libexpat\.la,libexpatw.la,'
|
||||||
-e 's,libexpat_la,libexpatw_la,'
|
-e 's,libexpat_la,libexpatw_la,'
|
||||||
-i {} +`
|
-i.bak {} +`
|
||||||
|
|
||||||
1. Run `automake` to re-write `Makefile.in` files:<br/>
|
1. Run `automake` to re-write `Makefile.in` files:<br/>
|
||||||
`automake`
|
`automake`
|
||||||
@ -132,8 +247,14 @@ A reference manual is available in the file `doc/reference.html` in this
|
|||||||
distribution.
|
distribution.
|
||||||
|
|
||||||
|
|
||||||
The CMake build system is still *experimental* and will replace the primary
|
### b) Building with CMake
|
||||||
|
|
||||||
|
The CMake build system is still *experimental* and may replace the primary
|
||||||
build system based on GNU Autotools at some point when it is ready.
|
build system based on GNU Autotools at some point when it is ready.
|
||||||
|
|
||||||
|
|
||||||
|
#### Available Options
|
||||||
|
|
||||||
For an idea of the available (non-advanced) options for building with CMake:
|
For an idea of the available (non-advanced) options for building with CMake:
|
||||||
|
|
||||||
```console
|
```console
|
||||||
@ -147,37 +268,37 @@ CMAKE_INSTALL_PREFIX:PATH=/usr/local
|
|||||||
// Path to a program.
|
// Path to a program.
|
||||||
DOCBOOK_TO_MAN:FILEPATH=/usr/bin/docbook2x-man
|
DOCBOOK_TO_MAN:FILEPATH=/usr/bin/docbook2x-man
|
||||||
|
|
||||||
// build man page for xmlwf
|
// Build man page for xmlwf
|
||||||
EXPAT_BUILD_DOCS:BOOL=ON
|
EXPAT_BUILD_DOCS:BOOL=ON
|
||||||
|
|
||||||
// build the examples for expat library
|
// Build the examples for expat library
|
||||||
EXPAT_BUILD_EXAMPLES:BOOL=ON
|
EXPAT_BUILD_EXAMPLES:BOOL=ON
|
||||||
|
|
||||||
// build fuzzers for the expat library
|
// Build fuzzers for the expat library
|
||||||
EXPAT_BUILD_FUZZERS:BOOL=OFF
|
EXPAT_BUILD_FUZZERS:BOOL=OFF
|
||||||
|
|
||||||
// build pkg-config file
|
// Build pkg-config file
|
||||||
EXPAT_BUILD_PKGCONFIG:BOOL=ON
|
EXPAT_BUILD_PKGCONFIG:BOOL=ON
|
||||||
|
|
||||||
// build the tests for expat library
|
// Build the tests for expat library
|
||||||
EXPAT_BUILD_TESTS:BOOL=ON
|
EXPAT_BUILD_TESTS:BOOL=ON
|
||||||
|
|
||||||
// build the xmlwf tool for expat library
|
// Build the xmlwf tool for expat library
|
||||||
EXPAT_BUILD_TOOLS:BOOL=ON
|
EXPAT_BUILD_TOOLS:BOOL=ON
|
||||||
|
|
||||||
// Character type to use (char|ushort|wchar_t) [default=char]
|
// Character type to use (char|ushort|wchar_t) [default=char]
|
||||||
EXPAT_CHAR_TYPE:STRING=char
|
EXPAT_CHAR_TYPE:STRING=char
|
||||||
|
|
||||||
// install expat files in cmake install target
|
// Install expat files in cmake install target
|
||||||
EXPAT_ENABLE_INSTALL:BOOL=ON
|
EXPAT_ENABLE_INSTALL:BOOL=ON
|
||||||
|
|
||||||
// Use /MT flag (static CRT) when compiling in MSVC
|
// Use /MT flag (static CRT) when compiling in MSVC
|
||||||
EXPAT_MSVC_STATIC_CRT:BOOL=OFF
|
EXPAT_MSVC_STATIC_CRT:BOOL=OFF
|
||||||
|
|
||||||
// build fuzzers via ossfuzz for the expat library
|
// Build fuzzers via ossfuzz for the expat library
|
||||||
EXPAT_OSSFUZZ_BUILD:BOOL=OFF
|
EXPAT_OSSFUZZ_BUILD:BOOL=OFF
|
||||||
|
|
||||||
// build a shared expat library
|
// Build a shared expat library
|
||||||
EXPAT_SHARED_LIBS:BOOL=ON
|
EXPAT_SHARED_LIBS:BOOL=ON
|
||||||
|
|
||||||
// Treat all compiler warnings as errors
|
// Treat all compiler warnings as errors
|
||||||
@ -186,7 +307,7 @@ EXPAT_WARNINGS_AS_ERRORS:BOOL=OFF
|
|||||||
// Make use of getrandom function (ON|OFF|AUTO) [default=AUTO]
|
// Make use of getrandom function (ON|OFF|AUTO) [default=AUTO]
|
||||||
EXPAT_WITH_GETRANDOM:STRING=AUTO
|
EXPAT_WITH_GETRANDOM:STRING=AUTO
|
||||||
|
|
||||||
// utilize libbsd (for arc4random_buf)
|
// Utilize libbsd (for arc4random_buf)
|
||||||
EXPAT_WITH_LIBBSD:BOOL=OFF
|
EXPAT_WITH_LIBBSD:BOOL=OFF
|
||||||
|
|
||||||
// Make use of syscall SYS_getrandom (ON|OFF|AUTO) [default=AUTO]
|
// Make use of syscall SYS_getrandom (ON|OFF|AUTO) [default=AUTO]
|
||||||
|
2
3rdparty/expat/acinclude.m4
vendored
2
3rdparty/expat/acinclude.m4
vendored
@ -8,5 +8,7 @@ m4_include(conftools/ax-append-flag.m4)
|
|||||||
m4_include(conftools/ax-append-compile-flags.m4)
|
m4_include(conftools/ax-append-compile-flags.m4)
|
||||||
m4_include(conftools/ax-append-link-flags.m4)
|
m4_include(conftools/ax-append-link-flags.m4)
|
||||||
m4_include(conftools/expatcfg-compiler-supports-visibility.m4)
|
m4_include(conftools/expatcfg-compiler-supports-visibility.m4)
|
||||||
|
m4_include(conftools/ax-cxx-compile-stdcxx.m4)
|
||||||
|
m4_include(conftools/ax-cxx-compile-stdcxx-11.m4)
|
||||||
|
|
||||||
### end of file
|
### end of file
|
||||||
|
113
3rdparty/expat/aclocal.m4
vendored
113
3rdparty/expat/aclocal.m4
vendored
@ -1,6 +1,6 @@
|
|||||||
# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
|
# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -14,13 +14,13 @@
|
|||||||
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
|
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
|
||||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||||
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
|
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
|
||||||
[m4_warning([this file was generated for autoconf 2.69.
|
[m4_warning([this file was generated for autoconf 2.71.
|
||||||
You have another version of autoconf. It may work, but is not guaranteed to.
|
You have another version of autoconf. It may work, but is not guaranteed to.
|
||||||
If you have problems, you may need to regenerate the build system entirely.
|
If you have problems, you may need to regenerate the build system entirely.
|
||||||
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
|
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
|
||||||
|
|
||||||
# Copyright (C) 2002-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -35,7 +35,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION],
|
|||||||
[am__api_version='1.16'
|
[am__api_version='1.16'
|
||||||
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
|
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
|
||||||
dnl require some minimum version. Point them to the right macro.
|
dnl require some minimum version. Point them to the right macro.
|
||||||
m4_if([$1], [1.16.2], [],
|
m4_if([$1], [1.16.5], [],
|
||||||
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
|
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
|
||||||
])
|
])
|
||||||
|
|
||||||
@ -51,12 +51,12 @@ m4_define([_AM_AUTOCONF_VERSION], [])
|
|||||||
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
|
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
|
||||||
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
|
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
|
||||||
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
|
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
|
||||||
[AM_AUTOMAKE_VERSION([1.16.2])dnl
|
[AM_AUTOMAKE_VERSION([1.16.5])dnl
|
||||||
m4_ifndef([AC_AUTOCONF_VERSION],
|
m4_ifndef([AC_AUTOCONF_VERSION],
|
||||||
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
|
||||||
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
|
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
|
||||||
|
|
||||||
# Copyright (C) 2011-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2011-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -118,7 +118,7 @@ AC_SUBST([AR])dnl
|
|||||||
|
|
||||||
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
|
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -170,7 +170,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
|
|||||||
|
|
||||||
# AM_CONDITIONAL -*- Autoconf -*-
|
# AM_CONDITIONAL -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 1997-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1997-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -201,7 +201,7 @@ AC_CONFIG_COMMANDS_PRE(
|
|||||||
Usually this means the macro was only invoked conditionally.]])
|
Usually this means the macro was only invoked conditionally.]])
|
||||||
fi])])
|
fi])])
|
||||||
|
|
||||||
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -392,7 +392,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
|
|||||||
|
|
||||||
# Generate code to set up dependency tracking. -*- Autoconf -*-
|
# Generate code to set up dependency tracking. -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -460,7 +460,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
|
|||||||
|
|
||||||
# Do all the work for Automake. -*- Autoconf -*-
|
# Do all the work for Automake. -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -488,6 +488,10 @@ m4_defn([AC_PROG_CC])
|
|||||||
# release and drop the old call support.
|
# release and drop the old call support.
|
||||||
AC_DEFUN([AM_INIT_AUTOMAKE],
|
AC_DEFUN([AM_INIT_AUTOMAKE],
|
||||||
[AC_PREREQ([2.65])dnl
|
[AC_PREREQ([2.65])dnl
|
||||||
|
m4_ifdef([_$0_ALREADY_INIT],
|
||||||
|
[m4_fatal([$0 expanded multiple times
|
||||||
|
]m4_defn([_$0_ALREADY_INIT]))],
|
||||||
|
[m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl
|
||||||
dnl Autoconf wants to disallow AM_ names. We explicitly allow
|
dnl Autoconf wants to disallow AM_ names. We explicitly allow
|
||||||
dnl the ones we care about.
|
dnl the ones we care about.
|
||||||
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
|
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
|
||||||
@ -524,7 +528,7 @@ m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
|
|||||||
[_AM_SET_OPTIONS([$1])dnl
|
[_AM_SET_OPTIONS([$1])dnl
|
||||||
dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
|
dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
|
||||||
m4_if(
|
m4_if(
|
||||||
m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
|
m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),
|
||||||
[ok:ok],,
|
[ok:ok],,
|
||||||
[m4_fatal([AC_INIT should be called with package and version arguments])])dnl
|
[m4_fatal([AC_INIT should be called with package and version arguments])])dnl
|
||||||
AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
|
AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
|
||||||
@ -576,6 +580,20 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
|
|||||||
[m4_define([AC_PROG_OBJCXX],
|
[m4_define([AC_PROG_OBJCXX],
|
||||||
m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
|
m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
|
||||||
])
|
])
|
||||||
|
# Variables for tags utilities; see am/tags.am
|
||||||
|
if test -z "$CTAGS"; then
|
||||||
|
CTAGS=ctags
|
||||||
|
fi
|
||||||
|
AC_SUBST([CTAGS])
|
||||||
|
if test -z "$ETAGS"; then
|
||||||
|
ETAGS=etags
|
||||||
|
fi
|
||||||
|
AC_SUBST([ETAGS])
|
||||||
|
if test -z "$CSCOPE"; then
|
||||||
|
CSCOPE=cscope
|
||||||
|
fi
|
||||||
|
AC_SUBST([CSCOPE])
|
||||||
|
|
||||||
AC_REQUIRE([AM_SILENT_RULES])dnl
|
AC_REQUIRE([AM_SILENT_RULES])dnl
|
||||||
dnl The testsuite driver may need to know about EXEEXT, so add the
|
dnl The testsuite driver may need to know about EXEEXT, so add the
|
||||||
dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
|
dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
|
||||||
@ -657,7 +675,7 @@ for _am_header in $config_headers :; do
|
|||||||
done
|
done
|
||||||
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
|
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
|
||||||
|
|
||||||
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -678,7 +696,7 @@ if test x"${install_sh+set}" != xset; then
|
|||||||
fi
|
fi
|
||||||
AC_SUBST([install_sh])])
|
AC_SUBST([install_sh])])
|
||||||
|
|
||||||
# Copyright (C) 2003-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2003-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -697,9 +715,45 @@ fi
|
|||||||
rmdir .tst 2>/dev/null
|
rmdir .tst 2>/dev/null
|
||||||
AC_SUBST([am__leading_dot])])
|
AC_SUBST([am__leading_dot])])
|
||||||
|
|
||||||
|
# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
|
||||||
|
# From Jim Meyering
|
||||||
|
|
||||||
|
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# This file is free software; the Free Software Foundation
|
||||||
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
|
# with or without modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
|
# AM_MAINTAINER_MODE([DEFAULT-MODE])
|
||||||
|
# ----------------------------------
|
||||||
|
# Control maintainer-specific portions of Makefiles.
|
||||||
|
# Default is to disable them, unless 'enable' is passed literally.
|
||||||
|
# For symmetry, 'disable' may be passed as well. Anyway, the user
|
||||||
|
# can override the default with the --enable/--disable switch.
|
||||||
|
AC_DEFUN([AM_MAINTAINER_MODE],
|
||||||
|
[m4_case(m4_default([$1], [disable]),
|
||||||
|
[enable], [m4_define([am_maintainer_other], [disable])],
|
||||||
|
[disable], [m4_define([am_maintainer_other], [enable])],
|
||||||
|
[m4_define([am_maintainer_other], [enable])
|
||||||
|
m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
|
||||||
|
AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
|
||||||
|
dnl maintainer-mode's default is 'disable' unless 'enable' is passed
|
||||||
|
AC_ARG_ENABLE([maintainer-mode],
|
||||||
|
[AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
|
||||||
|
am_maintainer_other[ make rules and dependencies not useful
|
||||||
|
(and sometimes confusing) to the casual installer])],
|
||||||
|
[USE_MAINTAINER_MODE=$enableval],
|
||||||
|
[USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
|
||||||
|
AC_MSG_RESULT([$USE_MAINTAINER_MODE])
|
||||||
|
AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
|
||||||
|
MAINT=$MAINTAINER_MODE_TRUE
|
||||||
|
AC_SUBST([MAINT])dnl
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
# Check to see how 'make' treats includes. -*- Autoconf -*-
|
# Check to see how 'make' treats includes. -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -742,7 +796,7 @@ AC_SUBST([am__quote])])
|
|||||||
|
|
||||||
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
|
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 1997-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1997-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -763,12 +817,7 @@ AC_DEFUN([AM_MISSING_HAS_RUN],
|
|||||||
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
|
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
|
||||||
AC_REQUIRE_AUX_FILE([missing])dnl
|
AC_REQUIRE_AUX_FILE([missing])dnl
|
||||||
if test x"${MISSING+set}" != xset; then
|
if test x"${MISSING+set}" != xset; then
|
||||||
case $am_aux_dir in
|
MISSING="\${SHELL} '$am_aux_dir/missing'"
|
||||||
*\ * | *\ *)
|
|
||||||
MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
|
|
||||||
*)
|
|
||||||
MISSING="\${SHELL} $am_aux_dir/missing" ;;
|
|
||||||
esac
|
|
||||||
fi
|
fi
|
||||||
# Use eval to expand $SHELL
|
# Use eval to expand $SHELL
|
||||||
if eval "$MISSING --is-lightweight"; then
|
if eval "$MISSING --is-lightweight"; then
|
||||||
@ -781,7 +830,7 @@ fi
|
|||||||
|
|
||||||
# Helper functions for option handling. -*- Autoconf -*-
|
# Helper functions for option handling. -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -810,7 +859,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
|
|||||||
AC_DEFUN([_AM_IF_OPTION],
|
AC_DEFUN([_AM_IF_OPTION],
|
||||||
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
|
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
|
||||||
|
|
||||||
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -857,7 +906,7 @@ AC_LANG_POP([C])])
|
|||||||
# For backward compatibility.
|
# For backward compatibility.
|
||||||
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
|
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
|
||||||
|
|
||||||
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -876,7 +925,7 @@ AC_DEFUN([AM_RUN_LOG],
|
|||||||
|
|
||||||
# Check to make sure that the build environment is sane. -*- Autoconf -*-
|
# Check to make sure that the build environment is sane. -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -957,7 +1006,7 @@ AC_CONFIG_COMMANDS_PRE(
|
|||||||
rm -f conftest.file
|
rm -f conftest.file
|
||||||
])
|
])
|
||||||
|
|
||||||
# Copyright (C) 2009-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2009-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -1017,7 +1066,7 @@ AC_SUBST([AM_BACKSLASH])dnl
|
|||||||
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
|
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
|
||||||
])
|
])
|
||||||
|
|
||||||
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -1045,7 +1094,7 @@ fi
|
|||||||
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
|
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
|
||||||
AC_SUBST([INSTALL_STRIP_PROGRAM])])
|
AC_SUBST([INSTALL_STRIP_PROGRAM])])
|
||||||
|
|
||||||
# Copyright (C) 2006-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2006-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -1064,7 +1113,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
|
|||||||
|
|
||||||
# Check how to create a tarball. -*- Autoconf -*-
|
# Check how to create a tarball. -*- Autoconf -*-
|
||||||
|
|
||||||
# Copyright (C) 2004-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2004-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
|
35
3rdparty/expat/buildconf.sh
vendored
Executable file
35
3rdparty/expat/buildconf.sh
vendored
Executable file
@ -0,0 +1,35 @@
|
|||||||
|
#! /usr/bin/env bash
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2018 Marco Maggi <marco.maggi-ipsu@poste.it>
|
||||||
|
# Copyright (c) 2024 Dag-Erling Smørgrav <des@des.dev>
|
||||||
|
# Licensed under the MIT license:
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
# a copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
# persons to whom the Software is furnished to do so, subject to the
|
||||||
|
# following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
# NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
exec autoreconf --warnings=all --install --verbose "$@"
|
65
3rdparty/expat/cmake/autotools/expat-config-version.cmake.in
vendored
Normal file
65
3rdparty/expat/cmake/autotools/expat-config-version.cmake.in
vendored
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# This is a basic version file for the Config-mode of find_package().
|
||||||
|
# It is used by write_basic_package_version_file() as input file for configure_file()
|
||||||
|
# to create a version-file which can be installed along a config.cmake file.
|
||||||
|
#
|
||||||
|
# The created file sets PACKAGE_VERSION_EXACT if the current version string and
|
||||||
|
# the requested version string are exactly the same and it sets
|
||||||
|
# PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version,
|
||||||
|
# but only if the requested major version is the same as the current one.
|
||||||
|
# The variable CVF_VERSION must be set before calling configure_file().
|
||||||
|
|
||||||
|
|
||||||
|
set(PACKAGE_VERSION "@PACKAGE_VERSION@")
|
||||||
|
|
||||||
|
if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||||
|
else()
|
||||||
|
|
||||||
|
if("@PACKAGE_VERSION@" MATCHES "^([0-9]+)\\.")
|
||||||
|
set(CVF_VERSION_MAJOR "${CMAKE_MATCH_1}")
|
||||||
|
if(NOT CVF_VERSION_MAJOR VERSION_EQUAL 0)
|
||||||
|
string(REGEX REPLACE "^0+" "" CVF_VERSION_MAJOR "${CVF_VERSION_MAJOR}")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
set(CVF_VERSION_MAJOR "@PACKAGE_VERSION@")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(PACKAGE_FIND_VERSION_RANGE)
|
||||||
|
# both endpoints of the range must have the expected major version
|
||||||
|
math (EXPR CVF_VERSION_MAJOR_NEXT "${CVF_VERSION_MAJOR} + 1")
|
||||||
|
if (NOT PACKAGE_FIND_VERSION_MIN_MAJOR STREQUAL CVF_VERSION_MAJOR
|
||||||
|
OR ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND NOT PACKAGE_FIND_VERSION_MAX_MAJOR STREQUAL CVF_VERSION_MAJOR)
|
||||||
|
OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND NOT PACKAGE_FIND_VERSION_MAX VERSION_LESS_EQUAL CVF_VERSION_MAJOR_NEXT)))
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||||
|
elseif(PACKAGE_FIND_VERSION_MIN_MAJOR STREQUAL CVF_VERSION_MAJOR
|
||||||
|
AND ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_LESS_EQUAL PACKAGE_FIND_VERSION_MAX)
|
||||||
|
OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION_MAX)))
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE TRUE)
|
||||||
|
else()
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
if(PACKAGE_FIND_VERSION_MAJOR STREQUAL CVF_VERSION_MAJOR)
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE TRUE)
|
||||||
|
else()
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)
|
||||||
|
set(PACKAGE_VERSION_EXACT TRUE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
|
||||||
|
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@SIZEOF_VOID_P@" STREQUAL "")
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
|
||||||
|
if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "@SIZEOF_VOID_P@")
|
||||||
|
math(EXPR installedBits "@SIZEOF_VOID_P@ * 8")
|
||||||
|
set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
|
||||||
|
set(PACKAGE_VERSION_UNSUITABLE TRUE)
|
||||||
|
endif()
|
19
3rdparty/expat/cmake/autotools/expat-noconfig__linux.cmake.in
vendored
Normal file
19
3rdparty/expat/cmake/autotools/expat-noconfig__linux.cmake.in
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#----------------------------------------------------------------
|
||||||
|
# Generated CMake target import file for configuration "NoConfig".
|
||||||
|
#----------------------------------------------------------------
|
||||||
|
|
||||||
|
# Commands may need to know the format version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||||
|
|
||||||
|
# Import target "expat::expat" for configuration "NoConfig"
|
||||||
|
set_property(TARGET expat::expat APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG)
|
||||||
|
set_target_properties(expat::expat PROPERTIES
|
||||||
|
IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/@LIBDIR_BASENAME@/libexpat.so.@SO_MAJOR@.@SO_MINOR@.@SO_PATCH@"
|
||||||
|
IMPORTED_SONAME_NOCONFIG "libexpat.so.@SO_MAJOR@"
|
||||||
|
)
|
||||||
|
|
||||||
|
list(APPEND _cmake_import_check_targets expat::expat )
|
||||||
|
list(APPEND _cmake_import_check_files_for_expat::expat "${_IMPORT_PREFIX}/@LIBDIR_BASENAME@/libexpat.so.@SO_MAJOR@.@SO_MINOR@.@SO_PATCH@" )
|
||||||
|
|
||||||
|
# Commands beyond this point should not need to know the version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION)
|
19
3rdparty/expat/cmake/autotools/expat-noconfig__macos.cmake.in
vendored
Normal file
19
3rdparty/expat/cmake/autotools/expat-noconfig__macos.cmake.in
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#----------------------------------------------------------------
|
||||||
|
# Generated CMake target import file for configuration "NoConfig".
|
||||||
|
#----------------------------------------------------------------
|
||||||
|
|
||||||
|
# Commands may need to know the format version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||||
|
|
||||||
|
# Import target "expat::expat" for configuration "NoConfig"
|
||||||
|
set_property(TARGET expat::expat APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG)
|
||||||
|
set_target_properties(expat::expat PROPERTIES
|
||||||
|
IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/@LIBDIR_BASENAME@/libexpat.@SO_MAJOR@.@SO_MINOR@.@SO_PATCH@.dylib"
|
||||||
|
IMPORTED_SONAME_NOCONFIG "@rpath/libexpat.@SO_MAJOR@.dylib"
|
||||||
|
)
|
||||||
|
|
||||||
|
list(APPEND _cmake_import_check_targets expat::expat )
|
||||||
|
list(APPEND _cmake_import_check_files_for_expat::expat "${_IMPORT_PREFIX}/@LIBDIR_BASENAME@/libexpat.@SO_MAJOR@.@SO_MINOR@.@SO_PATCH@.dylib" )
|
||||||
|
|
||||||
|
# Commands beyond this point should not need to know the version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION)
|
19
3rdparty/expat/cmake/autotools/expat-noconfig__windows.cmake.in
vendored
Normal file
19
3rdparty/expat/cmake/autotools/expat-noconfig__windows.cmake.in
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#----------------------------------------------------------------
|
||||||
|
# Generated CMake target import file for configuration "NoConfig".
|
||||||
|
#----------------------------------------------------------------
|
||||||
|
|
||||||
|
# Commands may need to know the format version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||||
|
|
||||||
|
# Import target "expat::expat" for configuration "NoConfig"
|
||||||
|
set_property(TARGET expat::expat APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG)
|
||||||
|
set_target_properties(expat::expat PROPERTIES
|
||||||
|
IMPORTED_IMPLIB_NOCONFIG "${_IMPORT_PREFIX}/@LIBDIR_BASENAME@/libexpat.dll.a"
|
||||||
|
IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/bin/@CMAKE_SHARED_LIBRARY_PREFIX@expat-@SO_MAJOR@.dll"
|
||||||
|
)
|
||||||
|
|
||||||
|
list(APPEND _cmake_import_check_targets expat::expat )
|
||||||
|
list(APPEND _cmake_import_check_files_for_expat::expat "${_IMPORT_PREFIX}/@LIBDIR_BASENAME@/libexpat.dll.a" "${_IMPORT_PREFIX}/bin/@CMAKE_SHARED_LIBRARY_PREFIX@expat-@SO_MAJOR@.dll" )
|
||||||
|
|
||||||
|
# Commands beyond this point should not need to know the version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION)
|
25
3rdparty/expat/cmake/autotools/expat-package-init.cmake
vendored
Normal file
25
3rdparty/expat/cmake/autotools/expat-package-init.cmake
vendored
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
|
||||||
|
####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() #######
|
||||||
|
####### Any changes to this file will be overwritten by the next CMake run ####
|
||||||
|
####### The input file was expat-config.cmake.in ########
|
||||||
|
|
||||||
|
get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE)
|
||||||
|
|
||||||
|
macro(set_and_check _var _file)
|
||||||
|
set(${_var} "${_file}")
|
||||||
|
if(NOT EXISTS "${_file}")
|
||||||
|
message(FATAL_ERROR "File or directory ${_file} referenced by variable ${_var} does not exist !")
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(check_required_components _NAME)
|
||||||
|
foreach(comp ${${_NAME}_FIND_COMPONENTS})
|
||||||
|
if(NOT ${_NAME}_${comp}_FOUND)
|
||||||
|
if(${_NAME}_FIND_REQUIRED_${comp})
|
||||||
|
set(${_NAME}_FOUND FALSE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
####################################################################################
|
107
3rdparty/expat/cmake/autotools/expat.cmake
vendored
Normal file
107
3rdparty/expat/cmake/autotools/expat.cmake
vendored
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
# Generated by CMake
|
||||||
|
|
||||||
|
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
||||||
|
message(FATAL_ERROR "CMake >= 2.8.0 required")
|
||||||
|
endif()
|
||||||
|
if(CMAKE_VERSION VERSION_LESS "2.8.12")
|
||||||
|
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
||||||
|
endif()
|
||||||
|
cmake_policy(PUSH)
|
||||||
|
cmake_policy(VERSION 2.8.12...3.28)
|
||||||
|
#----------------------------------------------------------------
|
||||||
|
# Generated CMake target import file.
|
||||||
|
#----------------------------------------------------------------
|
||||||
|
|
||||||
|
# Commands may need to know the format version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||||
|
|
||||||
|
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
||||||
|
set(_cmake_targets_defined "")
|
||||||
|
set(_cmake_targets_not_defined "")
|
||||||
|
set(_cmake_expected_targets "")
|
||||||
|
foreach(_cmake_expected_target IN ITEMS expat::expat)
|
||||||
|
list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
|
||||||
|
if(TARGET "${_cmake_expected_target}")
|
||||||
|
list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
|
||||||
|
else()
|
||||||
|
list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
unset(_cmake_expected_target)
|
||||||
|
if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
|
||||||
|
unset(_cmake_targets_defined)
|
||||||
|
unset(_cmake_targets_not_defined)
|
||||||
|
unset(_cmake_expected_targets)
|
||||||
|
unset(CMAKE_IMPORT_FILE_VERSION)
|
||||||
|
cmake_policy(POP)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
if(NOT _cmake_targets_defined STREQUAL "")
|
||||||
|
string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
|
||||||
|
string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
|
||||||
|
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
|
||||||
|
endif()
|
||||||
|
unset(_cmake_targets_defined)
|
||||||
|
unset(_cmake_targets_not_defined)
|
||||||
|
unset(_cmake_expected_targets)
|
||||||
|
|
||||||
|
|
||||||
|
# Compute the installation prefix relative to this file.
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||||
|
if(_IMPORT_PREFIX STREQUAL "/")
|
||||||
|
set(_IMPORT_PREFIX "")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Create imported target expat::expat
|
||||||
|
add_library(expat::expat SHARED IMPORTED)
|
||||||
|
|
||||||
|
set_target_properties(expat::expat PROPERTIES
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
|
||||||
|
INTERFACE_LINK_LIBRARIES "m"
|
||||||
|
)
|
||||||
|
|
||||||
|
# Load information for each installed configuration.
|
||||||
|
file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/expat-*.cmake")
|
||||||
|
foreach(_cmake_config_file IN LISTS _cmake_config_files)
|
||||||
|
include("${_cmake_config_file}")
|
||||||
|
endforeach()
|
||||||
|
unset(_cmake_config_file)
|
||||||
|
unset(_cmake_config_files)
|
||||||
|
|
||||||
|
# Cleanup temporary variables.
|
||||||
|
set(_IMPORT_PREFIX)
|
||||||
|
|
||||||
|
# Loop over all imported files and verify that they actually exist
|
||||||
|
foreach(_cmake_target IN LISTS _cmake_import_check_targets)
|
||||||
|
if(CMAKE_VERSION VERSION_LESS "3.28"
|
||||||
|
OR NOT DEFINED _cmake_import_check_xcframework_for_${_cmake_target}
|
||||||
|
OR NOT IS_DIRECTORY "${_cmake_import_check_xcframework_for_${_cmake_target}}")
|
||||||
|
foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
|
||||||
|
if(NOT EXISTS "${_cmake_file}")
|
||||||
|
message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
|
||||||
|
\"${_cmake_file}\"
|
||||||
|
but this file does not exist. Possible reasons include:
|
||||||
|
* The file was deleted, renamed, or moved to another location.
|
||||||
|
* An install or uninstall procedure did not complete successfully.
|
||||||
|
* The installation package was faulty and contained
|
||||||
|
\"${CMAKE_CURRENT_LIST_FILE}\"
|
||||||
|
but not all the files it references.
|
||||||
|
")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
|
unset(_cmake_file)
|
||||||
|
unset("_cmake_import_check_files_for_${_cmake_target}")
|
||||||
|
endforeach()
|
||||||
|
unset(_cmake_target)
|
||||||
|
unset(_cmake_import_check_targets)
|
||||||
|
|
||||||
|
# This file does not depend on other imported targets which have
|
||||||
|
# been exported from the same project but in a separate export set.
|
||||||
|
|
||||||
|
# Commands beyond this point should not need to know the version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION)
|
||||||
|
cmake_policy(POP)
|
1
3rdparty/expat/cmake/mingw-toolchain.cmake
vendored
1
3rdparty/expat/cmake/mingw-toolchain.cmake
vendored
@ -31,6 +31,7 @@ set(CMAKE_SYSTEM_NAME Windows)
|
|||||||
|
|
||||||
set(CMAKE_C_COMPILER i686-w64-mingw32-gcc)
|
set(CMAKE_C_COMPILER i686-w64-mingw32-gcc)
|
||||||
set(CMAKE_CXX_COMPILER i686-w64-mingw32-g++)
|
set(CMAKE_CXX_COMPILER i686-w64-mingw32-g++)
|
||||||
|
set(CMAKE_RC_COMPILER i686-w64-mingw32-windres)
|
||||||
|
|
||||||
set(WIN32 ON)
|
set(WIN32 ON)
|
||||||
set(MINGW ON)
|
set(MINGW ON)
|
||||||
|
9186
3rdparty/expat/configure
vendored
9186
3rdparty/expat/configure
vendored
File diff suppressed because it is too large
Load Diff
196
3rdparty/expat/configure.ac
vendored
196
3rdparty/expat/configure.ac
vendored
@ -1,21 +1,56 @@
|
|||||||
dnl configuration script for expat
|
dnl configuration script for expat
|
||||||
dnl Process this file with autoconf to produce a configure script.
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
|
dnl __ __ _
|
||||||
|
dnl ___\ \/ /_ __ __ _| |_
|
||||||
|
dnl / _ \\ /| '_ \ / _` | __|
|
||||||
|
dnl | __// \| |_) | (_| | |_
|
||||||
|
dnl \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
dnl |_| XML parser
|
||||||
dnl
|
dnl
|
||||||
dnl Copyright 2000 Clark Cooper
|
dnl Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
dnl Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
dnl Copyright (c) 2001-2003 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
dnl Copyright (c) 2006-2012 Karl Waclawek <karl@waclawek.net>
|
||||||
|
dnl Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
dnl Copyright (c) 2017 S. P. Zeidler <spz@netbsd.org>
|
||||||
|
dnl Copyright (c) 2017 Stephen Groat <stephen@groat.us>
|
||||||
|
dnl Copyright (c) 2017-2020 Joe Orton <jorton@redhat.com>
|
||||||
|
dnl Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
|
||||||
|
dnl Copyright (c) 2018 Benjamin Peterson <benjamin@python.org>
|
||||||
|
dnl Copyright (c) 2018 Marco Maggi <marco.maggi-ipsu@poste.it>
|
||||||
|
dnl Copyright (c) 2018 KangLin <kl222@126.com>
|
||||||
|
dnl Copyright (c) 2019 Mohammed Khajapasha <mohammed.khajapasha@intel.com>
|
||||||
|
dnl Copyright (c) 2019 Kishore Kunche <kishore.kunche@intel.com>
|
||||||
|
dnl Copyright (c) 2020 Jeffrey Walton <noloader@gmail.com>
|
||||||
|
dnl Copyright (c) 2024 Ferenc Géczi <ferenc.gm@gmail.com>
|
||||||
|
dnl Copyright (c) 2024 Dag-Erling Smørgrav <des@des.dev>
|
||||||
|
dnl Licensed under the MIT license:
|
||||||
dnl
|
dnl
|
||||||
dnl This file is part of EXPAT.
|
dnl Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
dnl a copy of this software and associated documentation files (the
|
||||||
|
dnl "Software"), to deal in the Software without restriction, including
|
||||||
|
dnl without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
dnl distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
dnl persons to whom the Software is furnished to do so, subject to the
|
||||||
|
dnl following conditions:
|
||||||
dnl
|
dnl
|
||||||
dnl EXPAT is free software; you can redistribute it and/or modify it
|
dnl The above copyright notice and this permission notice shall be included
|
||||||
dnl under the terms of the License (based on the MIT/X license) contained
|
dnl in all copies or substantial portions of the Software.
|
||||||
dnl in the file COPYING that comes with this distribution.
|
|
||||||
dnl
|
dnl
|
||||||
|
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
dnl EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
dnl NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
dnl USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
dnl Ensure that Expat is configured with autoconf 2.69 or newer.
|
dnl Ensure that Expat is configured with autoconf 2.69 or newer.
|
||||||
AC_PREREQ(2.69)
|
AC_PREREQ([2.69])
|
||||||
|
|
||||||
dnl Get the version number of Expat, using m4's esyscmd() command to run
|
dnl Get the version number of Expat, using m4's esyscmd() command to run
|
||||||
dnl the command at m4-generation time. This allows us to create an m4
|
dnl the command at m4-generation time. This allows us to create an m4
|
||||||
dnl symbol holding the correct version number. AC_INIT() requires the
|
dnl symbol holding the correct version number. AC_INIT requires the
|
||||||
dnl version number at m4-time, rather than when ./configure is run, so
|
dnl version number at m4-time, rather than when ./configure is run, so
|
||||||
dnl all this must happen as part of m4, not as part of the shell code
|
dnl all this must happen as part of m4, not as part of the shell code
|
||||||
dnl contained in ./configure.
|
dnl contained in ./configure.
|
||||||
@ -27,7 +62,7 @@ m4_define([expat_version],
|
|||||||
m4_ifdef([__gnu__],
|
m4_ifdef([__gnu__],
|
||||||
[esyscmd(conftools/get-version.sh lib/expat.h)],
|
[esyscmd(conftools/get-version.sh lib/expat.h)],
|
||||||
[2.2.x]))
|
[2.2.x]))
|
||||||
AC_INIT(expat, expat_version, expat-bugs@libexpat.org)
|
AC_INIT([expat], expat_version, [https://github.com/libexpat/libexpat/issues])
|
||||||
m4_undefine([expat_version])
|
m4_undefine([expat_version])
|
||||||
|
|
||||||
AC_CONFIG_SRCDIR([Makefile.in])
|
AC_CONFIG_SRCDIR([Makefile.in])
|
||||||
@ -35,6 +70,7 @@ AC_CONFIG_AUX_DIR([conftools])
|
|||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
AC_CANONICAL_HOST
|
AC_CANONICAL_HOST
|
||||||
AM_INIT_AUTOMAKE
|
AM_INIT_AUTOMAKE
|
||||||
|
AM_MAINTAINER_MODE([enable]) # to allow argument --disable-maintainer-mode
|
||||||
|
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
@ -48,12 +84,14 @@ dnl
|
|||||||
dnl If the API changes incompatibly set LIBAGE back to 0
|
dnl If the API changes incompatibly set LIBAGE back to 0
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
LIBCURRENT=7 # sync
|
LIBCURRENT=11 # sync
|
||||||
LIBREVISION=12 # with
|
LIBREVISION=0 # with
|
||||||
LIBAGE=6 # CMakeLists.txt!
|
LIBAGE=10 # CMakeLists.txt!
|
||||||
|
|
||||||
AX_APPEND_FLAG([-DHAVE_EXPAT_CONFIG_H], [AM_CPPFLAGS])
|
AC_CONFIG_HEADERS([expat_config.h])
|
||||||
AC_CONFIG_HEADER([expat_config.h])
|
AH_TOP([#ifndef EXPAT_CONFIG_H
|
||||||
|
#define EXPAT_CONFIG_H 1])
|
||||||
|
AH_BOTTOM([#endif // ndef EXPAT_CONFIG_H])
|
||||||
|
|
||||||
AM_PROG_AR
|
AM_PROG_AR
|
||||||
AC_PROG_INSTALL
|
AC_PROG_INSTALL
|
||||||
@ -70,6 +108,9 @@ AC_SUBST(LIBAGE)
|
|||||||
AC_LANG([C])
|
AC_LANG([C])
|
||||||
AC_PROG_CC_C99
|
AC_PROG_CC_C99
|
||||||
|
|
||||||
|
AS_IF([test "${ac_cv_prog_cc_c99}" = no],
|
||||||
|
[AC_MSG_ERROR([Expat requires a C99 compiler.])])
|
||||||
|
|
||||||
AS_IF([test "$GCC" = yes],
|
AS_IF([test "$GCC" = yes],
|
||||||
[AX_APPEND_COMPILE_FLAGS([-Wall -Wextra], [AM_CFLAGS])
|
[AX_APPEND_COMPILE_FLAGS([-Wall -Wextra], [AM_CFLAGS])
|
||||||
dnl Be careful about adding the -fexceptions option; some versions of
|
dnl Be careful about adding the -fexceptions option; some versions of
|
||||||
@ -79,7 +120,7 @@ AS_IF([test "$GCC" = yes],
|
|||||||
AX_APPEND_COMPILE_FLAGS([-fno-strict-aliasing -Wmissing-prototypes -Wstrict-prototypes], [AM_CFLAGS])
|
AX_APPEND_COMPILE_FLAGS([-fno-strict-aliasing -Wmissing-prototypes -Wstrict-prototypes], [AM_CFLAGS])
|
||||||
AX_APPEND_COMPILE_FLAGS([-pedantic -Wduplicated-cond -Wduplicated-branches -Wlogical-op], [AM_CFLAGS])
|
AX_APPEND_COMPILE_FLAGS([-pedantic -Wduplicated-cond -Wduplicated-branches -Wlogical-op], [AM_CFLAGS])
|
||||||
AX_APPEND_COMPILE_FLAGS([-Wrestrict -Wnull-dereference -Wjump-misses-init -Wdouble-promotion], [AM_CFLAGS])
|
AX_APPEND_COMPILE_FLAGS([-Wrestrict -Wnull-dereference -Wjump-misses-init -Wdouble-promotion], [AM_CFLAGS])
|
||||||
AX_APPEND_COMPILE_FLAGS([-Wshadow -Wformat=2 -Wmisleading-indentation], [AM_CFLAGS])])
|
AX_APPEND_COMPILE_FLAGS([-Wshadow -Wformat=2 -Wno-pedantic-ms-format -Wmisleading-indentation], [AM_CFLAGS])])
|
||||||
|
|
||||||
AC_LANG_PUSH([C++])
|
AC_LANG_PUSH([C++])
|
||||||
AC_PROG_CXX
|
AC_PROG_CXX
|
||||||
@ -102,11 +143,9 @@ AS_CASE(["$LD"],[*clang*],
|
|||||||
[*linux*],[archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'])])
|
[*linux*],[archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'])])
|
||||||
|
|
||||||
EXPATCFG_COMPILER_SUPPORTS_VISIBILITY([
|
EXPATCFG_COMPILER_SUPPORTS_VISIBILITY([
|
||||||
AX_APPEND_FLAG([-fvisibility=hidden], [AM_CFLAGS])
|
AX_APPEND_FLAG([-fvisibility=hidden], [AM_CFLAGS])
|
||||||
AX_APPEND_FLAG([-DXML_ENABLE_VISIBILITY=1], [AM_CPPFLAGS])])
|
AS_IF([test "${enable_shared}" = yes],
|
||||||
|
[AX_APPEND_FLAG([-DXML_ENABLE_VISIBILITY=1], [AM_CPPFLAGS])])])
|
||||||
dnl Checks for header files.
|
|
||||||
AC_HEADER_STDC
|
|
||||||
|
|
||||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||||
|
|
||||||
@ -123,7 +162,6 @@ AC_C_BIGENDIAN([AC_DEFINE([WORDS_BIGENDIAN], 1)
|
|||||||
AC_DEFINE_UNQUOTED([BYTEORDER], $BYTEORDER, [1234 = LILENDIAN, 4321 = BIGENDIAN])
|
AC_DEFINE_UNQUOTED([BYTEORDER], $BYTEORDER, [1234 = LILENDIAN, 4321 = BIGENDIAN])
|
||||||
|
|
||||||
AC_C_CONST
|
AC_C_CONST
|
||||||
AC_TYPE_SIZE_T
|
|
||||||
|
|
||||||
AC_ARG_WITH([xmlwf],
|
AC_ARG_WITH([xmlwf],
|
||||||
[AS_HELP_STRING([--without-xmlwf], [do not build xmlwf])],
|
[AS_HELP_STRING([--without-xmlwf], [do not build xmlwf])],
|
||||||
@ -143,6 +181,8 @@ AC_ARG_WITH([tests],
|
|||||||
[with_tests=yes])
|
[with_tests=yes])
|
||||||
AM_CONDITIONAL([WITH_TESTS], [test x${with_tests} = xyes])
|
AM_CONDITIONAL([WITH_TESTS], [test x${with_tests} = xyes])
|
||||||
|
|
||||||
|
AS_IF([test x${with_tests} = xyes],
|
||||||
|
[AX_CXX_COMPILE_STDCXX_11([noext], [mandatory])])
|
||||||
|
|
||||||
AS_VAR_SET([EXPATCFG_ON_MINGW],[no])
|
AS_VAR_SET([EXPATCFG_ON_MINGW],[no])
|
||||||
AS_CASE("${host_os}",
|
AS_CASE("${host_os}",
|
||||||
@ -151,8 +191,13 @@ AS_CASE("${host_os}",
|
|||||||
AC_MSG_NOTICE([detected OS: MinGW])])
|
AC_MSG_NOTICE([detected OS: MinGW])])
|
||||||
AM_CONDITIONAL([MINGW], [test x${EXPATCFG_ON_MINGW} = xyes])
|
AM_CONDITIONAL([MINGW], [test x${EXPATCFG_ON_MINGW} = xyes])
|
||||||
|
|
||||||
|
dnl Note: Prefix "_INTERNAL_" here means exclusive use inside of file configure.ac
|
||||||
AM_CONDITIONAL([UNICODE], [echo -- "${CPPFLAGS}${CFLAGS}" | ${FGREP} XML_UNICODE >/dev/null])
|
AM_CONDITIONAL([UNICODE], [echo -- "${CPPFLAGS}${CFLAGS}" | ${FGREP} XML_UNICODE >/dev/null])
|
||||||
|
AM_CONDITIONAL([_INTERNAL_UNICODE_WCHAR_T], [echo -- "${CPPFLAGS}${CFLAGS}" | ${FGREP} XML_UNICODE_WCHAR_T >/dev/null])
|
||||||
|
AM_CONDITIONAL([_INTERNAL_MIN_SIZE], [echo -- "${CPPFLAGS}${CFLAGS}" | ${FGREP} XML_MIN_SIZE >/dev/null])
|
||||||
|
AM_CONDITIONAL([_INTERNAL_LARGE_SIZE], [echo -- "${CPPFLAGS}${CFLAGS}" | ${FGREP} XML_LARGE_SIZE >/dev/null])
|
||||||
|
|
||||||
|
LT_LIB_M
|
||||||
|
|
||||||
AC_ARG_WITH([libbsd],
|
AC_ARG_WITH([libbsd],
|
||||||
[AS_HELP_STRING([--with-libbsd], [utilize libbsd (for arc4random_buf)])],
|
[AS_HELP_STRING([--with-libbsd], [utilize libbsd (for arc4random_buf)])],
|
||||||
@ -164,14 +209,16 @@ AS_IF([test "x${with_libbsd}" != xno],
|
|||||||
[],
|
[],
|
||||||
[AS_IF([test "x${with_libbsd}" = xyes],
|
[AS_IF([test "x${with_libbsd}" = xyes],
|
||||||
[AC_MSG_ERROR([Enforced use of libbsd cannot be satisfied.])])])])
|
[AC_MSG_ERROR([Enforced use of libbsd cannot be satisfied.])])])])
|
||||||
AC_MSG_CHECKING([for arc4random_buf (BSD or libbsd)])
|
AC_MSG_CHECKING([for arc4random_buf (BSD, libbsd or glibc 2.36+)])
|
||||||
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
#include <stdlib.h> /* for arc4random_buf on BSD, for NULL */
|
|
||||||
#if defined(HAVE_LIBBSD)
|
#if defined(HAVE_LIBBSD)
|
||||||
# include <bsd/stdlib.h>
|
# include <bsd/stdlib.h>
|
||||||
|
#else
|
||||||
|
# include <stdlib.h> /* for arc4random_buf on BSD */
|
||||||
#endif
|
#endif
|
||||||
int main() {
|
int main(void) {
|
||||||
arc4random_buf(NULL, 0U);
|
char dummy[[123]]; // double brackets for m4
|
||||||
|
arc4random_buf(dummy, 0U);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
])],
|
])],
|
||||||
@ -179,14 +226,14 @@ AC_LINK_IFELSE([AC_LANG_SOURCE([
|
|||||||
AC_MSG_RESULT([yes])],
|
AC_MSG_RESULT([yes])],
|
||||||
[AC_MSG_RESULT([no])
|
[AC_MSG_RESULT([no])
|
||||||
|
|
||||||
AC_MSG_CHECKING([for arc4random (BSD, macOS or libbsd)])
|
AC_MSG_CHECKING([for arc4random (BSD, macOS, libbsd or glibc 2.36+)])
|
||||||
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
#if defined(HAVE_LIBBSD)
|
#if defined(HAVE_LIBBSD)
|
||||||
# include <bsd/stdlib.h>
|
# include <bsd/stdlib.h>
|
||||||
#else
|
#else
|
||||||
# include <stdlib.h>
|
# include <stdlib.h>
|
||||||
#endif
|
#endif
|
||||||
int main() {
|
int main(void) {
|
||||||
arc4random();
|
arc4random();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -208,7 +255,7 @@ AS_IF([test "x$with_getrandom" != xno],
|
|||||||
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
#include <stdlib.h> /* for NULL */
|
#include <stdlib.h> /* for NULL */
|
||||||
#include <sys/random.h>
|
#include <sys/random.h>
|
||||||
int main() {
|
int main(void) {
|
||||||
return getrandom(NULL, 0U, 0U);
|
return getrandom(NULL, 0U, 0U);
|
||||||
}
|
}
|
||||||
])],
|
])],
|
||||||
@ -229,10 +276,11 @@ AS_HELP_STRING([--without-sys-getrandom],
|
|||||||
AS_IF([test "x$with_sys_getrandom" != xno],
|
AS_IF([test "x$with_sys_getrandom" != xno],
|
||||||
[AC_MSG_CHECKING([for syscall SYS_getrandom (Linux 3.17+)])
|
[AC_MSG_CHECKING([for syscall SYS_getrandom (Linux 3.17+)])
|
||||||
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
|
#define _GNU_SOURCE
|
||||||
#include <stdlib.h> /* for NULL */
|
#include <stdlib.h> /* for NULL */
|
||||||
#include <unistd.h> /* for syscall */
|
#include <unistd.h> /* for syscall */
|
||||||
#include <sys/syscall.h> /* for SYS_getrandom */
|
#include <sys/syscall.h> /* for SYS_getrandom */
|
||||||
int main() {
|
int main(void) {
|
||||||
syscall(SYS_getrandom, NULL, 0, 0);
|
syscall(SYS_getrandom, NULL, 0, 0);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -257,6 +305,8 @@ AC_SUBST(FILEMAP)
|
|||||||
dnl Some basic configuration:
|
dnl Some basic configuration:
|
||||||
AC_DEFINE([XML_NS], 1,
|
AC_DEFINE([XML_NS], 1,
|
||||||
[Define to make XML Namespaces functionality available.])
|
[Define to make XML Namespaces functionality available.])
|
||||||
|
AC_DEFINE([XML_GE], 1,
|
||||||
|
[Define as 1/0 to enable/disable support for general entities.])
|
||||||
AC_DEFINE([XML_DTD], 1,
|
AC_DEFINE([XML_DTD], 1,
|
||||||
[Define to make parameter entity parsing functionality available.])
|
[Define to make parameter entity parsing functionality available.])
|
||||||
AC_DEFINE([XML_DEV_URANDOM], 1,
|
AC_DEFINE([XML_DEV_URANDOM], 1,
|
||||||
@ -281,9 +331,10 @@ AS_HELP_STRING([--disable-xml-context],
|
|||||||
AS_IF([test "x${enable_xml_context}" != "xno"],
|
AS_IF([test "x${enable_xml_context}" != "xno"],
|
||||||
[AS_IF([test "x${enable_xml_context}" = "xyes" \
|
[AS_IF([test "x${enable_xml_context}" = "xyes" \
|
||||||
-o "x${enable_xml_context}" = "x"],
|
-o "x${enable_xml_context}" = "x"],
|
||||||
[AS_VAR_SET(enable_xml_context,1024)])
|
[AS_VAR_SET(enable_xml_context,1024)])],
|
||||||
AC_DEFINE_UNQUOTED([XML_CONTEXT_BYTES], [${enable_xml_context}],
|
[AS_VAR_SET(enable_xml_context,0)])
|
||||||
[Define to specify how much context to retain around the current parse point.])])
|
AC_DEFINE_UNQUOTED([XML_CONTEXT_BYTES], [${enable_xml_context}],
|
||||||
|
[Define to specify how much context to retain around the current parse point, 0 to disable.])
|
||||||
|
|
||||||
AC_ARG_WITH([docbook],
|
AC_ARG_WITH([docbook],
|
||||||
[AS_HELP_STRING([--with-docbook],
|
[AS_HELP_STRING([--with-docbook],
|
||||||
@ -307,7 +358,72 @@ AS_IF([test "x${DOCBOOK_TO_MAN}" != x -a "x$with_docbook" != xno],
|
|||||||
You can also configure using --without-docbook if you can do without a man
|
You can also configure using --without-docbook if you can do without a man
|
||||||
page for xmlwf.])])])
|
page for xmlwf.])])])
|
||||||
|
|
||||||
AM_CONDITIONAL(WITH_DOCBOOK, [test "x${DOCBOOK_TO_MAN}" != x])
|
dnl This will make sure that a release tarball shipping a pre-rendered xmlwf man page will
|
||||||
|
dnl get it installed, when no working flavor of docbook2man is available (or wanted).
|
||||||
|
dnl This relies on file xmlwf.1 being at least as recent as its source file xmlwf.xml.
|
||||||
|
AS_IF([test -f "${srcdir}"/doc/xmlwf.1],
|
||||||
|
[AM_CONDITIONAL(WITH_MANPAGE, [true])
|
||||||
|
AS_IF([test "x$with_docbook" = xno -o "x${DOCBOOK_TO_MAN}" = x],
|
||||||
|
[AM_CONDITIONAL(WITH_PREBUILT_MANPAGE, [true])
|
||||||
|
AM_CONDITIONAL(WITH_DISTRIBUTABLE_MANPAGE, [false])],
|
||||||
|
[AM_CONDITIONAL(WITH_PREBUILT_MANPAGE, [false])
|
||||||
|
AM_CONDITIONAL(WITH_DISTRIBUTABLE_MANPAGE, [true])])
|
||||||
|
],
|
||||||
|
[AS_IF([test "x$with_docbook" != xno -a "x${DOCBOOK_TO_MAN}" != x],
|
||||||
|
[AM_CONDITIONAL(WITH_MANPAGE, [true])
|
||||||
|
AM_CONDITIONAL(WITH_DISTRIBUTABLE_MANPAGE, [true])],
|
||||||
|
[AM_CONDITIONAL(WITH_MANPAGE, [false])
|
||||||
|
AM_CONDITIONAL(WITH_DISTRIBUTABLE_MANPAGE, [false])])
|
||||||
|
AM_CONDITIONAL(WITH_PREBUILT_MANPAGE, [false])])
|
||||||
|
|
||||||
|
dnl Configure CMake file templates
|
||||||
|
dnl NOTE: The *_TRUE variables read here are Automake conditionals
|
||||||
|
dnl that are either set to "" when enabled or to "#" when disabled
|
||||||
|
dnl (because they are used to dynamically comment out certain things)
|
||||||
|
AS_IF([test "x${enable_xml_attr_info}" = xyes],
|
||||||
|
[EXPAT_ATTR_INFO=ON],
|
||||||
|
[EXPAT_ATTR_INFO=OFF])
|
||||||
|
EXPAT_DTD=ON
|
||||||
|
AS_IF([test "x${_INTERNAL_LARGE_SIZE_TRUE}" = x],
|
||||||
|
[EXPAT_LARGE_SIZE=ON],
|
||||||
|
[EXPAT_LARGE_SIZE=OFF])
|
||||||
|
AS_IF([test "x${_INTERNAL_MIN_SIZE_TRUE}" = x],
|
||||||
|
[EXPAT_MIN_SIZE=ON],
|
||||||
|
[EXPAT_MIN_SIZE=OFF])
|
||||||
|
EXPAT_NS=ON
|
||||||
|
AS_IF([test "x${enable_xml_context}" != xno],
|
||||||
|
[EXPAT_CONTEXT_BYTES=${enable_xml_context}],
|
||||||
|
[EXPAT_CONTEXT_BYTES=OFF])
|
||||||
|
AS_IF([test "x${UNICODE_TRUE}" = x],
|
||||||
|
[AS_IF(
|
||||||
|
[test "x${_INTERNAL_UNICODE_WCHAR_T_TRUE}" = x],
|
||||||
|
[EXPAT_CHAR_TYPE=wchar_t],
|
||||||
|
[EXPAT_CHAR_TYPE=ushort])],
|
||||||
|
[EXPAT_CHAR_TYPE=char])
|
||||||
|
PACKAGE_INIT="${srcdir}"/cmake/autotools/expat-package-init.cmake
|
||||||
|
LIBDIR_BASENAME="$(basename "${libdir}")"
|
||||||
|
SO_MAJOR="$(expr "${LIBCURRENT}" - "${LIBAGE}")"
|
||||||
|
SO_MINOR="${LIBAGE}"
|
||||||
|
SO_PATCH="${LIBREVISION}"
|
||||||
|
AC_SUBST([EXPAT_ATTR_INFO])
|
||||||
|
AC_SUBST([EXPAT_DTD])
|
||||||
|
AC_SUBST([EXPAT_LARGE_SIZE])
|
||||||
|
AC_SUBST([EXPAT_MIN_SIZE])
|
||||||
|
AC_SUBST([EXPAT_NS])
|
||||||
|
AC_SUBST([EXPAT_CONTEXT_BYTES])
|
||||||
|
AC_SUBST([EXPAT_CHAR_TYPE])
|
||||||
|
AC_SUBST_FILE([PACKAGE_INIT])
|
||||||
|
AC_SUBST([LIBDIR_BASENAME])
|
||||||
|
AC_SUBST([SO_MAJOR])
|
||||||
|
AC_SUBST([SO_MINOR])
|
||||||
|
AC_SUBST([SO_PATCH])
|
||||||
|
|
||||||
|
dnl The canonical way of doing this is AC_CHECK_SIZEOF(void *), but
|
||||||
|
dnl that adds SIZEOF_VOID_P to expat_config.h.in, making it difficult
|
||||||
|
dnl to have 32-bit and 64-bit versions of libexpat installed on the
|
||||||
|
dnl same system with a single, shared copy of the header.
|
||||||
|
AC_COMPUTE_INT(SIZEOF_VOID_P, [sizeof(void *)])
|
||||||
|
AC_SUBST([SIZEOF_VOID_P])
|
||||||
|
|
||||||
dnl write the Automake flags we set
|
dnl write the Automake flags we set
|
||||||
AC_SUBST([AM_CPPFLAGS])
|
AC_SUBST([AM_CPPFLAGS])
|
||||||
@ -315,11 +431,23 @@ AC_SUBST([AM_CFLAGS])
|
|||||||
AC_SUBST([AM_CXXFLAGS])
|
AC_SUBST([AM_CXXFLAGS])
|
||||||
AC_SUBST([AM_LDFLAGS])
|
AC_SUBST([AM_LDFLAGS])
|
||||||
|
|
||||||
dnl updating _EXPAT_OUTPUT_NAME variable to effect the package name in expat.pc file (issue #361)
|
dnl Emulate the use of CMAKE_SHARED_LIBRARY_PREFIX under CMake
|
||||||
AC_SUBST(_EXPAT_OUTPUT_NAME, ["$PACKAGE_NAME"])
|
AC_MSG_CHECKING([for shared library name prefix])
|
||||||
|
AS_CASE("${host_os}",
|
||||||
|
[cygwin*], [CMAKE_SHARED_LIBRARY_PREFIX=cyg],
|
||||||
|
[CMAKE_SHARED_LIBRARY_PREFIX=lib])
|
||||||
|
AC_MSG_RESULT([${CMAKE_SHARED_LIBRARY_PREFIX}])
|
||||||
|
AC_SUBST([CMAKE_SHARED_LIBRARY_PREFIX])
|
||||||
|
|
||||||
|
AS_CASE("${host_os}",
|
||||||
|
[darwin*], [CMAKE_NOCONFIG_SOURCE=cmake/autotools/expat-noconfig__macos.cmake.in],
|
||||||
|
[mingw*|cygwin*], [CMAKE_NOCONFIG_SOURCE=cmake/autotools/expat-noconfig__windows.cmake.in],
|
||||||
|
[CMAKE_NOCONFIG_SOURCE=cmake/autotools/expat-noconfig__linux.cmake.in])
|
||||||
AC_CONFIG_FILES([Makefile]
|
AC_CONFIG_FILES([Makefile]
|
||||||
[expat.pc]
|
[expat.pc]
|
||||||
|
[cmake/expat-config.cmake]
|
||||||
|
[cmake/autotools/expat-config-version.cmake]
|
||||||
|
[cmake/autotools/expat-noconfig.cmake:${CMAKE_NOCONFIG_SOURCE}]
|
||||||
[doc/Makefile]
|
[doc/Makefile]
|
||||||
[examples/Makefile]
|
[examples/Makefile]
|
||||||
[lib/Makefile]
|
[lib/Makefile]
|
||||||
|
116
3rdparty/expat/conftools/PrintPath
vendored
116
3rdparty/expat/conftools/PrintPath
vendored
@ -1,116 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# Look for program[s] somewhere in $PATH.
|
|
||||||
#
|
|
||||||
# Options:
|
|
||||||
# -s
|
|
||||||
# Do not print out full pathname. (silent)
|
|
||||||
# -pPATHNAME
|
|
||||||
# Look in PATHNAME instead of $PATH
|
|
||||||
#
|
|
||||||
# Usage:
|
|
||||||
# PrintPath [-s] [-pPATHNAME] program [program ...]
|
|
||||||
#
|
|
||||||
# Initially written by Jim Jagielski for the Apache configuration mechanism
|
|
||||||
# (with kudos to Kernighan/Pike)
|
|
||||||
#
|
|
||||||
# This script falls under the Apache License.
|
|
||||||
# See http://www.apache.org/licenses/LICENSE
|
|
||||||
|
|
||||||
##
|
|
||||||
# Some "constants"
|
|
||||||
##
|
|
||||||
pathname=$PATH
|
|
||||||
echo="yes"
|
|
||||||
|
|
||||||
##
|
|
||||||
# Find out what OS we are running for later on
|
|
||||||
##
|
|
||||||
os=`(uname) 2>/dev/null`
|
|
||||||
|
|
||||||
##
|
|
||||||
# Parse command line
|
|
||||||
##
|
|
||||||
for args in $*
|
|
||||||
do
|
|
||||||
case $args in
|
|
||||||
-s ) echo="no" ;;
|
|
||||||
-p* ) pathname="`echo $args | sed 's/^..//'`" ;;
|
|
||||||
* ) programs="$programs $args" ;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
##
|
|
||||||
# Now we make the adjustments required for OS/2 and everyone
|
|
||||||
# else :)
|
|
||||||
#
|
|
||||||
# First of all, all OS/2 programs have the '.exe' extension.
|
|
||||||
# Next, we adjust PATH (or what was given to us as PATH) to
|
|
||||||
# be whitespace separated directories.
|
|
||||||
# Finally, we try to determine the best flag to use for
|
|
||||||
# test/[] to look for an executable file. OS/2 just has '-r'
|
|
||||||
# but with other OSs, we do some funny stuff to check to see
|
|
||||||
# if test/[] knows about -x, which is the preferred flag.
|
|
||||||
##
|
|
||||||
|
|
||||||
if [ "x$os" = "xOS/2" ]
|
|
||||||
then
|
|
||||||
ext=".exe"
|
|
||||||
pathname=`echo -E $pathname |
|
|
||||||
sed 's/^;/.;/
|
|
||||||
s/;;/;.;/g
|
|
||||||
s/;$/;./
|
|
||||||
s/;/ /g
|
|
||||||
s/\\\\/\\//g' `
|
|
||||||
test_exec_flag="-r"
|
|
||||||
else
|
|
||||||
ext="" # No default extensions
|
|
||||||
pathname=`echo $pathname |
|
|
||||||
sed 's/^:/.:/
|
|
||||||
s/::/:.:/g
|
|
||||||
s/:$/:./
|
|
||||||
s/:/ /g' `
|
|
||||||
# Here is how we test to see if test/[] can handle -x
|
|
||||||
testfile="pp.t.$$"
|
|
||||||
|
|
||||||
cat > $testfile <<ENDTEST
|
|
||||||
#!/bin/sh
|
|
||||||
if [ -x / ] || [ -x /bin ] || [ -x /bin/ls ]; then
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
exit 1
|
|
||||||
ENDTEST
|
|
||||||
|
|
||||||
if `/bin/sh $testfile 2>/dev/null`; then
|
|
||||||
test_exec_flag="-x"
|
|
||||||
else
|
|
||||||
test_exec_flag="-r"
|
|
||||||
fi
|
|
||||||
rm -f $testfile
|
|
||||||
fi
|
|
||||||
|
|
||||||
for program in $programs
|
|
||||||
do
|
|
||||||
for path in $pathname
|
|
||||||
do
|
|
||||||
if [ $test_exec_flag $path/${program}${ext} ] && \
|
|
||||||
[ ! -d $path/${program}${ext} ]; then
|
|
||||||
if [ "x$echo" = "xyes" ]; then
|
|
||||||
echo $path/${program}${ext}
|
|
||||||
fi
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Next try without extension (if one was used above)
|
|
||||||
if [ "x$ext" != "x" ]; then
|
|
||||||
if [ $test_exec_flag $path/${program} ] && \
|
|
||||||
[ ! -d $path/${program} ]; then
|
|
||||||
if [ "x$echo" = "xyes" ]; then
|
|
||||||
echo $path/${program}
|
|
||||||
fi
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
done
|
|
||||||
exit 1
|
|
||||||
|
|
2
3rdparty/expat/conftools/ar-lib
vendored
2
3rdparty/expat/conftools/ar-lib
vendored
@ -4,7 +4,7 @@
|
|||||||
me=ar-lib
|
me=ar-lib
|
||||||
scriptversion=2019-07-04.01; # UTC
|
scriptversion=2019-07-04.01; # UTC
|
||||||
|
|
||||||
# Copyright (C) 2010-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2010-2021 Free Software Foundation, Inc.
|
||||||
# Written by Peter Rosin <peda@lysator.liu.se>.
|
# Written by Peter Rosin <peda@lysator.liu.se>.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
39
3rdparty/expat/conftools/ax-cxx-compile-stdcxx-11.m4
vendored
Normal file
39
3rdparty/expat/conftools/ax-cxx-compile-stdcxx-11.m4
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
# =============================================================================
|
||||||
|
# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
|
||||||
|
# =============================================================================
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# AX_CXX_COMPILE_STDCXX_11([ext|noext], [mandatory|optional])
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# Check for baseline language coverage in the compiler for the C++11
|
||||||
|
# standard; if necessary, add switches to CXX and CXXCPP to enable
|
||||||
|
# support.
|
||||||
|
#
|
||||||
|
# This macro is a convenience alias for calling the AX_CXX_COMPILE_STDCXX
|
||||||
|
# macro with the version set to C++11. The two optional arguments are
|
||||||
|
# forwarded literally as the second and third argument respectively.
|
||||||
|
# Please see the documentation for the AX_CXX_COMPILE_STDCXX macro for
|
||||||
|
# more information. If you want to use this macro, you also need to
|
||||||
|
# download the ax_cxx_compile_stdcxx.m4 file.
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
|
||||||
|
# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
|
||||||
|
# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
|
||||||
|
# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
|
||||||
|
# Copyright (c) 2015 Paul Norman <penorman@mac.com>
|
||||||
|
# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
|
||||||
|
#
|
||||||
|
# Copying and distribution of this file, with or without modification, are
|
||||||
|
# permitted in any medium without royalty provided the copyright notice
|
||||||
|
# and this notice are preserved. This file is offered as-is, without any
|
||||||
|
# warranty.
|
||||||
|
|
||||||
|
#serial 18
|
||||||
|
|
||||||
|
AX_REQUIRE_DEFINED([AX_CXX_COMPILE_STDCXX])
|
||||||
|
AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [AX_CXX_COMPILE_STDCXX([11], [$1], [$2])])
|
1018
3rdparty/expat/conftools/ax-cxx-compile-stdcxx.m4
vendored
Normal file
1018
3rdparty/expat/conftools/ax-cxx-compile-stdcxx.m4
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2
3rdparty/expat/conftools/compile
vendored
2
3rdparty/expat/conftools/compile
vendored
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
scriptversion=2018-03-07.03; # UTC
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
# Written by Tom Tromey <tromey@cygnus.com>.
|
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
1209
3rdparty/expat/conftools/config.guess
vendored
1209
3rdparty/expat/conftools/config.guess
vendored
File diff suppressed because it is too large
Load Diff
655
3rdparty/expat/conftools/config.sub
vendored
655
3rdparty/expat/conftools/config.sub
vendored
File diff suppressed because it is too large
Load Diff
2
3rdparty/expat/conftools/depcomp
vendored
2
3rdparty/expat/conftools/depcomp
vendored
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
scriptversion=2018-03-07.03; # UTC
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
30
3rdparty/expat/conftools/get-version.sh
vendored
30
3rdparty/expat/conftools/get-version.sh
vendored
@ -1,13 +1,39 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#
|
|
||||||
# USAGE: get-version.sh path/to/expat.h
|
# USAGE: get-version.sh path/to/expat.h
|
||||||
#
|
#
|
||||||
# This script will print Expat's version number on stdout. For example:
|
# This script will print Expat's version number on stdout. For example:
|
||||||
#
|
#
|
||||||
# $ ./conftools/get-version.sh ./lib/expat.h
|
# $ ./conftools/get-version.sh ./lib/expat.h
|
||||||
# 1.95.3
|
# 1.95.3
|
||||||
# $
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
|
# Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
# Copyright (c) 2017 Kerin Millar <kfm@plushkava.net>
|
||||||
|
# Licensed under the MIT license:
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
# a copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
# persons to whom the Software is furnished to do so, subject to the
|
||||||
|
# following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
# NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
if test $# = 0; then
|
if test $# = 0; then
|
||||||
echo "ERROR: pathname for expat.h was not provided."
|
echo "ERROR: pathname for expat.h was not provided."
|
||||||
|
144
3rdparty/expat/conftools/install-sh
vendored
144
3rdparty/expat/conftools/install-sh
vendored
@ -1,7 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# install - install a program, script, or datafile
|
# install - install a program, script, or datafile
|
||||||
|
|
||||||
scriptversion=2018-03-11.20; # UTC
|
scriptversion=2020-11-14.01; # UTC
|
||||||
|
|
||||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
||||||
# later released in X11R6 (xc/config/util/install.sh) with the
|
# later released in X11R6 (xc/config/util/install.sh) with the
|
||||||
@ -69,6 +69,11 @@ posix_mkdir=
|
|||||||
# Desired mode of installed file.
|
# Desired mode of installed file.
|
||||||
mode=0755
|
mode=0755
|
||||||
|
|
||||||
|
# Create dirs (including intermediate dirs) using mode 755.
|
||||||
|
# This is like GNU 'install' as of coreutils 8.32 (2020).
|
||||||
|
mkdir_umask=22
|
||||||
|
|
||||||
|
backupsuffix=
|
||||||
chgrpcmd=
|
chgrpcmd=
|
||||||
chmodcmd=$chmodprog
|
chmodcmd=$chmodprog
|
||||||
chowncmd=
|
chowncmd=
|
||||||
@ -99,18 +104,28 @@ Options:
|
|||||||
--version display version info and exit.
|
--version display version info and exit.
|
||||||
|
|
||||||
-c (ignored)
|
-c (ignored)
|
||||||
-C install only if different (preserve the last data modification time)
|
-C install only if different (preserve data modification time)
|
||||||
-d create directories instead of installing files.
|
-d create directories instead of installing files.
|
||||||
-g GROUP $chgrpprog installed files to GROUP.
|
-g GROUP $chgrpprog installed files to GROUP.
|
||||||
-m MODE $chmodprog installed files to MODE.
|
-m MODE $chmodprog installed files to MODE.
|
||||||
-o USER $chownprog installed files to USER.
|
-o USER $chownprog installed files to USER.
|
||||||
|
-p pass -p to $cpprog.
|
||||||
-s $stripprog installed files.
|
-s $stripprog installed files.
|
||||||
|
-S SUFFIX attempt to back up existing files, with suffix SUFFIX.
|
||||||
-t DIRECTORY install into DIRECTORY.
|
-t DIRECTORY install into DIRECTORY.
|
||||||
-T report an error if DSTFILE is a directory.
|
-T report an error if DSTFILE is a directory.
|
||||||
|
|
||||||
Environment variables override the default commands:
|
Environment variables override the default commands:
|
||||||
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
|
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
|
||||||
RMPROG STRIPPROG
|
RMPROG STRIPPROG
|
||||||
|
|
||||||
|
By default, rm is invoked with -f; when overridden with RMPROG,
|
||||||
|
it's up to you to specify -f if you want it.
|
||||||
|
|
||||||
|
If -S is not specified, no backups are attempted.
|
||||||
|
|
||||||
|
Email bug reports to bug-automake@gnu.org.
|
||||||
|
Automake home page: https://www.gnu.org/software/automake/
|
||||||
"
|
"
|
||||||
|
|
||||||
while test $# -ne 0; do
|
while test $# -ne 0; do
|
||||||
@ -137,8 +152,13 @@ while test $# -ne 0; do
|
|||||||
-o) chowncmd="$chownprog $2"
|
-o) chowncmd="$chownprog $2"
|
||||||
shift;;
|
shift;;
|
||||||
|
|
||||||
|
-p) cpprog="$cpprog -p";;
|
||||||
|
|
||||||
-s) stripcmd=$stripprog;;
|
-s) stripcmd=$stripprog;;
|
||||||
|
|
||||||
|
-S) backupsuffix="$2"
|
||||||
|
shift;;
|
||||||
|
|
||||||
-t)
|
-t)
|
||||||
is_target_a_directory=always
|
is_target_a_directory=always
|
||||||
dst_arg=$2
|
dst_arg=$2
|
||||||
@ -255,6 +275,10 @@ do
|
|||||||
dstdir=$dst
|
dstdir=$dst
|
||||||
test -d "$dstdir"
|
test -d "$dstdir"
|
||||||
dstdir_status=$?
|
dstdir_status=$?
|
||||||
|
# Don't chown directories that already exist.
|
||||||
|
if test $dstdir_status = 0; then
|
||||||
|
chowncmd=""
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
|
|
||||||
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
||||||
@ -301,22 +325,6 @@ do
|
|||||||
if test $dstdir_status != 0; then
|
if test $dstdir_status != 0; then
|
||||||
case $posix_mkdir in
|
case $posix_mkdir in
|
||||||
'')
|
'')
|
||||||
# Create intermediate dirs using mode 755 as modified by the umask.
|
|
||||||
# This is like FreeBSD 'install' as of 1997-10-28.
|
|
||||||
umask=`umask`
|
|
||||||
case $stripcmd.$umask in
|
|
||||||
# Optimize common cases.
|
|
||||||
*[2367][2367]) mkdir_umask=$umask;;
|
|
||||||
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
|
|
||||||
|
|
||||||
*[0-7])
|
|
||||||
mkdir_umask=`expr $umask + 22 \
|
|
||||||
- $umask % 100 % 40 + $umask % 20 \
|
|
||||||
- $umask % 10 % 4 + $umask % 2
|
|
||||||
`;;
|
|
||||||
*) mkdir_umask=$umask,go-w;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# With -d, create the new directory with the user-specified mode.
|
# With -d, create the new directory with the user-specified mode.
|
||||||
# Otherwise, rely on $mkdir_umask.
|
# Otherwise, rely on $mkdir_umask.
|
||||||
if test -n "$dir_arg"; then
|
if test -n "$dir_arg"; then
|
||||||
@ -326,52 +334,49 @@ do
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
posix_mkdir=false
|
posix_mkdir=false
|
||||||
case $umask in
|
# The $RANDOM variable is not portable (e.g., dash). Use it
|
||||||
*[123567][0-7][0-7])
|
# here however when possible just to lower collision chance.
|
||||||
# POSIX mkdir -p sets u+wx bits regardless of umask, which
|
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
||||||
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
# Note that $RANDOM variable is not portable (e.g. dash); Use it
|
|
||||||
# here however when possible just to lower collision chance.
|
|
||||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
|
||||||
|
|
||||||
trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
|
trap '
|
||||||
|
ret=$?
|
||||||
|
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
|
||||||
|
exit $ret
|
||||||
|
' 0
|
||||||
|
|
||||||
# Because "mkdir -p" follows existing symlinks and we likely work
|
# Because "mkdir -p" follows existing symlinks and we likely work
|
||||||
# directly in world-writeable /tmp, make sure that the '$tmpdir'
|
# directly in world-writeable /tmp, make sure that the '$tmpdir'
|
||||||
# directory is successfully created first before we actually test
|
# directory is successfully created first before we actually test
|
||||||
# 'mkdir -p' feature.
|
# 'mkdir -p'.
|
||||||
if (umask $mkdir_umask &&
|
if (umask $mkdir_umask &&
|
||||||
$mkdirprog $mkdir_mode "$tmpdir" &&
|
$mkdirprog $mkdir_mode "$tmpdir" &&
|
||||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
|
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
|
||||||
then
|
then
|
||||||
if test -z "$dir_arg" || {
|
if test -z "$dir_arg" || {
|
||||||
# Check for POSIX incompatibilities with -m.
|
# Check for POSIX incompatibilities with -m.
|
||||||
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
||||||
# other-writable bit of parent directory when it shouldn't.
|
# other-writable bit of parent directory when it shouldn't.
|
||||||
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
||||||
test_tmpdir="$tmpdir/a"
|
test_tmpdir="$tmpdir/a"
|
||||||
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
|
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
|
||||||
case $ls_ld_tmpdir in
|
case $ls_ld_tmpdir in
|
||||||
d????-?r-*) different_mode=700;;
|
d????-?r-*) different_mode=700;;
|
||||||
d????-?--*) different_mode=755;;
|
d????-?--*) different_mode=755;;
|
||||||
*) false;;
|
*) false;;
|
||||||
esac &&
|
esac &&
|
||||||
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
|
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
|
||||||
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
|
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
|
||||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
then posix_mkdir=:
|
then posix_mkdir=:
|
||||||
fi
|
fi
|
||||||
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
|
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
|
||||||
else
|
else
|
||||||
# Remove any dirs left behind by ancient mkdir implementations.
|
# Remove any dirs left behind by ancient mkdir implementations.
|
||||||
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
|
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
|
||||||
fi
|
fi
|
||||||
trap '' 0;;
|
trap '' 0;;
|
||||||
esac;;
|
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if
|
if
|
||||||
@ -382,7 +387,7 @@ do
|
|||||||
then :
|
then :
|
||||||
else
|
else
|
||||||
|
|
||||||
# The umask is ridiculous, or mkdir does not conform to POSIX,
|
# mkdir does not conform to POSIX,
|
||||||
# or it failed possibly due to a race condition. Create the
|
# or it failed possibly due to a race condition. Create the
|
||||||
# directory the slow way, step by step, checking for races as we go.
|
# directory the slow way, step by step, checking for races as we go.
|
||||||
|
|
||||||
@ -411,7 +416,7 @@ do
|
|||||||
prefixes=
|
prefixes=
|
||||||
else
|
else
|
||||||
if $posix_mkdir; then
|
if $posix_mkdir; then
|
||||||
(umask=$mkdir_umask &&
|
(umask $mkdir_umask &&
|
||||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
||||||
# Don't fail if two instances are running concurrently.
|
# Don't fail if two instances are running concurrently.
|
||||||
test -d "$prefix" || exit 1
|
test -d "$prefix" || exit 1
|
||||||
@ -488,6 +493,13 @@ do
|
|||||||
then
|
then
|
||||||
rm -f "$dsttmp"
|
rm -f "$dsttmp"
|
||||||
else
|
else
|
||||||
|
# If $backupsuffix is set, and the file being installed
|
||||||
|
# already exists, attempt a backup. Don't worry if it fails,
|
||||||
|
# e.g., if mv doesn't support -f.
|
||||||
|
if test -n "$backupsuffix" && test -f "$dst"; then
|
||||||
|
$doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
# Rename the file to the real destination.
|
# Rename the file to the real destination.
|
||||||
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
|
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
|
||||||
|
|
||||||
@ -502,9 +514,9 @@ do
|
|||||||
# file should still install successfully.
|
# file should still install successfully.
|
||||||
{
|
{
|
||||||
test ! -f "$dst" ||
|
test ! -f "$dst" ||
|
||||||
$doit $rmcmd -f "$dst" 2>/dev/null ||
|
$doit $rmcmd "$dst" 2>/dev/null ||
|
||||||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
|
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
|
||||||
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
|
{ $doit $rmcmd "$rmtmp" 2>/dev/null; :; }
|
||||||
} ||
|
} ||
|
||||||
{ echo "$0: cannot unlink or rename $dst" >&2
|
{ echo "$0: cannot unlink or rename $dst" >&2
|
||||||
(exit 1); exit 1
|
(exit 1); exit 1
|
||||||
|
1375
3rdparty/expat/conftools/ltmain.sh
vendored
Normal file → Executable file
1375
3rdparty/expat/conftools/ltmain.sh
vendored
Normal file → Executable file
File diff suppressed because it is too large
Load Diff
2
3rdparty/expat/conftools/missing
vendored
2
3rdparty/expat/conftools/missing
vendored
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
scriptversion=2018-03-07.03; # UTC
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||||
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
19
3rdparty/expat/conftools/test-driver
vendored
19
3rdparty/expat/conftools/test-driver
vendored
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
scriptversion=2018-03-07.03; # UTC
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
# Copyright (C) 2011-2020 Free Software Foundation, Inc.
|
# Copyright (C) 2011-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -42,11 +42,13 @@ print_usage ()
|
|||||||
{
|
{
|
||||||
cat <<END
|
cat <<END
|
||||||
Usage:
|
Usage:
|
||||||
test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
|
test-driver --test-name NAME --log-file PATH --trs-file PATH
|
||||||
[--expect-failure={yes|no}] [--color-tests={yes|no}]
|
[--expect-failure {yes|no}] [--color-tests {yes|no}]
|
||||||
[--enable-hard-errors={yes|no}] [--]
|
[--enable-hard-errors {yes|no}] [--]
|
||||||
TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
|
TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
|
||||||
|
|
||||||
The '--test-name', '--log-file' and '--trs-file' options are mandatory.
|
The '--test-name', '--log-file' and '--trs-file' options are mandatory.
|
||||||
|
See the GNU Automake documentation for information.
|
||||||
END
|
END
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -103,8 +105,11 @@ trap "st=130; $do_exit" 2
|
|||||||
trap "st=141; $do_exit" 13
|
trap "st=141; $do_exit" 13
|
||||||
trap "st=143; $do_exit" 15
|
trap "st=143; $do_exit" 15
|
||||||
|
|
||||||
# Test script is run here.
|
# Test script is run here. We create the file first, then append to it,
|
||||||
"$@" >$log_file 2>&1
|
# to ameliorate tests themselves also writing to the log file. Our tests
|
||||||
|
# don't, but others can (automake bug#35762).
|
||||||
|
: >"$log_file"
|
||||||
|
"$@" >>"$log_file" 2>&1
|
||||||
estatus=$?
|
estatus=$?
|
||||||
|
|
||||||
if test $enable_hard_errors = no && test $estatus -eq 99; then
|
if test $enable_hard_errors = no && test $estatus -eq 99; then
|
||||||
@ -126,7 +131,7 @@ esac
|
|||||||
# know whether the test passed or failed simply by looking at the '.log'
|
# know whether the test passed or failed simply by looking at the '.log'
|
||||||
# file, without the need of also peaking into the corresponding '.trs'
|
# file, without the need of also peaking into the corresponding '.trs'
|
||||||
# file (automake bug#11814).
|
# file (automake bug#11814).
|
||||||
echo "$res $test_name (exit status: $estatus)" >>$log_file
|
echo "$res $test_name (exit status: $estatus)" >>"$log_file"
|
||||||
|
|
||||||
# Report outcome to console.
|
# Report outcome to console.
|
||||||
echo "${col}${res}${std}: $test_name"
|
echo "${col}${res}${std}: $test_name"
|
||||||
|
26
3rdparty/expat/doc/Makefile.am
vendored
26
3rdparty/expat/doc/Makefile.am
vendored
@ -6,7 +6,10 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2017 Stephen Groat <stephen@groat.us>
|
||||||
|
# Copyright (c) 2017 Joe Orton <jorton@redhat.com>
|
||||||
|
# Copyright (c) 2024 Tomas Korbar <tkorbar@redhat.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -30,30 +33,27 @@
|
|||||||
|
|
||||||
.PHONY: dist-hook # not inside conditional to avoid automake warning
|
.PHONY: dist-hook # not inside conditional to avoid automake warning
|
||||||
|
|
||||||
if WITH_DOCBOOK
|
if WITH_MANPAGE
|
||||||
dist_man_MANS = xmlwf.1
|
dist_man_MANS = xmlwf.1
|
||||||
|
|
||||||
xmlwf.1: xmlwf.xml
|
xmlwf.1: xmlwf.xml
|
||||||
-rm -f $@
|
-rm -f $@
|
||||||
$(DOCBOOK_TO_MAN) $<
|
test "x$(DOCBOOK_TO_MAN)" != x && $(DOCBOOK_TO_MAN) $<
|
||||||
test -f $@ || mv XMLWF.1 $@
|
test -f $@ || mv XMLWF.1 $@
|
||||||
else
|
endif
|
||||||
|
|
||||||
|
if !WITH_DISTRIBUTABLE_MANPAGE
|
||||||
dist-hook:
|
dist-hook:
|
||||||
@echo 'ERROR: Configure with --with-docbook for "make dist".' 1>&2
|
@echo 'ERROR: Configure with --with-docbook for "make dist".' 1>&2
|
||||||
@false
|
@false
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# https://www.gnu.org/software/automake/manual/automake.html#What-Gets-Cleaned
|
if !WITH_PREBUILT_MANPAGE
|
||||||
.PHONY: clean-local
|
CLEANFILES = xmlwf.1
|
||||||
clean-local: clean-local-check
|
endif
|
||||||
|
|
||||||
.PHONY: clean-local-check
|
|
||||||
clean-local-check:
|
|
||||||
$(RM) xmlwf.1
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
expat.png \
|
ok.min.css \
|
||||||
reference.html \
|
reference.html \
|
||||||
style.css \
|
style.css \
|
||||||
valid-xhtml10.png \
|
|
||||||
xmlwf.xml
|
xmlwf.xml
|
||||||
|
94
3rdparty/expat/doc/Makefile.in
vendored
94
3rdparty/expat/doc/Makefile.in
vendored
@ -1,7 +1,7 @@
|
|||||||
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -22,7 +22,10 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2017 Stephen Groat <stephen@groat.us>
|
||||||
|
# Copyright (c) 2017 Joe Orton <jorton@redhat.com>
|
||||||
|
# Copyright (c) 2024 Tomas Korbar <tkorbar@redhat.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -130,6 +133,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
|||||||
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx-11.m4 \
|
||||||
$(top_srcdir)/configure.ac
|
$(top_srcdir)/configure.ac
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
$(ACLOCAL_M4)
|
$(ACLOCAL_M4)
|
||||||
@ -207,8 +212,10 @@ AWK = @AWK@
|
|||||||
CC = @CC@
|
CC = @CC@
|
||||||
CCDEPMODE = @CCDEPMODE@
|
CCDEPMODE = @CCDEPMODE@
|
||||||
CFLAGS = @CFLAGS@
|
CFLAGS = @CFLAGS@
|
||||||
CPP = @CPP@
|
CMAKE_SHARED_LIBRARY_PREFIX = @CMAKE_SHARED_LIBRARY_PREFIX@
|
||||||
CPPFLAGS = @CPPFLAGS@
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CSCOPE = @CSCOPE@
|
||||||
|
CTAGS = @CTAGS@
|
||||||
CXX = @CXX@
|
CXX = @CXX@
|
||||||
CXXCPP = @CXXCPP@
|
CXXCPP = @CXXCPP@
|
||||||
CXXDEPMODE = @CXXDEPMODE@
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
@ -224,10 +231,20 @@ ECHO_C = @ECHO_C@
|
|||||||
ECHO_N = @ECHO_N@
|
ECHO_N = @ECHO_N@
|
||||||
ECHO_T = @ECHO_T@
|
ECHO_T = @ECHO_T@
|
||||||
EGREP = @EGREP@
|
EGREP = @EGREP@
|
||||||
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
|
EXPAT_ATTR_INFO = @EXPAT_ATTR_INFO@
|
||||||
|
EXPAT_CHAR_TYPE = @EXPAT_CHAR_TYPE@
|
||||||
|
EXPAT_CONTEXT_BYTES = @EXPAT_CONTEXT_BYTES@
|
||||||
|
EXPAT_DTD = @EXPAT_DTD@
|
||||||
|
EXPAT_LARGE_SIZE = @EXPAT_LARGE_SIZE@
|
||||||
|
EXPAT_MIN_SIZE = @EXPAT_MIN_SIZE@
|
||||||
|
EXPAT_NS = @EXPAT_NS@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
FILEMAP = @FILEMAP@
|
FILEMAP = @FILEMAP@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
|
HAVE_CXX11 = @HAVE_CXX11@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
@ -237,6 +254,8 @@ LD = @LD@
|
|||||||
LDFLAGS = @LDFLAGS@
|
LDFLAGS = @LDFLAGS@
|
||||||
LIBAGE = @LIBAGE@
|
LIBAGE = @LIBAGE@
|
||||||
LIBCURRENT = @LIBCURRENT@
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBDIR_BASENAME = @LIBDIR_BASENAME@
|
||||||
|
LIBM = @LIBM@
|
||||||
LIBOBJS = @LIBOBJS@
|
LIBOBJS = @LIBOBJS@
|
||||||
LIBREVISION = @LIBREVISION@
|
LIBREVISION = @LIBREVISION@
|
||||||
LIBS = @LIBS@
|
LIBS = @LIBS@
|
||||||
@ -245,6 +264,7 @@ LIPO = @LIPO@
|
|||||||
LN_S = @LN_S@
|
LN_S = @LN_S@
|
||||||
LTLIBOBJS = @LTLIBOBJS@
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAINT = @MAINT@
|
||||||
MAKEINFO = @MAKEINFO@
|
MAKEINFO = @MAKEINFO@
|
||||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
MKDIR_P = @MKDIR_P@
|
MKDIR_P = @MKDIR_P@
|
||||||
@ -266,9 +286,12 @@ RANLIB = @RANLIB@
|
|||||||
SED = @SED@
|
SED = @SED@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
SHELL = @SHELL@
|
SHELL = @SHELL@
|
||||||
|
SIZEOF_VOID_P = @SIZEOF_VOID_P@
|
||||||
|
SO_MAJOR = @SO_MAJOR@
|
||||||
|
SO_MINOR = @SO_MINOR@
|
||||||
|
SO_PATCH = @SO_PATCH@
|
||||||
STRIP = @STRIP@
|
STRIP = @STRIP@
|
||||||
VERSION = @VERSION@
|
VERSION = @VERSION@
|
||||||
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
|
||||||
abs_builddir = @abs_builddir@
|
abs_builddir = @abs_builddir@
|
||||||
abs_srcdir = @abs_srcdir@
|
abs_srcdir = @abs_srcdir@
|
||||||
abs_top_builddir = @abs_top_builddir@
|
abs_top_builddir = @abs_top_builddir@
|
||||||
@ -323,18 +346,18 @@ target_alias = @target_alias@
|
|||||||
top_build_prefix = @top_build_prefix@
|
top_build_prefix = @top_build_prefix@
|
||||||
top_builddir = @top_builddir@
|
top_builddir = @top_builddir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
@WITH_DOCBOOK_TRUE@dist_man_MANS = xmlwf.1
|
@WITH_MANPAGE_TRUE@dist_man_MANS = xmlwf.1
|
||||||
|
@WITH_PREBUILT_MANPAGE_FALSE@CLEANFILES = xmlwf.1
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
expat.png \
|
ok.min.css \
|
||||||
reference.html \
|
reference.html \
|
||||||
style.css \
|
style.css \
|
||||||
valid-xhtml10.png \
|
|
||||||
xmlwf.xml
|
xmlwf.xml
|
||||||
|
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
@for dep in $?; do \
|
@for dep in $?; do \
|
||||||
case '$(am__configure_deps)' in \
|
case '$(am__configure_deps)' in \
|
||||||
*$$dep*) \
|
*$$dep*) \
|
||||||
@ -358,9 +381,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(am__aclocal_m4_deps):
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
@ -418,8 +441,7 @@ ctags CTAGS:
|
|||||||
|
|
||||||
cscope cscopelist:
|
cscope cscopelist:
|
||||||
|
|
||||||
@WITH_DOCBOOK_TRUE@dist-hook:
|
@WITH_DISTRIBUTABLE_MANPAGE_TRUE@dist-hook:
|
||||||
|
|
||||||
distdir: $(BUILT_SOURCES)
|
distdir: $(BUILT_SOURCES)
|
||||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
@ -485,6 +507,7 @@ install-strip:
|
|||||||
mostlyclean-generic:
|
mostlyclean-generic:
|
||||||
|
|
||||||
clean-generic:
|
clean-generic:
|
||||||
|
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
@ -495,7 +518,7 @@ maintainer-clean-generic:
|
|||||||
@echo "it deletes files that may require special tools to rebuild."
|
@echo "it deletes files that may require special tools to rebuild."
|
||||||
clean: clean-am
|
clean: clean-am
|
||||||
|
|
||||||
clean-am: clean-generic clean-libtool clean-local mostlyclean-am
|
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||||
|
|
||||||
distclean: distclean-am
|
distclean: distclean-am
|
||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
@ -564,38 +587,31 @@ uninstall-man: uninstall-man1
|
|||||||
.MAKE: install-am install-strip
|
.MAKE: install-am install-strip
|
||||||
|
|
||||||
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||||
clean-local cscopelist-am ctags-am dist-hook distclean \
|
cscopelist-am ctags-am dist-hook distclean distclean-generic \
|
||||||
distclean-generic distclean-libtool distdir dvi dvi-am html \
|
distclean-libtool distdir dvi dvi-am html html-am info info-am \
|
||||||
html-am info info-am install install-am install-data \
|
install install-am install-data install-data-am install-dvi \
|
||||||
install-data-am install-dvi install-dvi-am install-exec \
|
install-dvi-am install-exec install-exec-am install-html \
|
||||||
install-exec-am install-html install-html-am install-info \
|
install-html-am install-info install-info-am install-man \
|
||||||
install-info-am install-man install-man1 install-pdf \
|
install-man1 install-pdf install-pdf-am install-ps \
|
||||||
install-pdf-am install-ps install-ps-am install-strip \
|
install-ps-am install-strip installcheck installcheck-am \
|
||||||
installcheck installcheck-am installdirs maintainer-clean \
|
installdirs maintainer-clean maintainer-clean-generic \
|
||||||
maintainer-clean-generic mostlyclean mostlyclean-generic \
|
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
||||||
mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
|
ps ps-am tags-am uninstall uninstall-am uninstall-man \
|
||||||
uninstall-am uninstall-man uninstall-man1
|
uninstall-man1
|
||||||
|
|
||||||
.PRECIOUS: Makefile
|
.PRECIOUS: Makefile
|
||||||
|
|
||||||
|
|
||||||
.PHONY: dist-hook # not inside conditional to avoid automake warning
|
.PHONY: dist-hook # not inside conditional to avoid automake warning
|
||||||
|
|
||||||
@WITH_DOCBOOK_TRUE@xmlwf.1: xmlwf.xml
|
@WITH_MANPAGE_TRUE@xmlwf.1: xmlwf.xml
|
||||||
@WITH_DOCBOOK_TRUE@ -rm -f $@
|
@WITH_MANPAGE_TRUE@ -rm -f $@
|
||||||
@WITH_DOCBOOK_TRUE@ $(DOCBOOK_TO_MAN) $<
|
@WITH_MANPAGE_TRUE@ test "x$(DOCBOOK_TO_MAN)" != x && $(DOCBOOK_TO_MAN) $<
|
||||||
@WITH_DOCBOOK_TRUE@ test -f $@ || mv XMLWF.1 $@
|
@WITH_MANPAGE_TRUE@ test -f $@ || mv XMLWF.1 $@
|
||||||
@WITH_DOCBOOK_FALSE@dist-hook:
|
|
||||||
@WITH_DOCBOOK_FALSE@ @echo 'ERROR: Configure with --with-docbook for "make dist".' 1>&2
|
|
||||||
@WITH_DOCBOOK_FALSE@ @false
|
|
||||||
|
|
||||||
# https://www.gnu.org/software/automake/manual/automake.html#What-Gets-Cleaned
|
@WITH_DISTRIBUTABLE_MANPAGE_FALSE@dist-hook:
|
||||||
.PHONY: clean-local
|
@WITH_DISTRIBUTABLE_MANPAGE_FALSE@ @echo 'ERROR: Configure with --with-docbook for "make dist".' 1>&2
|
||||||
clean-local: clean-local-check
|
@WITH_DISTRIBUTABLE_MANPAGE_FALSE@ @false
|
||||||
|
|
||||||
.PHONY: clean-local-check
|
|
||||||
clean-local-check:
|
|
||||||
$(RM) xmlwf.1
|
|
||||||
|
|
||||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||||
|
BIN
3rdparty/expat/doc/expat.png
vendored
BIN
3rdparty/expat/doc/expat.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 920 B |
2
3rdparty/expat/doc/ok.min.css
vendored
Normal file
2
3rdparty/expat/doc/ok.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
629
3rdparty/expat/doc/reference.html
vendored
629
3rdparty/expat/doc/reference.html
vendored
File diff suppressed because it is too large
Load Diff
134
3rdparty/expat/doc/style.css
vendored
134
3rdparty/expat/doc/style.css
vendored
@ -1,101 +1,47 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2000-2004 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2021 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Stop not using half the screen */
|
||||||
body {
|
body {
|
||||||
background-color: white;
|
max-width: none; /* was: 80ch */
|
||||||
border: 0px;
|
|
||||||
margin: 0px;
|
|
||||||
padding: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.corner {
|
|
||||||
width: 200px;
|
|
||||||
height: 80px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.banner {
|
|
||||||
background-color: rgb(110,139,61);
|
|
||||||
color: rgb(255,236,176);
|
|
||||||
padding-left: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.banner h1 {
|
|
||||||
font-size: 200%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content {
|
|
||||||
padding: 0em 2em 1em 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.releaseno {
|
|
||||||
background-color: rgb(110,139,61);
|
|
||||||
color: rgb(255,236,176);
|
|
||||||
padding-bottom: 0.3em;
|
|
||||||
padding-top: 0.5em;
|
|
||||||
text-align: center;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
.noborder {
|
|
||||||
border-width: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.eg {
|
|
||||||
padding-left: 1em;
|
|
||||||
padding-top: .5em;
|
|
||||||
padding-bottom: .5em;
|
|
||||||
border: solid thin;
|
|
||||||
margin: 1em 0;
|
|
||||||
background-color: tan;
|
|
||||||
margin-left: 2em;
|
|
||||||
margin-right: 10%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pseudocode {
|
|
||||||
padding-left: 1em;
|
|
||||||
padding-top: .5em;
|
|
||||||
padding-bottom: .5em;
|
|
||||||
border: solid thin;
|
|
||||||
margin: 1em 0;
|
|
||||||
background-color: rgb(250,220,180);
|
|
||||||
margin-left: 2em;
|
|
||||||
margin-right: 10%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.handler {
|
|
||||||
width: 100%;
|
|
||||||
border-top-width: thin;
|
|
||||||
margin-bottom: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.handler p {
|
|
||||||
margin-left: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.setter {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
.signature {
|
|
||||||
color: navy;
|
|
||||||
}
|
|
||||||
|
|
||||||
.fcndec {
|
|
||||||
width: 100%;
|
|
||||||
border-top-width: thin;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
.fcndef {
|
|
||||||
margin-left: 2em;
|
|
||||||
margin-bottom: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
dd {
|
|
||||||
margin-bottom: 2em;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.cpp-symbols dt {
|
.cpp-symbols dt {
|
||||||
font-family: monospace;
|
font-family: monospace;
|
||||||
}
|
}
|
||||||
.cpp-symbols dd {
|
|
||||||
margin-bottom: 1em;
|
/* Resemble style of <footer> which is not part of xhtml1-strict */
|
||||||
|
.footer {
|
||||||
|
font-size: var(--ok-fs-5);
|
||||||
|
color: var(--ok-tc-1);
|
||||||
}
|
}
|
||||||
|
BIN
3rdparty/expat/doc/valid-xhtml10.png
vendored
BIN
3rdparty/expat/doc/valid-xhtml10.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 1.9 KiB |
135
3rdparty/expat/doc/xmlwf.1
vendored
135
3rdparty/expat/doc/xmlwf.1
vendored
@ -5,7 +5,7 @@
|
|||||||
\\$2 \(la\\$1\(ra\\$3
|
\\$2 \(la\\$1\(ra\\$3
|
||||||
..
|
..
|
||||||
.if \n(.g .mso www.tmac
|
.if \n(.g .mso www.tmac
|
||||||
.TH XMLWF 1 "March 11, 2016" "" ""
|
.TH XMLWF 1 "November 6, 2024" "" ""
|
||||||
.SH NAME
|
.SH NAME
|
||||||
xmlwf \- Determines if an XML document is well-formed
|
xmlwf \- Determines if an XML document is well-formed
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
@ -15,7 +15,27 @@ xmlwf \- Determines if an XML document is well-formed
|
|||||||
\fBxmlwf\fR \kx
|
\fBxmlwf\fR \kx
|
||||||
.if (\nx>(\n(.l/2)) .nr x (\n(.l/5)
|
.if (\nx>(\n(.l/2)) .nr x (\n(.l/5)
|
||||||
'in \n(.iu+\nxu
|
'in \n(.iu+\nxu
|
||||||
[\fB-s\fR] [\fB-n\fR] [\fB-p\fR] [\fB-x\fR] [\fB-e \fIencoding\fB\fR] [\fB-w\fR] [\fB-d \fIoutput-dir\fB\fR] [\fB-c\fR] [\fB-m\fR] [\fB-r\fR] [\fB-t\fR] [\fB-N\fR] [\fB-v\fR] [file ...]
|
[\fIOPTIONS\fR] [\fIFILE\fR ...]
|
||||||
|
'in \n(.iu-\nxu
|
||||||
|
.ad b
|
||||||
|
'hy
|
||||||
|
'nh
|
||||||
|
.fi
|
||||||
|
.ad l
|
||||||
|
\fBxmlwf\fR \kx
|
||||||
|
.if (\nx>(\n(.l/2)) .nr x (\n(.l/5)
|
||||||
|
'in \n(.iu+\nxu
|
||||||
|
\fB-h\fR | \fB--help\fR
|
||||||
|
'in \n(.iu-\nxu
|
||||||
|
.ad b
|
||||||
|
'hy
|
||||||
|
'nh
|
||||||
|
.fi
|
||||||
|
.ad l
|
||||||
|
\fBxmlwf\fR \kx
|
||||||
|
.if (\nx>(\n(.l/2)) .nr x (\n(.l/5)
|
||||||
|
'in \n(.iu+\nxu
|
||||||
|
\fB-v\fR | \fB--version\fR
|
||||||
'in \n(.iu-\nxu
|
'in \n(.iu-\nxu
|
||||||
.ad b
|
.ad b
|
||||||
'hy
|
'hy
|
||||||
@ -34,7 +54,7 @@ following rules:
|
|||||||
\(bu
|
\(bu
|
||||||
The file begins with an XML declaration. For instance,
|
The file begins with an XML declaration. For instance,
|
||||||
\*(T<<?xml version="1.0" standalone="yes"?>\*(T>.
|
\*(T<<?xml version="1.0" standalone="yes"?>\*(T>.
|
||||||
\fINOTE:\fR
|
\fINOTE\fR:
|
||||||
\fBxmlwf\fR does not currently
|
\fBxmlwf\fR does not currently
|
||||||
check for a valid XML declaration.
|
check for a valid XML declaration.
|
||||||
.TP 0.2i
|
.TP 0.2i
|
||||||
@ -62,10 +82,42 @@ it does not check the DTD. However, it does support
|
|||||||
external entities (see the \*(T<\fB\-x\fR\*(T> option).
|
external entities (see the \*(T<\fB\-x\fR\*(T> option).
|
||||||
.SH OPTIONS
|
.SH OPTIONS
|
||||||
When an option includes an argument, you may specify the argument either
|
When an option includes an argument, you may specify the argument either
|
||||||
separately ("\*(T<\fB\-d\fR\*(T> output") or concatenated with the
|
separately ("\*(T<\fB\-d\fR\*(T> \fIoutput\fR") or concatenated with the
|
||||||
option ("\*(T<\fB\-d\fR\*(T>output"). \fBxmlwf\fR
|
option ("\*(T<\fB\-d\fR\*(T>\fIoutput\fR"). \fBxmlwf\fR
|
||||||
supports both.
|
supports both.
|
||||||
.TP
|
.TP
|
||||||
|
\*(T<\fB\-a\fR\*(T> \fIfactor\fR
|
||||||
|
Sets the maximum tolerated amplification factor
|
||||||
|
for protection against billion laughs attacks (default: 100.0).
|
||||||
|
The amplification factor is calculated as ..
|
||||||
|
|
||||||
|
.nf
|
||||||
|
|
||||||
|
amplification := (direct + indirect) / direct
|
||||||
|
|
||||||
|
.fi
|
||||||
|
|
||||||
|
\&.. while parsing, whereas
|
||||||
|
<direct> is the number of bytes read
|
||||||
|
from the primary document in parsing and
|
||||||
|
<indirect> is the number of bytes
|
||||||
|
added by expanding entities and reading of external DTD files,
|
||||||
|
combined.
|
||||||
|
|
||||||
|
\fINOTE\fR:
|
||||||
|
If you ever need to increase this value for non-attack payload,
|
||||||
|
please file a bug report.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-b\fR\*(T> \fIbytes\fR
|
||||||
|
Sets the number of output bytes (including amplification)
|
||||||
|
needed to activate protection against billion laughs attacks
|
||||||
|
(default: 8 MiB).
|
||||||
|
This can be thought of as an "activation threshold".
|
||||||
|
|
||||||
|
\fINOTE\fR:
|
||||||
|
If you ever need to increase this value for non-attack payload,
|
||||||
|
please file a bug report.
|
||||||
|
.TP
|
||||||
\*(T<\fB\-c\fR\*(T>
|
\*(T<\fB\-c\fR\*(T>
|
||||||
If the input file is well-formed and \fBxmlwf\fR
|
If the input file is well-formed and \fBxmlwf\fR
|
||||||
doesn't encounter any errors, the input file is simply copied to
|
doesn't encounter any errors, the input file is simply copied to
|
||||||
@ -73,7 +125,7 @@ the output directory unchanged.
|
|||||||
This implies no namespaces (turns off \*(T<\fB\-n\fR\*(T>) and
|
This implies no namespaces (turns off \*(T<\fB\-n\fR\*(T>) and
|
||||||
requires \*(T<\fB\-d\fR\*(T> to specify an output directory.
|
requires \*(T<\fB\-d\fR\*(T> to specify an output directory.
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB\-d output\-dir\fR\*(T>
|
\*(T<\fB\-d\fR\*(T> \fIoutput-dir\fR
|
||||||
Specifies a directory to contain transformed
|
Specifies a directory to contain transformed
|
||||||
representations of the input files.
|
representations of the input files.
|
||||||
By default, \*(T<\fB\-d\fR\*(T> outputs a canonical representation
|
By default, \*(T<\fB\-d\fR\*(T> outputs a canonical representation
|
||||||
@ -96,7 +148,7 @@ is treated equivalently to data.
|
|||||||
More on canonical XML can be found at
|
More on canonical XML can be found at
|
||||||
http://www.jclark.com/xml/canonxml.html .
|
http://www.jclark.com/xml/canonxml.html .
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB\-e encoding\fR\*(T>
|
\*(T<\fB\-e\fR\*(T> \fIencoding\fR
|
||||||
Specifies the character encoding for the document, overriding
|
Specifies the character encoding for the document, overriding
|
||||||
any document encoding declaration. \fBxmlwf\fR
|
any document encoding declaration. \fBxmlwf\fR
|
||||||
supports four built-in encodings:
|
supports four built-in encodings:
|
||||||
@ -106,6 +158,25 @@ supports four built-in encodings:
|
|||||||
\*(T<ISO\-8859\-1\*(T>.
|
\*(T<ISO\-8859\-1\*(T>.
|
||||||
Also see the \*(T<\fB\-w\fR\*(T> option.
|
Also see the \*(T<\fB\-w\fR\*(T> option.
|
||||||
.TP
|
.TP
|
||||||
|
\*(T<\fB\-g\fR\*(T> \fIbytes\fR
|
||||||
|
Sets the buffer size to request per call pair to
|
||||||
|
\*(T<\fBXML_GetBuffer\fR\*(T> and \*(T<\fBread\fR\*(T>
|
||||||
|
(default: 8 KiB).
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-h\fR\*(T>, \*(T<\fB\-\-help\fR\*(T>
|
||||||
|
Prints short usage information on command \fBxmlwf\fR,
|
||||||
|
and then exits.
|
||||||
|
Similar to this man page but more concise.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-k\fR\*(T>
|
||||||
|
When processing multiple files, \fBxmlwf\fR
|
||||||
|
by default halts after the the first file with an error.
|
||||||
|
This tells \fBxmlwf\fR to report the error
|
||||||
|
but to keep processing.
|
||||||
|
This can be useful, for example, when testing a filter that converts
|
||||||
|
many files to XML and you want to quickly find out which conversions
|
||||||
|
failed.
|
||||||
|
.TP
|
||||||
\*(T<\fB\-m\fR\*(T>
|
\*(T<\fB\-m\fR\*(T>
|
||||||
Outputs some strange sort of XML file that completely
|
Outputs some strange sort of XML file that completely
|
||||||
describes the input file, including character positions.
|
describes the input file, including character positions.
|
||||||
@ -121,13 +192,17 @@ This matches the example output used by the formal XML test cases.
|
|||||||
Requires \*(T<\fB\-d\fR\*(T> to specify an output file.
|
Requires \*(T<\fB\-d\fR\*(T> to specify an output file.
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB\-p\fR\*(T>
|
\*(T<\fB\-p\fR\*(T>
|
||||||
Tells xmlwf to process external DTDs and parameter
|
Tells \fBxmlwf\fR to process external DTDs and parameter
|
||||||
entities.
|
entities.
|
||||||
|
|
||||||
Normally \fBxmlwf\fR never parses parameter
|
Normally \fBxmlwf\fR never parses parameter
|
||||||
entities. \*(T<\fB\-p\fR\*(T> tells it to always parse them.
|
entities. \*(T<\fB\-p\fR\*(T> tells it to always parse them.
|
||||||
\*(T<\fB\-p\fR\*(T> implies \*(T<\fB\-x\fR\*(T>.
|
\*(T<\fB\-p\fR\*(T> implies \*(T<\fB\-x\fR\*(T>.
|
||||||
.TP
|
.TP
|
||||||
|
\*(T<\fB\-q\fR\*(T>
|
||||||
|
Disable reparse deferral, and allow quadratic parse runtime
|
||||||
|
on large tokens (default: reparse deferral enabled).
|
||||||
|
.TP
|
||||||
\*(T<\fB\-r\fR\*(T>
|
\*(T<\fB\-r\fR\*(T>
|
||||||
Normally \fBxmlwf\fR memory-maps the XML file
|
Normally \fBxmlwf\fR memory-maps the XML file
|
||||||
before parsing; this can result in faster parsing on many
|
before parsing; this can result in faster parsing on many
|
||||||
@ -156,7 +231,7 @@ without client overhead.
|
|||||||
\*(T<\fB\-t\fR\*(T> turns off most of the output options
|
\*(T<\fB\-t\fR\*(T> turns off most of the output options
|
||||||
(\*(T<\fB\-d\fR\*(T>, \*(T<\fB\-m\fR\*(T>, \*(T<\fB\-c\fR\*(T>, ...).
|
(\*(T<\fB\-d\fR\*(T>, \*(T<\fB\-m\fR\*(T>, \*(T<\fB\-c\fR\*(T>, ...).
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB\-v\fR\*(T>
|
\*(T<\fB\-v\fR\*(T>, \*(T<\fB\-\-version\fR\*(T>
|
||||||
Prints the version of the Expat library being used, including some
|
Prints the version of the Expat library being used, including some
|
||||||
information on the compile-time configuration of the library, and
|
information on the compile-time configuration of the library, and
|
||||||
then exits.
|
then exits.
|
||||||
@ -165,7 +240,7 @@ then exits.
|
|||||||
Enables support for Windows code pages.
|
Enables support for Windows code pages.
|
||||||
Normally, \fBxmlwf\fR will throw an error if it
|
Normally, \fBxmlwf\fR will throw an error if it
|
||||||
runs across an encoding that it is not equipped to handle itself. With
|
runs across an encoding that it is not equipped to handle itself. With
|
||||||
\*(T<\fB\-w\fR\*(T>, xmlwf will try to use a Windows code
|
\*(T<\fB\-w\fR\*(T>, \fBxmlwf\fR will try to use a Windows code
|
||||||
page. See also \*(T<\fB\-e\fR\*(T>.
|
page. See also \*(T<\fB\-e\fR\*(T>.
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB\-x\fR\*(T>
|
\*(T<\fB\-x\fR\*(T>
|
||||||
@ -210,24 +285,32 @@ will run \fBxmlwf\fR on the file
|
|||||||
Older versions of \fBxmlwf\fR do not support
|
Older versions of \fBxmlwf\fR do not support
|
||||||
reading from standard input.
|
reading from standard input.
|
||||||
.SH OUTPUT
|
.SH OUTPUT
|
||||||
If an input file is not well-formed,
|
\fBxmlwf\fR outputs nothing for files which are problem-free.
|
||||||
\fBxmlwf\fR prints a single line describing
|
If any input file is not well-formed, or if the output for any
|
||||||
the problem to standard output. If a file is well formed,
|
input file cannot be opened, \fBxmlwf\fR prints a single
|
||||||
\fBxmlwf\fR outputs nothing.
|
line describing the problem to standard output.
|
||||||
|
.PP
|
||||||
|
If the \*(T<\fB\-k\fR\*(T> option is not provided, \fBxmlwf\fR
|
||||||
|
halts upon encountering a well-formedness or output-file error.
|
||||||
|
If \*(T<\fB\-k\fR\*(T> is provided, \fBxmlwf\fR continues
|
||||||
|
processing the remaining input files, describing problems found with any of them.
|
||||||
.SH "EXIT STATUS"
|
.SH "EXIT STATUS"
|
||||||
For option \*(T<\fB\-v\fR\*(T> or \*(T<\fB\-h\fR\*(T>, \fBxmlwf\fR always exits with status code 0. For other cases, the following exit status codes are returned:
|
For options \*(T<\fB\-v\fR\*(T>|\*(T<\fB\-\-version\fR\*(T> or \*(T<\fB\-h\fR\*(T>|\*(T<\fB\-\-help\fR\*(T>, \fBxmlwf\fR always exits with status code 0. For other cases, the following exit status codes are returned:
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB0\fR\*(T>
|
\*(T<\fB0\fR\*(T>
|
||||||
The input files are well-formed.
|
The input files are well-formed and the output (if requested) was written successfully.
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB1\fR\*(T>
|
\*(T<\fB1\fR\*(T>
|
||||||
An internal error occurred.
|
An internal error occurred.
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB2\fR\*(T>
|
\*(T<\fB2\fR\*(T>
|
||||||
An input file was not well-formed or could not be parsed.
|
One or more input files were not well-formed or could not be parsed.
|
||||||
.TP
|
.TP
|
||||||
\*(T<\fB3\fR\*(T>
|
\*(T<\fB3\fR\*(T>
|
||||||
If using the \*(T<\fB\-d\fR\*(T> option, an error occurred opening an output file.
|
If using the \*(T<\fB\-d\fR\*(T> option, an error occurred opening an output file.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB4\fR\*(T>
|
||||||
|
There was a command-line argument error in how \fBxmlwf\fR was invoked.
|
||||||
.SH BUGS
|
.SH BUGS
|
||||||
The errors should go to standard error, not standard output.
|
The errors should go to standard error, not standard output.
|
||||||
.PP
|
.PP
|
||||||
@ -239,24 +322,16 @@ I have no idea why anyone would want to use the
|
|||||||
\*(T<\fB\-d\fR\*(T>, \*(T<\fB\-c\fR\*(T>, and
|
\*(T<\fB\-d\fR\*(T>, \*(T<\fB\-c\fR\*(T>, and
|
||||||
\*(T<\fB\-m\fR\*(T> options. If someone could explain it to
|
\*(T<\fB\-m\fR\*(T> options. If someone could explain it to
|
||||||
me, I'd like to add this information to this manpage.
|
me, I'd like to add this information to this manpage.
|
||||||
.SH ALTERNATIVES
|
|
||||||
Here are some XML validators on the web:
|
|
||||||
|
|
||||||
.nf
|
|
||||||
|
|
||||||
http://www.hcrc.ed.ac.uk/~richard/xml\-check.html
|
|
||||||
http://www.stg.brown.edu/service/xmlvalid/
|
|
||||||
http://www.scripting.com/frontier5/xml/code/xmlValidator.html
|
|
||||||
http://www.xml.com/pub/a/tools/ruwf/check.html
|
|
||||||
.fi
|
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
.nf
|
.nf
|
||||||
|
|
||||||
The Expat home page: http://www.libexpat.org/
|
The Expat home page: https://libexpat.github.io/
|
||||||
The W3 XML specification: http://www.w3.org/TR/REC\-xml
|
The W3 XML 1.0 specification (fourth edition): https://www.w3.org/TR/2006/REC\-xml\-20060816/
|
||||||
|
Billion laughs attack: https://en.wikipedia.org/wiki/Billion_laughs_attack
|
||||||
.fi
|
.fi
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
This manual page was written by Scott Bronson <\*(T<bronson@rinspin.com\*(T>> for
|
This manual page was originally written by Scott Bronson <\*(T<bronson@rinspin.com\*(T>>
|
||||||
|
in December 2001 for
|
||||||
the Debian GNU/Linux system (but may be used by others). Permission is
|
the Debian GNU/Linux system (but may be used by others). Permission is
|
||||||
granted to copy, distribute and/or modify this document under
|
granted to copy, distribute and/or modify this document under
|
||||||
the terms of the GNU Free Documentation
|
the terms of the GNU Free Documentation
|
||||||
|
223
3rdparty/expat/doc/xmlwf.xml
vendored
223
3rdparty/expat/doc/xmlwf.xml
vendored
@ -1,11 +1,28 @@
|
|||||||
<!DOCTYPE refentry [
|
<!--
|
||||||
<!-- Fill in your name for FIRSTNAME and SURNAME. -->
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2001 Scott Bronson <bronson@rinspin.com>
|
||||||
|
Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2009 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2016 Ardo van Rangelrooij <ardo@debian.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2020 Joe Orton <jorton@redhat.com>
|
||||||
|
Copyright (c) 2021 Tim Bray <tbray@textuality.com>
|
||||||
|
Unlike most of Expat,
|
||||||
|
this file is copyrighted under the GNU Free Documentation License 1.1.
|
||||||
|
-->
|
||||||
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||||
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
|
||||||
<!ENTITY dhfirstname "<firstname>Scott</firstname>">
|
<!ENTITY dhfirstname "<firstname>Scott</firstname>">
|
||||||
<!ENTITY dhsurname "<surname>Bronson</surname>">
|
<!ENTITY dhsurname "<surname>Bronson</surname>">
|
||||||
<!-- Please adjust the date whenever revising the manpage. -->
|
<!ENTITY dhdate "<date>November 6, 2024</date>">
|
||||||
<!ENTITY dhdate "<date>March 11, 2016</date>">
|
<!-- Please adjust this^^ date whenever cutting a new release. -->
|
||||||
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
|
|
||||||
allowed: see man(7), man(1). -->
|
|
||||||
<!ENTITY dhsection "<manvolnum>1</manvolnum>">
|
<!ENTITY dhsection "<manvolnum>1</manvolnum>">
|
||||||
<!ENTITY dhemail "<email>bronson@rinspin.com</email>">
|
<!ENTITY dhemail "<email>bronson@rinspin.com</email>">
|
||||||
<!ENTITY dhusername "Scott Bronson">
|
<!ENTITY dhusername "Scott Bronson">
|
||||||
@ -44,25 +61,22 @@
|
|||||||
<refsynopsisdiv>
|
<refsynopsisdiv>
|
||||||
<cmdsynopsis>
|
<cmdsynopsis>
|
||||||
<command>&dhpackage;</command>
|
<command>&dhpackage;</command>
|
||||||
<arg><option>-s</option></arg>
|
<arg><replaceable>OPTIONS</replaceable></arg>
|
||||||
<arg><option>-n</option></arg>
|
<arg><replaceable>FILE</replaceable> ...</arg>
|
||||||
<arg><option>-p</option></arg>
|
</cmdsynopsis>
|
||||||
<arg><option>-x</option></arg>
|
<cmdsynopsis>
|
||||||
|
<command>&dhpackage;</command>
|
||||||
<arg><option>-e <replaceable>encoding</replaceable></option></arg>
|
<group choice="plain">
|
||||||
<arg><option>-w</option></arg>
|
<arg><option>-h</option></arg>
|
||||||
|
<arg><option>--help</option></arg>
|
||||||
<arg><option>-d <replaceable>output-dir</replaceable></option></arg>
|
</group>
|
||||||
<arg><option>-c</option></arg>
|
</cmdsynopsis>
|
||||||
<arg><option>-m</option></arg>
|
<cmdsynopsis>
|
||||||
|
<command>&dhpackage;</command>
|
||||||
<arg><option>-r</option></arg>
|
<group choice="plain">
|
||||||
<arg><option>-t</option></arg>
|
<arg><option>-v</option></arg>
|
||||||
<arg><option>-N</option></arg>
|
<arg><option>--version</option></arg>
|
||||||
|
</group>
|
||||||
<arg><option>-v</option></arg>
|
|
||||||
|
|
||||||
<arg>file ...</arg>
|
|
||||||
</cmdsynopsis>
|
</cmdsynopsis>
|
||||||
</refsynopsisdiv>
|
</refsynopsisdiv>
|
||||||
|
|
||||||
@ -95,7 +109,7 @@
|
|||||||
<listitem><para>
|
<listitem><para>
|
||||||
The file begins with an XML declaration. For instance,
|
The file begins with an XML declaration. For instance,
|
||||||
<literal><?xml version="1.0" standalone="yes"?></literal>.
|
<literal><?xml version="1.0" standalone="yes"?></literal>.
|
||||||
<emphasis>NOTE:</emphasis>
|
<emphasis>NOTE</emphasis>:
|
||||||
<command>&dhpackage;</command> does not currently
|
<command>&dhpackage;</command> does not currently
|
||||||
check for a valid XML declaration.
|
check for a valid XML declaration.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
@ -132,13 +146,57 @@
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
When an option includes an argument, you may specify the argument either
|
When an option includes an argument, you may specify the argument either
|
||||||
separately ("<option>-d</option> output") or concatenated with the
|
separately ("<option>-d</option> <replaceable>output</replaceable>") or concatenated with the
|
||||||
option ("<option>-d</option>output"). <command>&dhpackage;</command>
|
option ("<option>-d</option><replaceable>output</replaceable>"). <command>&dhpackage;</command>
|
||||||
supports both.
|
supports both.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<variablelist>
|
<variablelist>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-a</option> <replaceable>factor</replaceable></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sets the maximum tolerated amplification factor
|
||||||
|
for protection against billion laughs attacks (default: 100.0).
|
||||||
|
The amplification factor is calculated as ..
|
||||||
|
</para>
|
||||||
|
<literallayout>
|
||||||
|
amplification := (direct + indirect) / direct
|
||||||
|
</literallayout>
|
||||||
|
<para>
|
||||||
|
.. while parsing, whereas
|
||||||
|
<direct> is the number of bytes read
|
||||||
|
from the primary document in parsing and
|
||||||
|
<indirect> is the number of bytes
|
||||||
|
added by expanding entities and reading of external DTD files,
|
||||||
|
combined.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
<emphasis>NOTE</emphasis>:
|
||||||
|
If you ever need to increase this value for non-attack payload,
|
||||||
|
please file a bug report.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-b</option> <replaceable>bytes</replaceable></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sets the number of output bytes (including amplification)
|
||||||
|
needed to activate protection against billion laughs attacks
|
||||||
|
(default: 8 MiB).
|
||||||
|
This can be thought of as an "activation threshold".
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
<emphasis>NOTE</emphasis>:
|
||||||
|
If you ever need to increase this value for non-attack payload,
|
||||||
|
please file a bug report.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>-c</option></term>
|
<term><option>-c</option></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
@ -153,7 +211,7 @@ supports both.
|
|||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>-d output-dir</option></term>
|
<term><option>-d</option> <replaceable>output-dir</replaceable></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Specifies a directory to contain transformed
|
Specifies a directory to contain transformed
|
||||||
@ -184,7 +242,7 @@ supports both.
|
|||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>-e encoding</option></term>
|
<term><option>-e</option> <replaceable>encoding</replaceable></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Specifies the character encoding for the document, overriding
|
Specifies the character encoding for the document, overriding
|
||||||
@ -199,6 +257,44 @@ supports both.
|
|||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-g</option> <replaceable>bytes</replaceable></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sets the buffer size to request per call pair to
|
||||||
|
<function>XML_GetBuffer</function> and <function>read</function>
|
||||||
|
(default: 8 KiB).
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-h</option></term>
|
||||||
|
<term><option>--help</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Prints short usage information on command <command>&dhpackage;</command>,
|
||||||
|
and then exits.
|
||||||
|
Similar to this man page but more concise.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-k</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
When processing multiple files, <command>&dhpackage;</command>
|
||||||
|
by default halts after the the first file with an error.
|
||||||
|
This tells <command>&dhpackage;</command> to report the error
|
||||||
|
but to keep processing.
|
||||||
|
This can be useful, for example, when testing a filter that converts
|
||||||
|
many files to XML and you want to quickly find out which conversions
|
||||||
|
failed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>-m</option></term>
|
<term><option>-m</option></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
@ -235,7 +331,7 @@ supports both.
|
|||||||
<term><option>-p</option></term>
|
<term><option>-p</option></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Tells xmlwf to process external DTDs and parameter
|
Tells <command>&dhpackage;</command> to process external DTDs and parameter
|
||||||
entities.
|
entities.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
@ -246,6 +342,16 @@ supports both.
|
|||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-q</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Disable reparse deferral, and allow quadratic parse runtime
|
||||||
|
on large tokens (default: reparse deferral enabled).
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>-r</option></term>
|
<term><option>-r</option></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
@ -292,9 +398,10 @@ supports both.
|
|||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>-v</option></term>
|
<term><option>-v</option></term>
|
||||||
|
<term><option>--version</option></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Prints the version of the Expat library being used, including some
|
Prints the version of the Expat library being used, including some
|
||||||
@ -311,7 +418,7 @@ supports both.
|
|||||||
Enables support for Windows code pages.
|
Enables support for Windows code pages.
|
||||||
Normally, <command>&dhpackage;</command> will throw an error if it
|
Normally, <command>&dhpackage;</command> will throw an error if it
|
||||||
runs across an encoding that it is not equipped to handle itself. With
|
runs across an encoding that it is not equipped to handle itself. With
|
||||||
<option>-w</option>, &dhpackage; will try to use a Windows code
|
<option>-w</option>, <command>&dhpackage;</command> will try to use a Windows code
|
||||||
page. See also <option>-e</option>.
|
page. See also <option>-e</option>.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -379,20 +486,26 @@ supports both.
|
|||||||
<refsect1>
|
<refsect1>
|
||||||
<title>OUTPUT</title>
|
<title>OUTPUT</title>
|
||||||
<para>
|
<para>
|
||||||
If an input file is not well-formed,
|
<command>&dhpackage;</command> outputs nothing for files which are problem-free.
|
||||||
<command>&dhpackage;</command> prints a single line describing
|
If any input file is not well-formed, or if the output for any
|
||||||
the problem to standard output. If a file is well formed,
|
input file cannot be opened, <command>&dhpackage;</command> prints a single
|
||||||
<command>&dhpackage;</command> outputs nothing.
|
line describing the problem to standard output.
|
||||||
</para>
|
</para>
|
||||||
|
<para>
|
||||||
|
If the <option>-k</option> option is not provided, <command>&dhpackage;</command>
|
||||||
|
halts upon encountering a well-formedness or output-file error.
|
||||||
|
If <option>-k</option> is provided, <command>&dhpackage;</command> continues
|
||||||
|
processing the remaining input files, describing problems found with any of them.
|
||||||
|
</para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
||||||
<refsect1>
|
<refsect1>
|
||||||
<title>EXIT STATUS</title>
|
<title>EXIT STATUS</title>
|
||||||
<para>For option <option>-v</option> or <option>-h</option>, <command>&dhpackage;</command> always exits with status code 0. For other cases, the following exit status codes are returned:
|
<para>For options <option>-v</option>|<option>--version</option> or <option>-h</option>|<option>--help</option>, <command>&dhpackage;</command> always exits with status code 0. For other cases, the following exit status codes are returned:
|
||||||
<variablelist>
|
<variablelist>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>0</option></term>
|
<term><option>0</option></term>
|
||||||
<listitem><para>The input files are well-formed.</para>
|
<listitem><para>The input files are well-formed and the output (if requested) was written successfully.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
@ -402,7 +515,7 @@ supports both.
|
|||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>2</option></term>
|
<term><option>2</option></term>
|
||||||
<listitem><para>An input file was not well-formed or could not be parsed.</para>
|
<listitem><para>One or more input files were not well-formed or could not be parsed.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
@ -410,6 +523,11 @@ supports both.
|
|||||||
<listitem><para>If using the <option>-d</option> option, an error occurred opening an output file.</para>
|
<listitem><para>If using the <option>-d</option> option, an error occurred opening an output file.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>4</option></term>
|
||||||
|
<listitem><para>There was a command-line argument error in how <command>&dhpackage;</command> was invoked.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
</variablelist>
|
</variablelist>
|
||||||
</para>
|
</para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
@ -433,28 +551,14 @@ supports both.
|
|||||||
</para>
|
</para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
||||||
<refsect1>
|
|
||||||
<title>ALTERNATIVES</title>
|
|
||||||
<para>
|
|
||||||
Here are some XML validators on the web:
|
|
||||||
|
|
||||||
<literallayout>
|
|
||||||
http://www.hcrc.ed.ac.uk/~richard/xml-check.html
|
|
||||||
http://www.stg.brown.edu/service/xmlvalid/
|
|
||||||
http://www.scripting.com/frontier5/xml/code/xmlValidator.html
|
|
||||||
http://www.xml.com/pub/a/tools/ruwf/check.html
|
|
||||||
</literallayout>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
</refsect1>
|
|
||||||
|
|
||||||
<refsect1>
|
<refsect1>
|
||||||
<title>SEE ALSO</title>
|
<title>SEE ALSO</title>
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
<literallayout>
|
<literallayout>
|
||||||
The Expat home page: http://www.libexpat.org/
|
The Expat home page: https://libexpat.github.io/
|
||||||
The W3 XML specification: http://www.w3.org/TR/REC-xml
|
The W3 XML 1.0 specification (fourth edition): https://www.w3.org/TR/2006/REC-xml-20060816/
|
||||||
|
Billion laughs attack: https://en.wikipedia.org/wiki/Billion_laughs_attack
|
||||||
</literallayout>
|
</literallayout>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
@ -463,7 +567,8 @@ The W3 XML specification: http://www.w3.org/TR/REC-xml
|
|||||||
<refsect1>
|
<refsect1>
|
||||||
<title>AUTHOR</title>
|
<title>AUTHOR</title>
|
||||||
<para>
|
<para>
|
||||||
This manual page was written by &dhusername; &dhemail; for
|
This manual page was originally written by &dhusername; &dhemail;
|
||||||
|
in December 2001 for
|
||||||
the &debian; system (but may be used by others). Permission is
|
the &debian; system (but may be used by others). Permission is
|
||||||
granted to copy, distribute and/or modify this document under
|
granted to copy, distribute and/or modify this document under
|
||||||
the terms of the <acronym>GNU</acronym> Free Documentation
|
the terms of the <acronym>GNU</acronym> Free Documentation
|
||||||
|
8
3rdparty/expat/examples/Makefile.am
vendored
8
3rdparty/expat/examples/Makefile.am
vendored
@ -6,7 +6,8 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2020 Jeffrey Walton <noloader@gmail.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -30,7 +31,10 @@
|
|||||||
|
|
||||||
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib
|
||||||
|
|
||||||
noinst_PROGRAMS = elements outline
|
noinst_PROGRAMS = element_declarations elements outline
|
||||||
|
|
||||||
|
element_declarations_SOURCES = element_declarations.c
|
||||||
|
element_declarations_LDADD = ../lib/libexpat.la
|
||||||
|
|
||||||
elements_SOURCES = elements.c
|
elements_SOURCES = elements.c
|
||||||
elements_LDADD = ../lib/libexpat.la
|
elements_LDADD = ../lib/libexpat.la
|
||||||
|
74
3rdparty/expat/examples/Makefile.in
vendored
74
3rdparty/expat/examples/Makefile.in
vendored
@ -1,7 +1,7 @@
|
|||||||
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -22,7 +22,8 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2020 Jeffrey Walton <noloader@gmail.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -118,7 +119,8 @@ PRE_UNINSTALL = :
|
|||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
build_triplet = @build@
|
build_triplet = @build@
|
||||||
host_triplet = @host@
|
host_triplet = @host@
|
||||||
noinst_PROGRAMS = elements$(EXEEXT) outline$(EXEEXT)
|
noinst_PROGRAMS = element_declarations$(EXEEXT) elements$(EXEEXT) \
|
||||||
|
outline$(EXEEXT)
|
||||||
subdir = examples
|
subdir = examples
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||||
@ -132,6 +134,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
|||||||
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx-11.m4 \
|
||||||
$(top_srcdir)/configure.ac
|
$(top_srcdir)/configure.ac
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
$(ACLOCAL_M4)
|
$(ACLOCAL_M4)
|
||||||
@ -141,13 +145,16 @@ CONFIG_HEADER = $(top_builddir)/expat_config.h
|
|||||||
CONFIG_CLEAN_FILES =
|
CONFIG_CLEAN_FILES =
|
||||||
CONFIG_CLEAN_VPATH_FILES =
|
CONFIG_CLEAN_VPATH_FILES =
|
||||||
PROGRAMS = $(noinst_PROGRAMS)
|
PROGRAMS = $(noinst_PROGRAMS)
|
||||||
am_elements_OBJECTS = elements.$(OBJEXT)
|
am_element_declarations_OBJECTS = element_declarations.$(OBJEXT)
|
||||||
elements_OBJECTS = $(am_elements_OBJECTS)
|
element_declarations_OBJECTS = $(am_element_declarations_OBJECTS)
|
||||||
elements_DEPENDENCIES = ../lib/libexpat.la
|
element_declarations_DEPENDENCIES = ../lib/libexpat.la
|
||||||
AM_V_lt = $(am__v_lt_@AM_V@)
|
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||||
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||||
am__v_lt_0 = --silent
|
am__v_lt_0 = --silent
|
||||||
am__v_lt_1 =
|
am__v_lt_1 =
|
||||||
|
am_elements_OBJECTS = elements.$(OBJEXT)
|
||||||
|
elements_OBJECTS = $(am_elements_OBJECTS)
|
||||||
|
elements_DEPENDENCIES = ../lib/libexpat.la
|
||||||
am_outline_OBJECTS = outline.$(OBJEXT)
|
am_outline_OBJECTS = outline.$(OBJEXT)
|
||||||
outline_OBJECTS = $(am_outline_OBJECTS)
|
outline_OBJECTS = $(am_outline_OBJECTS)
|
||||||
outline_DEPENDENCIES = ../lib/libexpat.la
|
outline_DEPENDENCIES = ../lib/libexpat.la
|
||||||
@ -166,7 +173,8 @@ am__v_at_1 =
|
|||||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||||
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
||||||
am__maybe_remake_depfiles = depfiles
|
am__maybe_remake_depfiles = depfiles
|
||||||
am__depfiles_remade = ./$(DEPDIR)/elements.Po ./$(DEPDIR)/outline.Po
|
am__depfiles_remade = ./$(DEPDIR)/element_declarations.Po \
|
||||||
|
./$(DEPDIR)/elements.Po ./$(DEPDIR)/outline.Po
|
||||||
am__mv = mv -f
|
am__mv = mv -f
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
@ -186,8 +194,10 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
|
|||||||
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
||||||
am__v_CCLD_0 = @echo " CCLD " $@;
|
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||||
am__v_CCLD_1 =
|
am__v_CCLD_1 =
|
||||||
SOURCES = $(elements_SOURCES) $(outline_SOURCES)
|
SOURCES = $(element_declarations_SOURCES) $(elements_SOURCES) \
|
||||||
DIST_SOURCES = $(elements_SOURCES) $(outline_SOURCES)
|
$(outline_SOURCES)
|
||||||
|
DIST_SOURCES = $(element_declarations_SOURCES) $(elements_SOURCES) \
|
||||||
|
$(outline_SOURCES)
|
||||||
am__can_run_installinfo = \
|
am__can_run_installinfo = \
|
||||||
case $$AM_UPDATE_INFO_DIR in \
|
case $$AM_UPDATE_INFO_DIR in \
|
||||||
n|no|NO) false;; \
|
n|no|NO) false;; \
|
||||||
@ -210,8 +220,6 @@ am__define_uniq_tagged_files = \
|
|||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
done | $(am__uniquify_input)`
|
done | $(am__uniquify_input)`
|
||||||
ETAGS = etags
|
|
||||||
CTAGS = ctags
|
|
||||||
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
||||||
$(top_srcdir)/conftools/depcomp
|
$(top_srcdir)/conftools/depcomp
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
@ -231,8 +239,10 @@ AWK = @AWK@
|
|||||||
CC = @CC@
|
CC = @CC@
|
||||||
CCDEPMODE = @CCDEPMODE@
|
CCDEPMODE = @CCDEPMODE@
|
||||||
CFLAGS = @CFLAGS@
|
CFLAGS = @CFLAGS@
|
||||||
CPP = @CPP@
|
CMAKE_SHARED_LIBRARY_PREFIX = @CMAKE_SHARED_LIBRARY_PREFIX@
|
||||||
CPPFLAGS = @CPPFLAGS@
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CSCOPE = @CSCOPE@
|
||||||
|
CTAGS = @CTAGS@
|
||||||
CXX = @CXX@
|
CXX = @CXX@
|
||||||
CXXCPP = @CXXCPP@
|
CXXCPP = @CXXCPP@
|
||||||
CXXDEPMODE = @CXXDEPMODE@
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
@ -248,10 +258,20 @@ ECHO_C = @ECHO_C@
|
|||||||
ECHO_N = @ECHO_N@
|
ECHO_N = @ECHO_N@
|
||||||
ECHO_T = @ECHO_T@
|
ECHO_T = @ECHO_T@
|
||||||
EGREP = @EGREP@
|
EGREP = @EGREP@
|
||||||
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
|
EXPAT_ATTR_INFO = @EXPAT_ATTR_INFO@
|
||||||
|
EXPAT_CHAR_TYPE = @EXPAT_CHAR_TYPE@
|
||||||
|
EXPAT_CONTEXT_BYTES = @EXPAT_CONTEXT_BYTES@
|
||||||
|
EXPAT_DTD = @EXPAT_DTD@
|
||||||
|
EXPAT_LARGE_SIZE = @EXPAT_LARGE_SIZE@
|
||||||
|
EXPAT_MIN_SIZE = @EXPAT_MIN_SIZE@
|
||||||
|
EXPAT_NS = @EXPAT_NS@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
FILEMAP = @FILEMAP@
|
FILEMAP = @FILEMAP@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
|
HAVE_CXX11 = @HAVE_CXX11@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
@ -261,6 +281,8 @@ LD = @LD@
|
|||||||
LDFLAGS = @LDFLAGS@
|
LDFLAGS = @LDFLAGS@
|
||||||
LIBAGE = @LIBAGE@
|
LIBAGE = @LIBAGE@
|
||||||
LIBCURRENT = @LIBCURRENT@
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBDIR_BASENAME = @LIBDIR_BASENAME@
|
||||||
|
LIBM = @LIBM@
|
||||||
LIBOBJS = @LIBOBJS@
|
LIBOBJS = @LIBOBJS@
|
||||||
LIBREVISION = @LIBREVISION@
|
LIBREVISION = @LIBREVISION@
|
||||||
LIBS = @LIBS@
|
LIBS = @LIBS@
|
||||||
@ -269,6 +291,7 @@ LIPO = @LIPO@
|
|||||||
LN_S = @LN_S@
|
LN_S = @LN_S@
|
||||||
LTLIBOBJS = @LTLIBOBJS@
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAINT = @MAINT@
|
||||||
MAKEINFO = @MAKEINFO@
|
MAKEINFO = @MAKEINFO@
|
||||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
MKDIR_P = @MKDIR_P@
|
MKDIR_P = @MKDIR_P@
|
||||||
@ -290,9 +313,12 @@ RANLIB = @RANLIB@
|
|||||||
SED = @SED@
|
SED = @SED@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
SHELL = @SHELL@
|
SHELL = @SHELL@
|
||||||
|
SIZEOF_VOID_P = @SIZEOF_VOID_P@
|
||||||
|
SO_MAJOR = @SO_MAJOR@
|
||||||
|
SO_MINOR = @SO_MINOR@
|
||||||
|
SO_PATCH = @SO_PATCH@
|
||||||
STRIP = @STRIP@
|
STRIP = @STRIP@
|
||||||
VERSION = @VERSION@
|
VERSION = @VERSION@
|
||||||
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
|
||||||
abs_builddir = @abs_builddir@
|
abs_builddir = @abs_builddir@
|
||||||
abs_srcdir = @abs_srcdir@
|
abs_srcdir = @abs_srcdir@
|
||||||
abs_top_builddir = @abs_top_builddir@
|
abs_top_builddir = @abs_top_builddir@
|
||||||
@ -347,6 +373,8 @@ target_alias = @target_alias@
|
|||||||
top_build_prefix = @top_build_prefix@
|
top_build_prefix = @top_build_prefix@
|
||||||
top_builddir = @top_builddir@
|
top_builddir = @top_builddir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
|
element_declarations_SOURCES = element_declarations.c
|
||||||
|
element_declarations_LDADD = ../lib/libexpat.la
|
||||||
elements_SOURCES = elements.c
|
elements_SOURCES = elements.c
|
||||||
elements_LDADD = ../lib/libexpat.la
|
elements_LDADD = ../lib/libexpat.la
|
||||||
outline_SOURCES = outline.c
|
outline_SOURCES = outline.c
|
||||||
@ -355,7 +383,7 @@ all: all-am
|
|||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .c .lo .o .obj
|
.SUFFIXES: .c .lo .o .obj
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
@for dep in $?; do \
|
@for dep in $?; do \
|
||||||
case '$(am__configure_deps)' in \
|
case '$(am__configure_deps)' in \
|
||||||
*$$dep*) \
|
*$$dep*) \
|
||||||
@ -379,9 +407,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(am__aclocal_m4_deps):
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
@ -394,6 +422,10 @@ clean-noinstPROGRAMS:
|
|||||||
echo " rm -f" $$list; \
|
echo " rm -f" $$list; \
|
||||||
rm -f $$list
|
rm -f $$list
|
||||||
|
|
||||||
|
element_declarations$(EXEEXT): $(element_declarations_OBJECTS) $(element_declarations_DEPENDENCIES) $(EXTRA_element_declarations_DEPENDENCIES)
|
||||||
|
@rm -f element_declarations$(EXEEXT)
|
||||||
|
$(AM_V_CCLD)$(LINK) $(element_declarations_OBJECTS) $(element_declarations_LDADD) $(LIBS)
|
||||||
|
|
||||||
elements$(EXEEXT): $(elements_OBJECTS) $(elements_DEPENDENCIES) $(EXTRA_elements_DEPENDENCIES)
|
elements$(EXEEXT): $(elements_OBJECTS) $(elements_DEPENDENCIES) $(EXTRA_elements_DEPENDENCIES)
|
||||||
@rm -f elements$(EXEEXT)
|
@rm -f elements$(EXEEXT)
|
||||||
$(AM_V_CCLD)$(LINK) $(elements_OBJECTS) $(elements_LDADD) $(LIBS)
|
$(AM_V_CCLD)$(LINK) $(elements_OBJECTS) $(elements_LDADD) $(LIBS)
|
||||||
@ -408,6 +440,7 @@ mostlyclean-compile:
|
|||||||
distclean-compile:
|
distclean-compile:
|
||||||
-rm -f *.tab.c
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/element_declarations.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elements.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/outline.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/outline.Po@am__quote@ # am--include-marker
|
||||||
|
|
||||||
@ -495,7 +528,6 @@ cscopelist-am: $(am__tagged_files)
|
|||||||
|
|
||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
|
|
||||||
distdir: $(BUILT_SOURCES)
|
distdir: $(BUILT_SOURCES)
|
||||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
@ -569,7 +601,8 @@ clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
|
|||||||
mostlyclean-am
|
mostlyclean-am
|
||||||
|
|
||||||
distclean: distclean-am
|
distclean: distclean-am
|
||||||
-rm -f ./$(DEPDIR)/elements.Po
|
-rm -f ./$(DEPDIR)/element_declarations.Po
|
||||||
|
-rm -f ./$(DEPDIR)/elements.Po
|
||||||
-rm -f ./$(DEPDIR)/outline.Po
|
-rm -f ./$(DEPDIR)/outline.Po
|
||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
distclean-am: clean-am distclean-compile distclean-generic \
|
distclean-am: clean-am distclean-compile distclean-generic \
|
||||||
@ -616,7 +649,8 @@ install-ps-am:
|
|||||||
installcheck-am:
|
installcheck-am:
|
||||||
|
|
||||||
maintainer-clean: maintainer-clean-am
|
maintainer-clean: maintainer-clean-am
|
||||||
-rm -f ./$(DEPDIR)/elements.Po
|
-rm -f ./$(DEPDIR)/element_declarations.Po
|
||||||
|
-rm -f ./$(DEPDIR)/elements.Po
|
||||||
-rm -f ./$(DEPDIR)/outline.Po
|
-rm -f ./$(DEPDIR)/outline.Po
|
||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||||
|
235
3rdparty/expat/examples/element_declarations.c
vendored
Normal file
235
3rdparty/expat/examples/element_declarations.c
vendored
Normal file
@ -0,0 +1,235 @@
|
|||||||
|
/* Read an XML document from standard input and print
|
||||||
|
element declarations (if any) to standard output.
|
||||||
|
It must be used with Expat compiled for UTF-8 output.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2004-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2019 Zhongyuan Zhou <zhouzhongyuan@huawei.com>
|
||||||
|
Copyright (c) 2024 Hanno Böck <hanno@gentoo.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <expat.h>
|
||||||
|
|
||||||
|
#ifdef XML_LARGE_SIZE
|
||||||
|
# define XML_FMT_INT_MOD "ll"
|
||||||
|
#else
|
||||||
|
# define XML_FMT_INT_MOD "l"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef XML_UNICODE_WCHAR_T
|
||||||
|
# define XML_FMT_STR "ls"
|
||||||
|
#else
|
||||||
|
# define XML_FMT_STR "s"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// While traversing the XML_Content tree, we avoid recursion
|
||||||
|
// to not be vulnerable to a denial of service attack.
|
||||||
|
typedef struct StackStruct {
|
||||||
|
const XML_Content *model;
|
||||||
|
unsigned level;
|
||||||
|
struct StackStruct *prev;
|
||||||
|
} Stack;
|
||||||
|
|
||||||
|
static Stack *
|
||||||
|
stackPushMalloc(Stack *stackTop, const XML_Content *model, unsigned level) {
|
||||||
|
Stack *const newStackTop = malloc(sizeof(Stack));
|
||||||
|
if (! newStackTop) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
newStackTop->model = model;
|
||||||
|
newStackTop->level = level;
|
||||||
|
newStackTop->prev = stackTop;
|
||||||
|
return newStackTop;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Stack *
|
||||||
|
stackPopFree(Stack *stackTop) {
|
||||||
|
Stack *const newStackTop = stackTop->prev;
|
||||||
|
free(stackTop);
|
||||||
|
return newStackTop;
|
||||||
|
}
|
||||||
|
|
||||||
|
static char *
|
||||||
|
contentTypeName(enum XML_Content_Type contentType) {
|
||||||
|
switch (contentType) {
|
||||||
|
case XML_CTYPE_EMPTY:
|
||||||
|
return "EMPTY";
|
||||||
|
case XML_CTYPE_ANY:
|
||||||
|
return "ANY";
|
||||||
|
case XML_CTYPE_MIXED:
|
||||||
|
return "MIXED";
|
||||||
|
case XML_CTYPE_NAME:
|
||||||
|
return "NAME";
|
||||||
|
case XML_CTYPE_CHOICE:
|
||||||
|
return "CHOICE";
|
||||||
|
case XML_CTYPE_SEQ:
|
||||||
|
return "SEQ";
|
||||||
|
default:
|
||||||
|
return "???";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static char *
|
||||||
|
contentQuantName(enum XML_Content_Quant contentQuant) {
|
||||||
|
switch (contentQuant) {
|
||||||
|
case XML_CQUANT_NONE:
|
||||||
|
return "NONE";
|
||||||
|
case XML_CQUANT_OPT:
|
||||||
|
return "OPT";
|
||||||
|
case XML_CQUANT_REP:
|
||||||
|
return "REP";
|
||||||
|
case XML_CQUANT_PLUS:
|
||||||
|
return "PLUS";
|
||||||
|
default:
|
||||||
|
return "???";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
dumpContentModelElement(const XML_Content *model, unsigned level,
|
||||||
|
const XML_Content *root) {
|
||||||
|
// Indent
|
||||||
|
unsigned u = 0;
|
||||||
|
for (; u < level; u++) {
|
||||||
|
printf(" ");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Node
|
||||||
|
printf("[%u] type=%s(%u), quant=%s(%u)", (unsigned)(model - root),
|
||||||
|
contentTypeName(model->type), (unsigned int)model->type,
|
||||||
|
contentQuantName(model->quant), (unsigned int)model->quant);
|
||||||
|
if (model->name) {
|
||||||
|
printf(", name=\"%" XML_FMT_STR "\"", model->name);
|
||||||
|
} else {
|
||||||
|
printf(", name=NULL");
|
||||||
|
}
|
||||||
|
printf(", numchildren=%u", model->numchildren);
|
||||||
|
printf("\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool
|
||||||
|
dumpContentModel(const XML_Char *name, const XML_Content *root) {
|
||||||
|
printf("Element \"%" XML_FMT_STR "\":\n", name);
|
||||||
|
Stack *stackTop = stackPushMalloc(NULL, root, 1);
|
||||||
|
if (! stackTop) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (stackTop) {
|
||||||
|
const XML_Content *const model = stackTop->model;
|
||||||
|
const unsigned level = stackTop->level;
|
||||||
|
|
||||||
|
dumpContentModelElement(model, level, root);
|
||||||
|
|
||||||
|
stackTop = stackPopFree(stackTop);
|
||||||
|
|
||||||
|
for (size_t u = model->numchildren; u >= 1; u--) {
|
||||||
|
Stack *const newStackTop
|
||||||
|
= stackPushMalloc(stackTop, model->children + (u - 1), level + 1);
|
||||||
|
if (! newStackTop) {
|
||||||
|
// We ran out of memory, so let's free all memory allocated
|
||||||
|
// earlier in this function, to be leak-clean:
|
||||||
|
while (stackTop != NULL) {
|
||||||
|
stackTop = stackPopFree(stackTop);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
stackTop = newStackTop;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("\n");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
handleElementDeclaration(void *userData, const XML_Char *name,
|
||||||
|
XML_Content *model) {
|
||||||
|
XML_Parser parser = (XML_Parser)userData;
|
||||||
|
const bool success = dumpContentModel(name, model);
|
||||||
|
XML_FreeContentModel(parser, model);
|
||||||
|
if (! success) {
|
||||||
|
XML_StopParser(parser, /* resumable= */ XML_FALSE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
main(void) {
|
||||||
|
XML_Parser parser = XML_ParserCreate(NULL);
|
||||||
|
int done;
|
||||||
|
|
||||||
|
if (! parser) {
|
||||||
|
fprintf(stderr, "Couldn't allocate memory for parser\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
XML_SetUserData(parser, parser);
|
||||||
|
XML_SetElementDeclHandler(parser, handleElementDeclaration);
|
||||||
|
|
||||||
|
do {
|
||||||
|
void *const buf = XML_GetBuffer(parser, BUFSIZ);
|
||||||
|
if (! buf) {
|
||||||
|
fprintf(stderr, "Couldn't allocate memory for buffer\n");
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
const size_t len = fread(buf, 1, BUFSIZ, stdin);
|
||||||
|
|
||||||
|
if (ferror(stdin)) {
|
||||||
|
fprintf(stderr, "Read error\n");
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
done = feof(stdin);
|
||||||
|
|
||||||
|
if (XML_ParseBuffer(parser, (int)len, done) == XML_STATUS_ERROR) {
|
||||||
|
enum XML_Error errorCode = XML_GetErrorCode(parser);
|
||||||
|
if (errorCode == XML_ERROR_ABORTED) {
|
||||||
|
errorCode = XML_ERROR_NO_MEMORY;
|
||||||
|
}
|
||||||
|
fprintf(stderr,
|
||||||
|
"Parse error at line %" XML_FMT_INT_MOD "u:\n%" XML_FMT_STR "\n",
|
||||||
|
XML_GetCurrentLineNumber(parser), XML_ErrorString(errorCode));
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
} while (! done);
|
||||||
|
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 0;
|
||||||
|
}
|
52
3rdparty/expat/examples/elements.c
vendored
52
3rdparty/expat/examples/elements.c
vendored
@ -11,7 +11,12 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2004-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2019 Zhongyuan Zhou <zhouzhongyuan@huawei.com>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -44,7 +49,6 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef XML_UNICODE_WCHAR_T
|
#ifdef XML_UNICODE_WCHAR_T
|
||||||
# include <wchar.h>
|
|
||||||
# define XML_FMT_STR "ls"
|
# define XML_FMT_STR "ls"
|
||||||
#else
|
#else
|
||||||
# define XML_FMT_STR "s"
|
# define XML_FMT_STR "s"
|
||||||
@ -53,7 +57,7 @@
|
|||||||
static void XMLCALL
|
static void XMLCALL
|
||||||
startElement(void *userData, const XML_Char *name, const XML_Char **atts) {
|
startElement(void *userData, const XML_Char *name, const XML_Char **atts) {
|
||||||
int i;
|
int i;
|
||||||
int *depthPtr = (int *)userData;
|
int *const depthPtr = (int *)userData;
|
||||||
(void)atts;
|
(void)atts;
|
||||||
|
|
||||||
for (i = 0; i < *depthPtr; i++)
|
for (i = 0; i < *depthPtr; i++)
|
||||||
@ -64,34 +68,54 @@ startElement(void *userData, const XML_Char *name, const XML_Char **atts) {
|
|||||||
|
|
||||||
static void XMLCALL
|
static void XMLCALL
|
||||||
endElement(void *userData, const XML_Char *name) {
|
endElement(void *userData, const XML_Char *name) {
|
||||||
int *depthPtr = (int *)userData;
|
int *const depthPtr = (int *)userData;
|
||||||
(void)name;
|
(void)name;
|
||||||
|
|
||||||
*depthPtr -= 1;
|
*depthPtr -= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
main(int argc, char *argv[]) {
|
main(void) {
|
||||||
char buf[BUFSIZ];
|
|
||||||
XML_Parser parser = XML_ParserCreate(NULL);
|
XML_Parser parser = XML_ParserCreate(NULL);
|
||||||
int done;
|
int done;
|
||||||
int depth = 0;
|
int depth = 0;
|
||||||
(void)argc;
|
|
||||||
(void)argv;
|
if (! parser) {
|
||||||
|
fprintf(stderr, "Couldn't allocate memory for parser\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
XML_SetUserData(parser, &depth);
|
XML_SetUserData(parser, &depth);
|
||||||
XML_SetElementHandler(parser, startElement, endElement);
|
XML_SetElementHandler(parser, startElement, endElement);
|
||||||
|
|
||||||
do {
|
do {
|
||||||
size_t len = fread(buf, 1, sizeof(buf), stdin);
|
void *const buf = XML_GetBuffer(parser, BUFSIZ);
|
||||||
done = len < sizeof(buf);
|
if (! buf) {
|
||||||
if (XML_Parse(parser, buf, (int)len, done) == XML_STATUS_ERROR) {
|
fprintf(stderr, "Couldn't allocate memory for buffer\n");
|
||||||
fprintf(stderr, "%" XML_FMT_STR " at line %" XML_FMT_INT_MOD "u\n",
|
XML_ParserFree(parser);
|
||||||
XML_ErrorString(XML_GetErrorCode(parser)),
|
return 1;
|
||||||
XML_GetCurrentLineNumber(parser));
|
}
|
||||||
|
|
||||||
|
const size_t len = fread(buf, 1, BUFSIZ, stdin);
|
||||||
|
|
||||||
|
if (ferror(stdin)) {
|
||||||
|
fprintf(stderr, "Read error\n");
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
done = feof(stdin);
|
||||||
|
|
||||||
|
if (XML_ParseBuffer(parser, (int)len, done) == XML_STATUS_ERROR) {
|
||||||
|
fprintf(stderr,
|
||||||
|
"Parse error at line %" XML_FMT_INT_MOD "u:\n%" XML_FMT_STR "\n",
|
||||||
|
XML_GetCurrentLineNumber(parser),
|
||||||
|
XML_ErrorString(XML_GetErrorCode(parser)));
|
||||||
XML_ParserFree(parser);
|
XML_ParserFree(parser);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
} while (! done);
|
} while (! done);
|
||||||
|
|
||||||
XML_ParserFree(parser);
|
XML_ParserFree(parser);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
83
3rdparty/expat/examples/outline.c
vendored
83
3rdparty/expat/examples/outline.c
vendored
@ -8,8 +8,12 @@
|
|||||||
\___/_/\_\ .__/ \__,_|\__|
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2005-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -47,73 +51,74 @@
|
|||||||
# define XML_FMT_STR "s"
|
# define XML_FMT_STR "s"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define BUFFSIZE 8192
|
|
||||||
|
|
||||||
char Buff[BUFFSIZE];
|
|
||||||
|
|
||||||
int Depth;
|
|
||||||
|
|
||||||
static void XMLCALL
|
static void XMLCALL
|
||||||
start(void *data, const XML_Char *el, const XML_Char **attr) {
|
startElement(void *userData, const XML_Char *name, const XML_Char **atts) {
|
||||||
int i;
|
int i;
|
||||||
(void)data;
|
int *const depthPtr = (int *)userData;
|
||||||
|
|
||||||
for (i = 0; i < Depth; i++)
|
for (i = 0; i < *depthPtr; i++)
|
||||||
printf(" ");
|
printf(" ");
|
||||||
|
|
||||||
printf("%" XML_FMT_STR, el);
|
printf("%" XML_FMT_STR, name);
|
||||||
|
|
||||||
for (i = 0; attr[i]; i += 2) {
|
for (i = 0; atts[i]; i += 2) {
|
||||||
printf(" %" XML_FMT_STR "='%" XML_FMT_STR "'", attr[i], attr[i + 1]);
|
printf(" %" XML_FMT_STR "='%" XML_FMT_STR "'", atts[i], atts[i + 1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("\n");
|
printf("\n");
|
||||||
Depth++;
|
*depthPtr += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void XMLCALL
|
static void XMLCALL
|
||||||
end(void *data, const XML_Char *el) {
|
endElement(void *userData, const XML_Char *name) {
|
||||||
(void)data;
|
int *const depthPtr = (int *)userData;
|
||||||
(void)el;
|
(void)name;
|
||||||
|
|
||||||
Depth--;
|
*depthPtr -= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
main(int argc, char *argv[]) {
|
main(void) {
|
||||||
XML_Parser p = XML_ParserCreate(NULL);
|
XML_Parser parser = XML_ParserCreate(NULL);
|
||||||
(void)argc;
|
int done;
|
||||||
(void)argv;
|
int depth = 0;
|
||||||
|
|
||||||
if (! p) {
|
if (! parser) {
|
||||||
fprintf(stderr, "Couldn't allocate memory for parser\n");
|
fprintf(stderr, "Couldn't allocate memory for parser\n");
|
||||||
exit(-1);
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
XML_SetElementHandler(p, start, end);
|
XML_SetUserData(parser, &depth);
|
||||||
|
XML_SetElementHandler(parser, startElement, endElement);
|
||||||
|
|
||||||
for (;;) {
|
do {
|
||||||
int done;
|
void *const buf = XML_GetBuffer(parser, BUFSIZ);
|
||||||
int len;
|
if (! buf) {
|
||||||
|
fprintf(stderr, "Couldn't allocate memory for buffer\n");
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
const size_t len = fread(buf, 1, BUFSIZ, stdin);
|
||||||
|
|
||||||
len = (int)fread(Buff, 1, BUFFSIZE, stdin);
|
|
||||||
if (ferror(stdin)) {
|
if (ferror(stdin)) {
|
||||||
fprintf(stderr, "Read error\n");
|
fprintf(stderr, "Read error\n");
|
||||||
exit(-1);
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
done = feof(stdin);
|
done = feof(stdin);
|
||||||
|
|
||||||
if (XML_Parse(p, Buff, len, done) == XML_STATUS_ERROR) {
|
if (XML_ParseBuffer(parser, (int)len, done) == XML_STATUS_ERROR) {
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"Parse error at line %" XML_FMT_INT_MOD "u:\n%" XML_FMT_STR "\n",
|
"Parse error at line %" XML_FMT_INT_MOD "u:\n%" XML_FMT_STR "\n",
|
||||||
XML_GetCurrentLineNumber(p),
|
XML_GetCurrentLineNumber(parser),
|
||||||
XML_ErrorString(XML_GetErrorCode(p)));
|
XML_ErrorString(XML_GetErrorCode(parser)));
|
||||||
exit(-1);
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
} while (! done);
|
||||||
|
|
||||||
if (done)
|
XML_ParserFree(parser);
|
||||||
break;
|
|
||||||
}
|
|
||||||
XML_ParserFree(p);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
13
3rdparty/expat/expat.pc.cmake
vendored
Normal file
13
3rdparty/expat/expat.pc.cmake
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
prefix=$<TARGET_PROPERTY:expat,pkgconfig_prefix>
|
||||||
|
exec_prefix=$<TARGET_PROPERTY:expat,pkgconfig_exec_prefix>
|
||||||
|
libdir=$<TARGET_PROPERTY:expat,pkgconfig_libdir>
|
||||||
|
includedir=$<TARGET_PROPERTY:expat,pkgconfig_includedir>
|
||||||
|
|
||||||
|
Name: $<TARGET_PROPERTY:expat,pkgconfig_$<LOWER_CASE:$<CONFIG>>_name>
|
||||||
|
Version: $<TARGET_PROPERTY:expat,pkgconfig_version>
|
||||||
|
Description: expat XML parser
|
||||||
|
URL: https://libexpat.github.io/
|
||||||
|
Libs: -L${libdir} -l$<TARGET_PROPERTY:expat,pkgconfig_$<LOWER_CASE:$<CONFIG>>_output_name>
|
||||||
|
Libs.private: $<TARGET_PROPERTY:expat,pkgconfig_libm>
|
||||||
|
Cflags: -I${includedir}
|
||||||
|
Cflags.private: -DXML_STATIC
|
8
3rdparty/expat/expat.pc.in
vendored
8
3rdparty/expat/expat.pc.in
vendored
@ -3,9 +3,11 @@ exec_prefix=@exec_prefix@
|
|||||||
libdir=@libdir@
|
libdir=@libdir@
|
||||||
includedir=@includedir@
|
includedir=@includedir@
|
||||||
|
|
||||||
Name: @_EXPAT_OUTPUT_NAME@
|
Name: @PACKAGE_NAME@
|
||||||
Version: @PACKAGE_VERSION@
|
Version: @PACKAGE_VERSION@
|
||||||
Description: expat XML parser
|
Description: expat XML parser
|
||||||
URL: http://www.libexpat.org
|
URL: https://libexpat.github.io/
|
||||||
Libs: -L${libdir} -l@_EXPAT_OUTPUT_NAME@
|
Libs: -L${libdir} -l@PACKAGE_NAME@
|
||||||
|
Libs.private: @LIBM@
|
||||||
Cflags: -I${includedir}
|
Cflags: -I${includedir}
|
||||||
|
Cflags.private: -DXML_STATIC
|
||||||
|
19
3rdparty/expat/expat_config.h.cmake
vendored
19
3rdparty/expat/expat_config.h.cmake
vendored
@ -1,5 +1,8 @@
|
|||||||
/* expat_config.h.cmake. Based upon generated expat_config.h.in. */
|
/* expat_config.h.cmake. Based upon generated expat_config.h.in. */
|
||||||
|
|
||||||
|
#ifndef EXPAT_CONFIG_H
|
||||||
|
#define EXPAT_CONFIG_H 1
|
||||||
|
|
||||||
/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
|
/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
|
||||||
#cmakedefine BYTEORDER @BYTEORDER@
|
#cmakedefine BYTEORDER @BYTEORDER@
|
||||||
|
|
||||||
@ -79,7 +82,9 @@
|
|||||||
#cmakedefine PACKAGE_VERSION "@PACKAGE_VERSION@"
|
#cmakedefine PACKAGE_VERSION "@PACKAGE_VERSION@"
|
||||||
|
|
||||||
/* Define to 1 if you have the ANSI C header files. */
|
/* Define to 1 if you have the ANSI C header files. */
|
||||||
|
#ifndef STDC_HEADERS
|
||||||
#cmakedefine STDC_HEADERS
|
#cmakedefine STDC_HEADERS
|
||||||
|
#endif
|
||||||
|
|
||||||
/* whether byteorder is bigendian */
|
/* whether byteorder is bigendian */
|
||||||
#cmakedefine WORDS_BIGENDIAN
|
#cmakedefine WORDS_BIGENDIAN
|
||||||
@ -89,17 +94,20 @@
|
|||||||
#cmakedefine XML_ATTR_INFO
|
#cmakedefine XML_ATTR_INFO
|
||||||
|
|
||||||
/* Define to specify how much context to retain around the current parse
|
/* Define to specify how much context to retain around the current parse
|
||||||
point. */
|
point, 0 to disable. */
|
||||||
#cmakedefine XML_CONTEXT_BYTES @XML_CONTEXT_BYTES@
|
#define XML_CONTEXT_BYTES @XML_CONTEXT_BYTES@
|
||||||
|
|
||||||
#if ! defined(_WIN32)
|
#if ! defined(_WIN32)
|
||||||
/* Define to include code reading entropy from `/dev/urandom'. */
|
/* Define to include code reading entropy from `/dev/urandom'. */
|
||||||
#cmakedefine XML_DEV_URANDOM
|
#cmakedefine XML_DEV_URANDOM
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Define to make parameter entity parsing functionality available. */
|
/* Define to make parameter entity parsing functionality available. */
|
||||||
#cmakedefine XML_DTD
|
#cmakedefine XML_DTD
|
||||||
|
|
||||||
|
/* Define as 1/0 to enable/disable support for general entities. */
|
||||||
|
#define XML_GE @XML_GE@
|
||||||
|
|
||||||
/* Define to make XML Namespaces functionality available. */
|
/* Define to make XML Namespaces functionality available. */
|
||||||
#cmakedefine XML_NS
|
#cmakedefine XML_NS
|
||||||
|
|
||||||
@ -109,7 +117,6 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Define to `long' if <sys/types.h> does not define. */
|
/* Define to `long' if <sys/types.h> does not define. */
|
||||||
#cmakedefine off_t @OFF_T@
|
#cmakedefine off_t @off_t@
|
||||||
|
|
||||||
/* Define to `unsigned' if <sys/types.h> does not define. */
|
#endif // ndef EXPAT_CONFIG_H
|
||||||
#cmakedefine size_t @SIZE_T@
|
|
||||||
|
24
3rdparty/expat/expat_config.h.in
vendored
24
3rdparty/expat/expat_config.h.in
vendored
@ -1,5 +1,8 @@
|
|||||||
/* expat_config.h.in. Generated from configure.ac by autoheader. */
|
/* expat_config.h.in. Generated from configure.ac by autoheader. */
|
||||||
|
|
||||||
|
#ifndef EXPAT_CONFIG_H
|
||||||
|
#define EXPAT_CONFIG_H 1
|
||||||
|
|
||||||
/* Define if building universal (internal helper macro) */
|
/* Define if building universal (internal helper macro) */
|
||||||
#undef AC_APPLE_UNIVERSAL_BUILD
|
#undef AC_APPLE_UNIVERSAL_BUILD
|
||||||
|
|
||||||
@ -12,6 +15,9 @@
|
|||||||
/* Define to 1 if you have the `arc4random_buf' function. */
|
/* Define to 1 if you have the `arc4random_buf' function. */
|
||||||
#undef HAVE_ARC4RANDOM_BUF
|
#undef HAVE_ARC4RANDOM_BUF
|
||||||
|
|
||||||
|
/* define if the compiler supports basic C++11 syntax */
|
||||||
|
#undef HAVE_CXX11
|
||||||
|
|
||||||
/* Define to 1 if you have the <dlfcn.h> header file. */
|
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||||
#undef HAVE_DLFCN_H
|
#undef HAVE_DLFCN_H
|
||||||
|
|
||||||
@ -30,15 +36,15 @@
|
|||||||
/* Define to 1 if you have the `bsd' library (-lbsd). */
|
/* Define to 1 if you have the `bsd' library (-lbsd). */
|
||||||
#undef HAVE_LIBBSD
|
#undef HAVE_LIBBSD
|
||||||
|
|
||||||
/* Define to 1 if you have the <memory.h> header file. */
|
|
||||||
#undef HAVE_MEMORY_H
|
|
||||||
|
|
||||||
/* Define to 1 if you have a working `mmap' system call. */
|
/* Define to 1 if you have a working `mmap' system call. */
|
||||||
#undef HAVE_MMAP
|
#undef HAVE_MMAP
|
||||||
|
|
||||||
/* Define to 1 if you have the <stdint.h> header file. */
|
/* Define to 1 if you have the <stdint.h> header file. */
|
||||||
#undef HAVE_STDINT_H
|
#undef HAVE_STDINT_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <stdio.h> header file. */
|
||||||
|
#undef HAVE_STDIO_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||||
#undef HAVE_STDLIB_H
|
#undef HAVE_STDLIB_H
|
||||||
|
|
||||||
@ -87,7 +93,9 @@
|
|||||||
/* Define to the version of this package. */
|
/* Define to the version of this package. */
|
||||||
#undef PACKAGE_VERSION
|
#undef PACKAGE_VERSION
|
||||||
|
|
||||||
/* Define to 1 if you have the ANSI C header files. */
|
/* Define to 1 if all of the C90 standard headers exist (not just the ones
|
||||||
|
required in a freestanding environment). This macro is provided for
|
||||||
|
backward compatibility; new code need not use it. */
|
||||||
#undef STDC_HEADERS
|
#undef STDC_HEADERS
|
||||||
|
|
||||||
/* Version number of package */
|
/* Version number of package */
|
||||||
@ -110,7 +118,7 @@
|
|||||||
#undef XML_ATTR_INFO
|
#undef XML_ATTR_INFO
|
||||||
|
|
||||||
/* Define to specify how much context to retain around the current parse
|
/* Define to specify how much context to retain around the current parse
|
||||||
point. */
|
point, 0 to disable. */
|
||||||
#undef XML_CONTEXT_BYTES
|
#undef XML_CONTEXT_BYTES
|
||||||
|
|
||||||
/* Define to include code reading entropy from `/dev/urandom'. */
|
/* Define to include code reading entropy from `/dev/urandom'. */
|
||||||
@ -119,6 +127,9 @@
|
|||||||
/* Define to make parameter entity parsing functionality available. */
|
/* Define to make parameter entity parsing functionality available. */
|
||||||
#undef XML_DTD
|
#undef XML_DTD
|
||||||
|
|
||||||
|
/* Define as 1/0 to enable/disable support for general entities. */
|
||||||
|
#undef XML_GE
|
||||||
|
|
||||||
/* Define to make XML Namespaces functionality available. */
|
/* Define to make XML Namespaces functionality available. */
|
||||||
#undef XML_NS
|
#undef XML_NS
|
||||||
|
|
||||||
@ -128,5 +139,4 @@
|
|||||||
/* Define to `long int' if <sys/types.h> does not define. */
|
/* Define to `long int' if <sys/types.h> does not define. */
|
||||||
#undef off_t
|
#undef off_t
|
||||||
|
|
||||||
/* Define to `unsigned int' if <sys/types.h> does not define. */
|
#endif // ndef EXPAT_CONFIG_H
|
||||||
#undef size_t
|
|
||||||
|
16
3rdparty/expat/fix-xmltest-log.sh
vendored
16
3rdparty/expat/fix-xmltest-log.sh
vendored
@ -6,7 +6,8 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2019 Expat development team
|
# Copyright (c) 2019-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2024 Dag-Erling Smørgrav <des@des.dev>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -32,17 +33,18 @@ set -e
|
|||||||
|
|
||||||
filename="${1:-tests/xmltest.log}"
|
filename="${1:-tests/xmltest.log}"
|
||||||
|
|
||||||
dos2unix "${filename}"
|
sed -i.bak \
|
||||||
|
-e '# convert DOS line endings to Unix without resorting to dos2unix' \
|
||||||
tempfile="$(mktemp)"
|
-e $'s/\r//' \
|
||||||
sed \
|
\
|
||||||
-e 's/^wine: Call .* msvcrt\.dll\._wperror, aborting$/ibm49i02.dtd: No such file or directory/' \
|
-e 's/^wine: Call .* msvcrt\.dll\._wperror, aborting$/ibm49i02.dtd: No such file or directory/' \
|
||||||
\
|
\
|
||||||
-e '/^wine: /d' \
|
-e '/^wine: /d' \
|
||||||
-e '/^Application tried to create a window, but no driver could be loaded.$/d' \
|
-e '/^Application tried to create a window, but no driver could be loaded.$/d' \
|
||||||
-e '/^Make sure that your X server is running and that $DISPLAY is set correctly.$/d' \
|
-e '/^Make sure that your X server is running and that $DISPLAY is set correctly.$/d' \
|
||||||
-e '/^err:systray:initialize_systray Could not create tray window$/d' \
|
-e '/^err:systray:initialize_systray Could not create tray window$/d' \
|
||||||
|
-e '/^[0-9a-f]\+:err:/d' \
|
||||||
|
-e '/^wine client error:/d' \
|
||||||
-e '/^In ibm\/invalid\/P49\/: Unhandled exception: unimplemented .\+/d' \
|
-e '/^In ibm\/invalid\/P49\/: Unhandled exception: unimplemented .\+/d' \
|
||||||
\
|
\
|
||||||
"${filename}" > "${tempfile}"
|
"${filename}"
|
||||||
mv "${tempfile}" "${filename}"
|
|
||||||
|
105
3rdparty/expat/fuzz/xml_parse_fuzzer.c
vendored
Normal file
105
3rdparty/expat/fuzz/xml_parse_fuzzer.c
vendored
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
#include "expat.h"
|
||||||
|
#include "siphash.h"
|
||||||
|
|
||||||
|
// Macros to convert preprocessor macros to string literals. See
|
||||||
|
// https://gcc.gnu.org/onlinedocs/gcc-3.4.3/cpp/Stringification.html
|
||||||
|
#define xstr(s) str(s)
|
||||||
|
#define str(s) #s
|
||||||
|
|
||||||
|
// The encoder type that we wish to fuzz should come from the compile-time
|
||||||
|
// definition `ENCODING_FOR_FUZZING`. This allows us to have a separate fuzzer
|
||||||
|
// binary for
|
||||||
|
#ifndef ENCODING_FOR_FUZZING
|
||||||
|
# error "ENCODING_FOR_FUZZING was not provided to this fuzz target."
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// 16-byte deterministic hash key.
|
||||||
|
static unsigned char hash_key[16] = "FUZZING IS FUN!";
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
start(void *userData, const XML_Char *name, const XML_Char **atts) {
|
||||||
|
(void)userData;
|
||||||
|
(void)name;
|
||||||
|
(void)atts;
|
||||||
|
}
|
||||||
|
static void XMLCALL
|
||||||
|
end(void *userData, const XML_Char *name) {
|
||||||
|
(void)userData;
|
||||||
|
(void)name;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
may_stop_character_handler(void *userData, const XML_Char *s, int len) {
|
||||||
|
XML_Parser parser = (XML_Parser)userData;
|
||||||
|
if (len > 1 && s[0] == 's') {
|
||||||
|
XML_StopParser(parser, s[1] == 'r' ? XML_FALSE : XML_TRUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
ParseOneInput(XML_Parser p, const uint8_t *data, size_t size) {
|
||||||
|
// Set the hash salt using siphash to generate a deterministic hash.
|
||||||
|
struct sipkey *key = sip_keyof(hash_key);
|
||||||
|
XML_SetHashSalt(p, (unsigned long)siphash24(data, size, key));
|
||||||
|
(void)sip24_valid;
|
||||||
|
|
||||||
|
XML_SetUserData(p, p);
|
||||||
|
XML_SetElementHandler(p, start, end);
|
||||||
|
XML_SetCharacterDataHandler(p, may_stop_character_handler);
|
||||||
|
XML_Parse(p, (const XML_Char *)data, size, 0);
|
||||||
|
if (XML_Parse(p, (const XML_Char *)data, size, 1) == XML_STATUS_ERROR) {
|
||||||
|
XML_ErrorString(XML_GetErrorCode(p));
|
||||||
|
}
|
||||||
|
XML_GetCurrentLineNumber(p);
|
||||||
|
if (size % 2) {
|
||||||
|
XML_ParserReset(p, NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
|
||||||
|
XML_Parser parentParser = XML_ParserCreate(xstr(ENCODING_FOR_FUZZING));
|
||||||
|
assert(parentParser);
|
||||||
|
ParseOneInput(parentParser, data, size);
|
||||||
|
// not freed yet, but used later and freed then
|
||||||
|
|
||||||
|
XML_Parser namespaceParser = XML_ParserCreateNS(NULL, '!');
|
||||||
|
assert(namespaceParser);
|
||||||
|
ParseOneInput(namespaceParser, data, size);
|
||||||
|
XML_ParserFree(namespaceParser);
|
||||||
|
|
||||||
|
XML_Parser externalEntityParser
|
||||||
|
= XML_ExternalEntityParserCreate(parentParser, "e1", NULL);
|
||||||
|
assert(externalEntityParser);
|
||||||
|
ParseOneInput(externalEntityParser, data, size);
|
||||||
|
XML_ParserFree(externalEntityParser);
|
||||||
|
|
||||||
|
XML_Parser externalDtdParser
|
||||||
|
= XML_ExternalEntityParserCreate(parentParser, NULL, NULL);
|
||||||
|
assert(externalDtdParser);
|
||||||
|
ParseOneInput(externalDtdParser, data, size);
|
||||||
|
XML_ParserFree(externalDtdParser);
|
||||||
|
|
||||||
|
// finally frees this parser which served as parent
|
||||||
|
XML_ParserFree(parentParser);
|
||||||
|
return 0;
|
||||||
|
}
|
117
3rdparty/expat/fuzz/xml_parsebuffer_fuzzer.c
vendored
Normal file
117
3rdparty/expat/fuzz/xml_parsebuffer_fuzzer.c
vendored
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "expat.h"
|
||||||
|
#include "siphash.h"
|
||||||
|
|
||||||
|
// Macros to convert preprocessor macros to string literals. See
|
||||||
|
// https://gcc.gnu.org/onlinedocs/gcc-3.4.3/cpp/Stringification.html
|
||||||
|
#define xstr(s) str(s)
|
||||||
|
#define str(s) #s
|
||||||
|
|
||||||
|
// The encoder type that we wish to fuzz should come from the compile-time
|
||||||
|
// definition `ENCODING_FOR_FUZZING`. This allows us to have a separate fuzzer
|
||||||
|
// binary for
|
||||||
|
#ifndef ENCODING_FOR_FUZZING
|
||||||
|
# error "ENCODING_FOR_FUZZING was not provided to this fuzz target."
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// 16-byte deterministic hash key.
|
||||||
|
static unsigned char hash_key[16] = "FUZZING IS FUN!";
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
start(void *userData, const XML_Char *name, const XML_Char **atts) {
|
||||||
|
(void)userData;
|
||||||
|
(void)name;
|
||||||
|
(void)atts;
|
||||||
|
}
|
||||||
|
static void XMLCALL
|
||||||
|
end(void *userData, const XML_Char *name) {
|
||||||
|
(void)userData;
|
||||||
|
(void)name;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
may_stop_character_handler(void *userData, const XML_Char *s, int len) {
|
||||||
|
XML_Parser parser = (XML_Parser)userData;
|
||||||
|
if (len > 1 && s[0] == 's') {
|
||||||
|
XML_StopParser(parser, s[1] == 'r' ? XML_FALSE : XML_TRUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
ParseOneInput(XML_Parser p, const uint8_t *data, size_t size) {
|
||||||
|
// Set the hash salt using siphash to generate a deterministic hash.
|
||||||
|
struct sipkey *key = sip_keyof(hash_key);
|
||||||
|
XML_SetHashSalt(p, (unsigned long)siphash24(data, size, key));
|
||||||
|
(void)sip24_valid;
|
||||||
|
|
||||||
|
XML_SetUserData(p, p);
|
||||||
|
XML_SetElementHandler(p, start, end);
|
||||||
|
XML_SetCharacterDataHandler(p, may_stop_character_handler);
|
||||||
|
void *buf = XML_GetBuffer(p, size);
|
||||||
|
assert(buf);
|
||||||
|
memcpy(buf, data, size);
|
||||||
|
XML_ParseBuffer(p, size, 0);
|
||||||
|
buf = XML_GetBuffer(p, size);
|
||||||
|
if (buf == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
memcpy(buf, data, size);
|
||||||
|
if (XML_ParseBuffer(p, size, 1) == XML_STATUS_ERROR) {
|
||||||
|
XML_ErrorString(XML_GetErrorCode(p));
|
||||||
|
}
|
||||||
|
XML_GetCurrentLineNumber(p);
|
||||||
|
if (size % 2) {
|
||||||
|
XML_ParserReset(p, NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
|
||||||
|
if (size == 0)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
XML_Parser parentParser = XML_ParserCreate(xstr(ENCODING_FOR_FUZZING));
|
||||||
|
assert(parentParser);
|
||||||
|
ParseOneInput(parentParser, data, size);
|
||||||
|
// not freed yet, but used later and freed then
|
||||||
|
|
||||||
|
XML_Parser namespaceParser = XML_ParserCreateNS(NULL, '!');
|
||||||
|
assert(namespaceParser);
|
||||||
|
ParseOneInput(namespaceParser, data, size);
|
||||||
|
XML_ParserFree(namespaceParser);
|
||||||
|
|
||||||
|
XML_Parser externalEntityParser
|
||||||
|
= XML_ExternalEntityParserCreate(parentParser, "e1", NULL);
|
||||||
|
assert(externalEntityParser);
|
||||||
|
ParseOneInput(externalEntityParser, data, size);
|
||||||
|
XML_ParserFree(externalEntityParser);
|
||||||
|
|
||||||
|
XML_Parser externalDtdParser
|
||||||
|
= XML_ExternalEntityParserCreate(parentParser, NULL, NULL);
|
||||||
|
assert(externalDtdParser);
|
||||||
|
ParseOneInput(externalDtdParser, data, size);
|
||||||
|
XML_ParserFree(externalDtdParser);
|
||||||
|
|
||||||
|
// finally frees this parser which served as parent
|
||||||
|
XML_ParserFree(parentParser);
|
||||||
|
return 0;
|
||||||
|
}
|
17
3rdparty/expat/lib/Makefile.am
vendored
17
3rdparty/expat/lib/Makefile.am
vendored
@ -6,7 +6,9 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2017 Tomasz Kłoczko <kloczek@fedoraproject.org>
|
||||||
|
# Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -34,9 +36,13 @@ include_HEADERS = \
|
|||||||
expat_external.h
|
expat_external.h
|
||||||
|
|
||||||
lib_LTLIBRARIES = libexpat.la
|
lib_LTLIBRARIES = libexpat.la
|
||||||
|
if WITH_TESTS
|
||||||
|
noinst_LTLIBRARIES = libtestpat.la
|
||||||
|
endif
|
||||||
|
|
||||||
libexpat_la_LDFLAGS = \
|
libexpat_la_LDFLAGS = \
|
||||||
@AM_LDFLAGS@ \
|
@AM_LDFLAGS@ \
|
||||||
|
@LIBM@ \
|
||||||
-no-undefined \
|
-no-undefined \
|
||||||
-version-info @LIBCURRENT@:@LIBREVISION@:@LIBAGE@
|
-version-info @LIBCURRENT@:@LIBREVISION@:@LIBAGE@
|
||||||
|
|
||||||
@ -45,6 +51,12 @@ libexpat_la_SOURCES = \
|
|||||||
xmltok.c \
|
xmltok.c \
|
||||||
xmlrole.c
|
xmlrole.c
|
||||||
|
|
||||||
|
if WITH_TESTS
|
||||||
|
libtestpat_la_CPPFLAGS = -DXML_TESTING
|
||||||
|
|
||||||
|
libtestpat_la_SOURCES = $(libexpat_la_SOURCES)
|
||||||
|
endif
|
||||||
|
|
||||||
doc_DATA = \
|
doc_DATA = \
|
||||||
../AUTHORS \
|
../AUTHORS \
|
||||||
../Changes
|
../Changes
|
||||||
@ -63,8 +75,7 @@ EXTRA_DIST = \
|
|||||||
iasciitab.h \
|
iasciitab.h \
|
||||||
internal.h \
|
internal.h \
|
||||||
latin1tab.h \
|
latin1tab.h \
|
||||||
libexpat.def \
|
libexpat.def.cmake \
|
||||||
libexpatw.def \
|
|
||||||
nametab.h \
|
nametab.h \
|
||||||
siphash.h \
|
siphash.h \
|
||||||
utf8tab.h \
|
utf8tab.h \
|
||||||
|
139
3rdparty/expat/lib/Makefile.in
vendored
139
3rdparty/expat/lib/Makefile.in
vendored
@ -1,7 +1,7 @@
|
|||||||
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -22,7 +22,9 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2017 Tomasz Kłoczko <kloczek@fedoraproject.org>
|
||||||
|
# Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -133,6 +135,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
|||||||
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx-11.m4 \
|
||||||
$(top_srcdir)/configure.ac
|
$(top_srcdir)/configure.ac
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
$(ACLOCAL_M4)
|
$(ACLOCAL_M4)
|
||||||
@ -171,7 +175,7 @@ am__uninstall_files_from_dir = { \
|
|||||||
}
|
}
|
||||||
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(docdir)" \
|
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(docdir)" \
|
||||||
"$(DESTDIR)$(includedir)"
|
"$(DESTDIR)$(includedir)"
|
||||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES)
|
||||||
libexpat_la_LIBADD =
|
libexpat_la_LIBADD =
|
||||||
am_libexpat_la_OBJECTS = xmlparse.lo xmltok.lo xmlrole.lo
|
am_libexpat_la_OBJECTS = xmlparse.lo xmltok.lo xmlrole.lo
|
||||||
libexpat_la_OBJECTS = $(am_libexpat_la_OBJECTS)
|
libexpat_la_OBJECTS = $(am_libexpat_la_OBJECTS)
|
||||||
@ -182,6 +186,13 @@ am__v_lt_1 =
|
|||||||
libexpat_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
libexpat_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||||
$(libexpat_la_LDFLAGS) $(LDFLAGS) -o $@
|
$(libexpat_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
libtestpat_la_LIBADD =
|
||||||
|
am__libtestpat_la_SOURCES_DIST = xmlparse.c xmltok.c xmlrole.c
|
||||||
|
am__objects_1 = libtestpat_la-xmlparse.lo libtestpat_la-xmltok.lo \
|
||||||
|
libtestpat_la-xmlrole.lo
|
||||||
|
@WITH_TESTS_TRUE@am_libtestpat_la_OBJECTS = $(am__objects_1)
|
||||||
|
libtestpat_la_OBJECTS = $(am_libtestpat_la_OBJECTS)
|
||||||
|
@WITH_TESTS_TRUE@am_libtestpat_la_rpath =
|
||||||
AM_V_P = $(am__v_P_@AM_V@)
|
AM_V_P = $(am__v_P_@AM_V@)
|
||||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||||
am__v_P_0 = false
|
am__v_P_0 = false
|
||||||
@ -197,8 +208,10 @@ am__v_at_1 =
|
|||||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||||
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
||||||
am__maybe_remake_depfiles = depfiles
|
am__maybe_remake_depfiles = depfiles
|
||||||
am__depfiles_remade = ./$(DEPDIR)/xmlparse.Plo ./$(DEPDIR)/xmlrole.Plo \
|
am__depfiles_remade = ./$(DEPDIR)/libtestpat_la-xmlparse.Plo \
|
||||||
./$(DEPDIR)/xmltok.Plo
|
./$(DEPDIR)/libtestpat_la-xmlrole.Plo \
|
||||||
|
./$(DEPDIR)/libtestpat_la-xmltok.Plo ./$(DEPDIR)/xmlparse.Plo \
|
||||||
|
./$(DEPDIR)/xmlrole.Plo ./$(DEPDIR)/xmltok.Plo
|
||||||
am__mv = mv -f
|
am__mv = mv -f
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
@ -218,8 +231,9 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
|
|||||||
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
||||||
am__v_CCLD_0 = @echo " CCLD " $@;
|
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||||
am__v_CCLD_1 =
|
am__v_CCLD_1 =
|
||||||
SOURCES = $(libexpat_la_SOURCES)
|
SOURCES = $(libexpat_la_SOURCES) $(libtestpat_la_SOURCES)
|
||||||
DIST_SOURCES = $(libexpat_la_SOURCES)
|
DIST_SOURCES = $(libexpat_la_SOURCES) \
|
||||||
|
$(am__libtestpat_la_SOURCES_DIST)
|
||||||
am__can_run_installinfo = \
|
am__can_run_installinfo = \
|
||||||
case $$AM_UPDATE_INFO_DIR in \
|
case $$AM_UPDATE_INFO_DIR in \
|
||||||
n|no|NO) false;; \
|
n|no|NO) false;; \
|
||||||
@ -244,8 +258,6 @@ am__define_uniq_tagged_files = \
|
|||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
done | $(am__uniquify_input)`
|
done | $(am__uniquify_input)`
|
||||||
ETAGS = etags
|
|
||||||
CTAGS = ctags
|
|
||||||
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
||||||
$(top_srcdir)/conftools/depcomp
|
$(top_srcdir)/conftools/depcomp
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
@ -265,8 +277,10 @@ AWK = @AWK@
|
|||||||
CC = @CC@
|
CC = @CC@
|
||||||
CCDEPMODE = @CCDEPMODE@
|
CCDEPMODE = @CCDEPMODE@
|
||||||
CFLAGS = @CFLAGS@
|
CFLAGS = @CFLAGS@
|
||||||
CPP = @CPP@
|
CMAKE_SHARED_LIBRARY_PREFIX = @CMAKE_SHARED_LIBRARY_PREFIX@
|
||||||
CPPFLAGS = @CPPFLAGS@
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CSCOPE = @CSCOPE@
|
||||||
|
CTAGS = @CTAGS@
|
||||||
CXX = @CXX@
|
CXX = @CXX@
|
||||||
CXXCPP = @CXXCPP@
|
CXXCPP = @CXXCPP@
|
||||||
CXXDEPMODE = @CXXDEPMODE@
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
@ -282,10 +296,20 @@ ECHO_C = @ECHO_C@
|
|||||||
ECHO_N = @ECHO_N@
|
ECHO_N = @ECHO_N@
|
||||||
ECHO_T = @ECHO_T@
|
ECHO_T = @ECHO_T@
|
||||||
EGREP = @EGREP@
|
EGREP = @EGREP@
|
||||||
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
|
EXPAT_ATTR_INFO = @EXPAT_ATTR_INFO@
|
||||||
|
EXPAT_CHAR_TYPE = @EXPAT_CHAR_TYPE@
|
||||||
|
EXPAT_CONTEXT_BYTES = @EXPAT_CONTEXT_BYTES@
|
||||||
|
EXPAT_DTD = @EXPAT_DTD@
|
||||||
|
EXPAT_LARGE_SIZE = @EXPAT_LARGE_SIZE@
|
||||||
|
EXPAT_MIN_SIZE = @EXPAT_MIN_SIZE@
|
||||||
|
EXPAT_NS = @EXPAT_NS@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
FILEMAP = @FILEMAP@
|
FILEMAP = @FILEMAP@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
|
HAVE_CXX11 = @HAVE_CXX11@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
@ -295,6 +319,8 @@ LD = @LD@
|
|||||||
LDFLAGS = @LDFLAGS@
|
LDFLAGS = @LDFLAGS@
|
||||||
LIBAGE = @LIBAGE@
|
LIBAGE = @LIBAGE@
|
||||||
LIBCURRENT = @LIBCURRENT@
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBDIR_BASENAME = @LIBDIR_BASENAME@
|
||||||
|
LIBM = @LIBM@
|
||||||
LIBOBJS = @LIBOBJS@
|
LIBOBJS = @LIBOBJS@
|
||||||
LIBREVISION = @LIBREVISION@
|
LIBREVISION = @LIBREVISION@
|
||||||
LIBS = @LIBS@
|
LIBS = @LIBS@
|
||||||
@ -303,6 +329,7 @@ LIPO = @LIPO@
|
|||||||
LN_S = @LN_S@
|
LN_S = @LN_S@
|
||||||
LTLIBOBJS = @LTLIBOBJS@
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAINT = @MAINT@
|
||||||
MAKEINFO = @MAKEINFO@
|
MAKEINFO = @MAKEINFO@
|
||||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
MKDIR_P = @MKDIR_P@
|
MKDIR_P = @MKDIR_P@
|
||||||
@ -324,9 +351,12 @@ RANLIB = @RANLIB@
|
|||||||
SED = @SED@
|
SED = @SED@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
SHELL = @SHELL@
|
SHELL = @SHELL@
|
||||||
|
SIZEOF_VOID_P = @SIZEOF_VOID_P@
|
||||||
|
SO_MAJOR = @SO_MAJOR@
|
||||||
|
SO_MINOR = @SO_MINOR@
|
||||||
|
SO_PATCH = @SO_PATCH@
|
||||||
STRIP = @STRIP@
|
STRIP = @STRIP@
|
||||||
VERSION = @VERSION@
|
VERSION = @VERSION@
|
||||||
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
|
||||||
abs_builddir = @abs_builddir@
|
abs_builddir = @abs_builddir@
|
||||||
abs_srcdir = @abs_srcdir@
|
abs_srcdir = @abs_srcdir@
|
||||||
abs_top_builddir = @abs_top_builddir@
|
abs_top_builddir = @abs_top_builddir@
|
||||||
@ -387,8 +417,10 @@ include_HEADERS = \
|
|||||||
expat_external.h
|
expat_external.h
|
||||||
|
|
||||||
lib_LTLIBRARIES = libexpat.la
|
lib_LTLIBRARIES = libexpat.la
|
||||||
|
@WITH_TESTS_TRUE@noinst_LTLIBRARIES = libtestpat.la
|
||||||
libexpat_la_LDFLAGS = \
|
libexpat_la_LDFLAGS = \
|
||||||
@AM_LDFLAGS@ \
|
@AM_LDFLAGS@ \
|
||||||
|
@LIBM@ \
|
||||||
-no-undefined \
|
-no-undefined \
|
||||||
-version-info @LIBCURRENT@:@LIBREVISION@:@LIBAGE@
|
-version-info @LIBCURRENT@:@LIBREVISION@:@LIBAGE@
|
||||||
|
|
||||||
@ -397,6 +429,8 @@ libexpat_la_SOURCES = \
|
|||||||
xmltok.c \
|
xmltok.c \
|
||||||
xmlrole.c
|
xmlrole.c
|
||||||
|
|
||||||
|
@WITH_TESTS_TRUE@libtestpat_la_CPPFLAGS = -DXML_TESTING
|
||||||
|
@WITH_TESTS_TRUE@libtestpat_la_SOURCES = $(libexpat_la_SOURCES)
|
||||||
doc_DATA = \
|
doc_DATA = \
|
||||||
../AUTHORS \
|
../AUTHORS \
|
||||||
../Changes
|
../Changes
|
||||||
@ -409,8 +443,7 @@ EXTRA_DIST = \
|
|||||||
iasciitab.h \
|
iasciitab.h \
|
||||||
internal.h \
|
internal.h \
|
||||||
latin1tab.h \
|
latin1tab.h \
|
||||||
libexpat.def \
|
libexpat.def.cmake \
|
||||||
libexpatw.def \
|
|
||||||
nametab.h \
|
nametab.h \
|
||||||
siphash.h \
|
siphash.h \
|
||||||
utf8tab.h \
|
utf8tab.h \
|
||||||
@ -425,7 +458,7 @@ all: all-am
|
|||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .c .lo .o .obj
|
.SUFFIXES: .c .lo .o .obj
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
@for dep in $?; do \
|
@for dep in $?; do \
|
||||||
case '$(am__configure_deps)' in \
|
case '$(am__configure_deps)' in \
|
||||||
*$$dep*) \
|
*$$dep*) \
|
||||||
@ -449,9 +482,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(am__aclocal_m4_deps):
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
@ -490,15 +523,32 @@ clean-libLTLIBRARIES:
|
|||||||
rm -f $${locs}; \
|
rm -f $${locs}; \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
clean-noinstLTLIBRARIES:
|
||||||
|
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
|
||||||
|
@list='$(noinst_LTLIBRARIES)'; \
|
||||||
|
locs=`for p in $$list; do echo $$p; done | \
|
||||||
|
sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
|
||||||
|
sort -u`; \
|
||||||
|
test -z "$$locs" || { \
|
||||||
|
echo rm -f $${locs}; \
|
||||||
|
rm -f $${locs}; \
|
||||||
|
}
|
||||||
|
|
||||||
libexpat.la: $(libexpat_la_OBJECTS) $(libexpat_la_DEPENDENCIES) $(EXTRA_libexpat_la_DEPENDENCIES)
|
libexpat.la: $(libexpat_la_OBJECTS) $(libexpat_la_DEPENDENCIES) $(EXTRA_libexpat_la_DEPENDENCIES)
|
||||||
$(AM_V_CCLD)$(libexpat_la_LINK) -rpath $(libdir) $(libexpat_la_OBJECTS) $(libexpat_la_LIBADD) $(LIBS)
|
$(AM_V_CCLD)$(libexpat_la_LINK) -rpath $(libdir) $(libexpat_la_OBJECTS) $(libexpat_la_LIBADD) $(LIBS)
|
||||||
|
|
||||||
|
libtestpat.la: $(libtestpat_la_OBJECTS) $(libtestpat_la_DEPENDENCIES) $(EXTRA_libtestpat_la_DEPENDENCIES)
|
||||||
|
$(AM_V_CCLD)$(LINK) $(am_libtestpat_la_rpath) $(libtestpat_la_OBJECTS) $(libtestpat_la_LIBADD) $(LIBS)
|
||||||
|
|
||||||
mostlyclean-compile:
|
mostlyclean-compile:
|
||||||
-rm -f *.$(OBJEXT)
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
distclean-compile:
|
distclean-compile:
|
||||||
-rm -f *.tab.c
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libtestpat_la-xmlparse.Plo@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libtestpat_la-xmlrole.Plo@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libtestpat_la-xmltok.Plo@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlparse.Plo@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlparse.Plo@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlrole.Plo@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlrole.Plo@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmltok.Plo@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmltok.Plo@am__quote@ # am--include-marker
|
||||||
@ -530,6 +580,27 @@ am--depfiles: $(am__depfiles_remade)
|
|||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
|
||||||
|
|
||||||
|
libtestpat_la-xmlparse.lo: xmlparse.c
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libtestpat_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libtestpat_la-xmlparse.lo -MD -MP -MF $(DEPDIR)/libtestpat_la-xmlparse.Tpo -c -o libtestpat_la-xmlparse.lo `test -f 'xmlparse.c' || echo '$(srcdir)/'`xmlparse.c
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libtestpat_la-xmlparse.Tpo $(DEPDIR)/libtestpat_la-xmlparse.Plo
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xmlparse.c' object='libtestpat_la-xmlparse.lo' libtool=yes @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libtestpat_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libtestpat_la-xmlparse.lo `test -f 'xmlparse.c' || echo '$(srcdir)/'`xmlparse.c
|
||||||
|
|
||||||
|
libtestpat_la-xmltok.lo: xmltok.c
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libtestpat_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libtestpat_la-xmltok.lo -MD -MP -MF $(DEPDIR)/libtestpat_la-xmltok.Tpo -c -o libtestpat_la-xmltok.lo `test -f 'xmltok.c' || echo '$(srcdir)/'`xmltok.c
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libtestpat_la-xmltok.Tpo $(DEPDIR)/libtestpat_la-xmltok.Plo
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xmltok.c' object='libtestpat_la-xmltok.lo' libtool=yes @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libtestpat_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libtestpat_la-xmltok.lo `test -f 'xmltok.c' || echo '$(srcdir)/'`xmltok.c
|
||||||
|
|
||||||
|
libtestpat_la-xmlrole.lo: xmlrole.c
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libtestpat_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libtestpat_la-xmlrole.lo -MD -MP -MF $(DEPDIR)/libtestpat_la-xmlrole.Tpo -c -o libtestpat_la-xmlrole.lo `test -f 'xmlrole.c' || echo '$(srcdir)/'`xmlrole.c
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libtestpat_la-xmlrole.Tpo $(DEPDIR)/libtestpat_la-xmlrole.Plo
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xmlrole.c' object='libtestpat_la-xmlrole.lo' libtool=yes @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libtestpat_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libtestpat_la-xmlrole.lo `test -f 'xmlrole.c' || echo '$(srcdir)/'`xmlrole.c
|
||||||
|
|
||||||
mostlyclean-libtool:
|
mostlyclean-libtool:
|
||||||
-rm -f *.lo
|
-rm -f *.lo
|
||||||
|
|
||||||
@ -629,7 +700,6 @@ cscopelist-am: $(am__tagged_files)
|
|||||||
|
|
||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
|
|
||||||
distdir: $(BUILT_SOURCES)
|
distdir: $(BUILT_SOURCES)
|
||||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
@ -703,10 +773,13 @@ maintainer-clean-generic:
|
|||||||
clean: clean-am
|
clean: clean-am
|
||||||
|
|
||||||
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||||
mostlyclean-am
|
clean-noinstLTLIBRARIES mostlyclean-am
|
||||||
|
|
||||||
distclean: distclean-am
|
distclean: distclean-am
|
||||||
-rm -f ./$(DEPDIR)/xmlparse.Plo
|
-rm -f ./$(DEPDIR)/libtestpat_la-xmlparse.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/libtestpat_la-xmlrole.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/libtestpat_la-xmltok.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/xmlparse.Plo
|
||||||
-rm -f ./$(DEPDIR)/xmlrole.Plo
|
-rm -f ./$(DEPDIR)/xmlrole.Plo
|
||||||
-rm -f ./$(DEPDIR)/xmltok.Plo
|
-rm -f ./$(DEPDIR)/xmltok.Plo
|
||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
@ -755,7 +828,10 @@ install-ps-am:
|
|||||||
installcheck-am:
|
installcheck-am:
|
||||||
|
|
||||||
maintainer-clean: maintainer-clean-am
|
maintainer-clean: maintainer-clean-am
|
||||||
-rm -f ./$(DEPDIR)/xmlparse.Plo
|
-rm -f ./$(DEPDIR)/libtestpat_la-xmlparse.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/libtestpat_la-xmlrole.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/libtestpat_la-xmltok.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/xmlparse.Plo
|
||||||
-rm -f ./$(DEPDIR)/xmlrole.Plo
|
-rm -f ./$(DEPDIR)/xmlrole.Plo
|
||||||
-rm -f ./$(DEPDIR)/xmltok.Plo
|
-rm -f ./$(DEPDIR)/xmltok.Plo
|
||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
@ -780,16 +856,17 @@ uninstall-am: uninstall-docDATA uninstall-includeHEADERS \
|
|||||||
.MAKE: install-am install-data-am install-strip
|
.MAKE: install-am install-data-am install-strip
|
||||||
|
|
||||||
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
|
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
|
||||||
clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
|
clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||||
ctags ctags-am distclean distclean-compile distclean-generic \
|
clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \
|
||||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
distclean-compile distclean-generic distclean-libtool \
|
||||||
html-am info info-am install install-am install-data \
|
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||||
install-data-am install-data-hook install-docDATA install-dvi \
|
install install-am install-data install-data-am \
|
||||||
install-dvi-am install-exec install-exec-am install-html \
|
install-data-hook install-docDATA install-dvi install-dvi-am \
|
||||||
install-html-am install-includeHEADERS install-info \
|
install-exec install-exec-am install-html install-html-am \
|
||||||
install-info-am install-libLTLIBRARIES install-man install-pdf \
|
install-includeHEADERS install-info install-info-am \
|
||||||
install-pdf-am install-ps install-ps-am install-strip \
|
install-libLTLIBRARIES install-man install-pdf install-pdf-am \
|
||||||
installcheck installcheck-am installdirs maintainer-clean \
|
install-ps install-ps-am install-strip installcheck \
|
||||||
|
installcheck-am installdirs maintainer-clean \
|
||||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||||
tags tags-am uninstall uninstall-am uninstall-docDATA \
|
tags tags-am uninstall uninstall-am uninstall-docDATA \
|
||||||
|
7
3rdparty/expat/lib/ascii.h
vendored
7
3rdparty/expat/lib/ascii.h
vendored
@ -6,8 +6,11 @@
|
|||||||
\___/_/\_\ .__/ \__,_|\__|
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1999-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2007 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
4
3rdparty/expat/lib/asciitab.h
vendored
4
3rdparty/expat/lib/asciitab.h
vendored
@ -7,7 +7,9 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
77
3rdparty/expat/lib/expat.h
vendored
77
3rdparty/expat/lib/expat.h
vendored
@ -7,7 +7,18 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
|
||||||
|
Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2022 Thijs Schreijer <thijs@thijsschreijer.nl>
|
||||||
|
Copyright (c) 2023 Hanno Böck <hanno@gentoo.org>
|
||||||
|
Copyright (c) 2023 Sony Corporation / Snild Dolkow <snild@sony.com>
|
||||||
|
Copyright (c) 2024 Taichi Haradaguchi <20001722@ymail.ne.jp>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -115,7 +126,13 @@ enum XML_Error {
|
|||||||
XML_ERROR_RESERVED_PREFIX_XMLNS,
|
XML_ERROR_RESERVED_PREFIX_XMLNS,
|
||||||
XML_ERROR_RESERVED_NAMESPACE_URI,
|
XML_ERROR_RESERVED_NAMESPACE_URI,
|
||||||
/* Added in 2.2.1. */
|
/* Added in 2.2.1. */
|
||||||
XML_ERROR_INVALID_ARGUMENT
|
XML_ERROR_INVALID_ARGUMENT,
|
||||||
|
/* Added in 2.3.0. */
|
||||||
|
XML_ERROR_NO_BUFFER,
|
||||||
|
/* Added in 2.4.0. */
|
||||||
|
XML_ERROR_AMPLIFICATION_LIMIT_BREACH,
|
||||||
|
/* Added in 2.6.4. */
|
||||||
|
XML_ERROR_NOT_STARTED,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum XML_Content_Type {
|
enum XML_Content_Type {
|
||||||
@ -163,8 +180,10 @@ struct XML_cp {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/* This is called for an element declaration. See above for
|
/* This is called for an element declaration. See above for
|
||||||
description of the model argument. It's the caller's responsibility
|
description of the model argument. It's the user code's responsibility
|
||||||
to free model when finished with it.
|
to free model when finished with it. See XML_FreeContentModel.
|
||||||
|
There is no need to free the model from the handler, it can be kept
|
||||||
|
around and freed at a later stage.
|
||||||
*/
|
*/
|
||||||
typedef void(XMLCALL *XML_ElementDeclHandler)(void *userData,
|
typedef void(XMLCALL *XML_ElementDeclHandler)(void *userData,
|
||||||
const XML_Char *name,
|
const XML_Char *name,
|
||||||
@ -226,6 +245,17 @@ XML_ParserCreate(const XML_Char *encoding);
|
|||||||
and the local part will be concatenated without any separator.
|
and the local part will be concatenated without any separator.
|
||||||
It is a programming error to use the separator '\0' with namespace
|
It is a programming error to use the separator '\0' with namespace
|
||||||
triplets (see XML_SetReturnNSTriplet).
|
triplets (see XML_SetReturnNSTriplet).
|
||||||
|
If a namespace separator is chosen that can be part of a URI or
|
||||||
|
part of an XML name, splitting an expanded name back into its
|
||||||
|
1, 2 or 3 original parts on application level in the element handler
|
||||||
|
may end up vulnerable, so these are advised against; sane choices for
|
||||||
|
a namespace separator are e.g. '\n' (line feed) and '|' (pipe).
|
||||||
|
|
||||||
|
Note that Expat does not validate namespace URIs (beyond encoding)
|
||||||
|
against RFC 3986 today (and is not required to do so with regard to
|
||||||
|
the XML 1.0 namespaces specification) but it may start doing that
|
||||||
|
in future releases. Before that, an application using Expat must
|
||||||
|
be ready to receive namespace URIs containing non-URI characters.
|
||||||
*/
|
*/
|
||||||
XMLPARSEAPI(XML_Parser)
|
XMLPARSEAPI(XML_Parser)
|
||||||
XML_ParserCreateNS(const XML_Char *encoding, XML_Char namespaceSeparator);
|
XML_ParserCreateNS(const XML_Char *encoding, XML_Char namespaceSeparator);
|
||||||
@ -244,7 +274,7 @@ XML_ParserCreate_MM(const XML_Char *encoding,
|
|||||||
const XML_Memory_Handling_Suite *memsuite,
|
const XML_Memory_Handling_Suite *memsuite,
|
||||||
const XML_Char *namespaceSeparator);
|
const XML_Char *namespaceSeparator);
|
||||||
|
|
||||||
/* Prepare a parser object to be re-used. This is particularly
|
/* Prepare a parser object to be reused. This is particularly
|
||||||
valuable when memory allocation overhead is disproportionately high,
|
valuable when memory allocation overhead is disproportionately high,
|
||||||
such as when a large number of small documnents need to be parsed.
|
such as when a large number of small documnents need to be parsed.
|
||||||
All handlers are cleared from the parser, except for the
|
All handlers are cleared from the parser, except for the
|
||||||
@ -306,7 +336,7 @@ typedef void(XMLCALL *XML_StartDoctypeDeclHandler)(void *userData,
|
|||||||
const XML_Char *pubid,
|
const XML_Char *pubid,
|
||||||
int has_internal_subset);
|
int has_internal_subset);
|
||||||
|
|
||||||
/* This is called for the start of the DOCTYPE declaration when the
|
/* This is called for the end of the DOCTYPE declaration when the
|
||||||
closing > is encountered, but after processing any external
|
closing > is encountered, but after processing any external
|
||||||
subset.
|
subset.
|
||||||
*/
|
*/
|
||||||
@ -513,7 +543,7 @@ typedef struct {
|
|||||||
Otherwise it must return XML_STATUS_ERROR.
|
Otherwise it must return XML_STATUS_ERROR.
|
||||||
|
|
||||||
If info does not describe a suitable encoding, then the parser will
|
If info does not describe a suitable encoding, then the parser will
|
||||||
return an XML_UNKNOWN_ENCODING error.
|
return an XML_ERROR_UNKNOWN_ENCODING error.
|
||||||
*/
|
*/
|
||||||
typedef int(XMLCALL *XML_UnknownEncodingHandler)(void *encodingHandlerData,
|
typedef int(XMLCALL *XML_UnknownEncodingHandler)(void *encodingHandlerData,
|
||||||
const XML_Char *name,
|
const XML_Char *name,
|
||||||
@ -926,7 +956,7 @@ XMLPARSEAPI(XML_Index) XML_GetCurrentByteIndex(XML_Parser parser);
|
|||||||
XMLPARSEAPI(int)
|
XMLPARSEAPI(int)
|
||||||
XML_GetCurrentByteCount(XML_Parser parser);
|
XML_GetCurrentByteCount(XML_Parser parser);
|
||||||
|
|
||||||
/* If XML_CONTEXT_BYTES is defined, returns the input buffer, sets
|
/* If XML_CONTEXT_BYTES is >=1, returns the input buffer, sets
|
||||||
the integer pointed to by offset to the offset within this buffer
|
the integer pointed to by offset to the offset within this buffer
|
||||||
of the current parse position, and sets the integer pointed to by size
|
of the current parse position, and sets the integer pointed to by size
|
||||||
to the size of this buffer (the number of input bytes). Otherwise
|
to the size of this buffer (the number of input bytes). Otherwise
|
||||||
@ -997,7 +1027,12 @@ enum XML_FeatureEnum {
|
|||||||
XML_FEATURE_SIZEOF_XML_LCHAR,
|
XML_FEATURE_SIZEOF_XML_LCHAR,
|
||||||
XML_FEATURE_NS,
|
XML_FEATURE_NS,
|
||||||
XML_FEATURE_LARGE_SIZE,
|
XML_FEATURE_LARGE_SIZE,
|
||||||
XML_FEATURE_ATTR_INFO
|
XML_FEATURE_ATTR_INFO,
|
||||||
|
/* Added in Expat 2.4.0. */
|
||||||
|
XML_FEATURE_BILLION_LAUGHS_ATTACK_PROTECTION_MAXIMUM_AMPLIFICATION_DEFAULT,
|
||||||
|
XML_FEATURE_BILLION_LAUGHS_ATTACK_PROTECTION_ACTIVATION_THRESHOLD_DEFAULT,
|
||||||
|
/* Added in Expat 2.6.0. */
|
||||||
|
XML_FEATURE_GE
|
||||||
/* Additional features must be added to the end of this enum. */
|
/* Additional features must be added to the end of this enum. */
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1010,12 +1045,30 @@ typedef struct {
|
|||||||
XMLPARSEAPI(const XML_Feature *)
|
XMLPARSEAPI(const XML_Feature *)
|
||||||
XML_GetFeatureList(void);
|
XML_GetFeatureList(void);
|
||||||
|
|
||||||
|
#if defined(XML_DTD) || (defined(XML_GE) && XML_GE == 1)
|
||||||
|
/* Added in Expat 2.4.0 for XML_DTD defined and
|
||||||
|
* added in Expat 2.6.0 for XML_GE == 1. */
|
||||||
|
XMLPARSEAPI(XML_Bool)
|
||||||
|
XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
XML_Parser parser, float maximumAmplificationFactor);
|
||||||
|
|
||||||
|
/* Added in Expat 2.4.0 for XML_DTD defined and
|
||||||
|
* added in Expat 2.6.0 for XML_GE == 1. */
|
||||||
|
XMLPARSEAPI(XML_Bool)
|
||||||
|
XML_SetBillionLaughsAttackProtectionActivationThreshold(
|
||||||
|
XML_Parser parser, unsigned long long activationThresholdBytes);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Added in Expat 2.6.0. */
|
||||||
|
XMLPARSEAPI(XML_Bool)
|
||||||
|
XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled);
|
||||||
|
|
||||||
/* Expat follows the semantic versioning convention.
|
/* Expat follows the semantic versioning convention.
|
||||||
See http://semver.org.
|
See https://semver.org
|
||||||
*/
|
*/
|
||||||
#define XML_MAJOR_VERSION 2
|
#define XML_MAJOR_VERSION 2
|
||||||
#define XML_MINOR_VERSION 2
|
#define XML_MINOR_VERSION 6
|
||||||
#define XML_MICRO_VERSION 10
|
#define XML_MICRO_VERSION 4
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
9
3rdparty/expat/lib/expat_external.h
vendored
9
3rdparty/expat/lib/expat_external.h
vendored
@ -7,7 +7,14 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2000-2004 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
|
||||||
|
Copyright (c) 2016-2019 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
4
3rdparty/expat/lib/iasciitab.h
vendored
4
3rdparty/expat/lib/iasciitab.h
vendored
@ -7,7 +7,9 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
71
3rdparty/expat/lib/internal.h
vendored
71
3rdparty/expat/lib/internal.h
vendored
@ -25,8 +25,14 @@
|
|||||||
\___/_/\_\ .__/ \__,_|\__|
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2023-2024 Sony Corporation / Snild Dolkow <snild@sony.com>
|
||||||
|
Copyright (c) 2024 Taichi Haradaguchi <20001722@ymail.ne.jp>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -101,22 +107,69 @@
|
|||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include <limits.h> // ULONG_MAX
|
||||||
|
|
||||||
|
#if defined(_WIN32) \
|
||||||
|
&& (! defined(__USE_MINGW_ANSI_STDIO) \
|
||||||
|
|| (1 - __USE_MINGW_ANSI_STDIO - 1 == 0))
|
||||||
|
# define EXPAT_FMT_ULL(midpart) "%" midpart "I64u"
|
||||||
|
# if defined(_WIN64) // Note: modifiers "td" and "zu" do not work for MinGW
|
||||||
|
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "I64d"
|
||||||
|
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "I64u"
|
||||||
|
# else
|
||||||
|
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "d"
|
||||||
|
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "u"
|
||||||
|
# endif
|
||||||
|
#else
|
||||||
|
# define EXPAT_FMT_ULL(midpart) "%" midpart "llu"
|
||||||
|
# if ! defined(ULONG_MAX)
|
||||||
|
# error Compiler did not define ULONG_MAX for us
|
||||||
|
# elif ULONG_MAX == 18446744073709551615u // 2^64-1
|
||||||
|
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "ld"
|
||||||
|
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "lu"
|
||||||
|
# else
|
||||||
|
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "d"
|
||||||
|
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "u"
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef UNUSED_P
|
#ifndef UNUSED_P
|
||||||
# define UNUSED_P(p) (void)p
|
# define UNUSED_P(p) (void)p
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* NOTE BEGIN If you ever patch these defaults to greater values
|
||||||
|
for non-attack XML payload in your environment,
|
||||||
|
please file a bug report with libexpat. Thank you!
|
||||||
|
*/
|
||||||
|
#define EXPAT_BILLION_LAUGHS_ATTACK_PROTECTION_MAXIMUM_AMPLIFICATION_DEFAULT \
|
||||||
|
100.0f
|
||||||
|
#define EXPAT_BILLION_LAUGHS_ATTACK_PROTECTION_ACTIVATION_THRESHOLD_DEFAULT \
|
||||||
|
8388608 // 8 MiB, 2^23
|
||||||
|
/* NOTE END */
|
||||||
|
|
||||||
|
#include "expat.h" // so we can use type XML_Parser below
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef XML_ENABLE_VISIBILITY
|
void _INTERNAL_trim_to_complete_utf8_characters(const char *from,
|
||||||
# if XML_ENABLE_VISIBILITY
|
const char **fromLimRef);
|
||||||
__attribute__((visibility("default")))
|
|
||||||
# endif
|
#if defined(XML_GE) && XML_GE == 1
|
||||||
|
unsigned long long testingAccountingGetCountBytesDirect(XML_Parser parser);
|
||||||
|
unsigned long long testingAccountingGetCountBytesIndirect(XML_Parser parser);
|
||||||
|
const char *unsignedCharToPrintable(unsigned char c);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern
|
||||||
|
#if ! defined(XML_TESTING)
|
||||||
|
const
|
||||||
|
#endif
|
||||||
|
XML_Bool g_reparseDeferralEnabledDefault; // written ONLY in runtests.c
|
||||||
|
#if defined(XML_TESTING)
|
||||||
|
extern unsigned int g_bytesScanned; // used for testing only
|
||||||
#endif
|
#endif
|
||||||
void
|
|
||||||
_INTERNAL_trim_to_complete_utf8_characters(const char *from,
|
|
||||||
const char **fromLimRef);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
4
3rdparty/expat/lib/latin1tab.h
vendored
4
3rdparty/expat/lib/latin1tab.h
vendored
@ -7,7 +7,9 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
78
3rdparty/expat/lib/libexpat.def
vendored
78
3rdparty/expat/lib/libexpat.def
vendored
@ -1,78 +0,0 @@
|
|||||||
; DEF file for MS VC++
|
|
||||||
|
|
||||||
LIBRARY
|
|
||||||
EXPORTS
|
|
||||||
XML_DefaultCurrent @1
|
|
||||||
XML_ErrorString @2
|
|
||||||
XML_ExpatVersion @3
|
|
||||||
XML_ExpatVersionInfo @4
|
|
||||||
XML_ExternalEntityParserCreate @5
|
|
||||||
XML_GetBase @6
|
|
||||||
XML_GetBuffer @7
|
|
||||||
XML_GetCurrentByteCount @8
|
|
||||||
XML_GetCurrentByteIndex @9
|
|
||||||
XML_GetCurrentColumnNumber @10
|
|
||||||
XML_GetCurrentLineNumber @11
|
|
||||||
XML_GetErrorCode @12
|
|
||||||
XML_GetIdAttributeIndex @13
|
|
||||||
XML_GetInputContext @14
|
|
||||||
XML_GetSpecifiedAttributeCount @15
|
|
||||||
XML_Parse @16
|
|
||||||
XML_ParseBuffer @17
|
|
||||||
XML_ParserCreate @18
|
|
||||||
XML_ParserCreateNS @19
|
|
||||||
XML_ParserCreate_MM @20
|
|
||||||
XML_ParserFree @21
|
|
||||||
XML_SetAttlistDeclHandler @22
|
|
||||||
XML_SetBase @23
|
|
||||||
XML_SetCdataSectionHandler @24
|
|
||||||
XML_SetCharacterDataHandler @25
|
|
||||||
XML_SetCommentHandler @26
|
|
||||||
XML_SetDefaultHandler @27
|
|
||||||
XML_SetDefaultHandlerExpand @28
|
|
||||||
XML_SetDoctypeDeclHandler @29
|
|
||||||
XML_SetElementDeclHandler @30
|
|
||||||
XML_SetElementHandler @31
|
|
||||||
XML_SetEncoding @32
|
|
||||||
XML_SetEndCdataSectionHandler @33
|
|
||||||
XML_SetEndDoctypeDeclHandler @34
|
|
||||||
XML_SetEndElementHandler @35
|
|
||||||
XML_SetEndNamespaceDeclHandler @36
|
|
||||||
XML_SetEntityDeclHandler @37
|
|
||||||
XML_SetExternalEntityRefHandler @38
|
|
||||||
XML_SetExternalEntityRefHandlerArg @39
|
|
||||||
XML_SetNamespaceDeclHandler @40
|
|
||||||
XML_SetNotStandaloneHandler @41
|
|
||||||
XML_SetNotationDeclHandler @42
|
|
||||||
XML_SetParamEntityParsing @43
|
|
||||||
XML_SetProcessingInstructionHandler @44
|
|
||||||
XML_SetReturnNSTriplet @45
|
|
||||||
XML_SetStartCdataSectionHandler @46
|
|
||||||
XML_SetStartDoctypeDeclHandler @47
|
|
||||||
XML_SetStartElementHandler @48
|
|
||||||
XML_SetStartNamespaceDeclHandler @49
|
|
||||||
XML_SetUnknownEncodingHandler @50
|
|
||||||
XML_SetUnparsedEntityDeclHandler @51
|
|
||||||
XML_SetUserData @52
|
|
||||||
XML_SetXmlDeclHandler @53
|
|
||||||
XML_UseParserAsHandlerArg @54
|
|
||||||
; added with version 1.95.3
|
|
||||||
XML_ParserReset @55
|
|
||||||
XML_SetSkippedEntityHandler @56
|
|
||||||
; added with version 1.95.5
|
|
||||||
XML_GetFeatureList @57
|
|
||||||
XML_UseForeignDTD @58
|
|
||||||
; added with version 1.95.6
|
|
||||||
XML_FreeContentModel @59
|
|
||||||
XML_MemMalloc @60
|
|
||||||
XML_MemRealloc @61
|
|
||||||
XML_MemFree @62
|
|
||||||
; added with version 1.95.8
|
|
||||||
XML_StopParser @63
|
|
||||||
XML_ResumeParser @64
|
|
||||||
XML_GetParsingStatus @65
|
|
||||||
; added with version 2.1.1
|
|
||||||
; XML_GetAttributeInfo @66
|
|
||||||
XML_SetHashSalt @67
|
|
||||||
; added with version 2.2.5
|
|
||||||
_INTERNAL_trim_to_complete_utf8_characters @68
|
|
@ -1,6 +1,5 @@
|
|||||||
; DEF file for MS VC++
|
; DEF file for MS VC++
|
||||||
|
|
||||||
LIBRARY
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
XML_DefaultCurrent @1
|
XML_DefaultCurrent @1
|
||||||
XML_ErrorString @2
|
XML_ErrorString @2
|
||||||
@ -72,7 +71,11 @@ EXPORTS
|
|||||||
XML_ResumeParser @64
|
XML_ResumeParser @64
|
||||||
XML_GetParsingStatus @65
|
XML_GetParsingStatus @65
|
||||||
; added with version 2.1.1
|
; added with version 2.1.1
|
||||||
; XML_GetAttributeInfo @66
|
@_EXPAT_COMMENT_ATTR_INFO@ XML_GetAttributeInfo @66
|
||||||
XML_SetHashSalt @67
|
XML_SetHashSalt @67
|
||||||
; added with version 2.2.5
|
; internal @68 removed with version 2.3.1
|
||||||
_INTERNAL_trim_to_complete_utf8_characters @68
|
; added with version 2.4.0
|
||||||
|
@_EXPAT_COMMENT_DTD_OR_GE@ XML_SetBillionLaughsAttackProtectionActivationThreshold @69
|
||||||
|
@_EXPAT_COMMENT_DTD_OR_GE@ XML_SetBillionLaughsAttackProtectionMaximumAmplification @70
|
||||||
|
; added with version 2.6.0
|
||||||
|
XML_SetReparseDeferralEnabled @71
|
4
3rdparty/expat/lib/nametab.h
vendored
4
3rdparty/expat/lib/nametab.h
vendored
@ -6,8 +6,8 @@
|
|||||||
\___/_/\_\ .__/ \__,_|\__|
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
26
3rdparty/expat/lib/siphash.h
vendored
26
3rdparty/expat/lib/siphash.h
vendored
@ -11,6 +11,9 @@
|
|||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* HISTORY:
|
* HISTORY:
|
||||||
*
|
*
|
||||||
|
* 2020-10-03 (Sebastian Pipping)
|
||||||
|
* - Drop support for Visual Studio 9.0/2008 and earlier
|
||||||
|
*
|
||||||
* 2019-08-03 (Sebastian Pipping)
|
* 2019-08-03 (Sebastian Pipping)
|
||||||
* - Mark part of sip24_valid as to be excluded from clang-format
|
* - Mark part of sip24_valid as to be excluded from clang-format
|
||||||
* - Re-format code using clang-format 9
|
* - Re-format code using clang-format 9
|
||||||
@ -96,22 +99,14 @@
|
|||||||
#define SIPHASH_H
|
#define SIPHASH_H
|
||||||
|
|
||||||
#include <stddef.h> /* size_t */
|
#include <stddef.h> /* size_t */
|
||||||
|
#include <stdint.h> /* uint64_t uint32_t uint8_t */
|
||||||
#if defined(_WIN32) && defined(_MSC_VER) && (_MSC_VER < 1600)
|
|
||||||
/* For vs2003/7.1 up to vs2008/9.0; _MSC_VER 1600 is vs2010/10.0 */
|
|
||||||
typedef unsigned __int8 uint8_t;
|
|
||||||
typedef unsigned __int32 uint32_t;
|
|
||||||
typedef unsigned __int64 uint64_t;
|
|
||||||
#else
|
|
||||||
# include <stdint.h> /* uint64_t uint32_t uint8_t */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Workaround to not require a C++11 compiler for using ULL suffix
|
* Workaround to not require a C++11 compiler for using ULL suffix
|
||||||
* if this code is included and compiled as C++; related GCC warning is:
|
* if this code is included and compiled as C++; related GCC warning is:
|
||||||
* warning: use of C++11 long long integer constant [-Wlong-long]
|
* warning: use of C++11 long long integer constant [-Wlong-long]
|
||||||
*/
|
*/
|
||||||
#define _SIP_ULL(high, low) (((uint64_t)high << 32) | low)
|
#define SIP_ULL(high, low) ((((uint64_t)high) << 32) | (low))
|
||||||
|
|
||||||
#define SIP_ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
|
#define SIP_ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
|
||||||
|
|
||||||
@ -131,8 +126,7 @@ typedef unsigned __int64 uint64_t;
|
|||||||
| ((uint64_t)((p)[4]) << 32) | ((uint64_t)((p)[5]) << 40) \
|
| ((uint64_t)((p)[4]) << 32) | ((uint64_t)((p)[5]) << 40) \
|
||||||
| ((uint64_t)((p)[6]) << 48) | ((uint64_t)((p)[7]) << 56))
|
| ((uint64_t)((p)[6]) << 48) | ((uint64_t)((p)[7]) << 56))
|
||||||
|
|
||||||
#define SIPHASH_INITIALIZER \
|
#define SIPHASH_INITIALIZER {0, 0, 0, 0, {0}, 0, 0}
|
||||||
{ 0, 0, 0, 0, {0}, 0, 0 }
|
|
||||||
|
|
||||||
struct siphash {
|
struct siphash {
|
||||||
uint64_t v0, v1, v2, v3;
|
uint64_t v0, v1, v2, v3;
|
||||||
@ -195,10 +189,10 @@ sip_round(struct siphash *H, const int rounds) {
|
|||||||
|
|
||||||
static struct siphash *
|
static struct siphash *
|
||||||
sip24_init(struct siphash *H, const struct sipkey *key) {
|
sip24_init(struct siphash *H, const struct sipkey *key) {
|
||||||
H->v0 = _SIP_ULL(0x736f6d65U, 0x70736575U) ^ key->k[0];
|
H->v0 = SIP_ULL(0x736f6d65U, 0x70736575U) ^ key->k[0];
|
||||||
H->v1 = _SIP_ULL(0x646f7261U, 0x6e646f6dU) ^ key->k[1];
|
H->v1 = SIP_ULL(0x646f7261U, 0x6e646f6dU) ^ key->k[1];
|
||||||
H->v2 = _SIP_ULL(0x6c796765U, 0x6e657261U) ^ key->k[0];
|
H->v2 = SIP_ULL(0x6c796765U, 0x6e657261U) ^ key->k[0];
|
||||||
H->v3 = _SIP_ULL(0x74656462U, 0x79746573U) ^ key->k[1];
|
H->v3 = SIP_ULL(0x74656462U, 0x79746573U) ^ key->k[1];
|
||||||
|
|
||||||
H->p = H->buf;
|
H->p = H->buf;
|
||||||
H->c = 0;
|
H->c = 0;
|
||||||
|
4
3rdparty/expat/lib/utf8tab.h
vendored
4
3rdparty/expat/lib/utf8tab.h
vendored
@ -7,7 +7,9 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
24
3rdparty/expat/lib/winconfig.h
vendored
24
3rdparty/expat/lib/winconfig.h
vendored
@ -6,8 +6,11 @@
|
|||||||
\___/_/\_\ .__/ \__,_|\__|
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2005 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2017-2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2023 Orgad Shaneh <orgad.shaneh@audiocodes.com>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -33,24 +36,13 @@
|
|||||||
#ifndef WINCONFIG_H
|
#ifndef WINCONFIG_H
|
||||||
#define WINCONFIG_H
|
#define WINCONFIG_H
|
||||||
|
|
||||||
#define WIN32_LEAN_AND_MEAN
|
#ifndef WIN32_LEAN_AND_MEAN
|
||||||
|
# define WIN32_LEAN_AND_MEAN
|
||||||
|
#endif
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#undef WIN32_LEAN_AND_MEAN
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
|
|
||||||
#include <memory.h>
|
#include <memory.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#if defined(HAVE_EXPAT_CONFIG_H) /* e.g. MinGW */
|
|
||||||
# include <expat_config.h>
|
|
||||||
#else /* !defined(HAVE_EXPAT_CONFIG_H) */
|
|
||||||
|
|
||||||
# define XML_NS 1
|
|
||||||
# define XML_DTD 1
|
|
||||||
# define XML_CONTEXT_BYTES 1024
|
|
||||||
|
|
||||||
/* we will assume all Windows platforms are little endian */
|
|
||||||
# define BYTEORDER 1234
|
|
||||||
|
|
||||||
#endif /* !defined(HAVE_EXPAT_CONFIG_H) */
|
|
||||||
|
|
||||||
#endif /* ndef WINCONFIG_H */
|
#endif /* ndef WINCONFIG_H */
|
||||||
|
2331
3rdparty/expat/lib/xmlparse.c
vendored
2331
3rdparty/expat/lib/xmlparse.c
vendored
File diff suppressed because it is too large
Load Diff
18
3rdparty/expat/lib/xmlrole.c
vendored
18
3rdparty/expat/lib/xmlrole.c
vendored
@ -7,7 +7,15 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2016-2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2021 Donghee Na <donghee.na@python.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -30,15 +38,13 @@
|
|||||||
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "expat_config.h"
|
||||||
|
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
# include "winconfig.h"
|
# include "winconfig.h"
|
||||||
#else
|
#endif
|
||||||
# ifdef HAVE_EXPAT_CONFIG_H
|
|
||||||
# include <expat_config.h>
|
|
||||||
# endif
|
|
||||||
#endif /* ndef _WIN32 */
|
|
||||||
|
|
||||||
#include "expat_external.h"
|
#include "expat_external.h"
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
|
9
3rdparty/expat/lib/xmlrole.h
vendored
9
3rdparty/expat/lib/xmlrole.h
vendored
@ -7,7 +7,10 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -124,9 +127,9 @@ typedef struct prolog_state {
|
|||||||
#endif /* XML_DTD */
|
#endif /* XML_DTD */
|
||||||
} PROLOG_STATE;
|
} PROLOG_STATE;
|
||||||
|
|
||||||
void XmlPrologStateInit(PROLOG_STATE *);
|
void XmlPrologStateInit(PROLOG_STATE *state);
|
||||||
#ifdef XML_DTD
|
#ifdef XML_DTD
|
||||||
void XmlPrologStateInitExternalEntity(PROLOG_STATE *);
|
void XmlPrologStateInitExternalEntity(PROLOG_STATE *state);
|
||||||
#endif /* XML_DTD */
|
#endif /* XML_DTD */
|
||||||
|
|
||||||
#define XmlTokenRole(state, tok, ptr, end, enc) \
|
#define XmlTokenRole(state, tok, ptr, end, enc) \
|
||||||
|
78
3rdparty/expat/lib/xmltok.c
vendored
78
3rdparty/expat/lib/xmltok.c
vendored
@ -7,7 +7,23 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2016 Pascal Cuoq <cuoq@trust-in-soft.com>
|
||||||
|
Copyright (c) 2016 Don Lewis <truckman@apache.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2017 Alexander Bluhm <alexander.bluhm@gmx.net>
|
||||||
|
Copyright (c) 2017 Benbuck Nason <bnason@netflix.com>
|
||||||
|
Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2021 Donghee Na <donghee.na@python.org>
|
||||||
|
Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
|
||||||
|
Copyright (c) 2022 Sean McBride <sean@rogue-research.com>
|
||||||
|
Copyright (c) 2023 Hanno Böck <hanno@gentoo.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -30,25 +46,15 @@
|
|||||||
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "expat_config.h"
|
||||||
|
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
#include <string.h> /* memcpy */
|
#include <string.h> /* memcpy */
|
||||||
|
#include <stdbool.h>
|
||||||
#if defined(_MSC_VER) && (_MSC_VER <= 1700)
|
|
||||||
/* for vs2012/11.0/1700 and earlier Visual Studio compilers */
|
|
||||||
# define bool int
|
|
||||||
# define false 0
|
|
||||||
# define true 1
|
|
||||||
#else
|
|
||||||
# include <stdbool.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
# include "winconfig.h"
|
# include "winconfig.h"
|
||||||
#else
|
#endif
|
||||||
# ifdef HAVE_EXPAT_CONFIG_H
|
|
||||||
# include <expat_config.h>
|
|
||||||
# endif
|
|
||||||
#endif /* ndef _WIN32 */
|
|
||||||
|
|
||||||
#include "expat_external.h"
|
#include "expat_external.h"
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
@ -72,7 +78,7 @@
|
|||||||
#define VTABLE VTABLE1, PREFIX(toUtf8), PREFIX(toUtf16)
|
#define VTABLE VTABLE1, PREFIX(toUtf8), PREFIX(toUtf16)
|
||||||
|
|
||||||
#define UCS2_GET_NAMING(pages, hi, lo) \
|
#define UCS2_GET_NAMING(pages, hi, lo) \
|
||||||
(namingBitmap[(pages[hi] << 3) + ((lo) >> 5)] & (1u << ((lo)&0x1F)))
|
(namingBitmap[(pages[hi] << 3) + ((lo) >> 5)] & (1u << ((lo) & 0x1F)))
|
||||||
|
|
||||||
/* A 2 byte UTF-8 representation splits the characters 11 bits between
|
/* A 2 byte UTF-8 representation splits the characters 11 bits between
|
||||||
the bottom 5 and 6 bits of the bytes. We need 8 bits to index into
|
the bottom 5 and 6 bits of the bytes. We need 8 bits to index into
|
||||||
@ -95,13 +101,8 @@
|
|||||||
+ ((((byte)[1]) & 3) << 1) + ((((byte)[2]) >> 5) & 1)] \
|
+ ((((byte)[1]) & 3) << 1) + ((((byte)[2]) >> 5) & 1)] \
|
||||||
& (1u << (((byte)[2]) & 0x1F)))
|
& (1u << (((byte)[2]) & 0x1F)))
|
||||||
|
|
||||||
#define UTF8_GET_NAMING(pages, p, n) \
|
|
||||||
((n) == 2 \
|
|
||||||
? UTF8_GET_NAMING2(pages, (const unsigned char *)(p)) \
|
|
||||||
: ((n) == 3 ? UTF8_GET_NAMING3(pages, (const unsigned char *)(p)) : 0))
|
|
||||||
|
|
||||||
/* Detection of invalid UTF-8 sequences is based on Table 3.1B
|
/* Detection of invalid UTF-8 sequences is based on Table 3.1B
|
||||||
of Unicode 3.2: http://www.unicode.org/unicode/reports/tr28/
|
of Unicode 3.2: https://www.unicode.org/unicode/reports/tr28/
|
||||||
with the additional restriction of not allowing the Unicode
|
with the additional restriction of not allowing the Unicode
|
||||||
code points 0xFFFF and 0xFFFE (sequences EF,BF,BF and EF,BF,BE).
|
code points 0xFFFF and 0xFFFE (sequences EF,BF,BF and EF,BF,BE).
|
||||||
Implementation details:
|
Implementation details:
|
||||||
@ -226,7 +227,7 @@ struct normal_encoding {
|
|||||||
/* isNmstrt2 */ NULL, /* isNmstrt3 */ NULL, /* isNmstrt4 */ NULL, \
|
/* isNmstrt2 */ NULL, /* isNmstrt3 */ NULL, /* isNmstrt4 */ NULL, \
|
||||||
/* isInvalid2 */ NULL, /* isInvalid3 */ NULL, /* isInvalid4 */ NULL
|
/* isInvalid2 */ NULL, /* isInvalid3 */ NULL, /* isInvalid4 */ NULL
|
||||||
|
|
||||||
static int FASTCALL checkCharRefNumber(int);
|
static int FASTCALL checkCharRefNumber(int result);
|
||||||
|
|
||||||
#include "xmltok_impl.h"
|
#include "xmltok_impl.h"
|
||||||
#include "ascii.h"
|
#include "ascii.h"
|
||||||
@ -244,7 +245,7 @@ static int FASTCALL checkCharRefNumber(int);
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define SB_BYTE_TYPE(enc, p) \
|
#define SB_BYTE_TYPE(enc, p) \
|
||||||
(((struct normal_encoding *)(enc))->type[(unsigned char)*(p)])
|
(((const struct normal_encoding *)(enc))->type[(unsigned char)*(p)])
|
||||||
|
|
||||||
#ifdef XML_MIN_SIZE
|
#ifdef XML_MIN_SIZE
|
||||||
static int PTRFASTCALL
|
static int PTRFASTCALL
|
||||||
@ -269,8 +270,14 @@ sb_byteToAscii(const ENCODING *enc, const char *p) {
|
|||||||
|
|
||||||
#define IS_NAME_CHAR(enc, p, n) (AS_NORMAL_ENCODING(enc)->isName##n(enc, p))
|
#define IS_NAME_CHAR(enc, p, n) (AS_NORMAL_ENCODING(enc)->isName##n(enc, p))
|
||||||
#define IS_NMSTRT_CHAR(enc, p, n) (AS_NORMAL_ENCODING(enc)->isNmstrt##n(enc, p))
|
#define IS_NMSTRT_CHAR(enc, p, n) (AS_NORMAL_ENCODING(enc)->isNmstrt##n(enc, p))
|
||||||
#define IS_INVALID_CHAR(enc, p, n) \
|
#ifdef XML_MIN_SIZE
|
||||||
(AS_NORMAL_ENCODING(enc)->isInvalid##n(enc, p))
|
# define IS_INVALID_CHAR(enc, p, n) \
|
||||||
|
(AS_NORMAL_ENCODING(enc)->isInvalid##n \
|
||||||
|
&& AS_NORMAL_ENCODING(enc)->isInvalid##n(enc, p))
|
||||||
|
#else
|
||||||
|
# define IS_INVALID_CHAR(enc, p, n) \
|
||||||
|
(AS_NORMAL_ENCODING(enc)->isInvalid##n(enc, p))
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef XML_MIN_SIZE
|
#ifdef XML_MIN_SIZE
|
||||||
# define IS_NAME_CHAR_MINBPC(enc, p) \
|
# define IS_NAME_CHAR_MINBPC(enc, p) \
|
||||||
@ -292,7 +299,7 @@ sb_charMatches(const ENCODING *enc, const char *p, int c) {
|
|||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
/* c is an ASCII character */
|
/* c is an ASCII character */
|
||||||
# define CHAR_MATCHES(enc, p, c) (*(p) == c)
|
# define CHAR_MATCHES(enc, p, c) (*(p) == (c))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define PREFIX(ident) normal_##ident
|
#define PREFIX(ident) normal_##ident
|
||||||
@ -402,7 +409,7 @@ utf8_toUtf16(const ENCODING *enc, const char **fromP, const char *fromLim,
|
|||||||
unsigned short *to = *toP;
|
unsigned short *to = *toP;
|
||||||
const char *from = *fromP;
|
const char *from = *fromP;
|
||||||
while (from < fromLim && to < toLim) {
|
while (from < fromLim && to < toLim) {
|
||||||
switch (((struct normal_encoding *)enc)->type[(unsigned char)*from]) {
|
switch (SB_BYTE_TYPE(enc, from)) {
|
||||||
case BT_LEAD2:
|
case BT_LEAD2:
|
||||||
if (fromLim - from < 2) {
|
if (fromLim - from < 2) {
|
||||||
res = XML_CONVERT_INPUT_INCOMPLETE;
|
res = XML_CONVERT_INPUT_INCOMPLETE;
|
||||||
@ -710,33 +717,28 @@ unicode_byte_type(char hi, char lo) {
|
|||||||
return res; \
|
return res; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define SET2(ptr, ch) (((ptr)[0] = ((ch)&0xff)), ((ptr)[1] = ((ch) >> 8)))
|
|
||||||
#define GET_LO(ptr) ((unsigned char)(ptr)[0])
|
#define GET_LO(ptr) ((unsigned char)(ptr)[0])
|
||||||
#define GET_HI(ptr) ((unsigned char)(ptr)[1])
|
#define GET_HI(ptr) ((unsigned char)(ptr)[1])
|
||||||
|
|
||||||
DEFINE_UTF16_TO_UTF8(little2_)
|
DEFINE_UTF16_TO_UTF8(little2_)
|
||||||
DEFINE_UTF16_TO_UTF16(little2_)
|
DEFINE_UTF16_TO_UTF16(little2_)
|
||||||
|
|
||||||
#undef SET2
|
|
||||||
#undef GET_LO
|
#undef GET_LO
|
||||||
#undef GET_HI
|
#undef GET_HI
|
||||||
|
|
||||||
#define SET2(ptr, ch) (((ptr)[0] = ((ch) >> 8)), ((ptr)[1] = ((ch)&0xFF)))
|
|
||||||
#define GET_LO(ptr) ((unsigned char)(ptr)[1])
|
#define GET_LO(ptr) ((unsigned char)(ptr)[1])
|
||||||
#define GET_HI(ptr) ((unsigned char)(ptr)[0])
|
#define GET_HI(ptr) ((unsigned char)(ptr)[0])
|
||||||
|
|
||||||
DEFINE_UTF16_TO_UTF8(big2_)
|
DEFINE_UTF16_TO_UTF8(big2_)
|
||||||
DEFINE_UTF16_TO_UTF16(big2_)
|
DEFINE_UTF16_TO_UTF16(big2_)
|
||||||
|
|
||||||
#undef SET2
|
|
||||||
#undef GET_LO
|
#undef GET_LO
|
||||||
#undef GET_HI
|
#undef GET_HI
|
||||||
|
|
||||||
#define LITTLE2_BYTE_TYPE(enc, p) \
|
#define LITTLE2_BYTE_TYPE(enc, p) \
|
||||||
((p)[1] == 0 ? ((struct normal_encoding *)(enc))->type[(unsigned char)*(p)] \
|
((p)[1] == 0 ? SB_BYTE_TYPE(enc, p) : unicode_byte_type((p)[1], (p)[0]))
|
||||||
: unicode_byte_type((p)[1], (p)[0]))
|
|
||||||
#define LITTLE2_BYTE_TO_ASCII(p) ((p)[1] == 0 ? (p)[0] : -1)
|
#define LITTLE2_BYTE_TO_ASCII(p) ((p)[1] == 0 ? (p)[0] : -1)
|
||||||
#define LITTLE2_CHAR_MATCHES(p, c) ((p)[1] == 0 && (p)[0] == c)
|
#define LITTLE2_CHAR_MATCHES(p, c) ((p)[1] == 0 && (p)[0] == (c))
|
||||||
#define LITTLE2_IS_NAME_CHAR_MINBPC(p) \
|
#define LITTLE2_IS_NAME_CHAR_MINBPC(p) \
|
||||||
UCS2_GET_NAMING(namePages, (unsigned char)p[1], (unsigned char)p[0])
|
UCS2_GET_NAMING(namePages, (unsigned char)p[1], (unsigned char)p[0])
|
||||||
#define LITTLE2_IS_NMSTRT_CHAR_MINBPC(p) \
|
#define LITTLE2_IS_NMSTRT_CHAR_MINBPC(p) \
|
||||||
@ -867,11 +869,9 @@ static const struct normal_encoding internal_little2_encoding
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define BIG2_BYTE_TYPE(enc, p) \
|
#define BIG2_BYTE_TYPE(enc, p) \
|
||||||
((p)[0] == 0 \
|
((p)[0] == 0 ? SB_BYTE_TYPE(enc, p + 1) : unicode_byte_type((p)[0], (p)[1]))
|
||||||
? ((struct normal_encoding *)(enc))->type[(unsigned char)(p)[1]] \
|
|
||||||
: unicode_byte_type((p)[0], (p)[1]))
|
|
||||||
#define BIG2_BYTE_TO_ASCII(p) ((p)[0] == 0 ? (p)[1] : -1)
|
#define BIG2_BYTE_TO_ASCII(p) ((p)[0] == 0 ? (p)[1] : -1)
|
||||||
#define BIG2_CHAR_MATCHES(p, c) ((p)[0] == 0 && (p)[1] == c)
|
#define BIG2_CHAR_MATCHES(p, c) ((p)[0] == 0 && (p)[1] == (c))
|
||||||
#define BIG2_IS_NAME_CHAR_MINBPC(p) \
|
#define BIG2_IS_NAME_CHAR_MINBPC(p) \
|
||||||
UCS2_GET_NAMING(namePages, (unsigned char)p[0], (unsigned char)p[1])
|
UCS2_GET_NAMING(namePages, (unsigned char)p[0], (unsigned char)p[1])
|
||||||
#define BIG2_IS_NMSTRT_CHAR_MINBPC(p) \
|
#define BIG2_IS_NMSTRT_CHAR_MINBPC(p) \
|
||||||
|
12
3rdparty/expat/lib/xmltok.h
vendored
12
3rdparty/expat/lib/xmltok.h
vendored
@ -7,7 +7,11 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002-2005 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -285,7 +289,8 @@ int XmlParseXmlDecl(int isGeneralTextEntity, const ENCODING *enc,
|
|||||||
const char **encodingNamePtr,
|
const char **encodingNamePtr,
|
||||||
const ENCODING **namedEncodingPtr, int *standalonePtr);
|
const ENCODING **namedEncodingPtr, int *standalonePtr);
|
||||||
|
|
||||||
int XmlInitEncoding(INIT_ENCODING *, const ENCODING **, const char *name);
|
int XmlInitEncoding(INIT_ENCODING *p, const ENCODING **encPtr,
|
||||||
|
const char *name);
|
||||||
const ENCODING *XmlGetUtf8InternalEncoding(void);
|
const ENCODING *XmlGetUtf8InternalEncoding(void);
|
||||||
const ENCODING *XmlGetUtf16InternalEncoding(void);
|
const ENCODING *XmlGetUtf16InternalEncoding(void);
|
||||||
int FASTCALL XmlUtf8Encode(int charNumber, char *buf);
|
int FASTCALL XmlUtf8Encode(int charNumber, char *buf);
|
||||||
@ -303,7 +308,8 @@ int XmlParseXmlDeclNS(int isGeneralTextEntity, const ENCODING *enc,
|
|||||||
const char **encodingNamePtr,
|
const char **encodingNamePtr,
|
||||||
const ENCODING **namedEncodingPtr, int *standalonePtr);
|
const ENCODING **namedEncodingPtr, int *standalonePtr);
|
||||||
|
|
||||||
int XmlInitEncodingNS(INIT_ENCODING *, const ENCODING **, const char *name);
|
int XmlInitEncodingNS(INIT_ENCODING *p, const ENCODING **encPtr,
|
||||||
|
const char *name);
|
||||||
const ENCODING *XmlGetUtf8InternalEncodingNS(void);
|
const ENCODING *XmlGetUtf8InternalEncodingNS(void);
|
||||||
const ENCODING *XmlGetUtf16InternalEncodingNS(void);
|
const ENCODING *XmlGetUtf16InternalEncodingNS(void);
|
||||||
ENCODING *XmlInitUnknownEncodingNS(void *mem, int *table, CONVERTER convert,
|
ENCODING *XmlInitUnknownEncodingNS(void *mem, int *table, CONVERTER convert,
|
||||||
|
38
3rdparty/expat/lib/xmltok_impl.c
vendored
38
3rdparty/expat/lib/xmltok_impl.c
vendored
@ -1,4 +1,4 @@
|
|||||||
/* This file is included!
|
/* This file is included (from xmltok.c, 1-3 times depending on XML_MIN_SIZE)!
|
||||||
__ __ _
|
__ __ _
|
||||||
___\ \/ /_ __ __ _| |_
|
___\ \/ /_ __ __ _| |_
|
||||||
/ _ \\ /| '_ \ / _` | __|
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
@ -7,7 +7,16 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2018 Benjamin Peterson <benjamin@python.org>
|
||||||
|
Copyright (c) 2018 Anton Maklakov <antmak.pub@gmail.com>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2020 Boris Kolpackov <boris@codesynthesis.com>
|
||||||
|
Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -32,7 +41,7 @@
|
|||||||
|
|
||||||
#ifdef XML_TOK_IMPL_C
|
#ifdef XML_TOK_IMPL_C
|
||||||
|
|
||||||
# ifndef IS_INVALID_CHAR
|
# ifndef IS_INVALID_CHAR // i.e. for UTF-16 and XML_MIN_SIZE not defined
|
||||||
# define IS_INVALID_CHAR(enc, ptr, n) (0)
|
# define IS_INVALID_CHAR(enc, ptr, n) (0)
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
@ -61,7 +70,7 @@
|
|||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
if (end - ptr < n) \
|
if (end - ptr < n) \
|
||||||
return XML_TOK_PARTIAL_CHAR; \
|
return XML_TOK_PARTIAL_CHAR; \
|
||||||
if (! IS_NAME_CHAR(enc, ptr, n)) { \
|
if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NAME_CHAR(enc, ptr, n)) { \
|
||||||
*nextTokPtr = ptr; \
|
*nextTokPtr = ptr; \
|
||||||
return XML_TOK_INVALID; \
|
return XML_TOK_INVALID; \
|
||||||
} \
|
} \
|
||||||
@ -88,9 +97,9 @@
|
|||||||
|
|
||||||
# define CHECK_NMSTRT_CASE(n, enc, ptr, end, nextTokPtr) \
|
# define CHECK_NMSTRT_CASE(n, enc, ptr, end, nextTokPtr) \
|
||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
if (end - ptr < n) \
|
if ((end) - (ptr) < (n)) \
|
||||||
return XML_TOK_PARTIAL_CHAR; \
|
return XML_TOK_PARTIAL_CHAR; \
|
||||||
if (! IS_NMSTRT_CHAR(enc, ptr, n)) { \
|
if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NMSTRT_CHAR(enc, ptr, n)) { \
|
||||||
*nextTokPtr = ptr; \
|
*nextTokPtr = ptr; \
|
||||||
return XML_TOK_INVALID; \
|
return XML_TOK_INVALID; \
|
||||||
} \
|
} \
|
||||||
@ -116,7 +125,8 @@
|
|||||||
# define PREFIX(ident) ident
|
# define PREFIX(ident) ident
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
# define HAS_CHARS(enc, ptr, end, count) (end - ptr >= count * MINBPC(enc))
|
# define HAS_CHARS(enc, ptr, end, count) \
|
||||||
|
((end) - (ptr) >= ((count) * MINBPC(enc)))
|
||||||
|
|
||||||
# define HAS_CHAR(enc, ptr, end) HAS_CHARS(enc, ptr, end, 1)
|
# define HAS_CHAR(enc, ptr, end) HAS_CHARS(enc, ptr, end, 1)
|
||||||
|
|
||||||
@ -1134,6 +1144,10 @@ PREFIX(prologTok)(const ENCODING *enc, const char *ptr, const char *end,
|
|||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
if (end - ptr < n) \
|
if (end - ptr < n) \
|
||||||
return XML_TOK_PARTIAL_CHAR; \
|
return XML_TOK_PARTIAL_CHAR; \
|
||||||
|
if (IS_INVALID_CHAR(enc, ptr, n)) { \
|
||||||
|
*nextTokPtr = ptr; \
|
||||||
|
return XML_TOK_INVALID; \
|
||||||
|
} \
|
||||||
if (IS_NMSTRT_CHAR(enc, ptr, n)) { \
|
if (IS_NMSTRT_CHAR(enc, ptr, n)) { \
|
||||||
ptr += n; \
|
ptr += n; \
|
||||||
tok = XML_TOK_NAME; \
|
tok = XML_TOK_NAME; \
|
||||||
@ -1262,7 +1276,7 @@ PREFIX(attributeValueTok)(const ENCODING *enc, const char *ptr, const char *end,
|
|||||||
switch (BYTE_TYPE(enc, ptr)) {
|
switch (BYTE_TYPE(enc, ptr)) {
|
||||||
# define LEAD_CASE(n) \
|
# define LEAD_CASE(n) \
|
||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
ptr += n; \
|
ptr += n; /* NOTE: The encoding has already been validated. */ \
|
||||||
break;
|
break;
|
||||||
LEAD_CASE(2)
|
LEAD_CASE(2)
|
||||||
LEAD_CASE(3)
|
LEAD_CASE(3)
|
||||||
@ -1331,7 +1345,7 @@ PREFIX(entityValueTok)(const ENCODING *enc, const char *ptr, const char *end,
|
|||||||
switch (BYTE_TYPE(enc, ptr)) {
|
switch (BYTE_TYPE(enc, ptr)) {
|
||||||
# define LEAD_CASE(n) \
|
# define LEAD_CASE(n) \
|
||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
ptr += n; \
|
ptr += n; /* NOTE: The encoding has already been validated. */ \
|
||||||
break;
|
break;
|
||||||
LEAD_CASE(2)
|
LEAD_CASE(2)
|
||||||
LEAD_CASE(3)
|
LEAD_CASE(3)
|
||||||
@ -1510,7 +1524,7 @@ PREFIX(getAtts)(const ENCODING *enc, const char *ptr, int attsMax,
|
|||||||
state = inName; \
|
state = inName; \
|
||||||
}
|
}
|
||||||
# define LEAD_CASE(n) \
|
# define LEAD_CASE(n) \
|
||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: /* NOTE: The encoding has already been validated. */ \
|
||||||
START_NAME ptr += (n - MINBPC(enc)); \
|
START_NAME ptr += (n - MINBPC(enc)); \
|
||||||
break;
|
break;
|
||||||
LEAD_CASE(2)
|
LEAD_CASE(2)
|
||||||
@ -1722,7 +1736,7 @@ PREFIX(nameLength)(const ENCODING *enc, const char *ptr) {
|
|||||||
switch (BYTE_TYPE(enc, ptr)) {
|
switch (BYTE_TYPE(enc, ptr)) {
|
||||||
# define LEAD_CASE(n) \
|
# define LEAD_CASE(n) \
|
||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
ptr += n; \
|
ptr += n; /* NOTE: The encoding has already been validated. */ \
|
||||||
break;
|
break;
|
||||||
LEAD_CASE(2)
|
LEAD_CASE(2)
|
||||||
LEAD_CASE(3)
|
LEAD_CASE(3)
|
||||||
@ -1767,7 +1781,7 @@ PREFIX(updatePosition)(const ENCODING *enc, const char *ptr, const char *end,
|
|||||||
switch (BYTE_TYPE(enc, ptr)) {
|
switch (BYTE_TYPE(enc, ptr)) {
|
||||||
# define LEAD_CASE(n) \
|
# define LEAD_CASE(n) \
|
||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
ptr += n; \
|
ptr += n; /* NOTE: The encoding has already been validated. */ \
|
||||||
pos->columnNumber++; \
|
pos->columnNumber++; \
|
||||||
break;
|
break;
|
||||||
LEAD_CASE(2)
|
LEAD_CASE(2)
|
||||||
|
5
3rdparty/expat/lib/xmltok_impl.h
vendored
5
3rdparty/expat/lib/xmltok_impl.h
vendored
@ -7,7 +7,8 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2017-2019 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -44,7 +45,7 @@ enum {
|
|||||||
BT_LF, /* line feed = "\n" */
|
BT_LF, /* line feed = "\n" */
|
||||||
BT_GT, /* greater than = ">" */
|
BT_GT, /* greater than = ">" */
|
||||||
BT_QUOT, /* quotation character = "\"" */
|
BT_QUOT, /* quotation character = "\"" */
|
||||||
BT_APOS, /* aposthrophe = "'" */
|
BT_APOS, /* apostrophe = "'" */
|
||||||
BT_EQUALS, /* equal sign = "=" */
|
BT_EQUALS, /* equal sign = "=" */
|
||||||
BT_QUEST, /* question mark = "?" */
|
BT_QUEST, /* question mark = "?" */
|
||||||
BT_EXCL, /* exclamation mark = "!" */
|
BT_EXCL, /* exclamation mark = "!" */
|
||||||
|
8
3rdparty/expat/lib/xmltok_ns.c
vendored
8
3rdparty/expat/lib/xmltok_ns.c
vendored
@ -7,7 +7,11 @@
|
|||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2017-2021 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -89,7 +93,7 @@ NS(XmlInitEncoding)(INIT_ENCODING *p, const ENCODING **encPtr,
|
|||||||
static const ENCODING *
|
static const ENCODING *
|
||||||
NS(findEncoding)(const ENCODING *enc, const char *ptr, const char *end) {
|
NS(findEncoding)(const ENCODING *enc, const char *ptr, const char *end) {
|
||||||
# define ENCODING_MAX 128
|
# define ENCODING_MAX 128
|
||||||
char buf[ENCODING_MAX];
|
char buf[ENCODING_MAX] = "";
|
||||||
char *p = buf;
|
char *p = buf;
|
||||||
int i;
|
int i;
|
||||||
XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
|
XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
|
||||||
|
527
3rdparty/expat/m4/libtool.m4
vendored
527
3rdparty/expat/m4/libtool.m4
vendored
File diff suppressed because it is too large
Load Diff
108
3rdparty/expat/m4/ltoptions.m4
vendored
108
3rdparty/expat/m4/ltoptions.m4
vendored
@ -1,14 +1,14 @@
|
|||||||
# Helper functions for option handling. -*- Autoconf -*-
|
# Helper functions for option handling. -*- Autoconf -*-
|
||||||
#
|
#
|
||||||
# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
|
# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2024 Free
|
||||||
# Foundation, Inc.
|
# Software Foundation, Inc.
|
||||||
# Written by Gary V. Vaughan, 2004
|
# Written by Gary V. Vaughan, 2004
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation gives
|
# This file is free software; the Free Software Foundation gives
|
||||||
# unlimited permission to copy and/or distribute it, with or without
|
# unlimited permission to copy and/or distribute it, with or without
|
||||||
# modifications, as long as this notice is preserved.
|
# modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
# serial 8 ltoptions.m4
|
# serial 10 ltoptions.m4
|
||||||
|
|
||||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||||
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
|
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
|
||||||
@ -128,7 +128,7 @@ LT_OPTION_DEFINE([LT_INIT], [win32-dll],
|
|||||||
[enable_win32_dll=yes
|
[enable_win32_dll=yes
|
||||||
|
|
||||||
case $host in
|
case $host in
|
||||||
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
|
*-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-cegcc*)
|
||||||
AC_CHECK_TOOL(AS, as, false)
|
AC_CHECK_TOOL(AS, as, false)
|
||||||
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
|
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
|
||||||
AC_CHECK_TOOL(OBJDUMP, objdump, false)
|
AC_CHECK_TOOL(OBJDUMP, objdump, false)
|
||||||
@ -323,29 +323,39 @@ dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
|
|||||||
|
|
||||||
# _LT_WITH_AIX_SONAME([DEFAULT])
|
# _LT_WITH_AIX_SONAME([DEFAULT])
|
||||||
# ----------------------------------
|
# ----------------------------------
|
||||||
# implement the --with-aix-soname flag, and support the `aix-soname=aix'
|
# implement the --enable-aix-soname configure option, and support the
|
||||||
# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
|
# `aix-soname=aix' and `aix-soname=both' and `aix-soname=svr4' LT_INIT options.
|
||||||
# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
|
# DEFAULT is either `aix', `both', or `svr4'. If omitted, it defaults to `aix'.
|
||||||
m4_define([_LT_WITH_AIX_SONAME],
|
m4_define([_LT_WITH_AIX_SONAME],
|
||||||
[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
|
[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
|
||||||
shared_archive_member_spec=
|
shared_archive_member_spec=
|
||||||
case $host,$enable_shared in
|
case $host,$enable_shared in
|
||||||
power*-*-aix[[5-9]]*,yes)
|
power*-*-aix[[5-9]]*,yes)
|
||||||
AC_MSG_CHECKING([which variant of shared library versioning to provide])
|
AC_MSG_CHECKING([which variant of shared library versioning to provide])
|
||||||
AC_ARG_WITH([aix-soname],
|
AC_ARG_ENABLE([aix-soname],
|
||||||
[AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
|
[AS_HELP_STRING([--enable-aix-soname=aix|svr4|both],
|
||||||
[shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
|
[shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
|
||||||
[case $withval in
|
[case $enableval in
|
||||||
aix|svr4|both)
|
aix|svr4|both)
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
AC_MSG_ERROR([Unknown argument to --with-aix-soname])
|
AC_MSG_ERROR([Unknown argument to --enable-aix-soname])
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
lt_cv_with_aix_soname=$with_aix_soname],
|
lt_cv_with_aix_soname=$enable_aix_soname],
|
||||||
[AC_CACHE_VAL([lt_cv_with_aix_soname],
|
[_AC_ENABLE_IF([with], [aix-soname],
|
||||||
[lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
|
[case $withval in
|
||||||
with_aix_soname=$lt_cv_with_aix_soname])
|
aix|svr4|both)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
AC_MSG_ERROR([Unknown argument to --with-aix-soname])
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
lt_cv_with_aix_soname=$with_aix_soname],
|
||||||
|
[AC_CACHE_VAL([lt_cv_with_aix_soname],
|
||||||
|
[lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)])
|
||||||
|
enable_aix_soname=$lt_cv_with_aix_soname])
|
||||||
|
with_aix_soname=$enable_aix_soname
|
||||||
AC_MSG_RESULT([$with_aix_soname])
|
AC_MSG_RESULT([$with_aix_soname])
|
||||||
if test aix != "$with_aix_soname"; then
|
if test aix != "$with_aix_soname"; then
|
||||||
# For the AIX way of multilib, we name the shared archive member
|
# For the AIX way of multilib, we name the shared archive member
|
||||||
@ -376,30 +386,50 @@ LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
|
|||||||
|
|
||||||
# _LT_WITH_PIC([MODE])
|
# _LT_WITH_PIC([MODE])
|
||||||
# --------------------
|
# --------------------
|
||||||
# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
|
# implement the --enable-pic flag, and support the 'pic-only' and 'no-pic'
|
||||||
# LT_INIT options.
|
# LT_INIT options.
|
||||||
# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
|
# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
|
||||||
m4_define([_LT_WITH_PIC],
|
m4_define([_LT_WITH_PIC],
|
||||||
[AC_ARG_WITH([pic],
|
[AC_ARG_ENABLE([pic],
|
||||||
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
|
[AS_HELP_STRING([--enable-pic@<:@=PKGS@:>@],
|
||||||
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
|
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
|
||||||
[lt_p=${PACKAGE-default}
|
[lt_p=${PACKAGE-default}
|
||||||
case $withval in
|
case $enableval in
|
||||||
yes|no) pic_mode=$withval ;;
|
yes|no) pic_mode=$enableval ;;
|
||||||
*)
|
*)
|
||||||
pic_mode=default
|
pic_mode=default
|
||||||
# Look at the argument we got. We use all the common list separators.
|
# Look at the argument we got. We use all the common list separators.
|
||||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||||
for lt_pkg in $withval; do
|
for lt_pkg in $enableval; do
|
||||||
IFS=$lt_save_ifs
|
IFS=$lt_save_ifs
|
||||||
if test "X$lt_pkg" = "X$lt_p"; then
|
if test "X$lt_pkg" = "X$lt_p"; then
|
||||||
pic_mode=yes
|
pic_mode=yes
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
IFS=$lt_save_ifs
|
IFS=$lt_save_ifs
|
||||||
;;
|
;;
|
||||||
esac],
|
esac],
|
||||||
[pic_mode=m4_default([$1], [default])])
|
[dnl Continue to support --with-pic and --without-pic, for backward
|
||||||
|
dnl compatibility.
|
||||||
|
_AC_ENABLE_IF([with], [pic],
|
||||||
|
[lt_p=${PACKAGE-default}
|
||||||
|
case $withval in
|
||||||
|
yes|no) pic_mode=$withval ;;
|
||||||
|
*)
|
||||||
|
pic_mode=default
|
||||||
|
# Look at the argument we got. We use all the common list separators.
|
||||||
|
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||||
|
for lt_pkg in $withval; do
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
if test "X$lt_pkg" = "X$lt_p"; then
|
||||||
|
pic_mode=yes
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
;;
|
||||||
|
esac],
|
||||||
|
[pic_mode=m4_default([$1], [default])])]
|
||||||
|
)
|
||||||
|
|
||||||
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
|
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
|
||||||
])# _LT_WITH_PIC
|
])# _LT_WITH_PIC
|
||||||
|
2
3rdparty/expat/m4/ltsugar.m4
vendored
2
3rdparty/expat/m4/ltsugar.m4
vendored
@ -1,6 +1,6 @@
|
|||||||
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
|
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
|
||||||
#
|
#
|
||||||
# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
|
# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software
|
||||||
# Foundation, Inc.
|
# Foundation, Inc.
|
||||||
# Written by Gary V. Vaughan, 2004
|
# Written by Gary V. Vaughan, 2004
|
||||||
#
|
#
|
||||||
|
13
3rdparty/expat/m4/ltversion.m4
vendored
13
3rdparty/expat/m4/ltversion.m4
vendored
@ -1,6 +1,7 @@
|
|||||||
# ltversion.m4 -- version numbers -*- Autoconf -*-
|
# ltversion.m4 -- version numbers -*- Autoconf -*-
|
||||||
#
|
#
|
||||||
# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
|
# Copyright (C) 2004, 2011-2019, 2021-2024 Free Software Foundation,
|
||||||
|
# Inc.
|
||||||
# Written by Scott James Remnant, 2004
|
# Written by Scott James Remnant, 2004
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation gives
|
# This file is free software; the Free Software Foundation gives
|
||||||
@ -9,15 +10,15 @@
|
|||||||
|
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# serial 4179 ltversion.m4
|
# serial 4392 ltversion.m4
|
||||||
# This file is part of GNU Libtool
|
# This file is part of GNU Libtool
|
||||||
|
|
||||||
m4_define([LT_PACKAGE_VERSION], [2.4.6])
|
m4_define([LT_PACKAGE_VERSION], [2.5.3])
|
||||||
m4_define([LT_PACKAGE_REVISION], [2.4.6])
|
m4_define([LT_PACKAGE_REVISION], [2.5.3])
|
||||||
|
|
||||||
AC_DEFUN([LTVERSION_VERSION],
|
AC_DEFUN([LTVERSION_VERSION],
|
||||||
[macro_version='2.4.6'
|
[macro_version='2.5.3'
|
||||||
macro_revision='2.4.6'
|
macro_revision='2.5.3'
|
||||||
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
|
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
|
||||||
_LT_DECL(, macro_revision, 0)
|
_LT_DECL(, macro_revision, 0)
|
||||||
])
|
])
|
||||||
|
4
3rdparty/expat/m4/lt~obsolete.m4
vendored
4
3rdparty/expat/m4/lt~obsolete.m4
vendored
@ -1,7 +1,7 @@
|
|||||||
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
|
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
|
||||||
#
|
#
|
||||||
# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
|
# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free
|
||||||
# Foundation, Inc.
|
# Software Foundation, Inc.
|
||||||
# Written by Scott James Remnant, 2004.
|
# Written by Scott James Remnant, 2004.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation gives
|
# This file is free software; the Free Software Foundation gives
|
||||||
|
41
3rdparty/expat/run.sh.in
vendored
41
3rdparty/expat/run.sh.in
vendored
@ -1,10 +1,45 @@
|
|||||||
#! /usr/bin/env bash
|
#! /usr/bin/env bash
|
||||||
# Copyright (C) 2017 Expat development team
|
# __ __ _
|
||||||
# Licensed under the MIT license
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Licensed under the MIT license:
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
# a copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
# persons to whom the Software is furnished to do so, subject to the
|
||||||
|
# following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
# NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
case "@host@" in
|
case "@host@" in
|
||||||
*-mingw*)
|
*-mingw*)
|
||||||
exec wine "$@"
|
case "$(uname -o)" in
|
||||||
|
Cygwin|Msys)
|
||||||
|
# Windows binary on Windows host
|
||||||
|
exec "$@"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# Windows binary on non-Windows host
|
||||||
|
exec wine "$@"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
exec "$@"
|
exec "$@"
|
||||||
|
3
3rdparty/expat/test-driver-wrapper.sh
vendored
3
3rdparty/expat/test-driver-wrapper.sh
vendored
@ -6,7 +6,8 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2019 Jeffrey Walton <noloader@gmail.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
69
3rdparty/expat/tests/Makefile.am
vendored
69
3rdparty/expat/tests/Makefile.am
vendored
@ -6,7 +6,10 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
# Copyright (c) 2020 Jeffrey Walton <noloader@gmail.com>
|
||||||
|
# Copyright (c) 2024 Dag-Erling Smørgrav <des@des.dev>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -30,37 +33,67 @@
|
|||||||
|
|
||||||
SUBDIRS = . benchmark
|
SUBDIRS = . benchmark
|
||||||
|
|
||||||
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib -DXML_TESTING
|
||||||
|
|
||||||
noinst_LIBRARIES = libruntests.a
|
check_PROGRAMS = runtests runtests_cxx
|
||||||
|
TESTS = runtests runtests_cxx
|
||||||
check_PROGRAMS = runtests runtestspp
|
|
||||||
TESTS = runtests runtestspp
|
|
||||||
|
|
||||||
# To support MinGW and Non-MinGW at the same time:
|
# To support MinGW and Non-MinGW at the same time:
|
||||||
LOG_DRIVER = $(srcdir)/../test-driver-wrapper.sh
|
LOG_DRIVER = $(srcdir)/../test-driver-wrapper.sh
|
||||||
|
|
||||||
libruntests_a_SOURCES = \
|
|
||||||
chardata.c \
|
|
||||||
structdata.c \
|
|
||||||
memcheck.c \
|
|
||||||
minicheck.c
|
|
||||||
|
|
||||||
runtests_SOURCES = \
|
runtests_SOURCES = \
|
||||||
runtests.c
|
acc_tests.c \
|
||||||
|
alloc_tests.c \
|
||||||
|
basic_tests.c \
|
||||||
|
chardata.c \
|
||||||
|
common.c \
|
||||||
|
dummy.c \
|
||||||
|
handlers.c \
|
||||||
|
memcheck.c \
|
||||||
|
minicheck.c \
|
||||||
|
misc_tests.c \
|
||||||
|
ns_tests.c \
|
||||||
|
nsalloc_tests.c \
|
||||||
|
runtests.c \
|
||||||
|
structdata.c
|
||||||
|
|
||||||
runtestspp_SOURCES = \
|
runtests_cxx_SOURCES = \
|
||||||
runtestspp.cpp
|
acc_tests_cxx.cpp \
|
||||||
|
alloc_tests_cxx.cpp \
|
||||||
|
basic_tests_cxx.cpp \
|
||||||
|
chardata_cxx.cpp \
|
||||||
|
common_cxx.cpp \
|
||||||
|
dummy_cxx.cpp \
|
||||||
|
handlers_cxx.cpp \
|
||||||
|
memcheck_cxx.cpp \
|
||||||
|
minicheck_cxx.cpp \
|
||||||
|
misc_tests_cxx.cpp \
|
||||||
|
nsalloc_tests_cxx.cpp \
|
||||||
|
ns_tests_cxx.cpp \
|
||||||
|
runtests_cxx.cpp \
|
||||||
|
structdata_cxx.cpp
|
||||||
|
|
||||||
runtests_LDADD = libruntests.a ../lib/libexpat.la
|
runtests_LDADD = ../lib/libtestpat.la
|
||||||
runtestspp_LDADD = libruntests.a ../lib/libexpat.la
|
runtests_cxx_LDADD = ../lib/libtestpat.la
|
||||||
|
|
||||||
|
runtests_LDFLAGS = @AM_LDFLAGS@ @LIBM@
|
||||||
|
runtests_cxx_LDFLAGS = @AM_LDFLAGS@ @LIBM@
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
|
acc_tests.h \
|
||||||
|
alloc_tests.h \
|
||||||
|
basic_tests.h \
|
||||||
chardata.h \
|
chardata.h \
|
||||||
|
common.h \
|
||||||
|
dummy.h \
|
||||||
|
handlers.h \
|
||||||
|
misc_tests.h \
|
||||||
|
ns_tests.h \
|
||||||
|
nsalloc_tests.h \
|
||||||
structdata.h \
|
structdata.h \
|
||||||
minicheck.h \
|
minicheck.h \
|
||||||
memcheck.h \
|
memcheck.h \
|
||||||
README.txt \
|
README.md \
|
||||||
udiffer.py \
|
udiffer.py \
|
||||||
xmltest.log.expected \
|
xmltest.log.expected \
|
||||||
xmltest.sh
|
xmltest.sh
|
||||||
|
300
3rdparty/expat/tests/Makefile.in
vendored
300
3rdparty/expat/tests/Makefile.in
vendored
@ -1,7 +1,7 @@
|
|||||||
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -22,7 +22,10 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
# Copyright (c) 2020 Jeffrey Walton <noloader@gmail.com>
|
||||||
|
# Copyright (c) 2024 Dag-Erling Smørgrav <des@des.dev>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -43,7 +46,6 @@
|
|||||||
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
am__is_gnu_make = { \
|
am__is_gnu_make = { \
|
||||||
if test -z '$(MAKELEVEL)'; then \
|
if test -z '$(MAKELEVEL)'; then \
|
||||||
@ -118,8 +120,8 @@ PRE_UNINSTALL = :
|
|||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
build_triplet = @build@
|
build_triplet = @build@
|
||||||
host_triplet = @host@
|
host_triplet = @host@
|
||||||
check_PROGRAMS = runtests$(EXEEXT) runtestspp$(EXEEXT)
|
check_PROGRAMS = runtests$(EXEEXT) runtests_cxx$(EXEEXT)
|
||||||
TESTS = runtests$(EXEEXT) runtestspp$(EXEEXT)
|
TESTS = runtests$(EXEEXT) runtests_cxx$(EXEEXT)
|
||||||
subdir = tests
|
subdir = tests
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||||
@ -133,6 +135,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
|||||||
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx-11.m4 \
|
||||||
$(top_srcdir)/configure.ac
|
$(top_srcdir)/configure.ac
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
$(ACLOCAL_M4)
|
$(ACLOCAL_M4)
|
||||||
@ -141,27 +145,34 @@ mkinstalldirs = $(install_sh) -d
|
|||||||
CONFIG_HEADER = $(top_builddir)/expat_config.h
|
CONFIG_HEADER = $(top_builddir)/expat_config.h
|
||||||
CONFIG_CLEAN_FILES =
|
CONFIG_CLEAN_FILES =
|
||||||
CONFIG_CLEAN_VPATH_FILES =
|
CONFIG_CLEAN_VPATH_FILES =
|
||||||
LIBRARIES = $(noinst_LIBRARIES)
|
am_runtests_OBJECTS = acc_tests.$(OBJEXT) alloc_tests.$(OBJEXT) \
|
||||||
ARFLAGS = cru
|
basic_tests.$(OBJEXT) chardata.$(OBJEXT) common.$(OBJEXT) \
|
||||||
AM_V_AR = $(am__v_AR_@AM_V@)
|
dummy.$(OBJEXT) handlers.$(OBJEXT) memcheck.$(OBJEXT) \
|
||||||
am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
|
minicheck.$(OBJEXT) misc_tests.$(OBJEXT) ns_tests.$(OBJEXT) \
|
||||||
am__v_AR_0 = @echo " AR " $@;
|
nsalloc_tests.$(OBJEXT) runtests.$(OBJEXT) \
|
||||||
am__v_AR_1 =
|
structdata.$(OBJEXT)
|
||||||
libruntests_a_AR = $(AR) $(ARFLAGS)
|
|
||||||
libruntests_a_LIBADD =
|
|
||||||
am_libruntests_a_OBJECTS = chardata.$(OBJEXT) structdata.$(OBJEXT) \
|
|
||||||
memcheck.$(OBJEXT) minicheck.$(OBJEXT)
|
|
||||||
libruntests_a_OBJECTS = $(am_libruntests_a_OBJECTS)
|
|
||||||
am_runtests_OBJECTS = runtests.$(OBJEXT)
|
|
||||||
runtests_OBJECTS = $(am_runtests_OBJECTS)
|
runtests_OBJECTS = $(am_runtests_OBJECTS)
|
||||||
runtests_DEPENDENCIES = libruntests.a ../lib/libexpat.la
|
runtests_DEPENDENCIES = ../lib/libtestpat.la
|
||||||
AM_V_lt = $(am__v_lt_@AM_V@)
|
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||||
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||||
am__v_lt_0 = --silent
|
am__v_lt_0 = --silent
|
||||||
am__v_lt_1 =
|
am__v_lt_1 =
|
||||||
am_runtestspp_OBJECTS = runtestspp.$(OBJEXT)
|
runtests_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
runtestspp_OBJECTS = $(am_runtestspp_OBJECTS)
|
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||||
runtestspp_DEPENDENCIES = libruntests.a ../lib/libexpat.la
|
$(runtests_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
am_runtests_cxx_OBJECTS = acc_tests_cxx.$(OBJEXT) \
|
||||||
|
alloc_tests_cxx.$(OBJEXT) basic_tests_cxx.$(OBJEXT) \
|
||||||
|
chardata_cxx.$(OBJEXT) common_cxx.$(OBJEXT) \
|
||||||
|
dummy_cxx.$(OBJEXT) handlers_cxx.$(OBJEXT) \
|
||||||
|
memcheck_cxx.$(OBJEXT) minicheck_cxx.$(OBJEXT) \
|
||||||
|
misc_tests_cxx.$(OBJEXT) nsalloc_tests_cxx.$(OBJEXT) \
|
||||||
|
ns_tests_cxx.$(OBJEXT) runtests_cxx.$(OBJEXT) \
|
||||||
|
structdata_cxx.$(OBJEXT)
|
||||||
|
runtests_cxx_OBJECTS = $(am_runtests_cxx_OBJECTS)
|
||||||
|
runtests_cxx_DEPENDENCIES = ../lib/libtestpat.la
|
||||||
|
runtests_cxx_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||||
|
$(CXXFLAGS) $(runtests_cxx_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
AM_V_P = $(am__v_P_@AM_V@)
|
AM_V_P = $(am__v_P_@AM_V@)
|
||||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||||
am__v_P_0 = false
|
am__v_P_0 = false
|
||||||
@ -177,9 +188,21 @@ am__v_at_1 =
|
|||||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||||
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
||||||
am__maybe_remake_depfiles = depfiles
|
am__maybe_remake_depfiles = depfiles
|
||||||
am__depfiles_remade = ./$(DEPDIR)/chardata.Po ./$(DEPDIR)/memcheck.Po \
|
am__depfiles_remade = ./$(DEPDIR)/acc_tests.Po \
|
||||||
./$(DEPDIR)/minicheck.Po ./$(DEPDIR)/runtests.Po \
|
./$(DEPDIR)/acc_tests_cxx.Po ./$(DEPDIR)/alloc_tests.Po \
|
||||||
./$(DEPDIR)/runtestspp.Po ./$(DEPDIR)/structdata.Po
|
./$(DEPDIR)/alloc_tests_cxx.Po ./$(DEPDIR)/basic_tests.Po \
|
||||||
|
./$(DEPDIR)/basic_tests_cxx.Po ./$(DEPDIR)/chardata.Po \
|
||||||
|
./$(DEPDIR)/chardata_cxx.Po ./$(DEPDIR)/common.Po \
|
||||||
|
./$(DEPDIR)/common_cxx.Po ./$(DEPDIR)/dummy.Po \
|
||||||
|
./$(DEPDIR)/dummy_cxx.Po ./$(DEPDIR)/handlers.Po \
|
||||||
|
./$(DEPDIR)/handlers_cxx.Po ./$(DEPDIR)/memcheck.Po \
|
||||||
|
./$(DEPDIR)/memcheck_cxx.Po ./$(DEPDIR)/minicheck.Po \
|
||||||
|
./$(DEPDIR)/minicheck_cxx.Po ./$(DEPDIR)/misc_tests.Po \
|
||||||
|
./$(DEPDIR)/misc_tests_cxx.Po ./$(DEPDIR)/ns_tests.Po \
|
||||||
|
./$(DEPDIR)/ns_tests_cxx.Po ./$(DEPDIR)/nsalloc_tests.Po \
|
||||||
|
./$(DEPDIR)/nsalloc_tests_cxx.Po ./$(DEPDIR)/runtests.Po \
|
||||||
|
./$(DEPDIR)/runtests_cxx.Po ./$(DEPDIR)/structdata.Po \
|
||||||
|
./$(DEPDIR)/structdata_cxx.Po
|
||||||
am__mv = mv -f
|
am__mv = mv -f
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
@ -217,10 +240,8 @@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
|
|||||||
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
|
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
|
||||||
am__v_CXXLD_0 = @echo " CXXLD " $@;
|
am__v_CXXLD_0 = @echo " CXXLD " $@;
|
||||||
am__v_CXXLD_1 =
|
am__v_CXXLD_1 =
|
||||||
SOURCES = $(libruntests_a_SOURCES) $(runtests_SOURCES) \
|
SOURCES = $(runtests_SOURCES) $(runtests_cxx_SOURCES)
|
||||||
$(runtestspp_SOURCES)
|
DIST_SOURCES = $(runtests_SOURCES) $(runtests_cxx_SOURCES)
|
||||||
DIST_SOURCES = $(libruntests_a_SOURCES) $(runtests_SOURCES) \
|
|
||||||
$(runtestspp_SOURCES)
|
|
||||||
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
||||||
ctags-recursive dvi-recursive html-recursive info-recursive \
|
ctags-recursive dvi-recursive html-recursive info-recursive \
|
||||||
install-data-recursive install-dvi-recursive \
|
install-data-recursive install-dvi-recursive \
|
||||||
@ -259,8 +280,6 @@ am__define_uniq_tagged_files = \
|
|||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
done | $(am__uniquify_input)`
|
done | $(am__uniquify_input)`
|
||||||
ETAGS = etags
|
|
||||||
CTAGS = ctags
|
|
||||||
am__tty_colors_dummy = \
|
am__tty_colors_dummy = \
|
||||||
mgn= red= grn= lgn= blu= brg= std=; \
|
mgn= red= grn= lgn= blu= brg= std=; \
|
||||||
am__color_tests=no
|
am__color_tests=no
|
||||||
@ -443,6 +462,7 @@ am__set_TESTS_bases = \
|
|||||||
bases='$(TEST_LOGS)'; \
|
bases='$(TEST_LOGS)'; \
|
||||||
bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
|
bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
|
||||||
bases=`echo $$bases`
|
bases=`echo $$bases`
|
||||||
|
AM_TESTSUITE_SUMMARY_HEADER = ' for $(PACKAGE_STRING)'
|
||||||
RECHECK_LOGS = $(TEST_LOGS)
|
RECHECK_LOGS = $(TEST_LOGS)
|
||||||
TEST_SUITE_LOG = test-suite.log
|
TEST_SUITE_LOG = test-suite.log
|
||||||
TEST_EXTENSIONS = @EXEEXT@ .test
|
TEST_EXTENSIONS = @EXEEXT@ .test
|
||||||
@ -466,7 +486,7 @@ TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
|
|||||||
DIST_SUBDIRS = $(SUBDIRS)
|
DIST_SUBDIRS = $(SUBDIRS)
|
||||||
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
||||||
$(top_srcdir)/conftools/depcomp \
|
$(top_srcdir)/conftools/depcomp \
|
||||||
$(top_srcdir)/conftools/test-driver
|
$(top_srcdir)/conftools/test-driver README.md
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
am__relativize = \
|
am__relativize = \
|
||||||
dir0=`pwd`; \
|
dir0=`pwd`; \
|
||||||
@ -496,7 +516,7 @@ am__relativize = \
|
|||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMTAR = @AMTAR@
|
AMTAR = @AMTAR@
|
||||||
AM_CFLAGS = @AM_CFLAGS@
|
AM_CFLAGS = @AM_CFLAGS@
|
||||||
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib -DXML_TESTING
|
||||||
AM_CXXFLAGS = @AM_CXXFLAGS@
|
AM_CXXFLAGS = @AM_CXXFLAGS@
|
||||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||||
AM_LDFLAGS = @AM_LDFLAGS@
|
AM_LDFLAGS = @AM_LDFLAGS@
|
||||||
@ -509,8 +529,10 @@ AWK = @AWK@
|
|||||||
CC = @CC@
|
CC = @CC@
|
||||||
CCDEPMODE = @CCDEPMODE@
|
CCDEPMODE = @CCDEPMODE@
|
||||||
CFLAGS = @CFLAGS@
|
CFLAGS = @CFLAGS@
|
||||||
CPP = @CPP@
|
CMAKE_SHARED_LIBRARY_PREFIX = @CMAKE_SHARED_LIBRARY_PREFIX@
|
||||||
CPPFLAGS = @CPPFLAGS@
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CSCOPE = @CSCOPE@
|
||||||
|
CTAGS = @CTAGS@
|
||||||
CXX = @CXX@
|
CXX = @CXX@
|
||||||
CXXCPP = @CXXCPP@
|
CXXCPP = @CXXCPP@
|
||||||
CXXDEPMODE = @CXXDEPMODE@
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
@ -526,10 +548,20 @@ ECHO_C = @ECHO_C@
|
|||||||
ECHO_N = @ECHO_N@
|
ECHO_N = @ECHO_N@
|
||||||
ECHO_T = @ECHO_T@
|
ECHO_T = @ECHO_T@
|
||||||
EGREP = @EGREP@
|
EGREP = @EGREP@
|
||||||
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
|
EXPAT_ATTR_INFO = @EXPAT_ATTR_INFO@
|
||||||
|
EXPAT_CHAR_TYPE = @EXPAT_CHAR_TYPE@
|
||||||
|
EXPAT_CONTEXT_BYTES = @EXPAT_CONTEXT_BYTES@
|
||||||
|
EXPAT_DTD = @EXPAT_DTD@
|
||||||
|
EXPAT_LARGE_SIZE = @EXPAT_LARGE_SIZE@
|
||||||
|
EXPAT_MIN_SIZE = @EXPAT_MIN_SIZE@
|
||||||
|
EXPAT_NS = @EXPAT_NS@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
FILEMAP = @FILEMAP@
|
FILEMAP = @FILEMAP@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
|
HAVE_CXX11 = @HAVE_CXX11@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
@ -539,6 +571,8 @@ LD = @LD@
|
|||||||
LDFLAGS = @LDFLAGS@
|
LDFLAGS = @LDFLAGS@
|
||||||
LIBAGE = @LIBAGE@
|
LIBAGE = @LIBAGE@
|
||||||
LIBCURRENT = @LIBCURRENT@
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBDIR_BASENAME = @LIBDIR_BASENAME@
|
||||||
|
LIBM = @LIBM@
|
||||||
LIBOBJS = @LIBOBJS@
|
LIBOBJS = @LIBOBJS@
|
||||||
LIBREVISION = @LIBREVISION@
|
LIBREVISION = @LIBREVISION@
|
||||||
LIBS = @LIBS@
|
LIBS = @LIBS@
|
||||||
@ -547,6 +581,7 @@ LIPO = @LIPO@
|
|||||||
LN_S = @LN_S@
|
LN_S = @LN_S@
|
||||||
LTLIBOBJS = @LTLIBOBJS@
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAINT = @MAINT@
|
||||||
MAKEINFO = @MAKEINFO@
|
MAKEINFO = @MAKEINFO@
|
||||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
MKDIR_P = @MKDIR_P@
|
MKDIR_P = @MKDIR_P@
|
||||||
@ -568,9 +603,12 @@ RANLIB = @RANLIB@
|
|||||||
SED = @SED@
|
SED = @SED@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
SHELL = @SHELL@
|
SHELL = @SHELL@
|
||||||
|
SIZEOF_VOID_P = @SIZEOF_VOID_P@
|
||||||
|
SO_MAJOR = @SO_MAJOR@
|
||||||
|
SO_MINOR = @SO_MINOR@
|
||||||
|
SO_PATCH = @SO_PATCH@
|
||||||
STRIP = @STRIP@
|
STRIP = @STRIP@
|
||||||
VERSION = @VERSION@
|
VERSION = @VERSION@
|
||||||
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
|
||||||
abs_builddir = @abs_builddir@
|
abs_builddir = @abs_builddir@
|
||||||
abs_srcdir = @abs_srcdir@
|
abs_srcdir = @abs_srcdir@
|
||||||
abs_top_builddir = @abs_top_builddir@
|
abs_top_builddir = @abs_top_builddir@
|
||||||
@ -626,30 +664,60 @@ top_build_prefix = @top_build_prefix@
|
|||||||
top_builddir = @top_builddir@
|
top_builddir = @top_builddir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
SUBDIRS = . benchmark
|
SUBDIRS = . benchmark
|
||||||
noinst_LIBRARIES = libruntests.a
|
|
||||||
|
|
||||||
# To support MinGW and Non-MinGW at the same time:
|
# To support MinGW and Non-MinGW at the same time:
|
||||||
LOG_DRIVER = $(srcdir)/../test-driver-wrapper.sh
|
LOG_DRIVER = $(srcdir)/../test-driver-wrapper.sh
|
||||||
libruntests_a_SOURCES = \
|
|
||||||
chardata.c \
|
|
||||||
structdata.c \
|
|
||||||
memcheck.c \
|
|
||||||
minicheck.c
|
|
||||||
|
|
||||||
runtests_SOURCES = \
|
runtests_SOURCES = \
|
||||||
runtests.c
|
acc_tests.c \
|
||||||
|
alloc_tests.c \
|
||||||
|
basic_tests.c \
|
||||||
|
chardata.c \
|
||||||
|
common.c \
|
||||||
|
dummy.c \
|
||||||
|
handlers.c \
|
||||||
|
memcheck.c \
|
||||||
|
minicheck.c \
|
||||||
|
misc_tests.c \
|
||||||
|
ns_tests.c \
|
||||||
|
nsalloc_tests.c \
|
||||||
|
runtests.c \
|
||||||
|
structdata.c
|
||||||
|
|
||||||
runtestspp_SOURCES = \
|
runtests_cxx_SOURCES = \
|
||||||
runtestspp.cpp
|
acc_tests_cxx.cpp \
|
||||||
|
alloc_tests_cxx.cpp \
|
||||||
|
basic_tests_cxx.cpp \
|
||||||
|
chardata_cxx.cpp \
|
||||||
|
common_cxx.cpp \
|
||||||
|
dummy_cxx.cpp \
|
||||||
|
handlers_cxx.cpp \
|
||||||
|
memcheck_cxx.cpp \
|
||||||
|
minicheck_cxx.cpp \
|
||||||
|
misc_tests_cxx.cpp \
|
||||||
|
nsalloc_tests_cxx.cpp \
|
||||||
|
ns_tests_cxx.cpp \
|
||||||
|
runtests_cxx.cpp \
|
||||||
|
structdata_cxx.cpp
|
||||||
|
|
||||||
runtests_LDADD = libruntests.a ../lib/libexpat.la
|
runtests_LDADD = ../lib/libtestpat.la
|
||||||
runtestspp_LDADD = libruntests.a ../lib/libexpat.la
|
runtests_cxx_LDADD = ../lib/libtestpat.la
|
||||||
|
runtests_LDFLAGS = @AM_LDFLAGS@ @LIBM@
|
||||||
|
runtests_cxx_LDFLAGS = @AM_LDFLAGS@ @LIBM@
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
|
acc_tests.h \
|
||||||
|
alloc_tests.h \
|
||||||
|
basic_tests.h \
|
||||||
chardata.h \
|
chardata.h \
|
||||||
|
common.h \
|
||||||
|
dummy.h \
|
||||||
|
handlers.h \
|
||||||
|
misc_tests.h \
|
||||||
|
ns_tests.h \
|
||||||
|
nsalloc_tests.h \
|
||||||
structdata.h \
|
structdata.h \
|
||||||
minicheck.h \
|
minicheck.h \
|
||||||
memcheck.h \
|
memcheck.h \
|
||||||
README.txt \
|
README.md \
|
||||||
udiffer.py \
|
udiffer.py \
|
||||||
xmltest.log.expected \
|
xmltest.log.expected \
|
||||||
xmltest.sh
|
xmltest.sh
|
||||||
@ -658,7 +726,7 @@ all: all-recursive
|
|||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .c .cpp .lo .log .o .obj .test .test$(EXEEXT) .trs
|
.SUFFIXES: .c .cpp .lo .log .o .obj .test .test$(EXEEXT) .trs
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
@for dep in $?; do \
|
@for dep in $?; do \
|
||||||
case '$(am__configure_deps)' in \
|
case '$(am__configure_deps)' in \
|
||||||
*$$dep*) \
|
*$$dep*) \
|
||||||
@ -682,9 +750,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(am__aclocal_m4_deps):
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
@ -697,21 +765,13 @@ clean-checkPROGRAMS:
|
|||||||
echo " rm -f" $$list; \
|
echo " rm -f" $$list; \
|
||||||
rm -f $$list
|
rm -f $$list
|
||||||
|
|
||||||
clean-noinstLIBRARIES:
|
|
||||||
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
|
||||||
|
|
||||||
libruntests.a: $(libruntests_a_OBJECTS) $(libruntests_a_DEPENDENCIES) $(EXTRA_libruntests_a_DEPENDENCIES)
|
|
||||||
$(AM_V_at)-rm -f libruntests.a
|
|
||||||
$(AM_V_AR)$(libruntests_a_AR) libruntests.a $(libruntests_a_OBJECTS) $(libruntests_a_LIBADD)
|
|
||||||
$(AM_V_at)$(RANLIB) libruntests.a
|
|
||||||
|
|
||||||
runtests$(EXEEXT): $(runtests_OBJECTS) $(runtests_DEPENDENCIES) $(EXTRA_runtests_DEPENDENCIES)
|
runtests$(EXEEXT): $(runtests_OBJECTS) $(runtests_DEPENDENCIES) $(EXTRA_runtests_DEPENDENCIES)
|
||||||
@rm -f runtests$(EXEEXT)
|
@rm -f runtests$(EXEEXT)
|
||||||
$(AM_V_CCLD)$(LINK) $(runtests_OBJECTS) $(runtests_LDADD) $(LIBS)
|
$(AM_V_CCLD)$(runtests_LINK) $(runtests_OBJECTS) $(runtests_LDADD) $(LIBS)
|
||||||
|
|
||||||
runtestspp$(EXEEXT): $(runtestspp_OBJECTS) $(runtestspp_DEPENDENCIES) $(EXTRA_runtestspp_DEPENDENCIES)
|
runtests_cxx$(EXEEXT): $(runtests_cxx_OBJECTS) $(runtests_cxx_DEPENDENCIES) $(EXTRA_runtests_cxx_DEPENDENCIES)
|
||||||
@rm -f runtestspp$(EXEEXT)
|
@rm -f runtests_cxx$(EXEEXT)
|
||||||
$(AM_V_CXXLD)$(CXXLINK) $(runtestspp_OBJECTS) $(runtestspp_LDADD) $(LIBS)
|
$(AM_V_CXXLD)$(runtests_cxx_LINK) $(runtests_cxx_OBJECTS) $(runtests_cxx_LDADD) $(LIBS)
|
||||||
|
|
||||||
mostlyclean-compile:
|
mostlyclean-compile:
|
||||||
-rm -f *.$(OBJEXT)
|
-rm -f *.$(OBJEXT)
|
||||||
@ -719,12 +779,34 @@ mostlyclean-compile:
|
|||||||
distclean-compile:
|
distclean-compile:
|
||||||
-rm -f *.tab.c
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/acc_tests.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/acc_tests_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloc_tests.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloc_tests_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basic_tests.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basic_tests_cxx.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chardata.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chardata.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chardata_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/common.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/common_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dummy.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dummy_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/handlers.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/handlers_cxx.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memcheck.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memcheck.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memcheck_cxx.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/minicheck.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/minicheck.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/minicheck_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/misc_tests.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/misc_tests_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ns_tests.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ns_tests_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nsalloc_tests.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nsalloc_tests_cxx.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/runtests.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/runtests.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/runtestspp.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/runtests_cxx.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/structdata.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/structdata.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/structdata_cxx.Po@am__quote@ # am--include-marker
|
||||||
|
|
||||||
$(am__depfiles_remade):
|
$(am__depfiles_remade):
|
||||||
@$(MKDIR_P) $(@D)
|
@$(MKDIR_P) $(@D)
|
||||||
@ -986,7 +1068,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
|
|||||||
test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \
|
test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \
|
||||||
fi; \
|
fi; \
|
||||||
echo "$${col}$$br$${std}"; \
|
echo "$${col}$$br$${std}"; \
|
||||||
echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \
|
echo "$${col}Testsuite summary"$(AM_TESTSUITE_SUMMARY_HEADER)"$${std}"; \
|
||||||
echo "$${col}$$br$${std}"; \
|
echo "$${col}$$br$${std}"; \
|
||||||
create_testsuite_report --maybe-color; \
|
create_testsuite_report --maybe-color; \
|
||||||
echo "$$col$$br$$std"; \
|
echo "$$col$$br$$std"; \
|
||||||
@ -1027,9 +1109,9 @@ runtests.log: runtests$(EXEEXT)
|
|||||||
--log-file $$b.log --trs-file $$b.trs \
|
--log-file $$b.log --trs-file $$b.trs \
|
||||||
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||||
"$$tst" $(AM_TESTS_FD_REDIRECT)
|
"$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||||
runtestspp.log: runtestspp$(EXEEXT)
|
runtests_cxx.log: runtests_cxx$(EXEEXT)
|
||||||
@p='runtestspp$(EXEEXT)'; \
|
@p='runtests_cxx$(EXEEXT)'; \
|
||||||
b='runtestspp'; \
|
b='runtests_cxx'; \
|
||||||
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
|
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
|
||||||
--log-file $$b.log --trs-file $$b.trs \
|
--log-file $$b.log --trs-file $$b.trs \
|
||||||
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||||
@ -1048,7 +1130,6 @@ runtestspp.log: runtestspp$(EXEEXT)
|
|||||||
@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \
|
@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \
|
||||||
@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
|
@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
|
||||||
@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT)
|
@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||||
|
|
||||||
distdir: $(BUILT_SOURCES)
|
distdir: $(BUILT_SOURCES)
|
||||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
@ -1111,7 +1192,7 @@ check-am: all-am
|
|||||||
$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
|
$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
|
||||||
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
|
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
|
||||||
check: check-recursive
|
check: check-recursive
|
||||||
all-am: Makefile $(LIBRARIES)
|
all-am: Makefile
|
||||||
installdirs: installdirs-recursive
|
installdirs: installdirs-recursive
|
||||||
installdirs-am:
|
installdirs-am:
|
||||||
install: install-recursive
|
install: install-recursive
|
||||||
@ -1150,15 +1231,37 @@ maintainer-clean-generic:
|
|||||||
clean: clean-recursive
|
clean: clean-recursive
|
||||||
|
|
||||||
clean-am: clean-checkPROGRAMS clean-generic clean-libtool \
|
clean-am: clean-checkPROGRAMS clean-generic clean-libtool \
|
||||||
clean-noinstLIBRARIES mostlyclean-am
|
mostlyclean-am
|
||||||
|
|
||||||
distclean: distclean-recursive
|
distclean: distclean-recursive
|
||||||
-rm -f ./$(DEPDIR)/chardata.Po
|
-rm -f ./$(DEPDIR)/acc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/acc_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/alloc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/alloc_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/basic_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/basic_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/chardata.Po
|
||||||
|
-rm -f ./$(DEPDIR)/chardata_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/common.Po
|
||||||
|
-rm -f ./$(DEPDIR)/common_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/dummy.Po
|
||||||
|
-rm -f ./$(DEPDIR)/dummy_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/handlers.Po
|
||||||
|
-rm -f ./$(DEPDIR)/handlers_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/memcheck.Po
|
-rm -f ./$(DEPDIR)/memcheck.Po
|
||||||
|
-rm -f ./$(DEPDIR)/memcheck_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/minicheck.Po
|
-rm -f ./$(DEPDIR)/minicheck.Po
|
||||||
|
-rm -f ./$(DEPDIR)/minicheck_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/misc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/misc_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/ns_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/ns_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/nsalloc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/nsalloc_tests_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/runtests.Po
|
-rm -f ./$(DEPDIR)/runtests.Po
|
||||||
-rm -f ./$(DEPDIR)/runtestspp.Po
|
-rm -f ./$(DEPDIR)/runtests_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/structdata.Po
|
-rm -f ./$(DEPDIR)/structdata.Po
|
||||||
|
-rm -f ./$(DEPDIR)/structdata_cxx.Po
|
||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
distclean-am: clean-am distclean-compile distclean-generic \
|
distclean-am: clean-am distclean-compile distclean-generic \
|
||||||
distclean-tags
|
distclean-tags
|
||||||
@ -1204,12 +1307,34 @@ install-ps-am:
|
|||||||
installcheck-am:
|
installcheck-am:
|
||||||
|
|
||||||
maintainer-clean: maintainer-clean-recursive
|
maintainer-clean: maintainer-clean-recursive
|
||||||
-rm -f ./$(DEPDIR)/chardata.Po
|
-rm -f ./$(DEPDIR)/acc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/acc_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/alloc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/alloc_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/basic_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/basic_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/chardata.Po
|
||||||
|
-rm -f ./$(DEPDIR)/chardata_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/common.Po
|
||||||
|
-rm -f ./$(DEPDIR)/common_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/dummy.Po
|
||||||
|
-rm -f ./$(DEPDIR)/dummy_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/handlers.Po
|
||||||
|
-rm -f ./$(DEPDIR)/handlers_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/memcheck.Po
|
-rm -f ./$(DEPDIR)/memcheck.Po
|
||||||
|
-rm -f ./$(DEPDIR)/memcheck_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/minicheck.Po
|
-rm -f ./$(DEPDIR)/minicheck.Po
|
||||||
|
-rm -f ./$(DEPDIR)/minicheck_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/misc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/misc_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/ns_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/ns_tests_cxx.Po
|
||||||
|
-rm -f ./$(DEPDIR)/nsalloc_tests.Po
|
||||||
|
-rm -f ./$(DEPDIR)/nsalloc_tests_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/runtests.Po
|
-rm -f ./$(DEPDIR)/runtests.Po
|
||||||
-rm -f ./$(DEPDIR)/runtestspp.Po
|
-rm -f ./$(DEPDIR)/runtests_cxx.Po
|
||||||
-rm -f ./$(DEPDIR)/structdata.Po
|
-rm -f ./$(DEPDIR)/structdata.Po
|
||||||
|
-rm -f ./$(DEPDIR)/structdata_cxx.Po
|
||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||||
|
|
||||||
@ -1232,19 +1357,18 @@ uninstall-am:
|
|||||||
|
|
||||||
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
|
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
|
||||||
am--depfiles check check-TESTS check-am clean \
|
am--depfiles check check-TESTS check-am clean \
|
||||||
clean-checkPROGRAMS clean-generic clean-libtool \
|
clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \
|
||||||
clean-noinstLIBRARIES cscopelist-am ctags ctags-am distclean \
|
ctags ctags-am distclean distclean-compile distclean-generic \
|
||||||
distclean-compile distclean-generic distclean-libtool \
|
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
html-am info info-am install install-am install-data \
|
||||||
install install-am install-data install-data-am install-dvi \
|
install-data-am install-dvi install-dvi-am install-exec \
|
||||||
install-dvi-am install-exec install-exec-am install-html \
|
install-exec-am install-html install-html-am install-info \
|
||||||
install-html-am install-info install-info-am install-man \
|
install-info-am install-man install-pdf install-pdf-am \
|
||||||
install-pdf install-pdf-am install-ps install-ps-am \
|
install-ps install-ps-am install-strip installcheck \
|
||||||
install-strip installcheck installcheck-am installdirs \
|
installcheck-am installdirs installdirs-am maintainer-clean \
|
||||||
installdirs-am maintainer-clean maintainer-clean-generic \
|
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||||
mostlyclean mostlyclean-compile mostlyclean-generic \
|
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||||
mostlyclean-libtool pdf pdf-am ps ps-am recheck tags tags-am \
|
recheck tags tags-am uninstall uninstall-am
|
||||||
uninstall uninstall-am
|
|
||||||
|
|
||||||
.PRECIOUS: Makefile
|
.PRECIOUS: Makefile
|
||||||
|
|
||||||
|
11
3rdparty/expat/tests/README.md
vendored
Normal file
11
3rdparty/expat/tests/README.md
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
This directory contains the test suite for Expat. The tests provide
|
||||||
|
general unit testing and regression coverage. The tests are not
|
||||||
|
expected to be useful examples of Expat usage; see the
|
||||||
|
[examples](../examples) directory for that.
|
||||||
|
|
||||||
|
The Expat tests use a partial internal implementation of the
|
||||||
|
[Check](https://libcheck.github.io/check/) unit testing framework for
|
||||||
|
C.
|
||||||
|
|
||||||
|
Expat must be built and, on some platforms, installed, before the
|
||||||
|
tests can be run.
|
13
3rdparty/expat/tests/README.txt
vendored
13
3rdparty/expat/tests/README.txt
vendored
@ -1,13 +0,0 @@
|
|||||||
This directory contains the (fledgling) test suite for Expat. The
|
|
||||||
tests provide general unit testing and regression coverage. The tests
|
|
||||||
are not expected to be useful examples of Expat usage; see the
|
|
||||||
examples/ directory for that.
|
|
||||||
|
|
||||||
The Expat tests use a partial internal implementation of the "Check"
|
|
||||||
unit testing framework for C. More information on Check can be found at:
|
|
||||||
|
|
||||||
http://check.sourceforge.net/
|
|
||||||
|
|
||||||
Expat must be built and, depending on platform, must be installed, before "make check" can be executed.
|
|
||||||
|
|
||||||
This test suite can all change in a later version.
|
|
455
3rdparty/expat/tests/acc_tests.c
vendored
Normal file
455
3rdparty/expat/tests/acc_tests.c
vendored
Normal file
@ -0,0 +1,455 @@
|
|||||||
|
/* Tests in the "accounting" test case for the Expat test suite
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2001-2006 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2005-2012 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2017 Joe Orton <jorton@redhat.com>
|
||||||
|
Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
|
||||||
|
Copyright (c) 2018 Marco Maggi <marco.maggi-ipsu@poste.it>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2020 Tim Gates <tim.gates@iress.com>
|
||||||
|
Copyright (c) 2021 Donghee Na <donghee.na@python.org>
|
||||||
|
Copyright (c) 2023 Sony Corporation / Snild Dolkow <snild@sony.com>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <math.h> /* NAN, INFINITY */
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "expat_config.h"
|
||||||
|
|
||||||
|
#include "expat.h"
|
||||||
|
#include "internal.h"
|
||||||
|
#include "common.h"
|
||||||
|
#include "minicheck.h"
|
||||||
|
#include "chardata.h"
|
||||||
|
#include "handlers.h"
|
||||||
|
#include "acc_tests.h"
|
||||||
|
|
||||||
|
#if XML_GE == 1
|
||||||
|
START_TEST(test_accounting_precision) {
|
||||||
|
struct AccountingTestCase cases[] = {
|
||||||
|
{"<e/>", NULL, NULL, 0},
|
||||||
|
{"<e></e>", NULL, NULL, 0},
|
||||||
|
|
||||||
|
/* Attributes */
|
||||||
|
{"<e k1=\"v2\" k2=\"v2\"/>", NULL, NULL, 0},
|
||||||
|
{"<e k1=\"v2\" k2=\"v2\"></e>", NULL, NULL, 0},
|
||||||
|
{"<p:e xmlns:p=\"https://domain.invalid/\" />", NULL, NULL, 0},
|
||||||
|
{"<e k=\"&'><"\" />", NULL, NULL,
|
||||||
|
sizeof(XML_Char) * 5 /* number of predefined entities */},
|
||||||
|
{"<e1 xmlns='https://example.org/'>\n"
|
||||||
|
" <e2 xmlns=''/>\n"
|
||||||
|
"</e1>",
|
||||||
|
NULL, NULL, 0},
|
||||||
|
|
||||||
|
/* Text */
|
||||||
|
{"<e>text</e>", NULL, NULL, 0},
|
||||||
|
{"<e1><e2>text1<e3/>text2</e2></e1>", NULL, NULL, 0},
|
||||||
|
{"<e>&'><"</e>", NULL, NULL,
|
||||||
|
sizeof(XML_Char) * 5 /* number of predefined entities */},
|
||||||
|
{"<e>A)</e>", NULL, NULL, 0},
|
||||||
|
|
||||||
|
/* Prolog */
|
||||||
|
{"<?xml version=\"1.0\"?><root/>", NULL, NULL, 0},
|
||||||
|
|
||||||
|
/* Whitespace */
|
||||||
|
{" <e1> <e2> </e2> </e1> ", NULL, NULL, 0},
|
||||||
|
{"<e1 ><e2 /></e1 >", NULL, NULL, 0},
|
||||||
|
{"<e1><e2 k = \"v\"/><e3 k = 'v'/></e1>", NULL, NULL, 0},
|
||||||
|
|
||||||
|
/* Comments */
|
||||||
|
{"<!-- Comment --><e><!-- Comment --></e>", NULL, NULL, 0},
|
||||||
|
|
||||||
|
/* Processing instructions */
|
||||||
|
{"<?xml-stylesheet type=\"text/xsl\" href=\"https://domain.invalid/\" media=\"all\"?><e/>",
|
||||||
|
NULL, NULL, 0},
|
||||||
|
{"<?pi0?><?pi1 ?><?pi2 ?><r/><?pi4?>", NULL, NULL, 0},
|
||||||
|
# ifdef XML_DTD
|
||||||
|
{"<?pi0?><?pi1 ?><?pi2 ?><!DOCTYPE r SYSTEM 'first.ent'><r/>",
|
||||||
|
"<?pi3?><!ENTITY % e1 SYSTEM 'second.ent'><?pi4?>%e1;<?pi5?>", "<?pi6?>",
|
||||||
|
0},
|
||||||
|
# endif /* XML_DTD */
|
||||||
|
|
||||||
|
/* CDATA */
|
||||||
|
{"<e><![CDATA[one two three]]></e>", NULL, NULL, 0},
|
||||||
|
/* The following is the essence of this OSS-Fuzz finding:
|
||||||
|
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=34302
|
||||||
|
https://oss-fuzz.com/testcase-detail/4860575394955264
|
||||||
|
*/
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
"<!ENTITY e \"111<![CDATA[2 <= 2]]>333\">\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r>&e;</r>\n",
|
||||||
|
NULL, NULL, sizeof(XML_Char) * strlen("111<![CDATA[2 <= 2]]>333")},
|
||||||
|
|
||||||
|
# ifdef XML_DTD
|
||||||
|
/* Conditional sections */
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
"<!ENTITY % draft 'INCLUDE'>\n"
|
||||||
|
"<!ENTITY % final 'IGNORE'>\n"
|
||||||
|
"<!ENTITY % import SYSTEM \"first.ent\">\n"
|
||||||
|
"%import;\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r/>\n",
|
||||||
|
"<![%draft;[<!--1-->]]>\n"
|
||||||
|
"<![%final;[<!--22-->]]>",
|
||||||
|
NULL, sizeof(XML_Char) * (strlen("INCLUDE") + strlen("IGNORE"))},
|
||||||
|
# endif /* XML_DTD */
|
||||||
|
|
||||||
|
/* General entities */
|
||||||
|
{"<!DOCTYPE root [\n"
|
||||||
|
"<!ENTITY nine \"123456789\">\n"
|
||||||
|
"]>\n"
|
||||||
|
"<root>&nine;</root>",
|
||||||
|
NULL, NULL, sizeof(XML_Char) * strlen("123456789")},
|
||||||
|
{"<!DOCTYPE root [\n"
|
||||||
|
"<!ENTITY nine \"123456789\">\n"
|
||||||
|
"]>\n"
|
||||||
|
"<root k1=\"&nine;\"/>",
|
||||||
|
NULL, NULL, sizeof(XML_Char) * strlen("123456789")},
|
||||||
|
{"<!DOCTYPE root [\n"
|
||||||
|
"<!ENTITY nine \"123456789\">\n"
|
||||||
|
"<!ENTITY nine2 \"&nine;&nine;\">\n"
|
||||||
|
"]>\n"
|
||||||
|
"<root>&nine2;&nine2;&nine2;</root>",
|
||||||
|
NULL, NULL,
|
||||||
|
sizeof(XML_Char) * 3 /* calls to &nine2; */ * 2 /* calls to &nine; */
|
||||||
|
* (strlen("&nine;") + strlen("123456789"))},
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
" <!ENTITY five SYSTEM 'first.ent'>\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r>&five;</r>",
|
||||||
|
"12345", NULL, 0},
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
" <!ENTITY five SYSTEM 'first.ent'>\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r>&five;</r>",
|
||||||
|
"\xEF\xBB\xBF" /* UTF-8 BOM */, NULL, 0},
|
||||||
|
|
||||||
|
# ifdef XML_DTD
|
||||||
|
/* Parameter entities */
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
"<!ENTITY % comment \"<!---->\">\n"
|
||||||
|
"%comment;\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r/>",
|
||||||
|
NULL, NULL, sizeof(XML_Char) * strlen("<!---->")},
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
"<!ENTITY % ninedef \"<!ENTITY nine "123456789">\">\n"
|
||||||
|
"%ninedef;\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r>&nine;</r>",
|
||||||
|
NULL, NULL,
|
||||||
|
sizeof(XML_Char)
|
||||||
|
* (strlen("<!ENTITY nine \"123456789\">") + strlen("123456789"))},
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
"<!ENTITY % comment \"<!--1-->\">\n"
|
||||||
|
"<!ENTITY % comment2 \"%comment;<!--22-->%comment;\">\n"
|
||||||
|
"%comment2;\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r/>\n",
|
||||||
|
NULL, NULL,
|
||||||
|
sizeof(XML_Char)
|
||||||
|
* (strlen("%comment;<!--22-->%comment;") + 2 * strlen("<!--1-->"))},
|
||||||
|
{"<!DOCTYPE r [\n"
|
||||||
|
" <!ENTITY % five \"12345\">\n"
|
||||||
|
" <!ENTITY % five2def \"<!ENTITY five2 "[%five;][%five;]]]]">\">\n"
|
||||||
|
" %five2def;\n"
|
||||||
|
"]>\n"
|
||||||
|
"<r>&five2;</r>",
|
||||||
|
NULL, NULL, /* from "%five2def;": */
|
||||||
|
sizeof(XML_Char)
|
||||||
|
* (strlen("<!ENTITY five2 \"[%five;][%five;]]]]\">")
|
||||||
|
+ 2 /* calls to "%five;" */ * strlen("12345")
|
||||||
|
+ /* from "&five2;": */ strlen("[12345][12345]]]]"))},
|
||||||
|
{"<!DOCTYPE r SYSTEM \"first.ent\">\n"
|
||||||
|
"<r/>",
|
||||||
|
"<!ENTITY % comment '<!--1-->'>\n"
|
||||||
|
"<!ENTITY % comment2 '<!--22-->%comment;<!--22-->%comment;<!--22-->'>\n"
|
||||||
|
"%comment2;",
|
||||||
|
NULL,
|
||||||
|
sizeof(XML_Char)
|
||||||
|
* (strlen("<!--22-->%comment;<!--22-->%comment;<!--22-->")
|
||||||
|
+ 2 /* calls to "%comment;" */ * strlen("<!---->"))},
|
||||||
|
{"<!DOCTYPE r SYSTEM 'first.ent'>\n"
|
||||||
|
"<r/>",
|
||||||
|
"<!ENTITY % e1 PUBLIC 'foo' 'second.ent'>\n"
|
||||||
|
"<!ENTITY % e2 '<!--22-->%e1;<!--22-->'>\n"
|
||||||
|
"%e2;\n",
|
||||||
|
"<!--1-->", sizeof(XML_Char) * strlen("<!--22--><!--1--><!--22-->")},
|
||||||
|
{
|
||||||
|
"<!DOCTYPE r SYSTEM 'first.ent'>\n"
|
||||||
|
"<r/>",
|
||||||
|
"<!ENTITY % e1 SYSTEM 'second.ent'>\n"
|
||||||
|
"<!ENTITY % e2 '%e1;'>",
|
||||||
|
"<?xml version='1.0' encoding='utf-8'?>\n"
|
||||||
|
"hello\n"
|
||||||
|
"xml" /* without trailing newline! */,
|
||||||
|
0,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<!DOCTYPE r SYSTEM 'first.ent'>\n"
|
||||||
|
"<r/>",
|
||||||
|
"<!ENTITY % e1 SYSTEM 'second.ent'>\n"
|
||||||
|
"<!ENTITY % e2 '%e1;'>",
|
||||||
|
"<?xml version='1.0' encoding='utf-8'?>\n"
|
||||||
|
"hello\n"
|
||||||
|
"xml\n" /* with trailing newline! */,
|
||||||
|
0,
|
||||||
|
},
|
||||||
|
{"<!DOCTYPE doc SYSTEM 'first.ent'>\n"
|
||||||
|
"<doc></doc>\n",
|
||||||
|
"<!ELEMENT doc EMPTY>\n"
|
||||||
|
"<!ENTITY % e1 SYSTEM 'second.ent'>\n"
|
||||||
|
"<!ENTITY % e2 '%e1;'>\n"
|
||||||
|
"%e1;\n",
|
||||||
|
"\xEF\xBB\xBF<!ATTLIST doc a1 CDATA 'value'>" /* UTF-8 BOM */,
|
||||||
|
strlen("\xEF\xBB\xBF<!ATTLIST doc a1 CDATA 'value'>")},
|
||||||
|
# endif /* XML_DTD */
|
||||||
|
};
|
||||||
|
|
||||||
|
const size_t countCases = sizeof(cases) / sizeof(cases[0]);
|
||||||
|
size_t u = 0;
|
||||||
|
for (; u < countCases; u++) {
|
||||||
|
const unsigned long long expectedCountBytesDirect
|
||||||
|
= strlen(cases[u].primaryText);
|
||||||
|
const unsigned long long expectedCountBytesIndirect
|
||||||
|
= (cases[u].firstExternalText ? strlen(cases[u].firstExternalText) : 0)
|
||||||
|
+ (cases[u].secondExternalText ? strlen(cases[u].secondExternalText)
|
||||||
|
: 0)
|
||||||
|
+ cases[u].expectedCountBytesIndirectExtra;
|
||||||
|
|
||||||
|
XML_Parser parser = XML_ParserCreate(NULL);
|
||||||
|
XML_SetParamEntityParsing(parser, XML_PARAM_ENTITY_PARSING_ALWAYS);
|
||||||
|
if (cases[u].firstExternalText) {
|
||||||
|
XML_SetExternalEntityRefHandler(parser,
|
||||||
|
accounting_external_entity_ref_handler);
|
||||||
|
XML_SetUserData(parser, (void *)&cases[u]);
|
||||||
|
}
|
||||||
|
|
||||||
|
enum XML_Status status
|
||||||
|
= _XML_Parse_SINGLE_BYTES(parser, cases[u].primaryText,
|
||||||
|
(int)strlen(cases[u].primaryText), XML_TRUE);
|
||||||
|
if (status != XML_STATUS_OK) {
|
||||||
|
_xml_failure(parser, __FILE__, __LINE__);
|
||||||
|
}
|
||||||
|
|
||||||
|
const unsigned long long actualCountBytesDirect
|
||||||
|
= testingAccountingGetCountBytesDirect(parser);
|
||||||
|
const unsigned long long actualCountBytesIndirect
|
||||||
|
= testingAccountingGetCountBytesIndirect(parser);
|
||||||
|
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
|
||||||
|
if (actualCountBytesDirect != expectedCountBytesDirect) {
|
||||||
|
fprintf(
|
||||||
|
stderr,
|
||||||
|
"Document " EXPAT_FMT_SIZE_T("") " of " EXPAT_FMT_SIZE_T("") ": Expected " EXPAT_FMT_ULL(
|
||||||
|
"") " count direct bytes, got " EXPAT_FMT_ULL("") " instead.\n",
|
||||||
|
u + 1, countCases, expectedCountBytesDirect, actualCountBytesDirect);
|
||||||
|
fail("Count of direct bytes is off");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (actualCountBytesIndirect != expectedCountBytesIndirect) {
|
||||||
|
fprintf(
|
||||||
|
stderr,
|
||||||
|
"Document " EXPAT_FMT_SIZE_T("") " of " EXPAT_FMT_SIZE_T("") ": Expected " EXPAT_FMT_ULL(
|
||||||
|
"") " count indirect bytes, got " EXPAT_FMT_ULL("") " instead.\n",
|
||||||
|
u + 1, countCases, expectedCountBytesIndirect,
|
||||||
|
actualCountBytesIndirect);
|
||||||
|
fail("Count of indirect bytes is off");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
END_TEST
|
||||||
|
|
||||||
|
START_TEST(test_billion_laughs_attack_protection_api) {
|
||||||
|
XML_Parser parserWithoutParent = XML_ParserCreate(NULL);
|
||||||
|
XML_Parser parserWithParent = XML_ExternalEntityParserCreate(
|
||||||
|
parserWithoutParent, XCS("entity123"), NULL);
|
||||||
|
if (parserWithoutParent == NULL)
|
||||||
|
fail("parserWithoutParent is NULL");
|
||||||
|
if (parserWithParent == NULL)
|
||||||
|
fail("parserWithParent is NULL");
|
||||||
|
|
||||||
|
// XML_SetBillionLaughsAttackProtectionMaximumAmplification, error cases
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(NULL, 123.0f)
|
||||||
|
== XML_TRUE)
|
||||||
|
fail("Call with NULL parser is NOT supposed to succeed");
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(parserWithParent,
|
||||||
|
123.0f)
|
||||||
|
== XML_TRUE)
|
||||||
|
fail("Call with non-root parser is NOT supposed to succeed");
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
parserWithoutParent, NAN)
|
||||||
|
== XML_TRUE)
|
||||||
|
fail("Call with NaN limit is NOT supposed to succeed");
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
parserWithoutParent, -1.0f)
|
||||||
|
== XML_TRUE)
|
||||||
|
fail("Call with negative limit is NOT supposed to succeed");
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
parserWithoutParent, 0.9f)
|
||||||
|
== XML_TRUE)
|
||||||
|
fail("Call with positive limit <1.0 is NOT supposed to succeed");
|
||||||
|
|
||||||
|
// XML_SetBillionLaughsAttackProtectionMaximumAmplification, success cases
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
parserWithoutParent, 1.0f)
|
||||||
|
== XML_FALSE)
|
||||||
|
fail("Call with positive limit >=1.0 is supposed to succeed");
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
parserWithoutParent, 123456.789f)
|
||||||
|
== XML_FALSE)
|
||||||
|
fail("Call with positive limit >=1.0 is supposed to succeed");
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
parserWithoutParent, INFINITY)
|
||||||
|
== XML_FALSE)
|
||||||
|
fail("Call with positive limit >=1.0 is supposed to succeed");
|
||||||
|
|
||||||
|
// XML_SetBillionLaughsAttackProtectionActivationThreshold, error cases
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionActivationThreshold(NULL, 123)
|
||||||
|
== XML_TRUE)
|
||||||
|
fail("Call with NULL parser is NOT supposed to succeed");
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionActivationThreshold(parserWithParent,
|
||||||
|
123)
|
||||||
|
== XML_TRUE)
|
||||||
|
fail("Call with non-root parser is NOT supposed to succeed");
|
||||||
|
|
||||||
|
// XML_SetBillionLaughsAttackProtectionActivationThreshold, success cases
|
||||||
|
if (XML_SetBillionLaughsAttackProtectionActivationThreshold(
|
||||||
|
parserWithoutParent, 123)
|
||||||
|
== XML_FALSE)
|
||||||
|
fail("Call with non-NULL parentless parser is supposed to succeed");
|
||||||
|
|
||||||
|
XML_ParserFree(parserWithParent);
|
||||||
|
XML_ParserFree(parserWithoutParent);
|
||||||
|
}
|
||||||
|
END_TEST
|
||||||
|
|
||||||
|
START_TEST(test_helper_unsigned_char_to_printable) {
|
||||||
|
// Smoke test
|
||||||
|
unsigned char uc = 0;
|
||||||
|
for (; uc < (unsigned char)-1; uc++) {
|
||||||
|
set_subtest("char %u", (unsigned)uc);
|
||||||
|
const char *const printable = unsignedCharToPrintable(uc);
|
||||||
|
if (printable == NULL)
|
||||||
|
fail("unsignedCharToPrintable returned NULL");
|
||||||
|
else if (strlen(printable) < (size_t)1)
|
||||||
|
fail("unsignedCharToPrintable returned empty string");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Two concrete samples
|
||||||
|
set_subtest("char 'A'");
|
||||||
|
if (strcmp(unsignedCharToPrintable('A'), "A") != 0)
|
||||||
|
fail("unsignedCharToPrintable result mistaken");
|
||||||
|
set_subtest("char '\\'");
|
||||||
|
if (strcmp(unsignedCharToPrintable('\\'), "\\\\") != 0)
|
||||||
|
fail("unsignedCharToPrintable result mistaken");
|
||||||
|
}
|
||||||
|
END_TEST
|
||||||
|
|
||||||
|
START_TEST(test_amplification_isolated_external_parser) {
|
||||||
|
// NOTE: Length 44 is precisely twice the length of "<!ENTITY a SYSTEM 'b'>"
|
||||||
|
// (22) that is used in function accountingGetCurrentAmplification in
|
||||||
|
// xmlparse.c.
|
||||||
|
// 1.........1.........1.........1.........1..4 => 44
|
||||||
|
const char doc[] = "<!ENTITY % p1 '123456789_123456789_1234567'>";
|
||||||
|
const int docLen = (int)sizeof(doc) - 1;
|
||||||
|
const float maximumToleratedAmplification = 2.0f;
|
||||||
|
|
||||||
|
struct TestCase {
|
||||||
|
int offsetOfThreshold;
|
||||||
|
enum XML_Status expectedStatus;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct TestCase cases[] = {
|
||||||
|
{-2, XML_STATUS_ERROR}, {-1, XML_STATUS_ERROR}, {0, XML_STATUS_ERROR},
|
||||||
|
{+1, XML_STATUS_OK}, {+2, XML_STATUS_OK},
|
||||||
|
};
|
||||||
|
|
||||||
|
for (size_t i = 0; i < sizeof(cases) / sizeof(cases[0]); i++) {
|
||||||
|
const int offsetOfThreshold = cases[i].offsetOfThreshold;
|
||||||
|
const enum XML_Status expectedStatus = cases[i].expectedStatus;
|
||||||
|
const unsigned long long activationThresholdBytes
|
||||||
|
= docLen + offsetOfThreshold;
|
||||||
|
|
||||||
|
set_subtest("offsetOfThreshold=%d, expectedStatus=%d", offsetOfThreshold,
|
||||||
|
expectedStatus);
|
||||||
|
|
||||||
|
XML_Parser parser = XML_ParserCreate(NULL);
|
||||||
|
assert_true(parser != NULL);
|
||||||
|
|
||||||
|
assert_true(XML_SetBillionLaughsAttackProtectionMaximumAmplification(
|
||||||
|
parser, maximumToleratedAmplification)
|
||||||
|
== XML_TRUE);
|
||||||
|
assert_true(XML_SetBillionLaughsAttackProtectionActivationThreshold(
|
||||||
|
parser, activationThresholdBytes)
|
||||||
|
== XML_TRUE);
|
||||||
|
|
||||||
|
XML_Parser ext_parser = XML_ExternalEntityParserCreate(parser, NULL, NULL);
|
||||||
|
assert_true(ext_parser != NULL);
|
||||||
|
|
||||||
|
const enum XML_Status actualStatus
|
||||||
|
= _XML_Parse_SINGLE_BYTES(ext_parser, doc, docLen, XML_TRUE);
|
||||||
|
|
||||||
|
assert_true(actualStatus == expectedStatus);
|
||||||
|
if (actualStatus != XML_STATUS_OK) {
|
||||||
|
assert_true(XML_GetErrorCode(ext_parser)
|
||||||
|
== XML_ERROR_AMPLIFICATION_LIMIT_BREACH);
|
||||||
|
}
|
||||||
|
|
||||||
|
XML_ParserFree(ext_parser);
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
END_TEST
|
||||||
|
|
||||||
|
#endif // XML_GE == 1
|
||||||
|
|
||||||
|
void
|
||||||
|
make_accounting_test_case(Suite *s) {
|
||||||
|
#if XML_GE == 1
|
||||||
|
TCase *tc_accounting = tcase_create("accounting tests");
|
||||||
|
|
||||||
|
suite_add_tcase(s, tc_accounting);
|
||||||
|
|
||||||
|
tcase_add_test(tc_accounting, test_accounting_precision);
|
||||||
|
tcase_add_test(tc_accounting, test_billion_laughs_attack_protection_api);
|
||||||
|
tcase_add_test(tc_accounting, test_helper_unsigned_char_to_printable);
|
||||||
|
tcase_add_test__ifdef_xml_dtd(tc_accounting,
|
||||||
|
test_amplification_isolated_external_parser);
|
||||||
|
#else
|
||||||
|
UNUSED_P(s);
|
||||||
|
#endif /* XML_GE == 1 */
|
||||||
|
}
|
56
3rdparty/expat/tests/acc_tests.h
vendored
Normal file
56
3rdparty/expat/tests/acc_tests.h
vendored
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/* Tests in the "accounting" test case for the Expat test suite
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2001-2006 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2005-2012 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2017 Joe Orton <jorton@redhat.com>
|
||||||
|
Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
|
||||||
|
Copyright (c) 2018 Marco Maggi <marco.maggi-ipsu@poste.it>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2020 Tim Gates <tim.gates@iress.com>
|
||||||
|
Copyright (c) 2021 Donghee Na <donghee.na@python.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef XML_ACC_TESTS_H
|
||||||
|
# define XML_ACC_TESTS_H
|
||||||
|
|
||||||
|
extern void make_accounting_test_case(Suite *s);
|
||||||
|
|
||||||
|
#endif /* XML_ACC_TESTS_H */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
32
3rdparty/expat/tests/acc_tests_cxx.cpp
vendored
Normal file
32
3rdparty/expat/tests/acc_tests_cxx.cpp
vendored
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
/* C++ compilation harness for the test suite.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "acc_tests.c"
|
2127
3rdparty/expat/tests/alloc_tests.c
vendored
Normal file
2127
3rdparty/expat/tests/alloc_tests.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
56
3rdparty/expat/tests/alloc_tests.h
vendored
Normal file
56
3rdparty/expat/tests/alloc_tests.h
vendored
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/* Tests in the "allocation" test case for the Expat test suite
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2001-2006 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2005-2012 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2017 Joe Orton <jorton@redhat.com>
|
||||||
|
Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
|
||||||
|
Copyright (c) 2018 Marco Maggi <marco.maggi-ipsu@poste.it>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2020 Tim Gates <tim.gates@iress.com>
|
||||||
|
Copyright (c) 2021 Donghee Na <donghee.na@python.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef XML_ALLOC_TESTS_H
|
||||||
|
# define XML_ALLOC_TESTS_H
|
||||||
|
|
||||||
|
extern void make_alloc_test_case(Suite *s);
|
||||||
|
|
||||||
|
#endif /* XML_ALLOC_TESTS_H */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
32
3rdparty/expat/tests/alloc_tests_cxx.cpp
vendored
Normal file
32
3rdparty/expat/tests/alloc_tests_cxx.cpp
vendored
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
/* C++ compilation harness for the test suite.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "alloc_tests.c"
|
6159
3rdparty/expat/tests/basic_tests.c
vendored
Normal file
6159
3rdparty/expat/tests/basic_tests.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
56
3rdparty/expat/tests/basic_tests.h
vendored
Normal file
56
3rdparty/expat/tests/basic_tests.h
vendored
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/* Tests in the "basic" test case for the Expat test suite
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2001-2006 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
|
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
|
||||||
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2005-2012 Karl Waclawek <karl@waclawek.net>
|
||||||
|
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
|
Copyright (c) 2017 Joe Orton <jorton@redhat.com>
|
||||||
|
Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
|
||||||
|
Copyright (c) 2018 Marco Maggi <marco.maggi-ipsu@poste.it>
|
||||||
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
|
Copyright (c) 2020 Tim Gates <tim.gates@iress.com>
|
||||||
|
Copyright (c) 2021 Donghee Na <donghee.na@python.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef XML_BASIC_TESTS_H
|
||||||
|
# define XML_BASIC_TESTS_H
|
||||||
|
|
||||||
|
extern void make_basic_test_case(Suite *s);
|
||||||
|
|
||||||
|
#endif /* XML_BASIC_TESTS_H */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
32
3rdparty/expat/tests/basic_tests_cxx.cpp
vendored
Normal file
32
3rdparty/expat/tests/basic_tests_cxx.cpp
vendored
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
/* C++ compilation harness for the test suite.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Licensed under the MIT license:
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||||
|
persons to whom the Software is furnished to do so, subject to the
|
||||||
|
following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
|
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "basic_tests.c"
|
3
3rdparty/expat/tests/benchmark/Makefile.am
vendored
3
3rdparty/expat/tests/benchmark/Makefile.am
vendored
@ -6,7 +6,8 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2020 Jeffrey Walton <noloader@gmail.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
40
3rdparty/expat/tests/benchmark/Makefile.in
vendored
40
3rdparty/expat/tests/benchmark/Makefile.in
vendored
@ -1,7 +1,7 @@
|
|||||||
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
@ -22,7 +22,8 @@
|
|||||||
# \___/_/\_\ .__/ \__,_|\__|
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
# |_| XML parser
|
# |_| XML parser
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 Expat development team
|
# Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
# Copyright (c) 2020 Jeffrey Walton <noloader@gmail.com>
|
||||||
# Licensed under the MIT license:
|
# Licensed under the MIT license:
|
||||||
#
|
#
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -132,6 +133,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
|||||||
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-cxx-compile-stdcxx-11.m4 \
|
||||||
$(top_srcdir)/configure.ac
|
$(top_srcdir)/configure.ac
|
||||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
$(ACLOCAL_M4)
|
$(ACLOCAL_M4)
|
||||||
@ -207,8 +210,6 @@ am__define_uniq_tagged_files = \
|
|||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
done | $(am__uniquify_input)`
|
done | $(am__uniquify_input)`
|
||||||
ETAGS = etags
|
|
||||||
CTAGS = ctags
|
|
||||||
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
||||||
$(top_srcdir)/conftools/depcomp
|
$(top_srcdir)/conftools/depcomp
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
@ -228,8 +229,10 @@ AWK = @AWK@
|
|||||||
CC = @CC@
|
CC = @CC@
|
||||||
CCDEPMODE = @CCDEPMODE@
|
CCDEPMODE = @CCDEPMODE@
|
||||||
CFLAGS = @CFLAGS@
|
CFLAGS = @CFLAGS@
|
||||||
CPP = @CPP@
|
CMAKE_SHARED_LIBRARY_PREFIX = @CMAKE_SHARED_LIBRARY_PREFIX@
|
||||||
CPPFLAGS = @CPPFLAGS@
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CSCOPE = @CSCOPE@
|
||||||
|
CTAGS = @CTAGS@
|
||||||
CXX = @CXX@
|
CXX = @CXX@
|
||||||
CXXCPP = @CXXCPP@
|
CXXCPP = @CXXCPP@
|
||||||
CXXDEPMODE = @CXXDEPMODE@
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
@ -245,10 +248,20 @@ ECHO_C = @ECHO_C@
|
|||||||
ECHO_N = @ECHO_N@
|
ECHO_N = @ECHO_N@
|
||||||
ECHO_T = @ECHO_T@
|
ECHO_T = @ECHO_T@
|
||||||
EGREP = @EGREP@
|
EGREP = @EGREP@
|
||||||
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
|
EXPAT_ATTR_INFO = @EXPAT_ATTR_INFO@
|
||||||
|
EXPAT_CHAR_TYPE = @EXPAT_CHAR_TYPE@
|
||||||
|
EXPAT_CONTEXT_BYTES = @EXPAT_CONTEXT_BYTES@
|
||||||
|
EXPAT_DTD = @EXPAT_DTD@
|
||||||
|
EXPAT_LARGE_SIZE = @EXPAT_LARGE_SIZE@
|
||||||
|
EXPAT_MIN_SIZE = @EXPAT_MIN_SIZE@
|
||||||
|
EXPAT_NS = @EXPAT_NS@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
FILEMAP = @FILEMAP@
|
FILEMAP = @FILEMAP@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
|
HAVE_CXX11 = @HAVE_CXX11@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
@ -258,6 +271,8 @@ LD = @LD@
|
|||||||
LDFLAGS = @LDFLAGS@
|
LDFLAGS = @LDFLAGS@
|
||||||
LIBAGE = @LIBAGE@
|
LIBAGE = @LIBAGE@
|
||||||
LIBCURRENT = @LIBCURRENT@
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBDIR_BASENAME = @LIBDIR_BASENAME@
|
||||||
|
LIBM = @LIBM@
|
||||||
LIBOBJS = @LIBOBJS@
|
LIBOBJS = @LIBOBJS@
|
||||||
LIBREVISION = @LIBREVISION@
|
LIBREVISION = @LIBREVISION@
|
||||||
LIBS = @LIBS@
|
LIBS = @LIBS@
|
||||||
@ -266,6 +281,7 @@ LIPO = @LIPO@
|
|||||||
LN_S = @LN_S@
|
LN_S = @LN_S@
|
||||||
LTLIBOBJS = @LTLIBOBJS@
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAINT = @MAINT@
|
||||||
MAKEINFO = @MAKEINFO@
|
MAKEINFO = @MAKEINFO@
|
||||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
MKDIR_P = @MKDIR_P@
|
MKDIR_P = @MKDIR_P@
|
||||||
@ -287,9 +303,12 @@ RANLIB = @RANLIB@
|
|||||||
SED = @SED@
|
SED = @SED@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
SHELL = @SHELL@
|
SHELL = @SHELL@
|
||||||
|
SIZEOF_VOID_P = @SIZEOF_VOID_P@
|
||||||
|
SO_MAJOR = @SO_MAJOR@
|
||||||
|
SO_MINOR = @SO_MINOR@
|
||||||
|
SO_PATCH = @SO_PATCH@
|
||||||
STRIP = @STRIP@
|
STRIP = @STRIP@
|
||||||
VERSION = @VERSION@
|
VERSION = @VERSION@
|
||||||
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
|
||||||
abs_builddir = @abs_builddir@
|
abs_builddir = @abs_builddir@
|
||||||
abs_srcdir = @abs_srcdir@
|
abs_srcdir = @abs_srcdir@
|
||||||
abs_top_builddir = @abs_top_builddir@
|
abs_top_builddir = @abs_top_builddir@
|
||||||
@ -353,7 +372,7 @@ all: all-am
|
|||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .c .lo .o .obj
|
.SUFFIXES: .c .lo .o .obj
|
||||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
@for dep in $?; do \
|
@for dep in $?; do \
|
||||||
case '$(am__configure_deps)' in \
|
case '$(am__configure_deps)' in \
|
||||||
*$$dep*) \
|
*$$dep*) \
|
||||||
@ -377,9 +396,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
$(top_srcdir)/configure: $(am__configure_deps)
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
$(am__aclocal_m4_deps):
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
@ -488,7 +507,6 @@ cscopelist-am: $(am__tagged_files)
|
|||||||
|
|
||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
|
|
||||||
distdir: $(BUILT_SOURCES)
|
distdir: $(BUILT_SOURCES)
|
||||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
|
18
3rdparty/expat/tests/benchmark/benchmark.c
vendored
18
3rdparty/expat/tests/benchmark/benchmark.c
vendored
@ -6,8 +6,10 @@
|
|||||||
\___/_/\_\ .__/ \__,_|\__|
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|_| XML parser
|
|_| XML parser
|
||||||
|
|
||||||
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
Copyright (c) 2003-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
Copyright (c) 2000-2017 Expat development team
|
Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
|
||||||
|
Copyright (c) 2017-2023 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
@ -31,6 +33,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
#include <assert.h>
|
||||||
|
#include <stddef.h> // ptrdiff_t
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
@ -60,7 +64,8 @@ main(int argc, char *argv[]) {
|
|||||||
char *XMLBuf, *XMLBufEnd, *XMLBufPtr;
|
char *XMLBuf, *XMLBufEnd, *XMLBufPtr;
|
||||||
FILE *fd;
|
FILE *fd;
|
||||||
struct stat fileAttr;
|
struct stat fileAttr;
|
||||||
int nrOfLoops, bufferSize, fileSize, i, isFinal;
|
int nrOfLoops, bufferSize, i, isFinal;
|
||||||
|
size_t fileSize;
|
||||||
int j = 0, ns = 0;
|
int j = 0, ns = 0;
|
||||||
clock_t tstart, tend;
|
clock_t tstart, tend;
|
||||||
double cpuTime = 0.0;
|
double cpuTime = 0.0;
|
||||||
@ -112,12 +117,13 @@ main(int argc, char *argv[]) {
|
|||||||
isFinal = 0;
|
isFinal = 0;
|
||||||
tstart = clock();
|
tstart = clock();
|
||||||
do {
|
do {
|
||||||
int parseBufferSize = XMLBufEnd - XMLBufPtr;
|
ptrdiff_t parseBufferSize = XMLBufEnd - XMLBufPtr;
|
||||||
if (parseBufferSize <= bufferSize)
|
if (parseBufferSize <= (ptrdiff_t)bufferSize)
|
||||||
isFinal = 1;
|
isFinal = 1;
|
||||||
else
|
else
|
||||||
parseBufferSize = bufferSize;
|
parseBufferSize = bufferSize;
|
||||||
if (! XML_Parse(parser, XMLBufPtr, parseBufferSize, isFinal)) {
|
assert(parseBufferSize <= (ptrdiff_t)bufferSize);
|
||||||
|
if (! XML_Parse(parser, XMLBufPtr, (int)parseBufferSize, isFinal)) {
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"error '%" XML_FMT_STR "' at line %" XML_FMT_INT_MOD
|
"error '%" XML_FMT_STR "' at line %" XML_FMT_INT_MOD
|
||||||
"u character %" XML_FMT_INT_MOD "u\n",
|
"u character %" XML_FMT_INT_MOD "u\n",
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user