>From c499f6fa84ce78bc568a0b553cc41d17d0724e2d Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Sat, 17 Jun 2017 08:56:36 +0200 Subject: [PATCH] gnu: calibre: Fix build with Qt >5.8. * gnu/packages/patches/calibre-fix-missing-qbasicfontdatabase_p.patch: New file. * gnu/local.mk: Add patch. * gnu/packages/ebook.scm: Add patch. --- gnu/local.mk | 1 + gnu/packages/ebook.scm | 3 +- .../calibre-fix-missing-qbasicfontdatabase_p.patch | 85 ++++++++++++++++++++++ 3 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/calibre-fix-missing-qbasicfontdatabase_p.patch diff --git a/gnu/local.mk b/gnu/local.mk index 148ba12d6..216853570 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -526,6 +526,7 @@ dist_patch_DATA = \ %D%/packages/patches/calibre-dont-load-remote-icons.patch \ %D%/packages/patches/calibre-no-updates-dialog.patch \ %D%/packages/patches/calibre-use-packaged-feedparser.patch \ + %D%/packages/patches/calibre-fix-missing-qbasicfontdatabase_p.patch \ %D%/packages/patches/cdparanoia-fpic.patch \ %D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \ %D%/packages/patches/ceph-disable-cpu-optimizations.patch \ diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index 1d64e9b69..ad7a03185 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -91,7 +91,8 @@ (patches (search-patches "calibre-drop-unrar.patch" "calibre-use-packaged-feedparser.patch" "calibre-dont-load-remote-icons.patch" - "calibre-no-updates-dialog.patch")))) + "calibre-no-updates-dialog.patch" + "calibre-fix-missing-qbasicfontdatabase_p.patch")))) (build-system python-build-system) (native-inputs `(("pkg-config" ,pkg-config) diff --git a/gnu/packages/patches/calibre-fix-missing-qbasicfontdatabase_p.patch b/gnu/packages/patches/calibre-fix-missing-qbasicfontdatabase_p.patch new file mode 100644 index 000000000..25cea0818 --- /dev/null +++ b/gnu/packages/patches/calibre-fix-missing-qbasicfontdatabase_p.patch @@ -0,0 +1,85 @@ +From 82bd2e1a51df0650cb40894c5dc2b958f601a91d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 16 May 2017 14:20:51 -0400 +Subject: [PATCH] Compatibility with qt5-5.9.0 + +--- + src/calibre/headless/fontconfig_database.cpp | 16 ++++++++++------ + src/calibre/headless/fontconfig_database.h | 12 ++++++++---- + 2 files changed, 18 insertions(+), 10 deletions(-) + +diff --git a/src/calibre/headless/fontconfig_database.cpp b/src/calibre/headless/fontconfig_database.cpp +index 4e87b8f81b..33defd0b48 100644 +--- a/src/calibre/headless/fontconfig_database.cpp ++++ b/src/calibre/headless/fontconfig_database.cpp +@@ -48,14 +48,18 @@ + #include + + #if (QT_VERSION >= QT_VERSION_CHECK(5, 8, 0)) +-#include ++# include + #else +-#include ++# include ++#endif ++#if (QT_VERSION >= QT_VERSION_CHECK(5, 9, 0)) ++# include ++#else ++# include + #endif +-#include + #include + #if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)) +-#include ++# include + #endif + + #include +@@ -763,7 +767,7 @@ QFontEngine *QFontconfigDatabase::fontEngine(const QFontDef &f, void *usrPtr) + + QFontEngine *QFontconfigDatabase::fontEngine(const QByteArray &fontData, qreal pixelSize, QFont::HintingPreference hintingPreference) + { +- QFontEngineFT *engine = static_cast(QBasicFontDatabase::fontEngine(fontData, pixelSize, hintingPreference)); ++ QFontEngineFT *engine = static_cast(QFreeTypeFontDatabase::fontEngine(fontData, pixelSize, hintingPreference)); + if (engine == 0) + return 0; + +@@ -915,7 +919,7 @@ QStringList QFontconfigDatabase::addApplicationFont(const QByteArray &fontData, + + QString QFontconfigDatabase::resolveFontFamilyAlias(const QString &family) const + { +- QString resolved = QBasicFontDatabase::resolveFontFamilyAlias(family); ++ QString resolved = QFreeTypeFontDatabase::resolveFontFamilyAlias(family); + if (!resolved.isEmpty() && resolved != family) + return resolved; + FcPattern *pattern = FcPatternCreate(); +diff --git a/src/calibre/headless/fontconfig_database.h b/src/calibre/headless/fontconfig_database.h +index e2fecff724..62afc129cf 100644 +--- a/src/calibre/headless/fontconfig_database.h ++++ b/src/calibre/headless/fontconfig_database.h +@@ -7,17 +7,21 @@ + #pragma once + + #include +-#if (QT_VERSION >= QT_VERSION_CHECK(5, 8, 0)) +-#include ++#if (QT_VERSION >= QT_VERSION_CHECK(5, 9, 0)) ++# include ++#elif (QT_VERSION >= QT_VERSION_CHECK(5, 8, 0)) ++# include ++# define QFreeTypeFontDatabase QBasicFontDatabase + #else +-#include ++# include ++# define QFreeTypeFontDatabase QBasicFontDatabase + #endif + + QT_BEGIN_NAMESPACE + + class QFontEngineFT; + +-class QFontconfigDatabase : public QBasicFontDatabase ++class QFontconfigDatabase : public QFreeTypeFontDatabase + { + public: + #if (QT_VERSION >= QT_VERSION_CHECK(5, 5, 0)) -- 2.13.0