Make

概要

GNU Makeは歴史のあるビルド用ソフトウェア。依存関係を明示し、ビルドを自動化するのに使う。

Memo

偽のターゲットと前提条件

install:
      echo "hello" > install

はinstallファイルを生成する。2回目はコマンドが実行されない。makeはターゲットと同名のファイルやディレクトリがあると、すでに成果物の生成が済んでいて再実行が不要と判断してコマンドを実行しない( up to date になる)。

「成果物の生成に関わらないターゲット」を書くためにはPHONYを用いて、偽のターゲットにする。

.PHONY: install

install:
      echo "hello" > install

必要条件。

main.o: main.c
      gcc -o main.o main.c

main.cが存在すると up to date になる。タイムスタンプが更新されると再実行する。

Tasks

Reference

Makefileを自己文書化する | POSTD

タスクの説明をコマンドで表示する方法。

Archives