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

来源:互联网 发布:centos查看网卡状态 编辑:程序博客网 时间:2024/06/05 06:44

 

快乐虾

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-dummy.$(OBJEXT)

am__objects_2 = lib_a-fdopen64.$(OBJEXT) /

       lib_a-fgetpos64.$(OBJEXT) /

       lib_a-fopen64.$(OBJEXT) /

       lib_a-freopen64.$(OBJEXT) /

       lib_a-fseeko64.$(OBJEXT) /

       lib_a-fsetpos64.$(OBJEXT) /

       lib_a-ftello64.$(OBJEXT) /

       lib_a-stdio64.$(OBJEXT) /

       lib_a-tmpfile64.$(OBJEXT)

am_lib_a_OBJECTS = $(am__objects_1) /

       $(am__objects_2)

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

1.1.1.1             lib_a-dummy.$(OBJEXT)

这个目标定义为:

lib_a-dummy.o: dummy.c

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

直接编译即可。

 

1.1.1.2             lib_a-fdopen64.$(OBJEXT)

这个目标定义为:

lib_a-fdopen64.o: fdopen64.c

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

直接编译即可。

 

1.1.1.3             lib_a-fgetpos64.$(OBJEXT)

这个目标定义为:

lib_a-fgetpos64.o: fgetpos64.c

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

直接编译即可。

 

1.1.1.4             lib_a-fopen64.$(OBJEXT)

这个目标定义为:

lib_a-fopen64.o: fopen64.c

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

直接编译即可。

 

1.1.1.5             lib_a-freopen64.$(OBJEXT)

这个目标定义为:

lib_a-freopen64.o: freopen64.c

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

直接编译即可。

 

1.1.1.6             lib_a-fseeko64.$(OBJEXT)

这个目标定义为:

lib_a-fseeko64.o: fseeko64.c

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

直接编译即可。

 

1.1.1.7             lib_a-fsetpos64.$(OBJEXT)

这个目标定义为:

lib_a-fsetpos64.o: fsetpos64.c

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

直接编译即可。

 

1.1.1.8             lib_a-ftello64.$(OBJEXT)

这个目标定义为:

lib_a-ftello64.o: ftello64.c

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

直接编译即可。

 

1.1.1.9             lib_a-stdio64.$(OBJEXT)

这个目标定义为:

lib_a-stdio64.o: stdio64.c

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

直接编译即可。

 

1.1.1.10       lib_a-tmpfile64.$(OBJEXT)

这个目标定义为:

lib_a-tmpfile64.o: tmpfile64.c

       $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-tmpfile64.o `test -f 'tmpfile64.c' || echo '$(srcdir)/'`tmpfile64.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)

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

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