This patch should improve the build process for the Info file and
Emacs ElDoc documentation in several ways:
- eliminate hacky code for guessing which terminal files to include in
doc2texi.el. Instead, be consistent with other documentation formats
by using the same C code as the other formats for this step.
- to do this, the input for doc2texi.el is supplied by compiling
"docs/termdoc.c" into a standalone program, "doc2dump", using the
-DTEST_TERMDOC flag. The Makefile then runs "doc2dump <gnuplot.doc
>gnuplot.dump" before running doc2texi.el. It seemed unnecessary to
write a separate trivial C program to do the job when this one
already exists. I had to change one #if directive in docs/docx.h to
make it compile correctly.
- gnuplot-mode counts on having the "gnuplot.info" file installed (and
will benefit from having "gnuplot-eldoc.el" installed, in the next
version). I think this implies that, if Gnuplot is configured
without the "--without-lisp-files" option, "make" and "make install"
should build and install these files by default. So this patch
alters docs/Makefile.am to do so. If gnuplot is configured with
"--without-lisp-files", neither info nor eldoc strings will be
compiled (since the info-building process requires Emacs to run).
- restore compatibility with old XEmacs versions in doc2texi
I tested that this patch works on Mac OS X using XEmacs 21, GNU Emacs
22, GNU Emacs 24, and without any emacs (./configure
--without-lisp-files).
cvs diff -u
I see that there was another patch proposed on the mailing list for
this same section of the Makefile, in order to get out-of-tree builds
to work properly:
https://sourceforge.net/mailarchive/message.php?msg_id=29877433
I will try that out and see if I can incorporate the fix.
Also, should gnuplot-eldoc.el and gnuplot.info be added to the list of
built files to include in `make dist'?
I think, or at least I had hoped, that the out-of-tree build problem had alraedy been fixed. If not, then yeah - please have a look at it.
I did not know that gnuplot-mode had anything to do with info, let alone a hard dependency. That's bad. I was hoping we could quietly drop info and no one would notice ;-) Anyhow, I don't like the idea of having to build and package gnuplot.info. Is there a way to remove that dependency from the emacs stuff?