Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
0d747daf
O
Opencv
项目概览
Greenplum
/
Opencv
11 个月 前同步成功
通知
7
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
Opencv
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0d747daf
编写于
4月 15, 2019
作者:
A
Alexander Alekhin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
cmake: use absolute library paths from 'pkgconfig'
- drop legacy check_module() macro - drop 'ALIASOF_'
上级
169dc9c3
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
132 addition
and
100 deletion
+132
-100
CMakeLists.txt
CMakeLists.txt
+11
-11
cmake/OpenCVFindLibsGUI.cmake
cmake/OpenCVFindLibsGUI.cmake
+17
-7
cmake/OpenCVFindLibsPerf.cmake
cmake/OpenCVFindLibsPerf.cmake
+2
-3
cmake/OpenCVFindLibsVideo.cmake
cmake/OpenCVFindLibsVideo.cmake
+52
-50
cmake/OpenCVUtils.cmake
cmake/OpenCVUtils.cmake
+44
-23
modules/highgui/CMakeLists.txt
modules/highgui/CMakeLists.txt
+2
-2
modules/imgcodecs/CMakeLists.txt
modules/imgcodecs/CMakeLists.txt
+2
-2
modules/videoio/CMakeLists.txt
modules/videoio/CMakeLists.txt
+2
-2
未找到文件。
CMakeLists.txt
浏览文件 @
0d747daf
...
...
@@ -1326,15 +1326,15 @@ endif()
if
(
WITH_GTK OR HAVE_GTK
)
if
(
HAVE_GTK3
)
status
(
" GTK+:"
"YES (ver
${
ALIASOF_gtk+-3.0
_VERSION
}
)"
)
status
(
" GTK+:"
"YES (ver
${
GTK3
_VERSION
}
)"
)
elseif
(
HAVE_GTK
)
status
(
" GTK+:"
"YES (ver
${
ALIASOF_gtk+-2.0
_VERSION
}
)"
)
status
(
" GTK+:"
"YES (ver
${
GTK2
_VERSION
}
)"
)
else
()
status
(
" GTK+:"
"NO"
)
endif
()
if
(
HAVE_GTK
)
status
(
" GThread :"
HAVE_GTHREAD THEN
"YES (ver
${
ALIASOF_gthread-2.0
_VERSION
}
)"
ELSE NO
)
status
(
" GtkGlExt:"
HAVE_GTKGLEXT THEN
"YES (ver
${
ALIASOF_gtkglext-1.0
_VERSION
}
)"
ELSE NO
)
status
(
" GThread :"
HAVE_GTHREAD THEN
"YES (ver
${
GTHREAD
_VERSION
}
)"
ELSE NO
)
status
(
" GtkGlExt:"
HAVE_GTKGLEXT THEN
"YES (ver
${
GTKGLEXT
_VERSION
}
)"
ELSE NO
)
endif
()
endif
()
...
...
@@ -1411,9 +1411,9 @@ endif()
if
(
WITH_1394 OR HAVE_DC1394
)
if
(
HAVE_DC1394_2
)
status
(
" DC1394:"
"YES (ver
${
ALIASOF_libdc1394-
2_VERSION
}
)"
)
status
(
" DC1394:"
"YES (ver
${
DC1394_
2_VERSION
}
)"
)
elseif
(
HAVE_DC1394
)
status
(
" DC1394:"
"YES (ver
${
ALIASOF_libdc
1394_VERSION
}
)"
)
status
(
" DC1394:"
"YES (ver
${
DC
1394_VERSION
}
)"
)
else
()
status
(
" DC1394:"
"NO"
)
endif
()
...
...
@@ -1435,7 +1435,7 @@ if(WITH_FFMPEG OR HAVE_FFMPEG)
endif
()
if
(
WITH_GSTREAMER OR HAVE_GSTREAMER
)
status
(
" GStreamer:"
HAVE_GSTREAMER THEN
"
"
ELSE NO
)
status
(
" GStreamer:"
HAVE_GSTREAMER THEN
"
YES"
ELSE NO
)
if
(
HAVE_GSTREAMER
)
status
(
" base:"
"YES (ver
${
GSTREAMER_BASE_VERSION
}
)"
)
status
(
" video:"
"YES (ver
${
GSTREAMER_VIDEO_VERSION
}
)"
)
...
...
@@ -1477,12 +1477,12 @@ if(APPLE)
endif
()
if
(
WITH_UNICAP OR HAVE_UNICAP
)
status
(
" UniCap:"
HAVE_UNICAP THEN
"YES (ver
${
ALIASOF
_libunicap_VERSION
}
)"
ELSE NO
)
status
(
" UniCap ucil:"
HAVE_UNICAP
_UCIL THEN
"YES (ver
${
ALIASOF
_libucil_VERSION
}
)"
ELSE NO
)
status
(
" UniCap:"
HAVE_UNICAP THEN
"YES (ver
${
UNICAP
_libunicap_VERSION
}
)"
ELSE NO
)
status
(
" UniCap ucil:"
HAVE_UNICAP
THEN
"YES (ver
${
UNICAP
_libucil_VERSION
}
)"
ELSE NO
)
endif
()
if
(
WITH_V4L OR WITH_LIBV4L OR HAVE_LIBV4L OR HAVE_CAMV4L OR HAVE_CAMV4L2 OR HAVE_VIDEOIO
)
status
(
" libv4l/libv4l2:"
HAVE_LIBV4L THEN
"
${
ALIASOF_libv4l1_VERSION
}
/
${
ALIASOF
_libv4l2_VERSION
}
"
ELSE
"NO"
)
status
(
" libv4l/libv4l2:"
HAVE_LIBV4L THEN
"
${
LIBV4L_libv4l1_VERSION
}
/
${
LIBV4L
_libv4l2_VERSION
}
"
ELSE
"NO"
)
ocv_build_features_string
(
v4l_status
IF HAVE_CAMV4L THEN
"linux/videodev.h"
IF HAVE_CAMV4L2 THEN
"linux/videodev2.h"
...
...
@@ -1505,7 +1505,7 @@ if(WITH_XIMEA OR HAVE_XIMEA)
endif
()
if
(
WITH_XINE OR HAVE_XINE
)
status
(
" Xine:"
HAVE_XINE THEN
"YES (ver
${
ALIASOF_libxine
_VERSION
}
)"
ELSE NO
)
status
(
" Xine:"
HAVE_XINE THEN
"YES (ver
${
XINE
_VERSION
}
)"
ELSE NO
)
endif
()
if
(
WITH_INTELPERC OR HAVE_INTELPERC
)
...
...
cmake/OpenCVFindLibsGUI.cmake
浏览文件 @
0d747daf
...
...
@@ -42,24 +42,34 @@ endif()
ocv_clear_vars
(
HAVE_GTK HAVE_GTK3 HAVE_GTHREAD HAVE_GTKGLEXT
)
if
(
WITH_GTK AND NOT HAVE_QT
)
if
(
NOT WITH_GTK_2_X
)
CHECK_MODULE
(
gtk+-3.0 HAVE_GTK3 HIGHGUI
)
ocv_check_modules
(
GTK3 gtk+-3.0
)
if
(
HAVE_GTK3
)
ocv_append_build_options
(
HIGHGUI GTK3
)
set
(
HAVE_GTK TRUE
)
endif
()
endif
()
if
(
NOT HAVE_GTK
)
CHECK_MODULE
(
gtk+-2.0 HAVE_GTK HIGHGUI
)
if
(
HAVE_GTK
AND
(
ALIASOF_gtk+-2.0_VERSION VERSION_LESS MIN_VER_GTK
))
message
(
FATAL_ERROR
"GTK support requires a minimum version of
${
MIN_VER_GTK
}
(
${
ALIASOF_gtk+-2.0_VERSION
}
found)"
)
set
(
HAVE_GTK FALSE
)
ocv_check_modules
(
GTK2 gtk+-2.0
)
if
(
HAVE_GTK2
)
if
(
GTK2_VERSION VERSION_LESS MIN_VER_GTK
)
message
(
FATAL_ERROR
"GTK support requires a minimum version of
${
MIN_VER_GTK
}
(
${
GTK2_VERSION
}
found)"
)
else
()
ocv_append_build_options
(
HIGHGUI GTK2
)
set
(
HAVE_GTK TRUE
)
endif
()
endif
()
endif
()
CHECK_MODULE
(
gthread-2.0 HAVE_GTHREAD HIGHGUI
)
ocv_check_modules
(
GTHREAD gthread-2.0
)
if
(
HAVE_GTK AND NOT HAVE_GTHREAD
)
message
(
FATAL_ERROR
"gthread not found. This library is required when building with GTK support"
)
else
()
ocv_append_build_options
(
HIGHGUI GTHREAD
)
endif
()
if
(
WITH_OPENGL AND NOT HAVE_GTK3
)
CHECK_MODULE
(
gtkglext-1.0 HAVE_GTKGLEXT HIGHGUI
)
ocv_check_modules
(
GTKGLEXT gtkglext-1.0
)
if
(
HAVE_GTKGLEXT
)
ocv_append_build_options
(
GTKGLEXT GTHREAD
)
endif
()
endif
()
endif
()
...
...
cmake/OpenCVFindLibsPerf.cmake
浏览文件 @
0d747daf
...
...
@@ -59,14 +59,13 @@ endif(WITH_EIGEN)
ocv_clear_vars
(
HAVE_CLP
)
if
(
WITH_CLP
)
if
(
UNIX
)
PKG_CHECK_MODULES
(
CLP clp
)
ocv_check_modules
(
CLP clp
)
if
(
CLP_FOUND
)
set
(
HAVE_CLP TRUE
)
if
(
NOT
${
CLP_INCLUDE_DIRS
}
STREQUAL
""
)
ocv_include_directories
(
${
CLP_INCLUDE_DIRS
}
)
endif
()
link_directories
(
${
CLP_LIBRARY_DIRS
}
)
set
(
OPENCV_LINKER_LIBS
${
OPENCV_LINKER_LIBS
}
${
CLP_LIBRARIES
}
)
list
(
APPEND OPENCV_LINKER_LIBS
${
CLP_LIBRARIES
}
)
endif
()
endif
()
...
...
cmake/OpenCVFindLibsVideo.cmake
浏览文件 @
0d747daf
...
...
@@ -27,50 +27,41 @@ if(WITH_GSTREAMER AND NOT WITH_GSTREAMER_0_10)
ENDIF
(
GSTREAMER_gstbase_LIBRARY AND GSTREAMER_gstvideo_LIBRARY AND GSTREAMER_gstapp_LIBRARY AND GSTREAMER_gstpbutils_LIBRARY AND GSTREAMER_gstriff_LIBRARY
)
else
(
WIN32
)
CHECK_MODULE
(
gstreamer-base-1.0 HAVE_GSTREAMER_BASE VIDEOIO
)
CHECK_MODULE
(
gstreamer-video-1.0 HAVE_GSTREAMER_VIDEO VIDEOIO
)
CHECK_MODULE
(
gstreamer-app-1.0 HAVE_GSTREAMER_APP VIDEOIO
)
CHECK_MODULE
(
gstreamer-riff-1.0 HAVE_GSTREAMER_RIFF VIDEOIO
)
CHECK_MODULE
(
gstreamer-pbutils-1.0 HAVE_GSTREAMER_PBUTILS VIDEOIO
)
if
(
HAVE_GSTREAMER_BASE AND HAVE_GSTREAMER_VIDEO AND HAVE_GSTREAMER_APP AND HAVE_GSTREAMER_RIFF AND HAVE_GSTREAMER_PBUTILS
)
ocv_check_modules
(
GSTREAMER-1.0 gstreamer-base-1.0 gstreamer-video-1.0 gstreamer-app-1.0 gstreamer-riff-1.0 gstreamer-pbutils-1.0
)
if
(
HAVE_GSTREAMER-1.0
)
set
(
HAVE_GSTREAMER TRUE
)
set
(
GSTREAMER_BASE_VERSION
${
ALIASOF_gstreamer-base-1.0_VERSION
}
)
set
(
GSTREAMER_VIDEO_VERSION
${
ALIASOF_gstreamer-video-1.0_VERSION
}
)
set
(
GSTREAMER_APP_VERSION
${
ALIASOF_gstreamer-app-1.0_VERSION
}
)
set
(
GSTREAMER_RIFF_VERSION
${
ALIASOF_gstreamer-riff-1.0_VERSION
}
)
set
(
GSTREAMER_PBUTILS_VERSION
${
ALIASOF_gstreamer-pbutils-1.0_VERSION
}
)
ocv_append_build_options
(
VIDEOIO GSTREAMER-1.0
)
set
(
GSTREAMER_BASE_VERSION
${
GSTREAMER-1.0_gstreamer-base-1.0_VERSION
}
)
set
(
GSTREAMER_VIDEO_VERSION
${
GSTREAMER-1.0_gstreamer-video-1.0_VERSION
}
)
set
(
GSTREAMER_APP_VERSION
${
GSTREAMER-1.0_gstreamer-app-1.0_VERSION
}
)
set
(
GSTREAMER_RIFF_VERSION
${
GSTREAMER-1.0_gstreamer-riff-1.0_VERSION
}
)
set
(
GSTREAMER_PBUTILS_VERSION
${
GSTREAMER-1.0_gstreamer-pbutils-1.0_VERSION
}
)
endif
()
endif
(
WIN32
)
endif
(
WITH_GSTREAMER AND NOT WITH_GSTREAMER_0_10
)
endif
()
# if gstreamer 1.x was not found, or we specified we wanted 0.10, try to find it
if
(
WITH_GSTREAMER AND NOT HAVE_GSTREAMER OR WITH_GSTREAMER_0_10
)
CHECK_MODULE
(
gstreamer-base-0.10 HAVE_GSTREAMER_BASE VIDEOIO
)
CHECK_MODULE
(
gstreamer-video-0.10 HAVE_GSTREAMER_VIDEO VIDEOIO
)
CHECK_MODULE
(
gstreamer-app-0.10 HAVE_GSTREAMER_APP VIDEOIO
)
CHECK_MODULE
(
gstreamer-riff-0.10 HAVE_GSTREAMER_RIFF VIDEOIO
)
CHECK_MODULE
(
gstreamer-pbutils-0.10 HAVE_GSTREAMER_PBUTILS VIDEOIO
)
if
(
HAVE_GSTREAMER_BASE AND HAVE_GSTREAMER_VIDEO AND HAVE_GSTREAMER_APP AND HAVE_GSTREAMER_RIFF AND HAVE_GSTREAMER_PBUTILS
)
set
(
HAVE_GSTREAMER TRUE
)
set
(
GSTREAMER_BASE_VERSION
${
ALIASOF_gstreamer-base-0.10_VERSION
}
)
set
(
GSTREAMER_VIDEO_VERSION
${
ALIASOF_gstreamer-video-0.10_VERSION
}
)
set
(
GSTREAMER_APP_VERSION
${
ALIASOF_gstreamer-app-0.10_VERSION
}
)
set
(
GSTREAMER_RIFF_VERSION
${
ALIASOF_gstreamer-riff-0.10_VERSION
}
)
set
(
GSTREAMER_PBUTILS_VERSION
${
ALIASOF_gstreamer-pbutils-0.10_VERSION
}
)
ocv_check_modules
(
GSTREAMER-0.10 gstreamer-base-0.10 gstreamer-video-0.10 gstreamer-app-0.10 gstreamer-riff-0.10 gstreamer-pbutils-0.10
)
if
(
HAVE_GSTREAMER-0.10
)
set
(
HAVE_GSTREAMER TRUE
)
ocv_append_build_options
(
VIDEOIO GSTREAMER-0.10
)
set
(
GSTREAMER_BASE_VERSION
${
GSTREAMER-0.10_gstreamer-base-0.10_VERSION
}
)
set
(
GSTREAMER_VIDEO_VERSION
${
GSTREAMER-0.10_gstreamer-video-0.10_VERSION
}
)
set
(
GSTREAMER_APP_VERSION
${
GSTREAMER-0.10_gstreamer-app-0.10_VERSION
}
)
set
(
GSTREAMER_RIFF_VERSION
${
GSTREAMER-0.10_gstreamer-riff-0.10_VERSION
}
)
set
(
GSTREAMER_PBUTILS_VERSION
${
GSTREAMER-0.10_gstreamer-pbutils-0.10_VERSION
}
)
endif
()
endif
(
WITH_GSTREAMER AND NOT HAVE_GSTREAMER OR WITH_GSTREAMER_0_10
)
endif
()
# --- unicap ---
ocv_clear_vars
(
HAVE_UNICAP
)
if
(
WITH_UNICAP
)
CHECK_MODULE
(
libunicap HAVE_UNICAP_ VIDEOIO
)
CHECK_MODULE
(
libucil HAVE_UNICAP_UCIL VIDEOIO
)
if
(
HAVE_UNICAP_ AND HAVE_UNICAP_UCIL
)
set
(
HAVE_UNICAP TRUE
)
ocv_check_modules
(
HAVE_UNICAP libunicap libucil
)
if
(
HAVE_UNICAP
)
ocv_append_build_options
(
VIDEOIO UNICAP
)
endif
()
endif
(
WITH_UNICAP
)
endif
()
# --- PvApi ---
ocv_clear_vars
(
HAVE_PVAPI
)
...
...
@@ -120,7 +111,7 @@ endif(WITH_GIGEAPI)
# --- Aravis SDK ---
ocv_clear_vars
(
HAVE_ARAVIS_API
)
if
(
WITH_ARAVIS
)
check_module
(
glib-2.0 HAVE_ARAVIS_GLIB VIDEOIO
)
ocv_check_modules
(
ARAVIS_GLIB glib-2.0
)
if
(
HAVE_ARAVIS_GLIB
)
find_path
(
ARAVIS_INCLUDE_PATH
"arv.h"
PATHS /usr/local /var /opt /usr ENV ProgramFiles ENV ProgramW6432
...
...
@@ -128,6 +119,7 @@ if(WITH_ARAVIS)
DOC
"The path to Aravis SDK headers"
)
find_library
(
ARAVIS_LIBRARIES NAMES
"aravis-0.6"
"aravis-0.4"
)
if
(
ARAVIS_LIBRARIES AND ARAVIS_INCLUDE_PATH
)
ocv_append_build_options
(
VIDEOIO ARAVIS_GLIB
)
set
(
HAVE_ARAVIS_API TRUE
)
endif
()
else
()
...
...
@@ -139,6 +131,7 @@ endif(WITH_ARAVIS)
ocv_clear_vars
(
HAVE_DC1394 HAVE_DC1394_2
)
if
(
WITH_1394
)
if
(
WIN32 AND MINGW
)
# TODO remove this, use pkgconfig from MinGW instead
find_path
(
CMU1394_INCLUDE_PATH
"/1394common.h"
PATH_SUFFIXES include
DOC
"The path to cmu1394 headers"
)
...
...
@@ -153,36 +146,42 @@ if(WITH_1394)
endif
()
endif
()
if
(
HAVE_DC1394_2
)
ocv_parse_pkg
(
"libdc1394-2"
"
${
DC1394_2_LIB_DIR
}
/pkgconfig"
"
"
)
ocv_parse_pkg
(
DC1394_2_VERSION
"libdc1394-2"
"
${
DC1394_2_LIB_DIR
}
/pkgconfig
"
)
ocv_include_directories
(
${
DC1394_2_INCLUDE_PATH
}
)
set
(
VIDEOIO_LIBRARIES
${
VIDEOIO_LIBRARIES
}
"
${
DC1394_2_LIB_DIR
}
/libdc1394.a"
"
${
CMU1394_LIB_DIR
}
/lib1394camera.a"
)
endif
(
HAVE_DC1394_2
)
else
(
WIN32 AND MINGW
)
CHECK_MODULE
(
libdc1394-2 HAVE_DC1394_2 VIDEOIO
)
if
(
NOT HAVE_DC1394_2
)
CHECK_MODULE
(
libdc1394 HAVE_DC1394 VIDEOIO
)
endif
()
endif
()
if
(
NOT HAVE_DC1394_2
)
ocv_check_modules
(
DC1394_2 libdc1394-2
)
if
(
HAVE_DC1394_2
)
ocv_append_build_options
(
VIDEOIO DC1394_2
)
else
()
ocv_check_modules
(
DC1394 libdc1394
)
if
(
HAVE_DC1394
)
ocv_append_build_options
(
VIDEOIO DC1394
)
endif
()
endif
()
endif
(
WIN32 AND MINGW
)
endif
(
WITH_1394
)
endif
()
endif
()
# --- xine ---
ocv_clear_vars
(
HAVE_XINE
)
if
(
WITH_XINE
)
CHECK_MODULE
(
libxine HAVE_XINE VIDEOIO
)
ocv_check_modules
(
XINE libxine
)
if
(
HAVE_XINE
)
ocv_append_build_options
(
VIDEOIO XINE
)
endif
()
endif
(
WITH_XINE
)
# --- V4L ---
ocv_clear_vars
(
HAVE_LIBV4L HAVE_CAMV4L HAVE_CAMV4L2 HAVE_VIDEOIO
)
if
(
WITH_V4L
)
if
(
WITH_LIBV4L
)
CHECK_MODULE
(
libv4l1 HAVE_LIBV4L1 VIDEOIO
)
CHECK_MODULE
(
libv4l2 HAVE_LIBV4L2 VIDEOIO
)
if
(
HAVE_LIBV4L1 AND HAVE_LIBV4L2
)
set
(
HAVE_LIBV4L YES
)
else
()
set
(
HAVE_LIBV4L NO
)
ocv_check_modules
(
LIBV4L libv4l1 libv4l2
)
if
(
HAVE_LIBV4L
)
ocv_append_build_options
(
VIDEOIO LIBV4L
)
endif
()
endif
()
CHECK_INCLUDE_FILE
(
linux/videodev.h HAVE_CAMV4L
)
...
...
@@ -323,8 +322,11 @@ endif()
# --- gPhoto2 ---
ocv_clear_vars
(
HAVE_GPHOTO2
)
if
(
WITH_GPHOTO2
)
CHECK_MODULE
(
libgphoto2 HAVE_GPHOTO2 VIDEOIO
)
endif
(
WITH_GPHOTO2
)
ocv_check_modules
(
GPHOTO2 libgphoto2
)
if
(
HAVE_GPHOTO2
)
ocv_append_build_options
(
VIDEOIO GPHOTO2
)
endif
()
endif
()
# --- VA & VA_INTEL ---
if
(
WITH_VA_INTEL
)
...
...
cmake/OpenCVUtils.cmake
浏览文件 @
0d747daf
...
...
@@ -701,7 +701,7 @@ endfunction()
# Usage: ocv_append_build_options(HIGHGUI FFMPEG)
macro
(
ocv_append_build_options var_prefix pkg_prefix
)
foreach
(
suffix INCLUDE_DIRS LIBRARIES LIBRARY_DIRS
)
foreach
(
suffix INCLUDE_DIRS LIBRARIES LIBRARY_DIRS
LINK_LIBRARIES
)
if
(
${
pkg_prefix
}
_
${
suffix
}
)
list
(
APPEND
${
var_prefix
}
_
${
suffix
}
${${
pkg_prefix
}
_
${
suffix
}}
)
list
(
REMOVE_DUPLICATES
${
var_prefix
}
_
${
suffix
}
)
...
...
@@ -739,7 +739,9 @@ macro(ocv_check_modules define)
endif
()
unset
(
${
define
}
_
${
__modname
}
_FOUND
)
endforeach
()
pkg_check_modules
(
${
define
}
${
ARGN
}
)
if
(
COMMAND pkg_check_modules
)
pkg_check_modules
(
${
define
}
${
ARGN
}
)
endif
()
if
(
${
define
}
_FOUND
)
set
(
HAVE_
${
define
}
1
)
endif
()
...
...
@@ -753,29 +755,47 @@ macro(ocv_check_modules define)
set
(
${
define
}
_
${
__modname
}
_FOUND 1
)
endif
()
endforeach
()
endmacro
()
# Macro that checks if module has been installed.
# After it adds module to build and define
# constants passed as second arg
macro
(
CHECK_MODULE module_name define cv_module
)
set
(
${
define
}
0
)
if
(
PKG_CONFIG_FOUND
)
set
(
ALIAS ALIASOF_
${
module_name
}
)
set
(
ALIAS_FOUND
${
ALIAS
}
_FOUND
)
set
(
ALIAS_INCLUDE_DIRS
${
ALIAS
}
_INCLUDE_DIRS
)
set
(
ALIAS_LIBRARY_DIRS
${
ALIAS
}
_LIBRARY_DIRS
)
set
(
ALIAS_LIBRARIES
${
ALIAS
}
_LIBRARIES
)
PKG_CHECK_MODULES
(
${
ALIAS
}
${
module_name
}
)
if
(
${
ALIAS_FOUND
}
)
set
(
${
define
}
1
)
ocv_append_build_options
(
${
cv_module
}
${
ALIAS
}
)
if
(
${
define
}
_FOUND AND
${
define
}
_LIBRARIES
)
if
(
${
define
}
_LINK_LIBRARIES_XXXXX
)
# CMake 3.12+: https://gitlab.kitware.com/cmake/cmake/merge_requests/2068
set
(
${
define
}
_LIBRARIES
"
${${
define
}
_LINK_LIBRARIES
}
"
CACHE INTERNAL
""
)
else
()
unset
(
_libs
)
# absolute paths
unset
(
_libs_paths
)
# -L args
foreach
(
flag
${${
define
}
_LDFLAGS
}
)
if
(
flag MATCHES
"^-L(.*)"
)
list
(
APPEND _libs_paths
${
CMAKE_MATCH_1
}
)
elseif
(
IS_ABSOLUTE
"
${
flag
}
"
)
list
(
APPEND _libs
"
${
flag
}
"
)
elseif
(
flag MATCHES
"^-l(.*)"
)
set
(
_lib
"
${
CMAKE_MATCH_1
}
"
)
if
(
_libs_paths
)
find_library
(
pkgcfg_lib_
${
define
}
_
${
_lib
}
NAMES
${
_lib
}
HINTS
${
_libs_paths
}
NO_DEFAULT_PATH
)
endif
()
find_library
(
pkgcfg_lib_
${
define
}
_
${
_lib
}
NAMES
${
_lib
}
)
mark_as_advanced
(
pkgcfg_lib_
${
define
}
_
${
_lib
}
)
if
(
pkgcfg_lib_
${
define
}
_
${
_lib
}
)
list
(
APPEND _libs
"
${
pkgcfg_lib_
${
define
}
_
${
_lib
}}
"
)
else
()
message
(
WARNING
"ocv_check_modules(
${
define
}
): can't find library '
${
_lib
}
'. Specify 'pkgcfg_lib_
${
define
}
_
${
_lib
}
' manualy"
)
list
(
APPEND _libs
"
${
_lib
}
"
)
endif
()
else
()
# -pthread
#message(WARNING "ocv_check_modules(${define}): unknown LDFLAG '${flag}'")
endif
()
endforeach
()
set
(
${
define
}
_LINK_LIBRARIES
"
${
_libs
}
"
)
set
(
${
define
}
_LIBRARIES
"
${
_libs
}
"
CACHE INTERNAL
""
)
unset
(
_lib
)
unset
(
_libs
)
unset
(
_libs_paths
)
endif
()
endif
()
endmacro
()
if
(
NOT DEFINED CMAKE_ARGC
)
# Guard CMake standalone invocations
# Use this option carefully, CMake's install() will install symlinks instead of real files
...
...
@@ -1290,11 +1310,12 @@ macro(ocv_parse_header2 LIBNAME HDR_PATH VARNAME)
endif
()
endmacro
()
# TODO remove this
# read single version info from the pkg file
macro
(
ocv_parse_pkg
LIBNAME PKG_PATH SCOPE
)
macro
(
ocv_parse_pkg
ver_varname LIBNAME PKG_PATH
)
if
(
EXISTS
"
${
PKG_PATH
}
/
${
LIBNAME
}
.pc"
)
file
(
STRINGS
"
${
PKG_PATH
}
/
${
LIBNAME
}
.pc"
line_to_parse REGEX
"^Version:[
\t
]+[0-9.]*.*$"
LIMIT_COUNT 1
)
STRING
(
REGEX REPLACE
".*Version: ([^ ]+).*"
"
\\
1"
ALIASOF_
${
LIBNAME
}
_VERSION
"
${
line_to_parse
}
"
)
STRING
(
REGEX REPLACE
".*Version: ([^ ]+).*"
"
\\
1"
${
ver_varname
}
"
${
line_to_parse
}
"
)
endif
()
endmacro
()
...
...
modules/highgui/CMakeLists.txt
浏览文件 @
0d747daf
...
...
@@ -128,8 +128,8 @@ elseif(HAVE_COCOA)
list
(
APPEND HIGHGUI_LIBRARIES
"-framework Cocoa"
)
endif
()
if
(
UNIX
)
#
these variables are set by CHECK_MODULE macro
if
(
TRUE
)
#
these variables are set by 'ocv_append_build_options(HIGHGUI ...)'
foreach
(
P
${
HIGHGUI_INCLUDE_DIRS
}
)
ocv_include_directories
(
${
P
}
)
endforeach
()
...
...
modules/imgcodecs/CMakeLists.txt
浏览文件 @
0d747daf
...
...
@@ -111,8 +111,8 @@ if(APPLE_FRAMEWORK)
list
(
APPEND IMGCODECS_LIBRARIES
"-framework UIKit"
)
endif
()
if
(
UNIX
)
#
these variables are set by CHECK_MODULE macro
if
(
TRUE
)
#
these variables are set by 'ocv_append_build_options(IMGCODECS ...)'
foreach
(
P
${
IMGCODECS_INCLUDE_DIRS
}
)
ocv_include_directories
(
${
P
}
)
endforeach
()
...
...
modules/videoio/CMakeLists.txt
浏览文件 @
0d747daf
...
...
@@ -233,8 +233,8 @@ if(IOS)
list
(
APPEND VIDEOIO_LIBRARIES
"-framework Accelerate"
"-framework AVFoundation"
"-framework CoreGraphics"
"-framework CoreImage"
"-framework CoreMedia"
"-framework CoreVideo"
"-framework QuartzCore"
"-framework UIKit"
)
endif
()
if
(
UNIX
)
#
these variables are set by CHECK_MODULE macro
if
(
TRUE
)
#
these variables are set by 'ocv_append_build_options(VIDEOIO ...)'
foreach
(
P
${
VIDEOIO_INCLUDE_DIRS
}
)
ocv_include_directories
(
${
P
}
)
endforeach
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录