]> git.donarmstrong.com Git - lilypond.git/blob - aclocal.m4
release: 1.3.30
[lilypond.git] / aclocal.m4
1 dnl WARNING WARNING WARNING WARNING
2 dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4
3 dnl WARNING WARNING WARNING WARNING
4 dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4
5 dnl WARNING WARNING WARNING WARNING
6 dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4
7 dnl aclocal.m4   -*-shell-script-*-
8 dnl StepMake subroutines for configure.in
9
10 AC_DEFUN(AC_STEPMAKE_COMPILE, [
11     # -O is necessary to get inlining
12     OPTIMIZE=""
13     CFLAGS=${CFLAGS:-""}
14     CXXFLAGS=${CXXFLAGS:-$CFLAGS}
15     LDFLAGS=${LDFLAGS:-""}
16     checking_b=yes
17     optimise_b=no
18     profile_b=no
19     debug_b=yes
20
21     AC_ARG_ENABLE(checking,
22     [  enable-checking         set runtime checks (assert calls). Default: on],
23     [checking_b=$enableval] )
24
25     # actually, the default is: tja='-O' to get inlining...
26     # off=''  --jcn
27
28     #actually, that sucks.
29     #  tja looks like a typo.  Default is optimisation off. --hwn
30     
31     AC_ARG_ENABLE(optimise,
32     [  enable-optimise         use maximal speed optimisations. Default: off],
33     [optimise_b=$enableval])
34     
35     AC_ARG_ENABLE(profiling, 
36     [  enable-profiling        compile with gprof support. Default: off],
37     [profile_b=$enableval])
38     
39     AC_ARG_ENABLE(debugging,
40     [  enable-debugging        set debug info. Default: on],
41     [debug_b=$enableval])
42
43     AC_ARG_ENABLE(mingw-prefix,
44     [  enable-mingw-prefix=DIR set the mingw32 directory (standalone windows32 exes)],
45     [MINGWPREFIX=$enableval],
46     [MINGWPREFIX=no])
47
48     if test "$checking_b" = no; then
49         # ugh
50         AC_DEFINE(NDEBUG)
51         DEFINES="$DEFINES -DNDEBUG"
52     fi
53
54     if test "$optimise_b" = yes; then
55         OPTIMIZE="-O2 -finline-functions"
56     fi
57
58     if test "$optimise_b" = no; then
59         OPTIMIZE=""
60     fi
61
62     if test $profile_b = yes; then
63         EXTRA_LIBES="-pg"
64         OPTIMIZE="$OPTIMIZE -pg"
65     fi
66
67     if test $debug_b = yes; then        
68         OPTIMIZE="$OPTIMIZE -g"
69     fi
70
71     # however, C++ support in mingw32 v 0.1.4 is still flaky
72     if test x$MINGWPREFIX != xno; then 
73         ICFLAGS="-I$MINGWPREFIX/include"
74         ILDFLAGS="-$MINGWPREFIX/lib"
75     fi
76
77     AC_PROG_CC
78     LD='$(CC)'
79     AC_SUBST(LD)
80
81     CFLAGS="$CFLAGS $OPTIMIZE"
82     CPPFLAGS=${CPPFLAGS:-""}
83     AC_SUBST(CFLAGS)
84     AC_SUBST(CPPFLAGS)
85     AC_SUBST(LDFLAGS)
86     AC_SUBST(ICFLAGS)
87     AC_SUBST(ILDFLAGS)
88     AC_SUBST(DEFINES)
89     AC_SUBST(EXTRA_LIBES)
90 ])
91
92 AC_DEFUN(AC_STEPMAKE_CXX, [
93     AC_LANG_CPLUSPLUS
94     AC_PROG_CXX
95
96     AC_CHECK_HEADER(FlexLexer.h, true,
97         AC_STEPMAKE_WARN(can"\'"t find flex header. Please install Flex headers correctly))
98
99     CPPFLAGS="$CPPFLAGS $DEFINES"
100     CXXFLAGS="$CXXFLAGS $OPTIMIZE"
101     LDFLAGS="$LDFLAGS $EXTRA_LIBES"
102
103     AC_SUBST(CXXFLAGS)
104     AC_SUBST(CXX)
105     LD='$(CXX)'
106     AC_SUBST(LD)
107 ])
108
109 AC_DEFUN(AC_STEPMAKE_CXXTEMPLATE, [
110     AC_CACHE_CHECK([whether explicit instantiation is needed],
111         lily_cv_need_explicit_instantiation,
112         AC_TRY_LINK([
113     template <class T> struct foo { static int baz; };
114     template <class T> int foo<T>::baz = 1;
115     ], [ return foo<int>::baz; ],
116             lily_cv_need_explicit_instantiation=no,
117             lily_cv_need_explicit_instantiation=yes))
118     if test x"$lily_cv_need_explicit_instantiation"x = x"yes"x; then
119         AC_DEFINE(NEED_EXPLICIT_INSTANTIATION)
120     fi
121 ])
122
123 AC_DEFUN(AC_STEPMAKE_DATADIR, [
124     if test "$datadir" = "\${prefix}/share"; then
125             datadir='${prefix}/share/'$package
126     fi
127     DIR_DATADIR=${datadir}
128     presome=${prefix}
129     if test "$prefix" = "NONE"; then
130             presome=${ac_default_prefix}
131     fi
132     DIR_DATADIR=`echo ${DIR_DATADIR} | sed "s!\\\${prefix}!$presome!"`
133     AC_SUBST(datadir)
134     AC_SUBST(DIR_DATADIR)
135     AC_DEFINE_UNQUOTED(DIR_DATADIR, "${DIR_DATADIR}")
136 ])
137
138 AC_DEFUN(AC_STEPMAKE_END, [
139     AC_OUTPUT($CONFIGFILE.make:config.make.in)
140
141     rm -f GNUmakefile
142     cp make/toplevel.make.in ./GNUmakefile
143     chmod 444 GNUmakefile
144 ])
145
146 AC_DEFUN(AC_STEPMAKE_GXX, [
147     # ugh autoconf
148     # urg, egcs: how to check for egcs >= 1.1?
149     changequote(<<, >>)dnl
150     if $CXX --version | egrep '2\.[89]' > /dev/null ||
151         $CXX --version | grep 'egcs' > /dev/null
152     changequote([, ])dnl
153     then
154             true
155     else
156             AC_STEPMAKE_WARN(can\'t find g++ 2.8 or egcs 1.1)
157     fi
158 ])
159
160 AC_DEFUN(AC_STEPMAKE_GUILE, [
161     GUILE_FLAGS
162     if guile-config --version 2>&1 | grep -q 'version 1\.[012]'; then
163        AC_STEPMAKE_WARN(Guile version 1.3 or better needed)
164     fi
165     AC_PATH_PROG(GUILE, guile, error)
166     AC_SUBST(GUILE)
167 ])
168
169 AC_DEFUN(AC_STEPMAKE_INIT, [
170
171     . $srcdir/VERSION
172     FULL_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PATCH_LEVEL
173     if test x$MY_PATCH_LEVEL != x; then
174         FULL_VERSION=$FULL_VERSION.$MY_PATCH_LEVEL
175     fi
176
177     # urg: don't "fix" this: irix doesn't know about [:lower:] and [:upper:]
178     changequote(<<, >>)dnl
179     PACKAGE=`echo $PACKAGE_NAME | tr '[a-z]' '[A-Z]'`
180     package=`echo $PACKAGE_NAME | tr '[A-Z]' '[a-z]'`
181     changequote([, ])dnl
182
183     # No versioning on directory names of sub-packages 
184     # urg, urg
185     stepmake=${datadir}/stepmake
186     presome=${prefix}
187     if test "$prefix" = "NONE"; then
188             presome=${ac_default_prefix}
189     fi
190     stepmake=`echo ${stepmake} | sed "s!\\\${prefix}!$presome!"`
191
192     AC_MSG_CHECKING(Package)
193     if test "x$PACKAGE" = "xSTEPMAKE"; then
194         AC_MSG_RESULT(Stepmake package!)
195         (cd stepmake; rm -f stepmake; ln -s ../stepmake .)
196         (cd stepmake; rm -f bin; ln -s ../bin .)
197         AC_CONFIG_AUX_DIR(bin)
198         stepmake=stepmake
199     else
200         AC_MSG_RESULT($PACKAGE)
201         AC_MSG_CHECKING(for stepmake)
202         # Check for installed stepmake
203         if test -d $stepmake; then
204             AC_MSG_RESULT($stepmake)
205         else
206             stepmake='$(depth)'/stepmake
207             AC_MSG_RESULT(./stepmake  ($datadir/stepmake not found))
208         fi
209         AC_CONFIG_AUX_DIR(\
210           $HOME/usr/local/share/stepmake/bin\
211           $HOME/usr/local/lib/stepmake/bin\
212           $HOME/usr/share/stepmake/bin\
213           $HOME/usr/lib/stepmake/bin\
214           /usr/local/share/stepmake/bin\
215           /usr/local/lib/stepmake/bin\
216           /usr/share/stepmake/bin\
217           /usr/lib/stepmake/bin\
218           stepmake/bin\
219         )
220     fi
221
222     AC_SUBST(stepmake)
223     AC_SUBST(package)
224     AC_SUBST(PACKAGE)
225     AC_SUBST(PACKAGE_NAME)
226     AC_DEFINE_UNQUOTED(PACKAGE, "${PACKAGE_NAME}")
227     AC_DEFINE_UNQUOTED(TOPLEVEL_VERSION, "${FULL_VERSION}")
228
229     if test "$package_depth" = "" ; then
230         package_depth="."
231     else
232         package_depth="../$package_depth"
233     fi
234     export package_depth
235     AC_SUBST(package_depth)
236
237     AUTOGENERATE="This file was automatically generated by configure"
238     AC_SUBST(AUTOGENERATE)
239     absolute_builddir="`pwd`"
240     AC_SUBST(absolute_builddir)
241
242     STATE_VECTOR=`ls make/STATE-VECTOR 2>/dev/null`
243     if test "x$STATE_VECTOR" != "x"; then
244         STATE_VECTOR="\$(depth)/$STATE_VECTOR"
245     fi
246     AC_SUBST(STATE_VECTOR)
247
248     CONFIGSUFFIX=
249     AC_ARG_ENABLE(config,
250     [  enable-config=FILE      put configure settings in config-FILE.make],
251     [CONFIGSUFFIX=$enableval])
252
253     if test "$CONFIGSUFFIX" != "" ; then
254         CONFIGFILE=config-$CONFIGSUFFIX
255     else
256         CONFIGFILE=config
257     fi
258     AC_SUBST(CONFIGSUFFIX)
259      
260     AC_CANONICAL_HOST
261     AC_CHECK_PROGS(MAKE, gmake make, error)
262     AC_CHECK_PROGS(FIND, find, error)
263
264 dnl system supplied INSTALL is unsafe; use our own install.
265 dnl    AC_PROG_INSTALL
266 dnl    if test "$INSTALL" = "bin/install-sh"; then
267 dnl     export INSTALL="\$\(depth\)/bin/install-sh"
268 dnl    fi
269
270     AC_CHECK_PROGS(TAR, tar, error)
271
272     if test "x`uname`" = "xHP-UX"; then
273         AC_PATH_PROG(BASH, bash, /bin/sh)
274         AC_STEPMAKE_WARN(avoiding buggy /bin/sh)
275         AC_PATH_PROG(SHELL, bash, /bin/ksh)
276     else
277         AC_PATH_PROG(BASH, bash, /bin/sh)
278         SHELL=/bin/sh
279         AC_SUBST(SHELL)
280     fi
281
282
283     AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
284     AC_SUBST(PYTHON)
285
286     if test $MAKE != "error" ; then
287         $MAKE -v 2> /dev/null | grep GNU > /dev/null
288         if test "$?" = 1
289         then
290                 AC_STEPMAKE_WARN(Please install *GNU* make) 
291         fi
292     fi 
293
294     AC_CHECK_SEARCH_RESULT($PYTHON, python, You should install Python)
295
296     if test "x$OSTYPE" = "xcygwin32" || test "x$OSTYPE" = "xWindows_NT"; then
297         LN=cp # hard link does not work under cygnus-nt
298         LN_S='cp -r' # symbolic link does not work for native nt
299         ZIP="zip -r -9" #
300         DOTEXE=.exe
301         # urg
302         # DIRSEP='\\'
303         # PATHSEP=';'
304         #
305         # cygwin fixes all these things.  
306         # it seems these were used because of dos-style TEXINPUTS and
307         # MFINPUTS needed for miktex.
308         # but this breaks parsing of all other cygwin/unix style paths.
309         #
310         # if your (mik)tex breaks, make a:
311         #    /usr/local/bin/tex:
312         #    #!/bin/sh
313         #    TEXINPUTS=`cygpath -pw $TEXINPUTS` /texmf/miktex/bin/tex $*
314         #
315         # and
316         #
317         #    /usr/local/bin/mf:
318         #    #!/bin/sh
319         #    MFINPUTS=`cygpath -pw $MFINPUTS` /texmf/miktex/bin/mf $*
320         #
321         # this way, you may have buildscripts/out/lilypond-profile 
322         # 'automatically' sourced from /usr/etc/profile.d/ too.
323         #
324         DIRSEP='/'
325         PATHSEP=':'
326         INSTALL="\$(SHELL) \$(stepdir)/../bin/install-dot-exe.sh -c"
327     else
328         DIRSEP='/'
329         PATHSEP=':'
330         LN=ln
331         LN_S='ln -s'
332         ZIP="zip -r -9"
333         INSTALL="\$(SHELL) \$(stepdir)/../bin/install-sh -c"
334     fi
335     AC_SUBST(DOTEXE)
336     AC_SUBST(ZIP)
337     AC_SUBST(LN)
338     AC_SUBST(LN_S)
339     AC_SUBST(INSTALL)
340     AC_DEFINE_UNQUOTED(DIRSEP, '${DIRSEP}')
341     AC_DEFINE_UNQUOTED(PATHSEP, '${PATHSEP}')
342     AC_SUBST(PATHSEP)
343     AC_SUBST(DIRSEP)
344   
345     AC_STEPMAKE_DATADIR
346 ])
347
348 AC_DEFUN(AC_STEPMAKE_LEXYACC, [
349     # ugh, automake: we want (and check for) bison
350     AC_PROG_YACC
351     # ugh, automake: we want (and check for) flex
352     # AC_PROG_LEX
353     # urg: automake 1.3: hope this doesn't break 1.2 ac_cv_pro_lex_root hack...
354
355     # AC_DECL_YYTEXT
356     # ugh, ugh
357     ac_cv_prog_lex_root=lex.yy
358
359     AC_CHECK_PROGS(BISON, bison, error)
360     AC_CHECK_PROGS(FLEX, flex, error)
361     AC_CHECK_SEARCH_RESULT($BISON, bison,  Please install Bison, 1.25 or newer)
362     AC_CHECK_SEARCH_RESULT($FLEX,  flex, Please install Flex, 2.5 or newer)
363
364     if test $BISON != "error"; then
365         bison_version=`$BISON --version | sed 's/^.*version 1.//g'`
366         if test `echo $bison_version | sed 's/\..*$//g'` -lt 25; then
367             AC_STEPMAKE_WARN(Your bison is a bit old (1.$bison_version). You might have to install 1.25)
368         fi      
369     fi
370
371     AC_SUBST(BISON)
372     AC_SUBST(FLEX)
373 ])
374
375 AC_DEFUN(AC_STEPMAKE_LIB, [
376     AC_CHECK_PROGS(AR, ar, error)
377     AC_PROG_RANLIB
378
379     AC_SUBST(AR)
380     AC_SUBST(RANLIB)
381 ])
382
383 AC_DEFUN(AC_STEPMAKE_LIBTOOL, [
384     # libtool.info ...
385     # **Never** try to set library version numbers so that they correspond
386     # to the release number of your package.  This is an abuse that only
387     # fosters misunderstanding of the purpose of library versions.
388
389     REVISION=$PATCH_LEVEL
390     # CURRENT=$MINOR_VERSION
391     CURRENT=`expr $MINOR_VERSION + 1`
392     # AGE=$(expr $MAJOR_VERSION + 1)
393     AGE=$MAJOR_VERSION
394     AC_SUBST(CURRENT)
395     AC_SUBST(REVISION)
396     AC_SUBST(AGE)
397 ])
398
399 AC_DEFUN(AC_STEPMAKE_LOCALE, [
400     lang=English
401     ALL_LINGUAS="en nl"
402
403     # with/enable ??
404     AC_ARG_WITH(localedir,
405     [  with-localedir=LOCALE   use LOCALE as locale dir. Default: PREFIX/share/locale ],
406     localedir=$with_localedir,
407     localedir='${prefix}/share/locale')
408
409     AC_ARG_WITH(lang,
410     [  with-lang=LANG          use LANG as language to emit messages],
411     language=$with_lang,
412     language=English)
413
414     AC_MSG_CHECKING(language)    
415     case "$language" in
416       En* | en* | Am* | am* | US* | us*)
417             lang=English;;
418       NL | nl | Du* | du* | Ned* | ned*)
419             lang=Dutch;;
420       "")
421             lang=English;;
422       *)
423             lang=unknown;;
424     esac
425     AC_MSG_RESULT($lang)
426
427     if test "$lang" = "unknown" ; then
428         AC_STEPMAKE_WARN($language not supported; available are: $ALL_LINGUAS)
429     fi
430
431 ])
432
433 AC_DEFUN(AC_STEPMAKE_GETTEXT, [
434     DIR_LOCALEDIR=${localedir}
435     presome=${prefix}
436     if test "$prefix" = "NONE"; then
437             presome=${ac_default_prefix}
438     fi
439     DIR_LOCALEDIR=`echo ${DIR_LOCALEDIR} | sed "s!\\\${prefix}!$presome!"`
440     AC_SUBST(localedir)
441     AC_SUBST(DIR_LOCALEDIR)
442     AC_DEFINE_UNQUOTED(DIR_LOCALEDIR, "${DIR_LOCALEDIR}")
443
444     AC_CHECK_LIB(intl, gettext)
445     AC_CHECK_FUNCS(gettext)
446 ])
447
448 AC_DEFUN(AC_STEPMAKE_MAN, [
449     AC_CHECK_PROGS(GROFF, groff ditroff, -echo no groff)
450     AC_CHECK_PROGS(TROFF, troff, -echo no troff)
451     AC_CHECK_PROGS(TBL, tbl, cat)
452 ])
453
454 AC_DEFUN(AC_STEPMAKE_MSGFMT, [
455     # AC_CHECK_PROGS(MSGFMT, msgfmt, -echo no msgfmt)
456     AC_CHECK_PROGS(MSGFMT, msgfmt, \$(SHELL) \$(step-bindir)/fake-msgfmt.sh )
457     AC_MSG_CHECKING(whether msgfmt accepts -o)
458     msgfmt_output="`msgfmt -o bla 2>&1 | grep usage`"
459     if test "$msgfmt_output" = ""; then
460         AC_MSG_RESULT(yes)
461     else
462         # urg
463         MSGFMT="\$(SHELL) \$(step-bindir)/fake-msgfmt.sh"
464         AC_MSG_RESULT(no)
465         AC_STEPMAKE_WARN(please install msgfmt from GNU gettext)
466     fi
467     if test ! -n "$MSGFMT"; then
468         AC_STEPMAKE_WARN(please install msgfmt from GNU gettext)
469     fi
470 ])
471
472 #why has this been dropped?
473 AC_DEFUN(XXAC_STEPMAKE_TEXMF_DIRS, [
474     AC_ARG_ENABLE(tex-prefix,
475     [  enable-tex-prefix=DIR   set the tex-directory to find TeX subdirectories. (default: PREFIX)],
476     [TEXPREFIX=$enableval],
477     [TEXPREFIX=auto] )
478     
479     AC_ARG_ENABLE(tex-dir,
480     [  enable-tex-dir=DIR      set the directory to put $PACKAGE_NAME TeX files in. ],
481     [TEXDIR=$enableval],
482     [TEXDIR=auto] )
483
484     AC_ARG_ENABLE(mf-dir,
485     [  enable-mf-dir=DIR       set the directory to put $PACKAGE_NAME MetaFont files in. ],
486     [MFDIR=$enableval],
487     [MFDIR=auto])
488
489     if test "x$TEXPREFIX" = xauto ; then
490         AC_TEX_PREFIX(TEXPREFIX)
491     else
492      find_texprefix=$TEXPREFIX
493     fi
494
495     if test "x$MFDIR" = xauto; then
496         AC_MF_SUBDIR(MFDIR)
497     fi
498         
499     if test "x$TEXDIR" = xauto ; then
500         AC_TEX_SUBDIR(TEXDIR)
501     fi
502     AC_SUBST(TEXPREFIX)
503     AC_SUBST(TEXDIR)
504     AC_SUBST(MFDIR)
505 ])
506
507 AC_DEFUN(AC_STEPMAKE_TEXMF_DIRS, [
508     AC_ARG_ENABLE(tex-tfmdir,
509     [  enable-tex-tfmdir=DIR   set the tex-directory where cmr10.tfm lives (default: use kpsewhich)],
510     [TFMDIR=$enableval],
511     [TFMDIR=auto] )
512
513     AC_CHECK_PROGS(KPSEWHICH, kpsewhich, no)
514     AC_MSG_CHECKING(for TeX TFM directory)
515     if test "x$TFMDIR" = xauto ; then
516         if test "x$TEX_TFMDIR" = "x" ; then
517             if test "x$KPSEWHICH" != "xno" ; then
518                 CMR10=`kpsewhich tfm cmr10.tfm`
519                 TEX_TFMDIR=`dirname $CMR10`
520             else
521                 AC_STEPMAKE_WARN(Please set TEX_TFMDIR (to where cmr10.tfm lives):
522         TEX_TFMDIR=/usr/local/TeX/lib/tex/fonts ./configure)
523             fi
524         fi
525     fi
526     AC_MSG_RESULT($TEX_TFMDIR)
527     AC_SUBST(TEX_TFMDIR)
528 ])
529
530 AC_DEFUN(AC_STEPMAKE_TEXMF, [
531     # urg, never know what names these teTeX guys will think up
532
533     AC_CHECK_PROGS(METAFONT, mf, no)
534     if test "x$METAFONT" = "xno"; then
535         AC_CHECK_PROGS(MFONT, mfont, -echo no mf or mfont)
536         METAFONT=$MFONT
537     fi
538
539     AC_CHECK_PROGS(METAPOST, mp, no)
540     if test "x$METAPOST" = "xno"; then
541         AC_CHECK_PROGS(MPOST, mpost, -echo no mp or mpost)
542
543         METAPOST=$MPOST
544     fi
545
546     AC_CHECK_PROGS(INIMETAFONT, inimf, no)
547     if test "x$INIMETAFONT" = "xno"; then
548         AC_CHECK_PROGS(INIMFONT, inimfont, -echo no inimf or inimfont)
549         INIMETAFONT=$INIMFONT
550     fi
551
552     AC_CHECK_PROGS(INIMETAPOST, inimp, no)
553     if test "x$INIMETAPOST" = "xno"; then
554         AC_CHECK_PROGS(INIMPOST, inimpost, -echo no inimp or inimpost)
555         INIMETAPOST=$INIMPOST
556     fi
557
558     AC_MSG_CHECKING(for working metafont mode)
559     modelist='ljfour lj4 lj3 lj2 ljet laserjet'
560     for MFMODE in $modelist; do
561         $METAFONT "\mode:=$MFMODE; mode_setup; end." > /dev/null 2>&1
562         if test -f mfput.tfm; then
563             break;
564         fi
565     done
566
567     #
568     # For now let people define these in their environments
569     #
570     : ${MFPLAIN_MP=`kpsewhich mp mfplain.mp`}
571
572     if test  ${INIMETAPOST} = "inimp" ; then
573        : ${INIMETAPOST_FLAGS=''}
574     else
575        : ${INIMETAPOST_FLAGS='-interaction=nonstopmode'}
576     fi
577
578     rm -f mfput.*
579     AC_MSG_RESULT($MFMODE)
580
581     AC_SUBST(METAFONT)
582     AC_SUBST(METAPOST)
583     AC_SUBST(MFMODE)
584     AC_SUBST(INIMETAFONT)
585     AC_SUBST(INIMETAPOST)
586     AC_SUBST(MFPLAIN_MP)
587     AC_SUBST(INIMETAPOST_FLAGS)
588 ])
589
590 AC_DEFUN(AC_STEPMAKE_WARN, [
591     AC_MSG_WARN($1)
592     warn_b=yes
593 ])
594
595 AC_DEFUN(AC_STEPMAKE_YODL, [
596     if test "x$YODL" = "x"; then 
597         AC_CHECK_PROGS(STRIPROFF, striproff, -echo no striproff)
598         AC_CHECK_PROGS(YODL, yodl, -echo no yodl)
599         AC_CHECK_PROGS(YODL2HTML, yodl2html, -echo no yodl)
600         AC_CHECK_PROGS(YODL2LATEX, yodl2latex, )
601         AC_CHECK_PROGS(YODL2MAN, yodl2man, -echo no yodl)
602         AC_CHECK_PROGS(YODL2MSLESS, yodl2msless, -echo no yodl)
603         AC_CHECK_PROGS(YODL2TEXINFO, yodl2texinfo, -echo no yodl)
604         AC_CHECK_PROGS(YODL2TXT, yodl2txt, -echo no yodl)
605         YODL2LESS_DIR='$(bindir)/'
606     else
607         AC_SUBST(STRIPROFF)
608         AC_SUBST(YODL)
609         AC_SUBST(YODL2HTML)
610         AC_SUBST(YODL2LATEX)
611         AC_SUBST(YODL2LESS_DIR)
612         AC_SUBST(YODL2MAN)
613         AC_SUBST(YODL2MSLESS)
614         AC_SUBST(YODL2TEXINFO)
615         AC_SUBST(YODL2TXT)
616         export STRIPROFF YODL YODL2HTML YODL2LATEX YODL2MAN YODL2MSLESS YODL2TEXINFO YODL2TXT
617     fi
618     if test "x$YODL" = "-echo no yodl"; then
619         AC_STEPMAKE_WARN(Did not find YODL (Yodl is Yet Oneother Document Language, see http://www.cs.uu.nl/~hanwen/yodl))
620     fi    
621 ])
622
623 dnl should cache result.
624 dnl should  look in $prefix first.
625 dnl should probably assume TDS
626
627 AC_DEFUN(AC_TEX_PREFIX, [
628     
629
630     AC_MSG_CHECKING(TeX/MF root dir directory)    
631
632     find_root_prefix="$prefix"
633     
634
635     test "x$find_root_prefix" = xNONE && find_root_prefix="$ac_default_prefix"
636     find_texpostfix="";
637     for postfix in "/lib/tex/" "/lib/texmf" "/lib" "/tex" "/texmf"; do
638         find_texprefix="$find_root_prefix$postfix"
639         if test -d $find_texprefix; then
640             find_texpostfix=$postfix
641             break;
642         fi
643     done
644     
645     if test "x$find_texpostfix" = x; then
646         find_texpostfix='/lib/texmf/tex'
647         AC_STEPMAKE_WARN(Cannot determine the TeX-directory. Please use --enable-tex-prefix)
648     fi
649
650     find_texprefix="$find_root_prefix/$find_texpostfix"
651
652     # only assign if variablename not empty
653     if test x != "x[$]$1"; then
654         $1='${prefix}'/"$find_texpostfix"
655     fi
656     AC_MSG_RESULT($find_texprefix)
657
658 ])
659  
660
661 # find a directory inside a prefix, 
662 # $1 the prefix (expanded version)
663 # $2 variable to assign
664 # $3 the directory name 
665 # $4 description
666 AC_DEFUN(AC_FIND_DIR_IN_PREFIX, [
667     
668     AC_MSG_CHECKING($4 directory)    
669     find_dirdir=`(cd $1; 
670       $FIND ./ -type d -a -name $3 -print |sort|head -1|sed 's#^\./##')`
671     
672
673     if test "x$find_dirdir" = x; then
674        find_dirdir="/$3";
675        AC_STEPMAKE_WARN(Cannot determine $4 subdirectory. Please set from command-line)
676         true
677     fi
678     $2=$find_dirdir
679     AC_MSG_RESULT($1/$find_dirdir)
680 ])
681
682 # ugh.  this is hopeless
683 AC_DEFUN(AC_KPSE_TEX_DIR, [
684         kpse_paths=`(kpsepath -n latex tex; kpsepath -n tex tex) | sed 's/:/ /g' | tr ' ' '\012' |sort | uniq -d`
685         kpse_syspaths=`echo $kpse_paths | grep '!'| sed 's/!//g'`
686         echo $kpse_paths
687         if test -w "$kpse_syspaths";
688         then
689                 dir=`echo $kpse_syspaths | head -1`
690         else
691                 dir=`echo $kpse_paths | grep -v '!'| head -1`
692         fi
693         if test "$prefix" = "NONE"; then
694                 local_prefix=$ac_default_prefix
695                 local_prefix_quote='${prefix}'
696
697         else
698                 local_prefix=$prefix
699                 local_prefix_quote=$prefix
700         fi
701         echo $local_prefix_quote = $local_prefix
702         echo $dir
703         echo $dir  | sed 's!'$local_prefix'!\$local_prefix_quote!g'
704 ])
705
706 AC_DEFUN(AC_TEX_SUBDIR, [
707 dnl    AC_REQUIRE([AC_TEX_PREFIX])
708     AC_FIND_DIR_IN_PREFIX($find_texprefix, $1, tex,TeX input)
709     $1="$TEXPREFIX/$$1"
710 ])
711
712 AC_DEFUN(AC_MF_SUBDIR, [
713 dnl     AC_REQUIRE([AC_TEX_PREFIX])
714     AC_FIND_DIR_IN_PREFIX($find_texprefix, $1, source, MF input)
715     $1="$TEXPREFIX/$$1"
716 ])
717
718 AC_DEFUN(AC_CHECK_SEARCH_RESULT, [
719         result="`echo \"$1\" | grep echo`"
720         if test "x$1" = "xerror" -o "x$result" != "x"; then
721                 AC_STEPMAKE_WARN(can\'t find $2. $3)
722         fi
723 ])
724
725 dnl   GUILE_FLAGS --- set flags for compiling and linking with Guile
726 dnl
727 dnl   This macro runs the `guile-config' script, installed with Guile,
728 dnl   to find out where Guile's header files and libraries are
729 dnl   installed.  It sets two variables, marked for substitution, as
730 dnl   by AC_SUBST.
731 dnl   
732 dnl     GUILE_CFLAGS --- flags to pass to a C or C++ compiler to build
733 dnl             code that uses Guile header files.  This is almost
734 dnl             always just a -I flag.
735 dnl   
736 dnl     GUILE_LDFLAGS --- flags to pass to the linker to link a
737 dnl             program against Guile.  This includes `-lguile' for
738 dnl             the Guile library itself, any libraries that Guile
739 dnl             itself requires (like -lqthreads), and so on.  It may
740 dnl             also include a -L flag to tell the compiler where to
741 dnl             find the libraries.
742
743 AC_DEFUN([GUILE_FLAGS],[
744 ## The GUILE_FLAGS macro.
745   ## First, let's just see if we can find Guile at all.
746   AC_MSG_CHECKING(for Guile)
747   guile-config link > /dev/null || {
748     echo "configure: cannot find guile-config; is Guile installed?" 1>&2
749     exit 1
750   }
751   GUILE_CFLAGS="`guile-config compile`"
752   GUILE_LDFLAGS="`guile-config link`"
753   AC_SUBST(GUILE_CFLAGS)
754   AC_SUBST(GUILE_LDFLAGS)
755   AC_MSG_RESULT(yes)
756 ])
757
758
759 # Configure paths for GTK+
760 # Owen Taylor     97-11-3
761
762 dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
763 dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
764 dnl
765 AC_DEFUN(AM_PATH_GTK,
766 [dnl 
767 dnl Get the cflags and libraries from the gtk-config script
768 dnl
769   AC_PATH_PROG(GTK_CONFIG, gtk-config, no)
770   min_gtk_version=ifelse([$1], ,1.1.1,$1)
771   AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
772   no_gtk=""
773   if test "$GTK_CONFIG" != "no" ; then
774     GTK_CFLAGS=`$GTK_CONFIG --cflags`
775     GTK_LIBS=`$GTK_CONFIG --libs`
776     ac_save_CFLAGS="$CFLAGS"
777     ac_save_LIBS="$LIBS"
778     ac_save_CXXFLAGS="$CXXFLAGS"
779     CFLAGS="$CFLAGS $GTK_CFLAGS"
780     CXXFLAGS="$CXXFLAGS $GTK_CFLAGS"
781     LIBS="$LIBS $GTK_LIBS"
782 dnl
783 dnl Now check if the installed GTK is sufficiently new. (Also sanity
784 dnl checks the results of gtk-config to some extent)
785 dnl
786     AC_TRY_RUN([
787 #include <gtk/gtk.h>
788 #include <stdio.h>
789
790 int 
791 main ()
792 {
793   int major, minor, micro;
794
795   if (sscanf("$min_gtk_version", "%d.%d.%d", &major, &minor, &micro) != 3) {
796      printf("%s, bad version string\n", "$min_gtk_version");
797      exit(1);
798    }
799
800    return !((gtk_major_version > major) ||
801             ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
802             ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
803 }
804 ],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
805      CFLAGS="$ac_save_CFLAGS"
806      CXXFLAGS="$ac_save_CXXFLAGS"
807      LIBS="$ac_save_LIBS"
808   else
809      no_gtk=yes
810   fi
811   if test "x$no_gtk" = x ; then
812      AC_MSG_RESULT(yes)
813      ifelse([$2], , :, [$2])     
814   else
815      AC_MSG_RESULT(no)
816      GTK_CFLAGS=""
817      GTK_LIBS=""
818      ifelse([$3], , :, [$3])
819   fi
820   CXXFLAGS="$CXXFLAGS $GTK_CFLAGS"
821   AC_SUBST(CXXFLAGS)
822   AC_SUBST(GTK_CFLAGS)
823   AC_SUBST(GTK_LIBS)
824 ])
825
826
827 # Configure paths for GTK--
828 # Erik Andersen 30 May 1998
829 # Modified by Tero Pulkkinen (added the compiler checks... I hope they work..)
830
831 dnl Test for GTK__, and define GTK___CFLAGS and GTK___LIBS
832 dnl   to be used as follows:
833 dnl AM_PATH_GTKMM([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
834 dnl
835
836 dnl Get the cflags and libraries from the gtkmm-config script
837 dnl
838 AC_ARG_WITH(gtkmm-prefix,[  --with-gtkmm-prefix=PREFIX
839                           Prefix where GTK-- is installed (optional)],
840             gtkmm_config_prefix="$withval", gtkmm_config_prefix="")
841 AC_ARG_WITH(gtkmm-exec-prefix,[  --with-gtkmm-exec-prefix=PREFIX
842                           Exec prefix where GTK-- is installed (optional)],
843             gtkmm_config_exec_prefix="$withval", gtkmm_config_exec_prefix="")
844 AC_ARG_ENABLE(gtkmmtest, [  --disable-gtkmmtest     Do not try to compile and run a test GTK-- program],
845                     , enable_gtkmmtest=yes)
846
847   if test x$gtkmm_config_exec_prefix != x ; then
848      gtkmm_config_args="$gtkmm_config_args --exec-prefix=$gtkmm_config_exec_prefix"
849      if test x${GTKMM_CONFIG+set} != xset ; then
850         GTKMM_CONFIG=$gtkmm_config_exec_prefix/bin/gtkmm-config
851      fi
852   fi
853   if test x$gtkmm_config_prefix != x ; then
854      gtkmm_config_args="$gtkmm_config_args --prefix=$gtkmm_config_prefix"
855      if test x${GTKMM_CONFIG+set} != xset ; then
856         GTKMM_CONFIG=$gtkmm_config_prefix/bin/gtkmm-config
857      fi
858   fi
859
860
861 AC_DEFUN(AM_PATH_GTKMM,
862 [dnl 
863
864 dnl
865 dnl Check if the installed GTK-- is sufficiently new.
866 dnl
867   AC_PATH_PROG(GTKMM_CONFIG, gtkmm-config, no)
868   min_gtkmm_version=ifelse([$1], ,0.9.14,$1)
869
870   AC_MSG_CHECKING(for GTK-- - version >= $min_gtkmm_version)
871   no_gtkmm=""
872   if test "$GTKMM_CONFIG" = "no" ; then
873     no_gtkmm=yes
874   else
875     AC_LANG_SAVE
876     AC_LANG_CPLUSPLUS
877
878     GTK___CFLAGS=`$GTKMM_CONFIG $gtkmm_config_args --cflags`
879     GTK___LIBS=`$GTKMM_CONFIG $gtkmm_config_args --libs`
880     gtkmm_config_major_version=`$GTKMM_CONFIG $gtkmm_config_args --version | \
881            sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
882     gtkmm_config_minor_version=`$GTKMM_CONFIG $gtkmm_config_args --version | \
883            sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
884     gtkmm_config_micro_version=`$GTKMM_CONFIG $gtkmm_config_args --version | \
885            sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
886     if test "x$enable_gtkmmtest" = "xyes" ; then
887       ac_save_CXXFLAGS="$CXXFLAGS"
888       ac_save_LIBS="$LIBS"
889       CXXFLAGS="$CXXFLAGS $GTK___CFLAGS"
890       LIBS="$LIBS $GTK___LIBS"
891 dnl
892 dnl Now check if the installed GTK-- is sufficiently new. (Also sanity
893 dnl checks the results of gtkmm-config to some extent
894 dnl
895       rm -f conf.gtkmmtest
896       AC_TRY_RUN([
897 #include <gtk--.h>
898 #include <stdio.h>
899 #include <stdlib.h>
900
901 int 
902 main ()
903 {
904   int major, minor, micro;
905   char *tmp_version;
906
907   system ("touch conf.gtkmmtest");
908
909   /* HP/UX 0 (%@#!) writes to sscanf strings */
910   tmp_version = g_strdup("$min_gtkmm_version");
911   if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
912      printf("%s, bad version string\n", "$min_gtkmm_version");
913      exit(1);
914    }
915
916   if ((gtkmm_major_version != $gtkmm_config_major_version) ||
917       (gtkmm_minor_version != $gtkmm_config_minor_version) ||
918       (gtkmm_micro_version != $gtkmm_config_micro_version))
919     {
920       printf("\n*** 'gtkmm-config --version' returned %d.%d.%d, but GTK-- (%d.%d.%d)\n", 
921              $gtkmm_config_major_version, $gtkmm_config_minor_version, $gtkmm_config_micro_version,
922              gtkmm_major_version, gtkmm_minor_version, gtkmm_micro_version);
923       printf ("*** was found! If gtkmm-config was correct, then it is best\n");
924       printf ("*** to remove the old version of GTK--. You may also be able to fix the error\n");
925       printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n");
926       printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n");
927       printf("*** required on your system.\n");
928       printf("*** If gtkmm-config was wrong, set the environment variable GTKMM_CONFIG\n");
929       printf("*** to point to the correct copy of gtkmm-config, and remove the file config.cache\n");
930       printf("*** before re-running configure\n");
931     } 
932 /* GTK-- does not have the GTKMM_*_VERSION constants */
933 /* 
934   else if ((gtkmm_major_version != GTKMM_MAJOR_VERSION) ||
935            (gtkmm_minor_version != GTKMM_MINOR_VERSION) ||
936            (gtkmm_micro_version != GTKMM_MICRO_VERSION))
937     {
938       printf("*** GTK-- header files (version %d.%d.%d) do not match\n",
939              GTKMM_MAJOR_VERSION, GTKMM_MINOR_VERSION, GTKMM_MICRO_VERSION);
940       printf("*** library (version %d.%d.%d)\n",
941              gtkmm_major_version, gtkmm_minor_version, gtkmm_micro_version);
942     }
943 */
944   else
945     {
946       if ((gtkmm_major_version > major) ||
947         ((gtkmm_major_version == major) && (gtkmm_minor_version > minor)) ||
948         ((gtkmm_major_version == major) && (gtkmm_minor_version == minor) && (gtkmm_micro_version >= micro)))
949       {
950         return 0;
951        }
952      else
953       {
954         printf("\n*** An old version of GTK-- (%d.%d.%d) was found.\n",
955                gtkmm_major_version, gtkmm_minor_version, gtkmm_micro_version);
956         printf("*** You need a version of GTK-- newer than %d.%d.%d. The latest version of\n",
957                major, minor, micro);
958         printf("*** GTK-- is always available from ftp://ftp.gtk.org.\n");
959         printf("***\n");
960         printf("*** If you have already installed a sufficiently new version, this error\n");
961         printf("*** probably means that the wrong copy of the gtkmm-config shell script is\n");
962         printf("*** being found. The easiest way to fix this is to remove the old version\n");
963         printf("*** of GTK--, but you can also set the GTKMM_CONFIG environment to point to the\n");
964         printf("*** correct copy of gtkmm-config. (In this case, you will have to\n");
965         printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n");
966         printf("*** so that the correct libraries are found at run-time))\n");
967       }
968     }
969   return 1;
970 }
971 ],, no_gtkmm=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
972        CXXFLAGS="$ac_save_CXXFLAGS"
973        LIBS="$ac_save_LIBS"
974      fi
975   fi
976   if test "x$no_gtkmm" = x ; then
977      AC_MSG_RESULT(yes)
978      ifelse([$2], , :, [$2])     
979   else
980      AC_MSG_RESULT(no)
981      if test "$GTKMM_CONFIG" = "no" ; then
982        echo "*** The gtkmm-config script installed by GTK-- could not be found"
983        echo "*** If GTK-- was installed in PREFIX, make sure PREFIX/bin is in"
984        echo "*** your path, or set the GTK_CONFIG environment variable to the"
985        echo "*** full path to gtk-config."
986        echo "*** The gtkmm-config script was not available in GTK-- versions"
987        echo "*** prior to 0.9.12. Perhaps you need to update your installed"
988        echo "*** version to 0.9.12 or newer"
989      else
990        if test -f conf.gtkmmtest ; then
991         :
992        else
993           echo "*** Could not run GTK-- test program, checking why..."
994           CXXFLAGS="$CFLAGS $GTKMM_CXXFLAGS"
995           LIBS="$LIBS $GTK___LIBS"
996           AC_TRY_LINK([
997 #include <gtk--.h>
998 #include <stdio.h>
999 ],      [ return ((gtkmm_major_version) || (gtkmm_minor_version) || (gtkmm_micro_version)); ],
1000         [ echo "*** The test program compiled, but did not run. This usually means"
1001           echo "*** that the run-time linker is not finding GTK-- or finding the wrong"
1002           echo "*** version of GTK--. If it is not finding GTK--, you'll need to set your"
1003           echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
1004           echo "*** to the installed location  Also, make sure you have run ldconfig if that"
1005           echo "*** is required on your system"
1006           echo "***"
1007           echo "*** If you have an old version installed, it is best to remove it, although"
1008           echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ],
1009         [ echo "*** The test program failed to compile or link. See the file config.log for the"
1010           echo "*** exact error that occured. This usually means GTK-- was incorrectly installed"
1011           echo "*** or that you have moved GTK-- since it was installed. In the latter case, you"
1012           echo "*** may want to edit the gtkmm-config script: $GTKMM_CONFIG" ])
1013           CXXFLAGS="$ac_save_CXXFLAGS"
1014           LIBS="$ac_save_LIBS"
1015        fi
1016      fi
1017      GTK___CFLAGS=""
1018      GTK__LIBS=""
1019      ifelse([$3], , :, [$3])
1020      AC_LANG_RESTORE
1021   fi
1022   AC_SUBST(GTK___CFLAGS)
1023   AC_SUBST(GTK___LIBS)
1024   rm -f conf.gtkmmtest
1025 ])
1026
1027 # Configure paths for GTK--DRAW
1028 # Derek Quinn Wyatt   98-08-21  (adapted from Jan Nieuwenhuizen's code)
1029
1030 dnl AM_PATH_GTK__DRAW([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
1031 dnl Test for GTK--DRAW, and define GTK___CFLAGS and GTK___LIBS
1032 dnl
1033 AC_DEFUN(AM_PATH_GTK__DRAW,
1034 [dnl 
1035 dnl Get the cflags and libraries from the gtk__-config script
1036 dnl
1037   AC_PATH_PROG(GTKMM_CONFIG, gtkmm-config, no)
1038   min_gtk___version=ifelse([$1], ,0.0.5,$1)
1039   AC_MSG_CHECKING(for GTK--DRAW - version >= $min_gtk___version)
1040   no_gtk__=""
1041   if test "$GTKMM_CONFIG" != "no" ; then
1042     GTK___CFLAGS=`$GTKMM_CONFIG --cflags`
1043     GTK___LIBS=`$GTKMM_CONFIG --libs`
1044     GTK___DLIBS="$GTK___LIBS -lgtkmmdraw"
1045     GTK___LIBS="$GTK___DLIBS"
1046     ac_save_CFLAGS="$CFLAGS"
1047     ac_save_LIBS="$LIBS"
1048     ac_save_CXXFLAGS="$CXXFLAGS"
1049     CFLAGS="$CFLAGS $GTK___CFLAGS"
1050     CXXFLAGS="$CXXFLAGS $GTK___CFLAGS"
1051     LIBS="$LIBS $GTK___LIBS"
1052 dnl
1053 dnl Now check if the installed GTK__ is sufficiently new. (Also sanity
1054 dnl checks the results of gtk__-config to some extent)
1055 dnl
1056     AC_TRY_RUN([
1057 #include <gtk--.h>
1058 #include <stdio.h>
1059
1060 int 
1061 main ()
1062 {
1063   // urg
1064   return 0;
1065 }
1066 ],, no_gtk__=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
1067      CFLAGS="$ac_save_CFLAGS"
1068      CXXFLAGS="$ac_save_CXXFLAGS"
1069      LIBS="$ac_save_LIBS"
1070   else
1071      no_gtk__=yes
1072   fi
1073   if test "x$no_gtk__" = x ; then
1074      AC_MSG_RESULT(yes)
1075      ifelse([$2], , :, [$2])     
1076   else
1077      AC_MSG_RESULT(no)
1078      GTK___CFLAGS=""
1079      GTK___LIBS=""
1080      ifelse([$3], , :, [$3])
1081   fi
1082   CXXFLAGS="$CXXFLAGS $GTK___CFLAGS"
1083   AC_SUBST(CXXFLAGS)
1084   AC_SUBST(GTK___CFLAGS)
1085   AC_SUBST(GTK___LIBS)
1086 ])