On 06/28/15 02:30, Antoine Jacoutot wrote:
> On Sun, Jun 28, 2015 at 02:12:31AM -0400, Brian Callahan wrote:
>> Hi ports --
>>
>> Attached is an update for FLTK, updating it to its latest version plus
>> one upstream patch that fixes a linking error when linking fltk_gl with
>> fltk (which was triggered building games/flightgear/base).
>>
>> Of all the ports that depend on fltk, only graphics/openexr-viewers
>> cannot build with fltk-1.3.3. I also wonder if anyone is still using it.
>> There appears to be an option to disable fltk on openexr-viewers, so
>> that might be the way to go. Updating openexr-viewers to its latest
>> version does not fix the problem; it clearly has not updated to the
>> fltk-1.3.3 library (which is a rather major change).
>
> Out of curiosity, what is the issue exactly? Because I just tried building it
> with your fltk diff and it built fine.
>
Oh, hmm. configure was telling me that I didn't have a working FLTK. But
I'm thinking that maybe I forgot to test after pulling in that one
upstream patch to fix linking because it does indeed work.
Thanks for checking.
~Brian
>>
>> Two ports required patches obtained from upstream: x11/ede/lib and
>> x11/flwm. I will send those patches in separate emails.
>>
>> All ports build tested on amd64. Most run tested as well (EDE and flwm
>> were not).
>>
>> OK?
>>
>> ~Brian
>
>> Index: Makefile
>> ===================================================================
>> RCS file: /cvs/ports/x11/fltk/Makefile,v
>> retrieving revision 1.49
>> diff -u -p -r1.49 Makefile
>> --- Makefile 16 Sep 2014 19:56:10 -0000 1.49
>> +++ Makefile 28 Jun 2015 04:15:30 -0000
>> @@ -5,37 +5,35 @@ NOT_FOR_ARCHS= m88k
>>
>> COMMENT= Fast-Light Tool Kit
>>
>> -VER= 1.3.2
>> +VER= 1.3.3
>> DISTNAME= fltk-${VER}-source
>> PKGNAME= fltk-${VER}
>> -REVISION= 0
>>
>> CATEGORIES= x11
>> -SHARED_LIBS= fltk 7.1 \
>> - fltk_forms 7.1 \
>> - fltk_gl 7.1 \
>> - fltk_images 7.1
>>
>> -HOMEPAGE= http://www.fltk.org/
>> +# These all need to stay in sync.
>> +SHARED_LIBS= fltk 8.0 \
>> + fltk_forms 8.0 \
>> + fltk_gl 8.0 \
>> + fltk_images 8.0
>>
>> +HOMEPAGE= http://www.fltk.org/
>> MAINTAINER = Brian Callahan <[email protected]>
>>
>> # LGPLv2 with exceptions (see COPYING)
>> PERMIT_PACKAGE_CDROM= Yes
>>
>> -WANTLIB += X11 Xau Xdmcp Xext Xft Xinerama c fontconfig jpeg m
>> -WANTLIB += png pthread stdc++ z
>> +WANTLIB += GL GLU X11 Xau Xcursor Xdmcp Xext Xfixes Xft Xinerama
>> +WANTLIB += c fontconfig jpeg m png pthread stdc++ z
>>
>> -MASTER_SITES=
>> http://ftp.funet.fi/pub/mirrors/ftp.easysw.com/pub/fltk/${VER}/ \
>> - http://ftp.easysw.com/pub/fltk/${VER}/ \
>> - ftp://ftp.easysw.com/pub/fltk/${VER}/
>> +MASTER_SITES= http://fltk.org/pub/fltk/${VER}/
>>
>> LIB_DEPENDS= graphics/jpeg \
>> graphics/png
>>
>> NO_TEST= Yes
>> CONFIGURE_STYLE=autoconf no-autoheader
>> -AUTOCONF_VERSION=2.68
>> +AUTOCONF_VERSION=2.69
>> CONFIGURE_ARGS= ${CONFIGURE_SHARED} \
>> --enable-threads
>> CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
>> Index: distinfo
>> ===================================================================
>> RCS file: /cvs/ports/x11/fltk/distinfo,v
>> retrieving revision 1.13
>> diff -u -p -r1.13 distinfo
>> --- distinfo 22 Mar 2013 22:50:25 -0000 1.13
>> +++ distinfo 28 Jun 2015 04:15:30 -0000
>> @@ -1,2 +1,2 @@
>> -SHA256 (fltk-1.3.2-source.tar.gz) =
>> F2BE35TzG9U6WAbPUFTKeLGAv5rifOR2SWCIM2le5KQ=
>> -SIZE (fltk-1.3.2-source.tar.gz) = 4260874
>> +SHA256 (fltk-1.3.3-source.tar.gz) =
>> +DmNmNciHUDne8exnnYa2vLx74uwww7Ot7608ic9DZc=
>> +SIZE (fltk-1.3.3-source.tar.gz) = 4986376
>> Index: patches/patch-FL_Fl_Tree_Item_H
>> ===================================================================
>> RCS file: patches/patch-FL_Fl_Tree_Item_H
>> diff -N patches/patch-FL_Fl_Tree_Item_H
>> --- patches/patch-FL_Fl_Tree_Item_H 11 Jul 2014 20:57:31 -0000 1.1
>> +++ /dev/null 1 Jan 1970 00:00:00 -0000
>> @@ -1,12 +0,0 @@
>> -$OpenBSD: patch-FL_Fl_Tree_Item_H,v 1.1 2014/07/11 20:57:31 pascal Exp $
>> ---- FL/Fl_Tree_Item.H.orig Fri Jul 11 18:56:57 2014
>> -+++ FL/Fl_Tree_Item.H Fri Jul 11 18:57:03 2014
>> -@@ -61,7 +61,7 @@ class FL_EXPORT Fl_Tree_Item {
>> - OPEN = 1<<0, ///> item is open
>> - VISIBLE = 1<<1, ///> item is visible
>> - ACTIVE = 1<<2, ///> item is active
>> -- SELECTED = 1<<3, ///> item is selected
>> -+ SELECTED = 1<<3 ///> item is selected
>> - };
>> - #if FLTK_ABI_VERSION >= 10301
>> - // NEW
>> Index: patches/patch-FL_x_H
>> ===================================================================
>> RCS file: patches/patch-FL_x_H
>> diff -N patches/patch-FL_x_H
>> --- /dev/null 1 Jan 1970 00:00:00 -0000
>> +++ patches/patch-FL_x_H 28 Jun 2015 04:15:30 -0000
>> @@ -0,0 +1,14 @@
>> +$OpenBSD$
>> +
>> +https://github.com/IngwiePhoenix/FLTK/commit/283b909dad09048535cec8e3d69d77fa498382bf
>> +
>> +--- FL/x.H.orig Sun Jun 28 00:05:15 2015
>> ++++ FL/x.H Sun Jun 28 00:06:22 2015
>> +@@ -132,6 +132,7 @@ class Fl_XFont_On_Demand (private)
>> + 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!
>> Index: patches/patch-configure_in
>> ===================================================================
>> RCS file: /cvs/ports/x11/fltk/patches/patch-configure_in,v
>> retrieving revision 1.14
>> diff -u -p -r1.14 patch-configure_in
>> --- patches/patch-configure_in 22 Mar 2013 22:50:25 -0000 1.14
>> +++ patches/patch-configure_in 28 Jun 2015 04:15:30 -0000
>> @@ -1,16 +1,16 @@
>> $OpenBSD: patch-configure_in,v 1.14 2013/03/22 22:50:25 bcallah Exp $
>> ---- configure.in.orig Fri Mar 22 17:39:21 2013
>> -+++ configure.in Fri Mar 22 17:41:32 2013
>> -@@ -39,7 +39,7 @@ dnl FLTK library versions...
>> +--- configure.in.orig Sat Jun 27 16:35:27 2015
>> ++++ configure.in Sat Jun 27 16:37:50 2015
>> +@@ -58,7 +58,7 @@ dnl FLTK library versions...
>> FL_MAJOR_VERSION=1
>> FL_MINOR_VERSION=3
>> - FL_PATCH_VERSION=1
>> + FL_PATCH_VERSION=3
>> -FL_API_VERSION=${FL_MAJOR_VERSION}.${FL_MINOR_VERSION}
>> +FL_API_VERSION=${LIBfltk_VERSION}
>>
>> AC_SUBST(FL_MAJOR_VERSION)
>> AC_SUBST(FL_MINOR_VERSION)
>> -@@ -914,7 +914,7 @@ case $uname_GUI in
>> +@@ -910,7 +910,7 @@ case $host_os_gui in
>> AC_MSG_WARN(Ignoring libraries \"$X_PRE_LIBS\" requested by
>> configure.)
>> fi
>>
>> @@ -19,7 +19,7 @@ $OpenBSD: patch-configure_in,v 1.14 2013
>> CFLAGS="$CFLAGS $X_CFLAGS"
>> CXXFLAGS="$CXXFLAGS $X_CFLAGS"
>> LDFLAGS="$X_LIBS $LDFLAGS"
>> -@@ -1138,7 +1138,7 @@ if test -n "$GCC"; then
>> +@@ -1165,7 +1165,7 @@ if test -n "$GCC"; then
>> if test "x$with_optim" != x; then
>> OPTIM="$with_optim $OPTIM"
>> else
>> Index: patches/patch-src_Fl_Preferences_cxx
>> ===================================================================
>> RCS file: /cvs/ports/x11/fltk/patches/patch-src_Fl_Preferences_cxx,v
>> retrieving revision 1.4
>> diff -u -p -r1.4 patch-src_Fl_Preferences_cxx
>> --- patches/patch-src_Fl_Preferences_cxx 22 Mar 2013 22:50:25 -0000
>> 1.4
>> +++ patches/patch-src_Fl_Preferences_cxx 28 Jun 2015 04:15:30 -0000
>> @@ -1,7 +1,7 @@
>> $OpenBSD: patch-src_Fl_Preferences_cxx,v 1.4 2013/03/22 22:50:25 bcallah
>> Exp $
>> ---- src/Fl_Preferences.cxx.orig Mon Apr 9 08:36:23 2012
>> -+++ src/Fl_Preferences.cxx Fri Mar 22 17:43:11 2013
>> -@@ -1079,7 +1079,7 @@ Fl_Preferences::RootNode::RootNode( Fl_Preferences *pr
>> +--- src/Fl_Preferences.cxx.orig Sat Jun 27 16:40:11 2015
>> ++++ src/Fl_Preferences.cxx Sat Jun 27 16:40:51 2015
>> +@@ -1083,7 +1083,7 @@ Fl_Preferences::RootNode::RootNode( Fl_Preferences *pr
>> break;
>> }
>> case SYSTEM:
>> Index: patches/patch-src_Makefile
>> ===================================================================
>> RCS file: /cvs/ports/x11/fltk/patches/patch-src_Makefile,v
>> retrieving revision 1.10
>> diff -u -p -r1.10 patch-src_Makefile
>> --- patches/patch-src_Makefile 22 Mar 2013 22:50:25 -0000 1.10
>> +++ patches/patch-src_Makefile 28 Jun 2015 04:15:30 -0000
>> @@ -1,59 +1,59 @@
>> $OpenBSD: patch-src_Makefile,v 1.10 2013/03/22 22:50:25 bcallah Exp $
>> ---- src/Makefile.orig Tue Nov 6 16:13:54 2012
>> -+++ src/Makefile Fri Mar 22 17:43:11 2013
>> -@@ -229,11 +229,10 @@ $(LIBNAME): $(OBJECTS)
>> +--- src/Makefile.orig Sat Jun 27 16:41:25 2015
>> ++++ src/Makefile Sat Jun 27 16:46:27 2015
>> +@@ -234,11 +234,10 @@ $(LIBNAME): $(OBJECTS)
>> $(LIBCOMMAND) $@ $(OBJECTS)
>> $(RANLIB) $@
>>
>> -libfltk.so.1.3: $(OBJECTS)
>> +libfltk.so.$(LIBfltk_VERSION): $(OBJECTS)
>> echo $(DSOCOMMAND) $@ ...
>> - $(DSOCOMMAND) $@ $(OBJECTS)
>> + $(DSOCOMMAND) $@ $(OBJECTS) $(LDLIBS)
>> $(RM) libfltk.so
>> - $(LN) libfltk.so.1.3 libfltk.so
>>
>> libfltk.sl.1.3: $(OBJECTS)
>> echo $(DSOCOMMAND) $@ ...
>> -@@ -265,11 +264,9 @@ $(FLLIBNAME): $(FLOBJECTS)
>> +@@ -270,11 +269,9 @@ $(FLLIBNAME): $(FLOBJECTS)
>> $(LIBCOMMAND) $@ $(FLOBJECTS)
>> $(RANLIB) $@
>>
>> -libfltk_forms.so.1.3: $(FLOBJECTS) libfltk.so.1.3
>> +libfltk_forms.so.$(LIBfltk_forms_VERSION): $(FLOBJECTS)
>> libfltk.so.$(LIBfltk_VERSION)
>> echo $(DSOCOMMAND) $@ ...
>> - $(DSOCOMMAND) $@ $(FLOBJECTS) -L. -lfltk
>> + $(DSOCOMMAND) $@ $(FLOBJECTS) -L. -lfltk $(LDLIBS)
>> - $(RM) libfltk_forms.so
>> - $(LN) libfltk_forms.so.1.3 libfltk_forms.so
>>
>> libfltk_forms.sl.1.3: $(FLOBJECTS) libfltk.sl.1.3
>> echo $(DSOCOMMAND) $@ ...
>> -@@ -301,11 +298,9 @@ $(GLLIBNAME): $(GLOBJECTS)
>> +@@ -306,11 +303,9 @@ $(GLLIBNAME): $(GLOBJECTS)
>> $(LIBCOMMAND) $@ $(GLOBJECTS)
>> $(RANLIB) $@
>>
>> -libfltk_gl.so.1.3: $(GLOBJECTS) libfltk.so.1.3
>> +libfltk_gl.so.$(LIBfltk_gl_VERSION): $(GLOBJECTS)
>> libfltk.so.$(LIBfltk_VERSION)
>> echo $(DSOCOMMAND) $@ ...
>> - $(DSOCOMMAND) $@ $(GLOBJECTS) -L. -lfltk
>> + $(DSOCOMMAND) $@ $(GLOBJECTS) -L. -lfltk $(LDLIBS) $(GLDLIBS)
>> - $(RM) libfltk_gl.so
>> - $(LN) libfltk_gl.so.1.3 libfltk_gl.so
>>
>> libfltk_gl.sl.1.3: $(GLOBJECTS) libfltk.sl.1.3
>> echo $(DSOCOMMAND) $@ ...
>> -@@ -337,11 +332,9 @@ $(IMGLIBNAME): $(IMGOBJECTS)
>> +@@ -342,11 +337,9 @@ $(IMGLIBNAME): $(IMGOBJECTS)
>> $(LIBCOMMAND) $@ $(IMGOBJECTS)
>> $(RANLIB) $@
>>
>> -libfltk_images.so.1.3: $(IMGOBJECTS) libfltk.so.1.3
>> +libfltk_images.so.$(LIBfltk_images_VERSION): $(IMGOBJECTS)
>> libfltk.so.$(LIBfltk_VERSION)
>> echo $(DSOCOMMAND) $@ ...
>> - $(DSOCOMMAND) $@ $(IMGOBJECTS) -L. $(IMAGELIBS) -lfltk
>> + $(DSOCOMMAND) $@ $(IMGOBJECTS) -L. $(IMAGELIBS) -lfltk $(LDLIBS)
>> - $(RM) libfltk_images.so
>> - $(LN) libfltk_images.so.1.3 libfltk_images.so
>>
>> libfltk_images.sl.1.3: $(IMGOBJECTS) libfltk.sl.1.3
>> echo $(DSOCOMMAND) $@ ...
>> -@@ -563,10 +556,9 @@ install: $(LIBNAME) $(DSONAME) \
>> +@@ -568,10 +561,9 @@ install: $(LIBNAME) $(DSONAME) \
>> $(RANLIB) $(DESTDIR)$(libdir)/$(GLLIBBASENAME); \
>> fi
>> $(RANLIB) $(DESTDIR)$(libdir)/$(IMGLIBBASENAME)
>> @@ -62,11 +62,11 @@ $OpenBSD: patch-src_Makefile,v 1.10 2013
>> $(RM) $(DESTDIR)$(libdir)/libfltk.so*;\
>> - $(INSTALL_LIB) libfltk.so.1.3 $(DESTDIR)$(libdir); \
>> - $(LN) libfltk.so.1.3 $(DESTDIR)$(libdir)/libfltk.so;\
>> -+ $(INSTALL_LIB) libfltk.so.$(LIBfltk_VERSION)
>> $(DESTDIR)$(libdir);\
>> ++ $(INSTALL_LIB) libfltk.so.$(LIBfltk_VERSION)
>> $(DESTDIR)$(libdir); \
>> fi
>> if test x$(DSONAME) = xlibfltk.sl.1.3; then\
>> $(RM) $(DESTDIR)$(libdir)/libfltk.sl*;\
>> -@@ -594,10 +586,9 @@ install: $(LIBNAME) $(DSONAME) \
>> +@@ -599,10 +591,9 @@ install: $(LIBNAME) $(DSONAME) \
>> $(RM) $(DESTDIR)$(libdir)/libfltk.dll.a;\
>> $(INSTALL_LIB) libfltk.dll.a $(DESTDIR)$(libdir); \
>> fi
>> @@ -75,11 +75,11 @@ $OpenBSD: patch-src_Makefile,v 1.10 2013
>> $(RM) $(DESTDIR)$(libdir)/libfltk_forms.so*;\
>> - $(INSTALL_LIB) libfltk_forms.so.1.3 $(DESTDIR)$(libdir); \
>> - $(LN) libfltk_forms.so.1.3
>> $(DESTDIR)$(libdir)/libfltk_forms.so;\
>> -+ $(INSTALL_LIB) libfltk_forms.so.$(LIBfltk_forms_VERSION)
>> $(DESTDIR)$(libdir);\
>> ++ $(INSTALL_LIB) libfltk_forms.so.$(LIBfltk_forms_VERSION)
>> $(DESTDIR)$(libdir); \
>> fi
>> if test x$(FLDSONAME) = xlibfltk_forms.sl.1.3; then\
>> $(RM) $(DESTDIR)$(libdir)/libfltk_forms.sl*;\
>> -@@ -625,10 +616,9 @@ install: $(LIBNAME) $(DSONAME) \
>> +@@ -630,10 +621,9 @@ install: $(LIBNAME) $(DSONAME) \
>> $(RM) $(DESTDIR)$(libdir)/libfltk_forms.dll.a;\
>> $(INSTALL_LIB) libfltk_forms.dll.a $(DESTDIR)$(libdir); \
>> fi
>> @@ -92,7 +92,7 @@ $OpenBSD: patch-src_Makefile,v 1.10 2013
>> fi
>> if test x$(GLDSONAME) = xlibfltk_gl.sl.1.3; then\
>> $(RM) $(DESTDIR)$(libdir)/libfltk_gl.sl*;\
>> -@@ -656,10 +646,9 @@ install: $(LIBNAME) $(DSONAME) \
>> +@@ -661,10 +651,9 @@ install: $(LIBNAME) $(DSONAME) \
>> $(RM) $(DESTDIR)$(libdir)/libfltk_gl.dll.a;\
>> $(INSTALL_LIB) libfltk_gl.dll.a $(DESTDIR)$(libdir); \
>> fi
>> Index: patches/patch-src_fl_font_cxx
>> ===================================================================
>> RCS file: patches/patch-src_fl_font_cxx
>> diff -N patches/patch-src_fl_font_cxx
>> --- /dev/null 1 Jan 1970 00:00:00 -0000
>> +++ patches/patch-src_fl_font_cxx 28 Jun 2015 04:15:30 -0000
>> @@ -0,0 +1,19 @@
>> +$OpenBSD$
>> +
>> +https://github.com/IngwiePhoenix/FLTK/commit/283b909dad09048535cec8e3d69d77fa498382bf
>> +
>> +--- src/fl_font.cxx.orig Sun Jun 28 00:06:33 2015
>> ++++ src/fl_font.cxx Sun Jun 28 00:07:38 2015
>> +@@ -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: patches/patch-src_gl_draw_cxx
>> ===================================================================
>> RCS file: patches/patch-src_gl_draw_cxx
>> diff -N patches/patch-src_gl_draw_cxx
>> --- /dev/null 1 Jan 1970 00:00:00 -0000
>> +++ patches/patch-src_gl_draw_cxx 28 Jun 2015 04:15:30 -0000
>> @@ -0,0 +1,15 @@
>> +$OpenBSD$
>> +
>> +https://github.com/IngwiePhoenix/FLTK/commit/283b909dad09048535cec8e3d69d77fa498382bf
>> +
>> +--- src/gl_draw.cxx.orig Sun Jun 28 00:07:50 2015
>> ++++ src/gl_draw.cxx Sun Jun 28 00:08:16 2015
>> +@@ -84,7 +84,7 @@ void gl_font(int fontid, int size) {
>> + * 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: pkg/PLIST
>> ===================================================================
>> RCS file: /cvs/ports/x11/fltk/pkg/PLIST,v
>> retrieving revision 1.13
>> diff -u -p -r1.13 PLIST
>> --- pkg/PLIST 22 Mar 2013 22:50:25 -0000 1.13
>> +++ pkg/PLIST 28 Jun 2015 04:15:30 -0000
>> @@ -19,6 +19,7 @@ include/FL/Fl_Check_Button.H
>> include/FL/Fl_Choice.H
>> include/FL/Fl_Clock.H
>> include/FL/Fl_Color_Chooser.H
>> +include/FL/Fl_Copy_Surface.H
>> include/FL/Fl_Counter.H
>> include/FL/Fl_Device.H
>> include/FL/Fl_Dial.H
>> @@ -45,6 +46,7 @@ include/FL/Fl_Hor_Nice_Slider.H
>> include/FL/Fl_Hor_Slider.H
>> include/FL/Fl_Hor_Value_Slider.H
>> include/FL/Fl_Image.H
>> +include/FL/Fl_Image_Surface.H
>> include/FL/Fl_Input.H
>> include/FL/Fl_Input_.H
>> include/FL/Fl_Input_Choice.H
>> @@ -123,7 +125,6 @@ include/FL/Fl_Window.H
>> include/FL/Fl_Wizard.H
>> include/FL/Fl_XBM_Image.H
>> include/FL/Fl_XPM_Image.H
>> -include/FL/Xutf8.h
>> include/FL/dirent.h
>> include/FL/filename.H
>> include/FL/fl_ask.H
>
>