]> git.lyx.org Git - lyx.git/blobdiff - lib/configure
small cleanups, mostly from John
[lyx.git] / lib / configure
index 76c79ec5489c0cd51f243e63047c57eac1007a99..3361f4277640623afee4b7235c8f6fb885bcd7e3 100755 (executable)
@@ -11,6 +11,7 @@
 lyx_check_config=yes
 lyx_keep_temps=no
 srcdir=
+lyx_suffix=
 
 #### Parse the command line
 for ac_option do
@@ -22,12 +23,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,6 +72,12 @@ 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 \
@@ -187,9 +197,9 @@ fi
 # 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,33 +210,72 @@ 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_n "checking for a Noweb -> LaTeX converter""... $ac_c"
 echo "$ac_t""(noweave)"
-LITERATE=
+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.
@@ -237,29 +286,137 @@ 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"
+      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
+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
+      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
 
-test $LITERATE = "noweave" && LITERATE="noweave -delay -index \$\$FName > \$\$OutName"
-LITERATE_EXT="nw"
+test $image_command = "convert" && image_command="convert \$\$i \$\$o"
 
 # Search for a Postscript interpreter
 echo $ac_n "checking for a Postscript interpreter""... $ac_c"
@@ -335,9 +492,9 @@ 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)"
+echo "$ac_t""(acroread gv ghostview xpdf)"
 PDF_VIEWER=
-for ac_prog in xpdf acroread gv ghostview
+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
@@ -371,9 +528,9 @@ fi
 
 # Search something to preview dvi
 echo $ac_n "checking for a DVI previewer""... $ac_c"
-echo "$ac_t""(xdvi)"
+echo "$ac_t""(xdvi windvi yap)"
 DVI_VIEWER=
-for ac_prog in xdvi
+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
@@ -476,7 +633,7 @@ 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 \$\$FName"
+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"
@@ -513,7 +670,44 @@ 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 \$\$OutName \$\$FName"
+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 "$dvi_to_pdf_command"; then
+    ac_result=yes
+  else
+    ac_result=no
+  fi
+  
+  echo "$ac_t""$ac_result"
+  test -n "$dvi_to_pdf_command" && break
+fi
+done
+
+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"
@@ -628,11 +822,12 @@ if test -z "$SPELL" ; then
 fi
 
 
-# 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
@@ -642,36 +837,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"
@@ -716,10 +903,10 @@ fi
 
 case $LINUXDOC in
   sgml2lyx)
-    linuxdoc_to_latex_command="sgml2latex \$\$FName"
-    linuxdoc_to_dvi_command="sgml2latex -o dvi \$\$FName"
-    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"
@@ -770,11 +957,11 @@ fi
 
 case $DOCBOOK in
   sgmltools)
-    docbook_to_dvi_command="sgmltools -b dvi \$\$FName"
-    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 \$\$FName"
-    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";;
@@ -823,8 +1010,7 @@ case $LPR in
    *) :;; # leave to empty values
 esac
 
-# 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
@@ -858,11 +1044,11 @@ if test -z "$TOHTML" ; then
   TOHTML=none
 fi
 
-latex_to_html_command = $TOHTML
+latex_to_html_command=$TOHTML
 case $TOHTML in
-       tth) latex_to_html_command="tth -t -e2 -L\$\$BaseName < \$\$FName > \$\$OutName";;
- latex2html) latex_to_html_command="latex2html -no_subdir -split 0 -show_section_numbers \$\$FName";;
-      hevea) latex_to_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
 
 #### Explore the LaTeX configuration
@@ -948,18 +1134,52 @@ cat >lyxrc.defaults <<EOF
 # 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.
-\\converter tex dvi "$LATEX" ""
-\\converter tex pdf "$PDFLATEX" ""
+\\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 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 word    doc   Word            W
+
+
+\\converter latex dvi "$LATEX \$\$i" "latex"
+\\converter latex pdf2 "$PDFLATEX \$\$i" "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 sgml tex "$linuxdoc_to_latex_command" ""
-\\converter sgml dvi "$linuxdoc_to_dvi_command" ""
-\\converter sgml html "$linuxdoc_to_html_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 tex html "$latex_to_html_command"
-       "originaldir,needaux"
-\\converter $LITERATE_EXT tex "$LITERATE" ""
+
+\\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 "$image_command" ""
+\converter png eps "$image_command" ""
+\converter jpg eps "$image_command" ""
+\converter gif png "$image_command" ""
 
 \\viewer dvi "$DVI_VIEWER"
 \\viewer html "$HTML_VIEWER"
@@ -967,14 +1187,10 @@ cat >lyxrc.defaults <<EOF
 \\viewer ps "$GHOSTVIEW -swap"
 \\viewer eps "$GHOSTVIEW"
 
-\\relyx_command "$RELYX"
-\\linuxdoc_to_lyx_command "$linuxdoc_to_lyx_command"
-\\literate_extension "$LITERATE_EXT"
 \\ps_command "$GS"
 \\ascii_roff_command "$ascii_roff_command"
 \\chktex_command "$chktex_command"
 \\spell_command "$SPELL"
-\\fax_command "$fax_command"
 \\print_spool_command "$print_spool_command"
 \\print_spool_printerprefix "$print_spool_printerprefix"
 \\font_encoding "$chk_fontenc"