]>
Commit | Line | Data |
---|---|---|
4f4e53dd PB |
1 | # -*- Autoconf -*- |
2 | # Process this file with autoconf to produce a configure script. | |
3 | ||
2fac9c01 | 4 | AC_PREREQ(2.59) |
4f4e53dd PB |
5 | AC_INIT(cpplib, [ ], gcc-bugs@gcc.gnu.org, cpplib) |
6 | AC_CONFIG_SRCDIR(ucnid.h) | |
88fa57d7 | 7 | AC_CONFIG_MACRO_DIR(../config) |
4f4e53dd | 8 | AC_CANONICAL_SYSTEM |
4f4e53dd PB |
9 | |
10 | # Checks for programs. | |
018a4785 ZW |
11 | AC_PROG_MAKE_SET |
12 | AC_PROG_INSTALL | |
4f4e53dd | 13 | AC_PROG_CC |
f1bf410c | 14 | AC_PROG_CXX |
4f4e53dd PB |
15 | AC_PROG_RANLIB |
16 | ||
f1bf410c JQ |
17 | # See if we are building gcc with C++. |
18 | # Do this early so setting lang to C++ affects following tests | |
19 | AC_ARG_ENABLE(build-with-cxx, | |
20 | [ --enable-build-with-cxx build with C++ compiler instead of C compiler], | |
21 | ENABLE_BUILD_WITH_CXX=$enableval, | |
22 | ENABLE_BUILD_WITH_CXX=no) | |
23 | AC_SUBST(ENABLE_BUILD_WITH_CXX) | |
24 | ||
078e3ffe PB |
25 | MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing |
26 | AC_CHECK_PROGS([ACLOCAL], [aclocal], [$MISSING aclocal]) | |
27 | AC_CHECK_PROGS([AUTOCONF], [autoconf], [$MISSING autoconf]) | |
28 | AC_CHECK_PROGS([AUTOHEADER], [autoheader], [$MISSING autoheader]) | |
29 | ||
018a4785 ZW |
30 | # Figure out what compiler warnings we can enable. |
31 | # See config/warnings.m4 for details. | |
32 | ||
f1bf410c JQ |
33 | ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wwrite-strings \ |
34 | -Wmissing-format-attribute], [warn]) | |
35 | ACX_PROG_CC_WARNING_OPTS([-Wstrict-prototypes -Wmissing-prototypes \ | |
36 | -Wold-style-definition -Wc++-compat], [c_warn]) | |
018a4785 ZW |
37 | ACX_PROG_CC_WARNING_ALMOST_PEDANTIC([-Wno-long-long]) |
38 | ||
39 | # Only enable with --enable-werror-always until existing warnings are | |
40 | # corrected. | |
41 | ACX_PROG_CC_WARNINGS_ARE_ERRORS([manual]) | |
42 | ||
f610dd5f ZW |
43 | # Dependency checking. |
44 | ZW_CREATE_DEPDIR | |
2b69c841 | 45 | if test "$ENABLE_BUILD_WITH_CXX" = "no"; then |
f610dd5f | 46 | ZW_PROG_COMPILER_DEPENDENCIES([CC]) |
f1bf410c JQ |
47 | else |
48 | ZW_PROG_COMPILER_DEPENDENCIES([CXX]) | |
49 | fi | |
f610dd5f | 50 | |
4f4e53dd PB |
51 | # Checks for header files. |
52 | AC_HEADER_TIME | |
53 | ACX_HEADER_STRING | |
f1bf410c JQ |
54 | |
55 | # AC_CHECK_HEADERS is repeated to work around apparent autoconf 2.59 bug. If | |
56 | # AC_CHECK_HEADERS comes after the if clause, the last AC_LANG call gets used, | |
57 | # no matter which branch is taken. | |
2b69c841 | 58 | if test "$ENABLE_BUILD_WITH_CXX" = "no"; then |
f1bf410c JQ |
59 | AC_LANG(C) |
60 | AC_CHECK_HEADERS(locale.h fcntl.h limits.h stddef.h \ | |
61 | stdlib.h strings.h string.h sys/file.h unistd.h) | |
62 | else | |
63 | AC_LANG(C++) | |
64 | AC_CHECK_HEADERS(locale.h fcntl.h limits.h stddef.h \ | |
4f4e53dd | 65 | stdlib.h strings.h string.h sys/file.h unistd.h) |
f1bf410c | 66 | fi |
4f4e53dd PB |
67 | |
68 | # Checks for typedefs, structures, and compiler characteristics. | |
69 | AC_C_CONST | |
70 | AC_C_INLINE | |
71 | AC_FUNC_OBSTACK | |
72 | AC_TYPE_OFF_T | |
73 | AC_TYPE_SIZE_T | |
d56a25e1 | 74 | AC_CHECK_TYPE(ssize_t, int) |
4f4e53dd PB |
75 | AC_STRUCT_TM |
76 | AC_CHECK_SIZEOF(int) | |
77 | AC_CHECK_SIZEOF(long) | |
0d667716 KG |
78 | define(libcpp_UNLOCKED_FUNCS, clearerr_unlocked feof_unlocked dnl |
79 | ferror_unlocked fflush_unlocked fgetc_unlocked fgets_unlocked dnl | |
80 | fileno_unlocked fprintf_unlocked fputc_unlocked fputs_unlocked dnl | |
81 | fread_unlocked fwrite_unlocked getchar_unlocked getc_unlocked dnl | |
82 | putchar_unlocked putc_unlocked) | |
83 | AC_CHECK_FUNCS(libcpp_UNLOCKED_FUNCS) | |
c3f829c1 GDR |
84 | AC_CHECK_DECLS(m4_split(m4_normalize(abort asprintf basename errno getopt \ |
85 | libcpp_UNLOCKED_FUNCS vasprintf))) | |
4f4e53dd PB |
86 | |
87 | # Checks for library functions. | |
88 | AC_FUNC_ALLOCA | |
89 | AC_HEADER_STDC | |
90 | AM_LANGINFO_CODESET | |
91 | ZW_GNU_GETTEXT_SISTER_DIR | |
92 | ||
93 | AC_CACHE_CHECK(for uchar, gcc_cv_type_uchar, | |
94 | [AC_TRY_COMPILE([ | |
f78ce0c2 | 95 | #include <sys/types.h> |
4f4e53dd PB |
96 | ], |
97 | [if ((uchar *)0) return 0; | |
98 | if (sizeof(uchar)) return 0;], | |
99 | ac_cv_type_uchar=yes, ac_cv_type_uchar=no)]) | |
100 | if test $ac_cv_type_uchar = yes; then | |
101 | AC_DEFINE(HAVE_UCHAR, 1, | |
102 | [Define if <sys/types.h> defines \`uchar'.]) | |
103 | fi | |
104 | ||
105 | AM_ICONV | |
078e3ffe PB |
106 | |
107 | # More defines and substitutions. | |
39b8ce7f | 108 | PACKAGE="$PACKAGE_TARNAME" |
078e3ffe PB |
109 | AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Define to the name of this package.]) |
110 | AC_SUBST(PACKAGE) | |
111 | ||
112 | if test "x$enable_nls" != xno; then | |
113 | USED_CATALOGS='$(CATALOGS)' | |
114 | else | |
115 | USED_CATALOGS= | |
116 | fi | |
117 | AC_SUBST(USED_CATALOGS) | |
118 | ||
119 | AC_ARG_ENABLE(maintainer-mode, | |
120 | [ --enable-maintainer-mode enable rules only needed by maintainers],, | |
121 | enable_maintainer_mode=no) | |
122 | ||
123 | if test "x$enable_maintainer_mode" = xno; then | |
124 | MAINT='#' | |
125 | else | |
126 | MAINT= | |
127 | fi | |
128 | AC_SUBST(MAINT) | |
129 | ||
4f4e53dd PB |
130 | AC_ARG_ENABLE(checking, |
131 | [ --enable-checking enable expensive run-time checks],, | |
132 | enable_checking=no) | |
133 | ||
134 | if test $enable_checking != no ; then | |
135 | AC_DEFINE(ENABLE_CHECKING, 1, | |
136 | [Define if you want more run-time sanity checks.]) | |
137 | fi | |
138 | ||
963e23c5 | 139 | m4_changequote(,) |
4f4e53dd PB |
140 | case $target in |
141 | alpha*-*-* | \ | |
077fc835 | 142 | arm*-*-*eabi* | \ |
b3f8d95d | 143 | arm*-*-symbianelf* | \ |
4f4e53dd PB |
144 | x86_64-*-* | \ |
145 | ia64-*-* | \ | |
cd985f66 | 146 | hppa*64*-*-* | \ |
aaf50ff2 | 147 | i[34567]86-*-darwin* | \ |
a8e68029 | 148 | i[34567]86-*-solaris2.1[0-9]* | \ |
4f4e53dd PB |
149 | mips*-*-* | \ |
150 | mmix-*-* | \ | |
151 | powerpc*-*-* | \ | |
152 | rs6000*-*-* | \ | |
153 | s390*-*-* | \ | |
5f7ca34b | 154 | sparc*-*-* | \ |
85d9c13c | 155 | spu-*-* | \ |
a1fcb9a1 | 156 | sh[123456789lbe]*-*-* | sh-*-*) |
4f4e53dd | 157 | need_64bit_hwint=yes ;; |
0f45f0f5 JM |
158 | i[34567]86-*-linux*) |
159 | if test "x$enable_targets" = xall; then | |
160 | need_64bit_hwint=yes | |
161 | else | |
162 | need_64bit_hwint=no | |
163 | fi | |
164 | ;; | |
4f4e53dd PB |
165 | *) |
166 | need_64bit_hwint=no ;; | |
167 | esac | |
168 | ||
169 | case $need_64bit_hwint:$ac_cv_sizeof_long in | |
170 | *:8 | no:*) host_wide_int=long ;; | |
171 | *) host_wide_int='long long' ;; | |
172 | esac | |
963e23c5 | 173 | m4_changequote([,]) |
4f4e53dd PB |
174 | |
175 | AC_DEFINE_UNQUOTED(HOST_WIDE_INT, $host_wide_int, | |
176 | [Define to the widest efficient host integer type at least | |
177 | as wide as the target's size_t type.]) | |
178 | ||
078e3ffe PB |
179 | # Output. |
180 | ||
181 | AC_CONFIG_HEADERS(config.h:config.in, [echo timestamp > stamp-h1]) | |
4f4e53dd PB |
182 | AC_CONFIG_FILES(Makefile) |
183 | AC_OUTPUT |