]> git.lyx.org Git - lyx.git/blobdiff - lib/configure
Herbert's patch supporting more graphics formats.
[lyx.git] / lib / configure
index 490c41f27d7a9c7023fa178e267dbb6474a3eab4..d8b9b99ce17f7d23d5bcb8775f37de48bb8cddd9 100755 (executable)
@@ -7,10 +7,15 @@
 
 
 
+
+
 ####some configuration variables
+outfile=lyxrc.defaults
+rc_entries=
 lyx_check_config=yes
 lyx_keep_temps=no
 srcdir=
+lyx_suffix=
 
 #### Parse the command line
 for ac_option do
@@ -22,12 +27,15 @@ Options:
   --help                   show this help lines
   --keep-temps             keep temporary files (for debug. purposes)
   --without-latex-config   do not run LaTeX to determine configuration
+  --with-lyx-suffix=suffix suffix of binary installed files
 EOF
       exit 0;;
     --without-latex-config)
       lyx_check_config=no ;;
     --keep-temps)
       lyx_keep_temps=yes ;;
+    --with-lyx-suffix*)
+      lyx_suffix=`echo "$ac_option" | sed 's,--with-lyx-suffix=,,;s,^,-,'`
   esac 
 done
 
@@ -68,10 +76,16 @@ if test ! -r ${srcdir}/chkconfig.ltx ; then
   exit 1
 fi
 
+#### Adjust PATH for Win32 (Cygwin)
+if test "x$OSTYPE" = xcygwin; then
+  echo "configure: cygwin detected; path correction"
+  srcdir=`cygpath -w "${srcdir}" | tr '\\\\' /`
+  echo "srcdir=${srcdir}"
+fi
 
 #### Create the build directories if necessary
-for dir in bind clipart doc examples images kbd layouts reLyX \
-    scripts templates ; do
+for dir in bind clipart doc examples help images kbd layouts reLyX \
+    scripts templates ui ; do
   test ! -d $dir && mkdir $dir
 done
 
@@ -99,10 +113,7 @@ if test -n "$ac_word"; then
 
   if test -n "$LATEX"; then
     ac_result=yes
-  else
-    ac_result=no
-  fi
-  
+    
 ## Check whether this is really LaTeX2e
 rm -f chklatex.ltx
 cat >chklatex.ltx <<EOF
@@ -120,6 +131,9 @@ else
   ac_result="not useable"
 fi
 rm -f chklatex.ltx chklatex.log
+  else
+    ac_result=no
+  fi
   echo "$ac_t""$ac_result"
   test -n "$LATEX" && break
 fi
@@ -130,10 +144,16 @@ if test -z "$LATEX" ; then
     lyx_check_config=no
 fi
 
-if test x$lyx_check_config != x ; then
-echo $ac_n "checking for the pdflatex program""... $ac_c"
+latex_to_dvi=$LATEX
+test -z "$latex_to_dvi" && latex_to_dvi="none"
+
+# Search for pdflatex
+if test ${lyx_check_config} = no ; then
+  latex_to_pdf=none
+else
+  echo $ac_n "checking for the pdflatex program""... $ac_c"
 echo "$ac_t""(pdflatex)"
-PDFLATEX=
+latex_to_pdf=
 for ac_prog in pdflatex
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -144,52 +164,38 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      PDFLATEX="$ac_prog"
+      latex_to_pdf="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$PDFLATEX"; then
+  if test -n "$latex_to_pdf"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
-## Check whether this is really LaTeX2e
-rm -f chklatex.ltx
-cat >chklatex.ltx <<EOF
-\\nonstopmode\\makeatletter
-\\ifx\\undefined\\documentclass\\else
-  \\message{ThisIsLaTeX2e}
-\\fi
-\\@@end
-EOF
-if eval ${LATEX} chklatex.ltx </dev/null 2>/dev/null \
-                       | grep 'ThisIsLaTeX2e' >/dev/null; then
-  :
-else
-  LATEX=
-  ac_result="not useable"
-fi
-rm -f chklatex.ltx chklatex.log
   echo "$ac_t""$ac_result"
-  test -n "$PDFLATEX" && break
+  test -n "$latex_to_pdf" && break
 fi
 done
 
-if test -z "$PDFLATEX" ; then
-  PDFLATEX=none
+if test -z "$latex_to_pdf" ; then
+  latex_to_pdf=none
 fi
 
 fi
 
+test $latex_to_dvi != "none" && latex_to_dvi="$latex_to_dvi \$\$i"
+test $latex_to_pdf != "none" && latex_to_pdf="$latex_to_pdf \$\$i"
+
 # Search for an installed reLyX or a ready-to-install one
 save_PATH=${PATH}
 PATH=${PATH}:./reLyX/
-echo $ac_n "checking for reLyX LaTeX-to-LyX translator""... $ac_c"
+echo $ac_n "checking for a LaTeX -> LyX converter""... $ac_c"
 echo "$ac_t""(reLyX)"
-RELYX=
+tex_to_lyx_command=
 for ac_prog in reLyX
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -200,34 +206,182 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      RELYX="$ac_prog"
+      tex_to_lyx_command="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$RELYX"; then
+  if test -n "$tex_to_lyx_command"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$RELYX" && break
+  test -n "$tex_to_lyx_command" && break
 fi
 done
 
-if test -z "$RELYX" ; then
-  RELYX=none
+if test -z "$tex_to_lyx_command" ; then
+  tex_to_lyx_command=none
 fi
 
 PATH=${save_PATH}
+test $tex_to_lyx_command = "reLyX" && tex_to_lyx_command="reLyX -f \$\$i"
+tex_to_lyx_command=`echo $tex_to_lyx_command | sed "s,reLyX,reLyX$lyx_suffix,"`
+
+echo $ac_n "checking for a Noweb -> LyX converter""... $ac_c"
+echo "$ac_t""(noweb2lyx)"
+literate_to_lyx_command=
+for ac_prog in noweb2lyx
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      literate_to_lyx_command="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$literate_to_lyx_command"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$literate_to_lyx_command" && break
+fi
+done
+
+if test -z "$literate_to_lyx_command" ; then
+  literate_to_lyx_command=none
+fi
+
+test $literate_to_lyx_command = "noweb2lyx" && literate_to_lyx_command="noweb2lyx \$\$i \$\$o"
+literate_to_lyx_command=`echo $literate_to_lyx_command | sed "s,noweb2lyx,noweb2lyx$lyx_suffix,"`
 
 # Search something to process a literate document
-echo $ac_n "checking for a Literate programming processor""... $ac_c"
-echo "$ac_t""("noweave -delay -index")"
-LITERATE=
-for ac_prog in "noweave -delay -index"
+echo $ac_n "checking for a Noweb -> LaTeX converter""... $ac_c"
+echo "$ac_t""(noweave)"
+literate_to_tex_command=
+for ac_prog in noweave
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      literate_to_tex_command="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$literate_to_tex_command"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$literate_to_tex_command" && break
+fi
+done
+
+if test -z "$literate_to_tex_command" ; then
+  literate_to_tex_command=none
+fi
+
+test $literate_to_tex_command = "noweave" && literate_to_tex_command="noweave -delay -index \$\$i > \$\$o"
+
+echo $ac_n "checking for a HTML -> Latex converter""... $ac_c"
+echo "$ac_t""(html2latex)"
+html_to_latex_command=
+for ac_prog in html2latex
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      html_to_latex_command="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$html_to_latex_command"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$html_to_latex_command" && break
+fi
+done
+
+if test -z "$html_to_latex_command" ; then
+  html_to_latex_command=none
+fi
+
+test $html_to_latex_command = "html2latex" && html_to_latex_command="html2latex \$\$i"
+
+echo $ac_n "checking for a MSWord -> Latex converter""... $ac_c"
+echo "$ac_t""(wvCleanLatex word2x)"
+word_to_latex_command=
+for ac_prog in wvCleanLatex word2x
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      word_to_latex_command="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$word_to_latex_command"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$word_to_latex_command" && break
+fi
+done
+
+if test -z "$word_to_latex_command" ; then
+  word_to_latex_command=none
+fi
+
+test "$word_to_latex_command" = "wvCleanLatex" && word_to_latex_command="wvCleanLatex \$\$i \$\$o"
+test "$word_to_latex_command" = "word2x" && word_to_latex_command="word2x -f latex \$\$i"
+
+echo $ac_n "checking for Image converter""... $ac_c"
+echo "$ac_t""(convert)"
+image_command=
+for ac_prog in convert
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog ; ac_word=$2
@@ -237,33 +391,33 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      LITERATE="$ac_prog"
+      image_command="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$LITERATE"; then
+  if test -n "$image_command"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$LITERATE" && break
+  test -n "$image_command" && break
 fi
 done
 
-if test -z "$LITERATE" ; then
-  LITERATE=none
+if test -z "$image_command" ; then
+  image_command=none
 fi
 
-if test "$LITERATE" = "none"; then LITERATE_EXT="none"; else LITERATE_EXT=".nw"; fi
+test $image_command = "convert" && image_command="convert \$\$i \$\$o"
 
 # Search for a Postscript interpreter
 echo $ac_n "checking for a Postscript interpreter""... $ac_c"
 echo "$ac_t""(gs)"
-GS=
+prog=
 for ac_prog in gs
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -274,27 +428,29 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      GS="$ac_prog"
+      prog="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$GS"; then
+  if test -n "$prog"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$GS" && break
+  test -n "$prog" && break
 fi
 done
 
-if test -z "$GS" ; then
-  GS=none
+if test -z "$prog" ; then
+  prog=none
 fi
 
+rc_entries="$rc_entries
+\ps_command \"$prog\""
 
 # Search something to preview postscript
 echo $ac_n "checking for a Postscript previewer""... $ac_c"
@@ -318,10 +474,10 @@ if test -n "$ac_word"; then
 
   if test -n "$GHOSTVIEW"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
   test -n "$GHOSTVIEW" && break
 fi
@@ -334,9 +490,81 @@ fi
 
 # Search for a program to preview pdf
 echo $ac_n "checking for a PDF preview""... $ac_c"
-echo "$ac_t""(xpdf acroread gv ghostview)"
-PDFVIEWER=
-for ac_prog in xpdf acroread gv ghostview
+echo "$ac_t""(acroread gv ghostview xpdf)"
+PDF_VIEWER=
+for ac_prog in acroread gv ghostview xpdf
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      PDF_VIEWER="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$PDF_VIEWER"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$PDF_VIEWER" && break
+fi
+done
+
+if test -z "$PDF_VIEWER" ; then
+  PDF_VIEWER=none
+fi
+
+
+# Search something to preview dvi
+echo $ac_n "checking for a DVI previewer""... $ac_c"
+echo "$ac_t""(xdvi windvi yap)"
+DVI_VIEWER=
+for ac_prog in xdvi windvi yap
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      DVI_VIEWER="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$DVI_VIEWER"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$DVI_VIEWER" && break
+fi
+done
+
+if test -z "$DVI_VIEWER" ; then
+  DVI_VIEWER=none
+fi
+
+
+# Search something to preview html
+echo $ac_n "checking for a HTML previewer""... $ac_c"
+echo "$ac_t""(netscape)"
+HTML_VIEWER=
+for ac_prog in netscape
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog ; ac_word=$2
@@ -346,33 +574,33 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      PDFVIEWER="$ac_prog"
+      HTML_VIEWER="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$PDFVIEWER"; then
+  if test -n "$HTML_VIEWER"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$PDFVIEWER" && break
+  test -n "$HTML_VIEWER" && break
 fi
 done
 
-if test -z "$PDFVIEWER" ; then
-  PDFVIEWER=none
+if test -z "$HTML_VIEWER" ; then
+  HTML_VIEWER=none
 fi
 
 
-# Search for a program to convert pdf to ps
-echo $ac_n "checking for a PDF to PS converter""... $ac_c"
-echo "$ac_t""(pdf2ps pdftops)"
-PDFPS=
-for ac_prog in pdf2ps pdftops
+# Search for a program to convert ps to pdf
+echo $ac_n "checking for a PS to PDF converter""... $ac_c"
+echo "$ac_t""(ps2pdf)"
+ps_to_pdf_command=
+for ac_prog in ps2pdf
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog ; ac_word=$2
@@ -382,32 +610,33 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      PDFPS="$ac_prog"
+      ps_to_pdf_command="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$PDFPS"; then
+  if test -n "$ps_to_pdf_command"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$PDFPS" && break
+  test -n "$ps_to_pdf_command" && break
 fi
 done
 
-if test -z "$PDFPS" ; then
-  PDFPS=none
+if test -z "$ps_to_pdf_command" ; then
+  ps_to_pdf_command=none
 fi
 
+test $ps_to_pdf_command = "ps2pdf" && ps_to_pdf_command="ps2pdf \$\$i"
 
 # Search for a program to convert dvi to ps
 echo $ac_n "checking for a DVI to PS converter""... $ac_c"
 echo "$ac_t""(dvips)"
-DVIPS=
+dvi_to_ps_command=
 for ac_prog in dvips
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -418,33 +647,71 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      DVIPS="$ac_prog"
+      dvi_to_ps_command="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$dvi_to_ps_command"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$dvi_to_ps_command" && break
+fi
+done
+
+if test -z "$dvi_to_ps_command" ; then
+  dvi_to_ps_command=none
+fi
+
+test $dvi_to_ps_command = "dvips" && dvi_to_ps_command="dvips -o \$\$o \$\$i"
+
+# Search for a program to convert dvi to pdf
+echo $ac_n "checking for a DVI to PDF converter""... $ac_c"
+echo "$ac_t""(dvipdfm)"
+dvi_to_pdf_command=
+for ac_prog in dvipdfm
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      dvi_to_pdf_command="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$DVIPS"; then
+  if test -n "$dvi_to_pdf_command"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$DVIPS" && break
+  test -n "$dvi_to_pdf_command" && break
 fi
 done
 
-if test -z "$DVIPS" ; then
-  DVIPS=none
+if test -z "$dvi_to_pdf_command" ; then
+  dvi_to_pdf_command=none
 fi
 
+test $dvi_to_pdf_command = "dvipdfm" && dvi_to_pdf_command="dvipdfm \$\$i"
 
 # Search a *roff program (used to translate tables in ASCII export)
 echo $ac_n "checking for a *roff formatter""... $ac_c"
-echo "$ac_t""(groff nroff)"
-ROFF=
-for ac_prog in groff nroff
+echo "$ac_t""('groff -t -Tlatin1 $$FName' nroff)"
+prog=
+for ac_prog in 'groff -t -Tlatin1 $$FName' nroff
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog ; ac_word=$2
@@ -454,36 +721,35 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      ROFF="$ac_prog"
+      prog="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$ROFF"; then
+  if test -n "$prog"; then
     ac_result=yes
+    test "$prog" = "nroff" && prog='tbl $$FName | nroff'
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$ROFF" && break
+  test -n "$prog" && break
 fi
 done
 
-if test -z "$ROFF" ; then
-  ROFF=none
+if test -z "$prog" ; then
+  prog=none
 fi
 
-ascii_roff_command=$ROFF
-test $ROFF = "groff" && ascii_roff_command="groff -t -Tlatin1 \$\$FName"
-test $ROFF = "nroff" && ascii_roff_command="tbl \$\$FName | nroff"
+rc_entries="$rc_entries
+\ascii_roff_command \"$prog\""
 
 # Search the ChkTeX program
 echo $ac_n "checking for ChkTeX""... $ac_c"
-echo "$ac_t""(chktex)"
-CHKTEX=
-for ac_prog in chktex
+echo "$ac_t""("chktex -n1 -n3 -n6 -n9 -n22 -n25 -n30 -n38")"
+prog=
+for ac_prog in "chktex -n1 -n3 -n6 -n9 -n22 -n25 -n30 -n38"
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog ; ac_word=$2
@@ -493,34 +759,34 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      CHKTEX="$ac_prog"
+      prog="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$CHKTEX"; then
+  if test -n "$prog"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$CHKTEX" && break
+  test -n "$prog" && break
 fi
 done
 
-if test -z "$CHKTEX" ; then
-  CHKTEX=none
+if test -z "$prog" ; then
+  prog=none
 fi
 
-chktex_command=$CHKTEX
-test $CHKTEX = "chktex" && chktex_command="$CHKTEX -n1 -n3 -n6 -n9 -n22 -n25 -n30 -n38"
+rc_entries="$rc_entries
+\chktex_command \"$prog\""
 
 # Search for a spellchecker
 echo $ac_n "checking for a spell-checker""... $ac_c"
 echo "$ac_t""(ispell)"
-SPELL=
+prog=
 for ac_prog in ispell
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -531,33 +797,36 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      SPELL="$ac_prog"
+      prog="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$SPELL"; then
+  if test -n "$prog"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$SPELL" && break
+  test -n "$prog" && break
 fi
 done
 
-if test -z "$SPELL" ; then
-  SPELL=none
+if test -z "$prog" ; then
+  prog=none
 fi
 
+rc_entries="$rc_entries
+\spell_command \"$prog\""
 
-# Search a Fax handling program
-echo $ac_n "checking for a fax driver""... $ac_c"
-echo "$ac_t""(sendfax faxsend fax)"
-FAX=
-for ac_prog in sendfax faxsend fax
+
+# Search a GUI Fax program
+echo $ac_n "checking for a fax program""... $ac_c"
+echo "$ac_t""(ksendfax)"
+fax_command=
+for ac_prog in ksendfax
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog ; ac_word=$2
@@ -567,36 +836,28 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      FAX="$ac_prog"
+      fax_command="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$FAX"; then
+  if test -n "$fax_command"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$FAX" && break
+  test -n "$fax_command" && break
 fi
 done
 
-if test -z "$FAX" ; then
-  FAX=none
+if test -z "$fax_command" ; then
+  fax_command=none
 fi
 
-if test $FAX = sendfax ; then
-  fax_command="sendfax -n -h '\$\$Host' -c '\$\$Comment' -x '\$\$Enterprise' -d '\$\$Name'@'\$\$Phone' '\$\$FName'"
-elif test $FAX = faxsend ; then
-  fax_command="faxsend '\$\$Phone' '\$\$FName'"
-elif test $FAX = fax ; then
-  fax_command="fax send '\$\$Phone' '\$\$FName'"
-else
-  fax_command="none"
-fi
+test $fax_command = "ksendfax" && fax_command="ksendfax \$\$i"
 
 # Search for LinuxDoc support
 echo $ac_n "checking for SGML-tools 1.x (LinuxDoc)""... $ac_c"
@@ -620,10 +881,10 @@ if test -n "$ac_word"; then
 
   if test -n "$LINUXDOC"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
   test -n "$LINUXDOC" && break
 fi
@@ -641,11 +902,13 @@ fi
 
 case $LINUXDOC in
   sgml2lyx)
-    linuxdoc_to_latex_command="sgml2latex"
-    linuxdoc_to_html_command="sgml2html '\$\$FName'"
-    linuxdoc_to_lyx_command="sgml2lyx";;
+    linuxdoc_to_latex_command="sgml2latex \$\$i"
+    linuxdoc_to_dvi_command="sgml2latex -o dvi \$\$i"
+    linuxdoc_to_html_command="sgml2html \$\$i"
+    linuxdoc_to_lyx_command="sgml2lyx \$\$i";;
   none)
     linuxdoc_to_latex_command="none"
+    linuxdoc_to_dvi_command="none"
     linuxdoc_to_html_command="none"
     linuxdoc_to_lyx_command="none";;
 esac
@@ -672,10 +935,10 @@ if test -n "$ac_word"; then
 
   if test -n "$DOCBOOK"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
   test -n "$DOCBOOK" && break
 fi
@@ -693,11 +956,11 @@ fi
 
 case $DOCBOOK in
   sgmltools)
-    docbook_to_dvi_command="sgmltools -b dvi"
-    docbook_to_html_command="sgmltools -b html '\$\$FName'";;
+    docbook_to_dvi_command="sgmltools -b dvi \$\$i"
+    docbook_to_html_command="sgmltools -b html \$\$i";;
   db2dvi)
-    docbook_to_dvi_command="db2dvi"
-    docbook_to_html_command="db2html '\$\$FName'";;
+    docbook_to_dvi_command="db2dvi \$\$i"
+    docbook_to_html_command="db2html \$\$i";;
   none)
     docbook_to_dvi_command="none"
     docbook_to_html_command="none";;
@@ -706,7 +969,7 @@ esac
 # Search for a spool command
 echo $ac_n "checking for a spool command""... $ac_c"
 echo "$ac_t""(lp lpr)"
-LPR=
+prog=
 for ac_prog in lp lpr
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -717,37 +980,38 @@ if test -n "$ac_word"; then
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -x $ac_dir/$ac_word; then
-      LPR="$ac_prog"
+      prog="$ac_prog"
       break
     fi
   done
   IFS="$ac_save_ifs"
 
-  if test -n "$LPR"; then
+  if test -n "$prog"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
-  test -n "$LPR" && break
+  test -n "$prog" && break
 fi
 done
 
-if test -z "$LPR" ; then
-  LPR=none
+if test -z "$prog" ; then
+  prog=none
 fi
 
-case $LPR in
-  lp) print_spool_command=lp
-      print_spool_printerprefix="-d ";;
- lpr) print_spool_command=lpr
     print_spool_printerprefix="-P";;
+rc_entries="$rc_entries
+\print_spool_command \"$prog\""
+case $prog in
+  lp) print_spool_printerprefix="-d ";;
lpr) print_spool_printerprefix="-P";;
    *) :;; # leave to empty values
 esac
+rc_entries="$rc_entries
+\print_spool_printerprefix \"$print_spool_printerprefix\""
 
-# Search for a latex to html converter
-echo $ac_n "checking for an HTML converter""... $ac_c"
+echo $ac_n "checking for a LaTeX -> HTML converter""... $ac_c"
 echo "$ac_t""(tth latex2html hevea)"
 TOHTML=
 for ac_prog in tth latex2html hevea
@@ -768,10 +1032,10 @@ if test -n "$ac_word"; then
 
   if test -n "$TOHTML"; then
     ac_result=yes
+    
   else
     ac_result=no
   fi
-  
   echo "$ac_t""$ac_result"
   test -n "$TOHTML" && break
 fi
@@ -781,10 +1045,170 @@ if test -z "$TOHTML" ; then
   TOHTML=none
 fi
 
+latex_to_html_command=$TOHTML
 case $TOHTML in
-       tth) html_command="tth -t < '\$\$FName' > '\$\$OutName'";;
- latex2html) html_command="latex2html -no_subdir -split 0 -show_section_numbers '\$\$FName'";;
-      hevea) html_command="hevea -s '\$\$FName'";;
+       tth) latex_to_html_command="tth -t -e2 -L\$\$b < \$\$i > \$\$o";;
+ latex2html) latex_to_html_command="latex2html -no_subdir -split 0 -show_section_numbers \$\$i";;
+      hevea) latex_to_html_command="hevea -s \$\$i";;
+esac
+
+#### Search for image conversion ####
+echo $ac_n "checking for an Image -> EPS converter""... $ac_c"
+echo "$ac_t""(convert pnmtops)"
+TOEPS=
+for ac_prog in convert pnmtops
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      TOEPS="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$TOEPS"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$TOEPS" && break
+fi
+done
+
+if test -z "$TOEPS" ; then
+  TOEPS=none
+fi
+
+case $TOEPS in
+       convert) gif_to_eps="convert GIF:\$\$i EPS:\$\$o" png_to_eps="convert PNG:\$\$i EPS:\$\$o" jpg_to_eps="convert JPG:\$\$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
+
+echo $ac_n "checking for a Image -> PNG converter""... $ac_c"
+echo "$ac_t""(convert pnmtopng)"
+TOPNG=
+for ac_prog in convert pnmtopng
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      TOPNG="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$TOPNG"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$TOPNG" && break
+fi
+done
+
+if test -z "$TOPNG" ; then
+  TOPNG=none
+fi
+
+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";;
+esac
+
+echo $ac_n "checking for a Image -> XPM converter""... $ac_c"
+echo "$ac_t""(convert)"
+TOXPM=
+for ac_prog in convert
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      TOXPM="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$TOXPM"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$TOXPM" && break
+fi
+done
+
+if test -z "$TOXPM" ; then
+  TOXPM=none
+fi
+
+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" 
+fi
+
+echo $ac_n "checking For an EPS -> PDF converter""... $ac_c"
+echo "$ac_t""(epstopdf)"
+EPSTOPDF=
+for ac_prog in epstopdf
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog ; ac_word=$2
+if test -n "$ac_word"; then
+  echo $ac_n "+checking for \"$ac_word\"""... $ac_c"
+  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
+      EPSTOPDF="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+
+  if test -n "$EPSTOPDF"; then
+    ac_result=yes
+    
+  else
+    ac_result=no
+  fi
+  echo "$ac_t""$ac_result"
+  test -n "$EPSTOPDF" && break
+fi
+done
+
+if test -z "$EPSTOPDF" ; then
+  EPSTOPDF=none
+fi
+
+case $EPSTOPDF in
+       epstopdf) eps_to_pdf="epstopdf --outfile=\$\$o \$\$i";;
 esac
 
 #### Explore the LaTeX configuration
@@ -861,44 +1285,88 @@ echo "s/@chk_linuxdoc@/$chk_linuxdoc/g" >> chkconfig.sed
 echo "s/@chk_docbook@/$chk_docbook/g" >> chkconfig.sed
 sed -f chkconfig.sed ${srcdir}/doc/LaTeXConfig.lyx.in >doc/LaTeXConfig.lyx
 
-echo creating lyxrc.defaults
-rm -f lyxrc.defaults
-cat >lyxrc.defaults <<EOF
+echo creating $outfile
+cat >$outfile <<EOF
 # This file has been automatically generated by LyX' lib/configure
 # script. It contains default settings that have been determined by
 # examining your system. PLEASE DO NOT MODIFY ANYTHING HERE! If you
 # want to customize LyX, make a copy of the file LYXDIR/lyxrc as
 # ~/.lyx/lyxrc and edit this file instead. Any setting in lyxrc will
 # override the values given here.
-\\latex_command "$LATEX"
-\\pdflatex_command "$PDFLATEX"
-\\view_pdf_command "$PDFVIEWER"
-\\pdf_to_ps_command "$PDFPS"
-\\dvi_to_ps_command "$DVIPS"
-\\relyx_command "$RELYX"
-\\literate_command "$LITERATE"
-\\literate_extension "$LITERATE_EXT"
-\\ps_command "$GS"
-\\view_ps_command "$GHOSTVIEW -swap"
-\\view_pspic_command "$GHOSTVIEW"
-\\ascii_roff_command "$ascii_roff_command"
-\\chktex_command "$chktex_command"
-\\spell_command "$SPELL"
-\\fax_command "$fax_command"
-\\linuxdoc_to_latex_command "$linuxdoc_to_latex_command"
-\\linuxdoc_to_html_command "$linuxdoc_to_html_command"
-\\linuxdoc_to_lyx_command "$linuxdoc_to_lyx_command"
-\\docbook_to_dvi_command "$docbook_to_dvi_command"
-\\docbook_to_html_command "$docbook_to_html_command"
-\\html_command "$html_command"
-\\print_spool_command "$print_spool_command"
-\\print_spool_printerprefix "$print_spool_printerprefix"
+\\Format text    txt   ASCII           A
+\\Format textparagraph txt ASCII(paragraphs)   ""
+\\Format docbook  sgml DocBook         B
+\\Format dvi     dvi   DVI             D
+\\Format eps     eps   EPS             ""
+\\Format epsi     epsi  EPSI    ""
+\\Format fax     ""    Fax             ""
+\\Format gif      gif  GIF             ""
+\\Format html    html  HTML            H
+\\Format jpg      jpg  JPEG            ""
+\\Format latex   tex   LaTeX           L
+\\Format linuxdoc sgml LinuxDoc        x
+\\Format lyx      lyx  LyX             ""
+\\Format literate nw   NoWeb           N
+\\Format pdf     pdf   PDF             P
+\\Format pdf2    pdf  "PDF (pdflatex)" F
+\\Format pdf3    pdf  "PDF (dvipdfm)"  m
+\\Format png     png   PNG             ""
+\\Format ps      ps    Postscript      t
+\\Format program  ""   Program         ""
+\\Format xpm      xpm   XPM             ""
+\\Format word    doc   Word            W
+
+\\converter latex dvi "$latex_to_dvi" "latex"
+\\converter latex pdf2 "$latex_to_pdf" "latex"
+\\converter latex html "$latex_to_html_command" "originaldir,needaux"
+\\converter literate latex "$literate_to_tex_command" ""
+\\converter dvi pdf3 "$dvi_to_pdf_command" ""
+\\converter dvi ps "$dvi_to_ps_command" ""
+\\converter ps pdf "$ps_to_pdf_command" ""
+\\converter ps fax "$fax_command" ""
+\\converter linuxdoc lyx "$linuxdoc_to_lyx_command" ""
+\\converter linuxdoc latex "$linuxdoc_to_latex_command" ""
+\\converter linuxdoc dvi "$linuxdoc_to_dvi_command" ""
+\\converter linuxdoc html "$linuxdoc_to_html_command" ""
+\\converter docbook dvi "$docbook_to_dvi_command" ""
+\\converter docbook html "$docbook_to_html_command" ""
+
+\\converter latex lyx "$tex_to_lyx_command" ""
+\\converter literate lyx "$literate_to_lyx_command" ""
+\\converter html latex "$html_to_latex_command" ""
+\\converter word latex "$word_to_latex_command" ""
+
+\\converter gif  eps "$gif_to_eps" ""
+\\converter png  eps "$png_to_eps" ""
+\\converter jpg  eps "$jpg_to_eps" ""
+
+\\converter gif  png "$gif_to_png" ""
+\\converter eps  png "$eps_to_png" ""
+\\converter epsi png "$eps_to_png" ""
+\\converter jpg  png "$jpg_to_png" ""
+
+\\converter gif  xpm "$gif_to_xpm" ""
+\\converter eps  xpm "$eps_to_xpm" ""
+\\converter epsi xpm "$eps_to_xpm" ""
+\\converter jpg  xpm "$jpg_to_xpm" ""
+\\converter png  xpm "$png_to_xpm" ""
+\\converter eps  pdf "$eps_to_pdf" ""
+\\converter epsi pdf "$eps_to_pdf" ""
+
+\\viewer dvi "$DVI_VIEWER"
+\\viewer html "$HTML_VIEWER"
+\\viewer pdf "$PDF_VIEWER"
+\\viewer ps "$GHOSTVIEW -swap"
+\\viewer eps "$GHOSTVIEW"
+
+$rc_entries
 \\font_encoding "$chk_fontenc"
 EOF
 
 # Remove superfluous files if we are not writing in the main lib
 # directory 
-for file in lyxrc.defaults textclass.lst packages.lst \
+for file in $outfile textclass.lst packages.lst \
             doc/LaTeXConfig.lyx ; do
   # we rename the file first, so that we avoid comparing a file with itself
   mv $file $file.new