# *** MorphoGraphX add-on CMake file
Set(ADDON HDF)  # set to addon name
Set(${ADDON}_DIR ${MorphoGraphX_SOURCE_DIR}/AddOns/${ADDON})
Set(BUILD_${ADDON} FALSE CACHE BOOL "Check to build add-on ${ADDON}")
If(BUILD_${ADDON})
  Set(MGX_ADDONS ${MGX_ADDONS}-${ADDON} PARENT_SCOPE)

  # *** Required packages

  # hdf5
  Find_Package(HDF5 REQUIRED COMPONENTS C CXX)

  Include_Directories(
    ${HDF5_INCLUDE_DIR}
    ${MGX_SOURCE_PATH} ${MGX_BINARY_PATH}
    )
  Include_Directories(
    SYSTEM ${MGXViewer_SOURCE_PATH}
  )

  # Header files
  Set(${ADDON}_HDRS
    HDF5Process.hpp
    HDF5Tree.hpp
    iterate.hpp
    visit.hpp
    )

  # Source files
  Set(${ADDON}_SRCS
    HDF5Process.cpp
    HDF5Tree.cpp
    iterate.cpp
    visit.cpp
    )

  Add_Library(mgxU${ADDON} SHARED ${${ADDON}_SRCS} ${${ADDON}_DIR}/${ADDON}Icons.qrc)

  Target_Link_Libraries(mgxU${ADDON} mgx mgxBase)
  Set_Target_Properties(mgxU${ADDON} PROPERTIES
    PUBLIC_HEADER "${${ADDON}_HDRS}"
    PREFIX "")
  Install(TARGETS mgxU${ADDON}
    DESTINATION ${MGX_PROCESS_DIR} COMPONENT MGXU${ADDON}
    PUBLIC_HEADER DESTINATION ${MGX_PROCESS_INCLUDE_DIR} COMPONENT MGXU${ADDON})

  Target_Link_Libraries(mgxU${ADDON} ${HDF5_LIBRARIES} ${HDF5_C_SHARED_LIBRARY})

EndIf(BUILD_${ADDON})
