toolchains: fix building on MacOS with clang 17

The zlib version used by GCC 4.9.4 and binutils 2.26.1
is incompatible with clang 17 from the latest Xcode
command line tools, resulting in fdopen being defined
as NULL.

Remove the define for MacOS, as in zlib 1.31:

4bd9a71f35

Change-Id: Ic7f3108dc4fcaca4ae9a571f2bdb9039be095f36
This commit is contained in:
Christian Soffke 2025-08-05 20:42:25 +02:00 committed by Solomon Peachy
parent 2ddcc95423
commit b713f1190a
2 changed files with 28 additions and 1 deletions

View file

@ -442,11 +442,15 @@ build() {
# For Apple targets only
if [ "$system" == "Darwin" ] ; then
patch="$patch apple_silicon.patch"
patch="$patch apple_silicon.patch apple_silicon-zlib.patch"
EXTRA_CXXFLAGS="-fbracket-depth=512"
fi
fi
if [ "$toolname" == "binutils" ] && [ "$system" == "Darwin" ]; then
patch="$patch apple_silicon-zlib.patch"
fi
# create build directory
if test -d $builddir; then
if test ! -w $builddir; then

View file

@ -0,0 +1,23 @@
diff --git a/zlib/zutil.h b/zlib/zutil.h
index ed6b127e..3186e991 100644
--- a/zlib/zutil.h
+++ b/zlib/zutil.h
@@ -118,17 +118,8 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
# endif
#endif
-#if defined(MACOS) || defined(TARGET_OS_MAC)
+#if defined(MACOS)
# define OS_CODE 0x07
-# ifndef Z_SOLO
-# if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os
-# include <unix.h> /* for fdopen */
-# else
-# ifndef fdopen
-# define fdopen(fd,mode) NULL /* No fdopen() */
-# endif
-# endif
-# endif
#endif
#ifdef TOPS20