diff options
author | David Turner <david@freetype.org> | 2021-07-16 11:12:13 +0200 |
---|---|---|
committer | David Turner <david@freetype.org> | 2021-07-16 11:12:13 +0200 |
commit | e44330d49ae00c086d4cd2786355f915d63355cb (patch) | |
tree | cde1cce6238bfcdbf6b85c8cf9ad459d1cb06e3e | |
parent | 685acc04dbad5ece9b7261d21f4a2546d787436c (diff) | |
download | freetype2-fix-x86_32.x86-compilation.tar.gz |
[smooth] Fix compilation for x86_32.x86 ABIfix-x86_32.x86-compilation
The code assumed that if __SSE2__ is defined, then 64-bit
integer types are available. This is not the case apparently
for certain multilib compiler targets like x86_32.x86 used
by Gentoo.
This patch fixes the issue by disabling the special code
path when 64-bit integer types are not available.
https://gitlab.freedesktop.org/freetype/freetype/-/issues/1071
-rw-r--r-- | src/smooth/ftgrays.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/smooth/ftgrays.c b/src/smooth/ftgrays.c index e5f36a054..00746c1a3 100644 --- a/src/smooth/ftgrays.c +++ b/src/smooth/ftgrays.c @@ -1018,6 +1018,16 @@ typedef ptrdiff_t FT_PtrDist; # define BEZIER_USE_DDA 0 #endif +/* For now, the code that depends on BEZIER_USE_DDA requires + * FT_Int64 to be defined. If FT_LONG64 is not defined, meaning + * there is no 64-bit type available, disable it to avoid + * compilation errors. See for example + * https://gitlab.freedesktop.org/freetype/freetype/-/issues/1071 + */ +#if !defined(FT_LONG64) +# undef BEZIER_USE_DDA +# define BEZIER_USE_DDA 0 +#endif #if BEZIER_USE_DDA |