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

project(IMP.multifit_tools)

imp_get_process_exit_code("setup_application multifit_tools" status ${CMAKE_BINARY_DIR}
                          COMMAND ${CMAKE_SOURCE_DIR}/tools/build/setup_application.py
                          --name=multifit_tools
                          --datapath=${IMP_DATAPATH}
                           --source=${CMAKE_SOURCE_DIR})
if(${status} EQUAL 0)
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}
        ${FFTW3_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}
        ${FFTW3_LINK_PATH}
        ${GPERFTOOLS_LINK_PATH}
        ${HDF5_LINK_PATH}
        ${RMF_LINK_PATH}
        ${TCMALLOC_HEAPCHECKER_LINK_PATH}
        ${TCMALLOC_HEAPPROFILER_LINK_PATH})
add_definitions("-DIMP_EXECUTABLE")



set(pybins ${CMAKE_SOURCE_DIR}/applications/multifit_tools/complex_to_anchor_graph.py
${CMAKE_SOURCE_DIR}/applications/multifit_tools/multifit.py)
foreach (pybin ${pybins})
  install(PROGRAMS ${pybin} DESTINATION ${CMAKE_INSTALL_BINDIR})
endforeach(pybin)

math(EXPR expensive_timeout "${IMP_TIMEOUT_FACTOR} * 120")

set(pytests ${CMAKE_SOURCE_DIR}/applications/multifit_tools/test/test_complex.py
${CMAKE_SOURCE_DIR}/applications/multifit_tools/test/expensive_test_3sfd_example.py)
foreach (test ${pytests})
  GET_FILENAME_COMPONENT(name ${test} NAME)
  add_test("IMP.multifit_tools-${name}" ${IMP_TEST_SETUP} python ${test})
  set_tests_properties("IMP.multifit_tools-${name}" PROPERTIES LABELS "IMP.multifit_tools;test")
  set_tests_properties("IMP.multifit_tools-${name}" PROPERTIES TIMEOUT ${expensive_timeout})
  set_tests_properties("IMP.multifit_tools-${name}" PROPERTIES COST 3)
endforeach(test)

if(IMP_DOXYGEN_FOUND)
# documentation

file(GLOB docs ${CMAKE_SOURCE_DIR}/applications/multifit_tools/*.dox
               ${CMAKE_SOURCE_DIR}/applications/multifit_tools/*.md)

add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/doxygen/multifit_tools/tags ${CMAKE_BINARY_DIR}/doc/html/multifit_tools/index.html
   COMMAND mkdir -p doc/html
   COMMAND ${IMP_DOXYGEN_EXECUTABLE} ../../doxygen/multifit_tools/Doxyfile
   COMMAND ${CMAKE_SOURCE_DIR}/tools/build/doxygen_patch_tags.py --module=multifit_tools --file=../../doxygen/multifit_tools/tags
   COMMAND ${CMAKE_SOURCE_DIR}/tools/build/doxygen_show_warnings.py --warn=../../doxygen/multifit_tools/warnings.txt
   DEPENDS ${IMP_multifit_DOC}
${IMP_base_DOC}
${IMP_cgal_DOC}
${IMP_algebra_DOC}
${IMP_kernel_DOC}
${IMP_display_DOC}
${IMP_score_functor_DOC}
${IMP_statistics_DOC}
${IMP_core_DOC}
${IMP_container_DOC}
${IMP_atom_DOC}
${IMP_em_DOC}
${IMP_rmf_DOC}
${IMP_domino_DOC} ${docs}
   WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/doxygen/multifit_tools/
   COMMENT "Running doxygen on multifit_tools")

add_custom_target("IMP.multifit_tools-doc" ALL DEPENDS ${CMAKE_BINARY_DIR}/doxygen/multifit_tools/tags)
set_property(TARGET "IMP.multifit_tools-doc" PROPERTY FOLDER "IMP.multifit_tools")

set(IMP_multifit_tools_DOC "IMP.multifit_tools-doc" CACHE INTERNAL "" FORCE)

set(IMP_DOC_DEPENDS ${IMP_DOC_DEPENDS} ${IMP_multifit_tools_DOC} CACHE INTERNAL "" FORCE)
endif(IMP_DOXYGEN_FOUND)

add_custom_target(IMP.multifit_tools DEPENDS
  ${IMP_multifit}
${IMP_base}
${IMP_cgal}
${IMP_algebra}
${IMP_kernel}
${IMP_display}
${IMP_score_functor}
${IMP_statistics}
${IMP_core}
${IMP_container}
${IMP_atom}
${IMP_em}
${IMP_rmf}
${IMP_domino}
  ${bins})
set_property(TARGET "IMP.multifit_tools" PROPERTY FOLDER "IMP.multifit_tools")

elseif(${status} EQUAL 1)
message("Application multifit_tools disabled")
else()
message(FATAL_ERROR "setup_application failed ${status}")
endif()
