2015-11-08 15:24:28 +00:00
|
|
|
# Find QScintilla2 PyQt module
|
2012-10-17 18:17:14 -06:00
|
|
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
#
|
|
|
|
# QScintilla2 website: http://www.riverbankcomputing.co.uk/software/qscintilla/
|
|
|
|
#
|
|
|
|
# Find the installed version of QScintilla2 module. FindQsci should be called
|
|
|
|
# after Python has been found.
|
|
|
|
#
|
|
|
|
# This file defines the following variables:
|
|
|
|
#
|
2015-11-08 15:24:28 +00:00
|
|
|
# QSCI_FOUND - system has QScintilla2 PyQt module
|
2012-10-17 18:17:14 -06:00
|
|
|
#
|
|
|
|
# QSCI_MOD_VERSION_STR - The version of Qsci module as a human readable string.
|
|
|
|
#
|
|
|
|
# Copyright (c) 2012, Larry Shaffer <larrys@dakotacarto.com>
|
|
|
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
|
|
|
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
|
|
|
|
2019-04-29 17:06:33 +02:00
|
|
|
IF(QSCI_MOD_VERSION_STR)
|
2012-10-17 18:17:14 -06:00
|
|
|
# Already in cache, be silent
|
|
|
|
SET(QSCI_FOUND TRUE)
|
2019-04-29 17:06:33 +02:00
|
|
|
ELSE(QSCI_MOD_VERSION_STR)
|
2012-10-17 18:17:14 -06:00
|
|
|
|
2021-09-28 21:01:47 +02:00
|
|
|
IF(SIP_BUILD_EXECUTABLE)
|
|
|
|
# SIP >= 5.0 path
|
2012-10-17 18:17:14 -06:00
|
|
|
|
2021-09-28 21:01:47 +02:00
|
|
|
FILE(GLOB _qsci_metadata "${Python_SITEARCH}/QScintilla*.dist-info/METADATA")
|
|
|
|
IF(_qsci_metadata)
|
|
|
|
FILE(READ ${_qsci_metadata} _qsci_metadata_contents)
|
|
|
|
STRING(REGEX REPLACE ".*\nVersion: ([^\n]+).*$" "\\1" QSCI_MOD_VERSION_STR ${_qsci_metadata_contents})
|
|
|
|
ELSE(_qsci_metadata)
|
2022-11-30 01:31:11 +01:00
|
|
|
EXECUTE_PROCESS(COMMAND ${Python_EXECUTABLE} -c "from Py${QT_VERSION_BASE}.Qsci import QSCINTILLA_VERSION_STR; print(QSCINTILLA_VERSION_STR)" OUTPUT_VARIABLE QSCI_MOD_VERSION_STR)
|
2021-09-28 21:01:47 +02:00
|
|
|
ENDIF(_qsci_metadata)
|
2016-03-14 20:26:58 +01:00
|
|
|
|
2021-09-28 21:01:47 +02:00
|
|
|
IF(QSCI_MOD_VERSION_STR)
|
2022-11-30 01:31:11 +01:00
|
|
|
SET(QSCI_SIP_DIR "${PYQT_SIP_DIR}")
|
2021-09-28 21:01:47 +02:00
|
|
|
SET(QSCI_FOUND TRUE)
|
|
|
|
ENDIF(QSCI_MOD_VERSION_STR)
|
2012-10-17 18:17:14 -06:00
|
|
|
|
2021-09-28 21:01:47 +02:00
|
|
|
ELSE(SIP_BUILD_EXECUTABLE)
|
|
|
|
# SIP 4.x path
|
2012-10-17 18:17:14 -06:00
|
|
|
|
2021-09-28 21:01:47 +02:00
|
|
|
FIND_FILE(_find_qsci_py FindQsci.py PATHS ${CMAKE_MODULE_PATH} NO_CMAKE_FIND_ROOT_PATH)
|
|
|
|
|
2023-10-20 17:04:02 +02:00
|
|
|
SET(QSCI_VER ${QT_VERSION_MAJOR})
|
2021-09-28 21:01:47 +02:00
|
|
|
|
|
|
|
EXECUTE_PROCESS(COMMAND ${Python_EXECUTABLE} ${_find_qsci_py} ${QSCI_VER} OUTPUT_VARIABLE qsci_ver)
|
2014-07-23 18:46:09 +02:00
|
|
|
|
2022-11-30 01:31:11 +01:00
|
|
|
IF(BUILD_WITH_QT6)
|
|
|
|
SET(QSCI_SIP_MOD_NAME Qsci/qscimod6.sip)
|
|
|
|
ELSE()
|
|
|
|
SET(QSCI_SIP_MOD_NAME Qsci/qscimod5.sip)
|
|
|
|
ENDIF()
|
|
|
|
|
2021-09-28 21:01:47 +02:00
|
|
|
IF(qsci_ver)
|
|
|
|
STRING(REGEX REPLACE "^qsci_version_str:([^\n]+).*$" "\\1" QSCI_MOD_VERSION_STR ${qsci_ver})
|
|
|
|
FIND_PATH(QSCI_SIP_DIR
|
2022-11-30 01:31:11 +01:00
|
|
|
NAMES ${QSCI_SIP_MOD_NAME}
|
|
|
|
PATHS ${PYQT_SIP_DIR} ${SIP_DEFAULT_SIP_DIR}
|
2021-09-28 21:01:47 +02:00
|
|
|
)
|
|
|
|
SET(QSCI_FOUND TRUE)
|
|
|
|
ENDIF(qsci_ver)
|
|
|
|
|
|
|
|
ENDIF(SIP_BUILD_EXECUTABLE)
|
|
|
|
|
|
|
|
IF(QSCI_FOUND)
|
2012-10-17 18:17:14 -06:00
|
|
|
IF(NOT QSCI_FIND_QUIETLY)
|
2015-11-08 15:24:28 +00:00
|
|
|
MESSAGE(STATUS "Found QScintilla2 PyQt module: ${QSCI_MOD_VERSION_STR}")
|
2012-10-17 18:17:14 -06:00
|
|
|
ENDIF(NOT QSCI_FIND_QUIETLY)
|
|
|
|
ELSE(QSCI_FOUND)
|
|
|
|
IF(QSCI_FIND_REQUIRED)
|
2015-11-08 15:24:28 +00:00
|
|
|
MESSAGE(FATAL_ERROR "Could not find QScintilla2 PyQt module")
|
2012-10-17 18:17:14 -06:00
|
|
|
ENDIF(QSCI_FIND_REQUIRED)
|
|
|
|
ENDIF(QSCI_FOUND)
|
|
|
|
|
2019-04-29 17:06:33 +02:00
|
|
|
ENDIF(QSCI_MOD_VERSION_STR)
|