On Sun, Oct 17, 2021 at 8:33 AM Dmitry Goncharov
<invalid.nore...@gnu.org> wrote:
>
> Follow-up Comment #8, bug #61226 (project make):
>
> > > Switching to -include robs the user of a useful message, should there be a
> real issue.
>
> > I'm not sure what this means: in what situation do we lose a useful
> message?
>
> -include robs the user of a not readable or corrupted .d file, even though
> user's intervention is required.
>
> i think, hand written included makefiles require different error handling than
> generated .d files.
>
> A missing hand written makefile is an error. The user has the choice of
> 'include' vs '-include' as you described above. I agree with that logic.
>
> On the other hand, a missing .d file (or any other included makefile generated
> by a rule) is not an error. It is simply a clean build.
>
> i think, make should not print a warning when a .d file is missing. make
> should proceed and create the missing file. However, when .d is present, but
> make cannot include it, then make should print an error and stop.
>
>
> The traditional make behavior, which is still in 4.3 is exactly this.
> i think, we should retain this behavior.
>
>
> in regards to the change in main.c see the following possibilities
>
> 1. Revert the change in main.c.
> 2. Modify the change in main.c to allow for missing .d files, but print an
> error and stop in the other cases.

If I understand right that the idea is a special case for .d files I
dislike this sort of thing in make.  All the various C-centric rules
etc. I tend to just disable even when building C, and this sounds
worse because it's not just a disableable library.

Admittedly I haven't used the generated dependency files in a while
but if some additional semantics are needed to support them well I'd
prefer it be exposed as a general feature rather than hidden.  This
might add a bit of interface  complexity but that's still better
hidden special case behavior IMO.

Britton

  • [bug #61226] ... Dmitry Goncharov
    • [bug #61... Dmitry Goncharov
      • [bug... Paul D. Smith
        • ... Dmitry Goncharov
          • ... Paul D. Smith
            • ... Dmitry Goncharov
              • ... Dmitry Goncharov
              • ... Dmitry Goncharov
              • ... Paul D. Smith
              • ... Dmitry Goncharov
              • ... Britton Kerin
              • ... Dmitry Goncharov via Bug reports and discussion for GNU make
              • ... Britton Kerin
              • ... Dmitry Goncharov via Bug reports and discussion for GNU make
              • ... Edward Welbourne
              • ... Paul Smith
              • ... Alejandro Colomar (man-pages)
              • ... Dmitry Goncharov via Bug reports and discussion for GNU make
              • ... Paul Smith
              • ... Alejandro Colomar (man-pages)
              • ... Alejandro Colomar (man-pages)

Reply via email to