extra/krita to 4.4.0-1

This commit is contained in:
Kevin Mihelich 2020-10-13 17:19:02 +00:00
parent e7dbf1da73
commit 1df80e54a1
3 changed files with 10 additions and 293 deletions

View file

@ -4,9 +4,9 @@
# - remove makedepend on vc
pkgname=krita
_pkgver=4.3.0
_pkgver=4.4.0
pkgver=${_pkgver/-/}
pkgrel=3
pkgrel=1
pkgdesc="Edit and paint images"
arch=(x86_64)
url="https://krita.org"
@ -14,23 +14,17 @@ license=(GPL3)
depends=(kitemviews kitemmodels ki18n kcompletion kguiaddons kcrash qt5-svg qt5-multimedia quazip
gsl libraw exiv2 openexr fftw boost-libs giflib openjpeg2 hicolor-icon-theme)
makedepends=(extra-cmake-modules kdoctools boost eigen poppler-qt5 opencolorio python-pyqt5 libheif
qt5-tools sip5)
qt5-tools sip5 seexpr-krita llvm)
optdepends=('poppler-qt5: PDF filter' 'ffmpeg: to save animations' 'opencolorio: for the LUT docker'
"krita-plugin-gmic: G'MIC plugin" 'python-pyqt5: for the Python plugins' 'libheif: HEIF filter')
"krita-plugin-gmic: G'MIC plugin" 'python-pyqt5: for the Python plugins' 'libheif: HEIF filter'
'seexpr-krita: SeExpr generator layer')
conflicts=(calligra-krita krita-l10n)
replaces=(calligra-krita krita-l10n)
source=("https://download.kde.org/stable/krita/$_pkgver/$pkgname-$_pkgver.tar.gz"
krita-sip5.patch
krita-quazip1.patch)
sha256sums=('d071887c73bffbdc179054826b9752f5e5ab43fdcd9ffdd0402e9ab2ceee4bda'
'08076f5e3aa47a34f358efef16d95ae008dd71bcabc6da83a29f9597c1d25453'
'c14bf8911eb5722cb1f86f3a5a9a410231c76ad275689972f58a63bb63983ce4')
validpgpkeys=('05D00A8B73A686789E0A156858B9596C722EA3BD') # Boudewijn Rempt <foundation@krita.org>
prepare() {
patch -d $pkgname-$_pkgver -p1 -i ../krita-sip5.patch # Fix build with SIP 5
patch -d $pkgname-$_pkgver -p1 -i ../krita-quazip1.patch # Fix build with quazip 1
}
source=("https://download.kde.org/stable/krita/$_pkgver/$pkgname-$_pkgver.tar.gz"{,.sig})
sha256sums=('fc5f8376e4712c26178688284aeaf2fa1d48473535ed5b214297178a1fe9278f'
'SKIP')
validpgpkeys=('05D00A8B73A686789E0A156858B9596C722EA3BD' # Boudewijn Rempt <foundation@krita.org>
'E9FB29E74ADEACC5E3035B8AB69EB4CF7468332F') # Dmitry Kazakov (main key) <dimula73@gmail.com>
build() {
cmake -B build -S $pkgname-$_pkgver \

View file

@ -1,23 +0,0 @@
diff --git a/cmake/modules/FindQuaZip.cmake b/cmake/modules/FindQuaZip.cmake
index 7e628fcd4b..345c7909ab 100644
--- a/cmake/modules/FindQuaZip.cmake
+++ b/cmake/modules/FindQuaZip.cmake
@@ -25,15 +25,15 @@ ELSE (QUAZIP_INCLUDE_DIRS AND QUAZIP_LIBRARIES)
ELSE(WIN32)
FIND_PACKAGE(PkgConfig)
# pkg_check_modules(PC_QCA2 QUIET qca2)
- pkg_check_modules(PC_QUAZIP quazip)
+ pkg_check_modules(PC_QUAZIP quazip quazip1-qt5)
FIND_LIBRARY(QUAZIP_LIBRARIES
WIN32_DEBUG_POSTFIX d
- NAMES quazip${QUAZIP_LIB_VERSION_SUFFIX}
+ NAMES quazip${QUAZIP_LIB_VERSION_SUFFIX} quazip1-qt5
HINTS /usr/lib /usr/lib64
)
FIND_PATH(QUAZIP_INCLUDE_DIR quazip.h
HINTS /usr/include /usr/local/include
- PATH_SUFFIXES quazip${QUAZIP_LIB_VERSION_SUFFIX}
+ PATH_SUFFIXES quazip${QUAZIP_LIB_VERSION_SUFFIX} QuaZip-Qt5-1.0/quazip
)
FIND_PATH(QUAZIP_ZLIB_INCLUDE_DIR zlib.h HINTS /usr/include /usr/local/include)
ENDIF (WIN32)

View file

@ -1,254 +0,0 @@
From 3a7bf8ef22fec548f70c022d401a8a5a46e6f100 Mon Sep 17 00:00:00 2001
From: Dmitry Shachnev <mitya57@gmail.com>
Date: Sat, 4 Jul 2020 13:01:27 +0300
Subject: [PATCH 1/4] Update pyqt_sip_dir for pyqt5 compiled with sip5
---
cmake/modules/FindPyQt5.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/cmake/modules/FindPyQt5.py b/cmake/modules/FindPyQt5.py
index e0ef9d7bdb..e138ad3107 100644
--- a/cmake/modules/FindPyQt5.py
+++ b/cmake/modules/FindPyQt5.py
@@ -4,6 +4,7 @@
import sys
import os
+from distutils.sysconfig import get_python_lib
try:
# On Windows and Python 3.8+ python doesn't load module DLL's
@@ -40,8 +41,9 @@ try:
except ValueError:
pass
-# FIXME This next line is just a little bit too crude.
-pyqt_sip_dir = os.path.join(sys.prefix, "share", "sip", "PyQt5")
+pyqt_sip_dir = os.path.join(get_python_lib(plat_specific=1), "PyQt5", "bindings")
+if not os.path.exists(pyqt_sip_dir): # Fallback for older PyQt5/SIP
+ pyqt_sip_dir = os.path.join(sys.prefix, "share", "sip", "PyQt5")
print("pyqt_sip_dir:%s" % pyqt_sip_dir)
print("pyqt_sip_flags:%s" % PyQt5.QtCore.PYQT_CONFIGURATION["sip_flags"])
--
GitLab
From ecc99b3a48c9fa7a80b2fade5a6de2a09c1cca82 Mon Sep 17 00:00:00 2001
From: Dmitry Shachnev <mitya57@gmail.com>
Date: Sat, 4 Jul 2020 13:02:00 +0300
Subject: [PATCH 2/4] Find sip executable directly instead of relying on
FindSIP.py
---
cmake/modules/FindSIP.cmake | 47 ++++---------------
cmake/modules/FindSIP.py | 15 ------
plugins/extensions/pykrita/CMakeLists.txt | 2 +-
plugins/extensions/pykrita/sip/CMakeLists.txt | 4 --
4 files changed, 11 insertions(+), 57 deletions(-)
delete mode 100644 cmake/modules/FindSIP.py
diff --git a/cmake/modules/FindSIP.cmake b/cmake/modules/FindSIP.cmake
index 1ca061ff97..001ac6a11b 100644
--- a/cmake/modules/FindSIP.cmake
+++ b/cmake/modules/FindSIP.cmake
@@ -8,17 +8,11 @@
#
# This file defines the following variables:
#
-# SIP_VERSION - The version of SIP found expressed as a 6 digit hex number
-# suitable for comparison as a string.
-#
# SIP_VERSION_STR - The version of SIP found as a human readable string.
#
# SIP_EXECUTABLE - Path and filename of the SIP command line executable.
#
-# SIP_INCLUDE_DIR - Directory holding the SIP C++ header file.
-#
-# SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed
-# into.
+# SIP_MODULE_EXECUTABLE - Path and filename of the sip-module executable.
# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
# Redistribution and use is allowed according to the terms of the BSD license.
@@ -26,40 +20,19 @@
-IF(SIP_VERSION)
+IF(SIP_VERSION_STR)
# Already in cache, be silent
SET(SIP_FOUND TRUE)
-ELSE(SIP_VERSION)
+ELSE(SIP_VERSION_STR)
- FIND_FILE(_find_sip_py FindSIP.py PATHS ${CMAKE_MODULE_PATH})
-
- if (WIN32)
- EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${CMAKE_PREFIX_PATH}/lib/krita-python-libs" ${PYTHON_EXECUTABLE} ${_find_sip_py} OUTPUT_VARIABLE sip_config)
- else (WIN32)
- EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_sip_py} OUTPUT_VARIABLE sip_config)
- endif (WIN32)
-
- IF(sip_config)
- STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config})
- STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config})
- STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_EXECUTABLE ${sip_config})
- IF(NOT SIP_DEFAULT_SIP_DIR)
- STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config})
- ENDIF(NOT SIP_DEFAULT_SIP_DIR)
- STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
- FILE(TO_CMAKE_PATH ${SIP_DEFAULT_SIP_DIR} SIP_DEFAULT_SIP_DIR)
- FILE(TO_CMAKE_PATH ${SIP_INCLUDE_DIR} SIP_INCLUDE_DIR)
- if (WIN32)
- set(SIP_EXECUTABLE ${SIP_EXECUTABLE}.exe)
- endif()
- IF(EXISTS ${SIP_EXECUTABLE})
- SET(SIP_FOUND TRUE)
- ELSE()
- MESSAGE(STATUS "Found SIP configuration but the sip executable could not be found.")
- ENDIF()
- ENDIF(sip_config)
+ find_program(SIP_EXECUTABLE NAMES sip5 sip)
+ find_program(SIP_MODULE_EXECUTABLE sip-module)
+ macro_bool_to_01(SIP_EXECUTABLE SIP_FOUND)
IF(SIP_FOUND)
+ execute_process(COMMAND ${SIP_EXECUTABLE} -V OUTPUT_VARIABLE SIP_VERSION_STR
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+
IF(NOT SIP_FIND_QUIETLY)
MESSAGE(STATUS "Found SIP version: ${SIP_VERSION_STR}")
ENDIF(NOT SIP_FIND_QUIETLY)
@@ -69,4 +42,4 @@ ELSE(SIP_VERSION)
ENDIF(SIP_FIND_REQUIRED)
ENDIF(SIP_FOUND)
-ENDIF(SIP_VERSION)
+ENDIF(SIP_VERSION_STR)
diff --git a/cmake/modules/FindSIP.py b/cmake/modules/FindSIP.py
deleted file mode 100644
index ecb734f2cc..0000000000
--- a/cmake/modules/FindSIP.py
+++ /dev/null
@@ -1,15 +0,0 @@
-# FindSIP.py
-#
-# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
-# Redistribution and use is allowed according to the terms of the BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-import sys
-import sipconfig
-
-sipcfg = sipconfig.Configuration()
-print("sip_version:%06.0x" % sipcfg.sip_version)
-print("sip_version_str:%s" % sipcfg.sip_version_str)
-print("sip_bin:%s" % sipcfg.sip_bin)
-print("default_sip_dir:%s" % sipcfg.default_sip_dir)
-print("sip_inc_dir:%s" % sipcfg.sip_inc_dir)
diff --git a/plugins/extensions/pykrita/CMakeLists.txt b/plugins/extensions/pykrita/CMakeLists.txt
index ee9fe363fb..578d801017 100644
--- a/plugins/extensions/pykrita/CMakeLists.txt
+++ b/plugins/extensions/pykrita/CMakeLists.txt
@@ -1,6 +1,6 @@
if (HAVE_PYQT5 AND HAVE_SIP AND HAVE_PYTHONLIBS)
- include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${SIP_INCLUDE_DIR} ${PYTHON_INCLUDE_PATH})
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${PYTHON_INCLUDE_PATH})
add_subdirectory(sip)
add_subdirectory(plugin)
diff --git a/plugins/extensions/pykrita/sip/CMakeLists.txt b/plugins/extensions/pykrita/sip/CMakeLists.txt
index 49ff5e1717..c8a97b8600 100644
--- a/plugins/extensions/pykrita/sip/CMakeLists.txt
+++ b/plugins/extensions/pykrita/sip/CMakeLists.txt
@@ -1,13 +1,9 @@
include(SIPMacros)
-message( ${SIP_VERSION} " - The version of SIP found expressed as a 6 digit hex number suitable for comparison as a string.")
message( ${SIP_VERSION_STR} " - The version of SIP found as a human readable string.")
message( ${SIP_EXECUTABLE} " - Path and filename of the SIP command line executable.")
-message( ${SIP_INCLUDE_DIR} " - Directory holding the SIP C++ header file.")
-message( ${SIP_DEFAULT_SIP_DIR} " - default SIP dir" )
set(SIP_INCLUDES
- ${SIP_DEFAULT_SIP_DIR}
${PYQT5_SIP_DIR}
${PYQT_SIP_DIR_OVERRIDE}
./krita)
--
GitLab
From 5379d14c69e3cea45c0f582e0ff7773cc85ecf6f Mon Sep 17 00:00:00 2001
From: Dmitry Shachnev <mitya57@gmail.com>
Date: Sat, 4 Jul 2020 13:03:46 +0300
Subject: [PATCH 3/4] Remove -n from ${PYQT5_SIP_NAME}
---
cmake/modules/FindPyQt5.py | 2 +-
plugins/extensions/pykrita/sip/CMakeLists.txt | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/cmake/modules/FindPyQt5.py b/cmake/modules/FindPyQt5.py
index e138ad3107..85c662b9ae 100644
--- a/cmake/modules/FindPyQt5.py
+++ b/cmake/modules/FindPyQt5.py
@@ -36,7 +36,7 @@ print("pyqt_version_tag:%s" % pyqt_version_tag)
try:
index_n = pyqt_config_list.index('-n')
- pyqt_sip_name = '-n' + pyqt_config_list[index_n + 1]
+ pyqt_sip_name = pyqt_config_list[index_n + 1]
print("pyqt_sip_name:%s" % pyqt_sip_name)
except ValueError:
pass
diff --git a/plugins/extensions/pykrita/sip/CMakeLists.txt b/plugins/extensions/pykrita/sip/CMakeLists.txt
index c8a97b8600..5f9262322a 100644
--- a/plugins/extensions/pykrita/sip/CMakeLists.txt
+++ b/plugins/extensions/pykrita/sip/CMakeLists.txt
@@ -10,7 +10,7 @@ set(SIP_INCLUDES
set(SIP_CONCAT_PARTS 1)
set(SIP_TAGS ALL WS_X11 ${PYQT5_VERSION_TAG})
-set(SIP_EXTRA_OPTIONS -g -o -x PyKDE_QVector ${PYQT5_SIP_NAME})
+set(SIP_EXTRA_OPTIONS -g -o -x PyKDE_QVector -n ${PYQT5_SIP_NAME})
set(PYTHON_SITE_PACKAGES_INSTALL_DIR ${LIB_INSTALL_DIR}/krita-python-libs)
file(GLOB PYKRITA_KRITA_sip_files ./krita/*.sip)
--
GitLab
From 67c6a8642920263d7e1879e3edc28ca8b783742b Mon Sep 17 00:00:00 2001
From: Dmitry Shachnev <mitya57@gmail.com>
Date: Sat, 4 Jul 2020 13:08:33 +0300
Subject: [PATCH 4/4] Generate sip.h in ${CMAKE_CURRENT_SIP_OUTPUT_DIR} for SIP
v5
---
cmake/modules/SIPMacros.cmake | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/cmake/modules/SIPMacros.cmake b/cmake/modules/SIPMacros.cmake
index 885d10d0b2..bd60188878 100644
--- a/cmake/modules/SIPMacros.cmake
+++ b/cmake/modules/SIPMacros.cmake
@@ -99,6 +99,12 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP)
COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_SIP_OUTPUT_DIR} ${_sip_includes} ${_abs_module_sip}
DEPENDS ${_abs_module_sip} ${SIP_EXTRA_FILES_DEPEND}
)
+ IF (SIP_MODULE_EXECUTABLE)
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${_sip_output_files} APPEND
+ COMMAND ${SIP_MODULE_EXECUTABLE} --target-dir ${CMAKE_CURRENT_SIP_OUTPUT_DIR} --sip-h ${PYQT5_SIP_NAME}
+ )
+ ENDIF (SIP_MODULE_EXECUTABLE)
# not sure if type MODULE could be uses anywhere, limit to cygwin for now
IF (WIN32 OR CYGWIN OR APPLE)
ADD_LIBRARY(${_logical_name} MODULE ${_sip_output_files} )
--
GitLab