]> git.lyx.org Git - lyx.git/blobdiff - lib/configure.m4
get John Spray into the Hall of Fame
[lyx.git] / lib / configure.m4
index f78a23643396044372da9c12226739fee9c7aad1..e1ed8e5f2111fe5b43b4a66555bff3f684ced574 100644 (file)
@@ -167,8 +167,8 @@ ac_prog=[$]0
 changequote(,)dnl
 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
+test "x${srcdir}" = "x$ac_prog" && srcdir=.
+if test ! -r "${srcdir}"/chkconfig.ltx ; then
   echo "configure: error: cannot find chkconfig.ltx script"
   exit 1
 fi
@@ -219,6 +219,19 @@ else
   LATEX=
   ac_result="not useable"
 fi
+# Grab the list of languages avaliable to LaTeX by parsing the LaTeX log file, chklatex.log.
+LANGUAGES=`sed -n '/hyphenation patterns/{
+:loop
+/loaded\.$/!{
+$!{
+N
+s/\n//
+s/^.*for\ //
+tloop
+}
+}
+/loaded\.$/p
+}' chklatex.log`
 rm -f chklatex.ltx chklatex.log])dnl
 dnl
 # Search LaTeX2e
@@ -237,6 +250,25 @@ 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_PROG([for a TGIF viewer and editor], TGIF_EDITOR, tgif)
+TGIF_VIEWER="$TGIF_EDITOR"
+
+SEARCH_PROG([for a FIG viewer and editor], FIG_EDITOR, xfig)
+FIG_VIEWER="$FIG_EDITOR"
+
+SEARCH_PROG([for a GRACE viewer and editor], GRACE_EDITOR, xmgrace)
+GRACE_VIEWER="$GRACE_EDITOR"
+
+SEARCH_PROG([for a FEN viewer and editor], FEN_EDITOR, xboard)
+test "$FEN" = "xboard" && FEN_EDITOR="xboard -lpf \$\$i -mode EditPosition"
+FEN_VIEWER="$FEN_EDITOR"
+
+SEARCH_PROG([for a raster image viewer], RASTERIMAGE_VIEWER, xv kview gimp)
+
+SEARCH_PROG([for a raster image editor], RASTERIMAGE_EDITOR, gimp)
+
+SEARCH_PROG([for a text editor], TEXT_EDITOR, xemacs gvim kedit kwrite kate nedit gedit)
+
 # Search for an installed reLyX or a ready-to-install one
 save_PATH=${PATH}
 PATH=${PATH}:./reLyX/
@@ -263,8 +295,15 @@ test "$word_to_latex_command" = "word2x" && word_to_latex_command="word2x -f lat
 SEARCH_PROG([for Image converter],image_command,convert)
 test $image_command = "convert" && image_command="convert \$\$i \$\$o"
 
+SEARCH_PROG([for an OpenOffice.org -> Latex converter],sxw_to_latex_command,w2l)
+test "$sxw_to_latex_command" = "w2l" && sxw_to_latex_command="w2l -clean \$\$i"
+
+# oolatex is the original name, SuSE has oolatex.sh
+SEARCH_PROG([for an Latex -> OpenOffice.org converter],latex_to_sxw_command,oolatex oolatex.sh)
+test "$latex_to_sxw_command" != "none" && latex_to_sxw_command="$latex_to_sxw_command \$\$i"
+
 # Search something to preview postscript
-SEARCH_PROG([for a Postscript previewer],GHOSTVIEW,gsview32 gv ghostview)
+SEARCH_PROG([for a Postscript previewer],GHOSTVIEW,gsview32 gv ghostview kghostview)
 case $GHOSTVIEW in
   gv|ghostview) PS_VIEWER="$GHOSTVIEW -swap" ;;
   *) PS_VIEWER="$GHOSTVIEW";;
@@ -272,10 +311,10 @@ esac
 EPS_VIEWER=$GHOSTVIEW
 
 # Search for a program to preview pdf
-SEARCH_PROG([for a PDF preview],PDF_VIEWER, acrobat acrord32 gsview32 acroread gv ghostview xpdf)
+SEARCH_PROG([for a PDF preview],PDF_VIEWER, acrobat acrord32 gsview32 acroread gv ghostview xpdf kpdf kghostview)
 
 # Search something to preview dvi
-SEARCH_PROG([for a DVI previewer],DVI_VIEWER, xdvi windvi yap)
+SEARCH_PROG([for a DVI previewer],DVI_VIEWER, xdvi windvi yap kdvi)
 
 # Search something to preview html
 SEARCH_PROG([for a HTML previewer],HTML_VIEWER, "mozilla file://\$\$p\$\$i" netscape)
@@ -292,8 +331,15 @@ test $dvi_to_ps_command = "dvips" && dvi_to_ps_command="dvips -o \$\$o \$\$i"
 SEARCH_PROG([for a DVI to PDF converter],dvi_to_pdf_command,dvipdfm)
 test $dvi_to_pdf_command = "dvipdfm" && dvi_to_pdf_command="dvipdfm \$\$i"
 
-# We have a script to convert previewlyx to ppm
-lyxpreview_to_bitmap_command='$$s/lyxpreview2bitmap.sh'
+# We have a script to convert previewlyx to ppm or to png
+lyxpreview_to_bitmap_command='python $$s/lyxpreview2bitmap.py'
+
+# Search for 'dvipng'. Only enable the conversion from lyxpreview -> png
+# if dvipng is found.
+SEARCH_PROG([for dvipng],DVIPNG,dvipng)
+
+test "$DVIPNG" = "dvipng" && \
+       lyxpreview_to_png_command=$lyxpreview_to_bitmap_command
 
 # Search a *roff program (used to translate tables in ASCII export)
 LYXRC_PROG([for a *roff formatter], \ascii_roff_command, dnl
@@ -405,9 +451,9 @@ if test ${lyx_check_config} = no ; then
 # for some reason. Run ./configure if you need to update it after a
 # configuration change.
 EOF
-  # 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 entries
+  # for the default textclass.lst file
+  for file in ./layouts/*.layout "${srcdir}"/layouts/*.layout ; do
     case $file in
       */\*.layout) ;;
       *) if test -r "$file" ; then
@@ -419,12 +465,12 @@ changequote([,])dnl
              [eval] "found_$cleanclass=yes"
 changequote(,)dnl
             # The sed commands below are a bit scary. Here is what they do:
-            # 1-3: remove the \DeclareFOO macro and add the correct boolean 
-            #      at the end of the line telling whether the class is 
+            # 1-3: remove the \DeclareFOO macro and add the correct boolean
+            #      at the end of the line telling whether the class is
              #      available
-            # 4: if the macro had an optional argument with several 
+            # 4: if the macro had an optional argument with several
             #    parameters, only keep the first one
-            # 5: if the macro did not have an optional argument, provide one 
+            # 5: if the macro did not have an optional argument, provide one
             #    (equal to the class name)
             # 6: remove brackets and replace with correctly quoted entries
             grep '\\Declare\(LaTeX\|DocBook\|LinuxDoc\)Class' "$file" \
@@ -438,31 +484,39 @@ changequote(,)dnl
            fi
         fi ;;
     esac
-  done 
+  done
   MSG_RESULT(done)
 else
   MSG_RESULT(auto)
   rm -f wrap_chkconfig.ltx chkconfig.vars chkconfig.classes chklayouts.tex
+  if ! test -r "chkconfig.ltx" ; then
+    ln -s "${srcdir}"/chkconfig.ltx .
+    rmlink=true
+  fi
   cat >wrap_chkconfig.ltx <<EOF
-\\newcommand\\srcdir{${srcdir}}
 ${linuxdoc_cmd}
 ${docbook_cmd}
-\\input{${srcdir}/chkconfig.ltx}
+\\input{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
+  for file in ./layouts/*.layout "${srcdir}"/layouts/*.layout ; do
     case $file in
       */\*.layout) ;;
-      *) test -r "$file" && echo $file ;;
+      *) if test -r "$file" ; then
+           class=`echo $file | sed -e 's%^.*layouts/\(.*\)\.layout$%\1%'`
+          # Generate the proper TestDocClass command for this layout
+          grep '\\Declare\(LaTeX\|DocBook\|LinuxDoc\)Class' "$file" \
+             | sed -e 's/^\# *\(.*\)$/\\TestDocClass{'${class}'}{\1}/'
+        fi ;;
     esac
-  done | sed -e 's%^.*layouts/\(.*\)\.layout$%\\TestDocClass{\1}%'\
-            > chklayouts.tex
+  done > chklayouts.tex
 changequote([,])dnl
   [eval] ${LATEX} wrap_chkconfig.ltx 2>/dev/null | grep '^\+'
   [eval] `cat chkconfig.vars | sed 's/-/_/g'`
 changequote(,)dnl
+  test -n "${rmlink}" && rm -f chkconfig.ltx
 fi
 
 # Do we have all the files we need? Useful if latex did not run
@@ -482,7 +536,12 @@ changequote(,)dnl
 echo "creating doc/LaTeXConfig.lyx"
 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
+# Add a line to chkconfig.sed so that the placeholder in
+# LaTeXConfig.lyx.in will be replaced by the list of available
+# languages.
+test "${LANGUAGES}" != "" && \
+        echo "s/@chk_languages@/${LANGUAGES}/g" >> chkconfig.sed
+sed -f chkconfig.sed "${srcdir}"/doc/LaTeXConfig.lyx.in >doc/LaTeXConfig.lyx
 
 echo "creating $outfile"
 cat >$outfile <<EOF
@@ -492,113 +551,108 @@ cat >$outfile <<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.
-\\Format asciichess asc "ASCII (chess output)" ""
-\\Format asciiimage asc "ASCII (image)" ""
-\\Format asciixfig  asc "ASCII (xfig output)" ""
-\\Format agr      agr  GRACE           ""
-\\Format bmp      bmp  BMP             ""
-\\Format date     ""    "date command"  ""
-\\Format dateout  "tmp" "date (output)" ""
-\\Format docbook  sgml DocBook         B
-\\Format dvi     dvi   DVI             D
-\\Format eps     eps   EPS             ""
-\\Format fax     ""    Fax             ""
-\\Format fen      fen   FEN             ""
-\\Format fig     fig   XFig            ""
-\\Format gif     gif   GIF             ""
-\\Format html    html  HTML            H
-\\Format jpg     jpg   JPG             ""
-\\Format latex   tex   LaTeX           L
-\\Format linuxdoc sgml LinuxDoc        x
-\\Format lyx      lyx  LyX             ""
-\\Format lyxpreview    lyxpreview      "LyX Preview"           ""
-\\Format literate nw   NoWeb           N
-\\Format pbm     pbm   PBM             ""
-\\Format pdf     pdf  "PDF (ps2pdf)"   P
-\\Format pdf2    pdf  "PDF (pdflatex)" F
-\\Format pdf3    pdf  "PDF (dvipdfm)"  m
-\\Format pdftex   pdftex_t PDFTEX       ""
-\\Format pgm     pgm   PGM             ""
-\\Format png     png   PNG             ""
-\\Format ppm     ppm   PPM             ""
-\\Format program  ""   Program         ""
-\\Format ps      ps    Postscript      t
-\\Format pstex    pstex_t PSTEX         ""
-\\Format text    txt   ASCII           A
-\\Format textparagraph txt ASCII(paragraphs)   ""
-\\Format tgif     obj  TGIF            ""
-\\Format tiff     tif  TIFF            ""
-\\Format word    doc   Word            W
-\\Format xbm     xbm   XBM             ""
-\\Format xpm     xpm   XPM             ""
-
-\\converter date dateout "date +%d-%m-%Y > \$\$o" ""
-\\converter docbook dvi "$docbook_to_dvi_command" ""
-\\converter docbook html "$docbook_to_html_command" ""
-\\converter dvi pdf3 "$dvi_to_pdf_command" ""
-\\converter dvi ps "$dvi_to_ps_command" ""
-\\converter fen asciichess "python \$\$s/fen2ascii.py \$\$i \$\$o" ""
-\\converter fig pdftex "sh \$\$s/fig2pdftex.sh \$\$i \$\$o" ""
-\\converter fig pstex  "sh \$\$s/fig2pstex.sh \$\$i \$\$o" ""
-\\converter html latex "$html_to_latex_command" ""
-\\converter latex html "$latex_to_html_command" "originaldir,needaux"
-\\converter latex dvi "$latex_to_dvi" "latex"
-\\converter latex lyx "$tex_to_lyx_command" ""
-\\converter latex pdf2 "$latex_to_pdf" "latex"
-\\converter linuxdoc dvi "$linuxdoc_to_dvi_command" ""
-\\converter linuxdoc html "$linuxdoc_to_html_command" ""
-\\converter linuxdoc latex "$linuxdoc_to_latex_command" ""
-\\converter linuxdoc lyx "$linuxdoc_to_lyx_command" ""
-\\converter literate latex "$literate_to_tex_command" ""
-\\converter literate lyx "$literate_to_lyx_command" ""
-\\converter lyxpreview ppm "$lyxpreview_to_bitmap_command" ""
-\\converter ps fax "$fax_command" ""
-\\converter ps pdf "$ps_to_pdf_command" ""
-\\converter word latex "$word_to_latex_command" ""
-
-\\viewer dvi "$DVI_VIEWER"
-\\viewer html "$HTML_VIEWER"
-\\viewer pdf "$PDF_VIEWER"
-\\viewer pdf2 "$PDF_VIEWER"
-\\viewer pdf3 "$PDF_VIEWER"
-\\viewer ps "$PS_VIEWER"
-\\viewer eps "$EPS_VIEWER"
-
-$rc_entries
-\\font_encoding "$chk_fontenc"
+\\Format asciichess asc    "ASCII (chess output)"  "" ""       "$TEXT_EDITOR"
+\\Format asciiimage asc    "ASCII (image)"         "" ""       "$TEXT_EDITOR"
+\\Format asciixfig  asc    "ASCII (xfig output)"   "" ""       "$TEXT_EDITOR"
+\\Format agr        agr     GRACE                  "" "$GRACE_VIEWER"  "$GRACE_EDITOR"
+\\Format bmp        bmp     BMP                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format date       ""     "date command"          "" ""       ""
+\\Format dateout    tmp    "date (output)"         "" ""       "$TEXT_EDITOR"
+\\Format docbook    sgml    DocBook                B  ""       "$TEXT_EDITOR"
+\\Format docbook-xml xml   "Docbook (xml)"         "" ""       "$TEXT_EDITOR"
+\\Format dvi        dvi     DVI                    D  "$DVI_VIEWER"    ""
+\\Format eps        eps     EPS                    "" "$EPS_VIEWER"    ""
+\\Format fax        ""      Fax                    "" ""       ""
+\\Format fen        fen     FEN                    "" "$FEN_VIEWER"    "$FEN_EDITOR"
+\\Format fig        fig     XFig                   "" "$FIG_VIEWER"    "$FIG_EDITOR"
+\\Format gif        gif     GIF                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format html       html    HTML                   H  "$HTML_VIEWER"   ""
+\\Format jpg        jpg     JPG                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format latex      tex     LaTeX                  L  ""       "$TEXT_EDITOR"
+\\Format linuxdoc   sgml    LinuxDoc               x  ""       "$TEXT_EDITOR"
+\\Format lyx        lyx     LyX                    "" "lyx"    "lyx"
+\\Format lyxpreview lyxpreview "LyX Preview"       "" ""       ""
+\\Format literate   nw      NoWeb                  N  ""       "$TEXT_EDITOR"
+\\Format pbm        pbm     PBM                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format pdf        pdf    "PDF (ps2pdf)"          P  "$PDF_VIEWER"    ""
+\\Format pdf2       pdf    "PDF (pdflatex)"        F  "$PDF_VIEWER"    ""
+\\Format pdf3       pdf    "PDF (dvipdfm)"         m  "$PDF_VIEWER"    ""
+\\Format pdftex     pdftex_t PDFTEX                "" ""       ""
+\\Format pgm        pgm     PGM                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format png        png     PNG                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format ppm        ppm     PPM                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format program    ""      Program                "" ""       ""
+\\Format ps         ps      Postscript             t  "$PS_VIEWER"     ""
+\\Format pstex      pstex_t PSTEX                  "" ""       ""
+\\Format tgif       obj     TGIF                   "" "$TGIF_VIEWER"   "$TGIF_EDITOR"
+\\Format sxw        sxw    "OpenOffice.Org Writer" O  ""       ""
+\\Format text       txt     ASCII                  A  ""       "$TEXT_EDITOR"
+\\Format textparagraph txt "ASCII (paragraphs)"    "" ""       "$TEXT_EDITOR"
+\\Format tiff       tif     TIFF                   "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format word       doc     Word                   W  ""       ""
+\\Format xbm        xbm     XBM                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+\\Format xpm        xpm     XPM                    "" "$RASTERIMAGE_VIEWER"    "$RASTERIMAGE_EDITOR"
+
+\\converter date       dateout    "date +%d-%m-%Y > \$\$o"     ""
+\\converter docbook    docbook-xml "cp \$\$i \$\$o" "xml"
+\\converter docbook    dvi        "$docbook_to_dvi_command"    ""
+\\converter docbook    html       "$docbook_to_html_command"   ""
+\\converter dvi        pdf3       "$dvi_to_pdf_command"        ""
+\\converter dvi        ps         "$dvi_to_ps_command" ""
+\\converter fen        asciichess "python \$\$s/fen2ascii.py \$\$i \$\$o"      ""
+\\converter fig        pdftex     "sh \$\$s/fig2pdftex.sh \$\$i \$\$o" ""
+\\converter fig        pstex      "sh \$\$s/fig2pstex.sh \$\$i \$\$o"  ""
+\\converter html       latex      "$html_to_latex_command"     ""
+\\converter latex      html       "$latex_to_html_command"     "originaldir,needaux"
+\\converter latex      dvi        "$latex_to_dvi"      "latex"
+\\converter latex      lyx        "$tex_to_lyx_command"        ""
+\\converter latex      pdf2       "$latex_to_pdf"      "latex"
+\\converter latex      sxw        "$latex_to_sxw_command"      "latex"
+\\converter linuxdoc   dvi        "$linuxdoc_to_dvi_command"   ""
+\\converter linuxdoc   html       "$linuxdoc_to_html_command"  ""
+\\converter linuxdoc   latex      "$linuxdoc_to_latex_command" ""
+\\converter linuxdoc   lyx        "$linuxdoc_to_lyx_command"   ""
+\\converter literate   latex      "$literate_to_tex_command"   ""
+\\converter literate   lyx        "$literate_to_lyx_command"   ""
+\\converter lyxpreview png        "$lyxpreview_to_png_command" ""
+\\converter lyxpreview ppm        "$lyxpreview_to_bitmap_command"      ""
+\\converter ps         fax        "$fax_command"       ""
+\\converter ps         pdf        "$ps_to_pdf_command" ""
+\\converter sxw        latex      "$sxw_to_latex_command"      ""
+\\converter word       latex      "$word_to_latex_command"     ""
 EOF
 
 ### the graphic converter part with the predefined ones
-#### Search for tne nonstandard converting progs
+#### Search for the nonstandard converting progs
 #
 SEARCH_PROG([for an FIG -> EPS/PPM converter], FIG2DEV, fig2dev)
 if test "$FIG2DEV" = "fig2dev"; then
 cat >>$outfile <<EOF
-\\converter fig eps "fig2dev -L eps \$\$i \$\$o" ""
-\\converter fig ppm "fig2dev -L ppm \$\$i \$\$o" ""
-\\converter fig png "fig2dev -L png \$\$i \$\$o" ""
+\\converter fig        eps        "fig2dev -L eps \$\$i \$\$o" ""
+\\converter fig        ppm        "fig2dev -L ppm \$\$i \$\$o" ""
+\\converter fig        png        "fig2dev -L png \$\$i \$\$o" ""
 EOF
 fi
 
 SEARCH_PROG([for an TIFF -> PS converter], TIFF2PS, tiff2ps)
 if test "$TIFF2PS" = "tiff2ps"; then
 cat >>$outfile <<EOF
-\\converter tiff eps "tiff2ps \$\$i > \$\$o" ""
+\\converter tiff       eps        "tiff2ps \$\$i > \$\$o" ""
 EOF
 fi
 
 SEARCH_PROG([for an TGIF -> EPS/PPM converter], TGIF, tgif)
 if test "$TGIF" = "tgif"; then
 cat >>$outfile <<EOF
-\\converter tgif eps "tgif -stdout -print -color -eps \$\$i > \$\$o" ""
-\\converter tgif png "tgif -stdout -print -color -xpm \$\$i | xpmtoppm | pnmtopng > \$\$o" ""
+\\converter tgif       eps        "tgif -stdout -print -color -eps \$\$i > \$\$o" ""
+\\converter tgif       pdf        "tgif -stdout -print -color -pdf \$\$i > \$\$o" ""
 EOF
 fi
 
 SEARCH_PROG([for an EPS -> PDF converter], EPSTOPDF, epstopdf)
 if test "$EPSTOPDF" = "epstopdf"; then
 cat >>$outfile <<EOF
-\\converter eps pdf "epstopdf --outfile=\$\$o \$\$i" ""
+\\converter eps        pdf        "epstopdf --outfile=\$\$o \$\$i" ""
 EOF
 fi
 
@@ -606,13 +660,23 @@ fi
 SEARCH_PROG([for a Grace -> Image converter], GRACE, gracebat)
 if test "$GRACE" = "gracebat"; then
 cat >>$outfile <<EOF
-\\converter agr eps "gracebat -hardcopy -printfile \$\$o -hdevice EPS \$\$i 2>/dev/null" ""
-\\converter agr png "gracebat -hardcopy -printfile \$\$o -hdevice PNG \$\$i 2>/dev/null" ""
-\\converter agr jpg "gracebat -hardcopy -printfile \$\$o -hdevice JPEG \$\$i 2>/dev/null" ""
-\\converter agr ppm "gracebat -hardcopy -printfile \$\$o -hdevice PNM \$\$i 2>/dev/null" ""
+\\converter agr        eps        "gracebat -hardcopy -printfile \$\$o -hdevice EPS \$\$i 2>/dev/null" ""
+\\converter agr        png        "gracebat -hardcopy -printfile \$\$o -hdevice PNG \$\$i 2>/dev/null" ""
+\\converter agr        jpg        "gracebat -hardcopy -printfile \$\$o -hdevice JPEG \$\$i 2>/dev/null" ""
+\\converter agr        ppm        "gracebat -hardcopy -printfile \$\$o -hdevice PNM \$\$i 2>/dev/null" ""
 EOF
 fi
 
+cat >>$outfile <<EOF
+
+\\copier    fig        "sh \$\$s/fig_copy.sh \$\$i \$\$o"
+\\copier    pstex      "python \$\$s/tex_copy.py \$\$i \$\$o \$\$l"
+\\copier    pdftex     "python \$\$s/tex_copy.py \$\$i \$\$o \$\$l"
+
+$rc_entries
+\\font_encoding "$chk_fontenc"
+EOF
+
 ######## X FONTS
 # create a fonts.dir file to make X fonts available to LyX
 echo "checking for TeX fonts"
@@ -654,7 +718,7 @@ for file in $outfile textclass.lst packages.lst \
            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 ;
+  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