Warning, /frameworks/kimageformats/cmake/find-modules/FindLibRaw.cmake is written in an unsupported language. File is not indexed.

0001 # - Find LibRaw
0002 # Find the LibRaw library <https://www.libraw.org>
0003 # This module defines
0004 #  LibRaw_VERSION, the version string of LibRaw
0005 #  LibRaw_INCLUDE_DIR, where to find libraw/libraw.h
0006 #  LibRaw_LIBRARIES, the libraries needed to use LibRaw (non-thread-safe)
0007 #  LibRaw_r_LIBRARIES, the libraries needed to use LibRaw (thread-safe)
0008 #  LibRaw_DEFINITIONS, the definitions needed to use LibRaw (non-thread-safe)
0009 #  LibRaw_r_DEFINITIONS, the definitions needed to use LibRaw (thread-safe)
0010 #
0011 # SPDX-FileCopyrightText: 2013 Pino Toscano <pino at kde dot org>
0012 # SPDX-FileCopyrightText: 2013 Gilles Caulier <caulier dot gilles at gmail dot com>
0013 #
0014 # SPDX-License-Identifier: BSD-3-Clause
0015 
0016 FIND_PACKAGE(PkgConfig)
0017 
0018 IF(PKG_CONFIG_FOUND)
0019    PKG_CHECK_MODULES(PC_LIBRAW libraw)
0020    SET(LibRaw_DEFINITIONS ${PC_LIBRAW_CFLAGS_OTHER})
0021 
0022    PKG_CHECK_MODULES(PC_LIBRAW_R libraw_r)
0023    SET(LibRaw_r_DEFINITIONS ${PC_LIBRAW_R_CFLAGS_OTHER})   
0024 ENDIF()
0025 
0026 FIND_PATH(LibRaw_INCLUDE_DIR libraw/libraw.h
0027           HINTS
0028           ${PC_LIBRAW_INCLUDEDIR}
0029           ${PC_LibRaw_INCLUDE_DIRS}
0030          )
0031 
0032 FIND_LIBRARY(LibRaw_LIBRARIES NAMES raw
0033              HINTS
0034              ${PC_LIBRAW_LIBDIR}
0035              ${PC_LIBRAW_LIBRARY_DIRS}
0036             )
0037 
0038 FIND_LIBRARY(LibRaw_r_LIBRARIES NAMES raw_r
0039              HINTS
0040              ${PC_LIBRAW_R_LIBDIR}
0041              ${PC_LIBRAW_R_LIBRARY_DIRS}
0042             )
0043 
0044 IF(LibRaw_INCLUDE_DIR)
0045    FILE(READ ${LibRaw_INCLUDE_DIR}/libraw/libraw_version.h _libraw_version_content)
0046    
0047    STRING(REGEX MATCH "#define LIBRAW_MAJOR_VERSION[ \t]*([0-9]*)\n" _version_major_match ${_libraw_version_content})
0048    SET(_libraw_version_major "${CMAKE_MATCH_1}")
0049    
0050    STRING(REGEX MATCH "#define LIBRAW_MINOR_VERSION[ \t]*([0-9]*)\n" _version_minor_match ${_libraw_version_content})
0051    SET(_libraw_version_minor "${CMAKE_MATCH_1}")
0052    
0053    STRING(REGEX MATCH "#define LIBRAW_PATCH_VERSION[ \t]*([0-9]*)\n" _version_patch_match ${_libraw_version_content})
0054    SET(_libraw_version_patch "${CMAKE_MATCH_1}")
0055    
0056    IF(_version_major_match AND _version_minor_match AND _version_patch_match)
0057       SET(LibRaw_VERSION "${_libraw_version_major}.${_libraw_version_minor}.${_libraw_version_patch}")
0058    ELSE()
0059       IF(NOT LibRaw_FIND_QUIETLY)
0060          MESSAGE(STATUS "Failed to get version information from ${LibRaw_INCLUDE_DIR}/libraw/libraw_version.h")
0061       ENDIF()
0062    ENDIF()
0063 ENDIF()
0064 
0065 INCLUDE(FindPackageHandleStandardArgs)
0066 FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibRaw
0067                                   REQUIRED_VARS LibRaw_LIBRARIES LibRaw_INCLUDE_DIR
0068                                   VERSION_VAR LibRaw_VERSION
0069                                  )
0070 
0071 MARK_AS_ADVANCED(LibRaw_VERSION
0072                  LibRaw_INCLUDE_DIR
0073                  LibRaw_LIBRARIES
0074                  LibRaw_r_LIBRARIES
0075                  LibRaw_DEFINITIONS
0076                  LibRaw_r_DEFINITIONS
0077                  )
0078 
0079 if(LibRaw_FOUND AND NOT TARGET LibRaw::LibRaw)
0080     add_library(LibRaw::LibRaw UNKNOWN IMPORTED)
0081     set_target_properties(LibRaw::LibRaw PROPERTIES
0082         IMPORTED_LOCATION "${LibRaw_LIBRARIES}"
0083         INTERFACE_COMPILE_OPTIONS "${LibRaw_DEFINITIONS}"
0084         INTERFACE_INCLUDE_DIRECTORIES "${LibRaw_INCLUDE_DIR}"
0085     )
0086 endif()