shithub: freetype+ttf2subf

Download patch

ref: febe3fbeba450a8916338e4bd7abdfe8f2e346f6
parent: 8c5c932e467cc55c71c7dc2785d4fa37016c20c7
author: Werner Lemberg <[email protected]>
date: Sat Mar 4 20:14:19 EST 2000

A first check of FT2's Make system.  Many smaller and larger bugs have been
fixed:

. Removing unused variables.

. detect.mk files now must provide $(CONFIG_FILE) and not $(CONFIG_RULE).

. ansi.mk will now be really used as a fallback if the detect mechanism
  fails.

. ANSIFLAGS will now be really used (fixing a typo).

. `make clean' now works (again two typos).

. Detection of gcc on Unix has been fixed (using the `-v' option instead of
  `--version').

. `make devel' now works (on Unix).

. Fixing *again* a bug in demos/graph/x11/rules.mk to allow multiple use
  of `-L' compiler options.

. $(BASE_H) now contains a few more header files.

As usual, a lot of formatting (not finished yet).

git/fs: mount .git/fs: mount/attach disallowed
--- a/Makefile
+++ b/Makefile
@@ -1,108 +1,103 @@
-#******************************************************************************
-#*
-#*  FreeType build system - top-level Makefile
-#*
-#*  This file is designed for GNU Make, do not use it with another Make tool.
-#*  It works as follows :
-#*
-#*  - when invoked for the first time, this Makefile will include
-#*    the rules found in `freetype/config/detect.mk'. They are in charge
-#*    of detecting the current platform.
-#*
-#*    A summary of the detection will be displayed, and the file `config.mk'
-#*    will be created in the current directory
-#*
-#*
-#*  - when invoked later, this Makefile will include the rules found in
-#*    `config.mk'. This sub-Makefile will define some system-specific
-#*    variables (like compiler, compilation flags, object suffix, etc..),
-#*    then include the rules found in `freetype/config/freetype.mk',
-#*    used to build the library.
-#*
-#*  See the comments in `config/detect.mk' and `config/freetype.mk' for
-#*  more details on host platform detection and library builds..
-#*
-#******************************************************************************
+#
+# FreeType 2 build system -- top-level Makefile
+#
 
-.PHONY: setup
 
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
 #
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT. By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
+
+
+# This file is designed for GNU Make, do not use it with another Make tool!
+#
+# It works as follows:
+#
+# - When invoked for the first time, this Makefile will include the rules
+#   found in `freetype/config/detect.mk'.  They are in charge of detecting
+#   the current platform.
+#
+#   A summary of the detection will be displayed, and the file `config.mk'
+#   will be created in the current directory.
+#
+# - When invoked later, this Makefile will include the rules found in
+#   `config.mk'.  This sub-Makefile will define some system-specific
+#   variables (like compiler, compilation flags, object suffix, etc.), then
+#   include the rules found in `freetype/config/freetype.mk', used to build
+#   the library.
+#
+# See the comments in `config/detect.mk' and `config/freetype.mk' for more
+# details on host platform detection and library builds.
+
+
+.PHONY: setup
+
 # The variable TOP holds the path to the topmost directory in the FreeType
-# engine source hierarchy. If it is not defined, default it to '.'
+# engine source hierarchy.  If it is not defined, default it to `.'.
 #
 ifndef TOP
-TOP := .
+  TOP := .
 endif
 
 CONFIG_MK := config.mk
 
-#############################################################################
+# If no configuration sub-makefile is present, or if `setup' is the target
+# to be built, run the auto-detection rules to figure out which
+# configuration rules file to use.
 #
-# If no configuration sub-makefile is present, or if "setup" is the target
-# to be built, run the auto-detection rules to figure out which configuration
-# rules file to use.. 
-#
 # Note that the configuration file is put in the current directory, which is
-# not necessarily TOP.
-#
+# not necessarily $(TOP).
 
-# if `config.mk' is not present, set "check_platform" and "first_time"
+# If `config.mk' is not present, set `check_platform'.
 #
 ifeq ($(wildcard $(CONFIG_MK)),)
-check_platform := 1
-first_time     := 1
+  check_platform := 1
 endif
 
-# if `setup' is one of the targets requested, set "check_platform"
+# If `setup' is one of the targets requested, set `check_platform'.
 #
 ifneq ($(findstring setup,$(MAKECMDGOALS)),)
-check_platform := 1
+  check_platform := 1
 endif
 
-
-#########################################################################
-#
-# include the automatic host platform detection rules when we need to
+# Include the automatic host platform detection rules when we need to
 # check the platform.
 #
-#
 ifdef check_platform
 
-all: setup
+  all: setup
 
+  # If the module list $(FT_MODULE_LIST) file is not present, generate it.
+  #
+  modules: make_module_list setup
 
-# if the module list $(FT_MODULE_LIST) file is not present,
-# generate it
-#
-modules: make_module_list setup
+  include $(TOP)/config/detect.mk
+  include $(TOP)/config/modules.mk
 
-include $(TOP)/config/detect.mk
-include $(TOP)/config/modules.mk
+  ifeq ($(wildcard $(FT_MODULE_LIST)),)
+    setup: make_module_list
+  endif
 
-ifeq ($(wildcard $(FT_MODULE_LIST)),)
-setup: make_module_list
-endif
+  # IMPORTANT:
+  #
+  # `setup' must be defined by the host platform detection rules to create
+  # the `config.mk' file in the current directory.
 
-
-# "setup" must be defined by the host platform detection rules
-# to create the 'config.mk' file in the current directory.
-#
-
-
-
 else
 
-########################################################################
-#
-# A configuration sub-Makefile is present, simply run it..
-#
-#
-all: build_freetype
+  # A configuration sub-Makefile is present -- simply run it.
+  #
+  all: build_freetype
 
-modules: make_module_list
+  modules: make_module_list
 
-BUILD_FREETYPE := yes
-include $(CONFIG_MK)
+  BUILD_FREETYPE := yes
+  include $(CONFIG_MK)
 
-endif #test check_platform
+endif # test check_platform
 
+# EOF
--- a/config/ansi/ansi.mk
+++ b/config/ansi/ansi.mk
@@ -1,23 +1,20 @@
-#*******************************************************************
-#*
-#*  FreeType 2 Configuration rules for a `normal' ANSI compiler
-#*
-#*  Copyright 1996-2000 by
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.
-#*
-#*  This file is part of the FreeType project, and may only be used
-#*  modified and distributed under the terms of the FreeType project
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute
-#*  this file you indicate that you have read the license and
-#*  understand and accept it fully.
-#*
-#*  Please read the file "freetype/docs/config.txt" to understand
-#*  what this file does..
-#*
-#*******************************************************************
+#
+# FreeType 2 configuration rules for a `normal' ANSI compiler
+#
 
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
+
+
 ifndef TOP
-TOP := .
+  TOP := .
 endif
 
 DELETE   := rm -f
@@ -26,109 +23,110 @@
 BUILD    := $(TOP)/config/ansi
 PLATFORM := ansi
 
-# the directory where all object files are placed
+# The directory where all object files are placed.
 #
-# Note that this is not $(TOP)/obj !!
-# This lets you build the library in your own directory
-# with something like :
+# Note that this is not $(TOP)/obj!
+# This lets you build the library in your own directory with something like
 #
-#  set TOP=....../path/to/freetype2/top/dir...
-#  mkdir obj
-#  make -f %TOP%/Makefile setup  [options]
-#  make -f %TOP%/Makefile
+#   set TOP=.../path/to/freetype2/top/dir...
+#   mkdir obj
+#   make -f $TOP/Makefile setup [options]
+#   make -f $TOP/Makefile
 #
-#
 OBJ_DIR := obj
 
 
-# the directory where all library files are placed
+# The directory where all library files are placed
 #
-#  by default, this is the same as OBJ_DIR, however, this can be
-#  changed to suit particular needs..
+# By default, this is the same as $(OBJ_DIR), however, this can be changed
+# to suit particular needs.
 #
 LIB_DIR := $(OBJ_DIR)
 
 
-# the object file extension, this can be .o, .tco, .obj, etc..
-# depending on the platform
+# The object file extension.  This can be .o, .tco, .obj, etc., depending on
+# the platform.
 #
 O := o
 
-# the library file extension, this can be .a, .lib, etc..
-# depending on the platform
+# The library file extension.  This can be .a, .lib, etc., depending on the
+# platform.
 #
 A := a
 
 
-# The name of the final library file.
-# Note that the DOS-specific Makefile uses a shorter (8.3) name
+# The name of the final library file.  Note that the DOS-specific Makefile
+# uses a shorter (8.3) name.
 #
 LIBRARY := libfreetype
 
 
-# path inclusion flag.
+# Path inclusion flag.  Some compilers use a different flag than `-I' to
+# specify an additional include path.  Examples are `/i=' or `-J'.
 #
-#  Some compilers use a different flag than '-I' to specify an
-#  additional include path. Examples are "/i=" or "-J", etc...
-#
 I := -I
 
 
-# C flag used to define a macro before the compilation of a given
-# source object. Usually is '-D' like in "-DDEBUG"
+# C flag used to define a macro before the compilation of a given source
+# object.  Usually is `-D' like in `-DDEBUG'.
 #
 D := -D
 
 
-# Target flag - beware, there is a space after the 'o' !!
+# The link flag used to specify a given library file on link.  Note that
+# this is only used to compile the demo programs, not the library itself.
 #
-#
-T := -o 
+L := -l
 
 
-# The link flag used to specify a given library file on link.
-# Note that this is only used to compile the demo programs, not
-# the library itself.
+# Target flag.
 #
-L := -l
+T := -o # Don't remove this comment line!  We need the space after `-o'.
 
 
 # C flags
 #
-#   These should concern : debug output, optimization & warnings
+#   These should concern: debug output, optimization & warnings.
 #
-#   Use the ANSIFLAGS variable to define the compiler flags used
-#   to enfore ANSI compliance..
+#   Use the ANSIFLAGS variable to define the compiler flags used to enfore
+#   ANSI compliance.
 #
 ifndef CFLAGS
-CFLAGS := -c
+  CFLAGS := -c
 endif
 
-# ANSIFLAGS : put there the flags used to make your compiler ANSI-compliant
-#             nothing (if it already is by default like LCC).
+# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
 #
 ANSIFLAGS :=
 
-# Now include the main sub-makefile. It contains all the rules used
-# to build the library with the previous variables defined
-#
-include $(TOP)/config/freetype.mk
 
-clean_freetype: clean_freetype_std
-distclean_freetype: clean_freetype_library_std
+ifdef BUILD_FREETYPE
 
-# Librarian to use to build the static library
-#
-FT_LIBRARIAN := $(AR) -r
+  # Now include the main sub-makefile.  It contains all the rules used to
+  # build the library with the previous variables defined.
+  #
+  include $(TOP)/config/freetype.mk
 
+  # The cleanup targets.
+  #
+  clean_freetype: clean_freetype_std
+  distclean_freetype: distclean_freetype_std
 
-# This final rule is used to link all object files into a single
-# library. It is part of the system-specific sub-Makefile because not
-# all librarians accept a simple syntax like :
-#
-#    librarian library_file {list of object files} 
-#
-$(FT_LIBRARY): $(OBJECTS_LIST)
-	-$(DELETE) $@
-	$(FT_LIBRARIAN) $@ $(OBJECTS_LIST)
+  # Librarian to use to build the static library
+  #
+  FT_LIBRARIAN := $(AR) -r
 
+
+  # This final rule is used to link all object files into a single library.
+  # It is part of the system-specific sub-Makefile because not all
+  # librarians accept a simple syntax like:
+  #
+  #    librarian library_file {list of object files} 
+  #
+  $(FT_LIBRARY): $(OBJECTS_LIST)
+	  -$(DELETE) $@
+	  $(FT_LIBRARIAN) $@ $(OBJECTS_LIST)
+
+endif
+
+# EOF
--- a/config/detect.mk
+++ b/config/detect.mk
@@ -1,127 +1,130 @@
-#****************************************************************************
-#*                                                                          *
-#*  FreeType host platform detection rules                                  *
-#*                                                                          *
-#*  Copyright 1996-1999 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#*                                                                          *
-#*  This sub-Makefile is in charge of detecting the current platform        *
-#*  It sets some variables accordingly. Namely :                            *
-#*                                                                          *
-#*   PLATFORM     The detected platform. This will default to "ansi" if     *
-#*                auto-detection fails.                                     *
-#*                                                                          *
-#*   BUILD        The configuration and system-specific directory. Usually  *
-#*                'freetype/config/$(PLATFORM)' but can be different when   *
-#*                a specific compiler has been requested on the             *
-#*                command line..                                            *
-#*                                                                          *
-#*   CONFIG_RULES The Makefile to use. This usually depends on the compiler *
-#*                defined in the 'CC' environment variable.                 *
-#*                                                                          *
-#*   DELETE       The shell command used to remove a given file             *
-#*   COPY         The shell command used to copy one file                   *
-#*                                                                          *
-#*  You need to set the following variable(s) before calling it:            *
-#*                                                                          *
-#*    TOP         The top-most directory in the FreeType library source     *
-#*                hierarchy. If not defined, it will default to '.'         *
-#*                                                                          *
-#****************************************************************************
-
-# If TOP is not defined, default it to '.'
 #
-ifndef TOP
-TOP := .
-endif
-
+# FreeType 2 host platform detection rules
 #
-# set auto-detection default to ANSI.
-# Note that we delay the valuation of BUILD and RULES
-#
-PLATFORM := ansi
-CONFIG    = $(TOP)$(SEP)config
-DELETE   := $(RM)
-COPY     := cp
-SEP      := /
 
-BUILD       = $(CONFIG)$(SEP)$(PLATFORM)
-CONFIG_FILE = $(BUILD)/Makefile
 
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
-###########################################################################
+
+# This sub-Makefile is in charge of detecting the current platform.  It sets
+# the following variables:
 #
-# Now, include each detection rules file found in a `config/<system>'
-# directory..
+#   BUILD        The configuration and system-specific directory.  Usually
+#                `freetype/config/$(PLATFORM)' but can be different if a
+#                specific compiler has been requested on the command line.
 #
+# The following variables must be defined in system specific `detect.mk'
+# files:
 #
+#   PLATFORM     The detected platform.  This will default to `ansi' if
+#                auto-detection fails.
+#   CONFIG_FILE  The Makefile to use.  This usually depends on the compiler
+#                defined in the `CC' environment variable.
+#   DELETE       The shell command used to remove a given file.
+#   COPY         The shell command used to copy one file.
+#   SEP          The platform-specific directory separator.
+#   CC           The compiler to use.
+#
+# You need to set the following variable(s) before calling it:
+#
+#   TOP          The top-most directory in the FreeType library source
+#                hierarchy.  If not defined, it will default to `.'.
 
-# we define the BACKSLASH variable to hold a single back-slash character
+# If TOP is not defined, default it to `.'
+#
+ifndef TOP
+TOP := .
+endif
+
+# Set auto-detection default to `ansi'.
+# Note that we delay the evaluation of $(CONFIG_), $(BUILD), and
+# $(CONFIG_RULES).
+#
+PLATFORM    := ansi
+DELETE      := $(RM)
+COPY        := cp
+SEP         := /
+
+CONFIG_      = $(TOP)$(SEP)config$(SEP)
+BUILD        = $(CONFIG_)$(PLATFORM)
+CONFIG_RULES = $(BUILD)$(SEP)$(CONFIG_FILE)
+
+# We define the BACKSLASH variable to hold a single back-slash character.
 # This is needed because a line like
 #
-# SEP := \
+#   SEP := \
 #
-# does not work with GNU Make (the back-slash is interpreted as a line
-# continuation). While a line like :
+# does not work with GNU Make (the backslash is interpreted as a line
+# continuation).  While a line like
 #
-# SEP := \\
+#   SEP := \\
 #
-# really define $(SEP) as "\" on Unix, and "\\" on Dos and Windows !!
+# really defines $(SEP) as `\' on Unix, and `\\' on Dos and Windows!
 #
 BACKSLASH := $(strip \ )
 
-include $(wildcard $(CONFIG)/*/detect.mk)
+# Now, include all detection rule files found in the `config/<system>'
+# directories.  Note that the calling order of the various `detect.mk' files
+# isn't predictable.
+#
+include $(wildcard $(CONFIG_)*/detect.mk)
 
+# In case no detection rule file was successful, use the default.
+#
+ifndef CONFIG_FILE
+  CONFIG_FILE := ansi.mk
+  setup: std_setup
+endif
 
 # The following targets are equivalent, with the exception that they use
-# slightly different syntaxes for the `echo' command. This is due to
+# slightly different syntaxes for the `echo' command.
 #
-# std_setup: is defined for most platforms
-# dos_setup: is defined for Dos-ish platforms like Dos, Windows & OS/2
+# std_setup: defined for most platforms
+# dos_setup: defined for Dos-ish platforms like Dos, Windows & OS/2
 #
+.PHONY: std_setup dos_setup
 
-.PHONY: std_setup  dos_setup
-
 std_setup:
 	@echo ""
-	@echo "FreeType build system - automatic system detection"
+	@echo "FreeType build system -- automatic system detection"
 	@echo ""
-	@echo "The following settings were detected :"
+	@echo "The following settings are used:"
 	@echo ""
-	@echo "  platform                 :  $(PLATFORM)"
-	@echo "  compiler                 :  $(CC)"
-	@echo "  configuration directory  :  $(BUILD)"
-	@echo "  configuration rules      :  $(CONFIG_RULES)"
+	@echo "  platform                    $(PLATFORM)"
+	@echo "  compiler                    $(CC)"
+	@echo "  configuration directory     $(BUILD)"
+	@echo "  configuration rules         $(CONFIG_RULES)"
 	@echo ""
 	@echo "If this does not correspond to your system or settings please remove the file"
 	@echo "\`$(CONFIG_MK)' from this directory then read the INSTALL file for help."
 	@echo ""
-	@echo "Otherwise, simple type \`make' again to build the library"
+	@echo "Otherwise, simply type \`make' again to build the library."
 	@echo ""
 	@$(COPY) $(CONFIG_RULES) $(CONFIG_MK)
 
 dos_setup:
 	@echo -	@echo FreeType build system - automatic system detection
+	@echo FreeType build system -- automatic system detection
 	@echo -	@echo The following settings were detected :
+	@echo The following settings are used:
 	@echo -	@echo ��platform�����������������:  $(PLATFORM)
-	@echo ��compiler�����������������:  $(CC)
-	@echo ��configuration directory��:  $(BUILD)
-	@echo ��configuration rules������:  $(CONFIG_RULES)
+	@echo ��platform���������������������$(PLATFORM)
+	@echo ��compiler���������������������$(CC)
+	@echo ��configuration directory������$(BUILD)
+	@echo ��configuration rules����������$(CONFIG_RULES)
 	@echo  	@echo If this does not correspond to your system or settings please remove the file
 	@echo '$(CONFIG_MK)' from this directory then read the INSTALL file for help.
 	@echo -	@echo Otherwise, simple type 'make' again to build the library
+	@echo Otherwise, simply type 'make' again to build the library.
 	@echo  	@$(COPY) $(subst /,\,$(CONFIG_RULES) $(CONFIG_MK)) > nul
 
+# EOF
--- a/config/dos/detect.mk
+++ b/config/dos/detect.mk
@@ -1,87 +1,91 @@
 #
-# This file is used to detect a DOS host platform.
+# FreeType 2 configuration file to detect a DOS host platform.
 #
-# This configuration file to be used depends on the value of the CC
-# environment variable.
-#
-#
 
-# We test for the COMSPEC environment variable, then run the 'ver'
-# command-line program to see if its output contains the word "Dos"
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
 #
-# If this is true, we're running a Dos-ish platform (or an emulation)
-#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
-ifeq ($(PLATFORM),ansi)
 
-ifdef COMSPEC
+# This configuration file to be used depends on the value of the CC
+# environment variable which is set below according to the compiler name
+# given as a parameter to make.
 
-is_dos := $(findstring Dos,$(shell ver))
 
-# We try to recognize a Dos session under OS/2. The "ver" command
-# returns 'Operating System/2 ...' there, so 'is_dos' should be empty
-# there.
+# We test for the COMSPEC environment variable, then run the `ver'
+# command-line program to see if its output contains the word `Dos'.
 #
-# To recognize a Dos session under OS/2, we check COMSPEC for the
-# substring "MDOS\COMMAND"
+# If this is true, we are running a Dos-ish platform (or an emulation).
 #
-ifeq ($(is_dos),)
-is_dos := $(findstring MDOS\COMMAND,$(COMSPEC))
-endif
+ifeq ($(PLATFORM),ansi)
 
-ifneq ($(is_dos),)
+  ifdef COMSPEC
 
-PLATFORM := dos
-DELETE   := del
-COPY     := copy
+    is_dos := $(findstring Dos,$(shell ver))
 
-#####################################################################
-#
-# Use gcc, i.e. DJGPP by default. Aren't we biased ;-)
-#
-#
-CONFIG_FILE := dos-gcc.mk
-SEP         := /
-ifndef CC
-CC          := gcc
-endif
+    # We try to recognize a Dos session under OS/2.  The `ver' command
+    # returns `Operating System/2 ...' there, so `is_dos' should be empty
+    # there.
+    #
+    # To recognize a Dos session under OS/2, we check COMSPEC for the
+    # substring `MDOS\COMMAND'
+    #
+    ifeq ($(is_dos),)
+      is_dos := $(findstring MDOS\COMMAND,$(COMSPEC))
+    endif
 
+    ifneq ($(is_dos),)
 
-ifneq ($(findstring turboc,$(MAKECMDGOALS)),)     # Turbo C
-CONFIG_FILE := dos-tcc.mk
-SEP         := $(BACKSLASH)
-CC          := tcc
-.PHONY: turboc
-endif
+      PLATFORM := dos
+      DELETE   := del
+      COPY     := copy
 
-ifneq ($(findstring watcom,$(MAKECMDGOALS)),)     # Watcom C/C++
-CONFIG_FILE := dos-wat.mk
-SEP         := $(BACKSLASH)
-CC          := wcc386
-.PHONY: watcom
-endif
+      # Use DJGPP (i.e. gcc) by default.
+      #
+      CONFIG_FILE := dos-gcc.mk
+      SEP         := /
+      ifndef CC
+        CC        := gcc
+      endif
 
-ifneq ($(findstring borlandc16,$(MAKECMDGOALS)),)   # Borland C/C++ 16 bits
-CONFIG_FILE := dos-bcc.mk
-SEP         := $(BACKSLASH)
-CC          := bcc
-.PHONY: borlandc16
-endif
+      ifneq ($(findstring turboc,$(MAKECMDGOALS)),)     # Turbo C
+        CONFIG_FILE := dos-tcc.mk
+        SEP         := $(BACKSLASH)
+        CC          := tcc
+        .PHONY: turboc
+      endif
 
-ifneq ($(findstring borlandc,$(MAKECMDGOALS)),)   # Borland C/C++ 32 bits
-CONFIG_FILE := dos-bcc.mk
-SEP         := $(BACKSLASH)
-CC          := bcc32
-.PHONY: borlandc
-endif
+      ifneq ($(findstring watcom,$(MAKECMDGOALS)),)     # Watcom C/C++
+        CONFIG_FILE := dos-wat.mk
+        SEP         := $(BACKSLASH)
+        CC          := wcc386
+        .PHONY: watcom
+      endif
 
-CONFIG_RULES := $(TOP)\config\dos\$(CONFIG_FILE)
+      ifneq ($(findstring borlandc16,$(MAKECMDGOALS)),) # Borland C/C++ 16 bits
+        CONFIG_FILE := dos-bcc.mk
+        SEP         := $(BACKSLASH)
+        CC          := bcc
+        .PHONY: borlandc16
+      endif
 
-# use the Dos version of the "setup dump"
-#
-setup:  dos_setup
+      ifneq ($(findstring borlandc,$(MAKECMDGOALS)),)   # Borland C/C++ 32 bits
+        CONFIG_FILE := dos-bcc.mk
+        SEP         := $(BACKSLASH)
+        CC          := bcc32
+        .PHONY: borlandc
+      endif
 
-endif # test Dos
-endif # test COMSPEC
-endif # test PLATFORM
+      setup: dos_setup
 
+    endif # test Dos
+  endif   # test COMSPEC
+endif     # test PLATFORM
+
+# EOF
--- a/config/dos/dos-gcc.mk
+++ b/config/dos/dos-gcc.mk
@@ -1,23 +1,20 @@
-#*******************************************************************
-#*
-#*  FreeType 2 Configuration rules for Dos + GCC
-#*
-#*  Copyright 1996-2000 by
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.
-#*
-#*  This file is part of the FreeType project, and may only be used
-#*  modified and distributed under the terms of the FreeType project
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute
-#*  this file you indicate that you have read the license and
-#*  understand and accept it fully.
-#*
-#*  Please read the file "freetype/docs/config.txt" to understand
-#*  what this file does..
-#*
-#*******************************************************************
+#
+# FreeType 2 configuration rules for the DJGPP compiler
+#
 
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
+
+
 ifndef TOP
-TOP := .
+  TOP := .
 endif
 
 DELETE   := rm -f
@@ -26,106 +23,110 @@
 BUILD    := $(TOP)/config/dos
 PLATFORM := dos
 
-# the directory where all object files are placed
+# The directory where all object files are placed.
 #
-# Note that this is not $(TOP)/obj !!
-# This lets you build the library in your own directory
-# with something like :
+# Note that this is not $(TOP)/obj!
+# This lets you build the library in your own directory with something like
 #
-#  set TOP=....../path/to/freetype2/top/dir...
-#  mkdir obj
-#  make -f %TOP%/Makefile setup  [options]
-#  make -f %TOP%/Makefile
+#   set TOP=.../path/to/freetype2/top/dir...
+#   mkdir obj
+#   make -f %TOP%/Makefile setup [options]
+#   make -f %TOP%/Makefile
 #
-#
 OBJ_DIR := obj
 
 
-# the directory where all library files are placed
+# The directory where all library files are placed
 #
-#  by default, this is the same as OBJ_DIR, however, this can be
-#  changed to suit particular needs..
+# By default, this is the same as $(OBJ_DIR), however, this can be changed
+# to suit particular needs.
 #
 LIB_DIR := $(OBJ_DIR)
 
 
-# the object file extension, this can be .o, .tco, .obj, etc..
-# depending on the platform
+# The object file extension.  This can be .o, .tco, .obj, etc., depending on
+# the platform.
 #
 O := o
 
-# the library file extension, this can be .a, .lib, etc..
-# depending on the platform
+# The library file extension.  This can be .a, .lib, etc., depending on the
+# platform.
 #
 A := a
 
 
-# The name of the final library file.
-# Note that the DOS-specific Makefile uses a shorter (8.3) name
+# The name of the final library file.  Note that the DOS-specific Makefile
+# uses a shorter (8.3) name.
 #
 LIBRARY := libfreetype
 
 
-# path inclusion flag.
+# Path inclusion flag.  Some compilers use a different flag than `-I' to
+# specify an additional include path.  Examples are `/i=' or `-J'.
 #
-#  Some compilers use a different flag than '-I' to specify an
-#  additional include path. Examples are "/i=" or "-J", etc...
-#
 I := -I
 
 
-# The link flag used to specify a given library file on link.
-# Note that this is only used to compile the demo programs, not
-# the library itself.
+# C flag used to define a macro before the compilation of a given source
+# object.  Usually is `-D' like in `-DDEBUG'.
 #
-L := -l
+D := -D
 
 
-# C flag used to define a macro before the compilation of a given
-# source object. Usually is '-D' like in "-DDEBUG"
+# The link flag used to specify a given library file on link.  Note that
+# this is only used to compile the demo programs, not the library itself.
 #
-D := -D
+L := -l
 
 
-# Target flag - beware, there is a space after the 'o' !!
+# Target flag.
 #
-#
-T := -o 
+T := -o # Don't remove this comment line!  We need the space after `-o'.
 
+
 # C flags
 #
-#   These should concern :
+#   These should concern: debug output, optimization & warnings.
 #
-#     - debug output
-#     - optimization
-#     - warnings
-#     - ansi compliance..
+#   Use the ANSIFLAGS variable to define the compiler flags used to enfore
+#   ANSI compliance.
 #
 ifndef CFLAGS
-CFLAGS := -c -g -O6 -Wall
+  CFLAGS := -c -g -O6 -Wall
 endif
 
-# ANSIFLAGS : put there the flags used to make your compiler ANSI-compliant
-#              nothing (if it already is by default like LCC).
+# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
 #
 ANSIFLAGS := -ansi -pedantic
 
+
 ifdef BUILD_FREETYPE
 
-include $(TOP)/config/freetype.mk
+  # Now include the main sub-makefile.  It contains all the rules used to
+  # build the library with the previous variables defined.
+  #
+  include $(TOP)/config/freetype.mk
 
-clean_freetype: clean_freetype_dos
-distclean_freetype: distclean_freetype_dos
+  # The cleanup targets.
+  #
+  clean_freetype: clean_freetype_dos
+  distclean_freetype: distclean_freetype_dos
 
+  # Librarian to use to build the static library
+  #
+  FT_LIBRARIAN := $(AR) -r
 
-# This final rule is used to link all object files into a single
-# library. It is part of the system-specific sub-Makefile because not
-# all librarians accept a simple syntax like :
-#
-#    librarian library_file {list of object files} 
-#
-$(FT_LIBRARY): $(OBJECTS_LIST)
-	-$(DELETE) $@
-	$(AR) -r $@ $(OBJECTS_LIST)
 
+  # This final rule is used to link all object files into a single library. 
+  # It is part of the system-specific sub-Makefile because not all
+  # librarians accept a simple syntax like:
+  #
+  #    librarian library_file {list of object files}
+  #
+  $(FT_LIBRARY): $(OBJECTS_LIST)
+	  -$(DELETE) $@
+	  $(FT_LIBRARIAN) $@ $(OBJECTS_LIST)
+
 endif
+
+# EOF
--- a/config/freetype.mk
+++ b/config/freetype.mk
@@ -1,57 +1,51 @@
-#****************************************************************************
-#*                                                                          *
-#*  FreeType library sub-Makefile                                           *
-#*                                                                          *
-#*  Copyright 1996-1999 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#*                                                                          *
-#*                                                                          *
-#*  DO NOT INVOKE THIS MAKEFILE DIRECTLY. IT IS MEANT TO BE INCLUDED BY     *
-#*  OTHER MAKEFILES.                                                        *
-#*                                                                          *
-#****************************************************************************
+#
+# FreeType 2 library sub-Makefile
+#
 
 
-# include the 'modules' rules file
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
 #
-include $(TOP)/config/modules.mk
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
-# The targets `objects', `library' are defined at the end of
-# this Makefile when all rules have been included..
+
+# DO NOT INVOKE THIS MAKEFILE DIRECTLY!  IT IS MEANT TO BE INCLUDED BY
+# OTHER MAKEFILES.
+
+
+# The targets `objects' and `library' are defined at the end of this
+# Makefile when all rules have been included.
 #
 .PHONY: build_freetype objects library
 
-# default target - build objects and library
+# default target -- build objects and library
 #
 build_freetype: objects library
 
-# `multi' target - build multiple objects and library
+# `multi' target -- build multiple objects and library
 #
 multi: objects library
 
 
-# The FreeType sources directory.
+# The FreeType source directory.
 #
 SRC := $(TOP)$(SEP)src
 
 
-# The directory where the base layer components are placed.
-# By default, this is 'freetype/src/base'
+# The directory where the base layer components are placed.  By default,
+# this is `freetype/src/base'.
 #
 BASE_DIR := $(SRC)$(SEP)base
 
 
-# A Few short-cuts in order to avoid typing $(SEP) all the time for
-# the directory separator
+# A few short-cuts in order to avoid typing $(SEP) all the time for the
+# directory separator.
 #
-# For example:  SRC_ equals to './src/' where '.' is $(TOP)
+# For example:  SRC_ equals to `./src/' where `.' is $(TOP).
 #
 #
 SRC_    := $(SRC)$(SEP)
@@ -61,6 +55,7 @@
 PUBLIC_ := $(TOP)$(SEP)include$(SEP)
 CONFIG_ := $(TOP)$(SEP)config$(SEP)
 
+
 # The name of the final library file.
 #
 FT_LIBRARY := $(LIB_)$(LIBRARY).$A
@@ -69,10 +64,10 @@
 # include paths
 #
 # IMPORTANT NOTE: The architecture-dependent directory must ALWAYS be placed
-#                 in front of the include list.  Porters are then able to put
-#                 their own version of some of the FreeType components in
-#                 the 'freetype/config/<system>' directory, as these files
-#                 will override the default sources.
+#                 in front of the include list.  Porters are then able to
+#                 put their own version of some of the FreeType components
+#                 in the `freetype/config/<system>' directory, as these
+#                 files will override the default sources.
 #
 INCLUDES := $(BUILD) $(TOP)$(SEP)config $(TOP)$(SEP)include $(INCLUDES)
 
@@ -80,34 +75,37 @@
 
 
 # C flags used for the compilation of an object file.  This must include at
-# least the paths for the 'base' and 'config/<system>' directories,
+# least the paths for the `base' and `config/<system>' directories,
 # debug/optimization/warning flags + ansi compliance if needed.
 #
 FT_CFLAGS  = $(CFLAGS) $(INCLUDE_FLAGS)
 FT_CC      = $(CC) $(FT_CFLAGS)
-FT_COMPILE = $(CC) $(ANSI_FLAGS) $(FT_CFLAGS)
+FT_COMPILE = $(CC) $(ANSIFLAGS) $(FT_CFLAGS)
 
 
+# include the `modules' rules file
 #
-# Free the lists of driver objects
+include $(CONFIG_)modules.mk
+
+
+# Free the lists of driver objects.
 #
 COMPONENTS_LIST :=
 DRIVERS_LIST    :=
 OBJECTS_LIST    :=
 
-# System-specific component - this must be defined in this Makefile
-# for easy updates. The default Ansi ftsystem.c is located in
-# 'freetype/config/ftsystem.c'. However, some system-specific
-# configuration might define FTSYS_SRC to fetch it in other places,
-# like 'freetype/config/<system>/ftsystem.c'
+# System-specific component -- this must be defined in this Makefile for
+# easy updates.  The default ANSI ftsystem.c is located in
+# `freetype/config/ftsystem.c'.  However, some system-specific configuration
+# might define $(FTSYS_SRC) to fetch it in other places, like
+# `freetype/config/<system>/ftsystem.c'.
 #
-# BASE_H is defined in src/base/rules.mk and contains the list of all
+# $(BASE_H) is defined in `src/base/rules.mk' and contains the list of all
 # base layer header files.
 #
 ifndef FTSYS_SRC
-FTSYS_SRC = $(BASE_)ftsystem.c
+  FTSYS_SRC = $(BASE_)ftsystem.c
 endif
-
 FTSYS_OBJ = $(OBJ_)ftsystem.$O
 
 OBJECTS_LIST += $(FTSYS_OBJ)
@@ -118,10 +116,9 @@
 
 # ftdebug component
 #
-# FTDebug contains code used to print traces and errors. It is
-# normally empty for a release build (see ftoption.h)
+# FTDebug contains code used to print traces and errors.  It is normally
+# empty for a release build (see ftoption.h).
 #
-
 FTDEBUG_SRC = $(BASE_)ftdebug.c
 FTDEBUG_OBJ = $(OBJ_)ftdebug.$O
 
@@ -131,21 +128,20 @@
 	$(FT_COMPILE) $T$@ $<
 
 
-
-# Define PUBLIC_H as the list of all public header files located in
-# `$(TOP)/include'
+# Define $(PUBLIC_H) as the list of all public header files located in
+# `$(TOP)/include'.
 #
 PUBLIC_H := $(wildcard $(PUBLIC_)*.h)
 
 
-# Include all rule files from FreeType components
+# Include all rule files from FreeType components.
 #
-#
 include $(wildcard $(SRC)/*/rules.mk)
 
-# FTInit file:
+
+# FTInit file
 #
-#   The C source 'ftinit.c' contains the FreeType initialisation routines.
+#   The C source `ftinit.c' contains the FreeType initialization routines.
 #   It is able to automatically register one or more drivers when the API
 #   function FT_Init_FreeType() is called.
 #
@@ -152,7 +148,7 @@
 #   The set of initial drivers is determined by the driver Makefiles
 #   includes above.  Each driver Makefile updates the FTINIT_xxxx lists
 #   which contain additional include paths and macros used to compile the
-#   single 'ftinit.c' source.
+#   single `ftinit.c' source.
 #
 FTINIT_SRC := $(BASE_)ftinit.c
 FTINIT_OBJ := $(OBJ_)ftinit.$O
@@ -166,26 +162,25 @@
 # All FreeType library objects
 #
 #   By default, we include the base layer extensions.  These could be
-#   ommitted on builds which do not want them.
+#   omitted on builds which do not want them.
 #
 OBJ_M = $(BASE_OBJ_M) $(BASE_EXT_OBJ) $(DRV_OBJS_M)
-
 OBJ_S = $(BASE_OBJ_S) $(BASE_EXT_OBJ) $(DRV_OBJS_S)
 
-# the target 'multi' on the Make command line indicates that we want
-# to compile each source file independently..
+
+# The target `multi' on the Make command line indicates that we want to
+# compile each source file independently.
 #
-# Otherwise, each module/driver is compiled in a single object file
-# through source file inclusion (see 'src/base/ftbase.c' or
-# 'src/truetype/truetype.c' for examples)
+# Otherwise, each module/driver is compiled in a single object file through
+# source file inclusion (see `src/base/ftbase.c' or
+# `src/truetype/truetype.c' for examples).
 #
-
 BASE_OBJECTS := $(OBJECTS_LIST)
 
 ifneq ($(findstring multi,$(MAKECMDGOALS)),)
-OBJECTS_LIST += $(OBJ_M)
+  OBJECTS_LIST += $(OBJ_M)
 else
-OBJECTS_LIST += $(OBJ_S)
+  OBJECTS_LIST += $(OBJ_S)
 endif
 
 objects: $(OBJECTS_LIST)
@@ -196,36 +191,36 @@
 	$(FT_COMPILE) $T$@ $<
 
 
-# Standard cleaning and distclean rules. These are not accepted
-# on all systems though..
+# Standard cleaning and distclean rules.  These are not accepted
+# on all systems though.
 #
 clean_freetype_std:
-	-$(DELETE) $(BASE_OBJECTS) $(OBJS_M) $(OBJS_S)
+	-$(DELETE) $(BASE_OBJECTS) $(OBJ_M) $(OBJ_S)
 
 distclean_freetype_std: clean_freetype_std
 	-$(DELETE) $(FT_LIBRARY)
 	-$(DELETE) *.orig *~ core *.core
 
-# The Dos command shell does not support very long list of arguments
-# so we're stuck with wildcards
+# The Dos command shell does not support very long list of arguments, so
+# we are stuck with wildcards.
 #
-
 clean_freetype_dos:
-	-del $(subst $(SEP),$(HOSTSEP),$(OBJ_))*.$O 2> nul
+	-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(OBJ_))*.$O 2> nul
 
 distclean_freetype_dos: clean_freetype_dos
-	-del $(subst $(SEP),$(HOSTSEP),$(FT_LIBRARY)) 2> nul
+	-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(FT_LIBRARY)) 2> nul
 
-# remove configuration file (used for distclean)
+# Remove configuration file (used for distclean).
 #
 remove_config_mk:
 	-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(CONFIG_MK))
 
-# the "config.mk" must define 'clean_freetype' and 'distclean_freetype'
-# implementations may use to relay these to either the 'std' or 'dos'
-# versions, or simply provide their own implementation..
+
+# The `config.mk' file must define `clean_freetype' and
+# `distclean_freetype'.  Implementations may use to relay these to either
+# the `std' or `dos' versions, or simply provide their own implementation.
 #
 clean: clean_freetype
 distclean: distclean_freetype remove_config_mk
 
-# END
+# EOF
--- a/config/modules.mk
+++ b/config/modules.mk
@@ -1,69 +1,73 @@
-#****************************************************************************
-#*                                                                          *
-#*  FreeType modules sub-Makefile                                           *
-#*                                                                          *
-#*  Copyright 1996-1999 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#*                                                                          *
-#*                                                                          *
-#*  DO NOT INVOKE THIS MAKEFILE DIRECTLY. IT IS MEANT TO BE INCLUDED BY     *
-#*  OTHER MAKEFILES.                                                        *
-#*                                                                          *
-#*  This file is in charge of handling the generation of the modules list   *
-#*  file, normally located in `config/ftmodule.h'                           *
-#*                                                                          *
-#****************************************************************************
+#
+# FreeType 2 modules sub-Makefile
+#
 
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
+
+
+# DO NOT INVOKE THIS MAKEFILE DIRECTLY!  IT IS MEANT TO BE INCLUDED BY
+# OTHER MAKEFILES.
+
+
+# This file is in charge of handling the generation of the modules list
+# file, normally located in `config/ftmodule.h'.
+
 .PHONY: make_module_list clean_module_list remake_module_list
 
-# MODULE_LIST, as it name suggests, indicate where the modules list
-# reside. For now, it is in $(BUILD)/ftmodule.h
+# MODULE_LIST, as its name suggests, indicates where the modules list
+# resides.  For now, it is in `config/ftmodule.h'.
 #
 ifndef FT_MODULE_LIST
-FT_MODULE_LIST := $(TOP)$(SEP)config$(SEP)ftmodule.h
+  FT_MODULE_LIST := $(CONFIG_)ftmodule.h
 endif
 
-# To build the modules list, we invoke the `make_module_list' target
+# To build the modules list, we invoke the `make_module_list' target.
 #
 #$(FT_MODULE_LIST): make_module_list
 
-# Before the modules list file can be generated, we must remove the
-# file in order to `clean' the list
+# Before the modules list file can be generated, we must remove the file in
+# order to `clean' the list.
 #
 clean_module_list:
 	@-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(FT_MODULE_LIST))
-	@-echo Regenerating the font drivers list in $(FT_MODULE_LIST)
+	@-echo Regenerating the font drivers list in $(FT_MODULE_LIST)...
 
 make_module_list: clean_module_list
-	@echo -- done --
+	@echo done.
 
+
+# Trailing spaces are protected with a `#' sign to avoid accidental
+# removing.
+#
 ifneq ($(findstring $(PLATFORM),dos win32 win16 os2),)
-OPEN_MODULE  := @echo 
-CLOSE_MODULE :=  >> $(FT_MODULE_LIST)
+  OPEN_MODULE  := @echo #
+  CLOSE_MODULE :=  >> $(FT_MODULE_LIST)
 else
-OPEN_MODULE  := @echo "
-CLOSE_MODULE := " >> $(FT_MODULE_LIST)
+  OPEN_MODULE  := @echo "
+  CLOSE_MODULE := " >> $(FT_MODULE_LIST)
 endif
 
-# OPEN_DRIVER & CLOSE_DRIVER are used to specify a given font driver
-# in the `module.mk' rules file
+# $(OPEN_DRIVER) & $(CLOSE_DRIVER) are used to specify a given font driver
+# in the `module.mk' rules file.
 #
 OPEN_DRIVER  := $(OPEN_MODULE)FT_DRIVER(
 CLOSE_DRIVER := )$(CLOSE_MODULE)
 
-ECHO_DRIVER      := @echo "* driver: 
+ECHO_DRIVER      := @echo "* driver: #
 ECHO_DRIVER_DESC := (
 ECHO_DRIVER_DONE := )"
 
-# each `module.mk' in the `src' sub-dirs is used to add one rule to
-# the target `make_module_list'.
+# Each `module.mk' in the `src' sub-dirs is used to add one rule to the
+# target `make_module_list'.
 #
 include $(wildcard $(TOP)/src/*/module.mk)
 
+# EOF
--- a/config/os2/detect.mk
+++ b/config/os2/detect.mk
@@ -1,54 +1,64 @@
 #
-# This file is used to detect an OS/2 host, and set the build variables
-# accordingly..
+# FreeType 2 configuration file to detect an OS/2 host platform.
 #
-# which Makefile to use based on the value of the CC environment variable.
+
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
 #
-# OS/2
-#
-#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
+
+# This configuration file to be used depends on the value of the CC
+# environment variable which is set below according to the compiler name
+# given as a parameter to make.
+
+
 ifeq ($(PLATFORM),ansi)
-ifdef OS2_SHELL
+  ifdef OS2_SHELL
 
-PLATFORM := os2
-COPY     := copy
-DELETE   := del
+    PLATFORM := os2
+    COPY     := copy
+    DELETE   := del
 
-CONFIG_FILE := os2-gcc.mk   # gcc-emx by default
-SEP         := /
+    CONFIG_FILE := os2-gcc.mk   # gcc-emx by default
+    SEP         := /
 
-ifneq ($(findstring visualage,$(MAKECMDGOALS)),)     # Visual Age C++
-CONFIG_FILE := os2-icc.mk
-SEP         := $(BACKSLASH)
-CC          := icc
-.PHONY: visualage
-endif
+    ifneq ($(findstring visualage,$(MAKECMDGOALS)),)     # Visual Age C++
+      CONFIG_FILE := os2-icc.mk
+      SEP         := $(BACKSLASH)
+      CC          := icc
+      .PHONY: visualage
+    endif
 
-ifneq ($(findstring watcom,$(MAKECMDGOALS)),)        # Watcom C/C++
-CONFIG_FILE := os2-wat.mk
-SEP         := $(BACKSLASH)
-CC          := wcc386
-.PHONY: watcom
-endif
+    ifneq ($(findstring watcom,$(MAKECMDGOALS)),)        # Watcom C/C++
+      CONFIG_FILE := os2-wat.mk
+      SEP         := $(BACKSLASH)
+      CC          := wcc386
+      .PHONY: watcom
+    endif
 
-ifneq ($(findstring borlandc,$(MAKECMDGOALS)),)      # Borland C++ 32 bits
-CONFIG_FILE := os2-bcc.mk
-SEP         := $(BACKSLASH)
-CC          := bcc32
-.PHONY: borlandc
-endif
+    ifneq ($(findstring borlandc,$(MAKECMDGOALS)),)      # Borland C++ 32 bits
+      CONFIG_FILE := os2-bcc.mk
+      SEP         := $(BACKSLASH)
+      CC          := bcc32
+      .PHONY: borlandc
+    endif
 
-ifneq ($(findstring devel,$(MAKECMDGOALS)),)
-CONFIG_FILE := os2-dev.mk
-CC          := gcc
-SEP         := /
-devel: setup
-endif
+    ifneq ($(findstring devel,$(MAKECMDGOALS)),)
+      CONFIG_FILE := os2-dev.mk
+      CC          := gcc
+      SEP         := /
+      devel: setup
+    endif
 
-CONFIG_RULES := $(TOP)\config\os2\$(CONFIG_FILE)
+    setup: dos_setup
 
-setup: dos_setup
+  endif # test OS2_SHELL
+endif   # test PLATFORM
 
-endif #test OS2_SHELL
-endif #test PLATFORM
+#EOF
--- a/config/unix/detect.mk
+++ b/config/unix/detect.mk
@@ -1,58 +1,62 @@
 #
-# This file is used to detect which Makefile to use based on the
-# value of the CC environment variable.
+# FreeType 2 configuration file to detect a UNIX host platform.
 #
-# Unix
-#
-#
-# This will _much_ probably change in the future if we're going to use
-# Automake/Autoconf..
-#
 
-ifeq ($(PLATFORM),ansi)
-has_inittab := $(strip $(wildcard /etc/inittab))
-ifneq ($(has_inittab),)
 
-PLATFORM := unix
-COPY     := cp
-DELETE   := rm -f
-
-# if `devel' is the requested target, use the development Makefile
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
 #
-ifneq ($(findstring devel,$(MAKECMDGOALS)),)
-CONFIG_RULES := $(BUILD)$(SEP)unix-dev.mk
-devel: setup;
-endif
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
-# test wether we're using gcc ? If it is, we selected the
-# 'unix-gcc.mk' configuration file. Otherwise, the standard
-# 'unix.mk' which simply calls "cc -c" with no extra arguments
-#
-# Feel free to add support for other platform specific compilers
-# in this directory (e.g. solaris.mk + changes here to detect the
-# platform)
-#
-ifeq ($(CC),gcc)
-is_gcc := 1
-else
-ifneq ($(findstring gcc,$(shell $(CC) --version)),)
-is_gcc := 1
-endif
-endif
 
-ifdef is_gcc
-CONFIG_RULES := $(BUILD)$(SEP)unix-gcc.mk
-else
-CONFIG_RULES := $(BUILD)$(SEP)unix.mk
-endif
+# This will probably change a lost in the future if we are going to use
+# Automake/Autoconf...
 
-setup: std_setup
 
-endif # test Unix
-endif # test PLATFORM
+ifeq ($(PLATFORM),ansi)
+  has_inittab := $(strip $(wildcard /etc/inittab))
 
+  ifneq ($(has_inittab),)
 
+    PLATFORM := unix
+    COPY     := cp
+    DELETE   := rm -f
 
+    # Test whether we're using gcc.  If so, we select the `unix-gcc.mk'
+    # configuration file.  Otherwise, the standard `unix.mk' is used which
+    # simply calls `cc -c' with no extra arguments.
+    #
+    # Feel free to add support for other platform specific compilers in this
+    # directory (e.g. solaris.mk + changes here to detect the platform).
+    #
+    ifeq ($(CC),gcc)
+      is_gcc := 1
+    else
+      ifneq ($(findstring gcc,$(shell $(CC) -v 2>&1)),)
+        is_gcc := 1
+      endif
+    endif
 
+    ifdef is_gcc
+      CONFIG_FILE := unix-gcc.mk
+    else
+      CONFIG_FILE := unix.mk
+    endif
 
+    # If `devel' is the requested target, use the development Makefile.
+    #
+    ifneq ($(findstring devel,$(MAKECMDGOALS)),)
+      CONFIG_FILE := unix-dev.mk
+      devel: setup
+    endif
 
+    setup: std_setup
+
+  endif # test Unix
+endif   # test PLATFORM
+
+# EOF
--- a/config/unix/unix-gcc.mk
+++ b/config/unix/unix-gcc.mk
@@ -1,23 +1,20 @@
-#*******************************************************************
-#*
-#*  FreeType 2 Configuration rules for a standard Unix compiler
-#*
-#*  Copyright 1996-2000 by
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.
-#*
-#*  This file is part of the FreeType project, and may only be used
-#*  modified and distributed under the terms of the FreeType project
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute
-#*  this file you indicate that you have read the license and
-#*  understand and accept it fully.
-#*
-#*  Please read the file "freetype/docs/config.txt" to understand
-#*  what this file does..
-#*
-#*******************************************************************
+#
+# FreeType 2 configuration rules for the gcc compiler under UNIX
+#
 
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
+
+
 ifndef TOP
-TOP := .
+  TOP := .
 endif
 
 DELETE   := rm -f
@@ -26,105 +23,110 @@
 BUILD    := $(TOP)/config/unix
 PLATFORM := unix
 
-# the directory where all object files are placed
+# The directory where all object files are placed.
 #
-# Note that this is not $(TOP)/obj !!
-# This lets you build the library in your own directory
-# with something like :
+# Note that this is not $(TOP)/obj!
+# This lets you build the library in your own directory with something like
 #
-#  set TOP=....../path/to/freetype2/top/dir...
-#  mkdir obj
-#  make -f %TOP%/Makefile setup  [options]
-#  make -f %TOP%/Makefile
+#   set TOP=.../path/to/freetype2/top/dir...
+#   mkdir obj
+#   make -f $TOP/Makefile setup [options]
+#   make -f $TOP/Makefile
 #
-#
 OBJ_DIR := obj
 
 
-# the directory where all library files are placed
+# The directory where all library files are placed
 #
-#  by default, this is the same as OBJ_DIR, however, this can be
-#  changed to suit particular needs..
+# By default, this is the same as $(OBJ_DIR), however, this can be changed
+# to suit particular needs.
 #
 LIB_DIR := $(OBJ_DIR)
 
 
-# the object file extension, this can be .o, .tco, .obj, etc..
-# depending on the platform
+# The object file extension.  This can be .o, .tco, .obj, etc., depending on
+# the platform.
 #
 O := o
 
-# the library file extension, this can be .a, .lib, etc..
-# depending on the platform
+# The library file extension.  This can be .a, .lib, etc., depending on the
+# platform.
 #
 A := a
 
 
-# The name of the final library file.
-# Note that the DOS-specific Makefile uses a shorter (8.3) name
+# The name of the final library file.  Note that the DOS-specific Makefile
+# uses a shorter (8.3) name.
 #
 LIBRARY := libfreetype
 
 
-# path inclusion flag.
+# Path inclusion flag.  Some compilers use a different flag than `-I' to
+# specify an additional include path.  Examples are `/i=' or `-J'.
 #
-#  Some compilers use a different flag than '-I' to specify an
-#  additional include path. Examples are "/i=" or "-J", etc...
-#
 I := -I
 
 
-# The link flag used to specify a given library file on link.
-# Note that this is only used to compile the demo programs, not
-# the library itself.
+# C flag used to define a macro before the compilation of a given source
+# object.  Usually is `-D' like in `-DDEBUG'.
 #
-L := -l
+D := -D
 
 
-# C flag used to define a macro before the compilation of a given
-# source object. Usually is '-D' like in "-DDEBUG"
+# The link flag used to specify a given library file on link.  Note that
+# this is only used to compile the demo programs, not the library itself.
 #
-D := -D
+L := -l
 
 
-# Target flag - beware, there is a space after the 'o' !!
+# Target flag.
 #
-#
-T := -o 
+T := -o # Don't remove this comment line!  We need the space after `-o'.
 
+
 # C flags
 #
-#   These should concern :
+#   These should concern: debug output, optimization & warnings.
 #
-#     - debug output
-#     - optimization
-#     - warnings
-#     - ansi compliance..
+#   Use the ANSIFLAGS variable to define the compiler flags used to enfore
+#   ANSI compliance.
 #
 ifndef CFLAGS
-CFLAGS := -c -g -O6 -Wall
+  CFLAGS := -c -g -O6 -Wall
 endif
 
-# ANSIFLAGS : put there the flags used to make your compiler ANSI-compliant
-#             nothing (if it already is by default like LCC).
+# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
 #
 ANSIFLAGS := -ansi -pedantic
 
+
 ifdef BUILD_FREETYPE
 
-include $(TOP)/config/freetype.mk
+  # Now include the main sub-makefile.  It contains all the rules used to
+  # build the library with the previous variables defined.
+  #
+  include $(TOP)/config/freetype.mk
 
-clean_freetype: clean_freetype_std
-distclean_freetype: distclean_freetype_std
+  # The cleanup targets.
+  #
+  clean_freetype: clean_freetype_std
+  distclean_freetype: distclean_freetype_std
 
-# This final rule is used to link all object files into a single
-# library. It is part of the system-specific sub-Makefile because not
-# all librarians accept a simple syntax like :
-#
-#    librarian library_file {list of object files} 
-#
-$(FT_LIBRARY): $(OBJECTS_LIST)
-	-$(DELETE) $@
-	$(AR) -r $@ $(OBJECTS_LIST)
+  # Librarian to use to build the static library
+  #
+  FT_LIBRARIAN := $(AR) -r
 
+
+  # This final rule is used to link all object files into a single library. 
+  # It is part of the system-specific sub-Makefile because not all
+  # librarians accept a simple syntax like:
+  #
+  #    librarian library_file {list of object files}
+  #
+  $(FT_LIBRARY): $(OBJECTS_LIST)
+	  -$(DELETE) $@
+	  $(FT_LIBRARIAN) $@ $(OBJECTS_LIST)
+
 endif
+
+# EOF
--- a/config/win32/detect.mk
+++ b/config/win32/detect.mk
@@ -1,93 +1,93 @@
 #
-# This file is used to detect a Win32 host platform.
+# FreeType 2 configuration file to detect a Win32 host platform.
 #
-# This configuration file to be used depends on the value of the CC
-# environment variable.
-#
-#
 
 
-ifeq ($(PLATFORM),ansi)
-
-###################################################################
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
 #
-# Detecting Windows NT or Windows 9x
-#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
-# Detecting Windows NT is easy, as the OS variable must be defined
-# and contains "Windows_NT". Untested with Windows 2K, but I guess
-# it should work ...
-#
-ifeq ($(OS),Windows_NT)
-is_windows := 1
 
-# We test for the COMSPEC environment variable, then run the 'ver'
-# command-line program to see if its output contains the word "Windows"
-#
-# If this is true, we're running a win32 platform (or an emulation)
-#
-else
-ifdef COMSPEC
-is_windows := $(findstring Windows,$(strip $(shell ver)))
-endif
-endif  #test NT
+# This configuration file to be used depends on the value of the CC
+# environment variable which is set below according to the compiler name
+# given as a parameter to make.
 
-####################################################################
-#
-# Rules for Win32
-#
 
-ifdef is_windows
+ifeq ($(PLATFORM),ansi)
 
-PLATFORM := win32
-DELETE   := del
-COPY     := copy
+  # Detecting Windows NT is easy, as the OS variable must be defined and
+  # contains `Windows_NT'.  Untested with Windows 2K, but I guess it should
+  # work...
+  #
+  ifeq ($(OS),Windows_NT)
+    is_windows := 1
 
-CONFIG_FILE := w32-gcc.mk  # gcc Makefile by default - aren't we biased ;-)
-SEP         := /
-ifeq ($(CC),cc)
-CC          := gcc
-endif
+    # We test for the COMSPEC environment variable, then run the `ver'
+    # command-line program to see if its output contains the word `Windows'.
+    #
+    # If this is true, we're running a win32 platform (or an emulation).
+    #
+  else
+    ifdef COMSPEC
+      is_windows := $(findstring Windows,$(strip $(shell ver)))
+    endif
+  endif  #test NT
 
-ifneq ($(findstring visualc,$(MAKECMDGOALS)),)     # Visual C/C++
-CONFIG_FILE := w32-vcc.mk
-SEP         := $(BACKSLASH)
-CC          := cl
-visualc: setup
-endif
+  ifdef is_windows
 
-ifneq ($(findstring watcom,$(MAKECMDGOALS)),)      # Watcom C/C++
-CONFIG_FILE := w32-wat.mk
-SEP         := $(BACKSLASH)
-CC          := wcc386
-watcom: setup
-endif
+    PLATFORM := win32
+    DELETE   := del
+    COPY     := copy
 
-ifneq ($(findstring visualage,$(MAKECMDGOALS)),)   # Visual Age C++
-CONFIG_FILE := w32-icc.mk
-SEP         := $(BACKSLASH)
-CC          := icc
-visualage: setup
-endif
+    CONFIG_FILE := w32-gcc.mk  # gcc Makefile by default
+    SEP         := /
+    ifeq ($(CC),cc)
+      CC        := gcc
+    endif
 
-ifneq ($(findstring lcc,$(MAKECMDGOALS)),)         # LCC-Win32
-CONFIG_FILE := w32-lcc.mk
-SEP         := $(BACKSLASH)
-CC          := lcc
-lcc: setup
-endif
+    ifneq ($(findstring visualc,$(MAKECMDGOALS)),)     # Visual C/C++
+      CONFIG_FILE := w32-vcc.mk
+      SEP         := $(BACKSLASH)
+      CC          := cl
+      visualc: setup
+    endif
 
-ifneq ($(findstring devel,$(MAKECMDGOALS)),)
-CONFIG_FILE := w32-dev.mk
-CC          := gcc
-SEP         := /
-devel: setup
-endif
+    ifneq ($(findstring watcom,$(MAKECMDGOALS)),)      # Watcom C/C++
+      CONFIG_FILE := w32-wat.mk
+      SEP         := $(BACKSLASH)
+      CC          := wcc386
+      watcom: setup
+    endif
 
-CONFIG_RULES := $(TOP)\config\win32\$(CONFIG_FILE)
+    ifneq ($(findstring visualage,$(MAKECMDGOALS)),)   # Visual Age C++
+      CONFIG_FILE := w32-icc.mk
+      SEP         := $(BACKSLASH)
+      CC          := icc
+      visualage: setup
+    endif
 
-setup: dos_setup
+    ifneq ($(findstring lcc,$(MAKECMDGOALS)),)         # LCC-Win32
+      CONFIG_FILE := w32-lcc.mk
+      SEP         := $(BACKSLASH)
+      CC          := lcc
+      lcc: setup
+    endif
 
-endif #test is_windows
-endif #test PLATFORM
+    ifneq ($(findstring devel,$(MAKECMDGOALS)),)
+      CONFIG_FILE := w32-dev.mk
+      CC          := gcc
+      SEP         := /
+      devel: setup
+    endif
 
+    setup: dos_setup
+
+  endif # test is_windows
+endif   # test PLATFORM
+
+# EOF
--- a/demos/Makefile
+++ b/demos/Makefile
@@ -10,11 +10,11 @@
 #
 
 ifndef TOP
-TOP  := ..
+  TOP := ..
 endif
 
 ifndef TOP2
-TOP2 := $(TOP)/demos
+  TOP2 := $(TOP)/demos
 endif
 
 ######################################################################
@@ -23,7 +23,7 @@
 # defined by default as $(TOP)/config.mk
 #
 ifndef CONFIG_MK
-CONFIG_MK := $(TOP)/config.mk
+  CONFIG_MK := $(TOP)/config.mk
 endif
 
 ####################################################################
@@ -32,228 +32,223 @@
 # If not, issue a warning message, then stop there..
 #
 ifeq ($(wildcard $(CONFIG_MK)),)
-no_config_mk := 1
+  no_config_mk := 1
 endif
 
 ifdef no_config_mk
-exes:
-	@echo Please compile the library before the demo programs!
-clean distclean:
-	@echo "I need \`$(TOP)/config.mk' to do that!"
+  exes:
+	  @echo Please compile the library before the demo programs!
+  clean distclean:
+	  @echo "I need \`$(TOP)/config.mk' to do that!"
 else
 
-####################################################################
-#
-# Good, now include the `config.mk' in order to know how to build
-# object files from sources, as well as other things (compiler flags)
-#
-include $(CONFIG_MK)
+  ####################################################################
+  #
+  # Good, now include the `config.mk' in order to know how to build
+  # object files from sources, as well as other things (compiler flags)
+  #
+  include $(CONFIG_MK)
 
-####################################################################
-#
-# Define a few important variables now
-#
-#
-TOP_  := $(TOP)$(SEP)
-TOP2_ := $(TOP2)$(SEP)
-SRC_  := $(TOP)$(SEP)src$(SEP)
 
-BIN_ := bin$(SEP)
-OBJ_ := obj$(SEP)
+  ####################################################################
+  #
+  # Define a few important variables now
+  #
+  TOP_  := $(TOP)$(SEP)
+  TOP2_ := $(TOP2)$(SEP)
+  SRC_  := $(TOP)$(SEP)src$(SEP)
 
-GRAPH_DIR := graph
+  BIN_ := bin$(SEP)
+  OBJ_ := obj$(SEP)
 
-ifeq ($(TOP),..)
-SRC_DIR  := src
-else
-SRC_DIR  := $(TOP2_)src
-endif
+  GRAPH_DIR := graph
 
-SRC_DIR_ := $(SRC_DIR)$(SEP)
+  ifeq ($(TOP),..)
+    SRC_DIR := src
+  else
+    SRC_DIR := $(TOP2_)src
+  endif
 
-FT_INCLUDES := $(BUILD) $(TOP_)config $(TOP_)include $(SRC_)base $(SRC_DIR)
-TT_INCLUDES := $(SRC_)shared $(SRC_)truetype
-T1_INCLUDES := $(SRC_)shared $(SRC_)type1
+  SRC_DIR_ := $(SRC_DIR)$(SEP)
 
-COMPILE    = $(CC) $(CFLAGS) $(INCLUDES:%=$I%)
-LINK      := $(CC)
-FTLIB     := $(TOP_)$(LIB_DIR)$(SEP)$(LIBRARY).$A
+  FT_INCLUDES := $(BUILD) $(TOP_)config $(TOP_)include $(SRC_)base $(SRC_DIR)
+  TT_INCLUDES := $(SRC_)shared $(SRC_)truetype
+  T1_INCLUDES := $(SRC_)shared $(SRC_)type1
 
-# the default commands used to link the executables. These can
-# be re-defined for platform-specific stuff..
-#
-LINK = $(CC) $T$@ $< $(FTLIB) $(EFENCE)
-COMMON_LINK = $(LINK) $(COMMON_OBJ)
-GRAPH_LINK  = $(COMMON_LINK) $(GRAPH_LIB)
+  COMPILE    = $(CC) $(CFLAGS) $(INCLUDES:%=$I%)
+  LINK      := $(CC)
+  FTLIB     := $(TOP_)$(LIB_DIR)$(SEP)$(LIBRARY).$A
 
+  # the default commands used to link the executables. These can
+  # be re-defined for platform-specific stuff..
+  #
+  LINK = $(CC) $T$@ $< $(FTLIB) $(EFENCE)
+  COMMON_LINK = $(LINK) $(COMMON_OBJ)
+  GRAPH_LINK  = $(COMMON_LINK) $(GRAPH_LIB)
 
-.PHONY: exes clean distclean
+  .PHONY: exes clean distclean
 
-###################################################################
-#
-# Include the rules needed to compile the graphics sub-system.
-# This will also select which graphics driver to compile to the
-# sub-system..
-#
-include $(GRAPH_DIR)/rules.mk
+  ###################################################################
+  #
+  # Include the rules needed to compile the graphics sub-system.
+  # This will also select which graphics driver to compile to the
+  # sub-system..
+  #
+  include $(GRAPH_DIR)/rules.mk
 
-####################################################################
-#
-# Detect DOS-like platforms, currently DOS, Win 3.1, Win32 & OS/2
-#
-#
-ifneq ($(findstring $(PLATFORM),os2 win16 win32 dos),)
-DOSLIKE := 1
-endif
+  ####################################################################
+  #
+  # Detect DOS-like platforms, currently DOS, Win 3.1, Win32 & OS/2
+  #
+  ifneq ($(findstring $(PLATFORM),os2 win16 win32 dos),)
+    DOSLIKE := 1
+  endif
 
 
-###################################################################
-#
-# Clean-up rules. Because the `del' command on DOS-like platforms
-# cannot take a long list of arguments, we simply erase the directory
-# contents..
-#
+  ###################################################################
+  #
+  # Clean-up rules.  Because the `del' command on DOS-like platforms
+  # cannot take a long list of arguments, we simply erase the directory
+  # contents.
+  #
+  ifdef DOSLIKE
 
-ifdef DOSLIKE
-clean_demo:
-	-del obj\*.$O 2> nul
-	-del $(subst /,\,$(TOP2))\src\*.bak 2> nul
+    clean_demo:
+	    -del obj\*.$O 2> nul
+	    -del $(subst /,\,$(TOP2))\src\*.bak 2> nul
 
-distclean_demo: clean_demo
-	-del obj\*.lib 2> nul
-	-del bin\*.exe 2> nul
-else
+    distclean_demo: clean_demo
+	    -del obj\*.lib 2> nul
+	    -del bin\*.exe 2> nul
 
-clean_demo:
-	-$(DELETE) $(OBJ_)*.$O
-	-$(DELETE) $(SRC_)*.bak graph$(SEP)*.bak
-	-$(DELETE) $(SRC_)*~ graph$(SEP)*~
+  else
 
-distclean_demo: clean_demo
-	-$(DELETE) $(EXES:%=$(BIN_)%$E)
-	-$(DELETE) $(GRAPH_LIB)
-endif
+    clean_demo:
+	    -$(DELETE) $(OBJ_)*.$O
+	    -$(DELETE) $(SRC_)*.bak graph$(SEP)*.bak
+	    -$(DELETE) $(SRC_)*~ graph$(SEP)*~
 
-clean: clean_demo
-distclean: distclean_demo
+    distclean_demo: clean_demo
+	    -$(DELETE) $(EXES:%=$(BIN_)%$E)
+	    -$(DELETE) $(GRAPH_LIB)
 
-####################################################################
-#
-# Compute the executable suffix to use, and put it in `E'.
-# It is ".exe" on DOS-ish platforms, and nothing otherwise
-#
-ifdef DOSLIKE
-E := .exe
-else
-E :=
-endif
+  endif
 
-###################################################################
-#
-# The list of demonstration programs to build.
-#
-EXES := ftlint ftview fttimer
+  clean: clean_demo
+  distclean: distclean_demo
 
-ifneq ($(findstring $(PLATFORM),os2 unix),)
-EXES += ttdebug
-endif
+  ####################################################################
+  #
+  # Compute the executable suffix to use, and put it in `E'.
+  # It is ".exe" on DOS-ish platforms, and nothing otherwise.
+  #
+  ifdef DOSLIKE
+    E := .exe
+  else
+     E :=
+  endif
 
-exes: $(EXES:%=$(BIN_)%$E)
+  ###################################################################
+  #
+  # The list of demonstration programs to build.
+  #
+  EXES := ftlint ftview fttimer
 
+  ifneq ($(findstring $(PLATFORM),os2 unix),)
+    EXES += ttdebug
+  endif
 
-INCLUDES := $(FT_INCLUDES)
+  exes: $(EXES:%=$(BIN_)%$E)
 
-####################################################################
-#
-# Rules for compiling object files for text-only demos
-#
 
-COMMON_OBJ := $(OBJ_)common.$O
-$(COMMON_OBJ): $(SRC_DIR_)common.c
-ifdef DOSLIKE
-	$(COMPILE) $T$@ $< $DEXPAND_WILDCARDS 
-else
-	$(COMPILE) $T$@ $<
-endif
+  INCLUDES := $(FT_INCLUDES)
 
+  ####################################################################
+  #
+  # Rules for compiling object files for text-only demos
+  #
+  COMMON_OBJ := $(OBJ_)common.$O
+  $(COMMON_OBJ): $(SRC_DIR_)common.c
+  ifdef DOSLIKE
+	  $(COMPILE) $T$@ $< $DEXPAND_WILDCARDS 
+  else
+	  $(COMPILE) $T$@ $<
+  endif
 
-$(OBJ_)%.$O: $(SRC_DIR_)%.c $(FTLIB)
-	$(COMPILE) $T$@ $<
 
-$(OBJ_)ftlint.$O: $(SRC_DIR_)ftlint.c
-	$(COMPILE) $T$@ $<
+  $(OBJ_)%.$O: $(SRC_DIR_)%.c $(FTLIB)
+	  $(COMPILE) $T$@ $<
 
-$(OBJ_)fttry.$O: $(SRC_DIR_)fttry.c
-	$(COMPILE) $T$@ $<
+  $(OBJ_)ftlint.$O: $(SRC_DIR_)ftlint.c
+	  $(COMPILE) $T$@ $<
 
+  $(OBJ_)fttry.$O: $(SRC_DIR_)fttry.c
+	  $(COMPILE) $T$@ $<
 
-$(OBJ_)ftview.$O: $(SRC_DIR_)ftview.c $(GRAPH_LIB)
-	$(COMPILE) $(GRAPH_INCLUDES:%=$I%) $T$@ $<
 
-$(OBJ_)fttimer.$O: $(SRC_DIR_)fttimer.c $(GRAPH_LIB)
-	$(COMPILE) $(GRAPH_INCLUDES:%=$I%) $T$@ $<
+  $(OBJ_)ftview.$O: $(SRC_DIR_)ftview.c $(GRAPH_LIB)
+	  $(COMPILE) $(GRAPH_INCLUDES:%=$I%) $T$@ $<
 
-#$(OBJ_)ftsbit.$O: $(SRC_DIR)/ftsbit.c $(GRAPH_LIB)
-#	$(COMPILE) $T$@ $<
+  $(OBJ_)fttimer.$O: $(SRC_DIR_)fttimer.c $(GRAPH_LIB)
+	  $(COMPILE) $(GRAPH_INCLUDES:%=$I%) $T$@ $<
 
+# $(OBJ_)ftsbit.$O: $(SRC_DIR)/ftsbit.c $(GRAPH_LIB)
+#	 $(COMPILE) $T$@ $<
 
-####################################################################
-#
-# Special rule to compile the `t1dump' program as it includes
-# the Type1 source path
-#
-$(OBJ_)t1dump.$O: $(SRC_DIR)/t1dump.c
-	$(COMPILE) $(T1_INCLUDES:%=$I%) $T$@ $<
 
+  ####################################################################
+  #
+  # Special rule to compile the `t1dump' program as it includes
+  # the Type1 source path
+  #
+  $(OBJ_)t1dump.$O: $(SRC_DIR)/t1dump.c
+	  $(COMPILE) $(T1_INCLUDES:%=$I%) $T$@ $<
 
-####################################################################
-#
-# Special rule to compile the `ttdebug' program as it includes
-# the TrueType source path and needs extra flags for correct keyboard
-# handling on Unix
-#
 
-# POSIX TERMIOS: Do not define if you use OLD U*ix like 4.2BSD.
-#
-# detect a Unix system
-ifeq ($(PLATFORM),unix)
-EXTRAFLAGS = $DUNIX $DHAVE_POSIX_TERMIOS
-endif
+  ####################################################################
+  #
+  # Special rule to compile the `ttdebug' program as it includes
+  # the TrueType source path and needs extra flags for correct keyboard
+  # handling on Unix
 
-$(OBJ_)ttdebug.$O: $(SRC_DIR)/ttdebug.c
-	$(COMPILE) $(TT_INCLUDES:%=$I%) $T$@ $< $(EXTRAFLAGS)
+  # POSIX TERMIOS: Do not define if you use OLD U*ix like 4.2BSD.
+  #
+  # detect a Unix system
+  ifeq ($(PLATFORM),unix)
+    EXTRAFLAGS = $DUNIX $DHAVE_POSIX_TERMIOS
+  endif
 
+  $(OBJ_)ttdebug.$O: $(SRC_DIR)/ttdebug.c
+	    $(COMPILE) $(TT_INCLUDES:%=$I%) $T$@ $< $(EXTRAFLAGS)
 
-####################################################################
-#
-# Rules used to link the executables. Note that they could be
-# over-ridden by system-specific things..
-#
 
-$(BIN_)ftlint$E: $(OBJ_)ftlint.$O $(FTLIB) $(COMMON_OBJ)
-	$(COMMON_LINK)
+  ####################################################################
+  #
+  # Rules used to link the executables. Note that they could be
+  # over-ridden by system-specific things..
+  #
+  $(BIN_)ftlint$E: $(OBJ_)ftlint.$O $(FTLIB) $(COMMON_OBJ)
+	  $(COMMON_LINK)
 
+  $(BIN_)fttry$E: $(OBJ_)fttry.$O $(FTLIB)
+	  $(LINK)
 
-$(BIN_)fttry$E: $(OBJ_)fttry.$O $(FTLIB)
-	$(LINK)
+  $(BIN_)ftsbit$E: $(OBJ_)ftsbit.$O $(FTLIB)
+	  $(LINK)
 
+  $(BIN_)t1dump$E: $(OBJ_)t1dump.$O $(FTLIB)
+	  $(LINK)
 
-$(BIN_)ftsbit$E: $(OBJ_)ftsbit.$O $(FTLIB)
-	$(LINK)
+  $(BIN_)ttdebug$E: $(OBJ_)ttdebug.$O $(FTLIB)
+	  $(LINK)
 
 
-$(BIN_)t1dump$E: $(OBJ_)t1dump.$O $(FTLIB)
-	$(LINK)
+  $(BIN_)ftview$E: $(OBJ_)ftview.$O $(FTLIB) $(GRAPH_LIB) $(COMMON_OBJ)
+	  $(GRAPH_LINK) 
 
-$(BIN_)ttdebug$E: $(OBJ_)ttdebug.$O $(FTLIB)
-	$(LINK)
+  $(BIN_)fttimer$E: $(OBJ_)fttimer.$O $(FTLIB) $(GRAPH_LIB) $(COMMON_OBJ)
+	  $(GRAPH_LINK)
 
-
-$(BIN_)ftview$E: $(OBJ_)ftview.$O $(FTLIB) $(GRAPH_LIB) $(COMMON_OBJ)
-	$(GRAPH_LINK) 
-
-$(BIN_)fttimer$E: $(OBJ_)fttimer.$O $(FTLIB) $(GRAPH_LIB) $(COMMON_OBJ)
-	$(GRAPH_LINK)
-
 endif
 
+# EOF
--- a/demos/graph/x11/rules.mk
+++ b/demos/graph/x11/rules.mk
@@ -13,23 +13,21 @@
 # the current path.
 #
 ifneq ($(findstring X11R6$(SEP)bin,$(PATH)),)
-xversion := X11R6
+  xversion := X11R6
 else
-
-ifneq ($(findstring X11R5$(SEP)bin,$(PATH)),)
-xversion := X11R5
-else
-
-ifneq ($(findstring X11$(SEP)bin,$(PATH)),)
-xversion := X11
+  ifneq ($(findstring X11R5$(SEP)bin,$(PATH)),)
+    xversion := X11R5
+  else
+    ifneq ($(findstring X11$(SEP)bin,$(PATH)),)
+      xversion := X11
+    endif
+  endif
 endif
-endif
-endif
 
 ifdef xversion
-X11_PATH := $(subst ;, ,$(PATH)) $(subst :, ,$(PATH))
-X11_PATH := $(filter %$(xversion)$(SEP)bin,$(X11_PATH))
-X11_PATH := $(X11_PATH:%$(SEP)bin=%)
+  X11_PATH := $(subst ;, ,$(PATH)) $(subst :, ,$(PATH))
+  X11_PATH := $(filter %$(xversion)$(SEP)bin,$(X11_PATH))
+  X11_PATH := $(X11_PATH:%$(SEP)bin=%)
 endif
 
 ##########################################################################
@@ -41,41 +39,38 @@
 #
 ifneq ($(X11_PATH),)
 
-X11_INCLUDE    := $(X11_PATH:%=%$(SEP)include)
-X11_LIB        := $(X11_PATH:%=%$(SEP)lib)
+  X11_INCLUDE    := $(X11_PATH:%=%$(SEP)include)
+  X11_LIB        := $(X11_PATH:%=%$(SEP)lib)
 
-# the GRAPH_LINK variable is expanded each time an executable is linked against
-# the graphics library..
-#
-GRAPH_LINK     += -L$(X11_LIB) -lX11
+  # the GRAPH_LINK variable is expanded each time an executable is linked
+  # against the graphics library.
+  #
+  GRAPH_LINK     += $(X11_LIB:%=-L%) -lX11
 
-# Solaris needs a -lsocket in GRAPH_LINK ..
-#
-UNAME := $(shell uname)
-ifneq ($(findstring $(UNAME),SunOS Solaris),)
-GRAPH_LINK += -lsocket
-endif
+  # Solaris needs a -lsocket in GRAPH_LINK ..
+  #
+  UNAME := $(shell uname)
+  ifneq ($(findstring $(UNAME),SunOS Solaris),)
+    GRAPH_LINK += -lsocket
+  endif
 
 
-# add the X11 driver object file to the graphics library
-#
-GRAPH_OBJS += $(OBJ_)grx11.$O
+  # add the X11 driver object file to the graphics library
+  #
+  GRAPH_OBJS += $(OBJ_)grx11.$O
 
 
+  GR_X11  := $(GRAPH_)x11
+  GR_X11_ := $(GR_X11)$(SEP)
 
-GR_X11  := $(GRAPH_)x11
-GR_X11_ := $(GR_X11)$(SEP)
+  DEVICES         += X11
+  DEVICE_INCLUDES += $(GR_X11)
 
-DEVICES         += X11
-DEVICE_INCLUDES += $(GR_X11)
-
-# the rule used to compile the X11 driver
-#
-$(OBJ_)grx11.$O: $(GR_X11_)grx11.c $(GR_X11_)grx11.h
-	$(CC) $(CFLAGS) $(GRAPH_INCLUDES:%=$I%) $I$(GR_X11) \
-              $(X11_INCLUDE:%=$I%) $T$@ $<
+  # the rule used to compile the X11 driver
+  #
+  $(OBJ_)grx11.$O: $(GR_X11_)grx11.c $(GR_X11_)grx11.h
+	  $(CC) $(CFLAGS) $(GRAPH_INCLUDES:%=$I%) $I$(GR_X11) \
+                $(X11_INCLUDE:%=$I%) $T$@ $<
 endif
 
-
-
-
+# EOF
--- a/src/base/ftstream.h
+++ b/src/base/ftstream.h
@@ -44,7 +44,7 @@
   ft_frame_uoff3_be  = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 0, 0 ),
   ft_frame_uoff3_le  = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 0, 1 ),
   ft_frame_off3_be   = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 1, 0 ),
-  ft_frame_off3_le   = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 1, 1 ),
+  ft_frame_off3_le   = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 1, 1 )
 
 } FT_Frame_Op;
 
--- a/src/base/rules.mk
+++ b/src/base/rules.mk
@@ -1,98 +1,61 @@
-#****************************************************************************
-#*                                                                          *
-#*  Base layer Makefile                                                     *
-#*                                                                          *
-#*  Copyright 1996-1999 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#****************************************************************************
+#
+# FreeType 2 base layer configuration rules
+#
 
 
-#****************************************************************************
-#*                                                                          *
-#*  IMPORTANT NOTE: This Makefile is intended for GNU Make!                 *
-#*                  If you provide Makefiles for other make utilities,      *
-#*                  please place them in `freetype/lib/arch/<system>.'      *
-#*                                                                          *
-#*                                                                          *
-#*  This file is to be included by the root FreeType sub-Makefile, usually  *
-#*  named `freetype/lib/Makefile.lib.'  Here is the list of the variables   *
-#*  that must be defined to use it:                                         *
-#*                                                                          *
-#*     BASE_DIR:  The location of the base layer's directory.  This is      *
-#*                usually `freetype/lib/base.'                              *
-#*                                                                          *
-#*     ARCH_DIR:  The location of the architecture-dependent directory.     *
-#*                This is usually `freetype/lib/arch/<system>.'             *
-#*                                                                          *
-#*     OBJ_DIR:   The location where the compiled object(s) file will be    *
-#*                placed.                                                   *
-#*                                                                          *
-#*     FT_CFLAGS: A set of flags used for compilation of object files.      *
-#*                This contains at least the include paths of the `arch'    *
-#*                and `base' directories + optimization + warnings +        *
-#*                ANSI compliance.                                          *
-#*                                                                          *
-#*     FT_IFLAGS: The flag used to specify an include path on the compiler  *
-#*                command line.  For example, with GCC, this is `-I', while *
-#*                some other compilers use `/i=' or `-J', etc.              *
-#*                                                                          *
-#*     FT_OBJ:    The suffix of an object file for the platform.  Can be    *
-#*                `o', `obj', `coff', `tco', etc.                           *
-#*                                                                          *
-#*     FT_CC:     The C compiler to use.                                    *
-#*                                                                          *
-#*                                                                          *
-#*  It sets the following variables, which are used by the parent Makefile  *
-#*  after the call:                                                         *
-#*                                                                          *
-#*     BASE_H:       The list of base layer header files on which the rest  *
-#*                   of the library (i.e., drivers) rely.                   *
-#*                                                                          *
-#*     BASE_OBJ_S:   The single-object base layer.                          *
-#*     BASE_OBJ_M:   A list of all objects for a multiple-objects build.    *
-#*     BASE_EXT_OBJ: A list of base layer extensions, i.e., components      *
-#*                   found in `freetype/lib/base' which are not compiled    *
-#*                   within the base layer proper.                          *
-#*                                                                          *
-#****************************************************************************
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
+
+# It sets the following variables, which are used by the master Makefile
+# after the call:
+#
+#    BASE_H:       The list of base layer header files on which the rest
+#                  of the library (i.e., drivers) rely.
+#
+#    BASE_OBJ_S:   The single-object base layer.
+#    BASE_OBJ_M:   A list of all objects for a multiple-objects build.
+#    BASE_EXT_OBJ: A list of base layer extensions, i.e., components found
+#                  in `freetype/lib/base' which are not compiled within the
+#                  base layer proper.
+
 INCLUDES += $(SRC_)base
 
 # Base layer sources
 #
-BASE_SRC := $(BASE_)ftstream.c  \
-            $(BASE_)ftcalc.c    \
-            $(BASE_)ftobjs.c    \
+BASE_SRC := $(BASE_)ftcalc.c    \
             $(BASE_)ftextend.c  \
-            $(BASE_)ftlist.c
+            $(BASE_)ftlist.c    \
+            $(BASE_)ftobjs.c    \
+            $(BASE_)ftstream.c
 
 # Base layer headers
 #
 BASE_H := $(BASE_)ftcalc.h    \
-          $(BASE_)ftobjs.h    \
+          $(BASE_)ftdebug.h   \
           $(BASE_)ftdriver.h  \
           $(BASE_)ftextend.h  \
-          $(BASE_)ftlist.h
+          $(BASE_)ftlist.h    \
+          $(BASE_)ftobjs.h    \
+          $(BASE_)ftstream.h
 
 
 # Base layer `extensions' sources
 #
 # An extension is added to the library file (.a or .lib) as a separate
-# object.  It will then be linked to the final executable only if one of
-# its symbols is used by the application.
+# object.  It will then be linked to the final executable only if one of its
+# symbols is used by the application.
 #
 BASE_EXT_SRC := $(BASE_)ftbbox.c   \
                 $(BASE_)ftraster.c \
                 $(BASE_)ftoutln.c
 
-
 # Base layer extensions headers
 #
 BASE_EXT_H := $(BASE_EXT_SRC:%c=%h)
@@ -100,11 +63,11 @@
 
 # Base layer object(s)
 #
-#   BASE_OBJ_M is used during `multi' builds (each base source file
-#   compiles to a single object file).
+#   BASE_OBJ_M is used during `multi' builds (each base source file compiles
+#   to a single object file).
 #
-#   BASE_OBJ_S is used during `single' builds (the whole base layer
-#   is compiled as a single object file using ftbase.c).
+#   BASE_OBJ_S is used during `single' builds (the whole base layer is
+#   compiled as a single object file using ftbase.c).
 #
 BASE_OBJ_M := $(BASE_SRC:$(BASE_)%.c=$(OBJ_)%.$O)
 BASE_OBJ_S := $(OBJ_)ftbase.$O
@@ -132,5 +95,4 @@
 $(BASE_OBJ_S): $(PUBLIC_H) $(BASE_H) $(BASE_SRC_S) $(BASE_SRC)
 	$(FT_COMPILE) $T$@ $(BASE_SRC_S)
 
-
-# END
+# EOF
--- a/src/psnames/module.mk
+++ b/src/psnames/module.mk
@@ -2,5 +2,6 @@
 
 add_psnames_driver:
 	$(OPEN_DRIVER)psnames_driver_interface$(CLOSE_DRIVER)
-	$(ECHO_DRIVER)psnames   $(ECHO_DRIVER_DESC) Postscript & Unicode Glyph name handling $(ECHO_DRIVER_DONE)
+	$(ECHO_DRIVER)psnames   $(ECHO_DRIVER_DESC)Postscript & Unicode Glyph name handling$(ECHO_DRIVER_DONE)
 
+# EOF
--- a/src/psnames/rules.mk
+++ b/src/psnames/rules.mk
@@ -1,89 +1,90 @@
-#****************************************************************************
-#*                                                                          *
-#*  PSNames driver Makefile                                                 *
-#*                                                                          *
-#*  Copyright 1996-2000 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#****************************************************************************
+#
+# FreeType 2 PSNames driver configuration rules
+#
 
 
-ifndef PSNAMES_INCLUDE
-PSNAMES_INCLUDED := 1
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
-include $(SRC_)shared/rules.mk
 
-# PSNAMES driver directory
-#
-PSNAMES_DIR  := $(SRC_)psnames
-PSNAMES_DIR_ := $(PSNAMES_DIR)$(SEP)
+ifndef PSNAMES_INCLUDE
+  PSNAMES_INCLUDED := 1
 
-# additional include flags used when compiling the driver
-#
-PSNAMES_INCLUDE := $(SHARED) $(PSNAMES_DIR)
+  include $(SRC_)shared/rules.mk
 
+  # PSNAMES driver directory
+  #
+  PSNAMES_DIR  := $(SRC_)psnames
+  PSNAMES_DIR_ := $(PSNAMES_DIR)$(SEP)
 
-# compilation flags for the driver
-#
-PSNAMES_CFLAGS  := $(PSNAMES_INCLUDE:%=$I%)
-PSNAMES_COMPILE := $(FT_COMPILE) $(PSNAMES_CFLAGS) 
+  # additional include flags used when compiling the driver
+  #
+  PSNAMES_INCLUDE := $(SHARED) $(PSNAMES_DIR)
 
 
-# TrueType driver sources (i.e., C files)
-#
-PSNAMES_DRV_SRC := $(PSNAMES_DIR_)psdriver.c
+  # compilation flags for the driver
+  #
+  PSNAMES_CFLAGS  := $(PSNAMES_INCLUDE:%=$I%)
+  PSNAMES_COMPILE := $(FT_COMPILE) $(PSNAMES_CFLAGS) 
 
 
-# TrueType driver headers
-#
-PSNAMES_DRV_H := $(SHARED_H)                  \
-                 $(PSNAMES_DIR_)psdriver.h    \
-                 $(PSNAMES_DIR_)pstables.h
+  # driver sources (i.e., C files)
+  #
+  PSNAMES_DRV_SRC := $(PSNAMES_DIR_)psdriver.c
 
 
-# driver object(s)
-#
-#   PSNAMES_DRV_OBJ_M is used during `debug' builds
-#   PSNAMES_DRV_OBJ_S is used during `release' builds
-#
-PSNAMES_DRV_OBJ_M := $(PSNAMES_DRV_SRC:$(PSNAMES_DIR_)%.c=$(OBJ_)%.$O)
-PSNAMES_DRV_OBJ_S := $(OBJ_)psnames.$O
+  # driver headers
+  #
+  PSNAMES_DRV_H := $(SHARED_H)               \
+                   $(PSNAMES_DIR_)psdriver.h \
+                   $(PSNAMES_DIR_)pstables.h
 
 
-# driver root source file(s)
-#
-PSNAMES_DRV_SRC_M := $(PSNAMES_DRV_SRC)
-PSNAMES_DRV_SRC_S := $(PSNAMES_DIR_)psdriver.c
+  # driver object(s)
+  #
+  #   PSNAMES_DRV_OBJ_M is used during `debug' builds
+  #   PSNAMES_DRV_OBJ_S is used during `release' builds
+  #
+  PSNAMES_DRV_OBJ_M := $(PSNAMES_DRV_SRC:$(PSNAMES_DIR_)%.c=$(OBJ_)%.$O)
+  PSNAMES_DRV_OBJ_S := $(OBJ_)psnames.$O
 
 
-# driver - single object
-#
-#  the driver is recompiled if any of the header or source files is changed
-#  as well as any of the shared source files found in `shared/sfnt'
-#
-$(PSNAMES_DRV_OBJ_S): $(BASE_H) $(SHARED_H) $(PSNAMES_DRV_H) $(PSNAMES_DRV_SRC) $(PSNAMES_DRV_SRC_S)
-	$(PSNAMES_COMPILE) $T$@ $(PSNAMES_DRV_SRC_S)
+  # driver source file(s)
+  #
+  PSNAMES_DRV_SRC_M := $(PSNAMES_DRV_SRC)
+  PSNAMES_DRV_SRC_S := $(PSNAMES_DIR_)psdriver.c
 
 
+  # driver - single object
+  #
+  #  the driver is recompiled if any of the header or source files is
+  #  changed as well as any of the shared source files found in
+  #  `shared'
+  #
+  $(PSNAMES_DRV_OBJ_S): $(BASE_H) $(SHARED_H) $(PSNAMES_DRV_H) \
+                        $(PSNAMES_DRV_SRC) $(PSNAMES_DRV_SRC_S)
+	  $(PSNAMES_COMPILE) $T$@ $(PSNAMES_DRV_SRC_S)
 
-# driver - multiple objects
-#
-#   All objects are recompiled if any of the header files is changed
-#
-$(OBJ_)ps%.$O: $(PSNAMES_DIR_)ps%.c $(BASE_H) $(SHARED_H) $(PSNAMES_DRV_H)
-	$(PSNAMES_COMPILE) $T$@ $<
 
+  # driver - multiple objects
+  #
+  #   All objects are recompiled if any of the header files is changed.
+  #
+  $(OBJ_)ps%.$O: $(PSNAMES_DIR_)ps%.c $(BASE_H) $(SHARED_H) $(PSNAMES_DRV_H)
+	  $(PSNAMES_COMPILE) $T$@ $<
 
-# update main driver object lists
-#
-DRV_OBJS_S += $(PSNAMES_DRV_OBJ_S)
-DRV_OBJS_M += $(PSNAMES_DRV_OBJ_M)
 
+  # update main driver object lists
+  #
+  DRV_OBJS_S += $(PSNAMES_DRV_OBJ_S)
+  DRV_OBJS_M += $(PSNAMES_DRV_OBJ_M)
+
 endif
-# END
+
+# EOF
--- a/src/sfnt/module.mk
+++ b/src/sfnt/module.mk
@@ -2,5 +2,6 @@
 
 add_sfnt_driver:
 	$(OPEN_DRIVER)sfnt_driver_interface$(CLOSE_DRIVER)
-	$(ECHO_DRIVER)sfnt      $(ECHO_DRIVER_DESC) pseudo-driver for TrueType & OpenType formats $(ECHO_DRIVER_DONE)
+	$(ECHO_DRIVER)sfnt      $(ECHO_DRIVER_DESC)pseudo-driver for TrueType & OpenType formats$(ECHO_DRIVER_DONE)
 
+# EOF
--- a/src/sfnt/rules.mk
+++ b/src/sfnt/rules.mk
@@ -1,165 +1,100 @@
-#****************************************************************************
-#*                                                                          *
-#*  SFNT driver Makefile                                                    *
-#*                                                                          *
-#*  Copyright 1996-1999 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#****************************************************************************
+#
+# FreeType 2 DFNT driver configuration rules
+#
 
 
-#****************************************************************************
-#*                                                                          *
-#*  IMPORTANT NOTE: This Makefile is intended for GNU Make!                 *
-#*                  If you provide Makefiles for other make utilities,      *
-#*                  please place them in `freetype/lib/arch/<system>'.      *
-#*                                                                          *
-#*                                                                          *
-#*  This file is to be included by the FreeType Makefile.lib, located in    *
-#*  the `freetype/lib' directory.  Here is the list of the variables that   *
-#*  must be defined to use it:                                              *
-#*                                                                          *
-#*                                                                          *
-#*     BASE_DIR:    The location of the base layer's directory.  This is    *
-#*                  usually `freetype/lib/base'.                            *
-#*                                                                          *
-#*     ARCH_DIR:    The location of the architecture-dependent directory.   *
-#*                  This is usually `freetype/lib/arch/<system>'.           *
-#*                                                                          *
-#*     DRIVERS_DIR: The location of the font driver sub-dirs, usually       *
-#*                  `freetype/lib/drivers'.                                 *
-#*                                                                          *
-#*     OBJ_DIR:     The location where the compiled object(s) file will be  *
-#*                  placed.                                                 *
-#*                                                                          *
-#*     BASE_H:      A list of pathnames to the base layer's header files on *
-#*                  which the driver depends.                               *
-#*                                                                          *
-#*     FT_CFLAGS:   A set of flags used for compilation of object files.    *
-#*                  This contains at least the include paths of the arch    *
-#*                  and base directories + optimization + warnings + ANSI   *
-#*                  compliance.                                             *
-#*                                                                          *
-#*     FT_IFLAG:    The flag used to specify an include path on the         *
-#*                  compiler command line.  For example, with GCC, this is  *
-#*                  `-I', while some other compilers use `/i=' or `-J',     *
-#*                  etc.                                                    *
-#*                                                                          *
-#*     FT_OBJ:      The suffix of an object file for the platform; can be   *
-#*                  `o', `obj', `coff', `tco', etc. depending on the        *
-#*                  platform.                                               *
-#*                                                                          *
-#*                                                                          *
-#*  It also updates the following variables defined and used in the main    *
-#*  Makefile:                                                               *
-#*                                                                          *
-#*     DRV_OBJ_S:            The list of driver object files in             *
-#*                           single-object mode.                            *
-#*                                                                          *
-#*     DRV_OBJ_M:            The list of driver object files in             *
-#*                           multiple-objects mode.                         *
-#*                                                                          *
-#*     FTINIT_DRIVER_PATHS:  The list of include paths used to compile the  *
-#*                           `ftinit' component which registers all font    *
-#*                            drivers in the FT_Init_FreeType() function.   *
-#*                                                                          *
-#*     FTINIT_DRIVER_H:      The list of header dependencies used to        *
-#*                           compile the `ftinit' component.                *
-#*                                                                          *
-#*     FTINIT_DRIVER_MACROS: The list of macros to be defined when          *
-#*                           compiling the `ftinit' component.              *
-#*                                                                          *
-#*  `Single-object compilation' means that each font driver is compiled     *
-#*  into a single object file.  This is useful to get rid of all            *
-#*  driver-specific entries.                                                *
-#*                                                                          *
-#****************************************************************************
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
+
 ifndef SFNT_INCLUDE
-SFNT_INCLUDED := 1
+  SFNT_INCLUDED := 1
 
-include $(SRC_)shared/rules.mk
+  include $(SRC_)shared/rules.mk
+
+  # SFNT driver directory
+  #
+  SFNT_DIR  := $(SRC_)sfnt
+  SFNT_DIR_ := $(SFNT_DIR)$(SEP)
 
-# SFNT driver directory
-#
-SFNT_DIR  := $(SRC_)sfnt
-SFNT_DIR_ := $(SFNT_DIR)$(SEP)
+  # additional include flags used when compiling the driver
+  #
+  SFNT_INCLUDE := $(SHARED) $(SFNT_DIR)
 
-# additional include flags used when compiling the driver
-#
-SFNT_INCLUDE := $(SHARED) $(SFNT_DIR)
 
+  # compilation flags for the driver
+  #
+  SFNT_CFLAGS  := $(SFNT_INCLUDE:%=$I%)
+  SFNT_COMPILE := $(FT_COMPILE) $(SFNT_CFLAGS) 
 
-# compilation flags for the driver
-#
-SFNT_CFLAGS  := $(SFNT_INCLUDE:%=$I%)
-SFNT_COMPILE := $(FT_COMPILE) $(SFNT_CFLAGS) 
 
+  # driver sources (i.e., C files)
+  #
+  SFNT_DRV_SRC := $(SFNT_DIR_)ttload.c   \
+                  $(SFNT_DIR_)ttcmap.c   \
+                  $(SFNT_DIR_)ttsbit.c   \
+                  $(SFNT_DIR_)ttpost.c   \
+                  $(SFNT_DIR_)sfdriver.c
 
-# TrueType driver sources (i.e., C files)
-#
-SFNT_DRV_SRC := $(SFNT_DIR_)ttload.c    \
-                $(SFNT_DIR_)ttcmap.c    \
-                $(SFNT_DIR_)ttsbit.c    \
-                $(SFNT_DIR_)ttpost.c    \
-                $(SFNT_DIR_)sfdriver.c  \
 
+  # driver headers
+  #
+  SFNT_DRV_H := $(SHARED_H)            \
+                $(SFNT_DIR_)sfconfig.h \
+                $(SFNT_DIR_)ttload.h   \
+                $(SFNT_DIR_)ttsbit.h   \
+                $(SFNT_DIR_)ttcmap.h   \
+                $(SFNT_DIR_)ttpost.h
 
-# TrueType driver headers
-#
-SFNT_DRV_H := $(SHARED_H)               \
-              $(SFNT_DIR_)sfconfig.h    \
-              $(SFNT_DIR_)ttload.h      \
-              $(SFNT_DIR_)ttsbit.h      \
-              $(SFNT_DIR_)ttcmap.h      \
-              $(SFNT_DIR_)ttpost.h
 
+  # driver object(s)
+  #
+  #   SFNT_DRV_OBJ_M is used during `debug' builds
+  #   SFNT_DRV_OBJ_S is used during `release' builds
+  #
+  SFNT_DRV_OBJ_M := $(SFNT_DRV_SRC:$(SFNT_DIR_)%.c=$(OBJ_)%.$O)
+  SFNT_DRV_OBJ_S := $(OBJ_)sfnt.$O
 
-# driver object(s)
-#
-#   SFNT_DRV_OBJ_M is used during `debug' builds
-#   SFNT_DRV_OBJ_S is used during `release' builds
-#
-SFNT_DRV_OBJ_M := $(SFNT_DRV_SRC:$(SFNT_DIR_)%.c=$(OBJ_)%.$O)
-SFNT_DRV_OBJ_S := $(OBJ_)sfnt.$O
 
+  # driver source file(s)
+  #
+  SFNT_DRV_SRC_M := $(SFNT_DRV_SRC)
+  SFNT_DRV_SRC_S := $(SFNT_DIR_)sfnt.c
 
-# driver root source file(s)
-#
-SFNT_DRV_SRC_M := $(SFNT_DRV_SRC)
-SFNT_DRV_SRC_S := $(SFNT_DIR_)sfnt.c
 
+  # driver - single object
+  #
+  #  the driver is recompiled if any of the header or source files is
+  #  changed as well as any of the shared source files found in
+  #  `shared'
+  #
+  $(SFNT_DRV_OBJ_S): $(BASE_H) $(SHARED_H) $(SFNT_DRV_H) \
+                     $(SFNT_DRV_SRC) $(SFNT_DRV_SRC_S)
+	  $(SFNT_COMPILE) $T$@ $(SFNT_DRV_SRC_S)
 
-# driver - single object
-#
-#  the driver is recompiled if any of the header or source files is changed
-#  as well as any of the shared source files found in `shared/sfnt'
-#
-$(SFNT_DRV_OBJ_S): $(BASE_H) $(SHARED_H) $(SFNT_DRV_H) $(SFNT_DRV_SRC) $(SFNT_DRV_SRC_S)
-	$(SFNT_COMPILE) $T$@ $(SFNT_DRV_SRC_S)
 
+  # driver - multiple objects
+  #
+  #   All objects are recompiled if any of the header files is changed
+  #
+  $(OBJ_)tt%.$O: $(SFNT_DIR_)tt%.c $(BASE_H) $(SHARED_H) $(SFNT_DRV_H)
+	  $(SFNT_COMPILE) $T$@ $<
 
+  $(OBJ_)sf%.$O: $(SFNT_DIR_)sf%.c $(BASE_H) $(SHARED_H) $(SFNT_DRV_H)
+	  $(SFNT_COMPILE) $T$@ $<
 
-# driver - multiple objects
-#
-#   All objects are recompiled if any of the header files is changed
-#
-$(OBJ_)tt%.$O: $(SFNT_DIR_)tt%.c $(BASE_H) $(SHARED_H) $(SFNT_DRV_H)
-	$(SFNT_COMPILE) $T$@ $<
 
-$(OBJ_)sf%.$O: $(SFNT_DIR_)sf%.c $(BASE_H) $(SHARED_H) $(SFNT_DRV_H)
-	$(SFNT_COMPILE) $T$@ $<
+  # update main driver object lists
+  #
+  DRV_OBJS_S += $(SFNT_DRV_OBJ_S)
+  DRV_OBJS_M += $(SFNT_DRV_OBJ_M)
 
-# update main driver object lists
-#
-DRV_OBJS_S += $(SFNT_DRV_OBJ_S)
-DRV_OBJS_M += $(SFNT_DRV_OBJ_M)
-
 endif
-# END
+
+# EOF
--- a/src/shared/rules.mk
+++ b/src/shared/rules.mk
@@ -1,27 +1,27 @@
-#****************************************************************************
-#*                                                                          *
-#*  shared files Makefile                                                   *
-#*                                                                          *
-#*  Copyright 1996-2000 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#****************************************************************************
+#
+# FreeType 2 shared files configuration rules
+#
 
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
+
+
 ifndef SHARED_RULES
-SHARED_RULES := 1
+  SHARED_RULES := 1
 
-SHARED  := $(SRC_)shared
-SHARED_ := $(SHARED)$(SEP)
+  SHARED  := $(SRC_)shared
+  SHARED_ := $(SHARED)$(SEP)
 
-SHARED_H   := $(wildcard $(SHARED_)*.h)
-SHARED_SRC := $(wildcard $(SHARED_)*.c) 
+  SHARED_H   := $(wildcard $(SHARED_)*.h)
+  SHARED_SRC := $(wildcard $(SHARED_)*.c) 
 
 endif
 
-# END
+# EOF
--- a/src/truetype/module.mk
+++ b/src/truetype/module.mk
@@ -2,5 +2,6 @@
 
 add_truetype_driver:
 	$(OPEN_DRIVER)tt_driver_interface$(CLOSE_DRIVER)
-	$(ECHO_DRIVER)truetype  $(ECHO_DRIVER_DESC) Windows/Mac font files with extension *.ttf or *.ttc $(ECHO_DRIVER_DONE)
+	$(ECHO_DRIVER)truetype  $(ECHO_DRIVER_DESC)Windows/Mac font files with extension *.ttf or *.ttc$(ECHO_DRIVER_DONE)
 
+# EOF
--- a/src/truetype/rules.mk
+++ b/src/truetype/rules.mk
@@ -1,88 +1,20 @@
-#****************************************************************************
-#*                                                                          *
-#*  TrueType driver Makefile                                                *
-#*                                                                          *
-#*  Copyright 1996-1999 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
-#****************************************************************************
+#
+# FreeType 2 PSNames driver configuration rules
+#
 
 
-#****************************************************************************
-#*                                                                          *
-#*  IMPORTANT NOTE: This Makefile is intended for GNU Make!                 *
-#*                  If you provide Makefiles for other make utilities,      *
-#*                  please place them in `freetype/lib/arch/<system>'.      *
-#*                                                                          *
-#*                                                                          *
-#*  This file is to be included by the FreeType Makefile.lib, located in    *
-#*  the `freetype/lib' directory.  Here is the list of the variables that   *
-#*  must be defined to use it:                                              *
-#*                                                                          *
-#*                                                                          *
-#*     BASE_DIR:    The location of the base layer's directory.  This is    *
-#*                  usually `freetype/lib/base'.                            *
-#*                                                                          *
-#*     ARCH_DIR:    The location of the architecture-dependent directory.   *
-#*                  This is usually `freetype/lib/arch/<system>'.           *
-#*                                                                          *
-#*     DRIVERS_DIR: The location of the font driver sub-dirs, usually       *
-#*                  `freetype/lib/drivers'.                                 *
-#*                                                                          *
-#*     OBJ_DIR:     The location where the compiled object(s) file will be  *
-#*                  placed.                                                 *
-#*                                                                          *
-#*     BASE_H:      A list of pathnames to the base layer's header files on *
-#*                  which the driver depends.                               *
-#*                                                                          *
-#*     FT_CFLAGS:   A set of flags used for compilation of object files.    *
-#*                  This contains at least the include paths of the arch    *
-#*                  and base directories + optimization + warnings + ANSI   *
-#*                  compliance.                                             *
-#*                                                                          *
-#*     FT_IFLAG:    The flag used to specify an include path on the         *
-#*                  compiler command line.  For example, with GCC, this is  *
-#*                  `-I', while some other compilers use `/i=' or `-J',     *
-#*                  etc.                                                    *
-#*                                                                          *
-#*     FT_OBJ:      The suffix of an object file for the platform; can be   *
-#*                  `o', `obj', `coff', `tco', etc. depending on the        *
-#*                  platform.                                               *
-#*                                                                          *
-#*                                                                          *
-#*  It also updates the following variables defined and used in the main    *
-#*  Makefile:                                                               *
-#*                                                                          *
-#*     DRV_OBJ_S:            The list of driver object files in             *
-#*                           single-object mode.                            *
-#*                                                                          *
-#*     DRV_OBJ_M:            The list of driver object files in             *
-#*                           multiple-objects mode.                         *
-#*                                                                          *
-#*     FTINIT_DRIVER_PATHS:  The list of include paths used to compile the  *
-#*                           `ftinit' component which registers all font    *
-#*                            drivers in the FT_Init_FreeType() function.   *
-#*                                                                          *
-#*     FTINIT_DRIVER_H:      The list of header dependencies used to        *
-#*                           compile the `ftinit' component.                *
-#*                                                                          *
-#*     FTINIT_DRIVER_MACROS: The list of macros to be defined when          *
-#*                           compiling the `ftinit' component.              *
-#*                                                                          *
-#*  `Single-object compilation' means that each font driver is compiled     *
-#*  into a single object file.  This is useful to get rid of all            *
-#*  driver-specific entries.                                                *
-#*                                                                          *
-#****************************************************************************
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
 
-# include the rules defined for the SFNT driver, which is heavily used
-# by the TrueType one..
+
+# Include the rules defined for the SFNT driver, which is heavily used
+# by the TrueType one.
 #
 include $(SRC_)sfnt/rules.mk
 
@@ -109,23 +41,22 @@
 TT_COMPILE := $(FT_COMPILE) $(TT_CFLAGS) 
 
 
-# TrueType driver sources (i.e., C files)
+# driver sources (i.e., C files)
 #
-TT_DRV_SRC := $(TT_DIR_)ttobjs.c    \
-              $(TT_DIR_)ttpload.c   \
-              $(TT_DIR_)ttgload.c   \
-              $(TT_DIR_)ttinterp.c  \
+TT_DRV_SRC := $(TT_DIR_)ttobjs.c   \
+              $(TT_DIR_)ttpload.c  \
+              $(TT_DIR_)ttgload.c  \
+              $(TT_DIR_)ttinterp.c \
               $(TT_DIR_)ttdriver.c
 
-
-# TrueType driver headers
+# driver headers
 #
-TT_DRV_H := $(SFNT_H)               \
-            $(TT_DIR_)ttconfig.h    \
+TT_DRV_H := $(SFNT_H)             \
+            $(TT_DIR_)ttconfig.h  \
             $(TT_DRV_SRC:%.c=%.h)
 
 
-# default TrueType extensions sources
+# default extensions sources
 #
 TT_EXT_SRC := $(TT_EXT_DIR_)ttxkern.c  \
               $(TT_EXT_DIR_)ttxgasp.c  \
@@ -133,8 +64,7 @@
               $(TT_EXT_DIR_)ttxcmap.c  \
               $(TT_EXT_DIR_)ttxwidth.c
 
-
-# default TrueType extensions headers
+# default extensions headers
 #
 TT_EXT_H := $(TT_EXT_SRC:.c=.h)
 
@@ -153,8 +83,7 @@
 TT_EXT_OBJ := $(TT_EXT_SRC:$(TT_EXT_DIR_)%.c=$(OBJ_)%.$O)
 
 
-
-# driver root source file(s)
+# driver source file(s)
 #
 TT_DRV_SRC_M := $(TT_DRV_SRC) $(SFNT_SRC)
 TT_DRV_SRC_S := $(TT_DIR_)truetype.c
@@ -184,15 +113,9 @@
 	$(TT_COMPILE) $T$@ $<
 
 
-# treat `ttpload' as a special case, as it includes C files
-#
-$(OBJ_)ttpload.$O: $(TT_DIR_)ttpload.c $(BASE_H) $(SFNT_SRC) $(TT_DRV_H)
-	$(TT_COMPILE) $T$@ $<
-
-
 # update main driver object lists
 #
 DRV_OBJS_S += $(TT_DRV_OBJ_S)
 DRV_OBJS_M += $(TT_DRV_OBJ_M)
 
-# END
+# EOF
--- a/src/type1z/module.mk
+++ b/src/type1z/module.mk
@@ -2,5 +2,6 @@
 
 add_type1z_driver:
 	$(OPEN_DRIVER)t1z_driver_interface$(CLOSE_DRIVER)
-	$(ECHO_DRIVER)type1z    $(ECHO_DRIVER_DESC) Postscript font files with extension *.pfa or *.pfb $(ECHO_DRIVER_DONE)
+	$(ECHO_DRIVER)type1z    $(ECHO_DRIVER_DESC)Postscript font files with extension *.pfa or *.pfb$(ECHO_DRIVER_DONE)
 
+# EOF
--- a/src/type1z/rules.mk
+++ b/src/type1z/rules.mk
@@ -1,21 +1,25 @@
+#
+# FreeType 2 driver configuration rules
+#
+
+
+# Copyright 1996-2000 by
+# David Turner, Robert Wilhelm, and Werner Lemberg.
+#
+# This file is part of the FreeType project, and may only be used modified
+# and distributed under the terms of the FreeType project license,
+# LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+# indicate that you have read the license and understand and accept it
+# fully.
+
+
 #****************************************************************************
 #*                                                                          *
-#*  Type1z driver Makefile                                                  *
-#*                                                                          *
-#*  Copyright 1996-1999 by                                                  *
-#*  David Turner, Robert Wilhelm, and Werner Lemberg.                       *
-#*                                                                          *
-#*  This file is part of the FreeType project, and may only be used         *
-#*  modified and distributed under the terms of the FreeType project        *
-#*  license, LICENSE.TXT.  By continuing to use, modify, or distribute      *
-#*  this file you indicate that you have read the license and               *
-#*  understand and accept it fully.                                         *
-#*                                                                          *
 #*  The "Type1z" driver is an experimental replacement for the current      *
-#*  Type 1 driver. It features a very different loading mechanism that      *
-#*  is much faster than the one used by the "normal" driver, and also       *
-#*  deals nicely with nearly broken Type 1 font files.. It is also          *
-#*  much smaller..                                                          *
+#*  Type 1 driver.  It features a very different loading mechanism that     *
+#*  is much faster than the one used by the `normal' driver, and also       *
+#*  deals nicely with nearly broken Type 1 font files. It is also           *
+#*  much smaller...                                                         *
 #*                                                                          *
 #*  Note that it may become a permanent replacement of the current          *
 #*  "src/type1" driver in the future..                                      *
@@ -22,75 +26,6 @@
 #*                                                                          *
 #****************************************************************************
 
-
-#****************************************************************************
-#*                                                                          *
-#*  IMPORTANT NOTE: This Makefile is intended for GNU Make!                 *
-#*                  If you provide Makefiles for other make utilities,      *
-#*                  please place them in `freetype/lib/arch/<system>'.      *
-#*                                                                          *
-#*                                                                          *
-#*  This file is to be included by the FreeType Makefile.lib, located in    *
-#*  the `freetype/lib' directory.  Here is the list of the variables that   *
-#*  must be defined to use it:                                              *
-#*                                                                          *
-#*                                                                          *
-#*     BASE_DIR:    The location of the base layer's directory.  This is    *
-#*                  usually `freetype/lib/base'.                            *
-#*                                                                          *
-#*     ARCH_DIR:    The location of the architecture-dependent directory.   *
-#*                  This is usually `freetype/lib/arch/<system>'.           *
-#*                                                                          *
-#*     DRIVERS_DIR: The location of the font driver sub-dirs, usually       *
-#*                  `freetype/lib/drivers'.                                 *
-#*                                                                          *
-#*     OBJ_DIR:     The location where the compiled object(s) file will be  *
-#*                  placed.                                                 *
-#*                                                                          *
-#*     BASE_H:      A list of pathnames to the base layer's header files on *
-#*                  which the driver depends.                               *
-#*                                                                          *
-#*     FT_CFLAGS:   A set of flags used for compilation of object files.    *
-#*                  This contains at least the include paths of the arch    *
-#*                  and base directories + optimization + warnings + ANSI   *
-#*                  compliance.                                             *
-#*                                                                          *
-#*     FT_IFLAG:    The flag used to specify an include path on the         *
-#*                  compiler command line.  For example, with GCC, this is  *
-#*                  `-I', while some other compilers use `/i=' or `-J',     *
-#*                  etc.                                                    *
-#*                                                                          *
-#*     FT_OBJ:      The suffix of an object file for the platform; can be   *
-#*                  `o', `obj', `coff', `tco', etc. depending on the        *
-#*                  platform.                                               *
-#*                                                                          *
-#*                                                                          *
-#*  It also updates the following variables defined and used in the main    *
-#*  Makefile:                                                               *
-#*                                                                          *
-#*     DRV_OBJ_S:            The list of driver object files in             *
-#*                           single-object mode.                            *
-#*                                                                          *
-#*     DRV_OBJ_M:            The list of driver object files in             *
-#*                           multiple-objects mode.                         *
-#*                                                                          *
-#*     FTINIT_DRIVER_PATHS:  The list of include paths used to compile the  *
-#*                           `ftinit' component which registers all font    *
-#*                            drivers in the FT_Init_FreeType() function.   *
-#*                                                                          *
-#*     FTINIT_DRIVER_H:      The list of header dependencies used to        *
-#*                           compile the `ftinit' component.                *
-#*                                                                          *
-#*     FTINIT_DRIVER_MACROS: The list of macros to be defined when          *
-#*                           compiling the `ftinit' component.              *
-#*                                                                          *
-#*  `Single-object compilation' means that each font driver is compiled     *
-#*  into a single object file.  This is useful to get rid of all            *
-#*  driver-specific entries.                                                *
-#*                                                                          *
-#****************************************************************************
-
-
 # Type1z driver directory
 #
 T1Z_DIR  := $(SRC_)type1z
@@ -105,18 +40,17 @@
 
 # Type1 driver sources (i.e., C files)
 #
-T1Z_DRV_SRC := $(T1Z_DIR_)t1parse.c   \
-               $(T1Z_DIR_)t1load.c    \
-               $(T1Z_DIR_)t1driver.c  \
-               $(T1Z_DIR_)t1afm.c     \
+T1Z_DRV_SRC := $(T1Z_DIR_)t1parse.c  \
+               $(T1Z_DIR_)t1load.c   \
+               $(T1Z_DIR_)t1driver.c \
+               $(T1Z_DIR_)t1afm.c    \
                $(T1Z_DIR_)t1gload.c
 
-
 # Type1 driver headers
 #
-T1Z_DRV_H := $(T1Z_DIR_)t1errors.h    \
-             $(T1Z_DIR_)t1config.h    \
-             $(T1SHARED_H)           \
+T1Z_DRV_H := $(T1Z_DIR_)t1errors.h  \
+             $(T1Z_DIR_)t1config.h  \
+             $(T1SHARED_H)          \
              $(T1Z_DRV_SRC:%.c=%.h)
 
 
@@ -130,8 +64,7 @@
 T1Z_DRV_OBJ_S := $(OBJ_)type1z.$O
 
 
-
-# driver root source file(s)
+# driver source file(s)
 #
 T1Z_DRV_SRC_M := $(T1Z_DRV_SRC) $(T1SHARED_SRC)
 T1Z_DRV_SRC_S := $(T1Z_DIR_)type1z.c
@@ -145,7 +78,6 @@
 	$(T1Z_COMPILE) $T$@ $(T1Z_DRV_SRC_S)
 
 
-
 # driver - multiple objects
 #
 #   All objects are recompiled if any of the header files is changed
@@ -162,4 +94,4 @@
 DRV_OBJS_S += $(T1Z_DRV_OBJ_S)
 DRV_OBJS_M += $(T1Z_DRV_OBJ_M)
 
-# END
+# EOF