commit:     2fceba22ca27794f7c955b327000034baf7d8755
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 24 22:25:15 2019 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Mar 24 22:25:46 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2fceba22

media-gfx/fontforge: skip gdk_init if running a script

Closes: https://bugs.gentoo.org/681650
Package-Manager: Portage-2.3.62_p4, Repoman-2.3.12_p87
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 media-gfx/fontforge/files/20190317-gdk_init.patch  | 39 ++++++++++++++++++++++
 ...0190317.ebuild => fontforge-20190317-r1.ebuild} | 13 ++------
 2 files changed, 41 insertions(+), 11 deletions(-)

diff --git a/media-gfx/fontforge/files/20190317-gdk_init.patch 
b/media-gfx/fontforge/files/20190317-gdk_init.patch
new file mode 100644
index 00000000000..060e6957748
--- /dev/null
+++ b/media-gfx/fontforge/files/20190317-gdk_init.patch
@@ -0,0 +1,39 @@
+From 4577ad7205c600c6c8e809e10d51eb2118cb66b5 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <flop...@gentoo.org>
+Date: Sun, 24 Mar 2019 18:12:21 -0400
+Subject: [PATCH] Defer gdk_init() until after CheckIsScript()
+
+This allows fontforge to run without an X server available.
+
+Fixes: https://github.com/fontforge/fontforge/issues/3582
+---
+ fontforgeexe/startui.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/fontforgeexe/startui.c b/fontforgeexe/startui.c
+index 1bb5fd8ca..ae15afbf2 100644
+--- a/fontforgeexe/startui.c
++++ b/fontforgeexe/startui.c
+@@ -900,9 +900,6 @@ int fontforge_main( int argc, char **argv ) {
+ #if !(GLIB_CHECK_VERSION(2, 35, 0))
+     g_type_init();
+ #endif
+-#ifdef FONTFORGE_CAN_USE_GDK
+-    gdk_init(&argc, &argv);
+-#endif
+ 
+     /* Must be done before we cache the current directory */
+     /* Change to HOME dir if specified on the commandline */
+@@ -1093,6 +1090,9 @@ int fontforge_main( int argc, char **argv ) {
+     CheckIsScript(argc,argv); /* Will run the script and exit if it is a 
script */
+                                       /* If there is no UI, there is always a 
script */
+                                       /*  and we will never return from the 
above */
++#ifdef FONTFORGE_CAN_USE_GDK
++    gdk_init(&argc, &argv);
++#endif
+     if ( load_prefs==NULL ||
+           (strcasecmp(load_prefs,"Always")!=0 &&      /* Already loaded */
+            strcasecmp(load_prefs,"Never")!=0 ))
+-- 
+2.21.0
+

diff --git a/media-gfx/fontforge/fontforge-20190317.ebuild 
b/media-gfx/fontforge/fontforge-20190317-r1.ebuild
similarity index 93%
rename from media-gfx/fontforge/fontforge-20190317.ebuild
rename to media-gfx/fontforge/fontforge-20190317-r1.ebuild
index 3e2be07fecd..faf3deb43fb 100644
--- a/media-gfx/fontforge/fontforge-20190317.ebuild
+++ b/media-gfx/fontforge/fontforge-20190317-r1.ebuild
@@ -4,9 +4,8 @@
 EAPI=7
 
 PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
-VIRTUALX_REQUIRED="manual"
 
-inherit python-single-r1 virtualx xdg
+inherit python-single-r1 xdg
 
 DESCRIPTION="postscript font editor and converter"
 HOMEPAGE="http://fontforge.github.io/";
@@ -57,7 +56,6 @@ DEPEND="${RDEPEND}
 BDEPEND="
        sys-devel/gettext
        virtual/pkgconfig
-       test? ( gtk? ( ${VIRTUALX_DEPEND} ) )
 "
 
 # Needs keywording on many arches.
@@ -68,6 +66,7 @@ BDEPEND="
 
 PATCHES=(
        "${FILESDIR}"/20170731-gethex-unaligned.patch
+       "${FILESDIR}"/20190317-gdk_init.patch
 )
 
 pkg_setup() {
@@ -108,14 +107,6 @@ src_compile() {
        emake
 }
 
-src_test() {
-       if use gtk; then
-               virtx emake check
-       else
-               emake check
-       fi
-}
-
 src_install() {
        default
        find "${ED}" -name '*.la' -type f -delete || die

Reply via email to