Changes & additions for OS/2 from Alexander Mai

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.0@1290 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Bill Spitzak 2000-08-19 19:03:46 +00:00
parent a10d8f201a
commit 23689de7fb
4 changed files with 319 additions and 78 deletions

View File

@ -176,18 +176,28 @@ is generated with the same version compiler that you built it with.
<P>When compiling an application or DLL that uses the FLTK DLL, you will need
to define the <tt>FL_DLL</tt> preprocessor symbol to get the correct linkage
commands embedded within the FLTK header files.
<H2>Building FLTK Under OS/2</H2>
The current OS/2 build requires XFree86 for OS/2 to work. A native
Presentation Manager version has not been implemented yet (volunteers
are welcome!).
<p>The current set of Makefiles/configuration failes assumes that
EMX 0.9d and libExt
(from <A HREF="http://posix2.sourceforge.net">posix2.sourceforge.net</A>)
is installed.
<P>To build the XFree86 version of FLTK for OS/2, copy the appropriate
makeinclude and config files to the main directory and do a make: </P>
<UL>
<PRE>
copy makefiles\Makefile.os2x Makefile
make
</PRE>
</UL>
<H2>Internet Resources</H2>
FLTK is available on the 'net in a bunch of locations:
<DL>

View File

@ -1,78 +1,78 @@
#
# "$Id: Makefile.os2x,v 1.6.2.3 2000/06/20 18:47:31 carl Exp $"
#
# Top-level makefile for the Fast Light Tool Kit (FLTK).
#
# Copyright 1998-2000 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".
#
SHELL=cmd.exe
all: makeinclude config.h
echo "=== making src ==="
touch src/makedepend
cd src & $(MAKE)
echo "=== making fluid ==="
touch fluid/makedepend
cd fluid & $(MAKE)
echo "=== making test ==="
touch test/makedepend
cd test & $(MAKE)
install:
echo "=== installing src ==="
touch src/makedepend
cd src & $(MAKE) install
echo "=== installing fluid ==="
touch fluid/makedepend
cd fluid & $(MAKE) install
depend:
echo "=== making src dependencies ==="
touch src/makedepend
cd src & $(MAKE) depend
echo "=== making fluid dependencies ==="
touch fluid/makedepend
cd fluid & $(MAKE) depend
echo "=== making test dependencies ==="
touch test/makedepend
cd test & $(MAKE) depend
clean:
-@ rm -f core config.cache *.o *.bck
echo "=== cleaning src ==="
touch src/makedepend
cd src & $(MAKE) clean
echo "=== cleaning fluid ==="
touch fluid/makedepend
cd fluid & $(MAKE) clean
echo "=== cleaning test ==="
touch test/makedepend
cd test & $(MAKE) clean
config.h: makefiles/config.os2x
cp $< $@
makeinclude: makefiles/makeinclude.os2x
cp $< $@
#
# End of "$Id: Makefile.os2x,v 1.6.2.3 2000/06/20 18:47:31 carl Exp $".
#
#
# "$Id: Makefile.os2x,v 1.6.2.4 2000/08/19 19:03:46 spitzak Exp $"
#
# Top-level makefile for the Fast Light Tool Kit (FLTK).
#
# Copyright 1998-2000 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".
#
# SHELL=cmd.exe
all: makeinclude config.h
echo "=== making src ==="
touch src/makedepend
cd src & $(MAKE)
echo "=== making fluid ==="
touch fluid/makedepend
cd fluid & $(MAKE)
echo "=== making test ==="
touch test/makedepend
cd test & $(MAKE)
install:
echo "=== installing src ==="
touch src/makedepend
cd src & $(MAKE) install
echo "=== installing fluid ==="
touch fluid/makedepend
cd fluid & $(MAKE) install
depend:
echo "=== making src dependencies ==="
touch src/makedepend
cd src & $(MAKE) depend
echo "=== making fluid dependencies ==="
touch fluid/makedepend
cd fluid & $(MAKE) depend
echo "=== making test dependencies ==="
touch test/makedepend
cd test & $(MAKE) depend
clean:
-@ rm -f core config.cache *.o *.bck
echo "=== cleaning src ==="
touch src/makedepend
cd src & $(MAKE) clean
echo "=== cleaning fluid ==="
touch fluid/makedepend
cd fluid & $(MAKE) clean
echo "=== cleaning test ==="
touch test/makedepend
cd test & $(MAKE) clean
config.h: makefiles/config.os2x
cp $< $@
makeinclude: makefiles/makeinclude.os2x
cp $< $@
#
# End of "$Id: Makefile.os2x,v 1.6.2.4 2000/08/19 19:03:46 spitzak Exp $".
#

154
makefiles/config.os2x Normal file
View File

@ -0,0 +1,154 @@
/*
* "$Id: config.os2x,v 1.1.2.1 2000/08/19 19:03:46 spitzak Exp $"
*
* Configuration file for the Fast Light Tool Kit (FLTK).
*
* Copyright 1998-2000 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".
*/
/*
* 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 is the default and looks like Microsoft Windows, KDE, and Qt.
* 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 0
/*
* 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
/*
* HAVE_XDBE:
*
* Do we have the X double-buffer extension?
*/
#define HAVE_XDBE 1
/*
* 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 HAVE_OVERLAY
/*
* 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
#define HAVE_SYS_NDIR_H 0
#define HAVE_SYS_DIR_H 0
#define HAVE_NDIR_H 0
#define HAVE_SCANDIR 1
/*
* possibly missing sprintf-style functions:
*/
#define HAVE_VSNPRINTF 1
#define HAVE_SNPRINTF 1
#define HAVE_VSPRINTF 1
/*
* HAVE_SYS_SELECT_H:
*
* Whether or not select() call has its own header file.
*/
#define HAVE_SYS_SELECT_H 1
/*
* HAVE_POLL:
*
* Use poll() if we don't have select().
*/
#define HAVE_POLL 0
/*
* End of "$Id: config.os2x,v 1.1.2.1 2000/08/19 19:03:46 spitzak Exp $".
*/

View File

@ -0,0 +1,77 @@
#
# "$Id: makeinclude.os2x,v 1.1.2.1 2000/08/19 19:03:46 spitzak Exp $"
#
# Make include file for the Fast Light Tool Kit (FLTK).
#
# Copyright 1998-2000 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".
#
prefix = $(X11ROOT)/XFree86
exec_prefix = $(prefix)
bindir = $(exec_prefix)/bin
includedir = $(prefix)/include
libdir = $(exec_prefix)/lib
srcdir = .
VPATH = .
# compiler names:
CXX = gcc
CC = gcc
MAKEDEPEND = gcc -MD
# flags for C++ compiler:
CFLAGS = -Wall -O4 -mpentium -Zmt
CXXFLAGS = -Wall -O4 -mpentium -Zmt -fno-exceptions
LDFLAGS = -Zexe -Zmt -Zcrtdll -s
# program to make the archive:
LIBNAME = fltk.a
LIBCOMMAND = ar rc
RANLIB = ar s
DSONAME =
DSOCOMMAND = echo
# libraries to link with:
LDLIBS = $(LDFLAGS) -lXext -lX11 -lExtensions
GLDLIBS = $(LDFLAGS) -lXext -lX11 -lExtensions
# Be quiet when building...
#.SILENT:
# Build commands and filename extensions...
.SUFFIXES: .c .cxx .h .fl .o
.cxx:
echo Compiling and linking $@...
$(CXX) -I.. -L../lib $(CXXFLAGS) $< -lfltk $(LDLIBS) -o $@
.c.o:
echo Compiling $@...
$(CC) -I.. $(CXXFLAGS) $< -c
.cxx.o:
echo Compiling $@...
$(CXX) -I.. $(CXXFLAGS) $< -c
#
# End of "$Id: makeinclude.os2x,v 1.1.2.1 2000/08/19 19:03:46 spitzak Exp $".
#
export