Skip to content

Commit b54d575

Browse files
committed
Update FreeType to 2.14.1
1 parent 019889d commit b54d575

File tree

434 files changed

+10474
-5637
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

434 files changed

+10474
-5637
lines changed

thirdparty/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -341,7 +341,7 @@ for UI.
341341
## freetype
342342

343343
- Upstream: https://www.freetype.org
344-
- Version: 2.13.3 (42608f77f20749dd6ddc9e0536788eaad70ea4b5, 2024)
344+
- Version: 2.14.1 (526ec5c47b9ebccc4754c85ac0c0cdf7c85a5e9b, 2025)
345345
- License: FreeType License (BSD-like)
346346

347347
Files extracted from upstream source:

thirdparty/freetype/FTL.TXT

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ Introduction
4949

5050
"""
5151
Portions of this software are copyright © <year> The FreeType
52-
Project (www.freetype.org). All rights reserved.
52+
Project (https://freetype.org). All rights reserved.
5353
"""
5454

5555
Please replace <year> with the value from the FreeType version you
@@ -163,7 +163,7 @@ Legal Terms
163163

164164
Our home page can be found at
165165

166-
https://www.freetype.org
166+
https://freetype.org
167167

168168

169169
--- end of FTL.TXT ---

thirdparty/freetype/LICENSE.TXT

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,10 @@ in earlier FreeType versions.
3535
The gzip module uses the zlib license (see `src/gzip/zlib.h`) which
3636
too is compatible to the above two licenses.
3737

38-
The files `src/autofit/ft-hb.c` and `src/autofit/ft-hb.h` contain code
39-
taken almost verbatim from the HarfBuzz file `hb-ft.cc`, which uses
40-
the 'Old MIT' license, compatible to the above two licenses.
38+
The files `src/autofit/ft-hb-ft.c`, `src/autofit/ft-hb-decls.h`,
39+
`src/autofit/ft-hb-types.h`, and `src/autofit/hb-script-list.h`
40+
contain code taken (almost) verbatim from the HarfBuzz library, which
41+
uses the 'Old MIT' license compatible to the above two licenses.
4142

4243
The MD5 checksum support (only used for debugging in development
4344
builds) is in the public domain.

thirdparty/freetype/include/freetype/config/ftconfig.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* ANSI-specific configuration file (specification only).
66
*
7-
* Copyright (C) 1996-2024 by
7+
* Copyright (C) 1996-2025 by
88
* David Turner, Robert Wilhelm, and Werner Lemberg.
99
*
1010
* This file is part of the FreeType project, and may only be used,

thirdparty/freetype/include/freetype/config/ftheader.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* Build macros of the FreeType 2 library.
66
*
7-
* Copyright (C) 1996-2024 by
7+
* Copyright (C) 1996-2025 by
88
* David Turner, Robert Wilhelm, and Werner Lemberg.
99
*
1010
* This file is part of the FreeType project, and may only be used,

thirdparty/freetype/include/freetype/config/ftoption.h

Lines changed: 37 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* User-selectable configuration macros (specification only).
66
*
7-
* Copyright (C) 1996-2024 by
7+
* Copyright (C) 1996-2025 by
88
* David Turner, Robert Wilhelm, and Werner Lemberg.
99
*
1010
* This file is part of the FreeType project, and may only be used,
@@ -158,12 +158,12 @@ FT_BEGIN_HEADER
158158

159159
/**************************************************************************
160160
*
161-
* If this macro is defined, try to use an inlined assembler version of the
162-
* @FT_MulFix function, which is a 'hotspot' when loading and hinting
163-
* glyphs, and which should be executed as fast as possible.
161+
* If this macro is defined, try to use an inlined 64-bit or assembler
162+
* version of the @FT_MulFix function, which is a 'hotspot' when loading
163+
* and hinting glyphs, and which should be executed as fast as possible.
164164
*
165-
* Note that if your compiler or CPU is not supported, this will default to
166-
* the standard and portable implementation found in `ftcalc.c`.
165+
* If your compiler is not C99-compliant or CPU assembly is not supported,
166+
* you can disable this option.
167167
*/
168168
#define FT_CONFIG_OPTION_INLINE_MULFIX
169169

@@ -293,6 +293,31 @@ FT_BEGIN_HEADER
293293
/* #define FT_CONFIG_OPTION_USE_HARFBUZZ */
294294

295295

296+
/**************************************************************************
297+
*
298+
* HarfBuzz dynamic support.
299+
*
300+
* Define this macro if you want the HarfBuzz library to be loaded at
301+
* runtime instead of being linked to FreeType.
302+
*
303+
* This option has no effect if `FT_CONFIG_OPTION_USE_HARFBUZZ` is not
304+
* defined.
305+
*
306+
* When this option is enabled, FreeType will try to load the HarfBuzz
307+
* library at runtime, using `dlopen` or `LoadLibrary`, depending on the
308+
* platform. On Microsoft platforms, the library name looked up is
309+
* `libharfbuzz-0.dll`. On Apple platforms, the library name looked up
310+
* is `libharfbuzz.0.dylib`. On all other platforms, the library name
311+
* looked up is `libharfbuzz.so.0`. This name can be overridden by
312+
* defining the macro `FT_LIBHARFBUZZ` at FreeType compilation time.
313+
*
314+
* If you use a build system like cmake or the `configure` script,
315+
* options set by those programs have precedence, overwriting the value
316+
* here with the configured one.
317+
*/
318+
/* #define FT_CONFIG_OPTION_USE_HARFBUZZ_DYNAMIC */
319+
320+
296321
/**************************************************************************
297322
*
298323
* Brotli support.
@@ -679,7 +704,7 @@ FT_BEGIN_HEADER
679704
* defined.
680705
*
681706
* [1]
682-
* https://www.microsoft.com/typography/cleartype/truetypecleartype.aspx
707+
* https://learn.microsoft.com/typography/cleartype/truetypecleartype
683708
*/
684709
#define TT_CONFIG_OPTION_SUBPIXEL_HINTING
685710

@@ -697,7 +722,7 @@ FT_BEGIN_HEADER
697722
* flags array which can be used to disambiguate, but old fonts will not
698723
* have them.
699724
*
700-
* https://www.microsoft.com/typography/otspec/glyf.htm
725+
* https://learn.microsoft.com/typography/opentype/spec/glyf
701726
* https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6glyf.html
702727
*/
703728
#undef TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED
@@ -760,10 +785,10 @@ FT_BEGIN_HEADER
760785
/**************************************************************************
761786
*
762787
* Option `TT_CONFIG_OPTION_GPOS_KERNING` enables a basic GPOS kerning
763-
* implementation (for TrueType fonts only). With this defined, FreeType
764-
* is able to get kerning pair data from the GPOS 'kern' feature as well as
765-
* legacy 'kern' tables; without this defined, FreeType will only be able
766-
* to use legacy 'kern' tables.
788+
* implementation (for TrueType and OpenType fonts only). With this
789+
* defined, FreeType is able to get kerning pair data from the GPOS 'kern'
790+
* feature as well as legacy 'kern' tables; without this defined, FreeType
791+
* will only be able to use legacy 'kern' tables.
767792
*
768793
* Note that FreeType does not support more advanced GPOS layout features;
769794
* even the 'kern' feature implemented here doesn't handle more

thirdparty/freetype/include/freetype/config/ftstdlib.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
* ANSI-specific library and header configuration file (specification
66
* only).
77
*
8-
* Copyright (C) 2002-2024 by
8+
* Copyright (C) 2002-2025 by
99
* David Turner, Robert Wilhelm, and Werner Lemberg.
1010
*
1111
* This file is part of the FreeType project, and may only be used,

thirdparty/freetype/include/freetype/config/integer-types.h

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* FreeType integer types definitions.
66
*
7-
* Copyright (C) 1996-2024 by
7+
* Copyright (C) 1996-2025 by
88
* David Turner, Robert Wilhelm, and Werner Lemberg.
99
*
1010
* This file is part of the FreeType project, and may only be used,
@@ -17,6 +17,8 @@
1717
#ifndef FREETYPE_CONFIG_INTEGER_TYPES_H_
1818
#define FREETYPE_CONFIG_INTEGER_TYPES_H_
1919

20+
FT_BEGIN_HEADER
21+
2022
/* There are systems (like the Texas Instruments 'C54x) where a `char` */
2123
/* has 16~bits. ANSI~C says that `sizeof(char)` is always~1. Since an */
2224
/* `int` has 16~bits also for this system, `sizeof(int)` gives~1 which */
@@ -242,9 +244,34 @@
242244
#endif /* FT_SIZEOF_LONG == (64 / FT_CHAR_BIT) */
243245

244246
#ifdef FT_INT64
247+
245248
typedef FT_INT64 FT_Int64;
246249
typedef FT_UINT64 FT_UInt64;
247-
#endif
248250

251+
# define FT_INT64_ZERO 0
252+
253+
#else /* !FT_INT64 */
254+
255+
/* we need to emulate 64-bit data types if none are available */
256+
257+
typedef struct FT_Int64_
258+
{
259+
FT_UInt32 lo;
260+
FT_UInt32 hi;
261+
262+
} FT_Int64;
263+
264+
typedef struct FT_UInt64_
265+
{
266+
FT_UInt32 lo;
267+
FT_UInt32 hi;
268+
269+
} FT_UInt64;
270+
271+
# define FT_INT64_ZERO { 0, 0 }
272+
273+
#endif /* !FT_INT64 */
274+
275+
FT_END_HEADER
249276

250277
#endif /* FREETYPE_CONFIG_INTEGER_TYPES_H_ */

thirdparty/freetype/include/freetype/config/mac-support.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* Mac/OS X support configuration header.
66
*
7-
* Copyright (C) 1996-2024 by
7+
* Copyright (C) 1996-2025 by
88
* David Turner, Robert Wilhelm, and Werner Lemberg.
99
*
1010
* This file is part of the FreeType project, and may only be used,

thirdparty/freetype/include/freetype/config/public-macros.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* Define a set of compiler macros used in public FreeType headers.
66
*
7-
* Copyright (C) 2020-2024 by
7+
* Copyright (C) 2020-2025 by
88
* David Turner, Robert Wilhelm, and Werner Lemberg.
99
*
1010
* This file is part of the FreeType project, and may only be used,
@@ -62,8 +62,8 @@ FT_BEGIN_HEADER
6262
* because it is needed by `FT_EXPORT`.
6363
*/
6464

65-
/* Visual C, mingw */
66-
#if defined( _WIN32 )
65+
/* Visual C, MinGW, Cygwin */
66+
#if defined( _WIN32 ) || defined( __CYGWIN__ )
6767

6868
#if defined( FT2_BUILD_LIBRARY ) && defined( DLL_EXPORT )
6969
#define FT_PUBLIC_FUNCTION_ATTRIBUTE __declspec( dllexport )

0 commit comments

Comments
 (0)