]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
Restore support macOS prior 10.15
authorVladislav Shchapov <vladislav@shchapov.ru>
Sun, 23 Feb 2025 15:42:41 +0000 (20:42 +0500)
committerHans Kristian Rosbach <hk-git@circlestorm.org>
Sat, 26 Jul 2025 18:36:48 +0000 (20:36 +0200)
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
.github/workflows/cmake.yml
CMakeLists.txt
configure

index 90e222a6fcd5c30eed269bf1f4d25ce87fc96aae..99adb45f3393c59602a4b7ce999369b681dbeceb 100644 (file)
@@ -570,6 +570,13 @@ jobs:
             cmake-args: -G Ninja -DZLIB_COMPAT=ON -DWITH_NEW_STRATEGIES=OFF -DWITH_OPTIM=OFF
             codecov: win64_gcc_compat_no_opt
 
+          - name: macOS Clang (Target 10.10)
+            os: macos-13
+            compiler: clang
+            cxx-compiler: clang++
+            cmake-args: -DCMAKE_OSX_DEPLOYMENT_TARGET=10.10
+            ldflags: -ld_classic
+
           - name: macOS Clang ASAN
             os: macos-13
             compiler: clang
index 367413062fc3daa22319df8d555bd502aec42c3a..4f058f09715e86967db168b5622946ddc05b03ad 100644 (file)
@@ -425,10 +425,18 @@ endif()
 set(CMAKE_REQUIRED_DEFINITIONS)
 
 set(CMAKE_REQUIRED_DEFINITIONS -D_ISOC11_SOURCE=1)
+set(CMAKE_REQUIRED_FLAGS)
+if(APPLE)
+    check_c_compiler_flag(-Wunguarded-availability-new HAVE_W_UNGUARDED_AVAILABILITY_NEW)
+    if(HAVE_W_UNGUARDED_AVAILABILITY_NEW)
+        set(CMAKE_REQUIRED_FLAGS "-Wunguarded-availability-new -Werror")
+    endif()
+endif()
 check_symbol_exists(aligned_alloc stdlib.h HAVE_ALIGNED_ALLOC)
 if(HAVE_ALIGNED_ALLOC)
     add_definitions(-DHAVE_ALIGNED_ALLOC)
 endif()
+set(CMAKE_REQUIRED_FLAGS)
 set(CMAKE_REQUIRED_DEFINITIONS)
 
 if(WITH_SANITIZER STREQUAL "Address")
index 3487d092bc9dfe3a62d1cbc23d0601389af230f9..ea7c09695128e6fd291685fa2a559f5478a29bbc 100755 (executable)
--- a/configure
+++ b/configure
@@ -714,6 +714,18 @@ else
 fi
 echo >> configure.log
 
+# Check for -Wunguarded-availability-new compiler support
+echo "" > test.c
+  cat > $test.c <<EOF
+int main() { return 0; }
+EOF
+if $cc $CFLAGS -Wunguarded-availability-new -c $test.c >> configure.log 2>&1; then
+  echo "Checking for -Wunguarded-availability-new... Yes." | tee -a configure.log
+  TEST_ALIGNED_ALLOC_FLAGS="$TEST_ALIGNED_ALLOC_FLAGS -Wunguarded-availability-new -Werror"
+else
+  echo "Checking for -Wunguarded-availability-new... No." | tee -a configure.log
+fi
+
 cat > $test.c <<EOF
 #define _ISOC11_SOURCE 1
 #include <stdlib.h>
@@ -724,7 +736,7 @@ int main(void) {
   return 0;
 }
 EOF
-if try $CC $CFLAGS -o $test $test.c $LDSHAREDLIBC; then
+if try $CC $CFLAGS $TEST_ALIGNED_ALLOC_FLAGS -o $test $test.c $LDSHAREDLIBC; then
   echo "Checking for aligned_alloc... Yes." | tee -a configure.log
   CFLAGS="${CFLAGS} -DHAVE_ALIGNED_ALLOC"
   SFLAGS="${SFLAGS} -DHAVE_ALIGNED_ALLOC"