快乐虾
http://blog.csdn.net/lights_joy/
lights@hb165.com
本文适用于
gcc-
configure –target=bfin-uclinux-gnu
Blackfin系列DSP
Cygwin gcc
欢迎转载,但请保留作者信息
在cygwin gcc
本文就是分析这个动态生成的host-i686-pc-cygwin/ libdecnumber/Makefile。
all目标的依赖关系为:
all: libdecnumber.a
因而这个Makefile将生成libdecnumber.a文件。
1.1 libdecnumber.a
这个关系定义为:
libdecnumber.a: $(libdecnumber_a_OBJS)
-rm -f $@
$(AR) $(ARFLAGS) $@ $(libdecnumber_a_OBJS)
$(RANLIB) $@
在生成所有的.o文件后,这段脚本将它们链接为libdecnumber.a文件。
libdecnumber_a_OBJS的值为:
libdecnumber_a_OBJS = decNumber.o decContext.o /
decimal32.o decimal64.o decimal128.o $(ADDITIONAL_OBJS)
而ADDITIONAL_OBJS的值为空。
对于依赖的这几个.o文件,Makefile并没有为它们单独定义规则,而是使用了通用的规则:
COMPILE = source='$<' object='$@' libtool=no $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(ALL_CFLAGS) -c
.c.o:
$(COMPILE) $<
DEFS为空,而INCLUDES的值为:
INCLUDES = -I$(srcdir) -I.
srcdir指向gcc-
参考资料
host-i686-pc-cygwin/libiberty/Makefile解析(
host-i686-pc-cygwin/fixincludes/Makefile分析(
host-i686-pc-cygwin/zlib/Makefile分析(
host-i686-pc-cygwin/libcpp/Makefile分析(