8000 Fix -s vs QUIET in the makefiles by mrdudz · Pull Request #2746 · cc65/cc65 · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Fix -s vs QUIET in the makefiles #2746

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 16 commits into from
Jun 27, 2025
Merged

Fix -s vs QUIET in the makefiles #2746

merged 16 commits into from
Jun 27, 2025

Conversation

mrdudz
Copy link
Contributor
@mrdudz mrdudz commented Jun 26, 2025

Inspired by #2119

The idea is that:

  • make gives mostly "clean", but "all" output. in particular no stdout or stderr messages are suppressed, unless they are absolutely useless
  • make QUIET=1 gives a much less verbose output, it will suppress most output by the various tools, BUT when a tool errors out unexpectedly (!) and/or a test failed, then the output should be dumped to the console (*). Usually one status message per test is printed, to give some indicator of progress. This is the mode the CI/GHA uses
  • make -s is really the "no messages unless errors" mode, it inherits "QUIET=1", and supresses some more messages. Usually one status message per test is printed, to give some indicator of progress. And of course on errors all related info should still be dumped to console.

(*) If some people could break random tests locally and see if that works as intended, that would be nice

PS: some of this may not work as advertised with cmd.exe - i have no idea. i tried to make the changes in a way that it would at least not break

done so far are "test" and "targettest" directories (most of "test" already worked that way), will check the rest as well and try to unify the behaviour a bit

@mrdudz mrdudz added buildsystem cleanup Style fixes, Typos etc labels Jun 26, 2025
@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 26, 2025

but ofcourse windows blew up. gna

@kugelfuhr
Copy link
Contributor

Does this suppress all the useless clutter output to the screen when doing "make -s test"?

@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 26, 2025

Does this suppress all the useless clutter output to the screen when doing "make -s test"?

thats the point :)

@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 26, 2025

so libsrc and src left... those will be most interesting :)

@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 26, 2025

Should be all now... look at the log of the runner, this is with QUIET=1, -s will remove a few more things. The output of the windows runner gives an idea of how it looks with just "make" now, because somehow things dont work with it (feel free to chime in and fix)

@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 26, 2025

PS: for those that are wondering WTH happened - try make -s :) Its different than before in src and libsrc now... but its consistent across all Makefiles (hopefully) and more "standard" (and less surprising IMHO)

Also: my argument against making it "very silent" by default, and then use V=1 to re-enable the output - and instead make it "verbose" by default and disable output on -s is:

  • V=1 was not documented
  • make -s is a standard option and does not have to be documented :)
  • QUIET=1 was already used elsewhere, and it makes no sense when everything is quiet by default

Shoot (please propose a different scheme of how it should work - in the entire tree - if you dont agree with the OP. I am totally willing to change it to something different)

@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 27, 2025

The output of the windows runner gives an idea of how it looks with just "make" now

nah not really :) just "make" gives you... all and everything

@oliverschmidt
Copy link
Contributor
oliverschmidt commented Jun 27, 2025

I'm not 100% sure why I'm asked to review. So just a general remark:

At the time I maintained this project, I considered it very relevant that it can be built on Windows. That had - as far as I remember - two reasons:

  1. To not lock out Windows users from contributing to cc65. I believe that with availability of WSL2, this reason isn't valid anymore.

  2. To not keep a certain contributor who relied on Visual Studio (not Visual Studio Code) from further contributing. Since I stopped maintaining cc65, I have no overview whatsoever if this is considered valid anymore (or in fact if it was considered valid by anybody but me in the first place).

As a result I imagine getting rid of everything targeting cmd.exe as build environment is a totally viable option.

@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 27, 2025

I'm not 100% sure why I'm asked to review.

Mostly because you wrote a lot of the Makefiles - and this PR changes the behaviour radically for at least libsrc and src (before it was non chatty by default, now you need to use -s)

(i'd like to keep cmd.exe support around for a while. if only for @acqn - should he ever come back :))

@oliverschmidt
Copy link
Contributor

Yes, I wrote those Makefiles - and I know that in several aspects you have a different perspective than I have (or rather had back then). Please go ahead and change them in any way you see fit. I'm a pure user of them - on WSL2 by now. As long as they still produce their files (be it with more or less screen output) I'm perfectly fine.

Yes, @acqn is the contributor I had in mind above.

@mrdudz
Copy link
Contributor Author
mrdudz commented Jun 27, 2025

Please go ahead and change them in any way you see fit.

Ah well :) right - merging. We can still change it to something else should that be desired

@mrdudz mrdudz merged commit d909a2c into cc65:master Jun 27, 2025
2 checks passed
@mrdudz mrdudz deleted the bequiet branch June 27, 2025 14:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
buildsystem cleanup Style fixes, Typos etc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
0