#### Adjust PATH for Win32 (Cygwin)
case `uname -s` in
CYGWIN*)
- echo "configure: cygwin detected; path correction"
- srcdir=`cygpath -w "${srcdir}" | tr '\\\\' /`
- echo "srcdir=${srcdir}" ;;
+ tmpfname="/tmp/x$$.ltx";
+ echo "\\documentstyle{article}" > $tmpfname
+ echo "\\begin{document}\\end{document}" >> $tmpfname
+ inpname=`cygpath -w $tmpfname | tr '\\\\' /`
+ echo "\\input{$inpname}" > wrap_temp$$.ltx
+ check_err=`latex wrap_temp$$.ltx 2>&1 < /dev/null | grep Error`
+ rm -f wrap_temp$$.* /tmp/x$$.*
+ if [ x"$check_err" = "x" ]
+ then
+ echo "configure: cygwin detected; path correction"
+ srcdir=`cygpath -w "${srcdir}" | tr '\\\\' /`
+ echo "srcdir=${srcdir}"
+ else
+ echo "configure: cygwin detected; path correction is not needed"
+ fi
+ ;;
esac
#### Create the build directories if necessary
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 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 for an installed reLyX or a ready-to-install one
save_PATH=${PATH}
PATH=${PATH}:./reLyX/
SEARCH_PROG([for Image converter],image_command,convert)
test $image_command = "convert" && image_command="convert \$\$i \$\$o"
-# Search for a Postscript interpreter
-LYXRC_PROG([for a Postscript interpreter], \ps_command, gs)
-
# Search something to preview postscript
-SEARCH_PROG([for a Postscript previewer],GHOSTVIEW,gv ghostview)
+SEARCH_PROG([for a Postscript previewer],GHOSTVIEW,gsview32 gv ghostview)
+case $GHOSTVIEW in
+ gv|ghostview) PS_VIEWER="$GHOSTVIEW -swap" ;;
+ *) PS_VIEWER="$GHOSTVIEW";;
+esac
+EPS_VIEWER=$GHOSTVIEW
# Search for a program to preview pdf
-SEARCH_PROG([for a PDF preview],PDF_VIEWER,acroread gv ghostview xpdf)
+SEARCH_PROG([for a PDF preview],PDF_VIEWER, acrobat acrord32 gsview32 acroread gv ghostview xpdf)
# Search something to preview dvi
SEARCH_PROG([for a DVI previewer],DVI_VIEWER, xdvi windvi yap)
# Search for LinuxDoc support
SEARCH_PROG([for SGML-tools 1.x (LinuxDoc)], LINUXDOC, sgml2lyx)
-chk_linuxdoc=no
if test $LINUXDOC != none; then
chk_linuxdoc=yes
+ bool_linuxdoc=true
linuxdoc_cmd="\\def\\haslinuxdoc{yes}"
+else
+ chk_linuxdoc=no
+ bool_linuxdoc=false
fi
case $LINUXDOC in
# Search for DocBook support
SEARCH_PROG([for SGML-tools 2.x (DocBook) or db2x scripts], DOCBOOK, sgmltools db2dvi)
-chk_docbook=no
if test $DOCBOOK != none; then
chk_docbook=yes
+ bool_docbook=true
docbook_cmd="\\def\\hasdocbook{yes}"
+else
+ chk_docbook=no
+ bool_docbook=false
fi
case $DOCBOOK in
rm -f textclass.lst packages.lst chkconfig.sed
if test ${lyx_check_config} = no ; then
MSG_RESULT(default values)
+ MSG_CHECKING(list of textclasses,+)
+ cat >textclass.lst <<EOF
+# 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
+# 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
+ case $file in
+ */\*.layout) ;;
+ *) if test -r "$file" ; then
+ class=`echo $file | sed -e 's%^.*layouts/\(.*\)\.layout$%\1%'`
+ cleanclass=`echo $class | tr ' -' '__'`
+changequote([,])dnl
+ # make sure the same class is not considered twice
+ if test x`[eval] echo $ac_n '${found_'$cleanclass'}'` = x ; then
+ [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
+ # available
+ # 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
+ # (equal to the class name)
+ # 6: remove brackets and replace with correctly quoted entries
+ grep '\\Declare\(LaTeX\|DocBook\|LinuxDoc\)Class' "$file" \
+ | sed -e 's/^.*\DeclareLaTeXClass *\(.*\)/\1 "false"/' \
+ -e 's/^.*\DeclareDocBookClass *\(.*\)/\1 "'$bool_docbook'"/' \
+ -e 's/^.*\DeclareLinuxDocClass *\(.*\)/\1 "'$bool_linuxdoc'"/' \
+ -e 's/\[\([^,]*\),[^]]*\]/[\1]/' \
+ -e 's/^{/['$class']{/' \
+ -e 's/\[\([^]]*\)\] *{\([^}]*\)}/"'$class'" "\1" "\2"/' \
+ >>textclass.lst
+ fi
+ fi ;;
+ esac
+ done
+ MSG_RESULT(done)
else
MSG_RESULT(auto)
rm -f wrap_chkconfig.ltx chkconfig.vars chkconfig.classes chklayouts.tex
# Do we have all the files we need? Useful if latex did not run
changequote([,])dnl
-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
-# for some reason. Run ./configure if you need to update it after a
-# configuration change.
-article article article
-report report report
-book book book
-linuxdoc linuxdoc linuxdoc
-letter letter letter])
PROVIDE_DEFAULT_FILE(chkconfig.sed,[s/@.*@/???/g])
# 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 "$GHOSTVIEW -swap"
-\\viewer eps "$GHOSTVIEW"
-
-$rc_entries
-\\font_encoding "$chk_fontenc"
+\\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 "" "$RASTERIMAGE_VIEWER" "$RASTERIMAGE_EDITOR"
+\\Format date "" "date command" "" "" ""
+\\Format dateout tmp "date (output)" "" "" ""
+\\Format docbook sgml DocBook B "" ""
+\\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 "" ""
+\\Format linuxdoc sgml LinuxDoc x "" ""
+\\Format lyx lyx LyX "" "" ""
+\\Format lyxpreview lyxpreview "LyX Preview" "" "" ""
+\\Format literate nw NoWeb N "" ""
+\\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 text txt ASCII A "" ""
+\\Format textparagraph txt "ASCII (paragraphs)" "" "" ""
+\\Format tgif obj TGIF "" "$TGIF_VIEWER" "$TGIF_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 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" ""
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
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
+
+$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"
num=0
touch xfonts/tmpfonts
for font in $fontlist ; do
- MSG_CHECKING([for $font])
+ MSG_CHECKING(for $font,+)
result=no
for ext in pfb pfa ttf ; do
if filepath=`kpsewhich $font.$ext` ; then
echo $num >xfonts/fonts.scale
cat xfonts/tmpfonts >>xfonts/fonts.scale
cp xfonts/fonts.scale xfonts/fonts.dir
+ # create a resource list file for Display Postscript
+ (cd xfonts ; rm -f PSres.upr ; makepsres) 2>/dev/null || true
fi
rm -f xfonts/tmpfonts