Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Tetragramm
GitHub Repository: Tetragramm/opencv
Path: blob/master/samples/java/tutorial_code/CMakeLists.txt
16337 views
1
# ----------------------------------------------------------------------------
2
# CMake file for Java tutorials compilation.
3
#
4
# ----------------------------------------------------------------------------
5
if(NOT ANT_EXECUTABLE OR NOT TARGET opencv_java)
6
return()
7
endif()
8
9
project(compile_java_tutorials)
10
11
set(curdir "${CMAKE_CURRENT_SOURCE_DIR}")
12
set(opencv_tutorial_java_bin_dir "${CMAKE_CURRENT_BINARY_DIR}/.compiled")
13
set(TUTORIALS_DIRS "")
14
15
file(GLOB children RELATIVE ${curdir} ${curdir}/*/*)
16
foreach(child ${children})
17
if(IS_DIRECTORY ${curdir}/${child})
18
file(GLOB contains_java_files "${child}/*.java")
19
if(contains_java_files)
20
list(APPEND TUTORIALS_DIRS ${child})
21
endif()
22
endif()
23
endforeach()
24
25
add_custom_target("${PROJECT_NAME}"
26
DEPENDS opencv_java
27
)
28
29
foreach(TUTORIAL_DIR ${TUTORIALS_DIRS})
30
get_filename_component(TUTORIAL_NAME ${TUTORIAL_DIR} NAME_WE)
31
add_custom_command(TARGET "${PROJECT_NAME}"
32
COMMAND ${ANT_EXECUTABLE} -q
33
-DocvJarDir="${OpenCV_BINARY_DIR}/bin"
34
-DsrcDir="${TUTORIAL_DIR}"
35
-DdstDir="${opencv_tutorial_java_bin_dir}/${TUTORIAL_NAME}"
36
WORKING_DIRECTORY "${curdir}"
37
COMMENT "Compile the tutorial: ${TUTORIAL_NAME}"
38
)
39
endforeach()
40
41