Reusable Makefile components for everyday use.

Lars Kruse 39a96b6cb0 fix: avoid re-downloading makefilet during `make clean` 2 months ago
debian 06ca549dd4 Bump version: 0.14.4 -> 0.15.0 8 months ago
include e2c8652276 feat: add downloading of external modules via `MAKEFILET_MODULES` 8 months ago
.bumpversion.cfg 06ca549dd4 Bump version: 0.14.4 -> 0.15.0 8 months ago
.gitignore cb416663da fix deb packaging style issues 7 years ago
CONTRIBUTING.md d84fe0eb3d Fix typo 5 years ago
COPYING 3768846d10 add clear reference to GPLv3 or later 7 years ago
Changelog 39a96b6cb0 fix: avoid re-downloading makefilet during `make clean` 2 months ago
FAQ.md cfa1a43848 docs: improve formatting of FAQ 2 years ago
INTEGRATION.md 88c8efe835 build: change default branch from `master` to `main` 2 years ago
Makefile 68fd965cb9 Allow optional arguments for lintian 5 years ago
README.md 76ff4802e2 docs: add documentation for all targets and variables 1 year ago
REFERENCE.md 5186b866b0 feat: add fallback URL for downloading `makefilet` 8 months ago
USAGE.md 5a39e297c7 deb: remove "test-deb" 4 years ago
VERSION 06ca549dd4 Bump version: 0.14.4 -> 0.15.0 8 months ago
main.mk 06ca549dd4 Bump version: 0.14.4 -> 0.15.0 8 months ago
makefilet-download-ondemand.mk 39a96b6cb0 fix: avoid re-downloading makefilet during `make clean` 2 months ago

README.md

Makefilet

Reusable Makefile components for everyday use.

makefilet provides a set of Make targets for common development tasks. It simplifies your life and the life of your co-developers by letting you focus on your language and your project instead of clumsily writing Makefile snippets.

Most features are working out of the box. Some features require a configuration file (e.g. for tox) or a variable in your Makefile.

In a perfect world, the Makefile of your project is reduced to just a single line that is responsible for including makefilet. The latter is providing all the magic for you. Discover it via make help.

See the reference for a full list of all available targets and variables.

Features

Currently supported tasks include:

Integrate makefilet into your project

Somehow you need to make makefilet available for yourself and your co-developers within your project repository.

Probably the following lines are everything you need:

wget https://notabug.org/sumpfralle/makefilet/raw/main/makefilet-download-ondemand.mk
[ -s Makefile ] || echo >>Makefile
sed -i 1i'include makefilet-download-ondemand.mk' Makefile

See the integration instructions for more details and a few alternative approaches.

Start using makefilet's features

Take a look at the list of new available targets provided by makefilet:

make help

Take a look at the usage instructions for more details.

Frequently asked questions

See FAQ.

Contribute

Please take a look at the contribution hints.