1 # ----------------------------------------------------------------------------
\r
2 # CMake file for cv. See root CMakeLists.txt
\r
3 # ----------------------------------------------------------------------------
\r
6 file(GLOB lib_srcs "*.cpp")
\r
7 source_group("Src" FILES ${lib_srcs})
\r
9 add_definitions(-DCVAPI_EXPORTS)
\r
11 include_directories("${CMAKE_CURRENT_SOURCE_DIR}/../../include/opencv"
\r
12 "${CMAKE_CURRENT_SOURCE_DIR}"
\r
13 "${CMAKE_CURRENT_BINARY_DIR}")
\r
15 set(lib_hdr_names cv.h cv.hpp cvcompat.h cvtypes.h)
\r
17 foreach(h ${lib_hdr_names})
\r
18 list(APPEND lib_hdrs "${CMAKE_CURRENT_SOURCE_DIR}/../../include/opencv/${h}")
\r
20 source_group("Include\\External" FILES ${lib_hdrs})
\r
22 file(GLOB lib_int_hdrs "*.h*")
\r
23 source_group("Include\\Internal" FILES ${lib_int_hdrs})
\r
25 set(the_target "cv")
\r
27 add_library(${the_target} SHARED ${lib_srcs} ${lib_hdrs} ${lib_int_hdrs})
\r
29 if(PCHSupport_FOUND)
\r
30 set(pch_header ${CMAKE_CURRENT_SOURCE_DIR}/_cv.h)
\r
31 if(${CMAKE_GENERATOR} MATCHES "Visual*" OR ${CMAKE_GENERATOR} MATCHES "Xcode*")
\r
32 if(${CMAKE_GENERATOR} MATCHES "Visual*")
\r
33 set(${the_target}_pch "cvprecomp.cpp")
\r
35 add_native_precompiled_header(${the_target} ${pch_header})
\r
36 elseif(CMAKE_COMPILER_IS_GNUCXX AND ${CMAKE_GENERATOR} MATCHES ".*Makefiles")
\r
37 add_precompiled_header(${the_target} ${pch_header})
\r
41 # For dynamic link numbering convenions
\r
42 set_target_properties(${the_target} PROPERTIES
\r
43 VERSION ${OPENCV_VERSION}
\r
44 SOVERSION ${OPENCV_SOVERSION}
\r
45 OUTPUT_NAME "${the_target}${OPENCV_DLLVERSION}"
\r
48 # Additional target properties
\r
49 set_target_properties(${the_target} PROPERTIES
\r
50 DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}"
\r
51 ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib/"
\r
52 RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin/"
\r
55 # Add the required libraries for linking:
\r
56 target_link_libraries(${the_target} ${OPENCV_LINKER_LIBS} ${IPP_LIBS} cxcore)
\r
58 if(MSVC AND CMAKE_CROSSCOMPILING)
\r
59 set_target_properties(${the_target} PROPERTIES
\r
60 LINK_FLAGS "/NODEFAULTLIB:secchk"
\r
64 # Dependencies of this target:
\r
65 add_dependencies(${the_target} cxcore)
\r
67 install(TARGETS ${the_target}
\r
68 RUNTIME DESTINATION bin COMPONENT main
\r
69 LIBRARY DESTINATION lib COMPONENT main
\r
70 ARCHIVE DESTINATION lib COMPONENT main)
\r
72 install(FILES ${lib_hdrs}
\r
73 DESTINATION include/opencv
\r