GCC 14+ fails to build due to libatomic specific -march handling. This build error triggers only with glibc and not with musl libc which is default. It seems that this patch from GCC14 was forgotten when GCC15 support was being added [1]. [1]44ef343500
Fixes:68cb84183e
("toolchain: add support for GCC 15.1") Signed-off-by: Robert Marko <robimarko@gmail.com>
47 lines
1.8 KiB
Diff
47 lines
1.8 KiB
Diff
From 93954654b87552c4fe0273cab99d0f42f213f7f8 Mon Sep 17 00:00:00 2001
|
|
From: Georgi Valkov <gvalkov@gmail.com>
|
|
Date: Mon, 14 Apr 2025 15:45:59 +0300
|
|
Subject: [PATCH] zlib: fix build error with Xcode 16.3
|
|
|
|
Xcode 16.3 defines TARGET_OS_MAC, it was not defined in prior versions.
|
|
zutil.h conditionally defines fdopen as NULL when this macro is defined,
|
|
resulting in the following build error:
|
|
|
|
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_stdio.h:318:7: error: expected identifier or '('
|
|
318 | FILE *fdopen(int, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_2_0, __DARWIN_ALIAS(fdopen));
|
|
| ^
|
|
./zutil.h:147:33: note: expanded from macro 'fdopen'
|
|
147 | # define fdopen(fd,mode) NULL /* No fdopen() */
|
|
|
|
In Xcode 16.2 and earlier, TARGET_OS_MAC was not defined so this entire
|
|
block was ignored, gcc and gdb used to compile and work fine.
|
|
|
|
This may have been used for compatibility with older versions of macOS,
|
|
but is no longer needed. By pure luck, the build worked fine for a long
|
|
time, because it did not properly detect macOS.
|
|
Fixed by removing the check for TARGET_OS_MAC.
|
|
|
|
Note that since Xcode 16.3, an entire set of TARGET_OS macros
|
|
are now defined, most of which are set to 0:
|
|
TARGET_OS_LINUX 0
|
|
TARGET_OS_MAC 1
|
|
TARGET_OS_OSX 1
|
|
|
|
[1] https://github.com/openwrt/openwrt/pull/18467
|
|
|
|
Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
|
|
---
|
|
zlib/zutil.h | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
--- a/zlib/zutil.h
|
|
+++ b/zlib/zutil.h
|
|
@@ -130,7 +130,7 @@ extern z_const char * const z_errmsg[10]
|
|
# endif
|
|
#endif
|
|
|
|
-#if defined(MACOS) || defined(TARGET_OS_MAC)
|
|
+#if defined(MACOS)
|
|
# define OS_CODE 7
|
|
# ifndef Z_SOLO
|
|
# if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os
|