1 #*************************************************************************
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 # Copyright 2000, 2010 Oracle and/or its affiliates.
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 #*************************************************************************
36 .IF
"$(SNDFILE_LIBS)"!=""
37 SNDFILELIB
=$(SNDFILE_LIBS
)
40 # --- Settings -----------------------------------------------------------
42 .INCLUDE
: settings.mk
43 .INCLUDE
: makefile.pmk
44 .INCLUDE
: makefile2.pmk
46 .IF
"$(OS)" == "SOLARIS"
47 .IF
"$(CPUNAME)" == "SPARC" && "$(CPU)" == "U"
48 LINKFLAGSRUNPATH_OOO
:= -R
/usr
/sfw
/lib
/64 $(LINKFLAGSRUNPATH_OOO
)
50 LINKFLAGSRUNPATH_OOO
:= -R
/usr
/sfw
/lib
$(LINKFLAGSRUNPATH_OOO
)
54 # --- Allgemein ----------------------------------------------------------
56 HXXDEPNLST
= $(INC
)$/vcl
$/accel.hxx \
57 $(INC
)$/vcl
$/animate.hxx \
58 $(INC
)$/vcl
$/apptypes.hxx \
59 $(INC
)$/vcl
$/bitmap.hxx \
60 $(INC
)$/vcl
$/bitmapex.hxx \
61 $(INC
)$/vcl
$/bmpacc.hxx \
62 $(INC
)$/vcl
$/btndlg.hxx \
63 $(INC
)$/vcl
$/button.hxx \
64 $(INC
)$/vcl
$/ctrl.hxx \
65 $(INC
)$/vcl
$/cursor.hxx \
66 $(INC
)$/vcl
$/cmdevt.hxx \
67 $(INC
)$/vcl
$/decoview.hxx \
68 $(INC
)$/vcl
$/dialog.hxx \
69 $(INC
)$/vcl
$/dllapi.h \
70 $(INC
)$/vcl
$/dockwin.hxx \
71 $(INC
)$/vcl
$/edit.hxx \
72 $(INC
)$/vcl
$/event.hxx \
73 $(INC
)$/vcl
$/field.hxx \
74 $(INC
)$/vcl
$/fixed.hxx \
75 $(INC
)$/vcl
$/floatwin.hxx \
76 $(INC
)$/vcl
$/font.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 \
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
$/window.hxx \
129 $(INC
)$/vcl
$/wrkwin.hxx
131 .IF
"$(linkinc)" != ""
132 SHL11FILE
= $(MISC
)$/app.slo
133 SHL12FILE
= $(MISC
)$/gdi.slo
134 SHL13FILE
= $(MISC
)$/win.slo
135 SHL14FILE
= $(MISC
)$/ctrl.slo
136 #SHL15FILE= $(MISC)$/ex.slo
137 SHL16FILE
= $(MISC
)$/salapp.slo
138 SHL17FILE
= $(MISC
)$/salwin.slo
139 SHL18FILE
= $(MISC
)$/salgdi.slo
142 LIB1TARGET
= $(SLB
)$/$(TARGET
).lib
143 LIB1FILES
= $(SLB
)$/app.lib \
148 $(SLB
)$/fontsubset.lib \
149 $(SLB
)$/components.lib
151 .IF
"$(GUI)" == "UNX" && "$(GUIBASE)"!="aqua"
152 LIB1FILES
+= $(SLB
)$/salplug.lib \
153 $(SLB
)$/fontman.lib \
160 .IF
"$(GUIBASE)" == "aqua"
161 LIB1FILES
+= $(SLB
)$/dtransaqua.lib
165 SHL1TARGET
= vcl
$(DLLPOSTFIX
)
186 .IF
"$(GUI)" == "UNX"
187 .IF
"$(ENABLE_GRAPHITE)" != ""
188 .IF
"$(SYSTEM_GRAPHITE)" == "YES"
189 SHL1STDLIBS
+= $(GRAPHITE_LIBS
)
191 SHL1STDLIBS
+= $(SOLARVERSION
)/$(INPATH
)/lib
$(UPDMINOREXT
)/libgraphite.a
197 .IF
"$(GUIBASE)"=="aqua"
200 -lAppleRemote
$(DLLPOSTFIX
) \
207 .IF
"$(USE_BUILTIN_RASTERIZER)"!=""
208 LIB1FILES
+= $(SLB
)$/glyphs.lib
209 SHL1STDLIBS
+= $(FREETYPELIB
)
211 .IF
"$(ENABLE_GRAPHITE)" == "TRUE"
212 LIB1FILES
+= $(SLB
)$/glyphs.lib
214 .ENDIF
# USE_BUILTIN_RASTERIZER
216 SHL1LIBS
= $(LIB1TARGET
)
219 #SHL1OBJS= $(SLO)$/salshl.obj
223 .IF
"$(GUI)" != "UNX"
224 SHL1RES
= $(RES
)$/salsrc.res
227 SHL1DEF
= $(MISC
)$/$(SHL1TARGET
).def
229 DEF1NAME
=$(SHL1TARGET
)
230 DEF1DEPN
= $(HXXDEPNLST
) \
235 # --- W32 ----------------------------------------------------------------
237 .IF
"$(GUI)" == "WNT"
239 .IF
"$(ENABLE_GRAPHITE)" == "TRUE"
240 .IF
"$(COM)" == "GCC"
241 SHL1STDLIBS
+= -lgraphite
243 SHL1STDLIBS
+= graphite_dll.lib
247 SHL1STDLIBS
+= $(UWINAPILIB
) \
256 SHL1STDLIBS
+= $(IMM32LIB
)
258 .IF
"$(GUI)$(COM)$(CPU)" == "WNTMSCI"
259 LINKFLAGSSHL
+= /ENTRY
:LibMain@
12
263 # --- OS2 ----------------------------------------------------------------
265 .IF
"$(GUI)" == "OS2"
266 STDSHL1
+= ft2lib.lib
269 # --- UNX ----------------------------------------------------------------
272 .IF
"$(GUI)" == "UNX" && "$(GUIBASE)" != "aqua"
275 LIB7TARGET
=$(SLB
)$/idet
276 LIB7FILES
=$(SLB
)$/dtdetect.lib
277 SHL7TARGET
=desktop_detector
$(DLLPOSTFIX
)
282 SHL7LIBS
=$(LIB7TARGET
)
284 # basic pure X11 plugin
285 LIB2TARGET
=$(SLB
)$/ipure_x
287 $(SLB
)$/dtransX11.lib \
288 $(SLB
)$/printergfx.lib \
292 SHL2TARGET
=vclplug_gen
$(DLLPOSTFIX
)
294 SHL2LIBS
=$(LIB2TARGET
)
295 SHL2DEPN
=$(SHL1IMPLIBN
) $(SHL1TARGETN
)
297 # libs for generic plugin
311 # prepare linking of Xinerama
312 .IF
"$(USE_XINERAMA)" != "NO"
314 .IF
"$(OS)"=="MACOSX" ||
"$(OS)$(CPU)" == "LINUXX"
315 XINERAMALIBS
=-lXinerama
317 .IF
"$(OS)" != "SOLARIS" ||
"$(USE_XINERAMA_VERSION)" == "Xorg"
318 .IF
"$(XINERAMA_LINK)" == "dynamic"
319 XINERAMALIBS
= -lXinerama
321 XINERAMALIBS
= -Wl
,-Bstatic
-lXinerama
-Wl
,-Bdynamic
322 .ENDIF
# XINERAMA_LINK == dynamic
323 .ENDIF
# OS == SOLARIS
324 .ENDIF
# OS == MACOSX
326 SHL2STDLIBS
+= $(XINERAMALIBS
)
327 .ENDIF
# USE_XINERAMA != NO
329 .IF
"$(XRENDER_LINK)" == "YES"
330 SHL2STDLIBS
+=`pkg-config --libs xrender`
333 .IF
"$(GUIBASE)"=="unx"
335 SHL2STDLIBS
+= -lXext
-lSM
-lICE
-lX11
336 .IF
"$(OS)"!="MACOSX" && "$(OS)"!="FREEBSD" && "$(OS)"!="NETBSD"
337 # needed by salprnpsp.cxx
341 .IF
"$(ENABLE_RANDR)" != ""
342 .IF
"$(XRANDR_DLOPEN)" == "FALSE"
343 SHL2STDLIBS
+= $(XRANDR_LIBS
)
347 .ENDIF
# "$(GUIBASE)"=="unx"
350 .IF
"$(ENABLE_GTK)" != ""
351 PKGCONFIG_MODULES
=gtk
+-2.0 gthread-2.0
352 .IF
"$(ENABLE_DBUS)" != ""
353 PKGCONFIG_MODULES
+= dbus-glib-1
355 .INCLUDE
: pkg_config.mk
357 LIB4TARGET
=$(SLB
)$/igtk_plug_
360 $(SLB
)$/gtka11y.lib \
364 SHL4TARGET
=vclplug_gtk
$(DLLPOSTFIX
)
365 SHL4IMPLIB
=igtk_plug_
366 SHL4LIBS
=$(LIB4TARGET
)
367 SHL4DEPN
=$(SHL1IMPLIBN
) $(SHL1TARGETN
) $(SHL2IMPLIBN
) $(SHL2TARGETN
)
368 # libs for gtk plugin
369 SHL4STDLIBS
+=$(PKGCONFIG_LIBS
:s
/ -lpangoxft-1.0
//)
370 # hack for faked SO environment
371 .IF
"$(PKGCONFIG_ROOT)"!=""
372 SHL4SONAME
+=-z nodefs
374 .ENDIF
# "$(PKGCONFIG_ROOT)"!=""
377 SHL4STDLIBS
+=-l
$(SHL2TARGET
)
387 .IF
"$(ENABLE_RANDR)" != ""
388 .IF
"$(XRANDR_DLOPEN)" == "FALSE"
389 SHL4STDLIBS
+= $(XRANDR_LIBS
)
393 .ENDIF
# "$(ENABLE_GTK)" != ""
396 .IF
"$(ENABLE_KDE)" != ""
397 .IF
"$(KDE_ROOT)"!=""
398 EXTRALIBPATHS
+=-L
$(KDE_ROOT
)$/lib
399 .IF
"$(OS)$(CPU)" == "LINUXX"
400 EXTRALIBPATHS
+=-L
$(KDE_ROOT
)$/lib64
403 LIB5TARGET
=$(SLB
)$/ikde_plug_
404 LIB5FILES
=$(SLB
)$/kdeplug.lib
405 SHL5TARGET
=vclplug_kde
$(DLLPOSTFIX
)
406 SHL5IMPLIB
=ikde_plug_
407 SHL5LIBS
=$(LIB5TARGET
)
408 SHL5DEPN
=$(SHL2TARGETN
)
409 # libs for KDE plugin
410 SHL5LINKFLAGS
+=$(KDE_LIBS
)
411 SHL5STDLIBS
+=-l
$(SHL2TARGET
)
419 .IF
"$(ENABLE_RANDR)" != ""
420 .IF
"$(XRANDR_DLOPEN)" == "FALSE"
421 SHL5STDLIBS
+= $(XRANDR_LIBS
)
425 .ENDIF
# "$(ENABLE_KDE)" != ""
428 .IF
"$(ENABLE_KDE4)" != ""
429 .IF
"$(KDE4_ROOT)"!=""
430 EXTRALIBPATHS
+=-L
$(KDE4_ROOT
)$/lib
432 LIB6TARGET
=$(SLB
)$/ikde4_plug_
433 LIB6FILES
=$(SLB
)$/kde4plug.lib
434 SHL6TARGET
=vclplug_kde4
$(DLLPOSTFIX
)
435 SHL6IMPLIB
=ikde4_plug_
436 SHL6LIBS
=$(LIB6TARGET
)
437 SHL6DEPN
=$(SHL2TARGETN
)
438 # libs for KDE4 plugin
439 SHL6LINKFLAGS
+=$(KDE4_LIBS
)
440 SHL6STDLIBS
+=-l
$(SHL2TARGET
)
449 .IF
"$(ENABLE_RANDR)" != ""
450 .IF
"$(XRANDR_DLOPEN)" == "FALSE"
451 SHL6STDLIBS
+= $(XRANDR_LIBS
)
455 .ENDIF
# "$(ENABLE_KDE4)" != ""
459 # --- Allgemein ----------------------------------------------------------
463 ALLTAR
: $(MISC
)/vcl.component
465 .IF
"$(OS)" == "MACOSX"
466 my_platform
= .macosx
467 .ELIF
"$(OS)" == "WNT"
468 my_platform
= .windows
471 $(MISC
)/vcl.component .ERRREMOVE
: $(SOLARENV
)/bin
/createcomponent.xslt \
473 $(XSLTPROC
) --nonet
--stringparam uri \
474 '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o
$@ \
475 $(SOLARENV
)/bin
/createcomponent.xslt vcl
$(my_platform
).component