CMakeLists.txt 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. include( corefiles.cmake)
  2. include( progfiles.cmake)
  3. #include( testfiles.cmake)
  4. #message(STATUS "nice_core_hdr:${NICE_CORE_HDR}")
  5. ADD_LIBRARY(nice_core ${NICE_BUILD_LIBS_STATIC_SHARED} ${NICE_CORE_HDR} ${NICE_CORE_SRC})
  6. TARGET_LINK_LIBRARIES(nice_core ${Boost_LIBRARIES} ${OPENGL_LIBRARY} ${GLUT_LIBRARY} ${QT_LIBRARIES})
  7. SET_PROPERTY(TARGET nice_core PROPERTY FOLDER "library")
  8. INSTALL(TARGETS nice_core DESTINATION lib)
  9. if(BUILD_CORE_PROGS)
  10. message(STATUS "building progs:")
  11. foreach(__progcpp ${NICE_PROGFILES_SRC})
  12. #message(STATUS "progcpp: ${__progcpp}")
  13. get_filename_component(__progname ${__progcpp} NAME_WE )
  14. message(STATUS "progname: ${__progname}")
  15. ADD_EXECUTABLE( ${__progname} ${__progcpp})
  16. TARGET_LINK_LIBRARIES(${__progname} nice_core)
  17. INSTALL(TARGETS ${__progname} DESTINATION bin)
  18. SET_PROPERTY(TARGET ${__progname} PROPERTY FOLDER "programs")
  19. endforeach()
  20. endif()
  21. #####
  22. set(the_module "nice_core")
  23. if(ENABLE_SOLUTION_FOLDERS)
  24. set_target_properties(${the_module} PROPERTIES FOLDER "modules")
  25. endif()
  26. set_target_properties(${the_module} PROPERTIES
  27. OUTPUT_NAME "${the_module}${OPENCV_DLLVERSION}"
  28. DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}"
  29. ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH}
  30. RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH}
  31. INSTALL_NAME_DIR lib
  32. )
  33. if(BUILD_SHARED_LIBS)
  34. if(MSVC)
  35. set_target_properties(${the_module} PROPERTIES DEFINE_SYMBOL CVAPI_EXPORTS)
  36. else()
  37. add_definitions(-DCVAPI_EXPORTS)
  38. endif()
  39. endif()
  40. if(MSVC)
  41. if(CMAKE_CROSSCOMPILING)
  42. set_target_properties(${the_module} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:secchk")
  43. endif()
  44. set_target_properties(${the_module} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:libc /DEBUG")
  45. endif()
  46. install(TARGETS ${the_module}
  47. RUNTIME DESTINATION bin COMPONENT main
  48. LIBRARY DESTINATION ${OPENCV_LIB_INSTALL_PATH} COMPONENT main
  49. ARCHIVE DESTINATION ${OPENCV_LIB_INSTALL_PATH} COMPONENT main
  50. )
  51. # # only "public" headers need to be installed
  52. # if(OPENCV_MODULE_${the_module}_HEADERS AND ";${OPENCV_MODULES_PUBLIC};" MATCHES ";${the_module};")
  53. # foreach(hdr ${OPENCV_MODULE_${the_module}_HEADERS})
  54. # string(REGEX REPLACE "^.*opencv2/" "opencv2/" hdr2 "${hdr}")
  55. # if(hdr2 MATCHES "^(opencv2/.*)/[^/]+.h(..)?$")
  56. # install(FILES ${hdr} DESTINATION "${OPENCV_INCLUDE_INSTALL_PATH}/${CMAKE_MATCH_1}" COMPONENT main)
  57. # endif()
  58. # endforeach()
  59. # endif()
  60. #############################################################
  61. # set(NICE_CURR_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
  62. # ocv_glob_modules(${NICE_CURR_DIR})
  63. #ocv_add_module(core)
  64. #ocv_module_include_directories()
  65. #ocv_glob_module_sources()
  66. #ocv_create_module()
  67. # set(NICE_CURR_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
  68. # ocv_glob_modules(${NICE_CURR_DIR})
  69. # ADD_EXECUTABLE(testConfig ./basics/progs/testConfig.cpp)
  70. # ADD_EXECUTABLE(testMemoryUsage ./basics/progs/testMemoryUsage.cpp)
  71. # TARGET_LINK_LIBRARIES(testConfig libnice_core_basics libnice_core_vector)
  72. # TARGET_LINK_LIBRARIES(testMemoryUsage libnice_core_basics)
  73. # INSTALL(TARGETS testConfig DESTINATION bin)
  74. # INSTALL(TARGETS testMemoryUsage DESTINATION bin)
  75. ###
  76. #CONFIGURE_FILE(
  77. # "CMakeDefinesConfig.h.in"
  78. # "${PROJECT_BINARY_DIR}/CMakeDefinesConfig.h"
  79. #)
  80. #include_directories("${PROJECT_BINARY_DIR}")