108 lines
3.4 KiB
Plaintext
108 lines
3.4 KiB
Plaintext
README.git
|
||
==========
|
||
|
||
|
||
repository issues
|
||
-----------------
|
||
|
||
FreeType's official repository site is
|
||
|
||
https://gitlab.freedesktop.org/freetype ,
|
||
|
||
from which the 'freetype.git' and 'freetype-demos.git' repositories
|
||
can be cloned in the usual way.
|
||
|
||
git clone https://gitlab.freedesktop.org/freetype/freetype.git
|
||
git clone https://gitlab.freedesktop.org/freetype/freetype-demos.git
|
||
|
||
If you want to use the Savannah mirror instead, you have to do a
|
||
slightly different incantation because the repository names contain
|
||
digit '2' for historical reasons.
|
||
|
||
git clone \
|
||
https://git.savannah.nongnu.org/git/freetype/freetype2.git \
|
||
freetype
|
||
git clone \
|
||
https://git.savannah.nongnu.org/git/freetype/freetype2-demos.git \
|
||
freetype-demos
|
||
|
||
|
||
standard builds with `configure`
|
||
--------------------------------
|
||
|
||
The git repository doesn't contain pre-built configuration scripts for
|
||
UNIXish platforms. To generate them say
|
||
|
||
sh autogen.sh
|
||
|
||
which in turn depends on the following packages:
|
||
|
||
automake (1.10.1)
|
||
libtool (2.2.4)
|
||
autoconf (2.62)
|
||
|
||
The versions given in parentheses are known to work. Newer versions
|
||
should work too, of course. Note that `autogen.sh` also sets up
|
||
proper file permissions for the `configure` and auxiliary scripts.
|
||
|
||
The `autogen.sh` script checks whether the versions of the above three
|
||
tools match the numbers above. Otherwise it will complain and suggest
|
||
either upgrading or using environment variables to point to more
|
||
recent versions of the required tools.
|
||
|
||
Note that `aclocal` is provided by the 'automake' package on Linux,
|
||
and that `libtoolize` is called `glibtoolize` on Darwin (OS X).
|
||
|
||
|
||
alternative build methods
|
||
-------------------------
|
||
|
||
For static builds that don't use platform-specific optimizations, no
|
||
configure script is necessary at all; saying
|
||
|
||
make setup ansi
|
||
make
|
||
|
||
should work on all platforms that have GNU `make` (or `makepp`).
|
||
|
||
A build with `cmake` or `meson` can be done directly from the git
|
||
repository. However, if you want to use the `FT_DEBUG_LOGGING` macro
|
||
(see file `docs/DEBUG` for more information) it is currently mandatory
|
||
to execute `autogen.sh` in advance; this script clones the 'dlg' git
|
||
submodule and copies some files into FreeType's source tree.
|
||
|
||
|
||
contributing
|
||
------------
|
||
|
||
If you want to contribute to FreeType it is recommended to install the
|
||
`git-merge-changelog` program – we use a `ChangeLog` file, which often
|
||
prevents simple merging due to conflicts. Most GNU/Linux
|
||
distributions have a package for this program; otherwise you can
|
||
install it via the 'gnulib' git repository. Detailed instructions can
|
||
be found at the beginning of
|
||
|
||
https://git.savannah.gnu.org/cgit/gnulib.git/tree/lib/git-merge-changelog.c
|
||
|
||
To make it actually work, add to file `.git/config` in the FreeType
|
||
git repository (or to your `$HOME/.gitconfig` file) the lines
|
||
|
||
[merge "merge-changelog"]
|
||
name = GNU-style ChangeLog merge driver
|
||
driver = /usr/local/bin/git-merge-changelog %O %A %B
|
||
|
||
|
||
----------------------------------------------------------------------
|
||
|
||
Copyright (C) 2005-2021 by
|
||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||
|
||
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.
|
||
|
||
|
||
--- end of README.git ---
|