2012-05-21 26 views
0

考慮以下幾點:Overwiting目標目錄

SRCS = somefile.c util/someother.c ../src/more.c 

%.o : %.c 
    $(GCC) -MD -c $< -o [email protected] -Wp,-MD,.deps/$*.d 
    @cp .deps/$*.d .deps/$*.P; \ 
     sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \ 
      -e '/^$$/ d' -e 's/$$/ :/' < .deps/$*.d >> .deps/$*.P; \ 
     rm -f .deps/$*.d 

-include $(SRCS:%.c=.deps/%.P) 

我將如何改變上方,從而.o文件中結束了./?目前他們建立在源文件存在的目錄中,這很糟糕。

回答

0

我會做這種方式:

SRCS = somefile.c someother.c more.c 

%.o : %.c 
    [same as before] 

-include $(SRCS:%.c=.deps/%.P) 

vpath %.c util ../src