x11-libs/gtkmathview: Fix build with gcc6, EAPI6
authorHarri Nieminen <moikkis@gmail.com>
Fri, 3 Mar 2017 10:36:01 +0000 (12:36 +0200)
committerDavid Seifert <soap@gentoo.org>
Tue, 7 Mar 2017 09:09:56 +0000 (10:09 +0100)
Package-Manager: Portage-2.3.4, Repoman-2.3.2
Closes: https://github.com/gentoo/gentoo/pull/4119

x11-libs/gtkmathview/files/gtkmathview-0.8.0-gcc44.patch
x11-libs/gtkmathview/files/gtkmathview-0.8.0-gcc6.patch [new file with mode: 0644]
x11-libs/gtkmathview/gtkmathview-0.8.0-r3.ebuild [new file with mode: 0644]

index f85a828e1f23df3297be35b5d2d329e6801b0257..f15a6ff73fa8e9135d170c791d1ea475464271a3 100644 (file)
@@ -1,5 +1,5 @@
---- src/common/AbstractLogger.cc.orig  2009-04-25 20:39:35.815053524 +0100
-+++ src/common/AbstractLogger.cc       2009-04-25 20:40:01.240595176 +0100
+--- a/src/common/AbstractLogger.cc.orig        2009-04-25 20:39:35.815053524 +0100
++++ b/src/common/AbstractLogger.cc     2009-04-25 20:40:01.240595176 +0100
 @@ -19,6 +19,7 @@
  #include <config.h>
  
diff --git a/x11-libs/gtkmathview/files/gtkmathview-0.8.0-gcc6.patch b/x11-libs/gtkmathview/files/gtkmathview-0.8.0-gcc6.patch
new file mode 100644 (file)
index 0000000..7361f8e
--- /dev/null
@@ -0,0 +1,99 @@
+From: Gert Wollny <gw.fossdev@gmail.com>
+Date: Sun, 26 Jun 2016 13:25:00 +0200
+Description: gcc 6.0 build fixes
+Bug: https://bugs.debian.org/811682
+
+--- a/src/engine/common/View.cc
++++ b/src/engine/common/View.cc
+@@ -291,7 +291,7 @@
+         }
+     }
+-  return false;
++  return SmartPtr<Element>();
+ }
+ bool
+--- a/src/backend/common/tfm/TFM.hh
++++ b/src/backend/common/tfm/TFM.hh
+@@ -37,7 +37,7 @@
+     unsigned char face;
+     const char* codingScheme;
+     int designSize;
+-    int checksum;
++    unsigned int checksum;
+     unsigned int nDimensions;
+     unsigned int nCharacters;
+   };
+@@ -52,7 +52,7 @@
+   struct Kerning
+   {
+     UChar8 index;
+-    int value;
++    unsigned int value;
+   };
+   struct Ligature
+@@ -67,7 +67,7 @@
+     UChar8 index;
+     int width;
+     int height;
+-    int depth;
++    unsigned int depth;
+     int italicCorrection;
+     unsigned char nKernings;
+     const Kerning* kerning;
+--- a/src/backend/common/ComputerModernShaper.cc
++++ b/src/backend/common/ComputerModernShaper.cc
+@@ -578,7 +578,7 @@
+   };
+ #endif
+-static ComputerModernShaper::PlainChar cmsMap[] =
++static ComputerModernShaper::PlainChar32 cmsMap[] =
+   {
+     { 0x007B, 0x66 },  // LEFT CURLY BRACKET
+     { 0x007D, 0x67 },  // RIGHT CURLY BRACKET
+--- a/src/backend/common/StandardSymbolsShaper.hh
++++ b/src/backend/common/StandardSymbolsShaper.hh
+@@ -32,20 +32,20 @@
+   struct HStretchyChar
+   {
+     Char16 ch;
+-    Char8 normal;
+-    Char8 left;
+-    Char8 glue;
+-    Char8 right;
++    UChar8 normal;
++    UChar8 left;
++    UChar8 glue;
++    UChar8 right;
+   };
+   
+   struct VStretchyChar
+   {
+     Char16 ch;
+-    Char8 normal;
+-    Char8 top;
+-    Char8 glue;
+-    Char8 middle;
+-    Char8 bottom;
++    UChar8 normal;
++    UChar8 top;
++    UChar8 glue;
++    UChar8 middle;
++    UChar8 bottom;
+   };
+ protected:
+--- a/src/backend/common/StandardSymbolsShaper.cc
++++ b/src/backend/common/StandardSymbolsShaper.cc
+@@ -29,7 +29,7 @@
+ #include "ShapingContext.hh"
+ struct GlyphMap {
+-  Char8 index;
++  UChar8 index;
+   Char16 ch;
+ };
diff --git a/x11-libs/gtkmathview/gtkmathview-0.8.0-r3.ebuild b/x11-libs/gtkmathview/gtkmathview-0.8.0-r3.ebuild
new file mode 100644 (file)
index 0000000..be94952
--- /dev/null
@@ -0,0 +1,84 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools
+
+DESCRIPTION="Rendering engine for MathML documents"
+HOMEPAGE="http://helm.cs.unibo.it/mml-widget/"
+SRC_URI="http://helm.cs.unibo.it/mml-widget/sources/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="gtk mathml svg t1lib"
+
+RDEPEND="
+       >=dev-libs/glib-2.2.1:2
+       >=dev-libs/popt-1.7
+       >=dev-libs/libxml2-2.6.7:2
+       gtk? (
+               >=media-libs/t1lib-5:5
+               >=x11-libs/gtk+-2.2.1:2
+               x11-libs/pango
+               x11-libs/pangox-compat
+       )
+       mathml? ( media-fonts/texcm-ttf )
+       t1lib?  ( >=media-libs/t1lib-5:5 )
+"
+DEPEND="${RDEPEND}
+       dev-libs/libxslt
+       virtual/pkgconfig
+"
+
+DOCS=( ANNOUNCEMENT AUTHORS BUGS ChangeLog CONTRIBUTORS HISTORY NEWS README TODO )
+
+PATCHES=(
+       "${FILESDIR}"/${P}-gcc43.patch
+       "${FILESDIR}"/${P}-gcc44.patch
+       "${FILESDIR}"/${P}-cond-t1.patch
+       # Fix building against libxml2[icu], bug #356095
+       "${FILESDIR}"/${P}-fix-template.patch
+       # Fix building with gold, bug #369117; requires eautoreconf
+       "${FILESDIR}"/${P}-underlinking.patch
+       "${FILESDIR}"/${P}-gcc47.patch
+       "${FILESDIR}"/${P}-gcc6.patch
+)
+
+src_prepare() {
+       default
+
+       # m4 macros from upstream git, required for eautoreconf
+       if [[ ! -d ac-helpers ]]; then
+               mkdir ac-helpers || die "mkdir failed"
+               cp "${FILESDIR}"/binreloc.m4 ac-helpers || die "cp failed"
+       fi
+
+       sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac || die
+
+       AT_M4DIR=ac-helpers eautoreconf
+}
+
+src_configure() {
+       # --disable-popt will build only the library and not the frontend
+       # TFM is needed for SVG, default value is 2
+       econf $(use_enable gtk) \
+               $(use_enable svg) \
+               $(use_with t1lib) \
+               --with-popt \
+               --enable-libxml2 \
+               --enable-libxml2-reader \
+               --enable-ps \
+               --enable-tfm=2 \
+               --enable-builder-cache \
+               --enable-breaks \
+               --enable-boxml \
+               --disable-gmetadom \
+               --disable-static
+}
+
+src_install() {
+       default
+       find "${D}" -name '*.la' -delete || die
+}