diff options
| author | Michael R Sweet <michael.r.sweet@gmail.com> | 2004-11-20 03:19:59 +0000 |
|---|---|---|
| committer | Michael R Sweet <michael.r.sweet@gmail.com> | 2004-11-20 03:19:59 +0000 |
| commit | 23bb0590651da3f342cddcd3c87aee38a1d067cc (patch) | |
| tree | bee2ca6b14fcf94b4754a310164e0a864832dcd6 /watcom | |
| parent | a5a683f35f71f1e7ebe9a70660634cbf518b1dcd (diff) | |
Watcom fixes (STR #584, STR #594, STR #595)
Fixed library include order when building DSOs on MacOS X (STR
#596)
fl_xid() could cause a WIN32 application to crash (STR #560, STR
#576, STR #618)
Fl_Browser::remove_() removed the item from the list before
computing the item height, which caused problems with some
programs (STR #613)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3897 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'watcom')
| -rw-r--r-- | watcom/config.h | 222 | ||||
| -rw-r--r-- | watcom/makefile | 103 | ||||
| -rw-r--r-- | watcom/readme.wat | 26 |
3 files changed, 351 insertions, 0 deletions
diff --git a/watcom/config.h b/watcom/config.h new file mode 100644 index 000000000..2cb83c72b --- /dev/null +++ b/watcom/config.h @@ -0,0 +1,222 @@ +/* + * "$Id: config.h,v 1.1.2.1 2004/11/20 03:19:59 easysw Exp $" + * + * Configuration file for the Fast Light Tool Kit (FLTK) for Watcom C++ 1.3 + * + * Copyright 1998-2004 by Bill Spitzak and others. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA. + * + * Please report all bugs and problems to "fltk-bugs@fltk.org". + */ + +/* + * Where to find the documentation files... + */ + +#define FLTK_DATADIR "C:/FLTK" +#define FLTK_DOCDIR "C:/FLTK/DOC" + + +/* + * BORDER_WIDTH: + * + * Thickness of FL_UP_BOX and FL_DOWN_BOX. Current 1,2, and 3 are + * supported. 3 is the historic FLTK look. 2 looks more like Microsoft + * Windows, KDE, and Qt, and is the default when building for Windows. + * 1 is a plausible future evolution... Note that this may be simulated + * at runtime by redefining the boxtypes using Fl::set_boxtype(). + */ + +#define BORDER_WIDTH 2 + +/* + * HAVE_GL: + * + * Do you have OpenGL? Set this to 0 if you don't have or plan to use + * OpenGL, and FLTK will be smaller. + */ + +#define HAVE_GL 1 + +/* + * HAVE_GL_GLU_H: + * + * Do you have the OpenGL Utility Library header file? + * (many broken Mesa RPMs do not...) + */ + +#define HAVE_GL_GLU_H 1 + +/* + * USE_COLORMAP: + * + * Setting this to zero will save a good deal of code (especially for + * fl_draw_image), but FLTK will only work on TrueColor visuals. + */ + +#define USE_COLORMAP 1 + +/* + * USE_XFT + * + * Use the new Xft library to draw anti-aliased text. + */ + +#define USE_XFT 0 + +/* + * HAVE_XDBE: + * + * Do we have the X double-buffer extension? + */ + +#define HAVE_XDBE 0 + +/* + * USE_XDBE: + * + * Actually try to use the double-buffer extension? Set this to zero + * disable use of XDBE without breaking the list_visuals program. + */ + +#define USE_XDBE HAVE_XDBE + +/* + * HAVE_OVERLAY: + * + * Use the X overlay extension? FLTK will try to use an overlay + * visual for Fl_Overlay_Window, the Gl_Window overlay, and for the + * menus. Setting this to zero will remove a substantial amount of + * code from FLTK. Overlays have only been tested on SGI servers! + */ + +#define HAVE_OVERLAY 0 + +/* + * HAVE_GL_OVERLAY: + * + * It is possible your GL has an overlay even if X does not. If so, + * set this to 1. + */ + +#define HAVE_GL_OVERLAY 1 + +/* + * WORDS_BIGENDIAN: + * + * Byte order of your machine: 1 = big-endian, 0 = little-endian. + */ + +#define WORDS_BIGENDIAN 0 + +/* + * U16, U32, U64: + * + * Types used by fl_draw_image. One of U32 or U64 must be defined. + * U16 is optional but FLTK will work better with it! + */ + +#define U16 unsigned short +#define U32 unsigned +/* #undef U64 */ + +/* + * HAVE_DIRENT_H, HAVE_SYS_NDIR_H, HAVE_SYS_DIR_H, HAVE_NDIR_H, HAVE_SCANDIR: + * + * Where is <dirent.h> (used only by fl_file_chooser and scandir). + */ + +#define HAVE_DIRENT_H 1 +/* #undef HAVE_SYS_NDIR_H */ +/* #undef HAVE_SYS_DIR_H */ +/* #undef HAVE_NDIR_H */ +/* #undef HAVE_SCANDIR */ + +/* + * Possibly missing sprintf-style functions: + */ + +#define HAVE_VSNPRINTF 1 +#define HAVE_SNPRINTF 1 + +/* + * String functions and headers... + */ + +/* #undef HAVE_STRINGS_H */ +#define HAVE_STRCASECMP 1 +/* #undef HAVE_STRLCAT */ +/* #undef HAVE_STRLCPY */ + +/* + * HAVE_SYS_SELECT_H: + * + * Whether or not select() call has its own header file. + */ + +/* #undef HAVE_SYS_SELECT_H */ + +/* + * HAVE_SYS_STDTYPES_H: + * + * Whether or not we have the <sys/stdtypes.h> header file. + */ + +/* #undef HAVE_SYS_STDTYPES_H */ + +/* + * HAVE_POLL: + * + * Use poll() if we don't have select(). + */ + +#define HAVE_POLL 0 + +/* + * Do we have various image libraries? + */ + +/* #undef HAVE_LIBPNG */ +/* #undef HAVE_LIBZ */ +/* #undef HAVE_LIBJPEG */ + +/* + * Which header file do we include for libpng? + */ + +/* #undef HAVE_PNG_H */ +/* #undef HAVE_LIBPNG_PNG_H */ + +/* + * Do we have the png_xyz() functions? + */ + +/* #undef HAVE_PNG_GET_VALID */ +/* #undef HAVE_PNG_SET_TRNS_TO_ALPHA */ +/* #undef HAVE_PNG_READ_DESTROY */ + +/* + * Do we have POSIX threading? + */ + +/* #undef HAVE_PTHREAD */ +/* #undef HAVE_PTHREAD_H */ + + +/* + * End of "$Id: config.h,v 1.1.2.1 2004/11/20 03:19:59 easysw Exp $". + */ diff --git a/watcom/makefile b/watcom/makefile new file mode 100644 index 000000000..69ed2c026 --- /dev/null +++ b/watcom/makefile @@ -0,0 +1,103 @@ +#
+# Name : Watcom makefile for FLTK, multiplatform
+#
+# Author : M. Nieuwenhoven
+#
+# The makefile has multiple targets:
+# - clean : Cleans all directories from files built during make
+# - all : Builds all targets for both debug and release
+# - xy : where x = D|R, Y = D|O|W|L, where only W (Win32) is
+# currently supported by the source for Watcom.
+#
+
+
+!ifndef %FLTK
+ERROR_MSG = Environment variable FLTK must have been set!
+!endif
+
+.BEFORE
+!ifdef ERROR_MSG
+ @echo .
+ @echo $(ERROR_MSG)
+ @echo .
+ @%abort
+!endif
+
+ROOT=$(%FLTK)
+PROJ=fltk
+
+#
+# This builds all library targets and the main programs
+#
+ALL : .SYMBOLIC
+ set Clean=
+ wmake -h dw
+ wmake -h rw
+# wmake -h do
+# wmake -h ro
+# wmake -h dl
+# wmake -h rl
+
+#
+# Clean all directories. Call each target with a 'clean' target. Proper
+# knowledge about cleaning can only be at the places where also the
+# builds is done.
+#
+clean : .SYMBOLIC
+ @echo Cleaning up.
+ set Clean=CLEAN
+ wmake -h dw
+ wmake -h rw
+# wmake -h do
+# wmake -h ro
+# wmake -h dl
+# wmake -h rl
+
+#
+# Win32 Debug and Release targets
+#
+DW : .SYMBOLIC
+ @set OPTIONS=D=d O=w ROOT=$(ROOT) PROJ=$(PROJ) EXTRA_INCLUDE_DIRS=$(ROOT)
+ %make BuildOne
+
+RW : .SYMBOLIC
+ @set OPTIONS=D=r O=w ROOT=$(ROOT) PROJ=$(PROJ) EXTRA_INCLUDE_DIRS=$(ROOT)
+ %make BuildOne
+
+#
+# OS/2 Debug and Release targets. Builds only jpeg, zlib and png libs for now.
+#
+DO : .SYMBOLIC
+ @set OPTIONS=D=d O=o ROOT=$(ROOT) PROJ=$(PROJ) EXTRA_INCLUDE_DIRS=$(ROOT)
+ %make BuildOne
+
+RO : .SYMBOLIC
+ @set OPTIONS=D=r O=o ROOT=$(ROOT) PROJ=$(PROJ) EXTRA_INCLUDE_DIRS=$(ROOT)
+ %make BuildOne
+
+
+# Internal target to build the individual modules. The following macros must
+# have been set: D (value D or R), O (D,O,W,L)
+
+BuildOne : .SYMBOLIC
+
+ @echo "=== making jpeg library ==="
+ @cd $(ROOT)\jpeg
+ @wmake -h -f makefile.wat $(%OPTIONS) $(%CLEAN)
+ @echo "=== making zlib library ==="
+ @cd $(ROOT)\zlib
+ @wmake -h -f makefile.wat $(%OPTIONS) $(%CLEAN)
+ @echo "=== making png library ==="
+ @cd $(ROOT)\png
+ @wmake -h -f makefile.wat $(%OPTIONS) $(%CLEAN)
+ @echo "=== making fltk libraries ==="
+ @cd $(ROOT)\src
+ @wmake -h -f makefile.wat $(%OPTIONS) $(%CLEAN)
+ @echo "=== making fluid ==="
+ @cd $(ROOT)\fluid
+ @wmake -h -f makefile.wat $(%OPTIONS) $(%CLEAN)
+ @echo "=== making test ==="
+ @cd $(ROOT)\test
+ @wmake -h -f makefile.wat $(%OPTIONS) $(%CLEAN)
+
+
diff --git a/watcom/readme.wat b/watcom/readme.wat new file mode 100644 index 000000000..59443594f --- /dev/null +++ b/watcom/readme.wat @@ -0,0 +1,26 @@ +
+Using Watcom to build and use FLTK 1.1.5
+
+Supported targets: Win32 only, static builds (no DLLs). Can be used from any Watcom
+ supported host (DOS, OS/2, Windows).
+
+1. Unzip the include file in the root of the fltk 1.1.5 directory. It will create a
+ new directory called watcom, put a makefile.wat in source directories, and update
+ two sources files which need to be different from the 1.1.5 versions (STR updated),
+ and put a watcom.mif file in the fltk root directory.
+
+2. To build: set the environment variable fltk to the root directory of fltk, go
+ to the Watcom directory, run wmake. Both debug and release versions of all libs,
+ test programs and FLUID will be built.
+
+3. To create you own programs: use the supplied watcom.mif file. If you use fluid,
+ move the two fluid rules from test/makefile.wat into the watcom.mif
+ file. Look in test/makefile.wat also for rules about building a non-fluid program
+ with one object (source) file, or with multiple. if you use FLUID, take care in
+ the order of object files specified (see tes/makefile.wat keyboard.exe).
+
+Questions about the watcom port please to the fltk.general newsgroup.
+
+Mat Nieuwenhoven, Hilversum, 2004-10-28
+
+
|
