smtp: use the upload buffer size for scratch buffer malloc
[platform/upstream/curl.git] / m4 / zz40-xc-ovr.m4
1 #---------------------------------------------------------------------------
2 #
3 # zz40-xc-ovr.m4
4 #
5 # Copyright (c) 2013 - 2018 Daniel Stenberg <daniel@haxx.se>
6 #
7 # Permission to use, copy, modify, and distribute this software for any
8 # purpose with or without fee is hereby granted, provided that the above
9 # copyright notice and this permission notice appear in all copies.
10 #
11 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18 #
19 #---------------------------------------------------------------------------
20
21 dnl The funny name of this file is intentional in order to make it
22 dnl sort alphabetically after any libtool, autoconf or automake
23 dnl provided .m4 macro file that might get copied into this same
24 dnl subdirectory. This allows that macro (re)definitions from this
25 dnl file may override those provided in other files.
26
27
28 dnl Version macros
29 dnl -------------------------------------------------
30 dnl Public macros.
31
32 m4_define([XC_CONFIGURE_PREAMBLE_VER_MAJOR],[1])dnl
33 m4_define([XC_CONFIGURE_PREAMBLE_VER_MINOR],[0])dnl
34
35
36 dnl _XC_CFG_PRE_PREAMBLE
37 dnl -------------------------------------------------
38 dnl Private macro.
39
40 AC_DEFUN([_XC_CFG_PRE_PREAMBLE],
41 [
42 ## -------------------------------- ##
43 @%:@@%:@  [XC_CONFIGURE_PREAMBLE] ver: []dnl
44 XC_CONFIGURE_PREAMBLE_VER_MAJOR.[]dnl
45 XC_CONFIGURE_PREAMBLE_VER_MINOR  ##
46 ## -------------------------------- ##
47
48 xc_configure_preamble_ver_major='XC_CONFIGURE_PREAMBLE_VER_MAJOR'
49 xc_configure_preamble_ver_minor='XC_CONFIGURE_PREAMBLE_VER_MINOR'
50
51 #
52 # Set IFS to space, tab and newline.
53 #
54
55 xc_space=' '
56 xc_tab='        '
57 xc_newline='
58 '
59 IFS="$xc_space$xc_tab$xc_newline"
60
61 #
62 # Set internationalization behavior variables.
63 #
64
65 LANG='C'
66 LC_ALL='C'
67 LANGUAGE='C'
68 export LANG
69 export LC_ALL
70 export LANGUAGE
71
72 #
73 # Some useful variables.
74 #
75
76 xc_msg_warn='configure: WARNING:'
77 xc_msg_abrt='Can not continue.'
78 xc_msg_err='configure: error:'
79 ])
80
81
82 dnl _XC_CFG_PRE_BASIC_CHK_CMD_ECHO
83 dnl -------------------------------------------------
84 dnl Private macro.
85 dnl
86 dnl Emits shell code that verifies that 'echo' command
87 dnl is available, otherwise aborts execution.
88
89 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_CMD_ECHO],
90 [dnl
91 AC_REQUIRE([_XC_CFG_PRE_PREAMBLE])dnl
92 #
93 # Verify that 'echo' command is available, otherwise abort.
94 #
95
96 xc_tst_str='unknown'
97 (`echo "$xc_tst_str" >/dev/null 2>&1`) && xc_tst_str='success'
98 case "x$xc_tst_str" in @%:@ ((
99   xsuccess)
100     :
101     ;;
102   *)
103     # Try built-in echo, and fail.
104     echo "$xc_msg_err 'echo' command not found. $xc_msg_abrt" >&2
105     exit 1
106     ;;
107 esac
108 ])
109
110
111 dnl _XC_CFG_PRE_BASIC_CHK_CMD_TEST
112 dnl -------------------------------------------------
113 dnl Private macro.
114 dnl
115 dnl Emits shell code that verifies that 'test' command
116 dnl is available, otherwise aborts execution.
117
118 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_CMD_TEST],
119 [dnl
120 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_ECHO])dnl
121 #
122 # Verify that 'test' command is available, otherwise abort.
123 #
124
125 xc_tst_str='unknown'
126 (`test -n "$xc_tst_str" >/dev/null 2>&1`) && xc_tst_str='success'
127 case "x$xc_tst_str" in @%:@ ((
128   xsuccess)
129     :
130     ;;
131   *)
132     echo "$xc_msg_err 'test' command not found. $xc_msg_abrt" >&2
133     exit 1
134     ;;
135 esac
136 ])
137
138
139 dnl _XC_CFG_PRE_BASIC_CHK_VAR_PATH
140 dnl -------------------------------------------------
141 dnl Private macro.
142 dnl
143 dnl Emits shell code that verifies that 'PATH' variable
144 dnl is set, otherwise aborts execution.
145
146 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_VAR_PATH],
147 [dnl
148 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_TEST])dnl
149 #
150 # Verify that 'PATH' variable is set, otherwise abort.
151 #
152
153 xc_tst_str='unknown'
154 (`test -n "$PATH" >/dev/null 2>&1`) && xc_tst_str='success'
155 case "x$xc_tst_str" in @%:@ ((
156   xsuccess)
157     :
158     ;;
159   *)
160     echo "$xc_msg_err 'PATH' variable not set. $xc_msg_abrt" >&2
161     exit 1
162     ;;
163 esac
164 ])
165
166
167 dnl _XC_CFG_PRE_BASIC_CHK_CMD_EXPR
168 dnl -------------------------------------------------
169 dnl Private macro.
170 dnl
171 dnl Emits shell code that verifies that 'expr' command
172 dnl is available, otherwise aborts execution.
173
174 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_CMD_EXPR],
175 [dnl
176 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_VAR_PATH])dnl
177 #
178 # Verify that 'expr' command is available, otherwise abort.
179 #
180
181 xc_tst_str='unknown'
182 xc_tst_str=`expr "$xc_tst_str" : '.*' 2>/dev/null`
183 case "x$xc_tst_str" in @%:@ ((
184   x7)
185     :
186     ;;
187   *)
188     echo "$xc_msg_err 'expr' command not found. $xc_msg_abrt" >&2
189     exit 1
190     ;;
191 esac
192 ])
193
194
195 dnl _XC_CFG_PRE_BASIC_CHK_UTIL_SED
196 dnl -------------------------------------------------
197 dnl Private macro.
198 dnl
199 dnl Emits shell code that verifies that 'sed' utility
200 dnl is found within 'PATH', otherwise aborts execution.
201 dnl
202 dnl This 'sed' is required in order to allow configure
203 dnl script bootstrapping itself. No fancy testing for a
204 dnl proper 'sed' this early, that should be done later.
205
206 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_UTIL_SED],
207 [dnl
208 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_VAR_PATH])dnl
209 #
210 # Verify that 'sed' utility is found within 'PATH', otherwise abort.
211 #
212
213 xc_tst_str='unknown'
214 xc_tst_str=`echo "$xc_tst_str" 2>/dev/null \
215   | sed -e 's:unknown:success:' 2>/dev/null`
216 case "x$xc_tst_str" in @%:@ ((
217   xsuccess)
218     :
219     ;;
220   *)
221     echo "$xc_msg_err 'sed' utility not found in 'PATH'. $xc_msg_abrt" >&2
222     exit 1
223     ;;
224 esac
225 ])
226
227
228 dnl _XC_CFG_PRE_BASIC_CHK_UTIL_GREP
229 dnl -------------------------------------------------
230 dnl Private macro.
231 dnl
232 dnl Emits shell code that verifies that 'grep' utility
233 dnl is found within 'PATH', otherwise aborts execution.
234 dnl
235 dnl This 'grep' is required in order to allow configure
236 dnl script bootstrapping itself. No fancy testing for a
237 dnl proper 'grep' this early, that should be done later.
238
239 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_UTIL_GREP],
240 [dnl
241 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_VAR_PATH])dnl
242 #
243 # Verify that 'grep' utility is found within 'PATH', otherwise abort.
244 #
245
246 xc_tst_str='unknown'
247 (`echo "$xc_tst_str" 2>/dev/null \
248   | grep 'unknown' >/dev/null 2>&1`) && xc_tst_str='success'
249 case "x$xc_tst_str" in @%:@ ((
250   xsuccess)
251     :
252     ;;
253   *)
254     echo "$xc_msg_err 'grep' utility not found in 'PATH'. $xc_msg_abrt" >&2
255     exit 1
256     ;;
257 esac
258 ])
259
260
261 dnl _XC_CFG_PRE_BASIC_CHK_UTIL_TR
262 dnl -------------------------------------------------
263 dnl Private macro.
264 dnl
265 dnl Emits shell code that verifies that 'tr' utility
266 dnl is found within 'PATH', otherwise aborts execution.
267
268 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_UTIL_TR],
269 [dnl
270 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_VAR_PATH])dnl
271 #
272 # Verify that 'tr' utility is found within 'PATH', otherwise abort.
273 #
274
275 xc_tst_str="${xc_tab}98s7u6c5c4e3s2s10"
276 xc_tst_str=`echo "$xc_tst_str" 2>/dev/null \
277   | tr -d "0123456789$xc_tab" 2>/dev/null`
278 case "x$xc_tst_str" in @%:@ ((
279   xsuccess)
280     :
281     ;;
282   *)
283     echo "$xc_msg_err 'tr' utility not found in 'PATH'. $xc_msg_abrt" >&2
284     exit 1
285     ;;
286 esac
287 ])
288
289
290 dnl _XC_CFG_PRE_BASIC_CHK_UTIL_WC
291 dnl -------------------------------------------------
292 dnl Private macro.
293 dnl
294 dnl Emits shell code that verifies that 'wc' utility
295 dnl is found within 'PATH', otherwise aborts execution.
296
297 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_UTIL_WC],
298 [dnl
299 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_TR])dnl
300 #
301 # Verify that 'wc' utility is found within 'PATH', otherwise abort.
302 #
303
304 xc_tst_str='unknown unknown unknown unknown'
305 xc_tst_str=`echo "$xc_tst_str" 2>/dev/null \
306   | wc -w 2>/dev/null | tr -d "$xc_space$xc_tab" 2>/dev/null`
307 case "x$xc_tst_str" in @%:@ ((
308   x4)
309     :
310     ;;
311   *)
312     echo "$xc_msg_err 'wc' utility not found in 'PATH'. $xc_msg_abrt" >&2
313     exit 1
314     ;;
315 esac
316 ])
317
318
319 dnl _XC_CFG_PRE_BASIC_CHK_UTIL_CAT
320 dnl -------------------------------------------------
321 dnl Private macro.
322 dnl
323 dnl Emits shell code that verifies that 'cat' utility
324 dnl is found within 'PATH', otherwise aborts execution.
325
326 AC_DEFUN([_XC_CFG_PRE_BASIC_CHK_UTIL_CAT],
327 [dnl
328 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_WC])dnl
329 #
330 # Verify that 'cat' utility is found within 'PATH', otherwise abort.
331 #
332
333 xc_tst_str='unknown'
334 xc_tst_str=`cat <<_EOT 2>/dev/null \
335   | wc -l 2>/dev/null | tr -d "$xc_space$xc_tab" 2>/dev/null
336 unknown
337 unknown
338 unknown
339 _EOT`
340 case "x$xc_tst_str" in @%:@ ((
341   x3)
342     :
343     ;;
344   *)
345     echo "$xc_msg_err 'cat' utility not found in 'PATH'. $xc_msg_abrt" >&2
346     exit 1
347     ;;
348 esac
349 ])
350
351
352 dnl _XC_CFG_PRE_CHECK_PATH_SEPARATOR
353 dnl -------------------------------------------------
354 dnl Private macro.
355 dnl
356 dnl Emits shell code that computes the path separator
357 dnl and stores the result in 'PATH_SEPARATOR', unless
358 dnl the user has already set it with a non-empty value.
359 dnl
360 dnl This path separator is the symbol used to separate
361 dnl or diferentiate paths inside the 'PATH' environment
362 dnl variable.
363 dnl
364 dnl Non-empty user provided 'PATH_SEPARATOR' always
365 dnl overrides the auto-detected one.
366
367 AC_DEFUN([_XC_CFG_PRE_CHECK_PATH_SEPARATOR],
368 [dnl
369 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_EXPR])dnl
370 #
371 # Auto-detect and set 'PATH_SEPARATOR', unless it is already non-empty set.
372 #
373
374 # Directory count in 'PATH' when using a colon separator.
375 xc_tst_dirs_col='x'
376 xc_tst_prev_IFS=$IFS; IFS=':'
377 for xc_tst_dir in $PATH; do
378   IFS=$xc_tst_prev_IFS
379   xc_tst_dirs_col="x$xc_tst_dirs_col"
380 done
381 IFS=$xc_tst_prev_IFS
382 xc_tst_dirs_col=`expr "$xc_tst_dirs_col" : '.*'`
383
384 # Directory count in 'PATH' when using a semicolon separator.
385 xc_tst_dirs_sem='x'
386 xc_tst_prev_IFS=$IFS; IFS=';'
387 for xc_tst_dir in $PATH; do
388   IFS=$xc_tst_prev_IFS
389   xc_tst_dirs_sem="x$xc_tst_dirs_sem"
390 done
391 IFS=$xc_tst_prev_IFS
392 xc_tst_dirs_sem=`expr "$xc_tst_dirs_sem" : '.*'`
393
394 if test $xc_tst_dirs_sem -eq $xc_tst_dirs_col; then
395   # When both counting methods give the same result we do not want to
396   # chose one over the other, and consider auto-detection not possible.
397   if test -z "$PATH_SEPARATOR"; then
398     # User should provide the correct 'PATH_SEPARATOR' definition.
399     # Until then, guess that it is colon!
400     echo "$xc_msg_warn path separator not determined, guessing colon" >&2
401     PATH_SEPARATOR=':'
402   fi
403 else
404   # Separator with the greater directory count is the auto-detected one.
405   if test $xc_tst_dirs_sem -gt $xc_tst_dirs_col; then
406     xc_tst_auto_separator=';'
407   else
408     xc_tst_auto_separator=':'
409   fi
410   if test -z "$PATH_SEPARATOR"; then
411     # Simply use the auto-detected one when not already set.
412     PATH_SEPARATOR=$xc_tst_auto_separator
413   elif test "x$PATH_SEPARATOR" != "x$xc_tst_auto_separator"; then
414     echo "$xc_msg_warn 'PATH_SEPARATOR' does not match auto-detected one." >&2
415   fi
416 fi
417 xc_PATH_SEPARATOR=$PATH_SEPARATOR
418 AC_SUBST([PATH_SEPARATOR])dnl
419 ])
420
421
422 dnl _XC_CFG_PRE_POSTLUDE
423 dnl -------------------------------------------------
424 dnl Private macro.
425
426 AC_DEFUN([_XC_CFG_PRE_POSTLUDE],
427 [dnl
428 AC_REQUIRE([_XC_CFG_PRE_PREAMBLE])dnl
429 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_ECHO])dnl
430 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_TEST])dnl
431 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_VAR_PATH])dnl
432 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_EXPR])dnl
433 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_SED])dnl
434 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_GREP])dnl
435 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_TR])dnl
436 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_WC])dnl
437 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_CAT])dnl
438 AC_REQUIRE([_XC_CFG_PRE_CHECK_PATH_SEPARATOR])dnl
439 dnl
440 xc_configure_preamble_result='yes'
441 ])
442
443
444 dnl XC_CONFIGURE_PREAMBLE
445 dnl -------------------------------------------------
446 dnl Public macro.
447 dnl
448 dnl This macro emits shell code which does some
449 dnl very basic checks related with the availability
450 dnl of some commands and utilities needed to allow
451 dnl configure script bootstrapping itself when using
452 dnl these to figure out other settings. Also emits
453 dnl code that performs PATH_SEPARATOR auto-detection
454 dnl and sets its value unless it is already set with
455 dnl a non-empty value.
456 dnl
457 dnl These basic checks are intended to be placed and
458 dnl executed as early as possible in the resulting
459 dnl configure script, and as such these must be pure
460 dnl and portable shell code.
461 dnl
462 dnl This macro may be used directly, or indirectly
463 dnl when using other macros that AC_REQUIRE it such
464 dnl as XC_CHECK_PATH_SEPARATOR.
465 dnl
466 dnl Currently the mechanism used to ensure that this
467 dnl macro expands early enough in generated configure
468 dnl script is making it override autoconf and libtool
469 dnl PATH_SEPARATOR check.
470
471 AC_DEFUN([XC_CONFIGURE_PREAMBLE],
472 [dnl
473 AC_PREREQ([2.50])dnl
474 dnl
475 AC_BEFORE([$0],[_XC_CFG_PRE_PREAMBLE])dnl
476 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_CMD_ECHO])dnl
477 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_CMD_TEST])dnl
478 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_VAR_PATH])dnl
479 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_CMD_EXPR])dnl
480 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_UTIL_SED])dnl
481 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_UTIL_GREP])dnl
482 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_UTIL_TR])dnl
483 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_UTIL_WC])dnl
484 AC_BEFORE([$0],[_XC_CFG_PRE_BASIC_CHK_UTIL_CAT])dnl
485 AC_BEFORE([$0],[_XC_CFG_PRE_CHECK_PATH_SEPARATOR])dnl
486 AC_BEFORE([$0],[_XC_CFG_PRE_POSTLUDE])dnl
487 dnl
488 AC_BEFORE([$0],[AC_CHECK_TOOL])dnl
489 AC_BEFORE([$0],[AC_CHECK_PROG])dnl
490 AC_BEFORE([$0],[AC_CHECK_TOOLS])dnl
491 AC_BEFORE([$0],[AC_CHECK_PROGS])dnl
492 dnl
493 AC_BEFORE([$0],[AC_PATH_TOOL])dnl
494 AC_BEFORE([$0],[AC_PATH_PROG])dnl
495 AC_BEFORE([$0],[AC_PATH_PROGS])dnl
496 dnl
497 AC_BEFORE([$0],[AC_PROG_SED])dnl
498 AC_BEFORE([$0],[AC_PROG_GREP])dnl
499 AC_BEFORE([$0],[AC_PROG_LN_S])dnl
500 AC_BEFORE([$0],[AC_PROG_MKDIR_P])dnl
501 AC_BEFORE([$0],[AC_PROG_INSTALL])dnl
502 AC_BEFORE([$0],[AC_PROG_MAKE_SET])dnl
503 AC_BEFORE([$0],[AC_PROG_LIBTOOL])dnl
504 dnl
505 AC_BEFORE([$0],[LT_INIT])dnl
506 AC_BEFORE([$0],[AM_INIT_AUTOMAKE])dnl
507 AC_BEFORE([$0],[AC_LIBTOOL_WIN32_DLL])dnl
508 dnl
509 AC_REQUIRE([_XC_CFG_PRE_PREAMBLE])dnl
510 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_ECHO])dnl
511 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_TEST])dnl
512 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_VAR_PATH])dnl
513 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_CMD_EXPR])dnl
514 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_SED])dnl
515 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_GREP])dnl
516 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_TR])dnl
517 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_WC])dnl
518 AC_REQUIRE([_XC_CFG_PRE_BASIC_CHK_UTIL_CAT])dnl
519 AC_REQUIRE([_XC_CFG_PRE_CHECK_PATH_SEPARATOR])dnl
520 AC_REQUIRE([_XC_CFG_PRE_POSTLUDE])dnl
521 dnl
522 m4_pattern_forbid([^_*XC])dnl
523 m4_define([$0],[])dnl
524 ])
525
526
527 dnl Override autoconf and libtool PATH_SEPARATOR check
528 dnl -------------------------------------------------
529 dnl Macros overriding.
530 dnl
531 dnl This is done to ensure that the same check is
532 dnl used across different autoconf versions and to
533 dnl allow expansion of XC_CONFIGURE_PREAMBLE macro
534 dnl early enough in the generated configure script.
535
536 dnl
537 dnl Override when using autoconf 2.53 and newer.
538 dnl
539
540 m4_ifdef([_AS_PATH_SEPARATOR_PREPARE],
541 [dnl
542 m4_undefine([_AS_PATH_SEPARATOR_PREPARE])dnl
543 m4_defun([_AS_PATH_SEPARATOR_PREPARE],
544 [dnl
545 AC_REQUIRE([XC_CONFIGURE_PREAMBLE])dnl
546 m4_define([$0],[])dnl
547 ])dnl
548 ])
549
550 dnl
551 dnl Override when using autoconf 2.50 to 2.52
552 dnl
553
554 m4_ifdef([_AC_INIT_PREPARE_FS_SEPARATORS],
555 [dnl
556 m4_undefine([_AC_INIT_PREPARE_FS_SEPARATORS])dnl
557 m4_defun([_AC_INIT_PREPARE_FS_SEPARATORS],
558 [dnl
559 AC_REQUIRE([XC_CONFIGURE_PREAMBLE])dnl
560 ac_path_separator=$PATH_SEPARATOR
561 m4_define([$0],[])dnl
562 ])dnl
563 ])
564
565 dnl
566 dnl Override when using libtool 1.4.2
567 dnl
568
569 m4_ifdef([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
570 [dnl
571 m4_undefine([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
572 m4_defun([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
573 [dnl
574 AC_REQUIRE([XC_CONFIGURE_PREAMBLE])dnl
575 lt_cv_sys_path_separator=$PATH_SEPARATOR
576 m4_define([$0],[])dnl
577 ])dnl
578 ])
579
580
581 dnl XC_CHECK_PATH_SEPARATOR
582 dnl -------------------------------------------------
583 dnl Public macro.
584 dnl
585 dnl Usage of this macro ensures that generated configure
586 dnl script uses the same PATH_SEPARATOR check irrespective
587 dnl of autoconf or libtool version being used to generate
588 dnl configure script.
589 dnl
590 dnl Emits shell code that computes the path separator
591 dnl and stores the result in 'PATH_SEPARATOR', unless
592 dnl the user has already set it with a non-empty value.
593 dnl
594 dnl This path separator is the symbol used to separate
595 dnl or diferentiate paths inside the 'PATH' environment
596 dnl variable.
597 dnl
598 dnl Non-empty user provided 'PATH_SEPARATOR' always
599 dnl overrides the auto-detected one.
600 dnl
601 dnl Strictly speaking the check is done in two steps. The
602 dnl first, which does the actual check, takes place in
603 dnl XC_CONFIGURE_PREAMBLE macro and happens very early in
604 dnl generated configure script. The second one shows and
605 dnl logs the result of the check into config.log at a later
606 dnl configure stage. Placement of this second stage in
607 dnl generated configure script will be done where first
608 dnl direct or indirect usage of this macro happens.
609
610 AC_DEFUN([XC_CHECK_PATH_SEPARATOR],
611 [dnl
612 AC_PREREQ([2.50])dnl
613 dnl
614 AC_BEFORE([$0],[AC_CHECK_TOOL])dnl
615 AC_BEFORE([$0],[AC_CHECK_PROG])dnl
616 AC_BEFORE([$0],[AC_CHECK_TOOLS])dnl
617 AC_BEFORE([$0],[AC_CHECK_PROGS])dnl
618 dnl
619 AC_BEFORE([$0],[AC_PATH_TOOL])dnl
620 AC_BEFORE([$0],[AC_PATH_PROG])dnl
621 AC_BEFORE([$0],[AC_PATH_PROGS])dnl
622 dnl
623 AC_BEFORE([$0],[AC_PROG_SED])dnl
624 AC_BEFORE([$0],[AC_PROG_GREP])dnl
625 AC_BEFORE([$0],[AC_PROG_LN_S])dnl
626 AC_BEFORE([$0],[AC_PROG_MKDIR_P])dnl
627 AC_BEFORE([$0],[AC_PROG_INSTALL])dnl
628 AC_BEFORE([$0],[AC_PROG_MAKE_SET])dnl
629 AC_BEFORE([$0],[AC_PROG_LIBTOOL])dnl
630 dnl
631 AC_BEFORE([$0],[LT_INIT])dnl
632 AC_BEFORE([$0],[AM_INIT_AUTOMAKE])dnl
633 AC_BEFORE([$0],[AC_LIBTOOL_WIN32_DLL])dnl
634 dnl
635 AC_REQUIRE([XC_CONFIGURE_PREAMBLE])dnl
636 dnl
637 #
638 # Check that 'XC_CONFIGURE_PREAMBLE' has already run.
639 #
640
641 if test -z "$xc_configure_preamble_result"; then
642   AC_MSG_ERROR([xc_configure_preamble_result not set (internal problem)])
643 fi
644
645 #
646 # Check that 'PATH_SEPARATOR' has already been set.
647 #
648
649 if test -z "$xc_PATH_SEPARATOR"; then
650   AC_MSG_ERROR([xc_PATH_SEPARATOR not set (internal problem)])
651 fi
652 if test -z "$PATH_SEPARATOR"; then
653   AC_MSG_ERROR([PATH_SEPARATOR not set (internal or config.site problem)])
654 fi
655 AC_MSG_CHECKING([for path separator])
656 AC_MSG_RESULT([$PATH_SEPARATOR])
657 if test "x$PATH_SEPARATOR" != "x$xc_PATH_SEPARATOR"; then
658   AC_MSG_CHECKING([for initial path separator])
659   AC_MSG_RESULT([$xc_PATH_SEPARATOR])
660   AC_MSG_ERROR([path separator mismatch (internal or config.site problem)])
661 fi
662 dnl
663 m4_pattern_forbid([^_*XC])dnl
664 m4_define([$0],[])dnl
665 ])
666