Make 이해하기 - wildcard

Taeyoon Kim·2024년 6월 4일
1

아무도 한국어로 제대로 된 설명을 안 해 줘서 직접 적는

Make 사용법 - wildcard


Wildcard

참고 문서: GNU make: Wildcard Function

$(wildcard pattern ...)

wildcard( 예) *.c 등 ) 는 rules 에서는 자동으로 바뀌지만,
변수 값 세팅 때나 함수 내에서는 자동으로 바뀌지 않는다.
그러한 곳에서 wildcard를 사용하려면 wildcard 함수를 사용해야 한다.

이 문자열은 명시된 파일 이름 패턴들(pattern) 중 하나라도 일치되는 존재하는 파일들의 이름들이 공백으로 분리된 목록으로 치환된다.

예시)
현재 디렉토리에 file1.c, file2.c, file3.c 가 있다면
C_FILES = $(wildcard *.c)
C_FILES = file1.c file2.c file3.c 로 바뀌게 된다.


Substituion References

참고 문서: GNU make: Substitution Refs

$(var:a=b)

변수 var 의 값을 가져온 다음
글자 끝의 모든 a들을 b로 치환한다.

예를 들어:

foo := a.o b.o c.o
bar := $(foo:.o=.c)

이는 bara.c b.c c.c 로 설정한다.


Defining and Redefining Pattern Rules

%.o : %.c

추후 추가 작성 예정

profile
Linux, Yocto Project, Embedded System, OS

0개의 댓글