if(PROJECT_ENABLE_PUGIXML) if(PROJECT_BUILD) find_package(pugixml ${PUGIXML_VERSION} REQUIRED) add_definitions(-DPROJECT_ENABLE_PUGIXML) include_directories(BEFORE SYSTEM ${PUGIXML_INCLUDE_DIR} ) if(PROJECT_STATIC_LINK) link_libraries( pugixml::static ) else() link_libraries( pugixml::pugixml ) endif() elseif(NOT PROJECT_IS_MINGW OR CMAKE_HOST_WIN32) ExternalProject_Add(pugixml_project PREFIX external URL ${PROJECT_3RD_PARTY_DIR}/pugixml-${PUGIXML_VERSION}.tar.gz URL_HASH SHA256=2f10e276870c64b1db6809050a75e11a897a8d7456c4be5c6b2e35a11168a015 LIST_SEPARATOR | CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS} -DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS} -DBUILD_STATIC_LIBS=ON ) list(APPEND PROJECT_DEPENDENCIES pugixml_project) endif() endif()