Warning, /graphics/krita/cmake/modules/FindSIP.cmake is written in an unsupported language. File is not indexed.
0001 # Find SIP
0002 # ~~~~~~~~
0003 #
0004 # SIP website: http://www.riverbankcomputing.co.uk/sip/index.php
0005 #
0006 # Find the installed version of SIP. FindSIP should be called after Python
0007 # has been found.
0008 #
0009 # This file defines the following variables:
0010 #
0011 # SIP_VERSION - The version of SIP found expressed as a 6 digit hex number
0012 # suitable for comparison as a string.
0013 #
0014 # SIP_VERSION_STR - The version of SIP found as a human readable string.
0015 #
0016 # SIP_EXECUTABLE - Path and filename of the SIP command line executable.
0017 #
0018 # SIP_INCLUDE_DIR - Directory holding the SIP C++ header file.
0019 #
0020 # SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed
0021 # into.
0022
0023 # SPDX-FileCopyrightText: 2007 Simon Edwards <simon@simonzone.com>
0024 # SPDX-FileCopyrightText: 2021 L. E. Segovia <amy@amyspark.me>
0025 #
0026 # SPDX-License-Identifier: BSD-3-Clause
0027 #
0028
0029 IF(SIP_VERSION)
0030 # Already in cache, be silent
0031 SET(SIP_FOUND TRUE)
0032 ELSE(SIP_VERSION)
0033
0034 FIND_FILE(_find_sip_py FindSIP.py PATHS ${CMAKE_MODULE_PATH})
0035
0036 if (WIN32)
0037 set(_sip_python_path "${KRITA_PYTHONPATH_V4};${KRITA_PYTHONPATH_V5};$ENV{PYTHONPATH}")
0038
0039 EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E env
0040 "PYTHONPATH=${_sip_python_path}"
0041 ${Python_EXECUTABLE} ${_find_sip_py}
0042 OUTPUT_VARIABLE sip_config)
0043 else (WIN32)
0044 set(_pyqt5_python_path "${KRITA_PYTHONPATH_V4}:${KRITA_PYTHONPATH_V5}:$ENV{PYTHONPATH}")
0045
0046 EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E env
0047 "PYTHONPATH=${_sip_python_path}"
0048 ${Python_EXECUTABLE} ${_find_sip_py}
0049 OUTPUT_VARIABLE sip_config)
0050 endif (WIN32)
0051
0052 IF(sip_config)
0053 STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config})
0054 STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config})
0055 STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_EXECUTABLE ${sip_config})
0056 IF(${SIP_VERSION_STR} VERSION_LESS 5)
0057 IF(NOT SIP_DEFAULT_SIP_DIR)
0058 STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config})
0059 ENDIF(NOT SIP_DEFAULT_SIP_DIR)
0060 STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
0061 FILE(TO_CMAKE_PATH ${SIP_INCLUDE_DIR} SIP_INCLUDE_DIR)
0062 FILE(TO_CMAKE_PATH ${SIP_DEFAULT_SIP_DIR} SIP_DEFAULT_SIP_DIR)
0063 ELSE(${SIP_VERSION_STR} VERSION_LESS 5)
0064 FIND_PROGRAM(SIP_MODULE_EXECUTABLE sip-module)
0065 ENDIF(${SIP_VERSION_STR} VERSION_LESS 5)
0066 if (WIN32 AND ${SIP_VERSION_STR} VERSION_LESS 5)
0067 set(SIP_EXECUTABLE ${SIP_EXECUTABLE}.exe)
0068 endif()
0069 IF(EXISTS ${SIP_EXECUTABLE})
0070 SET(SIP_FOUND TRUE)
0071 ELSE()
0072 MESSAGE(STATUS "Found SIP configuration but the sip executable could not be found.")
0073 ENDIF()
0074 ENDIF(sip_config)
0075
0076 IF(SIP_FOUND)
0077 IF(NOT SIP_FIND_QUIETLY)
0078 MESSAGE(STATUS "Found SIP version: ${SIP_VERSION_STR}")
0079 ENDIF(NOT SIP_FIND_QUIETLY)
0080 ELSE(SIP_FOUND)
0081 IF(SIP_FIND_REQUIRED)
0082 MESSAGE(FATAL_ERROR "Could not find SIP")
0083 ENDIF(SIP_FIND_REQUIRED)
0084 ENDIF(SIP_FOUND)
0085
0086 ENDIF(SIP_VERSION)