* include/freetype/config/ftheader.h, include/freetype/ftsnames.h:
renamed "ftnames.h" to "ftsnames.h", and FT_NAMES_H to FT_SFNT_NAMES_H
* docs/docmaker.py: added generation of INDEX link in table of contents
diff --git a/ChangeLog b/ChangeLog
index 79592d9..a960b28 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2001-03-20 David Turner <david.turner@freetype.org>
+ * include/freetype/config/ftheader.h, include/freetype/ftsnames.h:
+ renamed "ftnames.h" to "ftsnames.h", and FT_NAMES_H to FT_SFNT_NAMES_H
+
+ * docs/docmaker.py: added generation of INDEX link in table of contents
+
+ * INSTALL, docs/BUILD: updated documentation to indicate that the
+ compilation process has changed slightly (no more 'src' required in
+ the include path).
+
* builds/*/*-def.mk: changed the objects directory from "obj" to "objs"
* include/freetype/config/ftheader.h: removed obsolete macros like
diff --git a/INSTALL b/INSTALL
index d89010a..3365022 100644
--- a/INSTALL
+++ b/INSTALL
@@ -7,7 +7,7 @@
You need to have GNU Make (version 3.78.1 or newer) installed on
your system to compile the library from the command line. This will
- _not_ work with other make tools (including BSD make)!
+ _NOT_ work with other make tools (including BSD make)!
[Well, this is not really correct. Recently, a perl implementation
of make called `makepp' has appeared which can also build FreeType 2
@@ -60,10 +60,14 @@
II. In your own environment (IDE)
---------------------------------
- You need to add the directories "freetype2/include" and
- "freetype2/src" to your include path when compiling the library.
+ You need to add the directories "freetype2/include" to
+ your include path when compiling the library.
- Compile each library component through the following files:
+ FreeType 2 is made of several components, each one of them is located
+ in a subdirectory of "freetype2/src". For example, 'freetype2/src/truetype/'
+ contains the TrueType font driver.
+
+ DO NOT COMPILE ALL C FILES !! Rather, compile the following ones:
-- base components (required)
diff --git a/docs/BUILD b/docs/BUILD
index e7716a8..4223252 100644
--- a/docs/BUILD
+++ b/docs/BUILD
@@ -13,6 +13,9 @@
I. QUICK COMMAND-LINE GUIDE
---------------------------
+ THE FOLLOWING WILL ONLY WORK WITH GNU MAKE, IT WILL FAIL MISERABLY
+ WITH OTHER MAKE TOOLS, FOR EXAMPLE "BSD MAKE"..
+
Install GNU Make (version 3.78.1 or newer), then try the following
on Unix or any system with gcc:
@@ -59,6 +62,9 @@
Make -- trying to build the library with any other Make tool will
*fail*.
+ NEARLY ALL OTHER MAKE TOOLS WILL FAIL, INCLUDING "BSD MAKE", SO REALLY
+ INSTALL A RECENT VERSION OF GNU MAKE ON YOUR SYSTEM !!
+
Make sure that you are invoking GNU Make from the command line, by
typing something like:
@@ -66,7 +72,7 @@
to display its version number.
- Version 3.78.1 or newer is needed.
+ VERSION 3.78.1 OR NEWER IS NEEDED !!.
b. Invoke `make'
@@ -177,12 +183,12 @@
However, you can create a single object file by compiling the file
`src/base/ftbase.c', which basically contains
- #include <base/ftcalc.c>
- #include <base/ftobjs.c>
- #include <base/ftstream.c>
- #include <base/ftlist.c>
- #include <base/ftoutln.c>
- #include <base/ftextend.c>
+ #include "ftcalc.c"
+ #include "ftobjs.c"
+ #include "ftstream.c"
+ #include "ftlist.c"
+ #include "ftoutln.c"
+ #include "ftextend.c"
Similarly, each component has a single `englobing' C file to compile
it as a stand-alone object:
@@ -202,7 +208,7 @@
src/truetype/truetype.c - the TrueType font driver
src/type1/type1.c - the Type 1 font driver
- The last module of FreeType 2, winfonts (implementing support for
+ The last module of FreeType 2, "winfonts" (implementing support for
Windows FNT format), is a single file.
To compile one component, do the following:
@@ -210,21 +216,23 @@
- Add the top-level `include' directory to your compilation
include path
- - Add the `src' directory to your compilation include path.
+ - Add the `src/<component>' directory to your compilation include path,
+ or simply 'cd' to the component's source directory
- Compile the component `source' file (see list below); you don't
- need to be in the component's directory.
+ need to be in the component's directory if you added `src/<component>'
+ to your include path..
For example, the following line can be used to compile the truetype
driver on Unix:
cd freetype2/
- cc -c -Iinclude -Isrc src/truetype/truetype.c
+ cc -c -Iinclude -Isrc/truetype src/truetype/truetype.c
Alternatively:
cd freetype2/src/truetype
- cc -c -I../../include -I.. truetype.c
+ cc -c -I../../include truetype.c
Finally, FreeType 2 contains some other components:
@@ -244,13 +252,9 @@
IV. Support for flat-directory compilation
------------------------------------------
- It is now possible to put all FreeType 2 source files into a single
+ It is possible to put all FreeType 2 source files into a single
directory, with the exception of the `include' hierarchy.
- Note that you still need to only compile the `wrapper' sources
- described above. Define the `FT_FLAT_COMPILE' macro when
- compiling. Here an example:
-
1. Copy all files in current directory:
cp freetype2/src/base/*.[hc] .
@@ -260,11 +264,13 @@
2. Compile sources:
- cc -c -DFT_FLAT_COMPILE -Ifreetype2/include ftsystem.c
- cc -c -DFT_FLAT_COMPILE -Ifreetype2/include ftinit.c
- cc -c -DFT_FLAT_COMPILE -Ifreetype2/include ftdebug.c
- cc -c -DFT_FLAT_COMPILE -Ifreetype2/include ftbase.c
+ cc -c -Ifreetype2/include ftsystem.c
+ cc -c -Ifreetype2/include ftinit.c
+ cc -c -Ifreetype2/include ftdebug.c
+ cc -c -Ifreetype2/include ftbase.c
etc.
+ You don't need to define the FT_FLAT_COMPILATION macro (as this was required
+ in previous releases of FreeType 2)
End of file
diff --git a/docs/docmaker.py b/docs/docmaker.py
index 2d4e649..43786e8 100644
--- a/docs/docmaker.py
+++ b/docs/docmaker.py
@@ -901,7 +901,7 @@
# provide a new one.
#
if abstract:
- print_error( "duplicate section definition for " +
+ section.block.print_error( "duplicate section definition for " +
"'" + name + "'\n" +
"previous definition in " +
"'" + section.block.location() + "'\n" +
@@ -1192,6 +1192,9 @@
print chapter_footer
+ # index
+ print chapter_header + '<a href="' + self.section_list.index_filename + '">Index</a>' + chapter_footer
+
print html_footer
sys.stdout = old_stdout
diff --git a/include/freetype/config/ftheader.h b/include/freetype/config/ftheader.h
index 51157d0..d3f6a56 100644
--- a/include/freetype/config/ftheader.h
+++ b/include/freetype/config/ftheader.h
@@ -245,7 +245,7 @@
/*************************************************************************
*
- * @macro: FT_TRUETYPE_NAMES_H
+ * @macro: FT_TRUETYPE_IDS_H
*
* @description:
* a macro used in #include statements to name the file containing
@@ -254,7 +254,7 @@
* constant macro definitions, taken from the TrueType and OpenType
* specs..
*/
-#define FT_TRUETYPE_NAMES_H <freetype/ttnameid.h>
+#define FT_TRUETYPE_IDS_H <freetype/ttnameid.h>
/*************************************************************************
*
@@ -362,14 +362,14 @@
/*************************************************************************
*
- * @macro: FT_NAMES_H
+ * @macro: FT_SFNT_NAMES_H
*
* @description:
* a macro used in #include statements to name the file containing
* the optional FreeType 2 API used to access embedded "name" strings
* in SFNT-based font formats (i.e. TrueType and OpenType)
*/
-#define FT_NAMES_H <freetype/ftnames.h>
+#define FT_SFNT_NAMES_H <freetype/ftnames.h>
/* */
diff --git a/include/freetype/ftchapters.h b/include/freetype/ftchapters.h
index fcca1da..af4ac1a 100644
--- a/include/freetype/ftchapters.h
+++ b/include/freetype/ftchapters.h
@@ -51,3 +51,4 @@
/* raster */
/* */
/***************************************************************************/
+
diff --git a/include/freetype/ftmm.h b/include/freetype/ftmm.h
index 33d1a0a..137ce84 100644
--- a/include/freetype/ftmm.h
+++ b/include/freetype/ftmm.h
@@ -98,6 +98,7 @@
} FT_Multi_Master;
+ /* */
typedef FT_Error (*FT_Get_MM_Func)( FT_Face face,
FT_Multi_Master* master );
diff --git a/include/freetype/ftnames.h b/include/freetype/ftsnames.h
similarity index 92%
rename from include/freetype/ftnames.h
rename to include/freetype/ftsnames.h
index 61ffd85..b81b314 100644
--- a/include/freetype/ftnames.h
+++ b/include/freetype/ftsnames.h
@@ -1,6 +1,6 @@
/***************************************************************************/
/* */
-/* ftnames.h */
+/* ftsnames.h */
/* */
/* Simple interface to access SFNT name tables (which are used */
/* to hold font names, copyright info, notices, etc.) (specification). */
@@ -19,8 +19,8 @@
/***************************************************************************/
-#ifndef __FTNAMES_H__
-#define __FTNAMES_H__
+#ifndef __FT_SFNT_NAMES_H__
+#define __FT_SFNT_NAMES_H__
#include <ft2build.h>
@@ -71,9 +71,13 @@
/* */
/* name_id :: An identifier for `string'. */
/* */
- /* string :: The `name' string. Note that this string is in */
- /* Pascal convention, i.e., the string hasn't a final */
- /* null byte. */
+ /* string :: The `name' string. Note that its format differs */
+ /* depending on the (platform,encoding) pair. It can */
+ /* be a Pascal String, a UTF-16 one, etc.. */
+ /* */
+ /* Generally speaking, the string is not */
+ /* zero-terminated. Please refer to the TrueType */
+ /* specification for details.. */
/* */
/* string_len :: The length of `string' in bytes. */
/* */
@@ -149,7 +153,7 @@
FT_END_HEADER
-#endif /* __FTNAMES_H__ */
+#endif /* __FT_SFNT_NAMES_H__ */
/* END */
diff --git a/src/base/ftnames.c b/src/base/ftnames.c
index d6ae8b9..8ef57d1 100644
--- a/src/base/ftnames.c
+++ b/src/base/ftnames.c
@@ -20,7 +20,7 @@
#include <ft2build.h>
-#include FT_NAMES_H
+#include FT_SFNT_NAMES_H
#include FT_INTERNAL_TRUETYPE_TYPES_H
diff --git a/src/cff/cffdrivr.c b/src/cff/cffdrivr.c
index f195c3d..a3b2284 100644
--- a/src/cff/cffdrivr.c
+++ b/src/cff/cffdrivr.c
@@ -21,7 +21,7 @@
#include FT_INTERNAL_DEBUG_H
#include FT_INTERNAL_STREAM_H
#include FT_INTERNAL_SFNT_H
-#include FT_TRUETYPE_NAMES_H
+#include FT_TRUETYPE_IDS_H
#include FT_INTERNAL_CFF_ERRORS_H
#include "cffdrivr.h"
diff --git a/src/cff/cffobjs.c b/src/cff/cffobjs.c
index 882d5e0..2fac114 100644
--- a/src/cff/cffobjs.c
+++ b/src/cff/cffobjs.c
@@ -21,7 +21,7 @@
#include FT_INTERNAL_CALC_H
#include FT_INTERNAL_STREAM_H
#include FT_ERRORS_H
-#include FT_TRUETYPE_NAMES_H
+#include FT_TRUETYPE_IDS_H
#include FT_TRUETYPE_TAGS_H
#include FT_INTERNAL_SFNT_H
#include FT_INTERNAL_POSTSCRIPT_NAMES_H
diff --git a/src/sfnt/sfobjs.c b/src/sfnt/sfobjs.c
index 894ed52..30f1991 100644
--- a/src/sfnt/sfobjs.c
+++ b/src/sfnt/sfobjs.c
@@ -21,7 +21,7 @@
#include "ttload.h"
#include FT_INTERNAL_SFNT_H
#include FT_INTERNAL_POSTSCRIPT_NAMES_H
-#include FT_TRUETYPE_NAMES_H
+#include FT_TRUETYPE_IDS_H
#include FT_TRUETYPE_TAGS_H
#include FT_INTERNAL_TRUETYPE_ERRORS_H
diff --git a/src/truetype/ttdriver.c b/src/truetype/ttdriver.c
index 9f23e36..d21d02f 100644
--- a/src/truetype/ttdriver.c
+++ b/src/truetype/ttdriver.c
@@ -20,7 +20,7 @@
#include FT_INTERNAL_DEBUG_H
#include FT_INTERNAL_STREAM_H
#include FT_INTERNAL_SFNT_H
-#include FT_TRUETYPE_NAMES_H
+#include FT_TRUETYPE_IDS_H
#include "ttdriver.h"
#include "ttgload.h"
diff --git a/src/truetype/ttobjs.c b/src/truetype/ttobjs.c
index e2df8d4..0b1855e 100644
--- a/src/truetype/ttobjs.c
+++ b/src/truetype/ttobjs.c
@@ -20,7 +20,7 @@
#include FT_INTERNAL_DEBUG_H
#include FT_INTERNAL_CALC_H
#include FT_INTERNAL_STREAM_H
-#include FT_TRUETYPE_NAMES_H
+#include FT_TRUETYPE_IDS_H
#include FT_TRUETYPE_TAGS_H
#include FT_INTERNAL_SFNT_H
#include FT_INTERNAL_POSTSCRIPT_NAMES_H