Makefile dependencies and byte-compilation#15
Conversation
|
No strong objections, but does |
|
I do use it (I actually use an uncommitted Makefile in EXWM as well). I've never tried We can also remove the byte-compilation rules altogether. I'm undecided on whether lint on CI would be helpful or noisy (we all lint). Now that we have tests it might be worth it. |
7208179 to
7ef1aa4
Compare
To clarify, I don't mean this sarcastically. |
Remove them from where?
IMO, CI lints are nice because:
Not helpful till we get the warnings down to 0, but helpful to keep it there. |
|
(note: I have no objections to this PR if you want to merge it, I'm just pointing out the alternatives) |
I meant removing them from the Makefile. But it will be useful for CI (see below).
Oh, it's not just me...
I agree on everything. I'm hopeful on the remaining warnings. I'll try to automatize the discovery of Makefile dependencies if I find some time, to make this more robust. Otherwise I'll merge this. |
|
Byte compilation is a good addition to the Makefile. We can also reuse this for CI, where we can compile on various Emacs versions via Steve Purcell's setup-emacs. I am in favor of adding linting, e.g., package-lint. however some linters like Melpazoid (#9) go a bit too far imo.
Auto generating the dependencies would be great. Thanks! |
* Makefile (generate): New phony goal for generating elisp sources from XML protocol descriptions. (compile): New phony goal to byte-compile all elisp. (all): Depend on both. * Makefile (ELGDS): Infer Makefile dependencies for generating. (ELLDS): Infer Makefile dependencies for byte-compiling. * xelb-gen (xelb-parse): Set `load-prefer-newer' to avoid picking outdated byte-compiled definitions while generating.
7ef1aa4 to
6251e85
Compare
Now done. Works on my machine, please test. It is common to hide the dependency Makefile fragments ( |
I'm just posting the makefile I use to see byte-compilation warnings. Is this
make -jN)..elc. (Maybe that's not necessary?)This is meant to be applied after #4.