]> git.lyx.org Git - lyx.git/blobdiff - lib/configure.m4
test for grace converters; check for gnu m4
[lyx.git] / lib / configure.m4
index b8ebadd65b111f0fd39345978efc823291a57570..9fbf2391a765bd55a70af13ff2b8ab5d0b5d405d 100644 (file)
@@ -37,7 +37,7 @@ do
 set dummy $ac_prog ; ac_word=$[2]
 if test -n "$ac_word"; then
   MSG_CHECKING([for \"$ac_word\"],[+])
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x [$ac_dir/$ac_word]; then
@@ -83,7 +83,7 @@ dnl
 dnl PROVIDE_DEFAULT_FILE(FILE, DEFAULT-VALUE)
 dnl
 define(PROVIDE_DEFAULT_FILE,[dnl
-# if $1 does not exist (because LaTeX did not run), 
+# if $1 does not exist (because LaTeX did not run),
 # then provide a standard version.
 if test ! -f $1 ; then
   cat >$1 <<EOF
@@ -107,8 +107,8 @@ for ac_option do
   case "$ac_option" in
     -help | --help | -h)
       cat << EOF
-Usage: configure [options] 
-Options: 
+Usage: configure [options]
+Options:
   --help                   show this help lines
   --keep-temps             keep temporary files (for debug. purposes)
   --without-latex-config   do not run LaTeX to determine configuration
@@ -121,7 +121,7 @@ EOF
       lyx_keep_temps=yes ;;
     --with-lyx-suffix*)
       lyx_suffix=`echo "$ac_option" | sed 's,--with-lyx-suffix=,,;s,^,-,'`
-  esac 
+  esac
 done
 
 
@@ -155,7 +155,7 @@ if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi
 changequote([,])dnl
 ac_prog=[$]0
 changequote(,)dnl
-srcdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` 
+srcdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
 srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
 test "x$srcdir" = "x$ac_prog" && srcdir=.
 if test ! -r ${srcdir}/chkconfig.ltx ; then
@@ -189,7 +189,7 @@ cat >chklatex.ltx <<EOF
 \\@@end
 EOF
 if eval ${LATEX} chklatex.ltx </dev/null 2>/dev/null \
-                       | grep 'ThisIsLaTeX2e' >/dev/null; then
+                      | grep 'ThisIsLaTeX2e' >/dev/null; then
   :
 else
   LATEX=
@@ -355,29 +355,65 @@ esac
 #### Search for image conversion ####
 SEARCH_PROG([for an Image -> EPS converter], TOEPS, convert pnmtops)
 case $TOEPS in
-       convert) bmp_to_eps="convert BMP:\$\$i EPS:\$\$o" fits_to_eps="convert FITS:\$\$i EPS:\$\$o" gif_to_eps="convert GIF:\$\$i EPS:\$\$o" jpg_to_eps="convert JPG:\$\$i EPS:\$\$o" pbm_to_eps="convert PBM:\$\$i EPS:\$\$o" pgm_to_eps="convert PGM:\$\$i EPS:\$\$o" png_to_eps="convert PNG:\$\$i EPS:\$\$o" ppm_to_eps="convert PPM:\$\$i EPS:\$\$o" sgi_to_eps="convert SGI:\$\$i EPS:\$\$o" xbm_to_eps="convert XBM:\$\$i EPS:\$\$o" xwd_to_eps="convert XWD:\$\$i EPS:\$\$o" ;;
-       pnmtops) gif_to_eps="giftopnm \$\$i | pnmtops > \$\$o" png_to_eps="pngtopnm \$\$i | pnmtops >\$\$o" jpg_to_eps="jpegtopnm \$\$i | pnmtops >\$\$o";;
+  convert)
+    bmp_to_eps="convert BMP:\$\$i EPS:\$\$o"
+    fits_to_eps="convert FITS:\$\$i EPS:\$\$o"
+    gif_to_eps="convert GIF:\$\$i EPS:\$\$o"
+    jpg_to_eps="convert JPG:\$\$i EPS:\$\$o"
+    pbm_to_eps="convert PBM:\$\$i EPS:\$\$o"
+    pgm_to_eps="convert PGM:\$\$i EPS:\$\$o"
+    png_to_eps="convert PNG:\$\$i EPS:\$\$o"
+    ppm_to_eps="convert PPM:\$\$i EPS:\$\$o"
+    sgi_to_eps="convert SGI:\$\$i EPS:\$\$o"
+    xbm_to_eps="convert XBM:\$\$i EPS:\$\$o"
+    xwd_to_eps="convert XWD:\$\$i EPS:\$\$o"
+    xpm_to_eps="convert XPM:\$\$i EPS:\$\$o" ;;
+  pnmtops) gif_to_eps="giftopnm \$\$i | pnmtops > \$\$o"
+    png_to_eps="pngtopnm \$\$i | pnmtops >\$\$o"
+    jpg_to_eps="jpegtopnm \$\$i | pnmtops >\$\$o";;
 esac
 
-SEARCH_PROG([for a Image -> PNG converter], TOPNG, convert pnmtopng)
+SEARCH_PROG([for an Image -> PNG converter], TOPNG, convert pnmtopng)
 case $TOPNG in
-       convert) gif_to_png="convert GIF:\$\$i PNG:\$\$o" eps_to_png="convert EPS:\$\$i PNG:\$\$o" jpg_to_png="convert JPG:\$\$i PNG:\$\$o";;
-       pnmtopng) gif_to_png="giftopnm \$\$i | pnmtopng >\$\$o" eps_to_png="pstopnm \$\$i| pnmtopng >\$\$o" jpg_to_png="jpegtopnm \$\$i | pnmtopng >\$\$o";;
+  convert)
+    gif_to_png="convert GIF:\$\$i PNG:\$\$o"
+    eps_to_png="convert EPS:\$\$i PNG:\$\$o"
+    jpg_to_png="convert JPG:\$\$i PNG:\$\$o";;
+  pnmtopng)
+    gif_to_png="giftopnm \$\$i | pnmtopng >\$\$o"
+    eps_to_png="pstopnm \$\$i| pnmtopng >\$\$o"
+    jpg_to_png="jpegtopnm \$\$i | pnmtopng >\$\$o";;
 esac
 
-SEARCH_PROG([for a Image -> XPM converter], TOXPM, convert)
+SEARCH_PROG([for an Image -> XPM converter], TOXPM, convert)
 if test "$TOXPM" = "convert"; then
-       gif_to_xpm="convert GIF:\$\$i XPM:\$\$o"
-       eps_to_xpm="convert EPS:\$\$i XPM:\$\$o" 
-       jpg_to_xpm="convert JPG:\$\$i XPM:\$\$o"
-       png_to_xpm="convert PNG:\$\$i XPM:\$\$o"
-       ps_to_xpm="convert PS:\$\$i XPM:\$\$o" 
-       xbm_to_xpm="convert XBM:\$\$i XPM:\$\$o" 
+  gif_to_xpm="convert GIF:\$\$i XPM:\$\$o"
+  eps_to_xpm="convert EPS:\$\$i XPM:\$\$o"
+  jpg_to_xpm="convert JPG:\$\$i XPM:\$\$o"
+  png_to_xpm="convert PNG:\$\$i XPM:\$\$o"
+  ps_to_xpm="convert PS:\$\$i XPM:\$\$o"
+  xbm_to_xpm="convert XBM:\$\$i XPM:\$\$o"
 fi
 
-SEARCH_PROG([For an EPS -> PDF converter], EPSTOPDF, epstopdf)
+SEARCH_PROG([for an EPS -> PDF converter], EPSTOPDF, epstopdf)
 case $EPSTOPDF in
-       epstopdf) eps_to_pdf="epstopdf --outfile=\$\$o \$\$i";;
+  epstopdf) eps_to_pdf="epstopdf --outfile=\$\$o \$\$i";;
+esac
+
+#### Add Grace conversions (xmgrace needs an Xserver, gracebat doesn't.)
+SEARCH_PROG([for a Grace -> Image converter], GRACE, gracebat)
+case $GRACE in
+ gracebat) 
+  for device in `gracebat -version 2>/dev/null | grep "^Dummy"` ; do
+    case $device in
+      EPS)
+        agr_to_eps="xmgrace -hardcopy -printfile \$\$o -hdevice $device \$\$i";;
+      PDF)
+        agr_to_pdf="xmgrace -hardcopy -printfile \$\$o -hdevice $device \$\$i";;
+      PNG)
+        agr_to_png="xmgrace -hardcopy -printfile \$\$o -hdevice $device \$\$i";;
+    esac
+  done 
 esac
 
 #### Explore the LaTeX configuration
@@ -396,15 +432,15 @@ ${docbook_cmd}
 \\input{${srcdir}/chkconfig.ltx}
 EOF
   ## Construct the list of classes to test for.
-  # build the list of available layout files and convert it to commands 
-  # for chkconfig.ltx 
-  for file in ./layouts/*.layout ${srcdir}/layouts/*.layout ; do 
+  # build the list of available layout files and convert it to commands
+  # for chkconfig.ltx
+  for file in ./layouts/*.layout ${srcdir}/layouts/*.layout ; do
     case $file in
       */\*.layout) ;;
       *) test -r "$file" && echo $file ;;
     esac
   done | sed -e 's%^.*layouts/\(.*\)\.layout$%\\TestDocClass{\1}%'\
-             > chklayouts.tex
+            > chklayouts.tex
 changequote([,])dnl
   [eval] ${LATEX} wrap_chkconfig.ltx 2>/dev/null | grep '^\+'
   [eval] `cat chkconfig.vars | sed 's/-/_/g'`
@@ -413,13 +449,13 @@ fi
 
 # Do we have all the files we need? Useful if latex did not run
 changequote([,])dnl
-echo "creating textclass.lst" 
+echo "creating textclass.lst"
 PROVIDE_DEFAULT_FILE(textclass.lst,dnl
 [# This file declares layouts and their associated definition files
 # (include dir. relative to the place where this file is).
-# It contains only default values, since chkconfig.ltx could not be run 
+# It contains only default values, since chkconfig.ltx could not be run
 # for some reason. Run ./configure if you need to update it after a
-# configuration change.  
+# configuration change.
 article        article article
 report report  report
 book   book    book
@@ -456,11 +492,11 @@ cat >$outfile <<EOF
 \\Format bmp      bmp  BMP             ""
 \\Format dvi     dvi   DVI             D
 \\Format eps     eps   EPS             ""
-\\Format epsi     epsi  EPSI           ""
+\\Format epsi     epsi  EPSI           ""
 \\Format fax     ""    Fax             ""
 \\Format fits     fits FITS            ""
 \\Format gif      gif  GIF             ""
-\\Format grace    agr  GRACE           ""
+\\Format agr      agr  GRACE           ""
 \\Format html    html  HTML            H
 \\Format jpg      jpg  JPEG            ""
 \\Format latex   tex   LaTeX           L
@@ -504,7 +540,6 @@ cat >$outfile <<EOF
 \\converter html latex "$html_to_latex_command" ""
 \\converter word latex "$word_to_latex_command" ""
 
-\\converter agr  eps "xmgrace -hardcopy -hdevice EPS \$\$i" ""
 \\converter bmp  eps "$bmp_to_eps" ""
 \\converter fits  eps "$fits_to_eps" ""
 \\converter gif  eps "$gif_to_eps" ""
@@ -517,6 +552,7 @@ cat >$outfile <<EOF
 \\converter tgif eps "tgif -print -eps \$\$i" ""
 \\converter tiff eps "tiff2ps \$\$i > \$\$o" ""
 \\converter xbm  eps "$xbm_to_eps" ""
+\\converter xpm  eps "$xpm_to_eps" ""
 \\converter xwd  eps "$xwd_to_eps" ""
 
 \\converter tgif xpm "tgif -print -stdout -xpm \$\$i > \$\$o" ""
@@ -535,10 +571,14 @@ cat >$outfile <<EOF
 \\converter png  xpm "$png_to_xpm" ""
 \\converter ps  xpm "$ps_to_xpm" ""
 \\converter xbm  xpm "$xbm_to_xpm" ""
+
 \\converter eps  pdf "$eps_to_pdf" ""
 \\converter epsi pdf "$eps_to_pdf" ""
 
+\\converter agr  eps "$agr_to_eps" ""
+\\converter agr  pdf "$agr_to_pdf" ""
+\\converter agr  png "$agr_to_png" ""
+
 \\viewer dvi "$DVI_VIEWER"
 \\viewer html "$HTML_VIEWER"
 \\viewer pdf "$PDF_VIEWER"
@@ -552,10 +592,12 @@ EOF
 ######## X FONTS
 # create a fonts.dir file to make X fonts available to LyX
 echo "checking for TeX fonts"
+
 fontlist="cmex10 cmmi10 cmr10 cmsy10 eufm10 msam10 msbm10"
 rm -f xfonts/fonts.dir xfonts/fonts.scale xfonts/tmpfonts
 
 num=0
+touch xfonts/tmpfonts
 for font in $fontlist ; do
   MSG_CHECKING([for $font])
   result=no
@@ -581,13 +623,13 @@ rm -f xfonts/tmpfonts
 
 
 # Remove superfluous files if we are not writing in the main lib
-# directory 
+# directory
 for file in $outfile textclass.lst packages.lst \
-            doc/LaTeXConfig.lyx xfonts/fonts.dir ; do
+           doc/LaTeXConfig.lyx xfonts/fonts.dir ; do
   # we rename the file first, so that we avoid comparing a file with itself
   mv $file $file.new
-  if test -r $srcdir/$file && diff $file.new $srcdir/$file >/dev/null 2>/dev/null ; 
-  then 
+  if test -r $srcdir/$file && diff $file.new $srcdir/$file >/dev/null 2>/dev/null ;
+  then
     echo "removing $file, which is identical to the system global version"
     rm -f $file.new
   else