From 6fdc73e099fd92bbdc4419b810a807afce4a8771 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Thu, 28 Apr 2016 10:42:52 +0800 Subject: gnu: fltk: Fix undefined symbol `Fl_XFont_On_Demand::value'. * gnu/packages/patches/fltk-xfont-on-demand.patch: New patch. * gnu/packages/fltk.scm (fltk)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/fltk.scm | 3 +- gnu/packages/patches/fltk-xfont-on-demand.patch | 45 +++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/fltk-xfont-on-demand.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3cdf5e45ed..80017ea354 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -477,6 +477,7 @@ dist_patch_DATA = \ gnu/packages/patches/flashrom-use-libftdi1.patch \ gnu/packages/patches/flint-ldconfig.patch \ gnu/packages/patches/fltk-shared-lib-defines.patch \ + gnu/packages/patches/fltk-xfont-on-demand.patch \ gnu/packages/patches/fontforge-svg-modtime.patch \ gnu/packages/patches/freeimage-CVE-2015-0852.patch \ gnu/packages/patches/gawk-fts-test.patch \ diff --git a/gnu/packages/fltk.scm b/gnu/packages/fltk.scm index a0180c0432..bc6b4ab5e6 100644 --- a/gnu/packages/fltk.scm +++ b/gnu/packages/fltk.scm @@ -47,7 +47,8 @@ (sha256 (base32 "15qd7lkz5d5ynz70xhxhigpz3wns39v9xcf7ggkl0792syc8sfgq")) - (patches (search-patches "fltk-shared-lib-defines.patch")))) + (patches (search-patches "fltk-shared-lib-defines.patch" + "fltk-xfont-on-demand.patch")))) (build-system gnu-build-system) (inputs `(("libjpeg" ,libjpeg-8) ;jpeg_read_header argument error in libjpeg-9 diff --git a/gnu/packages/patches/fltk-xfont-on-demand.patch b/gnu/packages/patches/fltk-xfont-on-demand.patch new file mode 100644 index 0000000000..cdcdd9af05 --- /dev/null +++ b/gnu/packages/patches/fltk-xfont-on-demand.patch @@ -0,0 +1,45 @@ +Fixes undefined reference to `Fl_XFont_On_Demand::value()'. +From . + +Index: src/fl_font.cxx +=================================================================== +--- fltk-1.3.3/src/fl_font.cxx (revision 10503) ++++ fltk-1.3.3/src/fl_font.cxx (revision 10504) +@@ -55,6 +55,12 @@ + # include "fl_font_x.cxx" + #endif // WIN32 + ++#if ! (defined(WIN32) || defined(__APPLE__)) ++XFontStruct *fl_X_core_font() ++{ ++ return fl_xfont.value(); ++} ++#endif + + double fl_width(const char* c) { + if (c) return fl_width(c, (int) strlen(c)); +Index: src/gl_draw.cxx +=================================================================== +--- fltk-1.3.3/src/gl_draw.cxx (revision 10503) ++++ fltk-1.3.3/src/gl_draw.cxx (revision 10504) +@@ -81,7 +81,7 @@ + * then sorting through them at draw time (for normal X rendering) to find which one can + * render the current glyph... But for now, just use the first font in the list for GL... + */ +- XFontStruct *font = fl_xfont; ++ XFontStruct *font = fl_X_core_font(); + int base = font->min_char_or_byte2; + int count = font->max_char_or_byte2-base+1; + fl_fontsize->listbase = glGenLists(256); +Index: FL/x.H +=================================================================== +--- fltk-1.3.3/FL/x.H (revision 10503) ++++ fltk-1.3.3/FL/x.H (revision 10504) +@@ -132,6 +132,7 @@ + XFontStruct *ptr; + }; + extern FL_EXPORT Fl_XFont_On_Demand fl_xfont; ++extern FL_EXPORT XFontStruct* fl_X_core_font(); + + // this object contains all X-specific stuff about a window: + // Warning: this object is highly subject to change! -- cgit v1.2.3