@@ -86,8 +86,10 @@ if (POLICY CMP0042)
86
86
cmake_policy (SET CMP0042 OLD )
87
87
endif ()
88
88
89
+ include (cmake/OpenCVUtils.cmake )
90
+
89
91
# must go before the project command
90
- set (CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "Configs" FORCE )
92
+ ocv_update (CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "Configs" FORCE )
91
93
if (DEFINED CMAKE_BUILD_TYPE )
92
94
set_property ( CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS ${CMAKE_CONFIGURATION_TYPES} )
93
95
endif ()
@@ -100,8 +102,6 @@ if(MSVC)
100
102
set (CMAKE_USE_RELATIVE_PATHS ON CACHE INTERNAL "" FORCE )
101
103
endif ()
102
104
103
- include (cmake/OpenCVUtils.cmake )
104
-
105
105
ocv_cmake_eval (DEBUG_PRE ONCE )
106
106
107
107
ocv_clear_vars (OpenCVModules_TARGETS )
@@ -304,50 +304,50 @@ include(cmake/OpenCVVersion.cmake)
304
304
# ----------------------------------------------------------------------------
305
305
306
306
# Save libs and executables in the same place
307
- set (EXECUTABLE_OUTPUT_PATH "${CMAKE_BINARY_DIR} /bin" CACHE PATH "Output directory for applications" )
307
+ set (EXECUTABLE_OUTPUT_PATH "${CMAKE_BINARY_DIR} /bin" CACHE PATH "Output directory for applications" )
308
308
309
- if (ANDROID )
310
- if (ANDROID_ABI MATCHES "NEON" )
309
+ if (ANDROID )
310
+ if (ANDROID_ABI MATCHES "NEON" )
311
311
set (ENABLE_NEON ON )
312
312
endif ()
313
- if (ANDROID_ABI MATCHES "VFPV3" )
313
+ if (ANDROID_ABI MATCHES "VFPV3" )
314
314
set (ENABLE_VFPV3 ON )
315
315
endif ()
316
316
endif ()
317
317
318
318
if (ANDROID OR WIN32 )
319
- set (OPENCV_DOC_INSTALL_PATH doc )
319
+ ocv_update (OPENCV_DOC_INSTALL_PATH doc )
320
320
else ()
321
- set (OPENCV_DOC_INSTALL_PATH share/OpenCV/doc )
321
+ ocv_update (OPENCV_DOC_INSTALL_PATH share/OpenCV/doc )
322
322
endif ()
323
323
324
324
if (WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows )
325
325
if (DEFINED OpenCV_RUNTIME AND DEFINED OpenCV_ARCH )
326
- set (OpenCV_INSTALL_BINARIES_PREFIX "${OpenCV_ARCH} /${OpenCV_RUNTIME} /" )
326
+ ocv_update (OpenCV_INSTALL_BINARIES_PREFIX "${OpenCV_ARCH} /${OpenCV_RUNTIME} /" )
327
327
else ()
328
328
message (STATUS "Can't detect runtime and/or arch" )
329
- set (OpenCV_INSTALL_BINARIES_PREFIX "" )
329
+ ocv_update (OpenCV_INSTALL_BINARIES_PREFIX "" )
330
330
endif ()
331
331
elseif (ANDROID )
332
- set (OpenCV_INSTALL_BINARIES_PREFIX "sdk/native/" )
332
+ ocv_update (OpenCV_INSTALL_BINARIES_PREFIX "sdk/native/" )
333
333
else ()
334
- set (OpenCV_INSTALL_BINARIES_PREFIX "" )
334
+ ocv_update (OpenCV_INSTALL_BINARIES_PREFIX "" )
335
335
endif ()
336
336
337
337
if (ANDROID )
338
- set (OPENCV_SAMPLES_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} samples/${ANDROID_NDK_ABI_NAME} " )
338
+ ocv_update (OPENCV_SAMPLES_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} samples/${ANDROID_NDK_ABI_NAME} " )
339
339
else ()
340
- set (OPENCV_SAMPLES_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} samples" )
340
+ ocv_update (OPENCV_SAMPLES_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} samples" )
341
341
endif ()
342
342
343
343
if (ANDROID )
344
- set (OPENCV_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} bin/${ANDROID_NDK_ABI_NAME} " )
344
+ ocv_update (OPENCV_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} bin/${ANDROID_NDK_ABI_NAME} " )
345
345
else ()
346
- set (OPENCV_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} bin" )
346
+ ocv_update (OPENCV_BIN_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} bin" )
347
347
endif ()
348
348
349
349
if (NOT OPENCV_TEST_INSTALL_PATH )
350
- set (OPENCV_TEST_INSTALL_PATH "${OPENCV_BIN_INSTALL_PATH} " )
350
+ ocv_update (OPENCV_TEST_INSTALL_PATH "${OPENCV_BIN_INSTALL_PATH} " )
351
351
endif ()
352
352
353
353
if (OPENCV_TEST_DATA_PATH )
@@ -356,66 +356,74 @@ endif()
356
356
357
357
if (OPENCV_TEST_DATA_PATH AND NOT OPENCV_TEST_DATA_INSTALL_PATH )
358
358
if (ANDROID )
359
- set (OPENCV_TEST_DATA_INSTALL_PATH "sdk/etc/testdata" )
359
+ ocv_update (OPENCV_TEST_DATA_INSTALL_PATH "sdk/etc/testdata" )
360
360
elseif (WIN32 )
361
- set (OPENCV_TEST_DATA_INSTALL_PATH "testdata" )
361
+ ocv_update (OPENCV_TEST_DATA_INSTALL_PATH "testdata" )
362
362
else ()
363
- set (OPENCV_TEST_DATA_INSTALL_PATH "share/OpenCV/testdata" )
363
+ ocv_update (OPENCV_TEST_DATA_INSTALL_PATH "share/OpenCV/testdata" )
364
364
endif ()
365
365
endif ()
366
366
367
367
if (ANDROID )
368
- set (LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /lib/${ANDROID_NDK_ABI_NAME} " )
369
- set (3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /3rdparty/lib/${ANDROID_NDK_ABI_NAME} " )
370
- set (OPENCV_LIB_INSTALL_PATH sdk/native/libs/${ANDROID_NDK_ABI_NAME} )
371
- set (OPENCV_3P_LIB_INSTALL_PATH sdk/native/3rdparty/libs/${ANDROID_NDK_ABI_NAME} )
372
- set (OPENCV_CONFIG_INSTALL_PATH sdk/native/jni )
373
- set (OPENCV_INCLUDE_INSTALL_PATH sdk/native/jni/include )
374
- set (OPENCV_SAMPLES_SRC_INSTALL_PATH samples/native )
375
- set (OPENCV_OTHER_INSTALL_PATH sdk/etc )
368
+ set (LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /lib/${ANDROID_NDK_ABI_NAME} " )
369
+ ocv_update (3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /3rdparty/lib/${ANDROID_NDK_ABI_NAME} " )
370
+ ocv_update (OPENCV_LIB_INSTALL_PATH sdk/native/libs/${ANDROID_NDK_ABI_NAME} )
371
+ ocv_update (OPENCV_3P_LIB_INSTALL_PATH sdk/native/3rdparty/libs/${ANDROID_NDK_ABI_NAME} )
372
+ ocv_update (OPENCV_CONFIG_INSTALL_PATH sdk/native/jni )
373
+ ocv_update (OPENCV_INCLUDE_INSTALL_PATH sdk/native/jni/include )
374
+ ocv_update (OPENCV_SAMPLES_SRC_INSTALL_PATH samples/native )
375
+ ocv_update (OPENCV_OTHER_INSTALL_PATH sdk/etc )
376
376
else ()
377
- set (LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /lib" )
378
- set (3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /3rdparty/lib${LIB_SUFFIX} " )
377
+ set (LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /lib" )
378
+ ocv_update (3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR} /3rdparty/lib${LIB_SUFFIX} " )
379
379
380
380
if (WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows )
381
381
if (OpenCV_STATIC )
382
- set (OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} staticlib${LIB_SUFFIX} " )
382
+ ocv_update (OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} staticlib${LIB_SUFFIX} " )
383
383
else ()
384
- set (OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} lib${LIB_SUFFIX} " )
384
+ ocv_update (OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} lib${LIB_SUFFIX} " )
385
385
endif ()
386
- set (OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} staticlib${LIB_SUFFIX} " )
387
- set (OPENCV_SAMPLES_SRC_INSTALL_PATH samples/native )
388
- set (OPENCV_JAR_INSTALL_PATH java )
389
- set (OPENCV_OTHER_INSTALL_PATH etc )
386
+ ocv_update (OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX} staticlib${LIB_SUFFIX} " )
387
+ ocv_update (OPENCV_SAMPLES_SRC_INSTALL_PATH samples/native )
388
+ ocv_update (OPENCV_JAR_INSTALL_PATH java )
389
+ ocv_update (OPENCV_OTHER_INSTALL_PATH etc )
390
+ ocv_update (OPENCV_CONFIG_INSTALL_PATH "" )
390
391
else ()
391
- set (OPENCV_LIB_INSTALL_PATH lib${LIB_SUFFIX} )
392
- set (OPENCV_3P_LIB_INSTALL_PATH share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH} )
393
- set (OPENCV_SAMPLES_SRC_INSTALL_PATH share/OpenCV/samples )
394
- set (OPENCV_JAR_INSTALL_PATH share/OpenCV/java )
395
- set (OPENCV_OTHER_INSTALL_PATH share/OpenCV )
396
- endif ()
397
- set (OPENCV_INCLUDE_INSTALL_PATH "include" )
398
-
399
- math (EXPR SIZEOF_VOID_P_BITS "8 * ${CMAKE_SIZEOF_VOID_P} " )
400
- if (LIB_SUFFIX AND NOT SIZEOF_VOID_P_BITS EQUAL LIB_SUFFIX )
401
- set (OPENCV_CONFIG_INSTALL_PATH lib${LIB_SUFFIX}/cmake/opencv )
402
- else ()
403
- set (OPENCV_CONFIG_INSTALL_PATH share/OpenCV )
392
+ ocv_update (OPENCV_LIB_INSTALL_PATH lib${LIB_SUFFIX} )
393
+ ocv_update (OPENCV_3P_LIB_INSTALL_PATH share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH} )
394
+ ocv_update (OPENCV_SAMPLES_SRC_INSTALL_PATH share/OpenCV/samples )
395
+ ocv_update (OPENCV_JAR_INSTALL_PATH share/OpenCV/java )
396
+ ocv_update (OPENCV_OTHER_INSTALL_PATH share/OpenCV )
397
+
398
+ if (NOT DEFINED OPENCV_CONFIG_INSTALL_PATH )
399
+ math (EXPR SIZEOF_VOID_P_BITS "8 * ${CMAKE_SIZEOF_VOID_P} " )
400
+ if (LIB_SUFFIX AND NOT SIZEOF_VOID_P_BITS EQUAL LIB_SUFFIX )
401
+ ocv_update (OPENCV_CONFIG_INSTALL_PATH lib${LIB_SUFFIX}/cmake/opencv )
402
+ else ()
403
+ ocv_update (OPENCV_CONFIG_INSTALL_PATH share/OpenCV )
404
+ endif ()
405
+ endif ()
404
406
endif ()
407
+ ocv_update (OPENCV_INCLUDE_INSTALL_PATH "include" )
405
408
endif ()
406
409
407
- set (CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX} /${OPENCV_LIB_INSTALL_PATH} " )
410
+ ocv_update (CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX} /${OPENCV_LIB_INSTALL_PATH} " )
408
411
set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE )
409
412
410
413
if (INSTALL_TO_MANGLED_PATHS )
411
414
set (OPENCV_INCLUDE_INSTALL_PATH ${OPENCV_INCLUDE_INSTALL_PATH} /opencv-${OPENCV_VERSION} )
412
- string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " OPENCV_3P_LIB_INSTALL_PATH "${OPENCV_3P_LIB_INSTALL_PATH} " )
413
- string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " OPENCV_SAMPLES_SRC_INSTALL_PATH "${OPENCV_SAMPLES_SRC_INSTALL_PATH} " )
414
- string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " OPENCV_CONFIG_INSTALL_PATH "${OPENCV_CONFIG_INSTALL_PATH} " )
415
- string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " OPENCV_DOC_INSTALL_PATH "${OPENCV_DOC_INSTALL_PATH} " )
416
- string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " OPENCV_JAR_INSTALL_PATH "${OPENCV_JAR_INSTALL_PATH} " )
417
- string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " OPENCV_TEST_DATA_INSTALL_PATH "${OPENCV_TEST_DATA_INSTALL_PATH} " )
418
- string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " OPENCV_OTHER_INSTALL_PATH "${OPENCV_OTHER_INSTALL_PATH} " )
415
+ foreach (v
416
+ OPENCV_3P_LIB_INSTALL_PATH
417
+ OPENCV_SAMPLES_SRC_INSTALL_PATH
418
+ OPENCV_CONFIG_INSTALL_PATH
419
+ OPENCV_DOC_INSTALL_PATH
420
+ OPENCV_JAR_INSTALL_PATH
421
+ OPENCV_TEST_DATA_INSTALL_PATH
422
+ OPENCV_OTHER_INSTALL_PATH
423
+ )
424
+ string (REPLACE "OpenCV" "OpenCV-${OPENCV_VERSION} " ${v} "${${v} }" )
425
+ string (REPLACE "opencv" "opencv-${OPENCV_VERSION} " ${v} "${${v} }" )
426
+ endforeach ()
419
427
endif ()
420
428
421
429
@@ -440,7 +448,7 @@ endif()
440
448
# ----------------------------------------------------------------------------
441
449
# Path for build/platform -specific headers
442
450
# ----------------------------------------------------------------------------
443
- set (OPENCV_CONFIG_FILE_INCLUDE_DIR "${CMAKE_BINARY_DIR} /" CACHE PATH "Where to create the platform-dependant cvconfig.h" )
451
+ ocv_update (OPENCV_CONFIG_FILE_INCLUDE_DIR "${CMAKE_BINARY_DIR} /" CACHE PATH "Where to create the platform-dependant cvconfig.h" )
444
452
ocv_include_directories (${OPENCV_CONFIG_FILE_INCLUDE_DIR} )
445
453
446
454
# ----------------------------------------------------------------------------
@@ -453,7 +461,7 @@ set(OPENCV_EXTRA_MODULES_PATH "" CACHE PATH "Where to look for additional OpenCV
453
461
# ----------------------------------------------------------------------------
454
462
find_host_package (Git QUIET )
455
463
456
- if (GIT_FOUND )
464
+ if (NOT DEFINED OPENCV_VCSVERSION AND GIT_FOUND )
457
465
execute_process (COMMAND "${GIT_EXECUTABLE} " describe --tags --always --dirty --match "[0-9].[0-9].[0-9]*"
458
466
WORKING_DIRECTORY "${OpenCV_SOURCE_DIR} "
459
467
OUTPUT_VARIABLE OPENCV_VCSVERSION
@@ -464,7 +472,7 @@ if(GIT_FOUND)
464
472
if (NOT GIT_RESULT EQUAL 0 )
465
473
set (OPENCV_VCSVERSION "unknown" )
466
474
endif ()
467
- else ( )
475
+ elseif ( NOT DEFINED OPENCV_VCSVERSION )
468
476
# We don't have git:
469
477
set (OPENCV_VCSVERSION "unknown" )
470
478
endif ()
0 commit comments