CMake: Rename XML_% to EXPAT_%

This commit is contained in:
Sebastian Pipping 2019-08-30 22:06:10 +02:00
parent fce015875e
commit d13ceacad1
5 changed files with 61 additions and 62 deletions

View file

@ -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

View file

@ -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")

View file

@ -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

View file

@ -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)

View file

@ -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