OSDN Git Service

5efd82e488d098d182ee72b74c4ccfaaf12dfba6
[pf3gnuchains/gcc-fork.git] / gcc / config / i386 / t-cygming
1 LIB1ASMSRC = i386/cygwin.asm
2 LIB1ASMFUNCS = _chkstk
3
4 # cygwin and mingw always have a limits.h, but, depending upon how we are
5 # doing the build, it may not be installed yet.
6 LIMITS_H_TEST = true
7
8 # If we are building next to winsup, this will let us find the real
9 # limits.h when building libgcc2.  Otherwise, winsup must be installed
10 # first.
11 LIBGCC2_INCLUDES = -I$(srcdir)/../winsup/w32api/include
12
13 winnt.o: $(srcdir)/config/i386/winnt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
14   $(TM_H) $(RTL_H) $(REGS_H) hard-reg-set.h output.h $(TREE_H) flags.h \
15   $(TM_P_H) toplev.h $(HASHTAB_H) $(GGC_H)
16         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
17         $(srcdir)/config/i386/winnt.c
18
19 winnt-cxx.o: $(srcdir)/config/i386/winnt-cxx.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
20   $(TM_H) $(RTL_H) $(REGS_H) hard-reg-set.h output.h $(TREE_H) flags.h \
21   $(TM_P_H) toplev.h $(HASHTAB_H) $(GGC_H)
22         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
23         $(srcdir)/config/i386/winnt-cxx.c
24
25
26 winnt-stubs.o: $(srcdir)/config/i386/winnt-stubs.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
27   $(TM_H) $(RTL_H) $(REGS_H) hard-reg-set.h output.h $(TREE_H) flags.h \
28   $(TM_P_H) toplev.h $(HASHTAB_H) $(GGC_H)
29         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
30         $(srcdir)/config/i386/winnt-stubs.c
31
32 msformat-c.o: $(srcdir)/config/i386/msformat-c.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
33   $(TM_H) $(RTL_H) $(REGS_H) hard-reg-set.h output.h $(TREE_H) flags.h \
34   $(TM_P_H) toplev.h $(HASHTAB_H) $(GGC_H)
35         $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
36         $(srcdir)/config/i386/msformat-c.c
37
38 STMP_FIXINC=stmp-fixinc
39
40 # Build a shared libgcc library for PECOFF with a DEF file
41 # with the GNU linker.
42 #
43 # mkmap-flat.awk is used with the pe_dll option to produce a DEF instead
44 # of an ELF map file.
45 #
46 # Warning: If SHLIB_SOVERSION or SHLIB_SONAME is updated, LIBGCC_SONAME
47 # in mingw32.h must be updated also.
48
49 SHLIB_EXT = .dll
50 SHLIB_IMPLIB = @shlib_base_name@.a
51 SHLIB_SOVERSION = 1
52 SHLIB_SONAME = @shlib_base_name@_$(SHLIB_SOVERSION)$(SHLIB_EXT)
53 SHLIB_MAP = @shlib_map_file@
54 SHLIB_OBJS = @shlib_objs@
55 SHLIB_DIR = @multilib_dir@/shlib
56 SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
57
58 SHLIB_LINK = $(LN_S) -f $(SHLIB_MAP) $(SHLIB_MAP).def && \
59         if [ ! -d $(SHLIB_DIR) ]; then \
60                 mkdir $(SHLIB_DIR) \
61         else true; fi && \
62         $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
63         $(SHLIB_MAP).def \
64         -Wl,--out-implib,$(SHLIB_DIR)/$(SHLIB_IMPLIB).tmp \
65         -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
66         $(SHLIB_OBJS) $(SHLIB_LC) && \
67         if [ -f $(SHLIB_DIR)/$(SHLIB_SONAME) ]; then \
68           mv -f $(SHLIB_DIR)/$(SHLIB_SONAME) \
69                 $(SHLIB_DIR)/$(SHLIB_SONAME).backup; \
70         else true; fi && \
71         mv $(SHLIB_DIR)/$(SHLIB_SONAME).tmp $(SHLIB_DIR)/$(SHLIB_SONAME) && \
72         mv $(SHLIB_DIR)/$(SHLIB_IMPLIB).tmp $(SHLIB_DIR)/$(SHLIB_IMPLIB)
73 # $(slibdir) double quoted to protect it from expansion while building
74 # libgcc.mk.  We want this delayed until actual install time.
75 SHLIB_INSTALL = \
76         $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
77         $(INSTALL_PROGRAM) $(SHLIB_DIR)/$(SHLIB_SONAME) \
78           $$(DESTDIR)$$(bindir)/$(SHLIB_SONAME); \
79         $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_IMPLIB) \
80           $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_IMPLIB)
81 SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
82 SHLIB_MKMAP_OPTS = -v pe_dll=1
83 SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver