commit:     e6b799b70528727944e2e7612f4625acf0e61e29
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 19 22:47:52 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Dec 20 13:25:34 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6b799b7

app-office/calligra: EAPI-8, drop IUSE openexr, missing RDEPEND

Fully switch to dev-libs/imath DEPEND.
Drop unused ENABLE_CSTESTER_TESTING cmake var, APP_CSTESTER not ON.
Silence cmake about Cauchy dependency (dead as can be).

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 app-office/calligra/calligra-3.2.1-r4.ebuild       | 185 +++++++++++++++++++++
 .../calligra/files/calligra-3.2.1-imath.patch      |  30 ++++
 .../calligra/files/calligra-3.2.1-openexr-3.patch  |  93 +++++++++++
 3 files changed, 308 insertions(+)

diff --git a/app-office/calligra/calligra-3.2.1-r4.ebuild 
b/app-office/calligra/calligra-3.2.1-r4.ebuild
new file mode 100644
index 000000000000..6ef745321e5d
--- /dev/null
+++ b/app-office/calligra/calligra-3.2.1-r4.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHECKREQS_DISK_BUILD="4G"
+ECM_HANDBOOK="forceoptional"
+ECM_TEST="forceoptional"
+KFMIN=5.88.0
+QTMIN=5.15.2
+inherit check-reqs ecm kde.org
+
+DESCRIPTION="KDE Office Suite"
+HOMEPAGE="https://calligra.org/";
+
+if [[ ${KDE_BUILD_TYPE} == release ]]; then
+       SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
+       KEYWORDS="~amd64 ~ppc64 ~x86"
+fi
+
+CAL_FTS=( karbon sheets stage words )
+
+LICENSE="GPL-2"
+SLOT="5"
+IUSE="activities +charts +crypt +fontconfig gemini gsl +import-filter +lcms
+       okular +pdf phonon spacenav +truetype X
+       $(printf 'calligra_features_%s ' ${CAL_FTS[@]})"
+
+RESTRICT="test"
+
+# TODO: Not packaged: Cauchy (https://bitbucket.org/cyrille/cauchy)
+# Required for the matlab/octave formula tool
+COMMON_DEPEND="
+       dev-lang/perl
+       >=dev-qt/designer-${QTMIN}:5
+       >=dev-qt/qtdbus-${QTMIN}:5
+       >=dev-qt/qtdeclarative-${QTMIN}:5
+       >=dev-qt/qtgui-${QTMIN}:5
+       >=dev-qt/qtnetwork-${QTMIN}:5
+       >=dev-qt/qtprintsupport-${QTMIN}:5
+       >=dev-qt/qtscript-${QTMIN}:5
+       >=dev-qt/qtsvg-${QTMIN}:5
+       >=dev-qt/qtwidgets-${QTMIN}:5
+       >=dev-qt/qtxml-${QTMIN}:5
+       >=kde-frameworks/karchive-${KFMIN}:5
+       >=kde-frameworks/kcmutils-${KFMIN}:5
+       >=kde-frameworks/kcodecs-${KFMIN}:5
+       >=kde-frameworks/kcompletion-${KFMIN}:5
+       >=kde-frameworks/kconfig-${KFMIN}:5
+       >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+       >=kde-frameworks/kcoreaddons-${KFMIN}:5
+       >=kde-frameworks/kdelibs4support-${KFMIN}:5
+       >=kde-frameworks/kemoticons-${KFMIN}:5
+       >=kde-frameworks/kglobalaccel-${KFMIN}:5
+       >=kde-frameworks/kguiaddons-${KFMIN}:5
+       >=kde-frameworks/ki18n-${KFMIN}:5
+       >=kde-frameworks/kiconthemes-${KFMIN}:5
+       >=kde-frameworks/kio-${KFMIN}:5
+       >=kde-frameworks/kitemmodels-${KFMIN}:5
+       >=kde-frameworks/kitemviews-${KFMIN}:5
+       >=kde-frameworks/kjobwidgets-${KFMIN}:5
+       >=kde-frameworks/knotifications-${KFMIN}:5
+       >=kde-frameworks/knotifyconfig-${KFMIN}:5
+       >=kde-frameworks/kparts-${KFMIN}:5
+       >=kde-frameworks/kross-${KFMIN}:5
+       >=kde-frameworks/ktextwidgets-${KFMIN}:5
+       >=kde-frameworks/kwallet-${KFMIN}:5
+       >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+       >=kde-frameworks/kwindowsystem-${KFMIN}:5
+       >=kde-frameworks/kxmlgui-${KFMIN}:5
+       >=kde-frameworks/sonnet-${KFMIN}:5
+       sys-libs/zlib
+       virtual/libiconv
+       activities? ( >=kde-frameworks/kactivities-${KFMIN}:5 )
+       charts? ( dev-libs/kdiagram:5 )
+       crypt? ( >=app-crypt/qca-2.3.0:2 )
+       fontconfig? ( media-libs/fontconfig )
+       gemini? ( >=dev-qt/qtdeclarative-${QTMIN}:5[widgets] )
+       gsl? ( sci-libs/gsl:= )
+       import-filter? (
+               app-text/libetonyek
+               app-text/libodfgen
+               app-text/libwpd:*
+               app-text/libwpg:*
+               >=app-text/libwps-0.4
+               dev-libs/librevenge
+               media-libs/libvisio
+       )
+       lcms? ( media-libs/lcms:2 )
+       okular? ( kde-apps/okular:5 )
+       pdf? ( app-text/poppler:=[qt5] )
+       phonon? ( >=media-libs/phonon-4.11.0 )
+       spacenav? ( dev-libs/libspnav )
+       truetype? ( media-libs/freetype:2 )
+       X? (
+               >=dev-qt/qtx11extras-${QTMIN}:5
+               x11-libs/libX11
+       )
+       calligra_features_sheets? ( dev-cpp/eigen:3 )
+       calligra_features_words? ( dev-libs/libxslt )
+"
+DEPEND="${COMMON_DEPEND}
+       dev-libs/boost
+       lcms? ( dev-libs/imath:3 )
+       test? ( >=kde-frameworks/threadweaver-${KFMIN}:5 )
+"
+RDEPEND="${COMMON_DEPEND}
+       calligra_features_karbon? ( media-gfx/pstoedit[plotutils] )
+       gemini? (
+               >=dev-qt/qtquickcontrols-${QTMIN}:5
+               >=dev-qt/qtquickcontrols2-${QTMIN}:5
+               >=kde-frameworks/kirigami-${KFMIN}:5
+       )
+"
+BDEPEND="sys-devel/gettext"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.1.89-no-arch-detection.patch
+       "${FILESDIR}"/${P}-cmake-3.16.patch # bug 796224
+       "${FILESDIR}"/${P}-{openexr-3,imath}.patch
+)
+
+pkg_pretend() {
+       check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+       ecm_pkg_setup
+       check-reqs_pkg_setup
+}
+
+src_prepare() {
+       ecm_src_prepare
+
+       # Unconditionally disable deprecated deps (required by QtQuick1)
+       ecm_punt_bogus_dep Qt5 Declarative
+       ecm_punt_bogus_dep Qt5 OpenGL
+}
+
+src_configure() {
+       local cal_ft myproducts
+
+       # applications
+       for cal_ft in ${CAL_FTS[@]}; do
+               use calligra_features_${cal_ft} && myproducts+=( "${cal_ft^^}" )
+       done
+
+       use lcms && myproducts+=( PLUGIN_COLORENGINES )
+       use okular && myproducts+=( OKULAR )
+       use spacenav && myproducts+=( PLUGIN_SPACENAVIGATOR )
+
+       local mycmakeargs=(
+               -DPACKAGERS_BUILD=OFF
+               -DRELEASE_BUILD=ON
+               -DWITH_Iconv=ON
+               -DWITH_Imath=ON # w/ LCMS: 16 bit floating point Grayscale 
colorspace
+               -DCMAKE_DISABLE_FIND_PACKAGE_Cauchy=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_KF5CalendarCore=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_KF5KHtml=ON
+               -DPRODUCTSET="${myproducts[*]}"
+               $(cmake_use_find_package activities KF5Activities)
+               $(cmake_use_find_package charts KChart)
+               -DWITH_Qca-qt5=$(usex crypt)
+               -DWITH_Fontconfig=$(usex fontconfig)
+               $(cmake_use_find_package gemini Libgit2)
+               $(cmake_use_find_package gemini Qt5QuickWidgets)
+               -DWITH_GSL=$(usex gsl)
+               -DWITH_LibEtonyek=$(usex import-filter)
+               -DWITH_LibOdfGen=$(usex import-filter)
+               -DWITH_LibRevenge=$(usex import-filter)
+               -DWITH_LibVisio=$(usex import-filter)
+               -DWITH_LibWpd=$(usex import-filter)
+               -DWITH_LibWpg=$(usex import-filter)
+               -DWITH_LibWps=$(usex import-filter)
+               $(cmake_use_find_package phonon Phonon4Qt5)
+               -DWITH_LCMS2=$(usex lcms)
+               -DWITH_Okular5=$(usex okular)
+               -DWITH_Poppler=$(usex pdf)
+               -DWITH_Eigen3=$(usex calligra_features_sheets)
+               -DBUILD_UNMAINTAINED=$(usex calligra_features_stage)
+               -DWITH_Freetype=$(usex truetype)
+       )
+
+       ecm_src_configure
+}

diff --git a/app-office/calligra/files/calligra-3.2.1-imath.patch 
b/app-office/calligra/files/calligra-3.2.1-imath.patch
new file mode 100644
index 000000000000..62a2daa2f5dc
--- /dev/null
+++ b/app-office/calligra/files/calligra-3.2.1-imath.patch
@@ -0,0 +1,30 @@
+From c52eb33f20a66acb648b725e2eee3ed977eae896 Mon Sep 17 00:00:00 2001
+From: Antonio Rojas <[email protected]>
+Date: Tue, 3 Aug 2021 10:41:09 +0200
+Subject: [PATCH] Only link to Imath when OpenEXR version is >= 3.0
+
+Since OpenEXR 3.0, Imath is in a separate, independently released library. 
Since that's the only library that Calligra needs, there's no need to link to 
the full OpenEXR
+---
+ CMakeLists.txt | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cdcc02f0236..91c72882d3a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -338,9 +338,9 @@ endif ()
+ ## Check for OpenEXR
+ ##
+ 
+-macro_optional_find_package(OpenEXR 3.0 CONFIG QUIET)
+-if(TARGET OpenEXR::OpenEXR)
+-    set(OPENEXR_LIBRARIES OpenEXR::OpenEXR)
++macro_optional_find_package(Imath 3.0 CONFIG QUIET)
++if(TARGET Imath::Imath)
++    set(OPENEXR_LIBRARIES Imath::Imath)
+ else()
+     macro_optional_find_package(OpenEXR)
+ endif()
+-- 
+GitLab
+

diff --git a/app-office/calligra/files/calligra-3.2.1-openexr-3.patch 
b/app-office/calligra/files/calligra-3.2.1-openexr-3.patch
new file mode 100644
index 000000000000..d9175a63ce6b
--- /dev/null
+++ b/app-office/calligra/files/calligra-3.2.1-openexr-3.patch
@@ -0,0 +1,93 @@
+From eab11436712f92afc6e7b14b25d1f6df217d79d7 Mon Sep 17 00:00:00 2001
+From: Antonio Rojas <[email protected]>
+Date: Sat, 24 Apr 2021 11:19:52 +0200
+Subject: [PATCH] Support building with OpenEXR 3
+
+Try to find OpenEXR 3 first using the upstream cmake config, and fall back to 
using our FindOpenEXR
+---
+ CMakeLists.txt                                  | 9 +++++++--
+ libs/pigment/CMakeLists.txt                     | 2 +-
+ plugins/colorengines/lcms2/CMakeLists.txt       | 6 +++---
+ plugins/colorengines/lcms2/tests/CMakeLists.txt | 2 +-
+ 4 files changed, 12 insertions(+), 7 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8955357ff97..ea56c84bb11 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -363,8 +363,13 @@ endif ()
+ ## Check for OpenEXR
+ ##
+ 
+-macro_optional_find_package(OpenEXR)
+-macro_bool_to_01(OPENEXR_FOUND HAVE_OPENEXR)
++macro_optional_find_package(OpenEXR 3.0 CONFIG QUIET)
++if(TARGET OpenEXR::OpenEXR)
++    set(OPENEXR_LIBRARIES OpenEXR::OpenEXR)
++else()
++    macro_optional_find_package(OpenEXR)
++endif()
++macro_bool_to_01(OpenEXR_FOUND HAVE_OPENEXR)
+ 
+ ##
+ ## Test for GNU Scientific Library
+diff --git a/libs/pigment/CMakeLists.txt b/libs/pigment/CMakeLists.txt
+index a039251e2ad..6eb6a8e70b6 100644
+--- a/libs/pigment/CMakeLists.txt
++++ b/libs/pigment/CMakeLists.txt
+@@ -12,7 +12,7 @@ include_directories( ${PIGMENT_INCLUDES}  
${Boost_INCLUDE_DIR})
+ 
+ set(FILE_OPENEXR_SOURCES)
+ set(LINK_OPENEXR_LIB)
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     include_directories(${OPENEXR_INCLUDE_DIR})
+     set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES})
+     add_definitions(${OPENEXR_DEFINITIONS})
+diff --git a/plugins/colorengines/lcms2/CMakeLists.txt 
b/plugins/colorengines/lcms2/CMakeLists.txt
+index 77807ff9702..920adbeaf87 100644
+--- a/plugins/colorengines/lcms2/CMakeLists.txt
++++ b/plugins/colorengines/lcms2/CMakeLists.txt
+@@ -31,7 +31,7 @@ include_directories(
+     ${CMAKE_CURRENT_SOURCE_DIR}/colorprofiles
+ )
+ 
+-if (HAVE_LCMS24 AND OPENEXR_FOUND)
++if (HAVE_LCMS24 AND OpenEXR_FOUND)
+ include_directories( 
+     ${CMAKE_CURRENT_SOURCE_DIR}/colorspaces/gray_f16
+     ${CMAKE_CURRENT_SOURCE_DIR}/colorspaces/rgb_f16
+@@ -41,7 +41,7 @@ endif ()
+ 
+ set(FILE_OPENEXR_SOURCES)
+ set(LINK_OPENEXR_LIB)
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     include_directories(${OPENEXR_INCLUDE_DIR})
+     set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES})
+     add_definitions(${OPENEXR_DEFINITIONS})
+@@ -80,7 +80,7 @@ set ( lcmsengine_SRCS
+     LcmsEnginePlugin.cpp
+ )
+ 
+-if (HAVE_LCMS24 AND OPENEXR_FOUND)
++if (HAVE_LCMS24 AND OpenEXR_FOUND)
+     set ( lcmsengine_SRCS
+         ${lcmsengine_SRCS}
+         colorspaces/gray_f16/GrayF16ColorSpace.cpp
+diff --git a/plugins/colorengines/lcms2/tests/CMakeLists.txt 
b/plugins/colorengines/lcms2/tests/CMakeLists.txt
+index 2540acc834c..77bd0b3fe4a 100644
+--- a/plugins/colorengines/lcms2/tests/CMakeLists.txt
++++ b/plugins/colorengines/lcms2/tests/CMakeLists.txt
+@@ -12,7 +12,7 @@ include_directories( ../colorspaces/cmyk_u16
+     ../colorprofiles
+     ..
+ )
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     include_directories(${OPENEXR_INCLUDE_DIR})
+ endif()
+ include_directories( ${PIGMENT_INCLUDES} ${LCMS2_INCLUDE_DIR} )
+-- 
+GitLab
+

Reply via email to