Mercurial > hg > xemacs-beta
annotate configure.ac @ 5318:203dcac81dae
Provide some milquetoast compatibility in our errors, type-error, program-error
2010-12-30 Aidan Kehoe <kehoea@parhasard.net>
* cl.el:
Provde the Common Lisp program-error, type-error as error
symbols. This doesn't nearly go far enough for anyone using the
Common Lisp errors.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Thu, 30 Dec 2010 00:15:37 +0000 |
parents | 5efbd1253905 |
children | 3889ef128488 c36f065c3090 |
rev | line source |
---|---|
2651 | 1 dnl XEmacs config script for autoconf 2.5. |
2 dnl ------------------------------------------------------------------------- | |
3 dnl Overrides of standard autoconf macros. | |
4 | |
5 # AC_LANG(C) | |
6 # ---------- | |
7 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. | |
8 m4_define([AC_LANG(C)], | |
9 [ac_ext=c | |
10 xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' | |
11 xe_ldflags='$LDFLAGS $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_x_site $ld_switch_run' | |
12 xe_libs='$ld_call_shared $xe_check_libs $X_EXTRA_LIBS $libs_x $libs_gtk $X_PRE_LIBS $LIBS $libs_machine $libs_system $libs_standard' | |
13 ac_cpp='$CPP '"$xe_cppflags" | |
2667 | 14 ac_compile='$CC -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext >&AS_MESSAGE_LOG_FD' |
2651 | 15 ac_link='$CC -o conftest$ac_exeext $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' >&AS_MESSAGE_LOG_FD' |
16 ac_compiler_gnu=$ac_cv_c_compiler_gnu | |
17 ]) | |
4991
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
18 # AC_LANG(C++) |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
19 # ---------- |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
20 # Similar to AC_LANG(C) but we use XEMACS_CC, which may be g++. |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
21 m4_define([AC_LANG(C++)], |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
22 [ac_ext=c |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
23 xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
24 xe_ldflags='$LDFLAGS $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_x_site $ld_switch_run' |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
25 xe_libs='$ld_call_shared $xe_check_libs $X_EXTRA_LIBS $libs_x $libs_gtk $X_PRE_LIBS $LIBS $libs_machine $libs_system $libs_standard' |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
26 ac_cpp='$CPP '"$xe_cppflags" |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
27 ac_compile='$XEMACS_CC -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext >&AS_MESSAGE_LOG_FD' |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
28 ac_link='$XEMACS_CC -o conftest$ac_exeext $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' >&AS_MESSAGE_LOG_FD' |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
29 ac_compiler_gnu=$ac_cv_c_compiler_gnu |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
30 ]) |
3003 | 31 dnl |
2651 | 32 dnl ------------------------------------------------------------------------- |
33 dnl Autoconf startup. | |
3003 | 34 dnl |
35 dnl Due to a dependence on the implementation of certain internal autoconf | |
36 dnl macros, die if any version other than 2.59 is used. | |
2651 | 37 AC_PREREQ(2.59)dnl |
3050 | 38 AC_INIT([XEmacs],[21.5],[xemacs-beta@xemacs.org])dnl |
39 AC_CONFIG_SRCDIR(src/lisp.h)dnl | |
3003 | 40 dnl |
2651 | 41 dnl ------------------------------------------------------------------------- |
42 dnl Local copyright notices. | |
43 | |
44 AC_COPYRIGHT( | |
3073 | 45 [Configuration script for XEmacs. Largely divergent from FSF. |
46 Guess values for system-dependent variables and create Makefiles. | |
47 | |
3418 | 48 Copyright (C) 1992-1999, 2001-2006 Free Software Foundation, Inc. |
3073 | 49 Copyright (C) 1993, 1994, 1995 Board of Trustees, University of Illinois. |
50 Copyright (C) 1996, 1997 Sun Microsystems, Inc. | |
51 Copyright (C) 1995, 1996, 2002, 2003, 2004 Ben Wing. | |
52 Copyright (C) 2000, 2001 Martin Buchholz. | |
53 Copyright (C) 1998, 1999 J. Kean Johnston. | |
54 Copyright (C) 2005 Malcolm Purvis | |
55 | |
56 Don't edit this script! | |
57 This script was automatically generated by the `autoconf' program | |
58 from the file `./configure.ac'. To rebuild it, execute the command: | |
59 | |
60 autoconf | |
61 | |
62 in the this directory. You must have autoconf version 2.59. | |
63 | |
64 This file is part of XEmacs. | |
65 | |
66 XEmacs is free software; you can redistribute it and/or modify it | |
67 under the terms of the GNU General Public License as published by | |
68 the Free Software Foundation; either version 2, or (at your | |
69 option) any later version. | |
70 | |
71 XEmacs is distributed in the hope that it will be useful, but | |
72 WITHOUT ANY WARRANTY; without even the implied warranty of | |
73 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
74 General Public License for more details. | |
75 | |
76 You should have received a copy of the GNU General Public License | |
77 along with XEmacs; see the file COPYING. If not, write to the Free | |
78 Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | |
79 Boston, MA 02110-1301, USA. | |
80 | |
81 For usage, run `./configure --help' | |
82 For more detailed information on building and installing XEmacs, | |
83 read the file `INSTALL'. | |
84 | |
85 If configure succeeds, it leaves its status in config.status. | |
86 A log of configuration tests can be found in config.log. | |
87 If configure fails after disturbing the status quo, | |
88 config.status is removed. | |
2651 | 89 ]) |
90 | |
91 dnl ------------------------------------------------------------------------- | |
92 dnl Program name (sanitize $0) | |
93 dnl Remove any more than one leading "." element from the path name. | |
94 dnl config.status prepends another "./" at each use. This confuses | |
95 dnl move-if-change. | |
96 dnl | |
97 dnl Unfortunately, some seds (Ultrix's) don't allow you to apply * to a | |
98 dnl \( \) group. Bleah. Remove the level config.status adds, at least. | |
99 dnl | |
100 dnl If there's reason to prefer $0 over this, make sure you fix all the | |
101 dnl uses in this script!! | |
102 progname="`echo $0 | sed 's:^\./\./:\./:'`" | |
3003 | 103 dnl |
2651 | 104 dnl ------------------------------------------------------------------------- |
105 dnl Local macros | |
3003 | 106 dnl |
2651 | 107 define([USAGE_ERROR], |
108 [(echo "$progname: Usage error:" | |
109 echo " " $1 | |
3003 | 110 echo " Use \`$progname --help' to show usage.") >&2 && exit 1])dnl |
111 dnl | |
2651 | 112 dnl PRINT_VAR(var var ...) prints values of shell variables |
113 define([PRINT_VAR],[for var in patsubst([$1],[[ | |
3003 | 114 ]+],[ ]); do eval "echo \"$var = '\$$var'\""; done])dnl |
115 dnl | |
2651 | 116 dnl XE_ADD_OBJS(foo.o) |
117 define([XE_ADD_OBJS], | |
118 [extra_objs="$extra_objs [$1]" && dnl | |
119 if test "$verbose" = "yes"; then | |
120 echo " xemacs will be linked with \"[$1]\"" | |
121 fi])dnl XE_ADD_OBJS | |
3003 | 122 dnl |
2651 | 123 dnl XE_APPEND(value, varname) |
124 define([XE_APPEND], | |
125 [[$2]="$[$2] [$1]" && dnl | |
3003 | 126 if test "$verbose" = "yes"; then echo " Appending \"[$1]\" to \$[$2]"; fi])dnl |
127 dnl | |
2651 | 128 dnl XE_PREPEND(value, varname) |
129 define([XE_PREPEND], | |
130 [[$2]="[$1] $[$2]" && dnl | |
3003 | 131 if test "$verbose" = "yes"; then echo " Prepending \"[$1]\" to \$[$2]"; fi])dnl |
132 dnl | |
2651 | 133 dnl XE_DIE(message) |
3003 | 134 define([XE_DIE], [{ echo "Error:" $1 >&2; exit 1; }])dnl |
135 dnl | |
2651 | 136 dnl XE_CHECK_FEATURE_DEPENDENCY(feature1, feature2) |
137 define([XE_CHECK_FEATURE_DEPENDENCY], | |
138 [if test "$with_[$1] $with_[$2]" = "yes no"; then | |
139 USAGE_ERROR("--with-[$1] requires --with-[$2]") | |
140 elif test "$with_[$2]" = "no" ; then with_[$1]=no | |
141 elif test "$with_[$1]" = "yes"; then with_[$2]=yes | |
142 fi | |
3003 | 143 ])dnl |
144 dnl | |
2651 | 145 dnl XE_STRIP_4TH_COMPONENT(var) |
146 dnl Changes i986-pc-linux-gnu to i986-pc-linux, as God (not RMS) intended. | |
147 define([XE_STRIP_4TH_COMPONENT], | |
3003 | 148 [$1=`echo "$$1" | sed '[s/^\([^-][^-]*-[^-][^-]*-[^-][^-]*\)-.*$/\1/]'`])dnl |
149 dnl | |
2651 | 150 dnl Do our best to deal with automounter brokenness |
151 dnl CANONICALIZE_PATH(varname) | |
152 define([CANONICALIZE_PATH], | |
153 [if test -d "/net"; then | |
154 if test -d "/tmp_mnt/net"; then tdir="tmp_mnt/net"; else tdir="tmp_mnt"; fi | |
155 $1=`echo "[$]$1" | \ | |
156 sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"` | |
157 fi])dnl | |
3003 | 158 dnl |
2651 | 159 dnl XE_PROTECT_LINKER_FLAGS(shell_var) |
160 define([XE_PROTECT_LINKER_FLAGS], [ | |
161 if test "$GCC" = "yes"; then | |
162 set x $[$1]; shift; [$1]="" | |
163 while test -n "[$]1"; do | |
164 case [$]1 in | |
165 -L | -l | -u ) [$1]="$[$1] [$]1 [$]2"; shift ;; | |
166 -L* | -l* | -u* | -Wl* | -pg ) [$1]="$[$1] [$]1" ;; | |
167 -Xlinker* ) ;; | |
168 * ) [$1]="$[$1] -Xlinker [$]1" ;; | |
169 esac | |
170 shift | |
171 done | |
172 fi])dnl | |
3003 | 173 dnl |
2651 | 174 dnl Allow use of either ":" or spaces for lists of directories |
175 define(COLON_TO_SPACE, | |
176 [case "$[$1]" in *:* [)] [$1]="`echo '' $[$1] | sed -e 's/^ //' -e 's/:/ /g'`";; esac])dnl | |
3003 | 177 dnl |
2651 | 178 dnl XE_ADD_RUNPATH_DIR(directory) |
179 define([XE_ADD_RUNPATH_DIR],[{ | |
180 xe_runpath_dir=$1 | |
181 dnl PRINT_VAR(ld_switch_site ld_switch_x_site runpath xe_runpath_dir LD_RUN_PATH xe_ldflags) | |
182 test "$xe_runpath_dir" != "/lib" -a \ | |
183 "$xe_runpath_dir" != "/usr/lib" -a \ | |
184 -n "`ls ${xe_runpath_dir}/*.s[[ol]] 2>/dev/null`" && \ | |
185 eval "$xe_add_unique_runpath_dir" | |
186 }])dnl | |
3003 | 187 dnl |
2651 | 188 dnl XE_COMPUTE_RUNPATH() |
189 define([XE_COMPUTE_RUNPATH],[ | |
190 if test "$add_runtime_path" = "yes" -a -n "$dash_r"; then | |
191 dnl Remove runtime paths from current ld switches | |
192 ld_switch_site=`echo '' $ld_switch_site | sed -e 's:^ ::' -e "s/$dash_r[[^ ]]*//g"` | |
193 ld_switch_x_site=`echo '' $ld_switch_x_site | sed -e 's:^ ::' -e "s/$dash_r[[^ ]]*//g"` | |
194 dnl PRINT_VAR(ld_switch_site ld_switch_x_site) | |
195 | |
196 dnl Fix up Runtime path | |
197 dnl If LD_RUN_PATH is set in environment, use that. | |
198 dnl In this case, assume user has set the right value. | |
199 runpath="" runpath_dirs="" | |
200 if test -n "$LD_RUN_PATH"; then | |
201 runpath="$LD_RUN_PATH" | |
202 elif test "$GCC" = "yes"; then | |
203 dnl Compute runpath from gcc's -v output | |
204 ld_switch_run_save="$ld_switch_run"; ld_switch_run="" | |
4588
6a6689b96f00
Adopt Martin's suggestion of "char **argv" throughout configure.ac.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4543
diff
changeset
|
205 echo "int main(int argc, char **argv) {return 0;}" > conftest.c |
2651 | 206 xe_runpath_link='${CC-cc} -o conftest -v $CFLAGS '"$xe_ldflags"' conftest.$ac_ext 2>&1 1>/dev/null' |
207 for arg in `eval "$xe_runpath_link" | grep ' -L'`; do | |
208 case "$arg" in P,* | -L* | -R* ) | |
209 for dir in `echo '' "$arg" | sed -e 's:^ ::' -e 's/^..//' -e 'y/:/ /'`; do | |
210 XE_ADD_RUNPATH_DIR("$dir") | |
211 done ;; | |
212 esac | |
213 done | |
214 ld_switch_run="$ld_switch_run_save" | |
215 rm -f conftest* | |
216 else | |
217 dnl Add all directories with .so files to runpath | |
218 for arg in $ld_switch_site $ld_switch_x_site; do | |
219 case "$arg" in -L*) XE_ADD_RUNPATH_DIR(`echo '' "$arg" | sed -e 's:^ ::' -e 's/^-L//'`);; esac | |
220 done | |
221 dnl Sometimes /opt/SUNWdt/lib is the only installed Motif available | |
3019 | 222 dnl #### this test always fails here as need_motif is null |
2651 | 223 if test "$opsys $need_motif" = "sol2 yes"; then |
224 xe_runpath_dir="/opt/SUNWdt/lib"; | |
225 eval "$xe_add_unique_runpath_dir"; | |
226 fi | |
227 fi dnl Compute $runpath | |
228 | |
229 if test -n "$runpath"; then | |
230 ld_switch_run="${dash_r}${runpath}" | |
231 XE_PROTECT_LINKER_FLAGS(ld_switch_run) | |
232 test "$verbose" = "yes" && echo "Setting runpath to $runpath" | |
233 fi | |
234 fi | |
235 ])dnl | |
3003 | 236 dnl |
2651 | 237 dnl The construct foo=`echo $w1 $w2 $w3` fails on some systems if $w1 = -e or -n |
238 dnl So we use the following instead. | |
239 dnl XE_SPACE(var, words) | |
240 define([XE_SPACE],[ | |
241 T="" | |
242 for W in $2; do if test -z "$T"; then T="$W"; else T="$T $W"; fi; done | |
243 $1="$T" | |
244 ])dnl XE_SPACE | |
3683 | 245 dnl Autoconf 2.59 and 2.60 have slightly different versions of m4_cdr that |
246 dnl return different values for an empty list. XE_CDR is a copy of the 2.60 | |
247 dnl version which will be used with both versions. | |
248 define([XE_CDR], | |
249 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], | |
250 [$#], 1, [], | |
251 [m4_dquote(m4_shift($@))])])dnl | |
3003 | 252 dnl |
253 dnl XE_MERGED_ARG(FEATURE, HELP-STRING, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) | |
254 dnl ------------------------------------------------------------------------ | |
255 dnl | |
256 dnl Arguments that can be specified with either --enable or --with. The | |
257 dnl majority of XEmacs arguments do not fit neatly into the division between | |
258 dnl --enable and --with, so allow those to be specified by either argument. | |
259 dnl The value is stored in both enable_FEATURE and with_FEATURE. | |
260 AC_DEFUN([XE_MERGED_ARG], | |
261 [m4_divert_once([HELP_ENABLE], [[ | |
262 Optional Features: | |
263 --with-FEATURE[=ARG] include FEATURE [ARG=yes] | |
264 --enable-FEATURE[=ARG] alias for --with-FEATURE | |
265 --without-FEATURE do not use FEATURE (same as --with-FEATURE=no) | |
266 --disable-FEATURE alias for --without-FEATURE]])dnl | |
267 m4_divert_once([HELP_ENABLE], m4_bpatsubst([[$2]],[--enable\([^ ]+\) ],[--with\1 ]))dnl | |
3764 | 268 dnl Register both forms with the option checking list. |
269 dnl Options are only checked with autoconf > 2.61. | |
4656
79d1a0524b5f
Use correct separator when registering options to _AC_USER_OPTS.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4588
diff
changeset
|
270 m4_append_uniq([_AC_USER_OPTS], [enable_]m4_bpatsubst([$1], -, _), [ |
79d1a0524b5f
Use correct separator when registering options to _AC_USER_OPTS.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4588
diff
changeset
|
271 ])dnl |
79d1a0524b5f
Use correct separator when registering options to _AC_USER_OPTS.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4588
diff
changeset
|
272 m4_append_uniq([_AC_USER_OPTS], [with_]m4_bpatsubst([$1], -, _), [ |
79d1a0524b5f
Use correct separator when registering options to _AC_USER_OPTS.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4588
diff
changeset
|
273 ])dnl |
3003 | 274 # If --with-$1 or --without-$1 were given then copy the value to the |
275 # equivalent enable_$1 variable. | |
276 if test "[${with_]m4_bpatsubst([$1], -, _)+set}" = set; then | |
277 [enable_]m4_bpatsubst([$1], -, _)="[$with_]m4_bpatsubst([$1], -, _)" | |
278 fi; | |
279 # If -enable-$1 or --disable-$1 were given then copy the value to the | |
280 # equivalent with_$1 variable. | |
281 if test "[${enable_]m4_bpatsubst([$1], -, _)+set}" = set; then | |
282 [with_]m4_bpatsubst([$1], -, _)="[$enable_]m4_bpatsubst([$1], -, _)" | |
283 fi; | |
284 # Check whether --with-$1 or --without-$1 was given. | |
285 if test "[${with_]m4_bpatsubst([$1], -, _)+set}" = set; then | |
286 enableval="[$with_]m4_bpatsubst([$1], -, _)" | |
287 withval="[$with_]m4_bpatsubst([$1], -, _)" | |
288 $3 | |
289 m4_ifvaln([$4], [else | |
290 $4])dnl | |
291 fi; dnl | |
292 ])dnl XE_MERGED_ARG | |
293 dnl | |
3073 | 294 dnl XE_HELP_SUBSECTION(HEADING) |
295 dnl -------------------------- | |
296 dnl | |
297 dnl Add subsection headings to the help text for XE_MERGED_ARG options. | |
298 dnl | |
299 AC_DEFUN([XE_HELP_SUBSECTION], | |
300 [m4_divert_once([HELP_ENABLE], [[ | |
301 Optional Features: | |
302 --with-FEATURE[=ARG] include FEATURE [ARG=yes] | |
303 --enable-FEATURE[=ARG] alias for --with-FEATURE | |
304 --without-FEATURE do not use FEATURE (same as --with-FEATURE=no) | |
305 --disable-FEATURE alias for --without-FEATURE]])dnl | |
306 dnl NOTE: The next eol adds a blank line before the heading. | |
307 m4_divert_once([HELP_ENABLE], [[ | |
308 $1]])dnl | |
3161 | 309 dnl Add an underscore |
3073 | 310 dnl NOTE: The next eol adds a blank line after the underscore. |
311 m4_divert_text([HELP_ENABLE], patsubst([$1], [.], [-]) | |
312 )])dnl | |
313 dnl | |
2651 | 314 dnl XEmacs keyword option support |
315 dnl ============================= | |
316 dnl | |
317 dnl A "keyword" option is one that accepts one of a number of pre-defined | |
318 dnl values. For example --with-mail-locking=flock. | |
319 dnl The descriptions below provide prototypes and little more. | |
320 dnl | |
321 dnl For more information, | |
322 dnl (Info-goto-node "(internals)The configure Script") | |
323 dnl To edit the documentation, | |
324 dnl (progn (find-file "man/internals/internals.texi")) | |
325 dnl and search for "@node The configure Script". | |
326 dnl | |
327 dnl XE_PARSE_KEYWORD_OPTION(prefix, cmdline-flag) | |
328 dnl --------------------------------------------- | |
329 dnl | |
330 dnl Internal macro to parse the option values. If an undeclared option is | |
331 dnl found then an error is generated. | |
332 dnl | |
333 define([XE_PARSE_KEYWORD_OPTION], | |
334 [_[$1]_bogus=yes | |
335 for x in XE_KEYWORD_LIST ; do | |
3003 | 336 if test $x = $with_[$1] ; then |
2651 | 337 _[$1]_bogus=no |
338 fi | |
339 done | |
340 if test "$_[$1]_bogus" = "yes" ; then | |
341 USAGE_ERROR(["The [$2] option must have one of these values: m4_translit(XE_KEYWORD_VALUES,[:],[,])."]) | |
342 fi | |
343 unset _[$1]_bogus | |
344 undefine([XE_KEYWORD_LIST])dnl | |
3003 | 345 undefine([XE_KEYWORD_VALUES])])dnl |
2651 | 346 dnl |
347 dnl XE_KEYWORD(keyword) | |
348 dnl -------------------------------- | |
349 dnl | |
350 dnl | |
351 define([XE_KEYWORD], | |
352 [m4_append([XE_KEYWORD_LIST],[$1],[ ])dnl | |
353 dnl Separate with a ':' instead of a ',' (see the parsing code above) to avoid | |
3161 | 354 dnl confusion with macro parameter lists. |
2651 | 355 m4_append([XE_KEYWORD_VALUES],[\`$1'],[:])dnl |
3003 | 356 ])dnl |
2651 | 357 dnl |
3003 | 358 dnl XE_KEYWORD_ARG(PACKAGE, HELP-STRING, ACTION-IF-TRUE, ACTION-IF-FALSE, |
2651 | 359 dnl [XE_KEYWORD(keyword), ....]) |
360 dnl -------------------------------------------------------------------------- | |
361 dnl | |
3003 | 362 dnl Expanded version of XE_MERGED_ARG for keyword options. All the parameters |
2651 | 363 dnl are required. |
364 dnl | |
3003 | 365 define([XE_KEYWORD_ARG], |
2651 | 366 [m4_map([XE_KEYWORD],m4_shiftn(4, $@)) |
3003 | 367 XE_MERGED_ARG([$1],[$2], |
368 [XE_PARSE_KEYWORD_OPTION(patsubst([$1], -, _), [--with-$1]) | |
2651 | 369 $3 |
3003 | 370 ],[$4])])dnl |
2651 | 371 dnl |
372 dnl XEmacs complex option support | |
373 dnl ============================= | |
374 dnl | |
375 dnl A "complex option" is one that takes a number of related values. | |
376 dnl For example, we might use "--with-xft=all,nomenubars" for compatibility | |
377 dnl with XFontSet i18n of menubars. (Silly, Xft looks much better than XFS.) | |
378 dnl | |
379 dnl The descriptions below provide prototypes and little more. | |
380 dnl For more information, | |
381 dnl (Info-goto-node "(internals)The configure Script") | |
382 dnl To edit the documentation, | |
383 dnl (progn (find-file "man/internals/internals.texi")) | |
384 dnl and search for "@node The configure Script". | |
385 dnl | |
386 dnl XE_EXPAND_COMPLEX_OPTION(prefix, component, yesno) | |
387 dnl --------------------------------------------------- | |
388 dnl | |
389 dnl Internal macro create the option's shell variable containing the default | |
390 dnl value and to note the values in an option list. | |
391 dnl | |
392 define([XE_EXPAND_COMPLEX_OPTION], | |
3147 | 393 [_[$1]_[$2]_default=[$3] |
2651 | 394 m4_append([XE_COMPONENT_LIST],[$2],[ ])dnl |
395 dnl Separate with a ':' instead of a ',' (see <prefix>_default below) to avoid | |
3161 | 396 dnl confusion with macro parameter lists. |
2651 | 397 m4_append([XE_COMPONENT_DEFAULT],[m4_if([$3],no,no)[$2]],[:])dnl |
398 ])dnl | |
399 dnl | |
400 dnl XE_EXPAND_COMPLEX_OPTIONS(prefix, option_list) | |
401 dnl ---------------------------------------------- | |
402 dnl | |
403 dnl Internal macro to recursively expand all the options in the option list. | |
404 dnl | |
4475
86283c809984
autoconf 2.62 compatibility, #370
"Ville Skyttä <scop@xemacs.org>"
parents:
4455
diff
changeset
|
405 dnl m4_fst disappeared without a trace in autoconf 2.62 |
86283c809984
autoconf 2.62 compatibility, #370
"Ville Skyttä <scop@xemacs.org>"
parents:
4455
diff
changeset
|
406 m4_define([xe_fst], [$1])dnl |
2651 | 407 define([XE_EXPAND_COMPLEX_OPTIONS], |
3683 | 408 [m4_if([$2], [], [], |
4475
86283c809984
autoconf 2.62 compatibility, #370
"Ville Skyttä <scop@xemacs.org>"
parents:
4455
diff
changeset
|
409 [XE_EXPAND_COMPLEX_OPTION([$1], xe_fst($2))[]dnl |
3683 | 410 XE_EXPAND_COMPLEX_OPTIONS([$1], XE_CDR($2))])])dnl |
2651 | 411 dnl |
412 dnl XE_INIT_COMPLEX_OPTION(prefix, option_list) | |
413 dnl ------------------------------------------- | |
414 dnl | |
415 dnl Internal macro to initialise the complex option shell variables. | |
416 dnl Variables of the form <prefix>_<option> contain the default value for that | |
417 dnl option. <prefix>_types contains a space-separated list of all the options | |
418 dnl and <prefix>_default contains a comma-separated list of all the default | |
419 dnl values. | |
420 dnl | |
421 define([XE_INIT_COMPLEX_OPTION], | |
3003 | 422 [_[$1]_notfirst="" |
2651 | 423 dnl |
3147 | 424 XE_EXPAND_COMPLEX_OPTIONS($@)dnl |
2651 | 425 _[$1]_types="XE_COMPONENT_LIST" |
426 _[$1]_default="m4_translit(XE_COMPONENT_DEFAULT,[:],[,])" | |
427 dnl Undefine these macros so that they can be reused by later complex | |
428 dnl options. | |
3147 | 429 undefine([XE_COMPONENT_LIST])dnl |
430 undefine([XE_COMPONENT_DEFAULT])dnl | |
3003 | 431 ])dnl |
432 dnl | |
2651 | 433 dnl XE_PARSE_COMPLEX_OPTION(prefix, cmdline-flag) |
434 dnl --------------------------------------------- | |
435 dnl | |
436 dnl Internal macro to parse the option values. If an undeclared option is | |
3073 | 437 dnl found then an error is generated. Because something has been supplied on |
438 dnl the command line initialise all the complex options to 'no' rather than | |
3147 | 439 dnl the default. In this way --enable-complex=foo will give the expected |
3073 | 440 dnl value (no) for bar. |
2651 | 441 dnl |
3147 | 442 dnl #### I think we should add a couple more features. |
443 dnl First, at the end of XE_PARSE_COMPLEX_OPTION check for contradictory args, | |
444 dnl specifically if `all' is specified but the options are all individually | |
445 dnl disabled, or if `none' is specified but the options are all individually | |
446 dnl enabled, we should _warn_ about this situation. | |
447 dnl Second, we should provide an XE_VALIDATE_COMPLEX_OPTION macro to be used | |
448 dnl at the end of detection. If any feature is `yes' but we don't have it, | |
449 dnl then we should XE_DIE. | |
450 dnl | |
2651 | 451 define([XE_PARSE_COMPLEX_OPTION], |
3147 | 452 [dnl Initialize variables for COMPLEX_OPTION [$1]. Leading underscore or |
453 dnl single letter variables are internal to the XE_PARSE_COMPLEX_OPTION macro. | |
454 _[$1]_all_default="" | |
455 _require_[$1]="" | |
456 dnl check first arg for default spec | |
457 case "$with_[$1]" in | |
458 n | no | non | none ) _[$1]_all_default=no ;; | |
459 n,* | no,* | non,* | none,* ) _[$1]_all_default=no ;; | |
460 a | al | all | both ) _[$1]_all_default=yes ;; | |
461 a,* | al,* | all,* | both,* ) _[$1]_all_default=yes ;; | |
462 y | yes ) _require_[$1]=yes ;; | |
463 esac | |
464 dnl if first arg was a default spec, trim it | |
465 if test -n "$_[$1]_all_default$_require_[$1]"; then | |
466 _with_[$1]_args=`echo $with_[$1] | sed -e 's/^[[a-z]]*\(,\(.*\)\)\{0,1\}$/\2/'` | |
467 else | |
468 _with_[$1]_args=$with_[$1] | |
469 fi | |
470 dnl set default for each type | |
471 for y in $_[$1]_types; do | |
472 if test -n "$_[$1]_all_default" ; then | |
473 eval "with_[$1]_${y}=$_[$1]_all_default" | |
474 else | |
475 eval "with_[$1]_$y=\$_[$1]_${y}_default" | |
476 fi | |
3073 | 477 done |
3147 | 478 dnl parse the command line arg and set types found appropriately |
479 for x in `echo "$_with_[$1]_args" | sed -e 's/,/ /g'` ; do | |
2651 | 480 _[$1]_found="" |
3147 | 481 for y in $_[$1]_types; do |
482 if test "$x" = "$y"; then | |
483 _[$1]_found=yes | |
484 eval "with_[$1]_$y=yes" | |
485 elif test "$x" = "no$y"; then | |
486 _[$1]_found=yes | |
487 eval "with_[$1]_$y=no" | |
488 fi | |
489 done | |
490 test -z "$_[$1]_found" && \ | |
491 USAGE_ERROR(["\ | |
492 Invalid type list supplied. Valid types for the [$2] option are: | |
493 $_[$1]_types. | |
494 A prefix of \"no\" (eg, \"notype\" for \"type\") turns a type off. | |
495 Types not explicitly specified or negated take their defaults. | |
496 The list of defaults is \"$_[$1]_default\". Prefixing \`all' or | |
497 \`none' to the list sets all defaults to on and off respectively. | |
498 \`yes' as the sole argument is equivalent to omitting the argument."]) | |
2651 | 499 done |
3147 | 500 dnl copy values to enable_FEATURE_TYPE. Cleanup default vars. |
501 for y in $_[$1]_types; do | |
502 eval "enable_[$1]_$y=\$with_[$1]_$y" | |
503 unset _[$1]_${y}_default | |
504 done | |
505 dnl clean up | |
506 unset _[$1]_types _[$1]_default _[$1]_all_default _[$1]_use_defaults | |
507 unset _with_[$1]_args _[$1]_found x y _require_[$1] | |
3003 | 508 ])dnl |
509 dnl | |
2651 | 510 dnl XE_COMPLEX_OPTION(option, yesno) |
511 dnl -------------------------------- | |
512 dnl | |
513 dnl Declare a complex option and its default value. The value MUST be either | |
514 dnl yes or no or "" (which means maybe). | |
515 dnl | |
516 define([XE_COMPLEX_OPTION],[[$1,$2]]) | |
517 dnl | |
518 dnl XE_COMPLEX_OPTION_HELP_STRING(flag, long, short, components, libraries) | |
519 dnl ----------------------------------------------------------------------- | |
520 dnl Boilerplate help string for complex options. | |
521 dnl #### This doesn't read so well for alternative libraries like sound. | |
522 dnl | |
523 define([XE_COMPLEX_OPTION_HELP_STRING], | |
3312 | 524 [AS_HELP_STRING([$1],[Compile with support for $2. Components that can use |
2651 | 525 $3 are $4. Prefix component with `no' to disable its use of $3. Requires |
3003 | 526 $5 support. Default is $6.])])dnl |
2651 | 527 dnl |
3003 | 528 dnl XE_COMPLEX_ARG(PACKAGE, HELP-STRING, ACTION-IF-TRUE, ACTION-IF-FALSE, |
2651 | 529 dnl [XE_COMPLEX_OPTION(a,yes), ....]) |
530 dnl -------------------------------------------------------------------------- | |
531 dnl | |
3003 | 532 dnl Expanded version of XE_MERGED_ARG for complex options. All the parameters |
2651 | 533 dnl are required. |
534 dnl | |
3003 | 535 define([XE_COMPLEX_ARG], |
536 [XE_INIT_COMPLEX_OPTION(patsubst([$1], -, _), m4_shiftn(4, $@)) | |
537 XE_MERGED_ARG([$1],[$2], | |
538 [XE_PARSE_COMPLEX_OPTION(patsubst([$1], -, _), [--with-$1]) | |
2651 | 539 $3 |
3147 | 540 ],[ |
541 # set default for each type | |
3149 | 542 for y in [$_]patsubst([$1], -, _)[_types]; do |
543 eval "[with_]patsubst([$1], -, _)[_$y]=[\$_]patsubst([$1], -, _)[_${y}_default]" | |
544 eval "[enable_]patsubst([$1], -, _)[_$y]=[\$_]patsubst([$1], -, _)[_${y}_default]" | |
545 unset [_]patsubst([$1], -, _)[_${y}_default] | |
3147 | 546 done |
547 $4])])dnl | |
2651 | 548 dnl |
549 dnl ------------------------------------------------------------------------- | |
550 XE_APPEND(lib-src, MAKE_SUBDIR) | |
551 XE_APPEND(lib-src, INSTALL_ARCH_DEP_SUBDIR) | |
552 with_dragndrop_default="no" | |
553 dnl ------------------------------------------------------------------------- | |
554 dnl Command line argument processing. | |
3312 | 555 dnl Note that AS_HELP_STRING compresses whitespace, wraps, and indents the |
2651 | 556 dnl string to fit the --help display; there's no need to preformat. |
557 dnl | |
558 dnl I think these will be caught by autoconf internal checks, | |
559 dnl only --with-* are unchecked | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
560 dnl --external-widget --with-external-widget |
2651 | 561 dnl --native-sound-lib=LIB --with-native-sound-lib |
562 dnl --mail-locking=TYPE --with-mail-locking | |
563 dnl --rel-alloc --with-rel-alloc | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
564 dnl --use-number-lib --with-bignum |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
565 dnl --debug --with-debug |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
566 dnl --error-checking --with-error-checking |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
567 dnl --memory-usage-stats --with-memory-usage-stats |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
568 dnl --quick-build --with-quick-build |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
569 dnl --use-union-type --with-union-type |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
570 dnl --pdump --with-pdump |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
571 dnl --use-kkcc --with-kkcc |
3003 | 572 dnl |
2651 | 573 dnl parse flags |
3073 | 574 XE_HELP_SUBSECTION([Compilation options]) |
575 XE_MERGED_ARG([compiler], | |
3312 | 576 AS_HELP_STRING([--with-compiler],[C compiler to use]), |
3073 | 577 [], []) |
578 XE_MERGED_ARG([xemacs-compiler], | |
3312 | 579 AS_HELP_STRING([--with-xemacs-compiler], |
3073 | 580 [compiler to use to compile just the xemacs executable and C modules. |
581 If you want to compile XEmacs as C++, use e.g. | |
582 `--with-xemacs-compiler=g++'. This turns on a lot of | |
583 additional error-checking.]), | |
584 [], []) | |
585 XE_MERGED_ARG([gcc], | |
3312 | 586 AS_HELP_STRING([--with-gcc],[Use GCC to compile XEmacs.]), |
3073 | 587 [], []) |
588 XE_MERGED_ARG([cflags], | |
3312 | 589 AS_HELP_STRING([--with-cflags=FLAGS], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
590 [Compiler flags. These flags will be placed after any flags inserted for warnings, debugging or optimization; setting this does not disable the insertion of those flags. Use configure settings such as `--with-optimization=no' or `with-debug=no' to turn them off, or override them with `--with-cflags-optimization', `--with-cflags-debugging', or `with-cflags-warning'.]), |
3073 | 591 [], []) |
592 XE_MERGED_ARG([cflags-warning], | |
3312 | 593 AS_HELP_STRING([--with-cflags-warning=FLAGS],[Override compiler flags used to control warnings. |
3073 | 594 Normally, don't set this, as XEmacs already turns on |
595 the maximum safe warning level.]), | |
596 [], []) | |
597 XE_MERGED_ARG([optimization], | |
3312 | 598 AS_HELP_STRING([--with-optimization],[Control whether compilation is optimized. By default, optimization is on in release versions and off in beta versions, since it can interfere with proper stack backtraces.]), |
3073 | 599 [], []) |
600 XE_MERGED_ARG([cflags-optimization], | |
3312 | 601 AS_HELP_STRING([--with-cflags-optimization=FLAGS], |
3073 | 602 [Override compiler flags used to control optimization. If blank, forces no optimization; if non-blank, forces optimization. Normally, don't set this; XEmacs automatically sets the maximum safe optimization flags appropriate for the compiler being invoked. If you just want to turn optimization on or off, use `with-optimization' instead.]), |
603 [], []) | |
604 XE_MERGED_ARG([cflags-debugging], | |
3312 | 605 AS_HELP_STRING([--with-cflags-debugging=FLAGS], |
3073 | 606 [Override compiler flags used to add debugging information to the executable. Normally, debugging information is added whenever possible (i.e. unless optimization is turned on and the compiler does not permit debugging and optimization simultaneously).]), |
607 [], []) | |
608 XE_MERGED_ARG([cpp], | |
3312 | 609 AS_HELP_STRING([--with-cpp],[C preprocessor to use (e.g. /usr/ccs/lib/cpp or cc -E)]), |
3073 | 610 [CPP="$with_cpp"], []) |
611 XE_MERGED_ARG([cppflags], | |
3312 | 612 AS_HELP_STRING([--with-cppflags],[C preprocessor flags (e.g. -I/foo or -Dfoo=bar)]), |
3073 | 613 [CPPFLAGS="$with_cppflags"], []) |
614 XE_MERGED_ARG([libs=LIBS], | |
3312 | 615 AS_HELP_STRING([--with-libs],[Additional libraries (e.g. -lfoo)]), |
3073 | 616 [LIBS="$with_libs"], []) |
617 XE_MERGED_ARG([ldflags=FLAGS], | |
3312 | 618 AS_HELP_STRING([--with-ldflags],[Additional linker flags (e.g. -L/foo)]), |
3073 | 619 [LDFLAGS="$with_ldflags"], []) |
620 XE_MERGED_ARG([site-includes], | |
3312 | 621 AS_HELP_STRING([--with-site-includes=PATHS],[Prepend to include search path.]), |
3073 | 622 [], []) |
623 XE_MERGED_ARG([site-libraries], | |
3312 | 624 AS_HELP_STRING([--with-site-libraries=PATHS],[Prepend to library search path.]), |
3073 | 625 [], []) |
626 XE_MERGED_ARG([site-prefixes], | |
3312 | 627 AS_HELP_STRING([--with-site-prefixes=PATHS],[Prepend to include and library search paths, with /include and /lib added. Comes after site-includes and site-libraries, if any.]), |
3073 | 628 [], []) |
629 XE_MERGED_ARG([site-runtime-libraries], | |
3312 | 630 AS_HELP_STRING([--with-site-runtime-libraries=PATHS],[Prepend to the runtime library search path]), |
3073 | 631 [], []) |
632 XE_MERGED_ARG([dynamic], | |
3312 | 633 AS_HELP_STRING([--with-dynamic],[Link dynamically if supported by system. 'No' forces static linking.]), |
3073 | 634 [], []) |
635 dnl | |
636 XE_HELP_SUBSECTION([Installation options]) | |
3003 | 637 XE_MERGED_ARG([prefix], |
3312 | 638 AS_HELP_STRING([--with-prefix=no],[Don't compile the value for `prefix' into the executable.]), |
2651 | 639 [true], [with_prefix=yes]) |
3073 | 640 XE_MERGED_ARG([netinstall], |
3312 | 641 AS_HELP_STRING([--with-netinstall],[Support for installation over the internet. |
3073 | 642 Only functional on the MS Windows platforms.]), |
643 [], [with_netinstall="no"]) | |
644 XE_MERGED_ARG([statedir], | |
3312 | 645 AS_HELP_STRING([--with-statedir=DIR],[]), |
3073 | 646 [], [with_statedir='${prefix}/lib']) |
647 XE_MERGED_ARG([lispdir], | |
3312 | 648 AS_HELP_STRING([--with-lispdir=DIR],[]), |
3073 | 649 [AC_DEFINE(LISPDIR_USER_DEFINED)], [with_lispdir='${datadir}/${instvardir}/lisp']) |
650 XE_MERGED_ARG([archlibdir], | |
3312 | 651 AS_HELP_STRING([--with-archlibdir=DIR],[]), |
3073 | 652 [AC_DEFINE(ARCHLIBDIR_USER_DEFINED)], [with_archlibdir='${libdir}/${instvardir}/${configuration}']) |
653 XE_MERGED_ARG([moduledir], | |
3312 | 654 AS_HELP_STRING([--with-moduledir=DIR],[]), |
3073 | 655 [AC_DEFINE(MODULEDIR_USER_DEFINED)], [with_moduledir='${libdir}/${instvardir}/${configuration}/modules']) |
656 XE_MERGED_ARG([etcdir], | |
3312 | 657 AS_HELP_STRING([--with-etcdir=DIR],[]), |
3073 | 658 [AC_DEFINE(ETCDIR_USER_DEFINED)], [with_etcdir='${datadir}/${instvardir}/etc']) |
659 XE_MERGED_ARG([docdir], | |
3312 | 660 AS_HELP_STRING([--with-docdir=DIR],[]), |
3073 | 661 [AC_DEFINE(DOCDIR_USER_DEFINED)], [with_docdir='${archlibdir}']) |
662 dnl | |
663 XE_HELP_SUBSECTION([Run-time path-searching options]) | |
3003 | 664 XE_MERGED_ARG([site-lisp], |
3312 | 665 AS_HELP_STRING([--with-site-lisp=no],[Allow for a site-lisp directory in the XEmacs hierarchy searched before the installation packages.]), |
2651 | 666 [true], [with_site_lisp=no]) |
3003 | 667 XE_MERGED_ARG([site-modules], |
3312 | 668 AS_HELP_STRING([--with-site-modules=no],[Disable site-modules directory in the XEmacs hierarchy, which is searched before the installation modules.]), |
2651 | 669 [], []) |
3179 | 670 XE_MERGED_ARG([early-packages], |
3312 | 671 AS_HELP_STRING([--with-early-packages=DIR],[Specify location of early/user packages (instead of ~/.xemacs; same as --with-user-packages).]), |
3179 | 672 [AC_DEFINE(EARLY_PACKAGE_DIRECTORIES_USER_DEFINED)], []) |
673 XE_MERGED_ARG([user-packages], | |
3312 | 674 AS_HELP_STRING([--with-user-packages=DIR],[Specify location of early/user packages (instead of ~/.xemacs; same as --with-early-packages).]), |
3179 | 675 [AC_DEFINE(EARLY_PACKAGE_DIRECTORIES_USER_DEFINED)], []) |
676 XE_MERGED_ARG([late-packages], | |
3312 | 677 AS_HELP_STRING([--with-late-packages=DIR],[Specify location of late/system packages (instead of default location; same as --with-system-packages).]), |
3179 | 678 [AC_DEFINE(LATE_PACKAGE_DIRECTORIES_USER_DEFINED)], []) |
679 XE_MERGED_ARG([system-packages], | |
3518 | 680 AS_HELP_STRING([--with-system-packages=DIR],[Specify location of late/system packages (instead of default location; same as --with-late-packages).]), |
3179 | 681 [AC_DEFINE(LATE_PACKAGE_DIRECTORIES_USER_DEFINED)], []) |
682 XE_MERGED_ARG([last-packages], | |
3312 | 683 AS_HELP_STRING([--with-last-packages=DIR],[Specify location of last/legacy packages (instead of default location; same as --with-legacy-packages).]), |
3179 | 684 [AC_DEFINE(LAST_PACKAGE_DIRECTORIES_USER_DEFINED)], []) |
685 XE_MERGED_ARG([legacy-packages], | |
4350
50889296c05c
Fix typo of "late packages" for "last packages".
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4328
diff
changeset
|
686 AS_HELP_STRING([--with-legacy-packages=DIR],[Specify location of last/legacy packages (instead of default location; same as --with-last-packages).]), |
50889296c05c
Fix typo of "late packages" for "last packages".
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4328
diff
changeset
|
687 [AC_DEFINE(LAST_PACKAGE_DIRECTORIES_USER_DEFINED)], []) |
3073 | 688 XE_MERGED_ARG([package-path], |
3312 | 689 AS_HELP_STRING([--with-package-path=PATH],[Search path for package directories.]), |
3073 | 690 [AC_DEFINE(PACKAGE_PATH_USER_DEFINED)], []) |
691 XE_MERGED_ARG([infopath], | |
3312 | 692 AS_HELP_STRING([--with-infopath=PATH],[Location of info directories]), |
3073 | 693 [AC_DEFINE(INFOPATH_USER_DEFINED)], []) |
694 dnl | |
695 XE_HELP_SUBSECTION([Window-system options]) | |
3354 | 696 dnl Enable when fontconfig support is factored out of Xft. |
697 dnl XE_MERGED_ARG([fontconfig], | |
698 dnl AS_HELP_STRING([--with-fontconfig], | |
699 dnl [Use fontconfig library to configure fonts.], | |
700 dnl [],[]) | |
3094 | 701 dnl if you change defaults, make sure to fix arg 6 of the OPTION_HELP macro. |
702 XE_COMPLEX_ARG([xft], | |
703 [XE_COMPLEX_OPTION_HELP_STRING([--with-xft], | |
704 [Xft client-side font rendering and anti-aliasing], | |
705 [Xft], | |
706 [`emacs' (buffers), `menubars', `tabs', and `gauges'], | |
707 [X11, Xft, Xrender, freetype, and fontconfig], | |
4496
772c80e0e180
with-xft defaults to xft being used with a default setting.
Mats Lidell <matsl@xemacs.org>
parents:
4475
diff
changeset
|
708 [`noemacs, nomenubars, notabs, nogauges'. |
772c80e0e180
with-xft defaults to xft being used with a default setting.
Mats Lidell <matsl@xemacs.org>
parents:
4475
diff
changeset
|
709 The default when selected is `emacs, nomenubars, notabs, nogauges'])], |
772c80e0e180
with-xft defaults to xft being used with a default setting.
Mats Lidell <matsl@xemacs.org>
parents:
4475
diff
changeset
|
710 [],[with_xft_emacs=no], |
772c80e0e180
with-xft defaults to xft being used with a default setting.
Mats Lidell <matsl@xemacs.org>
parents:
4475
diff
changeset
|
711 [XE_COMPLEX_OPTION([emacs],[yes]), |
3098 | 712 XE_COMPLEX_OPTION([menubars],[no]), |
713 XE_COMPLEX_OPTION([tabs],[no]), | |
714 XE_COMPLEX_OPTION([gauges],[no])]) | |
3003 | 715 XE_MERGED_ARG([gtk], |
3312 | 716 AS_HELP_STRING([--with-gtk],[Support GTK on the X Window System. (EXPERIMENTAL)]), |
2651 | 717 [true], [with_gtk=no]) |
3003 | 718 XE_MERGED_ARG([gnome], |
3312 | 719 AS_HELP_STRING([--with-gnome],[Support GNOME on the X Window System. (EXPERIMENTAL)]), |
2651 | 720 [true], [with_gnome=no]) |
3003 | 721 XE_MERGED_ARG([msw], |
3312 | 722 AS_HELP_STRING([--with-msw],[Support MS Windows as a window system (only under Cygwin and MinGW). `--with-msw=no' may be needed on *nix systems with Wine installed.]), |
2651 | 723 [], []) |
3073 | 724 XE_MERGED_ARG([toolbars], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
725 AS_HELP_STRING([--with-toolbars],[Enable toolbar support. Default: yes.]), |
2651 | 726 [], []) |
3073 | 727 XE_MERGED_ARG([wmcommand], |
3312 | 728 AS_HELP_STRING([--with-wmcommand],[Compile without realized leader window which will |
3073 | 729 keep the WM_COMMAND property.]), |
2651 | 730 [], []) |
3073 | 731 XE_KEYWORD_ARG([athena], |
3312 | 732 AS_HELP_STRING([--with-athena=TYPE],[Use TYPE Athena widgets (`xaw', `3d', `next', `95', or `xpm').]), |
3073 | 733 [],[],[xaw,3d,next,95,xpm])dnl |
734 XE_KEYWORD_ARG([menubars], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
735 AS_HELP_STRING([--with-menubars=TYPE],[Use TYPE menubars ('yes', '`no', `lucid', `motif', `athena', `gtk', or `msw'). The Lucid |
3073 | 736 widgets emulate Motif (mostly) but are faster. |
737 *WARNING* The Motif menubar is currently broken. | |
738 Lucid menubars are the default.]), | |
739 [], [],[yes,no,lucid,motif,athena,gtk,msw]) | |
740 XE_KEYWORD_ARG([scrollbars], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
741 AS_HELP_STRING([--with-scrollbars=TYPE],[Use TYPE scrollbars 'yes', '`no', `lucid', `motif', `athena', `gtk', or `msw'). |
3073 | 742 Lucid scrollbars are the default.]), |
743 [], [],[yes,no,lucid,motif,athena,gtk,msw]) | |
744 XE_KEYWORD_ARG([dialogs], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
745 AS_HELP_STRING([--with-dialogs=TYPE],[Use TYPE dialog boxes 'yes', '`no', `lucid', `motif', `athena', `gtk', or `msw'). |
3073 | 746 There are no true Lucid dialogs; Motif dialogs will be |
747 used if Motif can be found, else Athena is used.]), | |
748 [], [],[yes,no,lucid,motif,athena,gtk,msw]) | |
749 XE_KEYWORD_ARG([widgets], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
750 AS_HELP_STRING([--with-widgets=TYPE],[Use TYPE native widgets ('yes', '`no', `lucid', `motif', `athena', `gtk', or `msw'). |
3073 | 751 Other widget types are currently unsupported. |
752 There are no true Lucid widgets; Motif widgets will be | |
753 used if Motif can be found, else Athena is used.]), | |
754 [], [],[yes,no,lucid,motif,athena,gtk,msw]) | |
3003 | 755 XE_MERGED_ARG([dragndrop], |
3312 | 756 AS_HELP_STRING([--with-dragndrop],[Compile in the generic drag and drop API. This is automatically added if one of the drag and drop |
4790
bc4f2511bbea
Remove support for the OffiX drag-and-drop protocol. See xemacs-patches
Jerry James <james@xemacs.org>
parents:
4769
diff
changeset
|
757 protocols is found (currently CDE, MSWindows, and GTK). |
2651 | 758 *WARNING* The Drag'n'drop support is under development |
759 and is considered experimental.]), | |
760 [], []) | |
3003 | 761 XE_MERGED_ARG([cde], |
3312 | 762 AS_HELP_STRING([--with-cde],[Compile in support for CDE drag and drop.]), |
2651 | 763 [], []) |
3073 | 764 XE_MERGED_ARG([external-widget], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
765 AS_HELP_STRING([--with-external-widget],[Support XEmacs server for text widgets in other applications.]), |
3073 | 766 [], []) |
767 dnl | |
768 XE_HELP_SUBSECTION([TTY (character terminal) options]) | |
769 XE_MERGED_ARG([tty], | |
3312 | 770 AS_HELP_STRING([--with-tty],[Enable TTY support. Default: yes.]), |
3073 | 771 [], []) |
772 XE_MERGED_ARG([ncurses], | |
3312 | 773 AS_HELP_STRING([--with-ncurses],[Use the ncurses library for tty support.]), |
3073 | 774 [], []) |
3003 | 775 XE_MERGED_ARG([gpm], |
3312 | 776 AS_HELP_STRING([--with-gpm],[Compile in GPM mouse support for ttys.]), |
2651 | 777 [], []) |
3073 | 778 dnl |
779 XE_HELP_SUBSECTION([Image options]) | |
3003 | 780 XE_MERGED_ARG([xpm], |
3312 | 781 AS_HELP_STRING([--with-xpm],[Compile with support for XPM images. PRACTICALLY |
2651 | 782 REQUIRED. Although this library is nonstandard and |
783 a real hassle to build, many basic things (e.g. | |
784 toolbars) depend on it, and you will run into | |
785 many problems without it.]), | |
786 [], []) | |
3073 | 787 XE_MERGED_ARG([png], |
3312 | 788 AS_HELP_STRING([--with-png],[Compile with support for PNG images. Recommended |
3073 | 789 because the images on the About page are not viewable |
790 without it.]), | |
791 [], []) | |
792 XE_MERGED_ARG([jpeg], | |
3312 | 793 AS_HELP_STRING([--with-jpeg],[Compile with support for JPEG images. Useful if |
3073 | 794 you are using a mail, news reader, or web browser |
795 in XEmacs, so that JPEG images can be displayed.]), | |
796 [], []) | |
797 XE_MERGED_ARG([tiff], | |
3312 | 798 AS_HELP_STRING([--with-tiff],[Compile with support for TIFF images. Possibly |
3073 | 799 useful, for the same reason as JPEG images.]), |
800 [], []) | |
3003 | 801 XE_MERGED_ARG([xface], |
3312 | 802 AS_HELP_STRING([--with-xface],[Compile with support for X-Face mail headers. |
2651 | 803 Requires the compface package.]), |
804 [], []) | |
3003 | 805 XE_MERGED_ARG([gif], |
4708
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
806 AS_HELP_STRING([--with-gif],[Compile with support for GIF images.]), |
2651 | 807 [], []) |
3073 | 808 dnl |
809 XE_HELP_SUBSECTION([Sound options]) | |
810 XE_COMPLEX_ARG([sound], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
811 AS_HELP_STRING([--with-sound=TYPE],[Compile with sound support. |
3308 | 812 Valid types are `native', `alsa', `nas' and `esd'. |
3073 | 813 Prefix a type with 'no' to disable. |
814 The first type can be `none' or `all'. `none' means | |
3308 | 815 `nonative,noalsa,nonas,noesd'. `all' means |
816 `native,alsa,nas,esd'. Later options override earlier | |
817 ones for the same TYPE. The default is to autodetect | |
818 all sound support except for ESD which defaults to | |
819 off.]), | |
3073 | 820 [], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
821 [with_sound_nas=""], |
3073 | 822 [XE_COMPLEX_OPTION([native],[""]), |
3308 | 823 XE_COMPLEX_OPTION([alsa],[""]), |
3073 | 824 XE_COMPLEX_OPTION([nas],[""]), |
825 XE_COMPLEX_OPTION([esd],[no])]) | |
826 XE_MERGED_ARG([native-sound-lib], | |
3312 | 827 AS_HELP_STRING([--with-native-sound-lib],[Path to sound library (for systems with name conflicts).]), |
2651 | 828 [], []) |
3073 | 829 dnl |
830 XE_HELP_SUBSECTION([Internationalization options]) | |
3003 | 831 XE_MERGED_ARG([mule], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
832 AS_HELP_STRING([--with-mule],[Compile with Mule (Multi-Lingual Emacs) support, |
2651 | 833 needed to support non-Latin-1 (including Asian) |
834 languages.]), | |
835 [], []) | |
3073 | 836 XE_KEYWORD_ARG([xim], |
3312 | 837 AS_HELP_STRING([--with-xim==TYPE],[Enable XIM support. TYPE is `yes', `no', `xlib', or `motif']), |
3073 | 838 [],[],[yes,no,xlib,motif])dnl |
3003 | 839 XE_MERGED_ARG([canna], |
3312 | 840 AS_HELP_STRING([--with-canna],[Support the Canna Japanese input method. Requires Mule.]), |
2651 | 841 [], []) |
3003 | 842 XE_MERGED_ARG([wnn], |
3312 | 843 AS_HELP_STRING([--with-wnn],[Support the Wnn Asian language input |
2651 | 844 method. Requires Mule.]), |
845 [], []) | |
3003 | 846 XE_MERGED_ARG([wnn6], |
3312 | 847 AS_HELP_STRING([--with-wnn6],[Support the Wnn6 Asian language input |
2651 | 848 method (proprietary). Requires Mule.]), |
849 [], []) | |
3073 | 850 XE_MERGED_ARG([xfs], |
3312 | 851 AS_HELP_STRING([--with-xfs],[Enable XFontSet support for internationalized |
3094 | 852 menubar. Incompatible with `--with-xim=motif' and `--with-xft'. |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
853 `--with-menubars=lucid' (the default) is desirable.]), |
3073 | 854 [], []) |
855 dnl | |
856 XE_HELP_SUBSECTION([File-related options]) | |
857 XE_MERGED_ARG([default-eol-detection], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
858 AS_HELP_STRING([--with-default-eol-detection],[Turns on by default auto-detection of end-of-line type |
3073 | 859 when reading a file. Applies to those platforms where |
860 auto-detection is off by default (non-Mule Unix). Has | |
861 no effect otherwise.]), | |
862 [], []) | |
863 XE_MERGED_ARG([clash-detection], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
864 AS_HELP_STRING([--with-clash-detection],[Disable use of lock files to detect multiple edits |
3073 | 865 of the same file.]), |
2651 | 866 [], []) |
3073 | 867 XE_MERGED_ARG([zlib], |
3312 | 868 AS_HELP_STRING([--with-zlib],[Support inflate (de)compression internally.]), |
2651 | 869 [], []) |
3073 | 870 dnl |
871 XE_HELP_SUBSECTION([Database options]) | |
872 XE_COMPLEX_ARG([database], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
873 AS_HELP_STRING([--with-database=TYPE],[Compile with database support. Valid types are |
3073 | 874 `no' or a comma-separated list of one or more |
4412
2f000e022a8b
Fix misspelling of option 'gdbm'.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4401
diff
changeset
|
875 of `berkdb' and either `dbm' or `gdbm'.]), |
3073 | 876 [ |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
877 if test "$with_database_dbm" = "yes" -a "$with_database_gdbm" = "yes"; then |
4412
2f000e022a8b
Fix misspelling of option 'gdbm'.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4401
diff
changeset
|
878 USAGE_ERROR("Only one of \`dbm' and \`gdbm' may be specified |
3073 | 879 with the \`--with-database' option.") |
880 fi | |
881 ], | |
882 [], | |
883 [XE_COMPLEX_OPTION([berkdb],[""]), | |
884 XE_COMPLEX_OPTION([dbm],[""]), | |
885 XE_COMPLEX_OPTION([gdbm],[""])]) | |
3003 | 886 XE_MERGED_ARG([ldap], |
3312 | 887 AS_HELP_STRING([--with-ldap],[Support the LDAP protocol.]), |
2651 | 888 [], []) |
3003 | 889 XE_MERGED_ARG([postgresql], |
3312 | 890 AS_HELP_STRING([--with-postgresql],[Support the PostgreSQL RDBMS.]), |
2651 | 891 [], []) |
3073 | 892 dnl |
893 XE_HELP_SUBSECTION([Mail options]) | |
894 XE_KEYWORD_ARG([mail-locking], | |
3312 | 895 AS_HELP_STRING([--with-mail-locking=TYPE],[Specify the locking to be used by movemail to prevent |
3073 | 896 concurrent updates of mail spool files. Valid types |
897 are `lockf', `flock', `file', `locking', `mmdf' or `pop'.]), | |
898 [],[],[lockf,flock,file,locking,mmdf,pop])dnl | |
3003 | 899 XE_MERGED_ARG([pop], |
3312 | 900 AS_HELP_STRING([--with-pop],[Support POP for mail retrieval.]), |
2651 | 901 [], []) |
3003 | 902 XE_MERGED_ARG([kerberos], |
3312 | 903 AS_HELP_STRING([--with-kerberos],[Support Kerberos-authenticated POP.]), |
2651 | 904 [], []) |
3003 | 905 XE_MERGED_ARG([hesiod], |
3312 | 906 AS_HELP_STRING([--with-hesiod],[Support Hesiod to get the POP server host.]), |
2651 | 907 [], []) |
3073 | 908 dnl |
909 XE_HELP_SUBSECTION([Networking options]) | |
910 XE_MERGED_ARG([tooltalk], | |
3312 | 911 AS_HELP_STRING([--with-tooltalk],[Support the ToolTalk IPC protocol.]), |
2651 | 912 [], []) |
3073 | 913 XE_MERGED_ARG([socks], |
3312 | 914 AS_HELP_STRING([--with-socks],[Compile with support for SOCKS (an Internet proxy).]), |
3073 | 915 [], []) |
916 XE_MERGED_ARG([dnet], | |
3312 | 917 AS_HELP_STRING([--with-dnet],[Compile with support for DECnet.]), |
2651 | 918 [], []) |
3003 | 919 XE_MERGED_ARG([ipv6-cname], |
3312 | 920 AS_HELP_STRING([--with-ipv6-cname],[Try IPv6 information first when canonicalizing host names. This option has no effect unless system supports getaddrinfo(3) and getnameinfo(3).]), |
2651 | 921 [], [with_ipv6_cname="no"]) |
3073 | 922 dnl |
923 XE_HELP_SUBSECTION([Memory allocation options]) | |
924 XE_MERGED_ARG([rel-alloc], | |
3312 | 925 AS_HELP_STRING([--with-rel-alloc],[Enable the relocating allocator.]), |
3073 | 926 [], [with_rel_alloc='default']) |
927 XE_MERGED_ARG([dlmalloc], | |
3312 | 928 AS_HELP_STRING([--with-dlmalloc],[Use Doug Lea's malloc implementation.]), |
3073 | 929 [], [with_dlmalloc='default']) |
930 XE_MERGED_ARG([system-malloc], | |
3312 | 931 AS_HELP_STRING([--with-system-malloc],[Use the system malloc, not the one distributed with XEmacs.]), |
3073 | 932 [], [with_system_malloc='default']) |
933 XE_MERGED_ARG([debug-malloc], | |
3312 | 934 AS_HELP_STRING([--with-debug-malloc],[Use a debugging malloc.]), |
2651 | 935 [], []) |
3003 | 936 XE_MERGED_ARG([pdump], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
937 AS_HELP_STRING([--with-pdump],[Enable portable LISP preloader.]), |
2651 | 938 [], []) |
3003 | 939 XE_MERGED_ARG([dump-in-exec], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
940 AS_HELP_STRING([--with-dump-in-exec],[Enable dumping into executable (enabled by default |
2720 | 941 for `pdump', not enabled by default in combination |
3263 | 942 with `newgc').]), |
2720 | 943 [], []) |
3073 | 944 XE_MERGED_ARG([kkcc], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
945 AS_HELP_STRING([--with-kkcc],[Enable experimental new GC mark algorithms.]), |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
946 [], [with_kkcc=yes]) |
3263 | 947 |
3092 | 948 XE_MERGED_ARG([newgc], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
949 AS_HELP_STRING([--with-newgc],[Enable new incremental garbage collector and new allocator.]), |
3092 | 950 [], []) |
951 XE_COMPLEX_ARG([vdb], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
952 AS_HELP_STRING([--with-vdb=TYPE],[Override auto-detection of |
3092 | 953 virtual-dirty-bit write-barrier implementation for the |
954 new garbage collector. TYPE must be one of "auto" (for | |
955 auto-detection), "posix", "win32", "mach", or "fake" | |
956 (uses the new garbage collector but disables | |
957 incremental collections). The default is to | |
958 use auto-detection.]), | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
959 [], [with_vdb="auto"],[auto,posix,win32,mach,fake,no]) |
3073 | 960 dnl |
961 XE_HELP_SUBSECTION([Emacs Lisp options]) | |
962 XE_MERGED_ARG([modules], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
963 AS_HELP_STRING([--with-modules],[Compile in experimental support for dynamically |
3073 | 964 loaded libraries (Dynamic Shared Objects).]), |
965 [], []) | |
966 XE_KEYWORD_ARG([bignum], | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
967 AS_HELP_STRING([--with-bignum=TYPE],[Compile in support for bignums, ratios, or bigfloats |
3073 | 968 using library support. TYPE must be one of "gmp" |
969 (for GNU MP), "mp" (for BSD MP), or "no" (disabled).]), | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
970 [], [with_bignum="no"],[no,gmp,mp]) |
3073 | 971 dnl |
972 XE_HELP_SUBSECTION([Platform Specific options]) | |
973 XE_MERGED_ARG([workshop], | |
3312 | 974 AS_HELP_STRING([--with-workshop],[Support the Sun WorkShop (formerly Sparcworks) |
3073 | 975 development environment.]), |
976 [], []) | |
977 XE_MERGED_ARG([sparcworks], | |
3312 | 978 AS_HELP_STRING([--with-sparcworks],[Alias for --with-workshop]), |
3073 | 979 [], []) |
980 dnl | |
981 XE_HELP_SUBSECTION([Debugging options]) | |
3003 | 982 XE_MERGED_ARG([debug], |
4944
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
983 AS_HELP_STRING([--with-debug],[Enable additional debugging information. No noticeable time cost (unlike |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
984 `--with-error-checking'). This turns adds `-g' to the compiler options so that |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
985 debug information is compiled into the XEmacs executable. It also turns on |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
986 assert checks in the source code (i.e. same as `--with-assertions'); enables |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
987 Lisp commands for determining detailed memory usage statistics (same as |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
988 `--with-memory-usage-stats'); adds various Lisp variables and functions |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
989 that allow one to display internal structures, show the internal workings |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
990 of certain subsystems, and exit to the debugger; causes Lisp errors during |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
991 building to exit to the debugger or dump core; and adds debugging-related |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
992 C functions meant to be called from a debugger.]), |
2651 | 993 [], []) |
4944
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
994 dnl If just --with-error-checking or --with-error-checking=yes is given, |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
995 dnl it should be the same as --with-error-checking=all. Currently it's |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
996 dnl the same as saying nothing at all. |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
997 if test "$with_error_checking" = "yes"; then |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
998 with_error_checking=all |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
999 fi |
3073 | 1000 XE_COMPLEX_ARG([error-checking], |
4944
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1001 AS_HELP_STRING([--with-error-checking[=CLASS|all|none]],[Compile with internal error-checking added. |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1002 Causes noticeable loss of speed. Valid classes are `byte_code', `display' |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1003 (redisplay), `extents', `gc' (garbage collection), `glyphs', `malloc' |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1004 (memory allocation), `structures' (C structures), `text' (text handling and |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1005 conversion), `types' (correct Lisp-object type for type-specific |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1006 operations). `all' or `none' can be given to set all or no classes, |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1007 respectively. Any of the classes can be prefixed with `no' to turn the |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1008 class off. A comma-separated list of classes can also be given. For |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1009 example, `all,nogc' turns on all but garbage-collection-related checking. |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1010 Omitting any argument or specifying just `yes' is the same as `all'.]), |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1011 [], [], |
6af9b2e79451
Fixes to configure so --with-error-checking=yes works
Ben Wing <ben@xemacs.org>
parents:
4939
diff
changeset
|
1012 dnl Keep TESTS sorted to help with syncing doc to reality. |
3959 | 1013 [XE_COMPLEX_OPTION([byte_code],[""]), |
1014 XE_COMPLEX_OPTION([display],[""]), | |
1015 XE_COMPLEX_OPTION([extents],[""]), | |
3073 | 1016 XE_COMPLEX_OPTION([gc],[""]), |
3959 | 1017 XE_COMPLEX_OPTION([glyphs],[""]), |
3073 | 1018 XE_COMPLEX_OPTION([malloc],[""]), |
3961 | 1019 XE_COMPLEX_OPTION([structures],[""]), |
3959 | 1020 XE_COMPLEX_OPTION([text],[""]), |
3961 | 1021 XE_COMPLEX_OPTION([types],[""])]) |
3003 | 1022 XE_MERGED_ARG([assertions], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1023 AS_HELP_STRING([--with-assertions],[Compile in runtime assertions.]), |
2651 | 1024 [], []) |
3003 | 1025 XE_MERGED_ARG([memory-usage-stats], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1026 AS_HELP_STRING([--with-memory-usage-stats],[Enable LISP memory usage API.]), |
2651 | 1027 [], []) |
3003 | 1028 XE_MERGED_ARG([quick-build], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1029 AS_HELP_STRING([--with-quick-build],[Speed up the build cycle by leaving out steps where |
2651 | 1030 XEmacs will still work (more or less) without them. |
1031 Potentially dangerous if you don't know what you're | |
5050
6f2158fa75ed
Fix quick-build, use asserts() in place of ABORT()
Ben Wing <ben@xemacs.org>
parents:
5016
diff
changeset
|
1032 doing. This (1) Doesn't garbage-collect after loading |
6f2158fa75ed
Fix quick-build, use asserts() in place of ABORT()
Ben Wing <ben@xemacs.org>
parents:
5016
diff
changeset
|
1033 each file during dumping, (2) Doesn't |
2651 | 1034 automatically rebuild the DOC file (remove it by hand |
1035 to get it rebuilt), (3) Removes config.h, lisp.h and | |
1036 associated files from the dependency lists, so changes | |
1037 to these files don't automatically cause all .c files | |
5050
6f2158fa75ed
Fix quick-build, use asserts() in place of ABORT()
Ben Wing <ben@xemacs.org>
parents:
5016
diff
changeset
|
1038 to be rebuilt, (4) Doesn't check for Lisp shadows.]), |
2651 | 1039 [], []) |
3073 | 1040 XE_MERGED_ARG([union-type], |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1041 AS_HELP_STRING([--with-union-type],[Use union definition of Lisp_Object type. Known to trigger bugs in some compilers.]), |
2651 | 1042 [], []) |
3073 | 1043 XE_MERGED_ARG([quantify], |
3312 | 1044 AS_HELP_STRING([--with-quantify],[Support performance debugging using Quantify.]), |
3073 | 1045 [], []) |
1046 XE_MERGED_ARG([purify], | |
3312 | 1047 AS_HELP_STRING([--with-purify],[Support memory debugging using Purify.]), |
3073 | 1048 [], []) |
4803
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
1049 XE_MERGED_ARG([valgrind], |
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
1050 AS_HELP_STRING([--with-valgrind],[Support memory debugging using Valgrind.]), |
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
1051 [], []) |
2651 | 1052 dnl ------------------------------------------------------------------------- |
1053 dnl Final command line argument checks. | |
1054 | |
1055 dnl --with-quantify or --with-purify imply --with-system-malloc | |
1056 if test "$with_purify" = "yes" -o "$with_quantify" = "yes"; then | |
1057 test "$with_system_malloc" = "default" && with_system_malloc=yes | |
1058 fi | |
1059 | |
1060 dnl CDE requires tooltalk | |
1061 XE_CHECK_FEATURE_DEPENDENCY(cde, tooltalk) | |
1062 | |
3094 | 1063 dnl Xft sanity checking |
1064 dnl #### Maybe we should XE_DIE here instead? Or fix the UI so that | |
1065 dnl emacs is always implicit? (I worry that --without-xft would be weird.) | |
1066 if test \( "$with_xft_menubars" = "yes" -o "$with_xft_tabs" = "yes" \ | |
1067 -o "$with_xft_gauges" = "yes" \) -a "$with_xft_emacs" = "no"; then | |
1068 AC_MSG_WARN([Forcing --with-xft=emacs because Xft is enabled]) | |
1069 with_xft_emacs=yes | |
1070 fi | |
1071 | |
1072 dnl XFS and Xft in menubars conflict | |
1073 if test "$with_xfs" = "yes" -a "$with_xft_menubars" = "yes"; then | |
1074 USAGE_ERROR("XFS and Xft in the menubars are incompatible!") | |
1075 fi | |
1076 | |
2651 | 1077 dnl ------------------------------------------------------------------------- |
1078 dnl Local paths | |
1079 test "x$prefix" = xNONE && prefix=$ac_default_prefix | |
1080 # Let make expand exec_prefix. | |
1081 if test "x$exec_prefix" = xNONE | |
1082 then | |
1083 exec_prefix='${prefix}' | |
1084 else | |
1085 AC_DEFINE(EXEC_PREFIX_USER_DEFINED) | |
1086 fi | |
3729 | 1087 |
1088 define([XE_EXPAND_VARIABLE], | |
1089 [$2=[$]$1 | |
1090 while true; do | |
1091 case "[$]$2" in | |
1092 *\[$]* ) eval "$2=[$]$2" ;; | |
1093 *) break ;; | |
1094 esac | |
1095 done])dnl XE_EXPAND_VARIABLE | |
1096 | |
1097 XE_EXPAND_VARIABLE(prefix,prefix_expanded) | |
1098 XE_EXPAND_VARIABLE(datadir,datadir_expanded) | |
4455
49f8ed034500
Fix path-configuration glitches:
Mike Sperber <sperber@deinprogramm.de>
parents:
4450
diff
changeset
|
1099 XE_EXPAND_VARIABLE(exec_prefix,exec_prefix_expanded) |
49f8ed034500
Fix path-configuration glitches:
Mike Sperber <sperber@deinprogramm.de>
parents:
4450
diff
changeset
|
1100 XE_EXPAND_VARIABLE(libdir,libdir_expanded) |
49f8ed034500
Fix path-configuration glitches:
Mike Sperber <sperber@deinprogramm.de>
parents:
4450
diff
changeset
|
1101 XE_EXPAND_VARIABLE(infodir,infodir_expanded) |
3729 | 1102 |
4660
32be564c53dd
More accurate tests for explicitly-set paths.
Mike Sperber <sperber@deinprogramm.de>
parents:
4656
diff
changeset
|
1103 if test "x$datadir" != "x\${datarootdir}" |
2651 | 1104 then |
1105 AC_DEFINE(INFODIR_USER_DEFINED) | |
1106 AC_DEFINE(LISPDIR_USER_DEFINED) | |
1107 AC_DEFINE(ETCDIR_USER_DEFINED) | |
5149
b72f27a08ed5
Reflect --with-datadir setting in late-package directories.
Mike Sperber <sperber@deinprogramm.de>
parents:
5050
diff
changeset
|
1108 AC_DEFINE(LATE_PACKAGE_DIRECTORIES_USER_DEFINED) |
4092 | 1109 fi |
1110 | |
4660
32be564c53dd
More accurate tests for explicitly-set paths.
Mike Sperber <sperber@deinprogramm.de>
parents:
4656
diff
changeset
|
1111 if test "x$libdir" != "x\${exec_prefix}/lib" |
2651 | 1112 then |
1113 AC_DEFINE(MODULEDIR_USER_DEFINED) | |
1114 AC_DEFINE(ARCHLIBDIR_USER_DEFINED) | |
1115 AC_DEFINE(DOCDIR_USER_DEFINED) | |
1116 fi | |
3729 | 1117 |
4660
32be564c53dd
More accurate tests for explicitly-set paths.
Mike Sperber <sperber@deinprogramm.de>
parents:
4656
diff
changeset
|
1118 if test "x$infodir" != "x\${datarootdir}/info" |
2651 | 1119 then |
1120 AC_DEFINE(INFODIR_USER_DEFINED) | |
1121 else | |
4118 | 1122 infodir='${datarootdir}/${instvardir}/info' |
2651 | 1123 fi |
1124 | |
1125 with_sitelispdir='${datadir}/${inststaticdir}/site-lisp' | |
1126 inststaticdir='${PROGNAME}' | |
1127 instvardir='${PROGNAME}-${version}' | |
1128 sitemoduledir='${libdir}/${inststaticdir}/site-modules' | |
5149
b72f27a08ed5
Reflect --with-datadir setting in late-package directories.
Mike Sperber <sperber@deinprogramm.de>
parents:
5050
diff
changeset
|
1129 with_late_packages='${datadir}/${PROGNAME}' |
2651 | 1130 |
1131 AC_SUBST(inststaticdir) | |
1132 AC_SUBST(statedir,$with_statedir) | |
1133 | |
1134 dnl ------------------------------------------------------------------------- | |
1135 | |
1136 AC_PROG_LN_S | |
1137 | |
1138 dnl Make symlinks for etc, lisp, and info directories while the path | |
1139 dnl is still relative. We do not symlink lock because someone may | |
1140 dnl have stuck the source on a read-only partition. Instead we | |
1141 dnl create it as an actual directory later on if it does not already | |
1142 dnl exist. | |
1143 for dir in lisp etc man info tests; do | |
1144 if test ! -d "$dir" ; then | |
1145 echo Making symbolic link to "$srcdir/$dir" | |
1146 ${LN_S} "$srcdir/$dir" "$dir" | |
1147 fi | |
1148 done | |
1149 | |
1150 dnl Calculate canonical name for blddir (i.e. current directory). | |
1151 dnl PWD may already be the preferable absolute name for ".", | |
1152 dnl but we can't trust it - it is sometimes inaccurate. | |
1153 absolute_pwd="`pwd`"; | |
1154 if test -n "$PWD" -a "`cd $PWD && pwd`" = "$absolute_pwd" | |
1155 then blddir="$PWD" | |
1156 else blddir="$absolute_pwd"; CANONICALIZE_PATH(blddir) | |
1157 fi | |
1158 AC_SUBST(blddir) | |
1159 | |
1160 dnl Make srcdir absolute, if not already. It is important to | |
1161 dnl avoid running the path through pwd unnecessary, since pwd can | |
1162 dnl give you automounter prefixes, which can go away. | |
1163 case "$srcdir" in | |
1164 /* ) ;; | |
1165 . ) srcdir="$blddir" ;; | |
1166 * ) srcdir="`cd $srcdir && pwd`"; CANONICALIZE_PATH(srcdir) ;; | |
1167 esac | |
1168 | |
1169 dnl Check if the source directory already has a configured system in it. | |
1170 if test `pwd` != `sh -c cd $srcdir && pwd` \ | |
1171 && test -f "$srcdir/src/config.h"; then | |
1172 (echo "$progname: WARNING: The directory tree \`$srcdir' is being used" | |
1173 echo " as a build directory right now; it has been configured in its own" | |
1174 echo " right. To configure in another directory as well, you MUST" | |
1175 echo " use GNU make. If you do not have GNU make, then you must" | |
1176 echo " now do \`make distclean' in $srcdir," | |
1177 echo " and then run $progname again.") >&2 | |
1178 extrasub='/^VPATH[[ ]]*=/c\ | |
1179 vpath %.c $(srcdir)\ | |
1180 vpath %.h $(srcdir)\ | |
1181 vpath %.y $(srcdir)\ | |
1182 vpath %.l $(srcdir)\ | |
1183 vpath %.s $(srcdir)\ | |
1184 vpath %.in $(srcdir)' | |
1185 fi | |
1186 | |
2741 | 1187 dnl ------------------------------------------------------------------------- |
1188 AC_CONFIG_AUX_DIR_DEFAULT | |
1189 AC_CANONICAL_BUILD | |
1190 dnl ------------------------------------------------------------------------- | |
1191 | |
2651 | 1192 dnl ---------------------------------------- |
1193 dnl Find out which version of XEmacs this is | |
1194 dnl ---------------------------------------- | |
4419
eb82fbb675ea
Use Mercurial changeset hash to identify build version.
Mike Sperber <sperber@deinprogramm.de>
parents:
4412
diff
changeset
|
1195 dnl This should be the same code as in Makefile.in.in |
eb82fbb675ea
Use Mercurial changeset hash to identify build version.
Mike Sperber <sperber@deinprogramm.de>
parents:
4412
diff
changeset
|
1196 cp "$srcdir/version.sh.in" "$srcdir/version.sh" |
eb82fbb675ea
Use Mercurial changeset hash to identify build version.
Mike Sperber <sperber@deinprogramm.de>
parents:
4412
diff
changeset
|
1197 if test -d "$srcdir/.hg"; then |
eb82fbb675ea
Use Mercurial changeset hash to identify build version.
Mike Sperber <sperber@deinprogramm.de>
parents:
4412
diff
changeset
|
1198 (cd "$srcdir"; hg identify | cut -d " " -f 1 >> version.sh) |
eb82fbb675ea
Use Mercurial changeset hash to identify build version.
Mike Sperber <sperber@deinprogramm.de>
parents:
4412
diff
changeset
|
1199 fi |
2651 | 1200 . "$srcdir/version.sh" || exit 1; |
1201 dnl Must do the following first to determine verbosity for AC_DEFINE | |
1202 if test -n "$emacs_is_beta"; then beta=yes; else beta=no; fi | |
1203 : "${verbose=$beta}" | |
1204 version="${emacs_major_version}.${emacs_minor_version}" | |
1205 AC_DEFINE_UNQUOTED(EMACS_MAJOR_VERSION, $emacs_major_version) | |
1206 AC_DEFINE_UNQUOTED(EMACS_MINOR_VERSION, $emacs_minor_version) | |
1207 if test -n "$emacs_beta_version" ; then | |
1208 if test "$beta" = "yes"; then | |
1209 version="${version}-b${emacs_beta_version}" | |
1210 AC_DEFINE_UNQUOTED(EMACS_BETA_VERSION, $emacs_beta_version) | |
1211 else | |
1212 version="${version}.${emacs_beta_version}" | |
1213 AC_DEFINE_UNQUOTED(EMACS_PATCH_LEVEL, $emacs_beta_version) | |
1214 fi | |
1215 fi | |
1216 AC_DEFINE_UNQUOTED(XEMACS_CODENAME, "$xemacs_codename") | |
3972 | 1217 dnl for etags |
1218 verbose_version=$version | |
2651 | 1219 if test "$xemacs_extra_name" != ""; then |
1220 AC_DEFINE_UNQUOTED(XEMACS_EXTRA_NAME, "$xemacs_extra_name") | |
3972 | 1221 verbose_version="$verbose_version $xemacs_extra_name" |
2651 | 1222 fi |
1223 if test "$xemacs_release_date" != ""; then | |
1224 AC_DEFINE_UNQUOTED(XEMACS_RELEASE_DATE, "$xemacs_release_date") | |
1225 fi | |
1226 AC_DEFINE_UNQUOTED(EMACS_VERSION, "$version") | |
1227 | |
5228
5efbd1253905
Remove all support for InfoDock.
Aidan Kehoe <kehoea@parhasard.net>
parents:
5149
diff
changeset
|
1228 PROGNAME=xemacs |
5efbd1253905
Remove all support for InfoDock.
Aidan Kehoe <kehoea@parhasard.net>
parents:
5149
diff
changeset
|
1229 SHEBANG_PROGNAME=xemacs-script |
2651 | 1230 |
4449
13ce402e1736
Call AC_SUBST on SHEBANG_PATHNAME, for #! support.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4448
diff
changeset
|
1231 AC_SUBST(SHEBANG_PROGNAME) |
2651 | 1232 |
1233 AC_DEFINE_UNQUOTED(EMACS_PROGNAME, "$PROGNAME") | |
1234 | |
4448
fd8a9a4d81d9
Support #!, to allow XEmacs to be called as a script interpreter.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4401
diff
changeset
|
1235 AC_DEFINE_UNQUOTED(SHEBANG_PROGNAME, "${PROGNAME}-script") |
fd8a9a4d81d9
Support #!, to allow XEmacs to be called as a script interpreter.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4401
diff
changeset
|
1236 |
2651 | 1237 dnl ---------------------------------- |
1238 dnl Error checking and debugging flags | |
1239 dnl ---------------------------------- | |
1240 dnl Error checking default to "yes" in beta versions, to "no" in releases. | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1241 dnl Same goes for --with-debug and --extra-verbosity. |
2651 | 1242 if test -n "$emacs_is_beta"; then beta=yes; else beta=no; fi |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1243 test "${with_error_checking_extents:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_EXTENTS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1244 test "${with_error_checking_types:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_TYPES) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1245 test "${with_error_checking_text:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_TEXT) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1246 test "${with_error_checking_gc:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_GC) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1247 test "${with_error_checking_malloc:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_MALLOC) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1248 test "${with_error_checking_byte_code:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_BYTE_CODE) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1249 test "${with_error_checking_glyphs:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_GLYPHS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1250 test "${with_error_checking_display:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_DISPLAY) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1251 test "${with_error_checking_structures:=$beta}" = yes && AC_DEFINE(ERROR_CHECK_STRUCTURES) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1252 dnl with_debug=yes must be set when error checking is present. This should be |
2651 | 1253 dnl fixed up. |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1254 dnl with_debug implies other options |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1255 if test "${with_debug:=$beta}" = "yes"; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1256 with_assertions=yes |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1257 with_memory_usage_stats=yes |
2651 | 1258 AC_DEFINE(DEBUG_XEMACS) |
1259 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1260 test "$with_assertions" = "yes" && AC_DEFINE(USE_ASSERTIONS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1261 test "$with_memory_usage_stats" = "yes" && AC_DEFINE(MEMORY_USAGE_STATS) |
2651 | 1262 |
1263 dnl ------------------------------ | |
1264 dnl Determine the s&m files to use | |
1265 dnl ------------------------------ | |
1266 dnl Given the configuration name, set machfile and opsysfile to the | |
1267 dnl names of the m/*.h and s/*.h files we should use. | |
1268 | |
1269 dnl Canonicalize the configuration name. | |
1270 XE_STRIP_4TH_COMPONENT(ac_cv_build_alias) | |
1271 XE_STRIP_4TH_COMPONENT(ac_cv_build) | |
1272 AC_SUBST(configuration, $ac_cv_build) | |
1273 | |
1274 dnl If you add support for a new configuration, add code to this | |
1275 dnl switch statement to recognize your configuration name and select | |
1276 dnl the appropriate operating system and machine description files. | |
1277 | |
1278 dnl You would hope that you could choose an m/*.h file pretty much | |
1279 dnl based on the machine portion of the configuration name, and an s- | |
1280 dnl file based on the operating system portion. However, it turns out | |
1281 dnl that each m/*.h file is pretty manufacturer-specific - for | |
1282 dnl example, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are | |
1283 dnl all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS | |
1284 dnl machines. So we basically have to have a special case for each | |
1285 dnl configuration name. | |
1286 | |
1287 dnl As far as handling version numbers on operating systems is | |
1288 dnl concerned, make sure things will fail in a fixable way. If | |
1289 dnl /etc/MACHINES says nothing about version numbers, be | |
1290 dnl prepared to handle anything reasonably. If version numbers | |
1291 dnl matter, be sure /etc/MACHINES says something about it. | |
1292 | |
1293 dnl Eric Raymond says we should accept strings like "sysvr4" to mean | |
1294 dnl "System V Release 4"; he writes, "The old convention encouraged" | |
1295 dnl "confusion between `system' and `release' levels'." | |
1296 | |
1297 machine='' opsys='' | |
1298 | |
1299 dnl Straightforward machine determination | |
1300 case "$ac_cv_build" in | |
1301 sparc-*-* ) machine=sparc ;; | |
1302 alpha*-*-* ) machine=alpha ;; | |
1303 mips*-linux ) machine=mips ;; | |
1304 rs6000-ibm-aix* ) machine=ibmrs6000 ;; | |
1305 powerpc-ibm-aix* ) machine=ibmrs6000 ;; | |
1306 powerpc*-* ) machine=powerpc ;; | |
1307 hppa-*-* ) machine=hp800 ;; | |
1308 arm* ) machine=arm ;; | |
1309 esac | |
1310 | |
1311 dnl Straightforward OS determination | |
1312 case "$ac_cv_build" in | |
1313 *-*-netbsd* ) opsys=netbsd ;; | |
1314 *-*-openbsd* ) opsys=openbsd ;; | |
1315 | |
1316 dnl AIX | |
1317 *-*-aix[[4-9]]* ) opsys=aix4-2 ;; | |
1318 | |
1319 dnl Other generic OSes | |
1320 *-gnu* ) opsys=gnu ;; | |
1321 *-*-bsd4.3 ) opsys=bsd4-3 ;; | |
1322 *-*-aos* ) opsys=bsd4-3 ;; | |
1323 *-*-sysv4.1* | *-*-sysvr4.1* )opsys=usg5-4 NON_GNU_CPP=/usr/lib/cpp ;; | |
1324 *-*-sysv4.[[2-9]]* | *-sysvr4.[[2-9]]* ) | |
1325 if test -z "$NON_GNU_CPP" ; then | |
1326 for prog in "/usr/ccs/lib/cpp" "/lib/cpp"; do | |
1327 if test -f "$prog"; then NON_GNU_CPP="$prog"; break; fi | |
1328 done | |
1329 fi | |
1330 opsys=usg5-4-2 ;; | |
1331 *-sysv4* | *-sysvr4* ) opsys=usg5-4 ;; | |
1332 *-*-mach_bsd4.3* ) opsys=mach-bsd4-3 ;; | |
1333 esac | |
1334 | |
1335 case "$ac_cv_build" in | |
1336 | |
1337 dnl NetBSD ports | |
1338 *-*-netbsd* ) | |
2663 | 1339 case "${ac_cv_build}" in |
2651 | 1340 i[[3-9]]86-*-netbsd*) machine=intel386 ;; |
1341 esac | |
1342 ;; | |
1343 | |
1344 dnl OpenBSD ports | |
1345 *-*-openbsd* ) | |
1346 case "${ac_cv_build}" in | |
1347 i386-*-openbsd*) machine=intel386 ;; | |
1348 esac | |
1349 ;; | |
1350 | |
1351 dnl Darwin, a.k.a. MacOS X (based on Mach and Freebsd) | |
1352 *-*-darwin*) | |
1353 opsys=darwin | |
4738
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
1354 dnl Use this to set BSD correctly. |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
1355 AC_DEFINE(USE_PARAM_H) |
2651 | 1356 ;; |
1357 | |
1358 dnl HP-UX | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
1359 *-hp-hpux* ) machine=hp800 opsys=hpux11 |
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
1360 NON_GNU_CC="cc -Ae" NON_GNU_CPP="cc -Ae -E" |
2651 | 1361 |
1362 case "$ac_cv_build" in *-hp-hpux*shr* ) opsys="${opsys}-shr" ;; esac | |
1363 ;; | |
1364 | |
1365 dnl Workstations sold by MIPS | |
1366 dnl This is not necessarily all workstations using the MIPS processor - | |
1367 dnl Irises are produced by SGI, and DECstations by DEC. | |
1368 mips-mips-bsd* ) machine=mips opsys=bsd4-3 ;; | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
1369 mips-mips-* ) machine=mips opsys=usg5-4-2 ;; |
2651 | 1370 |
1371 dnl Silicon Graphics machines | |
1372 dnl Iris 4D | |
1373 mips-sgi-irix6* ) opsys=irix6-0 ;; | |
1374 | |
1375 dnl Suns | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
1376 *-*-solaris* | *-sun-mach* | *-sun-bsd* ) |
2651 | 1377 dnl Hardware type |
1378 case "$ac_cv_build" in | |
1379 i*86-*-* ) machine=intel386 ;; | |
1380 esac | |
1381 | |
1382 dnl Make $canonical even more so. | |
1383 case "$ac_cv_build" in *-sunos5*) | |
1384 ac_cv_build=`echo $ac_cv_build | sed -e s/sunos5/solaris2/`;; | |
1385 esac | |
1386 | |
1387 case "$ac_cv_build" in | |
1388 *-solaris2* ) | |
1389 #test -f /usr/ccs/lib/cpp && NON_GNU_CPP=/usr/ccs/lib/cpp | |
1390 RANLIB=':' ;; | |
1391 esac | |
1392 | |
1393 case "$ac_cv_build" in | |
1394 *-solaris* ) | |
1395 opsys=sol2 | |
1396 os_release_major=`uname -r | sed -e 's/^\([[0-9]]\{1,\}\)\.\([[0-9]]\{1,\}\).*/\1/'` | |
1397 os_release_minor=`uname -r | sed -e 's/^\([[0-9]]\{1,\}\)\.\([[0-9]]\{1,\}\).*/\2/'` | |
1398 case "$os_release_minor" in [[0-9]]) | |
1399 os_release_minor="0${os_release_minor}";; | |
1400 esac | |
1401 os_release="${os_release_major}${os_release_minor}" | |
1402 AC_DEFINE_UNQUOTED(OS_RELEASE, $os_release) ;; | |
1403 | |
1404 *-mach* ) opsys=mach-bsd4-3 ;; | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
1405 * ) opsys=bsd4-3 ;; |
2651 | 1406 esac |
1407 | |
1408 dnl Watch out for a compiler guaranteed not to work. | |
1409 test "$opsys $CC" = "sol2 /usr/ucb/cc" && CC="" | |
1410 ;; | |
1411 | |
1412 dnl Intel 386 machines where we do not care about the manufacturer | |
1413 i[[3-9]]86-*-* ) | |
1414 machine=intel386 | |
1415 case "$ac_cv_build" in | |
1416 *-mach* ) opsys=mach-bsd4-3 ;; | |
1417 *-sysv5* ) opsys=sco7 ;; | |
1418 *-freebsd* ) opsys=freebsd ;; | |
1419 *-pc-cygwin* ) opsys=cygwin32 ;; | |
1420 *-pc-mingw* ) opsys=mingw32 ; | |
1421 test -z "$with_tty" && with_tty="no";; | |
1422 dnl Otherwise, we fall through to the generic opsys code at the bottom. | |
1423 esac | |
1424 ;; | |
1425 | |
1426 esac | |
1427 | |
1428 dnl Initialize machine from $canonical if not in our database above. | |
1429 test -z "$machine" && machine=`echo $ac_cv_build | sed 's/-.*$//'` | |
1430 | |
1431 dnl Initialize opsys from `uname -s` if not in our database above. | |
1432 test -z "$opsys" && opsys=`uname -s | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` | |
1433 | |
1434 dnl Use configure-time autodetection if s&m not available | |
1435 if test -r "${srcdir}/src/m/${machine}.h"; then | |
1436 machfile="m/${machine}.h" | |
1437 AC_DEFINE_UNQUOTED(config_machfile, "$machfile") | |
1438 else | |
1439 echo "XEmacs has no builtin knowledge of \`$machine' machines." | |
1440 echo "Using configure-time autodetection only." | |
1441 fi | |
1442 | |
1443 if test -r "${srcdir}/src/s/${opsys}.h"; then | |
1444 opsysfile="s/${opsys}.h" | |
1445 AC_DEFINE_UNQUOTED(config_opsysfile, "$opsysfile") | |
1446 else | |
1447 echo "XEmacs has no builtin knowledge of \`$opsys' operating systems." | |
1448 echo "Using configure-time autodetection only." | |
1449 fi | |
1450 | |
1451 | |
1452 dnl -------------------------------------------------------------- | |
1453 dnl $opsys detection complete; defaults depending on $opsys follow | |
1454 dnl -------------------------------------------------------------- | |
1455 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1456 if test -z "$with_pdump"; then |
2651 | 1457 case "$opsys" in |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1458 linux* ) with_pdump=yes ;; dnl glibc 2.3.1 seems to hose unexec |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1459 darwin ) with_pdump=yes ;; dnl No "native" working dumper available |
4848
bde90bc762f2
Remove support for non-pdump on Cygwin.
Jerry James <james@xemacs.org>
parents:
4842
diff
changeset
|
1460 cygwin* ) with_pdump=yes ;; dnl No "native" dumper available |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1461 * ) with_pdump=no ;; |
2651 | 1462 esac |
1463 fi | |
1464 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1465 if test "$with_newgc" = "yes"; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1466 if test "$with_vdb" = "auto"; then |
3092 | 1467 case "$opsys" in |
3520 | 1468 darwin ) case "$machine" in |
4424
42711a251efd
Look for all x86 machines to determine which write barrier to use on MacOSX.
Marcus Crestani <crestani@informatik.uni-tuebingen.de>
parents:
4419
diff
changeset
|
1469 i[[3-9]]86 ) check_vdb_posix=yes ;; |
3520 | 1470 * ) AC_DEFINE(VDB_MACH) have_vdb_mach=yes ;; |
1471 esac ;; | |
3092 | 1472 cygwin* ) AC_DEFINE(VDB_WIN32) have_vdb_win32=yes ;; |
1473 linux* ) check_vdb_posix=yes ;; | |
1474 freebsd ) check_vdb_posix=yes ;; | |
1475 dnl if not sure, try posix first, maybe we are lucky | |
1476 * ) check_vdb_posix=yes ;; | |
1477 esac | |
1478 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1479 case "$with_vdb" in |
3092 | 1480 mach ) AC_DEFINE(VDB_MACH) have_vdb_mach=yes ;; |
1481 win32 ) AC_DEFINE(VDB_WIN32) have_vdb_win32=yes ;; | |
1482 posix ) check_vdb_posix=yes ;; | |
1483 fake ) have_vdb_fake=yes ;; | |
1484 no ) have_vdb_fake=yes ;; | |
1485 esac | |
1486 fi | |
1487 fi | |
1488 | |
2651 | 1489 if test -z "$with_dynamic"; then |
1490 case "$opsys" in | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
1491 hpux* ) with_dynamic=no ;; |
2651 | 1492 *) with_dynamic=yes ;; |
1493 esac | |
1494 fi | |
1495 if test "$with_dynamic" = "yes"; then | |
1496 case "$opsys" in | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
1497 hpux* ) opsys="${opsys}-shr" ;; |
2651 | 1498 darwin ) AC_DEFINE(DLSYM_NEEDS_UNDERSCORE) ;; |
1499 esac | |
1500 else dnl "$with_dynamic" = "no" | |
1501 case "$opsys" in | |
1502 sol2 ) | |
1503 echo "Static linking is not supported on Solaris 2." | |
1504 echo "Rerun configure without specifying --without-dynamic." | |
1505 exit 1 ;; | |
1506 linux ) ld_call_shared="-Bstatic" ;; | |
1507 esac | |
1508 fi | |
1509 | |
1510 dnl Tools configuration | |
1511 case "$opsys" in | |
1512 aix* ) NON_GNU_CC=xlc ;; dnl Use xlc by default on AIX | |
1513 darwin ) RANLIB="ranlib -c" ;; dnl Avoid link error in lwlib-config.c | |
1514 esac | |
1515 | |
1516 stack_trace_eye_catcher=`echo ${PROGNAME}_${version}_${ac_cv_build} | sed 'y/.-/__/'` | |
1517 AC_DEFINE_UNQUOTED(STACK_TRACE_EYE_CATCHER, $stack_trace_eye_catcher) | |
1518 | |
1519 dnl -------------------------------------------------- | |
1520 dnl Determine the compiler, set up for feature testing | |
1521 dnl -------------------------------------------------- | |
1522 | |
1523 dnl Sun Development environment support | |
1524 test "$with_sparcworks" = "yes" && with_workshop=yes # compatibility alias | |
1525 XE_CHECK_FEATURE_DEPENDENCY(workshop, tooltalk) | |
1526 if test "$with_workshop" = "yes"; then | |
1527 AC_DEFINE(SUNPRO) | |
1528 fi | |
1529 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1530 if test "$with_clash_detection" != "no"; then |
2651 | 1531 AC_DEFINE(CLASH_DETECTION) |
1532 fi | |
1533 | |
1534 dnl Choose a compiler from (in order) | |
2680 | 1535 dnl --with-compiler, env var CC, with_gcc=no && ${NON_GNU_CC:-cc}, AC_PROG_CC |
2651 | 1536 test -n "$with_compiler" && CC="$with_compiler" |
1537 if test "$with_gcc" = "no"; then dnl Try to find a non-gcc compiler | |
1538 case "$CC" in "" | *gcc* ) CC="${NON_GNU_CC-cc}" ;; esac | |
1539 fi | |
1540 | |
1541 dnl If we don't set CFLAGS here, AC_PROG_CC will set it. | |
1542 dnl But we know better what's good for us, so we do our own | |
1543 dnl computation of real CFLAGS later. | |
1544 dnl --with_cflags overrides environment variable CFLAGS | |
1545 test "${with_cflags-unset}" != unset && CFLAGS="$with_cflags" | |
1546 if test "${CFLAGS-unset}" != unset | |
1547 then cflags_specified=yes; | |
1548 else cflags_specified=no; | |
1549 fi | |
1550 | |
1551 if test "${with_cflags_warning-unset}" != unset | |
1552 then cflags_warning_specified=yes; | |
1553 else cflags_warning_specified=no; | |
1554 fi | |
1555 | |
2667 | 1556 if test "${with_cflags_optimization-unset}" != unset |
2651 | 1557 then cflags_optimization_specified=yes; |
1558 else cflags_optimization_specified=no; | |
1559 fi | |
1560 | |
2667 | 1561 if test "${with_cflags_debugging-unset}" != unset |
2651 | 1562 then cflags_debugging_specified=yes; |
1563 else cflags_debugging_specified=no; | |
1564 fi | |
1565 | |
1566 xe_save_CFLAGS="$CFLAGS" | |
1567 | |
1568 AC_AIX dnl Defines _ALL_SOURCE on AIX. | |
1569 | |
1570 AC_PROG_CC dnl Autoconf has its own magic for compiler autodetection | |
1571 | |
1572 dnl Retry using random guesswork if AC_PROG_CC got it wrong... | |
1573 if test "$with_gcc" = "no" -a "$GCC" = "yes"; then | |
1574 CC=${NON_GNU_CC-cc} | |
1575 AC_PROG_CC | |
1576 elif test "$with_gcc" = "yes" -a "$GCC" != "yes" ; then | |
1577 CC=gcc | |
1578 AC_PROG_CC | |
1579 fi | |
1580 CFLAGS="$xe_save_CFLAGS" | |
1581 | |
1582 dnl Determine GCC version. | |
1583 if test "$GCC" = "yes"; then | |
1584 AC_RUN_IFELSE([AC_LANG_SOURCE([int main () { | |
3494 | 1585 return __GNUC__; |
1586 }])], [:], [__GCC="$?"]) | |
1587 AC_RUN_IFELSE([AC_LANG_SOURCE([int main () { | |
1588 return __GNUC_MINOR__; | |
1589 }])], [:], [__GCC_MINOR="$?"]) | |
1590 __GCC_VERSION=$__GCC"."$__GCC_MINOR | |
1591 echo "You appear to be using GCC version" $__GCC_VERSION | |
2651 | 1592 fi |
1593 | |
1594 dnl Support for using a different compiler for xemacs itself. | |
1595 dnl Useful for building XEmacs with a C++ compiler. | |
1596 dnl For example, `configure --compiler=gcc --xemacs-compiler=g++ | |
1597 | |
1598 dnl The compiler used to build xemacs, as opposed to the compiler | |
1599 dnl used by configure and lib-src, is determined from the following | |
1600 dnl sources, in order of priority: | |
2680 | 1601 dnl o --with-xemacs-compiler configure flag |
2651 | 1602 dnl o XEMACS_CC environment variable |
1603 dnl o same as the regular compiler, (determined previously) | |
1604 | |
1605 dnl We don't do AC_PROG_CC for XEMACS_CC; if we can't trust these people.... | |
1606 test -n "$with_xemacs_compiler" && XEMACS_CC="$with_xemacs_compiler" | |
1607 : ${XEMACS_CC:="$CC"} | |
1608 | |
4932 | 1609 dnl Are we using g++? |
1610 | |
1611 AC_MSG_CHECKING(whether we are using g++) | |
1612 | |
1613 dnl Is it named g++*? | |
1614 XEMACS_CC_GPP=no | |
1615 case "$XEMACS_CC" in | |
1616 *g++* ) XEMACS_CC_GPP=yes ;; | |
1617 esac | |
1618 | |
1619 dnl If it's known to be in the GCC family, does it claim to be g++? We don't | |
1620 dnl run this test unless we know it's GCC-like, because not all compilers | |
1621 dnl accept --version. | |
1622 dnl | |
1623 dnl It's not clear we need both tests, but it doesn't hurt. g++ might not | |
1624 dnl have always output "g++" as the first thing in its version string, and | |
1625 dnl might not always in the future. | |
1626 if test "$XEMACS_CC_GPP" = "no" -a "$GCC" = "yes"; then | |
1627 case "`$XEMACS_CC --version`" in | |
1628 g++* ) XEMACS_CC_GPP=yes ;; | |
1629 esac | |
1630 fi | |
1631 | |
1632 AC_MSG_RESULT($XEMACS_CC_GPP) | |
1633 | |
2651 | 1634 dnl Figure out what C preprocessor to use. |
1635 | |
1636 dnl On Sun systems, people sometimes set up the variable CPP | |
1637 dnl with a value that is a directory, not an executable at all. | |
1638 dnl Detect that case, and ignore that value. | |
1639 test -n "$CPP" -a -d "$CPP" && CPP= | |
1640 | |
1641 test -n "$NON_GNU_CPP" -a "$GCC" != "yes" -a -z "$CPP" && CPP="$NON_GNU_CPP" | |
1642 | |
1643 AC_PROG_CPP | |
1644 | |
1645 dnl -------------------------------------------------------------------- | |
1646 dnl Compiler feature macros | |
1647 dnl -------------------------------------------------------------------- | |
1648 | |
1649 dnl We want feature macros defined here *and* in config.h.in, so that | |
1650 dnl the compilation environment at configure time and compile time agree. | |
1651 | |
1652 AC_MSG_CHECKING(for GNU libc) | |
3312 | 1653 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <features.h>],[ |
2651 | 1654 #if ! (defined __GLIBC__ || defined __GNU_LIBRARY__) |
1655 #error Not a GNU libc system :-( | |
1656 ******* ======= ******** &&&&&&&& | |
1657 #endif | |
3312 | 1658 ])], have_glibc=yes, have_glibc=no) |
2651 | 1659 AC_MSG_RESULT($have_glibc) |
1660 dnl I'm tired of pop being broken with GLIBC -slb | |
1661 dnl Well. then why not fix fucking pop? | |
1662 test "$have_glibc" = "yes" && AC_DEFINE(_GNU_SOURCE) | |
1663 | |
1664 dnl We'd like to use vendor extensions, where available. | |
1665 dnl We'd like to use functions from the latest Unix98 standards. | |
1666 dnl See http://www.opengroup.org/onlinepubs/007908799/xsh/compilation.html | |
1667 case "$opsys" in | |
1668 sol2) | |
1669 AC_DEFINE(__EXTENSIONS__) | |
1670 dnl Solaris 2 before 2.5 had some bugs with feature test macro interaction. | |
1671 if test "$os_release" -ge 505; then | |
1672 AC_DEFINE(_XOPEN_SOURCE,500) | |
1673 AC_DEFINE(_XOPEN_SOURCE_EXTENDED) | |
1674 fi ;; | |
1675 linux) | |
1676 AC_DEFINE(_POSIX_C_SOURCE,199506L) | |
1677 dnl #### should this be 600? | |
1678 AC_DEFINE(_XOPEN_SOURCE,500) | |
1679 AC_DEFINE(_XOPEN_SOURCE_EXTENDED) | |
1680 ;; | |
1681 freebsd4*) | |
1682 AC_DEFINE(_POSIX_C_SOURCE,199506L) | |
1683 dnl #### Do we want these too? Apparently yes for _XOPEN_SOURCE=500. | |
1684 AC_DEFINE(_XOPEN_SOURCE,500) | |
1685 dnl AC_DEFINE(_XOPEN_SOURCE_EXTENDED) | |
1686 ;; | |
1687 esac | |
1688 | |
1689 dnl Identify compilers to enable compiler-specific hacks. | |
1690 dnl Add support for other compilers HERE! | |
1691 dnl GCC is already identified elsewhere. | |
1692 AC_RUN_IFELSE([AC_LANG_SOURCE([int main () { | |
1693 #if defined __SUNPRO_C | |
1694 return 11; | |
1695 #elif defined __DECC | |
1696 return 12; | |
1697 #elif defined __USLC__ && defined __SCO_VERSION__ | |
1698 return 13; | |
1699 #elif defined __INTEL_COMPILER | |
1700 return 14; | |
1701 #else | |
1702 return 0; | |
1703 #endif | |
1704 }])], [], | |
1705 [case "$?" in | |
1706 11) echo "You appear to be using the SunPro C compiler." ; __SUNPRO_C=yes ;; | |
1707 12) echo "You appear to be using the DEC C compiler." ; __DECC=yes ;; | |
1708 13) echo "You appear to be using the SCO C compiler." ; __USLC__=yes ;; | |
1709 14) echo "You appear to be using the Intel C++ compiler."; __ICC=yes | |
1710 dnl Newer versions of icc claim to be GCC | |
1711 GCC=no ;; | |
1712 esac]) | |
1713 | |
1714 dnl -------------------------------------------------------------------- | |
1715 dnl Extract some information from the operating system and machine files | |
1716 dnl -------------------------------------------------------------------- | |
1717 | |
1718 echo "Extracting information from the machine- and system-dependent headers..." | |
1719 | |
1720 dnl It is not important that this name contain the PID; you cannot run | |
1721 dnl two configures in the same directory and have anything work | |
1722 dnl anyway. | |
1723 tempcname="conftest.c" | |
1724 | |
1725 dnl CPP_to_sh(CPP_SYMBOL, SH_VAR, DEFAULT_VALUE) | |
1726 define([CPP_to_sh], | |
1727 [[#]ifndef [$1] | |
1728 [#]define [$1]ifelse([$3],,, [ "$3"]) | |
1729 [#]endif | |
1730 configure___ [$2]=[$1] | |
1731 ])dnl CPP_to_sh | |
1732 | |
1733 dnl CPP_boolean_to_sh(CPP_SYMBOL, SH_VAR) | |
1734 define([CPP_boolean_to_sh], | |
1735 [[#]ifdef [$1] | |
1736 configure___ [$2]=yes | |
1737 [#]else | |
1738 configure___ [$2]=no | |
1739 [#]endif | |
1740 ])dnl CPP_boolean_to_sh | |
1741 | |
1742 cat > $tempcname < confdefs.h | |
1743 cat >> $tempcname <<EOF | |
1744 #define NOT_C_CODE | |
1745 #define C_SWITCH_SITE | |
1746 #define C_SWITCH_X_SITE | |
1747 #define LD_SWITCH_SITE | |
1748 #define LD_SWITCH_X_SITE | |
1749 #define LD_SWITCH_X_SITE_AUX | |
1750 #define OS_RELEASE $os_release | |
1751 | |
1752 #ifdef config_opsysfile | |
1753 #include "$srcdir/src/$opsysfile" | |
1754 #endif | |
1755 | |
1756 #ifdef config_machfile | |
1757 #include "$srcdir/src/$machfile" | |
1758 #endif | |
1759 | |
1760 CPP_to_sh(LIBS_MACHINE, libs_machine) | |
1761 CPP_to_sh(LIBS_SYSTEM, libs_system) | |
1762 CPP_to_sh(LIBS_TERMCAP, libs_termcap) | |
1763 CPP_to_sh(LIB_STANDARD, libs_standard) | |
1764 | |
1765 CPP_to_sh(OBJECTS_MACHINE, objects_machine) | |
1766 CPP_to_sh(OBJECTS_SYSTEM, objects_system) | |
1767 | |
1768 CPP_to_sh(C_SWITCH_MACHINE, c_switch_machine) | |
1769 CPP_to_sh(C_SWITCH_SYSTEM, c_switch_system) | |
1770 | |
1771 CPP_to_sh(LD_SWITCH_MACHINE, ld_switch_machine) | |
1772 CPP_to_sh(LD_SWITCH_SYSTEM, ld_switch_system) | |
1773 | |
1774 CPP_to_sh(UNEXEC, unexec) | |
1775 | |
1776 CPP_to_sh(SYSTEM_TYPE, system_type) | |
1777 | |
1778 CPP_to_sh(LD_SWITCH_SHARED, ld_switch_shared, -c) | |
1779 | |
1780 #define ORDINARY_LD "\$(CC) \$(CFLAGS)" | |
1781 configure___ ordinary_ld=ORDINARY_LD | |
1782 | |
1783 #ifdef ORDINARY_LINK | |
1784 #define LD ORDINARY_LD | |
1785 #else /* no ORDINARY LINK */ | |
1786 #ifdef LINKER | |
1787 #define LD LINKER | |
1788 #else /* ! defined (LINKER) */ | |
1789 #define LD "ld" | |
1790 #endif /* ! defined (LINKER) */ | |
1791 #endif /* not ORDINARY_LINK */ | |
1792 configure___ ld=LD | |
1793 | |
1794 CPP_to_sh(LIB_GCC, lib_gcc) | |
1795 CPP_to_sh(LD_TEXT_START_ADDR, ld_text_start_addr) | |
1796 | |
1797 #if ! defined (ORDINARY_LINK) && !defined (START_FILES) | |
1798 #ifdef NO_REMAP | |
1799 #define START_FILES "pre-crt0.o /lib/crt0.o" | |
1800 #else /* ! defined (NO_REMAP) */ | |
1801 #define START_FILES "ecrt0.o" | |
1802 #endif /* ! defined (NO_REMAP) */ | |
1803 #endif /* no ORDINARY_LINK */ | |
1804 #ifndef START_FILES | |
1805 #define START_FILES | |
1806 #endif | |
1807 configure___ start_files=START_FILES | |
1808 | |
1809 CPP_boolean_to_sh(ORDINARY_LINK, ordinary_link) | |
1810 CPP_boolean_to_sh(SYSTEM_MALLOC, system_malloc) | |
1811 CPP_boolean_to_sh(TERMINFO, have_terminfo) | |
1812 dnl The MAIL_USE_xxx variables come from the s&m headers | |
1813 CPP_boolean_to_sh(MAIL_USE_FLOCK, mail_use_flock) | |
1814 CPP_boolean_to_sh(MAIL_USE_LOCKF, mail_use_lockf) | |
1815 CPP_boolean_to_sh(MAIL_USE_LOCKING, mail_use_locking) | |
1816 CPP_boolean_to_sh(HAVE_WIN32_PROCESSES, win32_processes) | |
1817 EOF | |
1818 | |
1819 dnl The value of CPP is a quoted variable reference, so we need to do this | |
1820 dnl to get its actual value... | |
1821 CPP=`eval "echo $CPP $CPPFLAGS"` | |
1822 define(TAB, [ ])dnl | |
1823 eval `$CPP -Isrc $tempcname \ | |
1824 | sed -n -e "s/[[ TAB]]*=[[ TAB\"]]*/='/" -e "s/[[ TAB\"]]*\$/'/" -e "s/^configure___//p"` | |
1825 | |
1826 rm $tempcname | |
1827 | |
1828 dnl s&m files shouldn't be required to define anything, or even to exist. | |
1829 dnl So we default SYSTEM_TYPE to the obvious documented standard, `uname -s`, | |
1830 dnl appropriately emacsulated. | |
1831 test -z "$system_type" && \ | |
1832 AC_DEFINE_UNQUOTED(SYSTEM_TYPE,"`uname -s | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`") | |
1833 | |
1834 dnl If the s&m files don't define a system-specific dumper, simply use pdump. | |
1835 dnl Sometime in the future, we'll remove all definitions of UNEXEC | |
1836 dnl from all the s&m files. | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1837 test -z "$unexec" && with_pdump=yes |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1838 |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1839 if test "$with_pdump" = "yes"; then |
2651 | 1840 ordinary_link="yes" |
1841 ld="${ordinary_ld}" | |
1842 start_files= | |
1843 libs_standard= | |
1844 unexec= | |
1845 lib_gcc= | |
1846 fi | |
1847 | |
3263 | 1848 dnl Enable KKCC by default |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1849 test -z "$with_kkcc" && with_kkcc=yes |
2790 | 1850 |
2720 | 1851 dnl Dump into executable |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1852 if test -z "$with_dump_in_exec"; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1853 if test "$with_pdump" = "yes"; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1854 if test "$with_newgc" = "yes"; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1855 with_dump_in_exec=no |
2720 | 1856 else |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1857 with_dump_in_exec=yes |
2720 | 1858 fi |
1859 fi | |
1860 fi | |
1861 | |
3092 | 1862 dnl New incremental garbage collector |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1863 if test "$with_newgc" = "yes"; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
1864 with_kkcc=yes |
3092 | 1865 fi |
1866 | |
2651 | 1867 dnl For debugging... |
1868 test "$verbose" = "yes" && \ | |
1869 PRINT_VAR(libs_machine libs_system libs_termcap libs_standard | |
1870 objects_machine objects_system c_switch_machine c_switch_system | |
1871 ld_switch_machine ld_switch_system unexec ld_switch_shared | |
1872 ld lib_gcc ld_text_start_addr start_files ordinary_link | |
1873 have_terminfo mail_use_flock mail_use_lockf) && echo "" | |
1874 | |
1875 dnl Pick up mingw include path | |
1876 dnl We only cope with headers in mingw, not mingw32: no previous version of | |
1877 dnl XEmacs supported mingw and cygnus have made this incompatible change | |
1878 dnl so we just go with the flow. | |
1879 case "$opsys" in mingw* | cygwin*) | |
3228 | 1880 cygwin_include=`eval gcc -print-search-dirs | sed -ne s'/install: //p'` |
1881 cygwin_include=`eval "cd $cygwin_include/../../../..; pwd"` | |
1882 cygwin_include="-I$cygwin_include/include" ; | |
2651 | 1883 extra_includes="$cygwin_include/mingw $cygwin_include" ; |
1884 case "$opsys" in mingw*) | |
1885 XE_APPEND($extra_includes, c_switch_system) ;; | |
1886 esac | |
1887 ;; | |
1888 esac | |
1889 | |
1890 dnl Non-ordinary link usually requires -lc | |
1891 test "$ordinary_link" = "no" -a -z "$libs_standard" && libs_standard="-lc" | |
1892 | |
1893 dnl ----------------------- | |
1894 dnl Compiler-specific hacks | |
1895 dnl ----------------------- | |
1896 | |
1897 dnl DEC C `-std1' means ANSI C mode | |
1898 test "$__DECC" = "yes" && XE_APPEND(-std1, c_switch_site) | |
1899 | |
1900 dnl Some versions of SCO native compiler need -Kalloca | |
1901 if test "$__USLC__" = yes; then | |
1902 AC_MSG_CHECKING(for whether the -Kalloca compiler flag is needed) | |
1903 need_kalloca=no | |
3317 | 1904 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [void *x = alloca(4);])], [:], [ |
2651 | 1905 xe_save_c_switch_system="$c_switch_system" |
1906 c_switch_system="$c_switch_system -Kalloca" | |
3317 | 1907 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [void *x = alloca(4);])], |
3312 | 1908 [ need_kalloca=yes ]) |
2651 | 1909 c_switch_system="$xe_save_c_switch_system"]) |
1910 AC_MSG_RESULT($need_kalloca) | |
1911 test "$need_kalloca" = "yes" && XE_APPEND(-Kalloca,c_switch_system) | |
1912 fi | |
1913 | |
1914 dnl If we're specifying XEMACS_CC, it'd better be in the same family | |
1915 dnl as CC or the following flag calculations are bogus. | |
4510
bd1fbed783dd
Improve g++ detection.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3972
diff
changeset
|
1916 dnl No error/abort; detection is too fragile. |
bd1fbed783dd
Improve g++ detection.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3972
diff
changeset
|
1917 |
bd1fbed783dd
Improve g++ detection.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3972
diff
changeset
|
1918 xemacs_cc_cc_mismatch=no |
2651 | 1919 if test "$CC" != "$XEMACS_CC"; then |
4932 | 1920 if test "$XEMACS_CC_GPP" = "yes" -a "$GCC" != "yes"; then |
1921 AC_MSG_WARN([CC and g++ are mismatched; XE_CFLAGS may be wrong]) | |
1922 xemacs_cc_cc_mismatch=yes | |
1923 fi | |
1924 if test -n "$GCC" -a "$XEMACS_CC_GPP" != "yes" ; then | |
1925 AC_MSG_WARN([gcc and XEMACS_CC are mismatched; XE_CFLAGS may be wrong]) | |
1926 xemacs_cc_cc_mismatch=yes | |
4543
fe64f1351cbd
Fix my syntax errors.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4537
diff
changeset
|
1927 fi |
2651 | 1928 dnl #### Add other detectable mismatches here. |
1929 fi | |
1930 | |
1931 dnl Calculate optimization flags. These will be off by default in beta | |
1932 dnl versions and on in release versions. | |
1933 | |
2667 | 1934 if test -z "$with_optimization"; then |
2992 | 1935 # If user set --with-cflags-optimization, use it to unilaterally |
1936 # determine whether optimization should be enabled. | |
1937 if test "$cflags_optimization_specified" = "yes" ; then | |
3443 | 1938 if test -z "$with_cflags_optimization" ; then |
2992 | 1939 with_optimization=no |
1940 else | |
1941 with_optimization=yes | |
1942 fi | |
1943 elif test -z "$emacs_is_beta" ; then | |
2667 | 1944 with_optimization=yes |
1945 else | |
2651 | 1946 with_optimization=no |
1947 fi | |
1948 fi | |
1949 | |
1950 AC_MSG_CHECKING([for preferred optimization flags]) | |
4932 | 1951 if test "$cflags_optimization_specified" = "no"; then |
1952 if test "$with_optimization" = "yes" ; then | |
2651 | 1953 dnl Following values of cflags_optimization are known to work well. |
1954 dnl Should we take debugging options into consideration? | |
1955 if test "$GCC" = "yes"; then | |
4932 | 1956 dnl If you want to remove the -fno-strict-aliasing, then you will have |
1957 dnl to rewrite all cases of "type-punning" expressions like | |
1958 dnl (* (foo *) (&bar)), which occur all over XEmacs, by making `bar' a | |
1959 dnl union (use an anonymous union if you're willing to put in an ifdef | |
1960 dnl for anon-union support, falling back to the type-punned expression. | |
1961 with_cflags_optimization="-O3 -fno-strict-aliasing" | |
2651 | 1962 elif test "$__SUNPRO_C" = "yes"; then |
1963 case "$opsys" in | |
1964 sol2 ) with_cflags_optimization="-xO4" ;; | |
1965 esac | |
1966 elif test "$__DECC" = "yes"; then | |
1967 with_cflags_optimization="-O3" | |
1968 elif test "$CC" = "xlc"; then | |
1969 dnl see http://www.nersc.gov/vendor_docs/ibm/vac/sc094959.pdf | |
1970 with_cflags_optimization="-O3 -qstrict -qnoansialias -qlibansi -qmaxmem=20000" | |
1971 elif test "$__ICC" = "yes"; then | |
1972 with_cflags_optimization="-O3 -Ob2" | |
1973 dnl ### Add optimal cflags_optimization support for other compilers HERE! | |
1974 else | |
1975 with_cflags_optimization="-O" ;dnl The only POSIX-approved flag | |
1976 fi | |
4932 | 1977 elif test "$XEMACS_CC_GPP" = "yes" ; then |
1978 dnl Fuck me! g++ v4 turns on strict aliasing by default, even without | |
1979 dnl optimization. See comment above about why we can't have strict | |
1980 dnl aliasing currently in XEmacs. | |
1981 with_cflags_optimization="-fno-strict-aliasing" | |
2651 | 1982 fi |
1983 fi | |
1984 | |
1985 AC_MSG_RESULT([${with_cflags_optimization}]) | |
1986 | |
1987 AC_MSG_CHECKING([for preferred debugging flags]) | |
1988 if test "$cflags_debugging_specified" = "no"; then | |
1989 dnl ### Add optimal debugging support for other compilers HERE! | |
1990 with_cflags_debugging="-g" | |
1991 | |
1992 debugging_ok_with_optimization=no | |
1993 if test "$GCC" = "yes" -o "$CC" = "xlc" -o "$__ICC" = "yes"; then | |
1994 debugging_ok_with_optimization=yes | |
1995 fi | |
1996 | |
1997 if test "$with_optimization" = "yes" -a "$debugging_ok_with_optimization" = "no"; then | |
1998 with_cflags_debugging= | |
1999 fi | |
2000 fi | |
2001 AC_MSG_RESULT([${with_cflags_debugging}]) | |
2002 | |
2003 dnl Calculate warning flags. We separate the flags for warnings from | |
2004 dnl the other flags because we want to force the warnings to be seen | |
2005 dnl by everyone who doesn't specifically override them. | |
2006 | |
2007 AC_MSG_CHECKING([for preferred warning flags for XEMACS_CC]) | |
2008 | |
2009 dnl If this stays nil, it will be set to cflags_warning before use. | |
2010 xe_cflags_warning="" | |
2011 | |
2012 if test "$cflags_warning_specified" = "no"; then | |
2013 dnl Following warning flags are known to work well. | |
2014 if test "$__SUNPRO_C" = "yes"; then | |
2015 case "$opsys" in | |
2016 sol2 ) with_cflags_warning="-v" ;; | |
2017 esac | |
2018 elif test "$CC" = "xlc"; then | |
2019 with_cflags_warning="-qinfo" | |
2020 elif test "$GCC" = "yes"; then | |
2021 with_cflags_warning="-Wall -Wno-switch -Wundef" | |
2022 dnl This is not very useful, as it issues warnings that may appear | |
2023 dnl or disappear rather randomly, cannot easily be fixed, and are | |
2024 dnl not a big deal. If you want it, add it yourself. | |
2025 dnl with_cflags_warning="$with_cflags_warning -Winline" | |
2026 | |
2027 dnl Yuck, bad compares have been worth at least 3 crashes! | |
2028 dnl Warnings about char subscripts are pretty pointless, though, | |
2029 dnl and we use them in various places. | |
2030 with_cflags_warning="$with_cflags_warning -Wsign-compare -Wno-char-subscripts" | |
3494 | 2031 test "$__GCC" -ge 3 && with_cflags_warning="$with_cflags_warning -Wpacked" |
2651 | 2032 dnl glibc is intentionally not `-Wpointer-arith'-clean. |
2033 dnl Ulrich Drepper has rejected patches to fix the glibc header files. | |
2034 test "$have_glibc" != "yes" && \ | |
2035 with_cflags_warning="$with_cflags_warning -Wpointer-arith" | |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2036 dnl |
2651 | 2037 dnl Warning flags that may differ for gcc and g++ (xemacs_compiler) |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2038 dnl |
2651 | 2039 dnl With g++, -Wshadow produces five zillion utterly random warnings -- |
2040 dnl a local var named `buffer' conflicts with `struct buffer' for | |
2041 dnl example. Even with gcc, -Wshadow is questionable because of its | |
2042 dnl complaints about parameters with the same names as global functions. | |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2043 dnl There is no -Wmissing-declarations, -Wmissing-prototypes, or |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2044 dnl -Wstrict-prototypes under g++. |
2651 | 2045 dnl But gcc warns about -Weffc++ in C compiles. |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2046 dnl |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2047 dnl with_cflags_warning_c is for C-only warnings. |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2048 dnl with_cflags_warning_cxx is for C++-only warnings. |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2049 dnl with_cflags_warning_c_xe is for C-only warnings and only when |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2050 dnl compiling the source tree (i.e. when --xemacs-compiler is used). |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2051 with_cflags_warning_c="-Wshadow -Wmissing-declarations" |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2052 with_cflags_warning_c="$with_cflags_warning_c -Wmissing-prototypes -Wstrict-prototypes" |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2053 with_cflags_warning_cxx="-Weffc++" |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2054 with_cflags_warning_c_xe="" |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2055 dnl -Wunused-parameter only appeared in gcc 3. |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2056 dnl -Wdeclaration-after-statement only appeared in gcc 3.4, and is C-only. |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2057 dnl -Wunused-parameter is too annoying for use in lib-src, partly because |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2058 dnl the UNUSED() decl is in compiler.h and we don't include that in any |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2059 dnl of the lib-src files. |
2651 | 2060 dnl With g++, there is no effective way to use -Wunused-parameter without |
2061 dnl some very ugly code changes. | |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2062 if test "$__GCC" -ge 3; then |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2063 with_cflags_warning_c_xe="$with_cflags_warning_c_xe -Wunused-parameter" |
3494 | 2064 if test "$__GCC" -gt 3 || test "$__GCC_MINOR" -ge 4; then |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2065 with_cflags_warning_c="$with_cflags_warning_c -Wdeclaration-after-statement" |
3494 | 2066 fi |
2651 | 2067 fi |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2068 dnl **** If more gcc/g++ flags are added, add them above, not below |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2069 dnl |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2070 dnl Now set warnings for the source tree (xe_cflags_warning) and for |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2071 dnl lib-src (with_cflags_warning). Note that if we didn't set |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2072 dnl xe_cflags_warning, it would automatically be initialized from |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2073 dnl with_cflags_warning. |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2074 if test "$XEMACS_CC_GPP" = "yes"; then |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2075 xe_cflags_warning="$with_cflags_warning $with_cflags_warning_cxx" |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2076 else |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2077 xe_cflags_warning="$with_cflags_warning $with_cflags_warning_c $with_cflags_warning_c_xe" |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2078 fi |
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2079 with_cflags_warning="$with_cflags_warning $with_cflags_warning_c" |
2651 | 2080 elif test "$__ICC" = "yes"; then |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4991
diff
changeset
|
2081 dnl This will apply to both source tree and lib-src |
2651 | 2082 with_cflags_warning="-Wall -w1 -we147" |
2083 dnl ### Add optimal with_cflags_warning support for other compilers HERE! | |
2084 fi | |
2085 fi | |
2086 test -z "$xe_cflags_warning" && xe_cflags_warning="$with_cflags_warning" | |
2087 AC_MSG_RESULT([${xe_cflags_warning}]) | |
2088 | |
2089 AC_MSG_CHECKING([for preferred warning flags for CC]) | |
2090 AC_MSG_RESULT([${with_cflags_warning}]) | |
2091 | |
2092 dnl Calculate remaining cflags. | |
2093 dnl Use either command line flag, environment var, or autodetection | |
2094 | |
2095 AC_MSG_CHECKING([for remaining CFLAGS]) | |
2096 | |
2097 if test "$cflags_specified" = "no"; then | |
2098 dnl Following values of CFLAGS are known to work well. | |
2099 if test "$CC" = "xlc"; then | |
2100 CFLAGS="-qro" | |
2101 dnl ### Add optimal CFLAGS support for other compilers HERE! | |
2102 fi | |
2103 fi | |
2104 AC_MSG_RESULT([${CFLAGS}]) | |
2105 | |
2106 dnl Now combine all C flags. Put the warning and optimization flags first | |
2107 dnl so that user-specified flags will override. | |
2108 dnl Do XE_CFLAGS before adding flags to CFLAGS. | |
2109 dnl Flags for XEMACS_CC: | |
2110 | |
2111 XE_CFLAGS="$xe_cflags_warning $with_cflags_debugging $with_cflags_optimization $CFLAGS" | |
2112 dnl Flags for CC: | |
2113 CFLAGS="$with_cflags_warning $with_cflags_debugging $with_cflags_optimization $CFLAGS" | |
2114 | |
2115 AC_MSG_CHECKING([total value of XE_CFLAGS]) | |
2116 AC_MSG_RESULT([${XE_CFLAGS}]) | |
2117 AC_MSG_CHECKING([total value of CFLAGS]) | |
2118 AC_MSG_RESULT([${CFLAGS}]) | |
2119 | |
2120 dnl Search for GCC specific build problems we know about | |
2121 if test "$GCC" = "yes"; then | |
2122 AC_MSG_CHECKING(for buggy gcc versions) | |
2123 GCC_VERSION=`$CC --version` | |
2124 case `uname -s`:`uname -m`:$GCC_VERSION in | |
2125 dnl egcs 2.90.21 (egcs-1.00 release) | |
2126 dnl egcs 2.90.29 (egcs-1.0.3 release) | |
2127 *:sun4*:2.8.1|*:sun4*:egcs-2.90.*) | |
2128 dnl Don't use -O2 with gcc 2.8.1 and egcs 1.0 under SPARC architectures | |
2129 dnl without also using `-fno-schedule-insns'. | |
2130 case "$CFLAGS" in | |
2131 *-O2*|*-O3*) | |
2132 case "$CFLAGS" in | |
2133 *-fno-schedule-insns*) ;; | |
2134 *) | |
2135 AC_MSG_RESULT(yes) | |
2136 AC_MSG_WARN([Don't use -O2 with gcc 2.8.1 and egcs 1.0 under SPARC architectures]) | |
2137 AC_MSG_WARN([without also using -fno-schedule-insns.]) | |
2138 AC_MSG_ERROR([Aborting due to known problem]) | |
2139 ;; | |
2140 esac | |
2141 ;; | |
2142 esac | |
2143 ;; | |
2144 dnl egcs-2.91.57 (egcs-1.1 release) | |
2145 dnl egcs-2.91.66 (egcs-1.1.2 release) | |
2146 Linux:alpha:egcs-2.91.*) | |
2147 AC_MSG_RESULT(yes) | |
2148 AC_MSG_WARN([There have been reports of egcs-1.1 not compiling XEmacs correctly on]) | |
2149 AC_MSG_WARN([Alpha Linux. There have also been reports that egcs-1.0.3a is O.K.]) | |
2150 AC_MSG_ERROR([Aborting due to known problem]) | |
2151 ;; | |
2152 *:i*86*:2.7.2*) | |
2153 case "$CFLAGS" in | |
2154 *-O2*|*-O3*) | |
2155 case "$GCC_VERSION" in | |
2156 2.7.2) | |
2157 case "$CFLAGS" in | |
2158 *-fno-strength-reduce*) ;; | |
2159 *) | |
2160 AC_MSG_RESULT(yes) | |
2161 AC_MSG_WARN([Don't use -O2 with gcc 2.7.2 under Intel/XXX without also using]) | |
2162 AC_MSG_WARN([-fno-strength-reduce.]) | |
2163 AC_MSG_ERROR([Aborting due to known problem]) | |
2164 ;; | |
2165 esac | |
2166 ;; | |
2167 esac | |
2168 case "$CFLAGS" in | |
2169 *-fno-caller-saves*) ;; | |
2170 *) | |
2171 AC_MSG_RESULT(yes) | |
2172 AC_MSG_WARN([Don't use -O2 with gcc 2.7.2 under Intel/XXX without also using]) | |
2173 AC_MSG_WARN([-fno-caller-saves.]) | |
2174 AC_MSG_ERROR([Aborting due to known problem]) | |
2175 ;; | |
2176 esac | |
2177 ;; | |
2178 esac | |
2179 ;; | |
2180 esac | |
2181 AC_MSG_RESULT(no) | |
2182 fi | |
2183 | |
2184 dnl GNU ld now defaults to combreloc, which screws up unexec, but not pdump. | |
2185 dnl Note that it's OK if the GNU style long option causes non-GNU ld to barf | |
2186 dnl a usage message, that's often good enough. Please report it, though. | |
2187 dnl #### Should make this Solaris-friendly. | |
2188 dnl Link with -z nocombreloc for now. | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2189 if test "$with_pdump" != "yes"; then |
3312 | 2190 AC_MSG_CHECKING([for "-z nocombreloc" linker flag]) |
2651 | 2191 case "`ld --help 2>&1`" in |
2192 *-z\ nocombreloc* ) AC_MSG_RESULT(yes) | |
2193 XE_PREPEND(-z nocombreloc, ld_switch_site) ;; | |
2194 *) AC_MSG_RESULT(no) ;; | |
2195 esac | |
2196 fi | |
2197 | |
2198 dnl Inform compiler that certain flags are meant for the linker | |
2199 XE_PROTECT_LINKER_FLAGS(ld_switch_system) | |
2200 XE_PROTECT_LINKER_FLAGS(ld_switch_machine) | |
2201 XE_PROTECT_LINKER_FLAGS(ld_switch_site) | |
2202 XE_PROTECT_LINKER_FLAGS(LDFLAGS) | |
2203 XE_PROTECT_LINKER_FLAGS(ld_call_shared) | |
2204 | |
2205 dnl Add s&m-determined objects (including unexec) to link line | |
2206 test -n "$objects_machine" && XE_ADD_OBJS($objects_machine) | |
2207 test -n "$objects_system" && XE_ADD_OBJS($objects_system) | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2208 test -n "$unexec" && test ! "$with_pdump" = "yes" && XE_ADD_OBJS($unexec) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2209 test "$with_pdump" = "yes" && XE_ADD_OBJS(dumper.o) |
2651 | 2210 |
2211 dnl Feed s&m crud to src/Makefile | |
2212 | |
2213 dnl Linux/powerpc needs the following magic for some reason | |
2214 dnl [Not needed with YellowDog 2.3 and causes link problems with YellowDog 3.0, | |
2215 dnl the two most popular PowerPC distributions.] | |
2216 dnl test "$machine$opsys" = "powerpclinux" && start_flags="-T $srcdir/src/ppc.ldscript" | |
2217 | |
2218 AC_LANG(C) | |
2219 if test "$unexec" = "unexaix.o"; then | |
2220 dnl AIX needs various hacks to make static linking work. | |
2221 if test "$with_dynamic" = "no"; then | |
2222 start_flags="-Wl,-bnso,-bnodelcsect" | |
2223 test "$GCC" = "yes" && start_flags="-B/bin/ ${start_flags}" | |
2224 for f in "/lib/syscalls.exp" "/lib/threads.exp"; do | |
2225 if test -r "$f"; then start_flags="${start_flags},-bI:${f}"; fi | |
2226 done | |
2227 for f in "/usr/lpp/X11/bin/smt.exp" "/usr/bin/X11/smt.exp"; do | |
2228 if test -r "$f"; then start_flags="${start_flags},-bI:${f}"; break; fi | |
2229 done | |
2230 AC_CHECK_LIB([c], [terminateAndUnload], [XE_APPEND(-lC, libs_system)]) | |
2231 fi | |
2232 elif test -n "$ld_text_start_addr"; then | |
2233 start_flags="-T $ld_text_start_addr -e __start" | |
2234 fi | |
2235 AC_SUBST(start_flags) | |
2236 | |
2237 AC_SUBST(ld_switch_shared) | |
2238 AC_SUBST(start_files) | |
2239 if test "$ordinary_link" = "no" -a "$GCC" = "yes"; then | |
2240 test -z "$linker" && linker='$(CC) -nostdlib' | |
2241 test -z "$lib_gcc" && lib_gcc='`$(CC) -print-libgcc-file-name`' | |
2242 fi | |
2243 test "$GCC" != "yes" && lib_gcc= | |
2244 AC_SUBST(ld) | |
2245 AC_SUBST(lib_gcc) | |
2246 | |
2247 dnl --------------------------------------------------------------- | |
2248 dnl Get version information for: | |
2249 dnl C compiler, libc | |
2250 dnl #### should do CC compiler, too, if different from XEMACS_CC | |
2251 dnl --------------------------------------------------------------- | |
2252 | |
2253 compiler_version="" | |
2254 gcc_compiler_specs="" | |
2255 libc_version="" | |
2256 | |
2257 AC_MSG_CHECKING([for compiler version information]) | |
2258 | |
2259 dnl First try portable compilers, then crack system secrets | |
2260 dnl #### Is this code correct if $XEMACS_CC != $CC? XEMACS_CC hasn't been | |
2261 dnl run through the AC_PROG_CC mill. | |
2262 dnl Would anybody really build libsrc with GCC and XEmacs with non-GCC? | |
2263 if test "$GCC" = "yes"; then | |
2692 | 2264 compiler_version=`$XEMACS_CC --version | sed 1q` |
2265 gcc_compiler_specs=`$XEMACS_CC -v 2>&1 | sed 's/.* \([[^ ]]\)/\1/' | sed 1q` | |
2651 | 2266 else case "$XEMACS_CC" in |
2267 dnl The Intel cc compiler | |
2268 ic*) | |
2692 | 2269 compiler_version=`icc -V 2>&1 | sed 1q` |
2651 | 2270 ;; |
2271 dnl non-gcc machine-specific magic - contributions welcome | |
2272 *) case "$ac_cv_build" in | |
2273 *-*-aix* ) | |
2274 dnl Yes, it's this ugly for AIX... | |
2275 realcc=`which $XEMACS_CC` | |
2276 dnl Might be a symlink created by replaceCset command | |
2277 if test -L $realcc ; then | |
2278 ccdir=`dirname $realcc` | |
2279 ccprog=`/bin/ls -l $realcc | sed 's/.* \([[^ ]]\)/\1/'` | |
2280 dnl This doesn't handle ../../xlc type stuff, but I've not seen one... | |
2281 case $ccprog in | |
2282 */*) realcc=$ccprog;; | |
2283 *) realcc=$ccdir/$ccprog;; | |
2284 esac | |
2285 fi | |
2286 lpp=`lslpp -wqc $realcc | cut -f2 -d:` | |
2287 if test ! -z "$lpp" ; then | |
2288 lppstr=`lslpp -Lqc $lpp` | |
2289 lpplev=`echo "$lppstr" | cut -f3 -d:` | |
2290 lppdesc=`echo "$lppstr" | cut -f8 -d:` | |
2291 fi | |
2292 if test ! -z "$lpplev" ; then | |
2293 compiler_version="$lpp $lpplev - $lppdesc" | |
2294 fi | |
2295 ;; | |
2296 | |
2297 *-*-solaris*) | |
2692 | 2298 compiler_version=`$XEMACS_CC -V 2>&1 | sed 1q` |
2651 | 2299 ;; |
2300 | |
2301 alpha*-dec-osf*) | |
2302 compiler_version=`$XEMACS_CC -V | tr '\n' ' '` | |
2303 ;; | |
2304 | |
2305 mips-sgi-irix*) | |
2306 compiler_version=`$XEMACS_CC -version` | |
2307 ;; | |
2308 esac | |
2309 esac | |
2310 fi | |
2311 | |
2312 dnl Awww, shucks. | |
2313 if test -z "$compiler_version"; then | |
2314 compiler_version="detection failed (please report this)" | |
2315 fi | |
2316 AC_MSG_RESULT([$compiler_version]) | |
2317 | |
2318 AC_MSG_CHECKING(for standard C library version information) | |
2319 | |
2320 case "$ac_cv_build" in | |
2321 *-*-linux*) | |
2322 dnl #### who would ever _not_ be running the distro's libc? | |
2323 dnl Maybe it would be better to get/augment this info with ldd? | |
2324 if test -f /etc/redhat-release ; then | |
2325 libc_version=`rpm -q glibc` | |
2326 elif test -f /etc/debian_version ; then | |
2327 libc_version=`dpkg-query --showformat='${version}' --show libc6` | |
2328 libc_version="GNU libc $libc_version (Debian)" | |
2329 dnl need SuSE et al checks here... | |
2330 fi | |
2331 dnl #### Tested on Debian, does this actually work elsewhere? ;-) | |
2332 if test -z "$libc_version"; then | |
2333 libc_version=`ls /lib/libc-*.so | sed -e 's,/lib/libc-\(.*\)\.so,\1,'` | |
2334 fi | |
2335 ;; | |
2336 | |
2337 *-*-aix*) | |
2338 libc_version="bos.rte.libc `lslpp -Lqc bos.rte.libc | cut -f3 -d:`" | |
2339 ;; | |
2340 | |
2341 *-*-solaris*) | |
2342 libc=`pkginfo -l SUNWcsl | grep VERSION: | awk '{print $2}'` | |
2343 libc_version="SUNWcsl $libc" | |
2344 | |
2345 ;; | |
2346 | |
2347 mips-sgi-irix*) | |
2348 libc_version="IRIX libc `uname -sRm`" | |
2349 ;; | |
2350 | |
2351 alpha*-dec-osf*) | |
2352 dnl Another ugly case | |
2353 (cd /usr/.smdb.; | |
2354 libc_version=` grep -h libc.so *.inv | awk '$9 == "f" {print $12}' | tr '\n' ','` | |
2355 ) | |
2356 ;; | |
2357 esac | |
2358 | |
2359 dnl Awww, shucks. | |
2360 if test -z "libc_version"; then | |
2361 libc_version="detection failed (please report this)" | |
2362 fi | |
2363 AC_MSG_RESULT([$libc_version]) | |
2364 | |
2365 dnl --------------------------------------------------------------- | |
2366 dnl Add site and system specific flags to compile and link commands | |
2367 dnl --------------------------------------------------------------- | |
2368 | |
2369 dnl --with-site-libraries (multiple dirs) | |
2370 COLON_TO_SPACE(with_site_libraries) | |
2371 if test -n "$with_site_libraries"; then | |
2372 for arg in $with_site_libraries; do | |
2373 case "$arg" in | |
2374 -* ) ;; | |
2375 * ) test -d "$arg" || \ | |
2376 XE_DIE("Invalid site library \`$arg': no such directory") | |
2377 arg="-L${arg}" ;; | |
2378 esac | |
2379 XE_APPEND($arg, ld_switch_site) | |
2380 done | |
2381 fi | |
2382 | |
2383 dnl --with-site-includes (multiple dirs) | |
2384 COLON_TO_SPACE(with_site_includes) | |
2385 if test -n "$with_site_includes"; then | |
2386 for arg in $with_site_includes; do | |
2387 case "$arg" in | |
2388 -* ) ;; | |
2389 * ) test -d "$arg" || \ | |
2390 XE_DIE("Invalid site include \`$arg': no such directory") | |
2391 arg="-I${arg}" ;; | |
2392 esac | |
2393 XE_APPEND($arg, c_switch_site) | |
2394 done | |
2395 fi | |
2396 | |
2397 dnl --with-site-prefixes (multiple dirs) | |
2398 dnl --with-site-prefixes=dir1:dir2 is a convenient shorthand for | |
2399 dnl --with-site-libraries=dir1/lib:dir2/lib --with-site-includes=dir1/include:dir2/include | |
2400 dnl Site prefixes take precedence over the standard places, but not over | |
2401 dnl with-site-includes and with-site-libraries. | |
2402 COLON_TO_SPACE(with_site_prefixes) | |
2403 if test -n "$with_site_prefixes"; then | |
2404 for dir in $with_site_prefixes; do | |
2405 lib_dir="${dir}/lib" | |
2406 inc_dir="${dir}/include" | |
2407 if test ! -d "$dir"; then | |
2408 XE_DIE("Invalid site prefix \`$dir': no such directory") | |
2409 elif test ! -d "$lib_dir"; then | |
2410 XE_DIE("Invalid site prefix \`$dir': no such directory \`$lib_dir'") | |
2411 else | |
2412 if test -d "$inc_dir"; then | |
2413 XE_APPEND("-I$inc_dir", c_switch_site) | |
2414 fi | |
2415 XE_APPEND("-L$lib_dir", ld_switch_site) | |
2416 fi | |
2417 done | |
2418 fi | |
2419 | |
2420 dnl GNU software installs by default into /usr/local/{include,lib} | |
2421 dnl if test -d "/usr/local/include" -a -d "/usr/local/lib"; then | |
2422 dnl XE_APPEND("-L/usr/local/lib", ld_switch_site) | |
2423 dnl XE_APPEND("-I/usr/local/include", c_switch_site) | |
2424 dnl fi | |
2425 | |
2426 dnl Extra system-specific library directories - please add to list | |
2427 for dir in "/usr/ccs/lib"; do | |
2428 test -d "$dir" && XE_APPEND(-L${dir}, ld_switch_system) | |
2429 done | |
2430 | |
2431 dnl --with-site-runtime-libraries (multiple dirs) | |
2432 COLON_TO_SPACE(with_site_runtime_libraries) | |
2433 if test -n "$with_site_runtime_libraries"; then | |
2434 LD_RUN_PATH="`echo $with_site_runtime_libraries | sed -e 's/ */:/g'`" | |
2435 export LD_RUN_PATH | |
2436 fi | |
2437 | |
2438 dnl Linux systems have dynamic runtime library directories listed in | |
2439 dnl /etc/ld.so.conf. Since those are used at run time, it seems pretty | |
2440 dnl safe to use them at link time, and less controversial than forcing | |
2441 dnl the run-time to use the link-time libraries. This also helps avoid | |
2442 dnl mismatches between the link-time and run-time libraries. | |
2443 | |
2444 dnl #### Unfortunately, there are horrible libc4 and libc5 libraries | |
2445 dnl listed in /etc/ld.so.conf on some systems, and including them on | |
2446 dnl the link path leads to linking in utterly broken libc's. | |
2447 dnl There are many clever ways of approaching this problem, | |
2448 dnl but finding one that actually works... | |
2449 | |
2450 dnl if test -z "$LD_RUN_PATH" -a -r "/etc/ld.so.conf"; then | |
2451 dnl for dir in `cat /etc/ld.so.conf`; do | |
2452 dnl test -d "$dir" && XE_APPEND(-L${dir}, ld_switch_system) | |
2453 dnl done | |
2454 dnl add_runtime_path=no | |
2455 dnl fi | |
2456 | |
2457 dnl ------------------------------------- | |
2458 dnl Compute runtime library path | |
2459 dnl ------------------------------------- | |
2460 | |
2461 if test -n "$add_runtime_path"; then :; | |
2462 elif test "$with_dynamic" = "no"; then add_runtime_path=no | |
2463 elif test -n "$LD_RUN_PATH"; then add_runtime_path=yes | |
2464 else case "$opsys" in | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
2465 sol2 | irix* | *bsd* ) add_runtime_path=yes ;; |
2651 | 2466 * ) add_runtime_path=no ;; |
2467 esac | |
2468 fi | |
2469 | |
2470 if test "$add_runtime_path" = "yes"; then | |
2471 dnl Try to autodetect runtime library flag (usually -R), | |
2472 dnl and whether it works (or at least does no harm) | |
3312 | 2473 AC_MSG_CHECKING([for runtime libraries flag]) |
2651 | 2474 case "$opsys" in |
2475 sol2 ) dash_r="-R" ;; | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
2476 linux* | irix*) dash_r="-rpath " ;; |
2651 | 2477 *) |
2478 dash_r="" | |
2479 for try_dash_r in "-R" "-R " "-rpath "; do | |
2480 xe_check_libs="${try_dash_r}/no/such/file-or-directory" | |
2481 XE_PROTECT_LINKER_FLAGS(xe_check_libs) | |
3312 | 2482 AC_LINK_IFELSE([], dash_r="$try_dash_r") |
2651 | 2483 xe_check_libs="" |
2484 test -n "$dash_r" && break | |
2485 done ;; | |
2486 esac | |
2487 if test -n "$dash_r"; | |
3312 | 2488 then AC_MSG_RESULT(["${dash_r}"]) |
2651 | 2489 else AC_MSG_RESULT(NONE) |
2490 fi | |
2491 fi | |
2492 | |
2493 xe_add_unique_runpath_dir=' | |
2494 xe_add_p=yes | |
2495 for xe_dir in $runpath_dirs; do dnl Uniquify | |
2496 test "$xe_dir" = "$xe_runpath_dir" && xe_add_p=no | |
2497 done | |
2498 if test "$xe_add_p" = "yes"; then | |
2499 test -n "$runpath" && runpath="${runpath}:" | |
2500 runpath="${runpath}${xe_runpath_dir}" | |
2501 runpath_dirs="$runpath_dirs $xe_runpath_dir" | |
2502 fi' | |
2503 | |
2504 XE_COMPUTE_RUNPATH() | |
2505 | |
2506 dnl ----------------------------------- | |
2507 dnl Do some misc autoconf-special tests | |
2508 dnl ----------------------------------- | |
2509 | |
4738
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2510 dnl Can we use GNU malloc on this system? |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2511 dnl First, configure based-checks. |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2512 case "$opsys" in |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2513 darwin ) |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2514 if test "$with_system_malloc" = "default"; then |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2515 system_malloc=yes |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2516 with_system_malloc=yes |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2517 AC_MSG_WARN([Forcing system malloc on Darwin.]) |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2518 fi ;; |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2519 esac |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
2520 |
2651 | 2521 dnl Do the opsystem or machine files prohibit the use of the GNU malloc? |
2522 dnl Assume not, until told otherwise. | |
2523 GNU_MALLOC=yes | |
2524 if test "$with_dlmalloc" != "no"; then | |
2525 doug_lea_malloc=yes | |
2526 else | |
2527 doug_lea_malloc=no | |
2528 fi | |
2529 after_morecore_hook_exists=yes | |
2530 AC_CHECK_FUNC(malloc_set_state, ,doug_lea_malloc=no) | |
2531 AC_MSG_CHECKING(whether __after_morecore_hook exists) | |
3312 | 2532 AC_LINK_IFELSE([AC_LANG_PROGRAM([extern void (* __after_morecore_hook)();], |
2533 [__after_morecore_hook = 0])], | |
2651 | 2534 [AC_MSG_RESULT(yes)], |
2535 [AC_MSG_RESULT(no) | |
2536 after_morecore_hook_exists=no]) | |
2537 if test "$system_malloc" = "yes" ; then | |
2538 GNU_MALLOC=no | |
2539 GNU_MALLOC_reason=" | |
2540 - The GNU allocators don't work with this system configuration." | |
2541 elif test "$with_system_malloc" = "yes" ; then | |
2542 GNU_MALLOC=no | |
2543 GNU_MALLOC_reason=" | |
2544 - User chose not to use GNU allocators." | |
2545 elif test "$with_debug_malloc" = "yes" ; then | |
2546 GNU_MALLOC=no | |
2547 GNU_MALLOC_reason=" | |
2548 - User chose to use Debugging Malloc." | |
2549 fi | |
2550 | |
2551 if test "$doug_lea_malloc" = "yes" -a "$GNU_MALLOC" = "yes" ; then | |
2552 GNU_MALLOC_reason=" | |
2553 - Using Doug Lea's new malloc from the GNU C Library." | |
2554 AC_DEFINE(DOUG_LEA_MALLOC) | |
2555 if test "$after_morecore_hook_exists" = "no" ; then | |
2556 GNU_MALLOC_reason=" | |
2557 - Using Doug Lea's new malloc from the Linux C Library." | |
2558 AC_DEFINE(_NO_MALLOC_WARNING_) | |
2559 fi | |
2560 fi | |
2561 | |
2562 dnl #### mcheck is broken in all versions of Linux libc and glibc. | |
2563 dnl Try this again when 2.1 hits the streets. | |
2564 dnl Avoid using free-hook.c if support exists for malloc debugging in libc | |
2565 dnl have_libmcheck=no | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2566 dnl if test "$with_error_checking_malloc" = "yes" -a \ |
2651 | 2567 dnl "$have_glibc" = "yes" -a \ |
2568 dnl "$doug_lea_malloc" = "yes"; then | |
2569 dnl AC_CHECK_HEADERS(mcheck.h) | |
2570 dnl AC_CHECK_LIB(mcheck, mcheck, have_libmcheck=yes, have_libmcheck=no) | |
2571 dnl fi | |
2572 | |
2573 dnl if test "$have_libmcheck" = "yes"; then | |
2574 dnl AC_DEFINE(HAVE_LIBMCHECK) | |
2575 dnl libmcheck=-lmcheck | |
2576 dnl AC_SUBST(libmcheck) | |
2577 dnl fi | |
2578 | |
2579 dnl Some other nice autoconf tests. If you add a test here which | |
2580 dnl should make an entry in src/config.h, do not forget to add an | |
2581 dnl #undef clause to src/config.h.in for autoconf to modify. | |
2582 | |
3862 | 2583 dnl Sun likes to hide these utilities. Steve Baur asked that we make |
2584 dnl the failure occur at configure time, not at use time. | |
2585 AC_CHECK_PROG(AR,ar,ar,not_found) | |
2586 if test "$AR" = "not_found"; then | |
2587 XE_DIE(["ar not found -- is PATH set correctly?"]) | |
2588 fi | |
2589 dnl These tests don't necessarily check that the program exists. | |
2651 | 2590 AC_PROG_RANLIB |
2591 AC_PROG_INSTALL | |
2592 AC_PROG_YACC | |
2593 | |
2594 dnl checks for header files | |
2595 AC_CHECK_HEADERS(dnl | |
2596 a.out.h dnl | |
2597 elf.h dnl | |
2598 cygwin/version.h dnl | |
2599 fcntl.h dnl | |
2600 libgen.h dnl | |
2601 locale.h dnl | |
2602 wchar.h dnl | |
2603 mach/mach.h dnl | |
2604 sys/param.h dnl | |
2605 sys/pstat.h dnl | |
2606 sys/resource.h dnl | |
2607 sys/time.h dnl | |
2608 sys/timeb.h dnl | |
2609 sys/times.h dnl | |
2610 sys/un.h dnl | |
2611 sys/vlimit.h dnl | |
2612 ulimit.h dnl | |
2613 ) | |
2614 AC_HEADER_SYS_WAIT | |
2615 AC_HEADER_STDC | |
2616 AC_HEADER_TIME | |
2617 AC_CHECK_DECLS([sys_siglist],,, | |
2618 [#include <signal.h> | |
2619 /* NetBSD declares sys_siglist in unistd.h. */ | |
2620 #if HAVE_UNISTD_H | |
2621 # include <unistd.h> | |
2622 #endif | |
667 | 2623 ]) |
2651 | 2624 |
2625 | |
2626 dnl ---------------------------------------------------------------- | |
2627 dnl Checking for utime() or utimes(). | |
2628 dnl We prefer utime, since it is more standard. | |
2629 dnl Some systems have utime.h but do not declare the struct anyplace, | |
2630 dnl so we use a more sophisticated test for utime than AC_CHECK_FUNCS. | |
2631 dnl ---------------------------------------------------------------- | |
2632 AC_MSG_CHECKING(for utime) | |
3312 | 2633 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <sys/types.h> |
2651 | 2634 #include <utime.h>], |
3312 | 2635 [struct utimbuf x; x.actime = x.modtime = 0; utime ("/", &x);])], |
2651 | 2636 [AC_MSG_RESULT(yes) |
2637 AC_DEFINE(HAVE_UTIME)], | |
2638 [AC_MSG_RESULT(no) | |
2639 dnl We don't have utime(); how about utimes()? | |
2640 AC_CHECK_FUNCS(utimes)]) | |
2641 | |
2642 | |
2643 dnl checks for typedefs | |
2644 AC_TYPE_SIGNAL | |
2645 AC_TYPE_SIZE_T | |
2646 AC_TYPE_PID_T | |
2647 AC_TYPE_UID_T | |
2648 AC_TYPE_MODE_T | |
2649 AC_TYPE_OFF_T | |
3862 | 2650 dnl #### Translated from deprecated 2.13-ism. |
2651 dnl We probably want to DTRT with #ifdef HAVE_SSIZE_T in src/config.h.in. | |
2652 dnl Specifically, we should typedef st sizeof(ssize_t) == sizeof(size_t). | |
2653 AC_CHECK_TYPE([ssize_t],, | |
2654 [AC_DEFINE_UNQUOTED([ssize_t], [int], | |
2655 [Define to `int' if | |
2656 <sys/types.h> does not define.])]) | |
2651 | 2657 |
2658 dnl not AC_CHECK_TYPE; lisp.h does hairy conditional typedef | |
2659 if test "$ac_cv_header_inttypes_h" != "yes"; then | |
2660 AC_MSG_CHECKING(for intptr_t in sys/types.h) | |
3312 | 2661 AC_COMPILE_IFELSE([AC_LANG_SOURCE([#include <sys/types.h> |
2651 | 2662 intptr_t x; |
3312 | 2663 ])],[AC_MSG_RESULT(yes) |
2651 | 2664 AC_DEFINE(HAVE_INTPTR_T_IN_SYS_TYPES_H,1)], |
2665 [AC_MSG_RESULT(no)]) | |
2666 fi | |
2667 | |
2668 dnl check for Unix98 socklen_t | |
2669 AC_MSG_CHECKING(for socklen_t) | |
3312 | 2670 AC_COMPILE_IFELSE([AC_LANG_SOURCE([#include <sys/types.h> |
2651 | 2671 #include <sys/socket.h> |
2672 socklen_t x; | |
3312 | 2673 ])],[AC_MSG_RESULT(yes)],[ |
2674 AC_COMPILE_IFELSE([AC_LANG_SOURCE([#include <sys/types.h> | |
2651 | 2675 #include <sys/socket.h> |
2676 int accept (int, struct sockaddr *, size_t *); | |
3312 | 2677 ])],[ |
2651 | 2678 AC_MSG_RESULT(size_t) |
2679 AC_DEFINE(socklen_t,size_t)], [ | |
2680 AC_MSG_RESULT(int) | |
2681 AC_DEFINE(socklen_t,int)])]) | |
2682 | |
2683 AC_MSG_CHECKING(for struct timeval) | |
3312 | 2684 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#ifdef TIME_WITH_SYS_TIME |
2651 | 2685 #include <sys/time.h> |
2686 #include <time.h> | |
2687 #else | |
2688 #ifdef HAVE_SYS_TIME_H | |
2689 #include <sys/time.h> | |
2690 #else | |
2691 #include <time.h> | |
2692 #endif | |
3312 | 2693 #endif], [static struct timeval x; x.tv_sec = x.tv_usec;])], |
2651 | 2694 [AC_MSG_RESULT(yes) |
2695 HAVE_TIMEVAL=yes | |
2696 AC_DEFINE(HAVE_TIMEVAL)], | |
2697 [AC_MSG_RESULT(no) | |
2698 HAVE_TIMEVAL=no]) | |
2699 | |
2700 dnl checks for structure members | |
2701 AC_STRUCT_TM | |
2702 AC_STRUCT_TIMEZONE | |
2703 | |
2704 dnl checks for compiler characteristics | |
2705 AC_C_CONST | |
2706 | |
2707 dnl check for Make feature | |
2708 AC_PROG_MAKE_SET | |
2709 | |
2710 dnl check byte order | |
2711 AC_C_BIGENDIAN | |
2712 | |
2713 dnl define SIZEOF_TYPE | |
2714 AC_CHECK_SIZEOF(short) | |
2715 if test "$ac_cv_sizeof_short" = 0; then | |
2716 echo "" | |
2717 echo "*** PANIC *** Configure tests are not working - compiler is broken." | |
2718 echo "*** PANIC *** Please examine config.log for compilation errors." | |
2719 exit 1 | |
2720 fi | |
2721 AC_CHECK_SIZEOF(int) | |
2722 AC_CHECK_SIZEOF(long) | |
2723 AC_CHECK_SIZEOF(long long) | |
2724 AC_CHECK_SIZEOF(void *) | |
2725 AC_CHECK_SIZEOF(double) | |
2726 | |
2727 dnl check for long file names | |
2728 AC_SYS_LONG_FILE_NAMES | |
2729 | |
2730 dnl -lm is required for floating point support, among other things | |
2731 AC_CHECK_FUNC(sin, ,AC_CHECK_LIB(m, sin)) | |
2732 | |
3312 | 2733 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <math.h>], |
2734 [return atanh(1.0) + asinh(1.0) + acosh(1.0); ])], | |
2651 | 2735 AC_DEFINE(HAVE_INVERSE_HYPERBOLIC)) |
2736 | |
2737 dnl See if mkstemp is available | |
2738 AC_CHECK_FUNCS(mkstemp) | |
2739 | |
2740 dnl Determine type of mail locking from configure args and s&m headers | |
3312 | 2741 AC_MSG_CHECKING([type of mail spool file locking]) |
2742 AC_MSG_RESULT() | |
2651 | 2743 AC_CHECK_FUNCS(lockf flock) |
2744 dnl The mail_use_xxx variables are set according to the s&m headers. | |
2745 test -z "$with_mail_locking" -a "$mail_use_flock" = "yes" && with_mail_locking=flock | |
2746 test -z "$with_mail_locking" -a "$mail_use_lockf" = "yes" && with_mail_locking=lockf | |
2747 test -z "$with_mail_locking" -a "$mail_use_locking" = "yes" && with_mail_locking=locking | |
2748 if test -z "$with_mail_locking"; then | |
2749 case "$opsys" in cygwin* | mingw*) | |
2750 with_mail_locking=pop ;; | |
2751 esac | |
2752 fi | |
2753 | |
2754 if test "$with_mail_locking" = "lockf"; then AC_DEFINE(MAIL_LOCK_LOCKF) | |
2755 elif test "$with_mail_locking" = "flock"; then AC_DEFINE(MAIL_LOCK_FLOCK) | |
2756 elif test "$with_mail_locking" = "locking"; then AC_DEFINE(MAIL_LOCK_LOCKING) | |
2757 elif test "$with_mail_locking" = "pop"; then | |
2758 with_pop=yes | |
2759 with_mail_locking= | |
2760 elif test "$with_mail_locking" = "mmdf"; then AC_DEFINE(MAIL_LOCK_MMDF) | |
2761 else with_mail_locking="file"; AC_DEFINE(MAIL_LOCK_DOT) | |
2762 fi | |
2763 test "$with_mail_locking" = "lockf" -a "$ac_cv_func_lockf" != "yes" && \ | |
2764 XE_DIE("lockf mail locking requested but not available.") | |
2765 test "$with_mail_locking" = "flock" -a "$ac_cv_func_flock" != "yes" && \ | |
2766 XE_DIE("flock mail locking requested but not available.") | |
2767 test "$with_mail_locking" = "locking" -a "$ac_cv_func_locking" != "yes" && \ | |
2768 XE_DIE("locking mail locking requested but not available.") | |
2769 | |
2770 dnl ---------------------------------------------------------------- | |
2771 dnl Miscellaneous flags | |
2772 dnl ---------------------------------------------------------------- | |
2773 | |
2774 AC_MSG_CHECKING(whether the -xildoff compiler flag is required) | |
2775 if ${CC-cc} '-###' -xildon no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ; then | |
2776 if ${CC-cc} '-###' -xildoff no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ; | |
2777 then AC_MSG_RESULT(no); | |
2778 else AC_MSG_RESULT(yes); XE_APPEND(-xildoff, ld_switch_site) | |
2779 fi | |
2780 else AC_MSG_RESULT(no) | |
2781 fi | |
2782 | |
2783 dnl Link with "-z ignore" on Solaris if supported | |
2784 if test "$opsys" = "sol2"; then | |
2785 if test "$os_release" -ge 506; then | |
3312 | 2786 AC_MSG_CHECKING([for "-z ignore" linker flag]) |
2651 | 2787 case "`ld -h 2>&1`" in |
2788 *-z\ ignore\|record* ) AC_MSG_RESULT(yes) | |
2789 XE_PREPEND(-z ignore, ld_switch_site) ;; | |
2790 *) AC_MSG_RESULT(no) ;; | |
2791 esac | |
2792 fi | |
2793 fi | |
2794 | |
2795 dnl ---------------------- | |
2796 dnl Choose a window system | |
2797 dnl ---------------------- | |
2798 | |
3312 | 2799 AC_MSG_CHECKING([for specified window system]) |
2800 AC_MSG_RESULT() | |
2651 | 2801 |
2802 dnl Autodetection of Gdk libraries and includes | |
2803 dnl ------------------------------------------- | |
2804 dnl On some systems (FreeBSD springs to mind), they use | |
2805 dnl versions on the utility routines, so instead of gtk-config | |
2806 dnl you must use gtk12-config, etc, etc. | |
2807 | |
2808 GNOME_CONFIG=no | |
2809 GTK_CONFIG=no | |
2810 | |
2811 if test "$with_gnome" != "no"; then | |
2812 AC_MSG_CHECKING(for GNOME configuration script) | |
2813 for possible in gnome-config | |
2814 do | |
2815 possible_version=`${possible} --version 2> /dev/null` | |
2816 if test "x${possible_version}" != "x"; then | |
2817 GNOME_CONFIG="${possible}" | |
2818 with_gnome=yes | |
2819 with_gtk=yes | |
2820 break | |
2821 fi | |
2822 done | |
2823 AC_MSG_RESULT([${GNOME_CONFIG}]) | |
2824 fi | |
2825 | |
2826 if test "${GNOME_CONFIG}" != "no"; then | |
2827 GNOME_LIBS=`${GNOME_CONFIG} --libs gnomeui` | |
2828 GNOME_CFLAGS=`${GNOME_CONFIG} --cflags gnomeui` | |
2829 AC_DEFINE(HAVE_GNOME) | |
2830 XE_APPEND(${GNOME_LIBS}, libs_gtk) | |
2831 XE_APPEND(${GNOME_CFLAGS}, c_switch_gtk) | |
2832 fi | |
2833 | |
2834 if test "$with_gtk" != "no";then | |
2835 AC_MSG_CHECKING(for GTK configuration script) | |
2836 for possible in gtk12-config gtk14-config gtk-config | |
2837 do | |
2838 possible_version=`${possible} --version 2> /dev/null` | |
2839 if test "x${possible_version}" != "x"; then | |
2840 GTK_CONFIG="${possible}" | |
2841 case "${possible_version}" in | |
2842 1.0.*) AC_MSG_WARN([GTK 1.2 is required, please upgrade your version of GTK.]); with_gtk=no;; | |
2843 1.3.*) AC_MSG_WARN([GTK 1.3 is not supported right now]); with_gtk=no;; | |
2844 1.2.*) | |
2845 with_gtk=yes | |
2846 break | |
2847 ;; | |
2848 *) AC_MSG_WARN([Found unsupported version of GTK: $possible_version]);; | |
2849 esac | |
2850 fi | |
2851 done | |
2852 AC_MSG_RESULT([${GTK_CONFIG}]) | |
2853 fi | |
2854 | |
2855 if test "${GTK_CONFIG}" != "no"; then | |
2856 AC_MSG_CHECKING(gtk version) | |
2857 GTK_VERSION=`${GTK_CONFIG} --version` | |
2858 AC_MSG_RESULT(${GTK_VERSION}) | |
2859 | |
2860 AC_MSG_CHECKING(gtk libs) | |
2861 GTK_LIBS=`${GTK_CONFIG} --libs` | |
2862 XE_APPEND(${GTK_LIBS}, libs_gtk) | |
2863 AC_MSG_RESULT(${GTK_LIBS}) | |
2864 | |
2865 AC_MSG_CHECKING(gtk cflags) | |
2866 GTK_CFLAGS=`${GTK_CONFIG} --cflags` | |
2867 if test "$GCC" = "yes"; then | |
2868 GTK_CFLAGS="${GTK_CFLAGS} -Wno-shadow" | |
2869 fi | |
2870 XE_APPEND(${GTK_CFLAGS}, c_switch_gtk) | |
2871 AC_MSG_RESULT(${GTK_CFLAGS}) | |
2872 | |
2873 AC_CHECK_LIB(gdk_imlib, main, XE_PREPEND(-lgdk_imlib, libs_gtk)) | |
2874 AC_CHECK_LIB(Imlib, Imlib_init, XE_APPEND(-lImlib, libs_gtk)) | |
2875 AC_CHECK_FUNCS(gdk_imlib_init) | |
2876 | |
2877 AC_DEFINE(HAVE_XPM) | |
2878 AC_DEFINE(HAVE_GTK) | |
2879 AC_SUBST(GTK_CONFIG) | |
2880 | |
2881 window_system=gtk | |
2882 with_gtk=yes | |
2883 if test "$with_x11" != "no"; then | |
2884 AC_MSG_WARN([Configuring GTK, forcing with_x11 to no]) | |
2885 with_x11=no | |
2886 fi | |
2887 | |
2888 for feature in scrollbars toolbars menubars dialogs widgets | |
2889 do | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2890 eval "feature_value=\${with_${feature}}" |
2651 | 2891 case "${feature_value}" in |
2892 yes|no|gtk|"" ) | |
2893 ;; | |
2894 * ) | |
2895 feature_conflict_with_gtk=yes | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2896 AC_MSG_WARN([--with-${feature}=${feature_value} is incompatible with --with-gtk]) ;; |
2651 | 2897 esac |
2898 done | |
2899 if test "${feature_conflict_with_gtk}" = "yes"; then | |
2900 XE_DIE(["One or more GUI toolkit features conflict with GTK"]) | |
2901 fi | |
2902 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2903 test "${with_scrollbars}" != "no" && with_scrollbars=gtk |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2904 test "${with_toolbars}" != "no" && with_toolbars=gtk |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2905 test "${with_menubars}" != "no" && with_menubars=gtk |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2906 test "${with_dialogs}" != "no" && with_dialogs=gtk |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
2907 test "${with_widgets}" != "no" && with_widgets=gtk |
2651 | 2908 |
2909 dnl Check for libglade support (it rocks) | |
2910 OLD_CFLAGS="${CFLAGS}" | |
2911 OLD_CPPFLAGS="${CPPFLAGS}" | |
2912 OLD_LDFLAGS="${LDFLAGS}" | |
2913 CFLAGS="${GTK_CFLAGS} ${CFLAGS}" | |
2914 CPPFLAGS="${GTK_CFLAGS} ${CFLAGS}" | |
2915 LDFLAGS="${LDFLAGS} ${GTK_LIBS}" | |
2916 AC_CHECK_HEADERS(glade/glade.h glade.h) | |
2917 AC_CHECK_LIB(xml, main, XE_PREPEND(-lxml, libs_gtk)) | |
2918 AC_CHECK_LIB(glade, main, XE_PREPEND(-lglade, libs_gtk)) | |
2919 AC_CHECK_LIB(glade-gnome, main, XE_PREPEND(-lglade-gnome, libs_gtk)) | |
2920 AC_EGREP_HEADER([char \*txtdomain;], [glade/glade-xml.h], | |
2921 [AC_MSG_RESULT(yes) | |
2922 AC_DEFINE(LIBGLADE_XML_TXTDOMAIN,1)], | |
2923 [AC_MSG_RESULT(no)]) | |
2924 CFLAGS="${OLD_CFLAGS}" | |
2925 CPPFLAGS="${OLD_CPPFLAGS}" | |
2926 LDFLAGS="${OLD_LDFLAGS}" | |
2927 fi | |
2928 | |
2929 dnl We may eventually prefer gtk/gdk over vanilla X11... | |
2930 | |
2931 if test "$with_x11" != "no"; then | |
2932 dnl User-specified --x-includes or --x-libraries implies --with-x11. | |
2933 test "$x_includes $x_libraries" != "NONE NONE" && \ | |
2934 window_system=x11 with_x11=yes | |
2935 | |
2936 dnl Autodetection of X11 libraries and includes | |
2937 dnl ------------------------------------------- | |
2938 dnl AC_PATH_XTRA thinks it can find our X headers and includes, but | |
2939 dnl it often gets it wrong, so we only use it as a last resort. | |
2940 | |
2941 dnl $OPENWINHOME implies --x-includes and --x-libraries | |
2942 dnl Not (yet) handled by autoconf2 | |
2943 if test "$x_includes $x_libraries" = "NONE NONE" \ | |
2944 -a -n "$OPENWINHOME" \ | |
2945 -a "$OPENWINHOME" != "/usr/openwin" \ | |
2946 -a -d "$OPENWINHOME"; then | |
2947 test -d "$OPENWINHOME/lib" && x_libraries="$OPENWINHOME/lib" | |
2948 test -d "$OPENWINHOME/include" && x_includes="$OPENWINHOME/include" | |
2949 test -d "$OPENWINHOME/share/include" && x_includes="$OPENWINHOME/share/include" | |
2950 fi | |
2951 | |
2952 if test "$x_includes" = "NONE"; then | |
2953 dnl AC_PATH_XTRA often guesses /usr/include, when some other | |
2954 dnl include directory is a MUCH better guess (Linux, HP-UX 10.20). | |
2955 dnl This is a workaround for idiot (esp. HP) system vendors, who | |
2956 dnl provide a /usr/include/X11, but DON'T FULLY POPULATE IT. | |
2957 for dir in "/usr/X11" "/usr/X11R6"; do | |
2958 if test -d "$dir/include/X11"; then x_includes="$dir/include"; break; fi | |
2959 done | |
2960 fi | |
2961 | |
2962 if test "$x_libraries" = "NONE"; then | |
2963 for dir in "/usr/X11/lib" "/usr/X11R6/lib" "/usr/lib/X11R6"; do | |
2964 if test -r "$dir/libX11.a"; then x_libraries="$dir"; break; fi | |
2965 done | |
2966 fi | |
2967 | |
2968 AC_PATH_XTRA # Autoconf claims to find X library and include dirs for us. | |
2969 if test "$no_x" = "yes" | |
2970 then with_x11=no window_system=none HAVE_X_WINDOWS=no | |
2971 else with_x11=yes window_system=x11 HAVE_X_WINDOWS=yes | |
2972 fi | |
2973 fi | |
2974 | |
2975 dnl #### wmperry:: !x11 != NONE | |
2976 dnl case "$with_x11" in | |
2977 dnl yes ) window_system=x11 HAVE_X_WINDOWS=yes ;; | |
2978 dnl no ) window_system=none HAVE_X_WINDOWS=no ;; | |
2979 dnl esac | |
2980 | |
2981 if test "$with_x11" = "yes"; then | |
2982 AC_DEFINE(HAVE_X_WINDOWS) | |
2983 XE_APPEND(lwlib, MAKE_SUBDIR) | |
2984 XE_APPEND(lwlib, SRC_SUBDIR_DEPS) | |
2985 | |
2986 dnl Look for Motif, but only if not found in $x_includes and $x_libraries | |
2987 AC_CHECK_HEADER(Xm/Xm.h, [AC_CHECK_LIB(Xm, XmStringFree, got_motif=yes)]) | |
2988 | |
2989 if test "$got_motif" != "yes"; then | |
2990 dnl Try to find Motif/CDE/Tooltalk dirs | |
2991 dnl These take precedence over other X libs/includes, so PRE-pend | |
2992 for lib_dir in "/usr/dt/lib" "/usr/lib/Motif2.1" \ | |
2993 "/usr/lib/Motif1.2" "/usr/lib/Motif1.1"; do | |
2994 inc_dir=`echo $lib_dir | sed -e 's/lib/include/'` | |
2995 if test -d "$lib_dir" -a -d "$inc_dir"; then | |
2996 case "$x_libraries" in *"$lib_dir"* ) ;; *) | |
2997 x_libraries="$lib_dir $x_libraries" | |
2998 XE_PREPEND(-L${lib_dir}, X_LIBS) ;; | |
2999 esac | |
3000 case "$x_includes" in "$inc_dir"* ) ;; *) | |
3001 x_includes="$inc_dir $x_includes" | |
3002 XE_PREPEND(-I${inc_dir}, X_CFLAGS) ;; | |
3003 esac | |
3004 break; dnl only need ONE Motif implementation! | |
3005 fi | |
3006 done | |
3007 fi | |
3008 | |
3009 dnl Contrib X libs/includes do NOT take precedence, so AP-pend | |
3010 for rel in "X11R6" "X11R5" "X11R4"; do | |
3011 lib_dir="/usr/contrib/$rel/lib" inc_dir="/usr/contrib/$rel/include" | |
3012 if test -d "$lib_dir" -a -d "$inc_dir"; then | |
3013 case "$x_libraries" in *"$lib_dir"* ) ;; *) | |
3014 x_libraries="$x_libraries $lib_dir" | |
3015 XE_APPEND(-L${lib_dir}, X_LIBS) | |
3016 esac | |
3017 case "$x_includes" in "$inc_dir"* ) ;; *) | |
3018 x_includes="$x_includes $inc_dir" | |
3019 XE_APPEND(-I${inc_dir}, X_CFLAGS) | |
3020 esac | |
3021 break; dnl Only need ONE X11 implementation ! | |
3022 fi | |
3023 done | |
3024 | |
3025 ld_switch_x_site="$X_LIBS" | |
3026 | |
3027 XE_COMPUTE_RUNPATH() | |
3028 | |
3029 if test "$verbose" = "yes"; then | |
3030 echo; echo "X11 compilation variables:" | |
3031 PRINT_VAR(x_libraries x_includes X_CFLAGS X_LIBS X_PRE_LIBS X_EXTRA_LIBS) | |
3032 echo | |
3033 fi | |
3034 | |
3035 dnl Set up bitmaps search path. | |
3036 dnl The original suggestion was to unconditionally to append X11/bitmaps | |
3037 dnl to each element of $x_includes, I'm pretty sure this is the wrong | |
3038 dnl thing to do. We test for bitmaps and X11/bitmaps directories on each | |
3039 dnl element and add them to BITMAPDIR if they exist. | |
3040 bitmapdirs= | |
3041 if test "$x_includes" != NONE; then | |
3042 for i in $x_includes; do | |
3043 if test -d "$i/bitmaps"; then | |
3044 bitmapdirs="$i/bitmaps:$bitmapdirs" | |
3045 fi | |
3046 if test -d "$i/X11/bitmaps"; then | |
3047 bitmapdirs="$i/X11/bitmaps:$bitmapdirs" | |
3048 fi | |
3049 done | |
3050 bitmapdirs=`echo "$bitmapdirs" | sed s/.$//` | |
3051 fi | |
3052 test ! -z "$bitmapdirs" && AC_DEFINE_UNQUOTED(BITMAPDIR, "$bitmapdirs") | |
3053 | |
3054 dnl Autodetect defines extracted from X config by xmkmf, e.g. NARROWPROTO | |
3312 | 3055 AC_MSG_CHECKING([for X defines extracted by xmkmf]) |
3056 AC_MSG_RESULT() | |
2651 | 3057 rm -fr conftestdir |
3058 if mkdir conftestdir; then | |
3059 cd conftestdir | |
3060 cat > Imakefile <<'EOF' | |
3061 xetest: | |
3062 @echo ${PROTO_DEFINES} ${STD_DEFINES} | |
3063 EOF | |
3064 if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then | |
3065 # GNU make sometimes prints "make[1]: Entering...", which would confuse us. | |
3066 xmkmf_defines=`${MAKE-make} xetest 2>/dev/null | grep -v make` | |
3067 fi | |
3068 cd .. | |
3069 rm -fr conftestdir | |
3070 for word in $xmkmf_defines; do | |
3071 case "$word" in | |
3072 -D__STDC__*) ;; | |
3073 -D* ) | |
3074 sym=`echo '' $word | sed -e 's:^ *-D::' -e 's:=.*::'` | |
3075 case "$word" in | |
3076 -D*=* ) val=`echo '' $word | sed -e 's:^.*=::'` ;; | |
3077 * ) val=1 ;; | |
3078 esac | |
3079 dnl Avoid re-AC_DEFINE-ing xmkmf symbols we've already defined above. | |
3080 if grep "^#define $sym " confdefs.h >/dev/null; then :; else | |
3081 if test "$val" = "1" | |
3082 then AC_DEFINE_UNQUOTED($sym) | |
3083 else AC_DEFINE_UNQUOTED($sym,$val) | |
3084 fi | |
3085 fi ;; | |
3086 esac | |
3087 done | |
3088 fi | |
3089 | |
3090 dnl make sure we can find Intrinsic.h | |
3091 AC_CHECK_HEADER(X11/Intrinsic.h, , | |
3092 [AC_MSG_ERROR([Unable to find X11 header files.])]) | |
3093 | |
3094 dnl -lXt and -lX11 are required | |
3095 dnl Some broken systems require the magic "-b i486-linuxaout" flag | |
3096 AC_CHECK_LIB(X11, XOpenDisplay, have_lib_x11=yes) | |
3097 if test "$have_lib_x11" != "yes"; then | |
3098 AC_CHECK_LIB(X11, XGetFontProperty, | |
3099 ld_switch_x_site="-b i486-linuxaout $ld_switch_x_site", | |
3100 [AC_MSG_ERROR([Unable to find X11 libraries.])], | |
3101 -b i486-linuxaout) | |
3102 fi | |
3103 libs_x="-lX11" | |
3104 test "$verbose" = "yes" && echo " Setting libs_x to \"-lX11\"" | |
3105 | |
3106 dnl Autodetect -lXext | |
3107 AC_CHECK_LIB(Xext, XShapeSelectInput, XE_PREPEND(-lXext, libs_x)) | |
3108 | |
3109 dnl Require -lXt | |
3110 AC_CHECK_LIB(Xt, XtOpenDisplay, XE_PREPEND(-lXt, libs_x), | |
3111 AC_MSG_ERROR([Unable to find X11 libraries.])) | |
3112 | |
3113 AC_MSG_CHECKING(the version of X11 being used) | |
3114 AC_RUN_IFELSE([AC_LANG_SOURCE([#include <X11/Intrinsic.h> | |
4537
7ca6d57ce12d
Clarify syntax in configure.ac following Vladimir Ivanovic's change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4536
diff
changeset
|
3115 int main(int c, char **v) { return c>1 ? XlibSpecificationRelease : 0; }])], |
2651 | 3116 [./conftest foobar; x11_release=$?],[x11_release=4],[x11_release=4]) |
3117 AC_MSG_RESULT(R${x11_release}) | |
3118 AC_DEFINE_UNQUOTED(THIS_IS_X11R${x11_release}) | |
3119 | |
3120 if test "${x11_release}" = "4"; then | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3121 case "$with_widgets" in |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3122 "" | "no") with_widgets=no ;; |
2651 | 3123 *) XE_DIE("Widget support requires X11R5 or greater") ;; |
3124 esac | |
3125 fi | |
3126 | |
3127 AC_CHECK_FUNCS(XConvertCase XtRegisterDrawable) | |
3128 | |
3129 AC_CHECK_HEADERS(X11/Xlocale.h X11/Xfuncproto.h) | |
3130 | |
3131 dnl XFree86 has a non-standard prototype for this X11R6 function | |
3132 AC_CHECK_FUNCS(XRegisterIMInstantiateCallback) | |
3133 AC_MSG_CHECKING(for standard XRegisterIMInstantiateCallback prototype) | |
3312 | 3134 AC_COMPILE_IFELSE([AC_LANG_SOURCE([ |
2651 | 3135 #define NeedFunctionPrototypes 1 |
3136 #include <X11/Xlib.h> | |
3137 extern Bool XRegisterIMInstantiateCallback( | |
3138 Display*, struct _XrmHashBucketRec*, char*, char*, XIMProc, XPointer*); | |
3312 | 3139 ])], |
2651 | 3140 [AC_MSG_RESULT(yes)], |
3141 [AC_MSG_RESULT(no) | |
3142 AC_DEFINE(XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE)]) | |
3143 | |
3144 dnl autodetect -lXmu | |
4769
5460287a3327
Remove support for pre-X11R5 systems, including systems without Xmu. See
Jerry James <james@xemacs.org>
parents:
4762
diff
changeset
|
3145 AC_CHECK_LIB(Xmu, XmuReadBitmapDataFromFile, with_xmu=yes, with_xmu=no) |
2651 | 3146 if test "$with_xmu" = "no"; then |
4769
5460287a3327
Remove support for pre-X11R5 systems, including systems without Xmu. See
Jerry James <james@xemacs.org>
parents:
4762
diff
changeset
|
3147 AC_MSG_ERROR([We're sorry, but we thought there were no systems without Xmu by now. |
5460287a3327
Remove support for pre-X11R5 systems, including systems without Xmu. See
Jerry James <james@xemacs.org>
parents:
4762
diff
changeset
|
3148 You cannot build this version of XEmacs for X11 without Xmu. Please report |
5460287a3327
Remove support for pre-X11R5 systems, including systems without Xmu. See
Jerry James <james@xemacs.org>
parents:
4762
diff
changeset
|
3149 this to xemacs-beta@xemacs.org. As a workaround, revert to XEmacs 21.5.29.]) |
2651 | 3150 else |
3151 XE_PREPEND(-lXmu, libs_x) | |
3152 fi | |
3153 | |
3154 dnl Autodetect -lXbsd | |
3155 dnl #### Someone, please add a better function than main | |
3156 AC_CHECK_LIB(Xbsd, main, XE_PREPEND(-lXbsd, libs_x)) | |
3157 | |
3158 dnl Problem with the MIT distribution of X on AIX | |
3159 if test "$unexec" = "unexaix.o" -a "$x11_release" = "6"; then | |
3160 dnl X11R6 requires thread-safe code on AIX for some reason | |
3161 if test "$GCC" = "yes"; then | |
3162 XE_PREPEND(-mthreads, X_CFLAGS) | |
3163 XE_PREPEND(-mthreads, libs_x) | |
3164 else | |
3165 case "$CC" in | |
3166 "xlc" ) CC="xlc_r" ;; | |
3167 "xlC" ) CC="xlC_r" ;; | |
3168 "cc" ) CC="cc_r" ;; | |
3169 esac | |
3170 fi | |
3171 fi | |
3172 | |
3094 | 3173 dnl include xft/AA support? |
3174 dnl #### need to check for includes here (especially, freetype.h for v.2) | |
3175 | |
3176 if test "$with_xft_emacs" = "yes"; then | |
3312 | 3177 AC_MSG_CHECKING([for Xrender, fontconfig, and Xft]) |
3094 | 3178 xft_includes_found=no |
4152 | 3179 dnl try pkg-config |
3180 xft_config_prog="pkg-config xft" | |
3181 xft_config_ok=`$xft_config_prog --cflags 2>/dev/null` | |
3182 if test "$?" = 0 ; then | |
3183 xft_cflags=`$xft_config_prog --cflags` | |
3184 xft_libs=`$xft_config_prog --libs` | |
3185 c_switch_site="$c_switch_site $xft_cflags" | |
3186 ld_switch_site="$ld_switch_site $xft_libs" | |
3187 xft_includes_found=yes | |
3188 else | |
3189 AC_CHECK_HEADERS([freetype/config/ftheader.h], | |
3190 [xft_includes_found=yes], | |
3191 [ | |
3192 dnl #### How about /sw/include, and /opt/local/include? | |
3193 dnl these directories need to be the parent of the freetype directory | |
3194 for freetype_include_top in "/usr/local/include/freetype2" \ | |
3195 "/usr/X11R6/include/freetype2" \ | |
3196 "/usr/include/freetype2" | |
3197 do | |
3198 if test -d $freetype_include_top; then | |
3199 AC_MSG_CHECKING([in ${freetype_include_top}]) | |
3200 dnl disable autoconf's fucking cache; why these fuckheads think it | |
3201 dnl is better to be broken than to be slow, I don't know! | |
3202 dnl #### there's gotta be a better-looking way to do this!! | |
3203 unset "$as_ac_Header" | |
3204 save_c_switch_site="$c_switch_site" | |
3205 c_switch_site="$c_switch_site -I${freetype_include_top}" | |
3206 AC_CHECK_HEADERS([freetype/config/ftheader.h], | |
3207 [xft_includes_found=yes], | |
3208 [c_switch_site=$save_c_switch_site]) | |
3209 fi | |
3210 done]) | |
3211 fi | |
3158 | 3212 if test "$xft_includes_found" != "yes"; then |
3213 XE_DIE(["Unable to find headers for --with-xft"]) | |
3214 else | |
3215 AC_CHECK_LIB(Xrender, XRenderQueryExtension, XE_PREPEND(-lXrender, libs_x), | |
3216 [XE_DIE(["Unable to find libXrender for --with-xft"])]) | |
3217 AC_CHECK_LIB(fontconfig, FcPatternCreate, XE_PREPEND(-lfontconfig, libs_x), | |
3218 [XE_DIE(["Unable to find libfontconfig for --with-xft"])]) | |
3219 AC_CHECK_LIB(Xft, XftFontOpen, XE_PREPEND(-lXft, libs_x), | |
3220 [XE_DIE(["Unable to find libXft for --with-xft"])]) | |
4328
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4152
diff
changeset
|
3221 |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4152
diff
changeset
|
3222 AC_CHECK_FUNCS(FcConfigGetRescanInterval) |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4152
diff
changeset
|
3223 AC_CHECK_FUNCS(FcConfigSetRescanInterval) |
3354 | 3224 dnl #### detect fontconfig properly!!!! |
3225 with_fontconfig=yes | |
3226 AC_DEFINE(HAVE_FONTCONFIG) | |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4848
diff
changeset
|
3227 AC_DEFINE(HAVE_XFT) |
3158 | 3228 dnl Due to interactions with other libraries, must postpone AC_DEFINE |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4848
diff
changeset
|
3229 dnl of HAVE_XFT_MENUBARS, HAVE_XFT_TABS, and HAVE_XFT_GAUGES. |
3158 | 3230 unset xft_includes_found |
3231 fi | |
3094 | 3232 fi |
3233 | |
2651 | 3234 fi dnl $with_x11 = yes |
3235 | |
3236 if test "$with_msw" != "no"; then | |
3312 | 3237 AC_MSG_CHECKING([for MS-Windows]) |
3238 AC_MSG_RESULT() | |
2651 | 3239 AC_CHECK_LIB(gdi32,main,with_msw=yes) |
3240 if test "$with_msw" = "yes"; then | |
3241 AC_DEFINE(HAVE_MS_WINDOWS) | |
3242 | |
3243 dnl The net installer only works with MS-Windows currently | |
3244 if test "$with_netinstall" = "yes"; then | |
3245 XE_APPEND(netinstall, MAKE_SUBDIR) | |
3246 XE_APPEND(netinstall, SRC_SUBDIR_DEPS) | |
3247 XE_APPEND(netinstall, INSTALL_ARCH_DEP_SUBDIR) | |
3248 fi | |
3249 | |
3250 install_pp="$srcdir/lib-src/installexe.sh" | |
3251 XE_APPEND(-limm32 -lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lole32 -luuid -lwinspool -lmpr, libs_system) | |
3252 if test "$with_dragndrop" != no; then | |
3253 XE_APPEND(msw, dragndrop_proto) | |
3254 with_dragndrop=yes | |
3255 fi | |
3256 if test "$window_system" != x11; then | |
3257 window_system=msw | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3258 test "$with_scrollbars" != "no" && with_scrollbars=msw |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3259 test "$with_menubars" != "no" && with_menubars=msw |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3260 test "$with_toolbars" != "no" && with_toolbars=msw |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3261 test "$with_dialogs" != "no" && with_dialogs=msw |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3262 test "$with_widgets" != "no" && with_widgets=msw |
2651 | 3263 fi |
3264 dnl check for our special version of select | |
3265 AC_RUN_IFELSE([AC_LANG_SOURCE([#include <fcntl.h> | |
3266 int main() { return (open("/dev/windows", O_RDONLY, 0) > 0)? 0 : 1; }])], | |
3267 [AC_DEFINE(HAVE_MSG_SELECT)]) | |
3268 fi | |
3269 fi | |
3270 | |
3271 AC_SUBST(install_pp) | |
3272 | |
3273 test -z "$with_dragndrop" && with_dragndrop="$with_dragndrop_default" | |
3274 test -z "$window_system" && window_system="none" | |
3275 | |
3276 dnl Test for features that require a window system - ANY window system | |
3277 if test "$window_system" = "none"; then | |
3278 for feature in menubars scrollbars toolbars dialogs dragndrop xface | |
3279 do | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3280 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3281 AC_MSG_WARN([--with-$feature ignored: Not valid without window system support]) |
2651 | 3282 fi |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3283 eval "with_${feature}=no" |
2651 | 3284 done |
3285 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3286 test -z "$with_toolbars" && with_toolbars=yes |
2651 | 3287 fi |
3288 | |
3289 dnl ### Test for features that require mswindows support - currently none | |
3290 dnl ### MS-Windows folks: add code here..... (martin) | |
3291 if test "$with_msw" != "yes"; then | |
3292 for feature in MARTIN_IS_CLUELESS_ABOUT_MSW_FEATURES | |
3293 do | |
3294 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then | |
3295 AC_MSG_WARN([--with-$feature ignored: Not valid without MS-Windows support]) | |
3296 fi | |
3297 eval "with_${feature}=no" | |
3298 done | |
3299 else | |
3300 : | |
3301 fi | |
3302 | |
3303 dnl Test for features that require X11 support | |
3304 if test "$with_x11" != "yes"; then | |
3305 dnl It ought to be reasonable to have no output device at all, and only use | |
3306 dnl XEmacs in --batch mode. | |
3307 dnl if test "$with_tty" = "no" ; then | |
3308 dnl AC_MSG_ERROR([No window system support and no TTY support - Unable to proceed.]) | |
3309 dnl fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3310 for feature in with_tooltalk with_cde with_wmcommand with_xim with_sound_nas |
2651 | 3311 do |
3312 if eval "test -n \"\$${feature}\" -a \"\$${feature}\" != \"no\"" ; then | |
3313 AC_MSG_WARN([--$feature ignored: Not valid without X support]) | |
3314 fi | |
3315 eval "${feature}=no" | |
3316 done | |
3317 fi | |
3318 | |
3319 dnl Balloon Help requires the Shape extension, not available everywhere, | |
3320 dnl for example not on AIX 4.3. | |
3321 if test "$with_x11" = "yes"; then | |
3322 AC_CHECK_HEADER(X11/extensions/shape.h, [ | |
3323 AC_DEFINE(HAVE_BALLOON_HELP) | |
2741 | 3324 ],[], |
3325 [ | |
3326 #include <X11/Xlib.h> | |
3327 #include <X11/Xutil.h> | |
3328 ]) | |
2651 | 3329 fi |
3330 | |
3331 dnl FSF 19.29 has some bitmapdir stuff here. | |
3332 bitmapdir= | |
3333 | |
3334 case "$window_system" in | |
3335 x11 ) HAVE_X_WINDOWS=yes; echo " Using X11." ;; | |
3336 msw ) HAVE_X_WINDOWS=no ; echo " Using MS-Windows." ;; | |
3337 gtk ) | |
3338 HAVE_X_WINDOWS=no | |
3339 test "$with_gnome" = "yes" && echo " Using GNOME." | |
3340 test "$with_gnome" = "no" && echo " Using GTK." | |
3341 ;; | |
3342 none ) HAVE_X_WINDOWS=no ; echo " Using no window system." ;; | |
3343 esac | |
3344 | |
3345 dnl Enable or disable proper handling of WM_COMMAND | |
3312 | 3346 AC_MSG_CHECKING([for WM_COMMAND option]) |
2651 | 3347 dnl if test "$with_wmcommand" = "yes"; then |
3348 if test "$with_wmcommand" != "no"; then | |
3349 AC_DEFINE(HAVE_WMCOMMAND) | |
3312 | 3350 AC_MSG_RESULT(yes) |
3351 else | |
3352 AC_MSG_RESULT(no) | |
2651 | 3353 fi |
3354 | |
3355 dnl Autodetect Xauth | |
3356 dnl -lXau is only used by gnuclient, so use a special variable for Xauth X libs | |
3357 test -z "$with_xauth" && test "$window_system" = "none" && with_xauth=no | |
3358 test -z "$with_xauth" && { AC_CHECK_HEADER(X11/Xauth.h, ,with_xauth=no) } | |
3359 test -z "$with_xauth" && { AC_CHECK_LIB(Xau, XauGetAuthByAddr,[:],with_xauth=no) } | |
3360 test -z "$with_xauth" && with_xauth=yes | |
3361 if test "$with_xauth" = "yes"; then | |
3362 AC_DEFINE(HAVE_XAUTH) | |
3363 XE_SPACE(libs_xauth, $GTK_LIBS $X_EXTRA_LIBS -lXau $libs_x $X_PRE_LIBS) | |
3364 fi | |
3365 AC_SUBST(libs_xauth) | |
3366 | |
3367 dnl This one is for the static initializeds variables in | |
3368 dnl offix.c, so that the thing is dumped after lastfile.o | |
3369 AC_SUBST(dnd_objs) | |
3370 | |
3371 dnl Autodetect dll support | |
3372 | |
3373 dnl If g++ is used, we have to explicitly link modules with -lstdc++ on Cygwin | |
3374 dnl to avoid undefined symbol errors. This will never hurt, so just do it on | |
3375 dnl all platforms in case others have the same brain damage. | |
4932 | 3376 if test "$XEMACS_CC_GPP" = "yes"; then |
2651 | 3377 LIBSTDCPP=-lstdc++ |
3378 else | |
3379 LIBSTDCPP= | |
3380 fi | |
3381 AC_SUBST(LIBSTDCPP) | |
3382 | |
3383 dnl This must come before the detection code for anything that is in a module | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3384 if test "$with_modules" != "no"; then |
3312 | 3385 AC_MSG_CHECKING([for module support]) |
3386 AC_MSG_RESULT() | |
2651 | 3387 |
3388 case "$opsys" in | |
3389 mingw* | cygwin* ) have_dl=yes ;; | |
3390 darwin ) have_dl=yes | |
3391 AC_DEFINE(HAVE_DYLD) | |
3392 ;; | |
3393 * ) | |
3394 dnl Check for the ELFish dlopen() | |
3395 AC_CHECK_HEADER(dlfcn.h, [ | |
3396 AC_MSG_CHECKING([for dlopen in -lc]) | |
3312 | 3397 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <dlfcn.h>], |
3398 [dlopen ("", 0);])], [ have_dl=yes ; AC_MSG_RESULT($have_dl)], [ | |
2741 | 3399 AC_MSG_RESULT([no]) |
2651 | 3400 AC_MSG_CHECKING([for dlopen in -ldl]) |
3401 ac_save_LIBS="$LIBS" | |
3402 LIBS="$LIBS -ldl" | |
3312 | 3403 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <dlfcn.h>], |
3404 [dlopen ("", 0);])], [ have_dl=yes; AC_MSG_RESULT($have_dl)], [ | |
2741 | 3405 AC_MSG_RESULT([no]) |
2651 | 3406 AC_MSG_CHECKING([for dlopen in -lsvld]) |
3407 LIBS="$ac_save_LIBS -lsvld" | |
3312 | 3408 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <dlfcn.h>], |
3409 [dlopen ("", 0);])], [ have_dl=yes; AC_MSG_RESULT($have_dl) ], | |
2741 | 3410 [LIBS="$ac_save_LIBS" ; AC_MSG_RESULT([no])])])])]) |
2651 | 3411 if test "$have_dl" = "yes"; then |
3412 AC_DEFINE(HAVE_DLOPEN) | |
3413 else | |
3414 dnl Check for HP/UX shl_load | |
3415 AC_CHECK_HEADER(dl.h, [ | |
3416 AC_MSG_CHECKING([for shl_load in -lc]) | |
3312 | 3417 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <dl.h>], |
3418 [shl_load ("", 0, 0);])], [have_dl=yes; AC_MSG_RESULT($have_dl)], [ | |
2741 | 3419 AC_MSG_RESULT([no]) |
2651 | 3420 AC_MSG_CHECKING([for shl_load in -ldl]) |
3421 ac_save_LIBS="$LIBS" | |
3422 LIBS="$LIBS -ldld" | |
3312 | 3423 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <dl.h>], |
3424 [shl_load ("", 0, 0);])], [have_dl=yes], | |
2741 | 3425 [LIBS="$ac_save_LIBS"; AC_MSG_RESULT([no])])])]) |
2651 | 3426 if test "$have_dl" = "yes"; then |
3427 AC_DEFINE(HAVE_SHL_LOAD) | |
3428 else | |
3429 dnl Check for libtool's libltdl | |
3430 AC_CHECK_HEADER(ltdl.h, [ | |
3431 AC_MSG_CHECKING([for lt_dlinit in -lltdl]) | |
3432 ac_save_LIBS="$LIBS" | |
3433 LIBS="$LIBS -lltdl" | |
3312 | 3434 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <ltdl.h>], |
3435 [lt_dlinit ();])], [have_dl=yes], [LIBS="$ac_save_LIBS"])]) | |
2741 | 3436 AC_MSG_RESULT($have_dl) |
2651 | 3437 if test "$have_dl" = "yes"; then |
3438 AC_DEFINE(HAVE_LTDL) | |
3439 fi | |
3440 dnl end !HP/UX | |
3441 fi | |
3442 dnl end !dlopen | |
3443 fi | |
3444 ac_save_LIBS= | |
3445 dnl end !darwin | |
3446 esac | |
3447 | |
3448 if test -n "$have_dl"; then | |
3449 dnl XE_SHLIB_STUFF (in aclocal.m4) defines $can_build_shared | |
3450 XE_SHLIB_STUFF | |
3451 fi | |
3452 | |
3453 if test "$can_build_shared" = "yes"; then | |
3454 AC_DEFINE(HAVE_SHLIB) | |
3455 dnl src must be built before modules on MacOSX and Windows platforms, since | |
3456 dnl the binary must be available to properly link the modules | |
3457 dnl For no-module builds, this is added *after* the module directories | |
3458 XE_APPEND(src, MAKE_SUBDIR) | |
3459 XE_APPEND(src, INSTALL_ARCH_DEP_SUBDIR) | |
3460 test -n "$libdl" && XE_PREPEND(-l${libdl}, LIBS) | |
3461 AC_CHECK_FUNCS(dlerror _dlerror) | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3462 with_modules=yes |
2651 | 3463 MOD_CC="../../lib-src/ellcc" |
3464 MODCFLAGS="\$(CFLAGS) --mode=compile --mod-output=\$@ -I../../src -I\$(srcdir)/../../src" | |
3465 INSTALLPATH="\$(moduledir)" | |
3466 MOD_INSTALL_PROGRAM=${INSTALL_PROGRAM} | |
3467 OBJECT_TO_BUILD="\$(MODNAME).ell" | |
3468 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3469 if test "$with_modules" = "yes"; then |
2651 | 3470 XE_DIE("Required module support cannot be provided.") |
3471 else | |
3472 echo " No module support." | |
3473 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3474 with_modules=no |
2651 | 3475 fi |
3476 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3477 if test "$with_modules" != "yes"; then |
2651 | 3478 MOD_CC="$XEMACS_CC" |
3479 MODCFLAGS="\$(XE_CFLAGS) -I../../src -I\$(srcdir)/../../src" | |
3480 INSTALLPATH="" | |
3481 MOD_INSTALL_PROGRAM="true" | |
3482 OBJECT_TO_BUILD="\$(MODNAME).o" | |
3483 fi | |
3484 MODARCHDIR= | |
3485 MAKE_DOCFILE="../../lib-src/make-docfile" | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3486 AC_SUBST(with_modules, $with_modules) |
2651 | 3487 AC_SUBST(MOD_CC) |
3488 AC_SUBST(MODARCHDIR) | |
3489 AC_SUBST(MAKE_DOCFILE) | |
3490 AC_SUBST(MODCFLAGS) | |
3491 AC_SUBST(INSTALLPATH) | |
3492 AC_SUBST(MOD_INSTALL_PROGRAM) | |
3493 AC_SUBST(OBJECT_TO_BUILD) | |
3494 | |
3495 dnl Autodetect tooltalk | |
3496 if test "$with_tooltalk" != "no" ; then | |
3497 dnl autodetect the location of tt_c.h | |
3498 dnl tt_c.h might be in Tt or desktop include directories | |
3499 for dir in "" "Tt/" "desktop/" ; do | |
3500 AC_CHECK_HEADER(${dir}tt_c.h, tt_c_h_file="${dir}tt_c.h"; break) | |
3501 done | |
3502 if test -z "$tt_c_h_file"; then | |
3503 if test "$with_tooltalk" = "yes"; then | |
3504 USAGE_ERROR("Unable to find required tooltalk header files.") | |
3505 fi | |
3506 with_tooltalk=no | |
3507 fi | |
3508 fi | |
3509 if test "$with_tooltalk" != "no" ; then | |
3510 for extra_libs in "" "-lI18N -lce" "-lcxx"; do | |
3511 AC_CHECK_LIB(tt, tt_message_create, | |
3512 tt_libs="-ltt $extra_libs"; break, [:],$extra_libs) | |
3513 done | |
3514 if test -z "$tt_libs"; then | |
3515 if test "$with_tooltalk" = "yes"; then | |
3516 USAGE_ERROR("Unable to find required tooltalk libraries.") | |
3517 fi | |
3518 with_tooltalk=no | |
3519 fi | |
3520 fi | |
3521 test -z "$with_tooltalk" && with_tooltalk=yes | |
3522 if test "$with_tooltalk" = "yes"; then | |
3523 AC_DEFINE(TOOLTALK) | |
3524 AC_DEFINE_UNQUOTED(TT_C_H_FILE, "$tt_c_h_file") | |
3525 XE_PREPEND($tt_libs, libs_x) | |
3526 fi | |
3527 | |
3528 dnl Autodetect CDE | |
3529 test -z "$with_cde" && { AC_CHECK_HEADER(Dt/Dt.h, , with_cde=no) } | |
3530 test -z "$with_cde" && { AC_CHECK_LIB(DtSvc, DtDndDragStart, [:], with_cde=no) } | |
3531 if test "$with_dragndrop" = "no" ; then | |
3532 if test "$with_cde" = "yes" ; then | |
3312 | 3533 AC_MSG_WARN([--with-cde forced to `no'; no generic Drag'n'Drop support]) |
2651 | 3534 fi |
3535 with_cde=no | |
3536 fi | |
3537 test -z "$with_cde" && with_cde=yes | |
3538 if test "$with_cde" = "yes" ; then | |
3539 AC_DEFINE(HAVE_CDE) | |
3540 XE_PREPEND(-lDtSvc, libs_x) | |
3541 XE_APPEND(CDE, dragndrop_proto) | |
3542 with_tooltalk=yes # CDE requires Tooltalk | |
3543 need_motif=yes # CDE requires Motif | |
3544 fi | |
3545 | |
3546 if test "$with_gtk" = "yes"; then | |
3547 XE_APPEND(GTK, dragndrop_proto) | |
3548 fi | |
3549 | |
3550 dnl Autodetect Drag'n'Drop support | |
4790
bc4f2511bbea
Remove support for the OffiX drag-and-drop protocol. See xemacs-patches
Jerry James <james@xemacs.org>
parents:
4769
diff
changeset
|
3551 dnl always included if CDE or MSWindows is defined |
2651 | 3552 if test "$with_dragndrop" != "no" ; then |
3553 AC_MSG_CHECKING(if drag and drop API is needed) | |
3554 if test -n "$dragndrop_proto" ; then | |
3555 with_dragndrop=yes | |
3556 AC_MSG_RESULT([yes (${dragndrop_proto} )]) | |
3557 AC_DEFINE(HAVE_DRAGNDROP) | |
3558 XE_APPEND(dragdrop.o, extra_objs) | |
3559 else | |
3560 with_dragndrop=no | |
3561 AC_MSG_RESULT(no) | |
3562 fi | |
3563 fi | |
3564 | |
3565 dnl Autodetect LDAP | |
3312 | 3566 AC_MSG_CHECKING([for LDAP]) |
3567 AC_MSG_RESULT() | |
2651 | 3568 ldap_libs= |
3569 test -z "$with_ldap" && { AC_CHECK_HEADER(ldap.h, ,with_ldap=no) } | |
3570 test -z "$with_ldap" && { AC_CHECK_HEADER(lber.h, ,with_ldap=no) } | |
3571 if test "$with_ldap" != "no"; then | |
3572 AC_CHECK_LIB(ldap, ldap_search, with_ldap=yes) | |
3573 dnl Check for other libraries we need to link with to get the main routines. | |
3574 test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes], , -llber) } | |
3575 test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes], , -llber -lkrb) } | |
3576 test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes with_ldap_des=yes], , -llber -lkrb -ldes) } | |
3577 dnl Recently, we need -lber even though the main routines are elsewhere, | |
3578 dnl because otherwise be get link errors w.r.t. ber_pvt_opt_on. So just | |
3579 dnl check for that (it's a variable not a fun but that doesn't seem to | |
3580 dnl matter in these checks) and stick in -lber if so. Can't hurt (even to | |
3581 dnl stick it in always shouldn't hurt, I don't think) ... #### Someone who | |
3582 dnl #### understands LDAP needs to fix this properly. | |
3583 test "$with_ldap_lber" != "yes" && { AC_CHECK_LIB(lber, ber_pvt_opt_on, with_ldap_lber=yes) } | |
3584 fi | |
3585 if test "$with_ldap" = "yes"; then | |
3586 AC_DEFINE(HAVE_LDAP) | |
3587 if test "$with_ldap_des" = "yes" ; then | |
3588 XE_PREPEND(-ldes, ldap_libs) | |
3589 fi | |
3590 if test "$with_ldap_krb" = "yes" ; then | |
3591 XE_PREPEND(-lkrb, ldap_libs) | |
3592 fi | |
3593 if test "$with_ldap_lber" = "yes" ; then | |
3594 XE_PREPEND(-llber, ldap_libs) | |
3595 fi | |
3596 XE_PREPEND(-lldap, ldap_libs) | |
3597 save_LIBS="$LIBS" LIBS="$LIBS $ldap_libs" | |
3598 AC_CHECK_FUNCS(ldap_set_option ldap_get_lderrno ldap_result2error ldap_parse_result) | |
3599 LIBS="$save_LIBS" | |
3600 XE_APPEND(modules/ldap, MAKE_SUBDIR) | |
3601 need_modules_common=yes | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3602 if test "$with_modules" = "yes"; then |
2651 | 3603 XE_APPEND(modules/ldap, INSTALL_ARCH_DEP_SUBDIR) |
3604 fi | |
3605 fi | |
3606 AC_SUBST(ldap_libs) | |
3607 | |
3608 dnl Autodetect PostgreSQL | |
3609 dnl On many Linux systems, PostgreSQL is packaged to be installed in /usr; | |
3610 dnl in this case, configure will easily detect it there. | |
3611 dnl | |
3612 dnl If PostgreSQL is installed into a different prefix, | |
3613 dnl (such as the default /usr/local/pgsql when building from source), | |
3614 dnl that prefix must be specified using the --with-site-prefixes flag. | |
3615 postgresql_libs= | |
3616 if test "$with_postgresql" != "no"; then | |
3312 | 3617 AC_MSG_CHECKING([for PostgreSQL]) |
3618 AC_MSG_RESULT() | |
2651 | 3619 |
3620 dnl Look for these standard header file locations, known to be used on Linux | |
3621 for header_dir in "" "pgsql/" "postgresql/"; do | |
3622 AC_CHECK_HEADER(${header_dir}libpq-fe.h, | |
3623 libpq_fe_h_file=${header_dir}libpq-fe.h; break) | |
3624 done | |
3625 | |
3050 | 3626 pq_libs= |
3627 extra_libs= | |
3628 if test -n "$libpq_fe_h_file"; then | |
3629 dnl #### Would it be nicer to do this with a loop? | |
3630 dnl It seems unlikely that checking for SSL/crypto support can hurt, | |
3631 dnl even if it's found. | |
3632 AC_CHECK_LIB(pq, PQconnectdb,[pq_libs="-lpq"],[ | |
3633 unset ac_cv_lib_pq_PQconnectdb; | |
3634 AC_CHECK_LIB(pq, PQconnectdb,[pq_libs="-lpq -lcrypto -lssl"],, | |
3635 [-lcrypto -lssl])]) | |
3636 if test -z "$pq_libs"; then | |
3637 have_libpq="no" | |
3638 else | |
3639 have_libpq="yes" | |
3640 fi | |
3641 fi | |
2651 | 3642 |
3643 if test -n "$libpq_fe_h_file" -a "$have_libpq" = "yes"; then | |
3644 with_postgresql=yes | |
3645 AC_DEFINE(HAVE_POSTGRESQL) | |
3646 AC_CHECK_LIB(pq,PQconnectStart, [ | |
3647 with_postgresqlv7=yes; | |
3050 | 3648 AC_DEFINE(HAVE_POSTGRESQLV7)], [:], $extra_libs) |
2651 | 3649 AC_DEFINE_UNQUOTED(LIBPQ_FE_H_FILE, "$libpq_fe_h_file") |
3050 | 3650 XE_PREPEND([$pq_libs], postgresql_libs) |
2651 | 3651 XE_APPEND(modules/postgresql, MAKE_SUBDIR) |
3652 need_modules_common=yes | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3653 if test "$with_modules" = "yes"; then |
2651 | 3654 XE_APPEND(modules/postgresql, INSTALL_ARCH_DEP_SUBDIR) |
3655 fi | |
3656 elif test "$with_postgresql" = "yes"; then | |
3657 XE_DIE("Required PostgreSQL support cannot be provided. Check --with-site-prefixes.") | |
3658 fi | |
3659 fi | |
3660 AC_SUBST(postgresql_libs) | |
3661 | |
3662 dnl ---------------------- | |
3663 dnl Graphics libraries | |
3664 dnl ---------------------- | |
3665 | |
3666 if test "$window_system" != "none"; then | |
3312 | 3667 AC_MSG_CHECKING([for graphics libraries]) |
3668 AC_MSG_RESULT() | |
2651 | 3669 |
3670 dnl add special code to handle xpm-nox on Cygwin (csw) | |
3671 dnl -- should only happen if CYGWIN && WITH_XPM && WITH_MSW && !WITH_X | |
3672 libpath_xpm= | |
3673 incpath_xpm= | |
3727 | 3674 libname_xpm="-lXpm" |
2651 | 3675 case "$opsys" in |
3676 cygwin*) | |
3228 | 3677 cygwin_top=`eval gcc -print-search-dirs | sed -ne s'/install: //p'` |
3678 cygwin_top=`eval "cd $cygwin_top/../../../..; pwd"` | |
2651 | 3679 case "$window_system" in |
3680 dnl use "standard" search pattern | |
3681 x11) ;; | |
3682 dnl hardcode "standard" non-X11 xpm lib/inc dirs | |
3683 msw) libpath_xpm="-L${cygwin_top}/lib/noX" | |
3684 incpath_xpm="-I${cygwin_top}/include/noX" | |
3727 | 3685 libname_xpm="-lXpm-noX" |
2651 | 3686 ;; |
3687 dnl not supported on cygwin (yet?) | |
3688 gtk) ;; | |
3689 dnl probably not reached... | |
3690 none) ;; | |
3691 dnl ditto | |
3692 *) ;; | |
3693 esac | |
3694 ;; | |
3695 dnl use "standard" search pattern for all other OS's | |
3696 *) ;; | |
3697 esac | |
3698 dnl Autodetect Xpm | |
3699 xpm_problem="" | |
3700 if test -z "$with_xpm"; then | |
3701 XE_PREPEND("$incpath_xpm", CFLAGS) | |
2940 | 3702 XE_PREPEND("$incpath_xpm", XE_CFLAGS) |
2651 | 3703 XE_PREPEND("$libpath_xpm", LDFLAGS) |
3704 AC_MSG_CHECKING(for Xpm - no older than 3.4f) | |
3727 | 3705 xe_check_libs="$libname_xpm" |
2651 | 3706 AC_RUN_IFELSE([AC_LANG_SOURCE([#define XPM_NUMBERS |
3707 #include <X11/xpm.h> | |
3708 int main(int c, char **v) { | |
3709 return c == 1 ? 0 : | |
3710 XpmIncludeVersion != XpmLibraryVersion() ? 1 : | |
3711 XpmIncludeVersion < 30406 ? 2 : 0 ;}])], | |
3712 [./conftest dummy_arg; xpm_status=$?; | |
3713 if test "$xpm_status" = "0"; then | |
3714 with_xpm=yes; | |
3715 else | |
3716 with_xpm=no; | |
3717 if test "$xpm_status" = "1"; then | |
3718 xpm_problem="Xpm library version and header file version don't match!" | |
3719 elif test "$xpm_status" = "2"; then | |
3720 xpm_problem="Xpm library version is too old!" | |
3721 else | |
3722 xpm_problem="Internal xpm detection logic error!" | |
3723 fi | |
3724 echo " | |
3725 *** WARNING *** $xpm_problem | |
3726 I'm not touching that with a 10-foot pole! | |
3727 If you really want to use the installed version of Xpm, rerun | |
3728 configure and add '--with-xpm=yes', but don't blame me if XEmacs crashes!" | |
3729 fi], | |
3730 [with_xpm=no]) | |
3731 xe_check_libs= | |
3732 AC_MSG_RESULT($with_xpm) | |
3733 fi | |
3734 if test "$with_xpm" = "yes"; then | |
3735 dnl #### This code assumes that if AC_CHECK_LIB fails, | |
3736 dnl #### then it will succeed if FOR_MSW is defined, | |
3737 dnl #### but doesn't actually verify this assumption. | |
3738 AC_DEFINE(HAVE_XPM) | |
3739 XE_PREPEND("$libpath_xpm", LDFLAGS) | |
3727 | 3740 XE_PREPEND("$libname_xpm", libs_x) |
2651 | 3741 XE_PREPEND("$incpath_xpm", CFLAGS) |
2940 | 3742 XE_PREPEND("$incpath_xpm", XE_CFLAGS) |
3312 | 3743 AC_MSG_CHECKING([for "FOR_MSW" xpm]) |
3727 | 3744 xe_check_libs="$libname_xpm" |
3316 | 3745 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[XpmCreatePixmapFromData();])], |
2651 | 3746 [xpm_for_msw=no], |
3747 [xpm_for_msw=yes]) | |
3748 xe_check_libs= | |
3749 AC_MSG_RESULT($xpm_for_msw) | |
3750 if test "$xpm_for_msw" = "yes"; then | |
3751 AC_DEFINE(FOR_MSW) | |
3752 fi | |
3753 fi | |
3754 | |
3755 dnl Autodetect XFACE | |
3756 test -z "$with_xface" && { AC_CHECK_HEADER(compface.h, ,with_xface=no) } | |
3757 test -z "$with_xface" && { AC_CHECK_LIB(compface, UnGenFace,[:] ,with_xface=no) } | |
3758 test -z "$with_xface" && with_xface=yes | |
3759 if test "$with_xface" = "yes"; then | |
3760 AC_DEFINE(HAVE_XFACE) | |
3761 XE_PREPEND(-lcompface, libs_x) | |
3762 fi | |
3763 | |
4708
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3764 dnl autodetect GIF |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3765 test -z "$with_gif" && { AC_CHECK_HEADER(gif_lib.h, , with_gif=no) } |
2651 | 3766 if test "$with_gif" != "no"; then |
3767 with_gif="yes" | |
4708
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3768 dnl Versions of libgif and libungif prior to the introduction of |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3769 dnl EGifPutExtensionLast caused Emacs crashes. We'll require that |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3770 dnl function, too, in hopes that we can avoid similar crashes. |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3771 AC_CHECK_LIB(gif, EGifPutExtensionLast, |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3772 [XE_PREPEND(-lgif, libs_x)], |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3773 [AC_CHECK_LIB(ungif, EGifPutExtensionLast, |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3774 [XE_PREPEND(-lungif, libs_x)], with_gif=no)]) |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3775 fi |
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
3776 if test "$with_gif" != "no"; then |
2651 | 3777 AC_DEFINE(HAVE_GIF) |
3778 fi | |
3779 | |
3780 dnl Too many stupid linkers can't detect cascaded lib dependencies until runtime | |
3781 dnl So we always search for libz compression support. | |
3782 if test "$with_png $with_tiff" != "no no"; then | |
3783 AC_CHECK_LIB(c, inflate, [:], [ | |
3784 AC_CHECK_LIB(z, inflate, [XE_PREPEND(-lz, libs_x)],[ | |
3785 AC_CHECK_LIB(gz, inflate, [XE_PREPEND(-lgz, libs_x)])])]) | |
3786 fi | |
3787 | |
3788 dnl autodetect JPEG | |
3789 test -z "$with_jpeg" && { AC_CHECK_HEADER(jpeglib.h, ,with_jpeg=no) } | |
3790 test -z "$with_jpeg" && { AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,[:],with_jpeg=no) } | |
3791 test -z "$with_jpeg" && with_jpeg=yes | |
3792 if test "$with_jpeg" = "yes"; then | |
3793 AC_DEFINE(HAVE_JPEG) | |
3794 XE_PREPEND(-ljpeg, libs_x) | |
3795 fi | |
3796 | |
3797 dnl autodetect PNG | |
3798 png_problem="" | |
3799 test -z "$with_png" && { AC_CHECK_FUNC(pow, ,with_png=no) } | |
3800 test -z "$with_png" && { AC_CHECK_HEADER(png.h, ,with_png=no) } | |
2667 | 3801 test -z "$with_png" && { AC_CHECK_LIB(png, png_read_image,[:],with_png=no,[-lz]) } |
2651 | 3802 if test -z "$with_png"; then |
3803 AC_MSG_CHECKING(for workable png version information) | |
3804 xe_check_libs="-lpng -lz" | |
3805 AC_RUN_IFELSE([AC_LANG_SOURCE([#include <png.h> | |
3806 int main(int c, char **v) { | |
3807 if (c == 1) return 0; | |
3808 if (strcmp(png_libpng_ver, PNG_LIBPNG_VER_STRING) != 0) return 1; | |
3809 return (PNG_LIBPNG_VER < 10002) ? 2 : 0 ;}])], | |
3810 [./conftest dummy_arg; png_status=$?; | |
3811 if test "$png_status" = "0"; then | |
3812 with_png=yes; | |
3813 else | |
3814 with_png=no; | |
3815 if test "$png_status" = "1"; then | |
3816 png_problem="PNG library version and header file don't match!" | |
3817 elif test "$png_status" = "2"; then | |
3818 png_problem="PNG library version too old (pre 1.0.2)!" | |
3819 fi | |
3820 echo " | |
3821 *** WARNING *** $png_problem | |
3822 I'm not touching that with a 10-foot pole! | |
3823 If you really want to use the installed version of libPNG, rerun | |
3824 configure and add '--with-png=yes', but don't blame me if XEmacs crashes!" | |
3825 fi], | |
3826 [with_png=no]) | |
3827 xe_check_libs= | |
3828 AC_MSG_RESULT($with_png) | |
3829 fi | |
3830 if test "$with_png" = "yes"; then | |
3831 AC_DEFINE(HAVE_PNG) | |
3832 XE_PREPEND(-lpng, libs_x) | |
3833 fi | |
3834 | |
3835 dnl autodetect TIFF | |
3836 test -z "$with_tiff" && { AC_CHECK_HEADER(tiffio.h, ,with_tiff=no) } | |
2667 | 3837 test -z "$with_tiff" && { AC_CHECK_LIB(tiff, TIFFClientOpen,[:],with_tiff=no,[-lz]) } |
2651 | 3838 test -z "$with_tiff" && with_tiff=yes |
3839 if test "$with_tiff" = "yes"; then | |
3840 AC_DEFINE(HAVE_TIFF) | |
3841 XE_PREPEND(-ltiff, libs_x) | |
3842 fi | |
3843 fi | |
3844 | |
3845 dnl ---------------------- | |
3846 dnl GTK-Specific Graphics libraries | |
3847 dnl ---------------------- | |
3848 | |
3849 if test "$with_gtk" = "yes"; then | |
3850 dnl Autodetect XFACE | |
3851 test -z "$with_xface" && { AC_CHECK_HEADER(compface.h, ,with_xface=no) } | |
3852 test -z "$with_xface" && { AC_CHECK_LIB(compface, UnGenFace,[:] ,with_xface=no) } | |
3853 test -z "$with_xface" && with_xface=yes | |
3854 if test "$with_xface" = "yes"; then | |
3855 AC_DEFINE(HAVE_XFACE) | |
3856 XE_PREPEND(-lcompface, libs_gtk) | |
3857 fi | |
3858 fi | |
3859 | |
3860 dnl ---------------------- | |
3861 dnl X-Specific Graphics libraries | |
3862 dnl ---------------------- | |
3863 | |
3864 if test "$with_x11" = "yes"; then | |
3312 | 3865 AC_MSG_CHECKING([for X11 graphics libraries]) |
3866 AC_MSG_RESULT() | |
2651 | 3867 fi |
3868 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3869 case "$with_widgets" in |
3019 | 3870 "" | "yes" | "athena") detect_athena=yes ;; |
2651 | 3871 *) detect_athena=no ;; |
3872 esac | |
3873 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
3874 case "$with_dialogs" in |
3019 | 3875 "" | "yes" | "athena") detect_athena=yes ;; |
3876 esac | |
3877 | |
2651 | 3878 if test "$with_x11" = "yes" -a "$detect_athena" = "yes" ; then |
3312 | 3879 AC_MSG_CHECKING([for the Athena widgets]) |
3880 AC_MSG_RESULT() | |
2651 | 3881 |
3882 dnl What in heck did the user actually want? | |
3883 case "$with_athena" in | |
3884 dnl This is the default, old fashioned flat Athena. | |
3885 "xaw" | "") athena_variant=Xaw athena_3d=no ;; | |
3886 "3d") athena_variant=Xaw3d athena_3d=yes ;; | |
3887 "next") athena_variant=neXtaw athena_3d=yes ;; | |
3888 "95") athena_variant=Xaw95 athena_3d=yes ;; | |
3889 "xpm") athena_variant=XawXpm athena_3d=yes ;; | |
3890 *) XE_DIE("Unknown Athena widget set \`$with_athena'. This should not happen.") ;; | |
3891 esac | |
3892 | |
3893 dnl Search for the Athena library... | |
3894 if test "$athena_3d" = "no"; then | |
3895 AC_CHECK_LIB($athena_variant, XawScrollbarSetThumb, | |
3896 [ | |
3897 dnl Must not be a 3d library... | |
4440
e4225b6d9389
AC_CHECK_LIB needs a function symbol. <87zls98qtk.fsf@uwakimon.sk.tsukuba.ac.jp>
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4424
diff
changeset
|
3898 AC_CHECK_LIB($athena_variant, XawSme3dComputeTopShadowRGB, |
2651 | 3899 [AC_MSG_WARN([Could not find a non-3d Athena widget library.])], |
3900 athena_lib=$athena_variant) | |
3901 ], | |
3902 AC_MSG_WARN([Could not find an Athena widget library.])) | |
3903 else | |
3904 dnl The real configuration, need 3d library | |
4440
e4225b6d9389
AC_CHECK_LIB needs a function symbol. <87zls98qtk.fsf@uwakimon.sk.tsukuba.ac.jp>
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4424
diff
changeset
|
3905 AC_CHECK_LIB($athena_variant, XawSme3dComputeTopShadowRGB, athena_lib=$athena_variant, |
2651 | 3906 dnl OK, couldn't find it with a proper name, try the standard Athena lib |
3907 dnl If that is 3d, presume the user asked for what they have installed. | |
4440
e4225b6d9389
AC_CHECK_LIB needs a function symbol. <87zls98qtk.fsf@uwakimon.sk.tsukuba.ac.jp>
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4424
diff
changeset
|
3908 AC_CHECK_LIB(Xaw, XawSme3dComputeTopShadowRGB, |
2651 | 3909 [ |
3910 athena_lib=Xaw; | |
3911 AC_MSG_WARN([Assuming that libXaw is actually $athena_variant.]); | |
3912 ], | |
3913 [AC_MSG_WARN([Could not find a 3d Athena widget library that looked like $athena_variant.])])) | |
3914 fi | |
3915 | |
3916 dnl Now we locate the Athena headers that we need. | |
3917 if test "$athena_3d" = "no"; then | |
3918 AC_CHECK_HEADER(X11/Xaw/ThreeD.h, | |
3919 [AC_MSG_WARN([Could not find a non-3d Athena header set.])], | |
3920 [AC_CHECK_HEADER(X11/Xaw/XawInit.h, | |
3921 [athena_h_path=X11/Xaw], | |
2694 | 3922 [AC_MSG_WARN([Could not find a non-3d Athena header set.])], |
3923 [ | |
3924 #include <X11/Intrinsic.h> | |
3925 ])]) | |
2651 | 3926 else |
3927 dnl The three-d Athena headers are so much more slippery. | |
3928 dnl Curse this `Lets replace standard libraries' thing that they did. :/ | |
3929 AC_CHECK_HEADER(X11/$athena_variant/XawInit.h, | |
3930 [AC_CHECK_HEADER(X11/$athena_variant/ThreeD.h, | |
3931 [athena_h_path=X11/$athena_variant])],[], | |
3932 [ | |
3933 #if HAVE_X11_XFUNCPROTO_H | |
3934 #include <X11/Xfuncproto.h> | |
3935 #endif | |
2705 | 3936 #include <X11/Intrinsic.h> |
2651 | 3937 ]) |
3938 | |
3939 dnl Is the variant specific header directory directly under include? | |
3940 if test -z "$athena_h_path"; then | |
3941 AC_CHECK_HEADER($athena_variant/XawInit.h, | |
3942 [AC_CHECK_HEADER($athena_variant/ThreeD.h, | |
3943 athena_h_path=$athena_variant)],[], | |
3944 [ | |
3945 #if HAVE_X11_XFUNCPROTO_H | |
3946 #include <X11/Xfuncproto.h> | |
3947 #endif | |
2694 | 3948 #include <X11/Intrinsic.h> |
2651 | 3949 ]) |
3950 fi | |
3951 | |
3952 dnl If we couldn't find the specific variant, try the generic Athena 3d headers | |
3953 if test -z "$athena_h_path" -a "$athena_variant" != "Xaw3d"; then | |
3954 AC_CHECK_HEADER(X11/Xaw3d/XawInit.h, | |
3955 [AC_CHECK_HEADER(X11/Xaw3d/ThreeD.h, | |
3956 [ | |
3957 AC_MSG_WARN([Assuming that X11/Xaw3d headers are suitable for $athena_variant.]) | |
3958 athena_h_path=X11/Xaw3d | |
3959 ])],[], | |
3960 [ | |
3961 #if HAVE_X11_XFUNCPROTO_H | |
3962 #include <X11/Xfuncproto.h> | |
3963 #endif | |
2694 | 3964 #include <X11/Intrinsic.h> |
2651 | 3965 ]) |
3966 fi | |
3967 | |
3968 dnl Also generic 3d headers directly under include dir | |
3969 if test -z "$athena_h_path" -a "$athena_variant" != "Xaw3d"; then | |
3970 AC_CHECK_HEADER(Xaw3d/XawInit.h, | |
3971 [AC_CHECK_HEADER(Xaw3d/ThreeD.h, | |
3972 [ | |
3973 AC_MSG_WARN([Assuming that Xaw3d headers are suitable for $athena_variant.]) | |
3974 athena_h_path=Xaw3d | |
3975 ])],[], | |
3976 [ | |
3977 #if HAVE_X11_XFUNCPROTO_H | |
3978 #include <X11/Xfuncproto.h> | |
3979 #endif | |
2694 | 3980 #include <X11/Intrinsic.h> |
2651 | 3981 ]) |
3982 fi | |
3983 | |
3984 dnl If nothing yet found, see if Xaw is a 3d header set... | |
3985 dnl We AC_MSG_WARN if we fail because I am all out of ideas... | |
3986 if test -z "$athena_h_path"; then | |
3987 AC_CHECK_HEADER(X11/Xaw/ThreeD.h, | |
3988 [ | |
3989 AC_MSG_WARN([Assuming that X11/Xaw headers are suitable for $athena_variant.]) | |
3990 athena_h_path=X11/Xaw | |
3991 ], | |
3992 [AC_MSG_WARN([Could not find a suitable 3d Athena header set.])]) | |
3993 fi | |
3994 fi | |
3995 | |
3996 dnl Do we actually have a usable Athena widget set? Please? | |
3997 if test -n "$athena_lib" -a -n "$athena_h_path"; then | |
3998 have_xaw=yes | |
3999 else | |
4000 have_xaw=no | |
4001 fi | |
4002 | |
4003 else | |
4004 have_xaw=no | |
4005 fi dnl "$with_x11" = "yes" -a "detect_athena" = "yes" | |
4006 | |
4007 if test "$with_x11" = "yes"; then | |
4008 dnl autodetect Motif - but only add to libs_x later (if necessary) | |
4009 dnl Use a different function to the earlier test to avoid problems with the | |
4010 dnl internal cache. | |
4011 AC_CHECK_HEADER(Xm/Xm.h, | |
4012 [AC_CHECK_LIB(Xm, XmStringCreate, have_motif=yes, have_motif=no)], | |
4013 have_motif=no) | |
4014 | |
4015 if test "$have_motif" = "yes"; then | |
4016 dnl autodetect lesstif | |
4017 AC_MSG_CHECKING(for Lesstif) | |
4018 AC_EGREP_CPP(yes, | |
4019 [#include <Xm/Xm.h> | |
4020 #ifdef LESSTIF_VERSION | |
4021 yes | |
4022 #endif | |
4023 ], have_lesstif=yes, have_lesstif=no) | |
4024 AC_MSG_RESULT($have_lesstif) | |
4025 fi | |
4026 | |
4027 fi dnl "$with_x11" = "yes" | |
4028 | |
4029 dnl Finish ensuring that we have values for the various toolkit items. | |
4030 dnl Not all toolkits support all widgets | |
3019 | 4031 |
4032 dnl Avoid using Motif :-( | |
4033 case "$opsys" in | |
3738 | 4034 *linux* | *darwin* | *bsd* | *cygwin* ) lucid_prefers_motif="no" ;; |
3019 | 4035 * ) lucid_prefers_motif="yes" ;; |
4036 esac | |
2651 | 4037 |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4038 case "$with_menubars" in "" | "yes" | "athena" ) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4039 with_menubars="lucid" ;; |
2651 | 4040 esac |
3094 | 4041 dnl this is not in xft reloaded #3 |
4042 if test "$with_xft_menubars" != "no" ; then | |
4043 if test "$with_xft_emacs" = "yes" -a "$with_menubars" != "no" ; then | |
4044 with_xft_menubars="yes" | |
4045 else | |
4046 with_xft_menubars="no" | |
4047 fi | |
4048 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4049 case "$with_dialogs" in "" | "yes" | "lucid" ) |
3019 | 4050 if test "$lucid_prefers_motif" = "yes"; then |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4051 if test "$have_motif" = "yes"; then with_dialogs="motif" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4052 elif test "$have_xaw" = "yes"; then with_dialogs="athena" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4053 elif test "$with_msw" = "yes"; then with_dialogs="msw" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4054 else with_dialogs=no |
3019 | 4055 fi |
4056 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4057 if test "$have_xaw" = "yes"; then with_dialogs="athena" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4058 elif test "$have_motif" = "yes"; then with_dialogs="motif" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4059 elif test "$with_msw" = "yes"; then with_dialogs="msw" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4060 else with_dialogs=no |
3019 | 4061 fi |
2651 | 4062 fi ;; |
4063 esac | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4064 case "$with_scrollbars" in "" | "yes" ) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4065 with_scrollbars="lucid" ;; |
2651 | 4066 esac |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4067 case "$with_widgets" in "" | "yes" | "lucid") |
3019 | 4068 if test "$lucid_prefers_motif" = "yes"; then |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4069 if test "$have_motif" = "yes"; then with_widgets="motif" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4070 elif test "$have_xaw" = "yes"; then with_widgets="athena" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4071 elif test "$with_msw" = "yes"; then with_widgets="msw" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4072 else with_widgets=no |
3019 | 4073 fi |
4074 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4075 if test "$have_xaw" = "yes"; then with_widgets="athena" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4076 elif test "$have_motif" = "yes"; then with_widgets="motif" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4077 elif test "$with_msw" = "yes"; then with_widgets="msw" |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4078 else with_widgets=no |
3019 | 4079 fi |
2651 | 4080 fi ;; |
4081 esac | |
3094 | 4082 dnl this is not in xft reloaded #3 |
4083 if test "$with_xft_tabs" != "no" ; then | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4084 if test "$with_xft_emacs" = "yes" -a "$with_widgets" != "no" ; then |
3094 | 4085 with_xft_tabs="yes" |
4086 else | |
4087 with_xft_tabs="no" | |
4088 fi | |
4089 fi | |
4090 dnl this is not in xft reloaded #3 | |
4497
f863b2ee146f
Rename xft_gauge to xft_gauges.
Mats Lidell <matsl@xemacs.org>
parents:
4496
diff
changeset
|
4091 if test "$with_xft_gauges" != "no" ; then |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4092 if test "$with_xft_emacs" = "yes" -a "$with_widgets" != "no" ; then |
4497
f863b2ee146f
Rename xft_gauge to xft_gauges.
Mats Lidell <matsl@xemacs.org>
parents:
4496
diff
changeset
|
4093 with_xft_gauges="yes" |
3094 | 4094 else |
4497
f863b2ee146f
Rename xft_gauge to xft_gauges.
Mats Lidell <matsl@xemacs.org>
parents:
4496
diff
changeset
|
4095 with_xft_gauges="no" |
3094 | 4096 fi |
4097 fi | |
2651 | 4098 |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4099 all_widgets="$with_menubars $with_scrollbars $with_dialogs $with_toolbars $with_widgets" |
2651 | 4100 |
4101 case "$all_widgets" in | |
4102 *athena* ) | |
4103 if test "$have_xaw" != "yes"; then | |
4104 XE_DIE("Could not find a suitable Athena library to build with.") | |
4105 fi | |
4106 | |
4107 dnl Add the Lucid widget Athena code | |
4108 XE_APPEND(lwlib-Xaw.o, lwlib_objs) | |
4109 | |
4110 dnl Add the Athena widget library we located earlier | |
4111 XE_PREPEND(-l$athena_lib, libs_x) | |
4112 | |
4113 dnl Tell lwlib where to find the Athena header files. | |
4114 dnl Many people have tried to create a `smart' way of doing this, | |
4115 dnl but all have failed. Before changing the following ugly definitions, | |
4116 dnl consult the veterans of many a battle. | |
4117 AC_DEFINE_UNQUOTED(ATHENA_Scrollbar_h_,"$athena_h_path/Scrollbar.h") | |
4118 AC_DEFINE_UNQUOTED(ATHENA_Dialog_h_,"$athena_h_path/Dialog.h") | |
4119 AC_DEFINE_UNQUOTED(ATHENA_Form_h_,"$athena_h_path/Form.h") | |
4120 AC_DEFINE_UNQUOTED(ATHENA_Command_h_,"$athena_h_path/Command.h") | |
4121 AC_DEFINE_UNQUOTED(ATHENA_Label_h_,"$athena_h_path/Label.h") | |
4122 AC_DEFINE_UNQUOTED(ATHENA_LabelP_h_,"$athena_h_path/LabelP.h") | |
4123 AC_DEFINE_UNQUOTED(ATHENA_Toggle_h_,"$athena_h_path/Toggle.h") | |
4124 AC_DEFINE_UNQUOTED(ATHENA_ToggleP_h_,"$athena_h_path/ToggleP.h") | |
4125 AC_DEFINE_UNQUOTED(ATHENA_AsciiText_h_,"$athena_h_path/AsciiText.h") | |
4126 AC_DEFINE_UNQUOTED(ATHENA_XawInit_h_,"$athena_h_path/XawInit.h") | |
4127 | |
4128 AC_DEFINE(LWLIB_USES_ATHENA) | |
4129 AC_DEFINE(NEED_ATHENA) | |
4130 need_athena="yes" | |
4131 | |
4132 if test "$athena_3d" = "yes"; then | |
4133 AC_DEFINE(HAVE_ATHENA_3D) | |
4134 fi | |
4135 ;; | |
4136 esac | |
4137 | |
4138 case "$all_widgets" in *motif* ) | |
4139 AC_DEFINE(LWLIB_USES_MOTIF) | |
4140 AC_DEFINE(NEED_MOTIF) | |
4141 XE_APPEND(lwlib-Xm.o, lwlib_objs) | |
4142 need_motif=yes ;; | |
4143 esac | |
4144 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4145 test "$with_menubars" = "lucid" && XE_APPEND(xlwmenu.o, lwlib_objs) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4146 test "$with_menubars" = "motif" && XE_APPEND(xlwmenu.o, lwlib_objs) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4147 test "$with_scrollbars" = "lucid" && XE_APPEND(xlwscrollbar.o, lwlib_objs) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4148 test "$with_widgets" != "no" && test "$with_widgets" != "msw" && \ |
2651 | 4149 XE_APPEND(xlwtabs.o xlwgcs.o, lwlib_objs) |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4150 case "$with_widgets" in athena* ) |
2651 | 4151 XE_APPEND(xlwradio.o xlwcheckbox.o xlwgauge.o, lwlib_objs);; |
4152 esac | |
4153 case "$all_widgets" in *lucid* ) | |
4154 AC_DEFINE(NEED_LUCID) | |
4155 XE_APPEND(lwlib-Xlw.o, lwlib_objs) ;; | |
4156 esac | |
4157 | |
4158 AC_SUBST(lwlib_objs) | |
4159 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4160 test "$with_scrollbars" = "athena" && AC_DEFINE(LWLIB_SCROLLBARS_ATHENA) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4161 test "$with_dialogs" = "athena" && AC_DEFINE(LWLIB_DIALOGS_ATHENA) |
2651 | 4162 |
4163 if test "$athena_3d" = "yes"; then | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4164 test "$with_scrollbars" = "athena" && AC_DEFINE(LWLIB_SCROLLBARS_ATHENA3D) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4165 test "$with_dialogs" = "athena" && AC_DEFINE(LWLIB_DIALOGS_ATHENA3D) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4166 fi |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4167 |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4168 case "$with_widgets" in athena* ) AC_DEFINE(LWLIB_WIDGETS_ATHENA);; esac |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4169 test "$with_widgets" != "no" && test "$with_widgets" != "msw" && \ |
2651 | 4170 AC_DEFINE(LWLIB_TABS_LUCID) |
4171 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4172 test "$with_menubars" != "no" && AC_DEFINE(HAVE_MENUBARS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4173 test "$with_scrollbars" != "no" && AC_DEFINE(HAVE_SCROLLBARS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4174 test "$with_dialogs" != "no" && AC_DEFINE(HAVE_DIALOGS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4175 test "$with_toolbars" != "no" && AC_DEFINE(HAVE_TOOLBARS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4176 test "$with_widgets" != "no" && AC_DEFINE(HAVE_WIDGETS) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4177 |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4178 test "$with_menubars" = "lucid" && AC_DEFINE(LWLIB_MENUBARS_LUCID) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4179 test "$with_scrollbars" = "lucid" && AC_DEFINE(LWLIB_SCROLLBARS_LUCID) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4180 |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4181 test "$with_menubars" = "motif" && AC_DEFINE(LWLIB_MENUBARS_MOTIF) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4182 test "$with_scrollbars" = "motif" && AC_DEFINE(LWLIB_SCROLLBARS_MOTIF) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4183 test "$with_dialogs" = "motif" && AC_DEFINE(LWLIB_DIALOGS_MOTIF) |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4184 test "$with_widgets" = "motif" && AC_DEFINE(LWLIB_WIDGETS_MOTIF) |
2651 | 4185 |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4848
diff
changeset
|
4186 test "$with_xft_menubars" = "yes" && AC_DEFINE(HAVE_XFT_MENUBARS) |
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4848
diff
changeset
|
4187 test "$with_xft_tabs" = "yes" && AC_DEFINE(HAVE_XFT_TABS) |
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4848
diff
changeset
|
4188 test "$with_xft_gauges" = "yes" && AC_DEFINE(HAVE_XFT_GAUGES) |
3094 | 4189 |
2651 | 4190 dnl ---------------------- |
4191 dnl Mule-dependent options | |
4192 dnl ---------------------- | |
4193 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4194 test -z "$with_mule" && with_mule=no |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4195 |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4196 dnl if test "$with_mule" = "yes" && test ! -d "$srcdir/lisp/mule"; then |
2651 | 4197 dnl echo "Attempt to Build with Mule without Mule/Lisp" |
4198 dnl echo "Please install the XEmacs/Mule tarball or" | |
4199 dnl echo "rerun configure with --with-mule=no" | |
4200 dnl exit 1 | |
4201 dnl fi | |
4202 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4203 if test "$with_default_eol_detection" = "yes"; then |
2651 | 4204 AC_DEFINE(HAVE_DEFAULT_EOL_DETECTION) |
4205 fi | |
4206 | |
2973 | 4207 dnl initialize _libs variables for possible modules at top level |
4208 canna_libs= | |
4209 wnn_libs= | |
4210 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4211 if test "$with_mule" = "yes" ; then |
3312 | 4212 AC_MSG_CHECKING([for Mule-related features]) |
2651 | 4213 AC_DEFINE(MULE) |
4214 | |
4215 dnl Use -lintl to get internationalized strerror for Mule | |
4216 AC_CHECK_HEADERS(libintl.h) | |
4217 AC_CHECK_LIB(intl, strerror) | |
4218 | |
3312 | 4219 AC_MSG_CHECKING([for Mule input methods]) |
2651 | 4220 dnl Do we have the XmIm* routines? And if so, do we want to use them? |
4221 case "$with_xim" in "" | "yes" ) | |
3312 | 4222 AC_MSG_CHECKING([for XIM]) |
2651 | 4223 AC_CHECK_LIB(X11, XOpenIM, with_xim=xlib, with_xim=no) |
4224 dnl XIM + Lesstif is not (yet?) usable | |
3019 | 4225 dnl Only use Motif if linking Motif anyway, or don't have xlib XIM |
4226 if test "$need_motif $have_lesstif" = "yes no"; then | |
4227 AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif) | |
3248 | 4228 dnl #### This is always false. |
4229 dnl Not clear what we want, although "yes no yes" is insufficient. | |
3019 | 4230 elif test "$have_motif $have_lesstif $with_xim" = "yes no no"; then |
2651 | 4231 AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif) |
4232 fi ;; | |
4233 esac | |
4234 if test "$with_xim" != "no"; then | |
4235 AC_DEFINE(HAVE_XIM) | |
4236 if test "$with_xim" = "xlib"; then | |
4237 AC_DEFINE(XIM_XLIB) | |
4238 XE_ADD_OBJS(input-method-xlib.o) | |
4239 fi | |
4240 if test "$with_xim" = "motif"; then | |
4241 AC_DEFINE(XIM_MOTIF) | |
4242 need_motif=yes | |
4243 XE_ADD_OBJS(input-method-motif.o) | |
4244 fi | |
4245 if test "$with_xim" = "motif"; then | |
4246 with_xfs=no | |
4247 fi | |
4248 fi | |
4249 | |
4250 dnl "with_xfs" = "yes" | |
4251 if test "$with_xfs" = "yes" ; then | |
3312 | 4252 AC_MSG_CHECKING([for XFontSet]) |
2651 | 4253 AC_CHECK_LIB(X11, XmbDrawString, [:], with_xfs=no) |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4254 if test "$with_xfs" = "yes" && test "$with_menubars" = "lucid"; then |
2651 | 4255 AC_DEFINE(USE_XFONTSET) |
4256 if test "$with_xim" = "no" ; then | |
4257 XE_ADD_OBJS(input-method-xlib.o) | |
4258 fi | |
4259 fi | |
4260 fi dnl with_xfs | |
4261 | |
4262 dnl Autodetect WNN | |
4263 test "$with_wnn6" = "yes" && with_wnn=yes # wnn6 implies wnn support | |
4264 test -z "$with_wnn" && { AC_CHECK_HEADER(wnn/jllib.h, ,with_wnn=no) } | |
4265 dnl gcc 2.97 fixincludes breaks inclusion of wnn/commonhd.h | |
4266 test -z "$with_wnn" && { AC_CHECK_HEADER(wnn/commonhd.h, ,with_wnn=no) } | |
4267 dnl Detour to find crypt | |
4268 if test "$with_wnn" != "no"; then | |
4269 AC_CHECK_FUNCS(crypt) | |
4270 test "$ac_cv_func_crypt" != "yes" && { AC_CHECK_LIB(crypt, crypt) } | |
4271 fi | |
4272 dnl Back to our regularly scheduled wnn hunting | |
4273 if test -z "$with_wnn" -o "$with_wnn" = "yes"; then | |
4274 AC_CHECK_LIB(wnn,jl_dic_list_e,libwnn=wnn, | |
4275 AC_CHECK_LIB(wnn4,jl_dic_list_e,libwnn=wnn4, | |
4276 AC_CHECK_LIB(wnn6,jl_dic_list_e,libwnn=wnn6, | |
4277 AC_CHECK_LIB(wnn6_fromsrc,dic_list_e,libwnn=wnn6_fromsrc,with_wnn=no)))) | |
4278 fi | |
4279 test -z "$with_wnn" && with_wnn=yes | |
4280 if test "$with_wnn" = "yes"; then | |
4281 AC_DEFINE(HAVE_WNN) | |
4282 XE_PREPEND(-l$libwnn, libs_x) | |
4283 if test "$with_wnn6" != "no"; then | |
4284 AC_CHECK_LIB($libwnn, jl_fi_dic_list, with_wnn6=yes) | |
4285 test "$with_wnn6" = "yes" && AC_DEFINE(WNN6) | |
4286 fi | |
4287 fi | |
4288 | |
3830 | 4289 dnl Configure canna |
2973 | 4290 dnl canna_libs variable is initialized at toplevel |
3830 | 4291 dnl #### the hard-coding of /usr/local/canna/include is bogus and |
4292 dnl my Mac OS X 10.4 system needs /usr/local/canna/lib, too | |
4293 dnl #### this whole mess should be in modules/canna, no? maybe not | |
4294 have_canna=no | |
2651 | 4295 if test "$with_canna" != "no"; then |
4296 save_c_switch_site="$c_switch_site" | |
3830 | 4297 for canna_include_path in "" " -I/usr/local/canna/include"; do |
4298 for canna_wchar_aware in "" " -DCANNA_NEW_WCHAR_AWARE=1"; do | |
4299 c_switch_site="$save_c_switch_site$canna_include_path$canna_wchar_aware" | |
4300 # defeat autoconf's cache mechanism | |
4301 $as_unset ac_cv_header_canna_jrkanji_h | |
4302 $as_unset ac_cv_header_canna_RK_h | |
4303 # using $ac_header_compiler is a hack, but autoconf doesn't let us | |
4304 # get at this information otherwise :-( | |
4305 AC_CHECK_HEADER(canna/jrkanji.h,[AC_CHECK_HEADER(canna/RK.h,have_canna=$ac_header_compiler)]) | |
4306 test "$have_canna" = "yes" && break | |
4307 AC_MSG_WARN([You may ignore any *Present but not compiled* message | |
4308 from autoconf. We detect that condition and recheck, but there | |
4309 is no way to suppress autoconf's message.]) | |
4310 done | |
4311 test "$have_canna" = "yes" && break | |
4312 done | |
4313 if test "$have_canna" = "yes"; then | |
4314 c_switch_site="$save_c_switch_site$canna_include_path" | |
4315 else | |
2651 | 4316 c_switch_site="$save_c_switch_site" |
4317 fi | |
4318 fi | |
4319 | |
3830 | 4320 test "$have_canna" = "yes" && { AC_CHECK_LIB(RKC, RkBgnBun, [:],have_canna=no) } |
4321 test "$have_canna" = "yes" && { AC_CHECK_LIB(canna,jrKanjiControl,[:],have_canna=no) } | |
4322 if test "$have_canna" = "yes"; then | |
2651 | 4323 AC_DEFINE(HAVE_CANNA) |
3830 | 4324 test -n "$canna_wchar_aware" && AC_DEFINE(CANNA_NEW_WCHAR_AWARE) |
2973 | 4325 XE_APPEND(modules/canna, MAKE_SUBDIR) |
4326 need_modules_common=yes | |
4327 if test "$with_modules" = "yes"; then | |
4328 XE_APPEND(modules/canna, INSTALL_ARCH_DEP_SUBDIR) | |
4329 fi | |
4330 XE_PREPEND(-lcanna -lRKC, canna_libs) | |
3830 | 4331 elif test "$with_canna" != "no"; then |
4332 AC_MSG_WARN([Canna configuration failed. If you expected success, | |
4333 maybe you need --with-site-prefixes=/usr/local/canna?]) | |
2651 | 4334 fi |
2973 | 4335 AC_SUBST(canna_libs) |
2651 | 4336 |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4337 else dnl "$with_mule" = "no" |
2651 | 4338 for feature in xim canna wnn; do |
4339 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then | |
4340 AC_MSG_WARN([--with-${feature} ignored: Not valid without Mule support]) | |
4341 fi | |
4342 eval "with_${feature}=no" | |
4343 done | |
4344 fi dnl with_mule | |
4345 | |
4346 | |
4347 dnl At this point, we know whether we need the motif lib or not. | |
4348 if test "$need_motif" = "yes" ; then | |
4349 XE_PREPEND(-lXm, libs_x) | |
4350 dnl AIX needs the following library for use with Motif | |
4351 AC_CHECK_LIB(i18n, layout_object_getvalue, [XE_PREPEND(-li18n, libs_x)]) | |
4352 XE_COMPUTE_RUNPATH() | |
4353 fi | |
4354 | |
4834
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
4355 dnl Check for UTF-8 path-conversion functions in Cygwin 1.7 and on |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
4356 case "$opsys" in |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
4357 *cygwin* ) AC_CHECK_FUNCS(cygwin_conv_path) |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
4358 ;; |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
4359 esac |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
4360 |
2651 | 4361 dnl ---------------------------------------------------------------- |
4362 dnl Check for POSIX functions. | |
4363 dnl ---------------------------------------------------------------- | |
4364 | |
4365 AC_CHECK_FUNCS(cbrt closedir dup2 eaccess fmod fpathconf frexp fsync ftime ftruncate getaddrinfo gethostname getnameinfo getpagesize getrlimit gettimeofday getcwd link logb lrand48 matherr mkdir mktime perror poll random readlink rename res_init rint rmdir select setitimer setpgid setsid sigblock sighold sigprocmask snprintf strerror strlwr strupr symlink tzset ulimit umask usleep vlimit vsnprintf waitpid wcscmp wcslen) | |
4366 | |
4367 dnl getaddrinfo() is borked under hpux11 | |
4368 if test "$ac_cv_func_getaddrinfo" != "no" ; then | |
4369 case "$opsys" in | |
4370 hpux11 ) | |
4371 AC_MSG_WARN([Use of getaddrinfo is disabled for HP-UX 11.XX.]) | |
4372 ac_cv_func_getaddrinfo=no | |
4373 ;; | |
4374 esac | |
4375 fi | |
4376 | |
3092 | 4377 dnl check for vdb-related stuff |
4378 if test "$check_vdb_posix" = "yes" ; then | |
4379 dnl no mprotect, no vdb | |
4380 AC_CHECK_FUNC(mprotect,AC_DEFINE(HAVE_MPROTECT) have_vdb_mprotect=yes,) | |
4381 | |
4382 dnl sigaction needs either struct siginfo or siginfo_t | |
4383 AC_CHECK_FUNC(sigaction, AC_DEFINE(HAVE_SIGACTION) have_vdb_sigaction=yes, | |
4384 have_vdb_sigaction=no) | |
4385 AC_CHECK_MEMBER(struct siginfo.si_addr, | |
4386 AC_DEFINE(HAVE_STRUCT_SIGINFO_SI_ADDR) have_si_addr=yes,, | |
4387 [#include <signal.h>]) | |
4388 AC_CHECK_MEMBER(siginfo_t.si_addr, | |
4389 AC_DEFINE(HAVE_SIGINFO_T_SI_ADDR) have_si_addr=yes,, | |
4390 [#include <signal.h>]) | |
4391 if test "$have_si_addr" != "yes" ; then | |
4392 have_vdb_sigaction=no | |
4393 fi | |
4394 | |
4395 dnl signal needs struct sigcontext | |
4396 AC_CHECK_FUNC(signal, AC_DEFINE(HAVE_SIGNAL) have_vdb_signal=yes,) | |
4397 AC_CHECK_MEMBER(struct sigcontext.cr2, | |
4398 AC_DEFINE(HAVE_STRUCT_SIGCONTEXT_CR2) have_cr2=yes,, | |
4399 [#include <signal.h>]) | |
4400 | |
4401 if test "$have_cr2" != "yes" ; then | |
4402 have_vdb_signal=no | |
4403 fi | |
4404 | |
4405 if test "$have_vdb_mprotect" != "yes" ; then | |
4406 have_vdb_sigaction=no | |
4407 have_vdb_signal=no | |
4408 fi | |
4409 | |
4410 if test "$have_vdb_sigaction" != "yes" -a "$have_vdb_signal" != "yes" ; then | |
4411 have_vdb_posix=no | |
4412 have_vdb_fake=yes | |
3102 | 4413 XE_DIE("No working write-barrier implementation found for this system. |
4414 Please report this and provide information about your system.") | |
3092 | 4415 else |
4416 have_vdb_posix=yes | |
4417 have_vdb_fake=no | |
4418 fi | |
4419 fi | |
4420 | |
2651 | 4421 dnl ---------------------------------------------------------------- |
4422 dnl Check for Unixoid pty/process support. | |
4423 dnl ---------------------------------------------------------------- | |
4424 | |
4425 dnl There is no "standard" pty allocation method. Every system is different. | |
4426 dnl getpt() is the preferred pty allocation method on glibc systems. | |
4427 dnl _getpty() is the preferred pty allocation method on SGI systems. | |
4428 dnl grantpt(), unlockpt(), ptsname() are defined by Unix98. | |
4429 AC_CHECK_FUNCS(getpt _getpty grantpt unlockpt ptsname killpg tcgetpgrp) | |
4430 | |
4431 dnl openpty() is the preferred pty allocation method on BSD and Tru64 systems. | |
4432 dnl openpty() might be declared in: | |
4433 dnl - pty.h (Tru64 or Linux) | |
4434 dnl - libutil.h (FreeBSD) | |
4435 dnl - util.h (NetBSD) | |
4436 AC_CHECK_FUNC(openpty, have_openpty=yes, [ | |
4437 AC_CHECK_LIB(util, openpty, have_openpty=yes need_libutil=yes)]) | |
4438 if test "$have_openpty" = "yes"; then | |
4439 AC_DEFINE(HAVE_OPENPTY) | |
4440 AC_CHECK_HEADERS(libutil.h util.h, break) | |
4441 test "$need_libutil" = "yes" && XE_APPEND(-lutil, libs_system) | |
4442 fi | |
4443 | |
4444 dnl Check for system-specific pty header files | |
4445 dnl Often the TIOCSIG* symbols are hiding there. | |
4446 case "$opsys" in | |
4447 dnl HPUX pty.h #defines TRUE and FALSE, so just use ptyio.h there. | |
4448 hpux*) AC_CHECK_HEADERS(sys/ptyio.h) ;; | |
4449 *) AC_CHECK_HEADERS(pty.h) | |
4450 test "$ac_cv_header_pty_h" = "no" && AC_CHECK_HEADERS(sys/pty.h) | |
4451 ;; | |
4452 esac | |
4453 | |
4454 dnl Check for STREAM support functions. | |
4455 dnl Confusingly, "str" means both "string" and "SysV Streams". | |
4456 AC_CHECK_HEADERS(stropts.h) | |
4457 if test "$ac_cv_header_stropts_h" = "yes"; then | |
4458 AC_CHECK_FUNCS(isastream) | |
4459 AC_CHECK_HEADERS(strtio.h) dnl TIOCSIGNAL | |
4460 fi | |
4461 | |
4462 dnl Check whether the system provides getloadavg(). | |
4463 AC_CHECK_FUNCS(getloadavg) | |
4464 | |
4465 if test "$ac_cv_func_getloadavg" = "yes"; then | |
4466 dnl Solaris 8 declares getloadavg() in <sys/loadavg.h>. | |
4467 dnl glibc 2.2 declares getloadavg() in <stdlib.h>... | |
4468 dnl ...if we #define _GNU_SOURCE, which we do. | |
4469 AC_CHECK_HEADERS(sys/loadavg.h) | |
4470 else | |
4471 dnl We define our own getloadavg() using lower level functions. | |
4472 XE_ADD_OBJS(getloadavg.o) | |
4473 | |
4474 dnl Used by getloadavg() - does not require root priveleges | |
4475 AC_CHECK_LIB(kstat, kstat_open) | |
4476 AC_CHECK_HEADERS(kstat.h) | |
4477 | |
4478 dnl Another way to get the load average | |
4479 AC_CHECK_LIB(kvm, kvm_read) | |
4480 fi | |
4481 | |
4482 dnl If netdb.h does not declare h_errno, we must declare it by hand. | |
4483 AC_MSG_CHECKING(whether netdb declares h_errno) | |
3312 | 4484 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <netdb.h>], |
4485 [return h_errno;])], | |
2651 | 4486 [AC_MSG_RESULT(yes) |
4487 AC_DEFINE(HAVE_H_ERRNO)], | |
4488 [AC_MSG_RESULT(no)]) | |
4489 | |
4490 AC_MSG_CHECKING(for sigsetjmp) | |
3312 | 4491 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <setjmp.h>], |
4492 [sigjmp_buf bar; sigsetjmp (bar, 0);])], | |
2651 | 4493 [AC_MSG_RESULT(yes) |
4494 AC_DEFINE(HAVE_SIGSETJMP)], | |
4495 [AC_MSG_RESULT(no)]) | |
4496 | |
4497 AC_MSG_CHECKING(whether localtime caches TZ) | |
4498 AC_CACHE_VAL(emacs_cv_localtime_cache, | |
4499 [if test "$ac_cv_func_tzset" = "yes"; then | |
4500 AC_RUN_IFELSE([AC_LANG_SOURCE([#include <time.h> | |
4501 #if STDC_HEADERS | |
4502 # include <stdlib.h> | |
4503 #endif | |
4504 extern char **environ; | |
4505 unset_TZ () | |
4506 { | |
4507 char **from, **to; | |
4508 for (to = from = environ; (*to = *from); from++) | |
4509 if (! (to[[0]][[0]] == 'T' && to[[0]][[1]] == 'Z' && to[[0]][[2]] == '=')) | |
4510 to++; | |
4511 } | |
4512 char TZ_GMT0[[]] = "TZ=GMT0"; | |
4513 char TZ_PST8[[]] = "TZ=PST8"; | |
4514 main() | |
4515 { | |
4516 time_t now = time ((time_t *) 0); | |
4517 int hour_GMT0, hour_unset; | |
4518 if (putenv (TZ_GMT0) != 0) | |
4519 exit (1); | |
4520 hour_GMT0 = localtime (&now)->tm_hour; | |
4521 unset_TZ (); | |
4522 hour_unset = localtime (&now)->tm_hour; | |
4523 if (putenv (TZ_PST8) != 0) | |
4524 exit (1); | |
4525 if (localtime (&now)->tm_hour == hour_GMT0) | |
4526 exit (1); | |
4527 unset_TZ (); | |
4528 if (localtime (&now)->tm_hour != hour_unset) | |
4529 exit (1); | |
4530 exit (0); | |
4531 }])], emacs_cv_localtime_cache=no, emacs_cv_localtime_cache=yes, | |
4532 [# If we have tzset, assume the worst when cross-compiling. | |
4533 emacs_cv_localtime_cache=yes]) | |
4534 else | |
4535 # If we lack tzset, report that localtime does not cache TZ, | |
4536 # since we can't invalidate the cache if we don't have tzset. | |
4537 emacs_cv_localtime_cache=no | |
4538 fi],[:])dnl | |
4539 AC_MSG_RESULT($emacs_cv_localtime_cache) | |
4540 if test $emacs_cv_localtime_cache = yes; then | |
4541 AC_DEFINE(LOCALTIME_CACHE) | |
4542 fi | |
4543 | |
4544 if test "$HAVE_TIMEVAL" = "yes"; then | |
4545 AC_MSG_CHECKING(whether gettimeofday accepts one or two arguments) | |
3312 | 4546 AC_LINK_IFELSE([AC_LANG_PROGRAM([ |
2651 | 4547 #ifdef TIME_WITH_SYS_TIME |
4548 #include <sys/time.h> | |
4549 #include <time.h> | |
4550 #else | |
4551 #ifdef HAVE_SYS_TIME_H | |
4552 #include <sys/time.h> | |
4553 #else | |
4554 #include <time.h> | |
4555 #endif | |
4556 #endif | |
4557 ], | |
4558 [ | |
4559 struct timeval time; | |
4560 gettimeofday (&time, 0); | |
3312 | 4561 ])], |
2651 | 4562 [AC_MSG_RESULT(two)], |
4563 [AC_MSG_RESULT(one) | |
4564 AC_DEFINE(GETTIMEOFDAY_ONE_ARGUMENT)]) | |
4565 fi | |
4566 | |
4567 | |
4568 AC_C_INLINE | |
4569 test "$ac_cv_c_inline" != "no" -a "$GCC" = "yes" && XE_ADD_OBJS(inline.o) | |
4570 | |
4571 dnl check for the typeof extension | |
4572 AC_MSG_CHECKING(for typeof) | |
3312 | 4573 AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i; __typeof__(i) j;])], |
4574 typeofname="__typeof__", | |
4575 [AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i; typeof(i) j;])], | |
4576 typeofname="typeof", | |
2651 | 4577 typeofname=no)]) |
4578 AC_MSG_RESULT($typeofname) | |
4579 if test "$typeofname" != "no"; then | |
4580 AC_DEFINE_UNQUOTED(TYPEOF, $typeofname) | |
4581 fi | |
4582 | |
4583 dnl HP-UX has a working alloca in libPW. | |
4584 dnl case "${GCC}${opsys}" in hpux* ) | |
4585 dnl AC_CHECK_FUNC(alloca, [:], [AC_CHECK_LIB(PW, alloca)]) | |
4586 dnl esac | |
4587 | |
4588 dnl AC_FUNC_ALLOCA doesn't know about DEC C's #pragma intrinsic(alloca) | |
4589 if test "$__DECC" != "yes"; then | |
4590 AC_FUNC_ALLOCA | |
4591 test -n "$ALLOCA" && XE_ADD_OBJS($ALLOCA) | |
4592 fi | |
4593 | |
4594 AC_MSG_CHECKING(for working alloca in function calls) | |
4595 AC_RUN_IFELSE([AC_LANG_SOURCE([ | |
4596 #if defined (__CYGWIN__) | |
4597 #include <alloca.h> | |
4598 #elif defined (__GNUC__) | |
4599 #define alloca __builtin_alloca | |
4600 #elif defined (__DECC) | |
4601 #include <alloca.h> | |
4602 #pragma intrinsic(alloca) | |
4603 #elif defined (HAVE_ALLOCA_H) | |
4604 #include <alloca.h> | |
4605 #elif defined (_AIX) | |
4606 #pragma alloca | |
4607 #elif ! defined (alloca) | |
4608 #ifdef C_ALLOCA | |
4609 #define alloca xemacs_c_alloca | |
4610 #else | |
4611 void *alloca (); | |
4612 #endif /* C_ALLOCA */ | |
4613 #endif /* !defined (alloca) */ | |
4614 | |
4615 void | |
4616 f1 (double a, void *ptr, int b) | |
4617 { | |
4618 unsigned char *ptr2 = (unsigned char *) ptr; | |
4619 if (ptr2[[0]] != 0xBF || ptr2[[1]] != 0xBF || ptr2[[3000]] != 0xBF) | |
4620 exit (1); | |
4621 if (a != 3.1415 || b != -5490) | |
4622 exit (1); | |
4623 } | |
4624 | |
4625 int | |
4626 f2 (short c, void *ptr, long e) | |
4627 { | |
4628 unsigned char *ptr2 = (unsigned char *) ptr; | |
4629 if (ptr2[[0]] != 0xFB || ptr2[[1]] != 0xFB || ptr2[[1000]] != 0xFB) | |
4630 exit (1); | |
4631 if (c != 665 || e != 776776776) | |
4632 exit (1); | |
4633 f1 (3.1415, memset (alloca (3001), 0xBF, 3001), -5490); | |
4634 return 42; | |
4635 } | |
4636 | |
4637 int | |
4588
6a6689b96f00
Adopt Martin's suggestion of "char **argv" throughout configure.ac.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4543
diff
changeset
|
4638 main (int argc, char **argv) |
2651 | 4639 { |
4640 if (f2 (665, memset (alloca (1001), 0xFB, 1001), 776776776) != 42) | |
4641 return 1; | |
4642 return 0; | |
4643 } | |
4644 ])], working_alloca_in_function_calls=yes, working_alloca_in_function_calls=no) | |
4645 AC_MSG_RESULT($working_alloca_in_function_calls) | |
4646 test "$working_alloca_in_function_calls" != "yes" && \ | |
4647 AC_DEFINE(BROKEN_ALLOCA_IN_FUNCTION_CALLS) | |
4648 | |
4649 AC_MSG_CHECKING([for working scanf]) | |
4650 AC_RUN_IFELSE([AC_LANG_SOURCE([ | |
4651 int | |
4652 main (int argc, char **argv) | |
4653 { | |
4654 int ret, cp1, cp2, endcount; | |
4655 char *p = "0x7d 0x000E "; | |
4656 ret = sscanf (p, "%i %i%n", &cp1, &cp2, &endcount); | |
4657 /* endcount should be 13 but it's 11 in Cygwin newlib after 6/04; | |
4658 this breaks unicode.c */ | |
4659 return endcount != 13; | |
4660 } | |
4661 ])], working_scanf=yes, working_scanf=no) | |
4662 AC_MSG_RESULT($working_scanf) | |
4663 test "$working_scanf" != "yes" && \ | |
4664 AC_DEFINE(CYGWIN_SCANF_BUG) | |
4665 | |
4666 dnl Check whether strcoll exists and works correctly. (This does more | |
4667 dnl than just check for its existence.) If so, it defines HAVE_STRCOLL. | |
4668 AC_FUNC_STRCOLL | |
4669 | |
4670 dnl If `getpgrp' takes no argument (the POSIX.1 version), define | |
4671 dnl `GETPGRP_VOID'. Otherwise, it is the BSD version, which takes a | |
4672 dnl process ID as an argument. | |
4673 AC_CHECK_FUNCS(getpgrp) | |
4674 AC_FUNC_GETPGRP | |
4675 | |
4676 dnl We used to call AC_FUNC_MMAP here | |
4677 dnl Instead we now use following, suggested by Neal Becker | |
4678 AC_MSG_CHECKING(for working mmap) | |
4679 AC_RUN_IFELSE([AC_LANG_SOURCE([#include <stdio.h> | |
4680 #include <unistd.h> | |
4681 #include <fcntl.h> | |
4682 #include <sys/mman.h> | |
4683 | |
4684 #ifndef MAP_VARIABLE | |
4685 #define MAP_VARIABLE 0 | |
4686 #endif | |
4687 | |
4688 #ifndef MAP_FAILED | |
4689 #define MAP_FAILED -1 | |
4690 #endif | |
4691 | |
4588
6a6689b96f00
Adopt Martin's suggestion of "char **argv" throughout configure.ac.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4543
diff
changeset
|
4692 int main (int argc, char **argv) |
2651 | 4693 { |
4694 int fd = -1; | |
4695 caddr_t p; | |
4696 #ifndef MAP_ANONYMOUS | |
4697 fd = open ("/dev/zero", O_RDWR); | |
4698 if (fd < 0) | |
4699 return 1; | |
4700 #define MAP_ANONYMOUS 0 | |
4701 #endif | |
4702 if (mmap(0, 1024, PROT_READ | PROT_WRITE, | |
4703 MAP_PRIVATE | MAP_VARIABLE | MAP_ANONYMOUS, | |
4704 fd, 0) != (void *) MAP_FAILED) | |
4705 return 0; | |
4706 perror ("conftest: mmap failed"); | |
4707 return 1; | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
4708 }])], have_mmap=yes, have_mmap=no) |
2651 | 4709 AC_MSG_RESULT($have_mmap) |
4710 test "$have_mmap" = "yes" && AC_DEFINE(HAVE_MMAP) | |
4711 | |
4712 dnl By default we switch off rel-alloc on cygwin as it generally causes us grief | |
4713 case "$opsys" in cygwin*) | |
4714 test "$with_rel_alloc" = "default" && with_rel_alloc=no ;; | |
4715 esac | |
4716 dnl rel_alloc requires either GNU malloc or system malloc with mmap | |
4717 dnl We only turn rel_alloc on by default if mmap is available. | |
4718 test "$GNU_MALLOC" != "yes" -a "$have_mmap" != "yes" && with_rel_alloc=no | |
4719 if test "$with_rel_alloc $have_mmap" = "default yes"; then | |
4720 if test "$doug_lea_malloc" = "yes"; then | |
4721 dnl Check if malloc() calls mmap(), making rel_alloc pointless. | |
4722 AC_MSG_CHECKING(for M_MMAP_THRESHOLD) | |
3312 | 4723 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <malloc.h>],[ |
2651 | 4724 #ifndef M_MMAP_THRESHOLD |
4725 #error No M_MMAP_THRESHOLD :-( | |
4726 !@+$%^&*_)(_ - unlikely to compile... | |
4727 #endif | |
3312 | 4728 ])], [with_rel_alloc=no; AC_MSG_RESULT(yes);], |
4729 [with_rel_alloc=yes; AC_MSG_RESULT(no);]) | |
2651 | 4730 else |
4731 with_rel_alloc=yes | |
4732 fi | |
4733 fi | |
4734 test "$with_rel_alloc" = "yes" && AC_DEFINE(REL_ALLOC) | |
4735 | |
4736 dnl Check for terminal I/O variants | |
4737 dnl TERMIOS systems may have termio.h, but not vice-versa, I think. | |
4738 AC_CHECK_HEADER(termios.h, | |
4739 AC_DEFINE(HAVE_TERMIOS) | |
4740 AC_DEFINE(SIGNALS_VIA_CHARACTERS) | |
4741 AC_DEFINE(NO_TERMIO), | |
4742 [AC_CHECK_HEADER(termio.h, [AC_DEFINE(HAVE_TERMIO)])]) | |
4743 | |
4744 | |
4745 dnl Check for Internet sockets. | |
4746 AC_CHECK_FUNC(socket, | |
4747 [AC_CHECK_HEADER(netinet/in.h, | |
4748 [AC_CHECK_HEADER(arpa/inet.h, [ | |
4749 AC_DEFINE(HAVE_SOCKETS) | |
3312 | 4750 AC_MSG_CHECKING([for sun_len member in struct sockaddr_un]) |
4751 AC_LINK_IFELSE([AC_LANG_PROGRAM([ | |
2651 | 4752 #include <sys/types.h> |
4753 #include <sys/socket.h> | |
4754 #include <sys/un.h> | |
4755 ], | |
3312 | 4756 [static struct sockaddr_un x; x.sun_len = 1;])], |
2651 | 4757 [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_SOCKADDR_SUN_LEN)], |
4758 [AC_MSG_RESULT(no)]) | |
3312 | 4759 AC_MSG_CHECKING([for ip_mreq struct in netinet/in.h]) |
4760 AC_LINK_IFELSE([AC_LANG_PROGRAM([ | |
2651 | 4761 #include <sys/types.h> |
4762 #include <netinet/in.h> | |
4763 ], | |
3312 | 4764 [static struct ip_mreq x;])], |
2651 | 4765 [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_MULTICAST)], |
4766 [AC_MSG_RESULT(no)])])])]) | |
4767 | |
4768 dnl Check for SYS V IPC. (Inferior to sockets.) | |
4769 AC_CHECK_FUNC(msgget, | |
4770 [AC_CHECK_HEADER(sys/ipc.h, | |
4771 [AC_CHECK_HEADER(sys/msg.h, | |
4772 [AC_DEFINE(HAVE_SYSVIPC)])])]) | |
4773 | |
4774 dnl Check for directory variants | |
4775 AC_CHECK_HEADER(dirent.h, [AC_DEFINE(SYSV_SYSTEM_DIR)], | |
4776 [AC_CHECK_HEADER(sys/dir.h, , [AC_DEFINE(NONSYSTEM_DIR_LIBRARY)])]) | |
4777 | |
4778 dnl Check for nlist.h | |
4779 AC_CHECK_HEADER(nlist.h, AC_DEFINE(NLIST_STRUCT), ) | |
4780 | |
4781 dnl Check for sound of various sorts. | |
3312 | 4782 AC_MSG_CHECKING([for sound support]) |
4783 AC_MSG_RESULT() | |
2651 | 4784 |
4785 dnl Autodetect native sound | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4786 test -n "$with_native_sound_lib" && with_sound_native=yes |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4787 |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4788 if test "$with_sound_native" != "no"; then |
2651 | 4789 dnl Maybe sound is already on include path... |
4790 if test -n "$with_native_sound_lib"; then | |
4791 AC_CHECK_HEADER(multimedia/audio_device.h, | |
4792 [sound_found=yes sound_cflags="" | |
4793 XE_ADD_OBJS(sunplay.o)]) | |
4794 fi | |
4795 | |
4796 dnl Autodetect Sun native sound from SUNWaudmo package | |
4797 if test -z "$sound_found" -a -d "/usr/demo/SOUND"; then | |
4798 if test -d "/usr/demo/SOUND/include/multimedia"; then | |
4799 sun_sound_cflags="-I/usr/demo/SOUND/include" | |
4800 elif test -d "/usr/demo/SOUND/multimedia"; then | |
4801 sun_sound_cflags="-I/usr/demo/SOUND" | |
4802 fi | |
4803 | |
4804 if test -n "$with_native_sound_lib"; then | |
4805 sun_sound_lib="$with_native_sound_lib" | |
4806 elif test -r "/usr/demo/SOUND/lib/libaudio.a"; then | |
4807 sun_sound_lib="/usr/demo/SOUND/lib/libaudio.a" | |
4808 elif test -r "/usr/demo/SOUND/libaudio.a"; then | |
4809 sun_sound_lib="/usr/demo/SOUND/libaudio.a" | |
4810 fi | |
4811 | |
4812 if test -n "$sun_sound_cflags" -a -n "$sun_sound_lib"; then | |
4813 with_native_sound_lib="$sun_sound_lib" | |
4814 sound_cflags="$sun_sound_cflags" | |
4815 sound_found=yes | |
4816 XE_ADD_OBJS(sunplay.o) | |
4817 fi | |
4818 fi | |
4819 | |
4820 dnl Check for SGI and HP native sound libs | |
4821 if test -z "$sound_found"; then | |
4822 case "$ac_cv_build" in | |
4823 *-sgi-* ) | |
4824 if test -z "$with_native_sound_lib"; then | |
4825 AC_CHECK_LIB(audio, ALopenport, with_native_sound_lib="-laudio") | |
4826 fi | |
4827 if test -n "$with_native_sound_lib"; then | |
4828 sound_found=yes sound_cflags="" | |
4829 XE_ADD_OBJS(sgiplay.o) | |
4830 fi ;; | |
4831 hppa*-hp-hpux* ) | |
4832 if test -z "$with_native_sound_lib"; then | |
4833 AC_CHECK_LIB(Alib, AOpenAudio, with_native_sound_lib="-lAlib") | |
4834 fi | |
4835 if test -n "$with_native_sound_lib"; then | |
4836 sound_found=yes | |
4837 XE_ADD_OBJS(hpplay.o) | |
4838 if test "$GCC" = "yes" # Kludge city | |
4839 then sound_cflags="-Dconst= -Dvolatile= -I/usr/audio/examples" | |
4840 else sound_cflags="+e -I/usr/audio/examples" | |
4841 fi | |
4842 fi ;; | |
4843 esac | |
4844 fi | |
4845 | |
3060 | 4846 dnl Win32 uses native sound |
2651 | 4847 if test -z "$sound_found"; then |
3060 | 4848 case "$opsys" in cygwin* | mingw* ) |
2651 | 4849 sound_found=yes |
4850 with_native_sound_lib= | |
4851 XE_ADD_OBJS(ntplay.o) | |
3060 | 4852 ;; |
4853 esac | |
2651 | 4854 fi |
4855 | |
4856 dnl Check for Linux/BSD native sound (also on recent Cygwins) | |
4857 if test -z "$sound_found"; then | |
4858 for dir in "machine" "sys" "linux"; do | |
4859 AC_CHECK_HEADER([${dir}/soundcard.h], [ | |
4860 sound_found=yes | |
2663 | 4861 case "${ac_cv_build}" in |
2651 | 4862 *netbsd* ) |
4863 # #### this is probably not the right way to do this | |
4864 # we should port to native NetBSD stuff | |
2663 | 4865 |
4866 dnl Aidan says: We have other things to be doing. If some | |
4867 dnl energetic NetBSD partisan volunteers, then yeah, cool, | |
4868 dnl but as it is, this works, and is unlikely to stop | |
4869 dnl working any time soon. | |
4870 | |
2651 | 4871 AC_CHECK_LIB(ossaudio, _oss_ioctl, |
2663 | 4872 [with_native_sound_lib=-lossaudio |
2651 | 4873 AC_MSG_WARN([Using NetBSD-deprecated -lossaudio])], |
4874 [sound_found=no]) | |
4875 ;; | |
4876 dnl Aidan sez: OpenBSD as well can use Linux's sound API, and needs | |
4877 dnl the same library. Add here! | |
4878 esac | |
4879 break]) | |
4880 done | |
4881 | |
4882 if test "$sound_found" = "yes"; then | |
4883 need_miscplay=yes | |
4884 XE_ADD_OBJS(linuxplay.o) | |
4885 AC_DEFINE_UNQUOTED(SOUNDCARD_H_FILE, ["${dir}/soundcard.h"]) | |
4886 fi | |
4887 fi | |
4888 | |
4889 if test "$sound_found" = "yes"; then | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4890 with_sound_native=yes |
2651 | 4891 else |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4892 if test "$with_sound_native" = "yes" ; then |
2651 | 4893 AC_MSG_WARN([No native libraries found. Disabling native sound support.]) |
4894 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4895 with_sound_native=no |
2651 | 4896 fi |
4897 fi | |
4898 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4899 if test "$with_sound_native" = "yes"; then |
2651 | 4900 AC_DEFINE(HAVE_NATIVE_SOUND) |
4901 test -n "$with_native_sound_lib" && XE_PREPEND($with_native_sound_lib, LIBS) | |
4902 fi | |
4903 | |
3308 | 4904 dnl ALSA sound support |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4905 if test "$with_sound_alsa" != "no"; then |
3309 | 4906 AC_CHECK_HEADER([alsa/input.h], [ |
3308 | 4907 AC_CHECK_LIB(asound, snd_pcm_open, have_alsa_sound=yes)]) |
4908 if test "$have_alsa_sound" = "yes"; then | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4909 with_sound_alsa=yes |
3308 | 4910 AC_DEFINE(HAVE_ALSA_SOUND) |
4911 XE_ADD_OBJS(alsaplay.o) | |
4912 XE_PREPEND(-lasound, LIBS) | |
4913 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4914 test "$with_sound_alsa" = "yes" && \ |
3308 | 4915 XE_DIE("Required ALSA sound support cannot be provided.") |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4916 with_sound_alsa=no |
3308 | 4917 fi |
4918 fi | |
4919 | |
2651 | 4920 dnl NAS Sound support |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4921 if test "$with_sound_nas" != "no"; then |
2651 | 4922 AC_CHECK_HEADER(audio/audiolib.h, [ |
4923 AC_CHECK_LIB(audio, AuOpenServer, have_nas_sound=yes)]) | |
4924 if test "$have_nas_sound" = "yes"; then | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4925 with_sound_nas=yes |
2651 | 4926 AC_DEFINE(HAVE_NAS_SOUND) |
4927 XE_ADD_OBJS(nas.o) | |
4928 XE_PREPEND(-laudio, libs_x) | |
4929 dnl If the nas library does not contain the error jump point, | |
4930 dnl then we force safer behavior. | |
4931 AC_EGREP_HEADER(AuXtErrorJump,audio/Xtutil.h,,[old_nas=yes; AC_DEFINE(NAS_NO_ERROR_JUMP)]) | |
4932 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4933 test "$with_sound_nas" = "yes" && \ |
2651 | 4934 XE_DIE("Required NAS sound support cannot be provided.") |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4935 with_sound_nas=no |
2651 | 4936 fi |
4937 fi | |
4938 | |
4939 dnl ESD Sound support | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4940 if test "$with_sound_esd" != "no"; then |
2651 | 4941 AC_CHECK_PROG(have_esd_config, esd-config, yes, no) |
4942 if test "$have_esd_config" = "yes"; then | |
4943 save_c_switch_site="$c_switch_site" save_LIBS="$LIBS" | |
4944 XE_APPEND(`esd-config --cflags`, c_switch_site) | |
4945 XE_PREPEND(`esd-config --libs`, LIBS) | |
4946 AC_CHECK_FUNC(esd_play_stream, | |
4947 have_esd_sound=yes, | |
4948 c_switch_site="$save_c_switch_site" LIBS="$save_LIBS") | |
4949 fi | |
4950 | |
4951 if test "$have_esd_sound" = "yes"; then | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4952 with_sound_esd=yes |
2651 | 4953 need_miscplay=yes |
4954 XE_ADD_OBJS(esd.o) | |
4955 AC_DEFINE(HAVE_ESD_SOUND) | |
4956 else | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4957 test "$with_sound_esd" = "yes" && \ |
2651 | 4958 XE_DIE("Required ESD sound support cannot be provided.") |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
4959 with_sound_esd=no |
2651 | 4960 fi |
4961 fi | |
4962 | |
4963 test "$need_miscplay" = "yes" && XE_ADD_OBJS(miscplay.o) | |
4964 | |
4965 dnl --------------------- | |
4966 dnl TTY-dependent options | |
4967 dnl --------------------- | |
4968 | |
4969 test -z "$with_tty" && with_tty=yes | |
4970 | |
4971 if test "$with_tty" = "yes" ; then | |
3312 | 4972 AC_MSG_CHECKING([for TTY-related features]) |
4973 AC_MSG_RESULT() | |
2651 | 4974 AC_DEFINE(HAVE_TTY) |
4975 | |
4976 dnl Autodetect ncurses. | |
4977 if test -z "$with_ncurses"; then | |
4978 AC_CHECK_LIB(ncurses, tgetent, with_ncurses=yes, with_ncurses=no) | |
4979 fi | |
4980 if test "$with_ncurses" = "yes"; then | |
4981 AC_DEFINE(HAVE_NCURSES) | |
4982 AC_CHECK_HEADER(ncurses/curses.h, curses_h_file=ncurses/curses.h) | |
4983 AC_CHECK_HEADER(ncurses/term.h, term_h_file=ncurses/term.h) | |
4984 XE_ADD_OBJS(terminfo.o) | |
4985 XE_PREPEND(-lncurses, LIBS) | |
4986 | |
4987 if test "$ac_cv_header_ncurses_curses_h" != "yes" ; then | |
4988 dnl Try again, and check for the bogus ncurses/ include bug. | |
4989 dnl (i.e. ncurses/curses.h bogusly includes <unctrl.h> instead of | |
4990 dnl <ncurses/unctrl.h>) | |
4991 save_c_switch_site="$c_switch_site" | |
4992 c_switch_site="$c_switch_site -I/usr/include/ncurses" | |
4993 AC_CHECK_HEADER(ncurses/curses.h, curses_h_file=ncurses/curses.h) | |
4994 if test "$ac_cv_header_ncurses_curses_h" = "yes" | |
4995 then AC_MSG_WARN([Your system has the bogus ncurses include bug.]) | |
4996 else c_switch_site="$save_c_switch_site" | |
4997 fi | |
4998 fi | |
4999 else dnl "$with_ncurses" = "no" | |
5000 dnl Autodetect terminfo/-lcurses/-ltermlib/-ltermcap | |
5001 if test "$have_terminfo" = "yes"; then | |
5002 XE_ADD_OBJS(terminfo.o) | |
5003 if test -n "$libs_termcap"; then | |
5004 XE_PREPEND($libs_termcap, LIBS) | |
5005 else | |
5006 for lib in curses termlib termcap; do | |
5007 AC_CHECK_LIB($lib, tgetent, XE_PREPEND(-l${lib}, LIBS); break) | |
5008 done | |
5009 fi | |
5010 else dnl "$have_terminfo" = "no" && "with_ncurses" = "no" | |
5011 XE_ADD_OBJS(tparam.o) | |
5012 dnl The HP-UX curses library seems to have a badly broken version of select(2) | |
5013 dnl that makes "poll: interrupted system call" messages to appear and | |
5014 dnl Emacs subprocesses to hang (e.g. TeX compilation w/ AUCTeX) */ | |
5015 case "$opsys" in *-hp-hpux* ) libs_termcap="-ltermcap" ;; esac | |
5016 if test -n "$libs_termcap"; then | |
5017 XE_PREPEND($libs_termcap, LIBS) | |
5018 else | |
5019 AC_CHECK_LIB(curses, tgetent, XE_PREPEND(-lcurses, LIBS), | |
5020 AC_CHECK_LIB(termcap, tgetent, XE_PREPEND(-ltermcap, LIBS), | |
5021 XE_ADD_OBJS(termcap.o))) | |
5022 fi | |
5023 fi | |
5024 fi | |
5025 AC_DEFINE_UNQUOTED(CURSES_H_FILE, "${curses_h_file-curses.h}") | |
5026 AC_DEFINE_UNQUOTED(TERM_H_FILE, "${term_h_file-term.h}") | |
5027 | |
5028 dnl General Purpose Mouse (libgpm) support | |
5029 if test "$with_gpm" != "no"; then | |
5030 AC_CHECK_HEADER(gpm.h, [ | |
5031 AC_CHECK_LIB(gpm, Gpm_Open, have_gpm=yes)]) | |
5032 if test "$have_gpm" = "yes"; then | |
5033 with_gpm=yes | |
5034 AC_DEFINE(HAVE_GPM) | |
5035 XE_PREPEND(-lgpm, LIBS) | |
5036 elif test "$with_gpm" = "yes"; then | |
5037 XE_DIE(["GPM requested, but gpm.h or libgpm seems to be missing."]) | |
5038 else | |
5039 with_gpm=no | |
5040 fi | |
5041 fi | |
5042 | |
5043 else dnl "$with_tty" = "no" | |
5044 for feature in ncurses gpm; do | |
5045 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then | |
5046 AC_MSG_WARN([--with-${feature} ignored: Not valid without TTY support]) | |
5047 fi | |
5048 eval "with_${feature}=no" | |
5049 done | |
5050 fi dnl with_tty | |
5051 | |
5052 dnl Database support | |
5053 dnl We do not necessarily have to have libdb/lib(g)dbm for DB/(G)DBM support. | |
5054 dnl On FreeBSD, both DB and DBM are part of libc. | |
5055 dnl By default, we check for DBM support in libgdbm, then libc, then libdbm. | |
5056 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5057 test "$with_database_gdbm $with_database_dbm $with_database_berkdb" \ |
3312 | 5058 != "no no no" && AC_MSG_CHECKING([for database support]) && \ |
5059 AC_MSG_RESULT() | |
2651 | 5060 |
5061 dnl Check for ndbm.h, required for either kind of DBM support. | |
4699
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4661
diff
changeset
|
5062 dnl #### Should we check for gdbm.h, too? (Seen on MacPorts.) |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5063 if test "$with_database_gdbm $with_database_dbm" != "no no"; then |
4699
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4661
diff
changeset
|
5064 ndbm_h_file="" |
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4661
diff
changeset
|
5065 AC_CHECK_HEADERS([ndbm.h gdbm/ndbm.h],[ndbm_h_file=$ac_header; break;],[],[]) |
4762
53f27fcd3cd9
Make configure --with-database={dbm|gdbm} work again.
Mike Alexander <mta@umich.edu>
parents:
4759
diff
changeset
|
5066 if test "x$ndbm_h_file" = "x"; then |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5067 test "$with_database_gdbm" = "yes" -o \ |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5068 "$with_database_dbm" = "yes" && \ |
2651 | 5069 XE_DIE("Required DBM support cannot be provided.") |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5070 with_database_gdbm=no with_database_dbm=no] |
4699
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4661
diff
changeset
|
5071 fi |
2651 | 5072 fi |
5073 | |
5074 dnl Check for DBM support in libgdbm. | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5075 if test "$with_database_gdbm" != "no"; then |
2651 | 5076 AC_CHECK_LIB(gdbm, dbm_open, [ |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5077 with_database_gdbm=yes with_database_dbm=no libdbm=-lgdbm], [ |
4401
01970033faa6
Configure fixes from Hans de Graaff, as used in Gentoo.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4350
diff
changeset
|
5078 AC_CHECK_LIB(gdbm_compat, dbm_open, [ |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5079 with_database_gdbm=yes with_database_dbm=no libdbm="-lgdbm_compat -lgdbm"], [ |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5080 if test "$with_database_gdbm" = "yes"; then |
2651 | 5081 XE_DIE("Required GNU DBM support cannot be provided.") |
5082 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5083 with_database_gdbm=no], -lgdbm) |
4401
01970033faa6
Configure fixes from Hans de Graaff, as used in Gentoo.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4350
diff
changeset
|
5084 ]) |
2651 | 5085 fi |
5086 | |
5087 dnl Check for DBM support in libc and libdbm. | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5088 if test "$with_database_dbm" != "no"; then |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5089 AC_CHECK_FUNC(dbm_open, [with_database_dbm=yes libdbm=], [ |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5090 AC_CHECK_LIB(dbm, dbm_open, [with_database_dbm=yes libdbm=-ldbm], [ |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5091 test "$with_database_dbm" = "yes" && \ |
2651 | 5092 XE_DIE("Required DBM support cannot be provided.") |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5093 with_database_dbm=no])]) |
2651 | 5094 fi |
5095 | |
5096 dnl Tell make about the DBM support we detected. | |
5097 test -n "$libdbm" && XE_PREPEND("$libdbm", LIBS) | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5098 if test "$with_database_gdbm" = "yes" -o \ |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5099 "$with_database_dbm" = "yes"; then |
4699
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4661
diff
changeset
|
5100 AC_DEFINE_UNQUOTED(NDBM_H_FILE,"$ndbm_h_file") |
2651 | 5101 AC_DEFINE(HAVE_DBM) |
4991
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5102 dnl gdbm's ndbm.h has old-style prototypes with missing arguments. |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5103 dnl These just don't cut it for c++. So if we're using c++, then |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5104 dnl test whether we can make a dbm call, using dbm_close(DBM *). |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5105 if test "$XEMACS_CC_GPP" = "yes"; then |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5106 AC_MSG_RESULT() |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5107 AC_LANG_PUSH(C++) |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5108 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include "$ndbm_h_file"], |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5109 [dbm_close((DBM *) 0);])], |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5110 [AC_MSG_CHECKING(whether ndbm.h is compatible with g++) |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5111 AC_MSG_RESULT(yes) |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5112 AC_DEFINE(TRUST_NDBM_H_PROTOTYPES)], |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5113 [AC_MSG_CHECKING(whether ndbm.h is compatible with g++) |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5114 AC_MSG_RESULT(no)]) |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5115 AC_LANG_POP() |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5116 else |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5117 AC_DEFINE(TRUST_NDBM_H_PROTOTYPES) |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
5118 fi |
4699
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4661
diff
changeset
|
5119 $as_unset ndbm_h_file |
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4661
diff
changeset
|
5120 fi |
2651 | 5121 |
3739 | 5122 dnl Check for u_int*_t typedefs. |
5123 AC_CHECK_TYPES([u_int8_t, u_int16_t, u_int32_t]) | |
5124 | |
2651 | 5125 dnl Check for Berkeley DB. |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5126 if test "$with_database_berkdb" != "no"; then |
2651 | 5127 AC_MSG_CHECKING(for Berkeley db.h) |
5128 for header in "db/db.h" "db.h"; do | |
3312 | 5129 AC_COMPILE_IFELSE([AC_LANG_SOURCE([ |
2651 | 5130 #include <stdlib.h> |
5131 #if !(defined __GLIBC__ && __GLIBC_MINOR__ >= 1) | |
5132 #ifdef HAVE_INTTYPES_H | |
5133 #define __BIT_TYPES_DEFINED__ | |
5134 #include <inttypes.h> | |
3739 | 5135 #if !HAVE_U_INT8_T |
2651 | 5136 typedef uint8_t u_int8_t; |
3739 | 5137 #endif |
5138 #if !HAVE_U_INT16_T | |
2651 | 5139 typedef uint16_t u_int16_t; |
3739 | 5140 #endif |
5141 #if !HAVE_U_INT32_T | |
2651 | 5142 typedef uint32_t u_int32_t; |
3739 | 5143 #endif |
2651 | 5144 #ifdef WE_DONT_NEED_QUADS |
3739 | 5145 #if !HAVE_U_INT64_T |
2651 | 5146 typedef uint64_t u_int64_t; |
5147 #endif | |
5148 #endif | |
5149 #endif | |
3739 | 5150 #endif |
2651 | 5151 #include <$header> |
3312 | 5152 ])], db_h_file="$header"; break) |
2651 | 5153 done |
5154 if test -z "$db_h_file" | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5155 then AC_MSG_RESULT(no); with_database_berkdb=no |
2651 | 5156 else AC_MSG_RESULT($db_h_file) |
5157 fi | |
5158 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5159 if test "$with_database_berkdb" != "no"; then |
2651 | 5160 AC_MSG_CHECKING(for Berkeley DB version) |
5161 AC_EGREP_CPP(yes, | |
5162 [#include <$db_h_file> | |
5163 #if DB_VERSION_MAJOR > 1 | |
5164 yes | |
5165 #endif | |
5166 ], [AC_EGREP_CPP(yes, | |
5167 [#include <$db_h_file> | |
5168 #if DB_VERSION_MAJOR > 2 | |
5169 yes | |
5170 #endif | |
5171 ], [AC_EGREP_CPP(yes, | |
5172 [#include <$db_h_file> | |
5173 #if DB_VERSION_MAJOR > 3 | |
5174 yes | |
5175 #endif | |
5176 ], [AC_MSG_RESULT(4); dbfunc=db_create; dbver=4],[ | |
5177 AC_MSG_RESULT(3); dbfunc=db_create; dbver=3])],[ | |
5178 AC_MSG_RESULT(2); dbfunc=db_open; dbver=2])],[ | |
5179 AC_MSG_RESULT(1); dbfunc=dbopen; dbver=1]) | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5180 AC_CHECK_FUNC($dbfunc, with_database_berkdb=yes need_libdb=no, [ |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5181 AC_CHECK_LIB(db, $dbfunc, with_database_berkdb=yes need_libdb=yes)]) |
2651 | 5182 fi |
5183 | |
5184 dnl Berk db 4.1 decorates public functions with version information | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5185 if test "$with_database_berkdb" = "yes" -a "$dbver" = "4"; then |
2651 | 5186 rm -f $tempcname |
5187 echo "#include <$db_h_file>" > $tempcname | |
5188 echo "configure___ dbfunc=db_create" >> $tempcname | |
5189 define(TAB, [ ])dnl | |
5190 eval `$CPP -Isrc $tempcname \ | |
5191 | sed -n -e "s/[[ TAB]]*=[[ TAB\"]]*/='/" -e "s/[[ TAB\"]]*\$/'/" -e "s/^configure___//p"` | |
5192 rm -f $tempcname | |
5193 AC_MSG_WARN("db_create is really $dbfunc") | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5194 AC_CHECK_LIB(db, $dbfunc, with_database_berkdb=yes need_libdb=yes) |
2651 | 5195 fi |
5196 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5197 if test "$with_database_berkdb" = "yes"; then |
2651 | 5198 AC_DEFINE_UNQUOTED(DB_H_FILE, "$db_h_file") |
5199 AC_DEFINE(HAVE_BERKELEY_DB) | |
5200 test "$need_libdb" = "yes" && XE_PREPEND(-ldb, LIBS) | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5201 else with_database_berkdb=no |
2651 | 5202 fi |
5203 fi | |
5204 | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5205 if test "$with_database_gdbm $with_database_dbm $with_database_berkdb" \ |
2651 | 5206 != "no no no"; then |
5207 AC_DEFINE(HAVE_DATABASE) | |
5208 fi | |
5209 | |
5210 dnl Socks support | |
5211 if test "$with_socks" = "yes"; then | |
5212 AC_CHECK_LIB(socks, SOCKSinit) | |
5213 test -n "$ac_cv_lib_socks_SOCKSinit" && AC_DEFINE(HAVE_SOCKS) | |
5214 fi | |
5215 | |
5216 dnl Usage tracking (undocumented and likely unused option) | |
5217 if test "$usage_tracking" = "yes"; then | |
5218 AC_DEFINE(USAGE_TRACKING) | |
5219 XE_PREPEND(-Bstatic -lut -Bdynamic, LIBS) | |
5220 fi | |
5221 | |
5222 dnl Enhanced number support | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5223 if test "$with_bignum" = "gmp"; then |
2651 | 5224 AC_CHECK_HEADER(gmp.h, [ |
5225 AC_CHECK_LIB(gmp, __gmpz_init, have_mpz_init=yes)]) | |
5226 if test "$have_mpz_init" = "yes"; then | |
5227 AC_DEFINE(WITH_NUMBER_TYPES) | |
5228 AC_DEFINE(WITH_GMP) | |
5229 XE_PREPEND(-lgmp, LIBS) | |
5230 else | |
5231 XE_DIE("Required GMP numeric support cannot be provided.") | |
5232 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5233 elif test "$with_bignum" = "mp"; then |
2651 | 5234 for library in "" "-lcrypto"; do |
5235 AC_CHECK_HEADER(mp.h, [ | |
5236 AC_CHECK_LIB(mp, mp_mfree, have_mp_mfree=yes; break, [ | |
5237 AC_CHECK_LIB(mp, mfree, have_mfree=yes; break, , $library)], | |
5238 $library)]) | |
5239 done | |
5240 if test "$have_mp_mfree" = "yes"; then | |
5241 AC_DEFINE(MP_PREFIX) | |
5242 XE_APPEND(-lmp, LIBS) | |
5243 if test "$library" != ""; then | |
5244 XE_APPEND($library, LIBS) | |
5245 fi | |
5246 AC_CHECK_FUNC(mp_move, [AC_DEFINE(HAVE_MP_MOVE)]) | |
5247 elif test "$have_mfree" = "yes"; then | |
5248 XE_APPEND(-lmp, LIBS) | |
5249 if test "$library" != ""; then | |
5250 XE_APPEND($library, LIBS) | |
5251 fi | |
5252 AC_CHECK_FUNC(move, [AC_DEFINE(HAVE_MP_MOVE)]) | |
5253 else | |
5254 XE_DIE("Required MP numeric support cannot be provided.") | |
5255 fi | |
5256 AC_DEFINE(WITH_NUMBER_TYPES) | |
5257 AC_DEFINE(WITH_MP) | |
5258 fi | |
5259 | |
5260 dnl Unfortunately, just because we can link doesn't mean we can run. | |
5261 dnl One of the above link tests may have succeeded but caused resulting | |
5262 dnl executables to fail to run. Also any tests using AC_RUN_IFELSE will | |
5263 dnl have reported incorrect results. | |
4537
7ca6d57ce12d
Clarify syntax in configure.ac following Vladimir Ivanovic's change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4536
diff
changeset
|
5264 AC_RUN_IFELSE([AC_LANG_SOURCE([int main(int c,char **v){return 0;}])],[:],[ |
2651 | 5265 echo "" |
5266 echo "*** PANIC *** The C compiler can no longer build working executables." | |
5267 echo "*** PANIC *** Please examine the tail of config.log for runtime errors." | |
5268 echo "*** PANIC *** The most likely reason for this problem is that configure" | |
5269 echo "*** PANIC *** links with shared libraries, but those libraries cannot be" | |
5270 echo "*** PANIC *** found at run time." | |
5271 echo "*** PANIC ***" | |
5272 echo "*** PANIC *** On a Linux system, edit /etc/ld.so.conf and re-run ldconfig." | |
5273 echo "*** PANIC *** On other systems, try telling configure where to find the" | |
5274 echo "*** PANIC *** shared libraries using the --with-site-runtime-libraries option" | |
5275 echo "*** PANIC ***" | |
5276 echo "*** PANIC *** Another way to shoot yourself in the foot is to specify" | |
5277 echo "*** PANIC *** --with-FEATURE when FEATURE is not actually installed" | |
5278 echo "*** PANIC *** on your system. Don't do that." | |
5279 exit 1]) | |
5280 | |
5281 dnl Process support | |
5282 if test "$win32_processes" != "yes"; then | |
5283 AC_DEFINE(HAVE_UNIX_PROCESSES) | |
5284 fi | |
5285 | |
5286 dnl -------------------------------- | |
5287 dnl Compute SUBST-itutable variables | |
5288 dnl -------------------------------- | |
5289 | |
5290 dnl We ignore (C|LD)_SWITCH_X_(MACHINE|SYSTEM) | |
5291 dnl Use XE_SPACE instead of plain assignment statements to remove extraneous blanks | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5292 if test "$with_modules" = "yes"; then |
2651 | 5293 ld_libs_module= |
5294 else | |
2973 | 5295 XE_SPACE(ld_libs_module, $ldap_libs $postgresql_libs $canna_libs) |
2651 | 5296 fi |
5297 | |
5298 XE_SPACE(CFLAGS, $CFLAGS) | |
5299 XE_SPACE(extra_objs, $extra_objs) | |
5300 XE_SPACE(c_switch_general, -DHAVE_CONFIG_H $c_switch_site $c_switch_machine $c_switch_system) | |
5301 XE_SPACE(c_switch_window_system, $c_switch_x_site $c_switch_gtk $X_CFLAGS) | |
5302 XE_SPACE(c_switch_all, $c_switch_general $c_switch_window_system) | |
5303 XE_SPACE(ld_switch_general, $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_run) | |
5304 XE_SPACE(ld_switch_window_system, $ld_switch_x_site) | |
5305 XE_SPACE(ld_switch_all, $ld_switch_general $ld_switch_window_system) | |
5306 XE_SPACE(ld_libs_general, $LIBS $libs_machine $libs_system $libs_standard) | |
5307 XE_SPACE(ld_libs_window_system, $X_EXTRA_LIBS $libs_x $libs_gtk $X_PRE_LIBS) | |
5308 XE_SPACE(ld_libs_all, $ld_libs_window_system $ld_libs_general $ld_libs_module) | |
5309 | |
5310 dnl For no-module builds, make the src dir last | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5311 if test "$with_modules" = "no"; then |
2651 | 5312 XE_APPEND(src, MAKE_SUBDIR) |
5313 fi | |
5314 | |
5315 dnl Compute lists of Makefiles and subdirs | |
5316 AC_SUBST(SRC_SUBDIR_DEPS) | |
4939
349f01075eb7
build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents:
4932
diff
changeset
|
5317 internal_makefile_list="Makefile.in src/.gdbinit.in" |
2651 | 5318 SUBDIR_MAKEFILES='' |
5319 test -d lock || mkdir lock | |
5320 for dir in $MAKE_SUBDIR; do | |
5321 case "$dir" in */* ) dnl Implement mkdir -p | |
5322 ( for d in `echo $dir | sed 's:/: :g'` ; do | |
5323 test -d "$d" || mkdir "$d"; cd "$d" | |
5324 done ) ;; | |
5325 * ) test -d "$dir" || mkdir "$dir" ;; | |
5326 esac | |
5327 XE_SPACE(SUBDIR_MAKEFILES, $SUBDIR_MAKEFILES $dir/Makefile $dir/GNUmakefile) | |
5328 XE_SPACE(internal_makefile_list, $internal_makefile_list $dir/Makefile.in) | |
5329 done | |
5330 AC_SUBST(INSTALL_ARCH_DEP_SUBDIR) | |
5331 AC_SUBST(MAKE_SUBDIR) | |
5332 AC_SUBST(SUBDIR_MAKEFILES) | |
5333 | |
5334 dnl Make s&m symlinks in the src directory, for config.h. | |
5335 for dir in src/s src/m; do | |
5336 if test ! -d "$dir" ; then | |
5337 echo Making symbolic link to "$srcdir/$dir" | |
5338 ${LN_S} "$srcdir/$dir" "$dir" | |
5339 fi | |
5340 done | |
5341 | |
5342 dnl Also make modules/common link if needed for the module Makefiles. | |
5343 if test "$need_modules_common" = "yes"; then | |
5344 for dir in modules/common; do | |
5345 if test ! -d "$dir" ; then | |
5346 echo Making symbolic link to "$srcdir/$dir" | |
5347 ${LN_S} "$srcdir/$dir" "$dir" | |
5348 fi | |
5349 done | |
5350 fi | |
5351 | |
5352 if test "$verbose" = "yes"; then | |
5353 echo "" | |
5354 PRINT_VAR(extra_objs | |
5355 c_switch_general c_switch_window_system c_switch_all | |
5356 ld_switch_general ld_switch_window_system ld_switch_all | |
5357 ld_libs_general ld_libs_window_system ld_libs_all) | |
5358 echo "" | |
5359 fi | |
5360 | |
5361 dnl ---------------------------------------------- | |
5362 dnl Create some auxiliary files for developers. | |
5363 dnl ---------------------------------------------- | |
5364 | |
3418 | 5365 dnl Unlike TAGS, debugger init files depend on config.h. |
5366 dnl Regenerate them locally on every configure. | |
4939
349f01075eb7
build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents:
4932
diff
changeset
|
5367 dnl .gdbinit is now handled like xemacs.def or other src files, and |
349f01075eb7
build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents:
4932
diff
changeset
|
5368 dnl its source is in src/.gdbinit.in.in. |
2651 | 5369 |
5370 dnl Create a .dbxrc useful for debugging XEmacs | |
3418 | 5371 if test -f "$srcdir/etc/dbxrc.in"; then |
3092 | 5372 test "$verbose" = "yes" && echo "creating src/.dbxrc.in" |
3418 | 5373 echo ". $srcdir/etc/dbxrc.in" > "src/.dbxrc.in" |
2651 | 5374 fi |
5375 | |
5376 dnl Create a useful TAGS file | |
5377 if test -f "$srcdir/TAGS" -a ! -f "TAGS"; then | |
5378 test "$verbose" = "yes" && echo "creating TAGS" | |
5379 echo " | |
5380 $srcdir/TAGS,include" > "TAGS" | |
5381 fi | |
5382 | |
5383 dnl Create top level .sbinit for Sun compilers | |
5384 if test "$__SUNPRO_C" = "yes"; then | |
5385 test "$verbose" = "yes" && echo "creating .sbinit" | |
5386 ( echo "# For use with Sun WorkShop's Source browser." | |
5387 echo "# See sbquery(1) and sbinit(4) for more information" | |
5388 for dir in $MAKE_SUBDIR; do echo "import $dir"; done | |
5389 ) > .sbinit | |
5390 fi | |
5391 | |
5392 dnl There are no more compile tests; remove the core they created. | |
5393 rm -f core | |
5394 | |
5395 dnl ---------------------------------------------- | |
5396 dnl Substitute into Makefile, config.h and paths.h | |
5397 dnl ---------------------------------------------- | |
5398 | |
5399 dnl what sort of things to edit into Makefile, config.h and paths.h | |
5400 dnl configuration here uncanonicalized to avoid exceeding size limits. | |
5401 | |
5402 AC_SUBST(PROGNAME) | |
5403 AC_SUBST(version) | |
3972 | 5404 AC_SUBST(verbose_version) |
2651 | 5405 AC_SUBST(inststaticdir) |
5406 AC_SUBST(instvardir) | |
5407 AC_SUBST(srcdir) | |
5408 AC_SUBST(bindir) | |
4118 | 5409 AC_SUBST(datarootdir) |
2651 | 5410 AC_SUBST(datadir) |
5411 AC_SUBST(statedir) | |
5412 AC_SUBST(libdir) | |
5413 AC_SUBST(mandir) | |
5414 AC_SUBST(extra_includes) | |
5415 | |
5416 AC_SUBST(prefix) | |
5417 AC_SUBST(PREFIX_USER_DEFINED) | |
4660
32be564c53dd
More accurate tests for explicitly-set paths.
Mike Sperber <sperber@deinprogramm.de>
parents:
4656
diff
changeset
|
5418 XE_EXPAND_VARIABLE(prefix,PREFIX) |
4661
24224362882c
Expand @PREFIX@ in paths.h.
Mike Sperber <sperber@deinprogramm.de>
parents:
4660
diff
changeset
|
5419 AC_SUBST(PREFIX) |
2651 | 5420 |
5421 AC_SUBST(exec_prefix) | |
5422 AC_SUBST(EXEC_PREFIX_USER_DEFINED) | |
4660
32be564c53dd
More accurate tests for explicitly-set paths.
Mike Sperber <sperber@deinprogramm.de>
parents:
4656
diff
changeset
|
5423 XE_EXPAND_VARIABLE(exec_prefix,EXEC_PREFIX) |
2651 | 5424 AC_SUBST(EXEC_PREFIX) |
5425 | |
5426 AC_SUBST(infodir) | |
5427 AC_SUBST(INFODIR_USER_DEFINED) | |
3729 | 5428 XE_EXPAND_VARIABLE(infodir,INFODIR) |
2651 | 5429 AC_SUBST(INFODIR) |
5430 | |
5431 AC_SUBST(infopath,$with_infopath) | |
5432 AC_SUBST(INFOPATH_USER_DEFINED) | |
3729 | 5433 XE_EXPAND_VARIABLE(with_info_path,INFOPATH) |
4455
49f8ed034500
Fix path-configuration glitches:
Mike Sperber <sperber@deinprogramm.de>
parents:
4450
diff
changeset
|
5434 AC_SUBST(INFOPATH) |
2651 | 5435 |
3179 | 5436 test -n "$with_user_packages" && with_early_packages=$with_user_packages |
5437 AC_SUBST(early_packages,$with_early_packages) | |
5438 AC_SUBST(EARLY_PACKAGE_DIRECTORIES_USER_DEFINED) | |
3729 | 5439 XE_EXPAND_VARIABLE(with_early_packages,EARLY_PACKAGE_DIRECTORIES) |
3179 | 5440 AC_SUBST(EARLY_PACKAGE_DIRECTORIES) |
5441 | |
5442 test -n "$with_system_packages" && with_late_packages=$with_system_packages | |
5443 AC_SUBST(late_packages,$with_late_packages) | |
5444 AC_SUBST(LATE_PACKAGE_DIRECTORIES_USER_DEFINED) | |
3729 | 5445 XE_EXPAND_VARIABLE(with_late_packages,LATE_PACKAGE_DIRECTORIES) |
3179 | 5446 AC_SUBST(LATE_PACKAGE_DIRECTORIES) |
5447 | |
5448 test -n "$with_legacy_packages" && with_last_packages=$with_legacy_packages | |
5449 AC_SUBST(last_packages,$with_last_packages) | |
5450 AC_SUBST(LAST_PACKAGE_DIRECTORIES_USER_DEFINED) | |
3729 | 5451 XE_EXPAND_VARIABLE(with_last_packages,LAST_PACKAGE_DIRECTORIES) |
3179 | 5452 AC_SUBST(LAST_PACKAGE_DIRECTORIES) |
2651 | 5453 |
5454 AC_SUBST(package_path,$with_package_path) | |
5455 AC_SUBST(PACKAGE_PATH_USER_DEFINED) | |
3729 | 5456 XE_EXPAND_VARIABLE(with_package_path,PACKAGE_PATH) |
2651 | 5457 AC_SUBST(PACKAGE_PATH) |
5458 | |
5459 AC_SUBST(lispdir, $with_lispdir) | |
5460 AC_SUBST(LISPDIR_USER_DEFINED) | |
3729 | 5461 XE_EXPAND_VARIABLE(with_lispdir,LISPDIR) |
2651 | 5462 AC_SUBST(LISPDIR) |
5463 | |
5464 AC_SUBST(moduledir,$with_moduledir) | |
5465 AC_SUBST(MODULEDIR_USER_DEFINED) | |
3729 | 5466 XE_EXPAND_VARIABLE(with_moduledir,MODULEDIR) |
2651 | 5467 AC_SUBST(MODULEDIR) |
5468 | |
5469 AC_SUBST(sitelispdir,$with_sitelispdir) | |
5470 AC_SUBST(SITELISPDIR_USER_DEFINED) | |
3729 | 5471 XE_EXPAND_VARIABLE(sitelispdir,SITELISPDIR) |
2651 | 5472 AC_SUBST(SITELISPDIR) |
5473 | |
5474 AC_SUBST(sitemoduledir) | |
5475 AC_SUBST(SITEMODULEDIR_USER_DEFINED) | |
3729 | 5476 XE_EXPAND_VARIABLE(sitemoduledir,SITEMODULEDIR) |
2651 | 5477 AC_SUBST(SITEMODULEDIR) |
5478 | |
5479 AC_SUBST(etcdir,$with_etcdir) | |
5480 AC_SUBST(ETCDIR_USER_DEFINED) | |
3729 | 5481 XE_EXPAND_VARIABLE(with_etcdir,ETCDIR) |
2651 | 5482 AC_SUBST(ETCDIR) |
5483 | |
5484 AC_SUBST(archlibdir,$with_archlibdir) | |
5485 AC_SUBST(ARCHLIBDIR_USER_DEFINED) | |
5486 ARCHLIBDIR=$with_archlibdir | |
3729 | 5487 XE_EXPAND_VARIABLE(with_archlibdir,ARCHLIBDIR) |
2651 | 5488 AC_SUBST(ARCHLIBDIR) |
5489 | |
5490 AC_SUBST(docdir,$with_docdir) | |
5491 AC_SUBST(DOCDIR_USER_DEFINED) | |
3729 | 5492 XE_EXPAND_VARIABLE(with_docdir,DOCDIR) |
2651 | 5493 AC_SUBST(DOCDIR) |
5494 | |
5495 AC_SUBST(docdir) | |
5496 AC_SUBST(bitmapdir) | |
5497 AC_SUBST(extra_objs) | |
5498 | |
5499 dnl The following flags combine all the information from: | |
5500 dnl - command line options (user always gets priority) | |
5501 dnl - user environment variables | |
5502 dnl - determined by configure | |
5503 dnl - the s&m header files (required for ellcc) | |
5504 AC_SUBST(machfile) | |
5505 AC_SUBST(opsysfile) | |
5506 AC_SUBST(c_switch_general) | |
5507 AC_SUBST(c_switch_window_system) | |
5508 AC_SUBST(c_switch_all) | |
5509 AC_SUBST(ld_switch_general) | |
5510 AC_SUBST(ld_switch_window_system) | |
5511 AC_SUBST(ld_switch_all) | |
5512 AC_SUBST(ld_libs_general) | |
5513 AC_SUBST(ld_libs_window_system) | |
5514 AC_SUBST(ld_libs_all) | |
5515 AC_SUBST(CFLAGS) | |
5516 AC_SUBST(CPPFLAGS) | |
5517 AC_SUBST(LDFLAGS) | |
5518 RECURSIVE_MAKE_ARGS="\$(MFLAGS) CC='\$(CC)' CFLAGS='\$(CFLAGS)' LDFLAGS='\$(LDFLAGS)' CPPFLAGS='\$(CPPFLAGS)'" | |
5519 AC_SUBST(RECURSIVE_MAKE_ARGS) | |
5520 | |
5521 AC_SUBST(native_sound_lib,$with_native_sound_lib) | |
5522 AC_SUBST(sound_cflags) | |
5523 AC_SUBST(RANLIB) | |
5524 | |
5525 AC_SUBST(XEMACS_CC) | |
5526 AC_SUBST(XE_CFLAGS) | |
5527 | |
5528 dnl The default is yes | |
5529 if test "$with_prefix" = "yes"; then | |
5530 AC_DEFINE(PREFIX_USER_DEFINED) | |
5531 fi | |
5532 | |
5533 dnl The default is no | |
5534 if test "$with_site_lisp" = "no"; then | |
5535 AC_DEFINE(INHIBIT_SITE_LISP) | |
5536 fi | |
5537 dnl The default is yes | |
5538 if test "$with_site_modules" = "no"; then | |
5539 AC_DEFINE(INHIBIT_SITE_MODULES) | |
5540 fi | |
5541 | |
5542 XE_SPACE(ac_configure_args, $ac_configure_args) | |
3765 | 5543 dnl Put back the leading space to work around problems with |
5544 dnl 'config.status --recheck' under autoconf 2.60 and 2.61. | |
5545 ac_configure_args=" $ac_configure_args" | |
2651 | 5546 AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "$ac_cv_build") |
5547 AC_DEFINE_UNQUOTED(EMACS_CONFIG_OPTIONS, "$ac_configure_args") | |
5548 | |
5549 dnl Following are deprecated | |
5550 | |
5551 null_string="" | |
5552 AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE, $null_string) | |
5553 AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE_AUX, $null_string) | |
5554 AC_DEFINE_UNQUOTED(C_SWITCH_X_SITE, $null_string) | |
5555 AC_DEFINE_UNQUOTED(LD_SWITCH_SITE, $null_string) | |
5556 AC_DEFINE_UNQUOTED(C_SWITCH_SITE, $null_string) | |
5557 | |
5558 dnl Note: as a general rule, *only* define things here that are not | |
5559 dnl autodetected. For things that are autodetected, define them | |
5560 dnl at the point where the autodetection occurs or would occur, | |
5561 dnl so that the user gets immediate feedback on the results of the | |
5562 dnl autodetection. | |
5563 | |
4735
80d74fed5399
Remove "old" GNU malloc in src/malloc.c, and all references to it. Drop the
Jerry James <james@xemacs.org>
parents:
4708
diff
changeset
|
5564 if test "$with_system_malloc" = "yes"; then AC_DEFINE(USE_SYSTEM_MALLOC) |
2651 | 5565 elif test "$with_debug_malloc" = "yes"; then AC_DEFINE(USE_DEBUG_MALLOC) |
5566 AC_DEFINE(USE_SYSTEM_MALLOC) | |
5567 fi | |
4932 | 5568 test "$GCC" = "yes" && AC_DEFINE(USE_GCC) |
5569 test "$XEMACS_CC_GPP" = "yes" && AC_DEFINE(USE_GPLUSPLUS) | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5570 test "$with_external_widget" = "yes" && AC_DEFINE(EXTERNAL_WIDGET) |
4932 | 5571 test "$with_kkcc" = "yes" && AC_DEFINE(USE_KKCC) |
5572 test "$with_newgc" = "yes" && AC_DEFINE(NEW_GC) | |
5573 test "$have_vdb_posix" = "yes" && AC_DEFINE(VDB_POSIX) | |
5574 test "$have_vdb_fake" = "yes" && AC_DEFINE(VDB_FAKE) | |
5575 test "$with_quick_build" = "yes" && AC_DEFINE(QUICK_BUILD) | |
5576 test "$with_purify" = "yes" && AC_DEFINE(PURIFY) | |
5577 test "$with_quantify" = "yes" && AC_DEFINE(QUANTIFY) | |
5578 test "$with_valgrind" = "yes" && AC_DEFINE(USE_VALGRIND) | |
5579 test "$with_pop" = "yes" && AC_DEFINE(MAIL_USE_POP) | |
5580 test "$with_kerberos" = "yes" && AC_DEFINE(KERBEROS) | |
5581 test "$with_hesiod" = "yes" && AC_DEFINE(HESIOD) | |
5582 test "$with_union_type" = "yes" && AC_DEFINE(USE_UNION_TYPE) | |
5583 test "$with_pdump" = "yes" && AC_DEFINE(PDUMP) | |
5584 test "$with_dump_in_exec" = "yes" && AC_DEFINE(DUMP_IN_EXEC) | |
5585 test "$with_ipv6_cname" = "yes" && AC_DEFINE(IPV6_CANONICALIZE) | |
2651 | 5586 |
5587 | |
5588 | |
5589 dnl ------------------------------------------------------------------------- | |
5590 dnl ------------------------------- | |
5591 dnl Report on what we decided to do | |
5592 dnl ------------------------------- | |
5593 | |
5594 dnl #### We should tag this as the _build_ environment. | |
5595 dnl Before doing that, though, must check if tools care about line 1. | |
5596 | |
5597 ( | |
5598 dnl /etc/osversion is on SONY NEWS-OS | |
5599 if test -f /etc/osversion; then dnl SONY NEWS-OS | |
5600 echo "osversion: `cat /etc/osversion`" | |
5601 else | |
5602 echo "uname -a: `uname -a`" | |
5603 fi | |
5604 echo "" | |
5605 echo "$progname $ac_configure_args" | |
5606 ) > Installation | |
5607 | |
5608 if test ! -z ${emacs_beta_version} ; then | |
5609 if test -z "${emacs_is_beta}" ; then | |
5610 xemacs_betaname=".${emacs_beta_version}" | |
5611 else | |
5612 xemacs_betaname="-b${emacs_beta_version}" | |
5613 fi | |
5614 else | |
5615 xemacs_betaname="" | |
5616 fi | |
5617 | |
5618 dnl Start stdout redirection to '| tee -a Installation' | |
5619 ( | |
5620 echo " | |
5621 | |
2938 | 5622 XEmacs ${emacs_major_version}.${emacs_minor_version}${xemacs_betaname} \"$xemacs_codename\" $xemacs_extra_name configured for \`$ac_cv_build'." |
2651 | 5623 |
5624 echo " | |
5625 Compilation Environment and Installation Defaults:" | |
5626 echo " Source code location: $srcdir" | |
5627 echo " Installation prefix: $prefix" | |
5628 if test -n "$with_site_includes"; then | |
5629 echo " Additional header files: $with_site_includes" | |
5630 fi | |
5631 if test -n "$with_site_libraries"; then | |
5632 echo " Additional libraries: $with_site_libraries" | |
5633 fi | |
5634 if test -n "$with_site_prefixes"; then | |
5635 echo " Additional prefixes: $with_site_prefixes" | |
5636 fi | |
5637 if test -n "$runpath"; then | |
5638 echo " Runtime library search path: $runpath" | |
5639 fi | |
5640 | |
5641 if test -n "$opsysfile" | |
5642 then echo " Operating system description file: \`$opsysfile'" | |
5643 else echo " Not using any operating system description file" | |
5644 fi | |
5645 if test -n "$machfile" | |
5646 then echo " Machine description file: \`$machfile'" | |
5647 else echo " Not using any machine description file" | |
5648 fi | |
5649 | |
5650 echo " Compiler version: $compiler_version" | |
5651 if test -n "$gcc_compiler_specs"; then | |
5652 echo " - GCC specs file: $gcc_compiler_specs" | |
5653 fi | |
5654 echo " - Compiler command: $XEMACS_CC $XE_CFLAGS" | |
5655 if test "$CC" != "$XEMACS_CC"; then | |
5656 echo " Compiler version for lib-src: (detection code unimplemented)" | |
5657 echo " - Compiler command for lib-src: $CC $CFLAGS" | |
5658 if test "$xemacs_cc_cc_mismatch" = "yes"; then | |
5659 echo " WARNING: CC and XEMACS_CC mismatched; check CFLAGS carefully." | |
5660 fi | |
5661 fi | |
5662 echo " libc version: $libc_version" | |
5663 echo " Relocating allocator for buffers: $with_rel_alloc" | |
5664 echo " GNU version of malloc: ${GNU_MALLOC}${GNU_MALLOC_reason}" | |
5665 case "$ld_switch_site" in | |
5666 *nocombreloc*) echo " Linking with \`-z nocombreloc'. | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5667 - Consider configuring with --with-pdump." ;; |
2651 | 5668 esac |
5669 | |
5670 echo " | |
5671 Window System:" | |
5672 if test "$with_msw" = "yes"; then | |
5673 echo " Compiling in support for the Microsoft window system." | |
5674 fi | |
5675 if test "$with_x11" = "yes"; then | |
5676 echo " Compiling in support for the X window system:" | |
5677 echo " - X Windows headers location: $x_includes" | |
5678 echo " - X Windows libraries location: $x_libraries" | |
5679 if test "$with_xauth" != yes; then | |
5680 echo " - Xau (X authority) not available." | |
5681 fi | |
5682 if test "$with_wmcommand" != no; then | |
5683 echo " - Handling WM_COMMAND properly." | |
5684 fi | |
3354 | 5685 if test "$with_fontconfig" = "yes"; then |
5686 echo " - Using fontconfig to manage fonts." | |
5687 fi | |
3166 | 5688 if test "$with_xft_emacs" = "yes"; then |
3094 | 5689 echo " - Compiling in support for Xft antialiased fonts (EXPERIMENTAL)." |
5690 fi | |
2651 | 5691 fi |
3019 | 5692 if test "$need_motif" = "yes" ; then |
5693 echo " Compiling in support for Motif." | |
5694 if test "$have_lesstif" = "yes"; then | |
5695 echo " - Using LessTif implementation." | |
5696 fi | |
5697 echo " *WARNING* Many versions of Motif are buggy, requiring workarounds." | |
5698 echo " You are likely to experience slow redisplay." | |
5699 echo " You may need to install vendor patches to Motif." | |
5700 echo " See PROBLEMS for more information." | |
5701 fi | |
2651 | 5702 if test "$need_athena" = "yes"; then |
5703 echo " Compiling in support for the Athena widget set:" | |
5704 echo " - Athena headers location: $athena_h_path" | |
5705 echo " - Athena library to link: $athena_lib" | |
5706 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5707 case "$with_menubars" in |
2651 | 5708 gtk ) echo " Using GTK menubars." ;; |
5709 lucid ) echo " Using Lucid menubars." ;; | |
5710 motif ) echo " Using Motif menubars." | |
5711 echo " *WARNING* The Motif menubar implementation is currently buggy." | |
5712 echo " We recommend using the Lucid menubar instead." | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5713 echo " Re-run configure with --with-menubars='lucid'." ;; |
2651 | 5714 msw ) echo " Using MS-Windows menubars." ;; |
5715 esac | |
3094 | 5716 if test "$with_xft_menubars" = "yes"; then |
5717 echo " - Using Xft to render antialiased fonts in menubars." | |
4961
b90f8cf474e0
Change Xft warning in configure.ac to make filtering it more safe
Ben Wing <ben@xemacs.org>
parents:
4944
diff
changeset
|
5718 echo " WARNING: This Xft feature will be replaced with a face." |
3094 | 5719 fi |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5720 case "$with_scrollbars" in |
2651 | 5721 gtk ) echo " Using GTK scrollbars." ;; |
5722 lucid ) echo " Using Lucid scrollbars." ;; | |
5723 motif ) echo " Using Motif scrollbars." ;; | |
5724 athena ) echo " Using Athena scrollbars." ;; | |
5725 msw ) echo " Using MS-Windows scrollbars." ;; | |
5726 esac | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5727 case "$with_dialogs" in |
2651 | 5728 gtk ) echo " Using GTK dialog boxes." ;; |
5729 motif ) echo " Using Motif dialog boxes." | |
5730 if test "$unexec" = "unexaix.o"; then if test "`uname -v`" = 4 -a "`uname -r`" -ge 3; then | |
5731 echo " *WARNING* The Motif dialog boxes cause problems on AIX 4.3 and higher." | |
5732 echo " We recommend using the Athena dialog boxes instead." | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5733 echo " Install libXaw and re-run configure with --with-dialogs='athena'." |
2651 | 5734 echo " Read the PROBLEMS file for more information." |
5735 fi; fi ;; | |
5736 athena ) echo " Using Athena dialog boxes." ;; | |
5737 msw ) echo " Using MS-Windows dialog boxes." ;; | |
5738 esac | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5739 case "$with_widgets" in |
2651 | 5740 gtk ) echo " Using GTK native widgets." ;; |
5741 motif ) echo " Using Motif native widgets." ;; | |
5742 athena ) echo " Using Athena native widgets." ;; | |
5743 msw ) echo " Using MS-Windows native widgets." ;; | |
5744 esac | |
3094 | 5745 if test "$with_xft_tabs" = "yes"; then |
5746 echo " - Using Xft to render antialiased fonts in tab controls." | |
4961
b90f8cf474e0
Change Xft warning in configure.ac to make filtering it more safe
Ben Wing <ben@xemacs.org>
parents:
4944
diff
changeset
|
5747 echo " WARNING: This Xft feature will be replaced with a face." |
3094 | 5748 fi |
4497
f863b2ee146f
Rename xft_gauge to xft_gauges.
Mats Lidell <matsl@xemacs.org>
parents:
4496
diff
changeset
|
5749 if test "$with_xft_gauges" = "yes"; then |
3094 | 5750 echo " - Using Xft to render antialiased fonts in progress bars." |
4961
b90f8cf474e0
Change Xft warning in configure.ac to make filtering it more safe
Ben Wing <ben@xemacs.org>
parents:
4944
diff
changeset
|
5751 echo " WARNING: This Xft feature will be replaced with a face." |
b90f8cf474e0
Change Xft warning in configure.ac to make filtering it more safe
Ben Wing <ben@xemacs.org>
parents:
4944
diff
changeset
|
5752 echo " WARNING: This Xft feature not yet implemented; setting ignored." |
3094 | 5753 fi |
2651 | 5754 if test "$with_dragndrop" = yes; then |
5755 echo " Compiling in support for Drag'n'Drop (EXPERIMENTAL)." | |
5756 echo " - Drag'n'Drop prototype: $dragndrop_proto." | |
5757 fi | |
5758 | |
5759 echo " | |
5760 TTY:" | |
5761 test "$with_ncurses" = yes && echo " Compiling in support for ncurses." | |
5762 test "$with_gpm" = yes && echo " Compiling in support for GPM (General Purpose Mouse)." | |
5763 | |
5764 echo " | |
5765 Images:" | |
4708
1cecc3e9f0a0
Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents:
4699
diff
changeset
|
5766 test "$with_gif" = yes && echo " Compiling in support for GIF images." |
2651 | 5767 if test "$with_xpm" = yes; then |
5768 echo " Compiling in support for XPM images." | |
5769 elif test "$with_x11" = yes; then | |
5770 echo " WARNING: -----------------------------------------------------------" | |
5771 echo " WARNING: Compiling without XPM image support." | |
5772 if test "$xpm_problem" != ""; then | |
5773 echo " Reason: $xpm_problem" | |
5774 fi | |
5775 echo " WARNING: You should strongly consider installing XPM." | |
5776 echo " WARNING: Otherwise toolbars and other graphics will look suboptimal." | |
5777 echo " WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)" | |
5778 echo " WARNING: -----------------------------------------------------------" | |
5779 fi | |
5780 if test "$with_png" = yes; then | |
5781 echo " Compiling in support for PNG images." | |
5782 elif test "$window_system" != "none"; then | |
5783 echo " WARNING: -----------------------------------------------------------" | |
5784 echo " WARNING: Compiling without PNG image support." | |
5785 if test "$png_problem" != ""; then | |
5786 echo " Reason: $png_problem" | |
5787 fi | |
5788 echo " WARNING: You should strongly consider installing the PNG libraries." | |
5789 echo " WARNING: Otherwise certain images and glyphs may not display." | |
5790 echo " WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)" | |
5791 echo " WARNING: -----------------------------------------------------------" | |
5792 fi | |
5793 test "$with_jpeg" = yes && echo " Compiling in support for JPEG images." | |
5794 test "$with_tiff" = yes && echo " Compiling in support for TIFF images." | |
5795 test "$with_xface" = yes && echo " Compiling in support for X-Face message headers." | |
5796 | |
5797 echo " | |
5798 Sound:" | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5799 test "$with_sound_native" = yes && echo " Compiling in support for sound (native)." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5800 test "$with_sound_alsa" = yes && echo " Compiling in support for ALSA (Advanced Linux Sound Architecture)." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5801 test "$with_sound_nas" = yes && echo " Compiling in support for NAS (network audio system)." |
2651 | 5802 test "$old_nas" = yes && echo " - NAS library lacks error trapping; will play synchronously." |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5803 test "$with_sound_esd" = yes && echo " Compiling in support for ESD (Enlightened Sound Daemon)." |
2651 | 5804 |
5805 echo " | |
5806 Databases:" | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5807 test "$with_database_berkdb" = yes && echo " Compiling in support for Berkeley database." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5808 test "$with_database_dbm" = yes && echo " Compiling in support for DBM." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5809 test "$with_database_gdbm" = yes && echo " Compiling in support for GNU DBM." |
2651 | 5810 test "$with_ldap" = yes && echo " Compiling in support for LDAP." |
5811 if test "$with_postgresql" = yes; then | |
5812 echo " Compiling in support for PostgreSQL." | |
5813 echo " - Using PostgreSQL header file: $libpq_fe_h_file" | |
5814 test "$with_postgresqlv7" = yes && echo " - Using PostgreSQL V7 bindings." | |
5815 fi | |
5816 | |
5817 echo " | |
5818 Internationalization:" | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5819 test "$with_mule" = yes && echo " Compiling in support for Mule (multi-lingual Emacs)." |
2651 | 5820 test "$with_xim" != no && echo " Compiling in support for XIM (X11R5+ I18N input method)." |
5821 test "$with_xim" = motif && echo " - Using Motif to provide XIM support." | |
5822 test "$with_xim" = xlib && echo " - Using raw Xlib to provide XIM support." | |
5823 test "$with_xfs" = yes && echo " - Using XFontSet to provide bilingual menubar." | |
3830 | 5824 test "$have_canna" = yes && echo " Compiling in support for Canna on Mule." |
2651 | 5825 if test "$with_wnn" = yes; then |
5826 echo " Compiling in support for the WNN input method on Mule." | |
5827 test "$with_wnn6" = yes && echo " - Using WNN version 6." | |
5828 fi | |
5829 | |
5830 echo " | |
5831 Mail:" | |
5832 test "$with_pop" = yes && echo " Compiling in support for POP mail retrieval." | |
5833 test "$with_kerberos" = yes && echo " Compiling in support for Kerberos POP authentication." | |
5834 test "$with_hesiod" = yes && echo " Compiling in support for Hesiod POP server access." | |
5835 test -n "$with_mail_locking" && echo " Compiling in support for \"$with_mail_locking\" mail spool file locking method." | |
5836 | |
5837 echo " | |
5838 Other Features:" | |
5839 test "$with_ipv6_cname" = no && echo " Inhibiting IPv6 canonicalization at startup." | |
5840 test "$with_tooltalk" = yes && echo " Compiling in support for ToolTalk." | |
5841 test "$with_workshop" = yes && echo " Compiling in support for Sun WorkShop." | |
5842 test "$with_socks" = yes && echo " Compiling in support for SOCKS." | |
5843 test "$with_dnet" = yes && echo " Compiling in support for DNET." | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5844 test "$with_modules" = "yes" && echo " Compiling in support for dynamic shared object modules." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5845 test "$with_bignum" = "gmp" && echo " Compiling in support for more number types using the GNU MP library." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5846 test "$with_bignum" = "mp" && echo " Compiling in support for more number types using the BSD MP library." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5847 if test "$with_union_type" = yes ; then |
2651 | 5848 echo " Using the union type for Lisp_Objects." |
5849 echo " WARNING: ---------------------------------------------------------" | |
5850 echo " WARNING: This tends to trigger compiler bugs, especially when" | |
5851 echo " WARNING: combined with MULE and ERROR_CHECKING. Crashes have" | |
5852 echo " WARNING: been seen with various versions of GCC (up to about 2.95)," | |
5853 echo " WARNING: and recently with Visual C++ as well (mid-2003)." | |
5854 echo " WARNING: More recent versions may be safer, or not." | |
5855 echo " WARNING: ---------------------------------------------------------" | |
5856 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5857 if test "$with_kkcc" = yes ; then |
3263 | 5858 echo " Using the new GC mark algorithms (KKCC)." |
2790 | 5859 echo " WARNING: ---------------------------------------------------------" |
5860 echo " WARNING: The new algorithms are experimental. They are enabled by" | |
5861 echo " WARNING: default for this release. Use \`--disable-kkcc' to" | |
5862 echo " WARNING: turn it off." | |
5863 echo " WARNING: ---------------------------------------------------------" | |
5864 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5865 test "$with_newgc" = yes && echo " Using the new incremental garbage collector and the new allocator." |
3092 | 5866 if test "$have_vdb_posix" = yes ; then |
5867 if test "$have_vdb_sigaction" = yes ; then | |
5868 echo " Using POSIX sigaction() to install fault handler." | |
5869 else | |
5870 echo " Using POSIX signal() to install vdb fault handler." | |
5871 fi | |
5872 fi | |
5873 if test "$have_vdb_win32" = yes ; then | |
5874 echo " Using special WIN32 vdb fault handler." | |
5875 fi | |
5876 if test "$have_vdb_mach" = yes ; then | |
5877 echo " Using mach exception mechanism as vdb fault handler." | |
5878 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5879 if test "$have_vdb_fake" = yes && test "$with_vdb" == fake; then |
3092 | 5880 echo " Virtual dirty bit write barrier manually disabled." |
5881 fi | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5882 test "$with_pdump" = yes && echo " Using the new portable dumper." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5883 test "$with_dump_in_exec" = yes && echo " Dumping into executable." |
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5884 test "$with_debug" = yes && echo " Compiling in support for extra debugging code." |
2651 | 5885 test "$usage_tracking" = yes && echo " Compiling in support for active usage tracking (Sun internal)." |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5886 if test "$with_error_checking_extents $with_error_checking_types $with_error_checking_text $with_error_checking_gc $with_error_checking_malloc $with_error_checking_glyphs $with_error_checking_byte_code $with_error_checking_display $with_error_checking_structures" \ |
2651 | 5887 != "no no no no no no no no no"; then |
5888 echo " Compiling in support for runtime error checking." | |
5889 echo " WARNING: ---------------------------------------------------------" | |
5890 echo " WARNING: XEmacs will run noticeably more slowly as a result." | |
5891 echo " WARNING: Error checking is on by default for XEmacs beta releases." | |
5892 echo " WARNING: ---------------------------------------------------------" | |
5893 fi | |
4803
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
5894 test "$with_valgrind" = yes && echo " Compiling in support for memory debugging with Valgrind." |
2651 | 5895 echo "" |
5896 ) | tee -a Installation | |
5897 dnl echo "The above configure report is appended to \"Installation\" file." | |
5898 echo "" | |
5899 | |
5900 dnl ----------------------------------- | |
5901 dnl Now generate config.h and Makefiles | |
5902 dnl ----------------------------------- | |
5903 AC_CONFIG_HEADER(src/config.h lwlib/config.h) | |
5904 | |
5905 dnl This has to be called in order for this variable to get into config.status | |
5906 AC_SUBST(internal_makefile_list) | |
5907 # Remove any trailing slashes in these variables. | |
5908 test -n "$prefix" && | |
5909 prefix=`echo '' "$prefix" | sed -e 's:^ ::' -e 's,\([[^/]]\)/*$,\1,'` | |
5910 test -n "$exec_prefix" && | |
5911 exec_prefix=`echo '' "$exec_prefix" | sed -e 's:^ ::' -e 's,\([[^/]]\)/*$,\1,'` | |
5912 | |
5913 dnl Build Makefile.in's from Makefile.in.in's | |
5914 dnl except ./Makefile from $srcdir/Makefile.in | |
5915 dnl src/Makefile.in will have src/depend appended to it; | |
5916 dnl module Makefiles will have the common text in | |
5917 dnl modules/common/Makefile.common appended. | |
5918 | |
3481 | 5919 dnl this actually should be conditional on having perl (ie, effectively |
5920 dnl unconditional on sane systems) | |
5921 if test -r $srcdir/src/depend; then :; | |
5922 else | |
5923 echo "creating $srcdir/src/depend" | |
5924 perl $srcdir/src/make-src-depend > $srcdir/src/depend | |
5925 fi | |
5926 | |
2651 | 5927 for file in $internal_makefile_list; do |
5928 case $file in | |
5929 src/Makefile.in ) file="src/Makefile.in:src/Makefile.in.in:src/depend" ;; | |
5930 modules/* ) file="${file}:${file}.in:modules/common/Makefile.common" ;; | |
5931 esac | |
5932 AC_CONFIG_FILES($file) | |
5933 done | |
5934 AC_CONFIG_FILES(src/paths.h src/xemacs.def.in lib-src/config.values) | |
4842
1d775c6304d1
Use with-FOO consistently instead of enable-FOO
Ben Wing <ben@xemacs.org>
parents:
4834
diff
changeset
|
5935 test "$with_modules" = "yes" && AC_CONFIG_FILES(lib-src/ellcc.h) |
2651 | 5936 |
5937 | |
5938 dnl Normally []'s are used for quoting but this will cause problems | |
5939 dnl since we use brackets in sed. When not inside of a macro definition, | |
5940 dnl two brackets become one, but inside of a macro definition you need | |
5941 dnl more, or something -- I don't understand, but Martin probably does. | |
5942 dnl We put the brackets back later. | |
5943 dnl [ben] | |
3418 | 5944 dnl To insert comments that will remain in the generated file, we use the |
5945 dnl imake XCOMM convention. Lines beginning with "XCOMM " exactly (no | |
5946 dnl leading whitespace, one trailing ASCII space, case sensitive) will be | |
5947 dnl transformed to shell/make/gdb comments in the generated file. | |
5948 dnl [sjt] | |
2651 | 5949 |
5950 dnl MAKE_JUNK_C(filename): | |
5951 dnl Copy a .in file to junk.c in preparation for passing through the | |
5952 dnl C preprocessor. Delete comment lines, pass lines that will be | |
5953 dnl interpreted by cpp through directly, and put quotes around remaining | |
5954 dnl lines, to avoid problems from overly helpful preprocessors that | |
5955 dnl "helpfully" put extra quotes in various places for later use by the | |
5956 dnl compiler. Later, the quotes will be removed. | |
5957 | |
5958 m4_define([MAKE_JUNK_C], | |
5959 [ rm -f junk.c | |
5960 < $1 \ | |
5961 sed -e '/^# Generated/d' \ | |
5962 -e 's%/\*\*/#.*%%' \ | |
5963 -e 's/^ *# */#/' \ | |
5964 dnl Delete Makefile.in.in comment lines | |
5965 -e '/^##/d' \ | |
5966 dnl Pass through CPP directives unchanged | |
5967 -e '/^#/ { | |
5968 p | |
5969 d | |
5970 }' \ | |
5971 dnl Quote other lines to protect from CPP substitution | |
5972 -e '/./ { | |
5973 s/\([[\"]]\)/\\\1/g | |
5974 s/^/"/ | |
5975 s/$/"/ | |
5976 }' > junk.c; | |
5977 ])dnl MAKE_JUNK_C | |
5978 | |
5979 dnl CPP_MAKEFILE(CPPFLAGS,filename): | |
5980 dnl Pass junk.c through the preprocessor and put the result in FILENAME. | |
5981 | |
5982 m4_define([CPP_MAKEFILE], | |
5983 [echo creating $dir/$2 | |
5984 $CPP -I. -I${srcdir}/src $1 junk.c \ | |
5985 dnl Delete line directives inserted by $CPP | |
5986 | sed -e 's/^\#.*//' \ | |
5987 dnl Delete spurious blanks inserted by $CPP | |
5988 -e 's/^[[ TAB]][[ TAB]]*$//'\ | |
5989 -e 's/^ /TAB/' \ | |
5990 dnl Delete blank lines | |
5991 -e '/^[[ ]]*$/d' \ | |
5992 dnl Restore lines quoted above to original contents. | |
5993 -e '/^\"/ { | |
5994 s/\\\([[\"]]\)/\1/g | |
5995 s/^[[ TAB]]*\"// | |
5996 s/\"[[ TAB]]*$// | |
3418 | 5997 }' \ |
5998 dnl Convert comments -- must come after the unquoting operations | |
5999 -e 's/^XCOMM /\# /' > Makefile.new | |
2651 | 6000 chmod 444 Makefile.new |
6001 mv -f Makefile.new $2 | |
6002 ])dnl CPP_MAKEFILE | |
6003 | |
6004 AC_CONFIG_COMMANDS([default], | |
6005 [for dir in . $MAKE_SUBDIR; do | |
6006 ( | |
6007 cd $dir | |
6008 | |
6009 dnl Create a GNUmakefile and Makefile from Makefile.in. | |
6010 dnl Create xemacs.def from xemacs.def.in in the same fashion, | |
3418 | 6011 dnl if it exists (i.e. in the src/ directory). Ditto for the |
6012 dnl debugger init files (in the src/ directory). | |
2651 | 6013 MAKE_JUNK_C(Makefile.in) |
6014 CPP_MAKEFILE(,Makefile) | |
6015 CPP_MAKEFILE(-DUSE_GNU_MAKE,GNUmakefile) | |
3092 | 6016 if test -r ".gdbinit.in"; then |
6017 MAKE_JUNK_C(.gdbinit.in) | |
6018 CPP_MAKEFILE(,.gdbinit) | |
6019 fi | |
6020 if test -r ".dbxrc.in"; then | |
6021 MAKE_JUNK_C(.dbxrc.in) | |
6022 CPP_MAKEFILE(,.dbxrc) | |
6023 fi | |
2651 | 6024 if test -r "xemacs.def.in"; then |
6025 dnl #### We should be using MAKE_JUNK_C instead of the next two lines. | |
6026 dnl #### But the comments in xemacs.def.in need to be converted from C-style | |
6027 dnl #### to lines beginning with ##. | |
6028 rm -f junk.c | |
6029 cp xemacs.def.in junk.c | |
6030 CPP_MAKEFILE(,xemacs.def) | |
6031 fi | |
6032 rm -f junk.c | |
6033 ) | |
6034 done | |
6035 | |
6036 dnl Append AC_DEFINE information to lib-src/config.values | |
6037 dnl (AC_SUBST information is already there (see config.values.sh). | |
6038 sed < config.status >> lib-src/config.values \ | |
6039 -e '/{ac_dA}.*{ac_dB}.*{ac_dC}.*{ac_dD}$/!d' \ | |
6040 -e 's/\${ac_dA}\(.*\)\${ac_dB}.*\${ac_dC}\(.*\)\${ac_dD}/\1 \2/' \ | |
6041 -e 's/^\([[^ ]]*\) $/\1 ""/' \ | |
6042 -e 's/ 1$/ t/' | |
6043 | |
6044 ], | |
6045 [CPP="$CPP" | |
6046 MAKE_SUBDIR="$MAKE_SUBDIR" | |
6047 ])dnl | |
6048 | |
6049 AC_OUTPUT()dnl | |
6050 |