|
| 1 | +#https://raw.githubusercontent.com/imageworks/OpenShadingLanguage/1bd2d67d88418544c4990d93513813696c9a8c06/src/cmake/modules/FindPugiXML.cmake |
| 2 | +# Find the pugixml XML parsing library. |
| 3 | +# |
| 4 | +# Sets the usual variables expected for find_package scripts: |
| 5 | +# |
| 6 | +# PUGIXML_INCLUDE_DIR - header location |
| 7 | +# PUGIXML_LIBRARIES - library to link against |
| 8 | +# PUGIXML_FOUND - true if pugixml was found. |
| 9 | + |
| 10 | +unset (PUGIXML_LIBRARY CACHE) |
| 11 | +unset (PUGIXML_INCLUDE_DIR CACHE) |
| 12 | +find_path (PUGIXML_INCLUDE_DIR |
| 13 | + NAMES pugixml.hpp |
| 14 | + PATHS ${PUGIXML_HOME}/include |
| 15 | + /usr/local/include |
| 16 | + /usr/local/include/pugixml-1.8) |
| 17 | +find_library (PUGIXML_LIBRARY |
| 18 | + NAMES pugixml |
| 19 | + PATHS ${PUGIXML_HOME}/lib |
| 20 | + /usr/local/lib |
| 21 | + /usr/local/lib/pugixml-1.8) |
| 22 | + |
| 23 | +# Second chance -- if not found, look in the OIIO distro |
| 24 | +if (NOT PUGIXML_INCLUDE_DIR AND OPENIMAGEIO_INCLUDE_DIR) |
| 25 | + find_path (PUGIXML_INCLUDE_DIR |
| 26 | + NAMES pugixml.hpp |
| 27 | + PATHS ${OPENIMAGEIO_INCLUDE_DIR}/OpenImageIO) |
| 28 | + set (PUGIXML_LIBRARY ${OPENIMAGEIO_LIBRARIES}) |
| 29 | +endif () |
| 30 | + |
| 31 | + |
| 32 | +# Support the REQUIRED and QUIET arguments, and set PUGIXML_FOUND if found. |
| 33 | +include (FindPackageHandleStandardArgs) |
| 34 | +FIND_PACKAGE_HANDLE_STANDARD_ARGS (PugiXML DEFAULT_MSG PUGIXML_LIBRARY |
| 35 | + PUGIXML_INCLUDE_DIR) |
| 36 | + |
| 37 | +if (PUGIXML_FOUND) |
| 38 | + set (PUGIXML_LIBRARIES ${PUGIXML_LIBRARY}) |
| 39 | + if (NOT PugiXML_FIND_QUIETLY) |
| 40 | + message (STATUS "PugiXML include = ${PUGIXML_INCLUDE_DIR}") |
| 41 | + message (STATUS "PugiXML library = ${PUGIXML_LIBRARY}") |
| 42 | + endif () |
| 43 | +else () |
| 44 | + message (FATAL_ERROR "No PugiXML found") |
| 45 | +endif() |
| 46 | + |
| 47 | +mark_as_advanced (PUGIXML_LIBRARY PUGIXML_INCLUDE_DIR) |
0 commit comments