@@ -48,17 +48,28 @@ set(cv2_generated_hdrs
48
48
"${CMAKE_CURRENT_BINARY_DIR} /pyopencv_generated_funcs.h"
49
49
"${CMAKE_CURRENT_BINARY_DIR} /pyopencv_generated_types.h"
50
50
"${CMAKE_CURRENT_BINARY_DIR} /pyopencv_generated_type_reg.h"
51
- "${CMAKE_CURRENT_BINARY_DIR} /pyopencv_generated_ns_reg.h" )
51
+ "${CMAKE_CURRENT_BINARY_DIR} /pyopencv_generated_ns_reg.h"
52
+ )
53
+
54
+ set (OPENCV_${PYTHON}_SIGNATURES_FILE "${CMAKE_CURRENT_BINARY_DIR} /pyopencv_signatures.json" CACHE INTERNAL "" )
55
+
56
+ set (cv2_generated_files ${cv2_generated_hdrs}
57
+ "${OPENCV_${PYTHON} _SIGNATURES_FILE}"
58
+ )
52
59
53
60
string (REPLACE ";" "\n " opencv_hdrs_ "${opencv_hdrs} " )
54
61
file (WRITE "${CMAKE_CURRENT_BINARY_DIR} /headers.txt" "${opencv_hdrs_} " )
55
62
add_custom_command (
56
- OUTPUT ${cv2_generated_hdrs}
57
- COMMAND ${PYTHON_DEFAULT_EXECUTABLE} "${PYTHON_SOURCE_DIR} /src2/gen2.py" ${CMAKE_CURRENT_BINARY_DIR} "${CMAKE_CURRENT_BINARY_DIR} /headers.txt" "${PYTHON} "
58
- DEPENDS ${PYTHON_SOURCE_DIR} /src2/gen2.py
59
- DEPENDS ${PYTHON_SOURCE_DIR} /src2/hdr_parser.py
60
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR} /headers.txt
61
- DEPENDS ${opencv_hdrs} )
63
+ OUTPUT ${cv2_generated_files}
64
+ COMMAND ${PYTHON_DEFAULT_EXECUTABLE} "${PYTHON_SOURCE_DIR} /src2/gen2.py" ${CMAKE_CURRENT_BINARY_DIR} "${CMAKE_CURRENT_BINARY_DIR} /headers.txt" "${PYTHON} "
65
+ DEPENDS ${PYTHON_SOURCE_DIR} /src2/gen2.py
66
+ DEPENDS ${PYTHON_SOURCE_DIR} /src2/hdr_parser.py
67
+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR} /headers.txt
68
+ DEPENDS ${opencv_hdrs}
69
+ COMMENT "Generate files for ${the_module} "
70
+ )
71
+
72
+ add_custom_target (gen_${the_module} DEPENDS ${cv2_generated_files} )
62
73
63
74
set (cv2_custom_hdr "${CMAKE_CURRENT_BINARY_DIR} /pyopencv_custom_headers.h" )
64
75
file (WRITE ${cv2_custom_hdr} "//user-defined headers\n " )
@@ -67,6 +78,7 @@ foreach(uh ${opencv_userdef_hdrs})
67
78
endforeach (uh )
68
79
69
80
ocv_add_library (${the_module} MODULE ${PYTHON_SOURCE_DIR} /src2/cv2.cpp ${cv2_generated_hdrs} ${opencv_userdef_hdrs} ${cv2_custom_hdr} )
81
+ add_dependencies (${the_module} gen_${the_module} )
70
82
71
83
if (APPLE )
72
84
set_target_properties (${the_module} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup" )
0 commit comments