#\r
# ----------------------------------------------------------------------------\r
\r
-if (BUILD_EXAMPLES)\r
- project(c_samples)\r
+SET(OPENCV_C_SAMPLES_REQUIRED_DEPS opencv_core opencv_flann opencv_imgproc\r
+ opencv_highgui opencv_ml opencv_video opencv_objdetect opencv_photo opencv_nonfree\r
+ opencv_features2d opencv_calib3d opencv_legacy opencv_contrib)\r
\r
- if(CMAKE_COMPILER_IS_GNUCXX)\r
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-function")\r
+ocv_check_dependencies(${OPENCV_C_SAMPLES_REQUIRED_DEPS})\r
+\r
+if(BUILD_EXAMPLES AND OCV_DEPENDENCIES_FOUND)\r
+ project(c_samples)\r
+\r
+ if(CMAKE_COMPILER_IS_GNUCXX AND NOT ENABLE_NOISY_WARNINGS)\r
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-function")\r
+ endif()\r
+\r
+ ocv_include_modules(${OPENCV_C_SAMPLES_REQUIRED_DEPS})\r
+\r
+ # ---------------------------------------------\r
+ # Define executable targets\r
+ # ---------------------------------------------\r
+ MACRO(OPENCV_DEFINE_C_EXAMPLE name srcs)\r
+ set(the_target "example_${name}")\r
+ add_executable(${the_target} ${srcs})\r
+ target_link_libraries(${the_target} ${OPENCV_LINKER_LIBS} ${OPENCV_C_SAMPLES_REQUIRED_DEPS})\r
+\r
+ set_target_properties(${the_target} PROPERTIES\r
+ OUTPUT_NAME "${name}"\r
+ PROJECT_LABEL "(EXAMPLE) ${name}")\r
+\r
+ if(ENABLE_SOLUTION_FOLDERS)\r
+ set_target_properties(${the_target} PROPERTIES FOLDER "samples//c")\r
+ endif()\r
+\r
+ if(WIN32)\r
+ if(MSVC AND NOT BUILD_SHARED_LIBS)\r
+ set_target_properties(${the_target} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:atlthunk.lib /NODEFAULTLIB:atlsd.lib /DEBUG")\r
+ endif()\r
+ install(TARGETS ${the_target}\r
+ RUNTIME DESTINATION "samples/c" COMPONENT main)\r
endif()\r
- \r
- include_directories(\r
- "${CMAKE_SOURCE_DIR}/modules/core/include"\r
- "${CMAKE_SOURCE_DIR}/modules/imgproc/include"\r
- "${CMAKE_SOURCE_DIR}/modules/video/include"\r
- "${CMAKE_SOURCE_DIR}/modules/highgui/include"\r
- "${CMAKE_SOURCE_DIR}/modules/ml/include"\r
- "${CMAKE_SOURCE_DIR}/modules/calib3d/include"\r
- "${CMAKE_SOURCE_DIR}/modules/features2d/include"\r
- "${CMAKE_SOURCE_DIR}/modules/objdetect/include"\r
- "${CMAKE_SOURCE_DIR}/modules/legacy/include"\r
- "${CMAKE_SOURCE_DIR}/modules/contrib/include"\r
- )\r
-\r
- # ---------------------------------------------\r
- # Define executable targets\r
- # ---------------------------------------------\r
- MACRO(MY_DEFINE_EXAMPLE name srcs)\r
- set(the_target "example_${name}")\r
- add_executable(${the_target} ${srcs})\r
- set_target_properties(${the_target} PROPERTIES\r
- OUTPUT_NAME "${name}"\r
- PROJECT_LABEL "(EXAMPLE) ${name}")\r
- add_dependencies(${the_target} opencv_core opencv_imgproc opencv_highgui\r
- opencv_ml opencv_video opencv_objdetect opencv_features2d\r
- opencv_calib3d opencv_legacy opencv_contrib)\r
- target_link_libraries(${the_target} ${OPENCV_LINKER_LIBS} opencv_core\r
- opencv_imgproc opencv_highgui opencv_ml opencv_video opencv_objdetect\r
- opencv_features2d opencv_calib3d opencv_legacy opencv_contrib)\r
-\r
- if(WIN32)\r
- install(TARGETS ${the_target}\r
- RUNTIME DESTINATION "samples/c" COMPONENT main)\r
- endif()\r
- ENDMACRO(MY_DEFINE_EXAMPLE)\r
- \r
- file(GLOB cpp_samples RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp *.c)\r
- \r
- foreach(sample_filename ${cpp_samples})\r
- get_filename_component(sample ${sample_filename} NAME_WE)\r
- MY_DEFINE_EXAMPLE(${sample} ${sample_filename})\r
- endforeach()\r
-endif(BUILD_EXAMPLES)\r
+ ENDMACRO()\r
+\r
+ file(GLOB cpp_samples RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp *.c)\r
+\r
+ foreach(sample_filename ${cpp_samples})\r
+ get_filename_component(sample ${sample_filename} NAME_WE)\r
+ OPENCV_DEFINE_C_EXAMPLE(${sample} ${sample_filename})\r
+ endforeach()\r
+endif()\r
\r
if (INSTALL_C_EXAMPLES AND NOT WIN32)\r
- file(GLOB C_SAMPLES *.c *.cpp *.jpg *.png *.data makefile.* build_all.sh *.dsp *.cmd )\r
- install(FILES ${C_SAMPLES}\r
- DESTINATION share/opencv/samples/c\r
- PERMISSIONS OWNER_READ GROUP_READ WORLD_READ)\r
+ file(GLOB C_SAMPLES *.c *.cpp *.jpg *.png *.data makefile.* build_all.sh *.dsp *.cmd )\r
+ install(FILES ${C_SAMPLES}\r
+ DESTINATION share/OpenCV/samples/c\r
+ PERMISSIONS OWNER_READ GROUP_READ WORLD_READ)\r
endif ()\r
\r