]> git.lyx.org Git - features.git/blob - acinclude.m4
some important changes to FIX_DOUBLE_SPCE still not completely correct (please help...
[features.git] / acinclude.m4
1 dnl Some useful functions for LyXs configure.in                 -*- sh -*-
2 dnl Author: Jean-Marc Lasgouttes (Jean-Marc.Lasgouttes@inria.fr)
3 dnl         Lars Gullik Bjønnes (larsbj@lyx.org)
4
5
6 dnl Usage LYX_GET_VERSION   Sets "lyx_version" to the version of LyX being 
7 dnl   built, displays it and sets variable "lyx_devel" to yes or no depending 
8 dnl   whether the version is a development release or not. 
9 AC_DEFUN(LYX_GET_VERSION,[
10 changequote(, ) dnl
11 VERSION=`grep '#define *LYX_VERSION' $1 |
12               sed -e 's/^.*"\(.*\)"$/\1/' 2>/dev/null`
13 echo "configuring LyX version $VERSION"
14 if echo "$VERSION" | grep 'cvs' >/dev/null ; then
15   lyx_devel_version=yes
16   echo "WARNING: This is a development version. Expect bugs."
17 else
18   lyx_devel_version=no
19 fi
20 if echo "$VERSION" | grep 'pre' > /dev/null ; then
21     lyx_prerelease=yes
22     echo "WARNING: This is a prerelease. Be careful and backup your documents."
23 else
24     lyx_prerelease=no
25 fi
26 changequote([, ]) dnl
27 PACKAGE=lyx${program_suffix}
28 AC_SUBST(lyx_devel_version)
29 if test $lyx_devel_version = yes ; then 
30   AC_DEFINE(DEVEL_VERSION, 1, Define if you are building a development version of LyX)
31 fi])
32
33 dnl Usage: LYX_ERROR(message)  Displays the warning "message" and sets the
34 dnl flag lyx_error to yes.
35 AC_DEFUN(LYX_ERROR,[
36 lyx_error_txt="$lyx_error_txt
37 ** $1
38 "
39 lyx_error=yes])
40
41
42 dnl Usage: LYX_WARNING(message)  Displays the warning "message" and sets the
43 dnl flag lyx_warning to yes.
44 AC_DEFUN(LYX_WARNING,[
45 lyx_warning_txt="$lyx_warning_txt
46 == $1
47 "
48 lyx_warning=yes])
49
50
51 dnl Usage: LYX_LIB_ERROR(file,library)  Displays an error message indication 
52 dnl  that 'file' cannot be found because 'lib' may be uncorrectly installed.
53 AC_DEFUN(LYX_LIB_ERROR,[
54 LYX_ERROR([Cannot find $1. Please check that the $2 library
55    is correctly installed on your system.])])
56
57
58 dnl Usage: LYX_CHECK_ERRORS  Displays a warning message if a LYX_ERROR
59 dnl   has occured previously. 
60 AC_DEFUN(LYX_CHECK_ERRORS,[
61 if test x$lyx_error = xyes; then
62 cat <<EOF
63 **** The following problems have been detected by configure. 
64 **** Please check the messages below before running 'make'.
65 **** (see the section 'Problems' in the INSTALL file)
66 $lyx_error_txt
67 $lyx_warning_txt
68 deleting cache $cache_file
69 EOF
70   rm -f $cache_file
71 else
72
73 if test x$lyx_warning = xyes; then
74 cat <<EOF
75 === The following minor problems have been detected by configure. 
76 === Please check the messages below before running 'make'.
77 === (see the section 'Problems' in the INSTALL file)
78 $lyx_warning_txt
79 EOF
80 fi
81 cat <<EOF
82 Configuration of LyX was successful.  
83 Type 'make' to compile the program, 
84 and then 'make install' to install it.
85 EOF
86 fi])
87
88
89 dnl LYX_SEARCH_PROG(VARIABLE-NAME,PROGRAMS-LIST,ACTION-IF-FOUND)
90 dnl             
91 define(LYX_SEARCH_PROG,[dnl
92 for ac_prog in $2 ; do
93 # Extract the first word of "$ac_prog", so it can be a program name with args.
94   set dummy $ac_prog ; ac_word=$[2]
95   if test -z "[$]$1"; then
96     IFS="${IFS=         }"; ac_save_ifs="$IFS"; IFS=":"
97     for ac_dir in $PATH; do
98       test -z "$ac_dir" && ac_dir=.
99       if test -f [$ac_dir/$ac_word]; then
100         $1="$ac_prog"
101         break
102       fi
103     done
104     IFS="$ac_save_ifs"
105   fi
106
107   if test -n "[$]$1"; then
108     ac_result=yes
109   else
110     ac_result=no
111   fi
112   ifelse($3,,,[$3])
113   test -n "[$]$1" && break
114 done
115 ])dnl
116
117
118 AC_DEFUN(LYX_PROG_CXX_WORKS,
119 [AC_LANG_SAVE
120 AC_LANG_CPLUSPLUS
121 AC_TRY_COMPILER([class foo { int bar; }; int main(){return(0);}], ac_cv_prog_cxx_works, ac_cv_prog_cxx_cross)
122 AC_LANG_RESTORE
123 if test $ac_cv_prog_cxx_works = no; then
124   CXX=
125 fi
126 cross_compiling=$ac_cv_prog_cxx_cross
127 ])
128
129
130 AC_DEFUN(LYX_PROG_CXX,
131 [AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl
132 AC_MSG_CHECKING([for a working C++ compiler])
133 LYX_SEARCH_PROG(CXX, $CCC g++ gcc c++ CC cxx xlC cc++, LYX_PROG_CXX_WORKS)
134
135 if test -z "$CXX" ; then
136   AC_ERROR([Unable to find a working C++ compiler])
137 fi
138
139 AC_SUBST(CXX)
140 AC_MSG_RESULT($CXX)
141
142 AC_MSG_CHECKING([whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler])
143 AC_MSG_RESULT($cross_compiling)
144
145 AC_PROG_CXX_GNU
146
147 dnl We might want to get or shut warnings.
148 AC_ARG_WITH(warnings,
149   [  --with-warnings         tell the compiler to display more warnings],,
150   [ if test $lyx_devel_version = yes -o $lyx_prerelease = yes && test $ac_cv_prog_gxx = yes ; then
151         with_warnings=yes;
152     else
153         with_warnings=no;
154     fi;])
155 if test x$with_warnings = xyes ; then
156   lyx_flags="$lyx_flags warnings"
157   AC_DEFINE(WITH_WARNINGS, 1,
158   [Define this if you want to see the warning directives put here and
159    there by the developpers to get attention])
160 fi
161
162 # optimize less for development versions
163 if test $lyx_devel_version = yes -o $lyx_prerelease = yes ; then
164   lyx_opt="-O"
165 else
166   lyx_opt="-O2"
167 fi
168
169 # set the debug flags correctly.
170 if test $ac_cv_prog_gxx = yes; then
171   GXX=yes
172 dnl Check whether -g works, even if CXXFLAGS is set, in case the package
173 dnl plays around with CXXFLAGS (such as to build both debugging and
174 dnl normal versions of a library), tasteless as that idea is.
175   ac_test_CXXFLAGS="${CXXFLAGS+set}"
176   ac_save_CXXFLAGS="$CXXFLAGS"
177   CXXFLAGS=
178 dnl Check the version of g++
179   gxx_version=`g++ --version`
180   
181   AC_PROG_CXX_G
182   if test "$ac_test_CXXFLAGS" = set; then
183     CXXFLAGS="$ac_save_CXXFLAGS"
184   elif test $ac_cv_prog_cxx_g = yes; then
185     case $gxx_version in
186       2.7*) CXXFLAGS="$lyx_opt";;
187       2.95.1) CXXFLAGS="-g $lyx_opt -fpermissive -fno-rtti";;
188       2.95.*) CXXFLAGS="-g $lyx_opt -fno-rtti -fno-exceptions";;
189       *)    CXXFLAGS="-g $lyx_opt -fno-exceptions -fno-rtti";;
190     esac
191   else
192     CXXFLAGS="$lyx_opt"
193   fi
194   if test x$with_warnings = xyes ; then
195     case $gxx_version in
196         2.95.*) CXXFLAGS="$CXXFLAGS -Wall -W -Wconversion";;
197         *) CXXFLAGS="$CXXFLAGS -ansi -Wall -W";;
198     esac
199     if test $lyx_devel_version = yes ; then
200         case $gxx_version in
201             2.95.*) ;;
202             *) CXXFLAGS="$CXXFLAGS -pedantic";;
203         esac
204     fi
205   fi
206 else
207   GXX=
208   test "${CXXFLAGS+set}" = set || CXXFLAGS="-g"
209 fi
210 ])dnl
211
212
213 dnl Usage: LYX_CXX_RTTI : checks whether the C++ compiler
214 dnl   supports RTTI
215 AC_DEFUN(LYX_CXX_RTTI,[
216 ### Check whether the compiler supports runtime type information
217 AC_CACHE_CHECK(whether the C++ compiler supports RTTI,lyx_cv_rtti,
218  [AC_TRY_RUN([
219 class rtti {
220 public:
221    virtual int tag() { return 0; }
222 };
223 class derived1 : public rtti {
224 public:
225     int tag() { return 1; }
226 };
227 class derived2 : public rtti {
228 public:
229     int tag() { return 2; }
230 };
231 int main() {
232     derived1 * foo1 = new derived1();
233     derived2 * foo2 = new derived2();
234     rtti * bar = foo1;
235     derived1 * bar1 = dynamic_cast<derived1 *>(bar);
236     if (bar1 == 0)
237         exit(1);
238     bar = foo2;
239     bar1 = dynamic_cast<derived1 *>(bar);
240     if (bar1 != 0)
241         exit(1);
242     return 0;
243 }
244 ],lyx_cv_rtti=yes,lyx_cv_rtti=no,lyx_cv_rtti=no)
245 ])
246 if test x$lyx_cv_rtti = xyes ; then
247   AC_DEFINE(HAVE_RTTI, 1, 
248    [Define to 1 if your compiler supports runtime type information])
249 fi])
250
251
252 dnl Usage: LYX_CXX_EXPLICIT : checks whether the C++ compiler
253 dnl   understands the "explicit" directive.
254 AC_DEFUN(LYX_CXX_EXPLICIT,[
255 ### Check whether the compiler understands the keyword `explicit'
256 AC_CACHE_CHECK(whether the C++ compiler understands explicit,lyx_cv_explicit,
257  [AC_TRY_COMPILE([
258 class Expl {
259 public:
260         explicit Expl() {};
261 };],,lyx_cv_explicit=yes,lyx_cv_explicit=no)
262 ])
263 if test $lyx_cv_explicit = no ; then
264   AC_DEFINE(explicit,[ ], 
265    [Define to nothing if your compiler does not understand the
266    'explicit' directive])
267 fi])
268
269
270 dnl Usage: LYX_CXX_STL_STACK : checks whether the C++ compiler
271 dnl   has a working stl stack template
272 AC_DEFUN(LYX_CXX_STL_STACK,[
273 AC_CACHE_CHECK(for broken STL stack template,lyx_cv_broken_stack,
274  [AC_TRY_COMPILE([
275 #include <stack>
276 using std::stack;
277 ],[
278     stack<int> stakk;
279     stakk.push(0);
280 ],lyx_cv_broken_stack=no,lyx_cv_broken_stack=yes)
281 ])
282 if test $lyx_cv_broken_stack = yes ; then
283   AC_DEFINE(BROKEN_STL_STACK, 1, 
284    [Define if you have the STL from libg++ 2.7.x, where stack<> is not defined
285    correctly])
286 fi])
287
288
289 dnl Usage: LYX_STD_COUNT : checks wherer the C++ library have a conforming
290 dnl    count template, if not the old HP version is assumed.
291 AC_DEFUN(LYX_STD_COUNT,[
292 AC_CACHE_CHECK(for conforming std::count,lyx_cv_std_count,
293  [AC_TRY_COMPILE([
294 #include <string>
295 #include <algorithm>
296 using std::string;
297 using std::count;
298 int countChar(string const & a, char const c)
299 {
300         return count(a.begin(), a.end(), c);
301 }
302 ],[
303     string a("hello");
304     int i = countChar(a, 'l');
305 ],lyx_cv_std_count=yes,lyx_cv_std_count=no)
306 ])
307 if test $lyx_cv_std_count = yes ; then
308     AC_DEFINE(HAVE_STD_COUNT, 1,
309     [Define if you have a conforming std::count template, otherwise HP version of count template is assumed.])
310 fi])
311
312
313 dnl Usage: LYX_CXX_STL_MODERN_STREAMS : checks whether the C++ compiler
314 dnl   supports modern STL streams
315 AC_DEFUN(LYX_CXX_STL_MODERN_STREAMS,[
316 AC_CACHE_CHECK(for modern STL streams,lyx_cv_modern_streams,
317  [AC_TRY_COMPILE([
318 #include <iostream>
319 ],[
320  std::streambuf * test = std::cerr.rdbuf();
321  test->pubsync();
322 ],lyx_cv_modern_streams=yes,lyx_cv_modern_streams=no)
323 ])
324 if test $lyx_cv_modern_streams = yes ; then
325   AC_DEFINE(MODERN_STL_STREAMS, 1, 
326    [Define if you have modern standard-compliant STL streams])
327 fi])
328
329
330 dnl Usage: LYX_CXX_STL_STRING : checks whether the C++ compiler
331 dnl   has a working stl string container, the check is really stupid
332 dnl   and could need some improvement.
333 AC_DEFUN(LYX_CXX_STL_STRING,[
334     AC_REQUIRE([LYX_PROG_CXX])
335     AC_MSG_CHECKING(whether the included std::string should be used)
336     AC_ARG_WITH(included-string,
337        [  --with-included-string  use LyX string class instead of STL string],
338        [with_included_string=$withval],
339        [AC_TRY_COMPILE([
340             #include <string>
341             using std::string;
342         ],[
343             string a("hello there");
344             a.clear();
345             a = "hey";
346             a.erase();
347         ],[
348             with_included_string=no
349         ],[
350             with_included_string=yes
351             
352         ])
353     ])
354     if test x$with_included_string = xyes ; then
355         AC_DEFINE(USE_INCLUDED_STRING, 1,
356             [Define to use the lyxstring class bundled with LyX.])
357             lyx_flags="$lyx_flags included-string"
358     fi
359     AM_CONDITIONAL(USE_LYXSTRING, test x$with_included_string = xyes)
360     AC_MSG_RESULT([$with_included_string])
361 ])
362
363
364 dnl Usage: LYX_REGEX : checks if the header regex.h is available
365 dnl   if it is not available the automake variable USE_REGEX will be
366 dnl   defined and the regex.h and regex.c that we provide will be used.
367 AC_DEFUN(LYX_REGEX,[
368     AC_CHECK_HEADERS(regex.h, lyx_regex=no, lyx_regex=yes)
369     AM_CONDITIONAL(USE_REGEX, test x$lyx_regex = xyes)
370 ])
371
372
373 dnl LYX_CXX_MUTABLE
374 AC_DEFUN(LYX_CXX_MUTABLE, [
375 AC_REQUIRE([LYX_PROG_CXX])
376 AC_MSG_CHECKING(if C++ compiler supports mutable)
377 AC_TRY_COMPILE(
378 [
379 class k {       
380         mutable char *c;
381 public:
382    void foo() const { c=0; }
383 };
384 ],[
385 ],[
386   ac_mutable=yes
387   AC_DEFINE(HAVE_MUTABLE, 1, 
388    [Defined if you compiler supports 'mutable'.])
389 ],[
390   ac_mutable=no
391 ]) 
392 AC_MSG_RESULT([$ac_mutable])
393 ])
394
395
396 dnl LYX_CXX_PARTIAL
397 AC_DEFUN(LYX_CXX_PARTIAL, [
398 AC_REQUIRE([LYX_PROG_CXX])
399 AC_MSG_CHECKING(if C++ compiler supports partial specialization)
400 AC_TRY_COMPILE(
401 [
402 template<class T, class K>
403 class k {       
404 public:
405 };
406 template<class T> class k<void,T> { };
407 ],[
408   k<float, float> b;
409   k<void,void> a;
410 ],[
411   ac_partial_specialization=yes
412   AC_DEFINE(HAVE_PARTIAL_SPECIALIZATION, 1, 
413    [Defined if your compiler supports partial specialization.])
414 ],[
415   ac_partial_specialization=no
416 ]) 
417 AC_MSG_RESULT([$ac_partial_specialization])
418 ])
419
420
421 dnl Usage: LYX_CXX_NAMESPACES : checks whether the C++ compiler
422 dnl   has a correct namespace handling and define CXX_WORKING_NAMESPACES 
423 dnl   if true. This macro does not do a thourough test, but it should be 
424 dnl   good enough to suit our needs.
425 AC_DEFUN(LYX_CXX_NAMESPACES,[
426 AC_CACHE_CHECK(for correct namespaces support,lyx_cv_cxx_namespace,
427  [AC_TRY_COMPILE([
428   #include <vector>
429   using std::vector;
430 ],[
431         vector<int> test;
432         return 0;
433 ],lyx_cv_cxx_namespace=yes,lyx_cv_cxx_namespace=no)
434 ])
435 if test $lyx_cv_cxx_namespace = yes ; then
436   AC_DEFINE(CXX_WORKING_NAMESPACES, 1, 
437    [Define if your C++ compiler has correct support for namespaces])
438 fi])
439
440
441 dnl Usage: LYX_CXX_CHEADERS : checks whether the C++ compiler
442 dnl   provides wrappers for C headers and use our alternate version otherwise.
443 AC_DEFUN(LYX_CXX_CHEADERS,[
444 AC_CACHE_CHECK(for C headers wrappers,lyx_cv_cxx_cheaders,
445  [AC_TRY_CPP([
446 #include <clocale>
447 #include <cctype>
448 #include <cerrno>
449 #include <cmath>
450 #include <csignal>
451 #include <cstdio>
452 #include <cstdlib>
453 #include <cstring>
454 #include <ctime>],[lyx_cv_cxx_cheaders=yes],[lyx_cv_cxx_cheaders=no])])
455 if test $lyx_cv_cxx_cheaders = no ; then
456   LYX_ADD_INC_DIR(lyx_cppflags,\$(top_srcdir)/src/cheaders)  
457 fi])
458
459
460 dnl Usage LYX_PATH_XPM: Checks for xpm library and header
461 AC_DEFUN(LYX_PATH_XPM,[
462 ### Check for Xpm library
463 AC_CHECK_LIB(Xpm, XpmCreateBufferFromImage,LYX_LIBS="-lXpm $LYX_LIBS",
464         [LYX_LIB_ERROR(libXpm,Xpm)], $LYX_LIBS)
465
466 ### Check for Xpm headers
467 lyx_cv_xpm_h_location="<xpm.h>"
468 AC_CHECK_HEADER(X11/xpm.h,[
469   ac_cv_header_xpm_h=yes
470   lyx_cv_xpm_h_location="<X11/xpm.h>"],[
471 AC_CHECK_HEADER(xpm.h,[],[
472 LYX_LIB_ERROR(xpm.h,Xpm)])])
473 AC_DEFINE_UNQUOTED(XPM_H_LOCATION,$lyx_cv_xpm_h_location)
474
475 ### Test for the header version
476 if test $ac_cv_header_xpm_h = yes; then
477   AC_CACHE_CHECK([xpm header version],lyx_cv_xpmversion,
478   [ cat > conftest.$ac_ext <<EOF
479 #line __oline__ "configure"
480 #include "confdefs.h"
481
482 #include XPM_H_LOCATION
483 "%%%"lyx_cv_xpmv=XpmVersion;lyx_cv_xpmr=XpmRevision"%%%"
484 EOF
485     eval `(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
486       grep '^"%%%"'  2>/dev/null | \
487       sed -e 's/^"%%%"\(.*\)"%%%"/\1/' -e 's/ //g'`
488     case "$lyx_cv_xpmr" in
489 changequote(,)
490      [0-9]) lyxxpmr_alpha=`echo $lyx_cv_xpmr |tr 123456789 abcdefghi`
491             lyxxpmv_alpha=" (aka 3.$lyx_cv_xpmv$lyxxpmr_alpha)";;
492 changequote([,])
493          *) ;;
494     esac
495     lyx_cv_xpmversion="$lyx_cv_xpmv.$lyx_cv_xpmr$lyxxpmv_alpha"
496     rm -f conftest*])
497   case "$lyx_cv_xpmr" in 
498 changequote(,)
499         [789]|[0-9][0-9]*) ;;
500 changequote([,])
501         *) LYX_WARNING([Version $lyx_cv_xpmversion of the Xpm library is a bit old. 
502    If you experience strange crashes with LyX, try to upgrade 
503    to at least version 4.7 (aka 3.4g).
504    If you have installed a newer version of the library, check whether you
505    have an old xpm.h header file in your include path.]);;
506   esac
507 fi])
508
509
510 dnl Usage LYX_PATH_XFORMS: Checks for xforms library and flags
511 AC_DEFUN(LYX_PATH_XFORMS,[
512 ### Check for xforms library
513 AC_CHECK_LIB(forms, fl_initialize, LYX_LIBS="-lforms $LYX_LIBS", 
514   [AC_CHECK_LIB(xforms, fl_initialize, LYX_LIBS="-lxforms $LYX_LIBS", 
515     [LYX_LIB_ERROR(libforms or libxforms,xforms)], $LYX_LIBS)], $LYX_LIBS) 
516
517 ### Check for xforms headers
518 lyx_cv_forms_h_location="<forms.h>"
519 AC_CHECK_HEADER(X11/forms.h,[
520   ac_cv_header_forms_h=yes
521   lyx_cv_forms_h_location="<X11/forms.h>"],[
522 AC_CHECK_HEADER(forms.h,[],[
523 LYX_LIB_ERROR(forms.h,forms)])])
524 AC_DEFINE_UNQUOTED(FORMS_H_LOCATION,$lyx_cv_forms_h_location)
525 if test $ac_cv_header_forms_h = yes; then
526   AC_CACHE_CHECK([xforms header version],lyx_cv_xfversion,
527   [ cat > conftest.$ac_ext <<EOF
528 #line __oline__ "configure"
529 #include "confdefs.h"
530
531 #include FORMS_H_LOCATION
532 #if ! defined(FL_INCLUDE_VERSION)
533 "%%%"(unknown)"%%%"
534 #else
535 "%%%"FL_VERSION.FL_REVISION"%%%"
536 #endif
537 EOF
538 lyx_cv_xfversion=`(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
539   grep '^"%%%"'  2>/dev/null | \
540   sed -e 's/^"%%%"\(.*\)"%%%"/\1/' -e 's/ //g'`
541 rm -f conftest*])
542 case "$lyx_cv_xfversion" in 
543   "(unknown)"|0.82|0.83|0.84|0.85) 
544      LYX_ERROR(dnl
545 Version $lyx_cv_xfversion of xforms is not compatible with LyX. 
546    This version of LyX works best with version 0.88[,] although it
547    supports also versions 0.81[,] 0.86 and 0.87.) ;;
548   0.81|0.86|0.87) 
549      LYX_WARNING(dnl
550 While LyX is compatible with version $lyx_cv_xfversion of xforms[,] 
551    it is recommended that you upgrade to version 0.88.) ;;
552      0.88) ;;
553      0.89) LYX_WARNING(dnl
554 LyX should work ok with version $lyx_cv_xfversion of xforms[,] but
555 it is an unproven version and might still have some bugs. If you
556 have problems[,] please use version 0.88 instead.) ;;
557           *) LYX_WARNING(dnl
558 Version $lyx_cv_xfversion of xforms might not be compatible with LyX[,] 
559    since it is newer than 0.88. You might have slight problems with it.);;
560 esac
561 fi])
562
563
564 dnl Usage: LYX_HPUX  Checks for HP-UX and update CXXFLAGS accordingly
565 AC_DEFUN(LYX_HPUX,
566 [#It seems that HPUX requires using -fpcc-struct-return with gcc.
567 AC_CACHE_CHECK(for HP-UX,ac_cv_hpux,[
568 os=`uname -s | tr '[A-Z]' '[a-z]'`
569 ac_cv_hpux=no
570 test "$os" = hp-ux && ac_cv_hpux=yes])
571 if test "$ac_cv_hpux" = yes; then
572  test "x$GXX" = xyes && CXXFLAGS="$CXXFLAGS -fpcc-struct-return"
573 fi])
574
575
576 dnl Usage: LYX_SUNOS4 Checks for SunOS 4.x and sets the flag lyx_broken_headers
577 dnl   if necessary
578 AC_DEFUN(LYX_SUNOS4,
579 [#The headers are not correct under SunOS4
580 AC_CACHE_CHECK(for SunOS 4.x,ac_cv_sunos4,[
581 changequote(, ) dnl
582 os=`uname -a | sed -e 's/^\([^ ]*\) [^ ]* \([0-9]\)\..*/\1\2/'`
583 changequote([, ]) dnl
584 ac_cv_sunos4=no
585 test "$os" = SunOS4 && ac_cv_sunos4=yes])
586 if test "$ac_cv_sunos4" = yes; then
587  test "x$GXX" = xyes && lyx_broken_headers=yes
588 fi])
589
590
591 dnl Usage: LYX_SCO Checks for SCO and sets the flag lyx_broken_headers
592 dnl   if necessary
593 AC_DEFUN(LYX_SCO,
594 [AC_CACHE_CHECK(for SCO 3.2v4,ac_cv_sco,[
595 ac_cv_sco=no
596 if test `uname -s` != "SCO_SV"; then
597   lyx_machine_rel=`uname -m`:`uname -r`
598   if test $lyx_machine_rel = i386:3.2 || test $lyx_machine_rel = i486:3.2;
599   then
600     if test -f /usr/options/cb.name; then
601       ac_cv_sco=no
602     elif /bin/uname -X 2>/dev/null >/dev/null ; then
603       ac_cv_sco=yes
604     fi
605   fi
606 fi])
607 if test "$ac_cv_sco" = yes; then
608  test "x$GXX" = xyes && lyx_broken_headers=yes
609 fi])
610
611 dnl Usage: LYX_FUNC_PUTENV_ARGTYPE
612 dnl Checks whether putenv() takes 'char const *' or 'char *' as
613 dnl argument. This is needed because Solaris 7 (wrongly?) uses 'char *', 
614 dnl while everybody else uses the former...
615 AC_DEFUN(LYX_FUNC_PUTENV_ARGTYPE,
616 [AC_MSG_CHECKING([type of argument for putenv()])
617  AC_CACHE_VAL(lyx_cv_func_putenv_arg,dnl
618   [AC_TRY_COMPILE(dnl
619 [#include <cstdlib>],
620 [char const * foo = "bar";
621  putenv(foo);],dnl
622    [lyx_cv_func_putenv_arg='char const *'],[lyx_cv_func_putenv_arg='char *'])])
623  AC_MSG_RESULT($lyx_cv_func_putenv_arg)
624  AC_DEFINE_UNQUOTED(PUTENV_TYPE_ARG,$lyx_cv_func_putenv_arg,dnl
625    [Define to the type of the argument of putenv(). Needed on Solaris 7.])])
626
627
628 dnl Usage: LYX_WITH_DIR(dir-name,desc,dir-var-name,default-value, 
629 dnl                       [default-yes-value])  
630 dnl  Adds a --with-'dir-name' option (described by 'desc') and puts the 
631 dnl  resulting directory name in 'dir-var-name'.
632 AC_DEFUN(LYX_WITH_DIR,[
633   AC_ARG_WITH($1,[  --with-$1        specify $2])
634   AC_MSG_CHECKING([for $2])
635   if test -z "$with_$3"; then
636      AC_CACHE_VAL(lyx_cv_$3, lyx_cv_$3=$4)
637   else
638     test "x$with_$3" = xyes && with_$3=$5
639     lyx_cv_$3="$with_$3"
640   fi
641   AC_MSG_RESULT($lyx_cv_$3)])
642
643
644 dnl Usage: LYX_LOOP_DIR(value,action)
645 dnl Executes action for values of variable `dir' in `values'. `values' can 
646 dnl use ":" as a separator.
647 AC_DEFUN(LYX_LOOP_DIR,[
648 IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
649 for dir in `eval "echo $1"`; do
650   if test ! "$dir" = NONE; then
651     test ! -d "$dir" && AC_ERROR([\"$dir\" is not a directory])
652     $2
653   fi
654 done
655 IFS=$ac_save_ifs
656 ])
657
658
659 dnl Usage: LYX_ADD_LIB_DIR(var-name,dir) Adds a -L directive to variable 
660 dnl var-name. 
661 AC_DEFUN(LYX_ADD_LIB_DIR,[
662 $1="${$1} -L$2"
663 if test "`(uname) 2>/dev/null`" = SunOS &&
664     uname -r | grep '^5' >/dev/null; then
665   if test $ac_cv_prog_gxx = yes ; then 
666     $1="${$1} -Wl[,]-R$2" 
667   else
668     $1="${$1} -R$2"
669   fi
670 fi])
671
672
673 dnl Usage: LYX_ADD_INC_DIR(var-name,dir) Adds a -I directive to variable 
674 dnl var-name. 
675 AC_DEFUN(LYX_ADD_INC_DIR,[$1="${$1} -I$2 "])
676
677 ### Check for a headers existence and location iff it exists
678 ## This is supposed to be a generalised version of LYX_STL_STRING_FWD
679 ## It almost works.  I've tried a few variations but they give errors
680 ## of one sort or other: bad substitution or file not found etc.  The
681 ## actual header _is_ found though and the cache variable is set however
682 ## the reported setting (on screen) is equal to $ac_safe for some unknown
683 ## reason.
684 AC_DEFUN(LYX_PATH_HEADER,
685 [ AC_CHECK_HEADER($1,[
686   ac_tr_safe=PATH_`echo $ac_safe | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
687   AC_CACHE_CHECK([path to $1],lyx_cv_path_$ac_safe,
688   [ cat > conftest.$ac_ext <<EOF
689 #line __oline__ "configure"
690 #include "confdefs.h"
691
692 #include <$1>
693 EOF
694 lyx_cv_path_$ac_safe=`(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
695   grep $1  2>/dev/null | \
696   sed -e 's/.*\(".*$1"\).*/\1/' -e "1q"`
697 rm -f conftest*])
698   AC_DEFINE_UNQUOTED(${ac_tr_safe},${lyx_cv_path_$ac_safe})])
699 ])
700 ### end of LYX_PATH_HEADER
701
702 ### Check for stl_string_fwd.h existence and location if it exists
703 AC_DEFUN(LYX_STL_STRING_FWD,
704 [ AC_CHECK_HEADER(stl_string_fwd.h,[
705   AC_CACHE_CHECK([path to stl_string_fwd.h],lyx_cv_path_stl_string_fwd_h,
706   [ cat > conftest.$ac_ext <<EOF
707 #line __oline__ "configure"
708 #include "confdefs.h"
709
710 #include <stl_string_fwd.h>
711 EOF
712 lyx_cv_path_stl_string_fwd_h=`(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
713   grep 'stl_string_fwd.h'  2>/dev/null | \
714   sed -e 's/.*\(".*stl_string_fwd.h"\).*/\1/' -e "1q"`
715 rm -f conftest*])
716   AC_DEFINE_UNQUOTED(STL_STRING_FWD_H_LOCATION,$lyx_cv_path_stl_string_fwd_h,
717 [define this to the location of stl_string_fwd.h to be used with #include,
718   NOTE: Do not set it to <stl_string_fwd.h> as that will find the LyX
719         supplied version of the header.
720   e.g. <../include/stl_string_fwd.h> or better yet use an absolute path])])
721 ])
722
723
724 dnl AC_VALIDATE_CACHE_SYSTEM_TYPE[(cmd)]
725 dnl if the cache file is inconsistent with the current host,
726 dnl target and build system types, execute CMD or print a default
727 dnl error message.
728 AC_DEFUN(AC_VALIDATE_CACHE_SYSTEM_TYPE, [
729     AC_REQUIRE([AC_CANONICAL_SYSTEM])
730     AC_MSG_CHECKING([config.cache system type])
731     if { test x"${ac_cv_host_system_type+set}" = x"set" &&
732          test x"$ac_cv_host_system_type" != x"$host"; } ||
733        { test x"${ac_cv_build_system_type+set}" = x"set" &&
734          test x"$ac_cv_build_system_type" != x"$build"; } ||
735        { test x"${ac_cv_target_system_type+set}" = x"set" &&
736          test x"$ac_cv_target_system_type" != x"$target"; }; then
737         AC_MSG_RESULT([different])
738         ifelse($#, 1, [$1],
739                 [AC_MSG_ERROR(["you must remove config.cache and restart configure"])])
740     else
741         AC_MSG_RESULT([same])
742     fi
743     ac_cv_host_system_type="$host"
744     ac_cv_build_system_type="$build"
745     ac_cv_target_system_type="$target"
746 ])
747
748 dnl We use this until autoconf fixes its version.
749 AC_DEFUN(LYX_FUNC_SELECT_ARGTYPES,
750 [AC_MSG_CHECKING([types of arguments for select()])
751  AC_CACHE_VAL(ac_cv_func_select_arg234,dnl
752  [AC_CACHE_VAL(ac_cv_func_select_arg1,dnl
753   [AC_CACHE_VAL(ac_cv_func_select_arg5,dnl
754    [for ac_cv_func_select_arg234 in 'fd_set *' 'int *' 'void *'; do
755      for ac_cv_func_select_arg1 in 'int' 'size_t' 'unsigned long' 'unsigned'; do      for ac_cv_func_select_arg5 in 'struct timeval *' 'const struct timeval *'; do
756        AC_TRY_COMPILE(dnl
757 [#ifdef HAVE_SYS_TYPES_H
758 #include <sys/types.h>
759 #endif
760 #ifdef HAVE_SYS_TIME_H
761 #include <sys/time.h>
762 #endif
763 #ifdef HAVE_SYS_SELECT_H
764 #include <sys/select.h>
765 #endif
766 #ifdef HAVE_SYS_SOCKET_H
767 #include <sys/socket.h>
768 #endif
769 extern int select ($ac_cv_func_select_arg1,$ac_cv_func_select_arg234,$ac_cv_func_select_arg234,$ac_cv_func_select_arg234,$ac_cv_func_select_arg5);],,dnl
770         [ac_not_found=no ; break 3],ac_not_found=yes)
771       done
772      done
773     done
774    ])dnl AC_CACHE_VAL
775   ])dnl AC_CACHE_VAL
776  ])dnl AC_CACHE_VAL
777  if test "$ac_not_found" = yes; then
778   ac_cv_func_select_arg1=int 
779   ac_cv_func_select_arg234='int *' 
780   ac_cv_func_select_arg5='struct timeval *'
781  fi
782  AC_MSG_RESULT([$ac_cv_func_select_arg1,$ac_cv_func_select_arg234,$ac_cv_func_select_arg5])
783  AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG1,$ac_cv_func_select_arg1)
784  AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG234,($ac_cv_func_select_arg234))
785  AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG5,($ac_cv_func_select_arg5))
786 ])
787
788 ## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
789 ## Copyright (C) 1996-1999 Free Software Foundation, Inc.
790 ## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
791 ##
792 ## This program is free software; you can redistribute it and/or modify
793 ## it under the terms of the GNU General Public License as published by
794 ## the Free Software Foundation; either version 2 of the License, or
795 ## (at your option) any later version.
796 ##
797 ## This program is distributed in the hope that it will be useful, but
798 ## WITHOUT ANY WARRANTY; without even the implied warranty of
799 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
800 ## General Public License for more details.
801 ##
802 ## You should have received a copy of the GNU General Public License
803 ## along with this program; if not, write to the Free Software
804 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
805 ##
806 ## As a special exception to the GNU General Public License, if you
807 ## distribute this file as part of a program that contains a
808 ## configuration script generated by Autoconf, you may include it under
809 ## the same distribution terms that you use for the rest of that program.
810
811 # serial 40 AC_PROG_LIBTOOL
812 AC_DEFUN(AC_PROG_LIBTOOL,
813 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
814
815 # Save cache, so that ltconfig can load it
816 AC_CACHE_SAVE
817
818 # Actually configure libtool.  ac_aux_dir is where install-sh is found.
819 CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
820 LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
821 LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
822 DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
823 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
824 $libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
825 || AC_MSG_ERROR([libtool configure failed])
826
827 # Reload cache, that may have been modified by ltconfig
828 AC_CACHE_LOAD
829
830 # This can be used to rebuild libtool when needed
831 LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
832
833 # Always use our own libtool.
834 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
835 AC_SUBST(LIBTOOL)dnl
836
837 # Redirect the config.log output again, so that the ltconfig log is not
838 # clobbered by the next message.
839 exec 5>>./config.log
840 ])
841
842 AC_DEFUN(AC_LIBTOOL_SETUP,
843 [AC_PREREQ(2.13)dnl
844 AC_REQUIRE([AC_ENABLE_SHARED])dnl
845 AC_REQUIRE([AC_ENABLE_STATIC])dnl
846 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
847 AC_REQUIRE([AC_CANONICAL_HOST])dnl
848 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
849 AC_REQUIRE([AC_PROG_RANLIB])dnl
850 AC_REQUIRE([AC_PROG_CC])dnl
851 AC_REQUIRE([AC_PROG_LD])dnl
852 AC_REQUIRE([AC_PROG_NM])dnl
853 AC_REQUIRE([AC_PROG_LN_S])dnl
854 dnl
855
856 case "$target" in
857 NONE) lt_target="$host" ;;
858 *) lt_target="$target" ;;
859 esac
860
861 # Check for any special flags to pass to ltconfig.
862 libtool_flags="--cache-file=$cache_file"
863 test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
864 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
865 test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
866 test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
867 test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
868 ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
869 [libtool_flags="$libtool_flags --enable-dlopen"])
870 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
871 [libtool_flags="$libtool_flags --enable-win32-dll"])
872 AC_ARG_ENABLE(libtool-lock,
873   [  --disable-libtool-lock  avoid locking (might break parallel builds)])
874 test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
875 test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
876
877 # Some flags need to be propagated to the compiler or linker for good
878 # libtool support.
879 case "$lt_target" in
880 *-*-irix6*)
881   # Find out which ABI we are using.
882   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
883   if AC_TRY_EVAL(ac_compile); then
884     case "`/usr/bin/file conftest.o`" in
885     *32-bit*)
886       LD="${LD-ld} -32"
887       ;;
888     *N32*)
889       LD="${LD-ld} -n32"
890       ;;
891     *64-bit*)
892       LD="${LD-ld} -64"
893       ;;
894     esac
895   fi
896   rm -rf conftest*
897   ;;
898
899 *-*-sco3.2v5*)
900   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
901   SAVE_CFLAGS="$CFLAGS"
902   CFLAGS="$CFLAGS -belf"
903   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
904     [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
905   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
906     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
907     CFLAGS="$SAVE_CFLAGS"
908   fi
909   ;;
910
911 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
912 [*-*-cygwin* | *-*-mingw*)
913   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
914   AC_CHECK_TOOL(AS, as, false)
915   AC_CHECK_TOOL(OBJDUMP, objdump, false)
916   ;;
917 ])
918 esac
919 ])
920
921 # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
922 AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
923
924 # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
925 AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
926
927 # AC_ENABLE_SHARED - implement the --enable-shared flag
928 # Usage: AC_ENABLE_SHARED[(DEFAULT)]
929 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
930 #   `yes'.
931 AC_DEFUN(AC_ENABLE_SHARED, [dnl
932 define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
933 AC_ARG_ENABLE(shared,
934 changequote(<<, >>)dnl
935 <<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
936 changequote([, ])dnl
937 [p=${PACKAGE-default}
938 case "$enableval" in
939 yes) enable_shared=yes ;;
940 no) enable_shared=no ;;
941 *)
942   enable_shared=no
943   # Look at the argument we got.  We use all the common list separators.
944   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
945   for pkg in $enableval; do
946     if test "X$pkg" = "X$p"; then
947       enable_shared=yes
948     fi
949   done
950   IFS="$ac_save_ifs"
951   ;;
952 esac],
953 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
954 ])
955
956 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
957 AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
958 AC_ENABLE_SHARED(no)])
959
960 # AC_ENABLE_STATIC - implement the --enable-static flag
961 # Usage: AC_ENABLE_STATIC[(DEFAULT)]
962 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
963 #   `yes'.
964 AC_DEFUN(AC_ENABLE_STATIC, [dnl
965 define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
966 AC_ARG_ENABLE(static,
967 changequote(<<, >>)dnl
968 <<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
969 changequote([, ])dnl
970 [p=${PACKAGE-default}
971 case "$enableval" in
972 yes) enable_static=yes ;;
973 no) enable_static=no ;;
974 *)
975   enable_static=no
976   # Look at the argument we got.  We use all the common list separators.
977   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
978   for pkg in $enableval; do
979     if test "X$pkg" = "X$p"; then
980       enable_static=yes
981     fi
982   done
983   IFS="$ac_save_ifs"
984   ;;
985 esac],
986 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
987 ])
988
989 # AC_DISABLE_STATIC - set the default static flag to --disable-static
990 AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
991 AC_ENABLE_STATIC(no)])
992
993
994 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
995 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
996 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
997 #   `yes'.
998 AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
999 define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
1000 AC_ARG_ENABLE(fast-install,
1001 changequote(<<, >>)dnl
1002 <<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
1003 changequote([, ])dnl
1004 [p=${PACKAGE-default}
1005 case "$enableval" in
1006 yes) enable_fast_install=yes ;;
1007 no) enable_fast_install=no ;;
1008 *)
1009   enable_fast_install=no
1010   # Look at the argument we got.  We use all the common list separators.
1011   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
1012   for pkg in $enableval; do
1013     if test "X$pkg" = "X$p"; then
1014       enable_fast_install=yes
1015     fi
1016   done
1017   IFS="$ac_save_ifs"
1018   ;;
1019 esac],
1020 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
1021 ])
1022
1023 # AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
1024 AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1025 AC_ENABLE_FAST_INSTALL(no)])
1026
1027 # AC_PROG_LD - find the path to the GNU or non-GNU linker
1028 AC_DEFUN(AC_PROG_LD,
1029 [AC_ARG_WITH(gnu-ld,
1030 [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
1031 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
1032 AC_REQUIRE([AC_PROG_CC])dnl
1033 AC_REQUIRE([AC_CANONICAL_HOST])dnl
1034 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
1035 ac_prog=ld
1036 if test "$ac_cv_prog_gcc" = yes; then
1037   # Check if gcc -print-prog-name=ld gives a path.
1038   AC_MSG_CHECKING([for ld used by GCC])
1039   ac_prog=`($CC -print-prog-name=ld) 2>&5`
1040   case "$ac_prog" in
1041     # Accept absolute paths.
1042 changequote(,)dnl
1043     [\\/]* | [A-Za-z]:[\\/]*)
1044       re_direlt='/[^/][^/]*/\.\./'
1045 changequote([,])dnl
1046       # Canonicalize the path of ld
1047       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
1048       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
1049         ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
1050       done
1051       test -z "$LD" && LD="$ac_prog"
1052       ;;
1053   "")
1054     # If it fails, then pretend we aren't using GCC.
1055     ac_prog=ld
1056     ;;
1057   *)
1058     # If it is relative, then search for the first ld in PATH.
1059     with_gnu_ld=unknown
1060     ;;
1061   esac
1062 elif test "$with_gnu_ld" = yes; then
1063   AC_MSG_CHECKING([for GNU ld])
1064 else
1065   AC_MSG_CHECKING([for non-GNU ld])
1066 fi
1067 AC_CACHE_VAL(ac_cv_path_LD,
1068 [if test -z "$LD"; then
1069   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
1070   for ac_dir in $PATH; do
1071     test -z "$ac_dir" && ac_dir=.
1072     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
1073       ac_cv_path_LD="$ac_dir/$ac_prog"
1074       # Check to see if the program is GNU ld.  I'd rather use --version,
1075       # but apparently some GNU ld's only accept -v.
1076       # Break only if it was the GNU/non-GNU ld that we prefer.
1077       if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
1078         test "$with_gnu_ld" != no && break
1079       else
1080         test "$with_gnu_ld" != yes && break
1081       fi
1082     fi
1083   done
1084   IFS="$ac_save_ifs"
1085 else
1086   ac_cv_path_LD="$LD" # Let the user override the test with a path.
1087 fi])
1088 LD="$ac_cv_path_LD"
1089 if test -n "$LD"; then
1090   AC_MSG_RESULT($LD)
1091 else
1092   AC_MSG_RESULT(no)
1093 fi
1094 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
1095 AC_PROG_LD_GNU
1096 ])
1097
1098 AC_DEFUN(AC_PROG_LD_GNU,
1099 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
1100 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
1101 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
1102   ac_cv_prog_gnu_ld=yes
1103 else
1104   ac_cv_prog_gnu_ld=no
1105 fi])
1106 ])
1107
1108 # AC_PROG_NM - find the path to a BSD-compatible name lister
1109 AC_DEFUN(AC_PROG_NM,
1110 [AC_MSG_CHECKING([for BSD-compatible nm])
1111 AC_CACHE_VAL(ac_cv_path_NM,
1112 [if test -n "$NM"; then
1113   # Let the user override the test.
1114   ac_cv_path_NM="$NM"
1115 else
1116   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
1117   for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
1118     test -z "$ac_dir" && ac_dir=.
1119     if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
1120       # Check to see if the nm accepts a BSD-compat flag.
1121       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
1122       #   nm: unknown option "B" ignored
1123       if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
1124         ac_cv_path_NM="$ac_dir/nm -B"
1125         break
1126       elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
1127         ac_cv_path_NM="$ac_dir/nm -p"
1128         break
1129       else
1130         ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
1131         continue # so that we can try to find one that supports BSD flags
1132       fi
1133     fi
1134   done
1135   IFS="$ac_save_ifs"
1136   test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
1137 fi])
1138 NM="$ac_cv_path_NM"
1139 AC_MSG_RESULT([$NM])
1140 ])
1141
1142 # AC_CHECK_LIBM - check for math library
1143 AC_DEFUN(AC_CHECK_LIBM,
1144 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1145 LIBM=
1146 case "$lt_target" in
1147 *-*-beos* | *-*-cygwin*)
1148   # These system don't have libm
1149   ;;
1150 *-ncr-sysv4.3*)
1151   AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
1152   AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
1153   ;;
1154 *)
1155   AC_CHECK_LIB(m, main, LIBM="-lm")
1156   ;;
1157 esac
1158 ])
1159
1160 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
1161 # the libltdl convenience library, adds --enable-ltdl-convenience to
1162 # the configure arguments.  Note that LIBLTDL is not AC_SUBSTed, nor
1163 # is AC_CONFIG_SUBDIRS called.  If DIR is not provided, it is assumed
1164 # to be `${top_builddir}/libltdl'.  Make sure you start DIR with
1165 # '${top_builddir}/' (note the single quotes!) if your package is not
1166 # flat, and, if you're not using automake, define top_builddir as
1167 # appropriate in the Makefiles.
1168 AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1169   case "$enable_ltdl_convenience" in
1170   no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
1171   "") enable_ltdl_convenience=yes
1172       ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
1173   esac
1174   LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
1175   INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
1176 ])
1177
1178 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
1179 # the libltdl installable library, and adds --enable-ltdl-install to
1180 # the configure arguments.  Note that LIBLTDL is not AC_SUBSTed, nor
1181 # is AC_CONFIG_SUBDIRS called.  If DIR is not provided, it is assumed
1182 # to be `${top_builddir}/libltdl'.  Make sure you start DIR with
1183 # '${top_builddir}/' (note the single quotes!) if your package is not
1184 # flat, and, if you're not using automake, define top_builddir as
1185 # appropriate in the Makefiles.
1186 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
1187 AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1188   AC_CHECK_LIB(ltdl, main,
1189   [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
1190   [if test x"$enable_ltdl_install" = xno; then
1191      AC_MSG_WARN([libltdl not installed, but installation disabled])
1192    else
1193      enable_ltdl_install=yes
1194    fi
1195   ])
1196   if test x"$enable_ltdl_install" = x"yes"; then
1197     ac_configure_args="$ac_configure_args --enable-ltdl-install"
1198     LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
1199     INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
1200   else
1201     ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
1202     LIBLTDL="-lltdl"
1203     INCLTDL=
1204   fi
1205 ])
1206
1207 dnl old names
1208 AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
1209 AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
1210 AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
1211 AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
1212 AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
1213 AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
1214 AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
1215
1216 dnl This is just to silence aclocal about the macro not being used
1217 ifelse([AC_DISABLE_FAST_INSTALL])dnl
1218 # Macro to add for using GNU gettext.
1219 # Ulrich Drepper <drepper@cygnus.com>, 1995.
1220 #
1221 # This file can be copied and used freely without restrictions.  It can
1222 # be used in projects which are not available under the GNU Public License
1223 # but which still want to provide support for the GNU gettext functionality.
1224 # Please note that the actual code is *not* freely available.
1225
1226 # serial 5
1227
1228 AC_DEFUN(AM_WITH_NLS,
1229   [AC_MSG_CHECKING([whether NLS is requested])
1230     dnl Default is enabled NLS
1231     AC_ARG_ENABLE(nls,
1232       [  --disable-nls           do not use Native Language Support],
1233       USE_NLS=$enableval, USE_NLS=yes)
1234     AC_MSG_RESULT($USE_NLS)
1235     AC_SUBST(USE_NLS)
1236
1237     USE_INCLUDED_LIBINTL=no
1238
1239     dnl If we use NLS figure out what method
1240     if test "$USE_NLS" = "yes"; then
1241       AC_DEFINE(ENABLE_NLS)
1242       AC_MSG_CHECKING([whether included gettext is requested])
1243       AC_ARG_WITH(included-gettext,
1244         [  --with-included-gettext use the GNU gettext library included here],
1245         nls_cv_force_use_gnu_gettext=$withval,
1246         nls_cv_force_use_gnu_gettext=no)
1247       AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
1248
1249       nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
1250       if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
1251         dnl User does not insist on using GNU NLS library.  Figure out what
1252         dnl to use.  If gettext or catgets are available (in this order) we
1253         dnl use this.  Else we have to fall back to GNU NLS library.
1254         dnl catgets is only used if permitted by option --with-catgets.
1255         nls_cv_header_intl=
1256         nls_cv_header_libgt=
1257         CATOBJEXT=NONE
1258
1259         AC_CHECK_HEADER(libintl.h,
1260           [AC_CACHE_CHECK([for gettext in libc], gt_cv_func_gettext_libc,
1261             [AC_TRY_LINK([#include <libintl.h>], [return (int) gettext ("")],
1262                gt_cv_func_gettext_libc=yes, gt_cv_func_gettext_libc=no)])
1263
1264            if test "$gt_cv_func_gettext_libc" != "yes"; then
1265              AC_CHECK_LIB(intl, bindtextdomain,
1266                [AC_CACHE_CHECK([for gettext in libintl],
1267                  gt_cv_func_gettext_libintl,
1268                  [AC_CHECK_LIB(intl, gettext,
1269                   gt_cv_func_gettext_libintl=yes,
1270                   gt_cv_func_gettext_libintl=no)],
1271                  gt_cv_func_gettext_libintl=no)])
1272            fi
1273
1274            if test "$gt_cv_func_gettext_libc" = "yes" \
1275               || test "$gt_cv_func_gettext_libintl" = "yes"; then
1276               AC_DEFINE(HAVE_GETTEXT)
1277               AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
1278                 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
1279               if test "$MSGFMT" != "no"; then
1280                 AC_CHECK_FUNCS(dcgettext)
1281                 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
1282                 AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
1283                   [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
1284                 AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
1285                                return _nl_msg_cat_cntr],
1286                   [CATOBJEXT=.gmo
1287                    DATADIRNAME=share],
1288                   [CATOBJEXT=.mo
1289                    DATADIRNAME=lib])
1290                 INSTOBJEXT=.mo
1291               fi
1292             fi
1293         ])
1294
1295         if test "$CATOBJEXT" = "NONE"; then
1296           AC_MSG_CHECKING([whether catgets can be used])
1297           AC_ARG_WITH(catgets,
1298             [  --with-catgets          use catgets functions if available],
1299             nls_cv_use_catgets=$withval, nls_cv_use_catgets=no)
1300           AC_MSG_RESULT($nls_cv_use_catgets)
1301
1302           if test "$nls_cv_use_catgets" = "yes"; then
1303             dnl No gettext in C library.  Try catgets next.
1304             AC_CHECK_LIB(i, main)
1305             AC_CHECK_FUNC(catgets,
1306               [AC_DEFINE(HAVE_CATGETS)
1307                INTLOBJS="\$(CATOBJS)"
1308                AC_PATH_PROG(GENCAT, gencat, no)dnl
1309                if test "$GENCAT" != "no"; then
1310                  AC_PATH_PROG(GMSGFMT, gmsgfmt, no)
1311                  if test "$GMSGFMT" = "no"; then
1312                    AM_PATH_PROG_WITH_TEST(GMSGFMT, msgfmt,
1313                     [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)
1314                  fi
1315                  AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
1316                    [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
1317                  USE_INCLUDED_LIBINTL=yes
1318                  CATOBJEXT=.cat
1319                  INSTOBJEXT=.cat
1320                  DATADIRNAME=lib
1321                  INTLDEPS='$(top_builddir)/intl/libintl.a'
1322                  INTLLIBS=$INTLDEPS
1323                  LIBS=`echo $LIBS | sed -e 's/-lintl//'`
1324                  nls_cv_header_intl=intl/libintl.h
1325                  nls_cv_header_libgt=intl/libgettext.h
1326                fi])
1327           fi
1328         fi
1329
1330         if test "$CATOBJEXT" = "NONE"; then
1331           dnl Neither gettext nor catgets in included in the C library.
1332           dnl Fall back on GNU gettext library.
1333           nls_cv_use_gnu_gettext=yes
1334         fi
1335       fi
1336
1337       if test "$nls_cv_use_gnu_gettext" = "yes"; then
1338         dnl Mark actions used to generate GNU NLS library.
1339         INTLOBJS="\$(GETTOBJS)"
1340         AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
1341           [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt)
1342         AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
1343         AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
1344           [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
1345         AC_SUBST(MSGFMT)
1346         USE_INCLUDED_LIBINTL=yes
1347         CATOBJEXT=.gmo
1348         INSTOBJEXT=.mo
1349         DATADIRNAME=share
1350         INTLDEPS='$(top_builddir)/intl/libintl.a'
1351         INTLLIBS=$INTLDEPS
1352         LIBS=`echo $LIBS | sed -e 's/-lintl//'`
1353         nls_cv_header_intl=intl/libintl.h
1354         nls_cv_header_libgt=intl/libgettext.h
1355       fi
1356
1357       dnl Test whether we really found GNU xgettext.
1358       if test "$XGETTEXT" != ":"; then
1359         dnl If it is no GNU xgettext we define it as : so that the
1360         dnl Makefiles still can work.
1361         if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
1362           : ;
1363         else
1364           AC_MSG_RESULT(
1365             [found xgettext program is not GNU xgettext; ignore it])
1366           XGETTEXT=":"
1367         fi
1368       fi
1369
1370       # We need to process the po/ directory.
1371       POSUB=po
1372     else
1373       DATADIRNAME=share
1374       nls_cv_header_intl=intl/libintl.h
1375       nls_cv_header_libgt=intl/libgettext.h
1376     fi
1377     AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
1378     AC_OUTPUT_COMMANDS(
1379      [case "$CONFIG_FILES" in *po/Makefile.in*)
1380         sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
1381       esac])
1382
1383
1384     # If this is used in GNU gettext we have to set USE_NLS to `yes'
1385     # because some of the sources are only built for this goal.
1386     if test "$PACKAGE" = gettext; then
1387       USE_NLS=yes
1388       USE_INCLUDED_LIBINTL=yes
1389     fi
1390
1391     dnl These rules are solely for the distribution goal.  While doing this
1392     dnl we only have to keep exactly one list of the available catalogs
1393     dnl in configure.in.
1394     for lang in $ALL_LINGUAS; do
1395       GMOFILES="$GMOFILES $lang.gmo"
1396       POFILES="$POFILES $lang.po"
1397     done
1398
1399     dnl Make all variables we use known to autoconf.
1400     AC_SUBST(USE_INCLUDED_LIBINTL)
1401     AC_SUBST(CATALOGS)
1402     AC_SUBST(CATOBJEXT)
1403     AC_SUBST(DATADIRNAME)
1404     AC_SUBST(GMOFILES)
1405     AC_SUBST(INSTOBJEXT)
1406     AC_SUBST(INTLDEPS)
1407     AC_SUBST(INTLLIBS)
1408     AC_SUBST(INTLOBJS)
1409     AC_SUBST(POFILES)
1410     AC_SUBST(POSUB)
1411   ])
1412
1413 AC_DEFUN(AM_GNU_GETTEXT,
1414   [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
1415    AC_REQUIRE([AC_PROG_CC])dnl
1416    AC_REQUIRE([AC_PROG_RANLIB])dnl
1417    AC_REQUIRE([AC_ISC_POSIX])dnl
1418    AC_REQUIRE([AC_HEADER_STDC])dnl
1419    AC_REQUIRE([AC_C_CONST])dnl
1420    AC_REQUIRE([AC_C_INLINE])dnl
1421    AC_REQUIRE([AC_TYPE_OFF_T])dnl
1422    AC_REQUIRE([AC_TYPE_SIZE_T])dnl
1423    AC_REQUIRE([AC_FUNC_ALLOCA])dnl
1424    AC_REQUIRE([AC_FUNC_MMAP])dnl
1425
1426    AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h string.h \
1427 unistd.h sys/param.h])
1428    AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \
1429 strdup __argz_count __argz_stringify __argz_next])
1430
1431    if test "${ac_cv_func_stpcpy+set}" != "set"; then
1432      AC_CHECK_FUNCS(stpcpy)
1433    fi
1434    if test "${ac_cv_func_stpcpy}" = "yes"; then
1435      AC_DEFINE(HAVE_STPCPY)
1436    fi
1437
1438    AM_LC_MESSAGES
1439    AM_WITH_NLS
1440
1441    if test "x$CATOBJEXT" != "x"; then
1442      if test "x$ALL_LINGUAS" = "x"; then
1443        LINGUAS=
1444      else
1445        AC_MSG_CHECKING(for catalogs to be installed)
1446        NEW_LINGUAS=
1447 dnl ============== Fix is here! ======================
1448 dnl Some sh do not like substitution in bounds of for loops
1449 dnl    for lang in ${LINGUAS=$ALL_LINGUAS}; do
1450     tmplinguas=${LINGUAS=$ALL_LINGUAS}
1451     for lang in ${tmplinguas}; do
1452 dnl ==== end of fix
1453          case "$ALL_LINGUAS" in
1454           *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
1455          esac
1456        done
1457        LINGUAS=$NEW_LINGUAS
1458        AC_MSG_RESULT($LINGUAS)
1459      fi
1460
1461      dnl Construct list of names of catalog files to be constructed.
1462      if test -n "$LINGUAS"; then
1463        for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
1464      fi
1465    fi
1466
1467    dnl The reference to <locale.h> in the installed <libintl.h> file
1468    dnl must be resolved because we cannot expect the users of this
1469    dnl to define HAVE_LOCALE_H.
1470    if test $ac_cv_header_locale_h = yes; then
1471      INCLUDE_LOCALE_H="#include <locale.h>"
1472    else
1473      INCLUDE_LOCALE_H="\
1474 /* The system does not provide the header <locale.h>.  Take care yourself.  */"
1475    fi
1476    AC_SUBST(INCLUDE_LOCALE_H)
1477
1478    dnl Determine which catalog format we have (if any is needed)
1479    dnl For now we know about two different formats:
1480    dnl   Linux libc-5 and the normal X/Open format
1481    test -d intl || mkdir intl
1482    if test "$CATOBJEXT" = ".cat"; then
1483      AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
1484
1485      dnl Transform the SED scripts while copying because some dumb SEDs
1486      dnl cannot handle comments.
1487      sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
1488    fi
1489    dnl po2tbl.sed is always needed.
1490    sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
1491      $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
1492
1493    dnl In the intl/Makefile.in we have a special dependency which makes
1494    dnl only sense for gettext.  We comment this out for non-gettext
1495    dnl packages.
1496    if test "$PACKAGE" = "gettext"; then
1497      GT_NO="#NO#"
1498      GT_YES=
1499    else
1500      GT_NO=
1501      GT_YES="#YES#"
1502    fi
1503    AC_SUBST(GT_NO)
1504    AC_SUBST(GT_YES)
1505
1506    dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
1507    dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
1508    dnl Try to locate is.
1509    MKINSTALLDIRS=
1510    if test -n "$ac_aux_dir"; then
1511      MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
1512    fi
1513    if test -z "$MKINSTALLDIRS"; then
1514      MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
1515    fi
1516    AC_SUBST(MKINSTALLDIRS)
1517
1518    dnl *** For now the libtool support in intl/Makefile is not for real.
1519    l=
1520    AC_SUBST(l)
1521
1522    dnl Generate list of files to be processed by xgettext which will
1523    dnl be included in po/Makefile.
1524    test -d po || mkdir po
1525    if test "x$srcdir" != "x."; then
1526      if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
1527        posrcprefix="$srcdir/"
1528      else
1529        posrcprefix="../$srcdir/"
1530      fi
1531    else
1532      posrcprefix="../"
1533    fi
1534    rm -f po/POTFILES
1535    sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
1536         < $srcdir/po/POTFILES.in > po/POTFILES
1537   ])
1538 # Check whether LC_MESSAGES is available in <locale.h>.
1539 # Ulrich Drepper <drepper@cygnus.com>, 1995.
1540 #
1541 # This file can be copied and used freely without restrictions.  It can
1542 # be used in projects which are not available under the GNU Public License
1543 # but which still want to provide support for the GNU gettext functionality.
1544 # Please note that the actual code is *not* freely available.
1545
1546 # serial 1
1547
1548 AC_DEFUN(AM_LC_MESSAGES,
1549   [if test $ac_cv_header_locale_h = yes; then
1550     AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
1551       [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
1552        am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
1553     if test $am_cv_val_LC_MESSAGES = yes; then
1554       AC_DEFINE(HAVE_LC_MESSAGES)
1555     fi
1556   fi])
1557 # Search path for a program which passes the given test.
1558 # Ulrich Drepper <drepper@cygnus.com>, 1996.
1559 #
1560 # This file can be copied and used freely without restrictions.  It can
1561 # be used in projects which are not available under the GNU Public License
1562 # but which still want to provide support for the GNU gettext functionality.
1563 # Please note that the actual code is *not* freely available.
1564
1565 # serial 1
1566
1567 dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
1568 dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
1569 AC_DEFUN(AM_PATH_PROG_WITH_TEST,
1570 [# Extract the first word of "$2", so it can be a program name with args.
1571 set dummy $2; ac_word=[$]2
1572 AC_MSG_CHECKING([for $ac_word])
1573 AC_CACHE_VAL(ac_cv_path_$1,
1574 [case "[$]$1" in
1575   /*)
1576   ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
1577   ;;
1578   *)
1579   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
1580   for ac_dir in ifelse([$5], , $PATH, [$5]); do
1581     test -z "$ac_dir" && ac_dir=.
1582     if test -f $ac_dir/$ac_word; then
1583       if [$3]; then
1584         ac_cv_path_$1="$ac_dir/$ac_word"
1585         break
1586       fi
1587     fi
1588   done
1589   IFS="$ac_save_ifs"
1590 dnl If no 4th arg is given, leave the cache variable unset,
1591 dnl so AC_PATH_PROGS will keep looking.
1592 ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
1593 ])dnl
1594   ;;
1595 esac])dnl
1596 $1="$ac_cv_path_$1"
1597 if test -n "[$]$1"; then
1598   AC_MSG_RESULT([$]$1)
1599 else
1600   AC_MSG_RESULT(no)
1601 fi
1602 AC_SUBST($1)dnl
1603 ])