2009-07-30 Thomas Schwinge <tschwinge@gnu.org>
[deliverable/binutils-gdb.git] / config / extensions.m4
CommitLineData
c779bab8
PB
1# serial 5 -*- Autoconf -*-
2# Enable extensions on systems that normally disable them.
3
4# Copyright (C) 2003, 2006, 2007 Free Software Foundation, Inc.
5# This file is free software; the Free Software Foundation
6# gives unlimited permission to copy and/or distribute it,
7# with or without modifications, as long as this notice is preserved.
8
9# This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from CVS
10# Autoconf. Perhaps we can remove this once we can assume Autoconf
11# 2.62 or later everywhere, but since CVS Autoconf mutates rapidly
12# enough in this area it's likely we'll need to redefine
13# AC_USE_SYSTEM_EXTENSIONS for quite some time.
14
15# AC_USE_SYSTEM_EXTENSIONS
16# ------------------------
17# Enable extensions on systems that normally disable them,
18# typically due to standards-conformance issues.
19# Remember that #undef in AH_VERBATIM gets replaced with #define by
20# AC_DEFINE. The goal here is to define all known feature-enabling
21# macros, then, if reports of conflicts are made, disable macros that
22# cause problems on some platforms (such as __EXTENSIONS__).
23AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS],
24[AC_BEFORE([$0], [AC_COMPILE_IFELSE])dnl
25AC_BEFORE([$0], [AC_RUN_IFELSE])dnl
26
27 AC_CHECK_HEADER([minix/config.h], [MINIX=yes], [MINIX=])
28 if test "$MINIX" = yes; then
29 AC_DEFINE([_POSIX_SOURCE], [1],
30 [Define to 1 if you need to in order for `stat' and other
31 things to work.])
32 AC_DEFINE([_POSIX_1_SOURCE], [2],
33 [Define to 2 if the system does not provide POSIX.1 features
34 except with this defined.])
35 AC_DEFINE([_MINIX], [1],
36 [Define to 1 if on MINIX.])
37 fi
38
39 AH_VERBATIM([__EXTENSIONS__],
40[/* Enable extensions on AIX 3, Interix. */
41#ifndef _ALL_SOURCE
42# undef _ALL_SOURCE
43#endif
44/* Enable GNU extensions on systems that have them. */
45#ifndef _GNU_SOURCE
46# undef _GNU_SOURCE
47#endif
48/* Enable threading extensions on Solaris. */
49#ifndef _POSIX_PTHREAD_SEMANTICS
50# undef _POSIX_PTHREAD_SEMANTICS
51#endif
52/* Enable extensions on HP NonStop. */
53#ifndef _TANDEM_SOURCE
54# undef _TANDEM_SOURCE
55#endif
56/* Enable general extensions on Solaris. */
57#ifndef __EXTENSIONS__
58# undef __EXTENSIONS__
59#endif
60])
61 AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__],
62 [ac_cv_safe_to_define___extensions__],
63 [AC_COMPILE_IFELSE(
64 [AC_LANG_PROGRAM([
65# define __EXTENSIONS__ 1
66 AC_INCLUDES_DEFAULT])],
67 [ac_cv_safe_to_define___extensions__=yes],
68 [ac_cv_safe_to_define___extensions__=no])])
69 test $ac_cv_safe_to_define___extensions__ = yes &&
70 AC_DEFINE([__EXTENSIONS__])
71 AC_DEFINE([_ALL_SOURCE])
72 AC_DEFINE([_GNU_SOURCE])
73 AC_DEFINE([_POSIX_PTHREAD_SEMANTICS])
74 AC_DEFINE([_TANDEM_SOURCE])
75])# AC_USE_SYSTEM_EXTENSIONS
76
This page took 0.06909 seconds and 4 git commands to generate.