1775984dbe
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1905 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
145 lines
4.5 KiB
Plaintext
145 lines
4.5 KiB
Plaintext
README.mac - 12/20/2001 - Building FLTK under MacOS 8, 9, and X
|
|
---------------------------------------------------------------
|
|
|
|
CONTENTS
|
|
|
|
- Introduction
|
|
- How to Build Using GCC (MacOS X)
|
|
- Scripts
|
|
- Known MacFLTK bugs
|
|
- Test suite status
|
|
- Other stuff
|
|
- FLTK 1.0.x for Mac
|
|
|
|
|
|
INTRODUCTION
|
|
|
|
FLTK for MacOS X is in beta stage. Expect rapid changes to
|
|
the source code and build environment.
|
|
|
|
FLTK currently supports the following development
|
|
environments on the MacOS X platform:
|
|
|
|
- GCC
|
|
- (Metrowerks CodeWarrior - future releases)
|
|
- (Apple Project Builder - future releases)
|
|
- (MPW - future releases)
|
|
|
|
FLTK for Mac is fully carbonized, i.e. all applications
|
|
should run on MacOS 8.1 and higher and OS X without
|
|
changes. Note, however, that applications compiled using
|
|
GCC will only run under MacOS X since they use a different
|
|
executable format.
|
|
|
|
|
|
HOW TO BUILD USING GCC (MacOS X)
|
|
|
|
Since the MacOS X command line build environment is based on
|
|
BSD UNIX, the normal UNIX build procedure as described in
|
|
'README' applies.
|
|
|
|
A 'resource fork' will be attached to applications to make
|
|
them visible in the Finder. The default resource file is
|
|
"FL/mac.r".
|
|
|
|
The "fltk-config" script can be used to attach the FLTK
|
|
resource fork to an executable using the "--post" option:
|
|
|
|
fltk-config --post foo
|
|
|
|
where "foo" is the name of the executable.
|
|
|
|
To attach your own resource fork to your FLTK program, run
|
|
the "Rez" command:
|
|
|
|
Rez -t APPL foo.r -o foo
|
|
|
|
|
|
SCRIPTS
|
|
|
|
When using Finder applications on source files (e.g.
|
|
FileMerge), I found the following script very useful. It adds
|
|
resource forks to all text files:
|
|
|
|
#!/bin/tcsh
|
|
setenv SET_MAC_TYPE "SetFile -t TEXT -c ttxt "
|
|
setenv F1MAC_N 7
|
|
echo "Setting Mac File Types. Please wait..."
|
|
echo "[1/"$F1MAC_N"]"
|
|
find . -name '*.H' -exec $SET_MAC_TYPE {} \;
|
|
echo "[2/"$F1MAC_N"]"
|
|
find . -name '*.h' -exec $SET_MAC_TYPE {} \;
|
|
echo "[3/"$F1MAC_N"]"
|
|
find . -name '*.c' -exec $SET_MAC_TYPE {} \;
|
|
echo "[4/"$F1MAC_N"]"
|
|
find . -name '*.cxx' -exec $SET_MAC_TYPE {} \;
|
|
echo "[5/"$F1MAC_N"]"
|
|
find . -name '*.fl' -exec $SET_MAC_TYPE {} \;
|
|
echo "[6/"$F1MAC_N"]"
|
|
find . -name 'make*' -exec $SET_MAC_TYPE {} \;
|
|
echo "[7/"$F1MAC_N"]"
|
|
find . -name 'Make*' -exec $SET_MAC_TYPE {} \;
|
|
echo "done."
|
|
|
|
|
|
KNOWN MacFLTK BUGS
|
|
|
|
The following FLTK things are not implemented or don't work
|
|
at present:
|
|
|
|
- File handles (Fl::add_fd) are not implemented.
|
|
- Line styles are not fully implemented.
|
|
- Sub-sub-subwindow not tested.
|
|
- Image transparency is not implemented.
|
|
- The 'shiny' demo needs work (flush/aglFlush).
|
|
- Threads are not implemented.
|
|
- OpenGL subwindow during window resize changes position
|
|
|
|
|
|
TEST SUITE STATUS
|
|
|
|
OS X:
|
|
|
|
CubeView(++), adjuster(++), arc(++), ask(++), bitmap(++),
|
|
boxtype(++), browser(++), button(++), buttons(++),
|
|
checkers(++), clock(++), colbrowser(++), color_chooser(++),
|
|
cube(++), cursor(++), curve(++), demo(++), doublebuffer(++),
|
|
editor(++), fast_slow(++), file_chooser(++), fonts(++),
|
|
forms(++), fractals(++), fullscreen(++), gl_overlay(++),
|
|
glpuzzle(++), hello(++), help(++), iconize(++), image(+),
|
|
inactive(++), input(++), keyboard(++), label(++),
|
|
line_style(+), mandelbrot(++), menubar(++), message(++),
|
|
minimum(++), navigation(++), output(++), overlay(++),
|
|
pack(++), pixmap(++), pixmap_browser(++), radio(++),
|
|
resizebox(++), scroll(++), shape(++), shiny(-),
|
|
subwindow(++), symbols(++), tabs(++), tile(++),
|
|
tiled_image(++), valuators(++), fluid(++)
|
|
|
|
(o)=minor bugs, (+)=usable, (++)=running perfectly,
|
|
(-)=major bugs, (--)=crashes
|
|
|
|
|
|
OTHER STUFF
|
|
|
|
The creator ID's 'FLTK', 'Fltk', 'FLID', and 'Flid' are
|
|
officially registered with Apple Computers, Inc. and can be
|
|
used for FLTK applications ('FLTK') and FLUID files
|
|
('Flid').
|
|
|
|
Under MacOS X, all windows are double-buffered. Using
|
|
Fl_Window has the same effect as using Fl_Double_Window on
|
|
other operating systems. Fl_Overlay_Window however uses one
|
|
additional buffer for the overlay plane.
|
|
|
|
|
|
FLTK 1.0.X FOR MAC
|
|
|
|
FLTK 1.0.6 for MacOS 8.x and OS 9.x is in beta stage and can
|
|
be downloaded from http://www.matthiasm.com/flMac.html .
|
|
The archive contains build files for Metrowerks CodeWarrior
|
|
5 and 6.
|
|
|
|
FLTK 1.0.6 for Mac is not supported by the FLTK team and
|
|
will not be further developed by the author. Instead it
|
|
will be replaced by FLTK 1.1.x for Mac in the near future.
|