Warning, /graphics/kphotoalbum/cmake/modules/FindQtAV.cmake is written in an unsupported language. File is not indexed.
0001 # - Try to find the QtAV library 0002 # 0003 # Once done this will define 0004 # 0005 # QtAV_FOUND - The system has libqtav 0006 # QTAV_INCLUDE_DIRS - The libqtav include directory 0007 # QTAV_LIBRARIES - Link these to use libqtav 0008 # QTAV_MAJOR_VERSION - The major value of QtAV version ID defined in QtAV/version.h as "1". 0009 # QTAV_MINOR_VERSION - The minor value of QtAV version ID defined in QtAV/version.h as "12". 0010 # QTAV_PATCH_VERSION - The patch value of QtAV version ID defined in QtAV/version.h as "0". 0011 # QTAV_VERSION_STRING - Version string e.g. "1.12.0" 0012 # 0013 # SPDX-FileCopyrightText: 2016-2021 by Gilles Caulier <caulier dot gilles at gmail dot com> 0014 # 0015 # Redistribution and use is allowed according to the terms of the BSD license. 0016 # For details see the accompanying COPYING-CMAKE-SCRIPTS file. 0017 # SPDX-License-Identifier: BSD-3-Clause 0018 # 0019 0020 find_package(Qt5 0021 QUIET REQUIRED NO_MODULE COMPONENTS 0022 Core 0023 ) 0024 0025 Message(STATUS "QtAV search path: ${_qt5_install_prefix}") 0026 0027 if (NOT APPLE) 0028 0029 find_path(QTAV_CORE_INCLUDE_DIR 0030 NAMES QtAV.h 0031 HINTS ${Qt5Core_INCLUDE_DIRS} 0032 ${_qt5_install_prefix} # For MXE 0033 ${_qt5_install_prefix}/../qt5/include # For Mageia 0034 ${_qt5_install_prefix}/../../include/qt5 # For Suse 0035 ${_qt5_install_prefix}/../../../include/${CMAKE_LIBRARY_ARCHITECTURE}/qt5 # For Debian 0036 ${_qt5_install_prefix}/../../include/qt # For Arch 0037 PATH_SUFFIXES QtAV 0038 ) 0039 0040 find_path(QTAV_WIDGETS_INCLUDE_DIR 0041 NAMES QtAVWidgets.h 0042 HINTS ${Qt5Core_INCLUDE_DIRS} 0043 ${_qt5_install_prefix} # For MXE 0044 ${_qt5_install_prefix}/../qt5/include # For Mageia 0045 ${_qt5_install_prefix}/../../include/qt5 # For Suse 0046 ${_qt5_install_prefix}/../../../include/${CMAKE_LIBRARY_ARCHITECTURE}/qt5 # For Debian 0047 ${_qt5_install_prefix}/../../include/qt # For Arch 0048 PATH_SUFFIXES QtAVWidgets 0049 ) 0050 0051 find_library(QTAV_CORE_LIBRARY 0052 NAMES QtAV 0053 QtAV1 0054 libQtAV 0055 libQtAV1 0056 HINTS ${_qt5_install_prefix}/../ 0057 ) 0058 0059 find_library(QTAV_WIDGETS_LIBRARY 0060 NAMES QtAVWidgets 0061 QtAVWidgets1 0062 libQtAVWidgets 0063 libQtAVWidgets1 0064 HINTS ${_qt5_install_prefix}/../ 0065 ) 0066 0067 set(QTAV_INCLUDE_DIRS "${QTAV_CORE_INCLUDE_DIR} ${QTAV_WIDGETS_INCLUDE_DIR}") 0068 set(QTAV_LIBRARIES ${QTAV_CORE_LIBRARY} ${QTAV_WIDGETS_LIBRARY}) 0069 0070 else() 0071 0072 find_path(QTAV_CORE_INCLUDE_DIR 0073 NAMES QtAV/QtAV.h 0074 HINTS ${_qt5_install_prefix} 0075 ${_qt5_install_prefix}/../../include 0076 PATH_SUFFIXES QtAV 0077 ) 0078 0079 find_path(QTAV_WIDGETS_INCLUDE_DIR 0080 NAMES QtAVWidgets/QtAVWidgets.h 0081 HINTS ${_qt5_install_prefix} 0082 ${_qt5_install_prefix}/../../include 0083 PATH_SUFFIXES QtAVWidgets 0084 ) 0085 0086 if (QTAV_CORE_INCLUDE_DIR AND QTAV_WIDGETS_INCLUDE_DIR) 0087 0088 set(QTAV_INCLUDE_DIRS "${QTAV_CORE_INCLUDE_DIR};${QTAV_WIDGETS_INCLUDE_DIR}") 0089 set(QTAV_LIBRARIES "${_qt5_install_prefix}/../QtAV.framework/QtAV;${_qt5_install_prefix}/../QtAVWidgets.framework/QtAVWidgets") 0090 0091 else() 0092 0093 set(QTAV_INCLUDE_DIRS "${_qt5_install_prefix}/../../include/QtAV;${_qt5_install_prefix}/../../include/QtAVWidgets") 0094 set(QTAV_LIBRARIES "${_qt5_install_prefix}/../QtAV.framework/QtAV;${_qt5_install_prefix}/../QtAVWidgets.framework/QtAVWidgets") 0095 0096 endif() 0097 0098 endif() 0099 0100 include(FindPackageHandleStandardArgs) 0101 find_package_handle_standard_args(QtAV REQUIRED_VARS QTAV_LIBRARIES QTAV_INCLUDE_DIRS) 0102 0103 if(QtAV_FOUND) 0104 0105 if(NOT APPLE) 0106 0107 if(EXISTS ${QTAV_CORE_INCLUDE_DIR}/version.h) 0108 0109 Message(STATUS "Found QtAV version header: ${QTAV_CORE_INCLUDE_DIR}/version.h") 0110 file(READ ${QTAV_CORE_INCLUDE_DIR}/version.h QTAV_VERSION_CONTENT) 0111 set(QtAV_VERSION_FOUND TRUE) 0112 0113 endif() 0114 0115 else() 0116 0117 if(EXISTS ${QTAV_CORE_INCLUDE_DIR}/QtAV/version.h) 0118 0119 Message(STATUS "Found QtAV version header: ${QTAV_CORE_INCLUDE_DIR}/QtAV/version.h") 0120 file(READ ${QTAV_CORE_INCLUDE_DIR}/QtAV/version.h QTAV_VERSION_CONTENT) 0121 set(QtAV_VERSION_FOUND TRUE) 0122 0123 else() 0124 0125 if(EXISTS ${QTAV_CORE_INCLUDE_DIR}/version.h) 0126 0127 Message(STATUS "Found QtAV version header: ${QTAV_CORE_INCLUDE_DIR}/version.h") 0128 file(READ ${QTAV_CORE_INCLUDE_DIR}/version.h QTAV_VERSION_CONTENT) 0129 set(QtAV_VERSION_FOUND TRUE) 0130 0131 endif() 0132 0133 endif() 0134 0135 endif() 0136 0137 if(QtAV_VERSION_FOUND) 0138 0139 string(REGEX MATCH "#define QTAV_MAJOR ([0-9]+)" QTAV_MAJOR_MATCH ${QTAV_VERSION_CONTENT}) 0140 string(REPLACE "#define QTAV_MAJOR " "" QTAV_MAJOR_VERSION ${QTAV_MAJOR_MATCH}) 0141 string(REGEX MATCH "#define QTAV_MINOR ([0-9]+)" QTAV_MINOR_MATCH ${QTAV_VERSION_CONTENT}) 0142 string(REPLACE "#define QTAV_MINOR " "" QTAV_MINOR_VERSION ${QTAV_MINOR_MATCH}) 0143 string(REGEX MATCH "#define QTAV_PATCH ([0-9]+)" QTAV_PATCH_MATCH ${QTAV_VERSION_CONTENT}) 0144 string(REPLACE "#define QTAV_PATCH " "" QTAV_PATCH_VERSION ${QTAV_PATCH_MATCH}) 0145 0146 endif() 0147 0148 if(NOT QTAV_MAJOR_VERSION STREQUAL "" AND 0149 NOT QTAV_MINOR_VERSION STREQUAL "" AND 0150 NOT QTAV_PATCH_VERSION STREQUAL "") 0151 0152 set(QTAV_VERSION_STRING "${QTAV_MAJOR_VERSION}.${QTAV_MINOR_VERSION}.${QTAV_PATCH_VERSION}") 0153 0154 message(STATUS "Found QtAV version ${QTAV_VERSION_STRING}") 0155 0156 else() 0157 0158 message(STATUS "Found QtAV but failed to find version ${QTAV_LIBRARIES}") 0159 set(QTAV_MAJOR_VERSION NOTFOUND) 0160 set(QTAV_MINOR_VERSION NOTFOUND) 0161 set(QTAV_PATCH_VERSION NOTFOUND) 0162 set(QTAV_VERSION_STRING NOTFOUND) 0163 0164 endif() 0165 0166 endif() 0167 0168 mark_as_advanced(QTAV_INCLUDE_DIRS QTAV_LIBRARIES QTAV_VERSION_STRING 0169 QTAV_MAJOR_VERSION QTAV_MINOR_VERSION QTAV_PATCH_VERSION) 0170 0171 message(STATUS "QtAV_FOUND = ${QtAV_FOUND}") 0172 message(STATUS "QtAV_INCLUDE_DIR = ${QTAV_INCLUDE_DIRS}") 0173 message(STATUS "QtAV_LIBRARIES = ${QTAV_LIBRARIES}") 0174 message(STATUS "QtAV_VERSION = ${QTAV_VERSION_STRING}")