Commit Graph

752 Commits

Author SHA1 Message Date
suzuki toshiya 2b29ed660a Ignore libpng-config under cross-building configuration,
because it will return the flags for the hosting environment.

* builds/unix/configure.raw: Ignore libpng-config when
`cross_compiling' == yes.
2013-07-30 13:55:29 +09:00
David Turner b28908860d Optimize FT_MulFix for x86_64 GCC builds.
This patch provides an optimized `FT_MulFix' implementation for
x86_64 machines when FreeType is built with GCC, or compatible
compilers like Clang.

Example:
  bin/ftbench -p -t 5 -s 14 -f 0008 Arial.ttf

Before:

  Load                       4.863 us/op
  Load_Advances (Normal)     4.816 us/op
  Load_Advances (Fast)       0.028 us/op
  Render                     2.753 us/op
  Get_Glyph                  0.463 us/op
  Get_CBox                   0.077 us/op
  Get_Char_Index             0.023 us/op
  Iterate CMap              13.898 us/op
  New_Face                  12.368 us/op
  Embolden                   0.028 us/op
  Get_BBox                   0.302 us/op

After:

  Load                       4.617 us/op
  Load_Advances (Normal)     4.645 us/op
  Load_Advances (Fast)       0.027 us/op
  Render                     2.789 us/op
  Get_Glyph                  0.460 us/op
  Get_CBox                   0.077 us/op
  Get_Char_Index             0.024 us/op
  Iterate CMap              13.403 us/op
  New_Face                  12.278 us/op
  Embolden                   0.028 us/op
  Get_BBox                   0.301 us/op

* builds/unix/ftconfig.in, include/freetype/config/ftconfig.h
(FT_MulFix_x86_64): New function.
2013-07-16 13:19:32 +02:00
David Turner a5f33eeb8a Speed up ARMv7 support.
When building for ARMv7 with thumb2 instructions, the optimized
`FT_MulFix_arm' assembly routine was not being used.

The reason for this is in the `ftconfig.h' header, namely:

- The assembly routine uses the `smull' instruction which is not
  available when generating Thumb-1 machine code.  It is available
  in Thumb-2 mode, though.

- The header was written a long time ago before Thumb-2 became
  widely popular (e.g. with Android).  So it simply doesn't use the
  assembly routine if the `__thumb__' built-in macro is defined.

- When compiling in Thumb-2 mode, the compiler will define both
  `__thumb__' and `__thumb2__'.

By checking for `(__thumb2__ || !__thumb__)', we ensure that the
assembly routine is only avoided when generating Thumb-1 code.

Given that this is performance-sensitive function, this improves
`ftbench' as follows on a Galaxy Nexus:

                           Before (us/op)   After (us/op)

  - loading Arial.ttf glyphs at 14 ppem [1]

      Load                   34.285          33.098

  - same operation with the light auto-hinter [2]

      Load                   31.317          29.590

  - same operation without hinting [3]

      Load                    6.143           5.376

  - loading Arial.ttf advances at 14 ppem [4]

      Load_Advances (normal) 34.216          33.016
      Load_Advances (fast)    0.176           0.176

  [1] ftbench -t 5 -p -s 14 -b a -f 0008 Arial.ttf
  [2] ftbench -t 5 -p -s 14 -b a -r 1 -f 0028 Arial.ttf
  [3] ftbench -t 5 -p -s 14 -b a -f 000a Arial.ttf
  [4] ftbench -t 5 -p -s 14 -b b -f 0008 Arial.ttf

* builds/unix/ftconfig.in, include/freetype/config/ftconfig.h
(FT_MULFIX_ASSEMBLER): Fix handling for ARMv7.
2013-07-16 13:19:32 +02:00
Werner Lemberg ffb8b473ea * builds/freetype.mk (dll): Remove target.
Problem reported by Jörg Günnewig <joerg.guennewig@googlemail.com>.
2013-06-25 09:09:30 +02:00
Werner Lemberg 609f0ca04f * builds/unix/install.mk (install): Don't create `cache' directory.
Found by Peter Breitenlohner <peb@mppmu.mpg.de>.
2013-06-19 14:41:47 +02:00
Werner Lemberg 25b7da5348 * Version 2.5.0 released.
=========================

Tag sources with `VER-2-5-0'.

* docs/VERSION.DLL: Update documentation and bump version number to
2.5.0.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.12/2.5.0/, s/2412/250/.

* include/freetype/freetype.h (FREETYPE_MINOR): Set to 5.
(FREETYPE_PATCH): Set to 0.

* builds/unix/configure.raw (version_info): Set to 16:2:10.

* src/base/ftobjs.c (FT_Open_Face): Pacify compiler.
* src/truetype/ttinterp.c (Ins_MSIRP, Ins_MIRP): Ditto.
2013-06-19 10:23:36 +02:00
Werner Lemberg badf317840 Next round of compiler fixes.
* builds/win32/ftdebug.c, builds/wince/ftdebug.c (ft_debug_init):
Add proper cast.

* include/freetype/internal/ftserv.h (FT_SERVICE_UNAVAILABLE): Fix
cast.
* include/freetype/internal/ftstream.h: Decorate stream and frame
macros with `FT_Long' and `FT_ULong' as appropriate.

* src/base/ftrfork.c (raccess_guess_darwin_hfsplus,
raccess_guess_darwin_newvfs): Use cast.

* src/bdf/bdflib.c (_bdf_set_default_spacing): Use cast.

* src/cache/ftcmanag.c (FTC_Manager_Check): Fix cast.
* src/cache/ftcmanag.h (FTC_ManagerRec): Ditto.

* src/cff/cf2arrst.c (cf2_arrstack_setNum_Elements): Use cast.
* src/cff/cf2ft.c (cf2_freeSeacComponent): Ditto.
* src/cff/cffobjs.c (remove_subset_prefix, remove_style): Ditto.

* src/cid/cidparse.c (cid_parser_new): Use cast.

* src/pcf/pcfdrivr.c (PCF_Glyph_Load): Use cast.

* src/psaux/psobjs.c (reallocate_t1_table): Fix argument type.

* src/raster/ftraster.c (ft_black_reset): Use cast.

* src/truetype/ttgxvar.c (FT_Stream_FTell): Use cast.
(ALL_POINTS): Fix cast.

* src/type1/t1driver.c (t1_ps_get_font_value): Add casts.
* src/type1/t1parse.c (T1_Get_Private_Dict): Add cast.
2013-06-06 09:16:38 +02:00
Werner Lemberg dc624ca4dc Apply fixes for cppcheck nitpicks.
http://cppcheck.sourceforge.net/

Note that the current version heavily chokes on FreeType, delivering
even wrong results.  I will report those issues to the cppcheck team
so that a newer version gives improved results hopefully.

*/* Improve variable scopes.
*/* Remove redundant initializations which get overwritten.

* src/base/ftmac.c ,builds/mac/ftmac.c (count_faces_scalable):
Remove unused variable.

* src/base/ftdbgmem.c (ft_mem_table_destroy): `table' can't be zero.

* src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt1_entry_validate):
Remove functionless code.

* src/tools/ftrandom.c (main): Fix memory leak.
2013-06-04 10:30:48 +02:00
Werner Lemberg f9cceeb4e3 Fix PNG library handling.
* builds/unix/configure.raw: Don't use LIBPNG_LIBS but
LIBPNG_LDFLAGS.
2013-06-02 23:38:13 +02:00
Behdad Esfahbod 760d342d37 Add support for color embedded bitmaps (eg. color emoji).
A new load flag, FT_LOAD_COLOR, makes FreeType load color
embedded-bitmaps, following this draft specification

  https://color-emoji.googlecode.com/git/specification/v1.html

which defines two new SFNT tables, `CBDT' and `CBLC' (named and
modeled after `EBDT' and `EBLC', respectively).  The color bitmaps
are stored in the new FT_PIXEL_MODE_BGRA format to represent BGRA
pre-multiplied sRGB images.  If PNG support is available, PNG color
images as defined in the same proposed specification are supported
also.

Note that color bitmaps are converted to grayscale if client didn't
ask for color.

* builds/unix/configure.raw: Search for libpng.
Add `--without-png' option.

* devel/ftoption.h, include/freetype/config/ftoption.h
(FT_CONFIG_OPTION_USE_PNG): New macro.

* include/freetype/freetype.h (FT_LOAD_COLOR): New load flag.

* include/freetype/ftimage.h (FT_Pixel_Mode): Add
`FT_PIXEL_MODE_BGRA'.

* include/freetype/tttags.h (TTAG_CBDT, TTAG_CBLC): New tags.

* src/base/ftbitmap.c (FT_Bitmap_Embolden): Updated.
(ft_gray_for_premultiplied_srgb_bgra): New function.
(FT_Bitmap_Convert): Handle FT_PIXEL_MODE_BGRA.

* src/sfnt/pngshim.c, src/sfnt/pngshim.h: New files.

* src/sfnt/sfnt.c: Include `pngshim.c'.

* src/sfnt/ttsbit.c: Include FT_BITMAP_H and `pngshim.h'
(tt_face_load_eblc): Load `CBLC'.
(tt_sbit_decoder_init): Load `CBDT'.
(tt_sbit_decoder_alloc_bitmap): Pass load flags to select between
color and grayscale bitmaps.
Set `num_grays'.  This is used by `ftview' to choose the blending
algorithm.
(tt_sbit_decoder_load_byte_aligned,
tt_sbit_decoder_load_bit_aligned, tt_sbit_decoder_load_compound,
tt_sbit_decoder_load_image): Pass load flag.
s/write/pwrite/.
Don't call `tt_sbit_decoder_alloc_bitmap'.
Updated.
(tt_sbit_decoder_load_png) [FT_CONFIG_OPTION_USE_PNG]: New function.
(tt_sbit_decoder_load_bitmap): Pass load flag.
Handle new glyph formats 17, 18, and 19.
Call `tt_sbit_decoder_alloc_bitmap'.
Flatten color bitmaps if necessary.
(tt_face_load_sbit_image): Updated.

* src/sfnt/rules.mk (SFNT_DRV_SRC): Add `pngshim.c'.

* docs/CHANGES: Updated.
2013-05-29 11:36:18 +02:00
Werner Lemberg fd66469eba Update more FT_Err_XXX macros using FT_ERR and FT_THROW;
* builds/amiga/src/base/ftsystem.c, builds/mac/ftmac.c,
builds/unix/ftsystem.c, builds/vms/ftsystem.c: Do it.
2013-05-17 17:40:27 +02:00
Brian Nixon 8d6025c8da Fix Savannah bug #38970.
* src/base/ftdebug.c, builds/win32/ftdebug.c,
builds/wince/ftdebug.c, builds/amiga/src/base/ftdebug.c
(ft_debug_init): Don't read past the environment variable FT2_DEBUG.
2013-05-13 09:06:42 +02:00
Werner Lemberg cbcf33d1d9 Introduce unsigned 64bit type (if available).
* include/freetype/config/ftconfig.h: Define FT_UINT64 if available.
[FT_LONG64]: Provide FT_UInt64.

* builds/unix/ftconfig.in: Synchronized.
2013-05-12 07:27:48 +02:00
Werner Lemberg cecf93ef90 * Version 2.4.12 released.
==========================

Tag sources with `VER-2-4-12'.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.12.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.11/2.4.12/, s/2411/2412/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 12.

* builds/unix/configure.raw (version_info): Set to 16:1:10.
2013-05-08 11:39:16 +02:00
Werner Lemberg 2656861118 Synchronize `ftconfig.h'.
* builds/unix/ftconfig.in: Updated.
2013-05-05 17:50:22 +02:00
Peter Breitenlohner 63463b93bc Respect CONFIG_SHELL from the environment.
Some large packages using FreeType have to use a broken (deficient)
/bin/sh.  The configure scripts (as generated by Autoconf) are
clever enough to find a better shell and put that one into the
environment variable CONFIG_SHELL.  If that environment variable is
already set the script skips the test and assumes to be already
running under a good shell.

* builds/unix/detect.mk: Honour CONFIG_SHELL.
* builds/unix/unix-def.in (SHELL): Define.
2013-03-21 19:58:40 +01:00
Werner Lemberg b114b7c01b Fix Savannah bug #38538.
* builds/amiga/src/base/ftdebug.c, builds/win32/ftdebug.c,
builds/wince/ftdebug.c (FT_Throw): Add function.
2013-03-17 22:42:07 +01:00
Werner Lemberg bcca86af30 Fix Savannah bug #38235.
* builds/unix/configure.raw: Don't generate `freetype-config' and
`freetype.pc'.

* builds/unix/unix-def.in (FT2_EXTRA_LIBS, LIBBZ2, LIBZ,
build_libtool_libs, ft_version): New variables to be substituted.
(freetype-config, freetype.pc): New rules to generate those files.

* builds/unix/freetype-config.in: Remove code for handling `rpath'.
The use of $rpath has been accidentally removed in a patch from
2009-12-22, and apparently noone has missed it since.
Use `%' instead of `@' as a variable substitution marker.
Use quotes.

* builds/unix/freetype.in: Use `%' instead of `@' as a variable
substitution marker.
Use quotes.
2013-02-08 12:49:41 +01:00
Werner Lemberg 3b1f206b04 Fix Savannah bug #38227.
* builds/unix/freetype-config.in: Set LC_ALL.
2013-02-01 23:45:04 +01:00
Werner Lemberg 4cd5fd463e Remove trailing whitespace. 2013-01-24 13:33:06 +01:00
Werner Lemberg c6a66b49e6 * Version 2.4.11 released.
==========================

Tag sources with `VER-2-4-11'.

* docs/CHANGES, docs/release: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.11.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.10/2.4.11/, s/2410/2411/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.

* builds/unix/configure.raw (version_info): Set to 16:0:10.

* builds/toplevel.mk (dist): Don't include `.mailmap'.
2012-12-20 08:31:56 +01:00
Werner Lemberg 7e8e1761df [configure] Preserve customized `ftoption.h'.
Problem reported by Del Merritt <del@alum.mit.edu>.

* builds/unix/configure.raw <cpp computation of bit length>: Don't
remove existing FreeType configuration files.
2012-11-30 13:45:47 +01:00
Gilles Espinasse be81ec22cc Remove useless `rm' detection.
`rm -f' is directly used in the `configure' script created by
autoconf, thus no availability test is necessary.

* builds/unix/configure.raw (RMF): Remove test.
* builds/unix/unix-def.in (DELETE): Updated.
2012-09-30 08:42:30 +02:00
Werner Lemberg ad866e2c9a Fix `checking if gcc static flag -static works' test.
On my linux build tree, I receive yes answer in in every package I
build except freetype for this test checking if gcc static flag
`-static' works

On freetype, no is received, unless bzip2 and zlib are disabled using

  ./configure --without-bzip2 --without-zlib

The reason is that bzip2 and zlib tests add `-lz' and `-lbz2' to
LDFLAGS and this broke static flag test.

* builds/unix/configure.raw: Update CFLAGS and LDFLAGS only after
LT_INIT has run.
2012-06-30 07:59:28 +02:00
Gilles Espinasse 34de9d2644 Fix CFLAGS and LDFLAGS share configure test.
* builds/unix/configure.raw: Fix typo.
2012-06-28 06:45:26 +02:00
Werner Lemberg 320613eeb8 * Version 2.4.10 released.
==========================

Tag sources with `VER-2-4-10'.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.10.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.9/2.4.10/, s/249/2410/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.

* builds/unix/configure.raw (version_info): Set to 15:0:9.
2012-06-15 06:45:12 +02:00
suzuki toshiya a03cb019aa * builds/exports.mk: Add CCexe_CFLAGS and CCexe_LDFLAGS.
to pass special compiler/linker flags under cross development.
Suggested by Savannah bug #36367.

ChangeLog on 2010-07-15 saying as they were removed was wrong
for the official trunk of FreeType2.  This commit is the first
introduction of them.
2012-06-14 17:56:01 +09:00
Werner Lemberg 5715ff4606 configure.raw: Doc improvement. 2012-05-29 13:57:12 +02:00
suzuki toshiya f0b194141d [configure] fix Savannah bug #35644.
* builds/unix/configure.raw: Check `-ansi' flag works even if gcc
is used.  Bionic libc headers for Android lose the consistency
when they are parsed with __STDC_VERSION__ older than 199901L or
__STRICT_ANSI__.
2012-03-21 15:42:14 +09:00
Werner Lemberg 50ed33e537 * Version 2.4.9 released.
=========================

Tag sources with `VER-2-4-9'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.9.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.8/2.4.9/, s/248/249/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 9.

* builds/unix/configure.raw (version_info): Set to 14:1:8.
2012-03-08 21:02:06 +01:00
Werner Lemberg 8c1724d675 [configure] Fix minor grammar nits. 2012-01-30 14:14:43 +01:00
suzuki toshiya 714ee56ab1 [mac] Unify DARWIN_NO_CARBON with FT_MACINTOSH.
Originally FT_MACINTOSH was a pure auto macro and DARWIN_NO_CARBON
was a configurable macro to disable Carbon-dependent code.  Because
now configure script sets DARWIN_NO_CARBON by default and disables
Darwin & Carbon-dependent codes, these macros can be unified.
FT_MACINTOSH (undefined by default) is kept and DARWIN_NO_CARBON
(defined by default) is removed, because DARWIN_NO_CARBON violates
FT_XXX naming convention of public macros, and a macro configured by
default is not portable for the building without configure (e.g.
make devel).

* builds/unix/configure.raw: Define FT_MACINTOSH if Carbon-based
old Mac font support is requested and Carbon is available.
* builds/unix/ftconfig.in: Undefine FT_MACINTOSH when the support
for Mac OS X without Carbon (e.g.  Mac OS X 10.4 for ppc64) is
requested.
* include/freetype/config/ftconfig.in: Ditto.
* builds/vms/ftconfig.h: Ditto.

* src/base/ftbase.h: Remove DARWIN_NO_CARBON.
* src/base/ftbase.c: Ditto.
* src/base/ftobjs.c: Ditto.
* src/base/ftrfork.c: Ditto.

* src/base/ftmac.c: Compile the body if FT_MACINTOSH is defined
(same with TT_USE_BYTECODE_INTERPRETER in ttinterp.c).
* builds/mac/ftmac.c: Ditto.

* builds/mac/FreeType.m68k_cfm.make.txt: Define FT_MACINTOSH.
* builds/mac/FreeType.m68k_far.make.txt: Ditto.
* builds/mac/FreeType.ppc_classic.make.txt: Ditto.
* builds/mac/FreeType.ppc_carbon.make.txt: Ditto.
2011-12-02 21:14:58 +09:00
suzuki toshiya 2968bd6098 Fix Savannah bug #34728 (`make devel' on Mac OS X).
* builds/toplevel.mk: Check `/dev/null' to identify the Unix-
like systems without `init' nor `hurd' (e.g. Mac OS X >= 10.4).
* builds/unix/detect.mk: Ditto.
2011-11-30 23:25:38 +09:00
Werner Lemberg 9d7f0957fb * Version 2.4.8 released.
=========================

Tag sources with `VER-2-4-8'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.8.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.7/2.4.8/, s/247/248/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 8.

* builds/unix/configure.raw (version_info): Set to 14:0:8.
2011-11-14 20:37:12 +01:00
Werner Lemberg 016eba976f * Version 2.4.7 released.
=========================

Tag sources with `VER-2-4-7'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.7.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.6/2.4.7/, s/246/247/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.

* builds/unix/configure.raw (version_info): Set to 13:2:7.
2011-10-18 13:34:32 +02:00
Werner Lemberg 34eca6ec63 Remove unused FT_ALIGNMENT macro.
* builds/unix/ftconfig.in, builds/vms/ftconfig.h,
include/freetype/config/ftconfig.h: Do it.
2011-09-17 09:46:46 +02:00
Werner Lemberg 29a7965fd1 * Version 2.4.6 released.
=========================

Tag sources with `VER-2-4-6'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.6.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.5/2.4.6/, s/245/246/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.

* builds/unix/configure.raw (version_info): Set to 13:1:7.
2011-07-29 06:23:27 +02:00
Werner Lemberg ee5d3b5947 * builds/toplevel.mk: We use git, not CVS, thus skip `.gitignore'. 2011-06-30 15:08:15 +02:00
Werner Lemberg da9dbf89c8 * Version 2.4.5 released.
=========================

Tag sources with `VER-2-4-5'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.5

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.4/2.4.5/, s/244/245/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.

* builds/unix/configure.raw (version_info): Set to 13:0:7.
2011-06-25 07:16:22 +02:00
Werner Lemberg fe0f16d295 Fix comments. 2011-06-01 10:36:04 +02:00
suzuki toshiya c32d54c949 [mac] Conditionalize the inclusion of "AvailabilityMacros.h".
The native SDK on earliest Mac OS X (10.0-10.1) did not have
"AvailabilityMacros.h".  To prevent the inclusion of missing
header file, ECANCELED (introduced in 10.2) in POSIX header
file <errno.h> is checked to detect the system version.

* include/freetype/config/ftconfig.h: Conditionalize the
inclusion of "AvailabilityMacros.h".
* builds/unix/ftconfig.in: Ditto.
* builds/vms/ftconfig.h: Ditto.
2011-05-29 01:33:34 +09:00
suzuki toshiya ebd14a599d Automake component `builds/unix/install-sh' is removed.
* builds/unix/install-sh: Removed.  It is not needed to
include repository, because autogen.sh installs it.
* builds/unix/.gitignore: Register install-sh.
2011-05-16 12:47:25 +09:00
Werner Lemberg 3cf3b9e32c Minor formatting. 2011-05-01 12:30:37 +02:00
suzuki toshiya 7c6da3d73a Add new option `--disable-mmap' to configure script.
* builds/unix/configure.raw: New option `--disable-mmap'
is added.  It is for the developers to simulate the systems
without mmap() (like 4.3BSD, minix etc) on POSIX systems.
2011-05-01 19:06:24 +09:00
Behdad Esfahbod 8c82ec5b17 Always ignore global advance.
This makes FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH redundant,
deprecated, and ignored.  The new behavior is what every major user
of FreeType has been requesting.  Global advance is broken in many
CJK fonts.  Just ignoring it by default makes most sense.

* src/truetype/ttdriver.c (tt_get_advances),
src/truetype/ttgload.c (TT_Get_HMetrics, TT_Get_VMetrics,
tt_get_metrics, compute_glyph_metrics, TT_Load_Glyph),
src/truetype/ttgload.h: Implement it.

* docs/CHANGES: Updated.
2011-04-21 08:21:37 +02:00
Werner Lemberg 149f5438c4 Synchronize config files.
* builds/unix/ftconfig.in: Copy missing assembler routines from
include/freetype/config/ftconfig.h.
2011-04-18 15:09:38 +02:00
Werner Lemberg dd6c38fac7 Convert to CRLF. 2011-02-14 08:37:30 +01:00
Bradley Grainger d2731e104c Add project and solution files in Visual Studio 2010 format.
* builds/win32/.gitignore: Ignore user-specific cache files.
* builds/win32/vc2010/: Add VS2010 project & solution files, created
by upgrading builds/win32/vc2008/freetype.vcproj.
* objs/.gitignore: Ignore Visual Studio output files.
2011-02-14 08:32:24 +01:00
suzuki toshiya a2ef6647ae Copy -mcpu=* & -march=* options from CFLAGS to LDFLAGS.
* builds/unix/configure.raw: Consider recent gcc-standard
flags to specify architecture in CFLAGS & LDFLAGS
harmonization.  Requested by Savannah bug #32114, to
support multilib feature of BuildRoot SDK correctly.
2011-01-15 13:33:28 +09:00
suzuki toshiya c68a82d8fc Fix off-by-one bug in CFLAGS & LDFLAGS harmonizer.
* builds/unix/configure.raw: Some important options that
included in CFLAGS but not in LDFLAGS are copied to
LDFLAGS, but the last option in CFLAGS was not checked.
2011-01-15 13:21:32 +09:00
suzuki toshiya 55e6a6fadf Update Symbian project files to include Bzip2 support.
Currently, it provides FT_Stream_OpenBzip2() that returns
unimplemented error always, to prevent unresolved symbol
error for the applications designed for Unix systems.

* builds/symbian/bld.inf: Include ftbzip2.h.
* builds/symbian/freetype.mmp: Include ftbzip2.c.
2011-01-06 02:56:33 +09:00
suzuki toshiya 017b4d5e7f Update classic MacOS makefiles to include Bzip2 support.
Currently, it provides FT_Stream_OpenBzip2() that returns
unimplemented error always, to prevent unresolved symbol
error for the applications designed for Unix systems.

* builds/mac/FreeType.m68k_cfm.make.txt: Include ftbzip2.c.o.
* builds/mac/FreeType.m68k_far.make.txt: Ditto.
* builds/mac/FreeType.ppc_carbon.make.txt: Include ftbzip2.c.x.
* builds/mac/FreeType.ppc_classic.make.txt: Ditto.
2011-01-06 02:49:52 +09:00
suzuki toshiya be683e7597 Update Amiga makefiles to include Bzip2 support.
Currently, it provides FT_Stream_OpenBzip2() that returns
unimplemented error always, to prevent unresolved symbol
error for the applications designed for Unix systems.

* builds/amiga/makefile: Include bzip2.ppc.o built from ftbzip2.c.
* builds/amiga/makefile.os4: Include bzip2.o built from ftbzip2.c.
* builds/amiga/smakefile: Ditto.
2011-01-06 02:44:53 +09:00
suzuki toshiya 41d7e4a6ed Update pkg-config tools to reflect Bzip2 support.
* builds/unix/freetype-config.in: Include `-lbz2' to
--libs output, if built with Bzip2 support.
* builds/unix/freetype2.in: Ditto.
2011-01-06 02:36:50 +09:00
suzuki toshiya 1909959973 * builds/unix/configure.raw: Remove `SYSTEM_BZ2LIB' macro.
SYSTEM_ZLIB is used to switch the builtin zlib source
or system zlib source out of FreeType2.  But ftbzip2
module has no builtin bzip2 library and always requires
system bzip2 library.  Thus SYSTEM_BZ2LIB is always yes,
it is not used.
2011-01-06 02:09:23 +09:00
Joel Klinghed ed913c2151 Add bzip2 compression support to handle *.pcf.bz2 files.
* builds/unix/configure.raw: Test for libbz2 library.

* devel/ftoption.h, include/freetype/config/ftoption.h
(FT_CONFIG_OPTION_USE_BZIP2): Define.
* include/freetype/config/ftheader.h (FT_BZIP2_H): Define.

* include/freetype/ftbzip2.h: New file.

* src/bzip2/*: New files.

* src/pcf/pcf.h: s/gzip_/comp_/.
* src/pcf/pcfdrvr.c: Include FT_BZIP2_H.
s/gzip_/comp_/.
(PCF_Face_Init): Handle bzip2 compressed files.

* docs/formats.txt, modules.cfg: Updated.
2010-12-31 16:59:33 +01:00
Werner Lemberg 9ec31cea16 * Version 2.4.4 released.
=========================

Tag sources with `VER-2-4-4'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.4

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.3/2.4.4/, s/243/244/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 4.

* builds/unix/configure.raw (version_info): Set to 12:2:6.
2010-11-28 16:07:49 +01:00
Werner Lemberg d1bf3e33f7 Copyright years. 2010-10-15 20:47:40 +02:00
suzuki toshiya 4b71871418 Prevent to open a FT_Stream for zero-sized file on non-Unix.
builds/unix/ftsystem.c prevents to open an useless stream from
zero-sized file and returns FT_Err_Cannot_Open_Stream, but the
stream drivers for ANSI C, Amiga and VMS return useless streams.
For cross-platform consistency, all stream drivers should act
same.

* src/base/ftsystem.c (FT_Stream_Open): If the size of the opened
file is zero, FT_Err_Cannot_Open_Stream is returned.
* builds/amiga/src/base/ftsystem.c (FT_Stream_Open): Ditto.
* src/vms/ftsystem.c (FT_Stream_Open): Ditto.
2010-10-13 16:21:59 +09:00
Werner Lemberg a5a32c15c5 * Version 2.4.3 released.
=========================

Tag sources with `VER-2-4-3'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.3

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.2/2.4.3/, s/242/243/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 3.

* builds/unix/configure.raw (version_info): Set to 12:1:6.
2010-10-03 20:36:03 +02:00
suzuki toshiya fd0cdb7b9e Ignore the environmental setting of LIBTOOL.
Patch is suggested by Adrian Bunk, to prevent unexpected
reflection of environmental LIBTOOL.  See:
http://savannah.nongnu.org/patch/?7290

* builds/unix/unix-cc.in: LIBTOOL is unconditionally set to
$(FT_LIBTOOL_DIR)/libtool.  FT_LIBTOOL_DIR is set to $(BUILD_DIR)
by default.
* configure: When configured for the building out of source tee,
FT_LIBTOOL_DIR is set to $(OBJ_DIR).
2010-08-31 18:32:03 +09:00
Werner Lemberg 6a8691eb6a * Version 2.4.2 released.
=========================

Tag sources with `VER-2-4-2'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.2

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.1/2.4.2/, s/241/242/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 2.

* builds/unix/configure.raw (version_info): Set to 12:0:6.
2010-08-06 22:00:38 +02:00
Werner Lemberg 948076cd85 Fix conditional usage of FT_MulFix_i386.
With -ansi flag, gcc does not define `i386', only `__i386__'.

* include/freetype/config/ftconfig.h, builds/unix/ftconfig.in:
s/i386/__i386__/.
2010-08-06 01:39:26 +02:00
Werner Lemberg b69c6ac011 * Version 2.4.1 released.
=========================

Tag sources with `VER-2-4-1'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.1.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.4.0/2.4.1/, s/240/241/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 1.

* builds/unix/configure.raw (version_info): Set to 11:1:5.
2010-07-18 06:20:09 +02:00
Werner Lemberg 15ffc3546d * Version 2.4.0 released.
=========================

Tag sources with `VER-2-4-0'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.4.0.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.3.12/2.4.0/, s/2312/240/.

* include/freetype/freetype.h (FREETYPE_MINOR): Set to 4.
(FREETYPE_PATCH): Set to 0.

* builds/unix/configure.raw (version_info): Set to 11:0:5.
2010-07-12 22:07:16 +02:00
Werner Lemberg 7fa49cee58 Typo. 2010-07-12 00:33:36 +02:00
Werner Lemberg e8770c679b Fix Savannah bug #30030.
* builds/win32/*/freetype.vcproj: Add ftxf86.c.
2010-07-05 07:45:02 +02:00
Werner Lemberg b36d4192a3 * Version 2.3.12 released.
==========================

Tag sources with `VER-2-3-12'.

* docs/CHANGES: Updated.

* docs/VERSION.DLL: Update documentation and bump version number to
2.3.12.

* README, Jamfile (RefDoc),
builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj,
builds/win32/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.3.11/2.3.12/, s/2311/2312/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 12.

* builds/unix/configure.raw (version_info): Set to 10:0:4.
2010-02-13 07:57:56 +01:00
Werner Lemberg 129799c652 Add some files to Windows project files. 2010-02-13 07:53:37 +01:00
Werner Lemberg f0760ca6e8 We no longer use CVS. 2010-01-23 16:19:33 +01:00
Marc Kleine-Budde 978b11dc59 Make freetype-config aware of $SYSROOT.
* builds/unix/freetype-config.in: Decorate with ${SYSROOT} where
appropriate.
2009-12-22 00:25:38 +01:00
suzuki toshiya d818ba5979 Improve configure.raw to copy some options from CFLAGS to LDFLAGS. 2009-12-16 13:23:14 +09:00
Werner Lemberg d699c2994e * Version 2.3.11 released.
==========================

Tag sources with `VER-2-3-11'.

* docs/VERSION.DLL: Update documentation and bump version number to
2.3.11.

* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualce/index.html,
builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj: s/2.3.10/2.3.11/, s/2310/2311/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 11.

* builds/unix/configure.raw (version_info): Set to 9:22:3.
2009-10-10 20:25:48 +02:00
Werner Lemberg 19dfcbd2a4 * Version 2.3.10 released.
==========================

Tag sources with `VER-2-3-10'.

* builds/toplevel.mk (major, minor, patch): Fix regexp to allow more
than a single digit.
(dist): We now use git.

* docs/VERSION.DLL: Update documentation and bump version number to
2.3.10.

* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualce/index.html,
builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj: s/2.3.9/2.3.10/, s/239/2310/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.

* builds/unix/configure.raw (version_info): Set to 9:21:3.
2009-10-06 12:00:43 +02:00
suzuki toshiya 812d1bc90d Improve configure.raw for cross build. 2009-09-13 02:12:44 +09:00
Werner Lemberg fecb7a60fa Replace CR line endings with CRLF in Visual C/CE project files. 2009-09-10 07:36:11 +02:00
suzuki toshiya 3f36047eff gxvalid: Insert PureC pragma to allow unevaluated variables. 2009-08-01 00:30:11 +09:00
Werner Lemberg 1a49548bc3 Fix Savannah bug #27106.
Typo in Mac README instructions.
2009-07-25 16:19:23 +02:00
suzuki toshiya 3009417a7d Borland C++ compiler patch proposed by Mirco Babin. 2009-07-15 12:57:26 +09:00
Werner Lemberg b2967734a6 Fix Savannah bug #27026.
* builds/win32/vc2005/freetype.sln: Use correct version number.
2009-07-14 16:44:06 +02:00
suzuki toshiya fee19a786d Add tools to preprocess the source files for AtariST PureC. 2009-06-27 17:07:14 +09:00
suzuki toshiya 20fb146351 Improve configure.raw for cross-building on exe-suffixed systems. 2009-06-27 14:27:55 +09:00
Werner Lemberg ae342dab60 builds/compiler/gcc.mk (CFLAGS): Use -O3, not -O6. 2009-06-20 06:01:57 +02:00
Karl Berry b3511ebb60 Fix AC_CHECK_FT2.
Only check PATH for freetype-config if we did not already find it from a
prefix option.
2009-04-21 22:51:07 +02:00
Vincent Richomme 8b819254b9 Update WinCE Visual C project files.
* builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2008-ce/freetype.vcproj: Add missing base extension
files.
2009-03-19 08:30:49 +01:00
Werner Lemberg a9ba23c856 Remove unused Win32 code.
* builds/wince/ftdebug.c: Remove code guarded with `!_WIN32_WCE'.
Since Win32 is handled separately this is no longer needed.
2009-03-19 08:27:59 +01:00
Werner Lemberg 80c253f9e8 Remove unused WinCE code.
* builds/win32/ftdebug.c: Remove code guarded with `_WIN32_WCE'.
Since WinCE is handled separately this is no longer needed.
2009-03-19 08:05:06 +01:00
Steve Langasek 2cd5dce831 Use __asm__ for declaring assembly instead of asm.
* builds/unix/ftconfig.in (FT_MulFix_arm): Use __asm__ instead of
asm on arm, fixing a build failure on armel with -pedantic.
2009-03-15 13:11:25 +01:00
Werner Lemberg a284ab6254 * builds/unix/freetype2.in: Move @FT2_EXTRA_LIBS@ to `Libs.private'. 2009-03-12 08:11:12 +00:00
Werner Lemberg 911f431966 Fix Savannah bug #25814.
* builds/unix/freetype2.in: As suggested in the bug report, move
@LIBZ@ to `Libs.private'.
2009-03-11 07:07:37 +00:00
Werner Lemberg 31f5bbba44 Restructure Win32 and Wince compiler support.
* src/builds/win32: Remove files for WinCE.
Move VC 2005 support to a separate directory.
Add directory for VC 2008 support.

* src/builds/wince: New directory hierarchy for WinCE compilers
(VC 2005 and VC 2008).
2009-03-10 11:54:51 +00:00
Werner Lemberg 1a5edf7a4f * builds/unix/configure.raw (version_info): Set to 9:20:3. 2009-03-09 08:36:18 +00:00
Werner Lemberg 1e8599240f Fix Savannah bug #25588.
* builds/unix/ftconfig.in (FT_MulFix_arm): Use correct syntax for
`orr' instruction.
2009-02-15 07:54:35 +00:00
Werner Lemberg 67bbcbd72d Fix Savannah bug #25480.
* builds/unix/freetype-config.in: For --ftversion, don't use $prefix
but $includedir.
2009-02-04 07:59:16 +00:00
Werner Lemberg 5184ed6d53 Move FT_Get_FSType_Flags to a separate file.
Problem reported by Mickey Gabel <mickey@monfort.co.il>.

* src/base/ftobjs.c (FT_Get_FSType_Flags): Move to...
* src/base/ftfstype.c: This new file.

* modules.cfg (BASE_EXTENSION): Add ftfstype.c.

* docs/INSTALL.ANY: Updated.

* builds/mac/*.txt, builds/amiga/*makefile*,
builds/win32/{visualc,visualce}/freetype.*, builds/symbian/*:
Updated.
2009-01-22 10:13:59 +00:00
Suzuki, Toshiya (鈴木俊哉) a7c5de592c * builds/unix/ftsystem.c: Fix 2 error messages ending without LINEFEED 2009-01-22 04:00:32 +00:00
Werner Lemberg e22dd0b80f * Version 2.3.8 released.
=========================


Tag sources with `VER-2-3-8'.

* docs/VERSION.DLL: Update documentation and bump version number to
2.3.8.

* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualce/index.html,
builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj: s/2.3.7/2.3.8/, s/237/238/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 8.

* builds/unix/configure.raw (version_info): Set to 9:19:3.

* docs/release: Updated.
2009-01-14 06:52:18 +00:00
Werner Lemberg fb4ddb2791 builds/toplevel.mk (dist): Compress better. 2009-01-14 05:30:56 +00:00
Werner Lemberg c679115f0d Fix AC_CANONICAL_XXX issue.
* builds/unix/configure.raw: Don't call AC_CANONICAL_BUILD and
AC_CANONICAL_TARGET and use $host_os only.  A nice explanation for
this change can be found at
http://blog.flameeyes.eu/s/canonical-target.

From Savannah patch #6712.
2009-01-06 07:07:39 +00:00
Werner Lemberg 66043b1c4f * builds/unix/ftsystem.c (FT_Stream_Open): Reject zero-length files.
Patch from Savannah bug #25151.
2008-12-22 18:09:48 +00:00
Werner Lemberg ce33a312da FT_USE_MODULE declares things as:
extern const FT_Module_Class

(or similar for C++).  However, the actual types of the variables
being declared are often different, e.g., FT_Driver_ClassRec or
FT_Renderer_Class.  (Some are, indeed, FT_Module_Class.)

This works with most C compilers (since those structs begin with an
FT_Module_Class struct), but technically it's undefined behavior.

To quote the ISO/IEC 9899:TC2 final committee draft, section 6.2.7
paragraph 2:

  All declarations that refer to the same object or function shall
  have compatible type; otherwise, the behavior is undefined.

(And they are not compatible types.)

Most C compilers don't reject (or even detect!) code which has this
issue, but the GCC LTO development branch compiler does.  (It
outputs the types of the objects while generating .o files, along
with a bunch of other information, then compares them when doing the
final link-time code generation pass.)

Patch from Savannah bug #25133.

* src/base/ftinit.c (FT_USE_MODULE): Include variable type.

* builds/amiga/include/freetype/config/ftmodule.h,
include/freetype/config/ftmodule.h, */module.mk: Updated to declare
pass correct types to FT_USE_MODULE.
2008-12-21 10:29:30 +00:00
Suzuki, Toshiya (鈴木俊哉) 96d87bed0e {src/base,builds/mac}/ftobjs.c: Include FT_TRUETYPE_TAGS_H for multi build 2008-10-05 03:08:10 +00:00
Suzuki, Toshiya (鈴木俊哉) 21bd516592 Introduce macros for some MacOS-specific resource tags 2008-10-04 18:10:28 +00:00
Werner Lemberg 45489589ad * src/base/ftobjs.c (open_face_PS_from_sfnt_stream): Remove compiler
warnings.

Formatting.
2008-10-04 11:39:03 +00:00
Suzuki, Toshiya (鈴木俊哉) 1137d04f85 * New function `open_face_PS_from_sfnt_stream' to check and open a Type1 PS or CID-keyed font in an sfnt stream. 2008-10-04 07:11:58 +00:00
Suzuki, Toshiya (鈴木俊哉) 9e2b9900dc * Remove duplicated functions from builds/mac/ftmac.c. Now MPW builds builds/mac/ftmac.c as a part of ftbase.c 2008-10-03 11:52:22 +00:00
Werner Lemberg 89a1a51834 * builds/freetype.mk (BASE_H): Rename to...
(INTERNAL_H): This.
(FREETYPE_H): Updated.
* src/base/rules.mk: (BASE_OBJ_S, OBJ_DIR/%.$O): Add BASE_H.
* src/bdf/rules.mk (BDF_DRV_H): Add bdferror.h.
* src/cache/rules.mk (CACHE_DRV_H): Add ftccache.h and ftcsbits.h.
* src/pcf/rules.mk (PCF_DRV_H): Add pcfread.h.
* src/raster/rules.mk (RASTER_DRV_H): Add ftmisc.h.
* src/type42/rules.mk (T42_DRV_H): Add t42types.h.
2008-10-02 06:48:10 +00:00
Werner Lemberg fce4e23998 Formatting. 2008-10-01 04:41:46 +00:00
Suzuki, Toshiya (鈴木俊哉) ef4a915e28 * Fix make rules for multi build on Mac OS X 2008-09-30 16:21:07 +00:00
Suzuki, Toshiya (鈴木俊哉) 3afbee82fe * ftmac.c: Import sfnt-wrapped Type1/CID font support 2008-09-19 17:46:01 +00:00
Werner Lemberg b211651ac9 * autogen.sh, builds/unix/configure.raw,
include/freetype/config/ftconfig.h, builds/unix/ftconfig.in: Minor
beautifying.

* include/freetype/ftadvanc.h, include/freetype/ftgasp.h,
include/freetype/ftlcdfil.h: Protect against FreeType 1.
Some other minor fixes.

* devel/ftoption.h: Synchronize with
include/freetype/config/ftoption.h.

Formatting, documentation improvements.
2008-09-12 16:27:48 +00:00
Suzuki, Toshiya (鈴木俊哉) 59188661e6 * Fix Savannah bug #21250: builds/unix/configure installs bi-arch ftconfig.h if it works correctly 2008-09-11 08:02:23 +00:00
Suzuki, Toshiya (鈴木俊哉) 8e29645e20 * builds/unix/configure.raw: Clear FT2_EXTRA_LIBS when Mac OS X frameworks are missing 2008-09-05 03:21:21 +00:00
David Turner f47d263f1b * include/freetype/ftoption.h, include/freetype/ftconfig.h,
builds/unix/ftconfig.in, include/freetype/freetype.h,
    src/base/ftcalc.c:
    Make FT_MulFix an inlined function. Also provide an assembler
    implementation for ARM architectures. this is done to speedup
    FreeType a little (on x86 3% when loading+hinting, 10% when
    rendering, ARM savings are more important though).
    Disable this by undefining FT_CONFIG_OPTION_INLINE_MULFIX in
    ftconfig.h
2008-09-02 02:21:58 +00:00
Werner Lemberg 77f7358533 Formatting. 2008-08-19 04:53:02 +00:00
Suzuki, Toshiya (鈴木俊哉) fdc2d7618a * src/base/ftmac.c: Add a fallback for the case that HAVE_TYPE_RESOURCE_INDEX is not set by configure 2008-08-18 06:02:07 +00:00
Suzuki, Toshiya (鈴木俊哉) a8700d428b * builds/unix/configure.raw: Replace all-in-one Carbon.h by minimum CoreServices.h 2008-08-18 05:08:01 +00:00
Werner Lemberg 4e33f9e53c Since FreeType uses `$(value ...)', we now need GNU make 3.80 or
newer.

* configure: zsh doesn't like ${1+"$@"}.
Update needed GNU make version.
* builds/toplevel.mk: Check for `$(eval ...)'.
* docs/INSTALL.GNU, docs/INSTALL.CROSS, docs/INSTALL.UNIX: Document
it.
2008-07-05 06:35:28 +00:00
Werner Lemberg be54a68c9d * Version 2.3.7 released.
=========================


Tag sources with `VER-2-3-7'.

* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
version number to 2.3.7.

* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualce/index.html,
builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj: s/2.3.6/2.3.7/, s/236/237/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 7.

* builds/unix/configure.raw (version_info): Set to 9:18:3.

* docs/release: Updated.
2008-06-29 07:43:41 +00:00
Werner Lemberg e172c332bc minor formatting 2008-06-25 22:21:42 +00:00
Suzuki, Toshiya (鈴木俊哉) f3a924dd53 Fix for 10.4u SDK bundled to Mac OS X 10.5 2008-06-24 17:13:58 +00:00
Werner Lemberg 745a4f42a5 * src/truetype/ttgload.c (TT_Load_Glyph): Protect bytecode stuff
with IS_HINTED.

* docs/CHANGES: Updated.
2008-06-22 22:41:24 +00:00
Suzuki, Toshiya (鈴木俊哉) b1c36cfbd9 * builds/unix/configure.raw: Copy -isysroot option from CFLAGS to LDFLAGS, if required 2008-06-22 15:32:56 +00:00
Werner Lemberg 6174e17cf7 * Version 2.3.6 released.
=========================


Tag sources with `VER-2-3-6'.

* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
version number to 2.3.6.

* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualce/index.html,
builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj: s/2.3.5/2.3.6/, s/235/236/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.

* builds/unix/configure.raw (version_info): Set to 9:17:3.


* include/freetype/internal/psaux.h (T1_BuilderRec): Remove `scale_x'
and `scale_y'.
* src/cff/cffgload.h (CFF_Builder): Remove `scale_x' and `scale_y'.


* src/cff/cffparse.c: Include FT_INTERNAL_DEBUG_H.
* src/cff/cffobjs.h: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
2008-06-10 05:58:25 +00:00
Werner Lemberg 26bd7a2c5d s/enable_shared/build_libtool_libs/ 2008-06-09 21:27:17 +00:00
Werner Lemberg 630e24d965 Support debugging on WinCE. From Savannah patch #6536; this fixes
bug #23497.

* builds/win32/ftdebug.c (OutputDebugStringEx): New function/macro
as a replacement for OutputDebugStringA (which WinCE doesn't have).
Update all callers.
(ft_debug_init) [_WIN32_CE]: WinCE apparently doesn't have
environment variables.
2008-06-09 21:20:18 +00:00
Werner Lemberg a984fda881 * README.CVS: Updated.
* builds/unix/configure.raw: Updated for newer versions of autoconf
and friends.
2008-06-09 21:02:13 +00:00
Werner Lemberg bcfcc71d29 * builds/toplevel.mk (CONFIG_GUESS, CONFIG_SUB): Updated. 2008-05-15 09:14:39 +00:00
Werner Lemberg a56e526671 Adjustments for Visual C++ 8.0, as reported by Rainer Deyke.
* builds/compiler/visualc.mk (CFLAGS): Remove /W5.
(ANSIFLAGS): Add _CRT_SECURE_NO_DEPRECATE.
2008-03-23 14:53:44 +00:00
Werner Lemberg cd874831dc add copyright notices 2008-03-06 22:11:30 +00:00
Werner Lemberg 7faa1554c2 Add build support for symbian platform. From Savannah bug #22440.
* builds/symbian/*: New files.
2008-02-29 07:14:38 +00:00
Werner Lemberg 9b9d3349b2 minor improvements, copyright years 2008-02-21 23:22:06 +00:00
Suzuki, Toshiya (鈴木俊哉) 6cb2faa845 * src/base/ftmac.c: Fix a bug of PostScript font name synthesis in parse_fond(). 2008-02-21 18:46:07 +00:00
Suzuki, Toshiya (鈴木俊哉) 5d3ac4ae12 * builds/unix/confiure.raw: Split the compiler option to link Carbon frameworks for each framework 2008-02-21 10:15:41 +00:00
Suzuki, Toshiya (鈴木俊哉) d2c55ab0e4 fix for inexistent sfnt ID in broken FOND 2008-02-15 09:12:59 +00:00
Suzuki, Toshiya (鈴木俊哉) 60e83a1d57 * src/base/ftbase.c: <ftmac.c> is replaced by "ftmac.c" 2008-02-14 02:55:16 +00:00
Werner Lemberg 744dd456bc * builds/modules.mk (CLOSE_MODULE, REMOVE_MODULE), builds/detect.mk
(dos_setup), builds/freetype.mk (clean_project_dos,
distclean_project_dos): Don't use \ but $(SEP).  Reported by Duncan
Murdoch.
2008-02-11 08:22:40 +00:00
Suzuki, Toshiya (鈴木俊哉) 75696860ea Formatting. 2008-01-04 01:43:23 +00:00
Werner Lemberg bd7e1c3ce0 Pass options from one configure script to another as-is (not
expanded).  This is needed for options like
--includedir='${prefix}/include'.

* builds/unix/detect.mk, configure: Prevent argument expansion in
call to the (real) `configure' script.



* src/truetype/ttgload.c (load_truetype_glyph): Fix compilation if
TT_USE_BYTECODE_INTERPRETER isn't defined.



There exist CFFs which contain opcodes for the Type 1 operators
`hsbw' and `closepath' which are both invalid in Type 2 charstrings.
However, it doesn't harm to support them.

* src/cff/cffgload.c (CFF_Operator): Add `cff_op_hsbw' and
`cff_op_closepath.'
(cff_argument_counts): Ditto.

(cff_decoder_parse_charstrings): Handle Type 1 opcodes 9 (closepath)
and 13 (hsbw) which are invalid in Type 2 charstrings.
2007-12-06 17:17:30 +00:00
Suzuki, Toshiya (鈴木俊哉) 44b5e57781 Mac OS X Carbon tests in configure.raw are improved and builds/mac/ftmac.c is updated to sync to src/base/ftmac.c 2007-12-06 07:47:25 +00:00
Suzuki, Toshiya (鈴木俊哉) 2be3f472dd * src/base/ftmac.c: Use more abstract data type instead of `short\' 2007-08-29 06:08:59 +00:00
Suzuki, Toshiya (鈴木俊哉) 4fc0ccea68 * Fix a bug in configure.raw overlooking native C compiler if named "platform-gcc" 2007-08-11 16:35:06 +00:00
Werner Lemberg b66178851a * builds/unix/configure.raw: Add call to AC_LIBTOOL_WIN32_DLL.
Fixes Savannah bug #20686.
2007-08-04 22:17:48 +00:00
Werner Lemberg 3b0e500601 * src/autofit/aflatin.c (af_latin_metrics_init_blues): Initialize
`round' to pacify compiler.

Really commit changes which have been used to build release 2.3.5.
2007-07-03 04:48:19 +00:00
Suzuki, Toshiya (鈴木俊哉) 7893501c3e * fix compiler warnings of src/base/ftmac.c, drop unnecessary part for Mac OS X. 2007-06-19 03:27:05 +00:00
Werner Lemberg 08a645d833 * builds/win32/ftdebug.c: Unify debug level handling with other
platforms.
2007-06-15 14:05:20 +00:00
Werner Lemberg 367f301b44 * builds/win32/ftdebug.c (FT_Message): Send debug output to the
console as well as to the debugger.
2007-06-14 06:56:52 +00:00
Werner Lemberg cb37b3b36a * builds/unix/ftsystem.c (FT_Stream_Open): Don't use ULONG_MAX but
LONG_MAX to avoid compiler warning.  Suggested by Sean McBride.
2007-06-01 06:49:03 +00:00
Werner Lemberg 4127103f8d * builds/win32/visualce/freetype.sln: Removed, as requested by
Vincent.
2007-05-06 04:51:48 +00:00
Werner Lemberg df49e697c1 * builds/win32/visualce/*: Add Visual C++ project files for Pocket
PC targets.

* docs/CHANGES: Document them.
2007-05-04 06:30:05 +00:00
Werner Lemberg 5077e83e11 * builds/unix/ftsystem.c (FT_Stream_Open): Handle return value 0 of
mmap (which might happen on some RTOS).  From Savannah patch #5909.
2007-05-04 06:13:46 +00:00
Werner Lemberg 14bf82e129 * Version 2.3.4 released.
=========================


Tag sources with `VER-2-3-4'.

* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
version number to 2.3.4.

* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj: s/2.3.3/2.3.4/, s/233/234/.

* include/freetype/freetype.h (FREETYPE_PATCH): Set to 4.

* builds/unix/configure.raw (version_info): Set to 9:15:3.
2007-04-10 04:09:49 +00:00
Werner Lemberg 644b1ad49e * builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproc, README: s/2.3.2/2.3.3/,
s/232/233/.

* docs/CHANGES: Mention ftdiff.
2007-03-28 21:17:11 +00:00
David Turner 23553d6d2b * docs/CHANGES, docs/VERSION, include/freetype/freetype.h,
builds/unix/configure.raw, README, Jamfile: update documentation and bump version
	number to 2.3.3
2007-03-26 13:37:17 +00:00
Suzuki, Toshiya (鈴木俊哉) 86a3ee7613 Disable Carbon framework dependency on 64bit ABI of Mac OS X 10.4.x 2007-03-26 05:40:55 +00:00
Werner Lemberg 14ffe0911f formatting 2007-03-22 06:12:43 +00:00
Suzuki, Toshiya (鈴木俊哉) dabf0535a8 Temporal fix for 32bit unsigned long overflow on LP64 platform 2007-03-22 05:23:53 +00:00
Suzuki, Toshiya (鈴木俊哉) 4bcf957406 Suppress SGI compiler warning against setjmp 2007-03-22 04:53:45 +00:00
Suzuki, Toshiya (鈴木俊哉) 6fb74f676b Dequote OS_INLINE in configure.raw to avoid unexpected shell evaluation 2007-03-19 06:30:26 +00:00
Werner Lemberg 25d592a71c * Version 2.3.2 released.
=========================


Tag sources with `VER-2-3-2'.

* builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproc, README: s/2.3.1/2.3.2/,
s/231/232/.
2007-03-09 07:59:35 +00:00
David Turner 121cad54ae updating version numbers and documentation 2007-03-08 16:43:50 +00:00
Werner Lemberg de5e686661 formatting 2007-02-25 21:06:43 +00:00
Suzuki, Toshiya (鈴木俊哉) b68e025c1b * Fix memory leak in ftmac.c, patch by Jjgod Jiang 2007-02-20 02:37:36 +00:00
Werner Lemberg 406d25f379 more formatting and copyright years 2007-02-12 22:01:18 +00:00
David Turner c0f9c4aadd introduce ft_mem_dup, ft_mem_strdup and ft_mem_strcpyn, and the corresponding
macros to use them (e.g. FT_STRDUP, FT_DUP and FT_STRCPYN)

modify the code to use them instead of raw mallocs/strcpy
2007-02-12 14:55:03 +00:00
Werner Lemberg dcbb708e7a formatting, copyright years 2007-02-08 08:54:09 +00:00
Suzuki, Toshiya (鈴木俊哉) f223df6e79 * Add __attribute__((deprecated)) to functions whose interface using non ANSI data types 2007-02-05 04:07:46 +00:00
Suzuki, Toshiya (鈴木俊哉) 4827e9bd2c * Add FT_GetFilePath_From_Mac_ATS_Name as replacement for FT_GetFile_From_Mac_ATS_Name 2007-02-05 03:28:29 +00:00
Suzuki, Toshiya (鈴木俊哉) 027357f1c8 * Check ANSI compatibility of Mac OS X system header 2007-02-05 02:50:45 +00:00
Werner Lemberg 4b2e83d5b5 A new set of spelling fixes from Alexei.
Add some copyright messages.
2007-02-01 07:58:02 +00:00
Werner Lemberg 53935939df * Version 2.3.1 released.
=========================


Tag sources with `VER-2-3-1-FINAL'.

* builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj: s/230/231/.
* builds/win32/visualc/index.html: s/221/231/.

* vms_make.com: Add `ftgasp'.
2007-01-31 08:53:02 +00:00
David Turner 3eaef6c170 updating version numbers to 2.3.1 2007-01-30 10:40:23 +00:00
Werner Lemberg b4142d5126 Whitespace and spelling fixes from Alexei.
Formatting, copyright years.
2007-01-17 12:45:26 +00:00
Werner Lemberg 9b774e2822 Remove trailing whitespace. From Alexei. 2007-01-16 06:11:27 +00:00
Werner Lemberg 267e1d719a * builds/amiga/makefile, builds/amiga/makefile.os4,
builds/amiga/smakefile: Add `ftgasp.c' and `ftlcdfil.c'.

* builds/amiga/include/freetype/config/ftconfig.h: Synchronize.
2007-01-15 07:48:09 +00:00
Werner Lemberg 6d96d31d98 * builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
`automake' CVS module from sources.redhat.com.
2007-01-12 10:30:19 +00:00
Werner Lemberg 17432b5e37 * src/type1/t1load.c (is_space): Removed.
(parse_encoding, parse_charstrings): Use IS_PS_DELIM.
(parse_charstrings): Use IS_PS_TOKEN.


* autogen.sh: Avoid bash specific syntax.
2007-01-12 09:28:44 +00:00
David Turner d5ca74723c * Jamfile, README, builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj, docs/VERSION.DLL,
	include/freetype/freetype.h, include/freetype/t1tables.h,
	include/freetype/internal/tttypes.h: updating version
	number to 2.3.0 !!

	* include/freetype/ftchapters.h, include/freetype/ftgasp.h,
	include/freetype/ftlcdfil.h: updating reference documentation
	with GASP support and LCD filtering sections
2007-01-10 14:18:15 +00:00
David Turner f48b60ed59 * include/freetype/ftgasp.h, src/base/ftgasp.c: adding a
new API FT_Get_Gasp to return entries of the GASP table
        corresponding to a given character pixel size.

        * src/sfnt/ttload.c: add version check for the GASP table,
        in order to be better future-proof

        * include/freetype/config/ftheader.h: add definition of
        FT_GASP_H, corresponding to <freetype/ftgasp.h>

        * src/base/rules.mk, src/base/Jamfile, modules.cfg,
        builds/win32/visualc/freetype.dsp,
        builds/win32/visualc/freetype.vcproj: Adding src/base/ftgasp.c
        to the default build
2007-01-08 15:15:32 +00:00
David Turner 115b442b23 * src/autofit/aflatin.c, src/truetype/ttgload.c: removing compiler
warnings

	* builds/win32/visualc/freetype.vcproj: adding _CRT_SECURE_NO_DEPRECATE
	to avoid deprecation warnings with Visual C++ 8
2006-12-22 11:37:05 +00:00
Werner Lemberg 0fd08bdc6a formatting 2006-12-16 02:57:46 +00:00
Suzuki, Toshiya (鈴木俊哉) 7e3d601355 * Simplify src/base/ftmac.c for Mac OS X 2006-12-15 15:23:21 +00:00
Suzuki, Toshiya (鈴木俊哉) 21fd256d20 * Backup src/base/ftmac.c to builds/mac/ftmac.c for legacy MacOS 2006-12-15 15:09:44 +00:00
Werner Lemberg ec5b4508cc * builds/toplevel.mk (version): Protect against `distclean' target. 2006-12-10 07:51:38 +00:00
Werner Lemberg b26b314a93 * builds/*/*def.mk, builds/*/detect.mk (CAT): Define to either `cat'
or `type'.

* builds/freetype.mk (version): Extracted from freetype.h, using
GNU make's built-in string functions.
(refdoc): Use $(version) instead of static version number.
2006-12-09 20:01:43 +00:00
Werner Lemberg 4e1d6c0c51 * builds/toplevel.mk (dist): Extract version number from freetype.h. 2006-12-09 08:20:37 +00:00
Werner Lemberg b9e6d69a96 formatting 2006-10-15 08:58:40 +00:00
Suzuki, Toshiya (鈴木俊哉) bfe872dad1 * preliminary autoconf-based cross-building support 2006-10-14 13:08:05 +00:00
Suzuki, Toshiya (鈴木俊哉) 9d49961fcc * embed explicit Carbon dependency into freetype2.pc and freetype-config, if configured to use Carbon 2006-10-12 01:35:54 +00:00
Werner Lemberg c4c35b773d * builds/unix/ftconfig.in: Synchronize with main ftconfig.h.
Reported by Jens.

Formatting.
2006-08-27 08:03:46 +00:00
Werner Lemberg 33779660ba * builds/unix/unix-cc.in (LINK_LIBRARY): Don't comment out
`-no-undefined'.  Reported by Christian Biesinger.
2006-05-26 06:30:05 +00:00
Werner Lemberg 24773d6dc6 * builds/win32/visualc/freetype.dsp: Release libraries no longer
have debug information, and debug libraries use `C7 compatible'
debug info.
2006-05-20 08:53:13 +00:00
Suzuki, Toshiya (鈴木俊哉) 8cfa8bd51a * remove Carbon dependency of Darwin, if configured with no option 2006-05-19 22:11:50 +00:00
Yamato, Masatake (大和正武) 28b55a9bb6 (FT_Stream_Open): Check errno only if read system call returns -1.
Remove a redundant parenthesis.
2006-05-11 03:01:42 +00:00
Werner Lemberg 37827608c2 convert to Unix line endings 2006-05-10 13:58:14 +00:00
Werner Lemberg 910d4f41d1 convert to Unix line endings. 2006-05-10 13:57:20 +00:00
Werner Lemberg 53478a10b4 Convert to Unix line endings. 2006-05-10 13:56:47 +00:00
Werner Lemberg 3d69a198b8 typo 2006-05-10 13:47:22 +00:00
Werner Lemberg e0d1559591 * builds/freetype.mk (refdoc): Write-protect the `docmaker'
directory to suppress generation of .pyc files.  According to the
Python docs there isn't a more elegant solution (currently).

* builds/toplevel.mk (dist): New target which builds .tar.gz,
.tar.bz2, and .zip files.  Note that the version number is still
hard-coded.
(do-dist): Sub-target of `dist'.
(CONFIG_GUESS, CONFIG_SUB): New variables.
(.PHONY): Updated.
2006-05-10 13:44:47 +00:00
Werner Lemberg b80d85fe9e * builds/unix/ftsystem.c (FT_Stream_Open): Avoid infinite loop if
given an empty, un-mmap()able file.  Reported and suggested fix in
Savannah bug #16555.
2006-05-10 04:47:35 +00:00
Werner Lemberg a127ca42ca * builds/win32/visualc/freetype.sln,
builds/win32/visualc/freetype.vcproj: Upgraded to VS.NET 2005 from
VS.NET 2003
Added files ftbbox.c, fttype1.c, ftwinfnt.c, ftsynth.c.

* builds/win32/visualc/index.html: Updated.
2006-05-09 13:41:50 +00:00
Werner Lemberg 4df5b26fdf Put version information into the configure script. Reported by Paul
Watson <pwatson@redlinepy.com>.

* builds/unix/configure.ac: Renamed to...
* builds/unix/configure.raw: This which now serves (with appropriate
modifications) as a template for configure.ac.

* version.sed: New script.

* autogen.sh: Generate configure.ac from configure.raw, using
FREETYPE_MAJOR, FREETYPE_MINOR, and FREETYPE_PATCH from freetype.h.
2006-05-08 07:10:29 +00:00
Werner Lemberg 1639c79482 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 1.
* builds/unix/configure.ac (version_info): Set to 9:10:3.

* builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj, builds/freetype.mk (refdoc),
Jamfile (RefDoc), README: s/220/221/, s/2.2.0/2.2.1/.
Minor updates.

* docs/CHANGES, docs/VERSION.DLL, docs/PROBLEMS, README.CVS:
Updated.

* builds/unix/install-sh: Updated from `texinfo' CVS module at
savannah.gnu.org.

* devel/ftoption.h: Synchronize with
include/freetype/config/ftoption.h.
2006-05-06 16:44:58 +00:00
Werner Lemberg 4f3b5bbd95 * src/lzw/ftlzw2.c: Renamed to...
* src/lzw/ftlzw.c: This.

* src/lzw/Jamfile, src/lzw/rules.mk: Updated.

* builds/mac/FreeType.m68k_cfm.make.txt,
builds/mac/FreeType.m68k_far.make.txt,
builds/mac/FreeType.ppc_carbon.make.txt,
builds/mac/FreeType.ppc_classic.make.txt: Updated.
2006-05-04 07:13:05 +00:00
Werner Lemberg c6afa1221a * include/freetype/internal/ftmemory.h: s/new/newsz/ (for C++).
(FT_ALLOC): Remove redundant redefinition.

* builds/compiler/gcc-dev.mk (CFLAGS) [g++]: Don't use
`-Wstrict-prototypes'.

* src/base/ftstream.c (FT_Stream_EnterFrame): Add cast.

Formatting, copyright years.
2006-05-02 22:22:16 +00:00
Werner Lemberg 06fceb3f39 * builds/unix/unix-def.in (datarootdir): Define, for autoconf 2.59c
and forthcoming versions.
2006-04-29 07:53:40 +00:00
Werner Lemberg 12cceaaca8 * builds/win32/visualc/freetype.vcproj: Updated. 2006-04-27 05:02:35 +00:00
Detlef Würkner 7d04322e40 no message 2006-04-05 07:17:12 +00:00
Werner Lemberg 7f18de64b6 * builds/compiler/intelc.mk (TE): New variable.
(ANSIFLAGS): Updated.
2006-04-03 16:47:34 +00:00
Werner Lemberg fd7456c796 * builds/exports.mk (clean_symbols_list, clean_apinames): Removed.
(CLEAN): Add $(EXPORTS_LIST) and $(APINAMES_EXE).
(.PHONY): Updated.

* configure.ac: Minor fixes to improve --help output.
2006-04-03 15:46:48 +00:00
Werner Lemberg 6e9df6855d * builds/unix/install.mk (uninstall): Don't handle `cache'
directory which no longer exists.
2006-04-01 05:22:07 +00:00
Werner Lemberg af16820a12 Normalize quotation to `...'. 2006-03-24 12:46:49 +00:00
Werner Lemberg 8439fe8575 * builds/freetype.mk (refdoc), docs/CHANGES, Jamfile (RefDoc),
README: s/2.1.10/2.2/.
2006-03-21 21:04:33 +00:00
Werner Lemberg 5a73d8d20f * builds/freetype.mk (CACHE_DIR, CACHE_H): Remove.
(FREETYPE_H): Updated.

* src/cache/rules.mk (CACHE_H_DIR): Remove.
(CACHE_DRV_H): Updated.

Formatting, copyright years.
2006-03-20 16:55:32 +00:00
David Turner da95af6cf6 * builds/win32/visualc/freetype.dsp: updating the project file, adding
missing base source files (e.g. ftstroke.c, ftxf86.c, etc...)

    * src/autofit/afcjk.c, src/autofit/aflatin.c, src/base/ftobjs.c,
    src/cff/cffobjs.c, src/cid/cidobjs.c, src/pfr/pfrobjs.c,
    src/sfnt/sfobjs.c, src/sfnt/ttmtx.c, src/truetype/ttpload.c,
    src/truetype/ttpload.h, src/type1/t1afm.c, src/type1/t1objs.c:
      removing compiler warnings when building with Visual C++ 6 and /W4
2006-03-20 13:32:33 +00:00
David Turner 505667c6ee * builds/unix/install.mk:
changing the installation procedure to remove the 'freetype/cache'
      from the target directory.
2006-03-20 12:13:14 +00:00
Suzuki, Toshiya (鈴木俊哉) 2f239b8e88 Update MPW makefiles to new header inclusion introduced on 2006-02-16 2006-02-27 10:34:33 +00:00
Werner Lemberg 7f049f4221 Formatting, copyright years. 2006-02-25 16:52:16 +00:00
David Turner de271ab8f0 * builds/unix/ftsystem.c, include/freetype/config/ftheader.h,
include/freetype/internal/services/svotval.h,
    include/freetype/internal/services/svpfr.h,
    src/base/ftsystem.c, src/bdf/bdfdrivr.c, src/cache/ftcbasic.c,
    src/cff/cffcmap.c, src/gzip/ftgzip.c, src/lzw/ftlzw.c,
    src/lzw/ftlzw2.c, src/psaux/t1cmap.c, src/sfnt/ttbdf.c,
    src/smooth/ftgrays.c:

       solved -Wmissing-prototypes warnings with GCC
2006-02-25 14:53:02 +00:00
Werner Lemberg f145e312df Formatting, copyright years, minor doc fixes. 2006-02-19 16:12:18 +00:00
David Turner 0880ac333a * builds/unix/unix-cc.in: don't filter-out exported functions
anymore, this is used to ensure that all FT_BASE internal
    functions are available for dynamic linking

    * include/freetype/ftcache.h, src/cache/ftcbasic.c,
    src/cache/ftccmap.c: try to revive old functions of the
    cache sub-system. We also try to support FTC_ImageCache_Lookup
    and FTC_ImageCache_SBit with legacy signatures through a gross
    hack (hope it works)
2006-02-17 17:23:13 +00:00
Werner Lemberg 8e6f8c4d79 Formatting, copyright years, documentation improvements. 2006-02-17 08:07:09 +00:00
David Turner cda2d957dc * builds/amiga/src/base/ftsystem.c, devel/ftoption.h
include/freetype/ftcache.h, include/freetype/ftoutln.h,
      include/freetype/cache/ftccache.h, include/freetype/cache/ftccmap.h,
      include/freetype/config/ftoption.h, include/freetype/internal/ftcalc.h,
      include/freetype/internal/ftdriver.h,
      include/freetype/internal/ftmemory.h,
      include/freetype/internal/ftobjs.h, include/freetype/internal/ftrfork.h,
      include/freetype/internal/psaux.h, include/freetype/internal/sfnt.h,
      include/freetype/internal/t1types.h, include/freetype/internal/tttypes.h,
      src/base/ftcalc.c, src/base/ftdbgmem.c, src/base/ftobjs.c,
      src/base/ftsystem.c, src/base/ftutil.c, src/bdf/bdfdrivr.c,
      src/cache/ftccache.c, src/cache/ftccback.h, src/cache/ftccmap.c,
      src/cache/ftcmanag.c, src/cff/cffdrivr.c, src/cid/cidriver.c,
      src/pcf/pcfdrivr.c, src/pfr/pfrdrivr.c, src/psaux/psauxmod.c,
      src/sfnt/sfdriver.c, src/truetype/ttdriver.c, src/type1/t1driver.c,
      src/type1/t1objs.c, src/type42/t42drivr.c, src/winfonts/winfnt.c:

    massive changes to the internals to respect the internal object layouts
    and exported functions of FreeType 2.1.7. Note that the cache sub-system
    cannot be fully retrofitted, unfortunately.
2006-02-16 22:45:31 +00:00
Werner Lemberg 6be99f9104 * src/cid/cidparse.c (cid_parse_new): Remove shadowing variable.
Formatting.
2006-02-09 07:38:57 +00:00
Suzuki, Toshiya (鈴木俊哉) 458c34233d fix --with-old-mac-fonts option 2006-02-08 12:58:24 +00:00
Werner Lemberg 54a79c8854 Use `?='. 2006-02-01 07:54:07 +00:00
Werner Lemberg 8a4de0d669 * Makefile, *.mk: Use `?=' where appropriate.
* builds/detect.mk (TOP_DIR), builds/os2/os2-dev.mk (TOP_DIR),
builds/win32/w32-dev.mk (TOP_DIR): Removed.  Defined elsewhere.
2006-02-01 07:52:11 +00:00
Werner Lemberg 9a8006b18e * builds/unix/install.mk (install): Fix path for ftmodule.h. 2006-02-01 06:07:05 +00:00
Werner Lemberg 03379b6533 * builds/unix/unixddef.mk: Actually do define PLATFORM (fixing
change from 2006-01-31).
(TOP_DIR, OBJ_DIR): Update.
2006-02-01 05:40:06 +00:00
Werner Lemberg 59939244ad Implement new, simplified module selection. With GNU make it is now
sufficient to modify a single file, `modules.cfg', to control the
inclusion of modules and base extension files.

This change also fixes the creation of ftmodule.h; it now depends on
`modules.cfg' and thus is rebuilt only if necessary.

Finally, a version of `ftoption.h' in OBJ_DIR is preferred over the
default location.

* modules.cfg: New file.

* builds/freetype.mk: Don't include `modules.mk'.
Include all `rules.mk' files as specified in `modules.cfg'.
(FTOPTION_FLAG, FTOPTION_H): New variables.
(FT_CFLAGS): Add macro definition for FT_CONFIG_MODULES_H.
Add FTOPTION_FLAG.
($(FT_INIT_OBJ)): Don't use FT_MODULE_LIST.
(CONFIG_H): Add FTMODULE_H and FTOPTION_H.
(INCLUDES): Add DEVEL_DIR.
(INCLUDE_FLAGS, FTSYS_SRC, FTSYS_OBJ, FTDEBUG_SRC, FTDEBUG_OBJ,
OBJ_M, OBJ_S): Use `:=', not `='.
(remove_ftmodule_h): New phony target to delete `ftmodule.h'.
(distclean): Add remove_ftmodule_h.

* builds/modules.mk: (MODULE_LIST): Removed.
(make_module_list, clean_module_list): Replace targets
with...
(FTMODULE_H_INIT, FTMODULE_H_CREATE, FTMODULE_H_DONE): New
variables.  Reason for the change is that it is not possible to have
a phony prerequisite which is run only if the target file must be
rebuilt (phony prerequisites act like subroutines and are *always*
executed).  We only want to rebuild `ftmodule.h' if `module.cfg' is
changed.
Update all callers.
($FTMODULE_H)): Rule to create `ftmodule.h', depending on
`modules.cfg'.

* builds/toplevel.mk: Rewrite and simplify module handling.
(MODULES_CFG, FTMODULE_H): New variables.
Include MODULES_CFG.
(MODULES): New variable to include all `module.mk' and `rules.mk'
files.  We no longer use make's `wildcard' function for this.

* Makefile (USE_MODULES): Remove.  Update all users.
(OBJ_DIR): Define it here.

* src/*/module.mk: Change

    make_module_list: foo
    foo: ...

to

    FTMODULE_H_COMMANDS += FOO
    define FOO
    ...
    endef

in all files.  `FTMODULE_H_COMMANDS' is used in `FTMODULE_H_CREATE'.

* src/base/rules.mk (BASE_EXT_SRC): Use BASE_EXTENSIONS.

* builds/unix/detect.mk (setup): Always execute `configure' script.
(have_mk): Rename to...
(have_Makefile): This.
Don't use `strip' function.

* builds/unix/unix.mk: Include `install.mk' only if BUILD_PROJECT is
defined.
(have_mk): Don't use `strip' function.
Test for unix-def.mk in OBJ_DIR, not BUILD_DIR (and invert the test
accordingly).

* builds/unix/install.mk (install, uninstall): Handle `ftmodule.h'.

* builds/os2/os2-dev.mk, builds/unix/unix-dev.mk,
builds/win32/w32-bccd.mk, builds/win32/w32-dev.mk: Don't define
BUILD_DIR but DEVEL_DIR for development header files.

* builds/ansi/ansi-def.mk (TOP_DIR, OBJ_DIR),
builds/beos/beos-def.mk (TOP_DIR, OBJ_DIR), builds/unix/unix-def.in
(TOP_DIR, OBJ_DIR): Removed.  Defined elsewhere.

* builds/dos/dos-def.mk (OBJ_DIR), builds/os2/os2-def.mk (OBJ_DIR),
builds/win32/win32-def.mk (OBJ_DIR): Removed.  Defined elsewhere.

* builds/unix/unixddef.mk: Don't define BUILD_DIR but DEVEL_DIR for
development header files.
Don't define PLATFORM.

* configure: Copy `modules.cfg' to builddir if builddir != srcdir.
Update snippet taken from autoconf's m4sh.m4 to current CVS version.
Be more verbose.

* include/freetype/config/ftmodule.h: Add comments -- this file is
no longer used if FreeType is built with GNU make.

* docs/CHANGES, docs/CUSTOMIZE, docs/INSTALL, docs/INSTALL.ANY,
docs/INSTALL.GNU, docs/INSTALL.UNX: Document new build mechanism.
Other minor updates.

* modules.txt: Removed.  Contents included in `modules.cfg'.


* include/freetype/internal/ftmemory.h (FT_QAlloc_Debug,
FT_Free_Debug) [FT_STRICT_ALIASING]: Fix typos.

* src/base/ftdbgmem.c (FT_Alloc_Debug, FT_Realloc_Debug,
FT_QAlloc_Debug, FT_QRealloc_Debug, FT_Free_Debug)
[FT_STRICT_ALIASING]: Implement.
2006-01-31 20:17:42 +00:00
David Turner 7213b4febd * builds/unix/configure.ac: fixed build problem on Cygwin
* builds/unix/install.mk: the installation now avoids installing
    the internal headers, and removes existing ones if finds in the
    target install directory
2006-01-27 16:42:32 +00:00
Werner Lemberg be3c9814a4 Formatting, copyright years. 2006-01-27 14:16:16 +00:00
David Turner 97c6418560 * builds/win32/visualc/freetype.dsp: updating project file to
define FT2_BUILD_LIBRARY, and remove gxvalid+otvalid from
    compilation
2006-01-27 12:06:37 +00:00
David Turner ff0e9e6c0d * builds/freetype.mk, Jamfile: define the macro FT2_BUILD_LIBRARY
when compiling the library.

    * include/freetype/config/ftheader.h: remove inclusions of
    internal headers, except if the macro FT2_BUILD_LIBRARY is defined.
2006-01-27 09:15:53 +00:00
Werner Lemberg ed70ca5a0f * builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
`texinfo' CVS module at savannah.gnu.org.
2006-01-23 07:28:03 +00:00
Werner Lemberg 8b560632d7 * builds/win32/visualc/freetype.dsp: Updated.
Typos.
2006-01-19 08:30:58 +00:00
Werner Lemberg 435046b54b Formatting, improving comments. 2006-01-11 10:57:42 +00:00
Suzuki, Toshiya (鈴木俊哉) f8d16cc540 * Fix 'deprecated' warnings in building for MacOS 2006-01-11 09:28:38 +00:00
Detlef Würkner 6e0d20bbbd Adjusted the compiler options to the current sources. 2005-11-25 08:02:57 +00:00
Detlef Würkner ba0893c915 The assumed Seek() position in the file cache was off by one byte. 2005-11-25 08:01:54 +00:00
Suzuki, Toshiya (鈴木俊哉) 6b1c597cba MPW makefiles are updated to build all available modules 2005-11-24 05:16:57 +00:00
Werner Lemberg 1a293d6c73 * src/sfnt/ttload.c (tt_face_load_metrics): Ignore excess number
of metrics instead of aborting.  Patch suggested by Derek Noonburg.
2005-11-18 08:23:06 +00:00
Wu, Chia-I (吳佳一) cb18238109 * builds/unix/ftsystem.c (FT_Stream_Open, FT_New_Memory,
FT_Done_Memory), builds/vms/ftsystem.c (FT_Stream_Open, FT_New_Memory,
FT_Done_Memory), builds/win32/ftdebug.c (FT_Message, FT_Panic):
s/FT_EXPORT/FT_BASE/.
2005-11-18 04:29:31 +00:00
Detlef Würkner 5d021d6996 s/FT_EXPORT/FT_BASE/. 2005-11-17 16:28:41 +00:00
Detlef Würkner c280d868de Added support for gxvalid module. 2005-11-17 14:19:30 +00:00
Wu, Chia-I (吳佳一) 35bfc0f1b9 * src/base/ftcalc.c (FT_MulTo64): Commented out.
* include/freetype/internal/ftcalc.h (FT_SqrtFixed), src/base/ftcalc.c
(FT_SqrtFixed), include/freetype/internal/ftdebug.h
(FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic),
src/base/ftdebug.c (FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message,
FT_Panic), include/freetype/internal/ftobjs.h (FT_New_Memory,
FT_Done_Memory), include/freetype/internal/ftstream.h
(FT_Stream_Open), src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory,
FT_Stream_Open): s/FT_EXPORT/FT_BASE/.

* builds/exports.mk: Manually add TT_New_Context to EXPORTS_LIST too.
2005-11-17 01:53:07 +00:00
Werner Lemberg cee37a3b0a Clean-up. 2005-11-12 07:34:40 +00:00
Werner Lemberg f2c5330a86 * builds/exports.mk ($(EXPORTS_LIST)): Add TT_RunIns. 2005-11-11 16:20:59 +00:00
Werner Lemberg 21ed634e8e Add copyright.
Clean-up.
2005-11-11 15:59:33 +00:00
Werner Lemberg 4309edccfd * src/autofit/afangles.c, src/autofit/aftypes.h (af_angle_diff):
Comment out.  Unused.


* builds/beos/beos.mk: Call beos-def.mk before anything else to
define the separator.

* builds/unix/unix-cc.in (LINK_LIBRARY): Add `-no-undefined' flag.
2005-11-11 15:49:14 +00:00
Werner Lemberg b2d025306e * src/base/ftobjs.c (FT_Open_Face): Avoid possible memory leak.
Make compiling instructions in docs/CUSTOMIZE work again.

* builds/unix/unix-cc.in (CPPFLAGS): New variable.
(CFLAGS): Don't include @CPPFLAGS@.
* builds/freetype.mk (FT_CFLAGS): Add CPPFLAGS.
2005-11-04 06:58:49 +00:00
David Turner c1aef3fccb adding missing file - oops 2005-10-28 19:24:11 +00:00
David Turner 9fbd2ab884 - various performance enhancements
- fixing apinames.c, adding support for Watcom and Borland compilers
- adding generation of exported symbols list to the build system, including the Unix one !!

sorry Werner, I have no time to document this in ChangeLog at the moment
2005-10-28 16:14:14 +00:00
Suzuki, Toshiya (鈴木俊哉) 69d45172b6 update files for classic MacOS support 2005-10-28 16:03:06 +00:00
Werner Lemberg d6e8b3315c * builds/unix/freetype2.m4: Add license exception so that the file
can be used in any other autoconf script.
2005-09-28 06:49:13 +00:00
Werner Lemberg b82e773b34 * builds/unix/freetype2.in (CFlags): Add missing directory. 2005-08-26 05:50:27 +00:00
Werner Lemberg 49f4d34ed3 * src/base/ftoutln.c (FT_Outline_Embolden): Strength should be
halved.

* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Change the default
strength.
Don't increase slot->advance.y.



* include/freetype/freetype.h (FREETYPE_MINOR): Set to 2.
(FREETYPE_PATCH): Set to 0.

* builds/unix/configure.ac (version_info): Set to 9:9:3.
Currently, we are still binary compatible.

* builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/.

* builds/freetype.mk (refdoc), README, Jamfile (RefDoc):
s/2.1.9/2.1.10/.

* docs/CHANGES, docs/VERSION.DLL: Updated.

* ChangeLog: Split off older entries into...
* ChangeLog.20, ChangeLog.21: These new files.



The next release will be 2.2.0, so don't worry about source code
backwards compatibility.

* include/freetype/ftimage.h (FT_Outline_MoveToFunc,
FT_Outline_LineToFunc, FT_Outline_ConicToFunc,
FT_Outline_CubicToFunc, FT_SpanFunc, FT_Raster_RenderFunc),
include/freetype/ftrender.h (FT_Glyph_TransformFunc,
FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Decorate
parameters with `const' where appropriate.



* src/sfnt/ttsbit.c (tt_face_load_sbit_image): Compute vertBearingY
to make glyphs centered vertically.

* src/truetype/ttgload.c (compute_glyph_metrics): Compute
vertBearingY to make glyphs centered vertically.
Fix some bugs in vertical metrics:

  . loader->pp3.y and loader->pp4.y are in 26.6 format, not in font
    units.
  . As we use the glyph's cbox to calculate the top bearing now
    there iss no need to adjust `top'.



* src/otvalid/otvcommn.h (OTV_OPTIONAL_TABLE): Use FT_UShort to be
in sync with OTV_OPTIONAL_OFFSET.  Reported by YAMATO Masatake.


* docs/release: Update.
2005-06-16 19:07:08 +00:00
Werner Lemberg 288ce14303 * builds/amiga/*: Added copyright notes, reworked some comments. 2005-06-08 11:56:55 +00:00
Werner Lemberg 0f1c4fa7c6 Minor documentation fixes.
Include stuff created by autogensh. in .cvsignore.
2005-06-06 07:01:47 +00:00
Werner Lemberg 60a04df7b0 Add license. 2005-06-04 23:04:30 +00:00
Werner Lemberg 192549559c typos. 2005-06-02 07:14:04 +00:00
Werner Lemberg 92aa527a1c * builds/amiga/makefile.os4 (WARNINGS), builds/compiler/gcc-dev.mk
(CFLAGS), builds/compiler/gcc.mk (CFLAGS): Remove
-fno-strict-aliasing.


Say you have `(Foo*)x' and want to assign, pass, or return it as
`(Bar*)'.  If you simply say `x' or `(Bar*)x', then the C compiler
would warn you that type casting incompatible pointer types breaks
strict-aliasing.  The solution is to cast to `(void*)' instead which
is the generic pointer type, so the compiler knows that it should
make no strict-aliasing assumption on `x'.  But the problem with
`(void*)x' is that seems like in C++, unlike C, `void*' is not a
generic pointer type and assigning `void*' to `Bar*' without a cast
causes an error.  The solution is to cast to `Bar*' too, with
`(Bar*)(void*)x' as the result -- this is what the patch does.

* include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP),
include/freetype/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): Remove
cast on lvalue, use a temporary pointer instead.
Cast temporarily to (void*) to not break strict aliasing.

* include/freetype/internal/ftmemory.h (FT_MEM_ALLOC,
FT_MEM_REALLOC, FT_MEM_QALLOC, FT_MEM_QREALLOC, FT_MEM_FREE),
src/base/ftglyph.c (FT_Glyph_To_Bitmap): Cast temporarily to (void*)
to not break strict aliasing.

* src/base/ftinit.c (FT_USE_MODULE): Fix wrong type information.

* builds/unix/configure.ac (XX_CFLAGS): Remove -fno-strict-aliasing.

* src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttsbit0.c --
it is currently loaded from ttsbit.c.


Other formatting.
2005-05-23 21:33:02 +00:00
Werner Lemberg ce235eaf09 * builds/win32/visualc/freetype.vcproj: Updated.
Exclude debug info for `Release' versions to reduce library size.


* src/base/ftobjs.c (FT_Open_Face): Make it work as documented, this
is, ignore `aface' completely if face_index < 0.  Reported by David
Osborn <spam@habitualhiatus.com>.


* include/freetype/ftimage.h (FT_Outline_MoveToFunc,
FT_Outline_LineTo_Func, FT_Outline_ConicToFunc,
FT_Outline_CubicToFunc), src/smooth/ftgrays.c (gray_render_conic,
gray_render_cubic, gray_move_to, gray_line_to, gray_conic_to,
gray_cubic_to, gray_render_span, gray_sweep): Decorate parameters
with `const' where appropriate.
2005-05-17 20:35:23 +00:00
Werner Lemberg a6e9ff3d20 * builds/amiga/src/base/ftsystem.c (ft_amiga_stream_io): Fix buffer
offsets after a large read.
2005-03-26 22:57:57 +00:00
Werner Lemberg 4a80d05e51 Update of the Amiga port.
* builds/amiga/makefile, builds/amiga/makefile.os4,
builds/amiga/smakefile: Included the base extension files
(ftbitmap.c, ftotval.c, ftpfr.c, ftstroke.c, ftxf86.c).
2005-03-26 10:18:38 +00:00
Werner Lemberg 61c2c33ac6 Update of the Amiga port.
* builds/amiga/makefile, builds/amiga/smakefile: Handle new modules.

* builds/amiga/makefile.os4: Makefile for AmigaOS4 SDK.

* builds/amiga/README: Updated.

* builds/amiga/include/freetype/config/ftconfig.h: Handle gcc for
AmigaOS4.

* builds/amiga/include/freetype/config/ftmodule.h: Handle new
modules.

* builds/amiga/src/base/ftdebug.c: Updated to current version of
default ftdebug.c.
Add various include files and macros to have proper support for
both AmigaOS4 and older AmigaOS versions.
Don't declare KVPrintF explicitly.
Replace getenv with GetVar.
Actually enable debugging code.

* builds/amiga/src/base/ftsystem.c: Major rewrite.
2005-03-25 22:18:01 +00:00
Werner Lemberg b0db0fc2c5 * autogen.sh: New script for bootstrapping.
* README.CVS: New file which documents bootstrapping.

* builds/unix/aclocal.m4, builds/unix/config.guess,
builds/unix/config.sub, builds/unix/configure,
builds/unix/ltmain.sh: Removed.
2005-03-05 17:05:35 +00:00
Werner Lemberg 014d571407 * builds/unix/ltmain.sh: Regenerated with `libtoolize --force
--copy' from libtool 1.5.14.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.9.4.

* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org.

* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
`texinfo' CVS module at subversions.gnu.org.
2005-02-20 08:22:30 +00:00
Werner Lemberg c9114b9926 * builds/unix/freetype-config.in: Add new flag `--ftversion' to
return the FreeType version.  Suggested by George Williams
<gww@silcom.com>.


* docs/CHANGES: Updated.


* src/otvalid/otvmod.c (otv_validate): Deallocate arrays in case
of error.  Reported by YAMANO-UCHI Hidetoshi <mer@din.or.jp>.


* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
<op_closepath>: Accept `T1_Parse_Have_Moveto' state also which can
happen in empty glyphs.  Reported by Ian Brown
<ian.brown@printsoft.de>.
2005-02-10 08:18:27 +00:00
Werner Lemberg cc7cab815c * builds/unix/ftsystem.c (FT_Stream_Open): Add proper cast for
ft_alloc.
Fix compiler warning.
2004-12-28 23:08:51 +00:00
Werner Lemberg 4e6ea4052a * builds/unix/ltmain.sh: Regenerated with `libtoolize --force
--copy' from libtool 1.5.10.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.9.4.
* builds/unix/configure: Regenerated with autoconf 2.59b.

* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org.

* builds/unix/install-sh: Updated from
`texinfo' CVS module at subversions.gnu.org.
2004-12-28 15:06:58 +00:00
Werner Lemberg d14023d232 * builds/unix/install.mk (install): Use $(OBJ_BUILD) for ftconfig.h. 2004-12-06 08:42:41 +00:00
Werner Lemberg de015d6c28 Minor fixes. 2004-11-23 21:38:16 +00:00
Antoine Leca fc9df61408 * builds/dos/detect.mk: Added same correction as for win32
about COPY on Windows NT. Detection of plain DOS 7.x.
2004-11-23 17:49:40 +00:00
Antoine Leca b58191ccf2 * builds/win32/detect.mk: Corrected logic that detects
Windows NT to use the previous change even when win32 is
forced. Corrected detection of win32 on Win9X.
2004-11-23 17:48:52 +00:00
Werner Lemberg 360c271c17 * builds/detect.mk: Undo change from 2004-11-20.
* builds/win32/detect.mk: If the `OS' environment variable contains
`Windows_NT', use `cmd.exe /c copy' for copying files.
2004-11-23 09:17:16 +00:00
Werner Lemberg b2072add4b * builds/detect.mk (dos_setup): Use `cmd.exe' for copying
$(CONFIG_MK) to force lowercase file name under Windows.
2004-11-20 12:45:13 +00:00
Werner Lemberg bbdee28f75 * builds/unix/configure.ac: Add `-fno-strict-aliasing' if gcc is
used.
* builds/unix/configure: Regenerated.
* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org.


* src/cache/ftcglyph.c (FTC_GNode_UnselectFamily,
FTC_GCache_Lookup): Fix comparison with zero.

* docs/INSTALL.VMS: Updated.

* vms_make.com: Updated.  All `descrip.mms' files are now created
automatically.

* src/*/descrip.mms: Removed.
2004-11-17 08:19:27 +00:00
Owen Taylor faedb01ec5 2004-11-16 Owen Taylor <otaylor@redhat.com>
* builds/unix/freetype-config.in: Supress -L$libdir for
        /usr/lib64 as well as /usr/lib. (Reported by Dan Winship -
        https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=139199)
2004-11-16 13:06:43 +00:00
Werner Lemberg 4b8397c775 * src/otlayout/otlgpos.c (otl_gpos_subtable_validate): Add argument
to pass number of lookups.
Update all callers.
Don't call otl_lookup_list_validate but otl_lookup_validate.
(otl_gpos_validate): Call otl_lookup_list_validate instead of
otl_gpos_subtable_validate.

* src/otlayout/otlgpos.h: Updated.

* src/otlayout/otljstf.c (otl_jstf_max_validate): Add argument to
pass number of lookups.
Update all callers.


* src/cff/cffparse.c (cff_parse_real): s/exp/exponent/ to avoid
compiler warning.


* src/sfnt/ttcmap0.c, src/sfnt/ttcmap0.h: Renamed to...
* src/sfnt/ttcmap.c, src/sfnt/ttcmap.h: This.
* src/sfnt/Jamfile, src/sfnt/rules.mk, src/sfnt/sfdriver.c,
src/sfnt/sfnt.c, src/sfnt/sfobjs.c: Updated.


* builds/compiler/gcc-dev.mk (CFLAGS): Don't add `-Wnested-externs'
if compiler is g++ (v3.3.3 emits a warning otherwise).
2004-08-29 16:50:09 +00:00
Werner Lemberg 17439423f8 * src/base/ftstream.c (FT_Stream_Close): Don't reset stream->close
to NULL.  This allows custom close functions to delete the FT_STREAM
object.


Add API to get information about SFNT tables.

* include/freetype/internal/services/svsfnt.h
(FT_SFNT_Table_Info_Func): New typedef.
(SFNT_Table): Add it.

* src/base/ftobjs (FT_Sfnt_Table_Info): New function.

* include/freetype/tttables.h: Updated.

* src/sfnt/sfdriver.c (sfnt_table_info): New function.
(sfnt_service_sfnt_table): Add it.

* docs/CHANGES: Updated.


* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.

* builds/unix/configure.ac (version_info): Set to 9:8:3.
* builds/unix/configure: Updated.

* builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/.

* builds/freetype.mk (refdoc), README, Jamfile (RefDoc):
s/2.1.8/2.1.9/.

* docs/CHANGES, docs/VERSION.DLL: Updated.


* src/base/ftrfork.c (FT_Raccess_Guess)
[!FT_CONFIG_OPTION_GUESSING_EMBEDDED_FORK]: Remove compiler
warnings.
2004-08-11 05:25:37 +00:00
Werner Lemberg 86ae11cf87 * src/truetype/ttobjs.h, src/truetype/ttobjs.c (tt_face_init,
tt_face_done, tt_size_init, tt_size_done, tt_driver_init,
tt_driver_done): Don't use TT_XXX but FT_XXX arguments which are
typecast to the proper TT_XXX within the function.
Update code accordingly.

* src/truetype/ttdriver.c (Get_Kerning, Set_Char_Sizes,
Set_Pixel_Sizes, Load_Glyph, tt_get_interface): Don't use TT_XXX but
FT_XXX arguments which are typecast to the proper TT_XXX within the
function.
Update code accordingly.
(tt_driver_class): Remove casts.
2004-05-04 16:53:45 +00:00
Werner Lemberg e95365b291 * include/freetype/ftcache.h (FT_Get_CharMap_Index): Rename
declaration and move to...
* include/freetype/freetype.h (FT_Get_Charmap_Index): Here.
(FREETYPE_PATCH): Set to 9.

* src/base/ftobjs.c (FT_Get_Charmap_Index): New function.

* builds/unix/configure.ac (version_info): Set to 9:7:3.
* builds/unix/configure: Updated.

* builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj: s/218/219/.

* builds/freetype.mk (refdoc), README, Jamfile (RefDoc):
s/2.1.8/2.1.9/.

* docs/CHANGES, docs/VERSION.DLL: Updated.
2004-04-24 14:43:37 +00:00
Werner Lemberg 2a37b3055d * builds/unix/freetype-config.in (usage): Fix and improve usage
information.
2004-04-17 18:58:43 +00:00
Werner Lemberg ba80d61c7a * builds/unix/ftconfig.in, builds/vms/ftconfig.h: Define
FT_CHAR_BIT.

* src/base/ftobjs.c (FT_Load_Glyph): Don't apply autohinting if
glyph is vertically distorted or mirrored.

* src/cff/cffgload.c (cff_slot_load): Handle zero `size' properly
for embedded bitmaps.

* docs/CHANGES: Updated.
2004-04-16 09:56:30 +00:00
Werner Lemberg 3599a028b6 * src/base/ftmac.c [__GNUC__]: Define OS_INLINE.
* builds/unix/configure.ac: Don't try to remove `-ansi' compilation
switch on the Mac.

* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
--copy' from libtool 1.5.6.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.8a.
* builds/unix/configure: Regenerated with autoconf 2.59a.
2004-04-14 08:49:11 +00:00
Werner Lemberg 26eccb409f * configure: Accept makepp also.
* builds/unix/detect.mk: Use proper path to unix-def.mk.
* builds/unix/unix-def.in (BUILD_DIR, PLATFORM): Remove.
* builds/unix/unix.mk (BUILD_DIR, PLATFORM): Define.
Use BUILD_DIR.

* docs/INSTALL, docs/INSTALL.GNU, docs/INSTALL.UNX: Update
documentation on makepp.
2004-04-13 08:35:05 +00:00
Werner Lemberg 7947796cd2 * builds/unix/ltmain.sh: Regenerated with `libtoolize --force
--copy' from libtool 1.5.2.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.8a.
* builds/unix/configure: Regenerated with autoconf 2.59a.
2004-04-03 20:13:43 +00:00
Werner Lemberg 33e906425d * builds/unix/ft-munmap.m4 (FT_MUNMAP_PARAM): Fix arguments of
AC_COMPILE_IFELSE.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.8a.
* builds/unix/configure: Regenerated with autoconf 2.59a.
* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org
* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
`texinfo' CVS module at subversions.gnu.org.
* builds/freetype.mk (refdoc): Updated.
2004-04-02 07:13:53 +00:00
Werner Lemberg dfa46199d2 * Jamfile, vms_make.com, builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype/vcproj, include/freetype/ftmoderr.h:
Add LZW module.

* Jamfile.in: Removed.

* docs/CHANGES: Updated.

* include/freetype/internal/ftobjs.h: s/MIN/FT_MIN/, s/MAX/FT_MAX/,
s/ABS/FT_ABS/.  Updated all callers.

* src/type1/t1load.c (parse_dict), src/pcf/pcfdrivr.c
(PCF_Face_Init): Use FT_ERROR_BASE.



Add support for PCF fonts compressed with LZW (extension .pcf.Z,
created with `compress').

* include/freetype/config/ftoption.h, devel/ftoption.h
(FT_CONFIG_OPTION_USE_LZW): New macro.

* include/freetype/ftlzw.h: New file.
* include/freetype/config/ftheader.h (FT_LZW_H): New macro for
ftlzw.h.

* src/lzw/*: New files.

* src/pcf/pcfdrivr.c: Include FT_LZW_H.
(PCF_Face_Init): Try LZW also.

* src/gzip/ftgzip.c: s/0/Gzip_Err_Ok/ where appropriate.
Beautify.
2004-03-05 09:26:24 +00:00
Werner Lemberg ca7ef5ee06 * builds/unix/configure.ac: Fix compiler flags for
`--with-old-mac-fonts'.
* builds/unix/configure: Regenerated.

* src/base/ftmac.c: s/TARGET_API_MAC_CARBON/!TARGET_API_MAC_OS8/.
(FT_New_Face_From_Resource): New function.
(FT_New_Face): Use FT_New_Face_From_Resource.
(FT_New_Face_From_FSSpec): Use FT_New_Face_From_Resource.
[__MWERKS__]: Don't include FSp_fopen.h.
2004-02-28 19:12:01 +00:00
Werner Lemberg d1d2b458e9 * builds/unix/ftsystem.c: Include errno.h.
(ft_close_stream): Renamed to...
(ft_close_stream_by_munmap): This.
(ft_close_stream_by_free): New function.
(FT_Stream_Open): Use fallback method if mmap fails.
Use proper function for closing the stream.

* src/type1/t1load.c (parse_dict): Initialize `start_binary'.
2004-02-16 09:38:05 +00:00
Werner Lemberg 53a1edd42b * builds/unix/configure.in: Call AC_SUBST for `enable_shared',
`hardcode_libdir_flag_spec', and `wl'.
* builds/unix/configure: Regenerated.

* builds/unix/freetype-config.in: Make --prefix and --exec-prefix
actually work.
Report a proper --rpath (or -R) value for --libs argument if a
shared library has been built.

* docs/CHANGES: Updated.
2004-02-08 22:45:48 +00:00
Werner Lemberg 9cef479d3b * builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.dsw, docs/CHANGES: Updated.

* builds/win32/visualc/freetype.sln,
builds/win32/visualc/freetype.vcproj: New files for VS.NET 2003.
2004-02-08 09:07:08 +00:00
Antoine Leca 4187e61bfe * builds/win32/visualc/index.html: detailled explanations
about forcing CR+LF line endings for the VC++ project files.
2004-01-29 11:25:47 +00:00
David Turner b4e9ca4222 automatically-generated version updates 2003-12-19 04:03:50 +00:00
David Turner e186c71c4a automatically-generated version updates 2003-12-19 03:59:33 +00:00
Werner Lemberg 9f6e13658a Initial revision 2003-12-16 06:15:24 +00:00
David Turner ff9d2415a7 * src/autofit/*: more updates 2003-11-23 21:39:51 +00:00
Werner Lemberg e42dbcec21 * Version 2.1.7 released.
=========================


* builds/unix/ft2unix.h: Fix comments.

* builds/unix/ftconfig.in: Synchronized with ANSI version.
Use `#undef' in templates as recommended in the autoconf
documentation.
Since real `#undef' lines don't survive during configuration, use
`/undef' instead; the postprocessing facility of the
AC_CONFIG_HEADERS autoconf macro converts them to `#undef'.

* builds/unix/install.mk (install): Install Unix version of
`ftconfig.h'.

* builds/unix/unix-cc.in (CFLAGS): Set FT_CONFIG_CONFIG_H macro
to include the correct `ftconfig.h' file.

* builds/unix/ft-munmap.m4 (FT_MUNMAP_DECL): Removed.
(FT_MUNMAP_PARAM): Updated syntax to autoconf 2.59.

* builds/unix/freetype2.m4: Updated syntax to autoconf 2.59.

* builds/unix/configure.ac: Use AC_CONFIG_HEADERS instead of
AC_CONFIG_HEADER to create ftconfig.h, and use second argument
to replace `/undef' with `#undef'.
Don't use FT_MUNMAP_DECL but AC_CHECK_DECLS to check for munmap.
Use AS_HELP_STRING in AC_ARG_WITH.
Update syntax to autoconf 2.59.

* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
--copy' from libtool 1.5.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.7.8.
* builds/unix/configure: Regenerated with autoconf 2.59.
* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org
* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
`texinfo' CVS module at subversions.gnu.org.

* builds/vms/ftconfig.h: Synchronized with ANSI version.

* docs/CUSTOMIZE: Fix documentation error.
* docs/CHANGES, docs/VERSION.DLL, docs/release: Updated.

* builds/freetype.mk (refdoc): Updated --title.
2003-11-09 08:37:14 +00:00