xref: /trunk/main/svx/Library_svxcore.mk (revision edae2895)
1#**************************************************************
2#
3#  Licensed to the Apache Software Foundation (ASF) under one
4#  or more contributor license agreements.  See the NOTICE file
5#  distributed with this work for additional information
6#  regarding copyright ownership.  The ASF licenses this file
7#  to you under the Apache License, Version 2.0 (the
8#  "License"); you may not use this file except in compliance
9#  with the License.  You may obtain a copy of the License at
10#
11#    http://www.apache.org/licenses/LICENSE-2.0
12#
13#  Unless required by applicable law or agreed to in writing,
14#  software distributed under the License is distributed on an
15#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16#  KIND, either express or implied.  See the License for the
17#  specific language governing permissions and limitations
18#  under the License.
19#
20#**************************************************************
21
22
23
24$(eval $(call gb_Library_Library,svxcore))
25
26$(eval $(call gb_Library_set_componentfile,svxcore,svx/util/svxcore))
27
28$(eval $(call gb_Library_add_sdi_headers,svxcore,svx/sdi/svxslots))
29
30$(eval $(call gb_Library_add_package_headers,svxcore,\
31	svx_inc \
32	svx_sdi \
33))
34
35$(eval $(call gb_Library_add_api,svxcore,\
36	udkapi \
37	offapi \
38))
39
40$(eval $(call gb_Library_set_include,svxcore,\
41	-I$(SRCDIR)/svx/inc \
42	-I$(SRCDIR)/svx/inc/pch \
43	-I$(SRCDIR)/svx/source/inc \
44	$$(INCLUDE) \
45	-I$(WORKDIR)/SdiTarget/svx/sdi \
46))
47
48#BOOST switch in customshapes
49#dialog:
50#.IF "$(GUI)"=="WNT"
51#CFLAGS+= -DUNICODE -D_UNICODE
52#.ENDIF
53
54$(eval $(call gb_Library_add_defs,svxcore,\
55	-DSVX_DLLIMPLEMENTATION \
56	-DBOOST_SPIRIT_USE_OLD_NAMESPACE \
57))
58
59$(eval $(call gb_Library_add_linked_libs,svxcore,\
60	avmedia \
61	basegfx \
62	sb \
63	comphelper \
64	cppuhelper \
65	cppu \
66	drawinglayer \
67	editeng \
68	fwe \
69	i18nisolang1 \
70	lng \
71	sal \
72	sfx \
73	sot \
74    stl \
75	svl \
76	svt \
77	ootk \
78	tl \
79	ucbhelper \
80	utl \
81	vcl \
82	vos3 \
83	xo \
84    $(gb_STDLIBS) \
85))
86
87$(call gb_Library_use_external,svxcore,icuuc)
88
89$(eval $(call gb_Library_add_exception_objects,svxcore,\
90	svx/source/core/coreservices \
91    svx/source/customshapes/EnhancedCustomShape2d \
92    svx/source/customshapes/EnhancedCustomShapeFunctionParser \
93    svx/source/customshapes/EnhancedCustomShapeGeometry \
94    svx/source/customshapes/EnhancedCustomShapeTypeNames \
95    svx/source/dialog/checklbx \
96    svx/source/dialog/dialmgr \
97    svx/source/dialog/dlgutil \
98    svx/source/dialog/framelink \
99    svx/source/dialog/langbox \
100    svx/source/dialog/simptabl \
101    svx/source/dialog/stddlg \
102    svx/source/dialog/svxdlg \
103    svx/source/engine3d/camera3d \
104    svx/source/engine3d/cube3d \
105    svx/source/engine3d/deflt3d \
106    svx/source/engine3d/dragmt3d \
107    svx/source/engine3d/e3dsceneupdater \
108    svx/source/engine3d/e3dundo \
109    svx/source/engine3d/extrud3d \
110    svx/source/engine3d/helperhittest3d \
111    svx/source/engine3d/helperminimaldepth3d \
112    svx/source/engine3d/lathe3d \
113    svx/source/engine3d/obj3d \
114    svx/source/engine3d/objfac3d \
115    svx/source/engine3d/polygn3d \
116    svx/source/engine3d/polysc3d \
117    svx/source/engine3d/scene3d \
118    svx/source/engine3d/sphere3d \
119    svx/source/engine3d/svx3ditems \
120    svx/source/engine3d/view3d \
121    svx/source/engine3d/view3d1 \
122    svx/source/engine3d/viewpt3d2 \
123    svx/source/fmcomp/dbaexchange \
124    svx/source/fmcomp/fmgridcl \
125    svx/source/fmcomp/fmgridif \
126    svx/source/fmcomp/gridcell \
127    svx/source/fmcomp/gridcols \
128    svx/source/fmcomp/gridctrl \
129    svx/source/fmcomp/trace \
130    svx/source/fmcomp/xmlexchg \
131    svx/source/form/dataaccessdescriptor \
132    svx/source/form/datalistener \
133    svx/source/form/datanavi \
134    svx/source/form/dbtoolsclient \
135    svx/source/form/delayedevent \
136    svx/source/form/fmcontrolbordermanager \
137    svx/source/form/fmcontrollayout \
138    svx/source/form/fmdmod \
139    svx/source/form/fmdocumentclassification \
140    svx/source/form/fmdpage \
141    svx/source/form/fmexch \
142    svx/source/form/fmexpl \
143    svx/source/form/fmitems \
144    svx/source/form/fmmodel \
145    svx/source/form/fmobj \
146    svx/source/form/fmpage \
147    svx/source/form/fmpgeimp \
148    svx/source/form/fmscriptingenv \
149    svx/source/form/fmservs \
150    svx/source/form/fmshell \
151    svx/source/form/fmshimp \
152    svx/source/form/fmtextcontroldialogs \
153    svx/source/form/fmtextcontrolfeature \
154    svx/source/form/fmtextcontrolshell \
155    svx/source/form/fmtools \
156    svx/source/form/fmundo \
157    svx/source/form/fmview \
158    svx/source/form/fmvwimp \
159    svx/source/form/formcontrolfactory \
160    svx/source/form/formcontroller \
161    svx/source/form/formcontrolling \
162    svx/source/form/formdispatchinterceptor \
163    svx/source/form/formfeaturedispatcher \
164    svx/source/form/formtoolbars \
165    svx/source/form/legacyformcontroller \
166    svx/source/form/navigatortree \
167    svx/source/form/navigatortreemodel \
168    svx/source/form/ParseContext \
169    svx/source/form/sdbdatacolumn \
170    svx/source/form/sqlparserclient \
171    svx/source/form/stringlistresource \
172    svx/source/form/typeconversionclient \
173    svx/source/form/typemap \
174    svx/source/form/xfm_addcondition \
175    svx/source/gallery2/codec \
176    svx/source/gallery2/galbrws \
177    svx/source/gallery2/galbrws1 \
178    svx/source/gallery2/galbrws2 \
179    svx/source/gallery2/galctrl \
180    svx/source/gallery2/galexpl \
181    svx/source/gallery2/gallery1 \
182    svx/source/gallery2/galmisc \
183    svx/source/gallery2/galobj \
184    svx/source/gallery2/galtheme \
185    svx/source/gallery2/GalleryControl \
186    svx/source/gallery2/GallerySplitter \
187    svx/source/items/chrtitem \
188    svx/source/items/clipfmtitem \
189    svx/source/items/customshapeitem \
190    svx/source/items/drawitem \
191    svx/source/items/e3ditem \
192    svx/source/items/galleryitem \
193    svx/source/items/grfitem \
194    svx/source/sdr/animation/scheduler \
195    svx/source/sdr/animation/objectanimator \
196    svx/source/sdr/animation/animationstate \
197    svx/source/sdr/attribute/sdrallfillattributeshelper \
198    svx/source/sdr/attribute/sdrlinefillshadowtextattribute \
199    svx/source/sdr/attribute/sdrfilltextattribute \
200    svx/source/sdr/attribute/sdrshadowtextattribute \
201    svx/source/sdr/attribute/sdrtextattribute \
202    svx/source/sdr/attribute/sdrlineshadowtextattribute \
203    svx/source/sdr/attribute/sdrformtextattribute \
204    svx/source/sdr/attribute/sdrformtextoutlineattribute \
205    svx/source/sdr/contact/viewobjectcontactofgroup \
206    svx/source/sdr/contact/viewobjectcontactofsdrpage \
207    svx/source/sdr/contact/viewcontactofpageobj \
208    svx/source/sdr/contact/viewcontactofe3d \
209    svx/source/sdr/contact/viewcontactofe3dcube \
210    svx/source/sdr/contact/viewcontactofsdrmediaobj \
211    svx/source/sdr/contact/viewobjectcontactofmasterpagedescriptor \
212    svx/source/sdr/contact/viewobjectcontactofpageobj \
213    svx/source/sdr/contact/viewobjectcontactofe3dscene \
214    svx/source/sdr/contact/viewcontactofgraphic \
215    svx/source/sdr/contact/viewobjectcontactredirector \
216    svx/source/sdr/contact/viewcontactofsdrcircobj \
217    svx/source/sdr/contact/viewcontactofgroup \
218    svx/source/sdr/contact/viewcontactofunocontrol \
219    svx/source/sdr/contact/viewcontactofsdrobjcustomshape \
220    svx/source/sdr/contact/viewcontactofsdrobj \
221    svx/source/sdr/contact/objectcontact \
222    svx/source/sdr/contact/viewcontactoftextobj \
223    svx/source/sdr/contact/viewcontactofe3dlathe \
224    svx/source/sdr/contact/viewcontactofsdrpage \
225    svx/source/sdr/contact/viewcontactofe3dextrude \
226    svx/source/sdr/contact/viewcontactofmasterpagedescriptor \
227    svx/source/sdr/contact/viewcontact \
228    svx/source/sdr/contact/viewcontactofsdrole2obj \
229    svx/source/sdr/contact/displayinfo \
230    svx/source/sdr/contact/viewcontactofe3dscene \
231    svx/source/sdr/contact/viewcontactofsdrrectobj \
232    svx/source/sdr/contact/viewobjectcontactofsdrole2obj \
233    svx/source/sdr/contact/viewobjectcontactofunocontrol \
234    svx/source/sdr/contact/viewobjectcontactofgraphic \
235    svx/source/sdr/contact/sdrmediawindow \
236    svx/source/sdr/contact/viewobjectcontactofsdrmediaobj \
237    svx/source/sdr/contact/viewcontactofsdrcaptionobj \
238    svx/source/sdr/contact/viewcontactofvirtobj \
239    svx/source/sdr/contact/viewcontactofe3dsphere \
240    svx/source/sdr/contact/viewcontactofe3dpolygon \
241    svx/source/sdr/contact/viewcontactofsdredgeobj \
242    svx/source/sdr/contact/viewobjectcontact \
243    svx/source/sdr/contact/viewobjectcontactofsdrobj \
244    svx/source/sdr/contact/objectcontactofpageview \
245    svx/source/sdr/contact/viewcontactofsdrpathobj \
246    svx/source/sdr/contact/viewcontactofsdrmeasureobj \
247    svx/source/sdr/contact/objectcontactofobjlistpainter \
248    svx/source/sdr/contact/viewobjectcontactofe3d \
249    svx/source/sdr/event/eventhandler \
250    svx/source/sdr/overlay/overlayline \
251    svx/source/sdr/overlay/overlaycrosshair \
252    svx/source/sdr/overlay/overlayrollingrectangle \
253    svx/source/sdr/overlay/overlaytriangle \
254    svx/source/sdr/overlay/overlayselection \
255    svx/source/sdr/overlay/overlayrectangle \
256    svx/source/sdr/overlay/overlaybitmapex \
257    svx/source/sdr/overlay/overlaymanagerbuffered \
258    svx/source/sdr/overlay/overlayhelpline \
259    svx/source/sdr/overlay/overlayanimatedbitmapex \
260    svx/source/sdr/overlay/overlaypolypolygon \
261    svx/source/sdr/overlay/overlayobjectcell \
262    svx/source/sdr/overlay/overlaytools \
263    svx/source/sdr/overlay/overlayprimitive2dsequenceobject \
264    svx/source/sdr/overlay/overlayobject \
265    svx/source/sdr/overlay/overlaymanager \
266    svx/source/sdr/overlay/overlayobjectlist \
267    svx/source/sdr/primitive2d/sdrellipseprimitive2d \
268    svx/source/sdr/primitive2d/sdrprimitivetools \
269    svx/source/sdr/primitive2d/sdrtextprimitive2d \
270    svx/source/sdr/primitive2d/primitivefactory2d \
271    svx/source/sdr/primitive2d/sdrolecontentprimitive2d \
272    svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d \
273    svx/source/sdr/primitive2d/sdrgrafprimitive2d \
274    svx/source/sdr/primitive2d/sdrole2primitive2d \
275    svx/source/sdr/primitive2d/sdrpathprimitive2d \
276    svx/source/sdr/primitive2d/sdrrectangleprimitive2d \
277    svx/source/sdr/primitive2d/sdrcaptionprimitive2d \
278    svx/source/sdr/primitive2d/sdrconnectorprimitive2d \
279    svx/source/sdr/primitive2d/sdrmeasureprimitive2d \
280    svx/source/sdr/primitive2d/sdrattributecreator \
281    svx/source/sdr/primitive2d/sdrdecompositiontools \
282    svx/source/sdr/primitive3d/sdrattributecreator3d \
283    svx/source/sdr/properties/pageproperties \
284    svx/source/sdr/properties/e3dsceneproperties \
285    svx/source/sdr/properties/itemsettools \
286    svx/source/sdr/properties/captionproperties \
287    svx/source/sdr/properties/e3dextrudeproperties \
288    svx/source/sdr/properties/e3dproperties \
289    svx/source/sdr/properties/measureproperties \
290    svx/source/sdr/properties/customshapeproperties \
291    svx/source/sdr/properties/rectangleproperties \
292    svx/source/sdr/properties/groupproperties \
293    svx/source/sdr/properties/properties \
294    svx/source/sdr/properties/e3dlatheproperties \
295    svx/source/sdr/properties/graphicproperties \
296    svx/source/sdr/properties/circleproperties \
297    svx/source/sdr/properties/emptyproperties \
298    svx/source/sdr/properties/e3dsphereproperties \
299    svx/source/sdr/properties/defaultproperties \
300    svx/source/sdr/properties/textproperties \
301    svx/source/sdr/properties/attributeproperties \
302    svx/source/sdr/properties/connectorproperties \
303    svx/source/sdr/properties/e3dcompoundproperties \
304    svx/source/sdr/properties/oleproperties \
305    svx/source/svdraw/charthelper \
306    svx/source/svdraw/clonelist \
307    svx/source/svdraw/gradtrns \
308    svx/source/svdraw/polypolygoneditor \
309    svx/source/svdraw/sdrcomment \
310    svx/source/svdraw/sdrundomanager \
311    svx/source/svdraw/sdrhittesthelper \
312    svx/source/svdraw/sdrmasterpagedescriptor \
313    svx/source/svdraw/sdrpagewindow \
314    svx/source/svdraw/sdrpaintwindow \
315    svx/source/svdraw/selectioncontroller \
316    svx/source/svdraw/svdattr \
317    svx/source/svdraw/svdcrtv \
318    svx/source/svdraw/svddrag \
319    svx/source/svdraw/svddrgmt \
320    svx/source/svdraw/svddrgv \
321    svx/source/svdraw/svdedtv \
322    svx/source/svdraw/svdedtv1 \
323    svx/source/svdraw/svdedtv2 \
324    svx/source/svdraw/svdedxv \
325    svx/source/svdraw/svdetc \
326    svx/source/svdraw/svdfmtf \
327    svx/source/svdraw/svdglev \
328    svx/source/svdraw/svdglue \
329    svx/source/svdraw/svdhdl \
330    svx/source/svdraw/svdhlpln \
331    svx/source/svdraw/svdibrow \
332    svx/source/svdraw/svditer \
333    svx/source/svdraw/svdlayer \
334    svx/source/svdraw/svdmark \
335    svx/source/svdraw/svdmodel \
336    svx/source/svdraw/svdmrkv \
337    svx/source/svdraw/svdmrkv1 \
338    svx/source/svdraw/svdoashp \
339    svx/source/svdraw/svdoattr \
340    svx/source/svdraw/svdobj \
341    svx/source/svdraw/svdocapt \
342    svx/source/svdraw/svdocirc \
343    svx/source/svdraw/svdoedge \
344    svx/source/svdraw/svdograf \
345    svx/source/svdraw/svdogrp \
346    svx/source/svdraw/svdomeas \
347    svx/source/svdraw/svdomedia \
348    svx/source/svdraw/svdoole2 \
349    svx/source/svdraw/svdopage \
350    svx/source/svdraw/svdopath \
351    svx/source/svdraw/svdorect \
352    svx/source/svdraw/svdotext \
353    svx/source/svdraw/svdotextdecomposition \
354    svx/source/svdraw/svdotextpathdecomposition \
355    svx/source/svdraw/svdotxat \
356    svx/source/svdraw/svdotxdr \
357    svx/source/svdraw/svdotxed \
358    svx/source/svdraw/svdotxfl \
359    svx/source/svdraw/svdotxln \
360    svx/source/svdraw/svdotxtr \
361    svx/source/svdraw/svdouno \
362    svx/source/svdraw/svdoutl \
363    svx/source/svdraw/svdoutlinercache \
364    svx/source/svdraw/svdovirt \
365    svx/source/svdraw/svdpage \
366    svx/source/svdraw/svdpagv \
367    svx/source/svdraw/svdpntv \
368    svx/source/svdraw/svdpoev \
369    svx/source/svdraw/svdsnpv \
370    svx/source/svdraw/svdtext \
371    svx/source/svdraw/svdtrans \
372    svx/source/svdraw/svdundo \
373    svx/source/svdraw/svdview \
374    svx/source/svdraw/svdviter \
375    svx/source/svdraw/svdxcgv \
376    svx/source/table/cell \
377    svx/source/table/cellcursor \
378    svx/source/table/cellrange \
379    svx/source/table/propertyset \
380    svx/source/table/svdotable \
381    svx/source/table/tablecolumn \
382    svx/source/table/tablecolumns \
383    svx/source/table/tablecontroller \
384    svx/source/table/tablehandles \
385    svx/source/table/tablelayouter \
386    svx/source/table/tablemodel \
387    svx/source/table/tablerow \
388    svx/source/table/tablerows \
389    svx/source/table/tableundo \
390    svx/source/table/viewcontactoftableobj \
391    svx/source/tbxctrls/extrusioncontrols \
392    svx/source/tbxctrls/fontworkgallery \
393    svx/source/tbxctrls/tbcontrl \
394    svx/source/tbxctrls/tbxcolorupdate \
395    svx/source/tbxctrls/SvxColorValueSet \
396    svx/source/toolbars/extrusionbar \
397    svx/source/toolbars/fontworkbar \
398    svx/source/unodraw/gluepts \
399    svx/source/unodraw/shapepropertynotifier \
400    svx/source/unodraw/tableshape \
401    svx/source/unodraw/unobrushitemhelper \
402    svx/source/unodraw/unobtabl \
403    svx/source/unodraw/unodtabl \
404    svx/source/unodraw/UnoGraphicExporter \
405    svx/source/unodraw/unogtabl \
406    svx/source/unodraw/unohtabl \
407    svx/source/unodraw/unomlstr \
408    svx/source/unodraw/unomod \
409    svx/source/unodraw/unomtabl \
410    svx/source/unodraw/UnoNameItemTable \
411    svx/source/unodraw/unopage \
412    svx/source/unodraw/unoprov \
413    svx/source/unodraw/unoshap2 \
414    svx/source/unodraw/unoshap3 \
415    svx/source/unodraw/unoshap4 \
416    svx/source/unodraw/unoshape \
417    svx/source/unodraw/unoshtxt \
418    svx/source/unodraw/unottabl \
419    svx/source/unodraw/XPropertyTable \
420    svx/source/xml/xmleohlp \
421    svx/source/xml/xmlexport \
422    svx/source/xml/xmlgrhlp \
423    svx/source/xml/xmlxtexp \
424    svx/source/xml/xmlxtimp \
425    svx/source/xoutdev/xattr \
426    svx/source/xoutdev/xattr2 \
427    svx/source/xoutdev/xattrbmp \
428    svx/source/xoutdev/xexch \
429    svx/source/xoutdev/_xoutbmp \
430    svx/source/xoutdev/_xpoly \
431    svx/source/xoutdev/xpool \
432    svx/source/xoutdev/xtabbtmp \
433    svx/source/xoutdev/xtabcolr \
434    svx/source/xoutdev/xtabdash \
435    svx/source/xoutdev/xtabgrdt \
436    svx/source/xoutdev/xtabhtch \
437    svx/source/xoutdev/xtable \
438    svx/source/xoutdev/XPropertyEntry \
439    svx/source/xoutdev/xtablend \
440))
441
442# the following source file can't be compiled with optimization by some compilers (crash or endless loop):
443# Solaris Sparc with Sun compiler, gcc on MacOSX and Linux PPC
444# the latter is currently not supported by gbuild and needs a fix here later
445ifneq ($(OS),$(filter-out SOLARIS MACOSX,$(OS)))
446$(eval $(call gb_LinkTarget_set_cxx_optimization, \
447	svx/source/customshapes/EnhancedCustomShapeFunctionParser, \
448	$(gb_COMPILERNOOPTFLAGS) \
449))
450endif
451
452# g++49 -Os sometimes leaves inline class methods undefined,
453# See: <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65009>
454ifeq ($(COM)$(shell expr $(CCNUMVER) '>=' 000400090000 '&' $(CCNUMVER) '<' 000500000000),GCC1)
455$(eval $(call gb_LinkTarget_set_cxx_optimization, \
456	svx/source/fmcomp/fmgridif, \
457	$(gb_COMPILEROPTFLAGS) -fno-devirtualize -fno-devirtualize-speculatively \
458))
459endif
460
461$(eval $(call gb_SdiTarget_SdiTarget,svx/sdi/svxslots,svx/sdi/svx))
462
463$(eval $(call gb_SdiTarget_set_include,svx/sdi/svxslots,\
464	$$(INCLUDE) \
465	-I$(SRCDIR)/svx/inc \
466	-I$(SRCDIR)/svx/sdi \
467))
468
469# vim: set noet sw=4 ts=4:
470