]> git.lyx.org Git - features.git/blob - acinclude.m4
some new (not extensive) changes, some fixes, will probably reverto to .la libs later...
[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 extern int putenv(const char *);],,dnl
621    [lyx_cv_func_putenv_arg='char const *'],[lyx_cv_func_putenv_arg='char *'])])
622  AC_MSG_RESULT($lyx_cv_func_putenv_arg)
623  AC_DEFINE_UNQUOTED(PUTENV_TYPE_ARG,$lyx_cv_func_putenv_arg,dnl
624    [Define to the type of the argument of putenv(). Needed on Solaris 7.])])
625
626
627 dnl Usage: LYX_WITH_DIR(dir-name,desc,dir-var-name,default-value, 
628 dnl                       [default-yes-value])  
629 dnl  Adds a --with-'dir-name' option (described by 'desc') and puts the 
630 dnl  resulting directory name in 'dir-var-name'.
631 AC_DEFUN(LYX_WITH_DIR,[
632   AC_ARG_WITH($1,[  --with-$1        specify $2])
633   AC_MSG_CHECKING([for $2])
634   if test -z "$with_$3"; then
635      AC_CACHE_VAL(lyx_cv_$3, lyx_cv_$3=$4)
636   else
637     test "x$with_$3" = xyes && with_$3=$5
638     lyx_cv_$3="$with_$3"
639   fi
640   AC_MSG_RESULT($lyx_cv_$3)])
641
642
643 dnl Usage: LYX_LOOP_DIR(value,action)
644 dnl Executes action for values of variable `dir' in `values'. `values' can 
645 dnl use ":" as a separator.
646 AC_DEFUN(LYX_LOOP_DIR,[
647 IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
648 for dir in `eval "echo $1"`; do
649   if test ! "$dir" = NONE; then
650     test ! -d "$dir" && AC_ERROR([\"$dir\" is not a directory])
651     $2
652   fi
653 done
654 IFS=$ac_save_ifs
655 ])
656
657
658 dnl Usage: LYX_ADD_LIB_DIR(var-name,dir) Adds a -L directive to variable 
659 dnl var-name. 
660 AC_DEFUN(LYX_ADD_LIB_DIR,[
661 $1="${$1} -L$2"
662 if test "`(uname) 2>/dev/null`" = SunOS &&
663     uname -r | grep '^5' >/dev/null; then
664   if test $ac_cv_prog_gxx = yes ; then 
665     $1="${$1} -Wl[,]-R$2" 
666   else
667     $1="${$1} -R$2"
668   fi
669 fi])
670
671
672 dnl Usage: LYX_ADD_INC_DIR(var-name,dir) Adds a -I directive to variable 
673 dnl var-name. 
674 AC_DEFUN(LYX_ADD_INC_DIR,[$1="${$1} -I$2 "])
675
676 ### Check for a headers existence and location iff it exists
677 ## This is supposed to be a generalised version of LYX_STL_STRING_FWD
678 ## It almost works.  I've tried a few variations but they give errors
679 ## of one sort or other: bad substitution or file not found etc.  The
680 ## actual header _is_ found though and the cache variable is set however
681 ## the reported setting (on screen) is equal to $ac_safe for some unknown
682 ## reason.
683 AC_DEFUN(LYX_PATH_HEADER,
684 [ AC_CHECK_HEADER($1,[
685   ac_tr_safe=PATH_`echo $ac_safe | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
686   AC_CACHE_CHECK([path to $1],lyx_cv_path_$ac_safe,
687   [ cat > conftest.$ac_ext <<EOF
688 #line __oline__ "configure"
689 #include "confdefs.h"
690
691 #include <$1>
692 EOF
693 lyx_cv_path_$ac_safe=`(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
694   grep $1  2>/dev/null | \
695   sed -e 's/.*\(".*$1"\).*/\1/' -e "1q"`
696 rm -f conftest*])
697   AC_DEFINE_UNQUOTED(${ac_tr_safe},${lyx_cv_path_$ac_safe})])
698 ])
699 ### end of LYX_PATH_HEADER
700
701 ### Check for stl_string_fwd.h existence and location if it exists
702 AC_DEFUN(LYX_STL_STRING_FWD,
703 [ AC_CHECK_HEADER(stl_string_fwd.h,[
704   AC_CACHE_CHECK([path to stl_string_fwd.h],lyx_cv_path_stl_string_fwd_h,
705   [ cat > conftest.$ac_ext <<EOF
706 #line __oline__ "configure"
707 #include "confdefs.h"
708
709 #include <stl_string_fwd.h>
710 EOF
711 lyx_cv_path_stl_string_fwd_h=`(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
712   grep 'stl_string_fwd.h'  2>/dev/null | \
713   sed -e 's/.*\(".*stl_string_fwd.h"\).*/\1/' -e "1q"`
714 rm -f conftest*])
715   AC_DEFINE_UNQUOTED(STL_STRING_FWD_H_LOCATION,$lyx_cv_path_stl_string_fwd_h,
716 [define this to the location of stl_string_fwd.h to be used with #include,
717   NOTE: Do not set it to <stl_string_fwd.h> as that will find the LyX
718         supplied version of the header.
719   e.g. <../include/stl_string_fwd.h> or better yet use an absolute path])])
720 ])
721
722
723 dnl AC_VALIDATE_CACHE_SYSTEM_TYPE[(cmd)]
724 dnl if the cache file is inconsistent with the current host,
725 dnl target and build system types, execute CMD or print a default
726 dnl error message.
727 AC_DEFUN(AC_VALIDATE_CACHE_SYSTEM_TYPE, [
728     AC_REQUIRE([AC_CANONICAL_SYSTEM])
729     AC_MSG_CHECKING([config.cache system type])
730     if { test x"${ac_cv_host_system_type+set}" = x"set" &&
731          test x"$ac_cv_host_system_type" != x"$host"; } ||
732        { test x"${ac_cv_build_system_type+set}" = x"set" &&
733          test x"$ac_cv_build_system_type" != x"$build"; } ||
734        { test x"${ac_cv_target_system_type+set}" = x"set" &&
735          test x"$ac_cv_target_system_type" != x"$target"; }; then
736         AC_MSG_RESULT([different])
737         ifelse($#, 1, [$1],
738                 [AC_MSG_ERROR(["you must remove config.cache and restart configure"])])
739     else
740         AC_MSG_RESULT([same])
741     fi
742     ac_cv_host_system_type="$host"
743     ac_cv_build_system_type="$build"
744     ac_cv_target_system_type="$target"
745 ])
746
747 dnl We use this until autoconf fixes its version.
748 AC_DEFUN(LYX_FUNC_SELECT_ARGTYPES,
749 [AC_MSG_CHECKING([types of arguments for select()])
750  AC_CACHE_VAL(ac_cv_func_select_arg234,dnl
751  [AC_CACHE_VAL(ac_cv_func_select_arg1,dnl
752   [AC_CACHE_VAL(ac_cv_func_select_arg5,dnl
753    [for ac_cv_func_select_arg234 in 'fd_set *' 'int *' 'void *'; do
754      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
755        AC_TRY_COMPILE(dnl
756 [#ifdef HAVE_SYS_TYPES_H
757 #include <sys/types.h>
758 #endif
759 #ifdef HAVE_SYS_TIME_H
760 #include <sys/time.h>
761 #endif
762 #ifdef HAVE_SYS_SELECT_H
763 #include <sys/select.h>
764 #endif
765 #ifdef HAVE_SYS_SOCKET_H
766 #include <sys/socket.h>
767 #endif
768 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
769         [ac_not_found=no ; break 3],ac_not_found=yes)
770       done
771      done
772     done
773    ])dnl AC_CACHE_VAL
774   ])dnl AC_CACHE_VAL
775  ])dnl AC_CACHE_VAL
776  if test "$ac_not_found" = yes; then
777   ac_cv_func_select_arg1=int 
778   ac_cv_func_select_arg234='int *' 
779   ac_cv_func_select_arg5='struct timeval *'
780  fi
781  AC_MSG_RESULT([$ac_cv_func_select_arg1,$ac_cv_func_select_arg234,$ac_cv_func_select_arg5])
782  AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG1,$ac_cv_func_select_arg1)
783  AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG234,($ac_cv_func_select_arg234))
784  AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG5,($ac_cv_func_select_arg5))
785 ])
786
787 ## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
788 ## Copyright (C) 1996-1999 Free Software Foundation, Inc.
789 ## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
790 ##
791 ## This program is free software; you can redistribute it and/or modify
792 ## it under the terms of the GNU General Public License as published by
793 ## the Free Software Foundation; either version 2 of the License, or
794 ## (at your option) any later version.
795 ##
796 ## This program is distributed in the hope that it will be useful, but
797 ## WITHOUT ANY WARRANTY; without even the implied warranty of
798 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
799 ## General Public License for more details.
800 ##
801 ## You should have received a copy of the GNU General Public License
802 ## along with this program; if not, write to the Free Software
803 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
804 ##
805 ## As a special exception to the GNU General Public License, if you
806 ## distribute this file as part of a program that contains a
807 ## configuration script generated by Autoconf, you may include it under
808 ## the same distribution terms that you use for the rest of that program.
809
810 # serial 40 AC_PROG_LIBTOOL
811 AC_DEFUN(AC_PROG_LIBTOOL,
812 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
813
814 # Save cache, so that ltconfig can load it
815 AC_CACHE_SAVE
816
817 # Actually configure libtool.  ac_aux_dir is where install-sh is found.
818 CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
819 LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
820 LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
821 DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
822 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
823 $libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
824 || AC_MSG_ERROR([libtool configure failed])
825
826 # Reload cache, that may have been modified by ltconfig
827 AC_CACHE_LOAD
828
829 # This can be used to rebuild libtool when needed
830 LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
831
832 # Always use our own libtool.
833 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
834 AC_SUBST(LIBTOOL)dnl
835
836 # Redirect the config.log output again, so that the ltconfig log is not
837 # clobbered by the next message.
838 exec 5>>./config.log
839 ])
840
841 AC_DEFUN(AC_LIBTOOL_SETUP,
842 [AC_PREREQ(2.13)dnl
843 AC_REQUIRE([AC_ENABLE_SHARED])dnl
844 AC_REQUIRE([AC_ENABLE_STATIC])dnl
845 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
846 AC_REQUIRE([AC_CANONICAL_HOST])dnl
847 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
848 AC_REQUIRE([AC_PROG_RANLIB])dnl
849 AC_REQUIRE([AC_PROG_CC])dnl
850 AC_REQUIRE([AC_PROG_LD])dnl
851 AC_REQUIRE([AC_PROG_NM])dnl
852 AC_REQUIRE([AC_PROG_LN_S])dnl
853 dnl
854
855 case "$target" in
856 NONE) lt_target="$host" ;;
857 *) lt_target="$target" ;;
858 esac
859
860 # Check for any special flags to pass to ltconfig.
861 libtool_flags="--cache-file=$cache_file"
862 test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
863 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
864 test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
865 test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
866 test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
867 ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
868 [libtool_flags="$libtool_flags --enable-dlopen"])
869 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
870 [libtool_flags="$libtool_flags --enable-win32-dll"])
871 AC_ARG_ENABLE(libtool-lock,
872   [  --disable-libtool-lock  avoid locking (might break parallel builds)])
873 test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
874 test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
875
876 # Some flags need to be propagated to the compiler or linker for good
877 # libtool support.
878 case "$lt_target" in
879 *-*-irix6*)
880   # Find out which ABI we are using.
881   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
882   if AC_TRY_EVAL(ac_compile); then
883     case "`/usr/bin/file conftest.o`" in
884     *32-bit*)
885       LD="${LD-ld} -32"
886       ;;
887     *N32*)
888       LD="${LD-ld} -n32"
889       ;;
890     *64-bit*)
891       LD="${LD-ld} -64"
892       ;;
893     esac
894   fi
895   rm -rf conftest*
896   ;;
897
898 *-*-sco3.2v5*)
899   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
900   SAVE_CFLAGS="$CFLAGS"
901   CFLAGS="$CFLAGS -belf"
902   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
903     [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
904   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
905     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
906     CFLAGS="$SAVE_CFLAGS"
907   fi
908   ;;
909
910 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
911 [*-*-cygwin* | *-*-mingw*)
912   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
913   AC_CHECK_TOOL(AS, as, false)
914   AC_CHECK_TOOL(OBJDUMP, objdump, false)
915   ;;
916 ])
917 esac
918 ])
919
920 # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
921 AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
922
923 # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
924 AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
925
926 # AC_ENABLE_SHARED - implement the --enable-shared flag
927 # Usage: AC_ENABLE_SHARED[(DEFAULT)]
928 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
929 #   `yes'.
930 AC_DEFUN(AC_ENABLE_SHARED, [dnl
931 define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
932 AC_ARG_ENABLE(shared,
933 changequote(<<, >>)dnl
934 <<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
935 changequote([, ])dnl
936 [p=${PACKAGE-default}
937 case "$enableval" in
938 yes) enable_shared=yes ;;
939 no) enable_shared=no ;;
940 *)
941   enable_shared=no
942   # Look at the argument we got.  We use all the common list separators.
943   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
944   for pkg in $enableval; do
945     if test "X$pkg" = "X$p"; then
946       enable_shared=yes
947     fi
948   done
949   IFS="$ac_save_ifs"
950   ;;
951 esac],
952 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
953 ])
954
955 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
956 AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
957 AC_ENABLE_SHARED(no)])
958
959 # AC_ENABLE_STATIC - implement the --enable-static flag
960 # Usage: AC_ENABLE_STATIC[(DEFAULT)]
961 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
962 #   `yes'.
963 AC_DEFUN(AC_ENABLE_STATIC, [dnl
964 define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
965 AC_ARG_ENABLE(static,
966 changequote(<<, >>)dnl
967 <<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
968 changequote([, ])dnl
969 [p=${PACKAGE-default}
970 case "$enableval" in
971 yes) enable_static=yes ;;
972 no) enable_static=no ;;
973 *)
974   enable_static=no
975   # Look at the argument we got.  We use all the common list separators.
976   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
977   for pkg in $enableval; do
978     if test "X$pkg" = "X$p"; then
979       enable_static=yes
980     fi
981   done
982   IFS="$ac_save_ifs"
983   ;;
984 esac],
985 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
986 ])
987
988 # AC_DISABLE_STATIC - set the default static flag to --disable-static
989 AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
990 AC_ENABLE_STATIC(no)])
991
992
993 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
994 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
995 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
996 #   `yes'.
997 AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
998 define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
999 AC_ARG_ENABLE(fast-install,
1000 changequote(<<, >>)dnl
1001 <<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
1002 changequote([, ])dnl
1003 [p=${PACKAGE-default}
1004 case "$enableval" in
1005 yes) enable_fast_install=yes ;;
1006 no) enable_fast_install=no ;;
1007 *)
1008   enable_fast_install=no
1009   # Look at the argument we got.  We use all the common list separators.
1010   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
1011   for pkg in $enableval; do
1012     if test "X$pkg" = "X$p"; then
1013       enable_fast_install=yes
1014     fi
1015   done
1016   IFS="$ac_save_ifs"
1017   ;;
1018 esac],
1019 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
1020 ])
1021
1022 # AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
1023 AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1024 AC_ENABLE_FAST_INSTALL(no)])
1025
1026 # AC_PROG_LD - find the path to the GNU or non-GNU linker
1027 AC_DEFUN(AC_PROG_LD,
1028 [AC_ARG_WITH(gnu-ld,
1029 [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
1030 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
1031 AC_REQUIRE([AC_PROG_CC])dnl
1032 AC_REQUIRE([AC_CANONICAL_HOST])dnl
1033 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
1034 ac_prog=ld
1035 if test "$ac_cv_prog_gcc" = yes; then
1036   # Check if gcc -print-prog-name=ld gives a path.
1037   AC_MSG_CHECKING([for ld used by GCC])
1038   ac_prog=`($CC -print-prog-name=ld) 2>&5`
1039   case "$ac_prog" in
1040     # Accept absolute paths.
1041 changequote(,)dnl
1042     [\\/]* | [A-Za-z]:[\\/]*)
1043       re_direlt='/[^/][^/]*/\.\./'
1044 changequote([,])dnl
1045       # Canonicalize the path of ld
1046       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
1047       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
1048         ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
1049       done
1050       test -z "$LD" && LD="$ac_prog"
1051       ;;
1052   "")
1053     # If it fails, then pretend we aren't using GCC.
1054     ac_prog=ld
1055     ;;
1056   *)
1057     # If it is relative, then search for the first ld in PATH.
1058     with_gnu_ld=unknown
1059     ;;
1060   esac
1061 elif test "$with_gnu_ld" = yes; then
1062   AC_MSG_CHECKING([for GNU ld])
1063 else
1064   AC_MSG_CHECKING([for non-GNU ld])
1065 fi
1066 AC_CACHE_VAL(ac_cv_path_LD,
1067 [if test -z "$LD"; then
1068   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
1069   for ac_dir in $PATH; do
1070     test -z "$ac_dir" && ac_dir=.
1071     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
1072       ac_cv_path_LD="$ac_dir/$ac_prog"
1073       # Check to see if the program is GNU ld.  I'd rather use --version,
1074       # but apparently some GNU ld's only accept -v.
1075       # Break only if it was the GNU/non-GNU ld that we prefer.
1076       if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
1077         test "$with_gnu_ld" != no && break
1078       else
1079         test "$with_gnu_ld" != yes && break
1080       fi
1081     fi
1082   done
1083   IFS="$ac_save_ifs"
1084 else
1085   ac_cv_path_LD="$LD" # Let the user override the test with a path.
1086 fi])
1087 LD="$ac_cv_path_LD"
1088 if test -n "$LD"; then
1089   AC_MSG_RESULT($LD)
1090 else
1091   AC_MSG_RESULT(no)
1092 fi
1093 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
1094 AC_PROG_LD_GNU
1095 ])
1096
1097 AC_DEFUN(AC_PROG_LD_GNU,
1098 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
1099 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
1100 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
1101   ac_cv_prog_gnu_ld=yes
1102 else
1103   ac_cv_prog_gnu_ld=no
1104 fi])
1105 ])
1106
1107 # AC_PROG_NM - find the path to a BSD-compatible name lister
1108 AC_DEFUN(AC_PROG_NM,
1109 [AC_MSG_CHECKING([for BSD-compatible nm])
1110 AC_CACHE_VAL(ac_cv_path_NM,
1111 [if test -n "$NM"; then
1112   # Let the user override the test.
1113   ac_cv_path_NM="$NM"
1114 else
1115   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
1116   for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
1117     test -z "$ac_dir" && ac_dir=.
1118     if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
1119       # Check to see if the nm accepts a BSD-compat flag.
1120       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
1121       #   nm: unknown option "B" ignored
1122       if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
1123         ac_cv_path_NM="$ac_dir/nm -B"
1124         break
1125       elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
1126         ac_cv_path_NM="$ac_dir/nm -p"
1127         break
1128       else
1129         ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
1130         continue # so that we can try to find one that supports BSD flags
1131       fi
1132     fi
1133   done
1134   IFS="$ac_save_ifs"
1135   test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
1136 fi])
1137 NM="$ac_cv_path_NM"
1138 AC_MSG_RESULT([$NM])
1139 ])
1140
1141 # AC_CHECK_LIBM - check for math library
1142 AC_DEFUN(AC_CHECK_LIBM,
1143 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1144 LIBM=
1145 case "$lt_target" in
1146 *-*-beos* | *-*-cygwin*)
1147   # These system don't have libm
1148   ;;
1149 *-ncr-sysv4.3*)
1150   AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
1151   AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
1152   ;;
1153 *)
1154   AC_CHECK_LIB(m, main, LIBM="-lm")
1155   ;;
1156 esac
1157 ])
1158
1159 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
1160 # the libltdl convenience library, adds --enable-ltdl-convenience to
1161 # the configure arguments.  Note that LIBLTDL is not AC_SUBSTed, nor
1162 # is AC_CONFIG_SUBDIRS called.  If DIR is not provided, it is assumed
1163 # to be `${top_builddir}/libltdl'.  Make sure you start DIR with
1164 # '${top_builddir}/' (note the single quotes!) if your package is not
1165 # flat, and, if you're not using automake, define top_builddir as
1166 # appropriate in the Makefiles.
1167 AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1168   case "$enable_ltdl_convenience" in
1169   no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
1170   "") enable_ltdl_convenience=yes
1171       ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
1172   esac
1173   LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
1174   INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
1175 ])
1176
1177 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
1178 # the libltdl installable library, and adds --enable-ltdl-install to
1179 # the configure arguments.  Note that LIBLTDL is not AC_SUBSTed, nor
1180 # is AC_CONFIG_SUBDIRS called.  If DIR is not provided, it is assumed
1181 # to be `${top_builddir}/libltdl'.  Make sure you start DIR with
1182 # '${top_builddir}/' (note the single quotes!) if your package is not
1183 # flat, and, if you're not using automake, define top_builddir as
1184 # appropriate in the Makefiles.
1185 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
1186 AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1187   AC_CHECK_LIB(ltdl, main,
1188   [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
1189   [if test x"$enable_ltdl_install" = xno; then
1190      AC_MSG_WARN([libltdl not installed, but installation disabled])
1191    else
1192      enable_ltdl_install=yes
1193    fi
1194   ])
1195   if test x"$enable_ltdl_install" = x"yes"; then
1196     ac_configure_args="$ac_configure_args --enable-ltdl-install"
1197     LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
1198     INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
1199   else
1200     ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
1201     LIBLTDL="-lltdl"
1202     INCLTDL=
1203   fi
1204 ])
1205
1206 dnl old names
1207 AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
1208 AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
1209 AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
1210 AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
1211 AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
1212 AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
1213 AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
1214
1215 dnl This is just to silence aclocal about the macro not being used
1216 ifelse([AC_DISABLE_FAST_INSTALL])dnl
1217 # Macro to add for using GNU gettext.
1218 # Ulrich Drepper <drepper@cygnus.com>, 1995.
1219 #
1220 # This file can be copied and used freely without restrictions.  It can
1221 # be used in projects which are not available under the GNU Public License
1222 # but which still want to provide support for the GNU gettext functionality.
1223 # Please note that the actual code is *not* freely available.
1224
1225 # serial 5
1226
1227 AC_DEFUN(AM_WITH_NLS,
1228   [AC_MSG_CHECKING([whether NLS is requested])
1229     dnl Default is enabled NLS
1230     AC_ARG_ENABLE(nls,
1231       [  --disable-nls           do not use Native Language Support],
1232       USE_NLS=$enableval, USE_NLS=yes)
1233     AC_MSG_RESULT($USE_NLS)
1234     AC_SUBST(USE_NLS)
1235
1236     USE_INCLUDED_LIBINTL=no
1237
1238     dnl If we use NLS figure out what method
1239     if test "$USE_NLS" = "yes"; then
1240       AC_DEFINE(ENABLE_NLS)
1241       AC_MSG_CHECKING([whether included gettext is requested])
1242       AC_ARG_WITH(included-gettext,
1243         [  --with-included-gettext use the GNU gettext library included here],
1244         nls_cv_force_use_gnu_gettext=$withval,
1245         nls_cv_force_use_gnu_gettext=no)
1246       AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
1247
1248       nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
1249       if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
1250         dnl User does not insist on using GNU NLS library.  Figure out what
1251         dnl to use.  If gettext or catgets are available (in this order) we
1252         dnl use this.  Else we have to fall back to GNU NLS library.
1253         dnl catgets is only used if permitted by option --with-catgets.
1254         nls_cv_header_intl=
1255         nls_cv_header_libgt=
1256         CATOBJEXT=NONE
1257
1258         AC_CHECK_HEADER(libintl.h,
1259           [AC_CACHE_CHECK([for gettext in libc], gt_cv_func_gettext_libc,
1260             [AC_TRY_LINK([#include <libintl.h>], [return (int) gettext ("")],
1261                gt_cv_func_gettext_libc=yes, gt_cv_func_gettext_libc=no)])
1262
1263            if test "$gt_cv_func_gettext_libc" != "yes"; then
1264              AC_CHECK_LIB(intl, bindtextdomain,
1265                [AC_CACHE_CHECK([for gettext in libintl],
1266                  gt_cv_func_gettext_libintl,
1267                  [AC_CHECK_LIB(intl, gettext,
1268                   gt_cv_func_gettext_libintl=yes,
1269                   gt_cv_func_gettext_libintl=no)],
1270                  gt_cv_func_gettext_libintl=no)])
1271            fi
1272
1273            if test "$gt_cv_func_gettext_libc" = "yes" \
1274               || test "$gt_cv_func_gettext_libintl" = "yes"; then
1275               AC_DEFINE(HAVE_GETTEXT)
1276               AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
1277                 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
1278               if test "$MSGFMT" != "no"; then
1279                 AC_CHECK_FUNCS(dcgettext)
1280                 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
1281                 AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
1282                   [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
1283                 AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
1284                                return _nl_msg_cat_cntr],
1285                   [CATOBJEXT=.gmo
1286                    DATADIRNAME=share],
1287                   [CATOBJEXT=.mo
1288                    DATADIRNAME=lib])
1289                 INSTOBJEXT=.mo
1290               fi
1291             fi
1292         ])
1293
1294         if test "$CATOBJEXT" = "NONE"; then
1295           AC_MSG_CHECKING([whether catgets can be used])
1296           AC_ARG_WITH(catgets,
1297             [  --with-catgets          use catgets functions if available],
1298             nls_cv_use_catgets=$withval, nls_cv_use_catgets=no)
1299           AC_MSG_RESULT($nls_cv_use_catgets)
1300
1301           if test "$nls_cv_use_catgets" = "yes"; then
1302             dnl No gettext in C library.  Try catgets next.
1303             AC_CHECK_LIB(i, main)
1304             AC_CHECK_FUNC(catgets,
1305               [AC_DEFINE(HAVE_CATGETS)
1306                INTLOBJS="\$(CATOBJS)"
1307                AC_PATH_PROG(GENCAT, gencat, no)dnl
1308                if test "$GENCAT" != "no"; then
1309                  AC_PATH_PROG(GMSGFMT, gmsgfmt, no)
1310                  if test "$GMSGFMT" = "no"; then
1311                    AM_PATH_PROG_WITH_TEST(GMSGFMT, msgfmt,
1312                     [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)
1313                  fi
1314                  AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
1315                    [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
1316                  USE_INCLUDED_LIBINTL=yes
1317                  CATOBJEXT=.cat
1318                  INSTOBJEXT=.cat
1319                  DATADIRNAME=lib
1320                  INTLDEPS='$(top_builddir)/intl/libintl.a'
1321                  INTLLIBS=$INTLDEPS
1322                  LIBS=`echo $LIBS | sed -e 's/-lintl//'`
1323                  nls_cv_header_intl=intl/libintl.h
1324                  nls_cv_header_libgt=intl/libgettext.h
1325                fi])
1326           fi
1327         fi
1328
1329         if test "$CATOBJEXT" = "NONE"; then
1330           dnl Neither gettext nor catgets in included in the C library.
1331           dnl Fall back on GNU gettext library.
1332           nls_cv_use_gnu_gettext=yes
1333         fi
1334       fi
1335
1336       if test "$nls_cv_use_gnu_gettext" = "yes"; then
1337         dnl Mark actions used to generate GNU NLS library.
1338         INTLOBJS="\$(GETTOBJS)"
1339         AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
1340           [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt)
1341         AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
1342         AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
1343           [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
1344         AC_SUBST(MSGFMT)
1345         USE_INCLUDED_LIBINTL=yes
1346         CATOBJEXT=.gmo
1347         INSTOBJEXT=.mo
1348         DATADIRNAME=share
1349         INTLDEPS='$(top_builddir)/intl/libintl.a'
1350         INTLLIBS=$INTLDEPS
1351         LIBS=`echo $LIBS | sed -e 's/-lintl//'`
1352         nls_cv_header_intl=intl/libintl.h
1353         nls_cv_header_libgt=intl/libgettext.h
1354       fi
1355
1356       dnl Test whether we really found GNU xgettext.
1357       if test "$XGETTEXT" != ":"; then
1358         dnl If it is no GNU xgettext we define it as : so that the
1359         dnl Makefiles still can work.
1360         if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
1361           : ;
1362         else
1363           AC_MSG_RESULT(
1364             [found xgettext program is not GNU xgettext; ignore it])
1365           XGETTEXT=":"
1366         fi
1367       fi
1368
1369       # We need to process the po/ directory.
1370       POSUB=po
1371     else
1372       DATADIRNAME=share
1373       nls_cv_header_intl=intl/libintl.h
1374       nls_cv_header_libgt=intl/libgettext.h
1375     fi
1376     AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
1377     AC_OUTPUT_COMMANDS(
1378      [case "$CONFIG_FILES" in *po/Makefile.in*)
1379         sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
1380       esac])
1381
1382
1383     # If this is used in GNU gettext we have to set USE_NLS to `yes'
1384     # because some of the sources are only built for this goal.
1385     if test "$PACKAGE" = gettext; then
1386       USE_NLS=yes
1387       USE_INCLUDED_LIBINTL=yes
1388     fi
1389
1390     dnl These rules are solely for the distribution goal.  While doing this
1391     dnl we only have to keep exactly one list of the available catalogs
1392     dnl in configure.in.
1393     for lang in $ALL_LINGUAS; do
1394       GMOFILES="$GMOFILES $lang.gmo"
1395       POFILES="$POFILES $lang.po"
1396     done
1397
1398     dnl Make all variables we use known to autoconf.
1399     AC_SUBST(USE_INCLUDED_LIBINTL)
1400     AC_SUBST(CATALOGS)
1401     AC_SUBST(CATOBJEXT)
1402     AC_SUBST(DATADIRNAME)
1403     AC_SUBST(GMOFILES)
1404     AC_SUBST(INSTOBJEXT)
1405     AC_SUBST(INTLDEPS)
1406     AC_SUBST(INTLLIBS)
1407     AC_SUBST(INTLOBJS)
1408     AC_SUBST(POFILES)
1409     AC_SUBST(POSUB)
1410   ])
1411
1412 AC_DEFUN(AM_GNU_GETTEXT,
1413   [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
1414    AC_REQUIRE([AC_PROG_CC])dnl
1415    AC_REQUIRE([AC_PROG_RANLIB])dnl
1416    AC_REQUIRE([AC_ISC_POSIX])dnl
1417    AC_REQUIRE([AC_HEADER_STDC])dnl
1418    AC_REQUIRE([AC_C_CONST])dnl
1419    AC_REQUIRE([AC_C_INLINE])dnl
1420    AC_REQUIRE([AC_TYPE_OFF_T])dnl
1421    AC_REQUIRE([AC_TYPE_SIZE_T])dnl
1422    AC_REQUIRE([AC_FUNC_ALLOCA])dnl
1423    AC_REQUIRE([AC_FUNC_MMAP])dnl
1424
1425    AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h string.h \
1426 unistd.h sys/param.h])
1427    AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \
1428 strdup __argz_count __argz_stringify __argz_next])
1429
1430    if test "${ac_cv_func_stpcpy+set}" != "set"; then
1431      AC_CHECK_FUNCS(stpcpy)
1432    fi
1433    if test "${ac_cv_func_stpcpy}" = "yes"; then
1434      AC_DEFINE(HAVE_STPCPY)
1435    fi
1436
1437    AM_LC_MESSAGES
1438    AM_WITH_NLS
1439
1440    if test "x$CATOBJEXT" != "x"; then
1441      if test "x$ALL_LINGUAS" = "x"; then
1442        LINGUAS=
1443      else
1444        AC_MSG_CHECKING(for catalogs to be installed)
1445        NEW_LINGUAS=
1446 dnl ============== Fix is here! ======================
1447 dnl Some sh do not like substitution in bounds of for loops
1448 dnl    for lang in ${LINGUAS=$ALL_LINGUAS}; do
1449     tmplinguas=${LINGUAS=$ALL_LINGUAS}
1450     for lang in ${tmplinguas}; do
1451 dnl ==== end of fix
1452          case "$ALL_LINGUAS" in
1453           *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
1454          esac
1455        done
1456        LINGUAS=$NEW_LINGUAS
1457        AC_MSG_RESULT($LINGUAS)
1458      fi
1459
1460      dnl Construct list of names of catalog files to be constructed.
1461      if test -n "$LINGUAS"; then
1462        for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
1463      fi
1464    fi
1465
1466    dnl The reference to <locale.h> in the installed <libintl.h> file
1467    dnl must be resolved because we cannot expect the users of this
1468    dnl to define HAVE_LOCALE_H.
1469    if test $ac_cv_header_locale_h = yes; then
1470      INCLUDE_LOCALE_H="#include <locale.h>"
1471    else
1472      INCLUDE_LOCALE_H="\
1473 /* The system does not provide the header <locale.h>.  Take care yourself.  */"
1474    fi
1475    AC_SUBST(INCLUDE_LOCALE_H)
1476
1477    dnl Determine which catalog format we have (if any is needed)
1478    dnl For now we know about two different formats:
1479    dnl   Linux libc-5 and the normal X/Open format
1480    test -d intl || mkdir intl
1481    if test "$CATOBJEXT" = ".cat"; then
1482      AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
1483
1484      dnl Transform the SED scripts while copying because some dumb SEDs
1485      dnl cannot handle comments.
1486      sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
1487    fi
1488    dnl po2tbl.sed is always needed.
1489    sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
1490      $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
1491
1492    dnl In the intl/Makefile.in we have a special dependency which makes
1493    dnl only sense for gettext.  We comment this out for non-gettext
1494    dnl packages.
1495    if test "$PACKAGE" = "gettext"; then
1496      GT_NO="#NO#"
1497      GT_YES=
1498    else
1499      GT_NO=
1500      GT_YES="#YES#"
1501    fi
1502    AC_SUBST(GT_NO)
1503    AC_SUBST(GT_YES)
1504
1505    dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
1506    dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
1507    dnl Try to locate is.
1508    MKINSTALLDIRS=
1509    if test -n "$ac_aux_dir"; then
1510      MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
1511    fi
1512    if test -z "$MKINSTALLDIRS"; then
1513      MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
1514    fi
1515    AC_SUBST(MKINSTALLDIRS)
1516
1517    dnl *** For now the libtool support in intl/Makefile is not for real.
1518    l=
1519    AC_SUBST(l)
1520
1521    dnl Generate list of files to be processed by xgettext which will
1522    dnl be included in po/Makefile.
1523    test -d po || mkdir po
1524    if test "x$srcdir" != "x."; then
1525      if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
1526        posrcprefix="$srcdir/"
1527      else
1528        posrcprefix="../$srcdir/"
1529      fi
1530    else
1531      posrcprefix="../"
1532    fi
1533    rm -f po/POTFILES
1534    sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
1535         < $srcdir/po/POTFILES.in > po/POTFILES
1536   ])
1537 # Check whether LC_MESSAGES is available in <locale.h>.
1538 # Ulrich Drepper <drepper@cygnus.com>, 1995.
1539 #
1540 # This file can be copied and used freely without restrictions.  It can
1541 # be used in projects which are not available under the GNU Public License
1542 # but which still want to provide support for the GNU gettext functionality.
1543 # Please note that the actual code is *not* freely available.
1544
1545 # serial 1
1546
1547 AC_DEFUN(AM_LC_MESSAGES,
1548   [if test $ac_cv_header_locale_h = yes; then
1549     AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
1550       [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
1551        am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
1552     if test $am_cv_val_LC_MESSAGES = yes; then
1553       AC_DEFINE(HAVE_LC_MESSAGES)
1554     fi
1555   fi])
1556 # Search path for a program which passes the given test.
1557 # Ulrich Drepper <drepper@cygnus.com>, 1996.
1558 #
1559 # This file can be copied and used freely without restrictions.  It can
1560 # be used in projects which are not available under the GNU Public License
1561 # but which still want to provide support for the GNU gettext functionality.
1562 # Please note that the actual code is *not* freely available.
1563
1564 # serial 1
1565
1566 dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
1567 dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
1568 AC_DEFUN(AM_PATH_PROG_WITH_TEST,
1569 [# Extract the first word of "$2", so it can be a program name with args.
1570 set dummy $2; ac_word=[$]2
1571 AC_MSG_CHECKING([for $ac_word])
1572 AC_CACHE_VAL(ac_cv_path_$1,
1573 [case "[$]$1" in
1574   /*)
1575   ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
1576   ;;
1577   *)
1578   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
1579   for ac_dir in ifelse([$5], , $PATH, [$5]); do
1580     test -z "$ac_dir" && ac_dir=.
1581     if test -f $ac_dir/$ac_word; then
1582       if [$3]; then
1583         ac_cv_path_$1="$ac_dir/$ac_word"
1584         break
1585       fi
1586     fi
1587   done
1588   IFS="$ac_save_ifs"
1589 dnl If no 4th arg is given, leave the cache variable unset,
1590 dnl so AC_PATH_PROGS will keep looking.
1591 ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
1592 ])dnl
1593   ;;
1594 esac])dnl
1595 $1="$ac_cv_path_$1"
1596 if test -n "[$]$1"; then
1597   AC_MSG_RESULT([$]$1)
1598 else
1599   AC_MSG_RESULT(no)
1600 fi
1601 AC_SUBST($1)dnl
1602 ])