# Autogenerated file, run tools/build/setup_cmake.py to regenerate

FILE(GLOB gensources
     "${CMAKE_BINARY_DIR}/src/domino/*.cpp")

FILE(GLOB genheaders
     "${CMAKE_BINARY_DIR}/include/IMP/domino/*.h")

include_directories(${ANN_INCLUDE_PATH}
        ${BOOST.FILESYSTEM_INCLUDE_PATH}
        ${BOOST.GRAPH_INCLUDE_PATH}
        ${BOOST.PROGRAMOPTIONS_INCLUDE_PATH}
        ${BOOST.RANDOM_INCLUDE_PATH}
        ${BOOST.REGEX_INCLUDE_PATH}
        ${BOOST.SYSTEM_INCLUDE_PATH}
        ${CGAL_INCLUDE_PATH}
        ${GPERFTOOLS_INCLUDE_PATH}
        ${HDF5_INCLUDE_PATH}
        ${RMF_INCLUDE_PATH}
        ${TCMALLOC_HEAPCHECKER_INCLUDE_PATH}
        ${TCMALLOC_HEAPPROFILER_INCLUDE_PATH})
link_directories(${ANN_LINK_PATH}
        ${BOOST.FILESYSTEM_LINK_PATH}
        ${BOOST.GRAPH_LINK_PATH}
        ${BOOST.PROGRAMOPTIONS_LINK_PATH}
        ${BOOST.RANDOM_LINK_PATH}
        ${BOOST.REGEX_LINK_PATH}
        ${BOOST.SYSTEM_LINK_PATH}
        ${CGAL_LINK_PATH}
        ${GPERFTOOLS_LINK_PATH}
        ${HDF5_LINK_PATH}
        ${RMF_LINK_PATH}
        ${TCMALLOC_HEAPCHECKER_LINK_PATH}
        ${TCMALLOC_HEAPPROFILER_LINK_PATH})
add_definitions("-DIMPDOMINO_EXPORTS")

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${DOMINO_CXX_FLAGS}")

set(headers ${CMAKE_SOURCE_DIR}/modules/domino/include/Assignment.h
${CMAKE_SOURCE_DIR}/modules/domino/include/BranchAndBoundSampler.h
${CMAKE_SOURCE_DIR}/modules/domino/include/DependencyScoreState.h
${CMAKE_SOURCE_DIR}/modules/domino/include/DiscreteSampler.h
${CMAKE_SOURCE_DIR}/modules/domino/include/DominoSampler.h
${CMAKE_SOURCE_DIR}/modules/domino/include/Order.h
${CMAKE_SOURCE_DIR}/modules/domino/include/Slice.h
${CMAKE_SOURCE_DIR}/modules/domino/include/Subset.h
${CMAKE_SOURCE_DIR}/modules/domino/include/analysis.h
${CMAKE_SOURCE_DIR}/modules/domino/include/assignment_containers.h
${CMAKE_SOURCE_DIR}/modules/domino/include/assignment_tables.h
${CMAKE_SOURCE_DIR}/modules/domino/include/domino_macros.h
${CMAKE_SOURCE_DIR}/modules/domino/include/interactive.h
${CMAKE_SOURCE_DIR}/modules/domino/include/particle_states.h
${CMAKE_SOURCE_DIR}/modules/domino/include/subset_filters.h
${CMAKE_SOURCE_DIR}/modules/domino/include/subset_graphs.h
${CMAKE_SOURCE_DIR}/modules/domino/include/subset_scores.h
${CMAKE_SOURCE_DIR}/modules/domino/include/utility.h
${CMAKE_SOURCE_DIR}/modules/domino/include/internal/inference_utility.h
${CMAKE_SOURCE_DIR}/modules/domino/include/internal/maximal_cliques.h
${CMAKE_SOURCE_DIR}/modules/domino/include/internal/tree_inference.h)

if(DEFINED IMP_DOMINO_LIBRARY_EXTRA_SOURCES)
  set_source_files_properties(${IMP_DOMINO_LIBRARY_EXTRA_SOURCES}
                              PROPERTIES GENERATED 1)
endif()
set_source_files_properties(${CMAKE_BINARY_DIR}/src/domino_config.cpp
  PROPERTIES GENERATED 1)

if(DEFINED IMP_domino_IS_PER_CPP)
  set(sources ${CMAKE_SOURCE_DIR}/modules/domino/src/Assignment.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/BranchAndBoundSampler.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/DependencyScoreState.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/DiscreteSampler.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/DominoSampler.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/Order.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/Slice.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/Subset.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/analysis.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/assignment_containers.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/assignment_tables.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/interactive.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/particle_states.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/subset_filters.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/subset_graphs.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/subset_scores.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/utility.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/internal/inference_utility.cpp
${CMAKE_SOURCE_DIR}/modules/domino/src/internal/tree_inference.cpp)
  add_library(IMP.domino-lib  ${IMP_LIB_TYPE} ${gensources} ${genheaders}
              ${headers} ${sources}
              ${CMAKE_BINARY_DIR}/src/domino_config.cpp
              ${IMP_DOMINO_LIBRARY_EXTRA_SOURCES}
              )
else()
  add_library(IMP.domino-lib  ${IMP_LIB_TYPE} ${gensources} ${genheaders}
              ${headers} ${CMAKE_BINARY_DIR}/src/domino_all.cpp
              ${CMAKE_BINARY_DIR}/src/domino_config.cpp
              ${IMP_DOMINO_LIBRARY_EXTRA_SOURCES}
              )
endif()
set_target_properties(IMP.domino-lib PROPERTIES
                      OUTPUT_NAME imp_domino)
set_property(TARGET "IMP.domino-lib" PROPERTY FOLDER "IMP.domino")

INSTALL(TARGETS IMP.domino-lib DESTINATION ${CMAKE_INSTALL_LIBDIR})

add_dependencies(IMP.domino-lib IMP.domino-version)

if(DEFINED IMP_DOMINO_LIBRARY_EXTRA_DEPENDENCIES)
  add_dependencies(IMP.domino-lib ${IMP_DOMINO_LIBRARY_EXTRA_DEPENDENCIES})
endif()

target_link_libraries(IMP.domino-lib ${imp_domino_libs})

set(IMP_domino_LIBRARY IMP.domino-lib CACHE INTERNAL "" FORCE)
