2001-05-11 David Turner * include/freetype/fttrigon.h, src/base/fttrigon.c, src/base/ftbase.c, src/base/Jamfile, src/base/rules.mk: adding trigonometric functions to the core API (using Cordic algorithms). * builds/top_level.mk, builds/newline, builds/detect.mk: fixed problems with Make on Windows 2000, as well as problems when "make distclean" is invoked on a non-Unix platform when there is no "config.mk" in the current directory.. * builds/freetype.mk: fixed a problem with object deletions under Dos/Windows/OS/2 systems * src/tools: added new directory to hold tools and test programs moved docmaker.py, glnames.py to it.. * src/tools/docmaker.py: improved the script to add the current date at the footer of each web page (useful to distinguish between versions) * Jamfile: fixed incorrect HDRMACRO argument. * TODO: removed the cubic arc bbox computation note, since it has been fixed recently.. * include/freetype/t1tables.h, include/freetype/config/ftoption.h: formatting 2001-05-10 David Turner * src/base/ftobjs.c (FT_Open_Face): fixed a small memory leaked which happened when trying to open 0-size font files !! 2001-05-09 Werner Lemberg * include/freetype/internal/ftcalc.h: Move declaration of FT_SqrtFixed() out of `#ifdef FT_LONG64'. 2001-05-08 Francesco Zappa Nardelli * src/pcfdriver.c (PCF_Load_Glyph): Fixed incorrect bitmap width computation. 2001-05-08 David Turner * docs/docmaker.py: Updated the DocMaker script in order to add command line options (--output,--prefix,--title), fix the erroneous line numbers reported during errors and warnings, and other formatting issues. * src/base/ftcalc.c (FT_MulDiv, FT_MulFix, FT_DivFix): Various tiny fixes related to rounding in 64-bits routines and pseudo-"optimizations". 2001-04-27 David Turner * src/base/ftbbox.c (BBox_Cubic_Check): Fixed the coefficient normalization algorithm (invalid final bit position, and invalid shift computation). 2001-04-26 Werner Lemberg * builds/unix/config.guess, builds/unix/config.sub: Updated to latest versions from gnu.org. * builds/compiler/gcc-dev.mk: Add `-Wno-long-long' flag. * include/freetype/internal/ftcalc.h: Define FT_SqrtFixed() uncoditionally. * src/base/ftbbox.c: Include FT_INTERNAL_CALC_H. Fix compiler warnings. * src/base/ftcalc.c: Fix (potential) compiler warnings. 2001-04-26 David Turner * src/base/ftcalc.c (FT_SqrtFixed): Corrected/optimized the 32-bit fixed-point square root computation. It is now used even with 64-bits integers, as it is _much_ faster than calling FT_Sqrt64 :-) * src/base/ftbbox.c: Removed invalid "#include FT_BEZIER_H" line. 2001-04-25 David Turner * src/base/ftbbox.c (BBox_Cubic_Check): Rewrote function to use direct computations with 16.16 values instead of sub-divisions. It is now slower, but proves a point :-) * src/raster/ftraster.c, src/smooth/ftgrays.c, src/base/ftbbox.c: Fixed the bezier stack depths. * src/base/ftcalc.c (FT_MulFix): Minor rounding fix. * builds/beos: Added BeOS-specific files to the old build system (no changes were necessary to support BeOS in the Jamfile though). 2001-04-20 David Turner * ftconfig.h, ftoption.h: Updated "ftconfig.h" to detect 64-bit int types on platforms where Autoconf is not available). Also removed FTCALC_USE_LONG_LONG and replaced it with FT_CONFIG_OPTION_FORCE_INT64. * builds/win32/freetype.dsp: Updated the Visual C++ project file. Doesn't create a DLL yet. * cffgload.c: Removed a compilation warning. 2001-04-10 Tom Kacvinsky * t1load.c (parse_charstrings): Changed code for placing .notdef glyph into slot 0 so that we no longer have a memory access violation. * t1load.h: In structure T1_Loader, added swap_table (of type PS_Table) to facilitate placing the .notdef glyph into slot 0. 2001-04-10 Francesco Zappa Nardelli * src/pcf/pcfdriver.c (PCF_Get_Char_Index): Fix return value. 2001-04-09 Laurence Withers * builds/dos/detect.mk: Add support for bash. 2001-04-05 Werner Lemberg * builds/os2/*.mk: These files have been forgotten to update to the structure of similar makefiles. * builds/dos/*.mk: Ditto. * builds/ansi/*.mk: Ditto. * builds/win32/win32-def.mk (BUILD): Fix typo. * builds/compiler/*.mk (CLEAN_LIBRARY): Don't use NO_OUTPUT. This is already used in the link_*.mk files. 2001-04-03 Werner Lemberg * src/*/Jamfile: Slight changes to make files more cryptic. 2001-04-03 Werner Lemberg * Jamfile, src/Jamfile, src/*/Jamfile: Formatted. Slight changes to give files identical structure. 2001-04-02 Werner Lemberg * CHANGES: Reformatted, minor fixes. * TODO: Updated. * README: Formatting. * include/freetype/freetype.h: Formatting. * Jamfile: Fix typo. * src/cff/cffparse.c: Move error code #defines to... * include/freetype/internal/cfferrs.h: This file. * src/cff/cffdrivr.c, src/cff/cffobjs.c, src/cff/cffload.c: Replaced `FT_Err_*' with `CFF_Err_*'. * src/cid/cidparse.c: Replaced `FT_Err_*' with `T1_Err_*'. * src/psaux/psobjs.c, src/psaux/t1decode.c: Ditto. * src/sfnt/sfobcs.c, src/sfnt/ttload.c: Replaced `FT_Err_*' with `TT_Err_*'. * src/truetype/ttgload.c, src/truetype/ttobjs.c: Ditto. * src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c, src/type1/t1parse.c: Replaced `FT_Err_*' with `T1_Err_*'. * include/freetype/internal/cfferrs.h: Add `CFF_Err_Unknown_File_Format'. * include/freetype/internal/t1errors.h: Add `T1_Err_Unknown_File_Format'. * include/freetype/internal/tterrors.h: Add `TT_Err_Unknown_File_Format'. * src/cff/cffload.h: Add `cff_*_encoding' and `cff_*_charset' references. * src/psaux/psobjs.c: Include `FT_INTERNAL_TYPE1_ERRORS_H'. * src/cff/cffobjs.c (CFF_Init_Face, CFF_Done_Face): Use FT_LOCAL_DEF. * src/cid/cidobjs.c (CID_Done_Driver): Ditto. * src/trutype/ttobjs.c (TT_Init_Face, TT_Done_Face, TT_Init_Size): Ditto. * src/type1/t1objs.c (T1_Done_Driver): Ditto. * src/pcf/pcfdriver.c (PCF_Done_Face): Ditto. * src/pcf/pcf.h: Use FT_LOCAL for `PCF_Done_Face'. 2001-04-02 Tom Kacvinsky * src/sfnt/ttload.c (TT_Load_Metrics): Fix an improper pointer dereference. Submitted by Herbert Duerr 2001-03-26 Tom Kacvinsky * include/freetype/config/ftconfig.h: Changed hexadecimal constants to use suffix U to avoid problems with HP-UX's c89 compiler. Submitted by G.W. Lucas 2001-03-24 David Turner * Jamrules, Jamfile, src/Jamfile, src/*/Jamfile: Adding jamfiles to the source tree. See www.freetype.org/jam/index.html for details. * Version 2.0.2 released. ========================= 2001-03-20 Werner Lemberg * builds/win32/detekt.mk: Fix .PHONY target for Intel compiler. 2001-03-20 David Turner * 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 FT_SOURCE_FILE, etc. and added cache-specific macro definitions that were previously defined in . Added comments to be included in a new API Reference section. * src/*/*: Removed the use of FT_SOURCE_FILE, etc. Now, each component needs to add its own directory to the include path at compile time. Modified all "rules.mk" and "descrip.mms" accordingly. 2001-03-20 Werner Lemberg * builds/unix/configure.in: Add $ft_version. * builds/unix/freetype-config.in: Use it. * builds/unix/configure: Updated. 2001-03-19 Tom Kacvinsky * src/type1/t1load.c (parse_font_matrix): Assign the units per em value an unsigned short value, first by shifting right 16 bits, then by casting the results to FT_UShort. * src/cff/cffparse.c (cff_parse_font_bbox): Assign the units per em value an unsigned short value, first by shifting right 16 bits, then by casting the results to FT_UShort. 2001-03-17 David Turner * src/cid/cidobjs.c, src/cid/cidload.c, src/pcf/pcfread.c, src/type1/t1load.c, src/type1/t1objs.c: Added a few casts to remove compiler warnings in pedantic modes. * include/config/ft2build.h, include/config/ftheader.h: The file "ft2build.h" was renamed to "ftheader.h" to avoid conflicts with the top-level . * include/config/ftheader.h: Added new section describing the #include macros. 2001-03-17 Tom Kacvinsky * src/cff/cffparse.c (cff_parse_font_bbox): Obtain rounded FT_Fixed values for the bounding box numbers. * src/cff/cffobjs.c (CFF_Init_Face): When processing a CFF/CEF font, set `root->ascender' (`root->descender') to the integer part of `root->bbox.yMax' (`root->bbox.yMin', respectively). 2001-03-16 Tom Kacvinsky * src/cff/cffdrivr.c (get_cff_glyph_name): New function. Used in cff_get_interface to facilitate getting a glyph name for glyph index via FT_Get_Glyph_Name(). (cff_get_interface): Added support for getting a glyph name via the "glyph_name" module interface. Uses the new function get_cff_glyph_name(). Submitted by Sander van der Wal * src/cff/cffobjs.c (CFF_Init_Face): Logical or the face flags with FT_FACE_FLAG_GLYPH_NAMES only if FT_CONFIG_OPTION_NO_GLYPH_NAMES is not defined. This is to add support for getting a glyph name from a glyph index via FT_Get_Glyph_Name(). Submitted by Sander van der Wal * src/cff/cffgload.c (CFF_Parse_CharStrings): Added support for deprecated operator "dotsection". Submitted by Sander van der Wal 2001-03-12 Werner Lemberg * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix error messages. * INSTALL, docs/BUILD: We need GNU make 3.78.1 or newer. 2001-03-12 Tom Kacvinsky * include/freetype/internal/psaux.h: Changed the lenIV member of the T1_Decoder_ struct to be an FT_Int instead of an FT_UInt. * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Adjust for lenIV seed bytes at the start of a decrypted subroutine. * src/cid/cidload.c (cid_read_subrs): Decrypt subroutines only if lenIV >= 0. * src/cid/cidgload.c (cid_load_glyph): Decrypt charstrings only if lenIV >= 0. 2001-03-11 Werner Lemberg * TODO: Updated. * src/pcf/pcfread.c: Put READ_Fields() always in a conditional to avoid compiler warnings. 2001-03-10 Tom Kacvinsky * TODO: New file. * include/freetype/freetype.h: Added prototypes and notes for three new functions: FT_RoundFix, FT_CeilFix, and FT_FloorFix. * src/base/ftcalc.c (FT_RoundFix, FT_CeilFix, FT_FloorFix): Added implementation code. * src/cid/cidobjs.c (CID_Init_Face): Use calculated units_per_EM, and if that is not available, default to 1000 units per EM. Changed assignment code for ascender and descender values. * src/cid/cidload.c (parse_font_matrix): Added units_per_EM processing. (parse_font_bbox): Changed to use FT_Fixed number handling. * src/type1/t1objs.c (T1_Init_Face): Changed the assignment code for ascender, descender, and max_advance_width. * src/type1/t1load.c (parse_font_bbox): Changed to use FT_Fixed number handling. 2001-03-10 Henrik Grubbström * src/*/*.c: Added many casts to make code more 64bit-safe. 2001-03-07 Werner Lemberg * INSTALL, docs/BUILD: We need GNU make 3.78 or newer. 2001-03-07 Tom Kacvinsky * src/type1/t1objs.c (T1_Init_Face): Minor correction: We must wait until parse_font_bbox is changed before we use logical shift rights in the assignments of `root->ascender', `root->descender', and `root->max_advance_width'. (T1_Done_Face): Free `char_name' table to avoid a memory leak. Submitted by Sander van der Wal . 2001-03-05 Tom Kacvinsky * src/cff/cffgload.c (CFF_Load_Glyph): Set glyph control data to the the Type 2 glyph charstring (used by conversion programs). Submitted by Ha Shao . 2001-03-04 Antoine Leca * include/freetype/ttnameid.h: Correct a stupid typo which prevented correct compilation (TT_MS_LANGID_TIGRIGNA_ETHIOPIA appeared twice). 2001-03-04 Werner Lemberg * src/autohint/ahtypes.h (AH_Hinter): Add elements `disable_horz_edges', `disable_vert_edges'. * src/autohint/ahhint.c (ah_hint_edges_3, ah_hinter_hint_edges): Use them (and remove static variables with the same names). * src/pcf/pcfutil.c (BitOrderInvert): Add `const'. * docs/glnames.py: Updated to latest pstables.h changes. * builds/unix/detect.mk: Add test for Hurd. * builds/hurd/detect.mk: Removed. 2001-03-04 Sander van der Wal * src/psnames/pstables.h: Add more `const'. * src/pcf/pcfutil.c: Ditto. 2001-03-04 Werner Lemberg * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Fixing typo (FT_Glyph_Done -> FT_Done_Glyph). 2001-03-01 Antoine Leca * include/freetype/ttnameid.h: Added some new Microsoft language codes and LCIDs as found in Office Xp. 2001-02-28 David Turner * builds/hurd/detect.mk: New file. Added support to detect the GNU Hurd operating system as Unix-like. Fix submitted by Anthony Fok . * src/type1/t1gload.c (T1_Load_Glyph): Set glyph control data to the the Type 1 glyph charstring (used by conversion programs). Submitted by Ha Shao . 2001-02-22 David Turner * src/base/ftgrays.c (grays_sweep): The function didn't exit immediately if `num_cells' was 0 as it should. Thanks to Boris for finding this out. * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Fixed memory leak when bitmap rendering fails (thanks to Graham Asher). 2001-02-13 Werner Lemberg * docs/docmaker.py (DocSection::add_element): Use `self.print_error()'. * builds/unix/config.{guess,sub}: Updated (from ftp.gnu.org). 2001-02-13 David Turner * docs/docmaker.py, include/freetype/*.h: Updated the DocMaker script to support chapters and section block ordering. Updated the public header files accordingly. * src/base/ftglyph.c (FT_Glyph_Copy): Advance width and glyph format were not correctly copied. 2001-02-08 Tom Kacvinsky * src/cff/cffparse.c (cff_parse_font_matrix): Removed an unnecessary fprintf( stderr, ... ). 2001-02-07 Tom Kacvinsky * src/type1/t1objs.c (T1_Init_Face): Added code to get the units_per_EM from the value assigned in parse_font_matrix, if available. Default to 1000 if not available. * src/cff/cffparse.c (cff_parse_font_matrix): Added logic to get the units_per_EM from the FontMatrix. (cff_parse_fixed_thousand): New function. Gets a real number from the CFF font, but multiplies by 1000 (this is to avoid rounding errors when placing this real number into a 16.16 fixed number). (cff_parse_real): Added code so that the integer part is moved into the high sixteen bits of the 16.16 fixed number. * src/cff/cffobjs.c (CFF_Init_Face): Added logic to get the units per EM from the CFF dictionary, if available. * include/freetype/internal/cfftypes.h: In struct CFF_Font_Dict_, added a units_per_em member to facilitate passing of units_per_em from function cff_parse_font_matrix. * src/type1/t1load.c (is_alpha): Make `-' a legal alphanumeric character. This is so that font names with `-' are fully parsed, etc... 2001-02-02 Werner Lemberg * src/psaux/psobjs.c (shift_elements): Remove if clause (which is obsolete now). (reallocate_t1_table, PS_Table_Done): Replace REALLOC() with ALLOC() + MEM_Copy() to avoid a memory bug. 2001-02-01 David Turner * docs/docmaker.py: Improved the index sorting routine to place capital letters before small ones. Added the "" marker to section blocks in order to give the order of blocks. 2001-01-30 Antoine Leca * include/freetype/ttnameid.h: Latest updates to Microsoft language ID codes. 2001-01-24 Tom Kacvinsky * src/cff/t1load.c (parse_font_matrix): Added heuristic to get units_per_EM from the font matrix. (parse_dict): Deleted test to see whether the FontInfo keyword has been seen. Deletion of this test allows fonts without FontInfo dictionaries to be parsed by the Type 1 driver. (T1_Open_Face): Deleted empty subroutines array test to make sure fonts with no subroutines still are parsed. 2001-01-17 Francesco Zappa Nardelli * src/pcfread.c (pcf_get_properties, pcf_get_metrics, pcf_get_bitmaps): Fix compiler errors. 2001-01-11 David Turner * src/pcf/pcfread.c: Removed some compilation warnings related to comparison of signed vs. unsigned integers. * include/freetype/internal/ftdebug.h: Changed the debug trace constants from trace_t2xxxx to trace_cffxxxx to be able to compile the CFF driver in debug mode. 2001-01-11 Matthew Crosby * builds/unix/freetype-config.in: Fix problems with separate --prefix and --exec-prefix. 2001-01-11 David Turner * docs/docmaker.py: Added cross-references generation as well as more robust handling of pathname wildcard matching. 2001-01-10 Werner Lemberg * docs/docmaker.py: Minor improvements to reduce unwanted spaces and empty lines in output. 2001-01-09 David Turner * docs/docmaker.py: Improved script to generate table of contents and index pages. It also supports wildcards on non Unix systems. * include/freetype/*.h, include/freetype/cache/*.h: Updated comments to include section definitions/delimitations for the API Reference generator. * include/freetype/freetype.h: Moved declaration of `FT_Generic_Finalizer' and the `FT_Generic' structure to... * include/freetype/fttypes.h: here. 2001-01-04 Werner Lemberg * include/freetype/ttnameid.h: Updated Unicode code range comments. 2001-01-03 Tom Kacvinsky * src/cff/rules.mk: Use cffgload.{c,h} instead of t2gload.{c,h}. * include/freetype/internal/internal.h: Changed to use cfftypes.h (cfferrs.h) instead of t2types.h (t2errors.h, respectively). * include/freetype/internal/cfftypes.h: Merged in changes from t2types.h and made this the canonical `types' header for the CFF driver. * include/freetype/internal/t2types.h: This file was merged with cfftypes.h and is no longer necessary. * include/freetype/internal/t2errors.h: Renamed to cfferrs.h. * src/cff/cffobjs.c, src/cff/cffobjs.h, src/cff/cffparse.c, src/cff/cffdrivr.c, src/cff/cff.c, src/cff/cffload.c, src/cff/cffgload.c, src/cff/cffgload.h: Changed to use cffgload.{c,h} instead of t2gload.{c,h}. All occurences of t2_ (T2_) were replaced with cff_ (CFF_, respectively). * src/cff/t2gload.h: Renamed cffgload.h. * src/cff/t2gload.c: Renamed cffgload.c 2000-01-02 Jouk Jansen * builds/vms: Support files for VMS architecture added. * descrip.mms, src/*/descrip.mms: VMS makefiles added. * README.VMS: New file. 2000-01-01 Werner Lemberg * LICENSE.TXT: Added info about PCF driver license. 2001-01-01 Francesco Zappa Nardelli * src/pcf/*: New driver module for PCF font format (used in X Windows). * include/freetype/internal/ftdebug.h (FT_Trace): Added values for PCF driver. * include/freetype/internal/pcftypes.h: New file. * include/freetype/config/ftmodule.h: Added PCF driver module. 2001-01-01 Werner Lemberg * src/winfonts/winfnt.c (FNT_Get_Char_Index): Fix parameter type. 2000-12-31 Werner Lemberg * builds/modules.mk (clean_module_list): Fixed deletion of module file in case `make make_module_list' is called before `make setup'. 2000-12-30 Werner Lemberg * src/cff/cffload.c (CFF_Load_Charset): Improved error messages. (CFF_Load_Charset, CFF_Load_Encoding): Remove unnecessary variable definition. 2000-12-30 Tom Kacvinsky * include/freetype/internal/t2types.h, include/freetype/internal/cfftypes.h: Changed the structures for CFF_Encoding and CFF_Encoding for the new implementations of the charset and encoding parsers in the CFF driver. * src/cff/t2gload.c (t2_lookup_glyph_by_stdcharcode, t2_operator_seac): Added these functions for use in implementing the seac emulation provided by the Type 2 endchar operator. (T2_Parse_CharStrings): Added seac emulation for the endchar operator. * src/cff/cffload.c (CFF_Load_Encoding, CFF_Load_Charset, CFF_Done_Encoding, CFF_Done_Charset): Extended to load and parse the charset/encoding tables, and free the memory used by them when the CFF driver is finished with them. Added tables cff_isoadobe_charset cff_expert_charset cff_expertsubset_charset cff_standard_encoding cff_expert_encoding so that the encoding/charset parser can handle predefined encodings and charsets. 2000-12-24 Tom Kacvinsky * src/cff/t2gload.c (T2_Load_Glyph): Added code so that the font transform is applied. * src/cff/cffparse.c (cff_parse_font_matrix): Added code so that the font matrix numbers are scaled by 1/(matrix->yy). Also, the offset vector now contains integer values instead of 16.16 fixed numbers. 2000-12-22 Tom Kacvinsky * src/autohint/ahhint.c (ah_hinter_load_glyph): Removed unnecessary comments and commented-out code. 2000-12-21 David Turner * src/cid/cidafm.c, src/cid/cidafm.h: removed un-needed files, we'll work on supporting CID AFM files later I guess :-) 2000-12-21 Tom Kacvinsky * src/autohint/ahhint.c (ah_hinter_load, ah_hinter_load_glyph): Changed so that fonts with a non-standard FontMatrix render correctly. Previously, the first glyph rendered from such a font did not have the tranformation matrix applied. 2000-12-17 Werner Lemberg * *.mk: Added lots of `.PHONY' targets. 2000-12-17 Karsten Fleischer * *.mk: Implemented `platform' target to disable auto-detection. 2000-12-14 Werner Lemberg * docs/design/modules.html: Removed. Covered by design-*.html. * INSTALL: Added info about makepp. 2000-12-14 David Turner Added support for clipped direct rendering in the smooth renderer. This should not break binary compatibility of existing applications. * include/freetype/fttypes.h, include/freetype/ftimage.h: Move definition of the FT_BBox structure from the former to the latter. * include/freetype/ftimage.h: Add `ft_raster_flag_clip' value to FT_Raster_Flag enumeration. Add `clip_box' element to FT_Raster_Params structure. * src/smooth/ftgrays.c (grays_convert_glyph): Implement it. * INSTALL: Updated installation instructions on Win32, listing the new "make setup list" target used to list supported compilers/targets. * src/raster/ftraster.c (ft_black_render): Test for unsupported direct rendering before testing arguments. 2000-12-13 David Turner * include/freetype/config/ft2build.h, include/freetype/internal/internal.h: Fixed header inclusion macros to use direct definitions. This is the only way to do these things in a portable way :-( The rest of the code should follow shortly though everything compiles now. * builds/compiler/intelc.mk, builds/compiler/watcom.mk: New files. * builds/win32/detect.mk: Added support for the Intel C/C++ compiler, as well as _preliminary_ (read: doesn't work!) support for Watcom. Also added a new setup target. Type "make setup list" for a list of supported command-line compilers on Win32. * src/base/ftdebug.c: Added dummy symbol to avoid empty file if conditionals are off. 2000-12-13 Werner Lemberg * builds/unix/ftsystem.c: Fixed typos. Fixed inclusion of wrong ftconfig.h file. 2000-12-12 Werner Lemberg * include/freetype/config/ft2build.h (FT2_ROOT, FT2_CONFIG_ROOT): Removed. ANSI C doesn't (explicitly) allow macro expansion in arguments using `##'. (FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE): Use directory names directly. Make them configurable. Use `##' to strip leading and trailing spaces from arguments. * builds/unix/ft2unix.h: Adapted. * src/base/ftsystem.c (ft_alloc, ft_realloc, ft_free, ft_io_stream, ft_close_stream): Use FT_CALLBACK_DEF. * builds/unix/ftsystem.c: Use new header scheme. (FT_Done_Memory): Use free() from FT_Memory structure. * src/base/ftinit.c, src/base/ftmac.c: Header scheme fixes. 2000-12-11 Werner Lemberg * include/freetype/config/ft2build.h (FT2_CONFIG_ROOT, FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE, FT_SOURCE_FILE): Use `##' operator to be really ANSI C compliant. 2000-12-09 Werner Lemberg * builds/unix/detect.mk: Remove unused USE_CFLAGS variable. 2000-12-08 Werner Lemberg * */*.h: Changed body inclusion macro names to start and end with `__' (those which haven't converted yet). Fixed minor conversion issues. * src/winfonts/winfnt.c: Updated to new header inclusion scheme. * src/truetype/ttinterp.c: Remove unused CALC_Length() macro. 2000-12-07 David Turner * */*.[ch]: Changed source files to adhere to the new header inclusion scheme. Not completely tested but works for now here. * src/cff/t2driver.c: Renamed and updated to... * src/cff/cffdrivr.c: New file. * src/cff/t2driver.h: Renamed and updated to... * src/cff/cffdrivr.h: New file. * src/cff/t2load.c: Renamed and updated to... * src/cff/cffload.c: New file. * src/cff/t2load.h: Renamed and updated to... * src/cff/cffload.h: New file. * src/cff/t2objs.c: Renamed and updated to... * src/cff/cffobjs.c: New file. * src/cff/t2objs.h: Renamed and updated to... * src/cff/cffobjs.h: New file. * src/cff/t2parse.c: Renamed and updated to... * src/cff/cffparse.c: New file. * src/cff/t2parse.h: Renamed and updated to... * src/cff/cffparse.h: New file. * src/cff/t2tokens.h: Renamed and updated to... * src/cff/cfftoken.h: New file. * src/cff/cff.c, src/cff/rules.mk: Updated. 2000-12-06 David Turner * src/cache/ftlru.c (FT_Lru_Done): Fixed memory leak. 2000-12-06 Werner Lemberg * builds/module.mk: Replaced `xxx #' with `xxx$(space). * builds/os2/detekt.mk, builds/win32/detekt.mk: Moved comment to avoid trailing spaces in variable. * builds/freetype.mk: Use $(D) instead of $D to make statement more readable. * docs/docmaker.py: Formatting. 2000-12-05 David Turner * src/psaux/psauxmod.c: Fixed a broken inclusion of component header files (an FT_FLAT_COMPILE test was missing). * src/cache/ftcmanag.c (FTC_Manager_Done): Fixed a bug that caused an occasional crash when the function was called (due to a dangling pointer). * src/base/ftsystem.c (FT_Done_Memory): Fixed an obvious bug: The ANSI "free()" function was called instead of "memory->free()". * docs/docmaker.py: Added section filtering, multi-page generation (index page generation is still missing though). 2000-12-04 David Turner * builds/unix/install.mk, builds/unix/ft2unix.h: The file "ft2unix.h" is now installed as for Unix systems. Note that we still use the "freetype2/freetype" installation path for now. * */*.[ch]: Now using as the default build and setup configuration file in all public headers. Internal source files still need some changes though. * builds/devel/ft2build.h, builds/devel/ftoption.h: Created a new directory to hold all development options for both the Unix and Win32 developer builds. * builds/win32/detect.mk, builds/win32/w32-bccd.mk, builds/win32/w32-dev.mk: Changed the developer build targets to "devel-gcc" and "devel-bcc" in order to be able to develop with the Borland C++ compiler. 2000-12-01 David Turner * Version 2.0.1 released. ========================= * builds/unix/configure.in, builds/unix/configure, builds/cygwin/configure.in, builds/cygwin/configure: Setting "version_info" to 6:1:0 for the 2.0.1 release. * CHANGES: Added a summary of changes between 2.0.1 and 2.0. * builds/unix/ftconfig.in, builds/cygwin/ftconfig.in: Changes to allow compilation under Unix with the Unix-specific config files. 2000-12-01 Werner Lemberg * INSTALL: Revised. * builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk, builds/compiler/bcc.mk, builds/win32/w32-bcc.mk, builds/win32/w32-bccd.mk: Revised. * include/freetype/config/ftbuild.h, include/freetype/internal/internal.h: Revised. * include/freetype/ftimage.h: Updated to new header inclusion scheme. 2000-11-30 Werner Lemberg * builds/toplevel.mk (.PHONY): Adding `distclean'. * builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc', `setup'. 2000-11-30 David Turner * INSTALL: Slightly updated the quick starter documentation to include IDE compilation, prevent against BSD Make, and specify "make setup" instead of a single "make" for build configuration. * include/config/ftbuild.h, include/internal/internal.h: Added new configuration files used to determine the location of all public, configuration, and internal header files for FreeType 2. Modified all headers under "include/freetype" to reflect this change. Note that we still need to change the library source files themselves though. * builds/compiler/bcc.mk, builds/compiler/bcc-dev.mk, builds/win32/w32-bcc.mk, builds/win32/w32-bccd.mk, builds/win32/detect.mk: Added new files to support compilation with the free Borland C++ command-line compiler. Modified the detection rules to recognize the new "bcc32" target in "make setup bcc32". * src/sfnt/ttcmap.c, src/sfnt/ttpost.c, src/sfnt/ttsbit.c, src/truetype/ttobjs.c, src/truetype/ttgload.c, src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++ didn't really like. Basically, this compiler complains when FT_UInt is compared to FT_UShort (apparently, it promotes `UShort' to `Int' in these cases). 2000-11-30 Tom Kacvinsky * t2objs.c (T2_Init_Face): Added calculation of `face->height' for pure CFF fonts. * t1objs.c (T1_Init_Face): Fixed computation of `face->height'. 2000-11-29 David Turner * src/base/ftbbox.c (BBox_Conic_Check): Fixed a really stupid bug in the formula used to compute the conic Bézier extrema of non-monotonous arcs. 2000-11-29 Werner Lemberg * src/base/ftcalc.c (FT_SqrtFixed), src/base/ftobjs.c (FT_Set_Renderer): Use FT_EXPORT_DEF. * src/cache/ftcimage.c (FTC_Image_Cache_Lookup), src/cache/ftcmanag.c (FTC_Manager_Done, FTC_Manager_Reset, FTC_Manager_Lookup_Face, FTC_Manager_Lookup_Size, FTC_Manager_Register_Cache), src/cache/ftcsbits.c (FTC_SBit_Cache_Lookup): Ditto. * src/include/freetype/cache/ftcglyph.h (FTC_GlyphNode_Init), src/include/freetype/ftmac.h (FT_New_Face_From_FOND): Use FT_EXPORT. 2000-11-29 Werner Lemberg * src/sfnt/sfdriver.c: Include ttsbit.h and ttpost.h only conditionally. * src/truetype/ttdriver.c (Set_Char_Sizes, Set_Pixel_Sizes): Set `size->strike_index' only conditionally. * src/type1/t1driver.c, src/type1/t1objs.c: Include t1afm.h only conditionally. * src/winfonts/winfnt.h: Move all type definitions to... * src/include/freetype/internal/fnttypes.h: New file. * src/winfonts/winfnt.c: Use it. 2000-11-29 ??? ??? * include/freetype/internal/ftdebug.h: Replaced FT_CAT and FT_XCAT with a direct solution (which also satifies picky compilers). 2000-11-28 YAMANO-UCHI Hidetoshi * src/truetype/ttobjs.c (TT_Init_Size): Fix #ifdef's to work with disabled interpreter also. * src/base/ftnames.c (FT_Get_Sfnt_Name_Count): Fix incorrect parentheses. 2000-11-26 Tom Kacvinsky * src/cff/t2gload.c (T2_Parse_CharStrings): Added logic to glyph width setting code to take into account even/odd argument counts and glyph width operand before endchar/hmoveto/vmoveto. 2000-11-26 Werner Lemberg * builds/ansi/ansi.mk: Fix inclusion order of files. 2000-11-26 Keith Packard * src/type1/t1objs.c (T1_Init_Face): Compute style flags. 2000-11-26 Werner Lemberg * builds/compiler/ansi-cc.mk (CLEAN_LIBRARY): Fix rule and conditional. 2000-11-23 Werner Lemberg * src/type1/t1load.c (parse_subrs, parse_charstrings): Use decrypt function from PSAux module. * src/type1/t1parse.c (T1_Done_Parse): Renamed to... (T1_Finalize_Parser): New function (to avoid name clash with a function in the PSAux module). (T1_Decrypt): Removed since it is duplicated in the PSAux module. (T1_Get_Private_Dict): Added `psaux' as new parameter; use decrypt function from PSAux module. * src/type1/t1parse.h: Adapted. 2000-11-22 Tom Kacvinsky * src/cff/t2objs.c (T2_Init_Face): For pure CFF fonts, set `root->num_faces' to `cff->num_faces' and set `units_per_EM' to 1000. * src/cff/t2parse.c (parse_t2_real): Fixed real number parsing loop. * src/cff/t2load.c (T2_Get_String): Called T2_Get_Name with a sid that was off by one. 2000-11-16 David Turner * src/autohint/ahtypes.h (AH_Hinter): Added new fields to control auto-hinting of synthetic Type 1 fonts. * src/autohint/ahhint.c (ah_hinter_load, ah_hinter_load_glyph): Added auto-hinting support of synthetic Type 1 fonts. 2000-11-12 Tom Kacvinsky * src/sfnt/ttload.c (TT_LookUp_Table, TT_Load_Generic_Table): Change tracing output. * src/sfnt/sfobjs.c (SFNT_Load_Face): Set boolean variable `has-outline' to true only if the font has a `glyf' or `CFF ' table. 2000-11-11 Werner Lemberg * builds/win32/visualc/freetype.dsp: Fix raster1->raster and type1z->type1. 2000-11-11 Tom Kacvinsky * builds/unix/freetype-config.in, builds/cygwin/freetype-config.in: Added a --libtool option. When freetype-config --libtool is invoked, the absolute path to the libtool convenience library is returned. 2000-11-11 Werner Lemberg * builds/cygwin/cygwin-def.in: Same fix as previous. 2000-11-10 Tom Kacvinsky * builds/unix/unix-def.in: Add INSTALL_PROGRAM := @INSTALL_PROGRAM@ INSTALL_SCRIPT := @INSTALL_SCRIPT@ so that installation of freetype-config does not fail. 2000-11-10 Werner Lemberg * builds/cygwin/freetype-config.in, builds/unix/freetype-config.in: Move test down for empty --exec-prefix. Fix --version. * builds/cygwin/install.mk, builds/unix/install.mk: Use $(INSTALL_SCRIPT) for installation of freetype-config. * builds/cygwin/install.mk: Fix clean target names. 2000-11-09 David Turner * Version 2.0 released. ======================= Local Variables: version-control: never coding: latin-1 End: