Repository: godot
Issue: Godot 2.1 - Engine compilation errors on macOS 15/Xcode 16
Labels: bug,platform:macos,topic:buildsystem

### Tested versions

- Reproducible in 2.1.7.rc.custom_build [0919ee6], 2.1.7.rc.custom_build [7cef81b]

### System information

macOS 15/Xcode 16 - Mac Mini (Intel i7), MacBook Air (M1)

### Issue description

When compiling Godot 2.1 using macOS 15/Xcode 16, the 'Byte' type is not found by FreeType 1.8.1's included gzip.

The issue is not present on macOS 12/Xcode 14.

```
In file included from thirdparty/freetype/src/gzip/ftgzip.c:77:
In file included from thirdparty/freetype/src/gzip/zlib.h:34:
thirdparty/freetype/src/gzip/ftzconf.h:228:12: error: unknown type name 'Byte'
  228 |    typedef Byte  FAR Bytef;
      |            ^
In file included from thirdparty/freetype/src/gzip/ftgzip.c:95:
thirdparty/freetype/src/gzip/inftrees.h:22:7: error: unknown type name 'Byte'
   22 |       Byte Exop;        /* number of extra bits or operation */
      |       ^
thirdparty/freetype/src/gzip/inftrees.h:23:7: error: unknown type name 'Byte'
   23 |       Byte Bits;        /* number of bits in this code or subcode */
      |       ^
In file included from thirdparty/freetype/src/gzip/ftgzip.c:103:
thirdparty/freetype/src/gzip/inftrees.c:247:21: error: use of undeclared identifier 'Byte'
  247 |           r.bits = (Byte)l;     /* bits to dump before this table */
      |                     ^
thirdparty/freetype/src/gzip/inftrees.c:248:21: error: use of undeclared identifier 'Byte'
  248 |           r.exop = (Byte)j;     /* bits in this table */
      |                     ^
thirdparty/freetype/src/gzip/inftrees.c:258:17: error: use of undeclared identifier 'Byte'
  258 |       r.bits = (Byte)(k - w);
      |                 ^
thirdparty/freetype/src/gzip/inftrees.c:263:19: error: use of undeclared identifier 'Byte'
  263 |         r.exop = (Byte)(*p < 256 ? 0 : 32 + 64);     /* 256 is end-of-block */
      |                   ^
thirdparty/freetype/src/gzip/inftrees.c:268:19: error: use of undeclared identifier 'Byte'
  268 |         r.exop = (Byte)(e[*p - s] + 16 + 64);/* non-simple--look up in lists */
      |                   ^
In file included from thirdparty/freetype/src/gzip/ftgzip.c:105:
thirdparty/freetype/src/gzip/infcodes.c:50:3: error: unknown type name 'Byte'
   50 |   Byte lbits;           /* ltree bits decoded per branch */
      |   ^
thirdparty/freetype/src/gzip/infcodes.c:51:3: error: unknown type name 'Byte'
   51 |   Byte dbits;           /* dtree bits decoder per branch */
      |   ^
thirdparty/freetype/src/gzip/infcodes.c:70:17: error: use of undeclared identifier 'Byte'
   70 |     c->lbits = (Byte)bl;
      |                 ^
thirdparty/freetype/src/gzip/infcodes.c:71:17: error: use of undeclared identifier 'Byte'
   71 |     c->dbits = (Byte)bd;
      |                 ^
thirdparty/freetype/src/gzip/infcodes.c:204:9: error: use of undeclared identifier 'Byte'
  204 |         OUTBYTE(*f++)
      |         ^
thirdparty/freetype/src/gzip/infutil.h:83:27: note: expanded from macro 'OUTBYTE'
   83 | #define OUTBYTE(a) {*q++=(Byte)(a);m--;}
      |                           ^
In file included from thirdparty/freetype/src/gzip/ftgzip.c:105:
thirdparty/freetype/src/gzip/infcodes.c:213:7: error: use of undeclared identifier 'Byte'
  213 |       OUTBYTE(c->sub.lit)
      |       ^
thirdparty/freetype/src/gzip/infutil.h:83:27: note: expanded from macro 'OUTBYTE'
   83 | #define OUTBYTE(a) {*q++=(Byte)(a);m--;}
      |                           ^
14 errors generated.
scons: *** [thirdparty/freetype/src/gzip/ftgzip.osx.opt.tools.64.o] Error 1
```

### Steps to reproduce

Compile the Godot Engine (2.1.x) on macOS 15/Xcode 16.

```
scons platform=osx tools=yes target=release_debug
```

### Minimal reproduction project (MRP)

Godot 2.1.x source: https://github.com/godotengine/godot/tree/2.1