Bug 165602 - define MACOS_DEPLOYMENT_TARGET (default to 10.1) for mach-o, and don't test for or reference 10.2-specific functions when building for 10.1. r=cls, wtc.

This commit is contained in:
bryner%netscape.com 2002-09-28 09:19:58 +00:00
Родитель 98e19ff152
Коммит 54be890aa8
3 изменённых файлов: 54 добавлений и 2 удалений

Просмотреть файл

@ -73,6 +73,7 @@ GC_LEAK_DETECTOR = @GC_LEAK_DETECTOR@
NS_TRACE_MALLOC = @NS_TRACE_MALLOC@
USE_ELF_DYNSTR_GC = @USE_ELF_DYNSTR_GC@
USE_PREBINDING = @USE_PREBINDING@
MACOS_DEPLOYMENT_TARGET = @MACOS_DEPLOYMENT_TARGET@
MOZ_MAIL_NEWS = @MOZ_MAIL_NEWS@
MOZ_CALENDAR = @MOZ_CALENDAR@
MOZ_PLAINTEXT_EDITOR_ONLY = @MOZ_PLAINTEXT_EDITOR_ONLY@

Просмотреть файл

@ -1906,6 +1906,42 @@ then
esac
fi
dnl ========================================================
dnl Check for MacOS deployment target version
dnl ========================================================
MOZ_ARG_ENABLE_STRING(macos-target,
[ --enable-macos-target=VER (default=10.1)
Set the minimum MacOS version needed at runtime],
[MACOS_DEPLOYMENT_TARGET_STR=$enableval],
[MACOS_DEPLOYMENT_TARGET_STR=10.1])
case "$target" in
*-darwin*)
dnl The C preprocessor can only handle integers in comparisons, so convert
dnl the version to the form AABBCC where AA=major release, BB=minor release,
dnl and CC=point/micro release.
MACOS_VERSION_MAJOR=`echo $MACOS_DEPLOYMENT_TARGET_STR | cut -d . -f 1`
MACOS_VERSION_MINOR=`echo $MACOS_DEPLOYMENT_TARGET_STR | cut -d . -f 2`
MACOS_VERSION_MICRO=`echo $MACOS_DEPLOYMENT_TARGET_STR | cut -d . -f 3`
if test -z "$MACOS_VERSION_MINOR"; then
MACOS_VERSION_MINOR=0
fi
if test -z "$MACOS_VERSION_MICRO"; then
MACOS_VERSION_MICRO=0
fi
MACOS_DEPLOYMENT_TARGET=`printf "%02d%02d%02d" "$MACOS_VERSION_MAJOR" "$MACOS_VERSION_MINOR" "$MACOS_VERSION_MICRO"`
AC_DEFINE_UNQUOTED(MACOS_DEPLOYMENT_TARGET, $MACOS_DEPLOYMENT_TARGET)
;;
*)
MACOS_DEPLOYMENT_TARGET=
;;
esac
AC_SUBST(MACOS_DEPLOYMENT_TARGET)
dnl ========================================================
dnl See if mmap sees writes
dnl For cross compiling, just define it as no, which is a safe default
@ -1958,8 +1994,13 @@ dnl Checks for library functions.
dnl ========================================================
AC_PROG_GCC_TRADITIONAL
AC_FUNC_MEMCMP
AC_CHECK_FUNCS(random strerror lchown fchmod snprintf localtime_r statvfs memmove rint)
AC_CHECK_FUNCS(nl_langinfo strtok_r flockfile)
AC_CHECK_FUNCS(random strerror lchown fchmod snprintf statvfs memmove rint)
AC_CHECK_FUNCS(nl_langinfo flockfile)
dnl localtime_r and strtok_r are only present on MacOS version 10.2 and higher
if test -z "$MACOS_DEPLOYMENT_TARGET" -o "$MACOS_DEPLOYMENT_TARGET" -ge "100200"; then
AC_CHECK_FUNCS(localtime_r strtok_r)
fi
AC_CACHE_CHECK(
[for res_ninit()],

Просмотреть файл

@ -223,6 +223,16 @@ static double private_mem[PRIVATE_mem], *pmem_next = private_mem;
#else /* ifndef Bad_float_h */
#include "float.h"
/*
* MacOS 10.2 defines the macro FLT_ROUNDS to an internal function
* which does not exist on 10.1. We can safely #define it to 1 here
* to allow 10.2 builds to run on 10.1, since we can't use fesetround()
* (which does not exist on 10.1 either).
*/
#if defined(MACOS_DEPLOYMENT_TARGET) && (MACOS_DEPLOYMENT_TARGET < 100200)
#undef FLT_ROUNDS
#define FLT_ROUNDS 1
#endif
#endif /* Bad_float_h */
#ifndef __MATH_H__