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

message(STATUS "Setting up module " system)

FILE(GLOB gensources
     "${PROJECT_BINARY_DIR}/src/system/*.cpp")

FILE(GLOB genheaders
     "${PROJECT_BINARY_DIR}/include/IMP/system/*.h")

include_directories(${ANN_INCLUDE_PATH}
        ${BOOST.FILESYSTEM_INCLUDE_PATH}
        ${BOOST.PROGRAMOPTIONS_INCLUDE_PATH}
        ${BOOST.RANDOM_INCLUDE_PATH}
        ${BOOST.SYSTEM_INCLUDE_PATH}
        ${CGAL_INCLUDE_PATH}
        ${GPERFTOOLS_INCLUDE_PATH}
        ${LOG4CXX_INCLUDE_PATH}
        ${TCMALLOC_HEAPCHECKER_INCLUDE_PATH}
        ${TCMALLOC_HEAPPROFILER_INCLUDE_PATH})
link_directories(${ANN_LINK_PATH}
        ${BOOST.FILESYSTEM_LINK_PATH}
        ${BOOST.PROGRAMOPTIONS_LINK_PATH}
        ${BOOST.RANDOM_LINK_PATH}
        ${BOOST.SYSTEM_LINK_PATH}
        ${CGAL_LINK_PATH}
        ${GPERFTOOLS_LINK_PATH}
        ${LOG4CXX_LINK_PATH}
        ${TCMALLOC_HEAPCHECKER_LINK_PATH}
        ${TCMALLOC_HEAPPROFILER_LINK_PATH})
add_definitions("-DIMPSYSTEM_EXPORTS")

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

set(headers )

if(DEFINED IMP_SYSTEM_LIBRARY_EXTRA_SOURCES)
  set_source_files_properties(${IMP_SYSTEM_LIBRARY_EXTRA_SOURCES}
                              PROPERTIES GENERATED 1)
endif()

if(DEFINED IMP_system_IS_PER_CPP)
  set(sources )

  add_library(imp_system ${IMP_LIB_TYPE} ${gensources} ${genheaders}
              ${headers} ${sources}
              ${IMP_SYSTEM_LIBRARY_EXTRA_SOURCES}
              )
else()

  add_library(imp_system ${IMP_LIB_TYPE} ${gensources} ${genheaders}
              ${headers} ${PROJECT_BINARY_DIR}/src/system_all.cpp
              ${IMP_SYSTEM_LIBRARY_EXTRA_SOURCES}
              )

endif()
INSTALL(TARGETS imp_system DESTINATION ${CMAKE_INSTALL_LIBDIR})

if(DEFINED IMP_SYSTEM_LIBRARY_EXTRA_DEPENDENCIES)
  add_dependencies(imp_system ${IMP_SYSTEM_LIBRARY_EXTRA_DEPENDENCIES})
endif()

target_link_libraries(imp_system
                      ${IMP_BASE_LIBRARY}
${IMP_CGAL_LIBRARY}
${IMP_ALGEBRA_LIBRARY}
${IMP_KERNEL_LIBRARY}
                      ${BOOST.FILESYSTEM_LIBRARIES}
${BOOST.PROGRAMOPTIONS_LIBRARIES}
${BOOST.SYSTEM_LIBRARIES}
${GPERFTOOLS_LIBRARIES}
${TCMALLOC_HEAPPROFILER_LIBRARIES}
${TCMALLOC_HEAPCHECKER_LIBRARIES}
${LOG4CXX_LIBRARIES}
${BOOST.RANDOM_LIBRARIES}
${CGAL_LIBRARIES}
${ANN_LIBRARIES}
  )

set(IMP_SYSTEM_LIBRARY imp_system CACHE INTERNAL "" FORCE)
