etlegacy-libs/freetype/docs/VERSIONS.TXT

129 lines
3.9 KiB
Text
Raw Normal View History

2020-05-25 19:29:37 +00:00
Due to our use of `libtool' to generate and install the FreeType 2
libraries on Unix systems, as well as other historical events, it is
generally very difficult to know precisely which release of the font
2013-12-04 10:05:00 +00:00
engine is installed on a given system.
2020-05-25 19:29:37 +00:00
This file tries to explain why and to document ways to properly detect
2013-12-04 10:05:00 +00:00
FreeType on Unix.
1. Version and Release numbers
------------------------------
2020-05-25 19:29:37 +00:00
For each new public release of FreeType 2, there are generally *three*
2013-12-04 10:05:00 +00:00
distinct `version' numbers to consider:
2020-05-25 19:29:37 +00:00
* The official FreeType 2 release number, like 2.7.0 or 2.10.2.
2013-12-04 10:05:00 +00:00
2020-05-25 19:29:37 +00:00
* The libtool (and Unix) specific version number, like 23.2.17.
This is what
2013-12-04 10:05:00 +00:00
2020-05-25 19:29:37 +00:00
pkg-config freetype2 --modversion
2013-12-04 10:05:00 +00:00
2020-05-25 19:29:37 +00:00
or
freetype-config --version
returns.
* The platform-specific shared object number, used for example when
the library is installed as `/usr/lib/libfreetype.so.6.17.2'.
The platform-specific number is, unsurprisingly, platform-specific and
varies with the operating system you are using (several variants of
Linux, FreeBSD, Solaris, etc.). You should thus _never_ use it, even
2013-12-04 10:05:00 +00:00
for simple tests.
2020-05-25 19:29:37 +00:00
The libtool-specific number does not equal the release number but is
2013-12-04 10:05:00 +00:00
tied to it.
2020-05-25 19:29:37 +00:00
The release number is available at *compile* time through the
following macros defined in FT_FREETYPE_H:
2013-12-04 10:05:00 +00:00
- FREETYPE_MAJOR: major release number
- FREETYPE_MINOR: minor release number
- FREETYPE_PATCH: patch release number
See below for a small autoconf fragment.
2020-05-25 19:29:37 +00:00
The release number is also available at *runtime* through the
2013-12-04 10:05:00 +00:00
`FT_Library_Version' API.
2. History
----------
2020-05-25 19:29:37 +00:00
The following table gives, for all releases since 2.5.0, the
corresponding libtool number, as well as the shared object number
found on _most_ systems, but not all of them:
2013-12-04 10:05:00 +00:00
release libtool so
-------------------------------
2020-05-25 19:29:37 +00:00
2.10.2 23.2.17 6.17.2
2019-12-20 09:41:10 +00:00
2.10.1 23.1.17 6.17.1
2.10.0 23.0.17 6.17.0
2018-07-15 15:32:04 +00:00
2.9.1 22.1.16 6.16.1
2018-02-02 20:49:16 +00:00
2.9.0 22.0.16 6.16.0
2.8.1 21.0.15 6.15.0
2017-07-01 14:10:45 +00:00
2.8.0 20.0.14 6.14.0
2017-01-22 08:02:35 +00:00
2.7.1 19.0.13 6.13.0
2016-09-16 04:21:38 +00:00
2.7.0 18.6.12 6.12.6
2016-08-20 16:34:23 +00:00
2.6.5 18.5.12 6.12.5
2.6.4 18.4.12 6.12.4
2.6.3 18.3.12 6.12.3
2015-12-03 11:39:42 +00:00
2.6.2 18.2.12 6.12.2
2.6.1 18.1.12 6.12.1
2015-07-06 07:33:41 +00:00
2.6.0 18.0.12 6.12.0
2015-01-23 14:47:28 +00:00
2.5.5 17.4.11 6.11.4
2.5.4 17.3.11 6.11.3
2.5.3 17.2.11 6.11.2
2.5.2 17.1.11 6.11.1
2013-12-04 10:05:00 +00:00
2.5.1 17.0.11 6.11.0
2.5.0 16.2.10 6.10.2
3. Autoconf Code Fragment
-------------------------
2020-05-25 19:29:37 +00:00
Lars Clausen contributed the following autoconf fragment to check
which version of FreeType is installed on a system (now updated to use
`pkg-config' instead of `freetype-config'). This one tests for a
version that is at least 2.10.2; you should change it to check against
2013-12-04 10:05:00 +00:00
other release numbers.
2020-05-25 19:29:37 +00:00
AC_MSG_CHECKING([whether FreeType version is 2.10.2 or higher])
2013-12-04 10:05:00 +00:00
old_CPPFLAGS="$CPPFLAGS"
2020-05-25 19:29:37 +00:00
CPPFLAGS=`pkg-config freetype2 --cflags`
2013-12-04 10:05:00 +00:00
AC_TRY_CPP([
#include <ft2build.h>
#include FT_FREETYPE_H
2020-05-25 19:29:37 +00:00
#if FREETYPE_MAJOR*10000 + FREETYPE_MINOR*100 + FREETYPE_PATCH < 21002
# error FreeType version too low.
2013-12-04 10:05:00 +00:00
#endif
2020-05-25 19:29:37 +00:00
2013-12-04 10:05:00 +00:00
],
[AC_MSG_RESULT(yes)
2020-05-25 19:29:37 +00:00
FREETYPE_LIBS=`pkg-config freetype2 --libs`
2013-12-04 10:05:00 +00:00
AC_SUBST(FREETYPE_LIBS)
AC_DEFINE(HAVE_FREETYPE,1,[Define if you have the FreeType2 library])
CPPFLAGS="$old_CPPFLAGS"],
2020-05-25 19:29:37 +00:00
[AC_MSG_ERROR([Need FreeType library version 2.10.2 or higher])])
2013-12-04 10:05:00 +00:00
2020-05-25 19:29:37 +00:00
----------------------------------------------------------------------
2013-12-04 10:05:00 +00:00
2020-05-25 19:29:37 +00:00
Copyright (C) 2002-2020 by
2013-12-04 10:05:00 +00:00
David Turner, Robert Wilhelm, and Werner Lemberg.
2020-05-25 19:29:37 +00:00
This file is part of the FreeType project, and may only be used,
modified, and distributed under the terms of the FreeType project
license, LICENSE.TXT. By continuing to use, modify, or distribute
this file you indicate that you have read the license and understand
and accept it fully.
2013-12-04 10:05:00 +00:00
2016-08-20 16:34:23 +00:00
--- end of VERSIONS.TXT ---