CMake: Extract macro expat_bool_to_int to reduce code duplication

This commit is contained in:
Sebastian Pipping 2019-08-30 00:23:39 +02:00
parent 8666a6dfe8
commit f9be0365a7

View file

@ -86,31 +86,19 @@ if(NOT WIN32)
endif(XML_DEV_URANDOM)
endif()
if(XML_DTD)
set(XML_DTD 1)
else(XML_DTD)
set(XML_DTD 0)
endif(XML_DTD)
if(XML_NS)
set(XML_NS 1)
else(XML_NS)
set(XML_NS 0)
endif(XML_NS)
if(XML_UNICODE)
set(XML_UNICODE 1)
else(XML_UNICODE)
set(XML_UNICODE 0)
endif(XML_UNICODE)
if(XML_UNICODE_WCHAR_T)
set(XML_UNICODE_WCHAR_T 1)
else(XML_UNICODE_WCHAR_T)
set(XML_UNICODE_WCHAR_T 0)
endif(XML_UNICODE_WCHAR_T)
if(XML_ATTR_INFO)
set(XML_ATTR_INFO 1)
else(XML_ATTR_INFO)
set(XML_ATTR_INFO 0)
endif(XML_ATTR_INFO)
macro(expat_bool_to_int var_ref)
if(${var_ref})
set(${var_ref} 1)
else()
set(${var_ref} 0)
endif()
endmacro()
expat_bool_to_int(XML_ATTR_INFO)
expat_bool_to_int(XML_DTD)
expat_bool_to_int(XML_NS)
expat_bool_to_int(XML_UNICODE)
expat_bool_to_int(XML_UNICODE_WCHAR_T)
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.")