noweb icon indicating copy to clipboard operation
noweb copied to clipboard

Makefile improvements

Open turboencabulator opened this issue 5 years ago • 9 comments

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 touch to work as originally intended (to avoid rebuilding generated files)
  • Generate and add all files needed by the awkname script (otherwise can't bootstrap by following the installation instructions)
  • Miscellaneous cleanups and cruft removal

turboencabulator avatar Feb 12 '20 06:02 turboencabulator

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 :-(

nrnrnr avatar Feb 12 '20 17:02 nrnrnr

Any updates on this?

siraben avatar Feb 28 '21 12:02 siraben

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 avatar Mar 01 '21 23:03 nrnrnr

@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.

turboencabulator avatar May 31 '21 19:05 turboencabulator

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.

nrnrnr avatar Jun 15 '21 14:06 nrnrnr

@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.

turboencabulator avatar Jan 13 '22 05:01 turboencabulator

@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.

kwk avatar Jan 13 '22 14:01 kwk

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.

nrnrnr avatar Jan 14 '22 21:01 nrnrnr

@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.

turboencabulator avatar Feb 04 '22 06:02 turboencabulator