noweb
noweb copied to clipboard
Makefile improvements
Here are several commits intended to make noweb easier to package, since it looks like very few distributions have upgraded to 2.12. Highlights:
- Improve parallelism and recursion by using $(MAKE) in subshells
- Add support for $(DESTDIR) and $(PREFIX) variables
- Use $(CFLAGS) and $(LDFLAGS) when compiling and linking
- Fix
make touchto work as originally intended (to avoid rebuilding generated files) - Generate and add all files needed by the
awknamescript (otherwise can't bootstrap by following the installation instructions) - Miscellaneous cleanups and cruft removal
Thanks for this! Long overdue.
My PR workflow is embarassingly bad, and I'm teaching a large required course this term. So the PR is likely to sit until June :-(
Any updates on this?
Whoops. Completely dropped on the floor.
The good news is I have a new workflow. The bad news is I'm back in the large required course.
I'll at least put this on my laundry list, and we'll see where it goes.
@nrnrnr Ping
Also while I have your attention (and completely unrelated), do you have the NJ Machine Code Toolkit sources in a repo that could be hosted on Github? I'd hate for that project to be lost to history.
This is a pretty big refactoring, and curating it is going to take more effort than I have available for noweb. The Debian patches, which I have long considered worth merging, are small by comparison.
From what I can tell, you've done all this work on spec. Absent clear evidence of a problem that needs to be solved, I'm going to let this sit until the next time I have reason to get deep into noweb... which might be forever.
About the Toolkit, I got permission from my coauthor to put it on github, but I haven't got there yet.
@kwk Cherry-picking 18f5b6a3804f59aa5f0f50ab0196e262d6b8c168 would cover most of those. If you review commit-by-commit instead of looking at the total difference (as Github likes to present everything) I don't think there is too much that would be objectionable.
As a distro package maintainer, my main needs are adding DESTDIR support, and adding a generated version of toascii so it can successfully bootstrap when you don't have a copy of noweb installed.
@kwk Cherry-picking 18f5b6a would cover most of those. If you review commit-by-commit instead of looking at the total difference (as Github likes to present everything) I don't think there is too much that would be objectionable.
@turboencabulator I agree that 18f5b6a is the one commit I was referring to. Please make a separate PR for that so we can agree on it easily and get it merge without much hassle. I'm sorry to ask for this extra work and Github is not exactly shining when it comes to handling a series of patches.
As a distro package maintainer, my main needs are adding DESTDIR support, and adding a generated version of toascii so it can successfully bootstrap when you don't have a copy of noweb installed.
I'm also interested in packaging (for Fedora and you?) which is why I've contacted @nrnrnr before but then had to work on something else.
Progress sounds good! Looking forward to a smaller PR.
FYI I hate the way github manages PRs, and I do as much as I can with Magit Forge.
@kwk Thanks for taking on the $@ changes, I've been busy over the past few weeks. Planning on breaking up the rest into manageable chunks as I get a chance. BTW I'm a Slackware user.