diff options
author | David Turner <david@freetype.org> | 2002-12-16 21:51:24 +0000 |
---|---|---|
committer | David Turner <david@freetype.org> | 2002-12-16 21:51:24 +0000 |
commit | 621e4886223a6528fee553f6618ed1c22297ad19 (patch) | |
tree | 328275fef287021cdfdef4856f676f4541b0b46f /docs | |
parent | c96f69dfaa57af0bd3e5d1f5dd030af69779f820 (diff) | |
download | freetype2-621e4886223a6528fee553f6618ed1c22297ad19.tar.gz |
2002-12-16 David Turner <david@freetype.org>
* docs/VERSION.DLL: updating document to better explain the differences between
the three version numbers being used on Unix, as well as provide the AutoConf
fragment provided by Lars Clausen
* src/smooth/ftgrays.c (gray_render_conic): fixed small bug that
prevented bezier arcs with negative vertical coordinates to be rendered
appropriately
2002-11-27 Vincent Caron <v.caron@zerodeux.net>
* builds/unix/unix-def.in, builds/unix/freetype-config.in,
builds/unix/configure.ac, src/gzip/rules.mk, src/gzip/ftgzip.c:
adding support for system zlib installations when available on the
target platform (Unix only)
Diffstat (limited to 'docs')
-rw-r--r-- | docs/VERSION.DLL | 79 |
1 files changed, 75 insertions, 4 deletions
diff --git a/docs/VERSION.DLL b/docs/VERSION.DLL index 43b1a1713..e3086e312 100644 --- a/docs/VERSION.DLL +++ b/docs/VERSION.DLL @@ -1,7 +1,78 @@ -Libtool's version for FreeType 2.1.3 is `9.2.3'. +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 engine is installed +on a given system. -On most platforms, the soname will be `6.3.2' (e.g. `libfreetype.so.6.3.2'). +This file tries to explain why and to document ways to properly detect +FreeType on Unix. -Libtool's version for FreeType 2.1.2 is `9.1.3'. -On most platforms, the soname will be `6.3.1' (e.g. `libfreetype.so.6.3.1'). +I. Version & Release numbers: + +For each new public release of FreeType 2, there are generally *three* +distinct "version" numbers to consider: + + * the official FT2 release number, like 2.0.9, or 2.1.3 + + * the libtool (and Unix) specific version number, like "9.2.3". This + is what "freetype-config --version" will return + + * the platform-specific shared object number, used for example when + the library is installed as "/usr/lib/libfreetype.so.6.3.2" + + +the platform-specific number is, unsurprisingly, platform-specific and varies +with the operating system you're using (several variants of Linux, FreeBSD, +Solaris, etc...). You should thus _never_ use it, even for simple tests. + +the libtool-specific number does not equal the release number but is tied +to it. + +the release number is available at *compile* time through the following +macros defined in FT_FREETYPE_H: + + - FREETYPE_MAJOR : major release number + - FREETYPE_MINOR : minor release number + - FREETYPE_PATCH : patch release number + +see below for some Autoconf fragment to + + +the release number is also available at *runtime* through the +"FT_Library_Version" API. Unfortunately, this one wasn't available or +working correctly before the 2.1.3 official release !! + + +II. Table: + +the following is a simple table that gives, for each official release, +the corresponding libtool number, as well as the shared object number +found on _most_ systems, but not all of them: + + release libtool so +------------------------------------- + 2.1.3 9.2.3 6.3.2 + 2.1.2 9.1.3 6.3.1 + 2.1.1 ? ? + 2.1.0 ? ? + 2.0.9 ? ? + + + + +III. AutoConf Code Fragment: + +Lars Clausen contributed the following Autoconf fragment to detect at +which version of FreeType is installed on your system. This one tests +for a version that is at least 2.0.9, you should change the last line to +check against other release numbers. + + AC_MSG_CHECKING([for version of FreeType]) + FREETYPE_INCLUDE=`freetype-config --cflags | cut -c3-` + FREETYPE_MAJOR=`grep '^#define FREETYPE_MAJOR' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3` + FREETYPE_MINOR=`grep '^#define FREETYPE_MINOR' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3` + FREETYPE_PATCH=`grep '^#define FREETYPE_PATCH' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3` + FREETYPE_VERSION=`echo | awk "BEGIN { printf \"%d\", ($FREETYPE_MAJOR * 1000 + $FREETYPE_MINOR) * 1000 + $FREETYPE_PATCH;}"` + AC_MSG_RESULT([$FREETYPE_MAJOR.$FREETYPE_MINOR.$FREETYPE_PATCH]) + if test "$FREETYPE_VERSION" -ge 2000009; then + |