[CMAKE]
[reactos.git] / lib / 3rdparty / stlport / build / Makefiles / gmake / top.mak
1 # Time-stamp: <08/06/06 17:34:38 yeti>
2 #
3 # Copyright (c) 1997-1999, 2002, 2003, 2005-2008
4 # Petr Ovtchenkov
5 #
6 # Portion Copyright (c) 1999-2001
7 # Parallel Graphics Ltd.
8 #
9 # Licensed under the Academic Free License version 3.0
10 #
11
12 .SUFFIXES:
13 .SCCS_GET:
14 .RCS_GET:
15
16 PHONY ?=
17
18 RULESBASE ?= $(SRCROOT)/Makefiles
19
20 # include file, generated by configure, if available
21 -include ${RULESBASE}/gmake/config.mak
22
23 ifndef COMPILER_NAME
24 # gcc is default compiler, others specify explicitly;
25 COMPILER_NAME := gcc
26 endif
27
28 ifndef LDFLAGS
29 LDFLAGS :=
30 endif
31
32 ifndef ALL_TAGS
33
34 ifndef _NO_SHARED_BUILD
35 ALL_TAGS := release-shared
36 else
37 ALL_TAGS :=
38 endif
39
40 ifdef _STATIC_BUILD
41 ALL_TAGS += release-static
42 endif
43
44 ifndef _NO_DBG_BUILD
45 ifndef _NO_SHARED_BUILD
46 ALL_TAGS += dbg-shared
47 endif
48 ifdef _STATIC_BUILD
49 ALL_TAGS += dbg-static
50 endif
51 endif
52
53 ifndef _NO_STLDBG_BUILD
54 ifndef WITHOUT_STLPORT
55 ifndef _NO_SHARED_BUILD
56 ALL_TAGS += stldbg-shared
57 endif
58 ifdef _STATIC_BUILD
59 ALL_TAGS += stldbg-static
60 endif
61 endif
62 endif
63
64 endif
65
66 all: $(OUTPUT_DIRS) $(ALL_TAGS)
67
68 ifndef WITHOUT_STLPORT
69 all-static: release-static dbg-static stldbg-static
70 all-shared: release-shared dbg-shared stldbg-shared
71 else
72 all-static: release-static dbg-static
73 all-shared: release-shared dbg-shared
74 endif
75
76 ifdef WITHOUT_STLPORT
77 NOT_USE_NOSTDLIB := 1
78 endif
79
80 ifndef OSNAME
81 # identify OS and build date
82 include ${RULESBASE}/gmake/sysid.mak
83 endif
84 # OS-specific definitions, like ln, install, etc. (guest host)
85 include ${RULESBASE}/gmake/$(BUILD_OSNAME)/sys.mak
86 # target OS-specific definitions, like ar, etc.
87 include ${RULESBASE}/gmake/$(OSNAME)/targetsys.mak
88 # Extern projects for everyday usage and settings for ones
89 include ${RULESBASE}/gmake/extern.mak
90 # compiler, compiler options
91 include ${RULESBASE}/gmake/$(COMPILER_NAME).mak
92 # rules to make dirs for targets
93 include ${RULESBASE}/gmake/targetdirs.mak
94
95 # os-specific local rules (or other project-specific definitions)
96 -include specific.mak
97
98 LDFLAGS += ${EXTRA_LDFLAGS}
99
100 # derive common targets (*.o, *.d),
101 # build rules (including output catalogs)
102 include ${RULESBASE}/gmake/targets.mak
103 # dependency
104 include ${RULESBASE}/gmake/depend.mak
105
106 # general clean
107 include ${RULESBASE}/gmake/clean.mak
108
109 # if target is library, rules for library
110 ifdef LIBNAME
111 include ${RULESBASE}/gmake/lib/top.mak
112 endif
113
114 # if target is program, rules for executable
115 ifdef PRGNAME
116 include ${RULESBASE}/gmake/app/top.mak
117 else
118 ifdef PRGNAMES
119 include ${RULESBASE}/gmake/app/top.mak
120 endif
121 endif
122
123 .PHONY: $(PHONY)