mirror of
https://github.com/charlesthobe/chdman.git
synced 2024-11-24 07:25:31 +00:00
Initial organization of files
This commit is contained in:
commit
54f293f89e
49
.gitignore
vendored
Normal file
49
.gitignore
vendored
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
#quack
|
||||||
|
# osx annoyances
|
||||||
|
.DS_Store
|
||||||
|
|
||||||
|
# binaries folder
|
||||||
|
/bin/
|
||||||
|
/Build/
|
||||||
|
/build/
|
||||||
|
/build-*/
|
||||||
|
|
||||||
|
# vs stuff
|
||||||
|
.vs
|
||||||
|
ipch
|
||||||
|
ipch/*
|
||||||
|
*.opensdf
|
||||||
|
*.sdf
|
||||||
|
*.suo
|
||||||
|
*.vcxproj.user
|
||||||
|
*.VC.opendb
|
||||||
|
*.VC.db
|
||||||
|
/.vscode/
|
||||||
|
|
||||||
|
# cmake stuff
|
||||||
|
CMakeCache.txt
|
||||||
|
CMakeFiles
|
||||||
|
Makefile
|
||||||
|
cmake_install.cmake
|
||||||
|
install_manifest.txt
|
||||||
|
|
||||||
|
# unix intermediate files
|
||||||
|
config.h
|
||||||
|
*.o
|
||||||
|
*.a
|
||||||
|
*.so
|
||||||
|
*.dylib
|
||||||
|
|
||||||
|
# qt creator
|
||||||
|
CMakeLists.txt.user
|
||||||
|
|
||||||
|
# python bytecode
|
||||||
|
__pycache__
|
||||||
|
|
||||||
|
# other repos
|
||||||
|
/dep/mac
|
||||||
|
/android
|
||||||
|
|
||||||
|
# UWP crap
|
||||||
|
Generated Files
|
||||||
|
/packages
|
10
3rdparty/expat/AUTHORS
vendored
Normal file
10
3rdparty/expat/AUTHORS
vendored
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
Expat is brought to you by:
|
||||||
|
|
||||||
|
Clark Cooper
|
||||||
|
Fred L. Drake, Jr.
|
||||||
|
Greg Stein
|
||||||
|
James Clark
|
||||||
|
Karl Waclawek
|
||||||
|
Rhodri James
|
||||||
|
Sebastian Pipping
|
||||||
|
Steven Solie
|
42
3rdparty/expat/CMake.README
vendored
Normal file
42
3rdparty/expat/CMake.README
vendored
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
== How to build expat with cmake (experimental) ==
|
||||||
|
|
||||||
|
The cmake based buildsystem for expat works on Windows (cygwin, mingw, Visual
|
||||||
|
Studio) and should work on all other platform cmake supports.
|
||||||
|
|
||||||
|
Assuming ~/expat-2.2.10 is the source directory of expat, add a subdirectory
|
||||||
|
build and change into that directory:
|
||||||
|
~/expat-2.2.10$ mkdir build && cd build
|
||||||
|
~/expat-2.2.10/build$
|
||||||
|
|
||||||
|
From that directory, call cmake first, then call make, make test and
|
||||||
|
make install in the usual way:
|
||||||
|
~/expat-2.2.10/build$ cmake ..
|
||||||
|
-- The C compiler identification is GNU
|
||||||
|
-- The CXX compiler identification is GNU
|
||||||
|
....
|
||||||
|
-- Configuring done
|
||||||
|
-- Generating done
|
||||||
|
-- Build files have been written to: /home/patrick/expat-2.2.10/build
|
||||||
|
|
||||||
|
If you want to specify the install location for your files, append
|
||||||
|
-DCMAKE_INSTALL_PREFIX=/your/install/path to the cmake call.
|
||||||
|
|
||||||
|
~/expat-2.2.10/build$ make && make test && make install
|
||||||
|
Scanning dependencies of target expat
|
||||||
|
[ 5%] Building C object CMakeFiles/expat.dir/lib/xmlparse.c.o
|
||||||
|
[ 11%] Building C object CMakeFiles/expat.dir/lib/xmlrole.c.o
|
||||||
|
....
|
||||||
|
-- Installing: /usr/local/lib/pkgconfig/expat.pc
|
||||||
|
-- Installing: /usr/local/bin/xmlwf
|
||||||
|
-- Installing: /usr/local/share/man/man1/xmlwf.1
|
||||||
|
|
||||||
|
For Windows builds, you must make sure to call cmake from an environment where
|
||||||
|
your compiler is reachable, that means either you call it from the
|
||||||
|
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
|
||||||
|
special Generator for CMake:
|
||||||
|
for Visual Studio builds do:
|
||||||
|
cmake .. -G "Visual Studio 15 2017" && msbuild /m expat.sln
|
||||||
|
for mingw builds do:
|
||||||
|
cmake .. -G "MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=D:\expat-install
|
||||||
|
&& gmake && gmake install
|
713
3rdparty/expat/CMakeLists.txt
vendored
Normal file
713
3rdparty/expat/CMakeLists.txt
vendored
Normal file
@ -0,0 +1,713 @@
|
|||||||
|
# This file is copyrighted under the BSD-license for buildsystem files of KDE
|
||||||
|
# copyright 2010, Patrick Spendrin <ps_ml@gmx.de>
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.1.3)
|
||||||
|
|
||||||
|
# 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
|
||||||
|
VERSION
|
||||||
|
2.2.10
|
||||||
|
LANGUAGES
|
||||||
|
C
|
||||||
|
)
|
||||||
|
|
||||||
|
set(PACKAGE_BUGREPORT "expat-bugs@libexpat.org")
|
||||||
|
set(PACKAGE_NAME "expat")
|
||||||
|
set(PACKAGE_VERSION "${PROJECT_VERSION}")
|
||||||
|
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
|
||||||
|
set(PACKAGE_TARNAME "${PACKAGE_NAME}")
|
||||||
|
|
||||||
|
include(CMakePackageConfigHelpers)
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Detect use by means of add_subdirectory
|
||||||
|
#
|
||||||
|
get_directory_property(_EXPAT_PARENT_DIRECTORY PARENT_DIRECTORY)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Configuration defaults
|
||||||
|
#
|
||||||
|
if(WINCE)
|
||||||
|
set(_EXPAT_BUILD_TOOLS_DEFAULT OFF)
|
||||||
|
else()
|
||||||
|
set(_EXPAT_BUILD_TOOLS_DEFAULT ON)
|
||||||
|
endif()
|
||||||
|
if(MSVC OR NOT _EXPAT_BUILD_TOOLS_DEFAULT)
|
||||||
|
set(_EXPAT_BUILD_DOCS_DEFAULT OFF)
|
||||||
|
else()
|
||||||
|
find_program(DOCBOOK_TO_MAN NAMES docbook2x-man db2x_docbook2man docbook2man docbook-to-man)
|
||||||
|
if(DOCBOOK_TO_MAN)
|
||||||
|
set(_EXPAT_BUILD_DOCS_DEFAULT ON)
|
||||||
|
else()
|
||||||
|
set(_EXPAT_BUILD_DOCS_DEFAULT OFF)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
if(MSVC)
|
||||||
|
set(_EXPAT_BUILD_PKGCONFIG_DEFAULT OFF)
|
||||||
|
else()
|
||||||
|
set(_EXPAT_BUILD_PKGCONFIG_DEFAULT ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# 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)
|
||||||
|
option(EXPAT_BUILD_TESTS "build the tests for expat library" ON)
|
||||||
|
option(EXPAT_SHARED_LIBS "build a shared expat library" ON)
|
||||||
|
option(EXPAT_BUILD_DOCS "build man page for xmlwf" ${_EXPAT_BUILD_DOCS_DEFAULT})
|
||||||
|
option(EXPAT_BUILD_FUZZERS "build fuzzers for the expat library" OFF)
|
||||||
|
option(EXPAT_BUILD_PKGCONFIG "build pkg-config file" ${_EXPAT_BUILD_PKGCONFIG_DEFAULT})
|
||||||
|
option(EXPAT_OSSFUZZ_BUILD "build fuzzers via ossfuzz for the expat library" OFF)
|
||||||
|
if(UNIX OR _EXPAT_HELP)
|
||||||
|
option(EXPAT_WITH_LIBBSD "utilize libbsd (for arc4random_buf)" OFF)
|
||||||
|
endif()
|
||||||
|
option(EXPAT_ENABLE_INSTALL "install expat files in cmake install target" ON)
|
||||||
|
set(EXPAT_CONTEXT_BYTES 1024 CACHE STRING "Define to specify how much context to retain around the current parse point")
|
||||||
|
mark_as_advanced(EXPAT_CONTEXT_BYTES)
|
||||||
|
option(EXPAT_DTD "Define to make parameter entity parsing functionality available" ON)
|
||||||
|
mark_as_advanced(EXPAT_DTD)
|
||||||
|
option(EXPAT_NS "Define to make XML Namespaces functionality available" ON)
|
||||||
|
mark_as_advanced(EXPAT_NS)
|
||||||
|
option(EXPAT_WARNINGS_AS_ERRORS "Treat all compiler warnings as errors" OFF)
|
||||||
|
if(UNIX OR _EXPAT_HELP)
|
||||||
|
option(EXPAT_DEV_URANDOM "Define to include code reading entropy from `/dev/urandom'." ON)
|
||||||
|
set(EXPAT_WITH_GETRANDOM "AUTO" CACHE STRING
|
||||||
|
"Make use of getrandom function (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)
|
||||||
|
endif()
|
||||||
|
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)
|
||||||
|
mark_as_advanced(EXPAT_ATTR_INFO)
|
||||||
|
option(EXPAT_LARGE_SIZE "Make XML_GetCurrent* functions return <(unsigned) long long> rather than <(unsigned) long>" OFF)
|
||||||
|
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)
|
||||||
|
mark_as_advanced(EXPAT_MIN_SIZE)
|
||||||
|
if(MSVC OR _EXPAT_HELP)
|
||||||
|
set(EXPAT_MSVC_STATIC_CRT OFF CACHE BOOL "Use /MT flag (static CRT) when compiling in MSVC")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# Environment checks
|
||||||
|
#
|
||||||
|
if(EXPAT_WITH_LIBBSD)
|
||||||
|
find_library(LIB_BSD NAMES bsd)
|
||||||
|
if(NOT LIB_BSD)
|
||||||
|
message(SEND_ERROR "EXPAT_WITH_LIBBSD option is enabled, but libbsd was not found")
|
||||||
|
else()
|
||||||
|
set(HAVE_LIBBSD TRUE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
macro(_expat_copy_bool_int source_ref dest_ref)
|
||||||
|
if(${source_ref})
|
||||||
|
set(${dest_ref} 1)
|
||||||
|
else()
|
||||||
|
set(${dest_ref} 0)
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
if(EXPAT_LARGE_SIZE)
|
||||||
|
add_definitions(-DXML_LARGE_SIZE)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(EXPAT_MIN_SIZE)
|
||||||
|
add_definitions(-DXML_MIN_SIZE)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(EXPAT_CHAR_TYPE STREQUAL "char")
|
||||||
|
set(_EXPAT_UNICODE OFF)
|
||||||
|
set(_EXPAT_UNICODE_WCHAR_T OFF)
|
||||||
|
elseif(EXPAT_CHAR_TYPE STREQUAL "ushort")
|
||||||
|
set(_EXPAT_UNICODE ON)
|
||||||
|
set(_EXPAT_UNICODE_WCHAR_T OFF)
|
||||||
|
if(EXPAT_BUILD_EXAMPLES)
|
||||||
|
message(SEND_ERROR "Examples can not be built with option -DEXPAT_CHAR_TYPE=ushort. Please pass -DEXPAT_CHAR_TYPE=(char|wchar_t) or -DEXPAT_BUILD_EXAMPLES=OFF.")
|
||||||
|
endif()
|
||||||
|
if(EXPAT_BUILD_TESTS)
|
||||||
|
message(SEND_ERROR "The testsuite can not be built with option -DEXPAT_CHAR_TYPE=ushort. Please pass -DEXPAT_CHAR_TYPE=(char|wchar_t) or -DEXPAT_BUILD_TESTS=OFF.")
|
||||||
|
endif()
|
||||||
|
if(EXPAT_BUILD_TOOLS)
|
||||||
|
message(SEND_ERROR "The xmlwf tool can not be built with option -DEXPAT_CHAR_TYPE=ushort. Please pass -DEXPAT_CHAR_TYPE=(char|wchar_t) or -DEXPAT_BUILD_TOOLS=OFF.")
|
||||||
|
endif()
|
||||||
|
elseif(EXPAT_CHAR_TYPE STREQUAL "wchar_t")
|
||||||
|
set(_EXPAT_UNICODE ON)
|
||||||
|
set(_EXPAT_UNICODE_WCHAR_T ON)
|
||||||
|
if(NOT WIN32)
|
||||||
|
string(FIND "${CMAKE_C_FLAGS}" "-fshort-wchar" _expat_short_wchar_found)
|
||||||
|
if(${_expat_short_wchar_found} EQUAL "-1")
|
||||||
|
message(SEND_ERROR "Configuration -DEXPAT_CHAR_TYPE=wchar_t requires -DCMAKE_{C,CXX}_FLAGS=-fshort-wchar (which was not found) and libc compiled with -fshort-wchar, too.")
|
||||||
|
endif()
|
||||||
|
if (EXPAT_BUILD_TOOLS)
|
||||||
|
message(SEND_ERROR "The xmlwf tool can not be built with option -DEXPAT_CHAR_TYPE=wchar_t outside of Windows. Please pass -DEXPAT_CHAR_TYPE=char or -DEXPAT_BUILD_TOOLS=OFF.")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
message(SEND_ERROR "Option -DEXPAT_CHAR_TYPE=(char|ushort|wchar_t) cannot be \"${EXPAT_CHAR_TYPE}\".")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(_EXPAT_UNICODE)
|
||||||
|
add_definitions(-DXML_UNICODE) # for unsigned short
|
||||||
|
if(_EXPAT_UNICODE_WCHAR_T)
|
||||||
|
add_definitions(-DXML_UNICODE_WCHAR_T) # for wchar_t
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
include(${CMAKE_CURRENT_LIST_DIR}/ConfigureChecks.cmake)
|
||||||
|
|
||||||
|
macro(evaluate_detection_results use_ref have_ref thing_lower thing_title)
|
||||||
|
if(${use_ref} AND NOT (${use_ref} STREQUAL "AUTO") AND NOT ${have_ref})
|
||||||
|
message(SEND_ERROR
|
||||||
|
"Use of ${thing_lower} was enforced by ${use_ref}=ON but it could not be found.")
|
||||||
|
elseif(NOT ${use_ref} AND ${have_ref})
|
||||||
|
message("${thing_title} was found but it will not be used due to ${use_ref}=OFF.")
|
||||||
|
set(${have_ref} 0)
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
if(NOT WIN32)
|
||||||
|
evaluate_detection_results(EXPAT_WITH_GETRANDOM HAVE_GETRANDOM "function getrandom" "Function getrandom")
|
||||||
|
evaluate_detection_results(EXPAT_WITH_SYS_GETRANDOM HAVE_SYSCALL_GETRANDOM "syscall SYS_getrandom" "Syscall SYS_getrandom")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
_expat_copy_bool_int(EXPAT_ATTR_INFO XML_ATTR_INFO)
|
||||||
|
_expat_copy_bool_int(EXPAT_DTD XML_DTD)
|
||||||
|
_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_NS XML_NS)
|
||||||
|
if(NOT WIN32)
|
||||||
|
_expat_copy_bool_int(EXPAT_DEV_URANDOM XML_DEV_URANDOM)
|
||||||
|
endif()
|
||||||
|
set(XML_CONTEXT_BYTES ${EXPAT_CONTEXT_BYTES})
|
||||||
|
|
||||||
|
macro(expat_install)
|
||||||
|
if(EXPAT_ENABLE_INSTALL)
|
||||||
|
install(${ARGN})
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
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})
|
||||||
|
|
||||||
|
|
||||||
|
set(EXTRA_COMPILE_FLAGS)
|
||||||
|
if(FLAG_NO_STRICT_ALIASING)
|
||||||
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -fno-strict-aliasing")
|
||||||
|
endif()
|
||||||
|
if(FLAG_VISIBILITY)
|
||||||
|
add_definitions(-DXML_ENABLE_VISIBILITY=1)
|
||||||
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -fvisibility=hidden")
|
||||||
|
endif()
|
||||||
|
if (EXPAT_WARNINGS_AS_ERRORS)
|
||||||
|
if(MSVC)
|
||||||
|
add_definitions(/WX)
|
||||||
|
else()
|
||||||
|
set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -Werror")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_COMPILE_FLAGS}")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_COMPILE_FLAGS}")
|
||||||
|
|
||||||
|
if (MSVC)
|
||||||
|
if (EXPAT_MSVC_STATIC_CRT)
|
||||||
|
message("-- Using static CRT ${EXPAT_MSVC_STATIC_CRT}")
|
||||||
|
foreach(flag_var
|
||||||
|
CMAKE_CXX_FLAGS_DEBUG
|
||||||
|
CMAKE_CXX_FLAGS_RELEASE
|
||||||
|
CMAKE_CXX_FLAGS_MINSIZEREL
|
||||||
|
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
||||||
|
CMAKE_C_FLAGS_DEBUG
|
||||||
|
CMAKE_C_FLAGS_RELEASE
|
||||||
|
CMAKE_C_FLAGS_MINSIZEREL
|
||||||
|
CMAKE_C_FLAGS_RELWITHDEBINFO
|
||||||
|
)
|
||||||
|
string(REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/lib)
|
||||||
|
if(MSVC)
|
||||||
|
add_definitions(-D_CRT_SECURE_NO_WARNINGS -wd4996)
|
||||||
|
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
|
||||||
|
#
|
||||||
|
set(expat_SRCS
|
||||||
|
lib/xmlparse.c
|
||||||
|
lib/xmlrole.c
|
||||||
|
lib/xmltok.c
|
||||||
|
# NOTE: ISO C forbids an empty translation unit
|
||||||
|
# lib/xmltok_impl.c
|
||||||
|
# lib/xmltok_ns.c
|
||||||
|
)
|
||||||
|
|
||||||
|
if(EXPAT_SHARED_LIBS)
|
||||||
|
set(_SHARED SHARED)
|
||||||
|
if(MSVC)
|
||||||
|
set(expat_SRCS ${expat_SRCS} lib/libexpat.def)
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
set(_SHARED STATIC)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Avoid colliding with Expat.dll of Perl's XML::Parser::Expat
|
||||||
|
if(WIN32 AND NOT MINGW)
|
||||||
|
set(_EXPAT_OUTPUT_NAME libexpat) # CMAKE_*_POSTFIX applies, see above
|
||||||
|
else()
|
||||||
|
if(_EXPAT_UNICODE)
|
||||||
|
set(_EXPAT_OUTPUT_NAME expatw)
|
||||||
|
else()
|
||||||
|
set(_EXPAT_OUTPUT_NAME expat)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_library(expat ${_SHARED} ${expat_SRCS})
|
||||||
|
if(EXPAT_WITH_LIBBSD)
|
||||||
|
target_link_libraries(expat ${LIB_BSD})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(LIBCURRENT 7) # sync
|
||||||
|
set(LIBREVISION 12) # with
|
||||||
|
set(LIBAGE 6) # configure.ac!
|
||||||
|
math(EXPR LIBCURRENT_MINUS_AGE "${LIBCURRENT} - ${LIBAGE}")
|
||||||
|
|
||||||
|
set_property(TARGET expat PROPERTY OUTPUT_NAME "${_EXPAT_OUTPUT_NAME}")
|
||||||
|
if(NOT WIN32)
|
||||||
|
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 NO_SONAME ${NO_SONAME})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
target_include_directories(expat
|
||||||
|
INTERFACE
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/lib>
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||||
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||||
|
)
|
||||||
|
|
||||||
|
if(NOT EXPAT_SHARED_LIBS AND WIN32)
|
||||||
|
target_compile_definitions(expat PUBLIC -DXML_STATIC)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
expat_install(TARGETS expat EXPORT expat
|
||||||
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||||
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
|
|
||||||
|
expat_install(FILES lib/expat.h lib/expat_external.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||||
|
|
||||||
|
#
|
||||||
|
# pkg-config file
|
||||||
|
#
|
||||||
|
if(EXPAT_BUILD_PKGCONFIG)
|
||||||
|
set(prefix ${CMAKE_INSTALL_PREFIX})
|
||||||
|
set(exec_prefix "\${prefix}")
|
||||||
|
set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
|
||||||
|
set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
|
||||||
|
configure_file(expat.pc.in ${CMAKE_CURRENT_BINARY_DIR}/expat.pc @ONLY)
|
||||||
|
expat_install(FILES ${CMAKE_CURRENT_BINARY_DIR}/expat.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# C command line tool xmlwf
|
||||||
|
#
|
||||||
|
if(EXPAT_BUILD_TOOLS)
|
||||||
|
set(xmlwf_SRCS
|
||||||
|
xmlwf/xmlwf.c
|
||||||
|
xmlwf/xmlfile.c
|
||||||
|
xmlwf/codepage.c
|
||||||
|
xmlwf/readfilemap.c
|
||||||
|
)
|
||||||
|
|
||||||
|
add_executable(xmlwf ${xmlwf_SRCS})
|
||||||
|
set_property(TARGET xmlwf PROPERTY RUNTIME_OUTPUT_DIRECTORY xmlwf)
|
||||||
|
target_link_libraries(xmlwf expat)
|
||||||
|
expat_install(TARGETS xmlwf DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
|
||||||
|
if(MINGW AND _EXPAT_UNICODE_WCHAR_T)
|
||||||
|
# https://gcc.gnu.org/onlinedocs/gcc/x86-Windows-Options.html
|
||||||
|
set_target_properties(xmlwf PROPERTIES LINK_FLAGS -municode)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(EXPAT_BUILD_DOCS)
|
||||||
|
file(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/doc)
|
||||||
|
add_custom_target(
|
||||||
|
xmlwf-manpage
|
||||||
|
COMMAND
|
||||||
|
"${DOCBOOK_TO_MAN}" "${PROJECT_SOURCE_DIR}/doc/xmlwf.xml" && mv "XMLWF.1" "${PROJECT_BINARY_DIR}/doc/xmlwf.1"
|
||||||
|
BYPRODUCTS
|
||||||
|
doc/xmlwf.1)
|
||||||
|
add_dependencies(expat xmlwf-manpage)
|
||||||
|
expat_install(FILES "${PROJECT_BINARY_DIR}/doc/xmlwf.1" DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
|
||||||
|
elseif(EXISTS ${PROJECT_SOURCE_DIR}/doc/xmlwf.1)
|
||||||
|
expat_install(FILES "${PROJECT_SOURCE_DIR}/doc/xmlwf.1" DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# C code examples
|
||||||
|
#
|
||||||
|
if(EXPAT_BUILD_EXAMPLES)
|
||||||
|
add_executable(elements examples/elements.c)
|
||||||
|
set_property(TARGET elements PROPERTY RUNTIME_OUTPUT_DIRECTORY examples)
|
||||||
|
target_link_libraries(elements expat)
|
||||||
|
|
||||||
|
add_executable(outline examples/outline.c)
|
||||||
|
set_property(TARGET outline PROPERTY RUNTIME_OUTPUT_DIRECTORY examples)
|
||||||
|
target_link_libraries(outline expat)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# C/C++ test runners
|
||||||
|
#
|
||||||
|
if(EXPAT_BUILD_TESTS)
|
||||||
|
## these are unittests that can be run on any platform
|
||||||
|
enable_language(CXX)
|
||||||
|
enable_testing()
|
||||||
|
|
||||||
|
set(test_SRCS
|
||||||
|
tests/chardata.c
|
||||||
|
tests/memcheck.c
|
||||||
|
tests/minicheck.c
|
||||||
|
tests/structdata.c
|
||||||
|
)
|
||||||
|
|
||||||
|
if(NOT MSVC)
|
||||||
|
if(MINGW)
|
||||||
|
set(host whatever-mingw32) # for nothing but run.sh
|
||||||
|
endif()
|
||||||
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/run.sh.in run.sh @ONLY)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
function(expat_add_test _name _file)
|
||||||
|
if(MSVC)
|
||||||
|
add_test(NAME ${_name} COMMAND ${_file})
|
||||||
|
else()
|
||||||
|
add_test(NAME ${_name} COMMAND bash run.sh ${_file})
|
||||||
|
endif()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
add_executable(runtests tests/runtests.c ${test_SRCS})
|
||||||
|
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})
|
||||||
|
set_property(TARGET runtestspp PROPERTY RUNTIME_OUTPUT_DIRECTORY tests)
|
||||||
|
target_link_libraries(runtestspp expat)
|
||||||
|
expat_add_test(runtestspp $<TARGET_FILE:runtestspp>)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(EXPAT_BUILD_FUZZERS)
|
||||||
|
if(NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
|
||||||
|
message(SEND_ERROR
|
||||||
|
"Building fuzz targets without Clang (but ${CMAKE_C_COMPILER_ID}) "
|
||||||
|
"is not supported. Please set "
|
||||||
|
"-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
string(FIND "${CMAKE_C_FLAGS}" "-fsanitize" sanitizer_present)
|
||||||
|
if(${sanitizer_present} EQUAL "-1")
|
||||||
|
message(WARNING
|
||||||
|
"There was no sanitizer present when building the fuzz targets. "
|
||||||
|
"This is likely in error - consider adding "
|
||||||
|
"-DCMAKE_C_FLAGS='-fsanitize=<sanitizer>' and "
|
||||||
|
"-DCMAKE_CXX_FLAGS='-fsanitize=<sanitizer>' and "
|
||||||
|
"-DCMAKE_EXE_LINKER_FLAGS='-fsanitize=<sanitizer>' and "
|
||||||
|
"-DCMAKE_MODULE_LINKER_FLAGS='-fsanitize=<sanitizer>' and "
|
||||||
|
"-DCMAKE_SHARED_LINKER_FLAGS='-fsanitize=<sanitizer>' to your cmake "
|
||||||
|
"execution.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(EXPAT_OSSFUZZ_BUILD AND NOT DEFINED ENV{LIB_FUZZING_ENGINE})
|
||||||
|
message(SEND_ERROR
|
||||||
|
"OSS-Fuzz builds require the environment variable "
|
||||||
|
"LIB_FUZZING_ENGINE to be set. If you are seeing this "
|
||||||
|
"warning, it points to a deeper problem in the ossfuzz "
|
||||||
|
"build setup.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
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)
|
||||||
|
|
||||||
|
add_library(fuzzpat STATIC ${expat_SRCS})
|
||||||
|
if(NOT EXPAT_OSSFUZZ_BUILD)
|
||||||
|
target_compile_options(fuzzpat PRIVATE -fsanitize=fuzzer-no-link)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
foreach(fuzz_target ${fuzz_targets})
|
||||||
|
foreach(encoding_type ${encoding_types})
|
||||||
|
set(target_name ${fuzz_target}_${encoding_type})
|
||||||
|
add_executable(${target_name} fuzz/${fuzz_target}.c)
|
||||||
|
target_link_libraries(${target_name} fuzzpat)
|
||||||
|
target_compile_definitions(${target_name}
|
||||||
|
PRIVATE ENCODING_FOR_FUZZING=${encoding_type})
|
||||||
|
if(NOT EXPAT_OSSFUZZ_BUILD)
|
||||||
|
target_compile_options(${target_name} PRIVATE -fsanitize=fuzzer-no-link)
|
||||||
|
endif()
|
||||||
|
# NOTE: Avoiding target_link_options here only because it needs CMake >=3.13
|
||||||
|
if(EXPAT_OSSFUZZ_BUILD)
|
||||||
|
set_target_properties(${target_name} PROPERTIES LINK_FLAGS $ENV{LIB_FUZZING_ENGINE})
|
||||||
|
set_target_properties(${target_name} PROPERTIES LINKER_LANGUAGE "CXX")
|
||||||
|
else()
|
||||||
|
set_target_properties(${target_name} PROPERTIES LINK_FLAGS -fsanitize=fuzzer)
|
||||||
|
endif()
|
||||||
|
set_property(
|
||||||
|
TARGET ${target_name} PROPERTY RUNTIME_OUTPUT_DIRECTORY fuzz)
|
||||||
|
endforeach()
|
||||||
|
endforeach()
|
||||||
|
else()
|
||||||
|
if(EXPAT_OSSFUZZ_BUILD)
|
||||||
|
message(SEND_ERROR
|
||||||
|
"Attempting to perform an ossfuzz build without turning on the fuzzer build. "
|
||||||
|
"This is likely in error - consider adding "
|
||||||
|
"-DEXPAT_BUILD_FUZZERS=ON to your cmake execution.")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# Custom target "run-xmltest"
|
||||||
|
#
|
||||||
|
if(EXPAT_BUILD_TOOLS AND NOT MSVC)
|
||||||
|
add_custom_target(
|
||||||
|
xmlts-zip-downloaded
|
||||||
|
COMMAND
|
||||||
|
sh -c 'test -f xmlts.zip || wget --output-document=xmlts.zip https://www.w3.org/XML/Test/xmlts20080827.zip'
|
||||||
|
BYPRODUCTS
|
||||||
|
tests/xmlts.zip
|
||||||
|
WORKING_DIRECTORY
|
||||||
|
tests/)
|
||||||
|
|
||||||
|
add_custom_target(
|
||||||
|
xmlts-zip-extracted
|
||||||
|
COMMAND
|
||||||
|
sh -c 'test -d xmlconf || unzip -q xmlts.zip'
|
||||||
|
BYPRODUCTS
|
||||||
|
tests/xmlconf
|
||||||
|
WORKING_DIRECTORY
|
||||||
|
tests/)
|
||||||
|
add_dependencies(xmlts-zip-extracted xmlts-zip-downloaded)
|
||||||
|
|
||||||
|
add_custom_target(
|
||||||
|
xmltest-sh-been-run
|
||||||
|
COMMAND
|
||||||
|
sh -c '${CMAKE_CURRENT_SOURCE_DIR}/tests/xmltest.sh "bash ${CMAKE_CURRENT_BINARY_DIR}/run.sh $<TARGET_FILE:xmlwf>" 2>&1 | tee tests/xmltest.log'
|
||||||
|
BYPRODUCTS
|
||||||
|
tests/xmltest.log)
|
||||||
|
add_dependencies(xmltest-sh-been-run xmlts-zip-extracted xmlwf)
|
||||||
|
|
||||||
|
add_custom_target(
|
||||||
|
xmltest-log-fixed
|
||||||
|
COMMAND
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/fix-xmltest-log.sh tests/xmltest.log
|
||||||
|
DEPENDS
|
||||||
|
tests/xmltest.log)
|
||||||
|
add_dependencies(xmltest-log-fixed xmltest-sh-been-run)
|
||||||
|
|
||||||
|
add_custom_target(
|
||||||
|
xmltest-log-verified
|
||||||
|
COMMAND
|
||||||
|
diff -u ${CMAKE_CURRENT_SOURCE_DIR}/tests/xmltest.log.expected tests/xmltest.log)
|
||||||
|
add_dependencies(xmltest-log-verified xmltest-log-fixed)
|
||||||
|
|
||||||
|
add_custom_target(run-xmltest)
|
||||||
|
add_dependencies(run-xmltest xmltest-log-verified)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#
|
||||||
|
# Documentation
|
||||||
|
#
|
||||||
|
configure_file(Changes changelog COPYONLY)
|
||||||
|
expat_install(
|
||||||
|
FILES
|
||||||
|
AUTHORS
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/changelog
|
||||||
|
DESTINATION
|
||||||
|
${CMAKE_INSTALL_DOCDIR})
|
||||||
|
|
||||||
|
#
|
||||||
|
# CMake files for find_package(expat [..] CONFIG [..])
|
||||||
|
#
|
||||||
|
configure_package_config_file(
|
||||||
|
cmake/expat-config.cmake.in
|
||||||
|
cmake/expat-config.cmake
|
||||||
|
INSTALL_DESTINATION
|
||||||
|
${CMAKE_INSTALL_LIBDIR}/cmake/expat-${PROJECT_VERSION}/
|
||||||
|
)
|
||||||
|
write_basic_package_version_file(
|
||||||
|
cmake/expat-config-version.cmake
|
||||||
|
COMPATIBILITY SameMajorVersion # i.e. semver
|
||||||
|
)
|
||||||
|
export(
|
||||||
|
TARGETS
|
||||||
|
expat
|
||||||
|
FILE
|
||||||
|
cmake/expat-targets.cmake # not going to be installed
|
||||||
|
)
|
||||||
|
expat_install(
|
||||||
|
FILES
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/cmake/expat-config.cmake
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/cmake/expat-config-version.cmake
|
||||||
|
DESTINATION
|
||||||
|
${CMAKE_INSTALL_LIBDIR}/cmake/expat-${PROJECT_VERSION}/
|
||||||
|
)
|
||||||
|
expat_install(
|
||||||
|
EXPORT
|
||||||
|
expat
|
||||||
|
DESTINATION
|
||||||
|
${CMAKE_INSTALL_LIBDIR}/cmake/expat-${PROJECT_VERSION}/
|
||||||
|
NAMESPACE
|
||||||
|
expat::
|
||||||
|
)
|
||||||
|
|
||||||
|
#
|
||||||
|
# CPack
|
||||||
|
#
|
||||||
|
|
||||||
|
# This effectively disables target "package_source".
|
||||||
|
# That is done due to CPack's unfortunate choice of an exclusion list
|
||||||
|
# rather than inclusion list. An exclusion list does not protect against
|
||||||
|
# unwanted files ending up in the resulting archive in a way that's
|
||||||
|
# safe to run from an Expat developer's machine.
|
||||||
|
set(CPACK_SOURCE_GENERATOR '')
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
set(CPACK_GENERATOR ZIP)
|
||||||
|
else()
|
||||||
|
set(CPACK_GENERATOR TGZ)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
include(CPack)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Summary
|
||||||
|
#
|
||||||
|
if(EXPAT_CHAR_TYPE STREQUAL "char")
|
||||||
|
set(_EXPAT_CHAR_TYPE_SUMMARY "char (UTF-8)")
|
||||||
|
elseif(EXPAT_CHAR_TYPE STREQUAL "ushort")
|
||||||
|
set(_EXPAT_CHAR_TYPE_SUMMARY "ushort (unsigned short, UTF-16)")
|
||||||
|
elseif(EXPAT_CHAR_TYPE STREQUAL "wchar_t")
|
||||||
|
if(WIN32)
|
||||||
|
set(_EXPAT_CHAR_TYPE_SUMMARY "wchar_t (UTF-16)")
|
||||||
|
else()
|
||||||
|
set(_EXPAT_CHAR_TYPE_SUMMARY "wchar_t (UTF-32) // not implemented")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
set(_EXPAT_CHAR_TYPE_SUMMARY "ERROR")
|
||||||
|
endif()
|
||||||
|
string(TOUPPER "${CMAKE_BUILD_TYPE}" _EXPAT_BUILD_TYPE_UPPER)
|
||||||
|
|
||||||
|
message(STATUS "===========================================================================")
|
||||||
|
message(STATUS "")
|
||||||
|
message(STATUS "Configuration")
|
||||||
|
message(STATUS " Prefix ..................... ${CMAKE_INSTALL_PREFIX}")
|
||||||
|
message(STATUS " Build type ................. ${CMAKE_BUILD_TYPE}")
|
||||||
|
message(STATUS " Shared libraries ........... ${EXPAT_SHARED_LIBS}")
|
||||||
|
if(MSVC)
|
||||||
|
message(STATUS " Static CRT ................. ${EXPAT_MSVC_STATIC_CRT}")
|
||||||
|
endif()
|
||||||
|
message(STATUS " Character type ............. ${_EXPAT_CHAR_TYPE_SUMMARY}")
|
||||||
|
if(WIN32)
|
||||||
|
message(STATUS " Binary postfix ............. ${CMAKE_${_EXPAT_BUILD_TYPE_UPPER}_POSTFIX}")
|
||||||
|
endif()
|
||||||
|
message(STATUS "")
|
||||||
|
message(STATUS " Build documentation ........ ${EXPAT_BUILD_DOCS}")
|
||||||
|
message(STATUS " Build examples ............. ${EXPAT_BUILD_EXAMPLES}")
|
||||||
|
message(STATUS " Build fuzzers .............. ${EXPAT_BUILD_FUZZERS}")
|
||||||
|
message(STATUS " Build tests ................ ${EXPAT_BUILD_TESTS}")
|
||||||
|
message(STATUS " Build tools (xmlwf) ........ ${EXPAT_BUILD_TOOLS}")
|
||||||
|
message(STATUS " Build pkg-config file ...... ${EXPAT_BUILD_PKGCONFIG}")
|
||||||
|
message(STATUS " Install files .............. ${EXPAT_ENABLE_INSTALL}")
|
||||||
|
message(STATUS "")
|
||||||
|
message(STATUS " Features")
|
||||||
|
message(STATUS " // Advanced options, changes not advised")
|
||||||
|
message(STATUS " Attributes info .......... ${EXPAT_ATTR_INFO}")
|
||||||
|
message(STATUS " Context bytes ............ ${EXPAT_CONTEXT_BYTES}")
|
||||||
|
message(STATUS " DTD support .............. ${EXPAT_DTD}")
|
||||||
|
message(STATUS " Large size ............... ${EXPAT_LARGE_SIZE}")
|
||||||
|
message(STATUS " Minimum size ............. ${EXPAT_MIN_SIZE}")
|
||||||
|
message(STATUS " Namespace support ........ ${EXPAT_NS}")
|
||||||
|
message(STATUS "")
|
||||||
|
message(STATUS " Entropy sources")
|
||||||
|
if(WIN32)
|
||||||
|
message(STATUS " rand_s ................... ON")
|
||||||
|
else()
|
||||||
|
message(STATUS " getrandom ................ ${HAVE_GETRANDOM}")
|
||||||
|
message(STATUS " syscall SYS_getrandom .... ${HAVE_SYSCALL_GETRANDOM}")
|
||||||
|
message(STATUS " libbsd ................... ${EXPAT_WITH_LIBBSD}")
|
||||||
|
message(STATUS " /dev/random .............. ${EXPAT_DEV_URANDOM}")
|
||||||
|
endif()
|
||||||
|
message(STATUS "")
|
||||||
|
if(CMAKE_GENERATOR STREQUAL "Unix Makefiles")
|
||||||
|
message(STATUS "Continue with")
|
||||||
|
message(STATUS " make")
|
||||||
|
if(EXPAT_BUILD_TESTS)
|
||||||
|
message(STATUS " make test")
|
||||||
|
endif()
|
||||||
|
if(EXPAT_ENABLE_INSTALL)
|
||||||
|
message(STATUS " sudo make install")
|
||||||
|
endif()
|
||||||
|
message(STATUS "")
|
||||||
|
endif()
|
||||||
|
message(STATUS "===========================================================================")
|
21
3rdparty/expat/COPYING
vendored
Normal file
21
3rdparty/expat/COPYING
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
|
||||||
|
Copyright (c) 2001-2019 Expat maintainers
|
||||||
|
|
||||||
|
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.
|
817
3rdparty/expat/Changes
vendored
Normal file
817
3rdparty/expat/Changes
vendored
Normal file
@ -0,0 +1,817 @@
|
|||||||
|
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!
|
||||||
|
|
||||||
|
Release 2.2.10 Sat October 3 2020
|
||||||
|
Bug fixes:
|
||||||
|
#390 #395 #398 Fix undefined behavior during parsing caused by
|
||||||
|
pointer arithmetic with NULL pointers
|
||||||
|
#404 #405 Fix reading uninitialized variable during parsing
|
||||||
|
#406 xmlwf: Add missing check for malloc NULL return
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#396 Windows: Drop support for Visual Studio <=8.0/2005
|
||||||
|
#409 Windows: Add missing file "Changes" to the installer
|
||||||
|
to fix compilation with CMake from installed sources
|
||||||
|
#403 xmlwf: Document exit codes in xmlwf manpage and
|
||||||
|
exit with code 3 (rather than code 1) for output errors
|
||||||
|
when used with "-d DIRECTORY"
|
||||||
|
#356 #359 MinGW: Provide declaration of rand_s for mingwrt <5.3.0
|
||||||
|
#383 #392 Autotools: Use -Werror while configure tests the compiler
|
||||||
|
for supported compile flags to avoid false positives
|
||||||
|
#383 #393 #394 Autotools: Improve handling of user (C|CPP|CXX|LD)FLAGS,
|
||||||
|
e.g. ensure that they have the last word over flags added
|
||||||
|
while running ./configure
|
||||||
|
#360 CMake: Create libexpatw.{dll,so} and expatw.pc (with emphasis
|
||||||
|
on suffix "w") with -DEXPAT_CHAR_TYPE=(ushort|wchar_t)
|
||||||
|
#360 CMake: Detect and deny unsupported build combinations
|
||||||
|
involving -DEXPAT_CHAR_TYPE=(ushort|wchar_t)
|
||||||
|
#360 CMake: Install pre-compiled shipped xmlwf.1 manpage in case
|
||||||
|
of -DEXPAT_BUILD_DOCS=OFF
|
||||||
|
#375 #380 #419 CMake: Fix use of Expat by means of add_subdirectory
|
||||||
|
#407 #408 CMake: Keep expat target name constant at "expat"
|
||||||
|
(i.e. refrain from using the target name to control
|
||||||
|
build artifact filenames)
|
||||||
|
#385 CMake: Fix compilation with -DEXPAT_SHARED_LIBS=OFF for
|
||||||
|
Windows
|
||||||
|
CMake: Expose man page compilation as target "xmlwf-manpage"
|
||||||
|
#413 #414 CMake: Introduce option EXPAT_BUILD_PKGCONFIG
|
||||||
|
to control generation of pkg-config file "expat.pc"
|
||||||
|
#424 CMake: Add minimalistic support for building binary packages
|
||||||
|
with CMake target "package"; based on CPack
|
||||||
|
#366 CMake: Add option -DEXPAT_OSSFUZZ_BUILD=(ON|OFF) with
|
||||||
|
default OFF to build fuzzer code against OSS-Fuzz and
|
||||||
|
related environment variable LIB_FUZZING_ENGINE
|
||||||
|
#354 Fix testsuite for -DEXPAT_DTD=OFF and -DEXPAT_NS=OFF, each
|
||||||
|
#354 #355 ..
|
||||||
|
#356 #412 Address compiler warnings
|
||||||
|
#368 #369 Address pngcheck warnings with doc/*.png images
|
||||||
|
Version info bumped from 7:11:6 to 7:12:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
asavah
|
||||||
|
Ben Wagner
|
||||||
|
Bhargava Shastry
|
||||||
|
Frank Landgraf
|
||||||
|
Jeffrey Walton
|
||||||
|
Joe Orton
|
||||||
|
Kleber Tarcísio
|
||||||
|
Ma Lin
|
||||||
|
Maciej Sroczyński
|
||||||
|
Mohammed Khajapasha
|
||||||
|
Vadim Zeitlin
|
||||||
|
and
|
||||||
|
Cppcheck 2.0 and the Cppcheck team
|
||||||
|
|
||||||
|
Release 2.2.9 Wed September 25 2019
|
||||||
|
Other changes:
|
||||||
|
examples: Drop executable bits from elements.c
|
||||||
|
#349 Windows: Change the name of the Windows DLLs from expat*.dll
|
||||||
|
to libexpat*.dll once more (regression from 2.2.8, first
|
||||||
|
fixed in 1.95.3, issue #61 on SourceForge today,
|
||||||
|
was issue #432456 back then); needs a fix due
|
||||||
|
case-insensitive file systems on Windows and the fact that
|
||||||
|
Perl's XML::Parser::Expat compiles into Expat.dll.
|
||||||
|
#347 Windows: Only define _CRT_RAND_S if not defined
|
||||||
|
Version info bumped from 7:10:6 to 7:11:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Ben Wagner
|
||||||
|
|
||||||
|
Release 2.2.8 Fri September 13 2019
|
||||||
|
Security fixes:
|
||||||
|
#317 #318 CVE-2019-15903 -- Fix heap overflow triggered by
|
||||||
|
XML_GetCurrentLineNumber (or XML_GetCurrentColumnNumber),
|
||||||
|
and deny internal entities closing the doctype;
|
||||||
|
fixed in commit c20b758c332d9a13afbbb276d30db1d183a85d43
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#240 Fix cases where XML_StopParser did not have any effect
|
||||||
|
when called from inside of an end element handler
|
||||||
|
#341 xmlwf: Fix exit code for operation without "-d DIRECTORY";
|
||||||
|
previously, only "-d DIRECTORY" would give you a proper
|
||||||
|
exit code:
|
||||||
|
# xmlwf -d . <<<'<not well-formed>' 2>/dev/null ; echo $?
|
||||||
|
2
|
||||||
|
# xmlwf <<<'<not well-formed>' 2>/dev/null ; echo $?
|
||||||
|
0
|
||||||
|
Now both cases return exit code 2.
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#299 #302 Windows: Replace LoadLibrary hack to access
|
||||||
|
unofficial API function SystemFunction036 (RtlGenRandom)
|
||||||
|
by using official API function rand_s (needs WinXP+)
|
||||||
|
#325 Windows: Drop support for Visual Studio <=7.1/2003
|
||||||
|
and document supported compilers in README.md
|
||||||
|
#286 Windows: Remove COM code from xmlwf; in case it turns
|
||||||
|
out needed later, there will be a dedicated repository
|
||||||
|
below https://github.com/libexpat/ for that code
|
||||||
|
#322 Windows: Remove explicit MSVC solution and project files.
|
||||||
|
You can generate Visual Studio solution files through
|
||||||
|
CMake, e.g.: cmake -G"Visual Studio 15 2017" .
|
||||||
|
#338 xmlwf: Make "xmlwf -h" help output more friendly
|
||||||
|
#339 examples: Improve elements.c
|
||||||
|
#244 #264 Autotools: Add argument --enable-xml-attr-info
|
||||||
|
#239 #301 Autotools: Add arguments
|
||||||
|
--with-getrandom
|
||||||
|
--without-getrandom
|
||||||
|
--with-sys-getrandom
|
||||||
|
--without-sys-getrandom
|
||||||
|
#312 #343 Autotools: Fix linking issues with "./configure LD=clang"
|
||||||
|
Autotools: Fix "make run-xmltest" for out-of-source builds
|
||||||
|
#329 #336 CMake: Pull all options from Expat <=2.2.7 into namespace
|
||||||
|
prefix EXPAT_ with the exception of DOCBOOK_TO_MAN:
|
||||||
|
- BUILD_doc -> EXPAT_BUILD_DOCS (plural)
|
||||||
|
- BUILD_examples -> EXPAT_BUILD_EXAMPLES
|
||||||
|
- BUILD_shared -> EXPAT_SHARED_LIBS
|
||||||
|
- BUILD_tests -> EXPAT_BUILD_TESTS
|
||||||
|
- BUILD_tools -> EXPAT_BUILD_TOOLS
|
||||||
|
- DOCBOOK_TO_MAN -> DOCBOOK_TO_MAN (unchanged)
|
||||||
|
- INSTALL -> EXPAT_ENABLE_INSTALL
|
||||||
|
- MSVC_USE_STATIC_CRT -> EXPAT_MSVC_STATIC_CRT
|
||||||
|
- USE_libbsd -> EXPAT_WITH_LIBBSD
|
||||||
|
- WARNINGS_AS_ERRORS -> EXPAT_WARNINGS_AS_ERRORS
|
||||||
|
- XML_CONTEXT_BYTES -> EXPAT_CONTEXT_BYTES
|
||||||
|
- XML_DEV_URANDOM -> EXPAT_DEV_URANDOM
|
||||||
|
- XML_DTD -> EXPAT_DTD
|
||||||
|
- XML_NS -> EXPAT_NS
|
||||||
|
- XML_UNICODE -> EXPAT_CHAR_TYPE=ushort (!)
|
||||||
|
- XML_UNICODE_WCHAR_T -> EXPAT_CHAR_TYPE=wchar_t (!)
|
||||||
|
#244 #264 CMake: Add argument -DEXPAT_ATTR_INFO=(ON|OFF),
|
||||||
|
default OFF
|
||||||
|
#326 CMake: Add argument -DEXPAT_LARGE_SIZE=(ON|OFF),
|
||||||
|
default OFF
|
||||||
|
#328 CMake: Add argument -DEXPAT_MIN_SIZE=(ON|OFF),
|
||||||
|
default OFF
|
||||||
|
#239 #277 CMake: Add arguments
|
||||||
|
-DEXPAT_WITH_GETRANDOM=(ON|OFF|AUTO), default AUTO
|
||||||
|
-DEXPAT_WITH_SYS_GETRANDOM=(ON|OFF|AUTO), default AUTO
|
||||||
|
#326 CMake: Install expat_config.h to include directory
|
||||||
|
#326 CMake: Generate and install configuration files for
|
||||||
|
future find_package(expat [..] CONFIG [..])
|
||||||
|
CMake: Now produces a summary of applied configuration
|
||||||
|
CMake: Require C++ compiler only when tests are enabled
|
||||||
|
#330 CMake: Fix compilation for 16bit character types,
|
||||||
|
i.e. ex -DXML_UNICODE=ON (and ex -DXML_UNICODE_WCHAR_T=ON)
|
||||||
|
#265 CMake: Fix linking with MinGW
|
||||||
|
#330 CMake: Add full support for MinGW; to enable, use
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE=[expat]/cmake/mingw-toolchain.cmake
|
||||||
|
#330 CMake: Port "make run-xmltest" from GNU Autotools to CMake
|
||||||
|
#316 CMake: Windows: Make binary postfix match MSVC
|
||||||
|
Old: expat[d].lib
|
||||||
|
New: expat[w][d][MD|MT].lib
|
||||||
|
CMake: Migrate files from Windows to Unix line endings
|
||||||
|
#308 CMake: Integrate OSS-Fuzz fuzzers, option
|
||||||
|
-DEXPAT_BUILD_FUZZERS=(ON|OFF), default OFF
|
||||||
|
#14 Drop an OpenVMS support leftover
|
||||||
|
#235 #268 ..
|
||||||
|
#270 #310 ..
|
||||||
|
#313 #331 #333 Address compiler warnings
|
||||||
|
#282 #283 ..
|
||||||
|
#284 #285 Address cppcheck warnings
|
||||||
|
#294 #295 Address Clang Static Analyzer warnings
|
||||||
|
#24 #293 Mass-apply clang-format 9 (and ensure conformance during CI)
|
||||||
|
Version info bumped from 7:9:6 to 7:10:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
David Loffredo
|
||||||
|
Joonun Jang
|
||||||
|
Kishore Kunche
|
||||||
|
Marco Maggi
|
||||||
|
Mitch Phillips
|
||||||
|
Mohammed Khajapasha
|
||||||
|
Rolf Ade
|
||||||
|
xantares
|
||||||
|
Zhongyuan Zhou
|
||||||
|
|
||||||
|
Release 2.2.7 Wed June 19 2019
|
||||||
|
Security fixes:
|
||||||
|
#186 #262 CVE-2018-20843 -- Fix extraction of namespace prefixes from
|
||||||
|
XML names; XML names with multiple colons could end up in
|
||||||
|
the wrong namespace, and take a high amount of RAM and CPU
|
||||||
|
resources while processing, opening the door to
|
||||||
|
use for denial-of-service attacks
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#195 #197 Autotools/CMake: Utilize -fvisibility=hidden to stop
|
||||||
|
exporting non-API symbols
|
||||||
|
#227 Autotools: Add --without-examples and --without-tests
|
||||||
|
#228 Autotools: Modernize configure.ac
|
||||||
|
#245 #246 Autotools: Fix check for -fvisibility=hidden for Clang
|
||||||
|
#247 #248 Autotools: Fix compilation for lack of docbook2x-man
|
||||||
|
#236 #258 Autotools: Produce .tar.{gz,lz,xz} release archives
|
||||||
|
#212 CMake: Make libdir of pkgconfig expat.pc support multilib
|
||||||
|
#158 #263 CMake: Build man page in PROJECT_BINARY_DIR not _SOURCE_DIR
|
||||||
|
#219 Remove fallback to bcopy, assume that memmove(3) exists
|
||||||
|
#257 Use portable "/usr/bin/env bash" shebang (e.g. for OpenBSD)
|
||||||
|
#243 Windows: Fix syntax of .def module definition files
|
||||||
|
Version info bumped from 7:8:6 to 7:9:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Benjamin Peterson
|
||||||
|
Caolán McNamara
|
||||||
|
Hanno Böck
|
||||||
|
KangLin
|
||||||
|
Kishore Kunche
|
||||||
|
Marco Maggi
|
||||||
|
Rhodri James
|
||||||
|
Sebastian Dröge
|
||||||
|
userwithuid
|
||||||
|
Yury Gribov
|
||||||
|
|
||||||
|
Release 2.2.6 Sun August 12 2018
|
||||||
|
Bug fixes:
|
||||||
|
#170 #206 Avoid doing arithmetic with NULL pointers in XML_GetBuffer
|
||||||
|
#204 #205 Fix 2.2.5 regression with suspend-resume while parsing
|
||||||
|
a document like '<root/>'
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#165 #168 Autotools: Fix docbook-related configure syntax error
|
||||||
|
#166 Autotools: Avoid grep option `-q` for Solaris
|
||||||
|
#167 Autotools: Support
|
||||||
|
./configure DOCBOOK_TO_MAN="xmlto man --skip-validation"
|
||||||
|
#159 #167 Autotools: Support DOCBOOK_TO_MAN command which produces
|
||||||
|
xmlwf.1 rather than XMLWF.1; also covers case insensitive
|
||||||
|
file systems
|
||||||
|
#181 Autotools: Drop -rpath option passed to libtool
|
||||||
|
#188 Autotools: Detect and deny SGML docbook2man as ours is XML
|
||||||
|
#188 Autotools/CMake: Support command db2x_docbook2man as well
|
||||||
|
#174 CMake: Introduce option WARNINGS_AS_ERRORS, defaults to OFF
|
||||||
|
#184 #185 CMake: Introduce option MSVC_USE_STATIC_CRT, defaults to OFF
|
||||||
|
#207 #208 CMake: Introduce option XML_UNICODE and XML_UNICODE_WCHAR_T,
|
||||||
|
both defaulting to OFF
|
||||||
|
#175 CMake: Prefer check_symbol_exists over check_function_exists
|
||||||
|
#176 CMake: Create the same pkg-config file as with GNU Autotools
|
||||||
|
#178 #179 CMake: Use GNUInstallDirs module to set proper defaults for
|
||||||
|
install directories
|
||||||
|
#208 CMake: Utilize expat_config.h.cmake for XML_DEV_URANDOM
|
||||||
|
#180 Windows: Fix compilation of test suite for Visual Studio 2008
|
||||||
|
#131 #173 #202 Address compiler warnings
|
||||||
|
#187 #190 #200 Fix miscellaneous typos
|
||||||
|
Version info bumped from 7:7:6 to 7:8:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Anton Maklakov
|
||||||
|
Benjamin Peterson
|
||||||
|
Brad King
|
||||||
|
Franek Korta
|
||||||
|
Frank Rast
|
||||||
|
Joe Orton
|
||||||
|
luzpaz
|
||||||
|
Pedro Vicente
|
||||||
|
Rainer Jung
|
||||||
|
Rhodri James
|
||||||
|
Rolf Ade
|
||||||
|
Rolf Eike Beer
|
||||||
|
Thomas Beutlich
|
||||||
|
Tomasz Kłoczko
|
||||||
|
|
||||||
|
Release 2.2.5 Tue October 31 2017
|
||||||
|
Bug fixes:
|
||||||
|
#8 If the parser runs out of memory, make sure its internal
|
||||||
|
state reflects the memory it actually has, not the memory
|
||||||
|
it wanted to have.
|
||||||
|
#11 The default handler wasn't being called when it should for
|
||||||
|
a SYSTEM or PUBLIC doctype if an entity declaration handler
|
||||||
|
was registered.
|
||||||
|
#137 #138 Fix a case of mistakenly reported parsing success where
|
||||||
|
XML_StopParser was called from an element handler
|
||||||
|
#162 Function XML_ErrorString was returning NULL rather than
|
||||||
|
a message for code XML_ERROR_INVALID_ARGUMENT
|
||||||
|
introduced with release 2.2.1
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#106 xmlwf: Add argument -N adding notation declarations
|
||||||
|
#75 #106 Test suite: Resolve expected failure cases where xmlwf
|
||||||
|
output was incomplete
|
||||||
|
#127 Windows: Fix test suite compilation
|
||||||
|
#126 #127 Windows: Fix compilation for Visual Studio 2012
|
||||||
|
Windows: Upgrade shipped project files to Visual Studio 2017
|
||||||
|
#33 #132 tests: Mass-fix compilation for XML_UNICODE_WCHAR_T
|
||||||
|
#129 examples: Fix compilation for XML_UNICODE_WCHAR_T
|
||||||
|
#130 benchmark: Fix compilation for XML_UNICODE_WCHAR_T
|
||||||
|
#144 xmlwf: Fix compilation for XML_UNICODE_WCHAR_T; still needs
|
||||||
|
Windows or MinGW for 2-byte wchar_t
|
||||||
|
#9 Address two Clang Static Analyzer false positives
|
||||||
|
#59 Resolve troublesome macros hiding parser struct membership
|
||||||
|
and dereferencing that pointer
|
||||||
|
#6 Resolve superfluous internal malloc/realloc switch
|
||||||
|
#153 #155 Improve docbook2x-man detection
|
||||||
|
#160 Undefine NDEBUG in the test suite (rather than rejecting it)
|
||||||
|
#161 Address compiler warnings
|
||||||
|
Version info bumped from 7:6:6 to 7:7:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Benbuck Nason
|
||||||
|
Hans Wennborg
|
||||||
|
José Gutiérrez de la Concha
|
||||||
|
Pedro Monreal Gonzalez
|
||||||
|
Rhodri James
|
||||||
|
Rolf Ade
|
||||||
|
Stephen Groat
|
||||||
|
and
|
||||||
|
Core Infrastructure Initiative
|
||||||
|
|
||||||
|
Release 2.2.4 Sat August 19 2017
|
||||||
|
Bug fixes:
|
||||||
|
#115 Fix copying of partial characters for UTF-8 input
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#109 Fix "make check" for non-x86 architectures that default
|
||||||
|
to unsigned type char (-128..127 rather than 0..255)
|
||||||
|
#109 coverage.sh: Cover -funsigned-char
|
||||||
|
Autotools: Introduce --without-xmlwf argument
|
||||||
|
#65 Autotools: Replace handwritten Makefile with GNU Automake
|
||||||
|
#43 CMake: Auto-detect high quality entropy extractors, add new
|
||||||
|
option USE_libbsd=ON to use arc4random_buf of libbsd
|
||||||
|
#74 CMake: Add -fno-strict-aliasing only where supported
|
||||||
|
#114 CMake: Always honor manually set BUILD_* options
|
||||||
|
#114 CMake: Compile man page if docbook2x-man is available, only
|
||||||
|
#117 Include file tests/xmltest.log.expected in source tarball
|
||||||
|
(required for "make run-xmltest")
|
||||||
|
#117 Include (existing) Visual Studio 2013 files in source tarball
|
||||||
|
Improve test suite error output
|
||||||
|
#111 Fix some typos in documentation
|
||||||
|
Version info bumped from 7:5:6 to 7:6:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Jakub Wilk
|
||||||
|
Joe Orton
|
||||||
|
Lin Tian
|
||||||
|
Rolf Eike Beer
|
||||||
|
|
||||||
|
Release 2.2.3 Wed August 2 2017
|
||||||
|
Security fixes:
|
||||||
|
#82 CVE-2017-11742 -- Windows: Fix DLL hijacking vulnerability
|
||||||
|
using Steve Holme's LoadLibrary wrapper for/of cURL
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#85 Fix a dangling pointer issue related to realloc
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
Increase code coverage
|
||||||
|
#91 Linux: Allow getrandom to fail if nonblocking pool has not
|
||||||
|
yet been initialized and read /dev/urandom then, instead.
|
||||||
|
This is in line with what recent Python does.
|
||||||
|
#81 Pre-10.7/Lion macOS: Support entropy from arc4random
|
||||||
|
#86 Check that a UTF-16 encoding in an XML declaration has the
|
||||||
|
right endianness
|
||||||
|
#4 #5 #7 Recover correctly when some reallocations fail
|
||||||
|
Repair "./configure && make" for systems without any
|
||||||
|
provider of high quality entropy
|
||||||
|
and try reading /dev/urandom on those
|
||||||
|
Ensure that user-defined character encodings have converter
|
||||||
|
functions when they are needed
|
||||||
|
Fix mis-leading description of argument -c in xmlwf.1
|
||||||
|
Rely on macro HAVE_ARC4RANDOM_BUF (rather than __CloudABI__)
|
||||||
|
for CloudABI
|
||||||
|
#100 Fix use of SIPHASH_MAIN in siphash.h
|
||||||
|
#23 Test suite: Fix memory leaks
|
||||||
|
Version info bumped from 7:4:6 to 7:5:6
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Chanho Park
|
||||||
|
Joe Orton
|
||||||
|
Pascal Cuoq
|
||||||
|
Rhodri James
|
||||||
|
Simon McVittie
|
||||||
|
Vadim Zeitlin
|
||||||
|
Viktor Szakats
|
||||||
|
and
|
||||||
|
Core Infrastructure Initiative
|
||||||
|
|
||||||
|
Release 2.2.2 Wed July 12 2017
|
||||||
|
Security fixes:
|
||||||
|
#43 Protect against compilation without any source of high
|
||||||
|
quality entropy enabled, e.g. with CMake build system;
|
||||||
|
commit ff0207e6076e9828e536b8d9cd45c9c92069b895
|
||||||
|
#60 Windows with _UNICODE:
|
||||||
|
Unintended use of LoadLibraryW with a non-wide string
|
||||||
|
resulted in failure to load advapi32.dll and degradation
|
||||||
|
in quality of used entropy when compiled with _UNICODE for
|
||||||
|
Windows; you can launch existing binaries with
|
||||||
|
EXPAT_ENTROPY_DEBUG=1 in the environment to inspect the
|
||||||
|
quality of entropy used during runtime; commits
|
||||||
|
* 95b95032f907ef1cd17ee7a9a1768010a825d61d
|
||||||
|
* 73a5a2e9c081f49f2d775cf7ced864158b68dc80
|
||||||
|
[MOX-006] Fix non-NULL parser parameter validation in XML_Parse;
|
||||||
|
resulted in NULL dereference, previously;
|
||||||
|
commit ac256dafdffc9622ab0dc2c62fcecb0dfcfa71fe
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#69 Fix improper use of unsigned long long integer literals
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#73 Start requiring a C99 compiler
|
||||||
|
#49 Fix "==" Bashism in configure script
|
||||||
|
#50 Fix too eager getrandom detection for Debian GNU/kFreeBSD
|
||||||
|
#52 and macOS
|
||||||
|
#51 Address lack of stdint.h in Visual Studio 2003 to 2008
|
||||||
|
#58 Address compile warnings
|
||||||
|
#68 Fix "./buildconf.sh && ./configure" for some versions
|
||||||
|
of Dash for /bin/sh
|
||||||
|
#72 CMake: Ease use of Expat in context of a parent project
|
||||||
|
with multiple CMakeLists.txt files
|
||||||
|
#72 CMake: Resolve mistaken executable permissions
|
||||||
|
#76 Address compile warning with -DNDEBUG (not recommended!)
|
||||||
|
#77 Address compile warning about macro redefinition
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Alexander Bluhm
|
||||||
|
Ben Boeckel
|
||||||
|
Cătălin Răceanu
|
||||||
|
Kerin Millar
|
||||||
|
László Böszörményi
|
||||||
|
S. P. Zeidler
|
||||||
|
Segev Finer
|
||||||
|
Václav Slavík
|
||||||
|
Victor Stinner
|
||||||
|
Viktor Szakats
|
||||||
|
and
|
||||||
|
Radically Open Security
|
||||||
|
|
||||||
|
Release 2.2.1 Sat June 17 2017
|
||||||
|
Security fixes:
|
||||||
|
CVE-2017-9233 -- External entity infinite loop DoS
|
||||||
|
Details: https://libexpat.github.io/doc/cve-2017-9233/
|
||||||
|
Commit c4bf96bb51dd2a1b0e185374362ee136fe2c9d7f
|
||||||
|
[MOX-002] CVE-2016-9063 -- Detect integer overflow; commit
|
||||||
|
d4f735b88d9932bd5039df2335eefdd0723dbe20
|
||||||
|
(Fixed version of existing downstream patches!)
|
||||||
|
(SF.net) #539 Fix regression from fix to CVE-2016-0718 cutting off
|
||||||
|
longer tag names; commits
|
||||||
|
* 896b6c1fd3b842f377d1b62135dccf0a579cf65d
|
||||||
|
* af507cef2c93cb8d40062a0abe43a4f4e9158fb2
|
||||||
|
#16 * 0dbbf43fdb20f593ddf4fa1ff67288000dd4a7fd
|
||||||
|
#25 More integer overflow detection (function poolGrow); commits
|
||||||
|
* 810b74e4703dcfdd8f404e3cb177d44684775143
|
||||||
|
* 44178553f3539ce69d34abee77a05e879a7982ac
|
||||||
|
[MOX-002] Detect overflow from len=INT_MAX call to XML_Parse; commits
|
||||||
|
* 4be2cb5afcc018d996f34bbbce6374b7befad47f
|
||||||
|
* 7e5b71b748491b6e459e5c9a1d090820f94544d8
|
||||||
|
[MOX-005] #30 Use high quality entropy for hash initialization:
|
||||||
|
* arc4random_buf on BSD, systems with libbsd
|
||||||
|
(when configured with --with-libbsd), CloudABI
|
||||||
|
* RtlGenRandom on Windows XP / Server 2003 and later
|
||||||
|
* getrandom on Linux 3.17+
|
||||||
|
In a way, that's still part of CVE-2016-5300.
|
||||||
|
https://github.com/libexpat/libexpat/pull/30/commits
|
||||||
|
[MOX-005] For the low quality entropy extraction fallback code,
|
||||||
|
the parser instance address can no longer leak, commit
|
||||||
|
04ad658bd3079dd15cb60fc67087900f0ff4b083
|
||||||
|
[MOX-003] Prevent use of uninitialised variable; commit
|
||||||
|
[MOX-004] a4dc944f37b664a3ca7199c624a98ee37babdb4b
|
||||||
|
Add missing parameter validation to public API functions
|
||||||
|
and dedicated error code XML_ERROR_INVALID_ARGUMENT:
|
||||||
|
[MOX-006] * NULL checks; commits
|
||||||
|
* d37f74b2b7149a3a95a680c4c4cd2a451a51d60a (merge/many)
|
||||||
|
* 9ed727064b675b7180c98cb3d4f75efba6966681
|
||||||
|
* 6a747c837c50114dfa413994e07c0ba477be4534
|
||||||
|
* Negative length (XML_Parse); commit
|
||||||
|
[MOX-002] 70db8d2538a10f4c022655d6895e4c3e78692e7f
|
||||||
|
[MOX-001] #35 Change hash algorithm to William Ahern's version of SipHash
|
||||||
|
to go further with fixing CVE-2012-0876.
|
||||||
|
https://github.com/libexpat/libexpat/pull/39/commits
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#32 Fix sharing of hash salt across parsers;
|
||||||
|
relevant where XML_ExternalEntityParserCreate is called
|
||||||
|
prior to XML_Parse, in particular (e.g. FBReader)
|
||||||
|
#28 xmlwf: Auto-disable use of memory-mapping (and parsing
|
||||||
|
as a single chunk) for files larger than ~1 GB (2^30 bytes)
|
||||||
|
rather than failing with error "out of memory"
|
||||||
|
#3 Fix double free after malloc failure in DTD code; commit
|
||||||
|
7ae9c3d3af433cd4defe95234eae7dc8ed15637f
|
||||||
|
#17 Fix memory leak on parser error for unbound XML attribute
|
||||||
|
prefix with new namespaces defined in the same tag;
|
||||||
|
found by Google's OSS-Fuzz; commits
|
||||||
|
* 16f87daae5a16132e479e4f71862128c7a915c73
|
||||||
|
* b47dbc9745932c160893d433220e462bd605f8cd
|
||||||
|
xmlwf on Windows: Add missing calls to CloseHandle
|
||||||
|
|
||||||
|
New features:
|
||||||
|
#30 Introduced environment switch EXPAT_ENTROPY_DEBUG=1
|
||||||
|
for runtime debugging of entropy extraction
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
Increase code coverage
|
||||||
|
#33 Reject use of XML_UNICODE_WCHAR_T with sizeof(wchar_t) != 2;
|
||||||
|
XML_UNICODE_WCHAR_T was never meant to be used outside
|
||||||
|
of Windows; 4-byte wchar_t is common on Linux
|
||||||
|
(SF.net) #538 Start using -fno-strict-aliasing
|
||||||
|
(SF.net) #540 Support compilation against cloudlibc of CloudABI
|
||||||
|
Allow MinGW cross-compilation
|
||||||
|
(SF.net) #534 CMake: Introduce option "BUILD_doc" (enabled by default)
|
||||||
|
to bypass compilation of the xmlwf.1 man page
|
||||||
|
(SF.net) pr2 CMake: Introduce option "INSTALL" (enabled by default)
|
||||||
|
to bypass installation of expat files
|
||||||
|
CMake: Fix ninja support
|
||||||
|
Autotools: Add parameters --enable-xml-context [COUNT]
|
||||||
|
and --disable-xml-context; default of context of 1024
|
||||||
|
bytes enabled unchanged
|
||||||
|
#14 Drop AmigaOS 4.x code and includes
|
||||||
|
#14 Drop ancient build systems:
|
||||||
|
* Borland C++ Builder
|
||||||
|
* OpenVMS
|
||||||
|
* Open Watcom
|
||||||
|
* Visual Studio 6.0
|
||||||
|
* Pre-X Mac OS (MPW Makefile)
|
||||||
|
If you happen to rely on some of these, please get in
|
||||||
|
touch for joining with maintenance.
|
||||||
|
#10 Move from WIN32 to _WIN32
|
||||||
|
#13 Fix "make run-xmltest" order instability
|
||||||
|
Address compile warnings
|
||||||
|
Bump version info from 7:2:6 to 7:3:6
|
||||||
|
Add AUTHORS file
|
||||||
|
|
||||||
|
Infrastructure:
|
||||||
|
#1 Migrate from SourceForge to GitHub (except downloads):
|
||||||
|
https://github.com/libexpat/
|
||||||
|
#1 Re-create http://libexpat.org/ project website
|
||||||
|
Start utilizing Travis CI
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Andy Wang
|
||||||
|
Don Lewis
|
||||||
|
Ed Schouten
|
||||||
|
Karl Waclawek
|
||||||
|
Pascal Cuoq
|
||||||
|
Rhodri James
|
||||||
|
Sergei Nikulov
|
||||||
|
Tobias Taschner
|
||||||
|
Viktor Szakats
|
||||||
|
and
|
||||||
|
Core Infrastructure Initiative
|
||||||
|
Mozilla Foundation (MOSS Track 3: Secure Open Source)
|
||||||
|
Radically Open Security
|
||||||
|
|
||||||
|
Release 2.2.0 Tue June 21 2016
|
||||||
|
Security fixes:
|
||||||
|
#537 CVE-2016-0718 -- Fix crash on malformed input
|
||||||
|
CVE-2016-4472 -- Improve insufficient fix to CVE-2015-1283 /
|
||||||
|
CVE-2015-2716 introduced with Expat 2.1.1
|
||||||
|
#499 CVE-2016-5300 -- Use more entropy for hash initialization
|
||||||
|
than the original fix to CVE-2012-0876
|
||||||
|
#519 CVE-2012-6702 -- Resolve troublesome internal call to srand
|
||||||
|
that was introduced with Expat 2.1.0
|
||||||
|
when addressing CVE-2012-0876 (issue #496)
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
Fix uninitialized reads of size 1
|
||||||
|
(e.g. in little2_updatePosition)
|
||||||
|
Fix detection of UTF-8 character boundaries
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#532 Fix compilation for Visual Studio 2010 (keyword "C99")
|
||||||
|
Autotools: Resolve use of "$<" to better support bmake
|
||||||
|
Autotools: Add QA script "qa.sh" (and make target "qa")
|
||||||
|
Autotools: Respect CXXFLAGS if given
|
||||||
|
Autotools: Fix "make run-xmltest"
|
||||||
|
Autotools: Have "make run-xmltest" check for expected output
|
||||||
|
p90 CMake: Fix static build (BUILD_shared=OFF) on Windows
|
||||||
|
#536 CMake: Add soversion, support -DNO_SONAME=yes to bypass
|
||||||
|
#323 CMake: Add suffix "d" to differentiate debug from release
|
||||||
|
CMake: Define WIN32 with CMake on Windows
|
||||||
|
Annotate memory allocators for GCC
|
||||||
|
Address all currently known compile warnings
|
||||||
|
Make sure that API symbols remain visible despite
|
||||||
|
-fvisibility=hidden
|
||||||
|
Remove executable flag from source files
|
||||||
|
Resolve COMPILED_FROM_DSP in favor of WIN32
|
||||||
|
|
||||||
|
Special thanks to:
|
||||||
|
Björn Lindahl
|
||||||
|
Christian Heimes
|
||||||
|
Cristian Rodríguez
|
||||||
|
Daniel Krügler
|
||||||
|
Gustavo Grieco
|
||||||
|
Karl Waclawek
|
||||||
|
László Böszörményi
|
||||||
|
Marco Grassi
|
||||||
|
Pascal Cuoq
|
||||||
|
Sergei Nikulov
|
||||||
|
Thomas Beutlich
|
||||||
|
Warren Young
|
||||||
|
Yann Droneaud
|
||||||
|
|
||||||
|
Release 2.1.1 Sat March 12 2016
|
||||||
|
Security fixes:
|
||||||
|
#582: CVE-2015-1283 - Multiple integer overflows in XML_GetBuffer
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
#502: Fix potential null pointer dereference
|
||||||
|
#520: Symbol XML_SetHashSalt was not exported
|
||||||
|
Output of "xmlwf -h" was incomplete
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
#503: Document behavior of calling XML_SetHashSalt with salt 0
|
||||||
|
Minor improvements to man page xmlwf(1)
|
||||||
|
Improvements to the experimental CMake build system
|
||||||
|
libtool now invoked with --verbose
|
||||||
|
|
||||||
|
Release 2.1.0 Sat March 24 2012
|
||||||
|
- Security fixes:
|
||||||
|
#2958794: CVE-2012-1148 - Memory leak in poolGrow.
|
||||||
|
#2895533: CVE-2012-1147 - Resource leak in readfilemap.c.
|
||||||
|
#3496608: CVE-2012-0876 - Hash DOS attack.
|
||||||
|
#2894085: CVE-2009-3560 - Buffer over-read and crash in big2_toUtf8().
|
||||||
|
#1990430: CVE-2009-3720 - Parser crash with special UTF-8 sequences.
|
||||||
|
- Bug Fixes:
|
||||||
|
#1742315: Harmful XML_ParserCreateNS suggestion.
|
||||||
|
#1785430: Expat build fails on linux-amd64 with gcc version>=4.1 -O3.
|
||||||
|
#1983953, 2517952, 2517962, 2649838:
|
||||||
|
Build modifications using autoreconf instead of buildconf.sh.
|
||||||
|
#2815947, #2884086: OBJEXT and EXEEXT support while building.
|
||||||
|
#2517938: xmlwf should return non-zero exit status if not well-formed.
|
||||||
|
#2517946: Wrong statement about XMLDecl in xmlwf.1 and xmlwf.sgml.
|
||||||
|
#2855609: Dangling positionPtr after error.
|
||||||
|
#2990652: CMake support.
|
||||||
|
#3010819: UNEXPECTED_STATE with a trailing "%" in entity value.
|
||||||
|
#3206497: Uninitialized memory returned from XML_Parse.
|
||||||
|
#3287849: make check fails on mingw-w64.
|
||||||
|
- Patches:
|
||||||
|
#1749198: pkg-config support.
|
||||||
|
#3010222: Fix for bug #3010819.
|
||||||
|
#3312568: CMake support.
|
||||||
|
#3446384: Report byte offsets for attr names and values.
|
||||||
|
- New Features / API changes:
|
||||||
|
Added new API member XML_SetHashSalt() that allows setting an initial
|
||||||
|
value (salt) for hash calculations. This is part of the fix for
|
||||||
|
bug #3496608 to randomize hash parameters.
|
||||||
|
When compiled with XML_ATTR_INFO defined, adds new API member
|
||||||
|
XML_GetAttributeInfo() that allows retrieving the byte
|
||||||
|
offsets for attribute names and values (patch #3446384).
|
||||||
|
Added CMake build system.
|
||||||
|
See bug #2990652 and patch #3312568.
|
||||||
|
Added run-benchmark target to Makefile.in - relies on testdata module
|
||||||
|
present in the same relative location as in the repository.
|
||||||
|
|
||||||
|
Release 2.0.1 Tue June 5 2007
|
||||||
|
- Fixed bugs #1515266, #1515600: The character data handler's calling
|
||||||
|
of XML_StopParser() was not handled properly; if the parser was
|
||||||
|
stopped and the handler set to NULL, the parser would segfault.
|
||||||
|
- Fixed bug #1690883: Expat failed on EBCDIC systems as it assumed
|
||||||
|
some character constants to be ASCII encoded.
|
||||||
|
- Minor cleanups of the test harness.
|
||||||
|
- Fixed xmlwf bug #1513566: "out of memory" error on file size zero.
|
||||||
|
- Fixed outline.c bug #1543233: missing a final XML_ParserFree() call.
|
||||||
|
- Fixes and improvements for Windows platform:
|
||||||
|
bugs #1409451, #1476160, #1548182, #1602769, #1717322.
|
||||||
|
- Build fixes for various platforms:
|
||||||
|
HP-UX, Tru64, Solaris 9: patch #1437840, bug #1196180.
|
||||||
|
All Unix: #1554618 (refreshed config.sub/config.guess).
|
||||||
|
#1490371, #1613457: support both, DESTDIR and INSTALL_ROOT,
|
||||||
|
without relying on GNU-Make specific features.
|
||||||
|
#1647805: Patched configure.in to work better with Intel compiler.
|
||||||
|
- Fixes to Makefile.in to have make check work correctly:
|
||||||
|
bugs #1408143, #1535603, #1536684.
|
||||||
|
- Added Open Watcom support: patch #1523242.
|
||||||
|
|
||||||
|
Release 2.0.0 Wed Jan 11 2006
|
||||||
|
- We no longer use the "check" library for C unit testing; we
|
||||||
|
always use the (partial) internal implementation of the API.
|
||||||
|
- Report XML_NS setting via XML_GetFeatureList().
|
||||||
|
- Fixed headers for use from C++.
|
||||||
|
- XML_GetCurrentLineNumber() and XML_GetCurrentColumnNumber()
|
||||||
|
now return unsigned integers.
|
||||||
|
- Added XML_LARGE_SIZE switch to enable 64-bit integers for
|
||||||
|
byte indexes and line/column numbers.
|
||||||
|
- Updated to use libtool 1.5.22 (the most recent).
|
||||||
|
- Added support for AmigaOS.
|
||||||
|
- Some mostly minor bug fixes. SF issues include: #1006708,
|
||||||
|
#1021776, #1023646, #1114960, #1156398, #1221160, #1271642.
|
||||||
|
|
||||||
|
Release 1.95.8 Fri Jul 23 2004
|
||||||
|
- Major new feature: suspend/resume. Handlers can now request
|
||||||
|
that a parse be suspended for later resumption or aborted
|
||||||
|
altogether. See "Temporarily Stopping Parsing" in the
|
||||||
|
documentation for more details.
|
||||||
|
- Some mostly minor bug fixes, but compilation should no
|
||||||
|
longer generate warnings on most platforms. SF issues
|
||||||
|
include: #827319, #840173, #846309, #888329, #896188, #923913,
|
||||||
|
#928113, #961698, #985192.
|
||||||
|
|
||||||
|
Release 1.95.7 Mon Oct 20 2003
|
||||||
|
- Fixed enum XML_Status issue (reported on SourceForge many
|
||||||
|
times), so compilers that are properly picky will be happy.
|
||||||
|
- Introduced an XMLCALL macro to control the calling
|
||||||
|
convention used by the Expat API; this macro should be used
|
||||||
|
to annotate prototypes and definitions of callback
|
||||||
|
implementations in code compiled with a calling convention
|
||||||
|
other than the default convention for the host platform.
|
||||||
|
- Improved ability to build without the configure-generated
|
||||||
|
expat_config.h header. This is useful for applications
|
||||||
|
which embed Expat rather than linking in the library.
|
||||||
|
- Fixed a variety of bugs: see SF issues #458907, #609603,
|
||||||
|
#676844, #679754, #692878, #692964, #695401, #699323, #699487,
|
||||||
|
#820946.
|
||||||
|
- Improved hash table lookups.
|
||||||
|
- Added more regression tests and improved documentation.
|
||||||
|
|
||||||
|
Release 1.95.6 Tue Jan 28 2003
|
||||||
|
- Added XML_FreeContentModel().
|
||||||
|
- Added XML_MemMalloc(), XML_MemRealloc(), XML_MemFree().
|
||||||
|
- Fixed a variety of bugs: see SF issues #615606, #616863,
|
||||||
|
#618199, #653180, #673791.
|
||||||
|
- Enhanced the regression test suite.
|
||||||
|
- Man page improvements: includes SF issue #632146.
|
||||||
|
|
||||||
|
Release 1.95.5 Fri Sep 6 2002
|
||||||
|
- Added XML_UseForeignDTD() for improved SAX2 support.
|
||||||
|
- Added XML_GetFeatureList().
|
||||||
|
- Defined XML_Bool type and the values XML_TRUE and XML_FALSE.
|
||||||
|
- Use an incomplete struct instead of a void* for the parser
|
||||||
|
(may not retain).
|
||||||
|
- Fixed UTF-8 decoding bug that caused legal UTF-8 to be rejected.
|
||||||
|
- Finally fixed bug where default handler would report DTD
|
||||||
|
events that were already handled by another handler.
|
||||||
|
Initial patch contributed by Darryl Miles.
|
||||||
|
- Removed unnecessary DllMain() function that caused static
|
||||||
|
linking into a DLL to be difficult.
|
||||||
|
- Added VC++ projects for building static libraries.
|
||||||
|
- Reduced line-length for all source code and headers to be
|
||||||
|
no longer than 80 characters, to help with AS/400 support.
|
||||||
|
- Reduced memory copying during parsing (SF patch #600964).
|
||||||
|
- Fixed a variety of bugs: see SF issues #580793, #434664,
|
||||||
|
#483514, #580503, #581069, #584041, #584183, #584832, #585537,
|
||||||
|
#596555, #596678, #598352, #598944, #599715, #600479, #600971.
|
||||||
|
|
||||||
|
Release 1.95.4 Fri Jul 12 2002
|
||||||
|
- Added support for VMS, contributed by Craig Berry. See
|
||||||
|
vms/README.vms for more information.
|
||||||
|
- Added Mac OS (classic) support, with a makefile for MPW,
|
||||||
|
contributed by Thomas Wegner and Daryle Walker.
|
||||||
|
- Added Borland C++ Builder 5 / BCC 5.5 support, contributed
|
||||||
|
by Patrick McConnell (SF patch #538032).
|
||||||
|
- Fixed a variety of bugs: see SF issues #441449, #563184,
|
||||||
|
#564342, #566334, #566901, #569461, #570263, #575168, #579196.
|
||||||
|
- Made skippedEntityHandler conform to SAX2 (see source comment)
|
||||||
|
- Re-implemented WFC: Entity Declared from XML 1.0 spec and
|
||||||
|
added a new error "entity declared in parameter entity":
|
||||||
|
see SF bug report #569461 and SF patch #578161
|
||||||
|
- Re-implemented section 5.1 from XML 1.0 spec:
|
||||||
|
see SF bug report #570263 and SF patch #578161
|
||||||
|
|
||||||
|
Release 1.95.3 Mon Jun 3 2002
|
||||||
|
- Added a project to the MSVC workspace to create a wchar_t
|
||||||
|
version of the library; the DLLs are named libexpatw.dll.
|
||||||
|
- Changed the name of the Windows DLLs from expat.dll to
|
||||||
|
libexpat.dll; this fixes SF bug #432456.
|
||||||
|
- Added the XML_ParserReset() API function.
|
||||||
|
- Fixed XML_SetReturnNSTriplet() to work for element names.
|
||||||
|
- Made the XML_UNICODE builds usable (thanks, Karl!).
|
||||||
|
- Allow xmlwf to read from standard input.
|
||||||
|
- Install a man page for xmlwf on Unix systems.
|
||||||
|
- Fixed many bugs; see SF bug reports #231864, #461380, #464837,
|
||||||
|
#466885, #469226, #477667, #484419, #487840, #494749, #496505,
|
||||||
|
#547350. Other bugs which we can't test as easily may also
|
||||||
|
have been fixed, especially in the area of build support.
|
||||||
|
|
||||||
|
Release 1.95.2 Fri Jul 27 2001
|
||||||
|
- More changes to make MSVC happy with the build; add a single
|
||||||
|
workspace to support both the library and xmlwf application.
|
||||||
|
- Added a Windows installer for Windows users; includes
|
||||||
|
xmlwf.exe.
|
||||||
|
- Added compile-time constants that can be used to determine the
|
||||||
|
Expat version
|
||||||
|
- Removed a lot of GNU-specific dependencies to aide portability
|
||||||
|
among the various Unix flavors.
|
||||||
|
- Fix the UTF-8 BOM bug.
|
||||||
|
- Cleaned up warning messages for several compilers.
|
||||||
|
- Added the -Wall, -Wstrict-prototypes options for GCC.
|
||||||
|
|
||||||
|
Release 1.95.1 Sun Oct 22 15:11:36 EDT 2000
|
||||||
|
- Changes to get expat to build under Microsoft compiler
|
||||||
|
- Removed all aborts and instead return an UNEXPECTED_STATE error.
|
||||||
|
- Fixed a bug where a stray '%' in an entity value would cause an
|
||||||
|
abort.
|
||||||
|
- Defined XML_SetEndNamespaceDeclHandler. Thanks to Darryl Miles for
|
||||||
|
finding this oversight.
|
||||||
|
- Changed default patterns in lib/Makefile.in to fit non-GNU makes
|
||||||
|
Thanks to robin@unrated.net for reporting and providing an
|
||||||
|
account to test on.
|
||||||
|
- The reference had the wrong label for XML_SetStartNamespaceDecl.
|
||||||
|
Reported by an anonymous user.
|
||||||
|
|
||||||
|
Release 1.95.0 Fri Sep 29 2000
|
||||||
|
- XML_ParserCreate_MM
|
||||||
|
Allows you to set a memory management suite to replace the
|
||||||
|
standard malloc,realloc, and free.
|
||||||
|
- XML_SetReturnNSTriplet
|
||||||
|
If you turn this feature on when namespace processing is in
|
||||||
|
effect, then qualified, prefixed element and attribute names
|
||||||
|
are returned as "uri|name|prefix" where '|' is whatever
|
||||||
|
separator character is used in namespace processing.
|
||||||
|
- Merged in features from perl-expat
|
||||||
|
o XML_SetElementDeclHandler
|
||||||
|
o XML_SetAttlistDeclHandler
|
||||||
|
o XML_SetXmlDeclHandler
|
||||||
|
o XML_SetEntityDeclHandler
|
||||||
|
o StartDoctypeDeclHandler takes 3 additional parameters:
|
||||||
|
sysid, pubid, has_internal_subset
|
||||||
|
o Many paired handler setters (like XML_SetElementHandler)
|
||||||
|
now have corresponding individual handler setters
|
||||||
|
o XML_GetInputContext for getting the input context of
|
||||||
|
the current parse position.
|
||||||
|
- Added reference material
|
||||||
|
- Packaged into a distribution that builds a sharable library
|
66
3rdparty/expat/ConfigureChecks.cmake
vendored
Normal file
66
3rdparty/expat/ConfigureChecks.cmake
vendored
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
include(CheckCCompilerFlag)
|
||||||
|
include(CheckCSourceCompiles)
|
||||||
|
include(CheckIncludeFile)
|
||||||
|
include(CheckIncludeFiles)
|
||||||
|
include(CheckSymbolExists)
|
||||||
|
include(TestBigEndian)
|
||||||
|
|
||||||
|
check_include_file("dlfcn.h" HAVE_DLFCN_H)
|
||||||
|
check_include_file("fcntl.h" HAVE_FCNTL_H)
|
||||||
|
check_include_file("inttypes.h" HAVE_INTTYPES_H)
|
||||||
|
check_include_file("memory.h" HAVE_MEMORY_H)
|
||||||
|
check_include_file("stdint.h" HAVE_STDINT_H)
|
||||||
|
check_include_file("stdlib.h" HAVE_STDLIB_H)
|
||||||
|
check_include_file("strings.h" HAVE_STRINGS_H)
|
||||||
|
check_include_file("string.h" HAVE_STRING_H)
|
||||||
|
check_include_file("sys/stat.h" HAVE_SYS_STAT_H)
|
||||||
|
check_include_file("sys/types.h" HAVE_SYS_TYPES_H)
|
||||||
|
check_include_file("unistd.h" HAVE_UNISTD_H)
|
||||||
|
|
||||||
|
check_symbol_exists("getpagesize" "unistd.h" HAVE_GETPAGESIZE)
|
||||||
|
check_symbol_exists("mmap" "sys/mman.h" HAVE_MMAP)
|
||||||
|
check_symbol_exists("getrandom" "sys/random.h" HAVE_GETRANDOM)
|
||||||
|
|
||||||
|
if(EXPAT_WITH_LIBBSD)
|
||||||
|
set(CMAKE_REQUIRED_LIBRARIES "${LIB_BSD}")
|
||||||
|
set(_bsd "bsd/")
|
||||||
|
else()
|
||||||
|
set(_bsd "")
|
||||||
|
endif()
|
||||||
|
check_symbol_exists("arc4random_buf" "${_bsd}stdlib.h" HAVE_ARC4RANDOM_BUF)
|
||||||
|
if(NOT HAVE_ARC4RANDOM_BUF)
|
||||||
|
check_symbol_exists("arc4random" "${_bsd}stdlib.h" HAVE_ARC4RANDOM)
|
||||||
|
endif()
|
||||||
|
set(CMAKE_REQUIRED_LIBRARIES)
|
||||||
|
|
||||||
|
#/* Define to 1 if you have the ANSI C header files. */
|
||||||
|
check_include_files("stdlib.h;stdarg.h;string.h;float.h" STDC_HEADERS)
|
||||||
|
|
||||||
|
test_big_endian(WORDS_BIGENDIAN)
|
||||||
|
#/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
|
||||||
|
if(WORDS_BIGENDIAN)
|
||||||
|
set(BYTEORDER 4321)
|
||||||
|
else(WORDS_BIGENDIAN)
|
||||||
|
set(BYTEORDER 1234)
|
||||||
|
endif(WORDS_BIGENDIAN)
|
||||||
|
|
||||||
|
if(HAVE_SYS_TYPES_H)
|
||||||
|
check_symbol_exists("off_t" "sys/types.h" OFF_T)
|
||||||
|
check_symbol_exists("size_t" "sys/types.h" SIZE_T)
|
||||||
|
else(HAVE_SYS_TYPES_H)
|
||||||
|
set(OFF_T "long")
|
||||||
|
set(SIZE_T "unsigned")
|
||||||
|
endif(HAVE_SYS_TYPES_H)
|
||||||
|
|
||||||
|
check_c_source_compiles("
|
||||||
|
#include <stdlib.h> /* for NULL */
|
||||||
|
#include <unistd.h> /* for syscall */
|
||||||
|
#include <sys/syscall.h> /* for SYS_getrandom */
|
||||||
|
int main() {
|
||||||
|
syscall(SYS_getrandom, NULL, 0, 0);
|
||||||
|
return 0;
|
||||||
|
}"
|
||||||
|
HAVE_SYSCALL_GETRANDOM)
|
||||||
|
|
||||||
|
check_c_compiler_flag("-fno-strict-aliasing" FLAG_NO_STRICT_ALIASING)
|
||||||
|
check_c_compiler_flag("-fvisibility=hidden" FLAG_VISIBILITY)
|
154
3rdparty/expat/Makefile.am
vendored
Normal file
154
3rdparty/expat/Makefile.am
vendored
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
AUTOMAKE_OPTIONS = \
|
||||||
|
dist-bzip2 \
|
||||||
|
dist-lzip \
|
||||||
|
dist-xz \
|
||||||
|
foreign \
|
||||||
|
subdir-objects
|
||||||
|
|
||||||
|
ACLOCAL_AMFLAGS = -I m4
|
||||||
|
LIBTOOLFLAGS = --verbose
|
||||||
|
|
||||||
|
SUBDIRS = lib # lib goes first to build first
|
||||||
|
if WITH_EXAMPLES
|
||||||
|
SUBDIRS += examples
|
||||||
|
endif
|
||||||
|
if WITH_TESTS
|
||||||
|
SUBDIRS += tests
|
||||||
|
endif
|
||||||
|
if WITH_XMLWF
|
||||||
|
SUBDIRS += xmlwf doc
|
||||||
|
endif
|
||||||
|
|
||||||
|
pkgconfig_DATA = expat.pc
|
||||||
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
|
|
||||||
|
|
||||||
|
_EXTRA_DIST_CMAKE = \
|
||||||
|
cmake/expat-config.cmake.in \
|
||||||
|
cmake/mingw-toolchain.cmake \
|
||||||
|
\
|
||||||
|
CMakeLists.txt \
|
||||||
|
CMake.README \
|
||||||
|
ConfigureChecks.cmake \
|
||||||
|
expat_config.h.cmake
|
||||||
|
|
||||||
|
_EXTRA_DIST_WINDOWS = \
|
||||||
|
win32/build_expat_iss.bat \
|
||||||
|
win32/expat.iss \
|
||||||
|
win32/MANIFEST.txt \
|
||||||
|
win32/README.txt
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
$(_EXTRA_DIST_CMAKE) \
|
||||||
|
$(_EXTRA_DIST_WINDOWS) \
|
||||||
|
\
|
||||||
|
conftools/expat.m4 \
|
||||||
|
conftools/get-version.sh \
|
||||||
|
conftools/PrintPath \
|
||||||
|
\
|
||||||
|
xmlwf/xmlwf_helpgen.py \
|
||||||
|
xmlwf/xmlwf_helpgen.sh \
|
||||||
|
\
|
||||||
|
Changes \
|
||||||
|
README.md \
|
||||||
|
\
|
||||||
|
fix-xmltest-log.sh \
|
||||||
|
test-driver-wrapper.sh
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: buildlib
|
||||||
|
buildlib:
|
||||||
|
@echo 'ERROR: Running "make buildlib LIBRARY=libexpatw.la"' >&2
|
||||||
|
@echo 'ERROR: is no longer supported. INSTEAD please:' >&2
|
||||||
|
@echo 'ERROR:' >&2
|
||||||
|
@echo 'ERROR: * Mass-patch Makefile.am, e.g.' >&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: -i {} +' >&2
|
||||||
|
@echo 'ERROR:' >&2
|
||||||
|
@echo 'ERROR: * Run automake to re-generate Makefile.in files' >&2
|
||||||
|
@echo 'ERROR:' >&2
|
||||||
|
@echo 'ERROR: * Use "./configure --without-xmlwf" and/or' >&2
|
||||||
|
@echo 'ERROR: "make -C lib all install" to bypass compilation' >&2
|
||||||
|
@echo 'ERROR: of xmlwf (e.g. with -DXML_UNICODE)' >&2
|
||||||
|
@echo 'ERROR:' >&2
|
||||||
|
@false
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: run-benchmark
|
||||||
|
run-benchmark:
|
||||||
|
$(MAKE) -C tests/benchmark
|
||||||
|
./run.sh tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/recset.xml 65535 3
|
||||||
|
|
||||||
|
.PHONY: download-xmlts-zip
|
||||||
|
download-xmlts-zip:
|
||||||
|
if test "$(XMLTS_ZIP)" = ""; then \
|
||||||
|
wget --output-document=tests/xmlts.zip \
|
||||||
|
https://www.w3.org/XML/Test/xmlts20080827.zip; \
|
||||||
|
else \
|
||||||
|
cp $(XMLTS_ZIP) tests/xmlts.zip; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
tests/xmlts.zip:
|
||||||
|
$(MAKE) download-xmlts-zip
|
||||||
|
|
||||||
|
.PHONY: extract-xmlts-zip
|
||||||
|
extract-xmlts-zip: tests/xmlts.zip
|
||||||
|
[ -f $(builddir)/tests/xmlts.zip ] || $(MAKE) download-xmlts-zip # vpath workaround
|
||||||
|
cd tests && unzip -q xmlts.zip
|
||||||
|
|
||||||
|
tests/xmlconf: tests/xmlts.zip
|
||||||
|
$(MAKE) extract-xmlts-zip
|
||||||
|
|
||||||
|
.PHONY: run-xmltest
|
||||||
|
run-xmltest: tests/xmlconf
|
||||||
|
if WITH_XMLWF
|
||||||
|
[ -d $(builddir)/tests/xmlconf ] || $(MAKE) extract-xmlts-zip # vpath workaround
|
||||||
|
$(MAKE) -C lib
|
||||||
|
$(MAKE) -C xmlwf
|
||||||
|
$(srcdir)/tests/xmltest.sh "$(abs_builddir)/run.sh $(abs_builddir)/xmlwf/xmlwf@EXEEXT@" 2>&1 | tee $(builddir)/tests/xmltest.log
|
||||||
|
$(srcdir)/fix-xmltest-log.sh $(builddir)/tests/xmltest.log
|
||||||
|
diff -u $(srcdir)/tests/xmltest.log.expected $(builddir)/tests/xmltest.log
|
||||||
|
else
|
||||||
|
@echo 'ERROR: xmlwf is needed for "make run-xmltest".' >&2
|
||||||
|
@echo 'ERROR: Please re-configure without --without-xmlwf.' >&2
|
||||||
|
@false
|
||||||
|
endif
|
||||||
|
|
||||||
|
.PHONY: qa
|
||||||
|
qa:
|
||||||
|
QA_COMPILER=clang QA_SANITIZER=address ./qa.sh
|
||||||
|
QA_COMPILER=clang QA_SANITIZER=memory ./qa.sh
|
||||||
|
QA_COMPILER=clang QA_SANITIZER=undefined ./qa.sh
|
||||||
|
QA_COMPILER=gcc QA_PROCESSOR=gcov ./qa.sh
|
1047
3rdparty/expat/Makefile.in
vendored
Normal file
1047
3rdparty/expat/Makefile.in
vendored
Normal file
File diff suppressed because it is too large
Load Diff
194
3rdparty/expat/README.md
vendored
Normal file
194
3rdparty/expat/README.md
vendored
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
[![Travis CI Build Status](https://travis-ci.org/libexpat/libexpat.svg?branch=master)](https://travis-ci.org/libexpat/libexpat)
|
||||||
|
[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/libexpat/libexpat?svg=true)](https://ci.appveyor.com/project/libexpat/libexpat)
|
||||||
|
[![Packaging status](https://repology.org/badge/tiny-repos/expat.svg)](https://repology.org/metapackage/expat/versions)
|
||||||
|
|
||||||
|
|
||||||
|
# Expat, Release 2.2.10
|
||||||
|
|
||||||
|
This is Expat, a C library for parsing XML, started by
|
||||||
|
[James Clark](https://en.wikipedia.org/wiki/James_Clark_(programmer)) in 1997.
|
||||||
|
Expat is a stream-oriented XML parser. This means that you register
|
||||||
|
handlers with the parser before starting the parse. These handlers
|
||||||
|
are called when the parser discovers the associated structures in the
|
||||||
|
document being parsed. A start tag is an example of the kind of
|
||||||
|
structures for which you may register handlers.
|
||||||
|
|
||||||
|
Expat supports the following compilers:
|
||||||
|
- GNU GCC >=4.5
|
||||||
|
- LLVM Clang >=3.5
|
||||||
|
- Microsoft Visual Studio >=9.0/2008
|
||||||
|
|
||||||
|
Windows users can use the
|
||||||
|
[`expat_win32` package](https://sourceforge.net/projects/expat/files/expat_win32/),
|
||||||
|
which includes both precompiled libraries and executables, and source code for
|
||||||
|
developers.
|
||||||
|
|
||||||
|
Expat is [free software](https://www.gnu.org/philosophy/free-sw.en.html).
|
||||||
|
You may copy, distribute, and modify it under the terms of the License
|
||||||
|
contained in the file
|
||||||
|
[`COPYING`](https://github.com/libexpat/libexpat/blob/master/expat/COPYING)
|
||||||
|
distributed with this package.
|
||||||
|
This license is the same as the MIT/X Consortium license.
|
||||||
|
|
||||||
|
If you are building Expat from a check-out from the
|
||||||
|
[Git repository](https://github.com/libexpat/libexpat/),
|
||||||
|
you need to run a script that generates the configure script using the
|
||||||
|
GNU autoconf and libtool tools. To do this, you need to have
|
||||||
|
autoconf 2.58 or newer. Run the script like this:
|
||||||
|
|
||||||
|
```console
|
||||||
|
./buildconf.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Once this has been done, follow the same instructions as for building
|
||||||
|
from a source distribution.
|
||||||
|
|
||||||
|
To build Expat from a source distribution, you first run the
|
||||||
|
configuration shell script in the top level distribution directory:
|
||||||
|
|
||||||
|
```console
|
||||||
|
./configure
|
||||||
|
```
|
||||||
|
|
||||||
|
There are many options which you may provide to configure (which you
|
||||||
|
can discover by running configure with the `--help` option). But the
|
||||||
|
one of most interest is the one that sets the installation directory.
|
||||||
|
By default, the configure script will set things up to install
|
||||||
|
libexpat into `/usr/local/lib`, `expat.h` into `/usr/local/include`, and
|
||||||
|
`xmlwf` into `/usr/local/bin`. If, for example, you'd prefer to install
|
||||||
|
into `/home/me/mystuff/lib`, `/home/me/mystuff/include`, and
|
||||||
|
`/home/me/mystuff/bin`, you can tell `configure` about that with:
|
||||||
|
|
||||||
|
```console
|
||||||
|
./configure --prefix=/home/me/mystuff
|
||||||
|
```
|
||||||
|
|
||||||
|
Another interesting option is to enable 64-bit integer support for
|
||||||
|
line and column numbers and the over-all byte index:
|
||||||
|
|
||||||
|
```console
|
||||||
|
./configure CPPFLAGS=-DXML_LARGE_SIZE
|
||||||
|
```
|
||||||
|
|
||||||
|
However, such a modification would be a breaking change to the ABI
|
||||||
|
and is therefore not recommended for general use — e.g. as part of
|
||||||
|
a Linux distribution — but rather for builds with special requirements.
|
||||||
|
|
||||||
|
After running the configure script, the `make` command will build
|
||||||
|
things and `make install` will install things into their proper
|
||||||
|
location. Have a look at the `Makefile` to learn about additional
|
||||||
|
`make` options. Note that you need to have write permission into
|
||||||
|
the directories into which things will be installed.
|
||||||
|
|
||||||
|
If you are interested in building Expat to provide document
|
||||||
|
information in UTF-16 encoding rather than the default UTF-8, follow
|
||||||
|
these instructions (after having run `make distclean`).
|
||||||
|
Please note that we configure with `--without-xmlwf` as xmlwf does not
|
||||||
|
support this mode of compilation (yet):
|
||||||
|
|
||||||
|
1. Mass-patch `Makefile.am` files to use `libexpatw.la` for a library name:
|
||||||
|
<br/>
|
||||||
|
`find -name Makefile.am -exec sed
|
||||||
|
-e 's,libexpat\.la,libexpatw.la,'
|
||||||
|
-e 's,libexpat_la,libexpatw_la,'
|
||||||
|
-i {} +`
|
||||||
|
|
||||||
|
1. Run `automake` to re-write `Makefile.in` files:<br/>
|
||||||
|
`automake`
|
||||||
|
|
||||||
|
1. For UTF-16 output as unsigned short (and version/error strings as char),
|
||||||
|
run:<br/>
|
||||||
|
`./configure CPPFLAGS=-DXML_UNICODE --without-xmlwf`<br/>
|
||||||
|
For UTF-16 output as `wchar_t` (incl. version/error strings), run:<br/>
|
||||||
|
`./configure CFLAGS="-g -O2 -fshort-wchar" CPPFLAGS=-DXML_UNICODE_WCHAR_T
|
||||||
|
--without-xmlwf`
|
||||||
|
<br/>Note: The latter requires libc compiled with `-fshort-wchar`, as well.
|
||||||
|
|
||||||
|
1. Run `make` (which excludes xmlwf).
|
||||||
|
|
||||||
|
1. Run `make install` (again, excludes xmlwf).
|
||||||
|
|
||||||
|
Using `DESTDIR` is supported. It works as follows:
|
||||||
|
|
||||||
|
```console
|
||||||
|
make install DESTDIR=/path/to/image
|
||||||
|
```
|
||||||
|
|
||||||
|
overrides the in-makefile set `DESTDIR`, because variable-setting priority is
|
||||||
|
|
||||||
|
1. commandline
|
||||||
|
1. in-makefile
|
||||||
|
1. environment
|
||||||
|
|
||||||
|
Note: This only applies to the Expat library itself, building UTF-16 versions
|
||||||
|
of xmlwf and the tests is currently not supported.
|
||||||
|
|
||||||
|
When using Expat with a project using autoconf for configuration, you
|
||||||
|
can use the probing macro in `conftools/expat.m4` to determine how to
|
||||||
|
include Expat. See the comments at the top of that file for more
|
||||||
|
information.
|
||||||
|
|
||||||
|
A reference manual is available in the file `doc/reference.html` in this
|
||||||
|
distribution.
|
||||||
|
|
||||||
|
|
||||||
|
The CMake build system is still *experimental* and will replace the primary
|
||||||
|
build system based on GNU Autotools at some point when it is ready.
|
||||||
|
For an idea of the available (non-advanced) options for building with CMake:
|
||||||
|
|
||||||
|
```console
|
||||||
|
# rm -f CMakeCache.txt ; cmake -D_EXPAT_HELP=ON -LH . | grep -B1 ':.*=' | sed 's,^--$,,'
|
||||||
|
// Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel ...
|
||||||
|
CMAKE_BUILD_TYPE:STRING=
|
||||||
|
|
||||||
|
// Install path prefix, prepended onto install directories.
|
||||||
|
CMAKE_INSTALL_PREFIX:PATH=/usr/local
|
||||||
|
|
||||||
|
// Path to a program.
|
||||||
|
DOCBOOK_TO_MAN:FILEPATH=/usr/bin/docbook2x-man
|
||||||
|
|
||||||
|
// build man page for xmlwf
|
||||||
|
EXPAT_BUILD_DOCS:BOOL=ON
|
||||||
|
|
||||||
|
// build the examples for expat library
|
||||||
|
EXPAT_BUILD_EXAMPLES:BOOL=ON
|
||||||
|
|
||||||
|
// build fuzzers for the expat library
|
||||||
|
EXPAT_BUILD_FUZZERS:BOOL=OFF
|
||||||
|
|
||||||
|
// build pkg-config file
|
||||||
|
EXPAT_BUILD_PKGCONFIG:BOOL=ON
|
||||||
|
|
||||||
|
// build the tests for expat library
|
||||||
|
EXPAT_BUILD_TESTS:BOOL=ON
|
||||||
|
|
||||||
|
// build the xmlwf tool for expat library
|
||||||
|
EXPAT_BUILD_TOOLS:BOOL=ON
|
||||||
|
|
||||||
|
// Character type to use (char|ushort|wchar_t) [default=char]
|
||||||
|
EXPAT_CHAR_TYPE:STRING=char
|
||||||
|
|
||||||
|
// install expat files in cmake install target
|
||||||
|
EXPAT_ENABLE_INSTALL:BOOL=ON
|
||||||
|
|
||||||
|
// Use /MT flag (static CRT) when compiling in MSVC
|
||||||
|
EXPAT_MSVC_STATIC_CRT:BOOL=OFF
|
||||||
|
|
||||||
|
// build fuzzers via ossfuzz for the expat library
|
||||||
|
EXPAT_OSSFUZZ_BUILD:BOOL=OFF
|
||||||
|
|
||||||
|
// build a shared expat library
|
||||||
|
EXPAT_SHARED_LIBS:BOOL=ON
|
||||||
|
|
||||||
|
// Treat all compiler warnings as errors
|
||||||
|
EXPAT_WARNINGS_AS_ERRORS:BOOL=OFF
|
||||||
|
|
||||||
|
// Make use of getrandom function (ON|OFF|AUTO) [default=AUTO]
|
||||||
|
EXPAT_WITH_GETRANDOM:STRING=AUTO
|
||||||
|
|
||||||
|
// utilize libbsd (for arc4random_buf)
|
||||||
|
EXPAT_WITH_LIBBSD:BOOL=OFF
|
||||||
|
|
||||||
|
// Make use of syscall SYS_getrandom (ON|OFF|AUTO) [default=AUTO]
|
||||||
|
EXPAT_WITH_SYS_GETRANDOM:STRING=AUTO
|
||||||
|
```
|
12
3rdparty/expat/acinclude.m4
vendored
Normal file
12
3rdparty/expat/acinclude.m4
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# acinclude.m4 --
|
||||||
|
#
|
||||||
|
|
||||||
|
m4_include(conftools/ax-require-defined.m4)
|
||||||
|
m4_include(conftools/ax-check-compile-flag.m4)
|
||||||
|
m4_include(conftools/ax-check-link-flag.m4)
|
||||||
|
m4_include(conftools/ax-append-flag.m4)
|
||||||
|
m4_include(conftools/ax-append-compile-flags.m4)
|
||||||
|
m4_include(conftools/ax-append-link-flags.m4)
|
||||||
|
m4_include(conftools/expatcfg-compiler-supports-visibility.m4)
|
||||||
|
|
||||||
|
### end of file
|
1203
3rdparty/expat/aclocal.m4
vendored
Normal file
1203
3rdparty/expat/aclocal.m4
vendored
Normal file
File diff suppressed because it is too large
Load Diff
75
3rdparty/expat/cmake/expat-config.cmake.in
vendored
Normal file
75
3rdparty/expat/cmake/expat-config.cmake.in
vendored
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2019 Expat development team
|
||||||
|
# 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(NOT _expat_config_included)
|
||||||
|
# Protect against multiple inclusion
|
||||||
|
set(_expat_config_included TRUE)
|
||||||
|
|
||||||
|
|
||||||
|
include("${CMAKE_CURRENT_LIST_DIR}/expat.cmake")
|
||||||
|
|
||||||
|
@PACKAGE_INIT@
|
||||||
|
|
||||||
|
#
|
||||||
|
# Supported components
|
||||||
|
#
|
||||||
|
macro(expat_register_component _NAME _AVAILABE)
|
||||||
|
set(expat_${_NAME}_FOUND ${_AVAILABE})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
expat_register_component(attr_info @EXPAT_ATTR_INFO@)
|
||||||
|
expat_register_component(dtd @EXPAT_DTD@)
|
||||||
|
expat_register_component(large_size @EXPAT_LARGE_SIZE@)
|
||||||
|
expat_register_component(min_size @EXPAT_MIN_SIZE@)
|
||||||
|
expat_register_component(ns @EXPAT_NS@)
|
||||||
|
|
||||||
|
if(@EXPAT_CONTEXT_BYTES@)
|
||||||
|
expat_register_component(context_bytes ON)
|
||||||
|
else()
|
||||||
|
expat_register_component(context_bytes OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if("@EXPAT_CHAR_TYPE@" STREQUAL "char")
|
||||||
|
expat_register_component(char ON)
|
||||||
|
expat_register_component(ushort OFF)
|
||||||
|
expat_register_component(wchar_t OFF)
|
||||||
|
elseif("@EXPAT_CHAR_TYPE@" STREQUAL "ushort")
|
||||||
|
expat_register_component(char OFF)
|
||||||
|
expat_register_component(ushort ON)
|
||||||
|
expat_register_component(wchar_t OFF)
|
||||||
|
elseif("@EXPAT_CHAR_TYPE@" STREQUAL "wchar_t")
|
||||||
|
expat_register_component(char OFF)
|
||||||
|
expat_register_component(ushort OFF)
|
||||||
|
expat_register_component(wchar_t ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
check_required_components(expat)
|
||||||
|
|
||||||
|
|
||||||
|
endif(NOT _expat_config_included)
|
36
3rdparty/expat/cmake/mingw-toolchain.cmake
vendored
Normal file
36
3rdparty/expat/cmake/mingw-toolchain.cmake
vendored
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2019 Expat development team
|
||||||
|
# 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(CMAKE_SYSTEM_NAME Windows)
|
||||||
|
|
||||||
|
set(CMAKE_C_COMPILER i686-w64-mingw32-gcc)
|
||||||
|
set(CMAKE_CXX_COMPILER i686-w64-mingw32-g++)
|
||||||
|
|
||||||
|
set(WIN32 ON)
|
||||||
|
set(MINGW ON)
|
21160
3rdparty/expat/configure
vendored
Executable file
21160
3rdparty/expat/configure
vendored
Executable file
File diff suppressed because it is too large
Load Diff
345
3rdparty/expat/configure.ac
vendored
Normal file
345
3rdparty/expat/configure.ac
vendored
Normal file
@ -0,0 +1,345 @@
|
|||||||
|
dnl configuration script for expat
|
||||||
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
|
dnl
|
||||||
|
dnl Copyright 2000 Clark Cooper
|
||||||
|
dnl
|
||||||
|
dnl This file is part of EXPAT.
|
||||||
|
dnl
|
||||||
|
dnl EXPAT is free software; you can redistribute it and/or modify it
|
||||||
|
dnl under the terms of the License (based on the MIT/X license) contained
|
||||||
|
dnl in the file COPYING that comes with this distribution.
|
||||||
|
dnl
|
||||||
|
|
||||||
|
dnl Ensure that Expat is configured with autoconf 2.69 or newer.
|
||||||
|
AC_PREREQ(2.69)
|
||||||
|
|
||||||
|
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 symbol holding the correct version number. AC_INIT() requires the
|
||||||
|
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 contained in ./configure.
|
||||||
|
dnl
|
||||||
|
dnl NOTE: esyscmd() is a GNU M4 extension. Thus, we wrap it in an appropriate
|
||||||
|
dnl test. I believe this test will work, but I don't have a place with non-
|
||||||
|
dnl GNU M4 to test it right now.
|
||||||
|
m4_define([expat_version],
|
||||||
|
m4_ifdef([__gnu__],
|
||||||
|
[esyscmd(conftools/get-version.sh lib/expat.h)],
|
||||||
|
[2.2.x]))
|
||||||
|
AC_INIT(expat, expat_version, expat-bugs@libexpat.org)
|
||||||
|
m4_undefine([expat_version])
|
||||||
|
|
||||||
|
AC_CONFIG_SRCDIR([Makefile.in])
|
||||||
|
AC_CONFIG_AUX_DIR([conftools])
|
||||||
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
|
AC_CANONICAL_HOST
|
||||||
|
AM_INIT_AUTOMAKE
|
||||||
|
|
||||||
|
|
||||||
|
dnl
|
||||||
|
dnl Increment LIBREVISION if source code has changed at all
|
||||||
|
dnl
|
||||||
|
dnl If the API has changed, increment LIBCURRENT and set LIBREVISION to 0
|
||||||
|
dnl
|
||||||
|
dnl If the API changes compatibly (i.e. simply adding a new function
|
||||||
|
dnl without changing or removing earlier interfaces), then increment LIBAGE.
|
||||||
|
dnl
|
||||||
|
dnl If the API changes incompatibly set LIBAGE back to 0
|
||||||
|
dnl
|
||||||
|
|
||||||
|
LIBCURRENT=7 # sync
|
||||||
|
LIBREVISION=12 # with
|
||||||
|
LIBAGE=6 # CMakeLists.txt!
|
||||||
|
|
||||||
|
AX_APPEND_FLAG([-DHAVE_EXPAT_CONFIG_H], [AM_CPPFLAGS])
|
||||||
|
AC_CONFIG_HEADER([expat_config.h])
|
||||||
|
|
||||||
|
AM_PROG_AR
|
||||||
|
AC_PROG_INSTALL
|
||||||
|
AC_PROG_LN_S
|
||||||
|
AC_PROG_MAKE_SET
|
||||||
|
|
||||||
|
LT_PREREQ([2.4])
|
||||||
|
LT_INIT([win32-dll])
|
||||||
|
|
||||||
|
AC_SUBST(LIBCURRENT)
|
||||||
|
AC_SUBST(LIBREVISION)
|
||||||
|
AC_SUBST(LIBAGE)
|
||||||
|
|
||||||
|
AC_LANG([C])
|
||||||
|
AC_PROG_CC_C99
|
||||||
|
|
||||||
|
AS_IF([test "$GCC" = yes],
|
||||||
|
[AX_APPEND_COMPILE_FLAGS([-Wall -Wextra], [AM_CFLAGS])
|
||||||
|
dnl Be careful about adding the -fexceptions option; some versions of
|
||||||
|
dnl GCC don't support it and it causes extra warnings that are only
|
||||||
|
dnl distracting; avoid.
|
||||||
|
AX_APPEND_COMPILE_FLAGS([-fexceptions], [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([-Wrestrict -Wnull-dereference -Wjump-misses-init -Wdouble-promotion], [AM_CFLAGS])
|
||||||
|
AX_APPEND_COMPILE_FLAGS([-Wshadow -Wformat=2 -Wmisleading-indentation], [AM_CFLAGS])])
|
||||||
|
|
||||||
|
AC_LANG_PUSH([C++])
|
||||||
|
AC_PROG_CXX
|
||||||
|
|
||||||
|
AS_IF([test "$GCC" = yes],
|
||||||
|
[AX_APPEND_COMPILE_FLAGS([-Wall -Wextra], [AM_CXXFLAGS])
|
||||||
|
dnl Be careful about adding the -fexceptions option; some versions of
|
||||||
|
dnl GCC don't support it and it causes extra warnings that are only
|
||||||
|
dnl distracting; avoid.
|
||||||
|
AX_APPEND_COMPILE_FLAGS([-fexceptions], [AM_CXXFLAGS])
|
||||||
|
AX_APPEND_COMPILE_FLAGS([-fno-strict-aliasing], [AM_CXXFLAGS])])
|
||||||
|
AC_LANG_POP([C++])
|
||||||
|
|
||||||
|
AS_IF([test "$GCC" = yes],
|
||||||
|
[AX_APPEND_LINK_FLAGS([-fno-strict-aliasing],[AM_LDFLAGS])])
|
||||||
|
|
||||||
|
dnl patching ${archive_cmds} to affect generation of file "libtool" to fix linking with clang (issue #312)
|
||||||
|
AS_CASE(["$LD"],[*clang*],
|
||||||
|
[AS_CASE(["${host_os}"],
|
||||||
|
[*linux*],[archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'])])
|
||||||
|
|
||||||
|
EXPATCFG_COMPILER_SUPPORTS_VISIBILITY([
|
||||||
|
AX_APPEND_FLAG([-fvisibility=hidden], [AM_CFLAGS])
|
||||||
|
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 We define BYTEORDER to 1234 when the platform is little endian; it
|
||||||
|
dnl defines it to 4321 when the platform is big endian. We also define
|
||||||
|
dnl WORDS_BIGENDIAN to 1 when the platform is big endian.
|
||||||
|
dnl
|
||||||
|
dnl A long time ago (early 2000 years) AC_C_BIGENDIAN was considered
|
||||||
|
dnl wrong when cross compiling, now (2018, GNU Autoconf 2.69) we assume
|
||||||
|
dnl it is fine.
|
||||||
|
AC_C_BIGENDIAN([AC_DEFINE([WORDS_BIGENDIAN], 1)
|
||||||
|
AS_VAR_SET([BYTEORDER], 4321)],
|
||||||
|
[AS_VAR_SET([BYTEORDER], 1234)])
|
||||||
|
AC_DEFINE_UNQUOTED([BYTEORDER], $BYTEORDER, [1234 = LILENDIAN, 4321 = BIGENDIAN])
|
||||||
|
|
||||||
|
AC_C_CONST
|
||||||
|
AC_TYPE_SIZE_T
|
||||||
|
|
||||||
|
AC_ARG_WITH([xmlwf],
|
||||||
|
[AS_HELP_STRING([--without-xmlwf], [do not build xmlwf])],
|
||||||
|
[],
|
||||||
|
[with_xmlwf=yes])
|
||||||
|
AM_CONDITIONAL([WITH_XMLWF], [test x${with_xmlwf} = xyes])
|
||||||
|
|
||||||
|
AC_ARG_WITH([examples],
|
||||||
|
[AS_HELP_STRING([--without-examples], [do not build examples @<:@default=included@:>@])],
|
||||||
|
[],
|
||||||
|
[with_examples=yes])
|
||||||
|
AM_CONDITIONAL([WITH_EXAMPLES], [test x${with_examples} = xyes])
|
||||||
|
|
||||||
|
AC_ARG_WITH([tests],
|
||||||
|
[AS_HELP_STRING([--without-tests], [do not build tests @<:@default=included@:>@])],
|
||||||
|
[],
|
||||||
|
[with_tests=yes])
|
||||||
|
AM_CONDITIONAL([WITH_TESTS], [test x${with_tests} = xyes])
|
||||||
|
|
||||||
|
|
||||||
|
AS_VAR_SET([EXPATCFG_ON_MINGW],[no])
|
||||||
|
AS_CASE("${host_os}",
|
||||||
|
[mingw*],
|
||||||
|
[AS_VAR_SET([EXPATCFG_ON_MINGW],[yes])
|
||||||
|
AC_MSG_NOTICE([detected OS: MinGW])])
|
||||||
|
AM_CONDITIONAL([MINGW], [test x${EXPATCFG_ON_MINGW} = xyes])
|
||||||
|
|
||||||
|
AM_CONDITIONAL([UNICODE], [echo -- "${CPPFLAGS}${CFLAGS}" | ${FGREP} XML_UNICODE >/dev/null])
|
||||||
|
|
||||||
|
|
||||||
|
AC_ARG_WITH([libbsd],
|
||||||
|
[AS_HELP_STRING([--with-libbsd], [utilize libbsd (for arc4random_buf)])],
|
||||||
|
[],
|
||||||
|
[with_libbsd=no])
|
||||||
|
AS_IF([test "x${with_libbsd}" != xno],
|
||||||
|
[AC_CHECK_LIB([bsd],
|
||||||
|
[arc4random_buf],
|
||||||
|
[],
|
||||||
|
[AS_IF([test "x${with_libbsd}" = xyes],
|
||||||
|
[AC_MSG_ERROR([Enforced use of libbsd cannot be satisfied.])])])])
|
||||||
|
AC_MSG_CHECKING([for arc4random_buf (BSD or libbsd)])
|
||||||
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
|
#include <stdlib.h> /* for arc4random_buf on BSD, for NULL */
|
||||||
|
#if defined(HAVE_LIBBSD)
|
||||||
|
# include <bsd/stdlib.h>
|
||||||
|
#endif
|
||||||
|
int main() {
|
||||||
|
arc4random_buf(NULL, 0U);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
])],
|
||||||
|
[AC_DEFINE([HAVE_ARC4RANDOM_BUF], [1], [Define to 1 if you have the `arc4random_buf' function.])
|
||||||
|
AC_MSG_RESULT([yes])],
|
||||||
|
[AC_MSG_RESULT([no])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([for arc4random (BSD, macOS or libbsd)])
|
||||||
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
|
#if defined(HAVE_LIBBSD)
|
||||||
|
# include <bsd/stdlib.h>
|
||||||
|
#else
|
||||||
|
# include <stdlib.h>
|
||||||
|
#endif
|
||||||
|
int main() {
|
||||||
|
arc4random();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
])],
|
||||||
|
[AC_DEFINE([HAVE_ARC4RANDOM], [1], [Define to 1 if you have the `arc4random' function.])
|
||||||
|
AC_MSG_RESULT([yes])],
|
||||||
|
[AC_MSG_RESULT([no])])])
|
||||||
|
|
||||||
|
AC_ARG_WITH([getrandom],
|
||||||
|
[AS_HELP_STRING([--with-getrandom],
|
||||||
|
[enforce the use of getrandom function in the system @<:@default=check@:>@])
|
||||||
|
AS_HELP_STRING([--without-getrandom],
|
||||||
|
[skip auto detect of getrandom @<:@default=check@:>@])],
|
||||||
|
[],
|
||||||
|
[with_getrandom=check])
|
||||||
|
|
||||||
|
AS_IF([test "x$with_getrandom" != xno],
|
||||||
|
[AC_MSG_CHECKING([for getrandom (Linux 3.17+, glibc 2.25+)])
|
||||||
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
|
#include <stdlib.h> /* for NULL */
|
||||||
|
#include <sys/random.h>
|
||||||
|
int main() {
|
||||||
|
return getrandom(NULL, 0U, 0U);
|
||||||
|
}
|
||||||
|
])],
|
||||||
|
[AC_DEFINE([HAVE_GETRANDOM], [1], [Define to 1 if you have the `getrandom' function.])
|
||||||
|
AC_MSG_RESULT([yes])],
|
||||||
|
[AC_MSG_RESULT([no])
|
||||||
|
AS_IF([test "x$with_getrandom" = xyes],
|
||||||
|
[AC_MSG_ERROR([enforced the use of getrandom --with-getrandom, but not detected])])])])
|
||||||
|
|
||||||
|
AC_ARG_WITH([sys_getrandom],
|
||||||
|
[AS_HELP_STRING([--with-sys-getrandom],
|
||||||
|
[enforce the use of syscall SYS_getrandom function in the system @<:@default=check@:>@])
|
||||||
|
AS_HELP_STRING([--without-sys-getrandom],
|
||||||
|
[skip auto detect of syscall SYS_getrandom @<:@default=check@:>@])],
|
||||||
|
[],
|
||||||
|
[with_sys_getrandom=check])
|
||||||
|
|
||||||
|
AS_IF([test "x$with_sys_getrandom" != xno],
|
||||||
|
[AC_MSG_CHECKING([for syscall SYS_getrandom (Linux 3.17+)])
|
||||||
|
AC_LINK_IFELSE([AC_LANG_SOURCE([
|
||||||
|
#include <stdlib.h> /* for NULL */
|
||||||
|
#include <unistd.h> /* for syscall */
|
||||||
|
#include <sys/syscall.h> /* for SYS_getrandom */
|
||||||
|
int main() {
|
||||||
|
syscall(SYS_getrandom, NULL, 0, 0);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
])],
|
||||||
|
[AC_DEFINE([HAVE_SYSCALL_GETRANDOM], [1], [Define to 1 if you have `syscall' and `SYS_getrandom'.])
|
||||||
|
AC_MSG_RESULT([yes])],
|
||||||
|
[AC_MSG_RESULT([no])
|
||||||
|
AS_IF([test "x$with_sys_getrandom" = xyes],
|
||||||
|
[AC_MSG_ERROR([enforced the use of syscall SYS_getrandom --with-sys-getrandom, but not detected])])])])
|
||||||
|
|
||||||
|
dnl Only needed for xmlwf:
|
||||||
|
AC_CHECK_HEADERS(fcntl.h unistd.h)
|
||||||
|
AC_TYPE_OFF_T
|
||||||
|
AC_FUNC_MMAP
|
||||||
|
|
||||||
|
AS_IF([test "$ac_cv_func_mmap_fixed_mapped" = "yes"],
|
||||||
|
[AS_VAR_SET(FILEMAP,unixfilemap)],
|
||||||
|
[AS_VAR_SET(FILEMAP,readfilemap)])
|
||||||
|
AC_SUBST(FILEMAP)
|
||||||
|
|
||||||
|
|
||||||
|
dnl Some basic configuration:
|
||||||
|
AC_DEFINE([XML_NS], 1,
|
||||||
|
[Define to make XML Namespaces functionality available.])
|
||||||
|
AC_DEFINE([XML_DTD], 1,
|
||||||
|
[Define to make parameter entity parsing functionality available.])
|
||||||
|
AC_DEFINE([XML_DEV_URANDOM], 1,
|
||||||
|
[Define to include code reading entropy from `/dev/urandom'.])
|
||||||
|
|
||||||
|
AC_ARG_ENABLE([xml-attr-info],
|
||||||
|
[AS_HELP_STRING([--enable-xml-attr-info],
|
||||||
|
[Enable retrieving the byte offsets for attribute names and values @<:@default=no@:>@])],
|
||||||
|
[],
|
||||||
|
[enable_xml_attr_info=no])
|
||||||
|
AS_IF([test "x${enable_xml_attr_info}" = "xyes"],
|
||||||
|
[AC_DEFINE([XML_ATTR_INFO], 1,
|
||||||
|
[Define to allow retrieving the byte offsets for attribute names and values.])])
|
||||||
|
|
||||||
|
AC_ARG_ENABLE([xml-context],
|
||||||
|
AS_HELP_STRING([--enable-xml-context @<:@COUNT@:>@],
|
||||||
|
[Retain context around the current parse point;
|
||||||
|
default is enabled and a size of 1024 bytes])
|
||||||
|
AS_HELP_STRING([--disable-xml-context],
|
||||||
|
[Do not retain context around the current parse point]),
|
||||||
|
[enable_xml_context=${enableval}])
|
||||||
|
AS_IF([test "x${enable_xml_context}" != "xno"],
|
||||||
|
[AS_IF([test "x${enable_xml_context}" = "xyes" \
|
||||||
|
-o "x${enable_xml_context}" = "x"],
|
||||||
|
[AS_VAR_SET(enable_xml_context,1024)])
|
||||||
|
AC_DEFINE_UNQUOTED([XML_CONTEXT_BYTES], [${enable_xml_context}],
|
||||||
|
[Define to specify how much context to retain around the current parse point.])])
|
||||||
|
|
||||||
|
AC_ARG_WITH([docbook],
|
||||||
|
[AS_HELP_STRING([--with-docbook],
|
||||||
|
[enforce XML to man page compilation @<:@default=check@:>@])
|
||||||
|
AS_HELP_STRING([--without-docbook],
|
||||||
|
[skip XML to man page compilation @<:@default=check@:>@])],
|
||||||
|
[],
|
||||||
|
[with_docbook=check])
|
||||||
|
|
||||||
|
AC_ARG_VAR([DOCBOOK_TO_MAN], [docbook2x-man command])
|
||||||
|
AS_IF([test "x$with_docbook" != xno],
|
||||||
|
[AC_CHECK_PROGS([DOCBOOK_TO_MAN], [docbook2x-man db2x_docbook2man docbook2man docbook-to-man])])
|
||||||
|
AS_IF([test "x${DOCBOOK_TO_MAN}" = x -a "x$with_docbook" = xyes],
|
||||||
|
[AC_MSG_ERROR([Required program 'docbook2x-man' not found.])])
|
||||||
|
AS_IF([test "x${DOCBOOK_TO_MAN}" != x -a "x$with_docbook" != xno],
|
||||||
|
[AS_IF([${DOCBOOK_TO_MAN} --help | grep -i -q -F sgmlbase],
|
||||||
|
[AC_MSG_ERROR([Your local ${DOCBOOK_TO_MAN} was found to work with SGML rather
|
||||||
|
than XML. Please install docbook2X and use variable DOCBOOK_TO_MAN to point
|
||||||
|
configure to command docbook2x-man of docbook2X.
|
||||||
|
Or use DOCBOOK_TO_MAN="xmlto man --skip-validation" if you have xmlto around.
|
||||||
|
You can also configure using --without-docbook if you can do without a man
|
||||||
|
page for xmlwf.])])])
|
||||||
|
|
||||||
|
AM_CONDITIONAL(WITH_DOCBOOK, [test "x${DOCBOOK_TO_MAN}" != x])
|
||||||
|
|
||||||
|
dnl write the Automake flags we set
|
||||||
|
AC_SUBST([AM_CPPFLAGS])
|
||||||
|
AC_SUBST([AM_CFLAGS])
|
||||||
|
AC_SUBST([AM_CXXFLAGS])
|
||||||
|
AC_SUBST([AM_LDFLAGS])
|
||||||
|
|
||||||
|
dnl updating _EXPAT_OUTPUT_NAME variable to effect the package name in expat.pc file (issue #361)
|
||||||
|
AC_SUBST(_EXPAT_OUTPUT_NAME, ["$PACKAGE_NAME"])
|
||||||
|
|
||||||
|
AC_CONFIG_FILES([Makefile]
|
||||||
|
[expat.pc]
|
||||||
|
[doc/Makefile]
|
||||||
|
[examples/Makefile]
|
||||||
|
[lib/Makefile]
|
||||||
|
[tests/Makefile]
|
||||||
|
[tests/benchmark/Makefile]
|
||||||
|
[xmlwf/Makefile])
|
||||||
|
AC_CONFIG_FILES([run.sh], [chmod +x run.sh])
|
||||||
|
AC_OUTPUT
|
||||||
|
|
||||||
|
|
||||||
|
AC_MSG_NOTICE([
|
||||||
|
|
||||||
|
Automake flags (can be overridden by user flags):
|
||||||
|
[AM_CPPFLAGS]: ${AM_CPPFLAGS}
|
||||||
|
[AM_CFLAGS]: ${AM_CFLAGS}
|
||||||
|
[AM_CXXFLAGS]: ${AM_CXXFLAGS}
|
||||||
|
[AM_LDFLAGS]: ${AM_LDFLAGS}
|
||||||
|
|
||||||
|
User flags (override Automake flags on conflict):
|
||||||
|
CPPFLAGS: ${CPPFLAGS}
|
||||||
|
CFLAGS: ${CFLAGS}
|
||||||
|
CXXFLAGS: ${CXXFLAGS}
|
||||||
|
LDFLAGS: ${LDFLAGS}])
|
116
3rdparty/expat/conftools/PrintPath
vendored
Executable file
116
3rdparty/expat/conftools/PrintPath
vendored
Executable file
@ -0,0 +1,116 @@
|
|||||||
|
#!/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
|
||||||
|
|
271
3rdparty/expat/conftools/ar-lib
vendored
Executable file
271
3rdparty/expat/conftools/ar-lib
vendored
Executable file
@ -0,0 +1,271 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# Wrapper for Microsoft lib.exe
|
||||||
|
|
||||||
|
me=ar-lib
|
||||||
|
scriptversion=2019-07-04.01; # UTC
|
||||||
|
|
||||||
|
# Copyright (C) 2010-2020 Free Software Foundation, Inc.
|
||||||
|
# Written by Peter Rosin <peda@lysator.liu.se>.
|
||||||
|
#
|
||||||
|
# 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
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# As a special exception to the GNU General Public License, if you
|
||||||
|
# distribute this file as part of a program that contains a
|
||||||
|
# configuration script generated by Autoconf, you may include it under
|
||||||
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
# This file is maintained in Automake, please report
|
||||||
|
# bugs to <bug-automake@gnu.org> or send patches to
|
||||||
|
# <automake-patches@gnu.org>.
|
||||||
|
|
||||||
|
|
||||||
|
# func_error message
|
||||||
|
func_error ()
|
||||||
|
{
|
||||||
|
echo "$me: $1" 1>&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
file_conv=
|
||||||
|
|
||||||
|
# func_file_conv build_file
|
||||||
|
# Convert a $build file to $host form and store it in $file
|
||||||
|
# Currently only supports Windows hosts.
|
||||||
|
func_file_conv ()
|
||||||
|
{
|
||||||
|
file=$1
|
||||||
|
case $file in
|
||||||
|
/ | /[!/]*) # absolute file, and not a UNC file
|
||||||
|
if test -z "$file_conv"; then
|
||||||
|
# lazily determine how to convert abs files
|
||||||
|
case `uname -s` in
|
||||||
|
MINGW*)
|
||||||
|
file_conv=mingw
|
||||||
|
;;
|
||||||
|
CYGWIN* | MSYS*)
|
||||||
|
file_conv=cygwin
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
file_conv=wine
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
case $file_conv in
|
||||||
|
mingw)
|
||||||
|
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
|
||||||
|
;;
|
||||||
|
cygwin | msys)
|
||||||
|
file=`cygpath -m "$file" || echo "$file"`
|
||||||
|
;;
|
||||||
|
wine)
|
||||||
|
file=`winepath -w "$file" || echo "$file"`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
# func_at_file at_file operation archive
|
||||||
|
# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE
|
||||||
|
# for each of them.
|
||||||
|
# When interpreting the content of the @FILE, do NOT use func_file_conv,
|
||||||
|
# since the user would need to supply preconverted file names to
|
||||||
|
# binutils ar, at least for MinGW.
|
||||||
|
func_at_file ()
|
||||||
|
{
|
||||||
|
operation=$2
|
||||||
|
archive=$3
|
||||||
|
at_file_contents=`cat "$1"`
|
||||||
|
eval set x "$at_file_contents"
|
||||||
|
shift
|
||||||
|
|
||||||
|
for member
|
||||||
|
do
|
||||||
|
$AR -NOLOGO $operation:"$member" "$archive" || exit $?
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
'')
|
||||||
|
func_error "no command. Try '$0 --help' for more information."
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<EOF
|
||||||
|
Usage: $me [--help] [--version] PROGRAM ACTION ARCHIVE [MEMBER...]
|
||||||
|
|
||||||
|
Members may be specified in a file named with @FILE.
|
||||||
|
EOF
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "$me, version $scriptversion"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if test $# -lt 3; then
|
||||||
|
func_error "you must specify a program, an action and an archive"
|
||||||
|
fi
|
||||||
|
|
||||||
|
AR=$1
|
||||||
|
shift
|
||||||
|
while :
|
||||||
|
do
|
||||||
|
if test $# -lt 2; then
|
||||||
|
func_error "you must specify a program, an action and an archive"
|
||||||
|
fi
|
||||||
|
case $1 in
|
||||||
|
-lib | -LIB \
|
||||||
|
| -ltcg | -LTCG \
|
||||||
|
| -machine* | -MACHINE* \
|
||||||
|
| -subsystem* | -SUBSYSTEM* \
|
||||||
|
| -verbose | -VERBOSE \
|
||||||
|
| -wx* | -WX* )
|
||||||
|
AR="$AR $1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
action=$1
|
||||||
|
shift
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
orig_archive=$1
|
||||||
|
shift
|
||||||
|
func_file_conv "$orig_archive"
|
||||||
|
archive=$file
|
||||||
|
|
||||||
|
# strip leading dash in $action
|
||||||
|
action=${action#-}
|
||||||
|
|
||||||
|
delete=
|
||||||
|
extract=
|
||||||
|
list=
|
||||||
|
quick=
|
||||||
|
replace=
|
||||||
|
index=
|
||||||
|
create=
|
||||||
|
|
||||||
|
while test -n "$action"
|
||||||
|
do
|
||||||
|
case $action in
|
||||||
|
d*) delete=yes ;;
|
||||||
|
x*) extract=yes ;;
|
||||||
|
t*) list=yes ;;
|
||||||
|
q*) quick=yes ;;
|
||||||
|
r*) replace=yes ;;
|
||||||
|
s*) index=yes ;;
|
||||||
|
S*) ;; # the index is always updated implicitly
|
||||||
|
c*) create=yes ;;
|
||||||
|
u*) ;; # TODO: don't ignore the update modifier
|
||||||
|
v*) ;; # TODO: don't ignore the verbose modifier
|
||||||
|
*)
|
||||||
|
func_error "unknown action specified"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
action=${action#?}
|
||||||
|
done
|
||||||
|
|
||||||
|
case $delete$extract$list$quick$replace,$index in
|
||||||
|
yes,* | ,yes)
|
||||||
|
;;
|
||||||
|
yesyes*)
|
||||||
|
func_error "more than one action specified"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
func_error "no action specified"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if test -n "$delete"; then
|
||||||
|
if test ! -f "$orig_archive"; then
|
||||||
|
func_error "archive not found"
|
||||||
|
fi
|
||||||
|
for member
|
||||||
|
do
|
||||||
|
case $1 in
|
||||||
|
@*)
|
||||||
|
func_at_file "${1#@}" -REMOVE "$archive"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
func_file_conv "$1"
|
||||||
|
$AR -NOLOGO -REMOVE:"$file" "$archive" || exit $?
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
elif test -n "$extract"; then
|
||||||
|
if test ! -f "$orig_archive"; then
|
||||||
|
func_error "archive not found"
|
||||||
|
fi
|
||||||
|
if test $# -gt 0; then
|
||||||
|
for member
|
||||||
|
do
|
||||||
|
case $1 in
|
||||||
|
@*)
|
||||||
|
func_at_file "${1#@}" -EXTRACT "$archive"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
func_file_conv "$1"
|
||||||
|
$AR -NOLOGO -EXTRACT:"$file" "$archive" || exit $?
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
else
|
||||||
|
$AR -NOLOGO -LIST "$archive" | tr -d '\r' | sed -e 's/\\/\\\\/g' \
|
||||||
|
| while read member
|
||||||
|
do
|
||||||
|
$AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
elif test -n "$quick$replace"; then
|
||||||
|
if test ! -f "$orig_archive"; then
|
||||||
|
if test -z "$create"; then
|
||||||
|
echo "$me: creating $orig_archive"
|
||||||
|
fi
|
||||||
|
orig_archive=
|
||||||
|
else
|
||||||
|
orig_archive=$archive
|
||||||
|
fi
|
||||||
|
|
||||||
|
for member
|
||||||
|
do
|
||||||
|
case $1 in
|
||||||
|
@*)
|
||||||
|
func_file_conv "${1#@}"
|
||||||
|
set x "$@" "@$file"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
func_file_conv "$1"
|
||||||
|
set x "$@" "$file"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if test -n "$orig_archive"; then
|
||||||
|
$AR -NOLOGO -OUT:"$archive" "$orig_archive" "$@" || exit $?
|
||||||
|
else
|
||||||
|
$AR -NOLOGO -OUT:"$archive" "$@" || exit $?
|
||||||
|
fi
|
||||||
|
|
||||||
|
elif test -n "$list"; then
|
||||||
|
if test ! -f "$orig_archive"; then
|
||||||
|
func_error "archive not found"
|
||||||
|
fi
|
||||||
|
$AR -NOLOGO -LIST "$archive" || exit $?
|
||||||
|
fi
|
46
3rdparty/expat/conftools/ax-append-compile-flags.m4
vendored
Normal file
46
3rdparty/expat/conftools/ax-append-compile-flags.m4
vendored
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# ============================================================================
|
||||||
|
# https://www.gnu.org/software/autoconf-archive/ax_append_compile_flags.html
|
||||||
|
# ============================================================================
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# AX_APPEND_COMPILE_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS], [INPUT])
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# For every FLAG1, FLAG2 it is checked whether the compiler works with the
|
||||||
|
# flag. If it does, the flag is added FLAGS-VARIABLE
|
||||||
|
#
|
||||||
|
# If FLAGS-VARIABLE is not specified, the current language's flags (e.g.
|
||||||
|
# CFLAGS) is used. During the check the flag is always added to the
|
||||||
|
# current language's flags.
|
||||||
|
#
|
||||||
|
# If EXTRA-FLAGS is defined, it is added to the current language's default
|
||||||
|
# flags (e.g. CFLAGS) when the check is done. The check is thus made with
|
||||||
|
# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
|
||||||
|
# force the compiler to issue an error when a bad flag is given.
|
||||||
|
#
|
||||||
|
# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
|
||||||
|
#
|
||||||
|
# NOTE: This macro depends on the AX_APPEND_FLAG and
|
||||||
|
# AX_CHECK_COMPILE_FLAG. Please keep this macro in sync with
|
||||||
|
# AX_APPEND_LINK_FLAGS.
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
||||||
|
#
|
||||||
|
# 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 7
|
||||||
|
|
||||||
|
AC_DEFUN([AX_APPEND_COMPILE_FLAGS],
|
||||||
|
[AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG])
|
||||||
|
AX_REQUIRE_DEFINED([AX_APPEND_FLAG])
|
||||||
|
for flag in $1; do
|
||||||
|
AX_CHECK_COMPILE_FLAG([$flag], [AX_APPEND_FLAG([$flag], [$2])], [], [$3], [$4])
|
||||||
|
done
|
||||||
|
])dnl AX_APPEND_COMPILE_FLAGS
|
50
3rdparty/expat/conftools/ax-append-flag.m4
vendored
Normal file
50
3rdparty/expat/conftools/ax-append-flag.m4
vendored
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
# ===========================================================================
|
||||||
|
# https://www.gnu.org/software/autoconf-archive/ax_append_flag.html
|
||||||
|
# ===========================================================================
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# AX_APPEND_FLAG(FLAG, [FLAGS-VARIABLE])
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# FLAG is appended to the FLAGS-VARIABLE shell variable, with a space
|
||||||
|
# added in between.
|
||||||
|
#
|
||||||
|
# If FLAGS-VARIABLE is not specified, the current language's flags (e.g.
|
||||||
|
# CFLAGS) is used. FLAGS-VARIABLE is not changed if it already contains
|
||||||
|
# FLAG. If FLAGS-VARIABLE is unset in the shell, it is set to exactly
|
||||||
|
# FLAG.
|
||||||
|
#
|
||||||
|
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION.
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
|
||||||
|
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
||||||
|
#
|
||||||
|
# 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 8
|
||||||
|
|
||||||
|
AC_DEFUN([AX_APPEND_FLAG],
|
||||||
|
[dnl
|
||||||
|
AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_SET_IF
|
||||||
|
AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])])
|
||||||
|
AS_VAR_SET_IF(FLAGS,[
|
||||||
|
AS_CASE([" AS_VAR_GET(FLAGS) "],
|
||||||
|
[*" $1 "*], [AC_RUN_LOG([: FLAGS already contains $1])],
|
||||||
|
[
|
||||||
|
AS_VAR_APPEND(FLAGS,[" $1"])
|
||||||
|
AC_RUN_LOG([: FLAGS="$FLAGS"])
|
||||||
|
])
|
||||||
|
],
|
||||||
|
[
|
||||||
|
AS_VAR_SET(FLAGS,[$1])
|
||||||
|
AC_RUN_LOG([: FLAGS="$FLAGS"])
|
||||||
|
])
|
||||||
|
AS_VAR_POPDEF([FLAGS])dnl
|
||||||
|
])dnl AX_APPEND_FLAG
|
44
3rdparty/expat/conftools/ax-append-link-flags.m4
vendored
Normal file
44
3rdparty/expat/conftools/ax-append-link-flags.m4
vendored
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# ===========================================================================
|
||||||
|
# https://www.gnu.org/software/autoconf-archive/ax_append_link_flags.html
|
||||||
|
# ===========================================================================
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# AX_APPEND_LINK_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS], [INPUT])
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# For every FLAG1, FLAG2 it is checked whether the linker works with the
|
||||||
|
# flag. If it does, the flag is added FLAGS-VARIABLE
|
||||||
|
#
|
||||||
|
# If FLAGS-VARIABLE is not specified, the linker's flags (LDFLAGS) is
|
||||||
|
# used. During the check the flag is always added to the linker's flags.
|
||||||
|
#
|
||||||
|
# If EXTRA-FLAGS is defined, it is added to the linker's default flags
|
||||||
|
# when the check is done. The check is thus made with the flags: "LDFLAGS
|
||||||
|
# EXTRA-FLAGS FLAG". This can for example be used to force the linker to
|
||||||
|
# issue an error when a bad flag is given.
|
||||||
|
#
|
||||||
|
# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
|
||||||
|
#
|
||||||
|
# NOTE: This macro depends on the AX_APPEND_FLAG and AX_CHECK_LINK_FLAG.
|
||||||
|
# Please keep this macro in sync with AX_APPEND_COMPILE_FLAGS.
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
||||||
|
#
|
||||||
|
# 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 7
|
||||||
|
|
||||||
|
AC_DEFUN([AX_APPEND_LINK_FLAGS],
|
||||||
|
[AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG])
|
||||||
|
AX_REQUIRE_DEFINED([AX_APPEND_FLAG])
|
||||||
|
for flag in $1; do
|
||||||
|
AX_CHECK_LINK_FLAG([$flag], [AX_APPEND_FLAG([$flag], [m4_default([$2], [LDFLAGS])])], [], [$3], [$4])
|
||||||
|
done
|
||||||
|
])dnl AX_APPEND_LINK_FLAGS
|
77
3rdparty/expat/conftools/ax-check-compile-flag.m4
vendored
Normal file
77
3rdparty/expat/conftools/ax-check-compile-flag.m4
vendored
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
# ===========================================================================
|
||||||
|
# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
|
||||||
|
# ===========================================================================
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# Check whether the given FLAG plus -Werror works with the current
|
||||||
|
# language's compiler — C or C++ — or gives an error.
|
||||||
|
#
|
||||||
|
# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
|
||||||
|
# success/failure.
|
||||||
|
#
|
||||||
|
# If EXTRA-FLAGS is defined, it is added to the current language's default
|
||||||
|
# flags (e.g. CFLAGS) when the check is done. The check is thus made with
|
||||||
|
# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
|
||||||
|
# force the compiler to issue an error when a bad flag is given.
|
||||||
|
#
|
||||||
|
# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
|
||||||
|
#
|
||||||
|
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
|
||||||
|
# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
|
||||||
|
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
||||||
|
# Copyright (c) 2020 Sebastian Pipping <sebastian@pipping.org>
|
||||||
|
#
|
||||||
|
# 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 the
|
||||||
|
# Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
# option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||||
|
# Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License along
|
||||||
|
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
# As a special exception, the respective Autoconf Macro's copyright owner
|
||||||
|
# gives unlimited permission to copy, distribute and modify the configure
|
||||||
|
# scripts that are the output of Autoconf when processing the Macro. You
|
||||||
|
# need not follow the terms of the GNU General Public License when using
|
||||||
|
# or distributing such scripts, even though portions of the text of the
|
||||||
|
# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||||
|
# all other use of the material that constitutes the Autoconf Macro.
|
||||||
|
#
|
||||||
|
# This special exception to the GPL applies to versions of the Autoconf
|
||||||
|
# Macro released by the Autoconf Archive. When you make and distribute a
|
||||||
|
# modified version of the Autoconf Macro, you may extend this special
|
||||||
|
# exception to the GPL to apply to your modified version as well.
|
||||||
|
|
||||||
|
#serial 6
|
||||||
|
|
||||||
|
AC_DEFUN([AX_CHECK_COMPILE_FLAG],
|
||||||
|
[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
|
||||||
|
AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
|
||||||
|
AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
|
||||||
|
ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
|
||||||
|
_AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 -Werror $1"
|
||||||
|
AC_COMPILE_IFELSE([m4_default([$5],
|
||||||
|
[AC_LANG_SOURCE(
|
||||||
|
[[int main(void) { return 0; }]])])],
|
||||||
|
[AS_VAR_SET(CACHEVAR,[yes])],
|
||||||
|
[AS_VAR_SET(CACHEVAR,[no])])
|
||||||
|
_AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
|
||||||
|
AS_VAR_IF(CACHEVAR,yes,
|
||||||
|
[m4_default([$2], :)],
|
||||||
|
[m4_default([$3], :)])
|
||||||
|
AS_VAR_POPDEF([CACHEVAR])dnl
|
||||||
|
])dnl AX_CHECK_COMPILE_FLAGS
|
53
3rdparty/expat/conftools/ax-check-link-flag.m4
vendored
Normal file
53
3rdparty/expat/conftools/ax-check-link-flag.m4
vendored
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
# ===========================================================================
|
||||||
|
# https://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html
|
||||||
|
# ===========================================================================
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# Check whether the given FLAG works with the linker or gives an error.
|
||||||
|
# (Warnings, however, are ignored)
|
||||||
|
#
|
||||||
|
# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
|
||||||
|
# success/failure.
|
||||||
|
#
|
||||||
|
# If EXTRA-FLAGS is defined, it is added to the linker's default flags
|
||||||
|
# when the check is done. The check is thus made with the flags: "LDFLAGS
|
||||||
|
# EXTRA-FLAGS FLAG". This can for example be used to force the linker to
|
||||||
|
# issue an error when a bad flag is given.
|
||||||
|
#
|
||||||
|
# INPUT gives an alternative input source to AC_LINK_IFELSE.
|
||||||
|
#
|
||||||
|
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
|
||||||
|
# macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG.
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
|
||||||
|
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
||||||
|
#
|
||||||
|
# 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 6
|
||||||
|
|
||||||
|
AC_DEFUN([AX_CHECK_LINK_FLAG],
|
||||||
|
[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
|
||||||
|
AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl
|
||||||
|
AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [
|
||||||
|
ax_check_save_flags=$LDFLAGS
|
||||||
|
LDFLAGS="$LDFLAGS $4 $1"
|
||||||
|
AC_LINK_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
|
||||||
|
[AS_VAR_SET(CACHEVAR,[yes])],
|
||||||
|
[AS_VAR_SET(CACHEVAR,[no])])
|
||||||
|
LDFLAGS=$ax_check_save_flags])
|
||||||
|
AS_VAR_IF(CACHEVAR,yes,
|
||||||
|
[m4_default([$2], :)],
|
||||||
|
[m4_default([$3], :)])
|
||||||
|
AS_VAR_POPDEF([CACHEVAR])dnl
|
||||||
|
])dnl AX_CHECK_LINK_FLAGS
|
37
3rdparty/expat/conftools/ax-require-defined.m4
vendored
Normal file
37
3rdparty/expat/conftools/ax-require-defined.m4
vendored
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
# ===========================================================================
|
||||||
|
# https://www.gnu.org/software/autoconf-archive/ax_require_defined.html
|
||||||
|
# ===========================================================================
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# AX_REQUIRE_DEFINED(MACRO)
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# AX_REQUIRE_DEFINED is a simple helper for making sure other macros have
|
||||||
|
# been defined and thus are available for use. This avoids random issues
|
||||||
|
# where a macro isn't expanded. Instead the configure script emits a
|
||||||
|
# non-fatal:
|
||||||
|
#
|
||||||
|
# ./configure: line 1673: AX_CFLAGS_WARN_ALL: command not found
|
||||||
|
#
|
||||||
|
# It's like AC_REQUIRE except it doesn't expand the required macro.
|
||||||
|
#
|
||||||
|
# Here's an example:
|
||||||
|
#
|
||||||
|
# AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG])
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2014 Mike Frysinger <vapier@gentoo.org>
|
||||||
|
#
|
||||||
|
# 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 2
|
||||||
|
|
||||||
|
AC_DEFUN([AX_REQUIRE_DEFINED], [dnl
|
||||||
|
m4_ifndef([$1], [m4_fatal([macro ]$1[ is not defined; is a m4 file missing?])])
|
||||||
|
])dnl AX_REQUIRE_DEFINED
|
348
3rdparty/expat/conftools/compile
vendored
Executable file
348
3rdparty/expat/conftools/compile
vendored
Executable file
@ -0,0 +1,348 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# Wrapper for compilers which do not understand '-c -o'.
|
||||||
|
|
||||||
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
|
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
||||||
|
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||||
|
#
|
||||||
|
# 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
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# As a special exception to the GNU General Public License, if you
|
||||||
|
# distribute this file as part of a program that contains a
|
||||||
|
# configuration script generated by Autoconf, you may include it under
|
||||||
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
# This file is maintained in Automake, please report
|
||||||
|
# bugs to <bug-automake@gnu.org> or send patches to
|
||||||
|
# <automake-patches@gnu.org>.
|
||||||
|
|
||||||
|
nl='
|
||||||
|
'
|
||||||
|
|
||||||
|
# We need space, tab and new line, in precisely that order. Quoting is
|
||||||
|
# there to prevent tools from complaining about whitespace usage.
|
||||||
|
IFS=" "" $nl"
|
||||||
|
|
||||||
|
file_conv=
|
||||||
|
|
||||||
|
# func_file_conv build_file lazy
|
||||||
|
# Convert a $build file to $host form and store it in $file
|
||||||
|
# Currently only supports Windows hosts. If the determined conversion
|
||||||
|
# type is listed in (the comma separated) LAZY, no conversion will
|
||||||
|
# take place.
|
||||||
|
func_file_conv ()
|
||||||
|
{
|
||||||
|
file=$1
|
||||||
|
case $file in
|
||||||
|
/ | /[!/]*) # absolute file, and not a UNC file
|
||||||
|
if test -z "$file_conv"; then
|
||||||
|
# lazily determine how to convert abs files
|
||||||
|
case `uname -s` in
|
||||||
|
MINGW*)
|
||||||
|
file_conv=mingw
|
||||||
|
;;
|
||||||
|
CYGWIN* | MSYS*)
|
||||||
|
file_conv=cygwin
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
file_conv=wine
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
case $file_conv/,$2, in
|
||||||
|
*,$file_conv,*)
|
||||||
|
;;
|
||||||
|
mingw/*)
|
||||||
|
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
|
||||||
|
;;
|
||||||
|
cygwin/* | msys/*)
|
||||||
|
file=`cygpath -m "$file" || echo "$file"`
|
||||||
|
;;
|
||||||
|
wine/*)
|
||||||
|
file=`winepath -w "$file" || echo "$file"`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
# func_cl_dashL linkdir
|
||||||
|
# Make cl look for libraries in LINKDIR
|
||||||
|
func_cl_dashL ()
|
||||||
|
{
|
||||||
|
func_file_conv "$1"
|
||||||
|
if test -z "$lib_path"; then
|
||||||
|
lib_path=$file
|
||||||
|
else
|
||||||
|
lib_path="$lib_path;$file"
|
||||||
|
fi
|
||||||
|
linker_opts="$linker_opts -LIBPATH:$file"
|
||||||
|
}
|
||||||
|
|
||||||
|
# func_cl_dashl library
|
||||||
|
# Do a library search-path lookup for cl
|
||||||
|
func_cl_dashl ()
|
||||||
|
{
|
||||||
|
lib=$1
|
||||||
|
found=no
|
||||||
|
save_IFS=$IFS
|
||||||
|
IFS=';'
|
||||||
|
for dir in $lib_path $LIB
|
||||||
|
do
|
||||||
|
IFS=$save_IFS
|
||||||
|
if $shared && test -f "$dir/$lib.dll.lib"; then
|
||||||
|
found=yes
|
||||||
|
lib=$dir/$lib.dll.lib
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
if test -f "$dir/$lib.lib"; then
|
||||||
|
found=yes
|
||||||
|
lib=$dir/$lib.lib
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
if test -f "$dir/lib$lib.a"; then
|
||||||
|
found=yes
|
||||||
|
lib=$dir/lib$lib.a
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
IFS=$save_IFS
|
||||||
|
|
||||||
|
if test "$found" != yes; then
|
||||||
|
lib=$lib.lib
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# func_cl_wrapper cl arg...
|
||||||
|
# Adjust compile command to suit cl
|
||||||
|
func_cl_wrapper ()
|
||||||
|
{
|
||||||
|
# Assume a capable shell
|
||||||
|
lib_path=
|
||||||
|
shared=:
|
||||||
|
linker_opts=
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
if test -n "$eat"; then
|
||||||
|
eat=
|
||||||
|
else
|
||||||
|
case $1 in
|
||||||
|
-o)
|
||||||
|
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||||
|
eat=1
|
||||||
|
case $2 in
|
||||||
|
*.o | *.[oO][bB][jJ])
|
||||||
|
func_file_conv "$2"
|
||||||
|
set x "$@" -Fo"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
func_file_conv "$2"
|
||||||
|
set x "$@" -Fe"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
-I)
|
||||||
|
eat=1
|
||||||
|
func_file_conv "$2" mingw
|
||||||
|
set x "$@" -I"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-I*)
|
||||||
|
func_file_conv "${1#-I}" mingw
|
||||||
|
set x "$@" -I"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-l)
|
||||||
|
eat=1
|
||||||
|
func_cl_dashl "$2"
|
||||||
|
set x "$@" "$lib"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-l*)
|
||||||
|
func_cl_dashl "${1#-l}"
|
||||||
|
set x "$@" "$lib"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-L)
|
||||||
|
eat=1
|
||||||
|
func_cl_dashL "$2"
|
||||||
|
;;
|
||||||
|
-L*)
|
||||||
|
func_cl_dashL "${1#-L}"
|
||||||
|
;;
|
||||||
|
-static)
|
||||||
|
shared=false
|
||||||
|
;;
|
||||||
|
-Wl,*)
|
||||||
|
arg=${1#-Wl,}
|
||||||
|
save_ifs="$IFS"; IFS=','
|
||||||
|
for flag in $arg; do
|
||||||
|
IFS="$save_ifs"
|
||||||
|
linker_opts="$linker_opts $flag"
|
||||||
|
done
|
||||||
|
IFS="$save_ifs"
|
||||||
|
;;
|
||||||
|
-Xlinker)
|
||||||
|
eat=1
|
||||||
|
linker_opts="$linker_opts $2"
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
|
||||||
|
func_file_conv "$1"
|
||||||
|
set x "$@" -Tp"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
|
||||||
|
func_file_conv "$1" mingw
|
||||||
|
set x "$@" "$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
if test -n "$linker_opts"; then
|
||||||
|
linker_opts="-link$linker_opts"
|
||||||
|
fi
|
||||||
|
exec "$@" $linker_opts
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
eat=
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
'')
|
||||||
|
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||||
|
exit 1;
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<\EOF
|
||||||
|
Usage: compile [--help] [--version] PROGRAM [ARGS]
|
||||||
|
|
||||||
|
Wrapper for compilers which do not understand '-c -o'.
|
||||||
|
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
|
||||||
|
arguments, and rename the output as expected.
|
||||||
|
|
||||||
|
If you are trying to build a whole package this is not the
|
||||||
|
right script to run: please start by reading the file 'INSTALL'.
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>.
|
||||||
|
EOF
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "compile $scriptversion"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
|
||||||
|
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
|
||||||
|
func_cl_wrapper "$@" # Doesn't return...
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
ofile=
|
||||||
|
cfile=
|
||||||
|
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
if test -n "$eat"; then
|
||||||
|
eat=
|
||||||
|
else
|
||||||
|
case $1 in
|
||||||
|
-o)
|
||||||
|
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||||
|
# So we strip '-o arg' only if arg is an object.
|
||||||
|
eat=1
|
||||||
|
case $2 in
|
||||||
|
*.o | *.obj)
|
||||||
|
ofile=$2
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set x "$@" -o "$2"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
*.c)
|
||||||
|
cfile=$1
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if test -z "$ofile" || test -z "$cfile"; then
|
||||||
|
# If no '-o' option was seen then we might have been invoked from a
|
||||||
|
# pattern rule where we don't need one. That is ok -- this is a
|
||||||
|
# normal compilation that the losing compiler can handle. If no
|
||||||
|
# '.c' file was seen then we are probably linking. That is also
|
||||||
|
# ok.
|
||||||
|
exec "$@"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Name of file we expect compiler to create.
|
||||||
|
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
|
||||||
|
|
||||||
|
# Create the lock directory.
|
||||||
|
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
|
||||||
|
# that we are using for the .o file. Also, base the name on the expected
|
||||||
|
# object file name, since that is what matters with a parallel build.
|
||||||
|
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
|
||||||
|
while true; do
|
||||||
|
if mkdir "$lockdir" >/dev/null 2>&1; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
# FIXME: race condition here if user kills between mkdir and trap.
|
||||||
|
trap "rmdir '$lockdir'; exit 1" 1 2 15
|
||||||
|
|
||||||
|
# Run the compile.
|
||||||
|
"$@"
|
||||||
|
ret=$?
|
||||||
|
|
||||||
|
if test -f "$cofile"; then
|
||||||
|
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
|
||||||
|
elif test -f "${cofile}bj"; then
|
||||||
|
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
|
||||||
|
fi
|
||||||
|
|
||||||
|
rmdir "$lockdir"
|
||||||
|
exit $ret
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC0"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
1676
3rdparty/expat/conftools/config.guess
vendored
Executable file
1676
3rdparty/expat/conftools/config.guess
vendored
Executable file
File diff suppressed because it is too large
Load Diff
1814
3rdparty/expat/conftools/config.sub
vendored
Executable file
1814
3rdparty/expat/conftools/config.sub
vendored
Executable file
File diff suppressed because it is too large
Load Diff
791
3rdparty/expat/conftools/depcomp
vendored
Executable file
791
3rdparty/expat/conftools/depcomp
vendored
Executable file
@ -0,0 +1,791 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# depcomp - compile a program generating dependencies as side-effects
|
||||||
|
|
||||||
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
|
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# As a special exception to the GNU General Public License, if you
|
||||||
|
# distribute this file as part of a program that contains a
|
||||||
|
# configuration script generated by Autoconf, you may include it under
|
||||||
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
'')
|
||||||
|
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||||
|
exit 1;
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<\EOF
|
||||||
|
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
||||||
|
|
||||||
|
Run PROGRAMS ARGS to compile a file, generating dependencies
|
||||||
|
as side-effects.
|
||||||
|
|
||||||
|
Environment variables:
|
||||||
|
depmode Dependency tracking mode.
|
||||||
|
source Source file read by 'PROGRAMS ARGS'.
|
||||||
|
object Object file output by 'PROGRAMS ARGS'.
|
||||||
|
DEPDIR directory where to store dependencies.
|
||||||
|
depfile Dependency file to output.
|
||||||
|
tmpdepfile Temporary file to use when outputting dependencies.
|
||||||
|
libtool Whether libtool is used (yes/no).
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>.
|
||||||
|
EOF
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "depcomp $scriptversion"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Get the directory component of the given path, and save it in the
|
||||||
|
# global variables '$dir'. Note that this directory component will
|
||||||
|
# be either empty or ending with a '/' character. This is deliberate.
|
||||||
|
set_dir_from ()
|
||||||
|
{
|
||||||
|
case $1 in
|
||||||
|
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
|
||||||
|
*) dir=;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
# Get the suffix-stripped basename of the given path, and save it the
|
||||||
|
# global variable '$base'.
|
||||||
|
set_base_from ()
|
||||||
|
{
|
||||||
|
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
|
||||||
|
}
|
||||||
|
|
||||||
|
# If no dependency file was actually created by the compiler invocation,
|
||||||
|
# we still have to create a dummy depfile, to avoid errors with the
|
||||||
|
# Makefile "include basename.Plo" scheme.
|
||||||
|
make_dummy_depfile ()
|
||||||
|
{
|
||||||
|
echo "#dummy" > "$depfile"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Factor out some common post-processing of the generated depfile.
|
||||||
|
# Requires the auxiliary global variable '$tmpdepfile' to be set.
|
||||||
|
aix_post_process_depfile ()
|
||||||
|
{
|
||||||
|
# If the compiler actually managed to produce a dependency file,
|
||||||
|
# post-process it.
|
||||||
|
if test -f "$tmpdepfile"; then
|
||||||
|
# Each line is of the form 'foo.o: dependency.h'.
|
||||||
|
# Do two passes, one to just change these to
|
||||||
|
# $object: dependency.h
|
||||||
|
# and one to simply output
|
||||||
|
# dependency.h:
|
||||||
|
# which is needed to avoid the deleted-header problem.
|
||||||
|
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
|
||||||
|
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
|
||||||
|
} > "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
else
|
||||||
|
make_dummy_depfile
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# A tabulation character.
|
||||||
|
tab=' '
|
||||||
|
# A newline character.
|
||||||
|
nl='
|
||||||
|
'
|
||||||
|
# Character ranges might be problematic outside the C locale.
|
||||||
|
# These definitions help.
|
||||||
|
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||||
|
lower=abcdefghijklmnopqrstuvwxyz
|
||||||
|
digits=0123456789
|
||||||
|
alpha=${upper}${lower}
|
||||||
|
|
||||||
|
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
||||||
|
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
|
||||||
|
depfile=${depfile-`echo "$object" |
|
||||||
|
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
|
||||||
|
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
||||||
|
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
|
||||||
|
# Avoid interferences from the environment.
|
||||||
|
gccflag= dashmflag=
|
||||||
|
|
||||||
|
# Some modes work just like other modes, but use different flags. We
|
||||||
|
# parameterize here, but still list the modes in the big case below,
|
||||||
|
# to make depend.m4 easier to write. Note that we *cannot* use a case
|
||||||
|
# here, because this file can only contain one case statement.
|
||||||
|
if test "$depmode" = hp; then
|
||||||
|
# HP compiler uses -M and no extra arg.
|
||||||
|
gccflag=-M
|
||||||
|
depmode=gcc
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$depmode" = dashXmstdout; then
|
||||||
|
# This is just like dashmstdout with a different argument.
|
||||||
|
dashmflag=-xM
|
||||||
|
depmode=dashmstdout
|
||||||
|
fi
|
||||||
|
|
||||||
|
cygpath_u="cygpath -u -f -"
|
||||||
|
if test "$depmode" = msvcmsys; then
|
||||||
|
# This is just like msvisualcpp but w/o cygpath translation.
|
||||||
|
# Just convert the backslash-escaped backslashes to single forward
|
||||||
|
# slashes to satisfy depend.m4
|
||||||
|
cygpath_u='sed s,\\\\,/,g'
|
||||||
|
depmode=msvisualcpp
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$depmode" = msvc7msys; then
|
||||||
|
# This is just like msvc7 but w/o cygpath translation.
|
||||||
|
# Just convert the backslash-escaped backslashes to single forward
|
||||||
|
# slashes to satisfy depend.m4
|
||||||
|
cygpath_u='sed s,\\\\,/,g'
|
||||||
|
depmode=msvc7
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$depmode" = xlc; then
|
||||||
|
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
|
||||||
|
gccflag=-qmakedep=gcc,-MF
|
||||||
|
depmode=gcc
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$depmode" in
|
||||||
|
gcc3)
|
||||||
|
## gcc 3 implements dependency tracking that does exactly what
|
||||||
|
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
|
||||||
|
## it if -MD -MP comes after the -MF stuff. Hmm.
|
||||||
|
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
|
||||||
|
## the command line argument order; so add the flags where they
|
||||||
|
## appear in depend2.am. Note that the slowdown incurred here
|
||||||
|
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
|
||||||
|
*) set fnord "$@" "$arg" ;;
|
||||||
|
esac
|
||||||
|
shift # fnord
|
||||||
|
shift # $arg
|
||||||
|
done
|
||||||
|
"$@"
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
mv "$tmpdepfile" "$depfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
gcc)
|
||||||
|
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
|
||||||
|
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
|
||||||
|
## (see the conditional assignment to $gccflag above).
|
||||||
|
## There are various ways to get dependency output from gcc. Here's
|
||||||
|
## why we pick this rather obscure method:
|
||||||
|
## - Don't want to use -MD because we'd like the dependencies to end
|
||||||
|
## up in a subdir. Having to rename by hand is ugly.
|
||||||
|
## (We might end up doing this anyway to support other compilers.)
|
||||||
|
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
|
||||||
|
## -MM, not -M (despite what the docs say). Also, it might not be
|
||||||
|
## supported by the other compilers which use the 'gcc' depmode.
|
||||||
|
## - Using -M directly means running the compiler twice (even worse
|
||||||
|
## than renaming).
|
||||||
|
if test -z "$gccflag"; then
|
||||||
|
gccflag=-MD,
|
||||||
|
fi
|
||||||
|
"$@" -Wp,"$gccflag$tmpdepfile"
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
# The second -e expression handles DOS-style file names with drive
|
||||||
|
# letters.
|
||||||
|
sed -e 's/^[^:]*: / /' \
|
||||||
|
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
|
||||||
|
## This next piece of magic avoids the "deleted header file" problem.
|
||||||
|
## The problem is that when a header file which appears in a .P file
|
||||||
|
## is deleted, the dependency causes make to die (because there is
|
||||||
|
## typically no way to rebuild the header). We avoid this by adding
|
||||||
|
## dummy dependencies for each header file. Too bad gcc doesn't do
|
||||||
|
## this for us directly.
|
||||||
|
## Some versions of gcc put a space before the ':'. On the theory
|
||||||
|
## that the space means something, we add a space to the output as
|
||||||
|
## well. hp depmode also adds that space, but also prefixes the VPATH
|
||||||
|
## to the object. Take care to not repeat it in the output.
|
||||||
|
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||||
|
## correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
hp)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
sgi)
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
"$@" "-Wp,-MDupdate,$tmpdepfile"
|
||||||
|
else
|
||||||
|
"$@" -MDupdate "$tmpdepfile"
|
||||||
|
fi
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
|
||||||
|
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
# Clip off the initial element (the dependent). Don't try to be
|
||||||
|
# clever and replace this with sed code, as IRIX sed won't handle
|
||||||
|
# lines with more than a fixed number of characters (4096 in
|
||||||
|
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
|
||||||
|
# the IRIX cc adds comments like '#:fec' to the end of the
|
||||||
|
# dependency line.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
|
||||||
|
| tr "$nl" ' ' >> "$depfile"
|
||||||
|
echo >> "$depfile"
|
||||||
|
# The second pass generates a dummy entry for each header file.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
|
||||||
|
>> "$depfile"
|
||||||
|
else
|
||||||
|
make_dummy_depfile
|
||||||
|
fi
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
xlc)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
aix)
|
||||||
|
# The C for AIX Compiler uses -M and outputs the dependencies
|
||||||
|
# in a .u file. In older versions, this file always lives in the
|
||||||
|
# current directory. Also, the AIX compiler puts '$object:' at the
|
||||||
|
# start of each line; $object doesn't have directory information.
|
||||||
|
# Version 6 uses the directory in both cases.
|
||||||
|
set_dir_from "$object"
|
||||||
|
set_base_from "$object"
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
tmpdepfile1=$dir$base.u
|
||||||
|
tmpdepfile2=$base.u
|
||||||
|
tmpdepfile3=$dir.libs/$base.u
|
||||||
|
"$@" -Wc,-M
|
||||||
|
else
|
||||||
|
tmpdepfile1=$dir$base.u
|
||||||
|
tmpdepfile2=$dir$base.u
|
||||||
|
tmpdepfile3=$dir$base.u
|
||||||
|
"$@" -M
|
||||||
|
fi
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
|
||||||
|
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
do
|
||||||
|
test -f "$tmpdepfile" && break
|
||||||
|
done
|
||||||
|
aix_post_process_depfile
|
||||||
|
;;
|
||||||
|
|
||||||
|
tcc)
|
||||||
|
# tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
|
||||||
|
# FIXME: That version still under development at the moment of writing.
|
||||||
|
# Make that this statement remains true also for stable, released
|
||||||
|
# versions.
|
||||||
|
# It will wrap lines (doesn't matter whether long or short) with a
|
||||||
|
# trailing '\', as in:
|
||||||
|
#
|
||||||
|
# foo.o : \
|
||||||
|
# foo.c \
|
||||||
|
# foo.h \
|
||||||
|
#
|
||||||
|
# It will put a trailing '\' even on the last line, and will use leading
|
||||||
|
# spaces rather than leading tabs (at least since its commit 0394caf7
|
||||||
|
# "Emit spaces for -MD").
|
||||||
|
"$@" -MD -MF "$tmpdepfile"
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
|
||||||
|
# We have to change lines of the first kind to '$object: \'.
|
||||||
|
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
|
||||||
|
# And for each line of the second kind, we have to emit a 'dep.h:'
|
||||||
|
# dummy dependency, to avoid the deleted-header problem.
|
||||||
|
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
## The order of this option in the case statement is important, since the
|
||||||
|
## shell code in configure will try each of these formats in the order
|
||||||
|
## listed in this file. A plain '-MD' option would be understood by many
|
||||||
|
## compilers, so we must ensure this comes after the gcc and icc options.
|
||||||
|
pgcc)
|
||||||
|
# Portland's C compiler understands '-MD'.
|
||||||
|
# Will always output deps to 'file.d' where file is the root name of the
|
||||||
|
# source file under compilation, even if file resides in a subdirectory.
|
||||||
|
# The object file name does not affect the name of the '.d' file.
|
||||||
|
# pgcc 10.2 will output
|
||||||
|
# foo.o: sub/foo.c sub/foo.h
|
||||||
|
# and will wrap long lines using '\' :
|
||||||
|
# foo.o: sub/foo.c ... \
|
||||||
|
# sub/foo.h ... \
|
||||||
|
# ...
|
||||||
|
set_dir_from "$object"
|
||||||
|
# Use the source, not the object, to determine the base name, since
|
||||||
|
# that's sadly what pgcc will do too.
|
||||||
|
set_base_from "$source"
|
||||||
|
tmpdepfile=$base.d
|
||||||
|
|
||||||
|
# For projects that build the same source file twice into different object
|
||||||
|
# files, the pgcc approach of using the *source* file root name can cause
|
||||||
|
# problems in parallel builds. Use a locking strategy to avoid stomping on
|
||||||
|
# the same $tmpdepfile.
|
||||||
|
lockdir=$base.d-lock
|
||||||
|
trap "
|
||||||
|
echo '$0: caught signal, cleaning up...' >&2
|
||||||
|
rmdir '$lockdir'
|
||||||
|
exit 1
|
||||||
|
" 1 2 13 15
|
||||||
|
numtries=100
|
||||||
|
i=$numtries
|
||||||
|
while test $i -gt 0; do
|
||||||
|
# mkdir is a portable test-and-set.
|
||||||
|
if mkdir "$lockdir" 2>/dev/null; then
|
||||||
|
# This process acquired the lock.
|
||||||
|
"$@" -MD
|
||||||
|
stat=$?
|
||||||
|
# Release the lock.
|
||||||
|
rmdir "$lockdir"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
# If the lock is being held by a different process, wait
|
||||||
|
# until the winning process is done or we timeout.
|
||||||
|
while test -d "$lockdir" && test $i -gt 0; do
|
||||||
|
sleep 1
|
||||||
|
i=`expr $i - 1`
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
i=`expr $i - 1`
|
||||||
|
done
|
||||||
|
trap - 1 2 13 15
|
||||||
|
if test $i -le 0; then
|
||||||
|
echo "$0: failed to acquire lock after $numtries attempts" >&2
|
||||||
|
echo "$0: check lockdir '$lockdir'" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
# Each line is of the form `foo.o: dependent.h',
|
||||||
|
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
|
||||||
|
# Do two passes, one to just change these to
|
||||||
|
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||||
|
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
|
||||||
|
# Some versions of the HPUX 10.20 sed can't process this invocation
|
||||||
|
# correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
hp2)
|
||||||
|
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
|
||||||
|
# compilers, which have integrated preprocessors. The correct option
|
||||||
|
# to use with these is +Maked; it writes dependencies to a file named
|
||||||
|
# 'foo.d', which lands next to the object file, wherever that
|
||||||
|
# happens to be.
|
||||||
|
# Much of this is similar to the tru64 case; see comments there.
|
||||||
|
set_dir_from "$object"
|
||||||
|
set_base_from "$object"
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
tmpdepfile1=$dir$base.d
|
||||||
|
tmpdepfile2=$dir.libs/$base.d
|
||||||
|
"$@" -Wc,+Maked
|
||||||
|
else
|
||||||
|
tmpdepfile1=$dir$base.d
|
||||||
|
tmpdepfile2=$dir$base.d
|
||||||
|
"$@" +Maked
|
||||||
|
fi
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
|
||||||
|
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
|
||||||
|
do
|
||||||
|
test -f "$tmpdepfile" && break
|
||||||
|
done
|
||||||
|
if test -f "$tmpdepfile"; then
|
||||||
|
sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
|
||||||
|
# Add 'dependent.h:' lines.
|
||||||
|
sed -ne '2,${
|
||||||
|
s/^ *//
|
||||||
|
s/ \\*$//
|
||||||
|
s/$/:/
|
||||||
|
p
|
||||||
|
}' "$tmpdepfile" >> "$depfile"
|
||||||
|
else
|
||||||
|
make_dummy_depfile
|
||||||
|
fi
|
||||||
|
rm -f "$tmpdepfile" "$tmpdepfile2"
|
||||||
|
;;
|
||||||
|
|
||||||
|
tru64)
|
||||||
|
# The Tru64 compiler uses -MD to generate dependencies as a side
|
||||||
|
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
|
||||||
|
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
|
||||||
|
# dependencies in 'foo.d' instead, so we check for that too.
|
||||||
|
# Subdirectories are respected.
|
||||||
|
set_dir_from "$object"
|
||||||
|
set_base_from "$object"
|
||||||
|
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
# Libtool generates 2 separate objects for the 2 libraries. These
|
||||||
|
# two compilations output dependencies in $dir.libs/$base.o.d and
|
||||||
|
# in $dir$base.o.d. We have to check for both files, because
|
||||||
|
# one of the two compilations can be disabled. We should prefer
|
||||||
|
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
||||||
|
# automatically cleaned when .libs/ is deleted, while ignoring
|
||||||
|
# the former would cause a distcleancheck panic.
|
||||||
|
tmpdepfile1=$dir$base.o.d # libtool 1.5
|
||||||
|
tmpdepfile2=$dir.libs/$base.o.d # Likewise.
|
||||||
|
tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
|
||||||
|
"$@" -Wc,-MD
|
||||||
|
else
|
||||||
|
tmpdepfile1=$dir$base.d
|
||||||
|
tmpdepfile2=$dir$base.d
|
||||||
|
tmpdepfile3=$dir$base.d
|
||||||
|
"$@" -MD
|
||||||
|
fi
|
||||||
|
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
|
||||||
|
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
do
|
||||||
|
test -f "$tmpdepfile" && break
|
||||||
|
done
|
||||||
|
# Same post-processing that is required for AIX mode.
|
||||||
|
aix_post_process_depfile
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvc7)
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
showIncludes=-Wc,-showIncludes
|
||||||
|
else
|
||||||
|
showIncludes=-showIncludes
|
||||||
|
fi
|
||||||
|
"$@" $showIncludes > "$tmpdepfile"
|
||||||
|
stat=$?
|
||||||
|
grep -v '^Note: including file: ' "$tmpdepfile"
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
# The first sed program below extracts the file names and escapes
|
||||||
|
# backslashes for cygpath. The second sed program outputs the file
|
||||||
|
# name when reading, but also accumulates all include files in the
|
||||||
|
# hold buffer in order to output them again at the end. This only
|
||||||
|
# works with sed implementations that can handle large buffers.
|
||||||
|
sed < "$tmpdepfile" -n '
|
||||||
|
/^Note: including file: *\(.*\)/ {
|
||||||
|
s//\1/
|
||||||
|
s/\\/\\\\/g
|
||||||
|
p
|
||||||
|
}' | $cygpath_u | sort -u | sed -n '
|
||||||
|
s/ /\\ /g
|
||||||
|
s/\(.*\)/'"$tab"'\1 \\/p
|
||||||
|
s/.\(.*\) \\/\1:/
|
||||||
|
H
|
||||||
|
$ {
|
||||||
|
s/.*/'"$tab"'/
|
||||||
|
G
|
||||||
|
p
|
||||||
|
}' >> "$depfile"
|
||||||
|
echo >> "$depfile" # make sure the fragment doesn't end with a backslash
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvc7msys)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
#nosideeffect)
|
||||||
|
# This comment above is used by automake to tell side-effect
|
||||||
|
# dependency tracking mechanisms from slower ones.
|
||||||
|
|
||||||
|
dashmstdout)
|
||||||
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
|
# always write the preprocessed file to stdout, regardless of -o.
|
||||||
|
"$@" || exit $?
|
||||||
|
|
||||||
|
# Remove the call to Libtool.
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove '-o $object'.
|
||||||
|
IFS=" "
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
$object)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"
|
||||||
|
shift # fnord
|
||||||
|
shift # $arg
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
test -z "$dashmflag" && dashmflag=-M
|
||||||
|
# Require at least two characters before searching for ':'
|
||||||
|
# in the target name. This is to cope with DOS-style filenames:
|
||||||
|
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
|
||||||
|
"$@" $dashmflag |
|
||||||
|
sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
|
||||||
|
rm -f "$depfile"
|
||||||
|
cat < "$tmpdepfile" > "$depfile"
|
||||||
|
# Some versions of the HPUX 10.20 sed can't process this sed invocation
|
||||||
|
# correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
dashXmstdout)
|
||||||
|
# This case only exists to satisfy depend.m4. It is never actually
|
||||||
|
# run, as this mode is specially recognized in the preamble.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
makedepend)
|
||||||
|
"$@" || exit $?
|
||||||
|
# Remove any Libtool call
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
# X makedepend
|
||||||
|
shift
|
||||||
|
cleared=no eat=no
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $cleared in
|
||||||
|
no)
|
||||||
|
set ""; shift
|
||||||
|
cleared=yes ;;
|
||||||
|
esac
|
||||||
|
if test $eat = yes; then
|
||||||
|
eat=no
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
case "$arg" in
|
||||||
|
-D*|-I*)
|
||||||
|
set fnord "$@" "$arg"; shift ;;
|
||||||
|
# Strip any option that makedepend may not understand. Remove
|
||||||
|
# the object too, otherwise makedepend will parse it as a source file.
|
||||||
|
-arch)
|
||||||
|
eat=yes ;;
|
||||||
|
-*|$object)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"; shift ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
obj_suffix=`echo "$object" | sed 's/^.*\././'`
|
||||||
|
touch "$tmpdepfile"
|
||||||
|
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
|
||||||
|
rm -f "$depfile"
|
||||||
|
# makedepend may prepend the VPATH from the source file name to the object.
|
||||||
|
# No need to regex-escape $object, excess matching of '.' is harmless.
|
||||||
|
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
|
||||||
|
# Some versions of the HPUX 10.20 sed can't process the last invocation
|
||||||
|
# correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
sed '1,2d' "$tmpdepfile" \
|
||||||
|
| tr ' ' "$nl" \
|
||||||
|
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile" "$tmpdepfile".bak
|
||||||
|
;;
|
||||||
|
|
||||||
|
cpp)
|
||||||
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
|
# always write the preprocessed file to stdout.
|
||||||
|
"$@" || exit $?
|
||||||
|
|
||||||
|
# Remove the call to Libtool.
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove '-o $object'.
|
||||||
|
IFS=" "
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
$object)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"
|
||||||
|
shift # fnord
|
||||||
|
shift # $arg
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
"$@" -E \
|
||||||
|
| sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||||
|
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||||
|
| sed '$ s: \\$::' > "$tmpdepfile"
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
cat < "$tmpdepfile" >> "$depfile"
|
||||||
|
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvisualcpp)
|
||||||
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
|
# always write the preprocessed file to stdout.
|
||||||
|
"$@" || exit $?
|
||||||
|
|
||||||
|
# Remove the call to Libtool.
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
|
IFS=" "
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case "$arg" in
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
$object)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
|
||||||
|
set fnord "$@"
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
"$@" -E 2>/dev/null |
|
||||||
|
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
|
||||||
|
echo "$tab" >> "$depfile"
|
||||||
|
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvcmsys)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
none)
|
||||||
|
exec "$@"
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "Unknown depmode $depmode" 1>&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC0"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
43
3rdparty/expat/conftools/expat.m4
vendored
Normal file
43
3rdparty/expat/conftools/expat.m4
vendored
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
dnl Check if --with-expat[=PREFIX] is specified and
|
||||||
|
dnl Expat >= 1.95.0 is installed in the system.
|
||||||
|
dnl If yes, substitute EXPAT_CFLAGS, EXPAT_LIBS with regard to
|
||||||
|
dnl the specified PREFIX and set with_expat to PREFIX, or 'yes' if PREFIX
|
||||||
|
dnl has not been specified. Also HAVE_LIBEXPAT, HAVE_EXPAT_H are defined.
|
||||||
|
dnl If --with-expat has not been specified, set with_expat to 'no'.
|
||||||
|
dnl In addition, an Automake conditional EXPAT_INSTALLED is set accordingly.
|
||||||
|
dnl This is necessary to adapt a whole lot of packages that have expat
|
||||||
|
dnl bundled as a static library.
|
||||||
|
AC_DEFUN([AM_WITH_EXPAT],
|
||||||
|
[ AC_ARG_WITH(expat,
|
||||||
|
[ --with-expat=PREFIX Use system Expat library],
|
||||||
|
, with_expat=no)
|
||||||
|
|
||||||
|
AM_CONDITIONAL(EXPAT_INSTALLED, test $with_expat != no)
|
||||||
|
|
||||||
|
EXPAT_CFLAGS=
|
||||||
|
EXPAT_LIBS=
|
||||||
|
if test $with_expat != no; then
|
||||||
|
if test $with_expat != yes; then
|
||||||
|
EXPAT_CFLAGS="-I$with_expat/include"
|
||||||
|
EXPAT_LIBS="-L$with_expat/lib"
|
||||||
|
fi
|
||||||
|
AC_CHECK_LIB(expat, XML_ParserCreate,
|
||||||
|
[ EXPAT_LIBS="$EXPAT_LIBS -lexpat"
|
||||||
|
expat_found=yes ],
|
||||||
|
[ expat_found=no ],
|
||||||
|
"$EXPAT_LIBS")
|
||||||
|
if test $expat_found = no; then
|
||||||
|
AC_MSG_ERROR([Could not find the Expat library])
|
||||||
|
fi
|
||||||
|
expat_save_CFLAGS="$CFLAGS"
|
||||||
|
CFLAGS="$CFLAGS $EXPAT_CFLAGS"
|
||||||
|
AC_CHECK_HEADERS(expat.h, , expat_found=no)
|
||||||
|
if test $expat_found = no; then
|
||||||
|
AC_MSG_ERROR([Could not find expat.h])
|
||||||
|
fi
|
||||||
|
CFLAGS="$expat_save_CFLAGS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_SUBST(EXPAT_CFLAGS)
|
||||||
|
AC_SUBST(EXPAT_LIBS)
|
||||||
|
])
|
39
3rdparty/expat/conftools/expatcfg-compiler-supports-visibility.m4
vendored
Normal file
39
3rdparty/expat/conftools/expatcfg-compiler-supports-visibility.m4
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
# expatcfg-compiler-supports-visibility.m4 --
|
||||||
|
#
|
||||||
|
# SYNOPSIS
|
||||||
|
#
|
||||||
|
# EXPATCFG_COMPILER_SUPPORTS_VISIBILITY([ACTION-IF-YES],
|
||||||
|
# [ACTION-IF-NO])
|
||||||
|
#
|
||||||
|
# DESCRIPTION
|
||||||
|
#
|
||||||
|
# Check if the selected compiler supports the "visibility" attribute
|
||||||
|
# and set the variable "expatcfg_cv_compiler_supports_visibility"
|
||||||
|
# accordingly to "yes" or "no".
|
||||||
|
#
|
||||||
|
# In addition, execute ACTION-IF-YES or ACTION-IF-NO.
|
||||||
|
#
|
||||||
|
# LICENSE
|
||||||
|
#
|
||||||
|
# Copyright (c) 2018 The Expat Authors.
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
AC_DEFUN([EXPATCFG_COMPILER_SUPPORTS_VISIBILITY],
|
||||||
|
[AC_CACHE_CHECK([whether compiler supports visibility],
|
||||||
|
[expatcfg_cv_compiler_supports_visibility],
|
||||||
|
[AS_VAR_SET([expatcfg_cv_compiler_supports_visibility],[no])
|
||||||
|
AS_VAR_COPY([OLDFLAGS],[CFLAGS])
|
||||||
|
AS_VAR_APPEND([CFLAGS],[" -fvisibility=hidden -Wall -Werror -Wno-unknown-warning-option"])
|
||||||
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
||||||
|
void __attribute__((visibility("default"))) foo(void);
|
||||||
|
void foo(void) {}
|
||||||
|
]])],
|
||||||
|
[AS_VAR_SET([expatcfg_cv_compiler_supports_visibility],[yes])])
|
||||||
|
AS_VAR_COPY([CFLAGS],[OLDFLAGS])])
|
||||||
|
AS_IF([test "$expatcfg_cv_compiler_supports_visibility" = yes],[$1],[$2])])
|
||||||
|
|
||||||
|
# end of file
|
35
3rdparty/expat/conftools/get-version.sh
vendored
Executable file
35
3rdparty/expat/conftools/get-version.sh
vendored
Executable file
@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# USAGE: get-version.sh path/to/expat.h
|
||||||
|
#
|
||||||
|
# This script will print Expat's version number on stdout. For example:
|
||||||
|
#
|
||||||
|
# $ ./conftools/get-version.sh ./lib/expat.h
|
||||||
|
# 1.95.3
|
||||||
|
# $
|
||||||
|
#
|
||||||
|
|
||||||
|
if test $# = 0; then
|
||||||
|
echo "ERROR: pathname for expat.h was not provided."
|
||||||
|
echo ""
|
||||||
|
echo "USAGE: $0 path/to/expat.h"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if test $# != 1; then
|
||||||
|
echo "ERROR: too many arguments were provided."
|
||||||
|
echo ""
|
||||||
|
echo "USAGE: $0 path/to/expat.h"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
hdr="$1"
|
||||||
|
if test ! -r "$hdr"; then
|
||||||
|
echo "ERROR: '$hdr' does not exist, or is not readable."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
MAJOR_VERSION=$(sed -n -e '/MAJOR_VERSION/s/[^0-9]*//gp' "$hdr")
|
||||||
|
MINOR_VERSION=$(sed -n -e '/MINOR_VERSION/s/[^0-9]*//gp' "$hdr")
|
||||||
|
MICRO_VERSION=$(sed -n -e '/MICRO_VERSION/s/[^0-9]*//gp' "$hdr")
|
||||||
|
|
||||||
|
printf '%s.%s.%s' "$MAJOR_VERSION" "$MINOR_VERSION" "$MICRO_VERSION"
|
529
3rdparty/expat/conftools/install-sh
vendored
Executable file
529
3rdparty/expat/conftools/install-sh
vendored
Executable file
@ -0,0 +1,529 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# install - install a program, script, or datafile
|
||||||
|
|
||||||
|
scriptversion=2018-03-11.20; # UTC
|
||||||
|
|
||||||
|
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
||||||
|
# later released in X11R6 (xc/config/util/install.sh) with the
|
||||||
|
# following copyright and license.
|
||||||
|
#
|
||||||
|
# Copyright (C) 1994 X Consortium
|
||||||
|
#
|
||||||
|
# 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
|
||||||
|
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||||
|
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
|
||||||
|
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Except as contained in this notice, the name of the X Consortium shall not
|
||||||
|
# be used in advertising or otherwise to promote the sale, use or other deal-
|
||||||
|
# ings in this Software without prior written authorization from the X Consor-
|
||||||
|
# tium.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# FSF changes to this file are in the public domain.
|
||||||
|
#
|
||||||
|
# Calling this script install-sh is preferred over install.sh, to prevent
|
||||||
|
# 'make' implicit rules from creating a file called install from it
|
||||||
|
# when there is no Makefile.
|
||||||
|
#
|
||||||
|
# This script is compatible with the BSD install script, but was written
|
||||||
|
# from scratch.
|
||||||
|
|
||||||
|
tab=' '
|
||||||
|
nl='
|
||||||
|
'
|
||||||
|
IFS=" $tab$nl"
|
||||||
|
|
||||||
|
# Set DOITPROG to "echo" to test this script.
|
||||||
|
|
||||||
|
doit=${DOITPROG-}
|
||||||
|
doit_exec=${doit:-exec}
|
||||||
|
|
||||||
|
# Put in absolute file names if you don't have them in your path;
|
||||||
|
# or use environment vars.
|
||||||
|
|
||||||
|
chgrpprog=${CHGRPPROG-chgrp}
|
||||||
|
chmodprog=${CHMODPROG-chmod}
|
||||||
|
chownprog=${CHOWNPROG-chown}
|
||||||
|
cmpprog=${CMPPROG-cmp}
|
||||||
|
cpprog=${CPPROG-cp}
|
||||||
|
mkdirprog=${MKDIRPROG-mkdir}
|
||||||
|
mvprog=${MVPROG-mv}
|
||||||
|
rmprog=${RMPROG-rm}
|
||||||
|
stripprog=${STRIPPROG-strip}
|
||||||
|
|
||||||
|
posix_mkdir=
|
||||||
|
|
||||||
|
# Desired mode of installed file.
|
||||||
|
mode=0755
|
||||||
|
|
||||||
|
chgrpcmd=
|
||||||
|
chmodcmd=$chmodprog
|
||||||
|
chowncmd=
|
||||||
|
mvcmd=$mvprog
|
||||||
|
rmcmd="$rmprog -f"
|
||||||
|
stripcmd=
|
||||||
|
|
||||||
|
src=
|
||||||
|
dst=
|
||||||
|
dir_arg=
|
||||||
|
dst_arg=
|
||||||
|
|
||||||
|
copy_on_change=false
|
||||||
|
is_target_a_directory=possibly
|
||||||
|
|
||||||
|
usage="\
|
||||||
|
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
|
||||||
|
or: $0 [OPTION]... SRCFILES... DIRECTORY
|
||||||
|
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
|
||||||
|
or: $0 [OPTION]... -d DIRECTORIES...
|
||||||
|
|
||||||
|
In the 1st form, copy SRCFILE to DSTFILE.
|
||||||
|
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
|
||||||
|
In the 4th, create DIRECTORIES.
|
||||||
|
|
||||||
|
Options:
|
||||||
|
--help display this help and exit.
|
||||||
|
--version display version info and exit.
|
||||||
|
|
||||||
|
-c (ignored)
|
||||||
|
-C install only if different (preserve the last data modification time)
|
||||||
|
-d create directories instead of installing files.
|
||||||
|
-g GROUP $chgrpprog installed files to GROUP.
|
||||||
|
-m MODE $chmodprog installed files to MODE.
|
||||||
|
-o USER $chownprog installed files to USER.
|
||||||
|
-s $stripprog installed files.
|
||||||
|
-t DIRECTORY install into DIRECTORY.
|
||||||
|
-T report an error if DSTFILE is a directory.
|
||||||
|
|
||||||
|
Environment variables override the default commands:
|
||||||
|
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
|
||||||
|
RMPROG STRIPPROG
|
||||||
|
"
|
||||||
|
|
||||||
|
while test $# -ne 0; do
|
||||||
|
case $1 in
|
||||||
|
-c) ;;
|
||||||
|
|
||||||
|
-C) copy_on_change=true;;
|
||||||
|
|
||||||
|
-d) dir_arg=true;;
|
||||||
|
|
||||||
|
-g) chgrpcmd="$chgrpprog $2"
|
||||||
|
shift;;
|
||||||
|
|
||||||
|
--help) echo "$usage"; exit $?;;
|
||||||
|
|
||||||
|
-m) mode=$2
|
||||||
|
case $mode in
|
||||||
|
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
|
||||||
|
echo "$0: invalid mode: $mode" >&2
|
||||||
|
exit 1;;
|
||||||
|
esac
|
||||||
|
shift;;
|
||||||
|
|
||||||
|
-o) chowncmd="$chownprog $2"
|
||||||
|
shift;;
|
||||||
|
|
||||||
|
-s) stripcmd=$stripprog;;
|
||||||
|
|
||||||
|
-t)
|
||||||
|
is_target_a_directory=always
|
||||||
|
dst_arg=$2
|
||||||
|
# Protect names problematic for 'test' and other utilities.
|
||||||
|
case $dst_arg in
|
||||||
|
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||||
|
esac
|
||||||
|
shift;;
|
||||||
|
|
||||||
|
-T) is_target_a_directory=never;;
|
||||||
|
|
||||||
|
--version) echo "$0 $scriptversion"; exit $?;;
|
||||||
|
|
||||||
|
--) shift
|
||||||
|
break;;
|
||||||
|
|
||||||
|
-*) echo "$0: invalid option: $1" >&2
|
||||||
|
exit 1;;
|
||||||
|
|
||||||
|
*) break;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
# We allow the use of options -d and -T together, by making -d
|
||||||
|
# take the precedence; this is for compatibility with GNU install.
|
||||||
|
|
||||||
|
if test -n "$dir_arg"; then
|
||||||
|
if test -n "$dst_arg"; then
|
||||||
|
echo "$0: target directory not allowed when installing a directory." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
|
||||||
|
# When -d is used, all remaining arguments are directories to create.
|
||||||
|
# When -t is used, the destination is already specified.
|
||||||
|
# Otherwise, the last argument is the destination. Remove it from $@.
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
if test -n "$dst_arg"; then
|
||||||
|
# $@ is not empty: it contains at least $arg.
|
||||||
|
set fnord "$@" "$dst_arg"
|
||||||
|
shift # fnord
|
||||||
|
fi
|
||||||
|
shift # arg
|
||||||
|
dst_arg=$arg
|
||||||
|
# Protect names problematic for 'test' and other utilities.
|
||||||
|
case $dst_arg in
|
||||||
|
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $# -eq 0; then
|
||||||
|
if test -z "$dir_arg"; then
|
||||||
|
echo "$0: no input file specified." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# It's OK to call 'install-sh -d' without argument.
|
||||||
|
# This can happen when creating conditional directories.
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$dir_arg"; then
|
||||||
|
if test $# -gt 1 || test "$is_target_a_directory" = always; then
|
||||||
|
if test ! -d "$dst_arg"; then
|
||||||
|
echo "$0: $dst_arg: Is not a directory." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$dir_arg"; then
|
||||||
|
do_exit='(exit $ret); exit $ret'
|
||||||
|
trap "ret=129; $do_exit" 1
|
||||||
|
trap "ret=130; $do_exit" 2
|
||||||
|
trap "ret=141; $do_exit" 13
|
||||||
|
trap "ret=143; $do_exit" 15
|
||||||
|
|
||||||
|
# Set umask so as not to create temps with too-generous modes.
|
||||||
|
# However, 'strip' requires both read and write access to temps.
|
||||||
|
case $mode in
|
||||||
|
# Optimize common cases.
|
||||||
|
*644) cp_umask=133;;
|
||||||
|
*755) cp_umask=22;;
|
||||||
|
|
||||||
|
*[0-7])
|
||||||
|
if test -z "$stripcmd"; then
|
||||||
|
u_plus_rw=
|
||||||
|
else
|
||||||
|
u_plus_rw='% 200'
|
||||||
|
fi
|
||||||
|
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
|
||||||
|
*)
|
||||||
|
if test -z "$stripcmd"; then
|
||||||
|
u_plus_rw=
|
||||||
|
else
|
||||||
|
u_plus_rw=,u+rw
|
||||||
|
fi
|
||||||
|
cp_umask=$mode$u_plus_rw;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
for src
|
||||||
|
do
|
||||||
|
# Protect names problematic for 'test' and other utilities.
|
||||||
|
case $src in
|
||||||
|
-* | [=\(\)!]) src=./$src;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if test -n "$dir_arg"; then
|
||||||
|
dst=$src
|
||||||
|
dstdir=$dst
|
||||||
|
test -d "$dstdir"
|
||||||
|
dstdir_status=$?
|
||||||
|
else
|
||||||
|
|
||||||
|
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
||||||
|
# might cause directories to be created, which would be especially bad
|
||||||
|
# if $src (and thus $dsttmp) contains '*'.
|
||||||
|
if test ! -f "$src" && test ! -d "$src"; then
|
||||||
|
echo "$0: $src does not exist." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$dst_arg"; then
|
||||||
|
echo "$0: no destination specified." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
dst=$dst_arg
|
||||||
|
|
||||||
|
# If destination is a directory, append the input filename.
|
||||||
|
if test -d "$dst"; then
|
||||||
|
if test "$is_target_a_directory" = never; then
|
||||||
|
echo "$0: $dst_arg: Is a directory" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
dstdir=$dst
|
||||||
|
dstbase=`basename "$src"`
|
||||||
|
case $dst in
|
||||||
|
*/) dst=$dst$dstbase;;
|
||||||
|
*) dst=$dst/$dstbase;;
|
||||||
|
esac
|
||||||
|
dstdir_status=0
|
||||||
|
else
|
||||||
|
dstdir=`dirname "$dst"`
|
||||||
|
test -d "$dstdir"
|
||||||
|
dstdir_status=$?
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
case $dstdir in
|
||||||
|
*/) dstdirslash=$dstdir;;
|
||||||
|
*) dstdirslash=$dstdir/;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
obsolete_mkdir_used=false
|
||||||
|
|
||||||
|
if test $dstdir_status != 0; then
|
||||||
|
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.
|
||||||
|
# Otherwise, rely on $mkdir_umask.
|
||||||
|
if test -n "$dir_arg"; then
|
||||||
|
mkdir_mode=-m$mode
|
||||||
|
else
|
||||||
|
mkdir_mode=
|
||||||
|
fi
|
||||||
|
|
||||||
|
posix_mkdir=false
|
||||||
|
case $umask in
|
||||||
|
*[123567][0-7][0-7])
|
||||||
|
# POSIX mkdir -p sets u+wx bits regardless of umask, which
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Because "mkdir -p" follows existing symlinks and we likely work
|
||||||
|
# directly in world-writeable /tmp, make sure that the '$tmpdir'
|
||||||
|
# directory is successfully created first before we actually test
|
||||||
|
# 'mkdir -p' feature.
|
||||||
|
if (umask $mkdir_umask &&
|
||||||
|
$mkdirprog $mkdir_mode "$tmpdir" &&
|
||||||
|
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
|
||||||
|
then
|
||||||
|
if test -z "$dir_arg" || {
|
||||||
|
# Check for POSIX incompatibilities with -m.
|
||||||
|
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
||||||
|
# other-writable bit of parent directory when it shouldn't.
|
||||||
|
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
||||||
|
test_tmpdir="$tmpdir/a"
|
||||||
|
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
|
||||||
|
case $ls_ld_tmpdir in
|
||||||
|
d????-?r-*) different_mode=700;;
|
||||||
|
d????-?--*) different_mode=755;;
|
||||||
|
*) false;;
|
||||||
|
esac &&
|
||||||
|
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
|
||||||
|
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
|
||||||
|
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
then posix_mkdir=:
|
||||||
|
fi
|
||||||
|
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
|
||||||
|
else
|
||||||
|
# Remove any dirs left behind by ancient mkdir implementations.
|
||||||
|
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
|
||||||
|
fi
|
||||||
|
trap '' 0;;
|
||||||
|
esac;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if
|
||||||
|
$posix_mkdir && (
|
||||||
|
umask $mkdir_umask &&
|
||||||
|
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
|
||||||
|
)
|
||||||
|
then :
|
||||||
|
else
|
||||||
|
|
||||||
|
# The umask is ridiculous, or mkdir does not conform to POSIX,
|
||||||
|
# or it failed possibly due to a race condition. Create the
|
||||||
|
# directory the slow way, step by step, checking for races as we go.
|
||||||
|
|
||||||
|
case $dstdir in
|
||||||
|
/*) prefix='/';;
|
||||||
|
[-=\(\)!]*) prefix='./';;
|
||||||
|
*) prefix='';;
|
||||||
|
esac
|
||||||
|
|
||||||
|
oIFS=$IFS
|
||||||
|
IFS=/
|
||||||
|
set -f
|
||||||
|
set fnord $dstdir
|
||||||
|
shift
|
||||||
|
set +f
|
||||||
|
IFS=$oIFS
|
||||||
|
|
||||||
|
prefixes=
|
||||||
|
|
||||||
|
for d
|
||||||
|
do
|
||||||
|
test X"$d" = X && continue
|
||||||
|
|
||||||
|
prefix=$prefix$d
|
||||||
|
if test -d "$prefix"; then
|
||||||
|
prefixes=
|
||||||
|
else
|
||||||
|
if $posix_mkdir; then
|
||||||
|
(umask=$mkdir_umask &&
|
||||||
|
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
||||||
|
# Don't fail if two instances are running concurrently.
|
||||||
|
test -d "$prefix" || exit 1
|
||||||
|
else
|
||||||
|
case $prefix in
|
||||||
|
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
|
||||||
|
*) qprefix=$prefix;;
|
||||||
|
esac
|
||||||
|
prefixes="$prefixes '$qprefix'"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
prefix=$prefix/
|
||||||
|
done
|
||||||
|
|
||||||
|
if test -n "$prefixes"; then
|
||||||
|
# Don't fail if two instances are running concurrently.
|
||||||
|
(umask $mkdir_umask &&
|
||||||
|
eval "\$doit_exec \$mkdirprog $prefixes") ||
|
||||||
|
test -d "$dstdir" || exit 1
|
||||||
|
obsolete_mkdir_used=true
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -n "$dir_arg"; then
|
||||||
|
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
|
||||||
|
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
|
||||||
|
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
|
||||||
|
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
|
||||||
|
else
|
||||||
|
|
||||||
|
# Make a couple of temp file names in the proper directory.
|
||||||
|
dsttmp=${dstdirslash}_inst.$$_
|
||||||
|
rmtmp=${dstdirslash}_rm.$$_
|
||||||
|
|
||||||
|
# Trap to clean up those temp files at exit.
|
||||||
|
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
|
||||||
|
|
||||||
|
# Copy the file name to the temp name.
|
||||||
|
(umask $cp_umask &&
|
||||||
|
{ test -z "$stripcmd" || {
|
||||||
|
# Create $dsttmp read-write so that cp doesn't create it read-only,
|
||||||
|
# which would cause strip to fail.
|
||||||
|
if test -z "$doit"; then
|
||||||
|
: >"$dsttmp" # No need to fork-exec 'touch'.
|
||||||
|
else
|
||||||
|
$doit touch "$dsttmp"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
} &&
|
||||||
|
$doit_exec $cpprog "$src" "$dsttmp") &&
|
||||||
|
|
||||||
|
# and set any options; do chmod last to preserve setuid bits.
|
||||||
|
#
|
||||||
|
# If any of these fail, we abort the whole thing. If we want to
|
||||||
|
# ignore errors from any of these, just make sure not to ignore
|
||||||
|
# errors from the above "$doit $cpprog $src $dsttmp" command.
|
||||||
|
#
|
||||||
|
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
|
||||||
|
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
|
||||||
|
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
|
||||||
|
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
|
||||||
|
|
||||||
|
# If -C, don't bother to copy if it wouldn't change the file.
|
||||||
|
if $copy_on_change &&
|
||||||
|
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
|
||||||
|
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
|
||||||
|
set -f &&
|
||||||
|
set X $old && old=:$2:$4:$5:$6 &&
|
||||||
|
set X $new && new=:$2:$4:$5:$6 &&
|
||||||
|
set +f &&
|
||||||
|
test "$old" = "$new" &&
|
||||||
|
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
|
||||||
|
then
|
||||||
|
rm -f "$dsttmp"
|
||||||
|
else
|
||||||
|
# Rename the file to the real destination.
|
||||||
|
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
|
||||||
|
|
||||||
|
# The rename failed, perhaps because mv can't rename something else
|
||||||
|
# to itself, or perhaps because mv is so ancient that it does not
|
||||||
|
# support -f.
|
||||||
|
{
|
||||||
|
# Now remove or move aside any old file at destination location.
|
||||||
|
# We try this two ways since rm can't unlink itself on some
|
||||||
|
# systems and the destination file might be busy for other
|
||||||
|
# reasons. In this case, the final cleanup might fail but the new
|
||||||
|
# file should still install successfully.
|
||||||
|
{
|
||||||
|
test ! -f "$dst" ||
|
||||||
|
$doit $rmcmd -f "$dst" 2>/dev/null ||
|
||||||
|
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
|
||||||
|
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
|
||||||
|
} ||
|
||||||
|
{ echo "$0: cannot unlink or rename $dst" >&2
|
||||||
|
(exit 1); exit 1
|
||||||
|
}
|
||||||
|
} &&
|
||||||
|
|
||||||
|
# Now rename the file to the real destination.
|
||||||
|
$doit $mvcmd "$dsttmp" "$dst"
|
||||||
|
}
|
||||||
|
fi || exit 1
|
||||||
|
|
||||||
|
trap '' 0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Local variables:
|
||||||
|
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC0"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
11210
3rdparty/expat/conftools/ltmain.sh
vendored
Normal file
11210
3rdparty/expat/conftools/ltmain.sh
vendored
Normal file
File diff suppressed because it is too large
Load Diff
215
3rdparty/expat/conftools/missing
vendored
Executable file
215
3rdparty/expat/conftools/missing
vendored
Executable file
@ -0,0 +1,215 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# Common wrapper for a few potentially missing GNU programs.
|
||||||
|
|
||||||
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
|
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
|
||||||
|
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
||||||
|
|
||||||
|
# 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
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# As a special exception to the GNU General Public License, if you
|
||||||
|
# distribute this file as part of a program that contains a
|
||||||
|
# configuration script generated by Autoconf, you may include it under
|
||||||
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
if test $# -eq 0; then
|
||||||
|
echo 1>&2 "Try '$0 --help' for more information"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
|
||||||
|
--is-lightweight)
|
||||||
|
# Used by our autoconf macros to check whether the available missing
|
||||||
|
# script is modern enough.
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
|
||||||
|
--run)
|
||||||
|
# Back-compat with the calling convention used by older automake.
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
|
||||||
|
-h|--h|--he|--hel|--help)
|
||||||
|
echo "\
|
||||||
|
$0 [OPTION]... PROGRAM [ARGUMENT]...
|
||||||
|
|
||||||
|
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
|
||||||
|
to PROGRAM being missing or too old.
|
||||||
|
|
||||||
|
Options:
|
||||||
|
-h, --help display this help and exit
|
||||||
|
-v, --version output version information and exit
|
||||||
|
|
||||||
|
Supported PROGRAM values:
|
||||||
|
aclocal autoconf autoheader autom4te automake makeinfo
|
||||||
|
bison yacc flex lex help2man
|
||||||
|
|
||||||
|
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
|
||||||
|
'g' are ignored when checking the name.
|
||||||
|
|
||||||
|
Send bug reports to <bug-automake@gnu.org>."
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
|
||||||
|
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
|
||||||
|
echo "missing $scriptversion (GNU Automake)"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
|
||||||
|
-*)
|
||||||
|
echo 1>&2 "$0: unknown '$1' option"
|
||||||
|
echo 1>&2 "Try '$0 --help' for more information"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Run the given program, remember its exit status.
|
||||||
|
"$@"; st=$?
|
||||||
|
|
||||||
|
# If it succeeded, we are done.
|
||||||
|
test $st -eq 0 && exit 0
|
||||||
|
|
||||||
|
# Also exit now if we it failed (or wasn't found), and '--version' was
|
||||||
|
# passed; such an option is passed most likely to detect whether the
|
||||||
|
# program is present and works.
|
||||||
|
case $2 in --version|--help) exit $st;; esac
|
||||||
|
|
||||||
|
# Exit code 63 means version mismatch. This often happens when the user
|
||||||
|
# tries to use an ancient version of a tool on a file that requires a
|
||||||
|
# minimum version.
|
||||||
|
if test $st -eq 63; then
|
||||||
|
msg="probably too old"
|
||||||
|
elif test $st -eq 127; then
|
||||||
|
# Program was missing.
|
||||||
|
msg="missing on your system"
|
||||||
|
else
|
||||||
|
# Program was found and executed, but failed. Give up.
|
||||||
|
exit $st
|
||||||
|
fi
|
||||||
|
|
||||||
|
perl_URL=https://www.perl.org/
|
||||||
|
flex_URL=https://github.com/westes/flex
|
||||||
|
gnu_software_URL=https://www.gnu.org/software
|
||||||
|
|
||||||
|
program_details ()
|
||||||
|
{
|
||||||
|
case $1 in
|
||||||
|
aclocal|automake)
|
||||||
|
echo "The '$1' program is part of the GNU Automake package:"
|
||||||
|
echo "<$gnu_software_URL/automake>"
|
||||||
|
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
|
||||||
|
echo "<$gnu_software_URL/autoconf>"
|
||||||
|
echo "<$gnu_software_URL/m4/>"
|
||||||
|
echo "<$perl_URL>"
|
||||||
|
;;
|
||||||
|
autoconf|autom4te|autoheader)
|
||||||
|
echo "The '$1' program is part of the GNU Autoconf package:"
|
||||||
|
echo "<$gnu_software_URL/autoconf/>"
|
||||||
|
echo "It also requires GNU m4 and Perl in order to run:"
|
||||||
|
echo "<$gnu_software_URL/m4/>"
|
||||||
|
echo "<$perl_URL>"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
give_advice ()
|
||||||
|
{
|
||||||
|
# Normalize program name to check for.
|
||||||
|
normalized_program=`echo "$1" | sed '
|
||||||
|
s/^gnu-//; t
|
||||||
|
s/^gnu//; t
|
||||||
|
s/^g//; t'`
|
||||||
|
|
||||||
|
printf '%s\n' "'$1' is $msg."
|
||||||
|
|
||||||
|
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
|
||||||
|
case $normalized_program in
|
||||||
|
autoconf*)
|
||||||
|
echo "You should only need it if you modified 'configure.ac',"
|
||||||
|
echo "or m4 files included by it."
|
||||||
|
program_details 'autoconf'
|
||||||
|
;;
|
||||||
|
autoheader*)
|
||||||
|
echo "You should only need it if you modified 'acconfig.h' or"
|
||||||
|
echo "$configure_deps."
|
||||||
|
program_details 'autoheader'
|
||||||
|
;;
|
||||||
|
automake*)
|
||||||
|
echo "You should only need it if you modified 'Makefile.am' or"
|
||||||
|
echo "$configure_deps."
|
||||||
|
program_details 'automake'
|
||||||
|
;;
|
||||||
|
aclocal*)
|
||||||
|
echo "You should only need it if you modified 'acinclude.m4' or"
|
||||||
|
echo "$configure_deps."
|
||||||
|
program_details 'aclocal'
|
||||||
|
;;
|
||||||
|
autom4te*)
|
||||||
|
echo "You might have modified some maintainer files that require"
|
||||||
|
echo "the 'autom4te' program to be rebuilt."
|
||||||
|
program_details 'autom4te'
|
||||||
|
;;
|
||||||
|
bison*|yacc*)
|
||||||
|
echo "You should only need it if you modified a '.y' file."
|
||||||
|
echo "You may want to install the GNU Bison package:"
|
||||||
|
echo "<$gnu_software_URL/bison/>"
|
||||||
|
;;
|
||||||
|
lex*|flex*)
|
||||||
|
echo "You should only need it if you modified a '.l' file."
|
||||||
|
echo "You may want to install the Fast Lexical Analyzer package:"
|
||||||
|
echo "<$flex_URL>"
|
||||||
|
;;
|
||||||
|
help2man*)
|
||||||
|
echo "You should only need it if you modified a dependency" \
|
||||||
|
"of a man page."
|
||||||
|
echo "You may want to install the GNU Help2man package:"
|
||||||
|
echo "<$gnu_software_URL/help2man/>"
|
||||||
|
;;
|
||||||
|
makeinfo*)
|
||||||
|
echo "You should only need it if you modified a '.texi' file, or"
|
||||||
|
echo "any other file indirectly affecting the aspect of the manual."
|
||||||
|
echo "You might want to install the Texinfo package:"
|
||||||
|
echo "<$gnu_software_URL/texinfo/>"
|
||||||
|
echo "The spurious makeinfo call might also be the consequence of"
|
||||||
|
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
|
||||||
|
echo "want to install GNU make:"
|
||||||
|
echo "<$gnu_software_URL/make/>"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "You might have modified some files without having the proper"
|
||||||
|
echo "tools for further handling them. Check the 'README' file, it"
|
||||||
|
echo "often tells you about the needed prerequisites for installing"
|
||||||
|
echo "this package. You may also peek at any GNU archive site, in"
|
||||||
|
echo "case some other package contains this missing '$1' program."
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
give_advice "$1" | sed -e '1s/^/WARNING: /' \
|
||||||
|
-e '2,$s/^/ /' >&2
|
||||||
|
|
||||||
|
# Propagate the correct exit status (expected to be 127 for a program
|
||||||
|
# not found, 63 for a program that failed due to version mismatch).
|
||||||
|
exit $st
|
||||||
|
|
||||||
|
# Local variables:
|
||||||
|
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC0"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
148
3rdparty/expat/conftools/test-driver
vendored
Executable file
148
3rdparty/expat/conftools/test-driver
vendored
Executable file
@ -0,0 +1,148 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# test-driver - basic testsuite driver script.
|
||||||
|
|
||||||
|
scriptversion=2018-03-07.03; # UTC
|
||||||
|
|
||||||
|
# Copyright (C) 2011-2020 Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# 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
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# As a special exception to the GNU General Public License, if you
|
||||||
|
# distribute this file as part of a program that contains a
|
||||||
|
# configuration script generated by Autoconf, you may include it under
|
||||||
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
# This file is maintained in Automake, please report
|
||||||
|
# bugs to <bug-automake@gnu.org> or send patches to
|
||||||
|
# <automake-patches@gnu.org>.
|
||||||
|
|
||||||
|
# Make unconditional expansion of undefined variables an error. This
|
||||||
|
# helps a lot in preventing typo-related bugs.
|
||||||
|
set -u
|
||||||
|
|
||||||
|
usage_error ()
|
||||||
|
{
|
||||||
|
echo "$0: $*" >&2
|
||||||
|
print_usage >&2
|
||||||
|
exit 2
|
||||||
|
}
|
||||||
|
|
||||||
|
print_usage ()
|
||||||
|
{
|
||||||
|
cat <<END
|
||||||
|
Usage:
|
||||||
|
test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
|
||||||
|
[--expect-failure={yes|no}] [--color-tests={yes|no}]
|
||||||
|
[--enable-hard-errors={yes|no}] [--]
|
||||||
|
TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
|
||||||
|
The '--test-name', '--log-file' and '--trs-file' options are mandatory.
|
||||||
|
END
|
||||||
|
}
|
||||||
|
|
||||||
|
test_name= # Used for reporting.
|
||||||
|
log_file= # Where to save the output of the test script.
|
||||||
|
trs_file= # Where to save the metadata of the test run.
|
||||||
|
expect_failure=no
|
||||||
|
color_tests=no
|
||||||
|
enable_hard_errors=yes
|
||||||
|
while test $# -gt 0; do
|
||||||
|
case $1 in
|
||||||
|
--help) print_usage; exit $?;;
|
||||||
|
--version) echo "test-driver $scriptversion"; exit $?;;
|
||||||
|
--test-name) test_name=$2; shift;;
|
||||||
|
--log-file) log_file=$2; shift;;
|
||||||
|
--trs-file) trs_file=$2; shift;;
|
||||||
|
--color-tests) color_tests=$2; shift;;
|
||||||
|
--expect-failure) expect_failure=$2; shift;;
|
||||||
|
--enable-hard-errors) enable_hard_errors=$2; shift;;
|
||||||
|
--) shift; break;;
|
||||||
|
-*) usage_error "invalid option: '$1'";;
|
||||||
|
*) break;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
missing_opts=
|
||||||
|
test x"$test_name" = x && missing_opts="$missing_opts --test-name"
|
||||||
|
test x"$log_file" = x && missing_opts="$missing_opts --log-file"
|
||||||
|
test x"$trs_file" = x && missing_opts="$missing_opts --trs-file"
|
||||||
|
if test x"$missing_opts" != x; then
|
||||||
|
usage_error "the following mandatory options are missing:$missing_opts"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $# -eq 0; then
|
||||||
|
usage_error "missing argument"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $color_tests = yes; then
|
||||||
|
# Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
|
||||||
|
red='[0;31m' # Red.
|
||||||
|
grn='[0;32m' # Green.
|
||||||
|
lgn='[1;32m' # Light green.
|
||||||
|
blu='[1;34m' # Blue.
|
||||||
|
mgn='[0;35m' # Magenta.
|
||||||
|
std='[m' # No color.
|
||||||
|
else
|
||||||
|
red= grn= lgn= blu= mgn= std=
|
||||||
|
fi
|
||||||
|
|
||||||
|
do_exit='rm -f $log_file $trs_file; (exit $st); exit $st'
|
||||||
|
trap "st=129; $do_exit" 1
|
||||||
|
trap "st=130; $do_exit" 2
|
||||||
|
trap "st=141; $do_exit" 13
|
||||||
|
trap "st=143; $do_exit" 15
|
||||||
|
|
||||||
|
# Test script is run here.
|
||||||
|
"$@" >$log_file 2>&1
|
||||||
|
estatus=$?
|
||||||
|
|
||||||
|
if test $enable_hard_errors = no && test $estatus -eq 99; then
|
||||||
|
tweaked_estatus=1
|
||||||
|
else
|
||||||
|
tweaked_estatus=$estatus
|
||||||
|
fi
|
||||||
|
|
||||||
|
case $tweaked_estatus:$expect_failure in
|
||||||
|
0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
|
||||||
|
0:*) col=$grn res=PASS recheck=no gcopy=no;;
|
||||||
|
77:*) col=$blu res=SKIP recheck=no gcopy=yes;;
|
||||||
|
99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;;
|
||||||
|
*:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;;
|
||||||
|
*:*) col=$red res=FAIL recheck=yes gcopy=yes;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Report the test outcome and exit status in the logs, so that one can
|
||||||
|
# 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 (automake bug#11814).
|
||||||
|
echo "$res $test_name (exit status: $estatus)" >>$log_file
|
||||||
|
|
||||||
|
# Report outcome to console.
|
||||||
|
echo "${col}${res}${std}: $test_name"
|
||||||
|
|
||||||
|
# Register the test result, and other relevant metadata.
|
||||||
|
echo ":test-result: $res" > $trs_file
|
||||||
|
echo ":global-test-result: $res" >> $trs_file
|
||||||
|
echo ":recheck: $recheck" >> $trs_file
|
||||||
|
echo ":copy-in-global-log: $gcopy" >> $trs_file
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC0"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
59
3rdparty/expat/doc/Makefile.am
vendored
Normal file
59
3rdparty/expat/doc/Makefile.am
vendored
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
.PHONY: dist-hook # not inside conditional to avoid automake warning
|
||||||
|
|
||||||
|
if WITH_DOCBOOK
|
||||||
|
dist_man_MANS = xmlwf.1
|
||||||
|
|
||||||
|
xmlwf.1: xmlwf.xml
|
||||||
|
-rm -f $@
|
||||||
|
$(DOCBOOK_TO_MAN) $<
|
||||||
|
test -f $@ || mv XMLWF.1 $@
|
||||||
|
else
|
||||||
|
dist-hook:
|
||||||
|
@echo 'ERROR: Configure with --with-docbook for "make dist".' 1>&2
|
||||||
|
@false
|
||||||
|
endif
|
||||||
|
|
||||||
|
# https://www.gnu.org/software/automake/manual/automake.html#What-Gets-Cleaned
|
||||||
|
.PHONY: clean-local
|
||||||
|
clean-local: clean-local-check
|
||||||
|
|
||||||
|
.PHONY: clean-local-check
|
||||||
|
clean-local-check:
|
||||||
|
$(RM) xmlwf.1
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
expat.png \
|
||||||
|
reference.html \
|
||||||
|
style.css \
|
||||||
|
valid-xhtml10.png \
|
||||||
|
xmlwf.xml
|
602
3rdparty/expat/doc/Makefile.in
vendored
Normal file
602
3rdparty/expat/doc/Makefile.in
vendored
Normal file
@ -0,0 +1,602 @@
|
|||||||
|
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
||||||
|
# @configure_input@
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# This Makefile.in 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.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
@SET_MAKE@
|
||||||
|
|
||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
VPATH = @srcdir@
|
||||||
|
am__is_gnu_make = { \
|
||||||
|
if test -z '$(MAKELEVEL)'; then \
|
||||||
|
false; \
|
||||||
|
elif test -n '$(MAKE_HOST)'; then \
|
||||||
|
true; \
|
||||||
|
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||||||
|
true; \
|
||||||
|
else \
|
||||||
|
false; \
|
||||||
|
fi; \
|
||||||
|
}
|
||||||
|
am__make_running_with_option = \
|
||||||
|
case $${target_option-} in \
|
||||||
|
?) ;; \
|
||||||
|
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||||
|
"target option '$${target_option-}' specified" >&2; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
has_opt=no; \
|
||||||
|
sane_makeflags=$$MAKEFLAGS; \
|
||||||
|
if $(am__is_gnu_make); then \
|
||||||
|
sane_makeflags=$$MFLAGS; \
|
||||||
|
else \
|
||||||
|
case $$MAKEFLAGS in \
|
||||||
|
*\\[\ \ ]*) \
|
||||||
|
bs=\\; \
|
||||||
|
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||||
|
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||||
|
esac; \
|
||||||
|
fi; \
|
||||||
|
skip_next=no; \
|
||||||
|
strip_trailopt () \
|
||||||
|
{ \
|
||||||
|
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||||
|
}; \
|
||||||
|
for flg in $$sane_makeflags; do \
|
||||||
|
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||||
|
case $$flg in \
|
||||||
|
*=*|--*) continue;; \
|
||||||
|
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||||
|
-*I?*) strip_trailopt 'I';; \
|
||||||
|
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||||
|
-*O?*) strip_trailopt 'O';; \
|
||||||
|
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||||
|
-*l?*) strip_trailopt 'l';; \
|
||||||
|
-[dEDm]) skip_next=yes;; \
|
||||||
|
-[JT]) skip_next=yes;; \
|
||||||
|
esac; \
|
||||||
|
case $$flg in \
|
||||||
|
*$$target_option*) has_opt=yes; break;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
test $$has_opt = yes
|
||||||
|
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||||
|
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||||
|
pkgdatadir = $(datadir)/@PACKAGE@
|
||||||
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
|
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||||
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
|
install_sh_PROGRAM = $(install_sh) -c
|
||||||
|
install_sh_SCRIPT = $(install_sh) -c
|
||||||
|
INSTALL_HEADER = $(INSTALL_DATA)
|
||||||
|
transform = $(program_transform_name)
|
||||||
|
NORMAL_INSTALL = :
|
||||||
|
PRE_INSTALL = :
|
||||||
|
POST_INSTALL = :
|
||||||
|
NORMAL_UNINSTALL = :
|
||||||
|
PRE_UNINSTALL = :
|
||||||
|
POST_UNINSTALL = :
|
||||||
|
build_triplet = @build@
|
||||||
|
host_triplet = @host@
|
||||||
|
subdir = doc
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||||
|
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||||
|
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
|
||||||
|
$(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-require-defined.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-compile-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-link-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/configure.ac
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||||
|
mkinstalldirs = $(install_sh) -d
|
||||||
|
CONFIG_HEADER = $(top_builddir)/expat_config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
CONFIG_CLEAN_VPATH_FILES =
|
||||||
|
AM_V_P = $(am__v_P_@AM_V@)
|
||||||
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||||
|
am__v_P_0 = false
|
||||||
|
am__v_P_1 = :
|
||||||
|
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||||
|
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||||
|
am__v_GEN_0 = @echo " GEN " $@;
|
||||||
|
am__v_GEN_1 =
|
||||||
|
AM_V_at = $(am__v_at_@AM_V@)
|
||||||
|
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||||
|
am__v_at_0 = @
|
||||||
|
am__v_at_1 =
|
||||||
|
SOURCES =
|
||||||
|
DIST_SOURCES =
|
||||||
|
am__can_run_installinfo = \
|
||||||
|
case $$AM_UPDATE_INFO_DIR in \
|
||||||
|
n|no|NO) false;; \
|
||||||
|
*) (install-info --version) >/dev/null 2>&1;; \
|
||||||
|
esac
|
||||||
|
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||||
|
am__vpath_adj = case $$p in \
|
||||||
|
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||||
|
*) f=$$p;; \
|
||||||
|
esac;
|
||||||
|
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
||||||
|
am__install_max = 40
|
||||||
|
am__nobase_strip_setup = \
|
||||||
|
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
||||||
|
am__nobase_strip = \
|
||||||
|
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
||||||
|
am__nobase_list = $(am__nobase_strip_setup); \
|
||||||
|
for p in $$list; do echo "$$p $$p"; done | \
|
||||||
|
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
||||||
|
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
||||||
|
if (++n[$$2] == $(am__install_max)) \
|
||||||
|
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
||||||
|
END { for (dir in files) print dir, files[dir] }'
|
||||||
|
am__base_list = \
|
||||||
|
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||||
|
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||||
|
am__uninstall_files_from_dir = { \
|
||||||
|
test -z "$$files" \
|
||||||
|
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||||
|
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||||
|
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||||
|
}
|
||||||
|
man1dir = $(mandir)/man1
|
||||||
|
am__installdirs = "$(DESTDIR)$(man1dir)"
|
||||||
|
NROFF = nroff
|
||||||
|
MANS = $(dist_man_MANS)
|
||||||
|
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||||
|
am__DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.in
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
ACLOCAL = @ACLOCAL@
|
||||||
|
AMTAR = @AMTAR@
|
||||||
|
AM_CFLAGS = @AM_CFLAGS@
|
||||||
|
AM_CPPFLAGS = @AM_CPPFLAGS@
|
||||||
|
AM_CXXFLAGS = @AM_CXXFLAGS@
|
||||||
|
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||||
|
AM_LDFLAGS = @AM_LDFLAGS@
|
||||||
|
AR = @AR@
|
||||||
|
AS = @AS@
|
||||||
|
AUTOCONF = @AUTOCONF@
|
||||||
|
AUTOHEADER = @AUTOHEADER@
|
||||||
|
AUTOMAKE = @AUTOMAKE@
|
||||||
|
AWK = @AWK@
|
||||||
|
CC = @CC@
|
||||||
|
CCDEPMODE = @CCDEPMODE@
|
||||||
|
CFLAGS = @CFLAGS@
|
||||||
|
CPP = @CPP@
|
||||||
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CXX = @CXX@
|
||||||
|
CXXCPP = @CXXCPP@
|
||||||
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
|
CXXFLAGS = @CXXFLAGS@
|
||||||
|
CYGPATH_W = @CYGPATH_W@
|
||||||
|
DEFS = @DEFS@
|
||||||
|
DEPDIR = @DEPDIR@
|
||||||
|
DLLTOOL = @DLLTOOL@
|
||||||
|
DOCBOOK_TO_MAN = @DOCBOOK_TO_MAN@
|
||||||
|
DSYMUTIL = @DSYMUTIL@
|
||||||
|
DUMPBIN = @DUMPBIN@
|
||||||
|
ECHO_C = @ECHO_C@
|
||||||
|
ECHO_N = @ECHO_N@
|
||||||
|
ECHO_T = @ECHO_T@
|
||||||
|
EGREP = @EGREP@
|
||||||
|
EXEEXT = @EXEEXT@
|
||||||
|
FGREP = @FGREP@
|
||||||
|
FILEMAP = @FILEMAP@
|
||||||
|
GREP = @GREP@
|
||||||
|
INSTALL = @INSTALL@
|
||||||
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||||
|
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||||
|
LD = @LD@
|
||||||
|
LDFLAGS = @LDFLAGS@
|
||||||
|
LIBAGE = @LIBAGE@
|
||||||
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBOBJS = @LIBOBJS@
|
||||||
|
LIBREVISION = @LIBREVISION@
|
||||||
|
LIBS = @LIBS@
|
||||||
|
LIBTOOL = @LIBTOOL@
|
||||||
|
LIPO = @LIPO@
|
||||||
|
LN_S = @LN_S@
|
||||||
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAKEINFO = @MAKEINFO@
|
||||||
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
|
MKDIR_P = @MKDIR_P@
|
||||||
|
NM = @NM@
|
||||||
|
NMEDIT = @NMEDIT@
|
||||||
|
OBJDUMP = @OBJDUMP@
|
||||||
|
OBJEXT = @OBJEXT@
|
||||||
|
OTOOL = @OTOOL@
|
||||||
|
OTOOL64 = @OTOOL64@
|
||||||
|
PACKAGE = @PACKAGE@
|
||||||
|
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||||
|
PACKAGE_NAME = @PACKAGE_NAME@
|
||||||
|
PACKAGE_STRING = @PACKAGE_STRING@
|
||||||
|
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||||
|
PACKAGE_URL = @PACKAGE_URL@
|
||||||
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||||
|
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||||
|
RANLIB = @RANLIB@
|
||||||
|
SED = @SED@
|
||||||
|
SET_MAKE = @SET_MAKE@
|
||||||
|
SHELL = @SHELL@
|
||||||
|
STRIP = @STRIP@
|
||||||
|
VERSION = @VERSION@
|
||||||
|
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
||||||
|
abs_builddir = @abs_builddir@
|
||||||
|
abs_srcdir = @abs_srcdir@
|
||||||
|
abs_top_builddir = @abs_top_builddir@
|
||||||
|
abs_top_srcdir = @abs_top_srcdir@
|
||||||
|
ac_ct_AR = @ac_ct_AR@
|
||||||
|
ac_ct_CC = @ac_ct_CC@
|
||||||
|
ac_ct_CXX = @ac_ct_CXX@
|
||||||
|
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||||
|
am__include = @am__include@
|
||||||
|
am__leading_dot = @am__leading_dot@
|
||||||
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
|
bindir = @bindir@
|
||||||
|
build = @build@
|
||||||
|
build_alias = @build_alias@
|
||||||
|
build_cpu = @build_cpu@
|
||||||
|
build_os = @build_os@
|
||||||
|
build_vendor = @build_vendor@
|
||||||
|
builddir = @builddir@
|
||||||
|
datadir = @datadir@
|
||||||
|
datarootdir = @datarootdir@
|
||||||
|
docdir = @docdir@
|
||||||
|
dvidir = @dvidir@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
host = @host@
|
||||||
|
host_alias = @host_alias@
|
||||||
|
host_cpu = @host_cpu@
|
||||||
|
host_os = @host_os@
|
||||||
|
host_vendor = @host_vendor@
|
||||||
|
htmldir = @htmldir@
|
||||||
|
includedir = @includedir@
|
||||||
|
infodir = @infodir@
|
||||||
|
install_sh = @install_sh@
|
||||||
|
libdir = @libdir@
|
||||||
|
libexecdir = @libexecdir@
|
||||||
|
localedir = @localedir@
|
||||||
|
localstatedir = @localstatedir@
|
||||||
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
|
oldincludedir = @oldincludedir@
|
||||||
|
pdfdir = @pdfdir@
|
||||||
|
prefix = @prefix@
|
||||||
|
program_transform_name = @program_transform_name@
|
||||||
|
psdir = @psdir@
|
||||||
|
runstatedir = @runstatedir@
|
||||||
|
sbindir = @sbindir@
|
||||||
|
sharedstatedir = @sharedstatedir@
|
||||||
|
srcdir = @srcdir@
|
||||||
|
sysconfdir = @sysconfdir@
|
||||||
|
target_alias = @target_alias@
|
||||||
|
top_build_prefix = @top_build_prefix@
|
||||||
|
top_builddir = @top_builddir@
|
||||||
|
top_srcdir = @top_srcdir@
|
||||||
|
@WITH_DOCBOOK_TRUE@dist_man_MANS = xmlwf.1
|
||||||
|
EXTRA_DIST = \
|
||||||
|
expat.png \
|
||||||
|
reference.html \
|
||||||
|
style.css \
|
||||||
|
valid-xhtml10.png \
|
||||||
|
xmlwf.xml
|
||||||
|
|
||||||
|
all: all-am
|
||||||
|
|
||||||
|
.SUFFIXES:
|
||||||
|
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||||
|
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
|
||||||
|
$(am__cd) $(top_srcdir) && \
|
||||||
|
$(AUTOMAKE) --gnu doc/Makefile
|
||||||
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
|
mostlyclean-libtool:
|
||||||
|
-rm -f *.lo
|
||||||
|
|
||||||
|
clean-libtool:
|
||||||
|
-rm -rf .libs _libs
|
||||||
|
install-man1: $(dist_man_MANS)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
@list1=''; \
|
||||||
|
list2='$(dist_man_MANS)'; \
|
||||||
|
test -n "$(man1dir)" \
|
||||||
|
&& test -n "`echo $$list1$$list2`" \
|
||||||
|
|| exit 0; \
|
||||||
|
echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
|
||||||
|
$(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
|
||||||
|
{ for i in $$list1; do echo "$$i"; done; \
|
||||||
|
if test -n "$$list2"; then \
|
||||||
|
for i in $$list2; do echo "$$i"; done \
|
||||||
|
| sed -n '/\.1[a-z]*$$/p'; \
|
||||||
|
fi; \
|
||||||
|
} | while read p; do \
|
||||||
|
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
|
||||||
|
echo "$$d$$p"; echo "$$p"; \
|
||||||
|
done | \
|
||||||
|
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
|
||||||
|
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
|
||||||
|
sed 'N;N;s,\n, ,g' | { \
|
||||||
|
list=; while read file base inst; do \
|
||||||
|
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
|
||||||
|
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
|
||||||
|
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
|
||||||
|
fi; \
|
||||||
|
done; \
|
||||||
|
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
|
||||||
|
while read files; do \
|
||||||
|
test -z "$$files" || { \
|
||||||
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
|
||||||
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
|
||||||
|
done; }
|
||||||
|
|
||||||
|
uninstall-man1:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
@list=''; test -n "$(man1dir)" || exit 0; \
|
||||||
|
files=`{ for i in $$list; do echo "$$i"; done; \
|
||||||
|
l2='$(dist_man_MANS)'; for i in $$l2; do echo "$$i"; done | \
|
||||||
|
sed -n '/\.1[a-z]*$$/p'; \
|
||||||
|
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
|
||||||
|
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
|
||||||
|
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
|
||||||
|
tags TAGS:
|
||||||
|
|
||||||
|
ctags CTAGS:
|
||||||
|
|
||||||
|
cscope cscopelist:
|
||||||
|
|
||||||
|
@WITH_DOCBOOK_TRUE@dist-hook:
|
||||||
|
|
||||||
|
distdir: $(BUILT_SOURCES)
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
|
distdir-am: $(DISTFILES)
|
||||||
|
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
list='$(DISTFILES)'; \
|
||||||
|
dist_files=`for file in $$list; do echo $$file; done | \
|
||||||
|
sed -e "s|^$$srcdirstrip/||;t" \
|
||||||
|
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||||
|
case $$dist_files in \
|
||||||
|
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||||
|
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||||
|
sort -u` ;; \
|
||||||
|
esac; \
|
||||||
|
for file in $$dist_files; do \
|
||||||
|
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||||
|
if test -d $$d/$$file; then \
|
||||||
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
|
if test -d "$(distdir)/$$file"; then \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||||
|
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
else \
|
||||||
|
test -f "$(distdir)/$$file" \
|
||||||
|
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||||
|
|| exit 1; \
|
||||||
|
fi; \
|
||||||
|
done
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) \
|
||||||
|
top_distdir="$(top_distdir)" distdir="$(distdir)" \
|
||||||
|
dist-hook
|
||||||
|
check-am: all-am
|
||||||
|
check: check-am
|
||||||
|
all-am: Makefile $(MANS)
|
||||||
|
installdirs:
|
||||||
|
for dir in "$(DESTDIR)$(man1dir)"; do \
|
||||||
|
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||||
|
done
|
||||||
|
install: install-am
|
||||||
|
install-exec: install-exec-am
|
||||||
|
install-data: install-data-am
|
||||||
|
uninstall: uninstall-am
|
||||||
|
|
||||||
|
install-am: all-am
|
||||||
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||||
|
|
||||||
|
installcheck: installcheck-am
|
||||||
|
install-strip:
|
||||||
|
if test -z '$(STRIP)'; then \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
install; \
|
||||||
|
else \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||||
|
fi
|
||||||
|
mostlyclean-generic:
|
||||||
|
|
||||||
|
clean-generic:
|
||||||
|
|
||||||
|
distclean-generic:
|
||||||
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||||
|
|
||||||
|
maintainer-clean-generic:
|
||||||
|
@echo "This command is intended for maintainers to use"
|
||||||
|
@echo "it deletes files that may require special tools to rebuild."
|
||||||
|
clean: clean-am
|
||||||
|
|
||||||
|
clean-am: clean-generic clean-libtool clean-local mostlyclean-am
|
||||||
|
|
||||||
|
distclean: distclean-am
|
||||||
|
-rm -f Makefile
|
||||||
|
distclean-am: clean-am distclean-generic
|
||||||
|
|
||||||
|
dvi: dvi-am
|
||||||
|
|
||||||
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
|
html-am:
|
||||||
|
|
||||||
|
info: info-am
|
||||||
|
|
||||||
|
info-am:
|
||||||
|
|
||||||
|
install-data-am: install-man
|
||||||
|
|
||||||
|
install-dvi: install-dvi-am
|
||||||
|
|
||||||
|
install-dvi-am:
|
||||||
|
|
||||||
|
install-exec-am:
|
||||||
|
|
||||||
|
install-html: install-html-am
|
||||||
|
|
||||||
|
install-html-am:
|
||||||
|
|
||||||
|
install-info: install-info-am
|
||||||
|
|
||||||
|
install-info-am:
|
||||||
|
|
||||||
|
install-man: install-man1
|
||||||
|
|
||||||
|
install-pdf: install-pdf-am
|
||||||
|
|
||||||
|
install-pdf-am:
|
||||||
|
|
||||||
|
install-ps: install-ps-am
|
||||||
|
|
||||||
|
install-ps-am:
|
||||||
|
|
||||||
|
installcheck-am:
|
||||||
|
|
||||||
|
maintainer-clean: maintainer-clean-am
|
||||||
|
-rm -f Makefile
|
||||||
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||||
|
|
||||||
|
mostlyclean: mostlyclean-am
|
||||||
|
|
||||||
|
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||||
|
|
||||||
|
pdf: pdf-am
|
||||||
|
|
||||||
|
pdf-am:
|
||||||
|
|
||||||
|
ps: ps-am
|
||||||
|
|
||||||
|
ps-am:
|
||||||
|
|
||||||
|
uninstall-am: uninstall-man
|
||||||
|
|
||||||
|
uninstall-man: uninstall-man1
|
||||||
|
|
||||||
|
.MAKE: install-am install-strip
|
||||||
|
|
||||||
|
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||||
|
clean-local cscopelist-am ctags-am dist-hook distclean \
|
||||||
|
distclean-generic distclean-libtool distdir dvi dvi-am html \
|
||||||
|
html-am info info-am install install-am install-data \
|
||||||
|
install-data-am install-dvi install-dvi-am install-exec \
|
||||||
|
install-exec-am install-html install-html-am install-info \
|
||||||
|
install-info-am install-man install-man1 install-pdf \
|
||||||
|
install-pdf-am install-ps install-ps-am install-strip \
|
||||||
|
installcheck installcheck-am installdirs maintainer-clean \
|
||||||
|
maintainer-clean-generic mostlyclean mostlyclean-generic \
|
||||||
|
mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
|
||||||
|
uninstall-am uninstall-man uninstall-man1
|
||||||
|
|
||||||
|
.PRECIOUS: Makefile
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: dist-hook # not inside conditional to avoid automake warning
|
||||||
|
|
||||||
|
@WITH_DOCBOOK_TRUE@xmlwf.1: xmlwf.xml
|
||||||
|
@WITH_DOCBOOK_TRUE@ -rm -f $@
|
||||||
|
@WITH_DOCBOOK_TRUE@ $(DOCBOOK_TO_MAN) $<
|
||||||
|
@WITH_DOCBOOK_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
|
||||||
|
.PHONY: clean-local
|
||||||
|
clean-local: clean-local-check
|
||||||
|
|
||||||
|
.PHONY: clean-local-check
|
||||||
|
clean-local-check:
|
||||||
|
$(RM) xmlwf.1
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
.NOEXPORT:
|
BIN
3rdparty/expat/doc/expat.png
vendored
Normal file
BIN
3rdparty/expat/doc/expat.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 920 B |
2396
3rdparty/expat/doc/reference.html
vendored
Normal file
2396
3rdparty/expat/doc/reference.html
vendored
Normal file
File diff suppressed because it is too large
Load Diff
101
3rdparty/expat/doc/style.css
vendored
Normal file
101
3rdparty/expat/doc/style.css
vendored
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
body {
|
||||||
|
background-color: white;
|
||||||
|
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 {
|
||||||
|
font-family: monospace;
|
||||||
|
}
|
||||||
|
.cpp-symbols dd {
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
BIN
3rdparty/expat/doc/valid-xhtml10.png
vendored
Normal file
BIN
3rdparty/expat/doc/valid-xhtml10.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
263
3rdparty/expat/doc/xmlwf.1
vendored
Normal file
263
3rdparty/expat/doc/xmlwf.1
vendored
Normal file
@ -0,0 +1,263 @@
|
|||||||
|
'\" -*- coding: us-ascii -*-
|
||||||
|
.if \n(.g .ds T< \\FC
|
||||||
|
.if \n(.g .ds T> \\F[\n[.fam]]
|
||||||
|
.de URL
|
||||||
|
\\$2 \(la\\$1\(ra\\$3
|
||||||
|
..
|
||||||
|
.if \n(.g .mso www.tmac
|
||||||
|
.TH XMLWF 1 "March 11, 2016" "" ""
|
||||||
|
.SH NAME
|
||||||
|
xmlwf \- Determines if an XML document is well-formed
|
||||||
|
.SH SYNOPSIS
|
||||||
|
'nh
|
||||||
|
.fi
|
||||||
|
.ad l
|
||||||
|
\fBxmlwf\fR \kx
|
||||||
|
.if (\nx>(\n(.l/2)) .nr x (\n(.l/5)
|
||||||
|
'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 ...]
|
||||||
|
'in \n(.iu-\nxu
|
||||||
|
.ad b
|
||||||
|
'hy
|
||||||
|
.SH DESCRIPTION
|
||||||
|
\fBxmlwf\fR uses the Expat library to
|
||||||
|
determine if an XML document is well-formed. It is
|
||||||
|
non-validating.
|
||||||
|
.PP
|
||||||
|
If you do not specify any files on the command-line, and you
|
||||||
|
have a recent version of \fBxmlwf\fR, the
|
||||||
|
input file will be read from standard input.
|
||||||
|
.SH "WELL-FORMED DOCUMENTS"
|
||||||
|
A well-formed document must adhere to the
|
||||||
|
following rules:
|
||||||
|
.TP 0.2i
|
||||||
|
\(bu
|
||||||
|
The file begins with an XML declaration. For instance,
|
||||||
|
\*(T<<?xml version="1.0" standalone="yes"?>\*(T>.
|
||||||
|
\fINOTE:\fR
|
||||||
|
\fBxmlwf\fR does not currently
|
||||||
|
check for a valid XML declaration.
|
||||||
|
.TP 0.2i
|
||||||
|
\(bu
|
||||||
|
Every start tag is either empty (<tag/>)
|
||||||
|
or has a corresponding end tag.
|
||||||
|
.TP 0.2i
|
||||||
|
\(bu
|
||||||
|
There is exactly one root element. This element must contain
|
||||||
|
all other elements in the document. Only comments, white
|
||||||
|
space, and processing instructions may come after the close
|
||||||
|
of the root element.
|
||||||
|
.TP 0.2i
|
||||||
|
\(bu
|
||||||
|
All elements nest properly.
|
||||||
|
.TP 0.2i
|
||||||
|
\(bu
|
||||||
|
All attribute values are enclosed in quotes (either single
|
||||||
|
or double).
|
||||||
|
.PP
|
||||||
|
If the document has a DTD, and it strictly complies with that
|
||||||
|
DTD, then the document is also considered \fIvalid\fR.
|
||||||
|
\fBxmlwf\fR is a non-validating parser --
|
||||||
|
it does not check the DTD. However, it does support
|
||||||
|
external entities (see the \*(T<\fB\-x\fR\*(T> option).
|
||||||
|
.SH OPTIONS
|
||||||
|
When an option includes an argument, you may specify the argument either
|
||||||
|
separately ("\*(T<\fB\-d\fR\*(T> output") or concatenated with the
|
||||||
|
option ("\*(T<\fB\-d\fR\*(T>output"). \fBxmlwf\fR
|
||||||
|
supports both.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-c\fR\*(T>
|
||||||
|
If the input file is well-formed and \fBxmlwf\fR
|
||||||
|
doesn't encounter any errors, the input file is simply copied to
|
||||||
|
the output directory unchanged.
|
||||||
|
This implies no namespaces (turns off \*(T<\fB\-n\fR\*(T>) and
|
||||||
|
requires \*(T<\fB\-d\fR\*(T> to specify an output directory.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-d output\-dir\fR\*(T>
|
||||||
|
Specifies a directory to contain transformed
|
||||||
|
representations of the input files.
|
||||||
|
By default, \*(T<\fB\-d\fR\*(T> outputs a canonical representation
|
||||||
|
(described below).
|
||||||
|
You can select different output formats using \*(T<\fB\-c\fR\*(T>,
|
||||||
|
\*(T<\fB\-m\fR\*(T> and \*(T<\fB\-N\fR\*(T>.
|
||||||
|
|
||||||
|
The output filenames will
|
||||||
|
be exactly the same as the input filenames or "STDIN" if the input is
|
||||||
|
coming from standard input. Therefore, you must be careful that the
|
||||||
|
output file does not go into the same directory as the input
|
||||||
|
file. Otherwise, \fBxmlwf\fR will delete the
|
||||||
|
input file before it generates the output file (just like running
|
||||||
|
\*(T<cat < file > file\*(T> in most shells).
|
||||||
|
|
||||||
|
Two structurally equivalent XML documents have a byte-for-byte
|
||||||
|
identical canonical XML representation.
|
||||||
|
Note that ignorable white space is considered significant and
|
||||||
|
is treated equivalently to data.
|
||||||
|
More on canonical XML can be found at
|
||||||
|
http://www.jclark.com/xml/canonxml.html .
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-e encoding\fR\*(T>
|
||||||
|
Specifies the character encoding for the document, overriding
|
||||||
|
any document encoding declaration. \fBxmlwf\fR
|
||||||
|
supports four built-in encodings:
|
||||||
|
\*(T<US\-ASCII\*(T>,
|
||||||
|
\*(T<UTF\-8\*(T>,
|
||||||
|
\*(T<UTF\-16\*(T>, and
|
||||||
|
\*(T<ISO\-8859\-1\*(T>.
|
||||||
|
Also see the \*(T<\fB\-w\fR\*(T> option.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-m\fR\*(T>
|
||||||
|
Outputs some strange sort of XML file that completely
|
||||||
|
describes the input file, including character positions.
|
||||||
|
Requires \*(T<\fB\-d\fR\*(T> to specify an output file.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-n\fR\*(T>
|
||||||
|
Turns on namespace processing. (describe namespaces)
|
||||||
|
\*(T<\fB\-c\fR\*(T> disables namespaces.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-N\fR\*(T>
|
||||||
|
Adds a doctype and notation declarations to canonical XML output.
|
||||||
|
This matches the example output used by the formal XML test cases.
|
||||||
|
Requires \*(T<\fB\-d\fR\*(T> to specify an output file.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-p\fR\*(T>
|
||||||
|
Tells xmlwf to process external DTDs and parameter
|
||||||
|
entities.
|
||||||
|
|
||||||
|
Normally \fBxmlwf\fR never parses parameter
|
||||||
|
entities. \*(T<\fB\-p\fR\*(T> tells it to always parse them.
|
||||||
|
\*(T<\fB\-p\fR\*(T> implies \*(T<\fB\-x\fR\*(T>.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-r\fR\*(T>
|
||||||
|
Normally \fBxmlwf\fR memory-maps the XML file
|
||||||
|
before parsing; this can result in faster parsing on many
|
||||||
|
platforms.
|
||||||
|
\*(T<\fB\-r\fR\*(T> turns off memory-mapping and uses normal file
|
||||||
|
IO calls instead.
|
||||||
|
Of course, memory-mapping is automatically turned off
|
||||||
|
when reading from standard input.
|
||||||
|
|
||||||
|
Use of memory-mapping can cause some platforms to report
|
||||||
|
substantially higher memory usage for
|
||||||
|
\fBxmlwf\fR, but this appears to be a matter of
|
||||||
|
the operating system reporting memory in a strange way; there is
|
||||||
|
not a leak in \fBxmlwf\fR.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-s\fR\*(T>
|
||||||
|
Prints an error if the document is not standalone.
|
||||||
|
A document is standalone if it has no external subset and no
|
||||||
|
references to parameter entities.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-t\fR\*(T>
|
||||||
|
Turns on timings. This tells Expat to parse the entire file,
|
||||||
|
but not perform any processing.
|
||||||
|
This gives a fairly accurate idea of the raw speed of Expat itself
|
||||||
|
without client overhead.
|
||||||
|
\*(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>, ...).
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-v\fR\*(T>
|
||||||
|
Prints the version of the Expat library being used, including some
|
||||||
|
information on the compile-time configuration of the library, and
|
||||||
|
then exits.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-w\fR\*(T>
|
||||||
|
Enables support for Windows code pages.
|
||||||
|
Normally, \fBxmlwf\fR will throw an error if it
|
||||||
|
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
|
||||||
|
page. See also \*(T<\fB\-e\fR\*(T>.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-x\fR\*(T>
|
||||||
|
Turns on parsing external entities.
|
||||||
|
|
||||||
|
Non-validating parsers are not required to resolve external
|
||||||
|
entities, or even expand entities at all.
|
||||||
|
Expat always expands internal entities (?),
|
||||||
|
but external entity parsing must be enabled explicitly.
|
||||||
|
|
||||||
|
External entities are simply entities that obtain their
|
||||||
|
data from outside the XML file currently being parsed.
|
||||||
|
|
||||||
|
This is an example of an internal entity:
|
||||||
|
|
||||||
|
.nf
|
||||||
|
|
||||||
|
<!ENTITY vers '1.0.2'>
|
||||||
|
.fi
|
||||||
|
|
||||||
|
And here are some examples of external entities:
|
||||||
|
|
||||||
|
.nf
|
||||||
|
|
||||||
|
<!ENTITY header SYSTEM "header\-&vers;.xml"> (parsed)
|
||||||
|
<!ENTITY logo SYSTEM "logo.png" PNG> (unparsed)
|
||||||
|
.fi
|
||||||
|
.TP
|
||||||
|
\*(T<\fB\-\-\fR\*(T>
|
||||||
|
(Two hyphens.)
|
||||||
|
Terminates the list of options. This is only needed if a filename
|
||||||
|
starts with a hyphen. For example:
|
||||||
|
|
||||||
|
.nf
|
||||||
|
|
||||||
|
xmlwf \-\- \-myfile.xml
|
||||||
|
.fi
|
||||||
|
|
||||||
|
will run \fBxmlwf\fR on the file
|
||||||
|
\*(T<\fI\-myfile.xml\fR\*(T>.
|
||||||
|
.PP
|
||||||
|
Older versions of \fBxmlwf\fR do not support
|
||||||
|
reading from standard input.
|
||||||
|
.SH OUTPUT
|
||||||
|
If an input file is not well-formed,
|
||||||
|
\fBxmlwf\fR prints a single line describing
|
||||||
|
the problem to standard output. If a file is well formed,
|
||||||
|
\fBxmlwf\fR outputs nothing.
|
||||||
|
.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:
|
||||||
|
.TP
|
||||||
|
\*(T<\fB0\fR\*(T>
|
||||||
|
The input files are well-formed.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB1\fR\*(T>
|
||||||
|
An internal error occurred.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB2\fR\*(T>
|
||||||
|
An input file was not well-formed or could not be parsed.
|
||||||
|
.TP
|
||||||
|
\*(T<\fB3\fR\*(T>
|
||||||
|
If using the \*(T<\fB\-d\fR\*(T> option, an error occurred opening an output file.
|
||||||
|
.SH BUGS
|
||||||
|
The errors should go to standard error, not standard output.
|
||||||
|
.PP
|
||||||
|
There should be a way to get \*(T<\fB\-d\fR\*(T> to send its
|
||||||
|
output to standard output rather than forcing the user to send
|
||||||
|
it to a file.
|
||||||
|
.PP
|
||||||
|
I have no idea why anyone would want to use the
|
||||||
|
\*(T<\fB\-d\fR\*(T>, \*(T<\fB\-c\fR\*(T>, and
|
||||||
|
\*(T<\fB\-m\fR\*(T> options. If someone could explain it to
|
||||||
|
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"
|
||||||
|
.nf
|
||||||
|
|
||||||
|
The Expat home page: http://www.libexpat.org/
|
||||||
|
The W3 XML specification: http://www.w3.org/TR/REC\-xml
|
||||||
|
.fi
|
||||||
|
.SH AUTHOR
|
||||||
|
This manual page was written by Scott Bronson <\*(T<bronson@rinspin.com\*(T>> for
|
||||||
|
the Debian GNU/Linux system (but may be used by others). Permission is
|
||||||
|
granted to copy, distribute and/or modify this document under
|
||||||
|
the terms of the GNU Free Documentation
|
||||||
|
License, Version 1.1.
|
473
3rdparty/expat/doc/xmlwf.xml
vendored
Normal file
473
3rdparty/expat/doc/xmlwf.xml
vendored
Normal file
@ -0,0 +1,473 @@
|
|||||||
|
<!DOCTYPE refentry [
|
||||||
|
<!-- Fill in your name for FIRSTNAME and SURNAME. -->
|
||||||
|
<!ENTITY dhfirstname "<firstname>Scott</firstname>">
|
||||||
|
<!ENTITY dhsurname "<surname>Bronson</surname>">
|
||||||
|
<!-- Please adjust the date whenever revising the manpage. -->
|
||||||
|
<!ENTITY dhdate "<date>March 11, 2016</date>">
|
||||||
|
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
|
||||||
|
allowed: see man(7), man(1). -->
|
||||||
|
<!ENTITY dhsection "<manvolnum>1</manvolnum>">
|
||||||
|
<!ENTITY dhemail "<email>bronson@rinspin.com</email>">
|
||||||
|
<!ENTITY dhusername "Scott Bronson">
|
||||||
|
<!ENTITY dhucpackage "<refentrytitle>XMLWF</refentrytitle>">
|
||||||
|
<!ENTITY dhpackage "xmlwf">
|
||||||
|
|
||||||
|
<!ENTITY debian "<productname>Debian GNU/Linux</productname>">
|
||||||
|
<!ENTITY gnu "<acronym>GNU</acronym>">
|
||||||
|
]>
|
||||||
|
|
||||||
|
<refentry>
|
||||||
|
<refentryinfo>
|
||||||
|
<address>
|
||||||
|
&dhemail;
|
||||||
|
</address>
|
||||||
|
<author>
|
||||||
|
&dhfirstname;
|
||||||
|
&dhsurname;
|
||||||
|
</author>
|
||||||
|
<copyright>
|
||||||
|
<year>2001</year>
|
||||||
|
<holder>&dhusername;</holder>
|
||||||
|
</copyright>
|
||||||
|
&dhdate;
|
||||||
|
</refentryinfo>
|
||||||
|
<refmeta>
|
||||||
|
&dhucpackage;
|
||||||
|
|
||||||
|
&dhsection;
|
||||||
|
</refmeta>
|
||||||
|
<refnamediv>
|
||||||
|
<refname>&dhpackage;</refname>
|
||||||
|
|
||||||
|
<refpurpose>Determines if an XML document is well-formed</refpurpose>
|
||||||
|
</refnamediv>
|
||||||
|
<refsynopsisdiv>
|
||||||
|
<cmdsynopsis>
|
||||||
|
<command>&dhpackage;</command>
|
||||||
|
<arg><option>-s</option></arg>
|
||||||
|
<arg><option>-n</option></arg>
|
||||||
|
<arg><option>-p</option></arg>
|
||||||
|
<arg><option>-x</option></arg>
|
||||||
|
|
||||||
|
<arg><option>-e <replaceable>encoding</replaceable></option></arg>
|
||||||
|
<arg><option>-w</option></arg>
|
||||||
|
|
||||||
|
<arg><option>-d <replaceable>output-dir</replaceable></option></arg>
|
||||||
|
<arg><option>-c</option></arg>
|
||||||
|
<arg><option>-m</option></arg>
|
||||||
|
|
||||||
|
<arg><option>-r</option></arg>
|
||||||
|
<arg><option>-t</option></arg>
|
||||||
|
<arg><option>-N</option></arg>
|
||||||
|
|
||||||
|
<arg><option>-v</option></arg>
|
||||||
|
|
||||||
|
<arg>file ...</arg>
|
||||||
|
</cmdsynopsis>
|
||||||
|
</refsynopsisdiv>
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<title>DESCRIPTION</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<command>&dhpackage;</command> uses the Expat library to
|
||||||
|
determine if an XML document is well-formed. It is
|
||||||
|
non-validating.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If you do not specify any files on the command-line, and you
|
||||||
|
have a recent version of <command>&dhpackage;</command>, the
|
||||||
|
input file will be read from standard input.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</refsect1>
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<title>WELL-FORMED DOCUMENTS</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A well-formed document must adhere to the
|
||||||
|
following rules:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem><para>
|
||||||
|
The file begins with an XML declaration. For instance,
|
||||||
|
<literal><?xml version="1.0" standalone="yes"?></literal>.
|
||||||
|
<emphasis>NOTE:</emphasis>
|
||||||
|
<command>&dhpackage;</command> does not currently
|
||||||
|
check for a valid XML declaration.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
Every start tag is either empty (<tag/>)
|
||||||
|
or has a corresponding end tag.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
There is exactly one root element. This element must contain
|
||||||
|
all other elements in the document. Only comments, white
|
||||||
|
space, and processing instructions may come after the close
|
||||||
|
of the root element.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
All elements nest properly.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
All attribute values are enclosed in quotes (either single
|
||||||
|
or double).
|
||||||
|
</para></listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If the document has a DTD, and it strictly complies with that
|
||||||
|
DTD, then the document is also considered <emphasis>valid</emphasis>.
|
||||||
|
<command>&dhpackage;</command> is a non-validating parser --
|
||||||
|
it does not check the DTD. However, it does support
|
||||||
|
external entities (see the <option>-x</option> option).
|
||||||
|
</para>
|
||||||
|
</refsect1>
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<title>OPTIONS</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
When an option includes an argument, you may specify the argument either
|
||||||
|
separately ("<option>-d</option> output") or concatenated with the
|
||||||
|
option ("<option>-d</option>output"). <command>&dhpackage;</command>
|
||||||
|
supports both.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<variablelist>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-c</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
If the input file is well-formed and <command>&dhpackage;</command>
|
||||||
|
doesn't encounter any errors, the input file is simply copied to
|
||||||
|
the output directory unchanged.
|
||||||
|
This implies no namespaces (turns off <option>-n</option>) and
|
||||||
|
requires <option>-d</option> to specify an output directory.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-d output-dir</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Specifies a directory to contain transformed
|
||||||
|
representations of the input files.
|
||||||
|
By default, <option>-d</option> outputs a canonical representation
|
||||||
|
(described below).
|
||||||
|
You can select different output formats using <option>-c</option>,
|
||||||
|
<option>-m</option> and <option>-N</option>.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
The output filenames will
|
||||||
|
be exactly the same as the input filenames or "STDIN" if the input is
|
||||||
|
coming from standard input. Therefore, you must be careful that the
|
||||||
|
output file does not go into the same directory as the input
|
||||||
|
file. Otherwise, <command>&dhpackage;</command> will delete the
|
||||||
|
input file before it generates the output file (just like running
|
||||||
|
<literal>cat < file > file</literal> in most shells).
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
Two structurally equivalent XML documents have a byte-for-byte
|
||||||
|
identical canonical XML representation.
|
||||||
|
Note that ignorable white space is considered significant and
|
||||||
|
is treated equivalently to data.
|
||||||
|
More on canonical XML can be found at
|
||||||
|
http://www.jclark.com/xml/canonxml.html .
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-e encoding</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Specifies the character encoding for the document, overriding
|
||||||
|
any document encoding declaration. <command>&dhpackage;</command>
|
||||||
|
supports four built-in encodings:
|
||||||
|
<literal>US-ASCII</literal>,
|
||||||
|
<literal>UTF-8</literal>,
|
||||||
|
<literal>UTF-16</literal>, and
|
||||||
|
<literal>ISO-8859-1</literal>.
|
||||||
|
Also see the <option>-w</option> option.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-m</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Outputs some strange sort of XML file that completely
|
||||||
|
describes the input file, including character positions.
|
||||||
|
Requires <option>-d</option> to specify an output file.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-n</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Turns on namespace processing. (describe namespaces)
|
||||||
|
<option>-c</option> disables namespaces.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-N</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Adds a doctype and notation declarations to canonical XML output.
|
||||||
|
This matches the example output used by the formal XML test cases.
|
||||||
|
Requires <option>-d</option> to specify an output file.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-p</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Tells xmlwf to process external DTDs and parameter
|
||||||
|
entities.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
Normally <command>&dhpackage;</command> never parses parameter
|
||||||
|
entities. <option>-p</option> tells it to always parse them.
|
||||||
|
<option>-p</option> implies <option>-x</option>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-r</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Normally <command>&dhpackage;</command> memory-maps the XML file
|
||||||
|
before parsing; this can result in faster parsing on many
|
||||||
|
platforms.
|
||||||
|
<option>-r</option> turns off memory-mapping and uses normal file
|
||||||
|
IO calls instead.
|
||||||
|
Of course, memory-mapping is automatically turned off
|
||||||
|
when reading from standard input.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
Use of memory-mapping can cause some platforms to report
|
||||||
|
substantially higher memory usage for
|
||||||
|
<command>&dhpackage;</command>, but this appears to be a matter of
|
||||||
|
the operating system reporting memory in a strange way; there is
|
||||||
|
not a leak in <command>&dhpackage;</command>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-s</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Prints an error if the document is not standalone.
|
||||||
|
A document is standalone if it has no external subset and no
|
||||||
|
references to parameter entities.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-t</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Turns on timings. This tells Expat to parse the entire file,
|
||||||
|
but not perform any processing.
|
||||||
|
This gives a fairly accurate idea of the raw speed of Expat itself
|
||||||
|
without client overhead.
|
||||||
|
<option>-t</option> turns off most of the output options
|
||||||
|
(<option>-d</option>, <option>-m</option>, <option>-c</option>, ...).
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-v</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Prints the version of the Expat library being used, including some
|
||||||
|
information on the compile-time configuration of the library, and
|
||||||
|
then exits.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-w</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Enables support for Windows code pages.
|
||||||
|
Normally, <command>&dhpackage;</command> will throw an error if it
|
||||||
|
runs across an encoding that it is not equipped to handle itself. With
|
||||||
|
<option>-w</option>, &dhpackage; will try to use a Windows code
|
||||||
|
page. See also <option>-e</option>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>-x</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Turns on parsing external entities.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
Non-validating parsers are not required to resolve external
|
||||||
|
entities, or even expand entities at all.
|
||||||
|
Expat always expands internal entities (?),
|
||||||
|
but external entity parsing must be enabled explicitly.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
External entities are simply entities that obtain their
|
||||||
|
data from outside the XML file currently being parsed.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
This is an example of an internal entity:
|
||||||
|
<literallayout>
|
||||||
|
<!ENTITY vers '1.0.2'>
|
||||||
|
</literallayout>
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
And here are some examples of external entities:
|
||||||
|
|
||||||
|
<literallayout>
|
||||||
|
<!ENTITY header SYSTEM "header-&vers;.xml"> (parsed)
|
||||||
|
<!ENTITY logo SYSTEM "logo.png" PNG> (unparsed)
|
||||||
|
</literallayout>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>--</option></term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
(Two hyphens.)
|
||||||
|
Terminates the list of options. This is only needed if a filename
|
||||||
|
starts with a hyphen. For example:
|
||||||
|
</para>
|
||||||
|
<literallayout>
|
||||||
|
&dhpackage; -- -myfile.xml
|
||||||
|
</literallayout>
|
||||||
|
<para>
|
||||||
|
will run <command>&dhpackage;</command> on the file
|
||||||
|
<filename>-myfile.xml</filename>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Older versions of <command>&dhpackage;</command> do not support
|
||||||
|
reading from standard input.
|
||||||
|
</para>
|
||||||
|
</refsect1>
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<title>OUTPUT</title>
|
||||||
|
<para>
|
||||||
|
If an input file is not well-formed,
|
||||||
|
<command>&dhpackage;</command> prints a single line describing
|
||||||
|
the problem to standard output. If a file is well formed,
|
||||||
|
<command>&dhpackage;</command> outputs nothing.
|
||||||
|
</para>
|
||||||
|
</refsect1>
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<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:
|
||||||
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>0</option></term>
|
||||||
|
<listitem><para>The input files are well-formed.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>1</option></term>
|
||||||
|
<listitem><para>An internal error occurred.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>2</option></term>
|
||||||
|
<listitem><para>An input file was not well-formed or could not be parsed.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term><option>3</option></term>
|
||||||
|
<listitem><para>If using the <option>-d</option> option, an error occurred opening an output file.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
</para>
|
||||||
|
</refsect1>
|
||||||
|
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<title>BUGS</title>
|
||||||
|
<para>
|
||||||
|
The errors should go to standard error, not standard output.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
There should be a way to get <option>-d</option> to send its
|
||||||
|
output to standard output rather than forcing the user to send
|
||||||
|
it to a file.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
I have no idea why anyone would want to use the
|
||||||
|
<option>-d</option>, <option>-c</option>, and
|
||||||
|
<option>-m</option> options. If someone could explain it to
|
||||||
|
me, I'd like to add this information to this manpage.
|
||||||
|
</para>
|
||||||
|
</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>
|
||||||
|
<title>SEE ALSO</title>
|
||||||
|
<para>
|
||||||
|
|
||||||
|
<literallayout>
|
||||||
|
The Expat home page: http://www.libexpat.org/
|
||||||
|
The W3 XML specification: http://www.w3.org/TR/REC-xml
|
||||||
|
</literallayout>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
</refsect1>
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<title>AUTHOR</title>
|
||||||
|
<para>
|
||||||
|
This manual page was written by &dhusername; &dhemail; for
|
||||||
|
the &debian; system (but may be used by others). Permission is
|
||||||
|
granted to copy, distribute and/or modify this document under
|
||||||
|
the terms of the <acronym>GNU</acronym> Free Documentation
|
||||||
|
License, Version 1.1.
|
||||||
|
</para>
|
||||||
|
</refsect1>
|
||||||
|
</refentry>
|
39
3rdparty/expat/examples/Makefile.am
vendored
Normal file
39
3rdparty/expat/examples/Makefile.am
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib
|
||||||
|
|
||||||
|
noinst_PROGRAMS = elements outline
|
||||||
|
|
||||||
|
elements_SOURCES = elements.c
|
||||||
|
elements_LDADD = ../lib/libexpat.la
|
||||||
|
|
||||||
|
outline_SOURCES = outline.c
|
||||||
|
outline_LDADD = ../lib/libexpat.la
|
660
3rdparty/expat/examples/Makefile.in
vendored
Normal file
660
3rdparty/expat/examples/Makefile.in
vendored
Normal file
@ -0,0 +1,660 @@
|
|||||||
|
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
||||||
|
# @configure_input@
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# This Makefile.in 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.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
@SET_MAKE@
|
||||||
|
|
||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
VPATH = @srcdir@
|
||||||
|
am__is_gnu_make = { \
|
||||||
|
if test -z '$(MAKELEVEL)'; then \
|
||||||
|
false; \
|
||||||
|
elif test -n '$(MAKE_HOST)'; then \
|
||||||
|
true; \
|
||||||
|
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||||||
|
true; \
|
||||||
|
else \
|
||||||
|
false; \
|
||||||
|
fi; \
|
||||||
|
}
|
||||||
|
am__make_running_with_option = \
|
||||||
|
case $${target_option-} in \
|
||||||
|
?) ;; \
|
||||||
|
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||||
|
"target option '$${target_option-}' specified" >&2; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
has_opt=no; \
|
||||||
|
sane_makeflags=$$MAKEFLAGS; \
|
||||||
|
if $(am__is_gnu_make); then \
|
||||||
|
sane_makeflags=$$MFLAGS; \
|
||||||
|
else \
|
||||||
|
case $$MAKEFLAGS in \
|
||||||
|
*\\[\ \ ]*) \
|
||||||
|
bs=\\; \
|
||||||
|
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||||
|
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||||
|
esac; \
|
||||||
|
fi; \
|
||||||
|
skip_next=no; \
|
||||||
|
strip_trailopt () \
|
||||||
|
{ \
|
||||||
|
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||||
|
}; \
|
||||||
|
for flg in $$sane_makeflags; do \
|
||||||
|
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||||
|
case $$flg in \
|
||||||
|
*=*|--*) continue;; \
|
||||||
|
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||||
|
-*I?*) strip_trailopt 'I';; \
|
||||||
|
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||||
|
-*O?*) strip_trailopt 'O';; \
|
||||||
|
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||||
|
-*l?*) strip_trailopt 'l';; \
|
||||||
|
-[dEDm]) skip_next=yes;; \
|
||||||
|
-[JT]) skip_next=yes;; \
|
||||||
|
esac; \
|
||||||
|
case $$flg in \
|
||||||
|
*$$target_option*) has_opt=yes; break;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
test $$has_opt = yes
|
||||||
|
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||||
|
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||||
|
pkgdatadir = $(datadir)/@PACKAGE@
|
||||||
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
|
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||||
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
|
install_sh_PROGRAM = $(install_sh) -c
|
||||||
|
install_sh_SCRIPT = $(install_sh) -c
|
||||||
|
INSTALL_HEADER = $(INSTALL_DATA)
|
||||||
|
transform = $(program_transform_name)
|
||||||
|
NORMAL_INSTALL = :
|
||||||
|
PRE_INSTALL = :
|
||||||
|
POST_INSTALL = :
|
||||||
|
NORMAL_UNINSTALL = :
|
||||||
|
PRE_UNINSTALL = :
|
||||||
|
POST_UNINSTALL = :
|
||||||
|
build_triplet = @build@
|
||||||
|
host_triplet = @host@
|
||||||
|
noinst_PROGRAMS = elements$(EXEEXT) outline$(EXEEXT)
|
||||||
|
subdir = examples
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||||
|
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||||
|
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
|
||||||
|
$(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-require-defined.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-compile-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-link-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/configure.ac
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||||
|
mkinstalldirs = $(install_sh) -d
|
||||||
|
CONFIG_HEADER = $(top_builddir)/expat_config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
CONFIG_CLEAN_VPATH_FILES =
|
||||||
|
PROGRAMS = $(noinst_PROGRAMS)
|
||||||
|
am_elements_OBJECTS = elements.$(OBJEXT)
|
||||||
|
elements_OBJECTS = $(am_elements_OBJECTS)
|
||||||
|
elements_DEPENDENCIES = ../lib/libexpat.la
|
||||||
|
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||||
|
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||||
|
am__v_lt_0 = --silent
|
||||||
|
am__v_lt_1 =
|
||||||
|
am_outline_OBJECTS = outline.$(OBJEXT)
|
||||||
|
outline_OBJECTS = $(am_outline_OBJECTS)
|
||||||
|
outline_DEPENDENCIES = ../lib/libexpat.la
|
||||||
|
AM_V_P = $(am__v_P_@AM_V@)
|
||||||
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||||
|
am__v_P_0 = false
|
||||||
|
am__v_P_1 = :
|
||||||
|
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||||
|
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||||
|
am__v_GEN_0 = @echo " GEN " $@;
|
||||||
|
am__v_GEN_1 =
|
||||||
|
AM_V_at = $(am__v_at_@AM_V@)
|
||||||
|
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||||
|
am__v_at_0 = @
|
||||||
|
am__v_at_1 =
|
||||||
|
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||||
|
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
||||||
|
am__maybe_remake_depfiles = depfiles
|
||||||
|
am__depfiles_remade = ./$(DEPDIR)/elements.Po ./$(DEPDIR)/outline.Po
|
||||||
|
am__mv = mv -f
|
||||||
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
|
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
|
||||||
|
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||||
|
$(AM_CFLAGS) $(CFLAGS)
|
||||||
|
AM_V_CC = $(am__v_CC_@AM_V@)
|
||||||
|
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
|
||||||
|
am__v_CC_0 = @echo " CC " $@;
|
||||||
|
am__v_CC_1 =
|
||||||
|
CCLD = $(CC)
|
||||||
|
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||||
|
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
|
||||||
|
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
||||||
|
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||||
|
am__v_CCLD_1 =
|
||||||
|
SOURCES = $(elements_SOURCES) $(outline_SOURCES)
|
||||||
|
DIST_SOURCES = $(elements_SOURCES) $(outline_SOURCES)
|
||||||
|
am__can_run_installinfo = \
|
||||||
|
case $$AM_UPDATE_INFO_DIR in \
|
||||||
|
n|no|NO) false;; \
|
||||||
|
*) (install-info --version) >/dev/null 2>&1;; \
|
||||||
|
esac
|
||||||
|
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||||
|
# Read a list of newline-separated strings from the standard input,
|
||||||
|
# and print each of them once, without duplicates. Input order is
|
||||||
|
# *not* preserved.
|
||||||
|
am__uniquify_input = $(AWK) '\
|
||||||
|
BEGIN { nonempty = 0; } \
|
||||||
|
{ items[$$0] = 1; nonempty = 1; } \
|
||||||
|
END { if (nonempty) { for (i in items) print i; }; } \
|
||||||
|
'
|
||||||
|
# Make sure the list of sources is unique. This is necessary because,
|
||||||
|
# e.g., the same source file might be shared among _SOURCES variables
|
||||||
|
# for different programs/libraries.
|
||||||
|
am__define_uniq_tagged_files = \
|
||||||
|
list='$(am__tagged_files)'; \
|
||||||
|
unique=`for i in $$list; do \
|
||||||
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
|
done | $(am__uniquify_input)`
|
||||||
|
ETAGS = etags
|
||||||
|
CTAGS = ctags
|
||||||
|
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
||||||
|
$(top_srcdir)/conftools/depcomp
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
ACLOCAL = @ACLOCAL@
|
||||||
|
AMTAR = @AMTAR@
|
||||||
|
AM_CFLAGS = @AM_CFLAGS@
|
||||||
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib
|
||||||
|
AM_CXXFLAGS = @AM_CXXFLAGS@
|
||||||
|
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||||
|
AM_LDFLAGS = @AM_LDFLAGS@
|
||||||
|
AR = @AR@
|
||||||
|
AS = @AS@
|
||||||
|
AUTOCONF = @AUTOCONF@
|
||||||
|
AUTOHEADER = @AUTOHEADER@
|
||||||
|
AUTOMAKE = @AUTOMAKE@
|
||||||
|
AWK = @AWK@
|
||||||
|
CC = @CC@
|
||||||
|
CCDEPMODE = @CCDEPMODE@
|
||||||
|
CFLAGS = @CFLAGS@
|
||||||
|
CPP = @CPP@
|
||||||
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CXX = @CXX@
|
||||||
|
CXXCPP = @CXXCPP@
|
||||||
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
|
CXXFLAGS = @CXXFLAGS@
|
||||||
|
CYGPATH_W = @CYGPATH_W@
|
||||||
|
DEFS = @DEFS@
|
||||||
|
DEPDIR = @DEPDIR@
|
||||||
|
DLLTOOL = @DLLTOOL@
|
||||||
|
DOCBOOK_TO_MAN = @DOCBOOK_TO_MAN@
|
||||||
|
DSYMUTIL = @DSYMUTIL@
|
||||||
|
DUMPBIN = @DUMPBIN@
|
||||||
|
ECHO_C = @ECHO_C@
|
||||||
|
ECHO_N = @ECHO_N@
|
||||||
|
ECHO_T = @ECHO_T@
|
||||||
|
EGREP = @EGREP@
|
||||||
|
EXEEXT = @EXEEXT@
|
||||||
|
FGREP = @FGREP@
|
||||||
|
FILEMAP = @FILEMAP@
|
||||||
|
GREP = @GREP@
|
||||||
|
INSTALL = @INSTALL@
|
||||||
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||||
|
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||||
|
LD = @LD@
|
||||||
|
LDFLAGS = @LDFLAGS@
|
||||||
|
LIBAGE = @LIBAGE@
|
||||||
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBOBJS = @LIBOBJS@
|
||||||
|
LIBREVISION = @LIBREVISION@
|
||||||
|
LIBS = @LIBS@
|
||||||
|
LIBTOOL = @LIBTOOL@
|
||||||
|
LIPO = @LIPO@
|
||||||
|
LN_S = @LN_S@
|
||||||
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAKEINFO = @MAKEINFO@
|
||||||
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
|
MKDIR_P = @MKDIR_P@
|
||||||
|
NM = @NM@
|
||||||
|
NMEDIT = @NMEDIT@
|
||||||
|
OBJDUMP = @OBJDUMP@
|
||||||
|
OBJEXT = @OBJEXT@
|
||||||
|
OTOOL = @OTOOL@
|
||||||
|
OTOOL64 = @OTOOL64@
|
||||||
|
PACKAGE = @PACKAGE@
|
||||||
|
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||||
|
PACKAGE_NAME = @PACKAGE_NAME@
|
||||||
|
PACKAGE_STRING = @PACKAGE_STRING@
|
||||||
|
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||||
|
PACKAGE_URL = @PACKAGE_URL@
|
||||||
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||||
|
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||||
|
RANLIB = @RANLIB@
|
||||||
|
SED = @SED@
|
||||||
|
SET_MAKE = @SET_MAKE@
|
||||||
|
SHELL = @SHELL@
|
||||||
|
STRIP = @STRIP@
|
||||||
|
VERSION = @VERSION@
|
||||||
|
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
||||||
|
abs_builddir = @abs_builddir@
|
||||||
|
abs_srcdir = @abs_srcdir@
|
||||||
|
abs_top_builddir = @abs_top_builddir@
|
||||||
|
abs_top_srcdir = @abs_top_srcdir@
|
||||||
|
ac_ct_AR = @ac_ct_AR@
|
||||||
|
ac_ct_CC = @ac_ct_CC@
|
||||||
|
ac_ct_CXX = @ac_ct_CXX@
|
||||||
|
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||||
|
am__include = @am__include@
|
||||||
|
am__leading_dot = @am__leading_dot@
|
||||||
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
|
bindir = @bindir@
|
||||||
|
build = @build@
|
||||||
|
build_alias = @build_alias@
|
||||||
|
build_cpu = @build_cpu@
|
||||||
|
build_os = @build_os@
|
||||||
|
build_vendor = @build_vendor@
|
||||||
|
builddir = @builddir@
|
||||||
|
datadir = @datadir@
|
||||||
|
datarootdir = @datarootdir@
|
||||||
|
docdir = @docdir@
|
||||||
|
dvidir = @dvidir@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
host = @host@
|
||||||
|
host_alias = @host_alias@
|
||||||
|
host_cpu = @host_cpu@
|
||||||
|
host_os = @host_os@
|
||||||
|
host_vendor = @host_vendor@
|
||||||
|
htmldir = @htmldir@
|
||||||
|
includedir = @includedir@
|
||||||
|
infodir = @infodir@
|
||||||
|
install_sh = @install_sh@
|
||||||
|
libdir = @libdir@
|
||||||
|
libexecdir = @libexecdir@
|
||||||
|
localedir = @localedir@
|
||||||
|
localstatedir = @localstatedir@
|
||||||
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
|
oldincludedir = @oldincludedir@
|
||||||
|
pdfdir = @pdfdir@
|
||||||
|
prefix = @prefix@
|
||||||
|
program_transform_name = @program_transform_name@
|
||||||
|
psdir = @psdir@
|
||||||
|
runstatedir = @runstatedir@
|
||||||
|
sbindir = @sbindir@
|
||||||
|
sharedstatedir = @sharedstatedir@
|
||||||
|
srcdir = @srcdir@
|
||||||
|
sysconfdir = @sysconfdir@
|
||||||
|
target_alias = @target_alias@
|
||||||
|
top_build_prefix = @top_build_prefix@
|
||||||
|
top_builddir = @top_builddir@
|
||||||
|
top_srcdir = @top_srcdir@
|
||||||
|
elements_SOURCES = elements.c
|
||||||
|
elements_LDADD = ../lib/libexpat.la
|
||||||
|
outline_SOURCES = outline.c
|
||||||
|
outline_LDADD = ../lib/libexpat.la
|
||||||
|
all: all-am
|
||||||
|
|
||||||
|
.SUFFIXES:
|
||||||
|
.SUFFIXES: .c .lo .o .obj
|
||||||
|
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||||
|
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu examples/Makefile'; \
|
||||||
|
$(am__cd) $(top_srcdir) && \
|
||||||
|
$(AUTOMAKE) --gnu examples/Makefile
|
||||||
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
|
clean-noinstPROGRAMS:
|
||||||
|
@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
|
||||||
|
echo " rm -f" $$list; \
|
||||||
|
rm -f $$list || exit $$?; \
|
||||||
|
test -n "$(EXEEXT)" || exit 0; \
|
||||||
|
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
|
||||||
|
echo " rm -f" $$list; \
|
||||||
|
rm -f $$list
|
||||||
|
|
||||||
|
elements$(EXEEXT): $(elements_OBJECTS) $(elements_DEPENDENCIES) $(EXTRA_elements_DEPENDENCIES)
|
||||||
|
@rm -f elements$(EXEEXT)
|
||||||
|
$(AM_V_CCLD)$(LINK) $(elements_OBJECTS) $(elements_LDADD) $(LIBS)
|
||||||
|
|
||||||
|
outline$(EXEEXT): $(outline_OBJECTS) $(outline_DEPENDENCIES) $(EXTRA_outline_DEPENDENCIES)
|
||||||
|
@rm -f outline$(EXEEXT)
|
||||||
|
$(AM_V_CCLD)$(LINK) $(outline_OBJECTS) $(outline_LDADD) $(LIBS)
|
||||||
|
|
||||||
|
mostlyclean-compile:
|
||||||
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
|
distclean-compile:
|
||||||
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
@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
|
||||||
|
|
||||||
|
$(am__depfiles_remade):
|
||||||
|
@$(MKDIR_P) $(@D)
|
||||||
|
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
|
||||||
|
|
||||||
|
am--depfiles: $(am__depfiles_remade)
|
||||||
|
|
||||||
|
.c.o:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
|
||||||
|
|
||||||
|
.c.obj:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||||
|
|
||||||
|
.c.lo:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
|
||||||
|
|
||||||
|
mostlyclean-libtool:
|
||||||
|
-rm -f *.lo
|
||||||
|
|
||||||
|
clean-libtool:
|
||||||
|
-rm -rf .libs _libs
|
||||||
|
|
||||||
|
ID: $(am__tagged_files)
|
||||||
|
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||||
|
tags: tags-am
|
||||||
|
TAGS: tags
|
||||||
|
|
||||||
|
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||||
|
set x; \
|
||||||
|
here=`pwd`; \
|
||||||
|
$(am__define_uniq_tagged_files); \
|
||||||
|
shift; \
|
||||||
|
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||||
|
test -n "$$unique" || unique=$$empty_fix; \
|
||||||
|
if test $$# -gt 0; then \
|
||||||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
"$$@" $$unique; \
|
||||||
|
else \
|
||||||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
$$unique; \
|
||||||
|
fi; \
|
||||||
|
fi
|
||||||
|
ctags: ctags-am
|
||||||
|
|
||||||
|
CTAGS: ctags
|
||||||
|
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||||
|
$(am__define_uniq_tagged_files); \
|
||||||
|
test -z "$(CTAGS_ARGS)$$unique" \
|
||||||
|
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||||
|
$$unique
|
||||||
|
|
||||||
|
GTAGS:
|
||||||
|
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||||
|
&& $(am__cd) $(top_srcdir) \
|
||||||
|
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||||
|
cscopelist: cscopelist-am
|
||||||
|
|
||||||
|
cscopelist-am: $(am__tagged_files)
|
||||||
|
list='$(am__tagged_files)'; \
|
||||||
|
case "$(srcdir)" in \
|
||||||
|
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||||
|
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||||
|
esac; \
|
||||||
|
for i in $$list; do \
|
||||||
|
if test -f "$$i"; then \
|
||||||
|
echo "$(subdir)/$$i"; \
|
||||||
|
else \
|
||||||
|
echo "$$sdir/$$i"; \
|
||||||
|
fi; \
|
||||||
|
done >> $(top_builddir)/cscope.files
|
||||||
|
|
||||||
|
distclean-tags:
|
||||||
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
|
|
||||||
|
distdir: $(BUILT_SOURCES)
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
|
distdir-am: $(DISTFILES)
|
||||||
|
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
list='$(DISTFILES)'; \
|
||||||
|
dist_files=`for file in $$list; do echo $$file; done | \
|
||||||
|
sed -e "s|^$$srcdirstrip/||;t" \
|
||||||
|
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||||
|
case $$dist_files in \
|
||||||
|
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||||
|
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||||
|
sort -u` ;; \
|
||||||
|
esac; \
|
||||||
|
for file in $$dist_files; do \
|
||||||
|
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||||
|
if test -d $$d/$$file; then \
|
||||||
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
|
if test -d "$(distdir)/$$file"; then \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||||
|
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
else \
|
||||||
|
test -f "$(distdir)/$$file" \
|
||||||
|
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||||
|
|| exit 1; \
|
||||||
|
fi; \
|
||||||
|
done
|
||||||
|
check-am: all-am
|
||||||
|
check: check-am
|
||||||
|
all-am: Makefile $(PROGRAMS)
|
||||||
|
installdirs:
|
||||||
|
install: install-am
|
||||||
|
install-exec: install-exec-am
|
||||||
|
install-data: install-data-am
|
||||||
|
uninstall: uninstall-am
|
||||||
|
|
||||||
|
install-am: all-am
|
||||||
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||||
|
|
||||||
|
installcheck: installcheck-am
|
||||||
|
install-strip:
|
||||||
|
if test -z '$(STRIP)'; then \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
install; \
|
||||||
|
else \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||||
|
fi
|
||||||
|
mostlyclean-generic:
|
||||||
|
|
||||||
|
clean-generic:
|
||||||
|
|
||||||
|
distclean-generic:
|
||||||
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||||
|
|
||||||
|
maintainer-clean-generic:
|
||||||
|
@echo "This command is intended for maintainers to use"
|
||||||
|
@echo "it deletes files that may require special tools to rebuild."
|
||||||
|
clean: clean-am
|
||||||
|
|
||||||
|
clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
|
||||||
|
mostlyclean-am
|
||||||
|
|
||||||
|
distclean: distclean-am
|
||||||
|
-rm -f ./$(DEPDIR)/elements.Po
|
||||||
|
-rm -f ./$(DEPDIR)/outline.Po
|
||||||
|
-rm -f Makefile
|
||||||
|
distclean-am: clean-am distclean-compile distclean-generic \
|
||||||
|
distclean-tags
|
||||||
|
|
||||||
|
dvi: dvi-am
|
||||||
|
|
||||||
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
|
html-am:
|
||||||
|
|
||||||
|
info: info-am
|
||||||
|
|
||||||
|
info-am:
|
||||||
|
|
||||||
|
install-data-am:
|
||||||
|
|
||||||
|
install-dvi: install-dvi-am
|
||||||
|
|
||||||
|
install-dvi-am:
|
||||||
|
|
||||||
|
install-exec-am:
|
||||||
|
|
||||||
|
install-html: install-html-am
|
||||||
|
|
||||||
|
install-html-am:
|
||||||
|
|
||||||
|
install-info: install-info-am
|
||||||
|
|
||||||
|
install-info-am:
|
||||||
|
|
||||||
|
install-man:
|
||||||
|
|
||||||
|
install-pdf: install-pdf-am
|
||||||
|
|
||||||
|
install-pdf-am:
|
||||||
|
|
||||||
|
install-ps: install-ps-am
|
||||||
|
|
||||||
|
install-ps-am:
|
||||||
|
|
||||||
|
installcheck-am:
|
||||||
|
|
||||||
|
maintainer-clean: maintainer-clean-am
|
||||||
|
-rm -f ./$(DEPDIR)/elements.Po
|
||||||
|
-rm -f ./$(DEPDIR)/outline.Po
|
||||||
|
-rm -f Makefile
|
||||||
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||||
|
|
||||||
|
mostlyclean: mostlyclean-am
|
||||||
|
|
||||||
|
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||||
|
mostlyclean-libtool
|
||||||
|
|
||||||
|
pdf: pdf-am
|
||||||
|
|
||||||
|
pdf-am:
|
||||||
|
|
||||||
|
ps: ps-am
|
||||||
|
|
||||||
|
ps-am:
|
||||||
|
|
||||||
|
uninstall-am:
|
||||||
|
|
||||||
|
.MAKE: install-am install-strip
|
||||||
|
|
||||||
|
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
|
||||||
|
clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \
|
||||||
|
ctags ctags-am distclean distclean-compile distclean-generic \
|
||||||
|
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||||
|
html-am info info-am install install-am install-data \
|
||||||
|
install-data-am install-dvi install-dvi-am install-exec \
|
||||||
|
install-exec-am install-html install-html-am install-info \
|
||||||
|
install-info-am install-man install-pdf install-pdf-am \
|
||||||
|
install-ps install-ps-am install-strip installcheck \
|
||||||
|
installcheck-am installdirs maintainer-clean \
|
||||||
|
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||||
|
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||||
|
tags tags-am uninstall uninstall-am
|
||||||
|
|
||||||
|
.PRECIOUS: Makefile
|
||||||
|
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
.NOEXPORT:
|
97
3rdparty/expat/examples/elements.c
vendored
Normal file
97
3rdparty/expat/examples/elements.c
vendored
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
/* This is simple demonstration of how to use expat. This program
|
||||||
|
reads an XML document from standard input and writes a line with
|
||||||
|
the name of each element to standard output indenting child
|
||||||
|
elements by one tab stop more than their parent element.
|
||||||
|
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) 2000-2017 Expat development team
|
||||||
|
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 <stdio.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
|
||||||
|
# include <wchar.h>
|
||||||
|
# define XML_FMT_STR "ls"
|
||||||
|
#else
|
||||||
|
# define XML_FMT_STR "s"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
startElement(void *userData, const XML_Char *name, const XML_Char **atts) {
|
||||||
|
int i;
|
||||||
|
int *depthPtr = (int *)userData;
|
||||||
|
(void)atts;
|
||||||
|
|
||||||
|
for (i = 0; i < *depthPtr; i++)
|
||||||
|
putchar('\t');
|
||||||
|
printf("%" XML_FMT_STR "\n", name);
|
||||||
|
*depthPtr += 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
endElement(void *userData, const XML_Char *name) {
|
||||||
|
int *depthPtr = (int *)userData;
|
||||||
|
(void)name;
|
||||||
|
|
||||||
|
*depthPtr -= 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[]) {
|
||||||
|
char buf[BUFSIZ];
|
||||||
|
XML_Parser parser = XML_ParserCreate(NULL);
|
||||||
|
int done;
|
||||||
|
int depth = 0;
|
||||||
|
(void)argc;
|
||||||
|
(void)argv;
|
||||||
|
|
||||||
|
XML_SetUserData(parser, &depth);
|
||||||
|
XML_SetElementHandler(parser, startElement, endElement);
|
||||||
|
do {
|
||||||
|
size_t len = fread(buf, 1, sizeof(buf), stdin);
|
||||||
|
done = len < sizeof(buf);
|
||||||
|
if (XML_Parse(parser, buf, (int)len, done) == XML_STATUS_ERROR) {
|
||||||
|
fprintf(stderr, "%" XML_FMT_STR " at line %" XML_FMT_INT_MOD "u\n",
|
||||||
|
XML_ErrorString(XML_GetErrorCode(parser)),
|
||||||
|
XML_GetCurrentLineNumber(parser));
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
} while (! done);
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
return 0;
|
||||||
|
}
|
119
3rdparty/expat/examples/outline.c
vendored
Normal file
119
3rdparty/expat/examples/outline.c
vendored
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
/* Read an XML document from standard input and print an element
|
||||||
|
outline on standard output.
|
||||||
|
Must be used with Expat compiled for UTF-8 output.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 <stdio.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
|
||||||
|
|
||||||
|
#define BUFFSIZE 8192
|
||||||
|
|
||||||
|
char Buff[BUFFSIZE];
|
||||||
|
|
||||||
|
int Depth;
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
start(void *data, const XML_Char *el, const XML_Char **attr) {
|
||||||
|
int i;
|
||||||
|
(void)data;
|
||||||
|
|
||||||
|
for (i = 0; i < Depth; i++)
|
||||||
|
printf(" ");
|
||||||
|
|
||||||
|
printf("%" XML_FMT_STR, el);
|
||||||
|
|
||||||
|
for (i = 0; attr[i]; i += 2) {
|
||||||
|
printf(" %" XML_FMT_STR "='%" XML_FMT_STR "'", attr[i], attr[i + 1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("\n");
|
||||||
|
Depth++;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void XMLCALL
|
||||||
|
end(void *data, const XML_Char *el) {
|
||||||
|
(void)data;
|
||||||
|
(void)el;
|
||||||
|
|
||||||
|
Depth--;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[]) {
|
||||||
|
XML_Parser p = XML_ParserCreate(NULL);
|
||||||
|
(void)argc;
|
||||||
|
(void)argv;
|
||||||
|
|
||||||
|
if (! p) {
|
||||||
|
fprintf(stderr, "Couldn't allocate memory for parser\n");
|
||||||
|
exit(-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
XML_SetElementHandler(p, start, end);
|
||||||
|
|
||||||
|
for (;;) {
|
||||||
|
int done;
|
||||||
|
int len;
|
||||||
|
|
||||||
|
len = (int)fread(Buff, 1, BUFFSIZE, stdin);
|
||||||
|
if (ferror(stdin)) {
|
||||||
|
fprintf(stderr, "Read error\n");
|
||||||
|
exit(-1);
|
||||||
|
}
|
||||||
|
done = feof(stdin);
|
||||||
|
|
||||||
|
if (XML_Parse(p, Buff, len, done) == XML_STATUS_ERROR) {
|
||||||
|
fprintf(stderr,
|
||||||
|
"Parse error at line %" XML_FMT_INT_MOD "u:\n%" XML_FMT_STR "\n",
|
||||||
|
XML_GetCurrentLineNumber(p),
|
||||||
|
XML_ErrorString(XML_GetErrorCode(p)));
|
||||||
|
exit(-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (done)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
XML_ParserFree(p);
|
||||||
|
return 0;
|
||||||
|
}
|
11
3rdparty/expat/expat.pc.in
vendored
Normal file
11
3rdparty/expat/expat.pc.in
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
prefix=@prefix@
|
||||||
|
exec_prefix=@exec_prefix@
|
||||||
|
libdir=@libdir@
|
||||||
|
includedir=@includedir@
|
||||||
|
|
||||||
|
Name: @_EXPAT_OUTPUT_NAME@
|
||||||
|
Version: @PACKAGE_VERSION@
|
||||||
|
Description: expat XML parser
|
||||||
|
URL: http://www.libexpat.org
|
||||||
|
Libs: -L${libdir} -l@_EXPAT_OUTPUT_NAME@
|
||||||
|
Cflags: -I${includedir}
|
115
3rdparty/expat/expat_config.h.cmake
vendored
Normal file
115
3rdparty/expat/expat_config.h.cmake
vendored
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
/* expat_config.h.cmake. Based upon generated expat_config.h.in. */
|
||||||
|
|
||||||
|
/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
|
||||||
|
#cmakedefine BYTEORDER @BYTEORDER@
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `arc4random' function. */
|
||||||
|
#cmakedefine HAVE_ARC4RANDOM
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `arc4random_buf' function. */
|
||||||
|
#cmakedefine HAVE_ARC4RANDOM_BUF
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||||
|
#cmakedefine HAVE_DLFCN_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <fcntl.h> header file. */
|
||||||
|
#cmakedefine HAVE_FCNTL_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `getpagesize' function. */
|
||||||
|
#cmakedefine HAVE_GETPAGESIZE
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `getrandom' function. */
|
||||||
|
#cmakedefine HAVE_GETRANDOM
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||||
|
#cmakedefine HAVE_INTTYPES_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `bsd' library (-lbsd). */
|
||||||
|
#cmakedefine HAVE_LIBBSD
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <memory.h> header file. */
|
||||||
|
#cmakedefine HAVE_MEMORY_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have a working `mmap' system call. */
|
||||||
|
#cmakedefine HAVE_MMAP
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <stdint.h> header file. */
|
||||||
|
#cmakedefine HAVE_STDINT_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||||
|
#cmakedefine HAVE_STDLIB_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <strings.h> header file. */
|
||||||
|
#cmakedefine HAVE_STRINGS_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <string.h> header file. */
|
||||||
|
#cmakedefine HAVE_STRING_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have `syscall' and `SYS_getrandom'. */
|
||||||
|
#cmakedefine HAVE_SYSCALL_GETRANDOM
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||||
|
#cmakedefine HAVE_SYS_STAT_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||||
|
#cmakedefine HAVE_SYS_TYPES_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <unistd.h> header file. */
|
||||||
|
#cmakedefine HAVE_UNISTD_H
|
||||||
|
|
||||||
|
/* Name of package */
|
||||||
|
#define PACKAGE "@PACKAGE_NAME@"
|
||||||
|
|
||||||
|
/* Define to the address where bug reports for this package should be sent. */
|
||||||
|
#cmakedefine PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@"
|
||||||
|
|
||||||
|
/* Define to the full name of this package. */
|
||||||
|
#cmakedefine PACKAGE_NAME "@PACKAGE_NAME@"
|
||||||
|
|
||||||
|
/* Define to the full name and version of this package. */
|
||||||
|
#cmakedefine PACKAGE_STRING "@PACKAGE_STRING@"
|
||||||
|
|
||||||
|
/* Define to the one symbol short name of this package. */
|
||||||
|
#cmakedefine PACKAGE_TARNAME "@PACKAGE_TARNAME@"
|
||||||
|
|
||||||
|
/* Define to the home page for this package. */
|
||||||
|
#define PACKAGE_URL ""
|
||||||
|
|
||||||
|
/* Define to the version of this package. */
|
||||||
|
#cmakedefine PACKAGE_VERSION "@PACKAGE_VERSION@"
|
||||||
|
|
||||||
|
/* Define to 1 if you have the ANSI C header files. */
|
||||||
|
#cmakedefine STDC_HEADERS
|
||||||
|
|
||||||
|
/* whether byteorder is bigendian */
|
||||||
|
#cmakedefine WORDS_BIGENDIAN
|
||||||
|
|
||||||
|
/* Define to allow retrieving the byte offsets for attribute names and values.
|
||||||
|
*/
|
||||||
|
#cmakedefine XML_ATTR_INFO
|
||||||
|
|
||||||
|
/* Define to specify how much context to retain around the current parse
|
||||||
|
point. */
|
||||||
|
#cmakedefine XML_CONTEXT_BYTES @XML_CONTEXT_BYTES@
|
||||||
|
|
||||||
|
#if ! defined(_WIN32)
|
||||||
|
/* Define to include code reading entropy from `/dev/urandom'. */
|
||||||
|
#cmakedefine XML_DEV_URANDOM
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Define to make parameter entity parsing functionality available. */
|
||||||
|
#cmakedefine XML_DTD
|
||||||
|
|
||||||
|
/* Define to make XML Namespaces functionality available. */
|
||||||
|
#cmakedefine XML_NS
|
||||||
|
|
||||||
|
/* Define to __FUNCTION__ or "" if `__func__' does not conform to ANSI C. */
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
# define __func__ __FUNCTION__
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Define to `long' if <sys/types.h> does not define. */
|
||||||
|
#cmakedefine off_t @OFF_T@
|
||||||
|
|
||||||
|
/* Define to `unsigned' if <sys/types.h> does not define. */
|
||||||
|
#cmakedefine size_t @SIZE_T@
|
132
3rdparty/expat/expat_config.h.in
vendored
Normal file
132
3rdparty/expat/expat_config.h.in
vendored
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
/* expat_config.h.in. Generated from configure.ac by autoheader. */
|
||||||
|
|
||||||
|
/* Define if building universal (internal helper macro) */
|
||||||
|
#undef AC_APPLE_UNIVERSAL_BUILD
|
||||||
|
|
||||||
|
/* 1234 = LILENDIAN, 4321 = BIGENDIAN */
|
||||||
|
#undef BYTEORDER
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `arc4random' function. */
|
||||||
|
#undef HAVE_ARC4RANDOM
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `arc4random_buf' function. */
|
||||||
|
#undef HAVE_ARC4RANDOM_BUF
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||||
|
#undef HAVE_DLFCN_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <fcntl.h> header file. */
|
||||||
|
#undef HAVE_FCNTL_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `getpagesize' function. */
|
||||||
|
#undef HAVE_GETPAGESIZE
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `getrandom' function. */
|
||||||
|
#undef HAVE_GETRANDOM
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||||
|
#undef HAVE_INTTYPES_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `bsd' library (-lbsd). */
|
||||||
|
#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. */
|
||||||
|
#undef HAVE_MMAP
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <stdint.h> header file. */
|
||||||
|
#undef HAVE_STDINT_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||||
|
#undef HAVE_STDLIB_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <strings.h> header file. */
|
||||||
|
#undef HAVE_STRINGS_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <string.h> header file. */
|
||||||
|
#undef HAVE_STRING_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have `syscall' and `SYS_getrandom'. */
|
||||||
|
#undef HAVE_SYSCALL_GETRANDOM
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/param.h> header file. */
|
||||||
|
#undef HAVE_SYS_PARAM_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||||
|
#undef HAVE_SYS_STAT_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||||
|
#undef HAVE_SYS_TYPES_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <unistd.h> header file. */
|
||||||
|
#undef HAVE_UNISTD_H
|
||||||
|
|
||||||
|
/* Define to the sub-directory where libtool stores uninstalled libraries. */
|
||||||
|
#undef LT_OBJDIR
|
||||||
|
|
||||||
|
/* Name of package */
|
||||||
|
#undef PACKAGE
|
||||||
|
|
||||||
|
/* Define to the address where bug reports for this package should be sent. */
|
||||||
|
#undef PACKAGE_BUGREPORT
|
||||||
|
|
||||||
|
/* Define to the full name of this package. */
|
||||||
|
#undef PACKAGE_NAME
|
||||||
|
|
||||||
|
/* Define to the full name and version of this package. */
|
||||||
|
#undef PACKAGE_STRING
|
||||||
|
|
||||||
|
/* Define to the one symbol short name of this package. */
|
||||||
|
#undef PACKAGE_TARNAME
|
||||||
|
|
||||||
|
/* Define to the home page for this package. */
|
||||||
|
#undef PACKAGE_URL
|
||||||
|
|
||||||
|
/* Define to the version of this package. */
|
||||||
|
#undef PACKAGE_VERSION
|
||||||
|
|
||||||
|
/* Define to 1 if you have the ANSI C header files. */
|
||||||
|
#undef STDC_HEADERS
|
||||||
|
|
||||||
|
/* Version number of package */
|
||||||
|
#undef VERSION
|
||||||
|
|
||||||
|
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
||||||
|
significant byte first (like Motorola and SPARC, unlike Intel). */
|
||||||
|
#if defined AC_APPLE_UNIVERSAL_BUILD
|
||||||
|
# if defined __BIG_ENDIAN__
|
||||||
|
# define WORDS_BIGENDIAN 1
|
||||||
|
# endif
|
||||||
|
#else
|
||||||
|
# ifndef WORDS_BIGENDIAN
|
||||||
|
# undef WORDS_BIGENDIAN
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Define to allow retrieving the byte offsets for attribute names and values.
|
||||||
|
*/
|
||||||
|
#undef XML_ATTR_INFO
|
||||||
|
|
||||||
|
/* Define to specify how much context to retain around the current parse
|
||||||
|
point. */
|
||||||
|
#undef XML_CONTEXT_BYTES
|
||||||
|
|
||||||
|
/* Define to include code reading entropy from `/dev/urandom'. */
|
||||||
|
#undef XML_DEV_URANDOM
|
||||||
|
|
||||||
|
/* Define to make parameter entity parsing functionality available. */
|
||||||
|
#undef XML_DTD
|
||||||
|
|
||||||
|
/* Define to make XML Namespaces functionality available. */
|
||||||
|
#undef XML_NS
|
||||||
|
|
||||||
|
/* Define to empty if `const' does not conform to ANSI C. */
|
||||||
|
#undef const
|
||||||
|
|
||||||
|
/* Define to `long int' if <sys/types.h> does not define. */
|
||||||
|
#undef off_t
|
||||||
|
|
||||||
|
/* Define to `unsigned int' if <sys/types.h> does not define. */
|
||||||
|
#undef size_t
|
48
3rdparty/expat/fix-xmltest-log.sh
vendored
Executable file
48
3rdparty/expat/fix-xmltest-log.sh
vendored
Executable file
@ -0,0 +1,48 @@
|
|||||||
|
#! /usr/bin/env bash
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2019 Expat development team
|
||||||
|
# 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
|
||||||
|
|
||||||
|
filename="${1:-tests/xmltest.log}"
|
||||||
|
|
||||||
|
dos2unix "${filename}"
|
||||||
|
|
||||||
|
tempfile="$(mktemp)"
|
||||||
|
sed \
|
||||||
|
-e 's/^wine: Call .* msvcrt\.dll\._wperror, aborting$/ibm49i02.dtd: No such file or directory/' \
|
||||||
|
\
|
||||||
|
-e '/^wine: /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 '/^err:systray:initialize_systray Could not create tray window$/d' \
|
||||||
|
-e '/^In ibm\/invalid\/P49\/: Unhandled exception: unimplemented .\+/d' \
|
||||||
|
\
|
||||||
|
"${filename}" > "${tempfile}"
|
||||||
|
mv "${tempfile}" "${filename}"
|
76
3rdparty/expat/lib/Makefile.am
vendored
Normal file
76
3rdparty/expat/lib/Makefile.am
vendored
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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_HEADERS = \
|
||||||
|
../expat_config.h \
|
||||||
|
expat.h \
|
||||||
|
expat_external.h
|
||||||
|
|
||||||
|
lib_LTLIBRARIES = libexpat.la
|
||||||
|
|
||||||
|
libexpat_la_LDFLAGS = \
|
||||||
|
@AM_LDFLAGS@ \
|
||||||
|
-no-undefined \
|
||||||
|
-version-info @LIBCURRENT@:@LIBREVISION@:@LIBAGE@
|
||||||
|
|
||||||
|
libexpat_la_SOURCES = \
|
||||||
|
xmlparse.c \
|
||||||
|
xmltok.c \
|
||||||
|
xmlrole.c
|
||||||
|
|
||||||
|
doc_DATA = \
|
||||||
|
../AUTHORS \
|
||||||
|
../Changes
|
||||||
|
|
||||||
|
install-data-hook:
|
||||||
|
cd "$(DESTDIR)$(docdir)" && $(am__mv) Changes changelog
|
||||||
|
|
||||||
|
uninstall-local:
|
||||||
|
$(RM) "$(DESTDIR)$(docdir)/changelog"
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
ascii.h \
|
||||||
|
asciitab.h \
|
||||||
|
expat_external.h \
|
||||||
|
expat.h \
|
||||||
|
iasciitab.h \
|
||||||
|
internal.h \
|
||||||
|
latin1tab.h \
|
||||||
|
libexpat.def \
|
||||||
|
libexpatw.def \
|
||||||
|
nametab.h \
|
||||||
|
siphash.h \
|
||||||
|
utf8tab.h \
|
||||||
|
winconfig.h \
|
||||||
|
xmlrole.h \
|
||||||
|
xmltok.h \
|
||||||
|
xmltok_impl.c \
|
||||||
|
xmltok_impl.h \
|
||||||
|
xmltok_ns.c
|
810
3rdparty/expat/lib/Makefile.in
vendored
Normal file
810
3rdparty/expat/lib/Makefile.in
vendored
Normal file
@ -0,0 +1,810 @@
|
|||||||
|
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
||||||
|
# @configure_input@
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# This Makefile.in 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.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
@SET_MAKE@
|
||||||
|
|
||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
VPATH = @srcdir@
|
||||||
|
am__is_gnu_make = { \
|
||||||
|
if test -z '$(MAKELEVEL)'; then \
|
||||||
|
false; \
|
||||||
|
elif test -n '$(MAKE_HOST)'; then \
|
||||||
|
true; \
|
||||||
|
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||||||
|
true; \
|
||||||
|
else \
|
||||||
|
false; \
|
||||||
|
fi; \
|
||||||
|
}
|
||||||
|
am__make_running_with_option = \
|
||||||
|
case $${target_option-} in \
|
||||||
|
?) ;; \
|
||||||
|
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||||
|
"target option '$${target_option-}' specified" >&2; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
has_opt=no; \
|
||||||
|
sane_makeflags=$$MAKEFLAGS; \
|
||||||
|
if $(am__is_gnu_make); then \
|
||||||
|
sane_makeflags=$$MFLAGS; \
|
||||||
|
else \
|
||||||
|
case $$MAKEFLAGS in \
|
||||||
|
*\\[\ \ ]*) \
|
||||||
|
bs=\\; \
|
||||||
|
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||||
|
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||||
|
esac; \
|
||||||
|
fi; \
|
||||||
|
skip_next=no; \
|
||||||
|
strip_trailopt () \
|
||||||
|
{ \
|
||||||
|
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||||
|
}; \
|
||||||
|
for flg in $$sane_makeflags; do \
|
||||||
|
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||||
|
case $$flg in \
|
||||||
|
*=*|--*) continue;; \
|
||||||
|
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||||
|
-*I?*) strip_trailopt 'I';; \
|
||||||
|
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||||
|
-*O?*) strip_trailopt 'O';; \
|
||||||
|
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||||
|
-*l?*) strip_trailopt 'l';; \
|
||||||
|
-[dEDm]) skip_next=yes;; \
|
||||||
|
-[JT]) skip_next=yes;; \
|
||||||
|
esac; \
|
||||||
|
case $$flg in \
|
||||||
|
*$$target_option*) has_opt=yes; break;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
test $$has_opt = yes
|
||||||
|
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||||
|
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||||
|
pkgdatadir = $(datadir)/@PACKAGE@
|
||||||
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
|
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||||
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
|
install_sh_PROGRAM = $(install_sh) -c
|
||||||
|
install_sh_SCRIPT = $(install_sh) -c
|
||||||
|
INSTALL_HEADER = $(INSTALL_DATA)
|
||||||
|
transform = $(program_transform_name)
|
||||||
|
NORMAL_INSTALL = :
|
||||||
|
PRE_INSTALL = :
|
||||||
|
POST_INSTALL = :
|
||||||
|
NORMAL_UNINSTALL = :
|
||||||
|
PRE_UNINSTALL = :
|
||||||
|
POST_UNINSTALL = :
|
||||||
|
build_triplet = @build@
|
||||||
|
host_triplet = @host@
|
||||||
|
subdir = lib
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||||
|
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||||
|
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
|
||||||
|
$(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-require-defined.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-compile-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-link-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/configure.ac
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(include_HEADERS) \
|
||||||
|
$(am__DIST_COMMON)
|
||||||
|
mkinstalldirs = $(install_sh) -d
|
||||||
|
CONFIG_HEADER = $(top_builddir)/expat_config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
CONFIG_CLEAN_VPATH_FILES =
|
||||||
|
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||||
|
am__vpath_adj = case $$p in \
|
||||||
|
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||||
|
*) f=$$p;; \
|
||||||
|
esac;
|
||||||
|
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
||||||
|
am__install_max = 40
|
||||||
|
am__nobase_strip_setup = \
|
||||||
|
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
||||||
|
am__nobase_strip = \
|
||||||
|
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
||||||
|
am__nobase_list = $(am__nobase_strip_setup); \
|
||||||
|
for p in $$list; do echo "$$p $$p"; done | \
|
||||||
|
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
||||||
|
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
||||||
|
if (++n[$$2] == $(am__install_max)) \
|
||||||
|
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
||||||
|
END { for (dir in files) print dir, files[dir] }'
|
||||||
|
am__base_list = \
|
||||||
|
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||||
|
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||||
|
am__uninstall_files_from_dir = { \
|
||||||
|
test -z "$$files" \
|
||||||
|
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||||
|
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||||
|
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||||
|
}
|
||||||
|
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(docdir)" \
|
||||||
|
"$(DESTDIR)$(includedir)"
|
||||||
|
LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||||
|
libexpat_la_LIBADD =
|
||||||
|
am_libexpat_la_OBJECTS = xmlparse.lo xmltok.lo xmlrole.lo
|
||||||
|
libexpat_la_OBJECTS = $(am_libexpat_la_OBJECTS)
|
||||||
|
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||||
|
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||||
|
am__v_lt_0 = --silent
|
||||||
|
am__v_lt_1 =
|
||||||
|
libexpat_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||||
|
$(libexpat_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
AM_V_P = $(am__v_P_@AM_V@)
|
||||||
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||||
|
am__v_P_0 = false
|
||||||
|
am__v_P_1 = :
|
||||||
|
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||||
|
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||||
|
am__v_GEN_0 = @echo " GEN " $@;
|
||||||
|
am__v_GEN_1 =
|
||||||
|
AM_V_at = $(am__v_at_@AM_V@)
|
||||||
|
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||||
|
am__v_at_0 = @
|
||||||
|
am__v_at_1 =
|
||||||
|
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||||
|
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
||||||
|
am__maybe_remake_depfiles = depfiles
|
||||||
|
am__depfiles_remade = ./$(DEPDIR)/xmlparse.Plo ./$(DEPDIR)/xmlrole.Plo \
|
||||||
|
./$(DEPDIR)/xmltok.Plo
|
||||||
|
am__mv = mv -f
|
||||||
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
|
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
|
||||||
|
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||||
|
$(AM_CFLAGS) $(CFLAGS)
|
||||||
|
AM_V_CC = $(am__v_CC_@AM_V@)
|
||||||
|
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
|
||||||
|
am__v_CC_0 = @echo " CC " $@;
|
||||||
|
am__v_CC_1 =
|
||||||
|
CCLD = $(CC)
|
||||||
|
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||||
|
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
|
||||||
|
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
||||||
|
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||||
|
am__v_CCLD_1 =
|
||||||
|
SOURCES = $(libexpat_la_SOURCES)
|
||||||
|
DIST_SOURCES = $(libexpat_la_SOURCES)
|
||||||
|
am__can_run_installinfo = \
|
||||||
|
case $$AM_UPDATE_INFO_DIR in \
|
||||||
|
n|no|NO) false;; \
|
||||||
|
*) (install-info --version) >/dev/null 2>&1;; \
|
||||||
|
esac
|
||||||
|
DATA = $(doc_DATA)
|
||||||
|
HEADERS = $(include_HEADERS)
|
||||||
|
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||||
|
# Read a list of newline-separated strings from the standard input,
|
||||||
|
# and print each of them once, without duplicates. Input order is
|
||||||
|
# *not* preserved.
|
||||||
|
am__uniquify_input = $(AWK) '\
|
||||||
|
BEGIN { nonempty = 0; } \
|
||||||
|
{ items[$$0] = 1; nonempty = 1; } \
|
||||||
|
END { if (nonempty) { for (i in items) print i; }; } \
|
||||||
|
'
|
||||||
|
# Make sure the list of sources is unique. This is necessary because,
|
||||||
|
# e.g., the same source file might be shared among _SOURCES variables
|
||||||
|
# for different programs/libraries.
|
||||||
|
am__define_uniq_tagged_files = \
|
||||||
|
list='$(am__tagged_files)'; \
|
||||||
|
unique=`for i in $$list; do \
|
||||||
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
|
done | $(am__uniquify_input)`
|
||||||
|
ETAGS = etags
|
||||||
|
CTAGS = ctags
|
||||||
|
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
||||||
|
$(top_srcdir)/conftools/depcomp
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
ACLOCAL = @ACLOCAL@
|
||||||
|
AMTAR = @AMTAR@
|
||||||
|
AM_CFLAGS = @AM_CFLAGS@
|
||||||
|
AM_CPPFLAGS = @AM_CPPFLAGS@
|
||||||
|
AM_CXXFLAGS = @AM_CXXFLAGS@
|
||||||
|
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||||
|
AM_LDFLAGS = @AM_LDFLAGS@
|
||||||
|
AR = @AR@
|
||||||
|
AS = @AS@
|
||||||
|
AUTOCONF = @AUTOCONF@
|
||||||
|
AUTOHEADER = @AUTOHEADER@
|
||||||
|
AUTOMAKE = @AUTOMAKE@
|
||||||
|
AWK = @AWK@
|
||||||
|
CC = @CC@
|
||||||
|
CCDEPMODE = @CCDEPMODE@
|
||||||
|
CFLAGS = @CFLAGS@
|
||||||
|
CPP = @CPP@
|
||||||
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CXX = @CXX@
|
||||||
|
CXXCPP = @CXXCPP@
|
||||||
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
|
CXXFLAGS = @CXXFLAGS@
|
||||||
|
CYGPATH_W = @CYGPATH_W@
|
||||||
|
DEFS = @DEFS@
|
||||||
|
DEPDIR = @DEPDIR@
|
||||||
|
DLLTOOL = @DLLTOOL@
|
||||||
|
DOCBOOK_TO_MAN = @DOCBOOK_TO_MAN@
|
||||||
|
DSYMUTIL = @DSYMUTIL@
|
||||||
|
DUMPBIN = @DUMPBIN@
|
||||||
|
ECHO_C = @ECHO_C@
|
||||||
|
ECHO_N = @ECHO_N@
|
||||||
|
ECHO_T = @ECHO_T@
|
||||||
|
EGREP = @EGREP@
|
||||||
|
EXEEXT = @EXEEXT@
|
||||||
|
FGREP = @FGREP@
|
||||||
|
FILEMAP = @FILEMAP@
|
||||||
|
GREP = @GREP@
|
||||||
|
INSTALL = @INSTALL@
|
||||||
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||||
|
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||||
|
LD = @LD@
|
||||||
|
LDFLAGS = @LDFLAGS@
|
||||||
|
LIBAGE = @LIBAGE@
|
||||||
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBOBJS = @LIBOBJS@
|
||||||
|
LIBREVISION = @LIBREVISION@
|
||||||
|
LIBS = @LIBS@
|
||||||
|
LIBTOOL = @LIBTOOL@
|
||||||
|
LIPO = @LIPO@
|
||||||
|
LN_S = @LN_S@
|
||||||
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAKEINFO = @MAKEINFO@
|
||||||
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
|
MKDIR_P = @MKDIR_P@
|
||||||
|
NM = @NM@
|
||||||
|
NMEDIT = @NMEDIT@
|
||||||
|
OBJDUMP = @OBJDUMP@
|
||||||
|
OBJEXT = @OBJEXT@
|
||||||
|
OTOOL = @OTOOL@
|
||||||
|
OTOOL64 = @OTOOL64@
|
||||||
|
PACKAGE = @PACKAGE@
|
||||||
|
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||||
|
PACKAGE_NAME = @PACKAGE_NAME@
|
||||||
|
PACKAGE_STRING = @PACKAGE_STRING@
|
||||||
|
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||||
|
PACKAGE_URL = @PACKAGE_URL@
|
||||||
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||||
|
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||||
|
RANLIB = @RANLIB@
|
||||||
|
SED = @SED@
|
||||||
|
SET_MAKE = @SET_MAKE@
|
||||||
|
SHELL = @SHELL@
|
||||||
|
STRIP = @STRIP@
|
||||||
|
VERSION = @VERSION@
|
||||||
|
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
||||||
|
abs_builddir = @abs_builddir@
|
||||||
|
abs_srcdir = @abs_srcdir@
|
||||||
|
abs_top_builddir = @abs_top_builddir@
|
||||||
|
abs_top_srcdir = @abs_top_srcdir@
|
||||||
|
ac_ct_AR = @ac_ct_AR@
|
||||||
|
ac_ct_CC = @ac_ct_CC@
|
||||||
|
ac_ct_CXX = @ac_ct_CXX@
|
||||||
|
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||||
|
am__include = @am__include@
|
||||||
|
am__leading_dot = @am__leading_dot@
|
||||||
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
|
bindir = @bindir@
|
||||||
|
build = @build@
|
||||||
|
build_alias = @build_alias@
|
||||||
|
build_cpu = @build_cpu@
|
||||||
|
build_os = @build_os@
|
||||||
|
build_vendor = @build_vendor@
|
||||||
|
builddir = @builddir@
|
||||||
|
datadir = @datadir@
|
||||||
|
datarootdir = @datarootdir@
|
||||||
|
docdir = @docdir@
|
||||||
|
dvidir = @dvidir@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
host = @host@
|
||||||
|
host_alias = @host_alias@
|
||||||
|
host_cpu = @host_cpu@
|
||||||
|
host_os = @host_os@
|
||||||
|
host_vendor = @host_vendor@
|
||||||
|
htmldir = @htmldir@
|
||||||
|
includedir = @includedir@
|
||||||
|
infodir = @infodir@
|
||||||
|
install_sh = @install_sh@
|
||||||
|
libdir = @libdir@
|
||||||
|
libexecdir = @libexecdir@
|
||||||
|
localedir = @localedir@
|
||||||
|
localstatedir = @localstatedir@
|
||||||
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
|
oldincludedir = @oldincludedir@
|
||||||
|
pdfdir = @pdfdir@
|
||||||
|
prefix = @prefix@
|
||||||
|
program_transform_name = @program_transform_name@
|
||||||
|
psdir = @psdir@
|
||||||
|
runstatedir = @runstatedir@
|
||||||
|
sbindir = @sbindir@
|
||||||
|
sharedstatedir = @sharedstatedir@
|
||||||
|
srcdir = @srcdir@
|
||||||
|
sysconfdir = @sysconfdir@
|
||||||
|
target_alias = @target_alias@
|
||||||
|
top_build_prefix = @top_build_prefix@
|
||||||
|
top_builddir = @top_builddir@
|
||||||
|
top_srcdir = @top_srcdir@
|
||||||
|
include_HEADERS = \
|
||||||
|
../expat_config.h \
|
||||||
|
expat.h \
|
||||||
|
expat_external.h
|
||||||
|
|
||||||
|
lib_LTLIBRARIES = libexpat.la
|
||||||
|
libexpat_la_LDFLAGS = \
|
||||||
|
@AM_LDFLAGS@ \
|
||||||
|
-no-undefined \
|
||||||
|
-version-info @LIBCURRENT@:@LIBREVISION@:@LIBAGE@
|
||||||
|
|
||||||
|
libexpat_la_SOURCES = \
|
||||||
|
xmlparse.c \
|
||||||
|
xmltok.c \
|
||||||
|
xmlrole.c
|
||||||
|
|
||||||
|
doc_DATA = \
|
||||||
|
../AUTHORS \
|
||||||
|
../Changes
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
ascii.h \
|
||||||
|
asciitab.h \
|
||||||
|
expat_external.h \
|
||||||
|
expat.h \
|
||||||
|
iasciitab.h \
|
||||||
|
internal.h \
|
||||||
|
latin1tab.h \
|
||||||
|
libexpat.def \
|
||||||
|
libexpatw.def \
|
||||||
|
nametab.h \
|
||||||
|
siphash.h \
|
||||||
|
utf8tab.h \
|
||||||
|
winconfig.h \
|
||||||
|
xmlrole.h \
|
||||||
|
xmltok.h \
|
||||||
|
xmltok_impl.c \
|
||||||
|
xmltok_impl.h \
|
||||||
|
xmltok_ns.c
|
||||||
|
|
||||||
|
all: all-am
|
||||||
|
|
||||||
|
.SUFFIXES:
|
||||||
|
.SUFFIXES: .c .lo .o .obj
|
||||||
|
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||||
|
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu lib/Makefile'; \
|
||||||
|
$(am__cd) $(top_srcdir) && \
|
||||||
|
$(AUTOMAKE) --gnu lib/Makefile
|
||||||
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
|
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
|
||||||
|
list2=; for p in $$list; do \
|
||||||
|
if test -f $$p; then \
|
||||||
|
list2="$$list2 $$p"; \
|
||||||
|
else :; fi; \
|
||||||
|
done; \
|
||||||
|
test -z "$$list2" || { \
|
||||||
|
echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
|
||||||
|
$(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
|
||||||
|
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
|
||||||
|
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
|
||||||
|
}
|
||||||
|
|
||||||
|
uninstall-libLTLIBRARIES:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
|
||||||
|
for p in $$list; do \
|
||||||
|
$(am__strip_dir) \
|
||||||
|
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
|
||||||
|
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
|
||||||
|
done
|
||||||
|
|
||||||
|
clean-libLTLIBRARIES:
|
||||||
|
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
||||||
|
@list='$(lib_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)
|
||||||
|
$(AM_V_CCLD)$(libexpat_la_LINK) -rpath $(libdir) $(libexpat_la_OBJECTS) $(libexpat_la_LIBADD) $(LIBS)
|
||||||
|
|
||||||
|
mostlyclean-compile:
|
||||||
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
|
distclean-compile:
|
||||||
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
@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)/xmltok.Plo@am__quote@ # am--include-marker
|
||||||
|
|
||||||
|
$(am__depfiles_remade):
|
||||||
|
@$(MKDIR_P) $(@D)
|
||||||
|
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
|
||||||
|
|
||||||
|
am--depfiles: $(am__depfiles_remade)
|
||||||
|
|
||||||
|
.c.o:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
|
||||||
|
|
||||||
|
.c.obj:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||||
|
|
||||||
|
.c.lo:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
|
||||||
|
|
||||||
|
mostlyclean-libtool:
|
||||||
|
-rm -f *.lo
|
||||||
|
|
||||||
|
clean-libtool:
|
||||||
|
-rm -rf .libs _libs
|
||||||
|
install-docDATA: $(doc_DATA)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
@list='$(doc_DATA)'; test -n "$(docdir)" || list=; \
|
||||||
|
if test -n "$$list"; then \
|
||||||
|
echo " $(MKDIR_P) '$(DESTDIR)$(docdir)'"; \
|
||||||
|
$(MKDIR_P) "$(DESTDIR)$(docdir)" || 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)$(docdir)'"; \
|
||||||
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \
|
||||||
|
done
|
||||||
|
|
||||||
|
uninstall-docDATA:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
@list='$(doc_DATA)'; test -n "$(docdir)" || list=; \
|
||||||
|
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||||
|
dir='$(DESTDIR)$(docdir)'; $(am__uninstall_files_from_dir)
|
||||||
|
install-includeHEADERS: $(include_HEADERS)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||||
|
if test -n "$$list"; then \
|
||||||
|
echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
|
||||||
|
$(MKDIR_P) "$(DESTDIR)$(includedir)" || 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_HEADER) $$files '$(DESTDIR)$(includedir)'"; \
|
||||||
|
$(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \
|
||||||
|
done
|
||||||
|
|
||||||
|
uninstall-includeHEADERS:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||||
|
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||||
|
dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
|
||||||
|
|
||||||
|
ID: $(am__tagged_files)
|
||||||
|
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||||
|
tags: tags-am
|
||||||
|
TAGS: tags
|
||||||
|
|
||||||
|
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||||
|
set x; \
|
||||||
|
here=`pwd`; \
|
||||||
|
$(am__define_uniq_tagged_files); \
|
||||||
|
shift; \
|
||||||
|
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||||
|
test -n "$$unique" || unique=$$empty_fix; \
|
||||||
|
if test $$# -gt 0; then \
|
||||||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
"$$@" $$unique; \
|
||||||
|
else \
|
||||||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
$$unique; \
|
||||||
|
fi; \
|
||||||
|
fi
|
||||||
|
ctags: ctags-am
|
||||||
|
|
||||||
|
CTAGS: ctags
|
||||||
|
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||||
|
$(am__define_uniq_tagged_files); \
|
||||||
|
test -z "$(CTAGS_ARGS)$$unique" \
|
||||||
|
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||||
|
$$unique
|
||||||
|
|
||||||
|
GTAGS:
|
||||||
|
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||||
|
&& $(am__cd) $(top_srcdir) \
|
||||||
|
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||||
|
cscopelist: cscopelist-am
|
||||||
|
|
||||||
|
cscopelist-am: $(am__tagged_files)
|
||||||
|
list='$(am__tagged_files)'; \
|
||||||
|
case "$(srcdir)" in \
|
||||||
|
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||||
|
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||||
|
esac; \
|
||||||
|
for i in $$list; do \
|
||||||
|
if test -f "$$i"; then \
|
||||||
|
echo "$(subdir)/$$i"; \
|
||||||
|
else \
|
||||||
|
echo "$$sdir/$$i"; \
|
||||||
|
fi; \
|
||||||
|
done >> $(top_builddir)/cscope.files
|
||||||
|
|
||||||
|
distclean-tags:
|
||||||
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
|
|
||||||
|
distdir: $(BUILT_SOURCES)
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
|
distdir-am: $(DISTFILES)
|
||||||
|
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
list='$(DISTFILES)'; \
|
||||||
|
dist_files=`for file in $$list; do echo $$file; done | \
|
||||||
|
sed -e "s|^$$srcdirstrip/||;t" \
|
||||||
|
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||||
|
case $$dist_files in \
|
||||||
|
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||||
|
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||||
|
sort -u` ;; \
|
||||||
|
esac; \
|
||||||
|
for file in $$dist_files; do \
|
||||||
|
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||||
|
if test -d $$d/$$file; then \
|
||||||
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
|
if test -d "$(distdir)/$$file"; then \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||||
|
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
else \
|
||||||
|
test -f "$(distdir)/$$file" \
|
||||||
|
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||||
|
|| exit 1; \
|
||||||
|
fi; \
|
||||||
|
done
|
||||||
|
check-am: all-am
|
||||||
|
check: check-am
|
||||||
|
all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
|
||||||
|
installdirs:
|
||||||
|
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(includedir)"; do \
|
||||||
|
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||||
|
done
|
||||||
|
install: install-am
|
||||||
|
install-exec: install-exec-am
|
||||||
|
install-data: install-data-am
|
||||||
|
uninstall: uninstall-am
|
||||||
|
|
||||||
|
install-am: all-am
|
||||||
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||||
|
|
||||||
|
installcheck: installcheck-am
|
||||||
|
install-strip:
|
||||||
|
if test -z '$(STRIP)'; then \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
install; \
|
||||||
|
else \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||||
|
fi
|
||||||
|
mostlyclean-generic:
|
||||||
|
|
||||||
|
clean-generic:
|
||||||
|
|
||||||
|
distclean-generic:
|
||||||
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||||
|
|
||||||
|
maintainer-clean-generic:
|
||||||
|
@echo "This command is intended for maintainers to use"
|
||||||
|
@echo "it deletes files that may require special tools to rebuild."
|
||||||
|
clean: clean-am
|
||||||
|
|
||||||
|
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||||
|
mostlyclean-am
|
||||||
|
|
||||||
|
distclean: distclean-am
|
||||||
|
-rm -f ./$(DEPDIR)/xmlparse.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/xmlrole.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/xmltok.Plo
|
||||||
|
-rm -f Makefile
|
||||||
|
distclean-am: clean-am distclean-compile distclean-generic \
|
||||||
|
distclean-tags
|
||||||
|
|
||||||
|
dvi: dvi-am
|
||||||
|
|
||||||
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
|
html-am:
|
||||||
|
|
||||||
|
info: info-am
|
||||||
|
|
||||||
|
info-am:
|
||||||
|
|
||||||
|
install-data-am: install-docDATA install-includeHEADERS
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
|
||||||
|
install-dvi: install-dvi-am
|
||||||
|
|
||||||
|
install-dvi-am:
|
||||||
|
|
||||||
|
install-exec-am: install-libLTLIBRARIES
|
||||||
|
|
||||||
|
install-html: install-html-am
|
||||||
|
|
||||||
|
install-html-am:
|
||||||
|
|
||||||
|
install-info: install-info-am
|
||||||
|
|
||||||
|
install-info-am:
|
||||||
|
|
||||||
|
install-man:
|
||||||
|
|
||||||
|
install-pdf: install-pdf-am
|
||||||
|
|
||||||
|
install-pdf-am:
|
||||||
|
|
||||||
|
install-ps: install-ps-am
|
||||||
|
|
||||||
|
install-ps-am:
|
||||||
|
|
||||||
|
installcheck-am:
|
||||||
|
|
||||||
|
maintainer-clean: maintainer-clean-am
|
||||||
|
-rm -f ./$(DEPDIR)/xmlparse.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/xmlrole.Plo
|
||||||
|
-rm -f ./$(DEPDIR)/xmltok.Plo
|
||||||
|
-rm -f Makefile
|
||||||
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||||
|
|
||||||
|
mostlyclean: mostlyclean-am
|
||||||
|
|
||||||
|
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||||
|
mostlyclean-libtool
|
||||||
|
|
||||||
|
pdf: pdf-am
|
||||||
|
|
||||||
|
pdf-am:
|
||||||
|
|
||||||
|
ps: ps-am
|
||||||
|
|
||||||
|
ps-am:
|
||||||
|
|
||||||
|
uninstall-am: uninstall-docDATA uninstall-includeHEADERS \
|
||||||
|
uninstall-libLTLIBRARIES uninstall-local
|
||||||
|
|
||||||
|
.MAKE: install-am install-data-am install-strip
|
||||||
|
|
||||||
|
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
|
||||||
|
clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
|
||||||
|
ctags ctags-am distclean distclean-compile distclean-generic \
|
||||||
|
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||||
|
html-am info info-am install install-am install-data \
|
||||||
|
install-data-am install-data-hook install-docDATA install-dvi \
|
||||||
|
install-dvi-am install-exec install-exec-am install-html \
|
||||||
|
install-html-am install-includeHEADERS install-info \
|
||||||
|
install-info-am install-libLTLIBRARIES install-man install-pdf \
|
||||||
|
install-pdf-am install-ps install-ps-am install-strip \
|
||||||
|
installcheck installcheck-am installdirs maintainer-clean \
|
||||||
|
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||||
|
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||||
|
tags tags-am uninstall uninstall-am uninstall-docDATA \
|
||||||
|
uninstall-includeHEADERS uninstall-libLTLIBRARIES \
|
||||||
|
uninstall-local
|
||||||
|
|
||||||
|
.PRECIOUS: Makefile
|
||||||
|
|
||||||
|
|
||||||
|
install-data-hook:
|
||||||
|
cd "$(DESTDIR)$(docdir)" && $(am__mv) Changes changelog
|
||||||
|
|
||||||
|
uninstall-local:
|
||||||
|
$(RM) "$(DESTDIR)$(docdir)/changelog"
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
.NOEXPORT:
|
120
3rdparty/expat/lib/ascii.h
vendored
Normal file
120
3rdparty/expat/lib/ascii.h
vendored
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define ASCII_A 0x41
|
||||||
|
#define ASCII_B 0x42
|
||||||
|
#define ASCII_C 0x43
|
||||||
|
#define ASCII_D 0x44
|
||||||
|
#define ASCII_E 0x45
|
||||||
|
#define ASCII_F 0x46
|
||||||
|
#define ASCII_G 0x47
|
||||||
|
#define ASCII_H 0x48
|
||||||
|
#define ASCII_I 0x49
|
||||||
|
#define ASCII_J 0x4A
|
||||||
|
#define ASCII_K 0x4B
|
||||||
|
#define ASCII_L 0x4C
|
||||||
|
#define ASCII_M 0x4D
|
||||||
|
#define ASCII_N 0x4E
|
||||||
|
#define ASCII_O 0x4F
|
||||||
|
#define ASCII_P 0x50
|
||||||
|
#define ASCII_Q 0x51
|
||||||
|
#define ASCII_R 0x52
|
||||||
|
#define ASCII_S 0x53
|
||||||
|
#define ASCII_T 0x54
|
||||||
|
#define ASCII_U 0x55
|
||||||
|
#define ASCII_V 0x56
|
||||||
|
#define ASCII_W 0x57
|
||||||
|
#define ASCII_X 0x58
|
||||||
|
#define ASCII_Y 0x59
|
||||||
|
#define ASCII_Z 0x5A
|
||||||
|
|
||||||
|
#define ASCII_a 0x61
|
||||||
|
#define ASCII_b 0x62
|
||||||
|
#define ASCII_c 0x63
|
||||||
|
#define ASCII_d 0x64
|
||||||
|
#define ASCII_e 0x65
|
||||||
|
#define ASCII_f 0x66
|
||||||
|
#define ASCII_g 0x67
|
||||||
|
#define ASCII_h 0x68
|
||||||
|
#define ASCII_i 0x69
|
||||||
|
#define ASCII_j 0x6A
|
||||||
|
#define ASCII_k 0x6B
|
||||||
|
#define ASCII_l 0x6C
|
||||||
|
#define ASCII_m 0x6D
|
||||||
|
#define ASCII_n 0x6E
|
||||||
|
#define ASCII_o 0x6F
|
||||||
|
#define ASCII_p 0x70
|
||||||
|
#define ASCII_q 0x71
|
||||||
|
#define ASCII_r 0x72
|
||||||
|
#define ASCII_s 0x73
|
||||||
|
#define ASCII_t 0x74
|
||||||
|
#define ASCII_u 0x75
|
||||||
|
#define ASCII_v 0x76
|
||||||
|
#define ASCII_w 0x77
|
||||||
|
#define ASCII_x 0x78
|
||||||
|
#define ASCII_y 0x79
|
||||||
|
#define ASCII_z 0x7A
|
||||||
|
|
||||||
|
#define ASCII_0 0x30
|
||||||
|
#define ASCII_1 0x31
|
||||||
|
#define ASCII_2 0x32
|
||||||
|
#define ASCII_3 0x33
|
||||||
|
#define ASCII_4 0x34
|
||||||
|
#define ASCII_5 0x35
|
||||||
|
#define ASCII_6 0x36
|
||||||
|
#define ASCII_7 0x37
|
||||||
|
#define ASCII_8 0x38
|
||||||
|
#define ASCII_9 0x39
|
||||||
|
|
||||||
|
#define ASCII_TAB 0x09
|
||||||
|
#define ASCII_SPACE 0x20
|
||||||
|
#define ASCII_EXCL 0x21
|
||||||
|
#define ASCII_QUOT 0x22
|
||||||
|
#define ASCII_AMP 0x26
|
||||||
|
#define ASCII_APOS 0x27
|
||||||
|
#define ASCII_MINUS 0x2D
|
||||||
|
#define ASCII_PERIOD 0x2E
|
||||||
|
#define ASCII_COLON 0x3A
|
||||||
|
#define ASCII_SEMI 0x3B
|
||||||
|
#define ASCII_LT 0x3C
|
||||||
|
#define ASCII_EQUALS 0x3D
|
||||||
|
#define ASCII_GT 0x3E
|
||||||
|
#define ASCII_LSQB 0x5B
|
||||||
|
#define ASCII_RSQB 0x5D
|
||||||
|
#define ASCII_UNDERSCORE 0x5F
|
||||||
|
#define ASCII_LPAREN 0x28
|
||||||
|
#define ASCII_RPAREN 0x29
|
||||||
|
#define ASCII_FF 0x0C
|
||||||
|
#define ASCII_SLASH 0x2F
|
||||||
|
#define ASCII_HASH 0x23
|
||||||
|
#define ASCII_PIPE 0x7C
|
||||||
|
#define ASCII_COMMA 0x2C
|
64
3rdparty/expat/lib/asciitab.h
vendored
Normal file
64
3rdparty/expat/lib/asciitab.h
vendored
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* 0x00 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x04 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x08 */ BT_NONXML, BT_S, BT_LF, BT_NONXML,
|
||||||
|
/* 0x0C */ BT_NONXML, BT_CR, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x10 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x14 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x18 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x1C */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x20 */ BT_S, BT_EXCL, BT_QUOT, BT_NUM,
|
||||||
|
/* 0x24 */ BT_OTHER, BT_PERCNT, BT_AMP, BT_APOS,
|
||||||
|
/* 0x28 */ BT_LPAR, BT_RPAR, BT_AST, BT_PLUS,
|
||||||
|
/* 0x2C */ BT_COMMA, BT_MINUS, BT_NAME, BT_SOL,
|
||||||
|
/* 0x30 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
|
||||||
|
/* 0x34 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
|
||||||
|
/* 0x38 */ BT_DIGIT, BT_DIGIT, BT_COLON, BT_SEMI,
|
||||||
|
/* 0x3C */ BT_LT, BT_EQUALS, BT_GT, BT_QUEST,
|
||||||
|
/* 0x40 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
|
||||||
|
/* 0x44 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
|
||||||
|
/* 0x48 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x4C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x50 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x54 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x58 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_LSQB,
|
||||||
|
/* 0x5C */ BT_OTHER, BT_RSQB, BT_OTHER, BT_NMSTRT,
|
||||||
|
/* 0x60 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
|
||||||
|
/* 0x64 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
|
||||||
|
/* 0x68 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x6C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x70 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x74 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x78 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
|
||||||
|
/* 0x7C */ BT_VERBAR, BT_OTHER, BT_OTHER, BT_OTHER,
|
1024
3rdparty/expat/lib/expat.h
vendored
Normal file
1024
3rdparty/expat/lib/expat.h
vendored
Normal file
File diff suppressed because it is too large
Load Diff
158
3rdparty/expat/lib/expat_external.h
vendored
Normal file
158
3rdparty/expat/lib/expat_external.h
vendored
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef Expat_External_INCLUDED
|
||||||
|
#define Expat_External_INCLUDED 1
|
||||||
|
|
||||||
|
/* External API definitions */
|
||||||
|
|
||||||
|
/* Expat tries very hard to make the API boundary very specifically
|
||||||
|
defined. There are two macros defined to control this boundary;
|
||||||
|
each of these can be defined before including this header to
|
||||||
|
achieve some different behavior, but doing so it not recommended or
|
||||||
|
tested frequently.
|
||||||
|
|
||||||
|
XMLCALL - The calling convention to use for all calls across the
|
||||||
|
"library boundary." This will default to cdecl, and
|
||||||
|
try really hard to tell the compiler that's what we
|
||||||
|
want.
|
||||||
|
|
||||||
|
XMLIMPORT - Whatever magic is needed to note that a function is
|
||||||
|
to be imported from a dynamically loaded library
|
||||||
|
(.dll, .so, or .sl, depending on your platform).
|
||||||
|
|
||||||
|
The XMLCALL macro was added in Expat 1.95.7. The only one which is
|
||||||
|
expected to be directly useful in client code is XMLCALL.
|
||||||
|
|
||||||
|
Note that on at least some Unix versions, the Expat library must be
|
||||||
|
compiled with the cdecl calling convention as the default since
|
||||||
|
system headers may assume the cdecl convention.
|
||||||
|
*/
|
||||||
|
#ifndef XMLCALL
|
||||||
|
# if defined(_MSC_VER)
|
||||||
|
# define XMLCALL __cdecl
|
||||||
|
# elif defined(__GNUC__) && defined(__i386) && ! defined(__INTEL_COMPILER)
|
||||||
|
# define XMLCALL __attribute__((cdecl))
|
||||||
|
# else
|
||||||
|
/* For any platform which uses this definition and supports more than
|
||||||
|
one calling convention, we need to extend this definition to
|
||||||
|
declare the convention used on that platform, if it's possible to
|
||||||
|
do so.
|
||||||
|
|
||||||
|
If this is the case for your platform, please file a bug report
|
||||||
|
with information on how to identify your platform via the C
|
||||||
|
pre-processor and how to specify the same calling convention as the
|
||||||
|
platform's malloc() implementation.
|
||||||
|
*/
|
||||||
|
# define XMLCALL
|
||||||
|
# endif
|
||||||
|
#endif /* not defined XMLCALL */
|
||||||
|
|
||||||
|
#if ! defined(XML_STATIC) && ! defined(XMLIMPORT)
|
||||||
|
# ifndef XML_BUILDING_EXPAT
|
||||||
|
/* using Expat from an application */
|
||||||
|
|
||||||
|
# if defined(_MSC_EXTENSIONS) && ! defined(__BEOS__) && ! defined(__CYGWIN__)
|
||||||
|
# define XMLIMPORT __declspec(dllimport)
|
||||||
|
# endif
|
||||||
|
|
||||||
|
# endif
|
||||||
|
#endif /* not defined XML_STATIC */
|
||||||
|
|
||||||
|
#ifndef XML_ENABLE_VISIBILITY
|
||||||
|
# define XML_ENABLE_VISIBILITY 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if ! defined(XMLIMPORT) && XML_ENABLE_VISIBILITY
|
||||||
|
# define XMLIMPORT __attribute__((visibility("default")))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* If we didn't define it above, define it away: */
|
||||||
|
#ifndef XMLIMPORT
|
||||||
|
# define XMLIMPORT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(__GNUC__) \
|
||||||
|
&& (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
|
||||||
|
# define XML_ATTR_MALLOC __attribute__((__malloc__))
|
||||||
|
#else
|
||||||
|
# define XML_ATTR_MALLOC
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(__GNUC__) \
|
||||||
|
&& ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
|
||||||
|
# define XML_ATTR_ALLOC_SIZE(x) __attribute__((__alloc_size__(x)))
|
||||||
|
#else
|
||||||
|
# define XML_ATTR_ALLOC_SIZE(x)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define XMLPARSEAPI(type) XMLIMPORT type XMLCALL
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef XML_UNICODE_WCHAR_T
|
||||||
|
# ifndef XML_UNICODE
|
||||||
|
# define XML_UNICODE
|
||||||
|
# endif
|
||||||
|
# if defined(__SIZEOF_WCHAR_T__) && (__SIZEOF_WCHAR_T__ != 2)
|
||||||
|
# error "sizeof(wchar_t) != 2; Need -fshort-wchar for both Expat and libc"
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef XML_UNICODE /* Information is UTF-16 encoded. */
|
||||||
|
# ifdef XML_UNICODE_WCHAR_T
|
||||||
|
typedef wchar_t XML_Char;
|
||||||
|
typedef wchar_t XML_LChar;
|
||||||
|
# else
|
||||||
|
typedef unsigned short XML_Char;
|
||||||
|
typedef char XML_LChar;
|
||||||
|
# endif /* XML_UNICODE_WCHAR_T */
|
||||||
|
#else /* Information is UTF-8 encoded. */
|
||||||
|
typedef char XML_Char;
|
||||||
|
typedef char XML_LChar;
|
||||||
|
#endif /* XML_UNICODE */
|
||||||
|
|
||||||
|
#ifdef XML_LARGE_SIZE /* Use large integers for file/stream positions. */
|
||||||
|
typedef long long XML_Index;
|
||||||
|
typedef unsigned long long XML_Size;
|
||||||
|
#else
|
||||||
|
typedef long XML_Index;
|
||||||
|
typedef unsigned long XML_Size;
|
||||||
|
#endif /* XML_LARGE_SIZE */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* not Expat_External_INCLUDED */
|
65
3rdparty/expat/lib/iasciitab.h
vendored
Normal file
65
3rdparty/expat/lib/iasciitab.h
vendored
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Like asciitab.h, except that 0xD has code BT_S rather than BT_CR */
|
||||||
|
/* 0x00 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x04 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x08 */ BT_NONXML, BT_S, BT_LF, BT_NONXML,
|
||||||
|
/* 0x0C */ BT_NONXML, BT_S, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x10 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x14 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x18 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x1C */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0x20 */ BT_S, BT_EXCL, BT_QUOT, BT_NUM,
|
||||||
|
/* 0x24 */ BT_OTHER, BT_PERCNT, BT_AMP, BT_APOS,
|
||||||
|
/* 0x28 */ BT_LPAR, BT_RPAR, BT_AST, BT_PLUS,
|
||||||
|
/* 0x2C */ BT_COMMA, BT_MINUS, BT_NAME, BT_SOL,
|
||||||
|
/* 0x30 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
|
||||||
|
/* 0x34 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
|
||||||
|
/* 0x38 */ BT_DIGIT, BT_DIGIT, BT_COLON, BT_SEMI,
|
||||||
|
/* 0x3C */ BT_LT, BT_EQUALS, BT_GT, BT_QUEST,
|
||||||
|
/* 0x40 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
|
||||||
|
/* 0x44 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
|
||||||
|
/* 0x48 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x4C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x50 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x54 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x58 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_LSQB,
|
||||||
|
/* 0x5C */ BT_OTHER, BT_RSQB, BT_OTHER, BT_NMSTRT,
|
||||||
|
/* 0x60 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
|
||||||
|
/* 0x64 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
|
||||||
|
/* 0x68 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x6C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x70 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x74 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0x78 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
|
||||||
|
/* 0x7C */ BT_VERBAR, BT_OTHER, BT_OTHER, BT_OTHER,
|
123
3rdparty/expat/lib/internal.h
vendored
Normal file
123
3rdparty/expat/lib/internal.h
vendored
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
/* internal.h
|
||||||
|
|
||||||
|
Internal definitions used by Expat. This is not needed to compile
|
||||||
|
client code.
|
||||||
|
|
||||||
|
The following calling convention macros are defined for frequently
|
||||||
|
called functions:
|
||||||
|
|
||||||
|
FASTCALL - Used for those internal functions that have a simple
|
||||||
|
body and a low number of arguments and local variables.
|
||||||
|
|
||||||
|
PTRCALL - Used for functions called though function pointers.
|
||||||
|
|
||||||
|
PTRFASTCALL - Like PTRCALL, but for low number of arguments.
|
||||||
|
|
||||||
|
inline - Used for selected internal functions for which inlining
|
||||||
|
may improve performance on some platforms.
|
||||||
|
|
||||||
|
Note: Use of these macros is based on judgement, not hard rules,
|
||||||
|
and therefore subject to change.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 defined(__GNUC__) && defined(__i386__) && ! defined(__MINGW32__)
|
||||||
|
/* We'll use this version by default only where we know it helps.
|
||||||
|
|
||||||
|
regparm() generates warnings on Solaris boxes. See SF bug #692878.
|
||||||
|
|
||||||
|
Instability reported with egcs on a RedHat Linux 7.3.
|
||||||
|
Let's comment out:
|
||||||
|
#define FASTCALL __attribute__((stdcall, regparm(3)))
|
||||||
|
and let's try this:
|
||||||
|
*/
|
||||||
|
# define FASTCALL __attribute__((regparm(3)))
|
||||||
|
# define PTRFASTCALL __attribute__((regparm(3)))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Using __fastcall seems to have an unexpected negative effect under
|
||||||
|
MS VC++, especially for function pointers, so we won't use it for
|
||||||
|
now on that platform. It may be reconsidered for a future release
|
||||||
|
if it can be made more effective.
|
||||||
|
Likely reason: __fastcall on Windows is like stdcall, therefore
|
||||||
|
the compiler cannot perform stack optimizations for call clusters.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Make sure all of these are defined if they aren't already. */
|
||||||
|
|
||||||
|
#ifndef FASTCALL
|
||||||
|
# define FASTCALL
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef PTRCALL
|
||||||
|
# define PTRCALL
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef PTRFASTCALL
|
||||||
|
# define PTRFASTCALL
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef XML_MIN_SIZE
|
||||||
|
# if ! defined(__cplusplus) && ! defined(inline)
|
||||||
|
# ifdef __GNUC__
|
||||||
|
# define inline __inline
|
||||||
|
# endif /* __GNUC__ */
|
||||||
|
# endif
|
||||||
|
#endif /* XML_MIN_SIZE */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
# define inline inline
|
||||||
|
#else
|
||||||
|
# ifndef inline
|
||||||
|
# define inline
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef UNUSED_P
|
||||||
|
# define UNUSED_P(p) (void)p
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef XML_ENABLE_VISIBILITY
|
||||||
|
# if XML_ENABLE_VISIBILITY
|
||||||
|
__attribute__((visibility("default")))
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
void
|
||||||
|
_INTERNAL_trim_to_complete_utf8_characters(const char *from,
|
||||||
|
const char **fromLimRef);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
64
3rdparty/expat/lib/latin1tab.h
vendored
Normal file
64
3rdparty/expat/lib/latin1tab.h
vendored
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* 0x80 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0x84 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0x88 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0x8C */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0x90 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0x94 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0x98 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0x9C */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0xA0 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0xA4 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0xA8 */ BT_OTHER, BT_OTHER, BT_NMSTRT, BT_OTHER,
|
||||||
|
/* 0xAC */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0xB0 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0xB4 */ BT_OTHER, BT_NMSTRT, BT_OTHER, BT_NAME,
|
||||||
|
/* 0xB8 */ BT_OTHER, BT_OTHER, BT_NMSTRT, BT_OTHER,
|
||||||
|
/* 0xBC */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
|
||||||
|
/* 0xC0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xC4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xC8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xCC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xD0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xD4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
|
||||||
|
/* 0xD8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xDC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xE0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xE4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xE8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xEC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xF0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xF4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
|
||||||
|
/* 0xF8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
||||||
|
/* 0xFC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
|
78
3rdparty/expat/lib/libexpat.def
vendored
Normal file
78
3rdparty/expat/lib/libexpat.def
vendored
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
; 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
|
78
3rdparty/expat/lib/libexpatw.def
vendored
Normal file
78
3rdparty/expat/lib/libexpatw.def
vendored
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
; 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
|
136
3rdparty/expat/lib/nametab.h
vendored
Normal file
136
3rdparty/expat/lib/nametab.h
vendored
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
static const unsigned namingBitmap[] = {
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
|
||||||
|
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x04000000,
|
||||||
|
0x87FFFFFE, 0x07FFFFFE, 0x00000000, 0x00000000, 0xFF7FFFFF, 0xFF7FFFFF,
|
||||||
|
0xFFFFFFFF, 0x7FF3FFFF, 0xFFFFFDFE, 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
|
||||||
|
0xFFFFE00F, 0xFC31FFFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, 0xFFFFFFFF,
|
||||||
|
0xFFFFFFFF, 0xF80001FF, 0x00000003, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0xFFFFD740, 0xFFFFFFFB, 0x547F7FFF, 0x000FFFFD,
|
||||||
|
0xFFFFDFFE, 0xFFFFFFFF, 0xDFFEFFFF, 0xFFFFFFFF, 0xFFFF0003, 0xFFFFFFFF,
|
||||||
|
0xFFFF199F, 0x033FCFFF, 0x00000000, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE,
|
||||||
|
0x0000007F, 0x00000000, 0xFFFF0000, 0x000707FF, 0x00000000, 0x07FFFFFE,
|
||||||
|
0x000007FE, 0xFFFE0000, 0xFFFFFFFF, 0x7CFFFFFF, 0x002F7FFF, 0x00000060,
|
||||||
|
0xFFFFFFE0, 0x23FFFFFF, 0xFF000000, 0x00000003, 0xFFF99FE0, 0x03C5FDFF,
|
||||||
|
0xB0000000, 0x00030003, 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
|
||||||
|
0xFFFBAFE0, 0x23EDFDFF, 0x00000000, 0x00000001, 0xFFF99FE0, 0x23CDFDFF,
|
||||||
|
0xB0000000, 0x00000003, 0xD63DC7E0, 0x03BFC718, 0x00000000, 0x00000000,
|
||||||
|
0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x00000003, 0xFFFDDFE0, 0x03EFFDFF,
|
||||||
|
0x40000000, 0x00000003, 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x00000003,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFE, 0x000D7FFF,
|
||||||
|
0x0000003F, 0x00000000, 0xFEF02596, 0x200D6CAE, 0x0000001F, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0xFFFFFEFF, 0x000003FF, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x007FFFFF, 0x0007DAED, 0x50000000,
|
||||||
|
0x82315001, 0x002C62AB, 0x40000000, 0xF580C900, 0x00000007, 0x02010800,
|
||||||
|
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0FFFFFFF, 0xFFFFFFFF,
|
||||||
|
0xFFFFFFFF, 0x03FFFFFF, 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
|
||||||
|
0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, 0x00000000, 0x00004C40,
|
||||||
|
0x00000000, 0x00000000, 0x00000007, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000080, 0x000003FE, 0xFFFFFFFE, 0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFE,
|
||||||
|
0xFFFFFFFF, 0x07FFFFFF, 0xFFFFFFE0, 0x00001FFF, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF,
|
||||||
|
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
|
||||||
|
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000000F,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x07FF6000, 0x87FFFFFE, 0x07FFFFFE,
|
||||||
|
0x00000000, 0x00800000, 0xFF7FFFFF, 0xFF7FFFFF, 0x00FFFFFF, 0x00000000,
|
||||||
|
0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xF80001FF, 0x00030003, 0x00000000,
|
||||||
|
0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000003, 0xFFFFD7C0, 0xFFFFFFFB,
|
||||||
|
0x547F7FFF, 0x000FFFFD, 0xFFFFDFFE, 0xFFFFFFFF, 0xDFFEFFFF, 0xFFFFFFFF,
|
||||||
|
0xFFFF007B, 0xFFFFFFFF, 0xFFFF199F, 0x033FCFFF, 0x00000000, 0xFFFE0000,
|
||||||
|
0x027FFFFF, 0xFFFFFFFE, 0xFFFE007F, 0xBBFFFFFB, 0xFFFF0016, 0x000707FF,
|
||||||
|
0x00000000, 0x07FFFFFE, 0x0007FFFF, 0xFFFF03FF, 0xFFFFFFFF, 0x7CFFFFFF,
|
||||||
|
0xFFEF7FFF, 0x03FF3DFF, 0xFFFFFFEE, 0xF3FFFFFF, 0xFF1E3FFF, 0x0000FFCF,
|
||||||
|
0xFFF99FEE, 0xD3C5FDFF, 0xB080399F, 0x0003FFCF, 0xFFF987E4, 0xD36DFDFF,
|
||||||
|
0x5E003987, 0x001FFFC0, 0xFFFBAFEE, 0xF3EDFDFF, 0x00003BBF, 0x0000FFC1,
|
||||||
|
0xFFF99FEE, 0xF3CDFDFF, 0xB0C0398F, 0x0000FFC3, 0xD63DC7EC, 0xC3BFC718,
|
||||||
|
0x00803DC7, 0x0000FF80, 0xFFFDDFEE, 0xC3EFFDFF, 0x00603DDF, 0x0000FFC3,
|
||||||
|
0xFFFDDFEC, 0xC3EFFDFF, 0x40603DDF, 0x0000FFC3, 0xFFFDDFEC, 0xC3FFFDFF,
|
||||||
|
0x00803DCF, 0x0000FFC3, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FFF, 0x00000000, 0xFEF02596, 0x3BFF6CAE,
|
||||||
|
0x03FF3F5F, 0x00000000, 0x03000000, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE03FF,
|
||||||
|
0xFEBF0FDF, 0x02FE3FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x1FFF0000, 0x00000002,
|
||||||
|
0x000000A0, 0x003EFFFE, 0xFFFFFFFE, 0xFFFFFFFF, 0x661FFFFF, 0xFFFFFFFE,
|
||||||
|
0xFFFFFFFF, 0x77FFFFFF,
|
||||||
|
};
|
||||||
|
static const unsigned char nmstrtPages[] = {
|
||||||
|
0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x00, 0x00, 0x09, 0x0A, 0x0B,
|
||||||
|
0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x13, 0x00, 0x14, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x15, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x18,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
static const unsigned char namePages[] = {
|
||||||
|
0x19, 0x03, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x00, 0x00, 0x1F, 0x20, 0x21,
|
||||||
|
0x22, 0x23, 0x24, 0x25, 0x10, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x13, 0x26, 0x14, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x27, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||||
|
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x18,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
398
3rdparty/expat/lib/siphash.h
vendored
Normal file
398
3rdparty/expat/lib/siphash.h
vendored
Normal file
@ -0,0 +1,398 @@
|
|||||||
|
/* ==========================================================================
|
||||||
|
* siphash.h - SipHash-2-4 in a single header file
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Derived by William Ahern from the reference implementation[1] published[2]
|
||||||
|
* by Jean-Philippe Aumasson and Daniel J. Berstein.
|
||||||
|
* Minimal changes by Sebastian Pipping and Victor Stinner on top, see below.
|
||||||
|
* Licensed under the CC0 Public Domain Dedication license.
|
||||||
|
*
|
||||||
|
* 1. https://www.131002.net/siphash/siphash24.c
|
||||||
|
* 2. https://www.131002.net/siphash/
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* HISTORY:
|
||||||
|
*
|
||||||
|
* 2019-08-03 (Sebastian Pipping)
|
||||||
|
* - Mark part of sip24_valid as to be excluded from clang-format
|
||||||
|
* - Re-format code using clang-format 9
|
||||||
|
*
|
||||||
|
* 2018-07-08 (Anton Maklakov)
|
||||||
|
* - Add "fall through" markers for GCC's -Wimplicit-fallthrough
|
||||||
|
*
|
||||||
|
* 2017-11-03 (Sebastian Pipping)
|
||||||
|
* - Hide sip_tobin and sip_binof unless SIPHASH_TOBIN macro is defined
|
||||||
|
*
|
||||||
|
* 2017-07-25 (Vadim Zeitlin)
|
||||||
|
* - Fix use of SIPHASH_MAIN macro
|
||||||
|
*
|
||||||
|
* 2017-07-05 (Sebastian Pipping)
|
||||||
|
* - Use _SIP_ULL macro to not require a C++11 compiler if compiled as C++
|
||||||
|
* - Add const qualifiers at two places
|
||||||
|
* - Ensure <=80 characters line length (assuming tab width 4)
|
||||||
|
*
|
||||||
|
* 2017-06-23 (Victor Stinner)
|
||||||
|
* - Address Win64 compile warnings
|
||||||
|
*
|
||||||
|
* 2017-06-18 (Sebastian Pipping)
|
||||||
|
* - Clarify license note in the header
|
||||||
|
* - Address C89 issues:
|
||||||
|
* - Stop using inline keyword (and let compiler decide)
|
||||||
|
* - Replace _Bool by int
|
||||||
|
* - Turn macro siphash24 into a function
|
||||||
|
* - Address invalid conversion (void pointer) by explicit cast
|
||||||
|
* - Address lack of stdint.h for Visual Studio 2003 to 2008
|
||||||
|
* - Always expose sip24_valid (for self-tests)
|
||||||
|
*
|
||||||
|
* 2012-11-04 - Born. (William Ahern)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* USAGE:
|
||||||
|
*
|
||||||
|
* SipHash-2-4 takes as input two 64-bit words as the key, some number of
|
||||||
|
* message bytes, and outputs a 64-bit word as the message digest. This
|
||||||
|
* implementation employs two data structures: a struct sipkey for
|
||||||
|
* representing the key, and a struct siphash for representing the hash
|
||||||
|
* state.
|
||||||
|
*
|
||||||
|
* For converting a 16-byte unsigned char array to a key, use either the
|
||||||
|
* macro sip_keyof or the routine sip_tokey. The former instantiates a
|
||||||
|
* compound literal key, while the latter requires a key object as a
|
||||||
|
* parameter.
|
||||||
|
*
|
||||||
|
* unsigned char secret[16];
|
||||||
|
* arc4random_buf(secret, sizeof secret);
|
||||||
|
* struct sipkey *key = sip_keyof(secret);
|
||||||
|
*
|
||||||
|
* For hashing a message, use either the convenience macro siphash24 or the
|
||||||
|
* routines sip24_init, sip24_update, and sip24_final.
|
||||||
|
*
|
||||||
|
* struct siphash state;
|
||||||
|
* void *msg;
|
||||||
|
* size_t len;
|
||||||
|
* uint64_t hash;
|
||||||
|
*
|
||||||
|
* sip24_init(&state, key);
|
||||||
|
* sip24_update(&state, msg, len);
|
||||||
|
* hash = sip24_final(&state);
|
||||||
|
*
|
||||||
|
* or
|
||||||
|
*
|
||||||
|
* hash = siphash24(msg, len, key);
|
||||||
|
*
|
||||||
|
* To convert the 64-bit hash value to a canonical 8-byte little-endian
|
||||||
|
* binary representation, use either the macro sip_binof or the routine
|
||||||
|
* sip_tobin. The former instantiates and returns a compound literal array,
|
||||||
|
* while the latter requires an array object as a parameter.
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* NOTES:
|
||||||
|
*
|
||||||
|
* o Neither sip_keyof, sip_binof, nor siphash24 will work with compilers
|
||||||
|
* lacking compound literal support. Instead, you must use the lower-level
|
||||||
|
* interfaces which take as parameters the temporary state objects.
|
||||||
|
*
|
||||||
|
* o Uppercase macros may evaluate parameters more than once. Lowercase
|
||||||
|
* macros should not exhibit any such side effects.
|
||||||
|
* ==========================================================================
|
||||||
|
*/
|
||||||
|
#ifndef SIPHASH_H
|
||||||
|
#define SIPHASH_H
|
||||||
|
|
||||||
|
#include <stddef.h> /* size_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
|
||||||
|
* if this code is included and compiled as C++; related GCC warning is:
|
||||||
|
* warning: use of C++11 long long integer constant [-Wlong-long]
|
||||||
|
*/
|
||||||
|
#define _SIP_ULL(high, low) (((uint64_t)high << 32) | low)
|
||||||
|
|
||||||
|
#define SIP_ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
|
||||||
|
|
||||||
|
#define SIP_U32TO8_LE(p, v) \
|
||||||
|
(p)[0] = (uint8_t)((v) >> 0); \
|
||||||
|
(p)[1] = (uint8_t)((v) >> 8); \
|
||||||
|
(p)[2] = (uint8_t)((v) >> 16); \
|
||||||
|
(p)[3] = (uint8_t)((v) >> 24);
|
||||||
|
|
||||||
|
#define SIP_U64TO8_LE(p, v) \
|
||||||
|
SIP_U32TO8_LE((p) + 0, (uint32_t)((v) >> 0)); \
|
||||||
|
SIP_U32TO8_LE((p) + 4, (uint32_t)((v) >> 32));
|
||||||
|
|
||||||
|
#define SIP_U8TO64_LE(p) \
|
||||||
|
(((uint64_t)((p)[0]) << 0) | ((uint64_t)((p)[1]) << 8) \
|
||||||
|
| ((uint64_t)((p)[2]) << 16) | ((uint64_t)((p)[3]) << 24) \
|
||||||
|
| ((uint64_t)((p)[4]) << 32) | ((uint64_t)((p)[5]) << 40) \
|
||||||
|
| ((uint64_t)((p)[6]) << 48) | ((uint64_t)((p)[7]) << 56))
|
||||||
|
|
||||||
|
#define SIPHASH_INITIALIZER \
|
||||||
|
{ 0, 0, 0, 0, {0}, 0, 0 }
|
||||||
|
|
||||||
|
struct siphash {
|
||||||
|
uint64_t v0, v1, v2, v3;
|
||||||
|
|
||||||
|
unsigned char buf[8], *p;
|
||||||
|
uint64_t c;
|
||||||
|
}; /* struct siphash */
|
||||||
|
|
||||||
|
#define SIP_KEYLEN 16
|
||||||
|
|
||||||
|
struct sipkey {
|
||||||
|
uint64_t k[2];
|
||||||
|
}; /* struct sipkey */
|
||||||
|
|
||||||
|
#define sip_keyof(k) sip_tokey(&(struct sipkey){{0}}, (k))
|
||||||
|
|
||||||
|
static struct sipkey *
|
||||||
|
sip_tokey(struct sipkey *key, const void *src) {
|
||||||
|
key->k[0] = SIP_U8TO64_LE((const unsigned char *)src);
|
||||||
|
key->k[1] = SIP_U8TO64_LE((const unsigned char *)src + 8);
|
||||||
|
return key;
|
||||||
|
} /* sip_tokey() */
|
||||||
|
|
||||||
|
#ifdef SIPHASH_TOBIN
|
||||||
|
|
||||||
|
# define sip_binof(v) sip_tobin((unsigned char[8]){0}, (v))
|
||||||
|
|
||||||
|
static void *
|
||||||
|
sip_tobin(void *dst, uint64_t u64) {
|
||||||
|
SIP_U64TO8_LE((unsigned char *)dst, u64);
|
||||||
|
return dst;
|
||||||
|
} /* sip_tobin() */
|
||||||
|
|
||||||
|
#endif /* SIPHASH_TOBIN */
|
||||||
|
|
||||||
|
static void
|
||||||
|
sip_round(struct siphash *H, const int rounds) {
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < rounds; i++) {
|
||||||
|
H->v0 += H->v1;
|
||||||
|
H->v1 = SIP_ROTL(H->v1, 13);
|
||||||
|
H->v1 ^= H->v0;
|
||||||
|
H->v0 = SIP_ROTL(H->v0, 32);
|
||||||
|
|
||||||
|
H->v2 += H->v3;
|
||||||
|
H->v3 = SIP_ROTL(H->v3, 16);
|
||||||
|
H->v3 ^= H->v2;
|
||||||
|
|
||||||
|
H->v0 += H->v3;
|
||||||
|
H->v3 = SIP_ROTL(H->v3, 21);
|
||||||
|
H->v3 ^= H->v0;
|
||||||
|
|
||||||
|
H->v2 += H->v1;
|
||||||
|
H->v1 = SIP_ROTL(H->v1, 17);
|
||||||
|
H->v1 ^= H->v2;
|
||||||
|
H->v2 = SIP_ROTL(H->v2, 32);
|
||||||
|
}
|
||||||
|
} /* sip_round() */
|
||||||
|
|
||||||
|
static struct siphash *
|
||||||
|
sip24_init(struct siphash *H, const struct sipkey *key) {
|
||||||
|
H->v0 = _SIP_ULL(0x736f6d65U, 0x70736575U) ^ key->k[0];
|
||||||
|
H->v1 = _SIP_ULL(0x646f7261U, 0x6e646f6dU) ^ key->k[1];
|
||||||
|
H->v2 = _SIP_ULL(0x6c796765U, 0x6e657261U) ^ key->k[0];
|
||||||
|
H->v3 = _SIP_ULL(0x74656462U, 0x79746573U) ^ key->k[1];
|
||||||
|
|
||||||
|
H->p = H->buf;
|
||||||
|
H->c = 0;
|
||||||
|
|
||||||
|
return H;
|
||||||
|
} /* sip24_init() */
|
||||||
|
|
||||||
|
#define sip_endof(a) (&(a)[sizeof(a) / sizeof *(a)])
|
||||||
|
|
||||||
|
static struct siphash *
|
||||||
|
sip24_update(struct siphash *H, const void *src, size_t len) {
|
||||||
|
const unsigned char *p = (const unsigned char *)src, *pe = p + len;
|
||||||
|
uint64_t m;
|
||||||
|
|
||||||
|
do {
|
||||||
|
while (p < pe && H->p < sip_endof(H->buf))
|
||||||
|
*H->p++ = *p++;
|
||||||
|
|
||||||
|
if (H->p < sip_endof(H->buf))
|
||||||
|
break;
|
||||||
|
|
||||||
|
m = SIP_U8TO64_LE(H->buf);
|
||||||
|
H->v3 ^= m;
|
||||||
|
sip_round(H, 2);
|
||||||
|
H->v0 ^= m;
|
||||||
|
|
||||||
|
H->p = H->buf;
|
||||||
|
H->c += 8;
|
||||||
|
} while (p < pe);
|
||||||
|
|
||||||
|
return H;
|
||||||
|
} /* sip24_update() */
|
||||||
|
|
||||||
|
static uint64_t
|
||||||
|
sip24_final(struct siphash *H) {
|
||||||
|
const char left = (char)(H->p - H->buf);
|
||||||
|
uint64_t b = (H->c + left) << 56;
|
||||||
|
|
||||||
|
switch (left) {
|
||||||
|
case 7:
|
||||||
|
b |= (uint64_t)H->buf[6] << 48;
|
||||||
|
/* fall through */
|
||||||
|
case 6:
|
||||||
|
b |= (uint64_t)H->buf[5] << 40;
|
||||||
|
/* fall through */
|
||||||
|
case 5:
|
||||||
|
b |= (uint64_t)H->buf[4] << 32;
|
||||||
|
/* fall through */
|
||||||
|
case 4:
|
||||||
|
b |= (uint64_t)H->buf[3] << 24;
|
||||||
|
/* fall through */
|
||||||
|
case 3:
|
||||||
|
b |= (uint64_t)H->buf[2] << 16;
|
||||||
|
/* fall through */
|
||||||
|
case 2:
|
||||||
|
b |= (uint64_t)H->buf[1] << 8;
|
||||||
|
/* fall through */
|
||||||
|
case 1:
|
||||||
|
b |= (uint64_t)H->buf[0] << 0;
|
||||||
|
/* fall through */
|
||||||
|
case 0:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
H->v3 ^= b;
|
||||||
|
sip_round(H, 2);
|
||||||
|
H->v0 ^= b;
|
||||||
|
H->v2 ^= 0xff;
|
||||||
|
sip_round(H, 4);
|
||||||
|
|
||||||
|
return H->v0 ^ H->v1 ^ H->v2 ^ H->v3;
|
||||||
|
} /* sip24_final() */
|
||||||
|
|
||||||
|
static uint64_t
|
||||||
|
siphash24(const void *src, size_t len, const struct sipkey *key) {
|
||||||
|
struct siphash state = SIPHASH_INITIALIZER;
|
||||||
|
return sip24_final(sip24_update(sip24_init(&state, key), src, len));
|
||||||
|
} /* siphash24() */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* SipHash-2-4 output with
|
||||||
|
* k = 00 01 02 ...
|
||||||
|
* and
|
||||||
|
* in = (empty string)
|
||||||
|
* in = 00 (1 byte)
|
||||||
|
* in = 00 01 (2 bytes)
|
||||||
|
* in = 00 01 02 (3 bytes)
|
||||||
|
* ...
|
||||||
|
* in = 00 01 02 ... 3e (63 bytes)
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
sip24_valid(void) {
|
||||||
|
/* clang-format off */
|
||||||
|
static const unsigned char vectors[64][8] = {
|
||||||
|
{ 0x31, 0x0e, 0x0e, 0xdd, 0x47, 0xdb, 0x6f, 0x72, },
|
||||||
|
{ 0xfd, 0x67, 0xdc, 0x93, 0xc5, 0x39, 0xf8, 0x74, },
|
||||||
|
{ 0x5a, 0x4f, 0xa9, 0xd9, 0x09, 0x80, 0x6c, 0x0d, },
|
||||||
|
{ 0x2d, 0x7e, 0xfb, 0xd7, 0x96, 0x66, 0x67, 0x85, },
|
||||||
|
{ 0xb7, 0x87, 0x71, 0x27, 0xe0, 0x94, 0x27, 0xcf, },
|
||||||
|
{ 0x8d, 0xa6, 0x99, 0xcd, 0x64, 0x55, 0x76, 0x18, },
|
||||||
|
{ 0xce, 0xe3, 0xfe, 0x58, 0x6e, 0x46, 0xc9, 0xcb, },
|
||||||
|
{ 0x37, 0xd1, 0x01, 0x8b, 0xf5, 0x00, 0x02, 0xab, },
|
||||||
|
{ 0x62, 0x24, 0x93, 0x9a, 0x79, 0xf5, 0xf5, 0x93, },
|
||||||
|
{ 0xb0, 0xe4, 0xa9, 0x0b, 0xdf, 0x82, 0x00, 0x9e, },
|
||||||
|
{ 0xf3, 0xb9, 0xdd, 0x94, 0xc5, 0xbb, 0x5d, 0x7a, },
|
||||||
|
{ 0xa7, 0xad, 0x6b, 0x22, 0x46, 0x2f, 0xb3, 0xf4, },
|
||||||
|
{ 0xfb, 0xe5, 0x0e, 0x86, 0xbc, 0x8f, 0x1e, 0x75, },
|
||||||
|
{ 0x90, 0x3d, 0x84, 0xc0, 0x27, 0x56, 0xea, 0x14, },
|
||||||
|
{ 0xee, 0xf2, 0x7a, 0x8e, 0x90, 0xca, 0x23, 0xf7, },
|
||||||
|
{ 0xe5, 0x45, 0xbe, 0x49, 0x61, 0xca, 0x29, 0xa1, },
|
||||||
|
{ 0xdb, 0x9b, 0xc2, 0x57, 0x7f, 0xcc, 0x2a, 0x3f, },
|
||||||
|
{ 0x94, 0x47, 0xbe, 0x2c, 0xf5, 0xe9, 0x9a, 0x69, },
|
||||||
|
{ 0x9c, 0xd3, 0x8d, 0x96, 0xf0, 0xb3, 0xc1, 0x4b, },
|
||||||
|
{ 0xbd, 0x61, 0x79, 0xa7, 0x1d, 0xc9, 0x6d, 0xbb, },
|
||||||
|
{ 0x98, 0xee, 0xa2, 0x1a, 0xf2, 0x5c, 0xd6, 0xbe, },
|
||||||
|
{ 0xc7, 0x67, 0x3b, 0x2e, 0xb0, 0xcb, 0xf2, 0xd0, },
|
||||||
|
{ 0x88, 0x3e, 0xa3, 0xe3, 0x95, 0x67, 0x53, 0x93, },
|
||||||
|
{ 0xc8, 0xce, 0x5c, 0xcd, 0x8c, 0x03, 0x0c, 0xa8, },
|
||||||
|
{ 0x94, 0xaf, 0x49, 0xf6, 0xc6, 0x50, 0xad, 0xb8, },
|
||||||
|
{ 0xea, 0xb8, 0x85, 0x8a, 0xde, 0x92, 0xe1, 0xbc, },
|
||||||
|
{ 0xf3, 0x15, 0xbb, 0x5b, 0xb8, 0x35, 0xd8, 0x17, },
|
||||||
|
{ 0xad, 0xcf, 0x6b, 0x07, 0x63, 0x61, 0x2e, 0x2f, },
|
||||||
|
{ 0xa5, 0xc9, 0x1d, 0xa7, 0xac, 0xaa, 0x4d, 0xde, },
|
||||||
|
{ 0x71, 0x65, 0x95, 0x87, 0x66, 0x50, 0xa2, 0xa6, },
|
||||||
|
{ 0x28, 0xef, 0x49, 0x5c, 0x53, 0xa3, 0x87, 0xad, },
|
||||||
|
{ 0x42, 0xc3, 0x41, 0xd8, 0xfa, 0x92, 0xd8, 0x32, },
|
||||||
|
{ 0xce, 0x7c, 0xf2, 0x72, 0x2f, 0x51, 0x27, 0x71, },
|
||||||
|
{ 0xe3, 0x78, 0x59, 0xf9, 0x46, 0x23, 0xf3, 0xa7, },
|
||||||
|
{ 0x38, 0x12, 0x05, 0xbb, 0x1a, 0xb0, 0xe0, 0x12, },
|
||||||
|
{ 0xae, 0x97, 0xa1, 0x0f, 0xd4, 0x34, 0xe0, 0x15, },
|
||||||
|
{ 0xb4, 0xa3, 0x15, 0x08, 0xbe, 0xff, 0x4d, 0x31, },
|
||||||
|
{ 0x81, 0x39, 0x62, 0x29, 0xf0, 0x90, 0x79, 0x02, },
|
||||||
|
{ 0x4d, 0x0c, 0xf4, 0x9e, 0xe5, 0xd4, 0xdc, 0xca, },
|
||||||
|
{ 0x5c, 0x73, 0x33, 0x6a, 0x76, 0xd8, 0xbf, 0x9a, },
|
||||||
|
{ 0xd0, 0xa7, 0x04, 0x53, 0x6b, 0xa9, 0x3e, 0x0e, },
|
||||||
|
{ 0x92, 0x59, 0x58, 0xfc, 0xd6, 0x42, 0x0c, 0xad, },
|
||||||
|
{ 0xa9, 0x15, 0xc2, 0x9b, 0xc8, 0x06, 0x73, 0x18, },
|
||||||
|
{ 0x95, 0x2b, 0x79, 0xf3, 0xbc, 0x0a, 0xa6, 0xd4, },
|
||||||
|
{ 0xf2, 0x1d, 0xf2, 0xe4, 0x1d, 0x45, 0x35, 0xf9, },
|
||||||
|
{ 0x87, 0x57, 0x75, 0x19, 0x04, 0x8f, 0x53, 0xa9, },
|
||||||
|
{ 0x10, 0xa5, 0x6c, 0xf5, 0xdf, 0xcd, 0x9a, 0xdb, },
|
||||||
|
{ 0xeb, 0x75, 0x09, 0x5c, 0xcd, 0x98, 0x6c, 0xd0, },
|
||||||
|
{ 0x51, 0xa9, 0xcb, 0x9e, 0xcb, 0xa3, 0x12, 0xe6, },
|
||||||
|
{ 0x96, 0xaf, 0xad, 0xfc, 0x2c, 0xe6, 0x66, 0xc7, },
|
||||||
|
{ 0x72, 0xfe, 0x52, 0x97, 0x5a, 0x43, 0x64, 0xee, },
|
||||||
|
{ 0x5a, 0x16, 0x45, 0xb2, 0x76, 0xd5, 0x92, 0xa1, },
|
||||||
|
{ 0xb2, 0x74, 0xcb, 0x8e, 0xbf, 0x87, 0x87, 0x0a, },
|
||||||
|
{ 0x6f, 0x9b, 0xb4, 0x20, 0x3d, 0xe7, 0xb3, 0x81, },
|
||||||
|
{ 0xea, 0xec, 0xb2, 0xa3, 0x0b, 0x22, 0xa8, 0x7f, },
|
||||||
|
{ 0x99, 0x24, 0xa4, 0x3c, 0xc1, 0x31, 0x57, 0x24, },
|
||||||
|
{ 0xbd, 0x83, 0x8d, 0x3a, 0xaf, 0xbf, 0x8d, 0xb7, },
|
||||||
|
{ 0x0b, 0x1a, 0x2a, 0x32, 0x65, 0xd5, 0x1a, 0xea, },
|
||||||
|
{ 0x13, 0x50, 0x79, 0xa3, 0x23, 0x1c, 0xe6, 0x60, },
|
||||||
|
{ 0x93, 0x2b, 0x28, 0x46, 0xe4, 0xd7, 0x06, 0x66, },
|
||||||
|
{ 0xe1, 0x91, 0x5f, 0x5c, 0xb1, 0xec, 0xa4, 0x6c, },
|
||||||
|
{ 0xf3, 0x25, 0x96, 0x5c, 0xa1, 0x6d, 0x62, 0x9f, },
|
||||||
|
{ 0x57, 0x5f, 0xf2, 0x8e, 0x60, 0x38, 0x1b, 0xe5, },
|
||||||
|
{ 0x72, 0x45, 0x06, 0xeb, 0x4c, 0x32, 0x8a, 0x95, }
|
||||||
|
};
|
||||||
|
/* clang-format on */
|
||||||
|
|
||||||
|
unsigned char in[64];
|
||||||
|
struct sipkey k;
|
||||||
|
size_t i;
|
||||||
|
|
||||||
|
sip_tokey(&k, "\000\001\002\003\004\005\006\007\010\011"
|
||||||
|
"\012\013\014\015\016\017");
|
||||||
|
|
||||||
|
for (i = 0; i < sizeof in; ++i) {
|
||||||
|
in[i] = (unsigned char)i;
|
||||||
|
|
||||||
|
if (siphash24(in, i, &k) != SIP_U8TO64_LE(vectors[i]))
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
} /* sip24_valid() */
|
||||||
|
|
||||||
|
#ifdef SIPHASH_MAIN
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
|
||||||
|
int
|
||||||
|
main(void) {
|
||||||
|
const int ok = sip24_valid();
|
||||||
|
|
||||||
|
if (ok)
|
||||||
|
puts("OK");
|
||||||
|
else
|
||||||
|
puts("FAIL");
|
||||||
|
|
||||||
|
return ! ok;
|
||||||
|
} /* main() */
|
||||||
|
|
||||||
|
#endif /* SIPHASH_MAIN */
|
||||||
|
|
||||||
|
#endif /* SIPHASH_H */
|
64
3rdparty/expat/lib/utf8tab.h
vendored
Normal file
64
3rdparty/expat/lib/utf8tab.h
vendored
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* 0x80 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0x84 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0x88 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0x8C */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0x90 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0x94 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0x98 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0x9C */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xA0 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xA4 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xA8 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xAC */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xB0 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xB4 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xB8 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xBC */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
|
||||||
|
/* 0xC0 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xC4 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xC8 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xCC */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xD0 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xD4 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xD8 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xDC */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
|
||||||
|
/* 0xE0 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
|
||||||
|
/* 0xE4 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
|
||||||
|
/* 0xE8 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
|
||||||
|
/* 0xEC */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
|
||||||
|
/* 0xF0 */ BT_LEAD4, BT_LEAD4, BT_LEAD4, BT_LEAD4,
|
||||||
|
/* 0xF4 */ BT_LEAD4, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0xF8 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
|
||||||
|
/* 0xFC */ BT_NONXML, BT_NONXML, BT_MALFORM, BT_MALFORM,
|
56
3rdparty/expat/lib/winconfig.h
vendored
Normal file
56
3rdparty/expat/lib/winconfig.h
vendored
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef WINCONFIG_H
|
||||||
|
#define WINCONFIG_H
|
||||||
|
|
||||||
|
#define WIN32_LEAN_AND_MEAN
|
||||||
|
#include <windows.h>
|
||||||
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
|
|
||||||
|
#include <memory.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 */
|
6914
3rdparty/expat/lib/xmlparse.c
vendored
Normal file
6914
3rdparty/expat/lib/xmlparse.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1249
3rdparty/expat/lib/xmlrole.c
vendored
Normal file
1249
3rdparty/expat/lib/xmlrole.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
139
3rdparty/expat/lib/xmlrole.h
vendored
Normal file
139
3rdparty/expat/lib/xmlrole.h
vendored
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef XmlRole_INCLUDED
|
||||||
|
#define XmlRole_INCLUDED 1
|
||||||
|
|
||||||
|
#ifdef __VMS
|
||||||
|
/* 0 1 2 3 0 1 2 3
|
||||||
|
1234567890123456789012345678901 1234567890123456789012345678901 */
|
||||||
|
# define XmlPrologStateInitExternalEntity XmlPrologStateInitExternalEnt
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "xmltok.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
enum {
|
||||||
|
XML_ROLE_ERROR = -1,
|
||||||
|
XML_ROLE_NONE = 0,
|
||||||
|
XML_ROLE_XML_DECL,
|
||||||
|
XML_ROLE_INSTANCE_START,
|
||||||
|
XML_ROLE_DOCTYPE_NONE,
|
||||||
|
XML_ROLE_DOCTYPE_NAME,
|
||||||
|
XML_ROLE_DOCTYPE_SYSTEM_ID,
|
||||||
|
XML_ROLE_DOCTYPE_PUBLIC_ID,
|
||||||
|
XML_ROLE_DOCTYPE_INTERNAL_SUBSET,
|
||||||
|
XML_ROLE_DOCTYPE_CLOSE,
|
||||||
|
XML_ROLE_GENERAL_ENTITY_NAME,
|
||||||
|
XML_ROLE_PARAM_ENTITY_NAME,
|
||||||
|
XML_ROLE_ENTITY_NONE,
|
||||||
|
XML_ROLE_ENTITY_VALUE,
|
||||||
|
XML_ROLE_ENTITY_SYSTEM_ID,
|
||||||
|
XML_ROLE_ENTITY_PUBLIC_ID,
|
||||||
|
XML_ROLE_ENTITY_COMPLETE,
|
||||||
|
XML_ROLE_ENTITY_NOTATION_NAME,
|
||||||
|
XML_ROLE_NOTATION_NONE,
|
||||||
|
XML_ROLE_NOTATION_NAME,
|
||||||
|
XML_ROLE_NOTATION_SYSTEM_ID,
|
||||||
|
XML_ROLE_NOTATION_NO_SYSTEM_ID,
|
||||||
|
XML_ROLE_NOTATION_PUBLIC_ID,
|
||||||
|
XML_ROLE_ATTRIBUTE_NAME,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_CDATA,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_ID,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_IDREF,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_IDREFS,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_ENTITY,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_ENTITIES,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_NMTOKEN,
|
||||||
|
XML_ROLE_ATTRIBUTE_TYPE_NMTOKENS,
|
||||||
|
XML_ROLE_ATTRIBUTE_ENUM_VALUE,
|
||||||
|
XML_ROLE_ATTRIBUTE_NOTATION_VALUE,
|
||||||
|
XML_ROLE_ATTLIST_NONE,
|
||||||
|
XML_ROLE_ATTLIST_ELEMENT_NAME,
|
||||||
|
XML_ROLE_IMPLIED_ATTRIBUTE_VALUE,
|
||||||
|
XML_ROLE_REQUIRED_ATTRIBUTE_VALUE,
|
||||||
|
XML_ROLE_DEFAULT_ATTRIBUTE_VALUE,
|
||||||
|
XML_ROLE_FIXED_ATTRIBUTE_VALUE,
|
||||||
|
XML_ROLE_ELEMENT_NONE,
|
||||||
|
XML_ROLE_ELEMENT_NAME,
|
||||||
|
XML_ROLE_CONTENT_ANY,
|
||||||
|
XML_ROLE_CONTENT_EMPTY,
|
||||||
|
XML_ROLE_CONTENT_PCDATA,
|
||||||
|
XML_ROLE_GROUP_OPEN,
|
||||||
|
XML_ROLE_GROUP_CLOSE,
|
||||||
|
XML_ROLE_GROUP_CLOSE_REP,
|
||||||
|
XML_ROLE_GROUP_CLOSE_OPT,
|
||||||
|
XML_ROLE_GROUP_CLOSE_PLUS,
|
||||||
|
XML_ROLE_GROUP_CHOICE,
|
||||||
|
XML_ROLE_GROUP_SEQUENCE,
|
||||||
|
XML_ROLE_CONTENT_ELEMENT,
|
||||||
|
XML_ROLE_CONTENT_ELEMENT_REP,
|
||||||
|
XML_ROLE_CONTENT_ELEMENT_OPT,
|
||||||
|
XML_ROLE_CONTENT_ELEMENT_PLUS,
|
||||||
|
XML_ROLE_PI,
|
||||||
|
XML_ROLE_COMMENT,
|
||||||
|
#ifdef XML_DTD
|
||||||
|
XML_ROLE_TEXT_DECL,
|
||||||
|
XML_ROLE_IGNORE_SECT,
|
||||||
|
XML_ROLE_INNER_PARAM_ENTITY_REF,
|
||||||
|
#endif /* XML_DTD */
|
||||||
|
XML_ROLE_PARAM_ENTITY_REF
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef struct prolog_state {
|
||||||
|
int(PTRCALL *handler)(struct prolog_state *state, int tok, const char *ptr,
|
||||||
|
const char *end, const ENCODING *enc);
|
||||||
|
unsigned level;
|
||||||
|
int role_none;
|
||||||
|
#ifdef XML_DTD
|
||||||
|
unsigned includeLevel;
|
||||||
|
int documentEntity;
|
||||||
|
int inEntityValue;
|
||||||
|
#endif /* XML_DTD */
|
||||||
|
} PROLOG_STATE;
|
||||||
|
|
||||||
|
void XmlPrologStateInit(PROLOG_STATE *);
|
||||||
|
#ifdef XML_DTD
|
||||||
|
void XmlPrologStateInitExternalEntity(PROLOG_STATE *);
|
||||||
|
#endif /* XML_DTD */
|
||||||
|
|
||||||
|
#define XmlTokenRole(state, tok, ptr, end, enc) \
|
||||||
|
(((state)->handler)(state, tok, ptr, end, enc))
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* not XmlRole_INCLUDED */
|
1672
3rdparty/expat/lib/xmltok.c
vendored
Normal file
1672
3rdparty/expat/lib/xmltok.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
315
3rdparty/expat/lib/xmltok.h
vendored
Normal file
315
3rdparty/expat/lib/xmltok.h
vendored
Normal file
@ -0,0 +1,315 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef XmlTok_INCLUDED
|
||||||
|
#define XmlTok_INCLUDED 1
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* The following token may be returned by XmlContentTok */
|
||||||
|
#define XML_TOK_TRAILING_RSQB \
|
||||||
|
-5 /* ] or ]] at the end of the scan; might be \
|
||||||
|
start of illegal ]]> sequence */
|
||||||
|
/* The following tokens may be returned by both XmlPrologTok and
|
||||||
|
XmlContentTok.
|
||||||
|
*/
|
||||||
|
#define XML_TOK_NONE -4 /* The string to be scanned is empty */
|
||||||
|
#define XML_TOK_TRAILING_CR \
|
||||||
|
-3 /* A CR at the end of the scan; \
|
||||||
|
might be part of CRLF sequence */
|
||||||
|
#define XML_TOK_PARTIAL_CHAR -2 /* only part of a multibyte sequence */
|
||||||
|
#define XML_TOK_PARTIAL -1 /* only part of a token */
|
||||||
|
#define XML_TOK_INVALID 0
|
||||||
|
|
||||||
|
/* The following tokens are returned by XmlContentTok; some are also
|
||||||
|
returned by XmlAttributeValueTok, XmlEntityTok, XmlCdataSectionTok.
|
||||||
|
*/
|
||||||
|
#define XML_TOK_START_TAG_WITH_ATTS 1
|
||||||
|
#define XML_TOK_START_TAG_NO_ATTS 2
|
||||||
|
#define XML_TOK_EMPTY_ELEMENT_WITH_ATTS 3 /* empty element tag <e/> */
|
||||||
|
#define XML_TOK_EMPTY_ELEMENT_NO_ATTS 4
|
||||||
|
#define XML_TOK_END_TAG 5
|
||||||
|
#define XML_TOK_DATA_CHARS 6
|
||||||
|
#define XML_TOK_DATA_NEWLINE 7
|
||||||
|
#define XML_TOK_CDATA_SECT_OPEN 8
|
||||||
|
#define XML_TOK_ENTITY_REF 9
|
||||||
|
#define XML_TOK_CHAR_REF 10 /* numeric character reference */
|
||||||
|
|
||||||
|
/* The following tokens may be returned by both XmlPrologTok and
|
||||||
|
XmlContentTok.
|
||||||
|
*/
|
||||||
|
#define XML_TOK_PI 11 /* processing instruction */
|
||||||
|
#define XML_TOK_XML_DECL 12 /* XML decl or text decl */
|
||||||
|
#define XML_TOK_COMMENT 13
|
||||||
|
#define XML_TOK_BOM 14 /* Byte order mark */
|
||||||
|
|
||||||
|
/* The following tokens are returned only by XmlPrologTok */
|
||||||
|
#define XML_TOK_PROLOG_S 15
|
||||||
|
#define XML_TOK_DECL_OPEN 16 /* <!foo */
|
||||||
|
#define XML_TOK_DECL_CLOSE 17 /* > */
|
||||||
|
#define XML_TOK_NAME 18
|
||||||
|
#define XML_TOK_NMTOKEN 19
|
||||||
|
#define XML_TOK_POUND_NAME 20 /* #name */
|
||||||
|
#define XML_TOK_OR 21 /* | */
|
||||||
|
#define XML_TOK_PERCENT 22
|
||||||
|
#define XML_TOK_OPEN_PAREN 23
|
||||||
|
#define XML_TOK_CLOSE_PAREN 24
|
||||||
|
#define XML_TOK_OPEN_BRACKET 25
|
||||||
|
#define XML_TOK_CLOSE_BRACKET 26
|
||||||
|
#define XML_TOK_LITERAL 27
|
||||||
|
#define XML_TOK_PARAM_ENTITY_REF 28
|
||||||
|
#define XML_TOK_INSTANCE_START 29
|
||||||
|
|
||||||
|
/* The following occur only in element type declarations */
|
||||||
|
#define XML_TOK_NAME_QUESTION 30 /* name? */
|
||||||
|
#define XML_TOK_NAME_ASTERISK 31 /* name* */
|
||||||
|
#define XML_TOK_NAME_PLUS 32 /* name+ */
|
||||||
|
#define XML_TOK_COND_SECT_OPEN 33 /* <![ */
|
||||||
|
#define XML_TOK_COND_SECT_CLOSE 34 /* ]]> */
|
||||||
|
#define XML_TOK_CLOSE_PAREN_QUESTION 35 /* )? */
|
||||||
|
#define XML_TOK_CLOSE_PAREN_ASTERISK 36 /* )* */
|
||||||
|
#define XML_TOK_CLOSE_PAREN_PLUS 37 /* )+ */
|
||||||
|
#define XML_TOK_COMMA 38
|
||||||
|
|
||||||
|
/* The following token is returned only by XmlAttributeValueTok */
|
||||||
|
#define XML_TOK_ATTRIBUTE_VALUE_S 39
|
||||||
|
|
||||||
|
/* The following token is returned only by XmlCdataSectionTok */
|
||||||
|
#define XML_TOK_CDATA_SECT_CLOSE 40
|
||||||
|
|
||||||
|
/* With namespace processing this is returned by XmlPrologTok for a
|
||||||
|
name with a colon.
|
||||||
|
*/
|
||||||
|
#define XML_TOK_PREFIXED_NAME 41
|
||||||
|
|
||||||
|
#ifdef XML_DTD
|
||||||
|
# define XML_TOK_IGNORE_SECT 42
|
||||||
|
#endif /* XML_DTD */
|
||||||
|
|
||||||
|
#ifdef XML_DTD
|
||||||
|
# define XML_N_STATES 4
|
||||||
|
#else /* not XML_DTD */
|
||||||
|
# define XML_N_STATES 3
|
||||||
|
#endif /* not XML_DTD */
|
||||||
|
|
||||||
|
#define XML_PROLOG_STATE 0
|
||||||
|
#define XML_CONTENT_STATE 1
|
||||||
|
#define XML_CDATA_SECTION_STATE 2
|
||||||
|
#ifdef XML_DTD
|
||||||
|
# define XML_IGNORE_SECTION_STATE 3
|
||||||
|
#endif /* XML_DTD */
|
||||||
|
|
||||||
|
#define XML_N_LITERAL_TYPES 2
|
||||||
|
#define XML_ATTRIBUTE_VALUE_LITERAL 0
|
||||||
|
#define XML_ENTITY_VALUE_LITERAL 1
|
||||||
|
|
||||||
|
/* The size of the buffer passed to XmlUtf8Encode must be at least this. */
|
||||||
|
#define XML_UTF8_ENCODE_MAX 4
|
||||||
|
/* The size of the buffer passed to XmlUtf16Encode must be at least this. */
|
||||||
|
#define XML_UTF16_ENCODE_MAX 2
|
||||||
|
|
||||||
|
typedef struct position {
|
||||||
|
/* first line and first column are 0 not 1 */
|
||||||
|
XML_Size lineNumber;
|
||||||
|
XML_Size columnNumber;
|
||||||
|
} POSITION;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const char *name;
|
||||||
|
const char *valuePtr;
|
||||||
|
const char *valueEnd;
|
||||||
|
char normalized;
|
||||||
|
} ATTRIBUTE;
|
||||||
|
|
||||||
|
struct encoding;
|
||||||
|
typedef struct encoding ENCODING;
|
||||||
|
|
||||||
|
typedef int(PTRCALL *SCANNER)(const ENCODING *, const char *, const char *,
|
||||||
|
const char **);
|
||||||
|
|
||||||
|
enum XML_Convert_Result {
|
||||||
|
XML_CONVERT_COMPLETED = 0,
|
||||||
|
XML_CONVERT_INPUT_INCOMPLETE = 1,
|
||||||
|
XML_CONVERT_OUTPUT_EXHAUSTED
|
||||||
|
= 2 /* and therefore potentially input remaining as well */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct encoding {
|
||||||
|
SCANNER scanners[XML_N_STATES];
|
||||||
|
SCANNER literalScanners[XML_N_LITERAL_TYPES];
|
||||||
|
int(PTRCALL *nameMatchesAscii)(const ENCODING *, const char *, const char *,
|
||||||
|
const char *);
|
||||||
|
int(PTRFASTCALL *nameLength)(const ENCODING *, const char *);
|
||||||
|
const char *(PTRFASTCALL *skipS)(const ENCODING *, const char *);
|
||||||
|
int(PTRCALL *getAtts)(const ENCODING *enc, const char *ptr, int attsMax,
|
||||||
|
ATTRIBUTE *atts);
|
||||||
|
int(PTRFASTCALL *charRefNumber)(const ENCODING *enc, const char *ptr);
|
||||||
|
int(PTRCALL *predefinedEntityName)(const ENCODING *, const char *,
|
||||||
|
const char *);
|
||||||
|
void(PTRCALL *updatePosition)(const ENCODING *, const char *ptr,
|
||||||
|
const char *end, POSITION *);
|
||||||
|
int(PTRCALL *isPublicId)(const ENCODING *enc, const char *ptr,
|
||||||
|
const char *end, const char **badPtr);
|
||||||
|
enum XML_Convert_Result(PTRCALL *utf8Convert)(const ENCODING *enc,
|
||||||
|
const char **fromP,
|
||||||
|
const char *fromLim, char **toP,
|
||||||
|
const char *toLim);
|
||||||
|
enum XML_Convert_Result(PTRCALL *utf16Convert)(const ENCODING *enc,
|
||||||
|
const char **fromP,
|
||||||
|
const char *fromLim,
|
||||||
|
unsigned short **toP,
|
||||||
|
const unsigned short *toLim);
|
||||||
|
int minBytesPerChar;
|
||||||
|
char isUtf8;
|
||||||
|
char isUtf16;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Scan the string starting at ptr until the end of the next complete
|
||||||
|
token, but do not scan past eptr. Return an integer giving the
|
||||||
|
type of token.
|
||||||
|
|
||||||
|
Return XML_TOK_NONE when ptr == eptr; nextTokPtr will not be set.
|
||||||
|
|
||||||
|
Return XML_TOK_PARTIAL when the string does not contain a complete
|
||||||
|
token; nextTokPtr will not be set.
|
||||||
|
|
||||||
|
Return XML_TOK_INVALID when the string does not start a valid
|
||||||
|
token; nextTokPtr will be set to point to the character which made
|
||||||
|
the token invalid.
|
||||||
|
|
||||||
|
Otherwise the string starts with a valid token; nextTokPtr will be
|
||||||
|
set to point to the character following the end of that token.
|
||||||
|
|
||||||
|
Each data character counts as a single token, but adjacent data
|
||||||
|
characters may be returned together. Similarly for characters in
|
||||||
|
the prolog outside literals, comments and processing instructions.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define XmlTok(enc, state, ptr, end, nextTokPtr) \
|
||||||
|
(((enc)->scanners[state])(enc, ptr, end, nextTokPtr))
|
||||||
|
|
||||||
|
#define XmlPrologTok(enc, ptr, end, nextTokPtr) \
|
||||||
|
XmlTok(enc, XML_PROLOG_STATE, ptr, end, nextTokPtr)
|
||||||
|
|
||||||
|
#define XmlContentTok(enc, ptr, end, nextTokPtr) \
|
||||||
|
XmlTok(enc, XML_CONTENT_STATE, ptr, end, nextTokPtr)
|
||||||
|
|
||||||
|
#define XmlCdataSectionTok(enc, ptr, end, nextTokPtr) \
|
||||||
|
XmlTok(enc, XML_CDATA_SECTION_STATE, ptr, end, nextTokPtr)
|
||||||
|
|
||||||
|
#ifdef XML_DTD
|
||||||
|
|
||||||
|
# define XmlIgnoreSectionTok(enc, ptr, end, nextTokPtr) \
|
||||||
|
XmlTok(enc, XML_IGNORE_SECTION_STATE, ptr, end, nextTokPtr)
|
||||||
|
|
||||||
|
#endif /* XML_DTD */
|
||||||
|
|
||||||
|
/* This is used for performing a 2nd-level tokenization on the content
|
||||||
|
of a literal that has already been returned by XmlTok.
|
||||||
|
*/
|
||||||
|
#define XmlLiteralTok(enc, literalType, ptr, end, nextTokPtr) \
|
||||||
|
(((enc)->literalScanners[literalType])(enc, ptr, end, nextTokPtr))
|
||||||
|
|
||||||
|
#define XmlAttributeValueTok(enc, ptr, end, nextTokPtr) \
|
||||||
|
XmlLiteralTok(enc, XML_ATTRIBUTE_VALUE_LITERAL, ptr, end, nextTokPtr)
|
||||||
|
|
||||||
|
#define XmlEntityValueTok(enc, ptr, end, nextTokPtr) \
|
||||||
|
XmlLiteralTok(enc, XML_ENTITY_VALUE_LITERAL, ptr, end, nextTokPtr)
|
||||||
|
|
||||||
|
#define XmlNameMatchesAscii(enc, ptr1, end1, ptr2) \
|
||||||
|
(((enc)->nameMatchesAscii)(enc, ptr1, end1, ptr2))
|
||||||
|
|
||||||
|
#define XmlNameLength(enc, ptr) (((enc)->nameLength)(enc, ptr))
|
||||||
|
|
||||||
|
#define XmlSkipS(enc, ptr) (((enc)->skipS)(enc, ptr))
|
||||||
|
|
||||||
|
#define XmlGetAttributes(enc, ptr, attsMax, atts) \
|
||||||
|
(((enc)->getAtts)(enc, ptr, attsMax, atts))
|
||||||
|
|
||||||
|
#define XmlCharRefNumber(enc, ptr) (((enc)->charRefNumber)(enc, ptr))
|
||||||
|
|
||||||
|
#define XmlPredefinedEntityName(enc, ptr, end) \
|
||||||
|
(((enc)->predefinedEntityName)(enc, ptr, end))
|
||||||
|
|
||||||
|
#define XmlUpdatePosition(enc, ptr, end, pos) \
|
||||||
|
(((enc)->updatePosition)(enc, ptr, end, pos))
|
||||||
|
|
||||||
|
#define XmlIsPublicId(enc, ptr, end, badPtr) \
|
||||||
|
(((enc)->isPublicId)(enc, ptr, end, badPtr))
|
||||||
|
|
||||||
|
#define XmlUtf8Convert(enc, fromP, fromLim, toP, toLim) \
|
||||||
|
(((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim))
|
||||||
|
|
||||||
|
#define XmlUtf16Convert(enc, fromP, fromLim, toP, toLim) \
|
||||||
|
(((enc)->utf16Convert)(enc, fromP, fromLim, toP, toLim))
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
ENCODING initEnc;
|
||||||
|
const ENCODING **encPtr;
|
||||||
|
} INIT_ENCODING;
|
||||||
|
|
||||||
|
int XmlParseXmlDecl(int isGeneralTextEntity, const ENCODING *enc,
|
||||||
|
const char *ptr, const char *end, const char **badPtr,
|
||||||
|
const char **versionPtr, const char **versionEndPtr,
|
||||||
|
const char **encodingNamePtr,
|
||||||
|
const ENCODING **namedEncodingPtr, int *standalonePtr);
|
||||||
|
|
||||||
|
int XmlInitEncoding(INIT_ENCODING *, const ENCODING **, const char *name);
|
||||||
|
const ENCODING *XmlGetUtf8InternalEncoding(void);
|
||||||
|
const ENCODING *XmlGetUtf16InternalEncoding(void);
|
||||||
|
int FASTCALL XmlUtf8Encode(int charNumber, char *buf);
|
||||||
|
int FASTCALL XmlUtf16Encode(int charNumber, unsigned short *buf);
|
||||||
|
int XmlSizeOfUnknownEncoding(void);
|
||||||
|
|
||||||
|
typedef int(XMLCALL *CONVERTER)(void *userData, const char *p);
|
||||||
|
|
||||||
|
ENCODING *XmlInitUnknownEncoding(void *mem, int *table, CONVERTER convert,
|
||||||
|
void *userData);
|
||||||
|
|
||||||
|
int XmlParseXmlDeclNS(int isGeneralTextEntity, const ENCODING *enc,
|
||||||
|
const char *ptr, const char *end, const char **badPtr,
|
||||||
|
const char **versionPtr, const char **versionEndPtr,
|
||||||
|
const char **encodingNamePtr,
|
||||||
|
const ENCODING **namedEncodingPtr, int *standalonePtr);
|
||||||
|
|
||||||
|
int XmlInitEncodingNS(INIT_ENCODING *, const ENCODING **, const char *name);
|
||||||
|
const ENCODING *XmlGetUtf8InternalEncodingNS(void);
|
||||||
|
const ENCODING *XmlGetUtf16InternalEncodingNS(void);
|
||||||
|
ENCODING *XmlInitUnknownEncodingNS(void *mem, int *table, CONVERTER convert,
|
||||||
|
void *userData);
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* not XmlTok_INCLUDED */
|
1805
3rdparty/expat/lib/xmltok_impl.c
vendored
Normal file
1805
3rdparty/expat/lib/xmltok_impl.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
73
3rdparty/expat/lib/xmltok_impl.h
vendored
Normal file
73
3rdparty/expat/lib/xmltok_impl.h
vendored
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
enum {
|
||||||
|
BT_NONXML, /* e.g. noncharacter-FFFF */
|
||||||
|
BT_MALFORM, /* illegal, with regard to encoding */
|
||||||
|
BT_LT, /* less than = "<" */
|
||||||
|
BT_AMP, /* ampersand = "&" */
|
||||||
|
BT_RSQB, /* right square bracket = "[" */
|
||||||
|
BT_LEAD2, /* lead byte of a 2-byte UTF-8 character */
|
||||||
|
BT_LEAD3, /* lead byte of a 3-byte UTF-8 character */
|
||||||
|
BT_LEAD4, /* lead byte of a 4-byte UTF-8 character */
|
||||||
|
BT_TRAIL, /* trailing unit, e.g. second 16-bit unit of a 4-byte char. */
|
||||||
|
BT_CR, /* carriage return = "\r" */
|
||||||
|
BT_LF, /* line feed = "\n" */
|
||||||
|
BT_GT, /* greater than = ">" */
|
||||||
|
BT_QUOT, /* quotation character = "\"" */
|
||||||
|
BT_APOS, /* aposthrophe = "'" */
|
||||||
|
BT_EQUALS, /* equal sign = "=" */
|
||||||
|
BT_QUEST, /* question mark = "?" */
|
||||||
|
BT_EXCL, /* exclamation mark = "!" */
|
||||||
|
BT_SOL, /* solidus, slash = "/" */
|
||||||
|
BT_SEMI, /* semicolon = ";" */
|
||||||
|
BT_NUM, /* number sign = "#" */
|
||||||
|
BT_LSQB, /* left square bracket = "[" */
|
||||||
|
BT_S, /* white space, e.g. "\t", " "[, "\r"] */
|
||||||
|
BT_NMSTRT, /* non-hex name start letter = "G".."Z" + "g".."z" + "_" */
|
||||||
|
BT_COLON, /* colon = ":" */
|
||||||
|
BT_HEX, /* hex letter = "A".."F" + "a".."f" */
|
||||||
|
BT_DIGIT, /* digit = "0".."9" */
|
||||||
|
BT_NAME, /* dot and middle dot = "." + chr(0xb7) */
|
||||||
|
BT_MINUS, /* minus = "-" */
|
||||||
|
BT_OTHER, /* known not to be a name or name start character */
|
||||||
|
BT_NONASCII, /* might be a name or name start character */
|
||||||
|
BT_PERCNT, /* percent sign = "%" */
|
||||||
|
BT_LPAR, /* left parenthesis = "(" */
|
||||||
|
BT_RPAR, /* right parenthesis = "(" */
|
||||||
|
BT_AST, /* asterisk = "*" */
|
||||||
|
BT_PLUS, /* plus sign = "+" */
|
||||||
|
BT_COMMA, /* comma = "," */
|
||||||
|
BT_VERBAR /* vertical bar = "|" */
|
||||||
|
};
|
||||||
|
|
||||||
|
#include <stddef.h>
|
118
3rdparty/expat/lib/xmltok_ns.c
vendored
Normal file
118
3rdparty/expat/lib/xmltok_ns.c
vendored
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
/* This file is included!
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 XML_TOK_NS_C
|
||||||
|
|
||||||
|
const ENCODING *
|
||||||
|
NS(XmlGetUtf8InternalEncoding)(void) {
|
||||||
|
return &ns(internal_utf8_encoding).enc;
|
||||||
|
}
|
||||||
|
|
||||||
|
const ENCODING *
|
||||||
|
NS(XmlGetUtf16InternalEncoding)(void) {
|
||||||
|
# if BYTEORDER == 1234
|
||||||
|
return &ns(internal_little2_encoding).enc;
|
||||||
|
# elif BYTEORDER == 4321
|
||||||
|
return &ns(internal_big2_encoding).enc;
|
||||||
|
# else
|
||||||
|
const short n = 1;
|
||||||
|
return (*(const char *)&n ? &ns(internal_little2_encoding).enc
|
||||||
|
: &ns(internal_big2_encoding).enc);
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
|
||||||
|
static const ENCODING *const NS(encodings)[] = {
|
||||||
|
&ns(latin1_encoding).enc, &ns(ascii_encoding).enc,
|
||||||
|
&ns(utf8_encoding).enc, &ns(big2_encoding).enc,
|
||||||
|
&ns(big2_encoding).enc, &ns(little2_encoding).enc,
|
||||||
|
&ns(utf8_encoding).enc /* NO_ENC */
|
||||||
|
};
|
||||||
|
|
||||||
|
static int PTRCALL
|
||||||
|
NS(initScanProlog)(const ENCODING *enc, const char *ptr, const char *end,
|
||||||
|
const char **nextTokPtr) {
|
||||||
|
return initScan(NS(encodings), (const INIT_ENCODING *)enc, XML_PROLOG_STATE,
|
||||||
|
ptr, end, nextTokPtr);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int PTRCALL
|
||||||
|
NS(initScanContent)(const ENCODING *enc, const char *ptr, const char *end,
|
||||||
|
const char **nextTokPtr) {
|
||||||
|
return initScan(NS(encodings), (const INIT_ENCODING *)enc, XML_CONTENT_STATE,
|
||||||
|
ptr, end, nextTokPtr);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
NS(XmlInitEncoding)(INIT_ENCODING *p, const ENCODING **encPtr,
|
||||||
|
const char *name) {
|
||||||
|
int i = getEncodingIndex(name);
|
||||||
|
if (i == UNKNOWN_ENC)
|
||||||
|
return 0;
|
||||||
|
SET_INIT_ENC_INDEX(p, i);
|
||||||
|
p->initEnc.scanners[XML_PROLOG_STATE] = NS(initScanProlog);
|
||||||
|
p->initEnc.scanners[XML_CONTENT_STATE] = NS(initScanContent);
|
||||||
|
p->initEnc.updatePosition = initUpdatePosition;
|
||||||
|
p->encPtr = encPtr;
|
||||||
|
*encPtr = &(p->initEnc);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
static const ENCODING *
|
||||||
|
NS(findEncoding)(const ENCODING *enc, const char *ptr, const char *end) {
|
||||||
|
# define ENCODING_MAX 128
|
||||||
|
char buf[ENCODING_MAX];
|
||||||
|
char *p = buf;
|
||||||
|
int i;
|
||||||
|
XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
|
||||||
|
if (ptr != end)
|
||||||
|
return 0;
|
||||||
|
*p = 0;
|
||||||
|
if (streqci(buf, KW_UTF_16) && enc->minBytesPerChar == 2)
|
||||||
|
return enc;
|
||||||
|
i = getEncodingIndex(buf);
|
||||||
|
if (i == UNKNOWN_ENC)
|
||||||
|
return 0;
|
||||||
|
return NS(encodings)[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
NS(XmlParseXmlDecl)(int isGeneralTextEntity, const ENCODING *enc,
|
||||||
|
const char *ptr, const char *end, const char **badPtr,
|
||||||
|
const char **versionPtr, const char **versionEndPtr,
|
||||||
|
const char **encodingName, const ENCODING **encoding,
|
||||||
|
int *standalone) {
|
||||||
|
return doParseXmlDecl(NS(findEncoding), isGeneralTextEntity, enc, ptr, end,
|
||||||
|
badPtr, versionPtr, versionEndPtr, encodingName,
|
||||||
|
encoding, standalone);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* XML_TOK_NS_C */
|
8387
3rdparty/expat/m4/libtool.m4
vendored
Normal file
8387
3rdparty/expat/m4/libtool.m4
vendored
Normal file
File diff suppressed because it is too large
Load Diff
437
3rdparty/expat/m4/ltoptions.m4
vendored
Normal file
437
3rdparty/expat/m4/ltoptions.m4
vendored
Normal file
@ -0,0 +1,437 @@
|
|||||||
|
# Helper functions for option handling. -*- Autoconf -*-
|
||||||
|
#
|
||||||
|
# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
|
||||||
|
# Foundation, Inc.
|
||||||
|
# Written by Gary V. Vaughan, 2004
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
# serial 8 ltoptions.m4
|
||||||
|
|
||||||
|
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||||
|
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
|
||||||
|
# ------------------------------------------
|
||||||
|
m4_define([_LT_MANGLE_OPTION],
|
||||||
|
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
|
||||||
|
# ---------------------------------------
|
||||||
|
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
|
||||||
|
# matching handler defined, dispatch to it. Other OPTION-NAMEs are
|
||||||
|
# saved as a flag.
|
||||||
|
m4_define([_LT_SET_OPTION],
|
||||||
|
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
|
||||||
|
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
|
||||||
|
_LT_MANGLE_DEFUN([$1], [$2]),
|
||||||
|
[m4_warning([Unknown $1 option '$2'])])[]dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
|
||||||
|
# ------------------------------------------------------------
|
||||||
|
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
|
||||||
|
m4_define([_LT_IF_OPTION],
|
||||||
|
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
|
||||||
|
# -------------------------------------------------------
|
||||||
|
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
|
||||||
|
# are set.
|
||||||
|
m4_define([_LT_UNLESS_OPTIONS],
|
||||||
|
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
|
||||||
|
[m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
|
||||||
|
[m4_define([$0_found])])])[]dnl
|
||||||
|
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
|
||||||
|
])[]dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
|
||||||
|
# ----------------------------------------
|
||||||
|
# OPTION-LIST is a space-separated list of Libtool options associated
|
||||||
|
# with MACRO-NAME. If any OPTION has a matching handler declared with
|
||||||
|
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
|
||||||
|
# the unknown option and exit.
|
||||||
|
m4_defun([_LT_SET_OPTIONS],
|
||||||
|
[# Set options
|
||||||
|
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
|
||||||
|
[_LT_SET_OPTION([$1], _LT_Option)])
|
||||||
|
|
||||||
|
m4_if([$1],[LT_INIT],[
|
||||||
|
dnl
|
||||||
|
dnl Simply set some default values (i.e off) if boolean options were not
|
||||||
|
dnl specified:
|
||||||
|
_LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
|
||||||
|
])
|
||||||
|
_LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
|
||||||
|
])
|
||||||
|
dnl
|
||||||
|
dnl If no reference was made to various pairs of opposing options, then
|
||||||
|
dnl we run the default mode handler for the pair. For example, if neither
|
||||||
|
dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
|
||||||
|
dnl archives by default:
|
||||||
|
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
|
||||||
|
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
|
||||||
|
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
|
||||||
|
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
|
||||||
|
[_LT_ENABLE_FAST_INSTALL])
|
||||||
|
_LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
|
||||||
|
[_LT_WITH_AIX_SONAME([aix])])
|
||||||
|
])
|
||||||
|
])# _LT_SET_OPTIONS
|
||||||
|
|
||||||
|
|
||||||
|
## --------------------------------- ##
|
||||||
|
## Macros to handle LT_INIT options. ##
|
||||||
|
## --------------------------------- ##
|
||||||
|
|
||||||
|
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
|
||||||
|
# -----------------------------------------
|
||||||
|
m4_define([_LT_MANGLE_DEFUN],
|
||||||
|
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
|
||||||
|
|
||||||
|
|
||||||
|
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
|
||||||
|
# -----------------------------------------------
|
||||||
|
m4_define([LT_OPTION_DEFINE],
|
||||||
|
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
|
||||||
|
])# LT_OPTION_DEFINE
|
||||||
|
|
||||||
|
|
||||||
|
# dlopen
|
||||||
|
# ------
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
|
||||||
|
])
|
||||||
|
|
||||||
|
AU_DEFUN([AC_LIBTOOL_DLOPEN],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], [dlopen])
|
||||||
|
AC_DIAGNOSE([obsolete],
|
||||||
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||||
|
put the 'dlopen' option into LT_INIT's first parameter.])
|
||||||
|
])
|
||||||
|
|
||||||
|
dnl aclocal-1.4 backwards compatibility:
|
||||||
|
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
|
||||||
|
|
||||||
|
|
||||||
|
# win32-dll
|
||||||
|
# ---------
|
||||||
|
# Declare package support for building win32 dll's.
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
|
||||||
|
[enable_win32_dll=yes
|
||||||
|
|
||||||
|
case $host in
|
||||||
|
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
|
||||||
|
AC_CHECK_TOOL(AS, as, false)
|
||||||
|
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
|
||||||
|
AC_CHECK_TOOL(OBJDUMP, objdump, false)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
test -z "$AS" && AS=as
|
||||||
|
_LT_DECL([], [AS], [1], [Assembler program])dnl
|
||||||
|
|
||||||
|
test -z "$DLLTOOL" && DLLTOOL=dlltool
|
||||||
|
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
|
||||||
|
|
||||||
|
test -z "$OBJDUMP" && OBJDUMP=objdump
|
||||||
|
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
|
||||||
|
])# win32-dll
|
||||||
|
|
||||||
|
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
|
||||||
|
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
||||||
|
_LT_SET_OPTION([LT_INIT], [win32-dll])
|
||||||
|
AC_DIAGNOSE([obsolete],
|
||||||
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||||
|
put the 'win32-dll' option into LT_INIT's first parameter.])
|
||||||
|
])
|
||||||
|
|
||||||
|
dnl aclocal-1.4 backwards compatibility:
|
||||||
|
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_ENABLE_SHARED([DEFAULT])
|
||||||
|
# ----------------------------
|
||||||
|
# implement the --enable-shared flag, and supports the 'shared' and
|
||||||
|
# 'disable-shared' LT_INIT options.
|
||||||
|
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||||
|
m4_define([_LT_ENABLE_SHARED],
|
||||||
|
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||||
|
AC_ARG_ENABLE([shared],
|
||||||
|
[AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
|
||||||
|
[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
|
||||||
|
[p=${PACKAGE-default}
|
||||||
|
case $enableval in
|
||||||
|
yes) enable_shared=yes ;;
|
||||||
|
no) enable_shared=no ;;
|
||||||
|
*)
|
||||||
|
enable_shared=no
|
||||||
|
# Look at the argument we got. We use all the common list separators.
|
||||||
|
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||||
|
for pkg in $enableval; do
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
if test "X$pkg" = "X$p"; then
|
||||||
|
enable_shared=yes
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
;;
|
||||||
|
esac],
|
||||||
|
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
|
||||||
|
|
||||||
|
_LT_DECL([build_libtool_libs], [enable_shared], [0],
|
||||||
|
[Whether or not to build shared libraries])
|
||||||
|
])# _LT_ENABLE_SHARED
|
||||||
|
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
|
||||||
|
|
||||||
|
# Old names:
|
||||||
|
AC_DEFUN([AC_ENABLE_SHARED],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([AC_DISABLE_SHARED],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], [disable-shared])
|
||||||
|
])
|
||||||
|
|
||||||
|
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
|
||||||
|
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
|
||||||
|
|
||||||
|
dnl aclocal-1.4 backwards compatibility:
|
||||||
|
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
|
||||||
|
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_ENABLE_STATIC([DEFAULT])
|
||||||
|
# ----------------------------
|
||||||
|
# implement the --enable-static flag, and support the 'static' and
|
||||||
|
# 'disable-static' LT_INIT options.
|
||||||
|
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||||
|
m4_define([_LT_ENABLE_STATIC],
|
||||||
|
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||||
|
AC_ARG_ENABLE([static],
|
||||||
|
[AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
|
||||||
|
[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
|
||||||
|
[p=${PACKAGE-default}
|
||||||
|
case $enableval in
|
||||||
|
yes) enable_static=yes ;;
|
||||||
|
no) enable_static=no ;;
|
||||||
|
*)
|
||||||
|
enable_static=no
|
||||||
|
# Look at the argument we got. We use all the common list separators.
|
||||||
|
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||||
|
for pkg in $enableval; do
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
if test "X$pkg" = "X$p"; then
|
||||||
|
enable_static=yes
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
;;
|
||||||
|
esac],
|
||||||
|
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
|
||||||
|
|
||||||
|
_LT_DECL([build_old_libs], [enable_static], [0],
|
||||||
|
[Whether or not to build static libraries])
|
||||||
|
])# _LT_ENABLE_STATIC
|
||||||
|
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
|
||||||
|
|
||||||
|
# Old names:
|
||||||
|
AC_DEFUN([AC_ENABLE_STATIC],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([AC_DISABLE_STATIC],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], [disable-static])
|
||||||
|
])
|
||||||
|
|
||||||
|
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
|
||||||
|
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
|
||||||
|
|
||||||
|
dnl aclocal-1.4 backwards compatibility:
|
||||||
|
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
|
||||||
|
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
|
||||||
|
# ----------------------------------
|
||||||
|
# implement the --enable-fast-install flag, and support the 'fast-install'
|
||||||
|
# and 'disable-fast-install' LT_INIT options.
|
||||||
|
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||||
|
m4_define([_LT_ENABLE_FAST_INSTALL],
|
||||||
|
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||||
|
AC_ARG_ENABLE([fast-install],
|
||||||
|
[AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
|
||||||
|
[optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
|
||||||
|
[p=${PACKAGE-default}
|
||||||
|
case $enableval in
|
||||||
|
yes) enable_fast_install=yes ;;
|
||||||
|
no) enable_fast_install=no ;;
|
||||||
|
*)
|
||||||
|
enable_fast_install=no
|
||||||
|
# Look at the argument we got. We use all the common list separators.
|
||||||
|
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||||
|
for pkg in $enableval; do
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
if test "X$pkg" = "X$p"; then
|
||||||
|
enable_fast_install=yes
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
IFS=$lt_save_ifs
|
||||||
|
;;
|
||||||
|
esac],
|
||||||
|
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
|
||||||
|
|
||||||
|
_LT_DECL([fast_install], [enable_fast_install], [0],
|
||||||
|
[Whether or not to optimize for fast installation])dnl
|
||||||
|
])# _LT_ENABLE_FAST_INSTALL
|
||||||
|
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
|
||||||
|
|
||||||
|
# Old names:
|
||||||
|
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
|
||||||
|
AC_DIAGNOSE([obsolete],
|
||||||
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
||||||
|
the 'fast-install' option into LT_INIT's first parameter.])
|
||||||
|
])
|
||||||
|
|
||||||
|
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
|
||||||
|
AC_DIAGNOSE([obsolete],
|
||||||
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
||||||
|
the 'disable-fast-install' option into LT_INIT's first parameter.])
|
||||||
|
])
|
||||||
|
|
||||||
|
dnl aclocal-1.4 backwards compatibility:
|
||||||
|
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
|
||||||
|
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_WITH_AIX_SONAME([DEFAULT])
|
||||||
|
# ----------------------------------
|
||||||
|
# implement the --with-aix-soname flag, and support the `aix-soname=aix'
|
||||||
|
# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. 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_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
|
||||||
|
shared_archive_member_spec=
|
||||||
|
case $host,$enable_shared in
|
||||||
|
power*-*-aix[[5-9]]*,yes)
|
||||||
|
AC_MSG_CHECKING([which variant of shared library versioning to provide])
|
||||||
|
AC_ARG_WITH([aix-soname],
|
||||||
|
[AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
|
||||||
|
[shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
|
||||||
|
[case $withval in
|
||||||
|
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)
|
||||||
|
with_aix_soname=$lt_cv_with_aix_soname])
|
||||||
|
AC_MSG_RESULT([$with_aix_soname])
|
||||||
|
if test aix != "$with_aix_soname"; then
|
||||||
|
# For the AIX way of multilib, we name the shared archive member
|
||||||
|
# based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
|
||||||
|
# and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
|
||||||
|
# Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
|
||||||
|
# the AIX toolchain works better with OBJECT_MODE set (default 32).
|
||||||
|
if test 64 = "${OBJECT_MODE-32}"; then
|
||||||
|
shared_archive_member_spec=shr_64
|
||||||
|
else
|
||||||
|
shared_archive_member_spec=shr
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
with_aix_soname=aix
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
_LT_DECL([], [shared_archive_member_spec], [0],
|
||||||
|
[Shared archive member basename, for filename based shared library versioning on AIX])dnl
|
||||||
|
])# _LT_WITH_AIX_SONAME
|
||||||
|
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
|
||||||
|
|
||||||
|
|
||||||
|
# _LT_WITH_PIC([MODE])
|
||||||
|
# --------------------
|
||||||
|
# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
|
||||||
|
# LT_INIT options.
|
||||||
|
# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
|
||||||
|
m4_define([_LT_WITH_PIC],
|
||||||
|
[AC_ARG_WITH([pic],
|
||||||
|
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
|
||||||
|
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
|
||||||
|
[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_WITH_PIC
|
||||||
|
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
|
||||||
|
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
|
||||||
|
|
||||||
|
# Old name:
|
||||||
|
AU_DEFUN([AC_LIBTOOL_PICMODE],
|
||||||
|
[_LT_SET_OPTION([LT_INIT], [pic-only])
|
||||||
|
AC_DIAGNOSE([obsolete],
|
||||||
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||||
|
put the 'pic-only' option into LT_INIT's first parameter.])
|
||||||
|
])
|
||||||
|
|
||||||
|
dnl aclocal-1.4 backwards compatibility:
|
||||||
|
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
|
||||||
|
|
||||||
|
## ----------------- ##
|
||||||
|
## LTDL_INIT Options ##
|
||||||
|
## ----------------- ##
|
||||||
|
|
||||||
|
m4_define([_LTDL_MODE], [])
|
||||||
|
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
|
||||||
|
[m4_define([_LTDL_MODE], [nonrecursive])])
|
||||||
|
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
|
||||||
|
[m4_define([_LTDL_MODE], [recursive])])
|
||||||
|
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
|
||||||
|
[m4_define([_LTDL_MODE], [subproject])])
|
||||||
|
|
||||||
|
m4_define([_LTDL_TYPE], [])
|
||||||
|
LT_OPTION_DEFINE([LTDL_INIT], [installable],
|
||||||
|
[m4_define([_LTDL_TYPE], [installable])])
|
||||||
|
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
|
||||||
|
[m4_define([_LTDL_TYPE], [convenience])])
|
124
3rdparty/expat/m4/ltsugar.m4
vendored
Normal file
124
3rdparty/expat/m4/ltsugar.m4
vendored
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
|
||||||
|
#
|
||||||
|
# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
|
||||||
|
# Foundation, Inc.
|
||||||
|
# Written by Gary V. Vaughan, 2004
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
# serial 6 ltsugar.m4
|
||||||
|
|
||||||
|
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||||
|
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_join(SEP, ARG1, [ARG2...])
|
||||||
|
# -----------------------------
|
||||||
|
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
|
||||||
|
# associated separator.
|
||||||
|
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
|
||||||
|
# versions in m4sugar had bugs.
|
||||||
|
m4_define([lt_join],
|
||||||
|
[m4_if([$#], [1], [],
|
||||||
|
[$#], [2], [[$2]],
|
||||||
|
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
|
||||||
|
m4_define([_lt_join],
|
||||||
|
[m4_if([$#$2], [2], [],
|
||||||
|
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_car(LIST)
|
||||||
|
# lt_cdr(LIST)
|
||||||
|
# ------------
|
||||||
|
# Manipulate m4 lists.
|
||||||
|
# These macros are necessary as long as will still need to support
|
||||||
|
# Autoconf-2.59, which quotes differently.
|
||||||
|
m4_define([lt_car], [[$1]])
|
||||||
|
m4_define([lt_cdr],
|
||||||
|
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
|
||||||
|
[$#], 1, [],
|
||||||
|
[m4_dquote(m4_shift($@))])])
|
||||||
|
m4_define([lt_unquote], $1)
|
||||||
|
|
||||||
|
|
||||||
|
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
|
||||||
|
# ------------------------------------------
|
||||||
|
# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
|
||||||
|
# Note that neither SEPARATOR nor STRING are expanded; they are appended
|
||||||
|
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
|
||||||
|
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
|
||||||
|
# than defined and empty).
|
||||||
|
#
|
||||||
|
# This macro is needed until we can rely on Autoconf 2.62, since earlier
|
||||||
|
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
|
||||||
|
m4_define([lt_append],
|
||||||
|
[m4_define([$1],
|
||||||
|
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
|
||||||
|
# ----------------------------------------------------------
|
||||||
|
# Produce a SEP delimited list of all paired combinations of elements of
|
||||||
|
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
|
||||||
|
# has the form PREFIXmINFIXSUFFIXn.
|
||||||
|
# Needed until we can rely on m4_combine added in Autoconf 2.62.
|
||||||
|
m4_define([lt_combine],
|
||||||
|
[m4_if(m4_eval([$# > 3]), [1],
|
||||||
|
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
|
||||||
|
[[m4_foreach([_Lt_prefix], [$2],
|
||||||
|
[m4_foreach([_Lt_suffix],
|
||||||
|
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
|
||||||
|
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
|
||||||
|
# -----------------------------------------------------------------------
|
||||||
|
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
|
||||||
|
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
|
||||||
|
m4_define([lt_if_append_uniq],
|
||||||
|
[m4_ifdef([$1],
|
||||||
|
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
|
||||||
|
[lt_append([$1], [$2], [$3])$4],
|
||||||
|
[$5])],
|
||||||
|
[lt_append([$1], [$2], [$3])$4])])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_dict_add(DICT, KEY, VALUE)
|
||||||
|
# -----------------------------
|
||||||
|
m4_define([lt_dict_add],
|
||||||
|
[m4_define([$1($2)], [$3])])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
|
||||||
|
# --------------------------------------------
|
||||||
|
m4_define([lt_dict_add_subkey],
|
||||||
|
[m4_define([$1($2:$3)], [$4])])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_dict_fetch(DICT, KEY, [SUBKEY])
|
||||||
|
# ----------------------------------
|
||||||
|
m4_define([lt_dict_fetch],
|
||||||
|
[m4_ifval([$3],
|
||||||
|
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
|
||||||
|
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
|
||||||
|
# -----------------------------------------------------------------
|
||||||
|
m4_define([lt_if_dict_fetch],
|
||||||
|
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
|
||||||
|
[$5],
|
||||||
|
[$6])])
|
||||||
|
|
||||||
|
|
||||||
|
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
|
||||||
|
# --------------------------------------------------------------
|
||||||
|
m4_define([lt_dict_filter],
|
||||||
|
[m4_if([$5], [], [],
|
||||||
|
[lt_join(m4_quote(m4_default([$4], [[, ]])),
|
||||||
|
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
|
||||||
|
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
|
||||||
|
])
|
23
3rdparty/expat/m4/ltversion.m4
vendored
Normal file
23
3rdparty/expat/m4/ltversion.m4
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
# ltversion.m4 -- version numbers -*- Autoconf -*-
|
||||||
|
#
|
||||||
|
# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
|
||||||
|
# Written by Scott James Remnant, 2004
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
# @configure_input@
|
||||||
|
|
||||||
|
# serial 4179 ltversion.m4
|
||||||
|
# This file is part of GNU Libtool
|
||||||
|
|
||||||
|
m4_define([LT_PACKAGE_VERSION], [2.4.6])
|
||||||
|
m4_define([LT_PACKAGE_REVISION], [2.4.6])
|
||||||
|
|
||||||
|
AC_DEFUN([LTVERSION_VERSION],
|
||||||
|
[macro_version='2.4.6'
|
||||||
|
macro_revision='2.4.6'
|
||||||
|
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
|
||||||
|
_LT_DECL(, macro_revision, 0)
|
||||||
|
])
|
99
3rdparty/expat/m4/lt~obsolete.m4
vendored
Normal file
99
3rdparty/expat/m4/lt~obsolete.m4
vendored
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
|
||||||
|
#
|
||||||
|
# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
|
||||||
|
# Foundation, Inc.
|
||||||
|
# Written by Scott James Remnant, 2004.
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
# serial 5 lt~obsolete.m4
|
||||||
|
|
||||||
|
# These exist entirely to fool aclocal when bootstrapping libtool.
|
||||||
|
#
|
||||||
|
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
|
||||||
|
# which have later been changed to m4_define as they aren't part of the
|
||||||
|
# exported API, or moved to Autoconf or Automake where they belong.
|
||||||
|
#
|
||||||
|
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
|
||||||
|
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
|
||||||
|
# using a macro with the same name in our local m4/libtool.m4 it'll
|
||||||
|
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
|
||||||
|
# and doesn't know about Autoconf macros at all.)
|
||||||
|
#
|
||||||
|
# So we provide this file, which has a silly filename so it's always
|
||||||
|
# included after everything else. This provides aclocal with the
|
||||||
|
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
|
||||||
|
# because those macros already exist, or will be overwritten later.
|
||||||
|
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
|
||||||
|
#
|
||||||
|
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
|
||||||
|
# Yes, that means every name once taken will need to remain here until
|
||||||
|
# we give up compatibility with versions before 1.7, at which point
|
||||||
|
# we need to keep only those names which we still refer to.
|
||||||
|
|
||||||
|
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||||
|
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
|
||||||
|
|
||||||
|
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
|
||||||
|
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
|
||||||
|
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
|
||||||
|
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
|
||||||
|
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
|
||||||
|
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
|
||||||
|
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
|
||||||
|
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
|
||||||
|
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
|
||||||
|
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
|
||||||
|
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
|
||||||
|
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
|
||||||
|
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
|
||||||
|
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
|
||||||
|
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
|
||||||
|
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
|
||||||
|
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
|
||||||
|
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
|
||||||
|
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
|
||||||
|
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
|
||||||
|
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
|
||||||
|
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
|
||||||
|
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
|
||||||
|
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
|
||||||
|
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
|
||||||
|
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
|
||||||
|
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
|
||||||
|
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
|
||||||
|
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
|
||||||
|
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
|
||||||
|
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
|
||||||
|
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
|
||||||
|
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
|
||||||
|
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
|
||||||
|
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
|
||||||
|
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
|
12
3rdparty/expat/run.sh.in
vendored
Normal file
12
3rdparty/expat/run.sh.in
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
#! /usr/bin/env bash
|
||||||
|
# Copyright (C) 2017 Expat development team
|
||||||
|
# Licensed under the MIT license
|
||||||
|
|
||||||
|
case "@host@" in
|
||||||
|
*-mingw*)
|
||||||
|
exec wine "$@"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
exec "$@"
|
||||||
|
;;
|
||||||
|
esac
|
43
3rdparty/expat/test-driver-wrapper.sh
vendored
Executable file
43
3rdparty/expat/test-driver-wrapper.sh
vendored
Executable file
@ -0,0 +1,43 @@
|
|||||||
|
#! /usr/bin/env bash
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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
|
||||||
|
top_srcdir="$(dirname "$(type -p "$0")")"
|
||||||
|
top_builddir=..
|
||||||
|
|
||||||
|
# Suck up all dash-dash test-driver arguments
|
||||||
|
test_driver_args=()
|
||||||
|
while [[ ${1} != '--' ]]; do
|
||||||
|
test_driver_args=( "${test_driver_args[@]}" "${1}" )
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift # drop "--"
|
||||||
|
|
||||||
|
exec "${top_srcdir}"/conftools/test-driver "${test_driver_args[@]}" "${top_builddir}"/run.sh "$@"
|
66
3rdparty/expat/tests/Makefile.am
vendored
Normal file
66
3rdparty/expat/tests/Makefile.am
vendored
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
SUBDIRS = . benchmark
|
||||||
|
|
||||||
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../lib
|
||||||
|
|
||||||
|
noinst_LIBRARIES = libruntests.a
|
||||||
|
|
||||||
|
check_PROGRAMS = runtests runtestspp
|
||||||
|
TESTS = runtests runtestspp
|
||||||
|
|
||||||
|
# To support MinGW and Non-MinGW at the same time:
|
||||||
|
LOG_DRIVER = $(srcdir)/../test-driver-wrapper.sh
|
||||||
|
|
||||||
|
libruntests_a_SOURCES = \
|
||||||
|
chardata.c \
|
||||||
|
structdata.c \
|
||||||
|
memcheck.c \
|
||||||
|
minicheck.c
|
||||||
|
|
||||||
|
runtests_SOURCES = \
|
||||||
|
runtests.c
|
||||||
|
|
||||||
|
runtestspp_SOURCES = \
|
||||||
|
runtestspp.cpp
|
||||||
|
|
||||||
|
runtests_LDADD = libruntests.a ../lib/libexpat.la
|
||||||
|
runtestspp_LDADD = libruntests.a ../lib/libexpat.la
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
chardata.h \
|
||||||
|
structdata.h \
|
||||||
|
minicheck.h \
|
||||||
|
memcheck.h \
|
||||||
|
README.txt \
|
||||||
|
udiffer.py \
|
||||||
|
xmltest.log.expected \
|
||||||
|
xmltest.sh
|
1254
3rdparty/expat/tests/Makefile.in
vendored
Normal file
1254
3rdparty/expat/tests/Makefile.in
vendored
Normal file
File diff suppressed because it is too large
Load Diff
13
3rdparty/expat/tests/README.txt
vendored
Normal file
13
3rdparty/expat/tests/README.txt
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
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.
|
40
3rdparty/expat/tests/benchmark/Makefile.am
vendored
Normal file
40
3rdparty/expat/tests/benchmark/Makefile.am
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../../lib
|
||||||
|
|
||||||
|
noinst_PROGRAMS = benchmark
|
||||||
|
|
||||||
|
benchmark_SOURCES = benchmark.c
|
||||||
|
|
||||||
|
benchmark_LDADD = ../../lib/libexpat.la
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
README.txt
|
651
3rdparty/expat/tests/benchmark/Makefile.in
vendored
Normal file
651
3rdparty/expat/tests/benchmark/Makefile.in
vendored
Normal file
@ -0,0 +1,651 @@
|
|||||||
|
# Makefile.in generated by automake 1.16.2 from Makefile.am.
|
||||||
|
# @configure_input@
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# This Makefile.in 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.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
@SET_MAKE@
|
||||||
|
|
||||||
|
#
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
VPATH = @srcdir@
|
||||||
|
am__is_gnu_make = { \
|
||||||
|
if test -z '$(MAKELEVEL)'; then \
|
||||||
|
false; \
|
||||||
|
elif test -n '$(MAKE_HOST)'; then \
|
||||||
|
true; \
|
||||||
|
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||||||
|
true; \
|
||||||
|
else \
|
||||||
|
false; \
|
||||||
|
fi; \
|
||||||
|
}
|
||||||
|
am__make_running_with_option = \
|
||||||
|
case $${target_option-} in \
|
||||||
|
?) ;; \
|
||||||
|
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||||
|
"target option '$${target_option-}' specified" >&2; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
has_opt=no; \
|
||||||
|
sane_makeflags=$$MAKEFLAGS; \
|
||||||
|
if $(am__is_gnu_make); then \
|
||||||
|
sane_makeflags=$$MFLAGS; \
|
||||||
|
else \
|
||||||
|
case $$MAKEFLAGS in \
|
||||||
|
*\\[\ \ ]*) \
|
||||||
|
bs=\\; \
|
||||||
|
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||||
|
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||||
|
esac; \
|
||||||
|
fi; \
|
||||||
|
skip_next=no; \
|
||||||
|
strip_trailopt () \
|
||||||
|
{ \
|
||||||
|
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||||
|
}; \
|
||||||
|
for flg in $$sane_makeflags; do \
|
||||||
|
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||||
|
case $$flg in \
|
||||||
|
*=*|--*) continue;; \
|
||||||
|
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||||
|
-*I?*) strip_trailopt 'I';; \
|
||||||
|
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||||
|
-*O?*) strip_trailopt 'O';; \
|
||||||
|
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||||
|
-*l?*) strip_trailopt 'l';; \
|
||||||
|
-[dEDm]) skip_next=yes;; \
|
||||||
|
-[JT]) skip_next=yes;; \
|
||||||
|
esac; \
|
||||||
|
case $$flg in \
|
||||||
|
*$$target_option*) has_opt=yes; break;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
test $$has_opt = yes
|
||||||
|
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||||
|
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||||
|
pkgdatadir = $(datadir)/@PACKAGE@
|
||||||
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
|
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||||
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
|
install_sh_PROGRAM = $(install_sh) -c
|
||||||
|
install_sh_SCRIPT = $(install_sh) -c
|
||||||
|
INSTALL_HEADER = $(INSTALL_DATA)
|
||||||
|
transform = $(program_transform_name)
|
||||||
|
NORMAL_INSTALL = :
|
||||||
|
PRE_INSTALL = :
|
||||||
|
POST_INSTALL = :
|
||||||
|
NORMAL_UNINSTALL = :
|
||||||
|
PRE_UNINSTALL = :
|
||||||
|
POST_UNINSTALL = :
|
||||||
|
build_triplet = @build@
|
||||||
|
host_triplet = @host@
|
||||||
|
noinst_PROGRAMS = benchmark$(EXEEXT)
|
||||||
|
subdir = tests/benchmark
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||||
|
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||||
|
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
|
||||||
|
$(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-require-defined.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-compile-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-check-link-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-flag.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-compile-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/ax-append-link-flags.m4 \
|
||||||
|
$(top_srcdir)/conftools/expatcfg-compiler-supports-visibility.m4 \
|
||||||
|
$(top_srcdir)/configure.ac
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||||
|
mkinstalldirs = $(install_sh) -d
|
||||||
|
CONFIG_HEADER = $(top_builddir)/expat_config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
CONFIG_CLEAN_VPATH_FILES =
|
||||||
|
PROGRAMS = $(noinst_PROGRAMS)
|
||||||
|
am_benchmark_OBJECTS = benchmark.$(OBJEXT)
|
||||||
|
benchmark_OBJECTS = $(am_benchmark_OBJECTS)
|
||||||
|
benchmark_DEPENDENCIES = ../../lib/libexpat.la
|
||||||
|
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||||
|
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||||
|
am__v_lt_0 = --silent
|
||||||
|
am__v_lt_1 =
|
||||||
|
AM_V_P = $(am__v_P_@AM_V@)
|
||||||
|
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||||
|
am__v_P_0 = false
|
||||||
|
am__v_P_1 = :
|
||||||
|
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||||
|
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||||
|
am__v_GEN_0 = @echo " GEN " $@;
|
||||||
|
am__v_GEN_1 =
|
||||||
|
AM_V_at = $(am__v_at_@AM_V@)
|
||||||
|
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||||
|
am__v_at_0 = @
|
||||||
|
am__v_at_1 =
|
||||||
|
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||||
|
depcomp = $(SHELL) $(top_srcdir)/conftools/depcomp
|
||||||
|
am__maybe_remake_depfiles = depfiles
|
||||||
|
am__depfiles_remade = ./$(DEPDIR)/benchmark.Po
|
||||||
|
am__mv = mv -f
|
||||||
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
|
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
|
||||||
|
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||||
|
$(AM_CFLAGS) $(CFLAGS)
|
||||||
|
AM_V_CC = $(am__v_CC_@AM_V@)
|
||||||
|
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
|
||||||
|
am__v_CC_0 = @echo " CC " $@;
|
||||||
|
am__v_CC_1 =
|
||||||
|
CCLD = $(CC)
|
||||||
|
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||||
|
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||||
|
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
|
||||||
|
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
||||||
|
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||||
|
am__v_CCLD_1 =
|
||||||
|
SOURCES = $(benchmark_SOURCES)
|
||||||
|
DIST_SOURCES = $(benchmark_SOURCES)
|
||||||
|
am__can_run_installinfo = \
|
||||||
|
case $$AM_UPDATE_INFO_DIR in \
|
||||||
|
n|no|NO) false;; \
|
||||||
|
*) (install-info --version) >/dev/null 2>&1;; \
|
||||||
|
esac
|
||||||
|
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||||
|
# Read a list of newline-separated strings from the standard input,
|
||||||
|
# and print each of them once, without duplicates. Input order is
|
||||||
|
# *not* preserved.
|
||||||
|
am__uniquify_input = $(AWK) '\
|
||||||
|
BEGIN { nonempty = 0; } \
|
||||||
|
{ items[$$0] = 1; nonempty = 1; } \
|
||||||
|
END { if (nonempty) { for (i in items) print i; }; } \
|
||||||
|
'
|
||||||
|
# Make sure the list of sources is unique. This is necessary because,
|
||||||
|
# e.g., the same source file might be shared among _SOURCES variables
|
||||||
|
# for different programs/libraries.
|
||||||
|
am__define_uniq_tagged_files = \
|
||||||
|
list='$(am__tagged_files)'; \
|
||||||
|
unique=`for i in $$list; do \
|
||||||
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||||
|
done | $(am__uniquify_input)`
|
||||||
|
ETAGS = etags
|
||||||
|
CTAGS = ctags
|
||||||
|
am__DIST_COMMON = $(srcdir)/Makefile.in \
|
||||||
|
$(top_srcdir)/conftools/depcomp
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
ACLOCAL = @ACLOCAL@
|
||||||
|
AMTAR = @AMTAR@
|
||||||
|
AM_CFLAGS = @AM_CFLAGS@
|
||||||
|
AM_CPPFLAGS = @AM_CPPFLAGS@ -I$(srcdir)/../../lib
|
||||||
|
AM_CXXFLAGS = @AM_CXXFLAGS@
|
||||||
|
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||||
|
AM_LDFLAGS = @AM_LDFLAGS@
|
||||||
|
AR = @AR@
|
||||||
|
AS = @AS@
|
||||||
|
AUTOCONF = @AUTOCONF@
|
||||||
|
AUTOHEADER = @AUTOHEADER@
|
||||||
|
AUTOMAKE = @AUTOMAKE@
|
||||||
|
AWK = @AWK@
|
||||||
|
CC = @CC@
|
||||||
|
CCDEPMODE = @CCDEPMODE@
|
||||||
|
CFLAGS = @CFLAGS@
|
||||||
|
CPP = @CPP@
|
||||||
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
CXX = @CXX@
|
||||||
|
CXXCPP = @CXXCPP@
|
||||||
|
CXXDEPMODE = @CXXDEPMODE@
|
||||||
|
CXXFLAGS = @CXXFLAGS@
|
||||||
|
CYGPATH_W = @CYGPATH_W@
|
||||||
|
DEFS = @DEFS@
|
||||||
|
DEPDIR = @DEPDIR@
|
||||||
|
DLLTOOL = @DLLTOOL@
|
||||||
|
DOCBOOK_TO_MAN = @DOCBOOK_TO_MAN@
|
||||||
|
DSYMUTIL = @DSYMUTIL@
|
||||||
|
DUMPBIN = @DUMPBIN@
|
||||||
|
ECHO_C = @ECHO_C@
|
||||||
|
ECHO_N = @ECHO_N@
|
||||||
|
ECHO_T = @ECHO_T@
|
||||||
|
EGREP = @EGREP@
|
||||||
|
EXEEXT = @EXEEXT@
|
||||||
|
FGREP = @FGREP@
|
||||||
|
FILEMAP = @FILEMAP@
|
||||||
|
GREP = @GREP@
|
||||||
|
INSTALL = @INSTALL@
|
||||||
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||||
|
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||||
|
LD = @LD@
|
||||||
|
LDFLAGS = @LDFLAGS@
|
||||||
|
LIBAGE = @LIBAGE@
|
||||||
|
LIBCURRENT = @LIBCURRENT@
|
||||||
|
LIBOBJS = @LIBOBJS@
|
||||||
|
LIBREVISION = @LIBREVISION@
|
||||||
|
LIBS = @LIBS@
|
||||||
|
LIBTOOL = @LIBTOOL@
|
||||||
|
LIPO = @LIPO@
|
||||||
|
LN_S = @LN_S@
|
||||||
|
LTLIBOBJS = @LTLIBOBJS@
|
||||||
|
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||||
|
MAKEINFO = @MAKEINFO@
|
||||||
|
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||||
|
MKDIR_P = @MKDIR_P@
|
||||||
|
NM = @NM@
|
||||||
|
NMEDIT = @NMEDIT@
|
||||||
|
OBJDUMP = @OBJDUMP@
|
||||||
|
OBJEXT = @OBJEXT@
|
||||||
|
OTOOL = @OTOOL@
|
||||||
|
OTOOL64 = @OTOOL64@
|
||||||
|
PACKAGE = @PACKAGE@
|
||||||
|
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||||
|
PACKAGE_NAME = @PACKAGE_NAME@
|
||||||
|
PACKAGE_STRING = @PACKAGE_STRING@
|
||||||
|
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||||
|
PACKAGE_URL = @PACKAGE_URL@
|
||||||
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||||
|
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||||
|
RANLIB = @RANLIB@
|
||||||
|
SED = @SED@
|
||||||
|
SET_MAKE = @SET_MAKE@
|
||||||
|
SHELL = @SHELL@
|
||||||
|
STRIP = @STRIP@
|
||||||
|
VERSION = @VERSION@
|
||||||
|
_EXPAT_OUTPUT_NAME = @_EXPAT_OUTPUT_NAME@
|
||||||
|
abs_builddir = @abs_builddir@
|
||||||
|
abs_srcdir = @abs_srcdir@
|
||||||
|
abs_top_builddir = @abs_top_builddir@
|
||||||
|
abs_top_srcdir = @abs_top_srcdir@
|
||||||
|
ac_ct_AR = @ac_ct_AR@
|
||||||
|
ac_ct_CC = @ac_ct_CC@
|
||||||
|
ac_ct_CXX = @ac_ct_CXX@
|
||||||
|
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||||
|
am__include = @am__include@
|
||||||
|
am__leading_dot = @am__leading_dot@
|
||||||
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
|
bindir = @bindir@
|
||||||
|
build = @build@
|
||||||
|
build_alias = @build_alias@
|
||||||
|
build_cpu = @build_cpu@
|
||||||
|
build_os = @build_os@
|
||||||
|
build_vendor = @build_vendor@
|
||||||
|
builddir = @builddir@
|
||||||
|
datadir = @datadir@
|
||||||
|
datarootdir = @datarootdir@
|
||||||
|
docdir = @docdir@
|
||||||
|
dvidir = @dvidir@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
host = @host@
|
||||||
|
host_alias = @host_alias@
|
||||||
|
host_cpu = @host_cpu@
|
||||||
|
host_os = @host_os@
|
||||||
|
host_vendor = @host_vendor@
|
||||||
|
htmldir = @htmldir@
|
||||||
|
includedir = @includedir@
|
||||||
|
infodir = @infodir@
|
||||||
|
install_sh = @install_sh@
|
||||||
|
libdir = @libdir@
|
||||||
|
libexecdir = @libexecdir@
|
||||||
|
localedir = @localedir@
|
||||||
|
localstatedir = @localstatedir@
|
||||||
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
|
oldincludedir = @oldincludedir@
|
||||||
|
pdfdir = @pdfdir@
|
||||||
|
prefix = @prefix@
|
||||||
|
program_transform_name = @program_transform_name@
|
||||||
|
psdir = @psdir@
|
||||||
|
runstatedir = @runstatedir@
|
||||||
|
sbindir = @sbindir@
|
||||||
|
sharedstatedir = @sharedstatedir@
|
||||||
|
srcdir = @srcdir@
|
||||||
|
sysconfdir = @sysconfdir@
|
||||||
|
target_alias = @target_alias@
|
||||||
|
top_build_prefix = @top_build_prefix@
|
||||||
|
top_builddir = @top_builddir@
|
||||||
|
top_srcdir = @top_srcdir@
|
||||||
|
benchmark_SOURCES = benchmark.c
|
||||||
|
benchmark_LDADD = ../../lib/libexpat.la
|
||||||
|
EXTRA_DIST = \
|
||||||
|
README.txt
|
||||||
|
|
||||||
|
all: all-am
|
||||||
|
|
||||||
|
.SUFFIXES:
|
||||||
|
.SUFFIXES: .c .lo .o .obj
|
||||||
|
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||||
|
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/benchmark/Makefile'; \
|
||||||
|
$(am__cd) $(top_srcdir) && \
|
||||||
|
$(AUTOMAKE) --gnu tests/benchmark/Makefile
|
||||||
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(am__aclocal_m4_deps):
|
||||||
|
|
||||||
|
clean-noinstPROGRAMS:
|
||||||
|
@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
|
||||||
|
echo " rm -f" $$list; \
|
||||||
|
rm -f $$list || exit $$?; \
|
||||||
|
test -n "$(EXEEXT)" || exit 0; \
|
||||||
|
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
|
||||||
|
echo " rm -f" $$list; \
|
||||||
|
rm -f $$list
|
||||||
|
|
||||||
|
benchmark$(EXEEXT): $(benchmark_OBJECTS) $(benchmark_DEPENDENCIES) $(EXTRA_benchmark_DEPENDENCIES)
|
||||||
|
@rm -f benchmark$(EXEEXT)
|
||||||
|
$(AM_V_CCLD)$(LINK) $(benchmark_OBJECTS) $(benchmark_LDADD) $(LIBS)
|
||||||
|
|
||||||
|
mostlyclean-compile:
|
||||||
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
|
distclean-compile:
|
||||||
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/benchmark.Po@am__quote@ # am--include-marker
|
||||||
|
|
||||||
|
$(am__depfiles_remade):
|
||||||
|
@$(MKDIR_P) $(@D)
|
||||||
|
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
|
||||||
|
|
||||||
|
am--depfiles: $(am__depfiles_remade)
|
||||||
|
|
||||||
|
.c.o:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
|
||||||
|
|
||||||
|
.c.obj:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||||
|
|
||||||
|
.c.lo:
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||||
|
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
|
||||||
|
|
||||||
|
mostlyclean-libtool:
|
||||||
|
-rm -f *.lo
|
||||||
|
|
||||||
|
clean-libtool:
|
||||||
|
-rm -rf .libs _libs
|
||||||
|
|
||||||
|
ID: $(am__tagged_files)
|
||||||
|
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||||
|
tags: tags-am
|
||||||
|
TAGS: tags
|
||||||
|
|
||||||
|
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||||
|
set x; \
|
||||||
|
here=`pwd`; \
|
||||||
|
$(am__define_uniq_tagged_files); \
|
||||||
|
shift; \
|
||||||
|
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||||
|
test -n "$$unique" || unique=$$empty_fix; \
|
||||||
|
if test $$# -gt 0; then \
|
||||||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
"$$@" $$unique; \
|
||||||
|
else \
|
||||||
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
$$unique; \
|
||||||
|
fi; \
|
||||||
|
fi
|
||||||
|
ctags: ctags-am
|
||||||
|
|
||||||
|
CTAGS: ctags
|
||||||
|
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||||
|
$(am__define_uniq_tagged_files); \
|
||||||
|
test -z "$(CTAGS_ARGS)$$unique" \
|
||||||
|
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||||
|
$$unique
|
||||||
|
|
||||||
|
GTAGS:
|
||||||
|
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||||
|
&& $(am__cd) $(top_srcdir) \
|
||||||
|
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||||
|
cscopelist: cscopelist-am
|
||||||
|
|
||||||
|
cscopelist-am: $(am__tagged_files)
|
||||||
|
list='$(am__tagged_files)'; \
|
||||||
|
case "$(srcdir)" in \
|
||||||
|
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||||
|
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||||
|
esac; \
|
||||||
|
for i in $$list; do \
|
||||||
|
if test -f "$$i"; then \
|
||||||
|
echo "$(subdir)/$$i"; \
|
||||||
|
else \
|
||||||
|
echo "$$sdir/$$i"; \
|
||||||
|
fi; \
|
||||||
|
done >> $(top_builddir)/cscope.files
|
||||||
|
|
||||||
|
distclean-tags:
|
||||||
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
|
|
||||||
|
distdir: $(BUILT_SOURCES)
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||||
|
|
||||||
|
distdir-am: $(DISTFILES)
|
||||||
|
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||||
|
list='$(DISTFILES)'; \
|
||||||
|
dist_files=`for file in $$list; do echo $$file; done | \
|
||||||
|
sed -e "s|^$$srcdirstrip/||;t" \
|
||||||
|
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||||
|
case $$dist_files in \
|
||||||
|
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||||
|
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||||
|
sort -u` ;; \
|
||||||
|
esac; \
|
||||||
|
for file in $$dist_files; do \
|
||||||
|
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||||
|
if test -d $$d/$$file; then \
|
||||||
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
|
if test -d "$(distdir)/$$file"; then \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||||
|
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||||
|
fi; \
|
||||||
|
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||||
|
else \
|
||||||
|
test -f "$(distdir)/$$file" \
|
||||||
|
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||||
|
|| exit 1; \
|
||||||
|
fi; \
|
||||||
|
done
|
||||||
|
check-am: all-am
|
||||||
|
check: check-am
|
||||||
|
all-am: Makefile $(PROGRAMS)
|
||||||
|
installdirs:
|
||||||
|
install: install-am
|
||||||
|
install-exec: install-exec-am
|
||||||
|
install-data: install-data-am
|
||||||
|
uninstall: uninstall-am
|
||||||
|
|
||||||
|
install-am: all-am
|
||||||
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||||
|
|
||||||
|
installcheck: installcheck-am
|
||||||
|
install-strip:
|
||||||
|
if test -z '$(STRIP)'; then \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
install; \
|
||||||
|
else \
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||||
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||||
|
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||||
|
fi
|
||||||
|
mostlyclean-generic:
|
||||||
|
|
||||||
|
clean-generic:
|
||||||
|
|
||||||
|
distclean-generic:
|
||||||
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||||
|
|
||||||
|
maintainer-clean-generic:
|
||||||
|
@echo "This command is intended for maintainers to use"
|
||||||
|
@echo "it deletes files that may require special tools to rebuild."
|
||||||
|
clean: clean-am
|
||||||
|
|
||||||
|
clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
|
||||||
|
mostlyclean-am
|
||||||
|
|
||||||
|
distclean: distclean-am
|
||||||
|
-rm -f ./$(DEPDIR)/benchmark.Po
|
||||||
|
-rm -f Makefile
|
||||||
|
distclean-am: clean-am distclean-compile distclean-generic \
|
||||||
|
distclean-tags
|
||||||
|
|
||||||
|
dvi: dvi-am
|
||||||
|
|
||||||
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
|
html-am:
|
||||||
|
|
||||||
|
info: info-am
|
||||||
|
|
||||||
|
info-am:
|
||||||
|
|
||||||
|
install-data-am:
|
||||||
|
|
||||||
|
install-dvi: install-dvi-am
|
||||||
|
|
||||||
|
install-dvi-am:
|
||||||
|
|
||||||
|
install-exec-am:
|
||||||
|
|
||||||
|
install-html: install-html-am
|
||||||
|
|
||||||
|
install-html-am:
|
||||||
|
|
||||||
|
install-info: install-info-am
|
||||||
|
|
||||||
|
install-info-am:
|
||||||
|
|
||||||
|
install-man:
|
||||||
|
|
||||||
|
install-pdf: install-pdf-am
|
||||||
|
|
||||||
|
install-pdf-am:
|
||||||
|
|
||||||
|
install-ps: install-ps-am
|
||||||
|
|
||||||
|
install-ps-am:
|
||||||
|
|
||||||
|
installcheck-am:
|
||||||
|
|
||||||
|
maintainer-clean: maintainer-clean-am
|
||||||
|
-rm -f ./$(DEPDIR)/benchmark.Po
|
||||||
|
-rm -f Makefile
|
||||||
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||||
|
|
||||||
|
mostlyclean: mostlyclean-am
|
||||||
|
|
||||||
|
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||||
|
mostlyclean-libtool
|
||||||
|
|
||||||
|
pdf: pdf-am
|
||||||
|
|
||||||
|
pdf-am:
|
||||||
|
|
||||||
|
ps: ps-am
|
||||||
|
|
||||||
|
ps-am:
|
||||||
|
|
||||||
|
uninstall-am:
|
||||||
|
|
||||||
|
.MAKE: install-am install-strip
|
||||||
|
|
||||||
|
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
|
||||||
|
clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \
|
||||||
|
ctags ctags-am distclean distclean-compile distclean-generic \
|
||||||
|
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||||
|
html-am info info-am install install-am install-data \
|
||||||
|
install-data-am install-dvi install-dvi-am install-exec \
|
||||||
|
install-exec-am install-html install-html-am install-info \
|
||||||
|
install-info-am install-man install-pdf install-pdf-am \
|
||||||
|
install-ps install-ps-am install-strip installcheck \
|
||||||
|
installcheck-am installdirs maintainer-clean \
|
||||||
|
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||||
|
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||||
|
tags tags-am uninstall uninstall-am
|
||||||
|
|
||||||
|
.PRECIOUS: Makefile
|
||||||
|
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
.NOEXPORT:
|
16
3rdparty/expat/tests/benchmark/README.txt
vendored
Normal file
16
3rdparty/expat/tests/benchmark/README.txt
vendored
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
Use this benchmark command line utility as follows:
|
||||||
|
|
||||||
|
benchmark [-n] <file name> <buffer size> <# iterations>
|
||||||
|
|
||||||
|
The command line arguments are:
|
||||||
|
|
||||||
|
-n ... optional; if supplied, namespace processing is turned on
|
||||||
|
<file name> ... name/path of test xml file
|
||||||
|
<buffer size> ... size of processing buffer;
|
||||||
|
the file is parsed in chunks of this size
|
||||||
|
<# iterations> ... how often will the file be parsed
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
|
||||||
|
The time (in seconds) it takes to parse the test file,
|
||||||
|
averaged over the number of iterations.@
|
145
3rdparty/expat/tests/benchmark/benchmark.c
vendored
Normal file
145
3rdparty/expat/tests/benchmark/benchmark.c
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 <sys/stat.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <time.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
|
||||||
|
|
||||||
|
static void
|
||||||
|
usage(const char *prog, int rc) {
|
||||||
|
fprintf(stderr, "usage: %s [-n] filename bufferSize nr_of_loops\n", prog);
|
||||||
|
exit(rc);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[]) {
|
||||||
|
XML_Parser parser;
|
||||||
|
char *XMLBuf, *XMLBufEnd, *XMLBufPtr;
|
||||||
|
FILE *fd;
|
||||||
|
struct stat fileAttr;
|
||||||
|
int nrOfLoops, bufferSize, fileSize, i, isFinal;
|
||||||
|
int j = 0, ns = 0;
|
||||||
|
clock_t tstart, tend;
|
||||||
|
double cpuTime = 0.0;
|
||||||
|
|
||||||
|
if (argc > 1) {
|
||||||
|
if (argv[1][0] == '-') {
|
||||||
|
if (argv[1][1] == 'n' && argv[1][2] == '\0') {
|
||||||
|
ns = 1;
|
||||||
|
j = 1;
|
||||||
|
} else
|
||||||
|
usage(argv[0], 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (argc != j + 4)
|
||||||
|
usage(argv[0], 1);
|
||||||
|
|
||||||
|
if (stat(argv[j + 1], &fileAttr) != 0) {
|
||||||
|
fprintf(stderr, "could not access file '%s'\n", argv[j + 1]);
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
fd = fopen(argv[j + 1], "r");
|
||||||
|
if (! fd) {
|
||||||
|
fprintf(stderr, "could not open file '%s'\n", argv[j + 1]);
|
||||||
|
exit(2);
|
||||||
|
}
|
||||||
|
|
||||||
|
bufferSize = atoi(argv[j + 2]);
|
||||||
|
nrOfLoops = atoi(argv[j + 3]);
|
||||||
|
if (bufferSize <= 0 || nrOfLoops <= 0) {
|
||||||
|
fprintf(stderr, "buffer size and nr of loops must be greater than zero.\n");
|
||||||
|
exit(3);
|
||||||
|
}
|
||||||
|
|
||||||
|
XMLBuf = malloc(fileAttr.st_size);
|
||||||
|
fileSize = fread(XMLBuf, sizeof(char), fileAttr.st_size, fd);
|
||||||
|
fclose(fd);
|
||||||
|
|
||||||
|
if (ns)
|
||||||
|
parser = XML_ParserCreateNS(NULL, '!');
|
||||||
|
else
|
||||||
|
parser = XML_ParserCreate(NULL);
|
||||||
|
|
||||||
|
i = 0;
|
||||||
|
XMLBufEnd = XMLBuf + fileSize;
|
||||||
|
while (i < nrOfLoops) {
|
||||||
|
XMLBufPtr = XMLBuf;
|
||||||
|
isFinal = 0;
|
||||||
|
tstart = clock();
|
||||||
|
do {
|
||||||
|
int parseBufferSize = XMLBufEnd - XMLBufPtr;
|
||||||
|
if (parseBufferSize <= bufferSize)
|
||||||
|
isFinal = 1;
|
||||||
|
else
|
||||||
|
parseBufferSize = bufferSize;
|
||||||
|
if (! XML_Parse(parser, XMLBufPtr, parseBufferSize, isFinal)) {
|
||||||
|
fprintf(stderr,
|
||||||
|
"error '%" XML_FMT_STR "' at line %" XML_FMT_INT_MOD
|
||||||
|
"u character %" XML_FMT_INT_MOD "u\n",
|
||||||
|
XML_ErrorString(XML_GetErrorCode(parser)),
|
||||||
|
XML_GetCurrentLineNumber(parser),
|
||||||
|
XML_GetCurrentColumnNumber(parser));
|
||||||
|
free(XMLBuf);
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
exit(4);
|
||||||
|
}
|
||||||
|
XMLBufPtr += bufferSize;
|
||||||
|
} while (! isFinal);
|
||||||
|
tend = clock();
|
||||||
|
cpuTime += ((double)(tend - tstart)) / CLOCKS_PER_SEC;
|
||||||
|
XML_ParserReset(parser, NULL);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
XML_ParserFree(parser);
|
||||||
|
free(XMLBuf);
|
||||||
|
|
||||||
|
printf("%d loops, with buffer size %d. Average time per loop: %f\n",
|
||||||
|
nrOfLoops, bufferSize, cpuTime / (double)nrOfLoops);
|
||||||
|
return 0;
|
||||||
|
}
|
98
3rdparty/expat/tests/chardata.c
vendored
Normal file
98
3rdparty/expat/tests/chardata.c
vendored
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 HAVE_EXPAT_CONFIG_H
|
||||||
|
# include <expat_config.h>
|
||||||
|
#endif
|
||||||
|
#include "minicheck.h"
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "chardata.h"
|
||||||
|
|
||||||
|
static int
|
||||||
|
xmlstrlen(const XML_Char *s) {
|
||||||
|
int len = 0;
|
||||||
|
assert(s != NULL);
|
||||||
|
while (s[len] != 0)
|
||||||
|
++len;
|
||||||
|
return len;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
CharData_Init(CharData *storage) {
|
||||||
|
assert(storage != NULL);
|
||||||
|
storage->count = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
CharData_AppendXMLChars(CharData *storage, const XML_Char *s, int len) {
|
||||||
|
int maxchars;
|
||||||
|
|
||||||
|
assert(storage != NULL);
|
||||||
|
assert(s != NULL);
|
||||||
|
maxchars = sizeof(storage->data) / sizeof(storage->data[0]);
|
||||||
|
if (storage->count < 0)
|
||||||
|
storage->count = 0;
|
||||||
|
if (len < 0)
|
||||||
|
len = xmlstrlen(s);
|
||||||
|
if ((len + storage->count) > maxchars) {
|
||||||
|
len = (maxchars - storage->count);
|
||||||
|
}
|
||||||
|
if (len + storage->count < (int)sizeof(storage->data)) {
|
||||||
|
memcpy(storage->data + storage->count, s, len * sizeof(storage->data[0]));
|
||||||
|
storage->count += len;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
CharData_CheckXMLChars(CharData *storage, const XML_Char *expected) {
|
||||||
|
char buffer[1024];
|
||||||
|
int len = xmlstrlen(expected);
|
||||||
|
int count;
|
||||||
|
|
||||||
|
assert(storage != NULL);
|
||||||
|
count = (storage->count < 0) ? 0 : storage->count;
|
||||||
|
if (len != count) {
|
||||||
|
sprintf(buffer, "wrong number of data characters: got %d, expected %d",
|
||||||
|
count, len);
|
||||||
|
fail(buffer);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (memcmp(expected, storage->data, len * sizeof(storage->data[0])) != 0) {
|
||||||
|
fail("got bad data bytes");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
60
3rdparty/expat/tests/chardata.h
vendored
Normal file
60
3rdparty/expat/tests/chardata.h
vendored
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
/* Interface to some helper routines used to accumulate and check text
|
||||||
|
and attribute content.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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_CHARDATA_H
|
||||||
|
# define XML_CHARDATA_H 1
|
||||||
|
|
||||||
|
# ifndef XML_VERSION
|
||||||
|
# include "expat.h" /* need XML_Char */
|
||||||
|
# endif
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
int count; /* # of chars, < 0 if not set */
|
||||||
|
XML_Char data[2048];
|
||||||
|
} CharData;
|
||||||
|
|
||||||
|
void CharData_Init(CharData *storage);
|
||||||
|
|
||||||
|
void CharData_AppendXMLChars(CharData *storage, const XML_Char *s, int len);
|
||||||
|
|
||||||
|
int CharData_CheckXMLChars(CharData *storage, const XML_Char *s);
|
||||||
|
|
||||||
|
#endif /* XML_CHARDATA_H */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
190
3rdparty/expat/tests/memcheck.c
vendored
Normal file
190
3rdparty/expat/tests/memcheck.c
vendored
Normal file
@ -0,0 +1,190 @@
|
|||||||
|
/* Debug allocators for the Expat test suite
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include "memcheck.h"
|
||||||
|
|
||||||
|
/* Structures to keep track of what has been allocated. Speed isn't a
|
||||||
|
* big issue for the tests this is required for, so we will use a
|
||||||
|
* doubly-linked list to make deletion easier.
|
||||||
|
*/
|
||||||
|
|
||||||
|
typedef struct allocation_entry {
|
||||||
|
struct allocation_entry *next;
|
||||||
|
struct allocation_entry *prev;
|
||||||
|
void *allocation;
|
||||||
|
size_t num_bytes;
|
||||||
|
} AllocationEntry;
|
||||||
|
|
||||||
|
static AllocationEntry *alloc_head = NULL;
|
||||||
|
static AllocationEntry *alloc_tail = NULL;
|
||||||
|
|
||||||
|
static AllocationEntry *find_allocation(void *ptr);
|
||||||
|
|
||||||
|
/* Allocate some memory and keep track of it. */
|
||||||
|
void *
|
||||||
|
tracking_malloc(size_t size) {
|
||||||
|
AllocationEntry *entry = malloc(sizeof(AllocationEntry));
|
||||||
|
|
||||||
|
if (entry == NULL) {
|
||||||
|
printf("Allocator failure\n");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
entry->num_bytes = size;
|
||||||
|
entry->allocation = malloc(size);
|
||||||
|
if (entry->allocation == NULL) {
|
||||||
|
free(entry);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
entry->next = NULL;
|
||||||
|
|
||||||
|
/* Add to the list of allocations */
|
||||||
|
if (alloc_head == NULL) {
|
||||||
|
entry->prev = NULL;
|
||||||
|
alloc_head = alloc_tail = entry;
|
||||||
|
} else {
|
||||||
|
entry->prev = alloc_tail;
|
||||||
|
alloc_tail->next = entry;
|
||||||
|
alloc_tail = entry;
|
||||||
|
}
|
||||||
|
|
||||||
|
return entry->allocation;
|
||||||
|
}
|
||||||
|
|
||||||
|
static AllocationEntry *
|
||||||
|
find_allocation(void *ptr) {
|
||||||
|
AllocationEntry *entry;
|
||||||
|
|
||||||
|
for (entry = alloc_head; entry != NULL; entry = entry->next) {
|
||||||
|
if (entry->allocation == ptr) {
|
||||||
|
return entry;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Free some memory and remove the tracking for it */
|
||||||
|
void
|
||||||
|
tracking_free(void *ptr) {
|
||||||
|
AllocationEntry *entry;
|
||||||
|
|
||||||
|
if (ptr == NULL) {
|
||||||
|
/* There won't be an entry for this */
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
entry = find_allocation(ptr);
|
||||||
|
if (entry != NULL) {
|
||||||
|
/* This is the relevant allocation. Unlink it */
|
||||||
|
if (entry->prev != NULL)
|
||||||
|
entry->prev->next = entry->next;
|
||||||
|
else
|
||||||
|
alloc_head = entry->next;
|
||||||
|
if (entry->next != NULL)
|
||||||
|
entry->next->prev = entry->prev;
|
||||||
|
else
|
||||||
|
alloc_tail = entry->next;
|
||||||
|
free(entry);
|
||||||
|
} else {
|
||||||
|
printf("Attempting to free unallocated memory at %p\n", ptr);
|
||||||
|
}
|
||||||
|
free(ptr);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Reallocate some memory and keep track of it */
|
||||||
|
void *
|
||||||
|
tracking_realloc(void *ptr, size_t size) {
|
||||||
|
AllocationEntry *entry;
|
||||||
|
|
||||||
|
if (ptr == NULL) {
|
||||||
|
/* By definition, this is equivalent to malloc(size) */
|
||||||
|
return tracking_malloc(size);
|
||||||
|
}
|
||||||
|
if (size == 0) {
|
||||||
|
/* By definition, this is equivalent to free(ptr) */
|
||||||
|
tracking_free(ptr);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Find the allocation entry for this memory */
|
||||||
|
entry = find_allocation(ptr);
|
||||||
|
if (entry == NULL) {
|
||||||
|
printf("Attempting to realloc unallocated memory at %p\n", ptr);
|
||||||
|
entry = malloc(sizeof(AllocationEntry));
|
||||||
|
if (entry == NULL) {
|
||||||
|
printf("Reallocator failure\n");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
entry->allocation = realloc(ptr, size);
|
||||||
|
if (entry->allocation == NULL) {
|
||||||
|
free(entry);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Add to the list of allocations */
|
||||||
|
entry->next = NULL;
|
||||||
|
if (alloc_head == NULL) {
|
||||||
|
entry->prev = NULL;
|
||||||
|
alloc_head = alloc_tail = entry;
|
||||||
|
} else {
|
||||||
|
entry->prev = alloc_tail;
|
||||||
|
alloc_tail->next = entry;
|
||||||
|
alloc_tail = entry;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
entry->allocation = realloc(ptr, size);
|
||||||
|
if (entry->allocation == NULL) {
|
||||||
|
/* Realloc semantics say the original is still allocated */
|
||||||
|
entry->allocation = ptr;
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
entry->num_bytes = size;
|
||||||
|
return entry->allocation;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
tracking_report(void) {
|
||||||
|
AllocationEntry *entry;
|
||||||
|
|
||||||
|
if (alloc_head == NULL)
|
||||||
|
return 1;
|
||||||
|
|
||||||
|
/* Otherwise we have allocations that haven't been freed */
|
||||||
|
for (entry = alloc_head; entry != NULL; entry = entry->next) {
|
||||||
|
printf("Allocated %lu bytes at %p\n", (long unsigned)entry->num_bytes,
|
||||||
|
entry->allocation);
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
57
3rdparty/expat/tests/memcheck.h
vendored
Normal file
57
3rdparty/expat/tests/memcheck.h
vendored
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
/* Interface to allocation functions that will track what has or has
|
||||||
|
not been freed.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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_MEMCHECK_H
|
||||||
|
# define XML_MEMCHECK_H 1
|
||||||
|
|
||||||
|
/* Allocation declarations */
|
||||||
|
|
||||||
|
void *tracking_malloc(size_t size);
|
||||||
|
void tracking_free(void *ptr);
|
||||||
|
void *tracking_realloc(void *ptr, size_t size);
|
||||||
|
|
||||||
|
/* End-of-test check to see if unfreed allocations remain. Returns
|
||||||
|
* TRUE (1) if there is nothing, otherwise prints a report of the
|
||||||
|
* remaining allocations and returns FALSE (0).
|
||||||
|
*/
|
||||||
|
int tracking_report(void);
|
||||||
|
|
||||||
|
#endif /* XML_MEMCHECK_H */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
229
3rdparty/expat/tests/minicheck.c
vendored
Normal file
229
3rdparty/expat/tests/minicheck.c
vendored
Normal file
@ -0,0 +1,229 @@
|
|||||||
|
/* Miniature re-implementation of the "check" library.
|
||||||
|
|
||||||
|
This is intended to support just enough of check to run the Expat
|
||||||
|
tests. This interface is based entirely on the portion of the
|
||||||
|
check library being used.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <setjmp.h>
|
||||||
|
#include <assert.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "internal.h" /* for UNUSED_P only */
|
||||||
|
#include "minicheck.h"
|
||||||
|
|
||||||
|
Suite *
|
||||||
|
suite_create(const char *name) {
|
||||||
|
Suite *suite = (Suite *)calloc(1, sizeof(Suite));
|
||||||
|
if (suite != NULL) {
|
||||||
|
suite->name = name;
|
||||||
|
}
|
||||||
|
return suite;
|
||||||
|
}
|
||||||
|
|
||||||
|
TCase *
|
||||||
|
tcase_create(const char *name) {
|
||||||
|
TCase *tc = (TCase *)calloc(1, sizeof(TCase));
|
||||||
|
if (tc != NULL) {
|
||||||
|
tc->name = name;
|
||||||
|
}
|
||||||
|
return tc;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
suite_add_tcase(Suite *suite, TCase *tc) {
|
||||||
|
assert(suite != NULL);
|
||||||
|
assert(tc != NULL);
|
||||||
|
assert(tc->next_tcase == NULL);
|
||||||
|
|
||||||
|
tc->next_tcase = suite->tests;
|
||||||
|
suite->tests = tc;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
tcase_add_checked_fixture(TCase *tc, tcase_setup_function setup,
|
||||||
|
tcase_teardown_function teardown) {
|
||||||
|
assert(tc != NULL);
|
||||||
|
tc->setup = setup;
|
||||||
|
tc->teardown = teardown;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
tcase_add_test(TCase *tc, tcase_test_function test) {
|
||||||
|
assert(tc != NULL);
|
||||||
|
if (tc->allocated == tc->ntests) {
|
||||||
|
int nalloc = tc->allocated + 100;
|
||||||
|
size_t new_size = sizeof(tcase_test_function) * nalloc;
|
||||||
|
tcase_test_function *new_tests = realloc(tc->tests, new_size);
|
||||||
|
assert(new_tests != NULL);
|
||||||
|
tc->tests = new_tests;
|
||||||
|
tc->allocated = nalloc;
|
||||||
|
}
|
||||||
|
tc->tests[tc->ntests] = test;
|
||||||
|
tc->ntests++;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
tcase_free(TCase *tc) {
|
||||||
|
if (! tc) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
free(tc->tests);
|
||||||
|
free(tc);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
suite_free(Suite *suite) {
|
||||||
|
if (! suite) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (suite->tests != NULL) {
|
||||||
|
TCase *next = suite->tests->next_tcase;
|
||||||
|
tcase_free(suite->tests);
|
||||||
|
suite->tests = next;
|
||||||
|
}
|
||||||
|
free(suite);
|
||||||
|
}
|
||||||
|
|
||||||
|
SRunner *
|
||||||
|
srunner_create(Suite *suite) {
|
||||||
|
SRunner *runner = calloc(1, sizeof(SRunner));
|
||||||
|
if (runner != NULL) {
|
||||||
|
runner->suite = suite;
|
||||||
|
}
|
||||||
|
return runner;
|
||||||
|
}
|
||||||
|
|
||||||
|
static jmp_buf env;
|
||||||
|
|
||||||
|
static char const *_check_current_function = NULL;
|
||||||
|
static int _check_current_lineno = -1;
|
||||||
|
static char const *_check_current_filename = NULL;
|
||||||
|
|
||||||
|
void
|
||||||
|
_check_set_test_info(char const *function, char const *filename, int lineno) {
|
||||||
|
_check_current_function = function;
|
||||||
|
_check_current_lineno = lineno;
|
||||||
|
_check_current_filename = filename;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
add_failure(SRunner *runner, int verbosity) {
|
||||||
|
runner->nfailures++;
|
||||||
|
if (verbosity >= CK_VERBOSE) {
|
||||||
|
printf("%s:%d: %s\n", _check_current_filename, _check_current_lineno,
|
||||||
|
_check_current_function);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
srunner_run_all(SRunner *runner, int verbosity) {
|
||||||
|
Suite *suite;
|
||||||
|
TCase *volatile tc;
|
||||||
|
assert(runner != NULL);
|
||||||
|
suite = runner->suite;
|
||||||
|
tc = suite->tests;
|
||||||
|
while (tc != NULL) {
|
||||||
|
volatile int i;
|
||||||
|
for (i = 0; i < tc->ntests; ++i) {
|
||||||
|
runner->nchecks++;
|
||||||
|
|
||||||
|
if (tc->setup != NULL) {
|
||||||
|
/* setup */
|
||||||
|
if (setjmp(env)) {
|
||||||
|
add_failure(runner, verbosity);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
tc->setup();
|
||||||
|
}
|
||||||
|
/* test */
|
||||||
|
if (setjmp(env)) {
|
||||||
|
add_failure(runner, verbosity);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
(tc->tests[i])();
|
||||||
|
|
||||||
|
/* teardown */
|
||||||
|
if (tc->teardown != NULL) {
|
||||||
|
if (setjmp(env)) {
|
||||||
|
add_failure(runner, verbosity);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
tc->teardown();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
tc = tc->next_tcase;
|
||||||
|
}
|
||||||
|
if (verbosity) {
|
||||||
|
int passed = runner->nchecks - runner->nfailures;
|
||||||
|
double percentage = ((double)passed) / runner->nchecks;
|
||||||
|
int display = (int)(percentage * 100);
|
||||||
|
printf("%d%%: Checks: %d, Failed: %d\n", display, runner->nchecks,
|
||||||
|
runner->nfailures);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
_fail_unless(int condition, const char *file, int line, const char *msg) {
|
||||||
|
/* Always print the error message so it isn't lost. In this case,
|
||||||
|
we have a failure, so there's no reason to be quiet about what
|
||||||
|
it is.
|
||||||
|
*/
|
||||||
|
UNUSED_P(condition);
|
||||||
|
UNUSED_P(file);
|
||||||
|
UNUSED_P(line);
|
||||||
|
if (msg != NULL) {
|
||||||
|
const int has_newline = (msg[strlen(msg) - 1] == '\n');
|
||||||
|
fprintf(stderr, "ERROR: %s%s", msg, has_newline ? "" : "\n");
|
||||||
|
}
|
||||||
|
longjmp(env, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
srunner_ntests_failed(SRunner *runner) {
|
||||||
|
assert(runner != NULL);
|
||||||
|
return runner->nfailures;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
srunner_free(SRunner *runner) {
|
||||||
|
if (! runner) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
suite_free(runner->suite);
|
||||||
|
free(runner);
|
||||||
|
}
|
119
3rdparty/expat/tests/minicheck.h
vendored
Normal file
119
3rdparty/expat/tests/minicheck.h
vendored
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
/* Miniature re-implementation of the "check" library.
|
||||||
|
|
||||||
|
This is intended to support just enough of check to run the Expat
|
||||||
|
tests. This interface is based entirely on the portion of the
|
||||||
|
check library being used.
|
||||||
|
|
||||||
|
This is *source* compatible, but not necessary *link* compatible.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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
|
||||||
|
|
||||||
|
#define CK_NOFORK 0
|
||||||
|
#define CK_FORK 1
|
||||||
|
|
||||||
|
#define CK_SILENT 0
|
||||||
|
#define CK_NORMAL 1
|
||||||
|
#define CK_VERBOSE 2
|
||||||
|
|
||||||
|
/* Workaround for Microsoft's compiler and Tru64 Unix systems where the
|
||||||
|
C compiler has a working __func__, but the C++ compiler only has a
|
||||||
|
working __FUNCTION__. This could be fixed in configure.in, but it's
|
||||||
|
not worth it right now. */
|
||||||
|
#if defined(_MSC_VER) || (defined(__osf__) && defined(__cplusplus))
|
||||||
|
# define __func__ __FUNCTION__
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define START_TEST(testname) \
|
||||||
|
static void testname(void) { \
|
||||||
|
_check_set_test_info(__func__, __FILE__, __LINE__); \
|
||||||
|
{
|
||||||
|
#define END_TEST \
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
#define fail(msg) _fail_unless(0, __FILE__, __LINE__, msg)
|
||||||
|
|
||||||
|
typedef void (*tcase_setup_function)(void);
|
||||||
|
typedef void (*tcase_teardown_function)(void);
|
||||||
|
typedef void (*tcase_test_function)(void);
|
||||||
|
|
||||||
|
typedef struct SRunner SRunner;
|
||||||
|
typedef struct Suite Suite;
|
||||||
|
typedef struct TCase TCase;
|
||||||
|
|
||||||
|
struct SRunner {
|
||||||
|
Suite *suite;
|
||||||
|
int nchecks;
|
||||||
|
int nfailures;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Suite {
|
||||||
|
const char *name;
|
||||||
|
TCase *tests;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct TCase {
|
||||||
|
const char *name;
|
||||||
|
tcase_setup_function setup;
|
||||||
|
tcase_teardown_function teardown;
|
||||||
|
tcase_test_function *tests;
|
||||||
|
int ntests;
|
||||||
|
int allocated;
|
||||||
|
TCase *next_tcase;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Internal helper. */
|
||||||
|
void _check_set_test_info(char const *function, char const *filename,
|
||||||
|
int lineno);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Prototypes for the actual implementation.
|
||||||
|
*/
|
||||||
|
|
||||||
|
void _fail_unless(int condition, const char *file, int line, const char *msg);
|
||||||
|
Suite *suite_create(const char *name);
|
||||||
|
TCase *tcase_create(const char *name);
|
||||||
|
void suite_add_tcase(Suite *suite, TCase *tc);
|
||||||
|
void tcase_add_checked_fixture(TCase *, tcase_setup_function,
|
||||||
|
tcase_teardown_function);
|
||||||
|
void tcase_add_test(TCase *tc, tcase_test_function test);
|
||||||
|
SRunner *srunner_create(Suite *suite);
|
||||||
|
void srunner_run_all(SRunner *runner, int verbosity);
|
||||||
|
int srunner_ntests_failed(SRunner *runner);
|
||||||
|
void srunner_free(SRunner *runner);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
11637
3rdparty/expat/tests/runtests.c
vendored
Normal file
11637
3rdparty/expat/tests/runtests.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
36
3rdparty/expat/tests/runtestspp.cpp
vendored
Normal file
36
3rdparty/expat/tests/runtestspp.cpp
vendored
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/* C++ compilation harness for the test suite.
|
||||||
|
|
||||||
|
This is used to ensure the Expat headers can be included from C++
|
||||||
|
and have everything work as expected.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 "runtests.c"
|
155
3rdparty/expat/tests/structdata.c
vendored
Normal file
155
3rdparty/expat/tests/structdata.c
vendored
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
/*
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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 HAVE_EXPAT_CONFIG_H
|
||||||
|
# include "expat_config.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "structdata.h"
|
||||||
|
#include "minicheck.h"
|
||||||
|
|
||||||
|
#define STRUCT_EXTENSION_COUNT 8
|
||||||
|
|
||||||
|
#ifdef XML_UNICODE_WCHAR_T
|
||||||
|
# include <wchar.h>
|
||||||
|
# define XML_FMT_STR "ls"
|
||||||
|
# define xcstrlen(s) wcslen(s)
|
||||||
|
# define xcstrcmp(s, t) wcscmp((s), (t))
|
||||||
|
#else
|
||||||
|
# define XML_FMT_STR "s"
|
||||||
|
# define xcstrlen(s) strlen(s)
|
||||||
|
# define xcstrcmp(s, t) strcmp((s), (t))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static XML_Char *
|
||||||
|
xmlstrdup(const XML_Char *s) {
|
||||||
|
size_t byte_count = (xcstrlen(s) + 1) * sizeof(XML_Char);
|
||||||
|
XML_Char *dup = malloc(byte_count);
|
||||||
|
|
||||||
|
assert(dup != NULL);
|
||||||
|
memcpy(dup, s, byte_count);
|
||||||
|
return dup;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
StructData_Init(StructData *storage) {
|
||||||
|
assert(storage != NULL);
|
||||||
|
storage->count = 0;
|
||||||
|
storage->max_count = 0;
|
||||||
|
storage->entries = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
StructData_AddItem(StructData *storage, const XML_Char *s, int data0, int data1,
|
||||||
|
int data2) {
|
||||||
|
StructDataEntry *entry;
|
||||||
|
|
||||||
|
assert(storage != NULL);
|
||||||
|
assert(s != NULL);
|
||||||
|
if (storage->count == storage->max_count) {
|
||||||
|
StructDataEntry *new;
|
||||||
|
|
||||||
|
storage->max_count += STRUCT_EXTENSION_COUNT;
|
||||||
|
new = realloc(storage->entries,
|
||||||
|
storage->max_count * sizeof(StructDataEntry));
|
||||||
|
assert(new != NULL);
|
||||||
|
storage->entries = new;
|
||||||
|
}
|
||||||
|
|
||||||
|
entry = &storage->entries[storage->count];
|
||||||
|
entry->str = xmlstrdup(s);
|
||||||
|
entry->data0 = data0;
|
||||||
|
entry->data1 = data1;
|
||||||
|
entry->data2 = data2;
|
||||||
|
storage->count++;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 'fail()' aborts the function via a longjmp, so there is no point
|
||||||
|
* in returning a value from this function.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
StructData_CheckItems(StructData *storage, const StructDataEntry *expected,
|
||||||
|
int count) {
|
||||||
|
char buffer[1024];
|
||||||
|
int i;
|
||||||
|
|
||||||
|
assert(storage != NULL);
|
||||||
|
assert(expected != NULL);
|
||||||
|
if (count != storage->count) {
|
||||||
|
sprintf(buffer, "wrong number of entries: got %d, expected %d",
|
||||||
|
storage->count, count);
|
||||||
|
StructData_Dispose(storage);
|
||||||
|
fail(buffer);
|
||||||
|
} else {
|
||||||
|
for (i = 0; i < count; i++) {
|
||||||
|
const StructDataEntry *got = &storage->entries[i];
|
||||||
|
const StructDataEntry *want = &expected[i];
|
||||||
|
|
||||||
|
assert(got != NULL);
|
||||||
|
assert(want != NULL);
|
||||||
|
|
||||||
|
if (xcstrcmp(got->str, want->str) != 0) {
|
||||||
|
StructData_Dispose(storage);
|
||||||
|
fail("structure got bad string");
|
||||||
|
} else {
|
||||||
|
if (got->data0 != want->data0 || got->data1 != want->data1
|
||||||
|
|| got->data2 != want->data2) {
|
||||||
|
sprintf(buffer,
|
||||||
|
"struct '%" XML_FMT_STR
|
||||||
|
"' expected (%d,%d,%d), got (%d,%d,%d)",
|
||||||
|
got->str, want->data0, want->data1, want->data2, got->data0,
|
||||||
|
got->data1, got->data2);
|
||||||
|
StructData_Dispose(storage);
|
||||||
|
fail(buffer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
StructData_Dispose(StructData *storage) {
|
||||||
|
int i;
|
||||||
|
|
||||||
|
assert(storage != NULL);
|
||||||
|
for (i = 0; i < storage->count; i++)
|
||||||
|
free((void *)storage->entries[i].str);
|
||||||
|
free(storage->entries);
|
||||||
|
|
||||||
|
storage->count = 0;
|
||||||
|
storage->entries = NULL;
|
||||||
|
}
|
70
3rdparty/expat/tests/structdata.h
vendored
Normal file
70
3rdparty/expat/tests/structdata.h
vendored
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
/* Interface to some helper routines used to accumulate and check
|
||||||
|
structured content.
|
||||||
|
__ __ _
|
||||||
|
___\ \/ /_ __ __ _| |_
|
||||||
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
| __// \| |_) | (_| | |_
|
||||||
|
\___/_/\_\ .__/ \__,_|\__|
|
||||||
|
|_| XML parser
|
||||||
|
|
||||||
|
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
|
||||||
|
Copyright (c) 2000-2017 Expat development team
|
||||||
|
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_STRUCTDATA_H
|
||||||
|
# define XML_STRUCTDATA_H 1
|
||||||
|
|
||||||
|
# include "expat.h"
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const XML_Char *str;
|
||||||
|
int data0;
|
||||||
|
int data1;
|
||||||
|
int data2;
|
||||||
|
} StructDataEntry;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
int count; /* Number of entries used */
|
||||||
|
int max_count; /* Number of StructDataEntry items in `entries` */
|
||||||
|
StructDataEntry *entries;
|
||||||
|
} StructData;
|
||||||
|
|
||||||
|
void StructData_Init(StructData *storage);
|
||||||
|
|
||||||
|
void StructData_AddItem(StructData *storage, const XML_Char *s, int data0,
|
||||||
|
int data1, int data2);
|
||||||
|
|
||||||
|
void StructData_CheckItems(StructData *storage, const StructDataEntry *expected,
|
||||||
|
int count);
|
||||||
|
|
||||||
|
void StructData_Dispose(StructData *storage);
|
||||||
|
|
||||||
|
#endif /* XML_STRUCTDATA_H */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
62
3rdparty/expat/tests/udiffer.py
vendored
Executable file
62
3rdparty/expat/tests/udiffer.py
vendored
Executable file
@ -0,0 +1,62 @@
|
|||||||
|
#! /usr/bin/env python3
|
||||||
|
# __ __ _
|
||||||
|
# ___\ \/ /_ __ __ _| |_
|
||||||
|
# / _ \\ /| '_ \ / _` | __|
|
||||||
|
# | __// \| |_) | (_| | |_
|
||||||
|
# \___/_/\_\ .__/ \__,_|\__|
|
||||||
|
# |_| XML parser
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Expat development team
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import difflib
|
||||||
|
import sys
|
||||||
|
|
||||||
|
|
||||||
|
def _read_lines(filename):
|
||||||
|
try:
|
||||||
|
with open(filename) as f:
|
||||||
|
return f.readlines()
|
||||||
|
except UnicodeDecodeError:
|
||||||
|
with open(filename, encoding='utf_16') as f:
|
||||||
|
return f.readlines()
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument('first', metavar='FILE')
|
||||||
|
parser.add_argument('second', metavar='FILE')
|
||||||
|
config = parser.parse_args()
|
||||||
|
|
||||||
|
first = _read_lines(config.first)
|
||||||
|
second = _read_lines(config.second)
|
||||||
|
|
||||||
|
diffs = list(difflib.unified_diff(first, second, fromfile=config.first,
|
||||||
|
tofile=config.second))
|
||||||
|
if diffs:
|
||||||
|
sys.stdout.writelines(diffs)
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
10
3rdparty/expat/tests/xmltest.log.expected
vendored
Normal file
10
3rdparty/expat/tests/xmltest.log.expected
vendored
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
Output differs: ibm/valid/P02/ibm02v01.xml
|
||||||
|
ibm49i02.dtd: No such file or directory
|
||||||
|
Expected not well-formed: ibm/not-wf/misc/432gewf.xml
|
||||||
|
Expected not well-formed: xmltest/not-wf/not-sa/005.xml
|
||||||
|
Expected not well-formed: sun/not-wf/uri01.xml
|
||||||
|
Expected not well-formed: oasis/p06fail1.xml
|
||||||
|
Expected not well-formed: oasis/p08fail1.xml
|
||||||
|
Expected not well-formed: oasis/p08fail2.xml
|
||||||
|
Passed: 1801
|
||||||
|
Failed: 8
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user