求教Makefile高手一个问题?
程序目录结构: ./main/main.c ./src/sub.c
ET8G%k4M2du.t_$Bwww.linuxeden.com输出: ./out/his/ ./out/main/~{;@
@0Fg
[]v p_%^&_?.x
Makefile如下:www.linuxeden.comg2L\&d1gk0h[r
/D)C;b4N#a4jSOURCE_DIR := .
,u[U]*}+M:PTBINARY_DIR := ./out
"o^,g-t/|q\/zmodules := main srcLinux伊甸园论坛 V
An&{2E*{.k1C6x,UU
sources := $(foreach m,$(modules),$(wildcard $(SOURCE_DIR)/$m/*.c))
Y,A+a E
cuobjects := $(call source-to-object,$(sources))h]7gbXIK|
GvmS0KZ"fun
source-dir-to-binary-dir = $(addprefix $(BINARY_DIR)/, $(patsubst $(SOURCE_DIR)/%,%,$1));k;g7AG:q0q$ofd
source-to-object = $(call source-dir-to-binary-dir, $(subst .c,.o,$(filter %.c,$1)))
6u?1Q"v;_CZyLinux伊甸园论坛u,v#td-Q
$(program): $(objects)
&]o/rl?5L8t&d,K gcc $(CFLAGS) -o $@ $^www.linuxeden.comC4_6F%E z;m
Linux伊甸园论坛(U0zY jw5D*Z9Be
define one-compile-ruleLinux伊甸园论坛;Ccmy*B~2U2_,Aw5f
$1: $2gFv.{r&@T$Q)|
@gcc $(CFLAGS) -c $$< -o $$@EN'{ N-U9@$frxH
endef |