update dev300-m58
[ooovba.git] / vcl / util / makefile.mk
blob8b3a6a99019dc6befa400c5bf46a1cc96aa2d73a
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 # This file is part of OpenOffice.org.
11 # OpenOffice.org is free software: you can redistribute it and/or modify
12 # it under the terms of the GNU Lesser General Public License version 3
13 # only, as published by the Free Software Foundation.
15 # OpenOffice.org is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU Lesser General Public License version 3 for more details
19 # (a copy is included in the LICENSE file that accompanied this code).
21 # You should have received a copy of the GNU Lesser General Public License
22 # version 3 along with OpenOffice.org. If not, see
23 # <http://www.openoffice.org/license.html>
24 # for a copy of the LGPLv3 License.
26 #*************************************************************************
28 PRJ=..
30 PRJNAME=vcl
31 TARGET=vcl
32 TARGETTYPE=GUI
33 USE_DEFFILE=TRUE
35 .IF "$(SNDFILE_LIBS)"!=""
36 SNDFILELIB=$(SNDFILE_LIBS)
37 .ENDIF
39 # --- Settings -----------------------------------------------------------
41 .INCLUDE : settings.mk
42 .INCLUDE : makefile.pmk
43 .INCLUDE : makefile2.pmk
45 .IF "$(OS)" == "SOLARIS"
46 .IF "$(CPUNAME)" == "SPARC" && "$(CPU)" == "U"
47 LINKFLAGSRUNPATH_OOO := -R/usr/sfw/lib/64 $(LINKFLAGSRUNPATH_OOO)
48 .ELSE
49 LINKFLAGSRUNPATH_OOO := -R/usr/sfw/lib $(LINKFLAGSRUNPATH_OOO)
50 .ENDIF
51 .ENDIF
53 # --- Allgemein ----------------------------------------------------------
55 HXXDEPNLST= $(INC)$/vcl$/accel.hxx \
56 $(INC)$/vcl$/animate.hxx \
57 $(INC)$/vcl$/apptypes.hxx \
58 $(INC)$/vcl$/bitmap.hxx \
59 $(INC)$/vcl$/bitmapex.hxx \
60 $(INC)$/vcl$/bmpacc.hxx \
61 $(INC)$/vcl$/btndlg.hxx \
62 $(INC)$/vcl$/button.hxx \
63 $(INC)$/vcl$/ctrl.hxx \
64 $(INC)$/vcl$/cursor.hxx \
65 $(INC)$/vcl$/cmdevt.hxx \
66 $(INC)$/vcl$/decoview.hxx \
67 $(INC)$/vcl$/dialog.hxx \
68 $(INC)$/vcl$/dllapi.h \
69 $(INC)$/vcl$/dockwin.hxx \
70 $(INC)$/vcl$/edit.hxx \
71 $(INC)$/vcl$/event.hxx \
72 $(INC)$/vcl$/field.hxx \
73 $(INC)$/vcl$/fixed.hxx \
74 $(INC)$/vcl$/floatwin.hxx \
75 $(INC)$/vcl$/font.hxx \
76 $(INC)$/vcl$/fontcvt.hxx \
77 $(INC)$/vcl$/floatwin.hxx \
78 $(INC)$/vcl$/graph.hxx \
79 $(INC)$/vcl$/group.hxx \
80 $(INC)$/vcl$/help.hxx \
81 $(INC)$/vcl$/jobset.hxx \
82 $(INC)$/vcl$/keycodes.hxx \
83 $(INC)$/vcl$/keycod.hxx \
84 $(INC)$/vcl$/image.hxx \
85 $(INC)$/vcl$/lstbox.h \
86 $(INC)$/vcl$/lstbox.hxx \
87 $(INC)$/vcl$/mapmod.hxx \
88 $(INC)$/vcl$/metaact.hxx \
89 $(INC)$/vcl$/menu.hxx \
90 $(INC)$/vcl$/menubtn.hxx \
91 $(INC)$/vcl$/metric.hxx \
92 $(INC)$/vcl$/morebtn.hxx \
93 $(INC)$/vcl$/msgbox.hxx \
94 $(INC)$/vcl$/octree.hxx \
95 $(INC)$/vcl$/outdev.hxx \
96 $(INC)$/vcl$/pointr.hxx \
97 $(INC)$/vcl$/ptrstyle.hxx \
98 $(INC)$/vcl$/prntypes.hxx \
99 $(INC)$/vcl$/print.hxx \
100 $(INC)$/vcl$/prndlg.hxx \
101 $(INC)$/vcl$/region.hxx \
102 $(INC)$/vcl$/salbtype.hxx \
103 $(INC)$/vcl$/scrbar.hxx \
104 $(INC)$/vcl$/slider.hxx \
105 $(INC)$/vcl$/seleng.hxx \
106 $(INC)$/vcl$/settings.hxx \
107 $(INC)$/vcl$/sound.hxx \
108 $(INC)$/vcl$/sndstyle.hxx \
109 $(INC)$/vcl$/split.hxx \
110 $(INC)$/vcl$/splitwin.hxx \
111 $(INC)$/vcl$/spin.hxx \
112 $(INC)$/vcl$/spinfld.hxx \
113 $(INC)$/vcl$/status.hxx \
114 $(INC)$/vcl$/stdtext.hxx \
115 $(INC)$/vcl$/sv.h \
116 $(INC)$/vcl$/svapp.hxx \
117 $(INC)$/vcl$/syschild.hxx \
118 $(INC)$/vcl$/sysdata.hxx \
119 $(INC)$/vcl$/syswin.hxx \
120 $(INC)$/vcl$/tabctrl.hxx \
121 $(INC)$/vcl$/tabdlg.hxx \
122 $(INC)$/vcl$/tabpage.hxx \
123 $(INC)$/vcl$/toolbox.hxx \
124 $(INC)$/vcl$/timer.hxx \
125 $(INC)$/vcl$/virdev.hxx \
126 $(INC)$/vcl$/wall.hxx \
127 $(INC)$/vcl$/waitobj.hxx \
128 $(INC)$/vcl$/wintypes.hxx \
129 $(INC)$/vcl$/window.hxx \
130 $(INC)$/vcl$/wrkwin.hxx
132 .IF "$(linkinc)" != ""
133 SHL11FILE= $(MISC)$/app.slo
134 SHL12FILE= $(MISC)$/gdi.slo
135 SHL13FILE= $(MISC)$/win.slo
136 SHL14FILE= $(MISC)$/ctrl.slo
137 #SHL15FILE= $(MISC)$/ex.slo
138 SHL16FILE= $(MISC)$/salapp.slo
139 SHL17FILE= $(MISC)$/salwin.slo
140 SHL18FILE= $(MISC)$/salgdi.slo
141 .ENDIF
143 LIB1TARGET= $(SLB)$/$(TARGET).lib
144 LIB1FILES= $(SLB)$/app.lib \
145 $(SLB)$/gdi.lib \
146 $(SLB)$/win.lib \
147 $(SLB)$/ctrl.lib \
148 $(SLB)$/helper.lib \
149 $(SLB)$/fontsubset.lib \
150 $(SLB)$/components.lib
152 .IF "$(GUI)" == "UNX" && "$(GUIBASE)"!="aqua"
153 LIB1FILES+= $(SLB)$/salplug.lib \
154 $(SLB)$/fontman.lib \
155 $(SLB)$/printer.lib
156 .ELSE
157 LIB1FILES+= \
158 $(SLB)$/salwin.lib \
159 $(SLB)$/salgdi.lib \
160 $(SLB)$/salapp.lib
161 .ENDIF
163 SHL1TARGET= vcl$(DLLPOSTFIX)
164 SHL1IMPLIB= ivcl
165 SHL1STDLIBS+=\
166 $(SOTLIB) \
167 $(UNOTOOLSLIB) \
168 $(TOOLSLIB) \
169 $(I18NPAPERLIB) \
170 $(I18NISOLANGLIB) \
171 $(I18NUTILLIB) \
172 $(COMPHELPERLIB) \
173 $(UCBHELPERLIB) \
174 $(CPPUHELPERLIB) \
175 $(CPPULIB) \
176 $(VOSLIB) \
177 $(SALLIB) \
178 $(BASEGFXLIB) \
179 $(ICUUCLIB) \
180 $(ICUDATALIB) \
181 $(ICULELIB) \
182 $(JVMACCESSLIB)
184 .IF "$(GUI)" == "UNX"
185 .IF "$(ENABLE_GRAPHITE)" != ""
186 .IF "$(SYSTEM_GRAPHITE)" == "YES"
187 SHL1STDLIBS+= $(GRAPHITE_LIBS)
188 .ELSE
189 SHL1STDLIBS+= $(SOLARVERSION)/$(INPATH)/lib$(UPDMINOREXT)/libgraphite.a
190 .ENDIF
191 .ENDIF
192 .ENDIF
193 SHL1USE_EXPORTS=name
195 .IF "$(GUIBASE)"=="aqua"
196 SHL1STDLIBS+= \
197 $(BASEBMPLIB) \
198 -lAppleRemote$(DLLPOSTFIX)
200 LIB1FILES+= \
201 $(SLB)$/sala11y.lib
202 .ENDIF
204 .IF "$(USE_BUILTIN_RASTERIZER)"!=""
205 LIB1FILES += $(SLB)$/glyphs.lib
206 SHL1STDLIBS+= $(FREETYPELIB)
207 .ELSE
208 .IF "$(ENABLE_GRAPHITE)" == "TRUE"
209 LIB1FILES += $(SLB)$/glyphs.lib
210 .ENDIF
211 .ENDIF # USE_BUILTIN_RASTERIZER
213 SHL1LIBS= $(LIB1TARGET)
214 .IF "$(GUI)"!="UNX"
215 .IF "$(COM)"!="GCC"
216 #SHL1OBJS= $(SLO)$/salshl.obj
217 .ENDIF
218 .ENDIF
220 .IF "$(GUI)" != "UNX"
221 SHL1RES= $(RES)$/salsrc.res
222 .ENDIF
224 SHL1DEF= $(MISC)$/$(SHL1TARGET).def
226 DEF1NAME =$(SHL1TARGET)
227 DEF1DEPN = $(HXXDEPNLST) \
228 $(LIB1TARGET)
229 DEF1DES =VCL
230 DEFLIB1NAME =vcl
232 # --- W32 ----------------------------------------------------------------
234 .IF "$(GUI)" == "WNT"
236 .IF "$(ENABLE_GRAPHITE)" == "TRUE"
237 .IF "$(COM)" == "GCC"
238 SHL1STDLIBS += -lgraphite
239 .ELSE
240 SHL1STDLIBS += graphite_dll.lib
241 .ENDIF
242 .ENDIF
244 SHL1STDLIBS += $(UWINAPILIB) \
245 $(GDI32LIB) \
246 $(GDIPLUSLIB) \
247 $(MSIMG32LIB) \
248 $(WINSPOOLLIB) \
249 $(OLE32LIB) \
250 $(SHELL32LIB) \
251 $(ADVAPI32LIB)
253 SHL1STDLIBS += $(IMM32LIB)
255 .IF "$(GUI)$(COM)$(CPU)" == "WNTMSCI"
256 LINKFLAGSSHL += /ENTRY:LibMain@12
257 .ENDIF
258 .ENDIF
260 # --- OS2 ----------------------------------------------------------------
262 .IF "$(GUI)" == "OS2"
263 STDSHL1 += ft2lib.lib
264 .ENDIF
266 # --- UNX ----------------------------------------------------------------
268 # UNX sal plugins
269 .IF "$(GUI)" == "UNX" && "$(GUIBASE)" != "aqua"
271 # basic pure X11 plugin
272 LIB2TARGET=$(SLB)$/ipure_x
273 LIB2FILES= \
274 $(SLB)$/printergfx.lib \
275 $(SLB)$/salwin.lib \
276 $(SLB)$/salgdi.lib \
277 $(SLB)$/salapp.lib
278 SHL2TARGET=vclplug_gen$(DLLPOSTFIX)
279 SHL2IMPLIB=ipure_x
280 SHL2LIBS=$(LIB2TARGET)
281 SHL2DEPN=$(SHL1IMPLIBN) $(SHL1TARGETN)
283 # libs for generic plugin
284 SHL2STDLIBS=\
285 $(VCLLIB)\
286 $(I18NPAPERLIB) \
287 $(TOOLSLIB) \
288 $(VOSLIB) \
289 $(BASEGFXLIB) \
290 $(SALLIB) \
291 $(CPPULIB)
293 # prepare linking of Xinerama
294 .IF "$(USE_XINERAMA)" != "NO"
296 .IF "$(OS)"=="MACOSX"
297 XINERAMALIBS=-lXinerama
298 .ELSE
299 .IF "$(OS)" != "SOLARIS" || "$(USE_XINERAMA_VERSION)" == "Xorg"
300 .IF "$(XINERAMA_LINK)" == "dynamic"
301 XINERAMALIBS= -lXinerama
302 .ELSE
303 XINERAMALIBS= -Wl,-Bstatic -lXinerama -Wl,-Bdynamic
304 .ENDIF # XINERAMA_LINK == dynamic
305 .ENDIF # OS == SOLARIS
306 .ENDIF # OS == MACOSX
308 SHL2STDLIBS += $(XINERAMALIBS)
309 .ENDIF # USE_XINERAMA != NO
311 .IF "$(XRENDER_LINK)" == "YES"
312 SHL2STDLIBS+=`pkg-config --libs xrender`
313 .ENDIF
315 .IF "$(GUIBASE)"=="unx"
317 SHL2STDLIBS += -lXext -lXtst -lSM -lICE -lX11
318 .IF "$(OS)"!="MACOSX" && "$(OS)"!="FREEBSD" && "$(OS)"!="NETBSD"
319 # needed by salprnpsp.cxx
320 SHL2STDLIBS+= -ldl
321 .ENDIF
323 .IF "$(ENABLE_RANDR)" != ""
324 .IF "$(XRANDR_DLOPEN)" == "FALSE"
325 SHL2STDLIBS+= $(XRANDR_LIBS)
326 .ENDIF
327 .ENDIF
329 .ENDIF # "$(GUIBASE)"=="unx"
331 # gtk plugin
332 .IF "$(ENABLE_GTK)" != ""
333 PKGCONFIG_MODULES=gtk+-2.0 gthread-2.0
334 .IF "$(ENABLE_DBUS)" != ""
335 PKGCONFIG_MODULES+= dbus-glib-1
336 .ENDIF
337 .INCLUDE: pkg_config.mk
339 LIB4TARGET=$(SLB)$/igtk_plug_
340 LIB4FILES=\
341 $(SLB)$/gtkapp.lib\
342 $(SLB)$/gtka11y.lib \
343 $(SLB)$/gtkgdi.lib\
344 $(SLB)$/gtkwin.lib
346 SHL4TARGET=vclplug_gtk$(DLLPOSTFIX)
347 SHL4IMPLIB=igtk_plug_
348 SHL4LIBS=$(LIB4TARGET)
349 SHL4DEPN=$(SHL1IMPLIBN) $(SHL1TARGETN) $(SHL2IMPLIBN) $(SHL2TARGETN)
350 # libs for gtk plugin
351 SHL4STDLIBS+=$(PKGCONFIG_LIBS:s/ -lpangoxft-1.0//)
352 # hack for faked SO environment
353 .IF "$(PKGCONFIG_ROOT)"!=""
354 SHL4SONAME+=-z nodefs
355 SHL4NOCHECK=TRUE
356 .ENDIF # "$(PKGCONFIG_ROOT)"!=""
359 SHL4STDLIBS+=-l$(SHL2TARGET)
360 SHL4STDLIBS+=\
361 $(VCLLIB) \
362 $(TOOLSLIB) \
363 $(CPPUHELPERLIB) \
364 $(CPPULIB) \
365 $(VOSLIB) \
366 $(SALLIB)
368 .IF "$(ENABLE_RANDR)" != ""
369 .IF "$(XRANDR_DLOPEN)" == "FALSE"
370 SHL4STDLIBS+= $(XRANDR_LIBS)
371 .ENDIF
372 .ENDIF
374 .ENDIF # "$(ENABLE_GTK)" != ""
376 # KDE plugin
377 .IF "$(ENABLE_KDE)" != ""
378 .IF "$(KDE_ROOT)"!=""
379 EXTRALIBPATHS+=-L$(KDE_ROOT)$/lib
380 .ENDIF
381 LIB5TARGET=$(SLB)$/ikde_plug_
382 LIB5FILES=$(SLB)$/kdeplug.lib
383 SHL5TARGET=vclplug_kde$(DLLPOSTFIX)
384 SHL5IMPLIB=ikde_plug_
385 SHL5LIBS=$(LIB5TARGET)
386 SHL5DEPN=$(SHL2TARGETN)
387 # libs for KDE plugin
388 SHL5LINKFLAGS+=$(KDE_LIBS)
389 SHL5STDLIBS+=-l$(SHL2TARGET)
390 SHL5STDLIBS+=\
391 $(VCLLIB) \
392 $(TOOLSLIB) \
393 $(VOSLIB) \
394 $(SALLIB)
396 .IF "$(ENABLE_RANDR)" != ""
397 .IF "$(XRANDR_DLOPEN)" == "FALSE"
398 SHL5STDLIBS+= $(XRANDR_LIBS)
399 .ENDIF
400 .ENDIF
402 .ENDIF # "$(ENABLE_KDE)" != ""
404 # KDE4 plugin
405 .IF "$(ENABLE_KDE4)" != ""
406 .IF "$(KDE4_ROOT)"!=""
407 EXTRALIBPATHS+=-L$(KDE4_ROOT)$/lib
408 .ENDIF
409 LIB6TARGET=$(SLB)$/ikde4_plug_
410 LIB6FILES=$(SLB)$/kde4plug.lib
411 SHL6TARGET=vclplug_kde4$(DLLPOSTFIX)
412 SHL6IMPLIB=ikde4_plug_
413 SHL6LIBS=$(LIB6TARGET)
414 SHL6DEPN=$(SHL2TARGETN)
415 # libs for KDE4 plugin
416 SHL6LINKFLAGS+=$(KDE4_LIBS)
417 SHL6STDLIBS+=-l$(SHL2TARGET)
418 SHL6STDLIBS+=\
419 $(VCLLIB) \
420 $(PSPLIB) \
421 $(TOOLSLIB) \
422 $(VOSLIB) \
423 $(SALLIB)
425 .IF "$(ENABLE_RANDR)" != ""
426 .IF "$(XRANDR_DLOPEN)" == "FALSE"
427 SHL6STDLIBS+= $(XRANDR_LIBS)
428 .ENDIF
429 .ENDIF
431 .ENDIF # "$(ENABLE_KDE4)" != ""
433 .ENDIF # UNX
435 # --- Allgemein ----------------------------------------------------------
437 .INCLUDE : target.mk