bug-groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #66583] [PATCH] allow building groff without makeinfo


From: anonymous
Subject: [bug #66583] [PATCH] allow building groff without makeinfo
Date: Sun, 29 Dec 2024 20:43:17 -0500 (EST)

Follow-up Comment #36, bug #66583 (group groff):

[comment #33 comment #33:]
> [...]
> At 2024-12-29T16:14:22+0100, Alejandro Colomar wrote:
>> (So was the other, though.)  The only proper patch, is one that
>> removes the dependency that the binary has on the docuentation.
> 
> Note, then, what my patch is doing, or more precisely the fact upon
> which it builds.  The reason the generated forms of _groff_'s Texinfo
> manual are added to the "all" target is _precisely because they are leaf
> nodes_ in _make_(1)'s dependency graph!  If we deleted this "all:" line,
> the documentation _won't get built_.
> 
> Here, let me show you my Git working copy with a lengthy, drastic
> change:
> 

> diff --git a/doc/doc.am b/doc/doc.am
> index a4f0df6cf..ee297dc98 100644
> --- a/doc/doc.am
> +++ b/doc/doc.am
> @@ -553,7 +553,7 @@ GROFF_DVI = doc/groff.dvi
> GROFF_PDF = doc/groff.pdf
> endif # USE_TEX
> 
> -all: $(GROFF_INFO) $(GROFF_TXT) $(GROFF_HTML) $(GROFF_DVI) $(GROFF_PDF)
> +#all: $(GROFF_INFO) $(GROFF_TXT) $(GROFF_HTML) $(GROFF_DVI) $(GROFF_PDF)
> 
> # Distribute the manual in source form as well.
> EXTRA_DIST += doc/groff.texi.in doc/groff.texi doc/fdl.texi


> 
> I then _distclean_ed and rebuilt.  The build finished with status 0.
> 
> What's in my _build/doc_ directory?
> [...]
> No _groff.info_.  No _groff.txt_.  No _groff.html_.  No _groff.dvi_.  No
> _groff.pdf_.
> 
> So, kindly, I'd sort of like to know what you guys are hollering about
> when you claim groff's Texinfo manual is being crammed down your
> throats.

You can do that now. Even if I knew to do that when I tried building
without makeinfo before, it wouldn't have helped me because ./configure
failed and finding the code that caused it to fail took me a REALLY
long time.

The problem I see in general is that the *.am files are poorly structured.
If groff used make in the obvious fashion, I would look into Makefile(.am)
and find there something along the lines of:

all: $(PROGRAMS) $(LIBS) $(TEXINFO_DOC) $(OTHER_DOC) $(MANPAGES)


Instead, I have to know to look into doc/doc.am and find, among the 800
lines in there, the one you commented out above. Being used to plain
Makefiles, I would not expect all's dependencies to be amended like this.
In any case, it's poor style. I have tried to improve this situation a
bit with the patches I posted today, which makes the Makefile behave
closer to what one might be used to from projects using plain make.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?66583>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]