Werner Lemberg | 8918419 | 2021-01-16 07:53:09 +0100 | [diff] [blame] | 1 | README.git |
Werner Lemberg | 5e32a03 | 2021-07-03 20:24:16 +0200 | [diff] [blame^] | 2 | ========== |
| 3 | |
| 4 | |
| 5 | repository issues |
| 6 | ----------------- |
Werner Lemberg | 8918419 | 2021-01-16 07:53:09 +0100 | [diff] [blame] | 7 | |
Werner Lemberg | 1578e57 | 2021-03-16 06:59:01 +0100 | [diff] [blame] | 8 | FreeType's official repository site is |
| 9 | |
| 10 | https://gitlab.freedesktop.org/freetype , |
| 11 | |
| 12 | from which the 'freetype.git' and 'freetype-demos.git' repositories |
| 13 | can be cloned in the usual way. |
| 14 | |
| 15 | git clone https://gitlab.freedesktop.org/freetype/freetype.git |
| 16 | git clone https://gitlab.freedesktop.org/freetype/freetype-demos.git |
| 17 | |
| 18 | If you want to use the Savannah mirror instead, you have to do a |
| 19 | slightly different incantation because the repository names contain |
| 20 | digit '2' for historical reasons. |
| 21 | |
| 22 | git clone \ |
| 23 | https://git.savannah.nongnu.org/git/freetype/freetype2.git \ |
| 24 | freetype |
| 25 | git clone \ |
| 26 | https://git.savannah.nongnu.org/git/freetype/freetype2-demos.git \ |
| 27 | freetype-demos |
| 28 | |
| 29 | |
Werner Lemberg | 5e32a03 | 2021-07-03 20:24:16 +0200 | [diff] [blame^] | 30 | standard builds with `configure` |
| 31 | -------------------------------- |
| 32 | |
| 33 | The git repository doesn't contain pre-built configuration scripts for |
Werner Lemberg | b4119a9 | 2005-05-24 13:46:17 +0000 | [diff] [blame] | 34 | UNIXish platforms. To generate them say |
| 35 | |
| 36 | sh autogen.sh |
| 37 | |
| 38 | which in turn depends on the following packages: |
Werner Lemberg | b0db0fc | 2005-03-05 17:05:35 +0000 | [diff] [blame] | 39 | |
Werner Lemberg | a984fda | 2008-06-09 21:02:13 +0000 | [diff] [blame] | 40 | automake (1.10.1) |
| 41 | libtool (2.2.4) |
| 42 | autoconf (2.62) |
Werner Lemberg | b0db0fc | 2005-03-05 17:05:35 +0000 | [diff] [blame] | 43 | |
Werner Lemberg | 4ea0a7f | 2007-01-05 09:03:31 +0000 | [diff] [blame] | 44 | The versions given in parentheses are known to work. Newer versions |
Werner Lemberg | 8918419 | 2021-01-16 07:53:09 +0100 | [diff] [blame] | 45 | should work too, of course. Note that `autogen.sh` also sets up |
| 46 | proper file permissions for the `configure` and auxiliary scripts. |
Werner Lemberg | b0db0fc | 2005-03-05 17:05:35 +0000 | [diff] [blame] | 47 | |
Werner Lemberg | 5e32a03 | 2021-07-03 20:24:16 +0200 | [diff] [blame^] | 48 | The `autogen.sh` script checks whether the versions of the above three |
| 49 | tools match the numbers above. Otherwise it will complain and suggest |
| 50 | either upgrading or using environment variables to point to more |
| 51 | recent versions of the required tools. |
David Turner | 9750fcb | 2007-01-04 23:14:48 +0000 | [diff] [blame] | 52 | |
Werner Lemberg | 8918419 | 2021-01-16 07:53:09 +0100 | [diff] [blame] | 53 | Note that `aclocal` is provided by the 'automake' package on Linux, |
| 54 | and that `libtoolize` is called `glibtoolize` on Darwin (OS X). |
David Turner | 9750fcb | 2007-01-04 23:14:48 +0000 | [diff] [blame] | 55 | |
| 56 | |
Werner Lemberg | 5e32a03 | 2021-07-03 20:24:16 +0200 | [diff] [blame^] | 57 | alternative build methods |
| 58 | ------------------------- |
| 59 | |
Werner Lemberg | 8918419 | 2021-01-16 07:53:09 +0100 | [diff] [blame] | 60 | For static builds that don't use platform-specific optimizations, no |
Werner Lemberg | b0db0fc | 2005-03-05 17:05:35 +0000 | [diff] [blame] | 61 | configure script is necessary at all; saying |
| 62 | |
| 63 | make setup ansi |
| 64 | make |
| 65 | |
Werner Lemberg | 5e32a03 | 2021-07-03 20:24:16 +0200 | [diff] [blame^] | 66 | should work on all platforms that have GNU `make` (or `makepp`). |
| 67 | |
| 68 | A build with `cmake` or `meson` can be done directly from the git |
| 69 | repository. However, if you want to use the `FT_DEBUG_LOGGING` macro |
| 70 | (see file `docs/DEBUG` for more information) it is currently mandatory |
| 71 | to execute `autogen.sh` in advance; this script clones the 'dlg' git |
| 72 | submodule and copies some files into FreeType's source tree. |
Werner Lemberg | 60a04df | 2005-06-04 23:04:30 +0000 | [diff] [blame] | 73 | |
| 74 | |
Werner Lemberg | 5e32a03 | 2021-07-03 20:24:16 +0200 | [diff] [blame^] | 75 | contributing |
| 76 | ------------ |
Priyesh Kumar | ab0ea06 | 2020-08-28 11:28:17 +0530 | [diff] [blame] | 77 | |
Werner Lemberg | b0f8675 | 2021-01-16 08:57:33 +0100 | [diff] [blame] | 78 | If you want to contribute to FreeType it is recommended to install the |
| 79 | `git-merge-changelog` program – we use a `ChangeLog` file, which often |
| 80 | prevents simple merging due to conflicts. Most GNU/Linux |
| 81 | distributions have a package for this program; otherwise you can |
| 82 | install it via the 'gnulib' git repository. Detailed instructions can |
| 83 | be found at the beginning of |
| 84 | |
| 85 | https://git.savannah.gnu.org/cgit/gnulib.git/tree/lib/git-merge-changelog.c |
| 86 | |
| 87 | To make it actually work, add to file `.git/config` in the FreeType |
| 88 | git repository (or to your `$HOME/.gitconfig` file) the lines |
| 89 | |
| 90 | [merge "merge-changelog"] |
| 91 | name = GNU-style ChangeLog merge driver |
| 92 | driver = /usr/local/bin/git-merge-changelog %O %A %B |
| 93 | |
| 94 | |
Werner Lemberg | 4ea0a7f | 2007-01-05 09:03:31 +0000 | [diff] [blame] | 95 | ---------------------------------------------------------------------- |
| 96 | |
Werner Lemberg | b6e8a71 | 2021-01-17 07:18:48 +0100 | [diff] [blame] | 97 | Copyright (C) 2005-2021 by |
Werner Lemberg | 4ea0a7f | 2007-01-05 09:03:31 +0000 | [diff] [blame] | 98 | David Turner, Robert Wilhelm, and Werner Lemberg. |
| 99 | |
| 100 | This file is part of the FreeType project, and may only be used, |
| 101 | modified, and distributed under the terms of the FreeType project |
| 102 | license, LICENSE.TXT. By continuing to use, modify, or distribute |
| 103 | this file you indicate that you have read the license and understand |
| 104 | and accept it fully. |
| 105 | |
| 106 | |
Werner Lemberg | 8c4b462 | 2010-07-12 21:25:01 +0200 | [diff] [blame] | 107 | --- end of README.git --- |