* docs/*: serious rewriting of the documentation
* include/freetype/internal/ftobjs.h, src/base/ftobjs.c, src/bdf/bdfdrivr.c,
src/pcf/pcfdriver.c, src/pfr/pfrsbit.c, src/sfnt/ttsbit.c,
src/type42/t42objs.c, src/winfonts/winfnt.c: introduced three new functions
to deal with glyph bitmaps within FT_GlyphSlot objects. these are:
ft_glyphslot_free_bitmap
ft_glyphslot_alloc_bitmap
ft_glyphslot_set_bitmap
these are much more convenient to use than managing the FT_GLYPH_OWN_BITMAP
flag manually. the font drivers have been modified to use them as well.
* src/cache/ftlru.c: fixed an invalid assertion check
diff --git a/docs/INSTALL.GNU b/docs/INSTALL.GNU
new file mode 100644
index 0000000..df6f012
--- /dev/null
+++ b/docs/INSTALL.GNU
@@ -0,0 +1,128 @@
+This document contains instructions on how to build the FreeType library
+on non-Unix systems with the help of GNU Make. Note that if you're running
+Cygwin or MSys in Windows, you should follow the instructions of INSTALL.UNX
+instead.
+
+
+ FreeType 2 includes a powerful and flexible build system that allows
+ you to easily compile it on a great variety of platforms from the
+ command line. To do so, just follow these simple instructions:
+
+ a. Install GNU Make
+
+ Because GNU Make is the only Make tool supported to compile
+ FreeType 2, you should install it on your machine.
+
+ The FreeType 2 build system relies on many features special to GNU
+ Make -- trying to build the library with any other Make tool will
+ *fail*.
+
+ NEARLY ALL OTHER MAKE TOOLS WILL FAIL, INCLUDING "BSD MAKE", SO
+ REALLY INSTALL A RECENT VERSION OF GNU MAKE ON YOUR SYSTEM!
+
+ Make sure that you are invoking GNU Make from the command line, by
+ typing something like:
+
+ make -v
+
+ to display its version number.
+
+ VERSION 3.78.1 OR NEWER IS NEEDED!
+
+
+
+ b. Invoke 'make'
+
+ Go to the root directory of FreeType 2, then simply invoke GNU
+ Make from the command line. This will launch the FreeType 2 host
+ platform detection routines. A summary will be displayed, for
+ example, on Win32:
+
+
+ ==============================================================
+ FreeType build system -- automatic system detection
+
+ The following settings are used:
+
+ platform win32
+ compiler gcc
+ configuration directory ./builds/win32
+ configuration rules ./builds/win32/w32-gcc.mk
+
+ If this does not correspond to your system or settings please
+ remove the file 'config.mk' from this directory then read the
+ INSTALL file for help.
+
+ Otherwise, simply type 'make' again to build the library.
+ =============================================================
+
+
+ If the detected settings correspond to your platform and compiler,
+ skip to step e. Note that if your platform is completely alien to
+ the build system, the detected platform will be 'ansi'.
+
+
+ c. Configure the build system for a different compiler
+
+ If the build system correctly detected your platform, but you want
+ to use a different compiler than the one specified in the summary
+ (for most platforms, gcc is the defaut compiler), invoke GNU Make
+ with
+
+ make setup <compiler>
+
+ For example:
+
+ to use Visual C++ on Win32, type: "make setup visualc"
+ to use Borland C++ on Win32, type "make setup bcc32"
+ to use Watcom C++ on Win32, type "make setup watcom"
+ to use Intel C++ on Win32, type "make setup intelc"
+ to use LCC-Win32 on Win32, type: "make setup lcc"
+ to use Watcom C++ on OS/2, type "make setup watcom"
+ to use VisualAge C++ on OS/2, type "make setup visualage"
+
+ The <compiler> name to use is platform-dependent. The list of
+ available compilers for your system is available in the file
+ `builds/<system>/detect.mk'
+
+ If you are satisfied by the new configuration summary, skip to
+ step e.
+
+ d. Configure the build system for an unknown platform/compiler
+
+ The auto-detection/setup phase of the build system copies a file
+ to the current directory under the name `config.mk'.
+
+ For example, on OS/2+gcc, it would simply copy
+ `builds/os2/os2-gcc.mk' to `./config.mk'.
+
+ If for some reason your platform isn't correctly detected, copy
+ manually the configuration sub-makefile to `./config.mk' and go to
+ step e.
+
+ Note that this file is a sub-Makefile used to specify Make
+ variables for compiler and linker invocation during the build.
+ You can easily create your own version from one of the existing
+ configuration files, then copy it to the current directory under
+ the name `./config.mk'.
+
+ e. Build the library
+
+ The auto-detection/setup phase should have copied a file in the
+ current directory, called `./config.mk'. This file contains
+ definitions of various Make variables used to invoke the compiler
+ and linker during the build.
+
+ To launch the build, simply invoke GNU Make again: The top
+ Makefile will detect the configuration file and run the build with
+ it.
+
+
+
+ Final note:
+
+ the build system builds a statically linked library of the font engine
+ in the "objs" directory. It does _not_ support the build of DLLs on
+ Windows and OS/2, if you need these, you'll have to either use
+ a IDE-specific project file, or follow the instructions in
+ "INSTALL.ANY" to create your own Makefiles.