# DO NOT EDIT THIS FILE! THIS FILE IS AUTOMATICALLY GENERATED BY xml2cmake
PROJECT(IDX_database)

INCLUDE(${VISIT_SOURCE_DIR}/CMake/PluginMacros.cmake)

ADD_DATABASE_CODE_GEN_TARGETS(IDX)

SET(COMMON_SOURCES
IDXPluginInfo.C
IDXCommonPluginInfo.C
)

SET(LIBI_SOURCES
IDXPluginInfo.C
)

SET(LIBM_SOURCES
IDXMDServerPluginInfo.C
${COMMON_SOURCES}
pidx_idx_io.C
uintah_utils.C
avtIDXFileFormat.C
avtIDXOptions.C
)

SET(LIBE_SOURCES
IDXEnginePluginInfo.C
${COMMON_SOURCES}
pidx_idx_io.C
uintah_utils.C
avtIDXFileFormat.C
avtIDXOptions.C
)

INCLUDE_DIRECTORIES(
${CMAKE_CURRENT_SOURCE_DIR}
${PIDX_INCLUDE_DIR}
${VISIT_COMMON_INCLUDES}
${VISIT_INCLUDE_DIR}/avt/DBAtts/MetaData
${VISIT_INCLUDE_DIR}/avt/DBAtts/SIL
${VISIT_INCLUDE_DIR}/avt/Database/Database
${VISIT_INCLUDE_DIR}/avt/Database/Formats
${VISIT_INCLUDE_DIR}/avt/Database/Ghost
${VISIT_INCLUDE_DIR}/avt/FileWriter
${VISIT_INCLUDE_DIR}/avt/Filters
${VISIT_INCLUDE_DIR}/avt/MIR/Base
${VISIT_INCLUDE_DIR}/avt/MIR/Tet
${VISIT_INCLUDE_DIR}/avt/MIR/Zoo
${VISIT_INCLUDE_DIR}/avt/Math
${VISIT_INCLUDE_DIR}/avt/Pipeline/AbstractFilters
${VISIT_INCLUDE_DIR}/avt/Pipeline/Data
${VISIT_INCLUDE_DIR}/avt/Pipeline/Pipeline
${VISIT_INCLUDE_DIR}/avt/Pipeline/Sinks
${VISIT_INCLUDE_DIR}/avt/Pipeline/Sources
${VISIT_INCLUDE_DIR}/avt/VisWindow/VisWindow
${VISIT_INCLUDE_DIR}/visit_vtk/full
${VISIT_INCLUDE_DIR}/visit_vtk/lightweight
${VTK_INCLUDE_DIRS}
)

### Note: This reader always requires MPI

# Use same MPI libs as Visit
SET(PIDX_LIBRARIES ${PIDX_LIBRARIES} ${VISIT_PARALLEL_LIBS} zfp)

# Use ${VISIT_PARALLEL_RPATH} because VISIT_PARALLEL_INCLUDE is not set
INCLUDE_DIRECTORIES(${PIDX_INCLUDE_DIR} ${VISIT_PARALLEL_RPATH}/../include)

SET(PIDX_LIBRARY_DIR ${PIDX_DIR}/lib)

LINK_DIRECTORIES(${VISIT_LIBRARY_DIR} ${PIDX_LIBRARY_DIR} )

ADD_LIBRARY(IIDXDatabase ${LIBI_SOURCES})
TARGET_LINK_LIBRARIES(IIDXDatabase visitcommon)
SET(INSTALLTARGETS IIDXDatabase)

IF(NOT VISIT_ENGINE_ONLY AND NOT VISIT_DBIO_ONLY)
    ADD_LIBRARY(MIDXDatabase ${LIBM_SOURCES})
    TARGET_LINK_LIBRARIES(MIDXDatabase visitcommon avtdbatts avtdatabase_ser ${PIDX_LIBRARIES} vtkIOXML )
    ADD_TARGET_DEFINITIONS(MIDXDatabase MDSERVER)
    SET(INSTALLTARGETS ${INSTALLTARGETS} MIDXDatabase)
ENDIF(NOT VISIT_ENGINE_ONLY AND NOT VISIT_DBIO_ONLY)

ADD_LIBRARY(EIDXDatabase_ser ${LIBE_SOURCES})
TARGET_LINK_LIBRARIES(EIDXDatabase_ser visitcommon avtdatabase_ser avtpipeline_ser ${PIDX_LIBRARIES} vtkIOXML )
ADD_TARGET_DEFINITIONS(EIDXDatabase_ser ENGINE)
SET(INSTALLTARGETS ${INSTALLTARGETS} EIDXDatabase_ser)

IF(VISIT_PARALLEL)
    ADD_PARALLEL_LIBRARY(EIDXDatabase_par ${LIBE_SOURCES})
    TARGET_LINK_LIBRARIES(EIDXDatabase_par visitcommon avtdatabase_par avtpipeline_par ${PIDX_LIBRARIES} vtkIOXML )
    ADD_TARGET_DEFINITIONS(EIDXDatabase_par ENGINE)
    SET(INSTALLTARGETS ${INSTALLTARGETS} EIDXDatabase_par)
ENDIF(VISIT_PARALLEL)

VISIT_INSTALL_DATABASE_PLUGINS(${INSTALLTARGETS})
VISIT_PLUGIN_TARGET_RTOD(databases ${INSTALLTARGETS})
VISIT_PLUGIN_TARGET_FOLDER(databases IDX ${INSTALLTARGETS})

