bug-texinfo
[Top][All Lists]
Advanced

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

"make maintainer-clean" inconsistency


From: Gavin Smith
Subject: "make maintainer-clean" inconsistency
Date: Thu, 8 Aug 2024 20:46:37 +0100

When I run "make maintainer-clean", there is a difference depending
on whether it is an out-of-source build.

In an in-source build, several files are deleted.

After running "./configure ; make maintainer-clean", the output
of "git status" includes:

        deleted:    doc/html_default_commands_args.texi
        deleted:    doc/pod2texi.texi
        deleted:    man/pod2texi.1
        deleted:    po_document/texinfo_document.pot
        deleted:    tp/Texinfo/XS/gnulib/lib/unicase/special-casing-table.h
        deleted:    tp/Texinfo/XS/gnulib/lib/uninorm/composition-table.h
        deleted:    tp/Texinfo/XS/main/command_ids.h
        deleted:    tp/Texinfo/XS/main/element_types.c
        deleted:    tp/Texinfo/XS/main/element_types.h

There may be other files that are also deleted that are not tracked in
git.

However, they are not deleted in an out-of-source build.  After
"mkdir build ; cd build ; ../configure ; make maintainer-clean",
the output of "git status" only reports the following deleted file:

        deleted:    po_document/texinfo_document.pot

Indeed, po_document/Makefile.in.in has the following rule:

maintainer-clean: distclean
        @echo "This command is intended for maintainers to use;"
        @echo "it deletes files that may require special tools to rebuild."
        rm -f $(srcdir)/$(DOMAIN).pot $(srcdir)/stamp-po $(GMOFILES)

- which deletes the .pot file in srcdir.

But srcdir is not used for the other files.  It is not even used for
the gnulib files, which were imported from outwith Texinfo.
gnulib/lib/Makefile.am includes the following line from the
gnulib module "unicase/special-casing":

  MAINTAINERCLEANFILES += unicase/special-casing-table.h

It does not say

  MAINTAINERCLEANFILES += $(srcdir)/unicase/special-casing-table.h

It may not be that important of an issue as "make maintainer-clean" may
not be much used, but it seems to me that files referred to in
MAINTAINERCLEANFILES would always be in the srcdir, and hence it is
burdensome always to precede listed files with "$(srcdir)/".

I wonder if this should perhaps be reported to the Automake developers.
Does anybody have any ideas?



reply via email to

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