본문 바로가기

Job Notes/Linux & Android

Makefile 예

.SUFFIXES: .c .o

TARGET = targetffs
CC = gcc
#CC = arm-linux-gcc

INCLUDES = ./include
#SUBLIBS = ./lib/libfuse.so.2
MODULES = fuse
CFLAGS = -g -D_FILE_OFFSET_BITS=64 -I$(INCLUDES)
LDFLAGS

SRCS    = mtd.c ffs_nand_dmod.c rffsnandslc.c rffsnandmlc.c \
utf.c cache.c ecc1e.c ecc14b4e.c ecc512b4e.c modules.c qmm.c smm.c \
sys.c fsinit.c fsintrnl.c fsioctl.c fsread.c fswrite.c fsysinit.c \
nand_util.c nor_util.c perm.c rootioctl.c targetffs.c
OBJS = $(SRCS:.c=.o)


# .PHONY: all clean

#.c.o:
# $(CC) $(CFLAGS) $(SUBLIBS) -o $@ $<

all : $(TARGET)

$(TARGET): $(OBJS)
$(CC) -o $@ $(OBJS) -l$(MODULES)

dep :
gccmakedep $(INC) $(SRCS)

clean :
rm -rf $(OBJS) $(TARGET) core

new : 
$(MAKE) clean 
$(MAKE)