cross-posted from: https://lemmy.ml/post/8492082
bmakelib is a collection of useful targets, recipes and variables you can use to augment your Makefiles.
I just released bmakelib v0.6.0 w/ the main highlight being the ability to define enums and validate variable values against them.
โค Makefile:
define-enum : bmakelib.enum.define( DEPLOY-ENV/dev,staging,prod ) include define-enum deploy : bmakelib.enum.error-unless-member( DEPLOY-ENV,ENV ) deploy : @echo ๐ Deploying to $(ENV)...
โค Shell:
$ make ENV=local-laptop deploy *** 'local-laptop' is not a member of enum 'DEPLOY-ENV'. Stop. $ make ENV=prod deploy ๐ Deploying to prod...
A general programming discussion community.