-
Notifications
You must be signed in to change notification settings - Fork 4
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
The issues 2-5 in the "only make" section are non-issues #6
Comments
Adding Makefile as a dependency is an ugly hack. It is too conservative for example. It rebuilds on any change to the Makefile. More intelligent build systems can figure out which rules exactly have changed. For directory dependencies, there are lots of proposed solutions. It is not clear to me which is best, which means the problem is not solved yet. For silence, the best behavior in my eyes is to show the output for failed goals only. Your suggestions do not provide that. Finally, the multiple output issue. You ran right into the trap. Your snippet is equivalent to the following and I'm pretty sure that was not your intention.
In summary, I'm not convinced. The first two are borderline. Personally, I can live with the workarounds. Make has advantages like being available everywhere in return for these minor annoyances. They are still annoying. |
You can achieve this by separating targets into separate makefiles and make only those targets' dependencies depend on that makefile.
Just because there are multiple solutions doens't mean it's not solved. It means it has been solved multiple times in different ways.
.SILENT at least reports failed targets. What exactly is the problem here?
This is true, this solution sort of breaks with parallelism, though this can be solved with .NOTPARALLEL. |
This is also wrong. You can change the SHELL to whatever language or binary that supports taking instructions from standard input. You can even change the SHELL per rule if you feel like it.
|
These are hilarious "non-issue" nitpicks, dear ghost (now ghost). Everyone understands that the purpose of this repo is to c.r.a.p on as many build systems as possible, and that's very honorable goal! So, even non-issues are issues. In that regard, if you have a pet favorite, the right way to make it look better is to c.r.a.p more on all other systems ;-). And please concentrate on CMake - it's a c.r.a.p as hell, actually rampaging thru the ecosystem ;-). |
It takes couple of lines of make to add this though:
Also just a few of lines of make:
Another way you could do this is this:
It's often useful to know what is being done.
If you don't like this then use
-s
.If you want to make your Makefile silent by default then add:
Note that you probably should have some condition where this won't be done so that you can get the output in case you need it.
Sure they are, again only couple of lines of make:
The text was updated successfully, but these errors were encountered: