From: Mojca M. <moj...@gm...> - 2012-09-23 00:42:18
|
On Sun, Sep 23, 2012 at 12:09 AM, sfeam (Ethan Merritt) wrote: > > After fighting with this all day yesterday, I decided to instead > backport the emacs+info related Makefile scripting from 4.7 to 4.6. > Please let me know whether the modified .../docs/Makefile.in > from today's CVS resolves your out-of-source build problems. Thank you very much. The "make" phase seems to work without any problems (including usage of obscure emacs, but only in branch 4.6, not yet in trunk), but the "make install" fails here: Making install in docs ../../original/mkinstalldirs /Users/m/gnuplot/build-original/inst/share/gnuplot/4.6 /opt/local/bin/ginstall -c -m 644 gnuplot.gih /Users/m/gnuplot/build-original/inst/share/gnuplot/4.6/gnuplot.gih make[1]: *** No rule to make target `../../original/docs/gnuplot.texi', needed by `gnuplot.info'. Stop. make: *** [install-recursive] Error 1 I first naively tried adding $(srcdir) in front of gnuplot.texi: --- a/docs/Makefile.in +++ b/docs/Makefile.in @@ -393,7 +393,7 @@ gnuplot.info: $(srcdir)/gnuplot.texi $(MAKEINFO) -I$(srcdir) $(srcdir)/gnuplot.texi --no-split --output=$@ # Thanks to Bruce Ravel for doc2texi.el! -gnuplot.texi $(srcdir)/gnuplot-eldoc.el $(srcdir)/gnuplot-eldoc.elc: $(srcdir)/doc2texi.el $(srcdir)/gnuplot.doc +$(srcdir)/gnuplot.texi $(srcdir)/gnuplot-eldoc.el $(srcdir)/gnuplot-eldoc.elc: $(srcdir)/doc2texi.el $(srcdir)/gnuplot.doc @echo "Creating texinfo and eldoc strings file" @if test "$(EMACS)" != no; then \ @test "$(top_srcdir)" = "$(top_builddir)" || echo "COPYING GNUPLOT.DOC" ; \ which made the "make install" proceed a lot further. In particular, the same chunk proceeded with Making install in docs ../../original/mkinstalldirs /Users/m/gnuplot/build-original/inst/share/gnuplot/4.6 /opt/local/bin/ginstall -c -m 644 gnuplot.gih /Users/m/gnuplot/build-original/inst/share/gnuplot/4.6/gnuplot.gih Creating texinfo and eldoc strings file /bin/sh: @test: command not found COPYING GNUPLOT.DOC /bin/sh: @test: command not found Loading /opt/local/share/emacs/site-lisp/subdirs.el (source)... Inserting help for terminals ... Analyzing doc file ... Converting to texinfo ... Menus, nodes, xrefs ... Loading texinfo... Making texinfo nodes ... (I pasted this portion because I wasn't sure if "@test: command not found" was something to be expected or not.) But then it failed at Updated level "3" menu following node: Bugs ... Making or updating menus in *doc2texi*...done Done...updated all the menus. You may save the buffer. Saving file /Users/m/gnuplot/build-original/docs/gnuplot.texi... Wrote /Users/m/gnuplot/build-original/docs/gnuplot.texi Compiling gnuplot-eldoc.el Loading /opt/local/share/emacs/site-lisp/subdirs.el (source)... Wrote /Users/m/gnuplot/build-original/docs/gnuplot-eldoc.elc /bin/sh /Users/m/gnuplot/original/missing --run makeinfo -I../../original/docs ../../original/docs/gnuplot.texi --no-split --output=gnuplot.info ../../original/docs/gnuplot.texi: No such file or directory make[1]: *** [gnuplot.info] Error 1 make: *** [install-recursive] Error 1 I was able to fix this by replacing $(MAKEINFO) -I$(srcdir) $(srcdir)/gnuplot.texi --no-split --output=$@ with $(MAKEINFO) -I$(srcdir) gnuplot.texi --no-split --output=$@ The problem was that gnuplot.texi was only inside build/docs/, not inside sources. All in all, the following patch solved the problem for me (the first part is commented out and I didn't test anything there): --- a/docs/Makefile.in +++ b/docs/Makefile.in @@ -237,8 +237,8 @@ doc2ms.o: doc2ms.c $(BUILT_SOURCES) html: htmldocs/gnuplot.html # requires makeinfo (GNU texinfo) 4.0 or better -# htmldocs/gnuplot.html: $(srcdir)/gnuplot.texi -# $(MAKEINFO) --html -I$(srcdir) $(srcdir)/gnuplot.texi --no-split --output=$@ +# htmldocs/gnuplot.html: gnuplot.texi +# $(MAKEINFO) --html -I$(srcdir) gnuplot.texi --no-split --output=$@ # requires a working latex2html, which is hard to find these days # htmldocs/gnuplot.html: $(srcdir)/gnuplot.tex @@ -389,8 +389,8 @@ wxhelp/doc2html: wxhelp/doc2html.o termdoc.o xref.o ../src/version.o ### GNU info format info: gnuplot.info -gnuplot.info: $(srcdir)/gnuplot.texi - $(MAKEINFO) -I$(srcdir) $(srcdir)/gnuplot.texi --no-split --output=$@ +gnuplot.info: gnuplot.texi + $(MAKEINFO) -I$(srcdir) gnuplot.texi --no-split --output=$@ # Thanks to Bruce Ravel for doc2texi.el! gnuplot.texi $(srcdir)/gnuplot-eldoc.el $(srcdir)/gnuplot-eldoc.elc: $(srcdir)/doc2texi.el $(srcdir)/gnuplot.doc But the patch might need a second pair of eyes to confirm that it actually makes sense. Mojca PS: gnuplot then crashed during distcheck, but that might be a problem of underlying libraries, and in any case completely unrelated: (process:9196): Pango-CRITICAL **: void pango_fontset_foreach(PangoFontset *, PangoFontsetForeachFunc, gpointer): assertion `PANGO_IS_FONTSET (fontset)' failed (process:9196): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderCoreText', script='common' (process:9196): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed (process:9196): Pango-WARNING **: couldn't load font "frscript Not-Rotated 400", modified variant/weight/stretch as fallback, expect ugly output. (process:9196): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed (process:9196): Pango-ERROR **: Could not load fallback font, bailing out. /bin/sh: line 1: 9196 Trace/BPT trap: 5 PATH=$bdir/../src:$PATH GNUPLOT_DRIVER_DIR=$bdir/../src GNUPLOT_LIB=../../demo gnuplot all.dem < /dev/null make[3]: *** [check-noninteractive] Error 133 make[2]: *** [check-am] Error 2 make[1]: *** [check-recursive] Error 1 make: *** [distcheck] Error 1 |