Discussion:
automake help
Daniel J Sebald
2017-05-22 23:37:30 UTC
Permalink
Current cvs for 5.1 and 5.2 has an odd automake glitch that
I do not understand.
"make" run on linux creates a file
docs/windows/doc2wxhtml-doc2html.o
that surely isn't needed.
"make dist" includes that file in the generated tarball.
Other *.o files are discarded when packing up the files
for distribution. Why not this one?
Why does it even exist in the first place?
ChangeLog has some entries:

ChangeLog: in turn is triggered by docs/doc2wxhtml requring src/version.c.
ChangeLog: * docs/Makefile.am (doc2wxhtml_SOURCES): Remove use of version.c.
ChangeLog: * docs/Makefile.am (noinst_PROGRAMS): Add doc2wxhtml.
ChangeLog: (doc2wxhtml_SOURCES, doc2wxhtml_CPPFLAGS): Use automake to build

This entry seems related:

2016-01-16 Hans-Bernhard Broeker <***@physik.rwth-aachen.de>

Dan
Allin Cottrell
2017-05-23 00:06:18 UTC
Permalink
Current cvs for 5.1 and 5.2 has an odd automake glitch that
I do not understand.
"make" run on linux creates a file
docs/windows/doc2wxhtml-doc2html.o
that surely isn't needed.
"make dist" includes that file in the generated tarball.
Other *.o files are discarded when packing up the files
for distribution. Why not this one?
Why does it even exist in the first place?
In docs/Makefile.am, the EXTRA_DIST variable includes "windows". Not
sure, but I guess that would drag in anything that gets created in
the windows directory? (Unless one builds out of tree, which is
generally a good idea anyway.)

In docs/Makefile.in we have references to this thing
windows/doc2wxhtml-doc2html.o. That's the only object file to be
written into the docs/windows directory, all the others just go into
docs. That itself seems like an anomaly.

"Not needed": well, it's "needed" to build the program doc2wxhtml,
which is apparently not being marked as platform-specific. Is that
wanted in connection with the wxt terminal at all?

Allin Cottrell
sfeam
2017-05-23 04:23:15 UTC
Permalink
Post by Allin Cottrell
Current cvs for 5.1 and 5.2 has an odd automake glitch that
I do not understand.
"make" run on linux creates a file
docs/windows/doc2wxhtml-doc2html.o
that surely isn't needed.
"make dist" includes that file in the generated tarball.
Other *.o files are discarded when packing up the files
for distribution. Why not this one?
Why does it even exist in the first place?
In docs/Makefile.am, the EXTRA_DIST variable includes "windows". Not
sure, but I guess that would drag in anything that gets created in
the windows directory?
Correct.
Post by Allin Cottrell
(Unless one builds out of tree, which is
generally a good idea anyway.)
The same thing happens for an out of tree build.
Post by Allin Cottrell
In docs/Makefile.in we have references to this thing
windows/doc2wxhtml-doc2html.o. That's the only object file to be
written into the docs/windows directory, all the others just go into
docs. That itself seems like an anomaly.
I agree.
Post by Allin Cottrell
"Not needed": well, it's "needed" to build the program doc2wxhtml,
which is apparently not being marked as platform-specific. Is that
wanted in connection with the wxt terminal at all?
Not that I can see. The program source windows/doc2html.c
contains the comment
/*
* doc2html.c -- program to convert Gnuplot .DOC format to MS Windows
* HTML help (.html) format.

So I think it is only needed for windows. By the way, when I run the program
it only processes Part I of the documentation. Parts 2-5 are ignored.
So the program may have bugs separate from this build problem.

Ethan
Post by Allin Cottrell
Allin Cottrell
Bastian Märkisch
2017-05-23 08:05:16 UTC
Permalink
wxWidgets can use a help format (htb), which is actually similar to what is
used for chm files on Windows.
The idea was to use that as online help on non-Windows platforms eventually.
In fact, Dan Sebald worked on that:
https://sourceforge.net/p/gnuplot/patches/707/
(but as is this patch breaks the original use on Windows)

So in short, doc2html works as intended on Windows (all sections), but as of
now the doc2wxhtml variant is not in use.

The Makefile code changed, but the original commit was (Changelog.3):

2011-03-07 Bastian Maerkisch <***@web.de>

* docs/Makefile.in: add new target 'htb' to create help file
compatible with wxWidgets help viewer
-----Ursprüngliche Nachricht-----
Gesendet: Dienstag, 23. Mai 2017 06:23
Betreff: Re: automake help
Post by Allin Cottrell
Current cvs for 5.1 and 5.2 has an odd automake glitch that I do not
understand.
"make" run on linux creates a file
docs/windows/doc2wxhtml-doc2html.o
that surely isn't needed.
"make dist" includes that file in the generated tarball.
Other *.o files are discarded when packing up the files for
distribution. Why not this one?
Why does it even exist in the first place?
In docs/Makefile.am, the EXTRA_DIST variable includes "windows". Not
sure, but I guess that would drag in anything that gets created in the
windows directory?
Correct.
Post by Allin Cottrell
(Unless one builds out of tree, which is generally a good idea
anyway.)
The same thing happens for an out of tree build.
Post by Allin Cottrell
In docs/Makefile.in we have references to this thing
windows/doc2wxhtml-doc2html.o. That's the only object file to be
written into the docs/windows directory, all the others just go into
docs. That itself seems like an anomaly.
I agree.
Post by Allin Cottrell
"Not needed": well, it's "needed" to build the program doc2wxhtml,
which is apparently not being marked as platform-specific. Is that
wanted in connection with the wxt terminal at all?
Not that I can see. The program source windows/doc2html.c contains the
comment
/*
* doc2html.c -- program to convert Gnuplot .DOC format to MS Windows
* HTML help (.html) format.
So I think it is only needed for windows. By the way, when I run the
program it
only processes Part I of the documentation. Parts 2-5 are ignored.
So the program may have bugs separate from this build problem.
Ethan
Post by Allin Cottrell
Allin Cottrell
sfeam
2017-05-23 16:36:31 UTC
Permalink
Post by Bastian Märkisch
wxWidgets can use a help format (htb), which is actually similar to what is
used for chm files on Windows.
The idea was to use that as online help on non-Windows platforms eventually.
https://sourceforge.net/p/gnuplot/patches/707/
(but as is this patch breaks the original use on Windows)
Thanks for reminding me about that patch.
[adding Dan Sebald to the cc list]
That patch did not work for me for either wxt or qt when I looked at it in 2015.
I have not gone back to it since then.

Regardless of the potential to share creation of html documentation
among multiple platforms in the future, right now I am trying to sort out
how to prepare a distribution tarballs without dragging in extra files.

I don't want to break the build on windows, so please comment on the
following options.

1) Edit docs/Makefile.am to remove the target
noinst_PROGRAMS = ... doc2wxhtml

2) Leave doc2wxhtml as a target but explicitly list a subset of files in subdirectory
docs/windows that should be packaged rather than including the entire subdirectory.
In this case what exactly are the needed files?

3) Fix the automake rules that are leaving a *.o file in the windows subdirectory.


(1) works but breaks "make htb"
(2) would work but I don't know which files to list
(3) I have not even a vague idea how to do this!


As a separate but less pressing issue it would be nice to fix the make rules
for "make htb". Right now it fails because there is no subdirectory docs/wxhelp.
But even if I create that subdirectory the *.html files produced are broken because
some files are placed in .../windows and others in .../wxhelp yet the href= links
assume all files are in the same place. I'll add this to the tracker for patch 707

thanks for any insight

Ethan
Post by Bastian Märkisch
So in short, doc2html works as intended on Windows (all sections), but as of
now the doc2wxhtml variant is not in use.
* docs/Makefile.in: add new target 'htb' to create help file
compatible with wxWidgets help viewer
-----Ursprüngliche Nachricht-----
Gesendet: Dienstag, 23. Mai 2017 06:23
Betreff: Re: automake help
Post by Allin Cottrell
Current cvs for 5.1 and 5.2 has an odd automake glitch that I do not
understand.
"make" run on linux creates a file
docs/windows/doc2wxhtml-doc2html.o
that surely isn't needed.
"make dist" includes that file in the generated tarball.
Other *.o files are discarded when packing up the files for
distribution. Why not this one?
Why does it even exist in the first place?
In docs/Makefile.am, the EXTRA_DIST variable includes "windows". Not
sure, but I guess that would drag in anything that gets created in the
windows directory?
Correct.
Post by Allin Cottrell
(Unless one builds out of tree, which is generally a good idea
anyway.)
The same thing happens for an out of tree build.
Post by Allin Cottrell
In docs/Makefile.in we have references to this thing
windows/doc2wxhtml-doc2html.o. That's the only object file to be
written into the docs/windows directory, all the others just go into
docs. That itself seems like an anomaly.
I agree.
Post by Allin Cottrell
"Not needed": well, it's "needed" to build the program doc2wxhtml,
which is apparently not being marked as platform-specific. Is that
wanted in connection with the wxt terminal at all?
Not that I can see. The program source windows/doc2html.c contains the
comment
/*
* doc2html.c -- program to convert Gnuplot .DOC format to MS Windows
* HTML help (.html) format.
So I think it is only needed for windows. By the way, when I run the
program it
only processes Part I of the documentation. Parts 2-5 are ignored.
So the program may have bugs separate from this build problem.
Ethan
Post by Allin Cottrell
Allin Cottrell
Daniel J Sebald
2017-05-23 18:07:41 UTC
Permalink
[snip]
Post by sfeam
3) Fix the automake rules that are leaving a *.o file in the windows subdirectory.
The "windows" directory name adds to my confusion. Is this a
Windows-only thing? When I build (out of tree) on linux with
$ automake --version
automake (GNU automake) 1.14.1
I see docs/windows/doc2wxhtml-doc2html.o after make in the
build-directory tree, then that directory is empty after doing a "make
clean".
Right. That is the exact issue that is causing problems for me.
It's fine that "make clean" works, but this does not stop the *.o file from
being included in the source distribution package from "make dist".
OK.
https://sourceforge.net/p/gnuplot/bugs/655/
! LaTeX Error: File `picins.sty' not found.
picins.sty is a LaTeX style file. Because some people are not
happy with the [lack of] accompanying license statement, some distros
no longer include it in their base TeX package.
You can download it separately from CTAN just like any other TeX component.
I'm reading about this just now. I'm going to add some references to
the bugs/655 thread for anyone else running into this issue.

Dan
Hans-Bernhard Bröker
2017-05-24 20:42:39 UTC
Permalink
After installing picins package and running "make dist", I notice that
[...]
Should that archive file be removed as well?
In a word: no. "make clean" is supposed to clean up what "make"
created, not what "make dist" did.
Hans-Bernhard Bröker
2017-05-24 20:15:36 UTC
Permalink
Post by Daniel J Sebald
ChangeLog: in turn is triggered by docs/doc2wxhtml requring src/version.c.
ChangeLog: * docs/Makefile.am (doc2wxhtml_SOURCES): Remove use of version.c.
ChangeLog: * docs/Makefile.am (noinst_PROGRAMS): Add doc2wxhtml.
ChangeLog: (doc2wxhtml_SOURCES, doc2wxhtml_CPPFLAGS): Use automake to build
While in the vicinity of the matter at hand, these are actually unrelated.
Loading...