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

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}
        ${GSL_INCLUDE_PATH}
        ${HDF5_INCLUDE_PATH}
        ${OPENCV21_INCLUDE_PATH}
        ${OPENCV22_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}
        ${GSL_LINK_PATH}
        ${HDF5_LINK_PATH}
        ${OPENCV21_LINK_PATH}
        ${OPENCV22_LINK_PATH}
        ${RMF_LINK_PATH}
        ${TCMALLOC_HEAPCHECKER_LINK_PATH}
        ${TCMALLOC_HEAPPROFILER_LINK_PATH})

set(pytests ${CMAKE_SOURCE_DIR}/modules/em2d/examples/clustering_of_pdb_models.py
${CMAKE_SOURCE_DIR}/modules/em2d/examples/collision_cross_section.py
${CMAKE_SOURCE_DIR}/modules/em2d/examples/em_images_conversion.py
${CMAKE_SOURCE_DIR}/modules/em2d/examples/optimize_em2d_with_montecarlo.py
${CMAKE_SOURCE_DIR}/modules/em2d/examples/3sfd/config_example.py
${CMAKE_SOURCE_DIR}/modules/em2d/examples/3sfd/config_step_1.py
${CMAKE_SOURCE_DIR}/modules/em2d/examples/3sfd/config_step_2.py
${CMAKE_SOURCE_DIR}/modules/em2d/examples/3sfd/config_step_3.py)

math(EXPR timeout "${IMP_TIMEOUT_FACTOR} * 180")

if (${IMP_MAX_CHECKS} MATCHES "INTERNAL")
set(testarg "--run_quick_test" "--deprecation_exceptions")
else()
set(testarg "--deprecation_exceptions")
endif()

foreach (test ${pytests})
 GET_FILENAME_COMPONENT(name ${test} NAME)
 add_test("IMP.em2d-${name}" ${IMP_TEST_SETUP} python ${test} ${testarg})
 set_tests_properties("IMP.em2d-${name}" PROPERTIES LABELS "IMP.em2d;example")
 set_tests_properties("IMP.em2d-${name}" PROPERTIES TIMEOUT ${timeout})
 set_tests_properties("IMP.em2d-${name}" PROPERTIES COST 3)
  #add_dependencies(${name} RMFPython)
endforeach(test)

set(cpp_tests )

foreach (test ${cpp_tests})
   GET_FILENAME_COMPONENT(name ${test} NAME)
   GET_FILENAME_COMPONENT(name_we ${test} NAME_WE)
   add_executable("IMP.em2d-${name_we}" ${test})
   target_link_libraries("IMP.em2d-${name_we}"
    IMP.em2d-lib
    ${IMP_base_LIBRARY};${IMP_cgal_LIBRARY};${IMP_algebra_LIBRARY};${IMP_kernel_LIBRARY};${IMP_display_LIBRARY};${IMP_gsl_LIBRARY};${IMP_score_functor_LIBRARY};${IMP_statistics_LIBRARY};${IMP_core_LIBRARY};${IMP_container_LIBRARY};${IMP_atom_LIBRARY};${IMP_em_LIBRARY};${IMP_rmf_LIBRARY};${IMP_domino_LIBRARY}
    ${FFTW3_LIBRARIES};${BOOST.PROGRAMOPTIONS_LIBRARIES};${BOOST.FILESYSTEM_LIBRARIES};${OPENCV21_LIBRARIES};${OPENCV22_LIBRARIES};${BOOST.SYSTEM_LIBRARIES};${GPERFTOOLS_LIBRARIES};${TCMALLOC_HEAPPROFILER_LIBRARIES};${TCMALLOC_HEAPCHECKER_LIBRARIES};${BOOST.RANDOM_LIBRARIES};${CGAL_LIBRARIES};${ANN_LIBRARIES};${GSL_LIBRARIES};${BOOST.REGEX_LIBRARIES};${RMF_LIBRARIES};${BOOST.GRAPH_LIBRARIES};${HDF5_LIBRARIES})
   set_target_properties("IMP.em2d-${name_we}" PROPERTIES
                         RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/doc/examples/em2d/"
                         OUTPUT_NAME "${name_we}")
  set_property(TARGET "IMP.em2d-${name_we}" PROPERTY FOLDER "IMP.em2d")

   add_test("IMP.em2d-${name_we}" ${IMP_TEST_SETUP}
            "${CMAKE_BINARY_DIR}/doc/examples/em2d/${name_we}${CMAKE_EXECUTABLE_SUFFIX}" ${testarg})
   set_tests_properties("IMP.em2d-${name_we}" PROPERTIES LABELS "IMP.em2d;example")
   set_tests_properties("IMP.em2d-${name_we}" PROPERTIES TIMEOUT ${timeout})
   set_tests_properties("IMP.em2d-${name_we}" PROPERTIES COST 3)
   set(executables ${executables} "IMP.em2d-${name_we}")
endforeach(test)

set(IMP_em2d_EXAMPLES ${executables} CACHE INTERNAL "" FORCE)
