On 11/14/24 4:23 AM, Mike Jonkmans wrote:
On Mon, Nov 11, 2024 at 03:30:53PM -0500, Chet Ramey wrote:
6) There is redundancy/duplication in the actions of various rules;OK.6) Same for the definitions of variables.Examples?There is duplication in the top Makefile on the various lib sources. One might dedup that by creating e.g. lib/glob/Makefile.ext and include that on the toplevel (the lib's Makefile should then use GLOB_SOURCES).I don't really consider that a problem.It is not an actual problem. But how sure are you that all dependencies in the top Makefile are listed correctly? It is an enormous list.
It is, and I'm sure there are missing dependencies somewhere. It just hasn't been a build problem yet.
The top Makefile defines GLOB_SOURCES, different from those CSOURCES. Oh, i see, #include "glob_loop.c" etc. :(This is a fairly common idiom for building single-byte and multibyte versions of functions from the same source without duplicating too much code. glibc and gnulib both use it.Weirdness all around ;) These are header files. No actual problem, though.
Not really -- more like parameterizable templates with generic types and function names filled in with #defines.
How about removing unused targets and variables?
I don't really put a high priority on modifying Makefiles I inherited. If targets aren't used, I mostly ignore them.
You're assuming something is wrong based on a set of assumptions about how things `should be', not whether anything is actually misbehaving.Inconsistencies, such as mostlyclean/clean, may be a source for future misbehaving. So they warrant some investigation.
You're speaking in possibilities again. I tend to worry more about actual problems.
- 'make mostlyclean' removes doc/bashref.* and doc/Makefile.It shouldn't remove the Makefile, and you can make it again, but I can't reproduce it removing the bashref.* files.On devel: make distclean git restore . ./configure make mostlyclean git status Shows several lines of 'deleted: doc/bashref.*'Those are the files resulting from texinfo creating the dvi files from the texinfo source. They are not part of the bash distribution. We talked about them earlier.Yes, but you say that you can not reproduce.
You wrote: - 'make mostlyclean' removes doc/bashref.* and doc/Makefile. It doesn't remove all the doc/bashref.* files. I can't reproduce that. It does remove some intermediate tex files, and I explained why. -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, UTech, CWRU c...@case.edu http://tiswww.cwru.edu/~chet/
OpenPGP_signature.asc
Description: OpenPGP digital signature