merge the formfield patch from ooo-build
[ooovba.git] / sal / rtl / source / makefile.mk
blobc2397485aa127227efa8b655d1d6f22b155ce15e
1 #*************************************************************************
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # Copyright 2008 by Sun Microsystems, Inc.
7 # OpenOffice.org - a multi-platform office productivity suite
9 # $RCSfile: makefile.mk,v $
11 # $Revision: 1.37 $
13 # This file is part of OpenOffice.org.
15 # OpenOffice.org is free software: you can redistribute it and/or modify
16 # it under the terms of the GNU Lesser General Public License version 3
17 # only, as published by the Free Software Foundation.
19 # OpenOffice.org is distributed in the hope that it will be useful,
20 # but WITHOUT ANY WARRANTY; without even the implied warranty of
21 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 # GNU Lesser General Public License version 3 for more details
23 # (a copy is included in the LICENSE file that accompanied this code).
25 # You should have received a copy of the GNU Lesser General Public License
26 # version 3 along with OpenOffice.org. If not, see
27 # <http://www.openoffice.org/license.html>
28 # for a copy of the LGPLv3 License.
30 #*************************************************************************
32 PRJ=..$/..
34 PRJNAME=sal
35 TARGET=cpprtl
36 ENABLE_EXCEPTIONS=TRUE
37 USE_LDUMP2=TRUE
39 PROJECTPCH4DLL=TRUE
40 PROJECTPCH=cont_pch
41 PROJECTPCHSOURCE=cont_pch
43 .IF "$(GUI)" == "OS2"
44 STL_OS2_BUILDING=1
45 .ENDIF
47 TARGETTYPE=CUI
49 # --- Settings -----------------------------------------------------
51 .INCLUDE : settings.mk
53 .IF "$(ALLOC)" == "SYS_ALLOC" || "$(ALLOC)" == "TCMALLOC"
54 CDEFS+= -DFORCE_SYSALLOC
55 .ENDIF
57 CFLAGS+= $(LFS_CFLAGS)
58 CXXFLAGS+= $(LFS_CFLAGS)
60 # --- Files --------------------------------------------------------
62 # safe that way: gen_makefile doesn't want it,
63 # no other link target here
64 UWINAPILIB:=
66 .IF "$(header)" == ""
68 ALWAYSDBGFILES=$(SLO)$/debugprint.obj
70 .IF "$(ALWAYSDBGFILES)" != ""
71 ALWAYSDBGTARGET=do_it_alwaysdebug
72 .ENDIF
74 SLOFILES= \
75 $(SLO)$/memory.obj \
76 $(SLO)$/cipher.obj \
77 $(SLO)$/crc.obj \
78 $(SLO)$/digest.obj \
79 $(SLO)$/random.obj \
80 $(SLO)$/locale.obj \
81 $(SLO)$/strimp.obj \
82 $(SLO)$/hash.obj \
83 $(SLO)$/string.obj \
84 $(SLO)$/ustring.obj \
85 $(SLO)$/strbuf.obj \
86 $(SLO)$/ustrbuf.obj \
87 $(SLO)$/uuid.obj \
88 $(SLO)$/rtl_process.obj \
89 $(SLO)$/byteseq.obj \
90 $(SLO)$/uri.obj \
91 $(SLO)$/bootstrap.obj \
92 $(SLO)$/cmdargs.obj \
93 $(SLO)$/unload.obj \
94 $(SLO)$/logfile.obj \
95 $(SLO)$/tres.obj \
96 $(SLO)$/debugprint.obj \
97 $(SLO)$/math.obj \
98 $(SLO)$/alloc_global.obj\
99 $(SLO)$/alloc_cache.obj \
100 $(SLO)$/alloc_arena.obj
102 .IF "$(OS)"=="MACOSX"
103 SLOFILES+=$(SLO)$/memory_fini.obj
104 .ENDIF
107 #.IF "$(UPDATER)"=="YES"
108 OBJFILES= \
109 $(OBJ)$/memory.obj \
110 $(OBJ)$/cipher.obj \
111 $(OBJ)$/crc.obj \
112 $(OBJ)$/digest.obj \
113 $(OBJ)$/random.obj \
114 $(OBJ)$/locale.obj \
115 $(OBJ)$/strimp.obj \
116 $(OBJ)$/hash.obj \
117 $(OBJ)$/string.obj \
118 $(OBJ)$/ustring.obj \
119 $(OBJ)$/strbuf.obj \
120 $(OBJ)$/ustrbuf.obj \
121 $(OBJ)$/uuid.obj \
122 $(OBJ)$/rtl_process.obj \
123 $(OBJ)$/byteseq.obj \
124 $(OBJ)$/uri.obj \
125 $(OBJ)$/bootstrap.obj \
126 $(OBJ)$/cmdargs.obj \
127 $(OBJ)$/unload.obj \
128 $(OBJ)$/logfile.obj \
129 $(OBJ)$/tres.obj \
130 $(OBJ)$/math.obj \
131 $(OBJ)$/alloc_global.obj\
132 $(OBJ)$/alloc_cache.obj \
133 $(OBJ)$/alloc_arena.obj
135 .IF "$(OS)"=="MACOSX"
136 OBJFILES+=$(OBJ)$/memory_fini.obj
137 .ENDIF
140 APP1TARGET=gen_makefile
141 APP1OBJS=$(SLO)$/gen_makefile.obj
142 APP1LIBSALCPPRT=
143 APP1RPATH=NONE
145 # --- Extra objs ----------------------------------------------------
147 .IF "$(OS)"=="LINUX" || "$(OS)"=="OS2"
150 # This part builds a second version of alloc.c, with
151 # FORCE_SYSALLOC defined. Is later used in util/makefile.mk
152 # to build a tiny replacement lib to LD_PRELOAD into the
153 # office, enabling e.g. proper valgrinding.
156 SECOND_BUILD=SYSALLOC
157 SYSALLOC_SLOFILES= $(SLO)$/alloc_global.obj
158 SYSALLOCCDEFS+=-DFORCE_SYSALLOC
160 .ENDIF # .IF "$(OS)"=="LINUX"
162 #.ENDIF
164 .ENDIF
166 # --- Makefile snippet --------------------------------------------
168 # used by e.g. update info file
169 BOOTSTRAPMK = $(OUT)$/inc$/rtlbootstrap.mk
171 # --- Targets ------------------------------------------------------
173 .IF "$(ALWAYSDBG_FLAG)"==""
174 TARGETDEPS+=$(ALWAYSDBGTARGET)
175 .ENDIF
177 .INCLUDE : target.mk
179 .IF "$(ALWAYSDBGTARGET)" != ""
180 .IF "$(ALWAYSDBG_FLAG)" == ""
181 # --------------------------------------------------
182 # - ALWAYSDBG - files always compiled with debugging
183 # --------------------------------------------------
184 $(ALWAYSDBGTARGET):
185 @echo --- ALWAYSDBGFILES ---
186 @dmake $(MFLAGS) $(MAKEFILE) debug=true $(ALWAYSDBGFILES) ALWAYSDBG_FLAG=TRUE $(CALLMACROS)
187 @echo --- ALWAYSDBGFILES OVER ---
189 $(ALWAYSDBGFILES):
190 @echo --- ALWAYSDBG ---
191 @dmake $(MFLAGS) $(MAKEFILE) debug=true ALWAYSDBG_FLAG=TRUE $(CALLMACROS) $@
192 @echo --- ALWAYSDBG OVER ---
194 .ENDIF
195 .ENDIF
198 ALLTAR : $(BOOTSTRAPMK)
200 $(BOOTSTRAPMK) : $(APP1TARGETN)
201 $(AUGMENT_LIBRARY_PATH) $< > $@