From d13ceacad17df68b87d04b0b3ef629d1473f41dd Mon Sep 17 00:00:00 2001 From: Sebastian Pipping Date: Fri, 30 Aug 2019 22:06:10 +0200 Subject: [PATCH] CMake: Rename XML_% to EXPAT_% --- .travis.yml | 2 +- expat/CMakeLists.txt | 88 +++++++++++++++---------------- expat/Changes | 9 ++-- expat/cmake/expat-config.cmake.in | 20 +++---- expat/win32/build_expat_iss.bat | 4 +- 5 files changed, 61 insertions(+), 62 deletions(-) diff --git a/.travis.yml b/.travis.yml index ae0d41d7..9f78f41e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,7 +24,7 @@ matrix: - os: linux env: MODE=clang-format - os: linux - env: MODE=cmake-oos CMAKE_ARGS="-DXML_ATTR_INFO=ON -DEXPAT_BUILD_FUZZERS=ON -DCMAKE_C_FLAGS=-fsanitize=address -DCMAKE_CXX_FLAGS=-fsanitize=address -DCMAKE_EXE_LINKER_FLAGS=-fsanitize=address -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++" + env: MODE=cmake-oos CMAKE_ARGS="-DEXPAT_ATTR_INFO=ON -DEXPAT_BUILD_FUZZERS=ON -DCMAKE_C_FLAGS=-fsanitize=address -DCMAKE_CXX_FLAGS=-fsanitize=address -DCMAKE_EXE_LINKER_FLAGS=-fsanitize=address -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++" - os: linux env: MODE=qa-sh QA_COMPILER=clang CC=clang CXX=clang++ LD=clang++ QA_SANITIZER=address CONFIGURE_ARGS=--enable-xml-attr-info - os: linux diff --git a/expat/CMakeLists.txt b/expat/CMakeLists.txt index cf3b9ff7..0cbbb21c 100644 --- a/expat/CMakeLists.txt +++ b/expat/CMakeLists.txt @@ -49,22 +49,22 @@ 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_WITH_LIBBSD "utilize libbsd (for arc4random_buf)" OFF) option(EXPAT_ENABLE_INSTALL "install expat files in cmake install target" ON) -set(XML_CONTEXT_BYTES 1024 CACHE STRING "Define to specify how much context to retain around the current parse point") -option(XML_DTD "Define to make parameter entity parsing functionality available" ON) -option(XML_NS "Define to make XML Namespaces functionality available" ON) +set(EXPAT_CONTEXT_BYTES 1024 CACHE STRING "Define to specify how much context to retain around the current parse point") +option(EXPAT_DTD "Define to make parameter entity parsing functionality available" ON) +option(EXPAT_NS "Define to make XML Namespaces functionality available" ON) option(EXPAT_WARNINGS_AS_ERRORS "Treat all compiler warnings as errors" OFF) if(NOT WIN32) - option(XML_DEV_URANDOM "Define to include code reading entropy from `/dev/urandom'." ON) + 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]") endif() -option(XML_UNICODE "Use UTF-16 encoded chars (two bytes) instead of UTF-8" OFF) -option(XML_UNICODE_WCHAR_T "Use wchar_t to represent UTF-16 instead of unsigned short" OFF) -option(XML_ATTR_INFO "Define to allow retrieving the byte offsets for attribute names and values" OFF) -option(XML_LARGE_SIZE "Make XML_GetCurrent* functions return <(unsigned) long long> rather than <(unsigned) long>" OFF) -option(XML_MIN_SIZE "Get a smaller (but slower) parser (in particular avoid multiple copies of the tokenizer)" OFF) +option(EXPAT_UNICODE "Use UTF-16 encoded chars (two bytes) instead of UTF-8" OFF) +option(EXPAT_UNICODE_WCHAR_T "Use wchar_t to represent UTF-16 instead of unsigned short" OFF) +option(EXPAT_ATTR_INFO "Define to allow retrieving the byte offsets for attribute names and values" OFF) +option(EXPAT_LARGE_SIZE "Make XML_GetCurrent* functions return <(unsigned) long long> rather than <(unsigned) long>" OFF) +option(EXPAT_MIN_SIZE "Get a smaller (but slower) parser (in particular avoid multiple copies of the tokenizer)" OFF) if(MSVC) set(EXPAT_MSVC_STATIC_CRT OFF CACHE BOOL "Use /MT flag (static CRT) when compiling in MSVC") endif() @@ -81,45 +81,29 @@ if(EXPAT_WITH_LIBBSD) endif() endif() -if(NOT WIN32) - if(XML_DEV_URANDOM) - set(XML_DEV_URANDOM 1) - else(XML_DEV_URANDOM) - set(XML_DEV_URANDOM 0) - endif(XML_DEV_URANDOM) -endif() - -macro(expat_bool_to_int var_ref) - if(${var_ref}) - set(${var_ref} 1) +macro(_expat_copy_bool_int source_ref dest_ref) + if(${source_ref}) + set(${dest_ref} 1) else() - set(${var_ref} 0) + set(${dest_ref} 0) endif() endmacro() -expat_bool_to_int(XML_ATTR_INFO) -expat_bool_to_int(XML_DTD) -expat_bool_to_int(XML_LARGE_SIZE) -expat_bool_to_int(XML_MIN_SIZE) -expat_bool_to_int(XML_NS) -expat_bool_to_int(XML_UNICODE) -expat_bool_to_int(XML_UNICODE_WCHAR_T) - -if(XML_LARGE_SIZE) +if(EXPAT_LARGE_SIZE) add_definitions(-DXML_LARGE_SIZE) endif() -if(XML_MIN_SIZE) +if(EXPAT_MIN_SIZE) add_definitions(-DXML_MIN_SIZE) endif() -if(XML_UNICODE_WCHAR_T AND NOT XML_UNICODE) - message(SEND_ERROR "Option XML_UNICODE_WCHAR_T=ON may not be used without XML_UNICODE=ON.") - set(XML_UNICODE 1) -endif(XML_UNICODE_WCHAR_T AND NOT XML_UNICODE) +if(EXPAT_UNICODE_WCHAR_T AND NOT EXPAT_UNICODE) + message(SEND_ERROR "Option EXPAT_UNICODE_WCHAR_T=ON may not be used without EXPAT_UNICODE=ON.") + set(EXPAT_UNICODE ON) +endif(EXPAT_UNICODE_WCHAR_T AND NOT EXPAT_UNICODE) -if(EXPAT_BUILD_TOOLS AND (XML_UNICODE AND NOT XML_UNICODE_WCHAR_T)) - message(SEND_ERROR "The xmlwf tool can not be built with option XML_UNICODE_WCHAR_T=OFF and XML_UNICODE=ON. Either set XML_UNICODE_WCHAR_T=ON or EXPAT_BUILD_TOOLS=OFF.") +if(EXPAT_BUILD_TOOLS AND (EXPAT_UNICODE AND NOT EXPAT_UNICODE_WCHAR_T)) + message(SEND_ERROR "The xmlwf tool can not be built with option EXPAT_UNICODE_WCHAR_T=OFF and EXPAT_UNICODE=ON. Either set EXPAT_UNICODE_WCHAR_T=ON or EXPAT_BUILD_TOOLS=OFF.") endif() include(${CMAKE_CURRENT_LIST_DIR}/ConfigureChecks.cmake) @@ -139,6 +123,18 @@ if(NOT WIN32) 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) +_expat_copy_bool_int(EXPAT_UNICODE XML_UNICODE) +_expat_copy_bool_int(EXPAT_UNICODE_WCHAR_T XML_UNICODE_WCHAR_T) +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}) @@ -191,7 +187,7 @@ if(MSVC) add_definitions(-D_CRT_SECURE_NO_WARNINGS -wd4996) endif(MSVC) if(WIN32) - if(XML_UNICODE_WCHAR_T) + if(EXPAT_UNICODE_WCHAR_T) set(_POSTFIX_WIDE "w") endif() @@ -422,8 +418,8 @@ expat_install( # # Summary # -if(XML_UNICODE) - if(XML_UNICODE_WCHAR_T) +if(EXPAT_UNICODE) + if(EXPAT_UNICODE_WCHAR_T) set(_EXPAT_CHAR_TYPE "wchar_t") else() set(_EXPAT_CHAR_TYPE "unsigned short") @@ -455,11 +451,11 @@ message(STATUS " Build tools (xmlwf) ........ ${EXPAT_BUILD_TOOLS}") message(STATUS " Install files .............. ${EXPAT_ENABLE_INSTALL}") message(STATUS "") message(STATUS " Features") -message(STATUS " Attributes info .......... ${XML_ATTR_INFO}") -message(STATUS " Context bytes ............ ${XML_CONTEXT_BYTES}") -message(STATUS " DTD support .............. ${XML_DTD}") -message(STATUS " Large size ............... ${XML_LARGE_SIZE}") -message(STATUS " Namespace support ........ ${XML_NS}") +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 " Namespace support ........ ${EXPAT_NS}") message(STATUS "") message(STATUS " Entropy sources") if(WIN32) @@ -468,7 +464,7 @@ else() message(STATUS " getrandom ................ ${HAVE_GETRANDOM}") message(STATUS " syscall SYS_getrandom .... ${HAVE_SYSCALL_GETRANDOM}") message(STATUS " libbsd ................... ${EXPAT_WITH_LIBBSD}") - message(STATUS " /dev/random .............. ${XML_DEV_URANDOM}") + message(STATUS " /dev/random .............. ${EXPAT_DEV_URANDOM}") endif() message(STATUS "") if(CMAKE_GENERATOR STREQUAL "Unix Makefiles") diff --git a/expat/Changes b/expat/Changes index 36b8ba07..b05edc18 100644 --- a/expat/Changes +++ b/expat/Changes @@ -23,9 +23,12 @@ Release x.x.x xxx xxx xx xxxx --with-sys-getrandom --without-sys-getrandom Autotools: Fix "make run-xmltest" for out-of-source builds - #244 #264 CMake: Add argument -DXML_ATTR_INFO=(ON|OFF), default OFF - #326 CMake: Add argument -DXML_LARGE_SIZE=(ON|OFF), default OFF - #326 CMake: Add argument -DXML_MIN_SIZE=(ON|OFF), default OFF + #244 #264 CMake: Add argument -DEXPAT_ATTR_INFO=(ON|OFF), + default OFF + #326 CMake: Add argument -DEXPAT_LARGE_SIZE=(ON|OFF), + default OFF + #326 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 diff --git a/expat/cmake/expat-config.cmake.in b/expat/cmake/expat-config.cmake.in index 3b044f04..cbd2d94d 100644 --- a/expat/cmake/expat-config.cmake.in +++ b/expat/cmake/expat-config.cmake.in @@ -43,18 +43,18 @@ macro(_register_component _NAME _AVAILABE) set(expat_${_NAME}_FOUND ${_AVAILABE}) endmacro() -_register_component(attr_info @XML_ATTR_INFO@) -if(@XML_CONTEXT_BYTES@) - _register_component(context_bytes 1) +_register_component(attr_info @EXPAT_ATTR_INFO@) +if(@EXPAT_CONTEXT_BYTES@) + _register_component(context_bytes ON) else() - _register_component(context_bytes 0) + _register_component(context_bytes OFF) endif() -_register_component(dtd @XML_DTD@) -_register_component(large_size @XML_LARGE_SIZE@) -_register_component(min_size @XML_MIN_SIZE@) -_register_component(ns @XML_NS@) -_register_component(unicode @XML_UNICODE@) -_register_component(unicode_wchar_t @XML_UNICODE_WCHAR_T@) +_register_component(dtd @EXPAT_DTD@) +_register_component(large_size @EXPAT_LARGE_SIZE@) +_register_component(min_size @EXPAT_MIN_SIZE@) +_register_component(ns @EXPAT_NS@) +_register_component(unicode @EXPAT_UNICODE@) +_register_component(unicode_wchar_t @EXPAT_UNICODE_WCHAR_T@) check_required_components(expat) diff --git a/expat/win32/build_expat_iss.bat b/expat/win32/build_expat_iss.bat index 39c92e9a..ab41aed8 100644 --- a/expat/win32/build_expat_iss.bat +++ b/expat/win32/build_expat_iss.bat @@ -63,7 +63,7 @@ COPY build_static_char\xmlwf\%CONFIGURATION%\xmlwf.exe %BINDIR%\ || EXIT /b 1 MD build_shared_wchar_t || EXIT /b 1 CD build_shared_wchar_t || EXIT /b 1 - cmake -G"%GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DEXPAT_MSVC_STATIC_CRT=ON -DEXPAT_BUILD_EXAMPLES=OFF -DEXPAT_BUILD_TESTS=OFF -DEXPAT_BUILD_TOOLS=OFF -DXML_UNICODE=ON -DXML_UNICODE_WCHAR_T=ON .. || EXIT /b 1 + cmake -G"%GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DEXPAT_MSVC_STATIC_CRT=ON -DEXPAT_BUILD_EXAMPLES=OFF -DEXPAT_BUILD_TESTS=OFF -DEXPAT_BUILD_TOOLS=OFF -DEXPAT_UNICODE=ON -DEXPAT_UNICODE_WCHAR_T=ON .. || EXIT /b 1 msbuild /m expat.sln || EXIT /b 1 DIR %CONFIGURATION% || EXIT /b 1 CD .. || EXIT /b 1 @@ -73,7 +73,7 @@ COPY build_shared_wchar_t\%CONFIGURATION%\expatw.lib %BINDIR%\ || EXIT /b 1 MD build_static_wchar_t || EXIT /b 1 CD build_static_wchar_t || EXIT /b 1 - cmake -G"%GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DEXPAT_MSVC_STATIC_CRT=ON -DEXPAT_BUILD_EXAMPLES=OFF -DEXPAT_BUILD_TESTS=OFF -DEXPAT_BUILD_TOOLS=OFF -DEXPAT_SHARED_LIBS=OFF -DXML_UNICODE=ON -DXML_UNICODE_WCHAR_T=ON .. || EXIT /b 1 + cmake -G"%GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DEXPAT_MSVC_STATIC_CRT=ON -DEXPAT_BUILD_EXAMPLES=OFF -DEXPAT_BUILD_TESTS=OFF -DEXPAT_BUILD_TOOLS=OFF -DEXPAT_SHARED_LIBS=OFF -DEXPAT_UNICODE=ON -DEXPAT_UNICODE_WCHAR_T=ON .. || EXIT /b 1 msbuild /m expat.sln || EXIT /b 1 DIR %CONFIGURATION% || EXIT /b 1 CD .. || EXIT /b 1 -- 2.40.0