host-i686-pc-cygwin/libdecnumber/Makefile分析

快乐虾

http://blog.csdn.net/lights_joy/

lights@hb165.com

   

 

本文适用于

gcc- 4.3.1

configure –target=bfin-uclinux-gnu

Blackfin系列DSP

Cygwin gcc 3.4.4

   

 

欢迎转载,但请保留作者信息

 

 

cygwin gcc 3.4.4 环境下构建交叉编译器bfin-uclinux-gcc时,首先执行的是configure –target=bfin-uclinux-gnu命令,然后执行make操作,它将创建host-i686-pc-cygwin/ libdecnumber子目录,并调用gcc-4.3.1/libdecnumber/configure脚本生成Makefile,然后在主控Makefile中调用make生成目标,此时传递进来的目标为all

本文就是分析这个动态生成的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- 4.3.1 /libdecnumber

 

参考资料

host-i686-pc-cygwin/libiberty/Makefile解析( 2008-8-19 )

host-i686-pc-cygwin/fixincludes/Makefile分析( 2008-8-19 )

host-i686-pc-cygwin/zlib/Makefile分析( 2008-8-19 )

host-i686-pc-cygwin/libcpp/Makefile分析( 2008-8-19 )

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌云阁主

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值