CMakeLists.txt 3.1 KB

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