make
Files
SKILL.mdagentsreferences
Install
Install the containing plugin
/plugin install ci-cd@llm-skills
Invoke this skill after installation
/ci-cd:make
This skill is bundled inside ci-cd. Install the plugin once, then Claude Code can use any of its included skills. Browse the full plugin repository at github.com/alisonaquinas/llm-ci-dev.
SKILL.md
name: make description: Run make commands, write Makefiles, and automate build tasks with GNU Make. Use when tasks mention make, Makefile, build targets, build automation, or GNU Make.
Make
Intent Router
| Request | Reference | Load When |
|---|---|---|
| Install tool, first-time setup | references/install-and-setup.md | Install or verify GNU Make |
| Makefile syntax, variables, targets | references/makefile-syntax.md | Write or debug a Makefile |
| CLI commands, flags, dry run | references/command-cookbook.md | Run make with specific options |
| Patterns, functions, conditionals | references/patterns-and-functions.md | Use advanced Make features |
Quick Start
# Run default target (usually 'all')
make
# Preview what would run (dry run — no changes)
make -n
# Run specific target
make build
# Run with parallel jobs
make -j4
# Clean build artifacts
make clean
Core Command Tracks
- Default target:
make— runs the first target or.DEFAULT_GOAL - Dry run:
make -n— prints commands without executing them - Specific target:
make <target>— runs a named target - Parallel:
make -j N— run N jobs in parallel - Force rebuild:
make -B— treat all targets as out of date - Different file:
make -f <file>— use a non-default Makefile - Change directory:
make -C <dir>— run make in another directory - Verbose:
make V=1— show full compiler commands (when supported)
Safety Guardrails
- Always run
make -nbefore running an unknown Makefile — review the commands it would execute. - Declare
.PHONYtargets for any target that is not a real file (e.g.,clean,install,all). - Use
$(MAKE)instead ofmakefor recursive invocations — preserves flags and job count. - Be explicit about target dependencies to avoid incorrect incremental builds.
- Avoid spaces in Makefile recipe lines — recipes must be indented with a tab, not spaces.
# Troubleshoot: list all targets and trace why a target is rebuilding
make -n build # dry-run to see commands
make --print-data-base | grep "^[a-zA-Z]" | sort
Related Skills
- cmake — cross-platform build system generator that can emit Makefiles
- ci-architecture — integrating Make targets into CI/CD pipelines
References
references/install-and-setup.mdreferences/makefile-syntax.mdreferences/command-cookbook.mdreferences/patterns-and-functions.md- Official manual: https://www.gnu.org/software/make/manual/
- GNU Make reference card: https://www.gnu.org/software/make/manual/make.html