Re: [dev] Build system: redo

From: Sergey Matveev <stargrave_AT_stargrave.org>
Date: Sun, 3 Jan 2021 22:16:50 +0300

*** Greg Reagle [2021-01-03 13:07]:
>'all' targets for simplicity--I don't that they are very useful

"all" target is useful only as a default rule that is run by many
implementations by default and you have just to type "redo" to build the
program. But of course everything is fine without it.

>Please take a look and tell me what you think.

Everything looks good. But I am just curious: why do you use

    printf 'recompiling %s\n' $2.c >&2
    printf 'relinking\n' >&2

instead of?:

    echo recompiling $2.c >&2
    echo relinking >&2

In my opinion the later is easier to read and understand.
And personally I am pretty against that kind of messages.

* I think it is better to be silent as much as you (program) can. And
  print only really valuable messages. Like Go -- it is totally quiet
  when doing go get/build, however it could git clone, build, link and
  compile dozens of libraries in the background. If you see a message
  from it -- then something goes wrong, as a rule. "cc" is silent by
  default too and only prints warning/errors
* all redo implementations I tried print the target that is built now.
  So anyway you will see what is compiling or linking now
* even if some redo implementation is silent about that, there are, as
  you mentioned, options like -x/-v. But explicit progress messages are
  useless and even harmful here, in my opinion

-- 
Sergey Matveev (http://www.stargrave.org/)
OpenPGP: CF60 E89A 5923 1E76 E263  6422 AE1A 8109 E498 57EF
Received on Sun Jan 03 2021 - 20:16:50 CET

This archive was generated by hypermail 2.3.0 : Sun Jan 03 2021 - 20:24:07 CET