商务合作加Q:411239339

Makefile写法之一

浏览:364次阅读
没有评论

共计 581 个字符,预计需要花费 2 分钟才能阅读完成。

 

INC = -I./
TARGET = myprogram


BASEDIR=./
OBJDIR=./obj/

SRCDIR=$(BASEDIR)
SRCDIR+=$(shell ls -F $(BASEDIR) | grep "/")

VPATH=$(SRCDIR)

SOURCE=$(foreach subdir, ${SRCDIR}, $(wildcard ${subdir}*.c))

SRC=$(notdir $(SOURCE))

SRCOBJ=$(patsubst %.c,%.o,$(SRC))
OBJ=$(addprefix $(OBJDIR), $(SRCOBJ))

.PHONY:clean

all: $(OBJDIR) $(TARGET)

$(OBJDIR):
	@if [! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi

$(OBJDIR)%.o: %.c
	gcc  -c  $< -o $@  $(INC) 
	@echo Compile $< ... $@ 

$(TARGET): $(OBJ)
	gcc -L. -Bstatic -pthread  $^ -o $(TARGET) $(INC)  $(LIB)  
	@echo Build... $(TARGET) 

install:
	@cp $(TARGET) ../bin
clean:
	@$(RM) $(OUTPUT) $(OBJDIR) -rf
	@$(RM) $(TARGET) 
tar:
	./install.sh

 

正文完
扫码赞助
post-qrcode
 0
果子
版权声明:本站原创文章,由 果子 于2015-01-05发表,共计581字。
转载说明:除特殊说明外本站文章皆由果较瘦原创发布,转载请注明出处。
评论(没有评论)