]> granicus.if.org Git - libexpat/commitdiff
CMake: Extract macro expat_bool_to_int to reduce code duplication
authorSebastian Pipping <sebastian@pipping.org>
Thu, 29 Aug 2019 22:23:39 +0000 (00:23 +0200)
committerSebastian Pipping <sebastian@pipping.org>
Fri, 30 Aug 2019 00:30:28 +0000 (02:30 +0200)
expat/CMakeLists.txt

index 7bb4eea401d94beccc9b9723638b35aea3c900b5..b004cdbcaa354bb23e84054764ccab82f9625649 100644 (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.")