Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
16368a27
Commit
16368a27
authored
Jun 21, 2017
by
Dmitry Kurtaev
Committed by
Vadim Pisarevsky
Jun 21, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cmake: add Halide support (#8794)
parent
5f20e802
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
72 additions
and
3 deletions
+72
-3
CMakeLists.txt
CMakeLists.txt
+22
-1
OpenCVDetectHalide.cmake
cmake/OpenCVDetectHalide.cmake
+45
-0
OpenCVUtils.cmake
cmake/OpenCVUtils.cmake
+1
-1
cvconfig.h.in
cmake/templates/cvconfig.h.in
+3
-0
CMakeLists.txt
modules/core/CMakeLists.txt
+1
-1
No files found.
CMakeLists.txt
View file @
16368a27
...
...
@@ -112,6 +112,12 @@ endif()
include
(
cmake/OpenCVUtils.cmake
)
if
(
OPENCV_CXX11
)
#cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
set
(
CMAKE_CXX_STANDARD 11
)
set
(
CMAKE_CXX_STANDARD_REQUIRED TRUE
)
endif
()
# must go before the project command
ocv_update
(
CMAKE_CONFIGURATION_TYPES
"Debug;Release"
CACHE STRING
"Configs"
FORCE
)
if
(
DEFINED CMAKE_BUILD_TYPE
)
...
...
@@ -212,6 +218,7 @@ OCV_OPTION(WITH_GSTREAMER_0_10 "Enable Gstreamer 0.10 support (instead of 1.x)"
OCV_OPTION
(
WITH_GTK
"Include GTK support"
ON
IF
(
UNIX AND NOT APPLE AND NOT ANDROID
)
)
OCV_OPTION
(
WITH_GTK_2_X
"Use GTK version 2"
OFF
IF
(
UNIX AND NOT APPLE AND NOT ANDROID
)
)
OCV_OPTION
(
WITH_IPP
"Include Intel IPP support"
NOT MINGW
IF
(
X86_64 OR X86
)
AND NOT WINRT
)
OCV_OPTION
(
WITH_HALIDE
"Include Halide support"
OFF
)
OCV_OPTION
(
WITH_JASPER
"Include JPEG2K support"
ON
IF
(
NOT IOS
)
)
OCV_OPTION
(
WITH_JPEG
"Include JPEG support"
ON
)
OCV_OPTION
(
WITH_WEBP
"Include WebP support"
ON
IF
(
NOT WINRT
)
)
...
...
@@ -295,6 +302,7 @@ OCV_OPTION(INSTALL_TESTS "Install accuracy and performance test binar
# OpenCV build options
# ===================================================
OCV_OPTION
(
OPENCV_CXX11
"Enable C++11 compilation mode"
OFF
)
OCV_OPTION
(
ENABLE_CCACHE
"Use ccache"
(
UNIX AND NOT IOS
AND
(
CMAKE_GENERATOR MATCHES
"Makefile"
OR CMAKE_GENERATOR MATCHES
"Ninja"
))
)
OCV_OPTION
(
ENABLE_PRECOMPILED_HEADERS
"Use precompiled headers"
ON
IF
(
NOT IOS AND NOT CMAKE_CROSSCOMPILING
)
)
OCV_OPTION
(
ENABLE_SOLUTION_FOLDERS
"Solution folder in Visual Studio or in other IDEs"
(
MSVC_IDE OR CMAKE_GENERATOR MATCHES Xcode
)
)
...
...
@@ -623,6 +631,11 @@ if(WITH_OPENCL)
include
(
cmake/OpenCVDetectOpenCL.cmake
)
endif
()
# --- Halide ---
if
(
WITH_HALIDE
)
include
(
cmake/OpenCVDetectHalide.cmake
)
endif
()
# --- DirectX ---
if
(
WITH_DIRECTX
)
include
(
cmake/OpenCVDetectDirectX.cmake
)
...
...
@@ -768,7 +781,9 @@ endif()
include
(
cmake/OpenCVGenHeaders.cmake
)
# Generate opencv.pc for pkg-config command
include
(
cmake/OpenCVGenPkgconfig.cmake
)
if
(
NOT OPENCV_SKIP_PKGCONFIG_GENERATION
)
include
(
cmake/OpenCVGenPkgconfig.cmake
)
endif
()
# Generate OpenCV.mk for ndk-build (Android build tool)
include
(
cmake/OpenCVGenAndroidMK.cmake
)
...
...
@@ -934,6 +949,9 @@ string(STRIP "${OPENCV_COMPILER_STR}" OPENCV_COMPILER_STR)
status
(
""
)
status
(
" C/C++:"
)
status
(
" Built as dynamic libs?:"
BUILD_SHARED_LIBS THEN YES ELSE NO
)
if
(
OPENCV_CXX11
)
status
(
" C++11:"
"YES"
)
endif
()
status
(
" C++ Compiler:"
${
OPENCV_COMPILER_STR
}
)
status
(
" C++ flags (Release):"
${
CMAKE_CXX_FLAGS
}
${
CMAKE_CXX_FLAGS_RELEASE
}
)
status
(
" C++ flags (Debug):"
${
CMAKE_CXX_FLAGS
}
${
CMAKE_CXX_FLAGS_DEBUG
}
)
...
...
@@ -1302,6 +1320,9 @@ endif(DEFINED WITH_LAPACK)
status
(
" Use Eigen:"
HAVE_EIGEN THEN
"YES (ver
${
EIGEN_WORLD_VERSION
}
.
${
EIGEN_MAJOR_VERSION
}
.
${
EIGEN_MINOR_VERSION
}
)"
ELSE NO
)
status
(
" Use Cuda:"
HAVE_CUDA THEN
"YES (ver
${
CUDA_VERSION_STRING
}
)"
ELSE NO
)
status
(
" Use OpenCL:"
HAVE_OPENCL THEN YES ELSE NO
)
if
(
WITH_HALIDE OR HAVE_HALIDE
)
status
(
" Use Halide:"
HAVE_HALIDE THEN
"YES (
${
HALIDE_LIBRARIES
}
${
HALIDE_INCLUDE_DIRS
}
)"
ELSE NO
)
endif
()
status
(
" Use OpenVX:"
HAVE_OPENVX THEN
"YES (
${
OPENVX_LIBRARIES
}
)"
ELSE
"NO"
)
status
(
" Use custom HAL:"
OpenCV_USED_HAL THEN
"YES (
${
OpenCV_USED_HAL
}
)"
ELSE
"NO"
)
...
...
cmake/OpenCVDetectHalide.cmake
0 → 100644
View file @
16368a27
cmake_minimum_required
(
VERSION 3.1
)
if
(
"
${
HALIDE_ROOT_DIR
}
"
STREQUAL
" "
)
unset
(
HALIDE_ROOT_DIR CACHE
)
endif
()
ocv_check_environment_variables
(
HALIDE_ROOT_DIR
)
set
(
HALIDE_ROOT_DIR
"
${
HALIDE_ROOT_DIR
}
"
CACHE PATH
"Halide root directory"
)
if
(
NOT HAVE_HALIDE
)
find_package
(
Halide QUIET
)
# Try CMake-based config files
if
(
Halide_FOUND
)
set
(
HALIDE_INCLUDE_DIRS
"
${
Halide_INCLUDE_DIRS
}
"
CACHE PATH
"Halide include directories"
FORCE
)
set
(
HALIDE_LIBRARIES
"
${
Halide_LIBRARIES
}
"
CACHE PATH
"Halide libraries"
FORCE
)
set
(
HAVE_HALIDE TRUE
)
endif
()
endif
()
if
(
NOT HAVE_HALIDE AND HALIDE_ROOT_DIR
)
# Try manual search
find_library
(
HALIDE_LIBRARY
NAMES Halide
HINTS
${
HALIDE_ROOT_DIR
}
/lib
# Unix
HINTS
${
HALIDE_ROOT_DIR
}
/lib/Release
# Win32
)
find_path
(
HALIDE_INCLUDE_DIR
NAMES Halide.h HalideRuntime.h
HINTS
${
HALIDE_ROOT_DIR
}
/include
)
if
(
HALIDE_LIBRARY AND HALIDE_INCLUDE_DIR
)
# TODO try_compile
set
(
HALIDE_INCLUDE_DIRS
"
${
HALIDE_INCLUDE_DIR
}
"
CACHE PATH
"Halide include directories"
FORCE
)
set
(
HALIDE_LIBRARIES
"
${
HALIDE_LIBRARY
}
"
CACHE PATH
"Halide libraries"
FORCE
)
set
(
HAVE_HALIDE TRUE
)
endif
()
if
(
NOT HAVE_HALIDE
)
ocv_clear_vars
(
HALIDE_LIBRARIES HALIDE_INCLUDE_DIRS CACHE
)
endif
()
endif
()
if
(
HAVE_HALIDE
)
include_directories
(
${
HALIDE_INCLUDE_DIRS
}
)
list
(
APPEND OPENCV_LINKER_LIBS
${
HALIDE_LIBRARIES
}
)
else
()
ocv_clear_vars
(
HALIDE_INCLUDE_DIRS HALIDE_LIBRARIES
)
endif
()
cmake/OpenCVUtils.cmake
View file @
16368a27
...
...
@@ -79,7 +79,7 @@ endmacro()
macro
(
ocv_check_environment_variables
)
foreach
(
_var
${
ARGN
}
)
if
(
NOT DEFINED
${
_var
}
AND DEFINED ENV{
${
_var
}
}
)
if
(
"
${${
_var
}}
"
STREQUAL
" "
AND DEFINED ENV{
${
_var
}
}
)
set
(
__value
"$ENV{
${
_var
}
}"
)
file
(
TO_CMAKE_PATH
"
${
__value
}
"
__value
)
# Assume that we receive paths
set
(
${
_var
}
"
${
__value
}
"
)
...
...
cmake/templates/cvconfig.h.in
View file @
16368a27
...
...
@@ -92,6 +92,9 @@
/* GTK+ 2.x toolkit */
#cmakedefine HAVE_GTK
/* Halide support */
#cmakedefine HAVE_HALIDE
/* Define to 1 if you have the <inttypes.h> header file. */
#cmakedefine HAVE_INTTYPES_H 1
...
...
modules/core/CMakeLists.txt
View file @
16368a27
...
...
@@ -35,7 +35,7 @@ ocv_glob_module_sources(SOURCES "${OPENCV_MODULE_opencv_core_BINARY_DIR}/version
ocv_module_include_directories
(
${
the_module
}
${
ZLIB_INCLUDE_DIRS
}
${
OPENCL_INCLUDE_DIRS
}
${
CPUFEATURES_INCLUDE_DIRS
}
)
ocv_create_module
(
${
extra_libs
}
)
ocv_target_link_libraries
(
${
the_module
}
${
ZLIB_LIBRARIES
}
"
${
OPENCL_LIBRARIES
}
"
"
${
VA_LIBRARIES
}
"
"
${
LAPACK_LIBRARIES
}
"
"
${
CPUFEATURES_LIBRARIES
}
"
)
ocv_target_link_libraries
(
${
the_module
}
${
ZLIB_LIBRARIES
}
"
${
OPENCL_LIBRARIES
}
"
"
${
VA_LIBRARIES
}
"
"
${
LAPACK_LIBRARIES
}
"
"
${
CPUFEATURES_LIBRARIES
}
"
"
${
HALIDE_LIBRARIES
}
"
)
ocv_add_accuracy_tests
()
ocv_add_perf_tests
()
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment