[첫화면으로]MakeUtility/SuffixRule

마지막으로 [b]

사용법

.SUFFIXES : .o .c .s          # 여기서 사용할 확장자를 명시

.c.o :
    $(CC) $(CFLAGS) -c $<
.s.o :
    $(AS) $(ASFLAGS) -o $@ $<

확장자 규칙에서만 사용가능한 내부 매크로

$< : 필요 항목
$* : 필요 항목의 이름에서 확장자를 제외한 부분

library 의 사용

libops(interact.o)     # libops 라이브러리 안에 포함된 interact.o 화일만 지정
${LIB}(interact.o)
libops((_parse))       # interact.o 안에 있는 _parse 모듈만 지정

라이브러리 안에 있는 둘 이상의 파일에 대해 각각 다른 명령을 사용할 경우 - 이중 콜론 사용

libops :: interact.c
    ${CC} O c DENTRY interact.c
    ar r $@ interact.o
    rm f interact.o

libops :: sched.c
    ${CC} O c DRECRD sched.c
    주저리 주저리..

null 확장자

.c   :     # .c 파일로부터 확장자가 없는 이름의 화일을 만든다
    $(CC) $(CFLAGS) $(LDFLAGS) $< -o $@

규칙 무효화

기본 확장자 규칙이 작동하지 않도록 할 때:
.c.a :
    true     # 명령이 있어야 하므로 true (1) 을 사용한다


컴퓨터분류

마지막 편집일: 2002-11-4 10:14 pm (변경사항 [d])
890 hits | Permalink | 변경내역 보기 [h] | 페이지 소스 보기