Refactored cmake for 3rdparty libs
This commit is contained in:
114
CMakeLists.txt
114
CMakeLists.txt
@@ -148,15 +148,12 @@ OCV_OPTION(BUILD_TESTS "Build accuracy & regression tests"
|
||||
OCV_OPTION(BUILD_WITH_DEBUG_INFO "Include debug info into debug libs" ON )
|
||||
OCV_OPTION(BUILD_WITH_STATIC_CRT "Enables use of staticaly linked CRT for staticaly linked OpenCV" ON IF MSVC )
|
||||
|
||||
# 3rdparty libs
|
||||
OCV_OPTION(BUILD_ZLIB "Build zlib from source instead of installed in the system" WIN32 OR IOS )
|
||||
|
||||
if(WIN32 OR ANDROID)
|
||||
set(OPENCV_BUILD_3RDPARTY_LIBS TRUE CACHE INTERNAL "Build 3rd party libraries")
|
||||
else()
|
||||
# Build 3rdparty libraries under unix
|
||||
set(OPENCV_BUILD_3RDPARTY_LIBS FALSE CACHE BOOL "Build 3rd party libraries")
|
||||
endif()
|
||||
# 3rd party libs
|
||||
OCV_OPTION(BUILD_ZLIB "Build zlib from source" WIN32 OR IOS )
|
||||
OCV_OPTION(BUILD_TIFF "Build libtiff from source" WIN32 OR IOS OR ANDROID )
|
||||
OCV_OPTION(BUILD_JASPER "Build libjasper from source" WIN32 OR IOS OR ANDROID )
|
||||
OCV_OPTION(BUILD_JPEG "Build libjpeg from source" WIN32 OR IOS OR ANDROID )
|
||||
OCV_OPTION(BUILD_PNG "Build libpng from source" WIN32 OR IOS OR ANDROID )
|
||||
|
||||
# OpenCV installation options
|
||||
# ===================================================
|
||||
@@ -424,75 +421,9 @@ if(UNIX)
|
||||
add_definitions(-DHAVE_ALLOCA -DHAVE_ALLOCA_H -DHAVE_LIBPTHREAD -DHAVE_UNISTD_H)
|
||||
endif()
|
||||
endif()
|
||||
if (UNIX OR WIN32)
|
||||
if(NOT OPENCV_BUILD_3RDPARTY_LIBS)
|
||||
message(STATUS "NOT OPENCV_BUILD_3RDPARTY_LIBS **************************************************")
|
||||
if(WITH_PNG)
|
||||
include(FindPNG)
|
||||
if(PNG_FOUND)
|
||||
CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/png.h HAVE_PNG_H)
|
||||
CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/libpng/png.h HAVE_LIBPNG_PNG_H)
|
||||
endif()
|
||||
else()
|
||||
set(PNG_FOUND FALSE)
|
||||
endif()
|
||||
if(WITH_TIFF)
|
||||
include(FindTIFF)
|
||||
else()
|
||||
set(TIFF_FOUND FALSE)
|
||||
endif()
|
||||
if(WITH_JASPER)
|
||||
include(FindJasper)
|
||||
else()
|
||||
set(JASPER_FOUND FALSE)
|
||||
endif()
|
||||
if(WITH_JPEG)
|
||||
include(FindJPEG)
|
||||
else()
|
||||
set(JPEG_FOUND FALSE)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(WITH_PNG AND NOT PNG_FOUND)
|
||||
set(PNG_LIBRARIES libpng)
|
||||
endif()
|
||||
|
||||
if(WITH_JPEG AND NOT JPEG_FOUND)
|
||||
set(JPEG_LIBRARIES libjpeg)
|
||||
endif()
|
||||
|
||||
if(WITH_TIFF AND NOT TIFF_FOUND)
|
||||
set(TIFF_LIBRARIES libtiff)
|
||||
endif()
|
||||
|
||||
if(WITH_JASPER AND NOT JASPER_FOUND)
|
||||
set(JASPER_LIBRARIES libjasper)
|
||||
endif()
|
||||
|
||||
################### zlib - always required
|
||||
if(NOT BUILD_ZLIB)
|
||||
if(ANDROID)
|
||||
set(ZLIB_FOUND TRUE)
|
||||
set(ZLIB_LIBRARY z)
|
||||
set(ZLIB_INCLUDE_DIR "")
|
||||
else()
|
||||
include(FindZLIB)
|
||||
endif()
|
||||
else()
|
||||
set(ZLIB_FOUND FALSE)
|
||||
endif()
|
||||
|
||||
if(NOT ZLIB_FOUND)
|
||||
set(ZLIB_LIBRARY zlib)
|
||||
add_subdirectory(3rdparty/zlib)
|
||||
set(ZLIB_INCLUDE_DIR "${OpenCV_SOURCE_DIR}/3rdparty/zlib" "${${ZLIB_LIBRARY}_BINARY_DIR}")
|
||||
endif()
|
||||
|
||||
################### OpenEXR
|
||||
if(WITH_OPENEXR)
|
||||
include(cmake/OpenCVFindOpenEXR.cmake)
|
||||
endif()
|
||||
# IO libraries
|
||||
include(cmake/OpenCVIOLibs.cmake REQUIRED)
|
||||
|
||||
#################### LATEX for dpf documentation ##################
|
||||
if(BUILD_DOCS)
|
||||
@@ -791,13 +722,30 @@ status(" OpenGL support:" HAVE_OPENGL THEN YES ELSE NO)
|
||||
# media
|
||||
status("")
|
||||
status(" Media I/O: ")
|
||||
status(" ZLib:" ZLIB_FOUND THEN "${ZLIB_FOUND} - ${ZLIB_LIBRARY}" ELSE build)
|
||||
status(" JPEG:" NOT WITH_JPEG OR JPEG_FOUND THEN ${JPEG_FOUND} ELSE build)
|
||||
status(" PNG:" NOT WITH_PNG OR PNG_FOUND THEN ${PNG_FOUND} ELSE build)
|
||||
status(" TIFF:" NOT WITH_TIFF OR TIFF_FOUND THEN ${TIFF_FOUND} ELSE build)
|
||||
status(" JPEG 2000:" NOT WITH_JASPER OR JASPER_FOUND THEN ${JASPER_FOUND} ELSE build)
|
||||
status(" OpenEXR:" WITH_OPENEXR AND OPENEXR_FOUND THEN YES ELSE NO)
|
||||
status(" ZLib:" ZLIB_FOUND THEN "${ZLIB_LIBRARY}" ELSE build)
|
||||
|
||||
if(WITH_JPEG)
|
||||
status(" JPEG:" JPEG_FOUND THEN "${JPEG_LIBRARY}" ELSE build)
|
||||
else()
|
||||
status(" JPEG:" "NO")
|
||||
endif()
|
||||
if(WITH_PNG)
|
||||
status(" PNG:" PNG_FOUND THEN "${PNG_LIBRARY}" ELSE build)
|
||||
else()
|
||||
status(" PNG:" "NO")
|
||||
endif()
|
||||
if(WITH_TIFF)
|
||||
status(" TIFF:" TIFF_FOUND THEN "${TIFF_LIBRARY}" ELSE build)
|
||||
else()
|
||||
status(" TIFF:" "NO")
|
||||
endif()
|
||||
if(WITH_JASPER)
|
||||
status(" JPEG 2000:" JASPER_FOUND THEN "${JASPER_LIBRARY}" ELSE build)
|
||||
else()
|
||||
status(" JPEG 2000:" "NO")
|
||||
endif()
|
||||
|
||||
status(" OpenEXR:" WITH_OPENEXR AND OPENEXR_FOUND THEN YES ELSE NO)
|
||||
status(" OpenNI:" HAVE_OPENNI THEN YES ELSE NO)
|
||||
status(" OpenNI PrimeSensor Modules:"
|
||||
HAVE_OPENNI_PRIME_SENSOR_MODULE THEN YES ELSE NO)
|
||||
|
||||
Reference in New Issue
Block a user