From be82e02e9b9524bedc5a21051a23c800e5135f1a Mon Sep 17 00:00:00 2001 From: Andreas Sturmlechner Date: Mon, 19 Feb 2018 17:58:49 +0100 Subject: app-office/calligra: Workaround unexpected KDE_DOC_DIR content Closes: https://bugs.gentoo.org/648126 Package-Manager: Portage-2.3.24, Repoman-2.3.6 --- app-office/calligra/calligra-3.1.0-r2.ebuild | 235 +++++++++++++++++++++ app-office/calligra/files/calligra-3.1.0-doc.patch | 13 ++ 2 files changed, 248 insertions(+) create mode 100644 app-office/calligra/calligra-3.1.0-r2.ebuild create mode 100644 app-office/calligra/files/calligra-3.1.0-doc.patch (limited to 'app-office/calligra') diff --git a/app-office/calligra/calligra-3.1.0-r2.ebuild b/app-office/calligra/calligra-3.1.0-r2.ebuild new file mode 100644 index 000000000000..68e6f30d1ddc --- /dev/null +++ b/app-office/calligra/calligra-3.1.0-r2.ebuild @@ -0,0 +1,235 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +CHECKREQS_DISK_BUILD="4G" +KDE_APPS_MINIMAL="17.12.0" +KDE_DOC_DIR="xxx" # contains no language subdirs +KDE_HANDBOOK="forceoptional" +KDE_PO_DIRS="po plan/po" +KDE_TEST="forceoptional" +inherit check-reqs kde5 versionator + +DESCRIPTION="KDE Office Suite" +HOMEPAGE="https://www.calligra.org/" +[[ ${KDE_BUILD_TYPE} == release ]] && \ + SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz + calligra_features_plan? ( mirror://kde/stable/${PN}/${PV}/${PN}plan-${PV}.tar.xz )" + +LICENSE="GPL-2" + +[[ ${KDE_BUILD_TYPE} == release ]] && \ +KEYWORDS="~amd64 ~x86" + +CAL_FTS=( karbon plan sheets words ) + +IUSE="activities +crypt +fontconfig gemini gsl import-filter +lcms okular openexr +pdf + phonon pim spacenav +truetype X $(printf 'calligra_features_%s ' ${CAL_FTS[@]}) + calligra_experimental_features_stage" + +# TODO: Not packaged: Cauchy (https://bitbucket.org/cyrille/cauchy) +# Required for the matlab/octave formula tool +# FIXME: Disabled by upstream for good reason +# Crashes plan (https://bugs.kde.org/show_bug.cgi?id=311940) +# $(add_kdeapps_dep akonadi) +# $(add_kdeapps_dep akonadi-contacts) +# Currently upstream-disabled in plan +# =dev-libs/kproperty-3.0*:5 +# =dev-libs/kreport-3.0*:5 +COMMON_DEPEND=" + $(add_frameworks_dep karchive) + $(add_frameworks_dep kcmutils) + $(add_frameworks_dep kcodecs) + $(add_frameworks_dep kcompletion) + $(add_frameworks_dep kconfig) + $(add_frameworks_dep kconfigwidgets) + $(add_frameworks_dep kcoreaddons) + $(add_frameworks_dep kdelibs4support) + $(add_frameworks_dep kemoticons) + $(add_frameworks_dep kglobalaccel) + $(add_frameworks_dep kguiaddons) + $(add_frameworks_dep ki18n) + $(add_frameworks_dep kiconthemes) + $(add_frameworks_dep kio) + $(add_frameworks_dep kitemmodels) + $(add_frameworks_dep kitemviews) + $(add_frameworks_dep kjobwidgets) + $(add_frameworks_dep knotifications) + $(add_frameworks_dep knotifyconfig) + $(add_frameworks_dep kparts) + $(add_frameworks_dep kross) + $(add_frameworks_dep ktextwidgets) + $(add_frameworks_dep kwallet) + $(add_frameworks_dep kwidgetsaddons) + $(add_frameworks_dep kwindowsystem) + $(add_frameworks_dep kxmlgui) + $(add_frameworks_dep sonnet) + $(add_qt_dep designer) + $(add_qt_dep qtdbus) + $(add_qt_dep qtdeclarative) + $(add_qt_dep qtgui) + $(add_qt_dep qtnetwork) + $(add_qt_dep qtprintsupport) + $(add_qt_dep qtscript) + $(add_qt_dep qtsvg) + $(add_qt_dep qtwidgets) + $(add_qt_dep qtxml) + dev-lang/perl + sys-libs/zlib + virtual/libiconv + activities? ( $(add_frameworks_dep kactivities) ) + crypt? ( app-crypt/qca:2[qt5] ) + fontconfig? ( media-libs/fontconfig ) + gemini? ( $(add_qt_dep qtdeclarative 'widgets') ) + gsl? ( sci-libs/gsl ) + import-filter? ( + $(add_frameworks_dep khtml) + 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/ilmbase:= + media-libs/lcms:2 + ) + openexr? ( media-libs/openexr ) + pdf? ( app-text/poppler[qt5] ) + phonon? ( media-libs/phonon[qt5(+)] ) + spacenav? ( dev-libs/libspnav ) + truetype? ( media-libs/freetype:2 ) + X? ( + $(add_qt_dep qtx11extras) + x11-libs/libX11 + ) + calligra_experimental_features_stage? ( + $(add_qt_dep qtwebkit) + okular? ( $(add_kdeapps_dep okular) ) + ) + calligra_features_plan? ( + $(add_frameworks_dep khtml) + $(add_frameworks_dep kholidays) + dev-libs/kdiagram:5 + pim? ( + $(add_kdeapps_dep kcalcore) + $(add_kdeapps_dep kcontacts) + ) + ) + calligra_features_sheets? ( dev-cpp/eigen:3 ) + calligra_features_words? ( + dev-libs/libxslt + okular? ( $(add_kdeapps_dep okular) ) + ) +" +DEPEND="${COMMON_DEPEND} + dev-libs/boost + sys-devel/gettext + x11-misc/shared-mime-info + test? ( $(add_frameworks_dep threadweaver) ) +" +RDEPEND="${COMMON_DEPEND} + calligra_features_karbon? ( media-gfx/pstoedit[plotutils] ) + !app-office/calligra:4 + !app-office/calligra-l10n:4 +" +RESTRICT+=" test" + +PATCHES=( + "${FILESDIR}"/${P}-no-arch-detection.patch + "${FILESDIR}"/${P}-doc.patch +) + +pkg_pretend() { + check-reqs_pkg_pretend +} + +pkg_setup() { + kde5_pkg_setup + check-reqs_pkg_setup +} + +src_prepare() { + if use calligra_features_plan && [[ ${KDE_BUILD_TYPE} == release ]]; then + mv ../${PN}plan-${PV} plan || die + sed -e "/add_subdirectory(plan)/s/#//" \ + -e "/^calligra_disable_product(APP_PLAN/s/^/#/" \ + -i CMakeLists.txt || die + fi + kde5_src_prepare + + if ! use test; then + sed -e "/add_subdirectory( *benchmarks *)/s/^/#DONT/" \ + -i libs/pigment/CMakeLists.txt || die + fi + + # Unconditionally disable deprecated deps (required by QtQuick1) + punt_bogus_dep Qt5 Declarative + punt_bogus_dep Qt5 OpenGL + + if ! use calligra_experimental_features_stage; then + punt_bogus_dep Qt5 WebKitWidgets + punt_bogus_dep Qt5 WebKit + fi + + # Hack around the excessive use of CMake macros + if use okular && ! use calligra_features_words; then + sed -i -e "/add_subdirectory( *okularodtgenerator *)/ s/^/#DONT/" \ + extras/CMakeLists.txt || die "Failed to disable OKULAR_GENERATOR_ODT" + fi + + if use okular && ! use calligra_experimental_features_stage; then + sed -i -e "/add_subdirectory( *okularodpgenerator *)/ s/^/#DONT/" \ + extras/CMakeLists.txt || die "Failed to disable OKULAR_GENERATOR_ODP" + fi +} + +src_configure() { + local cal_ft myproducts + + # applications + for cal_ft in ${CAL_FTS[@]}; do + use calligra_features_${cal_ft} && myproducts+=( "${cal_ft^^}" ) + done + + use calligra_experimental_features_stage && myproducts+=( STAGE ) + + use lcms && myproducts+=( PLUGIN_COLORENGINES ) + use spacenav && myproducts+=( PLUGIN_SPACENAVIGATOR ) + + local mycmakeargs=( + -DPACKAGERS_BUILD=OFF + -DRELEASE_BUILD=ON + -DWITH_Iconv=ON + -DPRODUCTSET="${myproducts[*]}" + $(cmake-utils_use_find_package activities KF5Activities) + -DWITH_Qca-qt5=$(usex crypt) + -DWITH_Fontconfig=$(usex fontconfig) + $(cmake-utils_use_find_package gemini Libgit2) + $(cmake-utils_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-utils_use_find_package phonon Phonon4Qt5) + $(cmake-utils_use_find_package pim KF5CalendarCore) + $(cmake-utils_use_find_package pim KF5Contacts) + -DWITH_LCMS2=$(usex lcms) + -DWITH_Okular5=$(usex okular) + -DWITH_OpenEXR=$(usex openexr) + -DWITH_Poppler=$(usex pdf) + -DWITH_Eigen3=$(usex calligra_features_sheets) + -DBUILD_UNMAINTAINED=$(usex calligra_experimental_features_stage) + -ENABLE_CSTESTER_TESTING=$(usex test) + -DWITH_Freetype=$(usex truetype) + ) + + kde5_src_configure +} diff --git a/app-office/calligra/files/calligra-3.1.0-doc.patch b/app-office/calligra/files/calligra-3.1.0-doc.patch new file mode 100644 index 000000000000..ad150edbf8a4 --- /dev/null +++ b/app-office/calligra/files/calligra-3.1.0-doc.patch @@ -0,0 +1,13 @@ +--- a/CMakeLists.txt 2018-03-15 16:59:36.624682111 +0100 ++++ b/CMakeLists.txt 2018-03-15 17:07:02.306267220 +0100 +@@ -1160,9 +1160,7 @@ + add_subdirectory(braindump) + endif() + +-if(SHOULD_BUILD_DOC) +- add_subdirectory(doc) +-endif() ++add_subdirectory(doc) + + if(SHOULD_BUILD_PART_QTQUICK) + add_subdirectory(qtquick) -- cgit v1.2.3-65-gdbad