parent
39c55c2f8c
commit
79edf077a2
2 changed files with 99 additions and 135 deletions
@ -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 |
@ -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 */ |
Loading…
Reference in new issue