mirror of
https://github.com/fltk/fltk.git
synced 2026-06-01 06:14:28 +08:00
Updated autoconf files to support shared libraries and JPEG library.
Updated README files. Removed old files. git-svn-id: file:///fltk/svn/fltk/trunk@24 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
+20
-2
@@ -26,7 +26,25 @@
|
|||||||
#ifndef Fl_Enumerations_H
|
#ifndef Fl_Enumerations_H
|
||||||
#define Fl_Enumerations_H
|
#define Fl_Enumerations_H
|
||||||
|
|
||||||
const double FL_VERSION = 0.99;
|
//
|
||||||
|
// The FLTK version number; this is changed slightly from the beta versions
|
||||||
|
// because the old "const double" definition would not allow for conditional
|
||||||
|
// compilation...
|
||||||
|
//
|
||||||
|
// FL_VERSION is a double that describes the major and minor version numbers.
|
||||||
|
// Version 1.1 is actually stored as 1.01 to allow for more than 9 minor
|
||||||
|
// releases.
|
||||||
|
//
|
||||||
|
// The FL_MAJOR_VERSION, FL_MINOR_VERSION, and FL_PATCH_VERSION constants
|
||||||
|
// give the integral values for the major, minor, and patch releases
|
||||||
|
// respectively.
|
||||||
|
//
|
||||||
|
|
||||||
|
#define FL_MAJOR_VERSION 1
|
||||||
|
#define FL_MINOR_VERSION 0
|
||||||
|
#define FL_PATCH_VERSION 0
|
||||||
|
#define FL_VERSION ((double)FL_MAJOR_VERSION + \
|
||||||
|
(double)FL_MINOR_VERSION * 0.01)
|
||||||
|
|
||||||
typedef unsigned char uchar;
|
typedef unsigned char uchar;
|
||||||
typedef unsigned long ulong;
|
typedef unsigned long ulong;
|
||||||
@@ -327,5 +345,5 @@ enum Fl_Mode { // visual types and Fl_Gl_Window::mode() (values match Glut)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
//
|
//
|
||||||
// End of "$Id: Enumerations.H,v 1.3 1998/10/19 21:38:25 mike Exp $".
|
// End of "$Id: Enumerations.H,v 1.4 1998/10/20 16:41:21 mike Exp $".
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,3 +1,30 @@
|
|||||||
// this file allows some glut programs to be compiled with no change.
|
//
|
||||||
// Put this in a directory "GL" in your include path.
|
// "$Id"
|
||||||
|
//
|
||||||
|
// GLUT compatibility header for the Fast Light Tool Kit (FLTK).
|
||||||
|
//
|
||||||
|
// Copyright 1998 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@easysw.com".
|
||||||
|
//
|
||||||
|
|
||||||
#include <FL/glut.H>
|
#include <FL/glut.H>
|
||||||
|
|
||||||
|
//
|
||||||
|
// End of "$Id: glut.h,v 1.2 1998/10/20 16:41:22 mike Exp $".
|
||||||
|
//
|
||||||
|
|||||||
@@ -1,116 +1,303 @@
|
|||||||
Fast Light Tool Kit (fltk) Version 0.99
|
README - Fast Light Tool Kit (FLTK) Version 1.0
|
||||||
|
-----------------------------------------------
|
||||||
|
|
||||||
----------------------------------------------------------------
|
WHAT IS FLTK?
|
||||||
How to build and install fltk:
|
|
||||||
----------------------------------------------------------------
|
|
||||||
|
|
||||||
See the file win32/README for information for Windoze95/NT.
|
FLTK (pronounced "fulltick") is a LGPL'd C++ graphical user
|
||||||
|
interface toolkit for X (UNIX(r)), OpenGL, and WIN32 (Microsoft(r)
|
||||||
|
Windows(r) NT 4.0, 95, or 98). It is currently maintained by a small
|
||||||
|
group of developers across the world with a central repository in
|
||||||
|
the US.
|
||||||
|
|
||||||
1. Type "./configure", and then examine config.h and makeinclude.
|
FLTK was originally created to build in-house applications at
|
||||||
1. Edit the file ./style.h to customize the appearance of fltk
|
Digital Domain for image processing and 3D graphics. The original
|
||||||
3. Type "make", or (Linux and gcc only) type "make shared" to make
|
author, Bill Spitzak, received permission from Digital Domain to
|
||||||
a shared library.
|
release it to the public domain in the hopes that it could be used
|
||||||
4. For shared libraries, type "setenv LD_LIBRARY_PATH $PWD/lib"
|
to make better, faster, and nicer-looking UNIX programs. Digital
|
||||||
5. Test it by running "test/demo".
|
Domain has since withdrawn support for FLTK, and Bill is no longer
|
||||||
|
able to actively develop it.
|
||||||
|
|
||||||
To install the new version of Fltk and fluid (this puts the library in
|
|
||||||
/usr/local/lib, the include files in /usr/local/include/FL, and fluid
|
|
||||||
into /usr/local/bin):
|
|
||||||
|
|
||||||
1. If you made the shared version, type "unsetenv LD_LIBRARY_PATH"
|
FEATURES
|
||||||
2. Type "su" and then your password
|
|
||||||
3. Type "make install"
|
|
||||||
4. If you made the shared version, type "/sbin/ldconfig"
|
|
||||||
5. Type ^D to get out of su.
|
|
||||||
|
|
||||||
----------------------------------------------------------------
|
FLTK was designed to be statically linked. This was done by
|
||||||
On-line documentation:
|
splitting it into many small objects and desigining it so that
|
||||||
----------------------------------------------------------------
|
functions that are not used do not have pointers to them in the
|
||||||
|
parts that are used, and thus do not get linked in. This allows you
|
||||||
|
to make an easy-to-install program, or to modify FLTK to the exact
|
||||||
|
requirements of your appli- cation, without worrying about bloat.
|
||||||
|
FLTK works fine as a shared library, though, and has started being
|
||||||
|
included on Linux distribu- tions.
|
||||||
|
|
||||||
All the documentation is in html in the subdirectory "documentation".
|
Here are some of the core features unique to FLTK:
|
||||||
Use file:<here>/documentation/index.html to get started. Install
|
|
||||||
should put the documentation in /usr/doc/fltk but this is not yet
|
|
||||||
implemented.
|
|
||||||
|
|
||||||
These files are readable without a browser:
|
- sizeof(Fl_Widget) == 48.
|
||||||
|
|
||||||
Change log is in documentation/CHANGES
|
- The "core" (the "hello" program compiled & linked with a
|
||||||
To Do list is in documentatoin/TODO.html
|
static FLTK library using gcc on a 486 and then stripped) is
|
||||||
|
39.5K.
|
||||||
|
|
||||||
----------------------------------------------------------------
|
- A program including every widget is less than 108K. Does not
|
||||||
WWW resources:
|
use macros, templates, multiple inheritance, or exceptions.
|
||||||
----------------------------------------------------------------
|
|
||||||
|
|
||||||
The Fltk home page: http://www.cinenet.net/users/spitzak/fltk
|
- Written directly atop Xlib (or the WIN32 API) for maximum
|
||||||
|
speed, and carefully optimized for code size and
|
||||||
|
performance.
|
||||||
|
|
||||||
Mirror site: http://fltk.easysw.com
|
- Precise low-level compatability between the X and Windows
|
||||||
|
version (only about 10% of the code is different).
|
||||||
|
|
||||||
To post to the fltk mailing list: fltk@easysw.com
|
- Interactive user interface builder program. Output is human-
|
||||||
|
readable and editable C++ source code.
|
||||||
|
|
||||||
To subscribe, send "subscribe fltk" to majordomo@easysw.com
|
- Support for the X double buffering extension (emulation if
|
||||||
|
not available and under Windows.)
|
||||||
|
|
||||||
Send mail to Bill Spitzak (the author of fltk): spitzak@d2.com
|
- Support for X overlay hardware (emulation if none and under
|
||||||
|
Windows.)
|
||||||
|
|
||||||
Get Mesa (necessary to run OpenGl on most Linux machines):
|
- Very small & fast portable 2-D drawing library to hide Xlib
|
||||||
http://www.ssec.wisc.edu/~brianp/Mesa.html
|
and WIN32.
|
||||||
|
|
||||||
----------------------------------------------------------------
|
- OpenGL/Mesa drawing area widget.
|
||||||
Window managers
|
|
||||||
----------------------------------------------------------------
|
|
||||||
|
|
||||||
Fltk now uses X transient windows for modal() windows. This may
|
- Support for OpenGL overlay hardware on both X and Windows.
|
||||||
confuse some window managers. Mostly it causes them to not put
|
Emulation if none.
|
||||||
any borders on the modal windows and prevent you from moving them.
|
|
||||||
|
|
||||||
For FVWM I recommend you put "DecorateTransients" into your .fvwmrc.
|
- Text input fields with Emacs key bindings, X cut & paste, and
|
||||||
|
foreign letter compose!
|
||||||
|
|
||||||
----------------------------------------------------------------
|
- Compatability header file for the Glut library.
|
||||||
Mesa:
|
|
||||||
----------------------------------------------------------------
|
- Compatability header file for the XForms library.
|
||||||
|
|
||||||
|
- Much too much to list here...
|
||||||
|
|
||||||
|
|
||||||
|
LICENSING
|
||||||
|
|
||||||
|
FLTK comes with complete free source code. FLTK is available under
|
||||||
|
the terms of the GNU Library General Public License. Contrary to
|
||||||
|
popular belief, it can be used in commercial software! (Even Bill
|
||||||
|
Gates could use it.)
|
||||||
|
|
||||||
|
|
||||||
|
WHAT DOES "FLTK" MEAN?
|
||||||
|
|
||||||
|
FLTK was originally designed to be compatable with the Forms
|
||||||
|
Library written for SGI machines. In that library all the functions
|
||||||
|
and structures started with "fl_". This naming was extended to all
|
||||||
|
new methods and widgets in the C++ library, and this prefix was
|
||||||
|
taken as the name of the library. It is almost impossible to search
|
||||||
|
for "FL" on the Internet, due to the fact that it is also the
|
||||||
|
abbreviation for Florida. After much debating and searching for a
|
||||||
|
new name for the toolkit, which was already in use by several
|
||||||
|
people, Bill came up with "FLTK", and even a bogus excuse that it
|
||||||
|
stands for "The Fast Light Tool Kit".
|
||||||
|
|
||||||
|
|
||||||
|
BUILDING AND INSTALLING FLTK UNDER UNIX
|
||||||
|
|
||||||
|
FLTK uses GNU autoconf to configure itself for your UNIX platform.
|
||||||
|
If you aren't using UNIX then you'll need to configure things
|
||||||
|
differently. See below for other operating system configurations.
|
||||||
|
|
||||||
|
Before you configure FLTK you'll want to make sure your environment
|
||||||
|
is setup properly. Some variables of note are:
|
||||||
|
|
||||||
|
CC - C compiler to use
|
||||||
|
CFLAGS - C compiler options
|
||||||
|
|
||||||
|
CXX - C++ compiler to use
|
||||||
|
CXXFLAGS - C++ compiler options
|
||||||
|
|
||||||
|
LDFLAGS - Linker options
|
||||||
|
LIBS - Linker libraries
|
||||||
|
|
||||||
|
The main things that the configure script will look for are the
|
||||||
|
X11, OpenGL (or Mesa), and JPEG header and library files. Make
|
||||||
|
sure that they are in the standard include/library locations, and
|
||||||
|
if not define one or more of the environment variables listed
|
||||||
|
above.
|
||||||
|
|
||||||
|
Once you have everything ready you can run the "configure" script
|
||||||
|
located in this directory. The "--enable-windows-style" option to
|
||||||
|
configure will make the FLTK widgets look more like their Microsoft
|
||||||
|
Windows counterparts. Other options include:
|
||||||
|
|
||||||
|
--enable-debug - Enable debugging code & symbols
|
||||||
|
--enable-shared - Enable generation of shared libraries
|
||||||
|
--enable-windows-style - Enable the Microsoft Windows "look-n-feel"
|
||||||
|
|
||||||
|
--bindir=/path - Set the location for executables
|
||||||
|
[default = /usr/local/bin]
|
||||||
|
--libdir=/path - Set the location for libraries
|
||||||
|
[default = /usr/local/lib]
|
||||||
|
--includedir=/path - Set the location for include files.
|
||||||
|
[default = /usr/local/include]
|
||||||
|
--prefix=/dir - Set the directory prefix for files
|
||||||
|
[default = /usr/local]
|
||||||
|
|
||||||
|
When the configure script is done you can just run the "make"
|
||||||
|
command. This will build the library, FLUID tool, and all of the
|
||||||
|
test programs.
|
||||||
|
|
||||||
|
To install the library, become root and type "make install". This
|
||||||
|
will copy the "fluid" executable to "bindir", the header files to
|
||||||
|
"includedir", and the library files to "libdir".
|
||||||
|
|
||||||
|
|
||||||
|
BUILDING FLTK UNDER MICROSOFT WINDOWS
|
||||||
|
|
||||||
|
There are two ways to build FLTK under Microsoft Windows. The
|
||||||
|
first is to use the 5.0 project files under the "visualc"
|
||||||
|
directory. Just open (or double-click on) the "fltk.dsw" file to
|
||||||
|
get the whole shebang.
|
||||||
|
|
||||||
|
The second method is to use a GNU-based development tool with the
|
||||||
|
files in the "makefiles" directory. To build using one of these
|
||||||
|
tools simply copy the appropriate makeinclude and config files to
|
||||||
|
the main directory and do a make:
|
||||||
|
|
||||||
|
cp makefiles/makeinclude.<env> makeinclude
|
||||||
|
cp makefiles/config.<env> config.h
|
||||||
|
make
|
||||||
|
|
||||||
|
|
||||||
|
BUILDING FLTK UNDER OS/2
|
||||||
|
|
||||||
|
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!).
|
||||||
|
|
||||||
|
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:
|
||||||
|
|
||||||
|
cp makefiles/makeinclude.os2x makeinclude
|
||||||
|
cp makefiles/config.os2x config.h
|
||||||
|
make
|
||||||
|
|
||||||
|
|
||||||
|
ON-LINE DOCUMENTATION
|
||||||
|
|
||||||
|
All of the documentation is in HTML in the subdirectory
|
||||||
|
"documentation". The "index.html" file should be your starting
|
||||||
|
point.
|
||||||
|
|
||||||
|
|
||||||
|
INTERNET RESOURCES
|
||||||
|
|
||||||
|
FLTK is available on the 'net in a bunch of locations:
|
||||||
|
|
||||||
|
- WWW: http://fltk.easysw.com
|
||||||
|
|
||||||
|
- FTP: ftp://ftp.easysw.com/pub/fltk
|
||||||
|
ftp://ftp.funet.fi/mirrors/ftp.easysw.com/pub/fltk
|
||||||
|
|
||||||
|
- EMail: fltk@easysw.com [see instructions below]
|
||||||
|
fltk-bugs@easysw.com [for reporting bugs]
|
||||||
|
|
||||||
|
To send a message to the FLTK mailing list ("fltk@easysw.com") you
|
||||||
|
must first join the list. Non-member submissions are blocked to
|
||||||
|
avoid problems with SPAM...
|
||||||
|
|
||||||
|
To join the FLTK mailing list, send a message to
|
||||||
|
"majordomo@easysw.com" with "subscribe fltk" in the message body.
|
||||||
|
A digest of this list is available by subscribing to the
|
||||||
|
"fltk-digest" mailing list.
|
||||||
|
|
||||||
|
|
||||||
|
REPORTING BUGS
|
||||||
|
|
||||||
|
To report a bug in FLTK, send an email to "fltk-bugs@easysw.com".
|
||||||
|
Please include the FLTK version, operating system & version, and
|
||||||
|
compiler that you are using when describing the bug or problem.
|
||||||
|
|
||||||
|
For general support and questions, please use the FLTK mailing
|
||||||
|
list at "fltk@easysw.com".
|
||||||
|
|
||||||
|
|
||||||
|
WINDOW MANAGERS
|
||||||
|
|
||||||
|
FLTK now uses X transient windows for modal() windows. This may
|
||||||
|
confuse some window managers. Mostly it causes them to not put any
|
||||||
|
borders on the modal windows and prevent you from moving them.
|
||||||
|
|
||||||
|
For FVWM I recommend you put "DecorateTransients" into your
|
||||||
|
~/.fvwmrc file.
|
||||||
|
|
||||||
|
|
||||||
|
MESA
|
||||||
|
|
||||||
Currently the best way to get OpenGL on your Linux system is to use
|
Currently the best way to get OpenGL on your Linux system is to use
|
||||||
Mesa. Fltk has been tested with Mesa on several machines (and also
|
Mesa. FLTK has been tested with Mesa on several machines (and also
|
||||||
with "real" OpenGL on SGI machines).
|
with "real" OpenGL on SGI machines).
|
||||||
|
|
||||||
Mesa is at: http://www.ssec.wisc.edu/~brianp/Mesa.html
|
Mesa is available at "http://www.ssec.wisc.edu/~brianp/Mesa.html".
|
||||||
|
|
||||||
./configure will not see Mesa unless it is installed as either libGL
|
The configure script will not see Mesa unless it is installed as
|
||||||
or libMesa. If you don't want to do this you will have to edit
|
either libGL or libMesa. If you don't want to do this you will
|
||||||
config.h (set HAVE_GL to 1) and makeinclude (add the libraries).
|
have to edit config.h (set HAVE_GL to 1) and makeinclude (add the
|
||||||
|
libraries).
|
||||||
|
|
||||||
----------------------------------------------------------------
|
|
||||||
How to write programs that use Fltk:
|
|
||||||
----------------------------------------------------------------
|
|
||||||
|
|
||||||
The proper way to include Fltk header files is "#include <FL/Fl_xyz.H>".
|
HOW TO WRITE PROGRAMS THAT USE FLTK
|
||||||
If Fltk is installed this will work without switches. If not you will
|
|
||||||
need to provide a -I switch pointing to this directory (all the
|
|
||||||
headers are in ./FL).
|
|
||||||
|
|
||||||
Linker switches will be something like "-lfltk -L/usr/X11R6/lib -lX11".
|
The proper way to include FLTK header files is "#include
|
||||||
Some programs may require -lXext or -lm. If Fltk is not installed you
|
<FL/Fl_xyz.H>". If FLTK is installed this will work without
|
||||||
will need to add a -L switch pointing at ./lib.
|
switches. If not you will need to provide a "-Idir" switch
|
||||||
|
pointing to this directory (all the headers are in ./FL).
|
||||||
|
|
||||||
If you wish to distribute a program (in source form) that uses Fltk,
|
Windows developers please note: case *is* significant under other
|
||||||
you are allowed by the license to directly include the portions of
|
operating systems, and the C standard uses the forward slash (/) to
|
||||||
Fltk that you need. This may make it easier for a user to compile
|
separate directories. The following #include directives are *not*
|
||||||
your program since they don't need to install the library. Please
|
recommended for portability reasons:
|
||||||
provide instructions for the user on how they can get the entire
|
|
||||||
source of Fltk.
|
|
||||||
|
|
||||||
If you wish to distribute a compiled program without source code: this
|
#include <fl\fl_xyz.h>
|
||||||
is allowed. See the license.
|
#include <fl/fl_xyz.h>
|
||||||
|
#include <FL\Fl_xyz.H>
|
||||||
|
|
||||||
|
Linker switches will be something like "-lfltk -L/usr/X11R6/lib
|
||||||
|
-lX11". Some programs may require "-lXext" or "-lm". If FLTK is
|
||||||
|
not installed you will need to add a "-Ldir" switch pointing at
|
||||||
|
./lib.
|
||||||
|
|
||||||
|
If you wish to distribute a program (in source form) that uses
|
||||||
|
FLTK, you are allowed by the license to directly include the
|
||||||
|
portions of FLTK that you need. This may make it easier for a user
|
||||||
|
to compile your program since they don't need to install the
|
||||||
|
library. Please provide instructions for the user on how they can
|
||||||
|
get the entire source of FLTK.
|
||||||
|
|
||||||
|
If you wish to distribute a compiled program without source code,
|
||||||
|
this is allowed also. See the file "COPYING" for details.
|
||||||
|
|
||||||
|
|
||||||
|
TRADEMARKS
|
||||||
|
|
||||||
|
Microsoft and Windows are registered trademarks of Microsoft
|
||||||
|
Corportation. UNIX is a registered trademark of the X/Open Group,
|
||||||
|
Inc.
|
||||||
|
|
||||||
|
|
||||||
|
COPYRIGHT
|
||||||
|
|
||||||
|
FLTK is copyright 1998 by Bill Spitzak (spitzak@d2.com) and others,
|
||||||
|
including:
|
||||||
|
|
||||||
|
Curtis Edwards (curtise@fa.disney.com)
|
||||||
|
Gustavo Hime (hime@centroin.com.br)
|
||||||
|
Vincent Penne (vincent.penne@infonie.fr)
|
||||||
|
Michael Sweet (mike@easysw.com)
|
||||||
|
Carl Thompson (clip@home.net)
|
||||||
|
|
||||||
----------------------------------------------------------------
|
|
||||||
Copyright (C) 1998 Bill Spitzak
|
|
||||||
----------------------------------------------------------------
|
|
||||||
This library is free software; you can redistribute it and/or
|
This library is free software; you can redistribute it and/or
|
||||||
modify it under the terms of the GNU Library General Public
|
modify it under the terms of the GNU Library General Public License
|
||||||
License as published by the Free Software Foundation; either
|
as published by the Free Software Foundation; either version 2 of
|
||||||
version 2 of the License, or (at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
This library is distributed in the hope that it will be useful,
|
This library is distributed in the hope that it will be useful, but
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
Library General Public License for more details.
|
Library General Public License for more details.
|
||||||
|
|
||||||
@@ -118,6 +305,3 @@ You should have received a copy of the GNU Library General Public
|
|||||||
License along with this library; if not, write to the Free Software
|
License along with this library; if not, write to the Free Software
|
||||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
||||||
USA.
|
USA.
|
||||||
|
|
||||||
Written by Bill Spitzak spitzak@d2.com
|
|
||||||
----------------------------------------------------------------
|
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
How to compile for Windoze:
|
README.win32 - How to compile for Windows
|
||||||
|
-----------------------------------------
|
||||||
|
|
||||||
Fltk has been reported to compile with GNU GCC compilers, with
|
Fltk has been reported to compile with GNU GCC compilers, with
|
||||||
MicroSoft Visual C++ version 4 and 5, and with Borland's C++ compiler
|
MicroSoft Visual C++ version 4 and 5, and with Borland's C++ compiler
|
||||||
+118
-26
@@ -1,53 +1,145 @@
|
|||||||
/* configh.in: this file is read by ./configure to produce config.h */
|
/*
|
||||||
|
* "$Id"
|
||||||
|
*
|
||||||
|
* Configuration file for the Fast Light Tool Kit (FLTK).
|
||||||
|
*
|
||||||
|
* THIS FILE IS READ BY CONFIGURE TO PRODUCE A PLATFORM-SPECIFIC CONFIG.H
|
||||||
|
* FILE. EDIT ONLY IF YOU CAN'T RUN CONFIGURE!
|
||||||
|
*
|
||||||
|
* Copyright 1998 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@easysw.com".
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 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().
|
||||||
|
*/
|
||||||
|
|
||||||
/* 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 windoze
|
|
||||||
(and KDE and Qt). 1 is a plausible future evolution... Notice
|
|
||||||
that this may be simulated at runtime by redefining the boxtypes
|
|
||||||
using Fl::set_boxtype() */
|
|
||||||
#define BORDER_WIDTH 3
|
#define BORDER_WIDTH 3
|
||||||
|
|
||||||
/* Do you have OpenGL?
|
/*
|
||||||
Set this to 0 if you don't plan to use OpenGL, and fltk will be smaller */
|
* 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
|
#define HAVE_GL 0
|
||||||
|
|
||||||
/* Use XAllocColor
|
/*
|
||||||
Setting this to zero will save a good deal of code (esp for
|
* USE_COLORMAP:
|
||||||
fl_draw_image), but fltk will only work on TrueColor visuals. */
|
*
|
||||||
|
* 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
|
#define USE_COLORMAP 1
|
||||||
|
|
||||||
/* Do we have the X double-buffer extension? */
|
/*
|
||||||
|
* HAVE_XDBE:
|
||||||
|
*
|
||||||
|
* Do we have the X double-buffer extension?
|
||||||
|
*/
|
||||||
|
|
||||||
#define HAVE_XDBE 0
|
#define HAVE_XDBE 0
|
||||||
|
|
||||||
/* Actually try to use the double-buffer extension?
|
/*
|
||||||
Set this to zero disable use of XDBE without breaking the
|
* USE_XDBE:
|
||||||
list_visuals program: */
|
*
|
||||||
|
* 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
|
#define USE_XDBE HAVE_XDBE
|
||||||
|
|
||||||
/* Use the X overlay extension? Fltk will try to use an overlay
|
/*
|
||||||
visual for Fl_Overlay_Window, the Gl_Window overlay, and for the
|
* HAVE_OVERLAY:
|
||||||
menus. Setting this to zero will remove a substatial amount of
|
*
|
||||||
code from fltk. Overlays have only been tested on SGI servers! */
|
* 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
|
#define HAVE_OVERLAY 0
|
||||||
/* It is possible your GL has an overlay even if X does not, if so
|
|
||||||
turn this on: */
|
/*
|
||||||
|
* 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
|
#define HAVE_GL_OVERLAY HAVE_OVERLAY
|
||||||
|
|
||||||
/* Byte order of your machine: */
|
/*
|
||||||
|
* WORDS_BIGENDIAN:
|
||||||
|
*
|
||||||
|
* Byte order of your machine: 1 = big-endian, 0 = little-endian.
|
||||||
|
*/
|
||||||
|
|
||||||
#define WORDS_BIGENDIAN 0
|
#define WORDS_BIGENDIAN 0
|
||||||
|
|
||||||
/* Types used by fl_draw_image. One of U32 or U64 must be defined.
|
/*
|
||||||
U16 is optional but fltk will work better with it! */
|
* 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!
|
||||||
|
*/
|
||||||
|
|
||||||
#undef U16
|
#undef U16
|
||||||
#undef U32
|
#undef U32
|
||||||
#undef U64
|
#undef U64
|
||||||
|
|
||||||
/* Where is <dirent.h> (used only by fl_file_chooser and scandir): */
|
/*
|
||||||
|
* 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_DIRENT_H 1
|
||||||
#define HAVE_SYS_NDIR_H 0
|
#define HAVE_SYS_NDIR_H 0
|
||||||
#define HAVE_SYS_DIR_H 0
|
#define HAVE_SYS_DIR_H 0
|
||||||
#define HAVE_NDIR_H 0
|
#define HAVE_NDIR_H 0
|
||||||
#define HAVE_SCANDIR 0
|
#define HAVE_SCANDIR 0
|
||||||
|
|
||||||
/* use poll() instead of select(): */
|
/*
|
||||||
|
* HAVE_POLL:
|
||||||
|
*
|
||||||
|
* Use poll() if we don't have select().
|
||||||
|
*/
|
||||||
|
|
||||||
#define HAVE_POLL 0
|
#define HAVE_POLL 0
|
||||||
|
|
||||||
|
/*
|
||||||
|
* HAVE_LIBJPEG
|
||||||
|
*
|
||||||
|
* Do we have the JPEG group's JPEG file library?
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define HAVE_LIBJPEG 0
|
||||||
|
|
||||||
|
/*
|
||||||
|
* End of "$Id: configh.in,v 1.2 1998/10/20 16:41:17 mike Exp $".
|
||||||
|
*/
|
||||||
|
|||||||
+73
-38
@@ -1,7 +1,71 @@
|
|||||||
dnl# -*- sh -*-
|
dnl# -*- sh -*-
|
||||||
dnl# the "configure" script is made from this by running GNU "autoconf"
|
dnl# the "configure" script is made from this by running GNU "autoconf"
|
||||||
|
dnl#
|
||||||
|
dnl# "$Id"
|
||||||
|
dnl#
|
||||||
|
dnl# for the Fast Light Tool Kit (FLTK).
|
||||||
|
dnl#
|
||||||
|
dnl# Copyright 1998 by Bill Spitzak and others.
|
||||||
|
dnl#
|
||||||
|
dnl# This library is free software; you can redistribute it and/or
|
||||||
|
dnl# modify it under the terms of the GNU Library General Public
|
||||||
|
dnl# License as published by the Free Software Foundation; either
|
||||||
|
dnl# version 2 of the License, or (at your option) any later version.
|
||||||
|
dnl#
|
||||||
|
dnl# This library is distributed in the hope that it will be useful,
|
||||||
|
dnl# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
dnl# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
dnl# Library General Public License for more details.
|
||||||
|
dnl#
|
||||||
|
dnl# You should have received a copy of the GNU Library General Public
|
||||||
|
dnl# License along with this library; if not, write to the Free Software
|
||||||
|
dnl# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
||||||
|
dnl# USA.
|
||||||
|
dnl#
|
||||||
|
dnl# Please report all bugs and problems to "fltk-bugs@easysw.com".
|
||||||
|
dnl#
|
||||||
|
|
||||||
AC_INIT(src/Fl.C)
|
AC_INIT(src/Fl.C)
|
||||||
|
|
||||||
|
AC_PROG_RANLIB
|
||||||
|
|
||||||
|
LIBNAME="libfltk.a"
|
||||||
|
if test "$RANLIB" != ":"; then
|
||||||
|
LIBCOMMAND="ar crv"
|
||||||
|
else
|
||||||
|
LIBCOMMAND="ar crvs"
|
||||||
|
fi
|
||||||
|
|
||||||
|
DEBUGFLAG=""
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(debug, [ --enable-debug turn on debugging [default=no]],if eval "test x$enable_debug = xyes"; then
|
||||||
|
DEBUGFLAG="-g"
|
||||||
|
fi)
|
||||||
|
AC_ARG_ENABLE(shared, [ --enable-shared turn on shared libraries [default=no]],if eval "test x$enable_shared = xyes"; then
|
||||||
|
RANLIB=":"
|
||||||
|
case `uname` in
|
||||||
|
SunOS* | UNIX_S*)
|
||||||
|
LIBNAME="libfltk.so.1"
|
||||||
|
LIBCOMMAND="\$(CXX) -G $DEBUGFLAG -o"
|
||||||
|
;;
|
||||||
|
HP-UX*)
|
||||||
|
LIBNAME="libfltk.sl.1"
|
||||||
|
LIBCOMMAND="ld -b -z +h libfltk.sl.1 $DEBUGFLAGS -o"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Warning: shared libraries may not be supported. Trying -shared"
|
||||||
|
echo " option to compiler."
|
||||||
|
OSF1* | IRIX*)
|
||||||
|
LIBNAME="libfltk.so.1"
|
||||||
|
LIBCOMMAND="\$(CXX) -shared $DEBUGFLAG -o"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi)
|
||||||
|
|
||||||
|
if test -n "$DEBUGFLAG"; then
|
||||||
|
CFLAGS="$DEBUGFLAG $CFLAGS"
|
||||||
|
fi
|
||||||
|
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
AC_PROG_CXX
|
AC_PROG_CXX
|
||||||
dnl# AC_PROG_INSTALL
|
dnl# AC_PROG_INSTALL
|
||||||
@@ -33,8 +97,6 @@ AC_HEADER_DIRENT
|
|||||||
|
|
||||||
AC_CHECK_FUNCS(scandir)
|
AC_CHECK_FUNCS(scandir)
|
||||||
|
|
||||||
AC_PROG_RANLIB
|
|
||||||
|
|
||||||
AC_PATH_XTRA
|
AC_PATH_XTRA
|
||||||
echo "Ignoring libraries \"$X_PRE_LIBS\" requested by configure."
|
echo "Ignoring libraries \"$X_PRE_LIBS\" requested by configure."
|
||||||
dnl# LIBS="$LIBS$X_LIBS$X_PRE_LIBS"
|
dnl# LIBS="$LIBS$X_LIBS$X_PRE_LIBS"
|
||||||
@@ -62,45 +124,18 @@ if test "$ac_cv_have_overlay" = yes; then
|
|||||||
AC_DEFINE(HAVE_OVERLAY)
|
AC_DEFINE(HAVE_OVERLAY)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl Check for other libraries...
|
||||||
|
|
||||||
|
AC_CHECK_LIB(jpeg,jpeg_destroy_decompress)
|
||||||
|
|
||||||
MAKEDEPEND="\$(CXX) -M"
|
MAKEDEPEND="\$(CXX) -M"
|
||||||
|
|
||||||
dnl# add warnings and optimization to compiler switches:
|
AC_SUBST(LIBNAME)
|
||||||
dnl# do this last so messing with switches does not break tests
|
AC_SUBST(LIBCOMMAND)
|
||||||
if test -n "$GXX"; then
|
|
||||||
CFLAGS="-Wall -O2"
|
|
||||||
CFLAGS_D="-Wall -Wno-return-type -g -DDEBUG"
|
|
||||||
CXXFLAGS="-Wall -Wno-return-type -O2"
|
|
||||||
CXXFLAGS_D="-Wall -Wno-return-type -g -DDEBUG"
|
|
||||||
else
|
|
||||||
if test "`(uname) 2>/dev/null`" = IRIX; then
|
|
||||||
if expr "`(uname -r)`" \>= 6.2; then
|
|
||||||
# compiler names:
|
|
||||||
CXX="CC -n32"
|
|
||||||
CC="cc -n32"
|
|
||||||
LD="ld -n32"
|
|
||||||
MAKEDEPEND="CC -M"
|
|
||||||
# -woff 3322 is necessary due to errors in Xlib headers on IRIX
|
|
||||||
CFLAGS="-fullwarn -O2"
|
|
||||||
CFLAGS_D="-fullwarn -gslim -DDEBUG"
|
|
||||||
CXXFLAGS="-fullwarn -woff 1685 -woff 3322 -O2"
|
|
||||||
CXXFLAGS_D="-fullwarn -woff 1685 -woff 3322 -gslim -DDEBUG"
|
|
||||||
else
|
|
||||||
CFLAGS="-O2"
|
|
||||||
CFLAGS_D="-g -DDEBUG"
|
|
||||||
CXXFLAGS="+w +pp -O2"
|
|
||||||
CXXFLAGS_D="+w +pp -g -DDEBUG"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
CFLAGS="-O"
|
|
||||||
CFLAGS_D="-g -DDEBUG"
|
|
||||||
CXXFLAGS="-O"
|
|
||||||
CXXFLAGS_D="-g -DDEBUG"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
AC_SUBST(MAKEDEPEND)
|
AC_SUBST(MAKEDEPEND)
|
||||||
AC_SUBST(CFLAGS_D)
|
|
||||||
AC_SUBST(CXXFLAGS_D)
|
|
||||||
AC_CONFIG_HEADER(config.h:configh.in)
|
AC_CONFIG_HEADER(config.h:configh.in)
|
||||||
AC_OUTPUT(makeinclude)
|
AC_OUTPUT(makeinclude)
|
||||||
|
|
||||||
dnl# end of configure.in
|
dnl#
|
||||||
|
dnl# End of "$Id: configure.in,v 1.2 1998/10/20 16:41:18 mike Exp $".
|
||||||
|
dnl#
|
||||||
|
|||||||
@@ -1,26 +0,0 @@
|
|||||||
#!/bin/tcsh
|
|
||||||
# I use tcsh to get the better glob matching. Wish there were a more
|
|
||||||
# portable way...
|
|
||||||
# argument to this script is the version number or word like "BETA"
|
|
||||||
|
|
||||||
if ( $1 == "" ) then
|
|
||||||
echo "Version number needed"
|
|
||||||
exit 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
set f="fltk-$1"
|
|
||||||
rm -f $f
|
|
||||||
ln -s . $f
|
|
||||||
|
|
||||||
echo "Making $f.tgz"
|
|
||||||
tar -cf \
|
|
||||||
$f.tar $f/README $f/COPYING $f/version $f/Makefile \
|
|
||||||
$f/configure $f/*.in $f/makefiles/* $f/makedist $f/install-sh \
|
|
||||||
$f/{src,fluid,FL,test,GL}/{README,Makefile,*.{fl,[CHch],x?m,menu}} \
|
|
||||||
$f/documentation/*.{html,gif,jpg} $f/documentation/CHANGES \
|
|
||||||
$f/forms.h $f/win32/* $f/lib/... \
|
|
||||||
|
|
||||||
gzip -f $f.tar
|
|
||||||
mv $f.tar.gz $f.tgz
|
|
||||||
|
|
||||||
rm -f $f
|
|
||||||
+31
-5
@@ -1,3 +1,28 @@
|
|||||||
|
#
|
||||||
|
# "$Id"
|
||||||
|
#
|
||||||
|
# for the Fast Light Tool Kit (FLTK).
|
||||||
|
#
|
||||||
|
# Copyright 1998 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@easysw.com".
|
||||||
|
#
|
||||||
|
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
prefix =@prefix@
|
prefix =@prefix@
|
||||||
@@ -15,14 +40,11 @@ MAKEDEPEND =@MAKEDEPEND@
|
|||||||
|
|
||||||
# flags for C++ compiler:
|
# flags for C++ compiler:
|
||||||
CFLAGS =@CFLAGS@
|
CFLAGS =@CFLAGS@
|
||||||
CFLAGS_D =@CFLAGS_D@
|
|
||||||
CXXFLAGS =@CXXFLAGS@ @X_CFLAGS@
|
CXXFLAGS =@CXXFLAGS@ @X_CFLAGS@
|
||||||
CXXFLAGS_D =@CXXFLAGS_D@ @X_CFLAGS@
|
|
||||||
|
|
||||||
# program to make the archive:
|
# program to make the archive:
|
||||||
LIBNAME =libfltk.a
|
LIBNAME =@LIBNAME@
|
||||||
LIBNAME_D =libfltk_d.a
|
LIBCOMMAND =@LIBCOMMAND@
|
||||||
AR =ar rc
|
|
||||||
RANLIB =@RANLIB@
|
RANLIB =@RANLIB@
|
||||||
|
|
||||||
# libraries to link with:
|
# libraries to link with:
|
||||||
@@ -30,3 +52,7 @@ LDLIBS =@LIBS@ -lX11 -lXext @X_EXTRA_LIBS@ -lm
|
|||||||
|
|
||||||
# libraries to link with when using GL:
|
# libraries to link with when using GL:
|
||||||
GLDLIBS =@LIBS@ @GLLIB@ -lX11 -lXext @X_EXTRA_LIBS@ -lm
|
GLDLIBS =@LIBS@ @GLLIB@ -lX11 -lXext @X_EXTRA_LIBS@ -lm
|
||||||
|
|
||||||
|
#
|
||||||
|
# End of "$Id: makeinclude.in,v 1.2 1998/10/20 16:41:20 mike Exp $".
|
||||||
|
#
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@
|
|||||||
(and KDE and Qt). 1 is a plausible future evolution... Notice
|
(and KDE and Qt). 1 is a plausible future evolution... Notice
|
||||||
that this may be simulated at runtime by redefining the boxtypes
|
that this may be simulated at runtime by redefining the boxtypes
|
||||||
using Fl::set_boxtype() */
|
using Fl::set_boxtype() */
|
||||||
#define BORDER_WIDTH 3
|
#define BORDER_WIDTH 2
|
||||||
|
|
||||||
/* Do you have OpenGL?
|
/* Do you have OpenGL?
|
||||||
Set this to 0 if you don't plan to use OpenGL, and fltk will be smaller */
|
Set this to 0 if you don't plan to use OpenGL, and fltk will be smaller */
|
||||||
|
|||||||
Reference in New Issue
Block a user