ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Makefile
    개발/형상(?) 관리 2009. 7. 31. 00:31
    GNU make


    $ make
    --just-print or -n
    --print-data-base

    주석
    #

    매크로 정의
    ... = ...

    매크로 치환(Macro substitution)
    OBJS = main.o read.o write.o
    SRCS = $(OBJS:.o=.c)

    사용은
    .. $(..) ..
    or .. ${..} ..

    미리 정의된 매크로
    make -p

    매크로는 쉘상에서 정의한 환경 변수값들을 그대로 이용할 수 있다.
    ASFLAGS = <- as 명령어의 옵션 세팅
    AS = as
    CFLAGS = <- gcc 의 옵션 세팅
    CC = cc (= gcc)
    CPPFLAGS = <- g++ 의 옵션
    CXX = g++
    LDLFAGS = <- ld 의 옵션 세팅
    LD = ld
    LFLAGS = <- lex 의 옵션 세팅
    LEX = lex
    YFLAGS = <- yacc 의 옵션 세팅
    YACC = yacc
    MAKE_COMMAND = make

    내부 매크로(Internal macro) - 생략형
    $@ - 타겟의 전체 이름
    $* - 확장자를 뺀 타겟의 이름
    $<

    확장자 규칙(Suffix rule)
    make 내부에서 기본적으로 서비스를 제공해 주는 확장자들의 리스트
    .out .a .ln .o .c .cc .C .p .f .F .r .y .l .s .S .mod .sym .def .h .info .dvi .tex .texinfo .texi .txinfo .w .ch .web .sh .elc .el

    참조 사이트:


Designed by Tistory.