#\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
+ ENDMACRO()\r
\r
- # ---------------------------------------------\r
- # Define executable targets\r
- # ---------------------------------------------\r
- MACRO(MY_DEFINE_EXAMPLE name srcs)\r
- add_executable(${name} ${srcs})\r
- set_target_properties(${name} PROPERTIES PROJECT_LABEL "(EXAMPLE) ${name}")\r
- add_dependencies(${name} opencv_core opencv_imgproc opencv_highgui opencv_ml opencv_video opencv_objdetect opencv_features2d opencv_calib3d opencv_legacy opencv_contrib)\r
- target_link_libraries(${name} ${OPENCV_LINKER_LIBS} opencv_core opencv_imgproc opencv_highgui opencv_ml opencv_video opencv_objdetect opencv_features2d opencv_calib3d opencv_legacy opencv_contrib)\r
+ file(GLOB cpp_samples RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp *.c)\r
\r
- if(WIN32)\r
- install(TARGETS ${name}\r
- RUNTIME DESTINATION "samples/c" COMPONENT main)\r
- endif()\r
- ENDMACRO(MY_DEFINE_EXAMPLE)\r
- \r
- MY_DEFINE_EXAMPLE(adaptiveskindetector adaptiveskindetector.cpp)\r
- MY_DEFINE_EXAMPLE(bgfg_codebook bgfg_codebook.cpp)\r
- MY_DEFINE_EXAMPLE(bgfg_segm bgfg_segm.cpp)\r
- MY_DEFINE_EXAMPLE(blobtrack_sample blobtrack_sample.cpp)\r
- MY_DEFINE_EXAMPLE(camshiftdemo camshiftdemo.c)\r
- MY_DEFINE_EXAMPLE(contours contours.c)\r
- MY_DEFINE_EXAMPLE(convert_cascade convert_cascade.c)\r
- MY_DEFINE_EXAMPLE(convexhull convexhull.c)\r
- MY_DEFINE_EXAMPLE(delaunay delaunay.c)\r
- MY_DEFINE_EXAMPLE(demhist demhist.c)\r
- MY_DEFINE_EXAMPLE(dft dft.c)\r
- MY_DEFINE_EXAMPLE(distrans distrans.c)\r
- MY_DEFINE_EXAMPLE(drawing drawing.c)\r
- MY_DEFINE_EXAMPLE(edge edge.c)\r
- MY_DEFINE_EXAMPLE(facedetect facedetect.cpp)\r
- MY_DEFINE_EXAMPLE(ffilldemo ffilldemo.c)\r
- MY_DEFINE_EXAMPLE(fback fback.cpp)\r
- MY_DEFINE_EXAMPLE(fback_c fback_c.c)\r
- MY_DEFINE_EXAMPLE(find_obj find_obj.cpp)\r
- MY_DEFINE_EXAMPLE(fitellipse fitellipse.cpp)\r
- MY_DEFINE_EXAMPLE(houghlines houghlines.c)\r
- MY_DEFINE_EXAMPLE(image image.cpp)\r
- MY_DEFINE_EXAMPLE(inpaint inpaint.cpp)\r
- MY_DEFINE_EXAMPLE(kalman kalman.c)\r
- MY_DEFINE_EXAMPLE(kmeans kmeans.c)\r
- MY_DEFINE_EXAMPLE(laplace laplace.c)\r
- MY_DEFINE_EXAMPLE(letter_recog letter_recog.cpp)\r
- MY_DEFINE_EXAMPLE(lkdemo lkdemo.c)\r
- MY_DEFINE_EXAMPLE(minarea minarea.c)\r
- MY_DEFINE_EXAMPLE(morphology morphology.c)\r
- MY_DEFINE_EXAMPLE(motempl motempl.c)\r
- MY_DEFINE_EXAMPLE(mushroom mushroom.cpp)\r
- MY_DEFINE_EXAMPLE(tree_engine tree_engine.cpp)\r
- MY_DEFINE_EXAMPLE(one_way_sample one_way_sample.cpp)\r
- MY_DEFINE_EXAMPLE(peopledetect peopledetect.cpp)\r
- MY_DEFINE_EXAMPLE(pyramid_segmentation pyramid_segmentation.c)\r
- MY_DEFINE_EXAMPLE(squares squares.c)\r
- MY_DEFINE_EXAMPLE(stereo_calib stereo_calib.cpp)\r
- MY_DEFINE_EXAMPLE(stereo_match stereo_match.cpp)\r
- MY_DEFINE_EXAMPLE(watershed watershed.cpp)\r
- MY_DEFINE_EXAMPLE(grabcut grabcut.cpp)\r
- MY_DEFINE_EXAMPLE(polar_transforms polar_transforms.c)\r
- MY_DEFINE_EXAMPLE(calibration calibration.cpp)\r
- MY_DEFINE_EXAMPLE(calibration_artificial calibration_artificial.cpp)\r
- MY_DEFINE_EXAMPLE(mser mser_sample.cpp)\r
- MY_DEFINE_EXAMPLE(find_obj_calonder find_obj_calonder.cpp)\r
- MY_DEFINE_EXAMPLE(find_obj_ferns find_obj_ferns.cpp)\r
-endif(BUILD_EXAMPLES)\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