macro(unset_all) foreach(var ${ARGN}) unset(${var} CACHE) endforeach() endmacro() ################### zlib - required if(BUILD_ZLIB) unset_all(ZLIB_FOUND) else() if(ANDROID) set(ZLIB_FOUND TRUE) set(ZLIB_LIBRARY z) set(ZLIB_LIBRARIES ${ZLIB_LIBRARY}) set(ZLIB_INCLUDE_DIR "") else() include(FindZLIB) endif() endif() if(NOT ZLIB_FOUND) unset_all(ZLIB_LIBRARY ZLIB_LIBRARIES ZLIB_INCLUDE_DIR) set(ZLIB_LIBRARY zlib) set(ZLIB_LIBRARIES ${ZLIB_LIBRARY}) add_subdirectory("${OpenCV_SOURCE_DIR}/3rdparty/zlib") set(ZLIB_INCLUDE_DIR "${${ZLIB_LIBRARY}_SOURCE_DIR}" "${${ZLIB_LIBRARY}_BINARY_DIR}") endif() ################### libtiff - optional (should be searched after zlib) if(WITH_TIFF) if(BUILD_TIFF) unset_all(TIFF_FOUND) else() include(FindTIFF) endif() endif() if(WITH_TIFF AND NOT TIFF_FOUND) unset_all(TIFF_LIBRARY TIFF_LIBRARIES TIFF_INCLUDE_DIR) set(TIFF_LIBRARY libtiff) set(TIFF_LIBRARIES ${TIFF_LIBRARY}) add_subdirectory("${OpenCV_SOURCE_DIR}/3rdparty/libtiff") set(TIFF_INCLUDE_DIR "${${TIFF_LIBRARY}_SOURCE_DIR}" "${${TIFF_LIBRARY}_BINARY_DIR}") endif() ################### libjpeg - optional if(WITH_JPEG) if(BUILD_JPEG) unset_all(JPEG_FOUND) else() include(FindJPEG) endif() endif() if(WITH_JPEG AND NOT JPEG_FOUND) unset_all(JPEG_LIBRARY JPEG_LIBRARIES JPEG_INCLUDE_DIR) set(JPEG_LIBRARY libjpeg) set(JPEG_LIBRARIES ${JPEG_LIBRARY}) add_subdirectory("${OpenCV_SOURCE_DIR}/3rdparty/libjpeg") set(JPEG_INCLUDE_DIR "${${JPEG_LIBRARY}_SOURCE_DIR}") endif() ################### libjasper - optional (should be searched after libjpeg) if(WITH_JASPER) if(BUILD_JASPER) unset_all(JASPER_FOUND) else() include(FindJasper) endif() endif() if(WITH_JASPER AND NOT JASPER_FOUND) unset_all(JASPER_LIBRARY JASPER_LIBRARIES JASPER_INCLUDE_DIR) set(JASPER_LIBRARY libjasper) set(JASPER_LIBRARIES ${JASPER_LIBRARY}) add_subdirectory("${OpenCV_SOURCE_DIR}/3rdparty/libjasper") set(JASPER_INCLUDE_DIR "${${JASPER_LIBRARY}_SOURCE_DIR}") endif() ################### libpng - optional (should be searched after zlib) if(WITH_PNG) if(BUILD_PNG) unset_all(PNG_FOUND) else() 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() endif() endif() if(WITH_PNG AND NOT PNG_FOUND) unset_all(PNG_LIBRARY PNG_LIBRARIES PNG_INCLUDE_DIR PNG_PNG_INCLUDE_DIR HAVE_PNG_H HAVE_LIBPNG_PNG_H PNG_DEFINITIONS) set(PNG_LIBRARY libpng) set(PNG_LIBRARIES ${PNG_LIBRARY}) add_subdirectory("${OpenCV_SOURCE_DIR}/3rdparty/libpng") set(PNG_INCLUDE_DIR "${${PNG_LIBRARY}_SOURCE_DIR}") set(PNG_DEFINITIONS "") endif() ################### OpenEXR - optional if(WITH_OPENEXR) include("${OpenCV_SOURCE_DIR}/cmake/OpenCVFindOpenEXR.cmake") endif()