Delete Jamfile.in, add include/freetype/ftlzw.h.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246
diff --git a/Jamfile.in b/Jamfile.in
deleted file mode 100644
index c933cd9..0000000
--- a/Jamfile.in
+++ /dev/null
@@ -1,135 +0,0 @@
-# FreeType 2 top Jamfile (c) 2001, 2002, 2003 David Turner
-#
-
-# The HDRMACRO is already defined in FTJam and is used to add
-# the content of certain macros to the list of included header
-# files.
-#
-# We can compile FreeType 2 with classic Jam however thanks to
-# the following code
-#
-if ! $(JAM_TOOLSET)
-{
- rule HDRMACRO
- {
- # nothing
- }
-}
-
-
-# We need to invoke a SubDir rule if the FT2 source directory top is not the
-# current directory. This allows us to build FreeType 2 as part of a larger
-# project easily.
-#
-if $(FT2_TOP) != $(DOT)
-{
- SubDir FT2_TOP ;
-}
-
-
-# The following macros define the include directory, the source directory,
-# and the final library name (without library extensions). They can be
-# replaced by other definitions when the library is compiled as part of
-# a larger project.
-#
-
-# Name of FreeType include directory during compilation.
-# This is relative to FT2_TOP.
-#
-FT2_INCLUDE_DIR ?= include ;
-
-# Name of FreeType source directory during compilation.
-# This is relative to FT2_TOP.
-#
-FT2_SRC_DIR ?= src ;
-
-# Name of final library, without extension.
-#
-FT2_LIB ?= $(LIBPREFIX)freetype ;
-
-
-# Define FT2_BUILD_INCLUDE to point to your build-specific directory.
-# This is prepended to FT2_INCLUDE_DIR. It can be used to specify
-# the location of a custom <ft2build.h> which will point to custom
-# versions of "ftmodule.h" and "ftoption.h", for example.
-#
-FT2_BUILD_INCLUDE ?= ;
-
-# The list of modules to compile on any given build of the library.
-# By default, this will contain _all_ modules defined in FT2_SRC_DIR.
-#
-# IMPORTANT: You'll need to change the content of "ftmodule.h" as well
-# if you modify this list or provide your own.
-#
-FT2_COMPONENTS ?= gzip # support for gzip-compressed files
- autohint # auto-hinter
- base # base component (public APIs)
- bdf # BDF font driver
- cache # cache sub-system
- cff # CFF/CEF font driver
- cid # PostScript CID-keyed font driver
- pcf # PCF font driver
- pfr # PFR/TrueDoc font driver
- psaux # common PostScript routines module
- pshinter # PostScript hinter module
- psnames # PostScript names handling
- raster # monochrome rasterizer
- smooth # anti-aliased rasterizer
- sfnt # SFNT-based format support routines
- truetype # TrueType font driver
- type1 # PostScript Type 1 font driver
- type42 # PostScript Type 42 (embedded TrueType) driver
- winfonts # Windows FON/FNT font driver
- ;
-
-
-# Don't touch.
-#
-FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
- [ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
-
-FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
-
-# Only used by FreeType developers.
-#
-if $(DEBUG_HINTER)
-{
- CCFLAGS += -DDEBUG_HINTER ;
-}
-
-
-# We need "freetype2/include" in the current include path in order to
-# compile any part of FreeType 2.
-#
-HDRS += $(FT2_INCLUDE) ;
-
-
-# Uncomment the following line if you want to build individual source files
-# for each FreeType 2 module. This is only useful during development, and
-# is better defined as an environment variable anyway!
-#
-# FT2_MULTI = true ;
-
-
-# The file <freetype/config/ftheader.h> is used to define macros that are
-# later used in #include statements. It needs to be parsed in order to
-# record these definitions.
-#
-HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
-HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
-
-
-# Now include the Jamfile in "freetype2/src", used to drive the compilation
-# of each FreeType 2 component and/or module.
-#
-SubInclude FT2_TOP $(FT2_SRC_DIR) ;
-
-
-# Test files (hinter debugging). Only used by FreeType developers.
-#
-if $(DEBUG_HINTER)
-{
- SubInclude FT2_TOP tests ;
-}
-
-# end of top Jamfile
diff --git a/include/freetype/ftlzw.h b/include/freetype/ftlzw.h
new file mode 100644
index 0000000..a0a042e
--- /dev/null
+++ b/include/freetype/ftlzw.h
@@ -0,0 +1,99 @@
+/***************************************************************************/
+/* */
+/* ftlzw.h */
+/* */
+/* LZW-compressed stream support. */
+/* */
+/* Copyright 2004 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 __FTLZW_H__
+#define __FTLZW_H__
+
+#include <ft2build.h>
+#include FT_FREETYPE_H
+
+#ifdef FREETYPE_H
+#error "freetype.h of FreeType 1 has been loaded!"
+#error "Please fix the directory search order for header files"
+#error "so that freetype.h of FreeType 2 is found first."
+#endif
+
+
+FT_BEGIN_HEADER
+
+ /*************************************************************************/
+ /* */
+ /* <Section> */
+ /* lzw */
+ /* */
+ /* <Title> */
+ /* LZW Streams */
+ /* */
+ /* <Abstract> */
+ /* Using LZW-compressed font files */
+ /* */
+ /* <Description> */
+ /* This section contains the declaration of LZW-specific functions. */
+ /* */
+ /*************************************************************************/
+
+ /************************************************************************
+ *
+ * @function:
+ * FT_Stream_OpenLZW
+ *
+ * @description:
+ * Open a new stream to parse LZW-compressed font files. This is
+ * mainly used to support the compressed *.pcf.Z fonts that come
+ * with XFree86.
+ *
+ * @input:
+ * stream :: The target embedding stream.
+ *
+ * source :: The source stream.
+ *
+ * @return:
+ * FreeType error code. 0 means success.
+ *
+ * @note:
+ * The source stream must be opened _before_ calling this function.
+ *
+ * Calling the internal function FT_Stream_Close on the new stream will
+ * *not* call FT_Stream_Close on the source stream. None of the stream
+ * objects will be released to the heap.
+ *
+ * The stream implementation is very basic and resets the decompression
+ * process each time seeking backwards is needed within the stream
+ *
+ * In certain builds of the library, LZW compression recognition is
+ * automatically handled when calling @FT_New_Face or @FT_Open_Face.
+ * This means that if no font driver is capable of handling the raw
+ * compressed file, the library will try to open a LZW stream from it
+ * and re-open the face with it.
+ *
+ * This function may return "FT_Err_Unimplemented" if your build of
+ * FreeType was not compiled with LZW support.
+ */
+ FT_EXPORT( FT_Error )
+ FT_Stream_OpenLZW( FT_Stream stream,
+ FT_Stream source );
+
+ /* */
+
+
+FT_END_HEADER
+
+#endif /* __FTLZW_H__ */
+
+
+/* END */