파일 관리 유틸리티
각 파일에 대한 반복적 명령을 자동화시킨 것(Makefile에 기술된 대로 shell 명령을 순차적으로 내림)
make 명령 내리기 전에 rm -rf *.o [타겟] 명령어로 이전에 컴파일 된 파일 지우기
매크로 | 정의 |
---|---|
CC | gcc |
CFLAGS | gcc의 옵션 세팅(ex. -W -Wall) |
AS | as |
매크로 | 정의 |
---|---|
$? | 현재의 타겟보다 최근에 변경된 종속 항목 리스트 (확장자 규칙에서 사용 불가) |
$^ | 현재 타겟의 종속 항목 리스트 (확장자 규칙에서 사용 불가) |
$@ | 현재 타겟의 이름 |
$< | 현재 타겟보다 최근에 변경된 종속 항목 리스트 (확장자 규칙에서만 사용 가능) |
$* | 현재 타겟보다 최근에 변경된 현재 종속 항목의 이름 (확장자 규칙에서만 사용 가능) |
와일드카드 매칭기법
$(wildcard .c) : 현재 디렉토리에서 .c와 파일명이 일치하는 파일을 찾아 공백 구분 문자로 매크로에 정의
대입 참조기법
$(매크로명: .c= .o) : 확장자 .c가 .o로 바뀜
patsubst
$(patsubst %.c, %.o, $(wildcard .c)) : $(wildcard .c)의 결과에 대해서 %.c와 매칭되는 것을 %.o로 바꿈
clean :
[tab]rm -rf *.o [타겟명]