[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
support for universal binaries on MacOS X (4/6)
From: |
Bruno Haible |
Subject: |
support for universal binaries on MacOS X (4/6) |
Date: |
Thu, 25 Dec 2008 20:18:26 +0100 |
User-agent: |
KMail/1.9.9 |
One of the tests for POSIX-compliant printf has a result that differs
between 32-bit mode and 64-bit mode. Since the same code should be
compiled in both modes - it would be too complex to store a mode
dependent result in config.status - this requires special casing.
2008-12-25 Bruno Haible <address@hidden>
Add support for universal builds to vasnprintf.
* m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
universal builds, guess no.
* modules/vasnprintf-posix (Depends-on): Add multiarch.
* modules/vasprintf-posix (Depends-on): Likewise.
* modules/fprintf-posix (Depends-on): Likewise.
* modules/vfprintf-posix (Depends-on): Likewise.
* modules/snprintf-posix (Depends-on): Likewise.
* modules/vsnprintf-posix (Depends-on): Likewise.
* modules/sprintf-posix (Depends-on): Likewise.
* modules/vsprintf-posix (Depends-on): Likewise.
* modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
* modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
* modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
* modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
* modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
* modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
* modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
--- m4/printf.m4.orig 2008-12-25 20:11:10.000000000 +0100
+++ m4/printf.m4 2008-12-25 19:08:57.000000000 +0100
@@ -1,4 +1,4 @@
-# printf.m4 serial 24
+# printf.m4 serial 25
dnl Copyright (C) 2003, 2007-2008 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -811,13 +811,15 @@
AC_DEFUN([gl_PRINTF_ENOMEM],
[
AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([gl_MULTIARCH])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_CACHE_CHECK([whether printf survives out-of-memory conditions],
[gl_cv_func_printf_enomem],
[
gl_cv_func_printf_enomem="guessing no"
if test "$cross_compiling" = no; then
- AC_LANG_CONFTEST([AC_LANG_SOURCE([
+ if test $APPLE_UNIVERSAL_BUILD = 0; then
+ AC_LANG_CONFTEST([AC_LANG_SOURCE([
]GL_NOCRASH[
changequote(,)dnl
#include <stdio.h>
@@ -866,21 +868,27 @@
}
changequote([,])dnl
])])
- if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
- (./conftest
- result=$?
- if test $result != 0 && test $result != 77; then result=1; fi
- exit $result
- ) >/dev/null 2>/dev/null
- case $? in
- 0) gl_cv_func_printf_enomem="yes" ;;
- 77) gl_cv_func_printf_enomem="guessing no" ;;
- *) gl_cv_func_printf_enomem="no" ;;
- esac
+ if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
+ (./conftest
+ result=$?
+ if test $result != 0 && test $result != 77; then result=1; fi
+ exit $result
+ ) >/dev/null 2>/dev/null
+ case $? in
+ 0) gl_cv_func_printf_enomem="yes" ;;
+ 77) gl_cv_func_printf_enomem="guessing no" ;;
+ *) gl_cv_func_printf_enomem="no" ;;
+ esac
+ else
+ gl_cv_func_printf_enomem="guessing no"
+ fi
+ rm -fr conftest*
else
+ dnl A universal build on Apple MacOS X platforms.
+ dnl The result would be 'no' in 32-bit mode and 'yes' in 64-bit mode.
+ dnl But we need a configuration result that is valid in both modes.
gl_cv_func_printf_enomem="guessing no"
fi
- rm -fr conftest*
fi
if test "$gl_cv_func_printf_enomem" = "guessing no"; then
changequote(,)dnl
--- modules/fprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/fprintf-posix 2008-12-25 19:04:04.000000000 +0100
@@ -21,6 +21,7 @@
nocrash
printf-safe
errno
+multiarch
configure.ac:
gl_FUNC_FPRINTF_POSIX
--- modules/snprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/snprintf-posix 2008-12-25 19:06:07.000000000 +0100
@@ -19,6 +19,7 @@
fpucw
nocrash
printf-safe
+multiarch
configure.ac:
gl_FUNC_SNPRINTF_POSIX
--- modules/sprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/sprintf-posix 2008-12-25 19:06:28.000000000 +0100
@@ -21,6 +21,7 @@
printf-safe
stdint
errno
+multiarch
configure.ac:
gl_FUNC_SPRINTF_POSIX
--- modules/unistdio/u16-u16-vasnprintf.orig 2008-12-25 20:11:10.000000000
+0100
+++ modules/unistdio/u16-u16-vasnprintf 2008-12-25 19:04:16.000000000 +0100
@@ -42,6 +42,7 @@
localcharset
xsize
errno
+multiarch
configure.ac:
gl_PREREQ_VASNPRINTF_WITH_EXTRAS
--- modules/unistdio/u16-vasnprintf.orig 2008-12-25 20:11:10.000000000
+0100
+++ modules/unistdio/u16-vasnprintf 2008-12-25 19:04:43.000000000 +0100
@@ -42,6 +42,7 @@
localcharset
xsize
errno
+multiarch
configure.ac:
gl_PREREQ_VASNPRINTF_WITH_EXTRAS
--- modules/unistdio/u32-u32-vasnprintf.orig 2008-12-25 20:11:10.000000000
+0100
+++ modules/unistdio/u32-u32-vasnprintf 2008-12-25 19:05:02.000000000 +0100
@@ -42,6 +42,7 @@
localcharset
xsize
errno
+multiarch
configure.ac:
gl_PREREQ_VASNPRINTF_WITH_EXTRAS
--- modules/unistdio/u32-vasnprintf.orig 2008-12-25 20:11:10.000000000
+0100
+++ modules/unistdio/u32-vasnprintf 2008-12-25 19:04:28.000000000 +0100
@@ -42,6 +42,7 @@
localcharset
xsize
errno
+multiarch
configure.ac:
gl_PREREQ_VASNPRINTF_WITH_EXTRAS
--- modules/unistdio/u8-u8-vasnprintf.orig 2008-12-25 20:11:10.000000000
+0100
+++ modules/unistdio/u8-u8-vasnprintf 2008-12-25 19:04:53.000000000 +0100
@@ -42,6 +42,7 @@
localcharset
xsize
errno
+multiarch
configure.ac:
gl_PREREQ_VASNPRINTF_WITH_EXTRAS
--- modules/unistdio/u8-vasnprintf.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/unistdio/u8-vasnprintf 2008-12-25 19:05:27.000000000 +0100
@@ -42,6 +42,7 @@
localcharset
xsize
errno
+multiarch
configure.ac:
gl_PREREQ_VASNPRINTF_WITH_EXTRAS
--- modules/unistdio/ulc-vasnprintf.orig 2008-12-25 20:11:10.000000000
+0100
+++ modules/unistdio/ulc-vasnprintf 2008-12-25 19:05:13.000000000 +0100
@@ -40,6 +40,7 @@
localcharset
xsize
errno
+multiarch
configure.ac:
gl_PREREQ_VASNPRINTF_WITH_EXTRAS
--- modules/vasnprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/vasnprintf-posix 2008-12-25 19:03:54.000000000 +0100
@@ -18,6 +18,7 @@
fpucw
nocrash
printf-safe
+multiarch
configure.ac:
gl_FUNC_VASNPRINTF_POSIX
--- modules/vasprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/vasprintf-posix 2008-12-25 19:03:32.000000000 +0100
@@ -18,6 +18,7 @@
fpucw
nocrash
printf-safe
+multiarch
configure.ac:
gl_FUNC_VASPRINTF_POSIX
--- modules/vfprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/vfprintf-posix 2008-12-25 19:03:45.000000000 +0100
@@ -21,6 +21,7 @@
nocrash
printf-safe
errno
+multiarch
configure.ac:
gl_FUNC_VFPRINTF_POSIX
--- modules/vsnprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/vsnprintf-posix 2008-12-25 19:05:42.000000000 +0100
@@ -19,6 +19,7 @@
fpucw
nocrash
printf-safe
+multiarch
configure.ac:
gl_FUNC_VSNPRINTF_POSIX
--- modules/vsprintf-posix.orig 2008-12-25 20:11:10.000000000 +0100
+++ modules/vsprintf-posix 2008-12-25 19:06:16.000000000 +0100
@@ -21,6 +21,7 @@
printf-safe
stdint
errno
+multiarch
configure.ac:
gl_FUNC_VSPRINTF_POSIX
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- support for universal binaries on MacOS X (4/6),
Bruno Haible <=