1
0
mirror of https://github.com/moparisthebest/curl synced 2024-11-11 12:05:06 -05:00

configure: set min version flags for builds on mac

This helps building binaries that can work on multiple macOS versions.

Help-by: Martin Storsjö

Fixes #1069
This commit is contained in:
Daniel Stenberg 2016-10-19 14:36:32 +02:00
parent 5c3d8d20a6
commit 4f8d0b6f02
2 changed files with 40 additions and 1 deletions

View File

@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___ # | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____| # \___|\___/|_| \_\_____|
# #
# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al. # Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
# #
# This software is licensed as described in the file COPYING, which # This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms # you should have received as part of this distribution. The terms
@ -3199,3 +3199,40 @@ TEST EINVAL TEST
CPPPFLAG="" CPPPFLAG=""
fi fi
]) ])
dnl CURL_MAC_CFLAGS
dnl
dnl Check if -mmacosx-version-min or -miphoneos-version-min are set manually,
dnl otherwise do. And set -Werror=partial-availability.
dnl
AC_DEFUN([CURL_MAC_CFLAGS], [
tst_cflags="no"
case $host_os in
darwin*)
tst_cflags="yes"
;;
esac
AC_MSG_CHECKING([for good-to-use Mac CFLAGS])
AC_MSG_RESULT([$tst_cflags]);
if test "$tst_cflags" = "yes"; then
AC_MSG_CHECKING([for *version-min in CFLAGS])
min=""
if test -z "$(echo $CFLAGS | grep mmacosx-version-min)" -a
test -z "$(echo $CFLAGS | grep miphoneos-version-min)"; then
min="-mmacosx-version-min=10.5"
CFLAGS="$CFLAGS $min"
fi
if test -z "$min"; then
AC_MSG_RESULT([set by user])
else
AC_MSG_RESULT([$min set])
fi
CFLAGS="$CFLAGS -Werror=partial-availability"
fi
])

View File

@ -357,6 +357,8 @@ case X-"$curl_cv_native_windows" in
esac esac
CURL_CHECK_WIN32_LARGEFILE CURL_CHECK_WIN32_LARGEFILE
CURL_MAC_CFLAGS
dnl ************************************************************ dnl ************************************************************
dnl switch off particular protocols dnl switch off particular protocols
dnl dnl