* Code cleanup:
[platform/kernel/u-boot.git] / board / MAI / bios_emulator / scitech / makedefs / rules / gcc_win32.mk
1 #############################################################################
2 #
3 #                                       SciTech Multi-platform Graphics Library
4 #
5 #  ========================================================================
6 #
7 #    The contents of this file are subject to the SciTech MGL Public
8 #    License Version 1.0 (the "License"); you may not use this file
9 #    except in compliance with the License. You may obtain a copy of
10 #    the License at http://www.scitechsoft.com/mgl-license.txt
11 #
12 #    Software distributed under the License is distributed on an
13 #    "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
14 #    implied. See the License for the specific language governing
15 #    rights and limitations under the License.
16 #
17 #    The Original Code is Copyright (C) 1991-1998 SciTech Software, Inc.
18 #
19 #    The Initial Developer of the Original Code is SciTech Software, Inc.
20 #    All Rights Reserved.
21 #
22 #  ========================================================================
23 #
24 # Descripton:   Rules makefile definitions, which define the rules used to
25 #                               build targets. We include them here at the end of the
26 #                               makefile so the generic project makefiles can override
27 #                               certain things with macros (such as linking C++ programs
28 #                               differently).
29 #
30 #############################################################################
31
32 # Take out PMLIB if we don't need to link with it
33
34 .IF $(NO_PMLIB)
35 PMLIB :=
36 .ENDIF
37
38 .IF $(USE_CXX_LINKER)
39 LD      := $(LDXX)
40 .ENDIF
41
42 # Implicit generation rules for making object files from source files
43 %$O: %.c ;
44 .IF $(SHOW_ARGS)
45     $(CC) -c $(CFLAGS:s/\/\\) $(<:s,/,\)
46 .ELSE
47     @$(ECHO) $(CC) $(SHOW_CFLAGS:s/\/\\) $(<:s,/,\)
48     @$(CC) -c $(CFLAGS:s/\/\\) $(<:s,/,\)
49 .ENDIF
50
51 %$O: %$P ;
52 .IF $(SHOW_ARGS)
53     $(CXX) -c $(CFLAGS:s/\/\\) $(<:s,/,\)
54 .ELSE
55     @$(ECHO) $(CXX) $(SHOW_CFLAGS:s/\/\\) $(<:s,/,\)
56     @$(CXX) -c $(CFLAGS:s/\/\\) $(<:s,/,\)
57 .ENDIF
58
59 %$O: %$A ;
60 .IF $(SHOW_ARGS)
61     $(AS) -o $(ASFLAGS:s/\/\\) $(<:s,/,\)
62 .ELSE
63     @$(ECHO) $(AS) $(SHOW_ASFLAGS:s/\/\\) $(<:s,/,\)
64     @$(AS) @$(mktmp -o $@ $(ASFLAGS:s/\/\\)) $(<:s,/,\)
65 .ENDIF
66
67 # Implicit rule for building resource files
68 %$R: %.rc ; $(RC) $< $(RCFLAGS) -o $@
69
70 # Implicit rule for building a DLL
71 # TODO!
72 #%$D: ; +rclink $(LD) $(RC) $@ $(mktmp $(LDFLAGS) /Fe$@ $(&:t"\n"s/\/\\) $(PMLIB) $(EXELIBS) $(DEF_LIBS) $(LDENDFLAGS))
73
74 # Implicit rule for building a library file
75 %$L:     ;
76 .IF $(SHOW_ARGS)
77     $(LIB) $(LIBFLAGS) $@ $&
78 .ELSE
79     @$(ECHO) $(LIB) $@
80     @$(LIB) $(LIBFLAGS) $@ @$(mktmp $(&:s/\/\\)\n)
81 .ENDIF
82
83 # Implicit rule for building an executable file
84 %$E:     ;
85 .IF $(SHOW_ARGS)
86     $(LD) $(LDFLAGS) -o $@ $& $(EXELIBS) $(PMLIB) -lm
87 .ELSE
88     @$(ECHO) ld $@
89     @$(LD) $(LDFLAGS) -o $@ @$(mktmp $(&:s/\/\\) $(EXELIBS) $(PMLIB) -lm)
90 .ENDIF