From 1c3e0a72809a70349aebc2ae75fb7bf04acbeb3d Mon Sep 17 00:00:00 2001 From: Andreas Sturmlechner Date: Sun, 23 Dec 2018 01:11:33 +0100 Subject: sci-astronomy/kstars: Fix build with >=libraw-0.19 Package-Manager: Portage-2.3.52, Repoman-2.3.12 Signed-off-by: Andreas Sturmlechner --- .../kstars/files/kstars-2.9.5-libraw-0.19.patch | 73 ++++++++++++++++++++++ sci-astronomy/kstars/kstars-2.9.5.ebuild | 7 ++- 2 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 sci-astronomy/kstars/files/kstars-2.9.5-libraw-0.19.patch diff --git a/sci-astronomy/kstars/files/kstars-2.9.5-libraw-0.19.patch b/sci-astronomy/kstars/files/kstars-2.9.5-libraw-0.19.patch new file mode 100644 index 000000000000..7db3faada9bd --- /dev/null +++ b/sci-astronomy/kstars/files/kstars-2.9.5-libraw-0.19.patch @@ -0,0 +1,73 @@ +From 25630e41c71990d619f9f96693624056a8d89039 Mon Sep 17 00:00:00 2001 +From: Pino Toscano +Date: Tue, 31 Jul 2018 20:48:17 +0200 +Subject: cmake: fix enabling of exceptions + +Use the ECM module KDECompilerSettings unconditionally on every +platform, as it provides the kde_enable_exceptions cmake macro needed. +This might break build on android, but then the exclusion of +KDECompilerSettings on android is a 2 years old hack, most probably +working around a different issue which will need its own investigation, +and fix. + +Use kde_enable_exceptions() unconditionally, which will do the right job +for all the different compilers. This also removes the -Dfexceptions +defines (which effectively does nothing), and the manual -fexceptions in +htmesh. + +Incidentally, this fixes the build with libraw 0.19.0, which requires +the usage of exceptions in case LIBRAW_NO_MEMPOOL_CHECK is not defined. + +* 2018-12-23: asturm@gentoo.org: backported to 2.9.5. + +--- + CMakeLists.txt | 9 ++++----- + kstars/htmesh/CMakeLists.txt | 4 ---- + 2 files changed, 4 insertions(+), 9 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 69f2409..73224cc 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -87,10 +87,7 @@ include(ECMAddAppIcon) + include(KDEInstallDirs) + include(MacroBoolTo01) + include(ECMQtDeclareLoggingCategory) +-if(NOT CMAKE_TOOLCHAIN_FILE STREQUAL ${CMAKE_SOURCE_DIR}/android/toolchain-android.cmake) +- #We get error "could not find main method" with this module +- include(KDECompilerSettings NO_POLICY_SCOPE) +-endif() ++include(KDECompilerSettings NO_POLICY_SCOPE) + include(KDECMakeSettings) + include(FeatureSummary) + +@@ -252,8 +249,10 @@ if (CMAKE_BUILD_TYPE STREQUAL "Debug") + endif() + add_definitions(-DQT_NO_CAST_TO_ASCII) + ++# Needed for htmesh, and libraw ++kde_enable_exceptions() ++ + if (UNIX) +- add_definitions(-Dfexceptions) + + # TEMPORARY: To disable QCustomPlot warning until 2.0.0 is released which fixes these warnings + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-non-virtual-dtor") +diff --git a/kstars/htmesh/CMakeLists.txt b/kstars/htmesh/CMakeLists.txt +index e76d84e..0dbdc8f 100644 +--- a/kstars/htmesh/CMakeLists.txt ++++ b/kstars/htmesh/CMakeLists.txt +@@ -32,10 +32,6 @@ IF (ANDROID) + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") + ENDIF () + +-#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${KDE4_ENABLE_EXCEPTIONS}") +-#TODO is there KF5_ENABLE_EXCEPTIONS? +-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexceptions") +- + add_library(htmesh STATIC ${HTMesh_LIB_SRC}) + + add_definitions(-D_EXPORTING) +-- +cgit v1.1 + diff --git a/sci-astronomy/kstars/kstars-2.9.5.ebuild b/sci-astronomy/kstars/kstars-2.9.5.ebuild index a982e58b0958..5bc717c962f0 100644 --- a/sci-astronomy/kstars/kstars-2.9.5.ebuild +++ b/sci-astronomy/kstars/kstars-2.9.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2018 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -61,7 +61,10 @@ RDEPEND="${COMMON_DEPEND} ${PYTHON_DEPS} " -PATCHES=( "${FILESDIR}/${P}-qt-5.11.patch" ) +PATCHES=( + "${FILESDIR}/${P}-qt-5.11.patch" + "${FILESDIR}/${P}-libraw-0.19.patch" +) src_configure() { local mycmakeargs=( -- cgit v1.2.3