在vs2008下使用cygwin(7):i686-pc-cygwin/newlib/libc/search/Makefile分析

 

快乐虾

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

lights@hb165.com

   

本文适用于

Cygwin-1.16

Vs2008

     

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

 

 

这个Makefile由上一级目录的makefile调用make all执行。All目标定义为:

all: all-am

all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(DATA)

LIBRARIES = $(noinst_LIBRARIES)

noinst_LIBRARIES = lib.a

LTLIBRARIES = $(noinst_LTLIBRARIES)

noinst_LTLIBRARIES未定义

DATA = $(noinst_DATA)

noinst_DATA =

因而此目标将依赖于lib.a目标,其定义为:

lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)

       -rm -f lib.a

       $(lib_a_AR) lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)

       $(RANLIB) lib.a

在生成所需要的目标文件后,上述脚本将它们打包成lib.a文件。

由于有以下定义:

lib_a_OBJECTS = $(am_lib_a_OBJECTS)

am__objects_1 = lib_a-bsearch.$(OBJEXT) lib_a-qsort.$(OBJEXT)

am__objects_2 = lib_a-hash.$(OBJEXT) /

       lib_a-hash_bigkey.$(OBJEXT) /

       lib_a-hash_buf.$(OBJEXT) /

       lib_a-hash_func.$(OBJEXT) /

       lib_a-hash_log2.$(OBJEXT) /

       lib_a-hash_page.$(OBJEXT) /

       lib_a-hcreate.$(OBJEXT) /

       lib_a-hcreate_r.$(OBJEXT) /

       lib_a-tdelete.$(OBJEXT) /

       lib_a-tdestroy.$(OBJEXT) /

       lib_a-tfind.$(OBJEXT) /

       lib_a-tsearch.$(OBJEXT) /

       lib_a-twalk.$(OBJEXT)

am_lib_a_OBJECTS = $(am__objects_1) /

       $(am__objects_2)

因而此目标有以下的依赖关系。

1.1.1.1             lib_a-bsearch.$(OBJEXT)

这个目标定义为:

lib_a-bsearch.o: bsearch.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-bsearch.o `test -f 'bsearch.c' || echo '$(srcdir)/'`bsearch.c

直接编译即可。

Vc提供了bsearch函数,略过此文件。

 

1.1.1.2             lib_a-qsort.$(OBJEXT)

这个目标定义为:

lib_a-qsort.o: qsort.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-qsort.o `test -f 'qsort.c' || echo '$(srcdir)/'`qsort.c

直接编译即可。

Vc提供了qsort函数,略过此文件。

 

1.1.1.3             lib_a-hash.$(OBJEXT)

这个目标定义为:

lib_a-hash.o: hash.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hash.o `test -f 'hash.c' || echo '$(srcdir)/'`hash.c

直接编译即可。

1.1.1.4             lib_a-hash_bigkey.$(OBJEXT)

这个目标定义为:

lib_a-hash_bigkey.o: hash_bigkey.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hash_bigkey.o `test -f 'hash_bigkey.c' || echo '$(srcdir)/'`hash_bigkey.c

直接编译即可。

 

1.1.1.5                   lib_a-hash_buf.$(OBJEXT)

这个目标定义为:

lib_a-hash_buf.o: hash_buf.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hash_buf.o `test -f 'hash_buf.c' || echo '$(srcdir)/'`hash_buf.c

直接编译即可。

 

1.1.1.6                   lib_a-hash_func.$(OBJEXT)

这个目标定义为:

lib_a-hash_func.o: hash_func.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hash_func.o `test -f 'hash_func.c' || echo '$(srcdir)/'`hash_func.c

直接编译即可。

 

1.1.1.7                   lib_a-hash_log2.$(OBJEXT)

这个目标定义为:

lib_a-hash_log2.o: hash_log2.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hash_log2.o `test -f 'hash_log2.c' || echo '$(srcdir)/'`hash_log2.c

直接编译即可。

 

1.1.1.8                   lib_a-hash_page.$(OBJEXT)

这个目标定义为:

lib_a-hash_page.o: hash_page.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hash_page.o `test -f 'hash_page.c' || echo '$(srcdir)/'`hash_page.c

直接编译即可。

 

1.1.1.9             lib_a-hcreate.$(OBJEXT)

这个目标定义为:

lib_a-hcreate.o: hcreate.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hcreate.o `test -f 'hcreate.c' || echo '$(srcdir)/'`hcreate.c

直接编译即可。

 

1.1.1.10       lib_a-hcreate_r.$(OBJEXT)

这个目标定义为:

lib_a-hcreate_r.o: hcreate_r.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-hcreate_r.o `test -f 'hcreate_r.c' || echo '$(srcdir)/'`hcreate_r.c

直接编译即可。

 

1.1.1.11       lib_a-tdelete.$(OBJEXT)

这个目标定义为:

lib_a-tdelete.o: tdelete.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-tdelete.o `test -f 'tdelete.c' || echo '$(srcdir)/'`tdelete.c

直接编译即可。

 

1.1.1.12       lib_a-tdestroy.$(OBJEXT)

这个目标定义为:

lib_a-tdestroy.o: tdestroy.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-tdestroy.o `test -f 'tdestroy.c' || echo '$(srcdir)/'`tdestroy.c

直接编译即可。

 

1.1.1.13       lib_a-tfind.$(OBJEXT)

这个目标定义为:

lib_a-tfind.o: tfind.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-tfind.o `test -f 'tfind.c' || echo '$(srcdir)/'`tfind.c

直接编译即可。

 

1.1.1.14       lib_a-tsearch.$(OBJEXT)

这个目标定义为:

lib_a-tsearch.o: tsearch.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-tsearch.o `test -f 'tsearch.c' || echo '$(srcdir)/'`tsearch.c

直接编译即可。

 

1.1.1.15       lib_a-twalk.$(OBJEXT)

这个目标定义为:

lib_a-twalk.o: twalk.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-twalk.o `test -f 'twalk.c' || echo '$(srcdir)/'`twalk.c

直接编译即可。

 

 

 

参考资料

vs2008下使用cygwin1):前言( 2008-10-16 )

vs2008下使用cygwin2):i686-pc-cygwin/newlib/Makefile分析( 2008-10-16 )

vs2008下使用cygwin3):i686-pc-cygwin/newlib/libc/Makefile分析( 2008-10-16 )

vs2008下使用cygwin4):i686-pc-cygwin/newlib/libc/argz/Makefile分析( 2008-10-16 )

vs2008下使用cygwin5):i686-pc-cygwin/newlib/libc/stdlib/Makefile分析( 2008-10-16 )

vs2008下使用cygwin6):i686-pc-cygwin/newlib/libc/ctype/Makefile分析( 2008-10-16 )

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

嵌云阁主

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

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

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

打赏作者

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

抵扣说明:

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

余额充值