DO NOT REPLY TO THIS MESSAGE. INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.
[STR New]
Link: http://www.fltk.org/str.php?L2151
Version: 1.1.10
This is a backport of str 2147 to fltk-1.1
http://www.fltk.org/str.php?L2147
Link: http://www.fltk.org/str.php?L2151
Version: 1.1.10
Index: src/Makefile
===================================================================
--- src/Makefile (revision 6656)
+++ src/Makefile (working copy)
@@ -353,6 +353,10 @@
# - The _images, _gl, _forms and dlls must be linked
# against the import libraries in the src dir.
#-----------------------------------------------------------------
+
+#-----------------------------------------------------------------
+# cygwin GDI shared libraries
+#-----------------------------------------------------------------
cygfltknox-1.1.dll: $(LIBNAME)
echo $(DSOCOMMAND) $(LIBNAME) ...
@@ -378,6 +382,38 @@
-L. -lfltk -Wl,--exclude-libs -Wl,libfltk_png.a \
$(IMAGELIBS) $(LDLIBS)
+#-----------------------------------------------------------------
+# cygwin X11 shared libraries
+#-----------------------------------------------------------------
+
+cygfltk-1.1.dll: $(LIBNAME)
+ echo $(DSOCOMMAND) $(LIBNAME) ...
+ $(DSOCOMMAND) $(LIBNAME) -Wl,--no-whole-archive \
+ -Wl,--out-implib=libfltk.dll.a $(LDLIBS)
+
+cygfltk_forms-1.1.dll: $(FLLIBNAME) cygfltk-1.1.dll
+ echo $(DSOCOMMAND) $(FLLIBNAME) ...
+ $(DSOCOMMAND) $(FLLIBNAME) -Wl,--no-whole-archive \
+ -Wl,--out-implib=libfltk_forms.dll.a \
+ -L. -lfltk $(LDLIBS)
+
+cygfltk_gl-1.1.dll: $(GLLIBNAME) cygfltk-1.1.dll
+ echo $(DSOCOMMAND) $(GLLIBNAME) ...
+ $(DSOCOMMAND) $(GLLIBNAME) -Wl,--no-whole-archive \
+ -Wl,--out-implib=libfltk_gl.dll.a \
+ -L. -lfltk $(GLDLIBS)
+
+cygfltk_images-1.1.dll: $(IMGLIBNAME) cygfltk-1.1.dll
+ echo $(DSOCOMMAND) $(IMGLIBNAME) ...
+ $(DSOCOMMAND) $(IMGLIBNAME) -Wl,--no-whole-archive \
+ -Wl,--out-implib=libfltk_images.dll.a \
+ -L. -lfltk -Wl,--exclude-libs -Wl,libfltk_png.a \
+ $(IMAGELIBS) $(LDLIBS)
+
+#-----------------------------------------------------------------
+# mingw GDI shared libraries
+#-----------------------------------------------------------------
+
mgwfltknox-1.1.dll: $(LIBNAME)
echo $(DSOCOMMAND) $(LIBNAME) ...
$(DSOCOMMAND) $(LIBNAME) -Wl,--no-whole-archive \
@@ -529,6 +565,12 @@
$(RM) $(DESTDIR)$(libdir)/libfltk.dll.a;\
$(INSTALL_LIB) libfltk.dll.a $(DESTDIR)$(libdir); \
fi
+ if test x$(DSONAME) = xcygfltk-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(DSONAME);\
+ $(INSTALL_LIB) $(DSONAME) $(DESTDIR)$(bindir); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk.dll.a;\
+ $(INSTALL_LIB) libfltk.dll.a $(DESTDIR)$(libdir); \
+ fi
if test x$(DSONAME) = xmgwfltknox-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(DSONAME);\
$(INSTALL_LIB) $(DSONAME) $(DESTDIR)$(bindir); \
@@ -560,6 +602,12 @@
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.dll.a;\
$(INSTALL_LIB) libfltk_forms.dll.a $(DESTDIR)$(libdir); \
fi
+ if test x$(FLDSONAME) = xcygfltk_forms-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(FLDSONAME);\
+ $(INSTALL_LIB) $(FLDSONAME) $(DESTDIR)$(bindir); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk_forms.dll.a;\
+ $(INSTALL_LIB) libfltk_forms.dll.a $(DESTDIR)$(libdir); \
+ fi
if test x$(FLDSONAME) = xmgwfltknox_forms-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(FLDSONAME);\
$(INSTALL_LIB) $(FLDSONAME) $(DESTDIR)$(bindir); \
@@ -591,6 +639,12 @@
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.dll.a;\
$(INSTALL_LIB) libfltk_gl.dll.a $(DESTDIR)$(libdir); \
fi
+ if test x$(GLDSONAME) = xcygfltk_gl-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(GLDSONAME);\
+ $(INSTALL_LIB) $(GLDSONAME) $(DESTDIR)$(bindir); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk_gl.dll.a;\
+ $(INSTALL_LIB) libfltk_gl.dll.a $(DESTDIR)$(libdir); \
+ fi
if test x$(GLDSONAME) = xmgwfltknox_gl-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(GLDSONAME);\
$(INSTALL_LIB) $(GLDSONAME) $(DESTDIR)$(bindir); \
@@ -622,6 +676,12 @@
$(RM) $(DESTDIR)$(libdir)/libfltk_images.dll.a;\
$(INSTALL_LIB) libfltk_images.dll.a $(DESTDIR)$(libdir); \
fi
+ if test x$(IMGDSONAME) = xcygfltk_images-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(IMGDSONAME); \
+ $(INSTALL_LIB) $(IMGDSONAME) $(DESTDIR)$(bindir); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk_images.dll.a;\
+ $(INSTALL_LIB) libfltk_images.dll.a $(DESTDIR)$(libdir); \
+ fi
if test x$(IMGDSONAME) = xmgwfltknox_images-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(IMGDSONAME); \
$(INSTALL_LIB) $(IMGDSONAME) $(DESTDIR)$(bindir); \
@@ -648,6 +708,10 @@
$(RM) $(DESTDIR)$(bindir)/$(DSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk.dll.a;\
fi
+ if test x$(DSONAME) = xcygfltk-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(DSONAME); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk.dll.a;\
+ fi
if test x$(DSONAME) = xmgwfltknox-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(DSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk.dll.a;\
@@ -669,6 +733,10 @@
$(RM) $(DESTDIR)$(bindir)/$(FLDSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.dll.a;\
fi
+ if test x$(FLDSONAME) = xcygfltk_forms-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(FLDSONAME); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk_forms.dll.a;\
+ fi
if test x$(FLDSONAME) = xmgwfltknox_forms-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(FLDSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk_forms.dll.a;\
@@ -692,6 +760,10 @@
$(RM) $(DESTDIR)$(bindir)/$(GLDSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.dll.a;\
fi
+ if test x$(GLDSONAME) = xcygfltk_gl-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(GLDSONAME); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk_gl.dll.a;\
+ fi
if test x$(GLDSONAME) = xmgwfltknox_gl-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(GLDSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk_gl.dll.a;\
@@ -715,6 +787,10 @@
$(RM) $(DESTDIR)$(bindir)/$(IMGDSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk_images.dll.a;\
fi
+ if test x$(IMGDSONAME) = xcygfltk_images-1.1.dll; then\
+ $(RM) $(DESTDIR)$(bindir)/$(IMGDSONAME); \
+ $(RM) $(DESTDIR)$(libdir)/libfltk_images.dll.a;\
+ fi
if test x$(IMGDSONAME) = xmgwfltknox_images-1.1.dll; then\
$(RM) $(DESTDIR)$(bindir)/$(IMGDSONAME); \
$(RM) $(DESTDIR)$(libdir)/libfltk_images.dll.a;\
Index: configure.in
===================================================================
--- configure.in (revision 6656)
+++ configure.in (working copy)
@@ -68,10 +68,14 @@
AC_SUBST(OPTIM)
dnl OS-specific pre-tests...
+dnl uname_GUI equals $uname unless we target cygwin
+dnl in combination with X11.
+uname_GUI=$uname
case $uname in
CYGWIN* | MINGW*)
# Handle Cygwin option *first*, before all other tests.
AC_ARG_ENABLE(cygwin, [ --enable-cygwin use the CygWin
libraries [default=no]])
+ AC_ARG_ENABLE(x11, [ --enable-x11 use CygWin with X11
[default=no]])
if test x$enable_cygwin != xyes; then
# NOTE: We can't use ARCHFLAGS for this, since it does not work
# with some of the function tests - Cygwin uses a
@@ -81,6 +85,11 @@
CXXFLAGS="$CXXFLAGS -mno-cygwin"
LDFLAGS="$LDFLAGS -mno-cygwin"
DSOFLAGS="$DSOFLAGS -mno-cygwin"
+ else
+ # we target cygwin in combination with X11
+ if test x$enable_x11 == xyes; then
+ uname_GUI="X11$uname"
+ fi
fi
;;
esac
@@ -210,10 +219,17 @@
GLDSONAME="mgwfltknox_gl-$FL_API_VERSION.dll"
IMGDSONAME="mgwfltknox_images-$FL_API_VERSION.dll"
else
- DSONAME="cygfltknox-$FL_API_VERSION.dll"
- FLDSONAME="cygfltknox_forms-$FL_API_VERSION.dll"
- GLDSONAME="cygfltknox_gl-$FL_API_VERSION.dll"
- IMGDSONAME="cygfltknox_images-$FL_API_VERSION.dll"
+ if test x$enable_x11 == xyes; then
+ DSONAME="cygfltk-$FL_API_VERSION.dll"
+ FLDSONAME="cygfltk_forms-$FL_API_VERSION.dll"
+ GLDSONAME="cygfltk_gl-$FL_API_VERSION.dll"
+ IMGDSONAME="cygfltk_images-$FL_API_VERSION.dll"
+ else
+ DSONAME="cygfltknox-$FL_API_VERSION.dll"
+ FLDSONAME="cygfltknox_forms-$FL_API_VERSION.dll"
+ GLDSONAME="cygfltknox_gl-$FL_API_VERSION.dll"
+ IMGDSONAME="cygfltknox_images-$FL_API_VERSION.dll"
+ fi
fi
#-----------------------------------------------------------
# -Wl,--enable-runtime-pseudo-reloc: See str 1585
@@ -626,15 +642,15 @@
INSTALL_DESKTOP=""
UNINSTALL_DESKTOP=""
-case $uname in
+case $uname_GUI in
CYGWIN* | MINGW*)
- dnl Cygwin environment...
+ dnl Cygwin environment, using windows GDI ...
# Recent versions of Cygwin are seriously broken and the size
# checks don't work because the shell puts out \r\n instead of
# \n. Here we just force U32 to be defined to "unsigned"...
AC_DEFINE(U32,unsigned)
- CFLAGS="-mwindows -DWIN32 $CFLAGS"
- CXXFLAGS="-mwindows -DWIN32 $CXXFLAGS"
+ CFLAGS="-mwindows -DWIN32 -DUSE_OPENGL32 $CFLAGS"
+ CXXFLAGS="-mwindows -DWIN32 -DUSE_OPENGL32 $CXXFLAGS"
LDFLAGS="-mwindows $LDFLAGS"
DSOFLAGS="-mwindows $DSOFLAGS"
LIBS="$LIBS -lole32 -luuid -lcomctl32 -lwsock32"
@@ -662,7 +678,7 @@
AC_DEFINE(HAVE_PTHREAD)
fi
- THREADS="threads.exe"
+ THREADS="threads$EXEEXT"
fi
# Don't make symlinks since Windows is not case sensitive.
@@ -677,7 +693,7 @@
if test x$have_pthread = xyes; then
AC_DEFINE(HAVE_PTHREAD)
- THREADS="threads"
+ THREADS="threads$EXEEXT"
fi
if test x$enable_gl != xno; then
@@ -709,9 +725,10 @@
*)
# All others are UNIX/X11...
+ # This includes cygwin target combined with X11
if test x$have_pthread = xyes; then
AC_DEFINE(HAVE_PTHREAD)
- THREADS="threads"
+ THREADS="threads$EXEEXT"
fi
dnl Check for X11...
@@ -790,9 +807,10 @@
CPPFLAGS="`$FTCONFIG --cflags` $CPPFLAGS"
CXXFLAGS="`$FTCONFIG --cflags` $CXXFLAGS"
+ AC_CHECK_LIB(fontconfig, FcPatternCreate)
AC_CHECK_HEADER(X11/Xft/Xft.h,
AC_CHECK_LIB(Xft, XftDrawCreate,
- AC_DEFINE(USE_XFT)
+ AC_DEFINE(USE_XFT)
LIBS="-lXft $LIBS"))
fi
fi
@@ -1097,7 +1115,7 @@
echo "Configuration Summary"
echo
"-------------------------------------------------------------------------"
-case $uname in
+case $uname_GUI in
CYGWIN* | MINGW*)
graphics="GDI"
;;
_______________________________________________
fltk-bugs mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-bugs