Chinaunix

标题: 请教一个Makefile问题 [打印本页]

作者: uudiin    时间: 2014-10-31 00:06
标题: 请教一个Makefile问题
本帖最后由 uudiin 于 2014-11-02 16:02 编辑

我的一个目录下有好几个C文件,每个C文件会都会生成一个目标程序
因此通过define定义每个程序共同的生成法则,但是make的时候没有执行到我的规则,好像是执行了make的隐含规则

望高人指教,在此谢过

部分主要 Makefile如下:
  1. PROGS = blink_act motor breath_led pwm

  2. SRCS_blink_act = blink_act.c
  3. SRCS_motor = motor.c
  4. SRCS_breath_led = breath_led.c
  5. SRCS_pwm = pwm.c

  6. $(foreach prog, $(PROGS), $(eval OBJS_$(prog) = $(SRCS_$(prog):%.c=%.o)))

  7. .PHONY: all clean

  8. all: $(PROGS)

  9. define PROG_template =
  10. $(1): $(OBJS_$(1))
  11.         $(LD) $(LDFLAGS) -o $@ $^
  12. endef

  13. $(foreach prog, $(PROGS), $(eval $(call PROG_template, $(prog))))
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2