modules/freetype2/docs/VERSION.DLL

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/modules/freetype2/docs/VERSION.DLL	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,126 @@
     1.4 +Due  to our  use of  `libtool' to  generate and  install the  FreeType 2
     1.5 +libraries on  Unix systems, as  well as  other historical events,  it is
     1.6 +generally very  difficult to  know precisely which  release of  the font
     1.7 +engine is installed on a given system.
     1.8 +
     1.9 +This file tries  to explain why and to document  ways to properly detect
    1.10 +FreeType on Unix.
    1.11 +
    1.12 +
    1.13 +1. Version and Release numbers
    1.14 +------------------------------
    1.15 +
    1.16 +For each new  public release of FreeType 2, there  are generally *three*
    1.17 +distinct `version' numbers to consider:
    1.18 +
    1.19 +  * The official FreeType 2 release number, like 2.3.1 or 2.4.10.
    1.20 +
    1.21 +  * The libtool (and  Unix) specific version number,  like 13.0.7.  This
    1.22 +    is what `freetype-config --version' returns.
    1.23 +
    1.24 +  * The platform-specific  shared object  number, used for  example when
    1.25 +    the library is installed as `/usr/lib/libfreetype.so.6.7.1'.
    1.26 +
    1.27 +The platform-specific  number is, unsurprisingly,  platform-specific and
    1.28 +varies  with the  operating system  you are  using (several  variants of
    1.29 +Linux, FreeBSD,  Solaris, etc.).  You  should thus _never_ use  it, even
    1.30 +for simple tests.
    1.31 +
    1.32 +The libtool-specific  number does  not equal the  release number  but is
    1.33 +tied to it.
    1.34 +
    1.35 +The release number is available  at *compile* time through the following
    1.36 +macros defined in FT_FREETYPE_H:
    1.37 +
    1.38 +  - FREETYPE_MAJOR: major release number
    1.39 +  - FREETYPE_MINOR: minor release number
    1.40 +  - FREETYPE_PATCH: patch release number
    1.41 +
    1.42 +See below for a small autoconf fragment.
    1.43 +
    1.44 +The  release  number   is  also  available  at   *runtime*  through  the
    1.45 +`FT_Library_Version' API.
    1.46 +
    1.47 +
    1.48 +2. History
    1.49 +----------
    1.50 +
    1.51 +The  following   table  gives,  for   all  releases  since   2.3.0,  the
    1.52 +corresponding libtool number, as well  as the shared object number found
    1.53 +on _most_ systems, but not all of them:
    1.54 +
    1.55 +
    1.56 +    release     libtool     so
    1.57 +  -------------------------------
    1.58 +     2.5.3      17.2.11   6.11.2
    1.59 +     2.5.2      17.1.11   6.11.1
    1.60 +     2.5.1      17.0.11   6.11.0
    1.61 +     2.5.0      16.2.10   6.10.2
    1.62 +     2.4.12     16.1.10   6.10.1
    1.63 +     2.4.11     16.0.10   6.10.0
    1.64 +     2.4.10     15.0.9    6.9.0
    1.65 +     2.4.9      14.1.8    6.8.1
    1.66 +     2.4.8      14.0.8    6.8.0
    1.67 +     2.4.7      13.2.7    6.7.2
    1.68 +     2.4.6      13.1.7    6.7.1
    1.69 +     2.4.5      13.0.7    6.7.0
    1.70 +     2.4.4      12.2.6    6.6.2
    1.71 +     2.4.3      12.1.6    6.6.1
    1.72 +     2.4.2      12.0.6    6.6.0
    1.73 +     2.4.1      11.1.5    6.5.1
    1.74 +     2.4.0      11.0.5    6.5.0
    1.75 +     2.3.12     10.0.4    6.4.0
    1.76 +     2.3.11     9.22.3    6.3.22
    1.77 +     2.3.10     9.21.3    6.3.21
    1.78 +     2.3.9      9.20.3    6.3.20
    1.79 +     2.3.8      9.19.3    6.3.19
    1.80 +     2.3.7      9.18.3    6.3.18
    1.81 +     2.3.6      9.17.3    6.3.17
    1.82 +     2.3.5      9.16.3    6.3.16
    1.83 +     2.3.4      9.15.3    6.3.15
    1.84 +     2.3.3      9.14.3    6.3.14
    1.85 +     2.3.2      9.13.3    6.3.13
    1.86 +     2.3.1      9.12.3    6.3.12
    1.87 +     2.3.0      9.11.3    6.3.11
    1.88 +
    1.89 +
    1.90 +3. Autoconf Code Fragment
    1.91 +-------------------------
    1.92 +
    1.93 +Lars Clausen contributed the following autoconf fragment to detect which
    1.94 +version of  FreeType is  installed on  a system.  This  one tests  for a
    1.95 +version that  is at least 2.0.9;  you should change it  to check against
    1.96 +other release numbers.
    1.97 +
    1.98 +
    1.99 +  AC_MSG_CHECKING([whether FreeType version is 2.0.9 or higher])
   1.100 +  old_CPPFLAGS="$CPPFLAGS"
   1.101 +  CPPFLAGS=`freetype-config --cflags`
   1.102 +  AC_TRY_CPP([
   1.103 +
   1.104 +#include <ft2build.h>
   1.105 +#include FT_FREETYPE_H
   1.106 +#if (FREETYPE_MAJOR*1000 + FREETYPE_MINOR)*1000 + FREETYPE_PATCH < 2000009
   1.107 +#error Freetype version too low.
   1.108 +#endif
   1.109 +  ],
   1.110 +  [AC_MSG_RESULT(yes)
   1.111 +   FREETYPE_LIBS=`freetype-config --libs`
   1.112 +   AC_SUBST(FREETYPE_LIBS)
   1.113 +   AC_DEFINE(HAVE_FREETYPE,1,[Define if you have the FreeType2 library])
   1.114 +   CPPFLAGS="$old_CPPFLAGS"],
   1.115 +  [AC_MSG_ERROR([Need FreeType library version 2.0.9 or higher])])
   1.116 +
   1.117 +------------------------------------------------------------------------
   1.118 +
   1.119 +Copyright 2002-2014 by
   1.120 +David Turner, Robert Wilhelm, and Werner Lemberg.
   1.121 +
   1.122 +This  file is  part  of the  FreeType  project, and  may  only be  used,
   1.123 +modified,  and  distributed under  the  terms  of  the FreeType  project
   1.124 +license, LICENSE.TXT.  By continuing  to use, modify, or distribute this
   1.125 +file  you indicate that  you have  read the  license and  understand and
   1.126 +accept it fully.
   1.127 +
   1.128 +
   1.129 +--- end of VERSION.DLL ---

mercurial