Skip to content

Rewrite Makefile to support older versions - #48

Merged
jhansche merged 2 commits into
mainfrom
darwin-makefile
Jul 26, 2026
Merged

Rewrite Makefile to support older versions#48
jhansche merged 2 commits into
mainfrom
darwin-makefile

Conversation

@jhansche

Copy link
Copy Markdown
Owner

make 3.82 is when ONESHELL was introduced, but the default version installed in macos (as of Tahoe 26) is 3.81. As a result the ONESHELL directives are ignored, and the venv/bin/activate inclusion is ineffective. There are 2 ways to work around that:

  1. single shell, using . venv/bin/activate && cmd1 && cmd2, with backslashes for line continuation
  2. keep shell commands separate, and invoke venv/bin/___ directly

Both approaches work (verified locally), but the venv/bin approach looks better, and removes an easy foot-gun.

This also tweaks other configs to ensure that rogue/scratch .py files don't get swept up in any of the checks

jhansche added 2 commits July 26, 2026 18:29
`make` 3.82 is when `ONESHELL` was introduced, but the default
version installed in macos (as of Tahoe 26) is 3.81. As a result
the ONESHELL directives are ignored, and the `venv/bin/activate`
inclusion is ineffective. There are 2 ways to work around that:
1. single shell, using `. venv/bin/activate && cmd1 && cmd2`, with
   backslashes for line continuation
2. keep shell commands separate, and invoke venv/bin/___ directly

Both approaches work (verified locally), but the venv/bin approach
looks better, and removes an easy foot-gun
@jhansche

Copy link
Copy Markdown
Owner Author

FYI @parrot-tailor - had to make some changes to make it compatible with macOS's default make version, and keep the tooling focused on actual project files.

@parrot-tailor

Copy link
Copy Markdown
Contributor

Ah good call, thanks! I forgot, I have a newer Make installed via Homebrew, this makes sense 👍

@jhansche
jhansche merged commit 04e5679 into main Jul 26, 2026
5 checks passed
@jhansche
jhansche deleted the darwin-makefile branch July 26, 2026 23:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants