blob: 927a123e9acea4e791fd278e24ecc3ecf715a05a [file] [log] [blame]
Takeshi Abeb2bd33e2011-08-10 02:12:48 +09001# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
Michael Stahlc74af0d2011-04-01 20:49:35 +00002#*************************************************************************
3#
4# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
Kohei Yoshidaa6639312012-07-27 22:14:39 -04005#
Michael Stahlc74af0d2011-04-01 20:49:35 +00006# Copyright 2009 by Sun Microsystems, Inc.
7#
8# OpenOffice.org - a multi-platform office productivity suite
9#
10# This file is part of OpenOffice.org.
11#
12# OpenOffice.org is free software: you can redistribute it and/or modify
13# it under the terms of the GNU Lesser General Public License version 3
14# only, as published by the Free Software Foundation.
15#
16# OpenOffice.org is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU Lesser General Public License version 3 for more details
20# (a copy is included in the LICENSE file that accompanied this code).
21#
22# You should have received a copy of the GNU Lesser General Public License
23# version 3 along with OpenOffice.org. If not, see
24# <http://www.openoffice.org/license.html>
25# for a copy of the LGPLv3 License.
26#
27#*************************************************************************
28
29# this file describes all the external libraries
30# depending on the configure options these may be taken from the system,
31# or the internal/bundled copy may be built.
32
33# for every external, a function gb_LinkTarget_use__FOO is defined,
34# once for the system case, once for the internal case.
35
36# in the system case, no libraries should be registered, but the target-local
37# variable LIBS should be set to FOO_LIBS, and INCLUDES to FOO_CFLAGS.
38
Matúš Kukan8e535df2012-04-07 13:59:33 +020039# External headers
40
Fridrich Štrbacad422a2013-03-06 16:33:07 +010041ifeq ($(SYSTEM_MARIADB),YES)
42
43define gb_LinkTarget__use_mariadb
44$(call gb_LinkTarget_set_include,$(1),\
45 $$(INCLUDE) \
46 $(MARIADB_CFLAGS) \
47)
48$(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
49
50endef
51gb_ExternalProject__use_mariadb :=
52
53else # !SYSTEM_MARIADB
54
55$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
56 mariadblib \
57))
58
59define gb_LinkTarget__use_mariadb
60$(call gb_LinkTarget_use_static_libraries,$(1),\
61 mariadblib \
62)
63
64endef
65define gb_ExternalProject__use_mariadb
66$(call gb_ExternalProject_use_package,$(1),libmariadb_inc)
67$(call gb_ExternalProject_use_static_libraries,$(1),mariadblib)
68
69endef
70
71endif # SYSTEM_MARIADB
72
73
Peter Foley1bd28842011-09-09 17:42:24 -040074ifeq ($(SYSTEM_MESA_HEADERS),YES)
75
Matúš Kukan8e535df2012-04-07 13:59:33 +020076gb_LinkTarget__use_mesa_headers :=
Peter Foley1bd28842011-09-09 17:42:24 -040077
78else
79
Matúš Kukan8e535df2012-04-07 13:59:33 +020080define gb_LinkTarget__use_mesa_headers
Michael Stahlc923f7d2012-04-07 23:22:08 +020081$(eval $(call gb_LinkTarget_use_package,$(1),Mesa_inc))
Matúš Kukan8e535df2012-04-07 13:59:33 +020082
Peter Foley1bd28842011-09-09 17:42:24 -040083endef
84
85endif
86
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010087ifeq ($(SYSTEM_NPAPI_HEADERS),YES)
Matúš Kukan8e535df2012-04-07 13:59:33 +020088
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010089define gb_LinkTarget__use_npapi_headers
Matúš Kukan8f6510b2012-06-02 21:54:26 +020090$(call gb_LinkTarget_set_include,$(1),\
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010091 $(NPAPI_HEADERS_CFLAGS) \
Matúš Kukan8e535df2012-04-07 13:59:33 +020092 $$(INCLUDE) \
Matúš Kukan8f6510b2012-06-02 21:54:26 +020093)
Matúš Kukan8e535df2012-04-07 13:59:33 +020094
95endef
96
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010097else #!SYSTEM_NPAPI_HEADERS
Matúš Kukan8e535df2012-04-07 13:59:33 +020098
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010099define gb_LinkTarget__use_npapi_headers
100$(call gb_LinkTarget_use_package,$(1),npapi)
Matúš Kukan8f6510b2012-06-02 21:54:26 +0200101$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200102 -I$(OUTDIR)/inc/external/npsdk \
Matúš Kukan8e535df2012-04-07 13:59:33 +0200103 $$(INCLUDE) \
Matúš Kukan8f6510b2012-06-02 21:54:26 +0200104)
Matúš Kukan8e535df2012-04-07 13:59:33 +0200105
106endef
107
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +0100108endif #SYSTEM_NPAPI_HEADERS
Matúš Kukan8e535df2012-04-07 13:59:33 +0200109
Matúš Kukan5eff0b62012-04-07 13:46:59 +0200110ifeq ($(SYSTEM_ODBC_HEADERS),YES)
111
112define gb_LinkTarget__use_odbc_headers
113$(call gb_LinkTarget_add_defs,$(1),\
114 -DSYSTEM_ODBC_HEADERS \
115)
116
117endef
118
119else
120
121define gb_LinkTarget__use_odbc_headers
122$(call gb_LinkTarget_use_package,$(1),odbc_inc)
123
124endef
125
126endif
127
David Tardon75c2c582013-04-09 19:06:26 +0200128ifeq ($(OS)$(COM),WNTMSC)
129
130define gb_ExternalProject__use_unistd_headers
131$(call gb_ExternalProject_use_package,$(1),soltools_inc)
132
133endef
134
135define gb_LinkTarget__use_unistd_headers
136$(call gb_LinkTarget_use_package,$(1),soltools_inc)
137
138endef
139
140else # ! ($(OS)$(COM),WNTMSC)
141
142gb_ExternalProject__use_unistd_headers :=
143
144gb_LinkTarget__use_unistd_headers :=
145
146endif
147
Matúš Kukan54a06c62012-08-25 01:29:00 +0200148ifeq ($(SYSTEM_VIGRA),YES)
149
150gb_LinkTarget__use_vigra_headers :=
151
152else
153
154define gb_LinkTarget__use_vigra_headers
155$(call gb_LinkTarget_use_unpacked,$(1),vigra)
156$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200157 -I$(call gb_UnpackedTarball_get_dir,vigra/include) \
Matúš Kukan54a06c62012-08-25 01:29:00 +0200158 $$(INCLUDE) \
159)
160
161endef
162
163endif
164
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200165ifeq ($(SYSTEM_MDDS),YES)
166
167gb_LinkTarget__use_mdds_headers :=
168
169else
170
171define gb_LinkTarget__use_mdds_headers
172$(call gb_LinkTarget_use_unpacked,$(1),mdds)
173$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200174 -I$(call gb_UnpackedTarball_get_dir,mdds/include) \
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200175 $$(INCLUDE) \
176)
177
178endef
179
180endif
181
Tor Lillqvistc2909892012-12-12 01:07:09 +0200182ifeq (SANE,$(filter SANE,$(BUILD_TYPE))$(filter WNT,$(OS)))
David Tardoneafaec92012-12-21 14:08:27 +0100183
184define gb_LinkTarget__use_sane_headers
Michael Stahl93ff02a2013-01-03 17:23:44 +0100185$(call gb_LinkTarget_use_packages,$(1),\
David Tardoneafaec92012-12-21 14:08:27 +0100186 sane_inc \
187)
188
189endef
190
191else
192
193gb_LinkTarget__use_sane_headers :=
194
195endif
196
Matúš Kukan8e535df2012-04-07 13:59:33 +0200197# External libraries
198
David Tardon785e1d92011-07-25 10:34:22 +0200199ifeq ($(SYSTEM_CPPUNIT),YES)
200
201define gb_LinkTarget__use_cppunit
202$(call gb_LinkTarget_set_include,$(1),\
203 $$(INCLUDE) \
204 $(CPPUNIT_CFLAGS) \
205)
206
207$(call gb_LinkTarget_add_libs,$(1),\
208 $(CPPUNIT_LIBS) \
209)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100210
David Tardon785e1d92011-07-25 10:34:22 +0200211endef
212
213else
214
Stephan Bergmann39a6e452012-12-07 08:11:16 +0100215$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
David Tardon785e1d92011-07-25 10:34:22 +0200216 cppunit \
217))
218
219define gb_LinkTarget__use_cppunit
Peter Foley143835b2012-11-25 16:37:40 -0500220$(call gb_LinkTarget_use_package,$(1),cppunit)
221
Michael Stahlc923f7d2012-04-07 23:22:08 +0200222$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon785e1d92011-07-25 10:34:22 +0200223 cppunit \
224)
Peter Foley143835b2012-11-25 16:37:40 -0500225$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200226 -I$(call gb_UnpackedTarball_get_dir,cppunit/include)\
Peter Foley143835b2012-11-25 16:37:40 -0500227 $$(INCLUDE) \
228)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100229
David Tardon785e1d92011-07-25 10:34:22 +0200230endef
231
232endif
Michael Stahlc74af0d2011-04-01 20:49:35 +0000233
Tor Lillqvist40900fb2013-01-03 12:48:14 +0200234define gb_LinkTarget__use_iconv
235$(call gb_LinkTarget_add_libs,$(1),-liconv)
236
237endef
238
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100239ifeq ($(SYSTEM_MARIADB),YES)
Peter Foleyc322d502013-01-23 16:29:08 -0500240
241define gb_LinkTarget__use_mysql
242
243$(call gb_LinkTarget_add_defs,$(1),\
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100244 -DSYSTEM_MARIADB \
Peter Foleyc322d502013-01-23 16:29:08 -0500245)
246
247$(call gb_LinkTarget_add_libs,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100248 $(MARIADB_LIBS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500249)
250
251$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100252 $(MARIADB_CFLAGS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500253 $$(INCLUDE) \
254)
255endef
256
257else
258
259define gb_LinkTarget__use_mysql
260
261$(call gb_LinkTarget_set_include,$(1),\
Peter Foleyc322d502013-01-23 16:29:08 -0500262 $$(INCLUDE) \
263)
264
265endef
266
267endif
268
269ifeq ($(SYSTEM_MYSQL_CPPCONN),YES)
270
271define gb_LinkTarget__use_mysqlcppconn
272$(call gb_LinkTarget_add_libs,$(1),\
273 -lmysqlcppconn \
274)
275
276$(call gb_LinkTarget_add_defs,$(1),\
Peter Foleyb02d7992013-01-24 15:43:52 -0500277 -DSYSTEM_MYSQL_CPPCONN \
Peter Foleyc322d502013-01-23 16:29:08 -0500278)
279endef
280
281else
282
Michael Stahl5f356bd2013-01-28 23:53:30 +0100283$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
Peter Foleyc322d502013-01-23 16:29:08 -0500284 mysqlcppconn \
285))
286
Michael Stahl5f356bd2013-01-28 23:53:30 +0100287# note: this does not link mysqlcppconn, it is loaded via osl_loadModuleRelative
Peter Foleyc322d502013-01-23 16:29:08 -0500288define gb_LinkTarget__use_mysqlcppconn
289
Michael Stahl5f356bd2013-01-28 23:53:30 +0100290$(call gb_LinkTarget_use_unpacked,$(1),mysqlcppconn)
291
Peter Foleyb02d7992013-01-24 15:43:52 -0500292$(call gb_LinkTarget_add_defs,$(1),\
293 -DCPPCONN_LIB_BUILD \
294)
295
Peter Foleyc322d502013-01-23 16:29:08 -0500296$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200297 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn) \
298 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn)/cppconn \
Peter Foleyc322d502013-01-23 16:29:08 -0500299 $$(INCLUDE) \
300)
301
302endef
303
304endif
305
Michael Stahlc74af0d2011-04-01 20:49:35 +0000306ifeq ($(SYSTEM_ZLIB),YES)
307
308define gb_LinkTarget__use_zlib
Michael Stahla88ef232011-04-13 16:11:41 +0000309$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000310 -DSYSTEM_ZLIB \
311)
312$(call gb_LinkTarget_add_libs,$(1),-lz)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100313
Michael Stahlc74af0d2011-04-01 20:49:35 +0000314endef
315
David Tardoncb276232012-10-26 15:33:26 +0200316# nothing on system
317define gb_LinkTarget__use_zlib_x64
318
319endef
320
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100321gb_ExternalProject__use_zlib :=
322
Michael Stahlc74af0d2011-04-01 20:49:35 +0000323else # !SYSTEM_ZLIB
324
325$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Caolán McNamara3934efe2012-04-13 14:06:05 +0100326 zlib \
David Tardoncb276232012-10-26 15:33:26 +0200327 zlib_x64 \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000328))
329
David Tardoncb276232012-10-26 15:33:26 +0200330define gb_LinkTarget__use_zlib_multiarch
331$(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
332
333$(call gb_LinkTarget_use_packages,$(1),\
334 zlib_inc \
335)
336
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200337$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200338 -I$(OUTDIR)/inc/external/zlib \
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200339 $$(INCLUDE) \
340)
David Tardoncb276232012-10-26 15:33:26 +0200341
Michael Stahlc923f7d2012-04-07 23:22:08 +0200342$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardoncb276232012-10-26 15:33:26 +0200343 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000344)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100345
Michael Stahlc74af0d2011-04-01 20:49:35 +0000346endef
347
David Tardoncb276232012-10-26 15:33:26 +0200348define gb_LinkTarget__use_zlib
349$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
350
351endef
352
353define gb_LinkTarget__use_zlib_x64
354$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
355
356endef
357
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100358define gb_ExternalProject__use_zlib
359$(call gb_ExternalProject_use_package,$(1),zlib_inc)
360$(call gb_ExternalProject_use_static_libraries,$(1),zlib)
361
362endef
363
Michael Stahlc74af0d2011-04-01 20:49:35 +0000364endif # SYSTEM_ZLIB
365
366
367ifeq ($(SYSTEM_JPEG),YES)
368
369define gb_LinkTarget__use_jpeg
370$(call gb_LinkTarget_add_libs,$(1),-ljpeg)
371$(call gb_LinkTarget_set_ldflags,$(1),\
Michael Stahl73d2fe92011-04-13 16:11:39 +0000372 $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000373)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100374
Michael Stahlc74af0d2011-04-01 20:49:35 +0000375endef
376
377else # !SYSTEM_JPEG
378
379$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
David Tardon4ed91fd2012-10-12 09:32:02 +0200380 jpeg \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000381))
382
383define gb_LinkTarget__use_jpeg
Matúš Kukane8a28be2012-01-21 00:46:29 +0100384$(call gb_LinkTarget_set_include,$(1),\
385 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200386 -I$(OUTDIR)/inc/external/jpeg \
Matúš Kukane8a28be2012-01-21 00:46:29 +0100387)
388
Michael Stahlc923f7d2012-04-07 23:22:08 +0200389$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon4ed91fd2012-10-12 09:32:02 +0200390 jpeg \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000391)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100392
Michael Stahlc74af0d2011-04-01 20:49:35 +0000393endef
394
395endif # SYSTEM_JPEG
396
Peter Foley1d1bab42012-10-28 12:00:06 -0400397ifeq ($(SYSTEM_MYTHES),YES)
398
399define gb_LinkTarget__use_mythes
Rene Engelhard99ef1f52012-10-28 23:00:03 +0100400$(call gb_LinkTarget_set_include,$(1),\
401 $$(INCLUDE) \
402 $(MYTHES_CFLAGS) \
403)
404$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
405
Peter Foley1d1bab42012-10-28 12:00:06 -0400406endef
407
408else # !SYSTEM_MYTHES
409
410$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
411 mythes \
412))
413
414define gb_LinkTarget__use_mythes
415$(call gb_LinkTarget_use_package,$(1),\
416 mythes \
417)
Matúš Kukan327db9f2012-10-28 22:40:30 +0100418$(call gb_LinkTarget_use_static_libraries,$(1),\
419 mythes \
Peter Foley1d1bab42012-10-28 12:00:06 -0400420)
Matúš Kukan327db9f2012-10-28 22:40:30 +0100421
Peter Foley1d1bab42012-10-28 12:00:06 -0400422endef
423
424endif # SYSTEM_MYTHES
425
Michael Stahlc74af0d2011-04-01 20:49:35 +0000426
427ifeq ($(SYSTEM_EXPAT),YES)
428
David Tardon51149802013-04-09 09:22:20 +0200429define gb_LinkTarget__use_expat_impl
430$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000431
Michael Stahla88ef232011-04-13 16:11:41 +0000432$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000433 -DSYSTEM_EXPAT \
434)
435
436$(call gb_LinkTarget_add_libs,$(1),-lexpat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100437
Michael Stahlc74af0d2011-04-01 20:49:35 +0000438endef
439
Michael Stahl77289672012-11-17 00:36:29 +0100440gb_ExternalProject__use_expat :=
441
Michael Stahlc74af0d2011-04-01 20:49:35 +0000442else # !SYSTEM_EXPAT
443
444$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Michael Stahl70527512012-11-14 20:43:57 +0100445 expat \
Michael Stahlabc873f2012-10-25 13:02:55 +0200446 expat_x64 \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000447))
448
David Tardon51149802013-04-09 09:22:20 +0200449define gb_LinkTarget__use_expat_impl
450$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000451
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700452$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200453 -I$(OUTDIR)/inc/external/expat \
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700454 $$(INCLUDE) \
455)
456
David Tardon35c53bb2013-04-09 08:58:04 +0200457$(call gb_LinkTarget_use_packages,$(1),\
458 expat_inc \
459)
460
Michael Stahlc923f7d2012-04-07 23:22:08 +0200461$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000462 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000463)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100464
Michael Stahlc74af0d2011-04-01 20:49:35 +0000465endef
466
Michael Stahl77289672012-11-17 00:36:29 +0100467define gb_ExternalProject__use_expat
468$(call gb_ExternalProject_use_package,$(1),expat_inc)
469$(call gb_ExternalProject_use_static_libraries,$(1),expat)
470
471endef
472
Michael Stahlc74af0d2011-04-01 20:49:35 +0000473endif # SYSTEM_EXPAT
474
David Tardon51149802013-04-09 09:22:20 +0200475define gb_LinkTarget__use_expat
476$(call gb_LinkTarget__use_expat_impl,$(1),expat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100477
Michael Stahlc74af0d2011-04-01 20:49:35 +0000478endef
479
David Tardon51149802013-04-09 09:22:20 +0200480define gb_LinkTarget__use_expat_x64
481$(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100482
Michael Stahlc74af0d2011-04-01 20:49:35 +0000483endef
484
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +0300485ifeq ($(OS),ANDROID)
486$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
487 fontconfig \
488 freetype \
489))
490endif
Michael Stahlc74af0d2011-04-01 20:49:35 +0000491
Peter Foleydd584cb2012-11-03 13:54:46 -0400492ifeq ($(SYSTEM_HYPH),YES)
493
494define gb_LinkTarget__use_hyphen
495$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
496
497endef
498
499else # !SYSTEM_HYPH
500
501$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
502 hyphen \
503))
504
505define gb_LinkTarget__use_hyphen
506$(call gb_LinkTarget_use_unpacked,$(1),hyphen)
507$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200508 -I$(call gb_UnpackedTarball_get_dir,hyphen)\
Peter Foleydd584cb2012-11-03 13:54:46 -0400509 $$(INCLUDE) \
510)
511$(call gb_LinkTarget_use_static_libraries,$(1),\
512 hyphen \
513)
514
515endef
516
517endif # SYSTEM_HYPH
518
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100519ifeq ($(SYSTEM_HUNSPELL),YES)
520
521define gb_LinkTarget__use_hunspell
522$(call gb_LinkTarget_set_include,$(1),\
523 $$(INCLUDE) \
524 $(HUNSPELL_CFLAGS) \
525)
526$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
527
528endef
529
530else # !SYSTEM_HUNSPELL
531
Matúš Kukan472a7db2011-12-27 00:16:36 +0100532$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Matúš Kukan327db9f2012-10-28 22:40:30 +0100533 hunspell \
Matúš Kukan472a7db2011-12-27 00:16:36 +0100534))
535
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100536define gb_LinkTarget__use_hunspell
537$(call gb_LinkTarget_add_defs,$(1),\
538 -DHUNSPELL_STATIC \
539)
Matúš Kukan7a030392012-10-29 23:29:37 +0100540$(call gb_LinkTarget_use_unpacked,$(1),hunspell)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100541$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200542 -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
Matúš Kukan7a030392012-10-29 23:29:37 +0100543 $$(INCLUDE) \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100544)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200545$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan327db9f2012-10-28 22:40:30 +0100546 hunspell \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100547)
548
549endef
550
551endif # SYSTEM_HUNSPELL
552
553
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200554ifeq ($(SYSTEM_BOOST),YES)
555
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200556define gb_LinkTarget__use_boostdatetime
David Tardon0f6919c2012-06-06 17:04:01 +0200557$(call gb_LinkTarget_set_include,$(1),\
558 $$(INCLUDE) \
559 $(BOOST_CPPFLAGS) \
560)
561
562$(call gb_LinkTarget_add_ldflags,$(1),\
563 $(BOOST_LDFLAGS) \
564)
565
566$(call gb_LinkTarget_add_libs,$(1),\
567 $(BOOST_DATE_TIME_LIB) \
568)
569
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200570endef
571
Stephan Bergmann93208022013-02-16 22:56:19 +0100572define gb_LinkTarget__use_boost_headers
573$(call gb_LinkTarget_set_include,$(1),\
574 $$(INCLUDE) \
575 $(BOOST_CPPFLAGS) \
576)
577
578endef
579
Peter Foleycdb6eca2012-11-10 08:56:12 -0500580gb_ExternalProject__use_boost_headers:=
581
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200582else # !SYSTEM_BOOST
583
584$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
585 boostdatetime \
Kohei Yoshida0454b732012-09-06 15:10:19 -0400586))
587
588ifeq ($(OS),WNT)
589$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Kohei Yoshidaaf463042012-09-06 13:57:22 -0400590 boostthread \
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200591))
Michael Stahl7f2e1682012-09-06 20:22:11 +0200592
593define gb_LinkTarget__use_boostthread
594$(call gb_LinkTarget_add_defs,$(1),\
595 -DBOOST_ALL_NO_LIB \
596)
597
598$(call gb_LinkTarget_use_static_libraries,$(1),\
599 boostthread \
600)
601endef
602
603endif # WNT
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200604
605define gb_LinkTarget__use_boostdatetime
Michael Stahl7f2e1682012-09-06 20:22:11 +0200606$(call gb_LinkTarget_add_defs,$(1),\
607 -DBOOST_ALL_NO_LIB \
608)
609
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200610$(call gb_LinkTarget_use_static_libraries,$(1),\
611 boostdatetime \
612)
613
614endef
615
Peter Foleye1f742a2012-11-12 18:37:10 -0500616define gb_LinkTarget__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100617$(call gb_LinkTarget_use_unpacked,$(1),boost)
Michael Stahla53586f2013-01-26 21:19:13 +0100618$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200619 -I$(call gb_UnpackedTarball_get_dir,boost) \
Michael Stahla53586f2013-01-26 21:19:13 +0100620 $$(INCLUDE) \
621)
Peter Foleye1f742a2012-11-12 18:37:10 -0500622
623endef
624
Peter Foleycdb6eca2012-11-10 08:56:12 -0500625define gb_ExternalProject__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100626$(call gb_ExternalProject_get_preparation_target,$(1)) :| $(call gb_UnpackedTarball_get_final_target,boost)
Peter Foleycdb6eca2012-11-10 08:56:12 -0500627
628endef
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200629endif # SYSTEM_BOOST
630
631
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100632ifeq ($(SYSTEM_CMIS),YES)
Matúš Kukan464b4332012-01-15 02:12:49 +0100633
634define gb_LinkTarget__use_cmis
635$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100636 $$(INCLUDE) \
Matúš Kukan707194e2012-09-06 18:19:34 +0200637 $(CMIS_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100638)
Matúš Kukan707194e2012-09-06 18:19:34 +0200639$(call gb_LinkTarget_add_libs,$(1),$(CMIS_LIBS))
Matúš Kukan464b4332012-01-15 02:12:49 +0100640
641endef
642
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100643else # !SYSTEM_CMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100644
645$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
646 cmislib \
647))
648
649define gb_LinkTarget__use_cmis
Michael Stahlc923f7d2012-04-07 23:22:08 +0200650$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100651 cmislib \
652)
653
654endef
655
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100656endif # SYSTEM_CMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100657
Peter Foleye5ccda42012-12-25 11:23:58 -0500658ifeq ($(OS)$(COM),WNTGCC)
659
660define gb_LinkTarget__use_jawt
661$(call gb_LinkTarget_use_packages,$(1),\
662 jawt \
663)
664
665endef
666
667else # $(OS)$(COM) != WNTGCC
668
669gb_LinkTarget__use_jawt :=
670
671endif # $(OS)$(COM) = WNTGCC
672
Matúš Kukan464b4332012-01-15 02:12:49 +0100673
Matúš Kukanbd030302011-12-03 15:06:52 +0100674ifeq ($(SYSTEM_LIBEXTTEXTCAT),YES)
675
676define gb_LinkTarget__use_libexttextcat
677$(call gb_LinkTarget_set_include,$(1),\
678 $$(INCLUDE) \
679 $(LIBEXTTEXTCAT_CFLAGS) \
680)
Peter Foley31219f02012-11-09 17:25:56 -0500681$(call gb_LinkTarget_add_defs,$(1),\
682 -DSYSTEM_LIBEXTTEXTCAT \
683)
Matúš Kukanbd030302011-12-03 15:06:52 +0100684$(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
685
686endef
687
688else # !SYSTEM_LIBEXTTEXTCAT
689
Matúš Kukanbd030302011-12-03 15:06:52 +0100690$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
Peter Foley31219f02012-11-09 17:25:56 -0500691 exttextcat \
Matúš Kukanbd030302011-12-03 15:06:52 +0100692))
Matúš Kukanbd030302011-12-03 15:06:52 +0100693
694define gb_LinkTarget__use_libexttextcat
Michael Stahlc923f7d2012-04-07 23:22:08 +0200695$(call gb_LinkTarget_use_static_libraries,$(1),\
Peter Foley31219f02012-11-09 17:25:56 -0500696 exttextcat \
Matúš Kukanbd030302011-12-03 15:06:52 +0100697)
Peter Foley31219f02012-11-09 17:25:56 -0500698
699$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200700 -I$(call gb_UnpackedTarball_get_dir,exttextcat/src) \
Peter Foley31219f02012-11-09 17:25:56 -0500701 $$(INCLUDE) \
702)
Matúš Kukanbd030302011-12-03 15:06:52 +0100703
704endef
705
706endif # SYSTEM_LIBEXTTEXTCAT
707
708
Michael Stahlc74af0d2011-04-01 20:49:35 +0000709ifeq ($(SYSTEM_LIBXML),YES)
710
711define gb_LinkTarget__use_libxml2
Michael Stahla88ef232011-04-13 16:11:41 +0000712$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000713 -DSYSTEM_LIBXML \
714)
715$(call gb_LinkTarget_set_include,$(1),\
716 $$(INCLUDE) \
717 $(LIBXML_CFLAGS) \
718)
719$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100720
Michael Stahlc74af0d2011-04-01 20:49:35 +0000721endef
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500722gb_ExternalProject__use_libxml2:=
Michael Stahlc74af0d2011-04-01 20:49:35 +0000723
724else # !SYSTEM_LIBXML
725
726$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
727 xml2 \
728))
729
730define gb_LinkTarget__use_libxml2
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500731$(call gb_LinkTarget_use_package,$(1),xml2)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200732$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000733 xml2 \
734)
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500735$(call gb_LinkTarget_set_include,$(1),\
736 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200737 -I$(call gb_UnpackedTarball_get_dir,xml2)/include \
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500738)
739
740endef
741define gb_ExternalProject__use_libxml2
742$(call gb_ExternalProject_use_package,$(1),xml2)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100743
Michael Stahlc74af0d2011-04-01 20:49:35 +0000744endef
745
746endif # SYSTEM_LIBXML
747
748
749ifeq ($(SYSTEM_LIBXSLT),YES)
750
751define gb_LinkTarget__use_libxslt
752$(call gb_LinkTarget_set_include,$(1),\
753 $$(INCLUDE) \
754 $(LIBXSLT_CFLAGS) \
755)
756$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100757
Michael Stahlc74af0d2011-04-01 20:49:35 +0000758endef
759
David Tardonab03e872012-08-15 07:20:13 +0200760define gb_LinkTarget__use_libexslt
761$(call gb_LinkTarget_set_include,$(1),\
762 $$(INCLUDE) \
763 $(LIBEXSLT_CFLAGS) \
764)
765
766$(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
767
768endef
769
Michael Stahlc74af0d2011-04-01 20:49:35 +0000770else # !SYSTEM_LIBXSLT
771
772$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
David Tardonab03e872012-08-15 07:20:13 +0200773 exslt \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000774 xslt \
775))
776
777define gb_LinkTarget__use_libxslt
Peter Foley856c0752013-02-02 15:44:30 -0500778$(call gb_LinkTarget_use_package,$(1),xslt)
779$(call gb_LinkTarget_set_include,$(1),\
780 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200781 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500782)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200783$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000784 xslt \
785)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100786
Michael Stahlc74af0d2011-04-01 20:49:35 +0000787endef
788
David Tardonab03e872012-08-15 07:20:13 +0200789define gb_LinkTarget__use_libexslt
Peter Foley856c0752013-02-02 15:44:30 -0500790$(call gb_LinkTarget_use_package,$(1),xslt)
791$(call gb_LinkTarget_set_include,$(1),\
792 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200793 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500794)
795
David Tardonab03e872012-08-15 07:20:13 +0200796$(call gb_LinkTarget_use_libraries,$(1),\
797 exslt \
798)
799
800endef
801
Michael Stahlc74af0d2011-04-01 20:49:35 +0000802endif # SYSTEM_LIBXSLT
803
Eike Rathkea774a482012-08-06 19:22:43 +0200804define gb_LinkTarget__use_glib
Tor Lillqviste10124b2012-11-06 18:08:16 +0200805$(error gb_LinkTarget__use_glib should not be called any more)
Eike Rathkea774a482012-08-06 19:22:43 +0200806endef
807
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +0200808ifeq ($(ENABLE_LIBLANGTAG),YES)
809
Eike Rathkea774a482012-08-06 19:22:43 +0200810ifeq ($(SYSTEM_LIBLANGTAG),YES)
811
812define gb_LinkTarget__use_liblangtag
813$(call gb_LinkTarget_set_include,$(1),\
814 $$(INCLUDE) \
815 $(LIBLANGTAG_CFLAGS) \
816)
817
818$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
819
820endef
821
822else # !SYSTEM_LIBLANGTAG
823
Fridrich Štrba9fe90112012-11-13 11:59:33 +0100824$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Eike Rathkea774a482012-08-06 19:22:43 +0200825 langtag \
826))
827
828define gb_LinkTarget__use_liblangtag
Peter Foley782151a2012-11-11 16:02:36 -0500829$(call gb_LinkTarget_use_unpacked,$(1),langtag)
830$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200831 -I$(call gb_UnpackedTarball_get_dir,langtag) \
Peter Foley782151a2012-11-11 16:02:36 -0500832 $$(INCLUDE) \
833)
Fridrich Štrba9fe90112012-11-13 11:59:33 +0100834$(call gb_LinkTarget_use_static_libraries,$(1),\
Eike Rathkea774a482012-08-06 19:22:43 +0200835 langtag \
836)
837
838endef
839
840endif # SYSTEM_LIBLANGTAG
841
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +0200842endif # ENABLE_LIBLANGTAG
843
Eike Rathkea774a482012-08-06 19:22:43 +0200844
Matúš Kukan464b4332012-01-15 02:12:49 +0100845ifeq ($(SYSTEM_NEON),YES)
846
847define gb_LinkTarget__use_neon
Matúš Kukan464b4332012-01-15 02:12:49 +0100848$(call gb_LinkTarget_add_defs,$(1),\
849 -DNEON_VERSION=0x$(NEON_VERSION) \
850)
Matúš Kukan464b4332012-01-15 02:12:49 +0100851$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100852 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +0000853 $(NEON_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100854)
855
856$(call gb_LinkTarget_add_libs,$(1),$(NEON_LIBS))
857
858endef
859
860else # !SYSTEM_NEON
861
Matúš Kukanbb6c5a52012-09-11 12:56:39 +0200862$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
Matúš Kukan464b4332012-01-15 02:12:49 +0100863 neon \
864))
865
866define gb_LinkTarget__use_neon
Matúš Kukan7a030392012-10-29 23:29:37 +0100867$(call gb_LinkTarget_use_unpacked,$(1),neon)
Matúš Kukan464b4332012-01-15 02:12:49 +0100868$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200869 -I$(call gb_UnpackedTarball_get_dir,neon/src) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100870 $$(INCLUDE) \
871)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200872$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100873 neon \
874)
875
876endef
877
878endif # SYSTEM_NEON
879
880
Michael Stahlc74af0d2011-04-01 20:49:35 +0000881ifeq ($(SYSTEM_REDLAND),YES)
882
883define gb_LinkTarget__use_librdf
Michael Stahla88ef232011-04-13 16:11:41 +0000884$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000885 -DSYSTEM_REDLAND \
886)
887$(call gb_LinkTarget_set_include,$(1),\
888 $$(INCLUDE) \
889 $(REDLAND_CFLAGS) \
890)
891$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100892
Michael Stahlc74af0d2011-04-01 20:49:35 +0000893endef
894
Peter Foley18bd1e72012-12-27 18:04:21 -0500895gb_LinkTarget__use_redland_headers:=
896
897gb_LinkTarget__use_raptor_headers:=
898
899gb_LinkTarget__use_rasqal_headers:=
900
Michael Stahlc74af0d2011-04-01 20:49:35 +0000901else # !SYSTEM_REDLAND
902
Peter Foley18bd1e72012-12-27 18:04:21 -0500903define gb_LinkTarget__use_redland_headers
904$(call gb_LinkTarget_set_include,$(1),\
Michael Stahld719c012013-04-01 12:41:18 +0200905 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500906 $$(INCLUDE) \
907)
908
909endef
910
911define gb_LinkTarget__use_raptor_headers
912$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200913 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500914 $$(INCLUDE) \
915)
916
917endef
918
919define gb_LinkTarget__use_rasqal_headers
920$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200921 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500922 $$(INCLUDE) \
923)
924
925endef
926
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300927ifneq ($(OS),ANDROID)
928
Michael Stahlc74af0d2011-04-01 20:49:35 +0000929$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
930 rdf \
931))
932
933define gb_LinkTarget__use_librdf
Michael Stahlc923f7d2012-04-07 23:22:08 +0200934$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000935 rdf \
936)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100937
Michael Stahlc74af0d2011-04-01 20:49:35 +0000938endef
939
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300940else # ANDROID
941
942$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
943 rdf \
944 rasqal \
Michael Stahld719c012013-04-01 12:41:18 +0200945 raptor2 \
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300946))
947
948define gb_LinkTarget__use_librdf
949$(call gb_LinkTarget_use_static_libraries,$(1),\
950 rdf \
951 rasqal \
Michael Stahld719c012013-04-01 12:41:18 +0200952 raptor2 \
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300953)
954
955endef
956
957endif # ANDROID
958
Michael Stahlc74af0d2011-04-01 20:49:35 +0000959endif # SYSTEM_REDLAND
960
961
962ifeq ($(SYSTEM_CAIRO),YES)
963
964# FREETYPE_CLAGS from environment if ENABLE_CAIRO is used
965define gb_LinkTarget__use_cairo
966$(call gb_LinkTarget_set_include,$(1),\
967 $$(INCLUDE) \
968 $(FREETYPE_CFLAGS) \
969 $(CAIRO_CFLAGS) \
970)
971$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100972
Michael Stahlc74af0d2011-04-01 20:49:35 +0000973endef
974
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100975else ifeq ($(SYSTEM_CAIRO),NO)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000976
977$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
978 cairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100979 $(if $(filter-out MACOSX WNT,$(OS)), \
980 pixman-1 \
981 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000982))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000983
984define gb_LinkTarget__use_cairo
Michael Stahlde142202012-11-20 22:05:36 +0100985$(call gb_LinkTarget_use_package,$(1),cairo)
986$(call gb_LinkTarget_use_package,$(1),pixman)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000987$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200988 -I$(call gb_UnpackedTarball_get_dir,cairo) \
989 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000990 $(FREETYPE_CFLAGS) \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100991 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000992)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200993$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000994 cairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100995 $(if $(filter-out MACOSX WNT,$(OS)), \
996 pixman-1 \
997 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000998)
Caolán McNamara5bb76f62011-07-25 21:50:34 +0100999
Michael Stahlc74af0d2011-04-01 20:49:35 +00001000endef
1001
1002endif # SYSTEM_CAIRO
1003
Caolán McNamarab41ae462011-07-25 22:24:27 +01001004define gb_LinkTarget__use_freetype
1005$(call gb_LinkTarget_set_include,$(1),\
1006 $$(INCLUDE) \
1007 $(FREETYPE_CFLAGS) \
1008)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001009
1010ifneq ($(OS),ANDROID)
Caolán McNamarab41ae462011-07-25 22:24:27 +01001011$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001012else
1013$(call gb_LinkTarget_use_static_libraries,$(1),freetype)
1014endif
Caolán McNamarab41ae462011-07-25 22:24:27 +01001015
1016endef
1017
1018define gb_LinkTarget__use_fontconfig
1019$(call gb_LinkTarget_set_include,$(1),\
1020 $$(INCLUDE) \
1021 $(FONTCONFIG_CFLAGS) \
1022)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001023
1024ifneq ($(OS),ANDROID)
Caolán McNamarab41ae462011-07-25 22:24:27 +01001025$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001026else
1027$(call gb_LinkTarget_use_static_libraries,$(1),fontconfig)
1028endif
Caolán McNamarab41ae462011-07-25 22:24:27 +01001029
1030endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001031
Michael Stahl87e44332011-04-13 16:11:39 +00001032ifeq ($(SYSTEM_GRAPHITE),YES)
1033
Michael Stahl87e44332011-04-13 16:11:39 +00001034define gb_LinkTarget__use_graphite
Michael Stahl87e44332011-04-13 16:11:39 +00001035$(call gb_LinkTarget_set_include,$(1),\
1036 $$(INCLUDE) \
1037 $(GRAPHITE_CFLAGS) \
1038)
1039$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001040
Michael Stahl87e44332011-04-13 16:11:39 +00001041endef
1042
Matúš Kukan1e925462012-10-26 13:37:59 +02001043else ifeq ($(SYSTEM_GRAPHITE),NO)
Michael Stahl87e44332011-04-13 16:11:39 +00001044
1045$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001046 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001047))
1048define gb_LinkTarget__use_graphite
Matúš Kukan7a030392012-10-29 23:29:37 +01001049$(call gb_LinkTarget_use_unpacked,$(1),graphite)
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001050$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001051 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001052 $$(INCLUDE) \
1053)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001054$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001055 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001056)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001057
Michael Stahl87e44332011-04-13 16:11:39 +00001058endef
1059
Matúš Kukan1e925462012-10-26 13:37:59 +02001060else # DISABLED GRAPHITE
1061
1062gb_LinkTarget__use_graphite :=
1063
Michael Stahl87e44332011-04-13 16:11:39 +00001064endif # SYSTEM_GRAPHITE
1065
Michael Stahlc74af0d2011-04-01 20:49:35 +00001066ifeq ($(SYSTEM_ICU),YES)
1067
Peter Foleyb92a0d92012-12-25 17:39:43 -05001068gb_LinkTarget__use_icu_headers:=
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001069gb_ExternalProject__use_icu:=
Peter Foleyb92a0d92012-12-25 17:39:43 -05001070
Matúš Kukan6fad1752011-08-11 12:42:39 +02001071define gb_LinkTarget__use_icudata
1072$(call gb_LinkTarget_add_libs,$(1),-licudata)
1073
1074endef
David Tardon1a852392011-07-26 09:58:54 +02001075define gb_LinkTarget__use_icui18n
1076$(call gb_LinkTarget_add_libs,$(1),-licui18n)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001077
David Tardon1a852392011-07-26 09:58:54 +02001078endef
Michael Stahle1999382011-04-13 16:11:40 +00001079define gb_LinkTarget__use_icule
1080$(call gb_LinkTarget_add_libs,$(1),-licule)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001081
Michael Stahle1999382011-04-13 16:11:40 +00001082endef
Matúš Kukan6fad1752011-08-11 12:42:39 +02001083define gb_LinkTarget__use_icutu
1084$(call gb_LinkTarget_add_libs,$(1),-licutu)
1085
1086endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001087define gb_LinkTarget__use_icuuc
1088$(call gb_LinkTarget_add_libs,$(1),-licuuc)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001089
Michael Stahlc74af0d2011-04-01 20:49:35 +00001090endef
1091
1092else # !SYSTEM_ICU
1093
Tor Lillqvist084db5f2012-09-24 10:37:25 +03001094ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001095gb_ICU_suffix:=lo
1096else
1097gb_ICU_suffix:=
1098endif
1099
Peter Foleyb92a0d92012-12-25 17:39:43 -05001100define gb_LinkTarget__use_icu_headers
Peter Foleyce9bf0f2013-03-23 12:32:31 -04001101$(call gb_LinkTarget_use_unpacked,$(1),icu)
Peter Foleyb92a0d92012-12-25 17:39:43 -05001102$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001103 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1104 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1105 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
Peter Foleyb92a0d92012-12-25 17:39:43 -05001106 $$(INCLUDE) \
1107)
1108
1109endef
1110
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001111define gb_ExternalProject__use_icu
1112$(call gb_ExternalProject_use_package,$(1),icu)
Fridrich Štrba851ca9c2013-01-25 10:29:59 +01001113
1114endef
1115
Peter Foleyf7452122012-11-04 08:46:44 -05001116# icudata and icui18n is called icudt and icuin when built with MSVC :-/
Tor Lillqvistbdfca5e2011-08-19 12:38:09 +03001117ifeq ($(OS)$(COM),WNTMSC)
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001118$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1119 icudt \
1120 icuin \
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001121))
1122
Michael Stahl1658e4e2012-12-02 18:56:17 +01001123define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001124$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001125$(call gb_LinkTarget_use_libraries,$(1),\
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001126 icudt \
1127)
1128
1129endef
Michael Stahl1658e4e2012-12-02 18:56:17 +01001130define gb_LinkTarget__use_icui18n
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001131$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001132$(call gb_LinkTarget_use_libraries,$(1),\
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001133 icuin \
1134)
1135
1136endef
1137else
Michael Stahlc74af0d2011-04-01 20:49:35 +00001138$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001139 icudata$(gb_ICU_suffix) \
1140 icui18n$(gb_ICU_suffix) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001141))
1142
Matúš Kukan6fad1752011-08-11 12:42:39 +02001143define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001144$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001145$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001146 icudata$(gb_ICU_suffix) \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001147)
1148
1149endef
David Tardon1a852392011-07-26 09:58:54 +02001150define gb_LinkTarget__use_icui18n
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001151$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001152$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001153 icui18n$(gb_ICU_suffix) \
David Tardon1a852392011-07-26 09:58:54 +02001154)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001155
David Tardon1a852392011-07-26 09:58:54 +02001156endef
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001157endif
1158
Michael Stahl1658e4e2012-12-02 18:56:17 +01001159$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1160 icule$(gb_ICU_suffix) \
1161 icutu$(gb_ICU_suffix) \
1162 icuuc$(gb_ICU_suffix) \
1163))
1164
Michael Stahle1999382011-04-13 16:11:40 +00001165define gb_LinkTarget__use_icule
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001166$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001167$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001168 icule$(gb_ICU_suffix) \
Michael Stahle1999382011-04-13 16:11:40 +00001169)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001170
Michael Stahle1999382011-04-13 16:11:40 +00001171endef
Matúš Kukan6fad1752011-08-11 12:42:39 +02001172define gb_LinkTarget__use_icutu
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001173$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001174$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001175 icutu$(gb_ICU_suffix) \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001176)
1177
1178endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001179define gb_LinkTarget__use_icuuc
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001180$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001181$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001182 icuuc$(gb_ICU_suffix) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001183)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001184
Michael Stahlc74af0d2011-04-01 20:49:35 +00001185endef
1186
1187endif # SYSTEM_ICU
1188
Michael Stahl4a8919f2011-04-18 11:13:57 +00001189
1190ifeq ($(SYSTEM_OPENSSL),YES)
1191
Peter Foley9ddba662012-12-28 11:19:06 -05001192gb_LinkTarget__use_openssl_headers:=
1193gb_ExternalProject__use_openssl:=
1194
Michael Stahl4a8919f2011-04-18 11:13:57 +00001195define gb_LinkTarget__use_openssl
1196$(call gb_LinkTarget_set_include,$(1),\
1197 $$(INCLUDE) \
1198 $(OPENSSL_CFLAGS) \
1199)
1200$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001201
Michael Stahl4a8919f2011-04-18 11:13:57 +00001202endef
1203
1204else # !SYSTEM_OPENSSL
1205
1206ifeq ($(OS),WNT)
1207$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1208 crypto \
1209 ssl \
1210))
1211else
1212$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1213 crypto \
1214 ssl \
1215))
1216endif
1217
Peter Foley9ddba662012-12-28 11:19:06 -05001218define gb_ExternalProject__use_openssl
1219$(call gb_ExternalProject_use_package,$(1),openssl)
1220
1221endef
1222
1223define gb_LinkTarget__use_openssl_headers
1224$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001225 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
Peter Foley9ddba662012-12-28 11:19:06 -05001226 $$(INCLUDE) \
1227)
1228
1229endef
1230
Michael Stahl4a8919f2011-04-18 11:13:57 +00001231define gb_LinkTarget__use_openssl
Peter Foley9ddba662012-12-28 11:19:06 -05001232$(call gb_LinkTarget_use_package,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001233ifeq ($(OS),WNT)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001234$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahl4a8919f2011-04-18 11:13:57 +00001235 crypto \
1236 ssl \
1237)
1238else
Michael Stahlc923f7d2012-04-07 23:22:08 +02001239$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahl4a8919f2011-04-18 11:13:57 +00001240 crypto \
1241 ssl \
1242)
1243ifeq ($(OS),SOLARIS)
Michael Stahl80374352012-09-28 12:25:50 +02001244$(call gb_LinkTarget_add_libs,$(1),\
1245 -lnsl \
1246 -lsocket \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001247)
1248endif
1249endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001250
Michael Stahl4a8919f2011-04-18 11:13:57 +00001251endef
1252
1253endif # SYSTEM_OPENSSL
1254
Matúš Kukanc4560482011-07-28 01:03:23 +02001255
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001256ifeq ($(SYSTEM_CDR),YES)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001257
1258define gb_LinkTarget__use_cdr
1259$(call gb_LinkTarget_set_include,$(1),\
1260 $$(INCLUDE) \
1261 $(CDR_CFLAGS) \
1262)
1263$(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1264
1265endef
1266
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001267else # !SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001268
1269$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001270 cdr-0.0 \
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001271))
1272
1273define gb_LinkTarget__use_cdr
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001274$(call gb_LinkTarget_use_package,$(1),\
1275 libcdr \
1276)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001277$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001278 cdr-0.0 \
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001279)
1280
1281endef
1282
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001283endif # SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001284
1285
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001286ifeq ($(SYSTEM_MSPUB),YES)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001287
1288define gb_LinkTarget__use_mspub
1289$(call gb_LinkTarget_set_include,$(1),\
1290 $$(INCLUDE) \
1291 $(MSPUB_CFLAGS) \
1292)
1293$(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1294
1295endef
1296
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001297else # !SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001298
1299$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001300 mspub-0.0 \
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001301))
1302
1303define gb_LinkTarget__use_mspub
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001304$(call gb_LinkTarget_use_package,$(1),\
1305 libmspub \
1306)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001307$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001308 mspub-0.0 \
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001309)
1310
1311endef
1312
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001313endif # SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001314
1315
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001316ifeq ($(SYSTEM_VISIO),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001317
1318define gb_LinkTarget__use_visio
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001319$(call gb_LinkTarget_set_include,$(1),\
1320 $$(INCLUDE) \
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001321 $(VISIO_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001322)
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001323$(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001324
1325endef
1326
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001327else # !SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001328
1329$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001330 visio-0.0 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001331))
1332
1333define gb_LinkTarget__use_visio
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001334$(call gb_LinkTarget_use_package,$(1),\
1335 libvisio \
1336)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001337$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001338 visio-0.0 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001339)
1340
1341endef
1342
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001343endif # SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001344
1345
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001346ifeq ($(SYSTEM_WPD),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001347
1348define gb_LinkTarget__use_wpd
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001349$(call gb_LinkTarget_set_include,$(1),\
1350 $$(INCLUDE) \
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001351 $(WPD_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001352)
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001353$(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001354
1355endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001356gb_ExternalProject__use_wpd :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001357
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001358else # !SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001359
Fridrich Štrba4425db62012-09-24 13:17:45 +02001360$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1361 wpd-0.9 \
1362))
1363
1364define gb_LinkTarget__use_wpd
Michael Stahl34295432012-09-24 22:25:28 +02001365$(call gb_LinkTarget_use_package,$(1),\
1366 libwpd \
1367)
Fridrich Štrba4425db62012-09-24 13:17:45 +02001368$(call gb_LinkTarget_use_static_libraries,$(1),\
1369 wpd-0.9 \
1370)
1371
1372endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001373define gb_ExternalProject__use_wpd
Michael Stahlc8d064d2013-02-20 14:14:30 +01001374$(call gb_ExternalProject_use_package,$(1),libwpd)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001375
1376endef
Fridrich Štrba4425db62012-09-24 13:17:45 +02001377
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001378endif # SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001379
1380
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001381ifeq ($(SYSTEM_WPG),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001382
1383define gb_LinkTarget__use_wpg
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001384$(call gb_LinkTarget_set_include,$(1),\
1385 $$(INCLUDE) \
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001386 $(WPG_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001387)
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001388$(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001389
1390endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001391gb_ExternalProject__use_wpg :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001392
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001393else # !SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02001394
1395$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1396 wpglib \
1397))
1398
1399define gb_LinkTarget__use_wpg
Michael Stahl53b7bdc2012-10-05 17:19:47 +02001400$(call gb_LinkTarget_use_package,$(1),\
1401 libwpg_inc \
1402)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001403$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukanc6a63952011-07-28 17:29:44 +02001404 wpglib \
1405)
1406
1407endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001408define gb_ExternalProject__use_wpg
1409$(call gb_ExternalProject_use_package,$(1),libwpg_inc)
1410$(call gb_ExternalProject_use_static_libraries,$(1),wpglib)
1411
1412endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02001413
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001414endif # SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02001415
1416
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001417ifeq ($(SYSTEM_WPS),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001418
1419define gb_LinkTarget__use_wps
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001420$(call gb_LinkTarget_set_include,$(1),\
1421 $$(INCLUDE) \
Fridrich Štrbae991bba2011-10-05 10:18:53 +02001422 $(WPS_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001423)
Fridrich Štrbae991bba2011-10-05 10:18:53 +02001424$(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001425
1426endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001427gb_ExternalProject__use_wps :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001428
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001429else # !SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02001430
1431$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1432 wpslib \
1433))
1434
1435define gb_LinkTarget__use_wps
Michael Stahlc923f7d2012-04-07 23:22:08 +02001436$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukanc6a63952011-07-28 17:29:44 +02001437 wpslib \
1438)
1439
1440endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001441define gb_ExternalProject__use_wps
1442$(call gb_ExternalProject_use_package,$(1),libwps_inc)
1443$(call gb_ExternalProject_use_static_libraries,$(1),wpslib)
1444
1445endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02001446
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001447endif # SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02001448
1449
Fridrich Štrba790a36d2013-03-11 12:38:12 +01001450ifeq ($(SYSTEM_MWAW),YES)
1451
1452define gb_LinkTarget__use_mwaw
1453$(call gb_LinkTarget_set_include,$(1),\
1454 $$(INCLUDE) \
1455 $(MWAW_CFLAGS) \
1456)
1457$(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
1458
1459endef
1460
1461else # !SYSTEM_MWAW
1462
1463$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1464 mwaw-0.1 \
1465))
1466
1467define gb_LinkTarget__use_mwaw
1468$(call gb_LinkTarget_use_package,$(1),\
1469 libmwaw \
1470)
1471$(call gb_LinkTarget_use_static_libraries,$(1),\
1472 mwaw-0.1 \
1473)
1474
1475endef
1476
1477endif # SYSTEM_MWAW
1478
1479
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001480ifeq ($(SYSTEM_LCMS2),YES)
1481
1482define gb_LinkTarget__use_lcms2
1483$(call gb_LinkTarget_set_include,$(1),\
1484 $$(INCLUDE) \
Peter Foleyf7452122012-11-04 08:46:44 -05001485 $(LCMS2_CFLAGS) \
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001486)
1487$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
1488
1489endef
1490
Peter Foley8905c0e2012-11-08 21:00:30 -05001491gb_ExternalProject__use_lcms2 :=
1492
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001493else # !SYSTEM_LCMS2
1494
Peter Foley8905c0e2012-11-08 21:00:30 -05001495define gb_ExternalProject__use_lcms2
1496$(call gb_ExternalProject_use_package,$(1),lcms2)
1497
1498endef
1499
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001500ifeq ($(OS),ANDROID)
1501
1502$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1503 lcms2 \
1504))
1505
1506define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001507$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02001508$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001509 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02001510 $$(INCLUDE) \
1511)
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001512$(call gb_LinkTarget_use_static_libraries,$(1),\
1513 lcms2 \
1514)
1515
1516endef
1517
1518else
1519
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001520$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1521 lcms2 \
1522))
1523
1524define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001525$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02001526$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001527 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02001528 $$(INCLUDE) \
1529)
Norbert Thiebaud1b61693a2012-11-04 16:27:25 -06001530$(call gb_LinkTarget_use_libraries,$(1),\
1531 lcms2 \
1532)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001533
1534endef
1535
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001536endif # ANDROID
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001537endif # SYSTEM_LCMS2
1538
1539
Matúš Kukanc4560482011-07-28 01:03:23 +02001540ifeq ($(SYSTEM_LPSOLVE),YES)
1541
Peter Foley085346f2012-11-03 19:19:30 -04001542define gb_LinkTarget__use_lpsolve
Matúš Kukanc4560482011-07-28 01:03:23 +02001543$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
Peter Foley085346f2012-11-03 19:19:30 -04001544$(call gb_LinkTarget_add_defs,$(1),\
1545 -DSYSTEM_LPSOLVE \
Peter Foley29d5e292012-11-07 18:18:08 -05001546)
Matúš Kukanc4560482011-07-28 01:03:23 +02001547
1548endef
1549
1550else # !SYSTEM_LPSOLVE
1551
1552$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1553 lpsolve55 \
1554))
1555
Peter Foley085346f2012-11-03 19:19:30 -04001556define gb_LinkTarget__use_lpsolve
1557$(call gb_LinkTarget_use_unpacked,$(1),lpsolve)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001558$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukanc4560482011-07-28 01:03:23 +02001559 lpsolve55 \
1560)
Peter Foley085346f2012-11-03 19:19:30 -04001561$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001562 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
Peter Foley085346f2012-11-03 19:19:30 -04001563 $$(INCLUDE) \
1564)
Matúš Kukanc4560482011-07-28 01:03:23 +02001565
1566endef
1567
1568endif # SYSTEM_LPSOLVE
1569
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001570ifeq ($(ENABLE_GIO),TRUE)
Matúš Kukanc4560482011-07-28 01:03:23 +02001571
Matúš Kukan464b4332012-01-15 02:12:49 +01001572define gb_LinkTarget__use_gio
1573$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01001574 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00001575 $(GIO_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01001576)
1577
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001578$(call gb_LinkTarget_add_defs,$(1),\
1579 -DENABLE_GIO \
1580)
1581
Matúš Kukan464b4332012-01-15 02:12:49 +01001582$(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
1583
1584endef
1585
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001586else # ENABLE_GIO
1587
1588define gb_LinkTarget__use_gio
Caolán McNamara1e98bb42012-11-06 20:09:57 +00001589
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001590endef
1591
1592endif # ENABLE_GIO
1593
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02001594define gb_LinkTarget__use_gtk
1595$(call gb_LinkTarget_set_include,$(1),\
1596 $$(INCLUDE) \
1597 $(GTK_CFLAGS) \
1598)
1599
1600$(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
1601
David Tardonadb11052011-12-01 13:39:09 +01001602ifeq ($(ENABLE_GTK_PRINT),TRUE)
1603
1604$(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
1605
1606$(call gb_LinkTarget_set_include,$(1),\
1607 $$(INCLUDE) \
1608 $(GTK_PRINT_CFLAGS) \
1609)
1610
1611$(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
1612
1613endif
1614
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02001615endef
Michael Stahl4a8919f2011-04-18 11:13:57 +00001616
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02001617define gb_LinkTarget__use_gthread
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01001618$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02001619endef
1620
Caolán McNamara68ffb332012-09-14 11:31:50 +01001621ifeq ($(ENABLE_CUPS),TRUE)
1622
1623define gb_LinkTarget__use_cups
1624$(call gb_LinkTarget_add_defs,$(1),\
1625 -DENABLE_CUPS \
1626)
1627
1628$(call gb_LinkTarget_add_libs,$(1),\
1629 -lcups \
1630)
1631
1632endef
1633
1634else # ENABLE_CUPS
1635
1636define gb_LinkTarget__use_cups
1637
1638endef
1639
1640endif # ENABLE_DBUS
David Tardon1b717ce2011-11-02 13:00:48 +01001641
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01001642ifeq ($(ENABLE_DBUS),TRUE)
David Tardon1b717ce2011-11-02 13:00:48 +01001643
1644define gb_LinkTarget__use_dbus
1645$(call gb_LinkTarget_set_include,$(1),\
1646 $$(INCLUDE) \
1647 $(DBUS_CFLAGS) \
1648)
1649
Matúš Kukan464b4332012-01-15 02:12:49 +01001650$(call gb_LinkTarget_add_defs,$(1),\
David Tardon1b717ce2011-11-02 13:00:48 +01001651 -DENABLE_DBUS \
1652)
1653
Rene Engelhardbea61492012-09-11 02:30:09 +02001654ifeq ($(ENABLE_PACKAGEKIT),YES)
1655$(call gb_LinkTarget_add_defs,$(1),\
1656 -DENABLE_PACKAGEKIT \
1657)
1658endif # ENABLE_PACKAGEKIT
1659
David Tardon1b717ce2011-11-02 13:00:48 +01001660$(call gb_LinkTarget_add_libs,$(1),\
1661 $(DBUS_LIBS) \
1662)
1663
1664endef
1665
1666else # ENABLE_DBUS
1667
1668define gb_LinkTarget__use_dbus
1669
1670endef
1671
1672endif # ENABLE_DBUS
1673
1674
Bjoern Michaelsendd321062011-07-26 16:04:15 +02001675define gb_LinkTarget__use_dbusmenugtk
1676$(call gb_LinkTarget_set_include,$(1),\
1677 $$(INCLUDE) \
1678 $(DBUSMENUGTK_CFLAGS) \
1679)
1680
1681$(call gb_LinkTarget_add_libs,$(1),$(DBUSMENUGTK_LIBS))
1682
1683endef
1684
Eike Rathkea3a8b802012-03-16 22:14:54 +01001685
1686ifeq ($(ENABLE_TELEPATHY),TRUE)
1687
1688define gb_LinkTarget__use_telepathy
1689$(call gb_LinkTarget_set_include,$(1),\
1690 $$(INCLUDE) \
1691 $(TELEPATHY_CFLAGS) \
1692)
1693
Eike Rathkea3a8b802012-03-16 22:14:54 +01001694$(call gb_LinkTarget_add_libs,$(1),\
1695 $(TELEPATHY_LIBS) \
1696)
1697
1698endef
1699
1700else # !ENABLE_TELEPATHY
1701
Matúš Kukanfe327622012-08-09 00:15:52 +02001702gb_LinkTarget__use_telepathy :=
Eike Rathkea3a8b802012-03-16 22:14:54 +01001703
1704endif # ENABLE_TELEPATHY
1705
Peter Foley8615d092012-10-10 21:43:21 -04001706define gb_LinkTarget__use_croco
Tor Lillqviste10124b2012-11-06 18:08:16 +02001707$(error gb_LinkTarget__use_croco should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001708endef
1709
Peter Foley8615d092012-10-10 21:43:21 -04001710define gb_LinkTarget__use_pango
Tor Lillqviste10124b2012-11-06 18:08:16 +02001711$(error gb_LinkTarget__use_pango should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001712endef
1713
Peter Foley8615d092012-10-10 21:43:21 -04001714define gb_LinkTarget__use_gsf
Tor Lillqviste10124b2012-11-06 18:08:16 +02001715$(error gb_LinkTarget__use_gsf should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001716endef
1717
Peter Foley8615d092012-10-10 21:43:21 -04001718define gb_LinkTarget__use_pixbuf
Tor Lillqviste10124b2012-11-06 18:08:16 +02001719$(error gb_LinkTarget__use_pixbuf should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001720endef
1721
David Tardon6df9c472011-09-15 14:44:34 +02001722ifeq ($(SYSTEM_LIBPNG),YES)
1723
1724define gb_LinkTarget__use_png
1725$(call gb_LinkTarget_set_include,$(1),\
1726 $$(INCLUDE) \
1727 $(LIBPNG_CFLAGS) \
1728)
1729
1730$(call gb_LinkTarget_add_libs,$(1),\
1731 $(LIBPNG_LIBS) \
1732)
1733
1734endef
1735
1736else # !SYSTEM_LIBPNG
1737
Matúš Kukanf96d58b2012-09-08 18:13:20 +02001738$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
David Tardon6df9c472011-09-15 14:44:34 +02001739 png \
1740))
1741
1742define gb_LinkTarget__use_png
Matúš Kukanf96d58b2012-09-08 18:13:20 +02001743$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon6df9c472011-09-15 14:44:34 +02001744 png \
1745)
Michael Stahl398ce442012-09-28 21:47:29 +02001746$(call gb_LinkTarget__use_zlib,$(1))
David Tardon6df9c472011-09-15 14:44:34 +02001747
1748endef
1749
1750endif # !SYSTEM_LIBPNG
1751
Michael Stahl50471a82011-12-06 19:17:52 +01001752
1753ifeq ($(SYSTEM_CURL),YES)
1754
1755define gb_LinkTarget__use_curl
1756$(call gb_LinkTarget_set_include,$(1),\
1757 $$(INCLUDE) \
1758 $(CURL_CFLAGS) \
1759)
1760$(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
1761
1762endef
1763
1764else # !SYSTEM_CURL
1765
1766$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1767 curl \
1768))
1769
1770define gb_LinkTarget__use_curl
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001771$(call gb_LinkTarget_use_package,$(1),curl)
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01001772$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001773 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01001774 $$(INCLUDE) \
1775)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001776$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahl50471a82011-12-06 19:17:52 +01001777 curl \
1778)
1779
1780endef
1781
1782endif # SYSTEM_CURL
1783
Stephan Bergmann49313b02012-11-27 15:35:02 +01001784ifeq ($(ENABLE_VALGRIND),TRUE)
David Tardon3446cda2011-12-23 12:21:19 +01001785
1786define gb_LinkTarget__use_valgrind
1787$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmann49313b02012-11-27 15:35:02 +01001788 -DHAVE_VALGRIND_HEADERS \
David Tardon3446cda2011-12-23 12:21:19 +01001789)
1790
1791$(call gb_LinkTarget_set_include,$(1),\
1792 $$(INCLUDE) \
1793 $(VALGRIND_CFLAGS) \
1794)
1795
1796endef
1797
Stephan Bergmann49313b02012-11-27 15:35:02 +01001798else # !ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01001799
1800define gb_LinkTarget__use_valgrind
1801
1802endef
1803
Stephan Bergmann49313b02012-11-27 15:35:02 +01001804endif # ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01001805
David Tardondba2d322012-02-18 18:54:35 +01001806ifeq ($(SYSTEM_POPPLER),YES)
1807
1808define gb_LinkTarget__use_poppler
1809$(call gb_LinkTarget_add_defs,$(1),\
1810 -DSYSTEM_POPPLER \
1811)
1812
1813$(call gb_LinkTarget_set_include,$(1),\
1814 $(POPPLER_CFLAGS) \
1815 $$(INCLUDE) \
1816)
1817
1818$(call gb_LinkTarget_add_libs,$(1),\
1819 $(POPPLER_LIBS) \
1820)
1821
1822endef
1823
1824else # !SYSTEM_POPPLER
1825
David Tardon548b61a2012-02-21 06:58:02 +01001826$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
Tor Lillqvist97d8b882012-11-13 10:27:21 +02001827 fofi \
1828 Goo \
1829 xpdf \
David Tardondba2d322012-02-18 18:54:35 +01001830))
1831
1832define gb_LinkTarget__use_poppler
Peter Foleyfb1d11d2013-02-17 09:26:01 -05001833$(call gb_LinkTarget_use_package,$(1),xpdf)
1834
David Tardon548b61a2012-02-21 06:58:02 +01001835$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001836 -I$(call gb_UnpackedTarball_get_dir,xpdf) \
1837 -I$(call gb_UnpackedTarball_get_dir,xpdf)/xpdf \
1838 -I$(call gb_UnpackedTarball_get_dir,xpdf)/goo \
David Tardon548b61a2012-02-21 06:58:02 +01001839 $$(INCLUDE) \
David Tardondba2d322012-02-18 18:54:35 +01001840)
1841
Michael Stahlc923f7d2012-04-07 23:22:08 +02001842$(call gb_LinkTarget_use_static_libraries,$(1),\
Tor Lillqvist97d8b882012-11-13 10:27:21 +02001843 fofi \
1844 Goo \
1845 xpdf \
David Tardon548b61a2012-02-21 06:58:02 +01001846)
1847
1848ifeq ($(OS),MACOSX)
Michael Stahl967986b2012-09-28 00:54:49 +02001849$(call gb_LinkTarget_add_libs,$(1),\
1850 -lobjc \
David Tardon548b61a2012-02-21 06:58:02 +01001851)
1852else ifeq ($(OS),WNT)
Michael Stahldc397aae2012-09-28 15:31:46 +02001853$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon548b61a2012-02-21 06:58:02 +01001854 advapi32 \
1855 gdi32 \
1856)
1857endif
1858
David Tardondba2d322012-02-18 18:54:35 +01001859endef
1860
1861endif # SYSTEM_POPPLER
1862
David Tardon3446cda2011-12-23 12:21:19 +01001863
David Tardon22c60cb2012-04-07 15:50:47 +02001864ifeq ($(SYSTEM_CLUCENE),YES)
1865
1866define gb_LinkTarget__use_clucene
1867$(call gb_LinkTarget_add_defs,$(1),\
1868 $(filter-out -I%,$(CLUCENE_CFLAGS)) \
1869)
1870
1871$(call gb_LinkTarget_set_include,$(1),\
1872 $(filter -I%,$(CLUCENE_CFLAGS)) \
1873 $$(INCLUDE) \
1874)
1875
1876$(call gb_LinkTarget_add_libs,$(1),\
1877 $(CLUCENE_LIBS) \
1878)
1879
1880endef
1881
1882else # !SYSTEM_CLUCENE
1883
1884define gb_LinkTarget__use_clucene
Michael Stahlc923f7d2012-04-07 23:22:08 +02001885$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon22c60cb2012-04-07 15:50:47 +02001886 clucene \
1887)
1888
1889endef
1890
David Tardon735c5292012-04-07 17:15:35 +02001891$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
David Tardon22c60cb2012-04-07 15:50:47 +02001892 clucene \
1893))
1894
1895endif # SYSTEM_CLUCENE
1896
Peter Foley64402842011-12-22 16:34:35 -05001897define gb_LinkTarget__use_gobject
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01001898$(call gb_LinkTarget_add_libs,$(1),\
1899 $(GOBJECT_LIBS) \
1900)
1901
1902$(call gb_LinkTarget_set_include,$(1),\
1903 $$(INCLUDE) \
1904 $(GOBJECT_CFLAGS) \
1905)
Peter Foley64402842011-12-22 16:34:35 -05001906endef
1907
Michael Stahl1d6830e2012-07-17 13:07:30 +02001908ifeq ($(SYSTEM_HSQLDB),YES)
David Tardon579f52d2012-03-27 16:36:31 +02001909
1910define gb_LinkTarget__use_hsqldb
1911
1912$(call gb_LinkTarget_add_defs,$(1),\
1913 -DSYSTEM_HSQLDB \
1914 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
1915)
1916
1917endef
1918
1919else # !SYSTEM_HSQLDB
1920
1921define gb_LinkTarget__use_hsqldb
1922
1923endef
1924
1925endif # SYSTEM_HSQLDB
1926
David Tardon8bc7afb2012-04-05 10:53:08 +02001927
Luboš Luňáke13cda12012-07-16 21:50:59 +02001928ifeq ($(SYSTEM_OPENLDAP),YES)
Michael Stahle0ee0d42012-07-16 19:00:07 +02001929
1930define gb_LinkTarget__use_openldap
1931
1932$(call gb_LinkTarget_add_libs,$(1),\
1933 -lldap \
1934 -llber \
1935)
1936
1937endef
1938
Matúš Kukand6a02072013-03-27 00:34:19 +01001939else ifeq ($(SYSTEM_OPENLDAP),NO)
Michael Stahle0ee0d42012-07-16 19:00:07 +02001940
1941$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
1942 ldap \
1943 lber \
1944))
1945
1946define gb_LinkTarget__use_openldap
Matúš Kukan7a030392012-10-29 23:29:37 +01001947$(call gb_LinkTarget_use_unpacked,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02001948$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001949 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
Michael Stahle0ee0d42012-07-16 19:00:07 +02001950 $$(INCLUDE) \
1951)
Matúš Kukanc3a586a2012-10-28 12:35:07 +01001952$(call gb_LinkTarget_use_package,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02001953$(call gb_LinkTarget_use_static_libraries,$(1),\
1954 ldap \
1955 lber \
1956)
1957
1958endef
1959
Matúš Kukan006e1272013-03-27 01:02:55 +01001960else # no openldap
1961
1962gb_LinkTarget__use_openldap :=
1963
Michael Stahle0ee0d42012-07-16 19:00:07 +02001964endif # SYSTEM_OPENLDAP
1965
1966
David Tardon8bc7afb2012-04-05 10:53:08 +02001967ifeq ($(SYSTEM_POSTGRESQL),YES)
1968
1969define gb_LinkTarget__use_postgresql
1970
David Tardon8bc7afb2012-04-05 10:53:08 +02001971$(call gb_LinkTarget_set_include,$(1),\
1972 $(POSTGRESQL_INC) \
1973 $$(INCLUDE) \
1974)
1975
1976$(call gb_LinkTarget_add_libs,$(1),\
1977 -lpq \
1978)
1979
1980$(call gb_LinkTarget_add_ldflags,$(1),\
1981 $(POSTGRESQL_LIB) \
1982)
1983
1984endef
1985
1986else # !SYSTEM_POSTGRESQL
1987
1988define gb_LinkTarget__use_postgresql
1989
David Tardoncb9823b2012-10-22 06:33:00 +02001990$(call gb_LinkTarget_use_packages,$(1),\
1991 postgresql \
1992)
1993
David Tardon8bc7afb2012-04-05 10:53:08 +02001994$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001995 -I$(OUTDIR)/inc/postgresql \
David Tardon8bc7afb2012-04-05 10:53:08 +02001996 $$(INCLUDE) \
1997)
1998
David Tardon9b530e12012-04-07 10:07:35 +02001999$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukana1539242012-05-26 23:38:34 +02002000 $(if $(filter MSC,$(COM)),lib)pq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002001)
2002
Tor Lillqvistc2909892012-12-12 01:07:09 +02002003ifeq ($(OS)$(COM),WNTMSC)
Matúš Kukan5e32d152012-05-27 00:21:12 +02002004$(call gb_LinkTarget_use_external,$(1),openssl)
2005
Michael Stahldc397aae2012-09-28 15:31:46 +02002006$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon8bc7afb2012-04-05 10:53:08 +02002007 secur32 \
2008 ws2_32 \
David Tardon8bc7afb2012-04-05 10:53:08 +02002009)
David Tardon8af6aa62012-05-30 12:06:42 +02002010
David Tardon8bc7afb2012-04-05 10:53:08 +02002011endif
2012
2013endef
2014
2015$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
Matúš Kukana1539242012-05-26 23:38:34 +02002016 $(if $(filter MSC,$(COM)),lib)pq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002017))
2018
2019endif # SYSTEM_POSTGRESQL
2020
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002021ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
David Tardonc678a4c2012-04-05 17:59:36 +02002022define gb_LinkTarget__use_mozilla
2023
2024$(call gb_LinkTarget_add_defs,$(1),\
2025 -DMOZILLA_INTERNAL_API \
2026)
2027
2028$(call gb_LinkTarget_set_include,$(1),\
2029 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +02002030 -I$(OUTDIR)/inc/mozilla \
David Tardonc678a4c2012-04-05 17:59:36 +02002031)
2032
David Tardon9b530e12012-04-07 10:07:35 +02002033$(call gb_LinkTarget_use_libraries,$(1),\
David Tardonc678a4c2012-04-05 17:59:36 +02002034 nspr4 \
2035 xpcom \
2036 xpcom_core \
2037)
2038
David Tardon9b530e12012-04-07 10:07:35 +02002039$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardonc678a4c2012-04-05 17:59:36 +02002040 embed_base_s \
2041 mozreg_s \
2042)
2043
David Tardonc678a4c2012-04-05 17:59:36 +02002044$(call gb_LinkTarget_add_defs,$(1),\
2045 -DMOZILLA_CLIENT \
2046 -DMOZ_REFLOW_PERF \
2047 -DMOZ_REFLOW_PERF_DSP \
2048 -DMOZ_XUL \
2049 -DOJI \
2050 -DWIN32 \
2051 -DXP_PC \
2052 -DXP_WIN \
2053 -DXP_WIN32 \
2054 -D_WINDOWS \
2055)
2056
2057ifeq ($(COM),GCC)
2058
2059$(call gb_LinkTarget_add_cxxflags,$(1),\
2060 -Wall \
2061 -Wcast-align \
2062 -Wconversion \
2063 -Wno-long-long \
2064 -Woverloaded-virtual \
2065 -Wpointer-arith \
2066 -Wsynth \
2067 -fno-rtti \
2068)
2069
2070else
2071
2072ifneq ($(DBG_LEVEL),0)
2073$(call gb_LinkTarget_add_defs,$(1),\
2074 -D_STL_NOFORCE_MANIFEST \
2075)
2076endif
2077
2078$(call gb_LinkTarget_add_libs,$(1),\
David Tardon764fc482012-05-30 14:55:09 +02002079 $(OUTDIR)/lib/embed_base_s.lib \
2080 $(OUTDIR)/lib/mozreg_s.lib \
David Tardonc678a4c2012-04-05 17:59:36 +02002081)
2082
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002083endif # !GCC
David Tardonc678a4c2012-04-05 17:59:36 +02002084
David Tardonc678a4c2012-04-05 17:59:36 +02002085endef
2086
2087$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
2088 xpcom \
2089 xpcom_core \
2090))
2091
2092$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
2093 embed_base_s \
2094 mozreg_s \
2095))
2096
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002097endif # DESKTOP
David Tardonc678a4c2012-04-05 17:59:36 +02002098
David Tardond4efa8b2012-04-28 20:48:14 +02002099ifeq ($(ENABLE_KDE),TRUE)
2100
2101define gb_LinkTarget__use_kde
2102$(call gb_LinkTarget_set_include,$(1),\
2103 $(filter -I%,$(KDE_CFLAGS)) \
2104 $$(INCLUDE) \
2105)
2106
2107$(call gb_LinkTarget_add_defs,$(1),\
2108 $(filter-out -I%,$(KDE_CFLAGS)) \
2109)
2110
2111$(call gb_LinkTarget_add_libs,$(1),\
2112 $(KDE_LIBS) \
2113)
2114
2115ifeq ($(COM),GCC)
2116$(call gb_LinkTarget_add_cxxflags,$(1),\
2117 -Wno-shadow \
2118)
2119endif
2120
2121endef
2122
2123else # !ENABLE_KDE
2124
2125define gb_LinkTarget__use_kde
2126
2127endef
2128
2129endif # ENABLE_KDE
2130
2131
2132ifeq ($(ENABLE_KDE4),TRUE)
2133
2134define gb_LinkTarget__use_kde4
2135$(call gb_LinkTarget_set_include,$(1),\
2136 $(filter -I%,$(KDE4_CFLAGS)) \
2137 $$(INCLUDE) \
2138)
2139
2140$(call gb_LinkTarget_add_defs,$(1),\
2141 $(filter-out -I%,$(KDE4_CFLAGS)) \
2142)
2143
2144$(call gb_LinkTarget_add_libs,$(1),\
2145 $(KDE4_LIBS) \
2146)
2147
2148ifeq ($(COM),GCC)
2149$(call gb_LinkTarget_add_cxxflags,$(1),\
2150 -Wno-shadow \
2151)
2152endif
2153
2154endef
2155
2156else # !ENABLE_KDE4
2157
2158define gb_LinkTarget__use_kde4
2159
2160endef
2161
2162endif # ENABLE_KDE4
2163
2164
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002165ifeq ($(ENABLE_TDE),TRUE)
David Tardond4efa8b2012-04-28 20:48:14 +02002166
2167define gb_LinkTarget__use_tde
2168$(call gb_LinkTarget_add_libs,$(1),\
2169 $(TDE_LIBS) \
2170)
2171
2172$(call gb_LinkTarget_set_include,$(1),\
2173 $$(INCLUDE) \
2174 $(TDE_CFLAGS) \
2175)
2176endef
2177
2178else # ! ENABLE_TDE
2179
2180define gb_LinkTarget__use_tde
2181
2182endef
2183
2184endif # ENABLE_TDE
2185
2186
2187ifeq ($(ENABLE_GCONF),TRUE)
2188
2189define gb_LinkTarget__use_gconf
2190$(call gb_LinkTarget_set_include,$(1),\
2191 $(filter -I%,$(GCONF_CFLAGS)) \
2192 $$(INCLUDE) \
2193)
2194
2195$(call gb_LinkTarget_add_defs,$(1),\
2196 $(filter-out -I%,$(GCONF_CFLAGS)) \
2197)
2198
2199$(call gb_LinkTarget_add_libs,$(1),\
2200 $(GCONF_LIBS) \
2201)
2202
2203endef
2204
2205else # !ENABLE_GCONF
2206
2207define gb_LinkTarget__use_gconf
2208
2209endef
2210
2211endif # ENABLE_GCONF
2212
2213
David Ostrovskye16ac692012-05-27 22:50:41 +02002214# PYTHON
Michael Stahl91926332012-11-27 15:50:53 +01002215# extra python_headers external because pyuno wrapper must not link python
David Ostrovskye16ac692012-05-27 22:50:41 +02002216ifeq ($(SYSTEM_PYTHON),YES)
2217
Michael Stahl91926332012-11-27 15:50:53 +01002218define gb_LinkTarget__use_python_headers
David Ostrovskye16ac692012-05-27 22:50:41 +02002219$(call gb_LinkTarget_add_defs,$(1),\
2220 $(filter-out -I%,$(PYTHON_CFLAGS)) \
2221)
2222
2223$(call gb_LinkTarget_set_include,$(1),\
2224 $(filter -I%,$(PYTHON_CFLAGS)) \
2225 $$(INCLUDE) \
2226)
2227
Michael Stahl91926332012-11-27 15:50:53 +01002228endef
2229
2230define gb_LinkTarget__use_python
2231$(call gb_LinkTarget__use_python_headers,$(1))
2232
David Ostrovskye16ac692012-05-27 22:50:41 +02002233$(call gb_LinkTarget_add_libs,$(1),\
2234 $(PYTHON_LIBS) \
2235)
2236
2237endef
2238
2239else # !SYSTEM_PYTHON
2240
Michael Stahl75a2c502012-12-04 13:47:22 +01002241# depend on external project because on MACOSX the Package is disabled...
Michael Stahl91926332012-11-27 15:50:53 +01002242define gb_LinkTarget__use_python_headers
Peter Foley921f31f2012-11-27 20:50:38 -05002243$(call gb_LinkTarget_use_package,$(1),python3)
Michael Stahl75a2c502012-12-04 13:47:22 +01002244$(call gb_LinkTarget_use_external_project,$(1),python3)
Michael Stahl91926332012-11-27 15:50:53 +01002245$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002246 -I$(call gb_UnpackedTarball_get_dir,python3) \
2247 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
2248 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
Michael Stahl91926332012-11-27 15:50:53 +01002249 $$(INCLUDE) \
2250)
2251
2252endef
2253
David Ostrovskye16ac692012-05-27 22:50:41 +02002254define gb_LinkTarget__use_python
Michael Stahl91926332012-11-27 15:50:53 +01002255$(call gb_LinkTarget__use_python_headers,$(1))
David Ostrovskye16ac692012-05-27 22:50:41 +02002256
2257ifeq ($(OS),WNT)
2258$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002259 python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR).lib \
David Ostrovskye16ac692012-05-27 22:50:41 +02002260)
2261else ifeq ($(OS),MACOSX)
2262$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002263 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
David Ostrovskye16ac692012-05-27 22:50:41 +02002264)
2265else
2266$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002267 python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02002268)
2269endif
2270
David Ostrovskye16ac692012-05-27 22:50:41 +02002271endef
2272
2273$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002274 python$(PYTHON_VERSION_MAJOR) \
2275 python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02002276))
2277
2278endif # SYSTEM_PYTHON
2279
Kohei Yoshida49b0b692012-09-04 15:05:35 -04002280# ORCUS
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002281ifeq ($(SYSTEM_LIBORCUS),YES)
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002282
2283define gb_LinkTarget__use_orcus
2284$(call gb_LinkTarget_set_include,$(1),\
2285 $$(INCLUDE) \
Matúš Kukana2d63fe2012-09-09 16:29:10 +02002286 $(ORCUS_CFLAGS) \
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002287)
Matúš Kukana2d63fe2012-09-09 16:29:10 +02002288$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002289
2290endef
2291
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002292else # !SYSTEM_LIBORCUS
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002293
Matúš Kukan8a026372012-09-11 16:19:19 +02002294$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
2295 orcus \
2296))
2297
Kohei Yoshidac8b7e982012-08-31 10:11:32 -04002298define gb_LinkTarget__use_orcus
Matúš Kukan7a030392012-10-29 23:29:37 +01002299$(call gb_LinkTarget_use_unpacked,$(1),orcus)
Matúš Kukan1ee76032012-09-09 15:29:43 +02002300$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002301 -I$(call gb_UnpackedTarball_get_dir,orcus/include) \
Matúš Kukan1ee76032012-09-09 15:29:43 +02002302 $$(INCLUDE) \
2303)
Matúš Kukanf4889fa2012-09-11 18:23:27 +02002304$(call gb_LinkTarget_use_static_libraries,$(1),orcus)
David Tardonf1035c12012-11-23 06:49:21 +01002305
Stephan Bergmann3743cdb2013-02-17 22:58:21 +01002306$(if $(filter YES,$(SYSTEM_BOOST)), \
2307 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
2308 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
2309)
David Tardonf1035c12012-11-23 06:49:21 +01002310
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002311endef
2312
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002313endif # SYSTEM_LIBORCUS
David Ostrovskye16ac692012-05-27 22:50:41 +02002314
Michael Stahl78b59b82012-09-27 21:45:47 +02002315
2316### X11 stuff ###
2317
2318ifeq ($(GUIBASE),unx)
2319
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002320# TODO: do we really need these X11 headers in the repo?
2321ifneq ($(filter X11_EXTENSIONS,$(BUILD_TYPE)),)
2322
2323define gb_LinkTarget__use_x11extensions
2324$(call gb_LinkTarget_use_packages,$(1),\
2325 x11_extensions_inc \
2326)
2327endef
2328
2329else # !X11_EXTENSIONS
2330
2331gb_LinkTarget__use_x11extensions :=
2332
2333endif # X11_EXTENSIONS
2334
Michael Stahl78b59b82012-09-27 21:45:47 +02002335ifeq ($(XRANDR_DLOPEN),FALSE)
2336
2337define gb_LinkTarget__use_Xrandr
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002338$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002339
2340$(call gb_LinkTarget_set_include,$(1),\
2341 $$(INCLUDE) \
2342 $(XRANDR_CFLAGS) \
2343)
2344
2345$(call gb_LinkTarget_add_libs,$(1),\
2346 $(XRANDR_LIBS) \
2347)
2348endef
2349
2350else # XRANDR_DLOPEN
2351
2352define gb_LinkTarget__use_Xrandr
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002353$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002354
2355$(call gb_LinkTarget_add_defs,$(1),\
2356 -DXRANDR_DLOPEN \
2357)
2358endef
2359
2360endif # XRANDR_DLOPEN
2361
2362define gb_LinkTarget__use_Xrender
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002363$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002364
2365$(call gb_LinkTarget_set_include,$(1),\
2366 $$(INCLUDE) \
2367 $(XRENDER_CFLAGS) \
2368)
2369
2370$(call gb_LinkTarget_add_libs,$(1),\
2371 $(XRENDER_LIBS) \
2372)
2373endef
2374
2375endif # GUIBASE=unx
2376
Tor Lillqvist35491072011-08-02 21:22:35 +03002377
Michael Meeksb440cfc2013-02-28 12:05:07 +00002378gb_ExternalProject__use_nss3:=
2379
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002380ifeq (,$(filter DESKTOP,$(BUILD_TYPE)))
2381
Peter Foleyc003d252013-01-01 09:39:36 -05002382gb_LinkTarget__use_nss3:=
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002383
2384else
2385
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002386ifeq ($(SYSTEM_NSS),YES)
David Tardonb6aa4842011-08-11 13:10:14 +02002387
David Tardon2b9dbc82012-08-13 06:57:51 +02002388define gb_LinkTarget__use_nss3
2389$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmannea641222012-11-19 16:40:33 +01002390 -DSYSTEM_NSS \
David Tardon2b9dbc82012-08-13 06:57:51 +02002391)
2392
David Tardonb6aa4842011-08-11 13:10:14 +02002393$(call gb_LinkTarget_set_include,$(1),\
2394 $$(INCLUDE) \
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002395 $(NSS_CFLAGS) \
David Tardonb6aa4842011-08-11 13:10:14 +02002396)
2397
2398$(call gb_LinkTarget_add_libs,$(1),\
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002399 $(NSS_LIBS) \
David Tardonb6aa4842011-08-11 13:10:14 +02002400)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002401
David Tardonb6aa4842011-08-11 13:10:14 +02002402endef
2403
David Tardon2b9dbc82012-08-13 06:57:51 +02002404define gb_LinkTarget__use_plc4
2405$(call gb_LinkTarget__use_nss3,$(1))
2406
2407endef
2408
David Tardon6ef46562013-02-04 10:04:07 +01002409define gb_LinkTarget__use_ssl3
2410$(call gb_LinkTarget__use_nss3,$(1))
2411
2412endef
2413
David Tardonb6aa4842011-08-11 13:10:14 +02002414else
2415
David Tardonb6aa4842011-08-11 13:10:14 +02002416$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
2417 nspr4 \
2418 nss3 \
2419 plc4 \
Stephan Bergmannfc2b42e2012-08-13 11:46:50 +02002420 smime3 \
David Tardon6ef46562013-02-04 10:04:07 +01002421 ssl3 \
David Tardonb6aa4842011-08-11 13:10:14 +02002422))
2423
David Tardon2b9dbc82012-08-13 06:57:51 +02002424define gb_LinkTarget__use_nss3
Peter Foleyc003d252013-01-01 09:39:36 -05002425$(call gb_LinkTarget_use_package,$(1),nss)
David Tardon2b9dbc82012-08-13 06:57:51 +02002426$(call gb_LinkTarget_set_include,$(1),\
2427 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +02002428 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/public/nss \
2429 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/out/include \
David Tardon2b9dbc82012-08-13 06:57:51 +02002430)
2431
2432$(call gb_LinkTarget_use_libraries,$(1),\
2433 nspr4 \
2434 nss3 \
2435 smime3 \
2436)
2437
2438endef
2439
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002440define gb_LinkTarget__use_plc4
Peter Foleyc003d252013-01-01 09:39:36 -05002441$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahlc923f7d2012-04-07 23:22:08 +02002442$(call gb_LinkTarget_use_libraries,$(1),\
David Tardonb6aa4842011-08-11 13:10:14 +02002443 plc4 \
2444)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002445
David Tardonb6aa4842011-08-11 13:10:14 +02002446endef
2447
David Tardon6ef46562013-02-04 10:04:07 +01002448define gb_LinkTarget__use_ssl3
2449$(call gb_LinkTarget_use_package,$(1),nss)
2450$(call gb_LinkTarget_use_libraries,$(1),\
2451 ssl3 \
2452)
2453
2454endef
2455
Michael Meeksb440cfc2013-02-28 12:05:07 +00002456define gb_ExternalProject__use_nss3
2457$(call gb_ExternalProject_use_package,$(1),nss)
2458$(call gb_ExternalProject_use_libraries,$(1),\
2459 nspr4 \
2460 nss3 \
2461 smime3 \
2462)
2463
2464endef
2465
David Tardonb6aa4842011-08-11 13:10:14 +02002466endif
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002467endif # DESKTOP
David Tardonb6aa4842011-08-11 13:10:14 +02002468
Michael Stahl2ee5f242011-09-15 14:01:27 +02002469### Jars ############################################################
2470
Michael Stahl666173b2012-08-15 20:24:59 +02002471ifeq ($(SYSTEM_HSQLDB),YES)
2472
2473define gb_Jar__use_hsqldb
2474$(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
2475endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02002476define gb_JunitTest__use_hsqldb
2477$(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
2478endef
Michael Stahl666173b2012-08-15 20:24:59 +02002479
2480else # !SYSTEM_HSQLDB
2481
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002482$(eval $(call gb_Helper_register_jars,OOO,\
2483 hsqldb \
2484))
2485
Michael Stahl666173b2012-08-15 20:24:59 +02002486define gb_Jar__use_hsqldb
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002487$(call gb_Jar_use_jar,$(1),hsqldb)
Michael Stahl666173b2012-08-15 20:24:59 +02002488endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02002489define gb_JunitTest__use_hsqldb
2490$(call gb_JunitTest_use_jar,$(1),hsqldb)
2491endef
Michael Stahl666173b2012-08-15 20:24:59 +02002492
2493endif # SYSTEM_HSQLDB
2494
Michael Stahl2ee5f242011-09-15 14:01:27 +02002495
David Tardon3bcf9102011-10-04 09:44:48 +02002496ifeq ($(SYSTEM_BSH),YES)
2497
Michael Stahla4551262012-08-15 17:41:25 +02002498define gb_Jar__use_bsh
2499$(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
David Tardon3bcf9102011-10-04 09:44:48 +02002500endef
2501
2502else # !SYSTEM_BSH
2503
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002504$(eval $(call gb_Helper_register_jars,OOO,\
2505 bsh \
2506))
2507
Michael Stahla4551262012-08-15 17:41:25 +02002508define gb_Jar__use_bsh
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002509$(call gb_Jar_use_jar,$(1),bsh)
David Tardon3bcf9102011-10-04 09:44:48 +02002510endef
2511
2512endif # SYSTEM_BSH
2513
Michael Stahl2ee5f242011-09-15 14:01:27 +02002514
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002515ifeq ($(SYSTEM_RHINO),YES)
2516
Michael Stahla4551262012-08-15 17:41:25 +02002517define gb_Jar__use_rhino
2518$(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002519endef
2520
2521else # !SYSTEM_RHINO
2522
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002523$(eval $(call gb_Helper_register_jars,OOO,\
2524 js \
2525))
2526
Michael Stahla4551262012-08-15 17:41:25 +02002527define gb_Jar__use_rhino
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002528$(call gb_Jar_use_jar,$(1),js)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002529endef
2530
2531endif # SYSTEM_RHINO
2532
David Tardon9b530e12012-04-07 10:07:35 +02002533ifeq ($(SYSTEM_APACHE_COMMONS),YES)
2534
Michael Stahla4551262012-08-15 17:41:25 +02002535define gb_Jar__use_commons-codec
2536$(call gb_Jar_use_system_jar,$(1),$(COMMONS_CODEC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002537endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002538gb_ExternalProject__use_commons-codec :=
David Tardon9b530e12012-04-07 10:07:35 +02002539
Michael Stahla4551262012-08-15 17:41:25 +02002540define gb_Jar__use_commons-httpclient
2541$(call gb_Jar_use_system_jar,$(1),$(COMMONS_HTTPCLIENT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002542endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002543gb_ExternalProject__use_commons-httpclient :=
David Tardon9b530e12012-04-07 10:07:35 +02002544
Michael Stahla4551262012-08-15 17:41:25 +02002545define gb_Jar__use_commons-lang
2546$(call gb_Jar_usadd_linked_libse_system_jar,$(1),$(COMMONS_LANG_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002547endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002548gb_ExternalProject__use_commons-lang :=
David Tardon9b530e12012-04-07 10:07:35 +02002549
Michael Stahla4551262012-08-15 17:41:25 +02002550define gb_Jar__use_commons-logging
2551$(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002552endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002553gb_ExternalProject__use_commons-logging :=
David Tardon9b530e12012-04-07 10:07:35 +02002554
2555else # !SYSTEM_APACHE_COMMONS
2556
Michael Stahl87a723d2012-08-17 12:43:37 +02002557$(eval $(call gb_Helper_register_jars,OXT,\
Julien Nabet6188e1d2013-03-26 21:39:42 +01002558 commons-codec-1.6 \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002559 commons-httpclient-3.1 \
Julien Nabeta70aeef2013-03-26 21:49:53 +01002560 commons-lang-2.4 \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002561 commons-logging-1.1.1 \
2562))
2563
Michael Stahla4551262012-08-15 17:41:25 +02002564define gb_Jar__use_commons-codec
Julien Nabet6188e1d2013-03-26 21:39:42 +01002565$(call gb_Jar_use_jar,$(1),commons-codec-1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002566endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002567define gb_ExternalProject__use_commons-codec
2568$(call gb_ExternalProject_use_external_project,$(1),apache_commons_codec)
2569endef
David Tardon9b530e12012-04-07 10:07:35 +02002570
Michael Stahla4551262012-08-15 17:41:25 +02002571define gb_Jar__use_commons-httpclient
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002572$(call gb_Jar_use_jar,$(1),commons-httpclient-3.1)
David Tardon9b530e12012-04-07 10:07:35 +02002573endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002574define gb_ExternalProject__use_commons-httpclient
2575$(call gb_ExternalProject_use_external_project,$(1),apache_commons_httpclient)
2576endef
David Tardon9b530e12012-04-07 10:07:35 +02002577
Michael Stahla4551262012-08-15 17:41:25 +02002578define gb_Jar__use_commons-lang
Fridrich Štrba3b42b442013-03-26 21:52:35 +01002579$(call gb_Jar_use_jar,$(1),commons-lang-2.4)
David Tardon9b530e12012-04-07 10:07:35 +02002580endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002581define gb_ExternalProject__use_commons-lang
2582$(call gb_ExternalProject_use_external_project,$(1),apache_commons_lang)
2583endef
David Tardon9b530e12012-04-07 10:07:35 +02002584
Michael Stahla4551262012-08-15 17:41:25 +02002585define gb_Jar__use_commons-logging
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002586$(call gb_Jar_use_jar,$(1),commons-logging-1.1.1)
David Tardon9b530e12012-04-07 10:07:35 +02002587endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002588define gb_ExternalProject__use_commons-logging
2589$(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
2590endef
David Tardon9b530e12012-04-07 10:07:35 +02002591
2592endif # SYSTEM_APACHE_COMMONS
2593
2594
2595ifeq ($(SYSTEM_JFREEREPORT),YES)
2596
Michael Stahla4551262012-08-15 17:41:25 +02002597define gb_Jar__use_flow-engine
2598$(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002599endef
2600
Michael Stahla4551262012-08-15 17:41:25 +02002601define gb_Jar__use_flute
2602$(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002603endef
2604
Michael Stahla4551262012-08-15 17:41:25 +02002605define gb_Jar__use_libbase
2606$(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002607endef
2608
Michael Stahla4551262012-08-15 17:41:25 +02002609define gb_Jar__use_libfonts
2610$(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002611endef
2612
Michael Stahla4551262012-08-15 17:41:25 +02002613define gb_Jar__use_libformula
2614$(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002615endef
2616
Michael Stahla4551262012-08-15 17:41:25 +02002617define gb_Jar__use_liblayout
2618$(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002619endef
2620
Michael Stahla4551262012-08-15 17:41:25 +02002621define gb_Jar__use_libloader
2622$(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002623endef
2624
Michael Stahla4551262012-08-15 17:41:25 +02002625define gb_Jar__use_librepository
2626$(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002627endef
2628
Michael Stahla4551262012-08-15 17:41:25 +02002629define gb_Jar__use_libserializer
2630$(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002631endef
2632
Michael Stahla4551262012-08-15 17:41:25 +02002633define gb_Jar__use_libxml
2634$(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002635endef
2636
Michael Stahla4551262012-08-15 17:41:25 +02002637define gb_Jar__use_sac
2638$(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002639endef
2640
2641else # !SYSTEM_JFREEREPORT
2642
Michael Stahl87a723d2012-08-17 12:43:37 +02002643$(eval $(call gb_Helper_register_jars,OXT,\
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002644 flow-engine-0.9.4 \
2645 flute-1.1.6 \
2646 libbase-1.1.6 \
2647 libfonts-1.1.6 \
2648 libformula-1.1.7 \
2649 liblayout-0.2.10 \
2650 libloader-1.1.6 \
2651 librepository-1.1.6 \
2652 libserializer-1.1.6 \
2653 libxml-1.1.7 \
2654 sac \
2655))
2656
Michael Stahla4551262012-08-15 17:41:25 +02002657define gb_Jar__use_flow-engine
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002658$(call gb_Jar_use_jar,$(1),flow-engine-0.9.4)
David Tardon9b530e12012-04-07 10:07:35 +02002659endef
2660
Michael Stahla4551262012-08-15 17:41:25 +02002661define gb_Jar__use_flute
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002662$(call gb_Jar_use_jar,$(1),flute-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002663endef
2664
Michael Stahla4551262012-08-15 17:41:25 +02002665define gb_Jar__use_libbase
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002666$(call gb_Jar_use_jar,$(1),libbase-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002667endef
2668
Michael Stahla4551262012-08-15 17:41:25 +02002669define gb_Jar__use_libfonts
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002670$(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002671endef
2672
Michael Stahla4551262012-08-15 17:41:25 +02002673define gb_Jar__use_libformula
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002674$(call gb_Jar_use_jar,$(1),libformula-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02002675endef
2676
Michael Stahla4551262012-08-15 17:41:25 +02002677define gb_Jar__use_liblayout
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002678$(call gb_Jar_use_jar,$(1),liblayout-0.2.10)
David Tardon9b530e12012-04-07 10:07:35 +02002679endef
2680
Michael Stahla4551262012-08-15 17:41:25 +02002681define gb_Jar__use_libloader
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002682$(call gb_Jar_use_jar,$(1),libloader-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002683endef
2684
Michael Stahla4551262012-08-15 17:41:25 +02002685define gb_Jar__use_librepository
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002686$(call gb_Jar_use_jar,$(1),librepository-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002687endef
2688
Michael Stahla4551262012-08-15 17:41:25 +02002689define gb_Jar__use_libserializer
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002690$(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002691endef
2692
Michael Stahla4551262012-08-15 17:41:25 +02002693define gb_Jar__use_libxml
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002694$(call gb_Jar_use_jar,$(1),libxml-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02002695endef
2696
Michael Stahla4551262012-08-15 17:41:25 +02002697define gb_Jar__use_sac
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002698$(call gb_Jar_use_jar,$(1),sac)
David Tardon9b530e12012-04-07 10:07:35 +02002699endef
2700
2701endif # SYSTEM_JFREEREPORT
2702
David Tardonc2eca352012-12-02 10:51:37 +01002703
2704# Executables
2705
David Tardonedf67302012-12-30 12:27:04 +01002706# FIXME: the library target should be for build too
2707define gb_Executable__register_bestreversemap
2708$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
2709 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
2710)
2711endef
2712
David Tardonceb0d062012-12-30 13:11:43 +01002713# TODO depending on the whole URE might be overkill, but I do not have a
2714# Windows machine to debug it...
2715# FIXME: the library target should be for build too
2716define gb_Executable__register_climaker
2717$(call gb_Executable_add_runtime_dependencies,climaker,\
2718 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2719 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2720 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2721 $(call gb_UnoApiMerge_get_target_for_build,ure/types) \
2722)
2723endef
2724
David Tardonedf67302012-12-30 12:27:04 +01002725ifneq ($(SYSTEM_ICU),YES)
2726
2727define gb_Executable__register_gendict
2728$(call gb_Executable_add_runtime_dependencies,gendict,\
2729 $(call gb_Package_get_target_for_build,icu) \
2730)
2731endef
2732
2733endif
2734
David Tardonceb0d062012-12-30 13:11:43 +01002735define gb_Executable__register_idlc
2736$(call gb_Executable_add_runtime_dependencies,idlc,\
2737 $(call gb_ExternalExecutable_get_dependencies,ucpp) \
2738)
2739endef
2740
David Tardonedf67302012-12-30 12:27:04 +01002741define gb_Executable__register_localize
2742$(call gb_Executable_add_runtime_dependencies,localize,\
2743 $(foreach exec,cfgex helpex propex transex3 treex uiex ulfex xrmex,\
2744 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
2745 ) \
2746)
2747endef
2748
2749# The dependencies on ure/services.rdb and ure/types.rdb are implicitly required
2750# due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
2751# FIXME: the library target should be for build too
2752define gb_Executable__register_saxparser
2753$(call gb_Executable_add_runtime_dependencies,saxparser,\
Matúš Kukanbdfdd052013-03-08 14:14:46 +01002754 $(call gb_ComponentTarget_get_outdir_target,sax/source/expatwrap/expwrap) \
David Tardonedf67302012-12-30 12:27:04 +01002755 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2756 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2757 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2758 $(call gb_UnoApiMerge_get_target_for_build,ure/types) \
2759)
2760endef
2761
2762# NOTE: the dependencies on ure/services.rdb and ure/types.rdb are implicitly
2763# required due to the settings for URE_SERVICES and URE_TYPES in
2764# cppuhelper/source/unorc
2765# FIXME: the library target should be for build too
2766define gb_Executable__register_uno
2767$(call gb_Executable_add_runtime_dependencies,uno,\
2768 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2769 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2770 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2771 $(call gb_UnoApiMerge_get_target_for_build,ure/types) \
2772)
2773endef
2774
2775
2776# External executables
2777
David Tardonc2eca352012-12-02 10:51:37 +01002778ifneq ($(SYSTEM_LIBXML_FOR_BUILD),YES)
2779
2780gb_ExternalExecutable__register_xmllint :=
2781
2782else # ! SYSTEM_LIBXML_FOR_BUILD
2783
2784define gb_ExternalExecutable__register_xmllint
David Tardonbbf2f412012-12-29 10:00:49 +01002785$(call gb_ExternalExecutable_set_internal,xmllint)
David Tardonc2eca352012-12-02 10:51:37 +01002786
2787endef
2788
2789endif # SYSTEM_LIBXML_FOR_BUILD
2790
2791ifeq ($(SYSTEM_LIBXSLT_FOR_BUILD),YES)
2792
2793gb_ExternalExecutable__register_xsltproc :=
2794
2795else # ! SYSTEM_LIBXSLT_FOR_BUILD
2796
2797define gb_ExternalExecutable__register_xsltproc
David Tardonbbf2f412012-12-29 10:00:49 +01002798$(call gb_ExternalExecutable_set_internal,xsltproc)
Peter Foley52e47b62013-02-06 17:59:18 -05002799$(call gb_ExternalExecutable_add_dependencies,xsltproc,$(call gb_Package_get_target,xslt))
David Tardonc2eca352012-12-02 10:51:37 +01002800
2801endef
2802
2803endif # SYSTEM_LIBXSLT_FOR_BUILD
2804
2805ifneq (,$(SYSTEM_UCPP))
2806
2807gb_ExternalExecutable__register_ucpp :=
2808
2809else # ! SYSTEM_UCPP
2810
2811define gb_ExternalExecutable__register_ucpp
David Tardonbbf2f412012-12-29 10:00:49 +01002812$(call gb_ExternalExecutable_set_internal,ucpp)
David Tardonc2eca352012-12-02 10:51:37 +01002813
2814endef
2815
2816endif # SYSTEM_UCPP
2817
Matúš Kukane4826722013-03-05 22:03:38 +01002818ifeq (,$(PYTHON_FOR_BUILD))
David Tardonc2eca352012-12-02 10:51:37 +01002819
2820define gb_ExternalExecutable__register_python
Christian Lohmaier04032bd2013-03-19 17:27:01 +01002821ifeq ($(OS),MACOSX)
2822
2823# use set_external, to avoid having the command added as prerequisite for the
2824# targets that make use of it. (Otherwise make will choke as it doesn't have a
2825# matching rule to build that specific file)
2826$(call gb_ExternalExecutable_set_external,python,$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO/LibreOfficePython.framework/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR))
2827# the Zip ensures that internal python has been built (cannot use the Package
2828# target, as that is not used on Mac)
2829$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Zip_get_outdir_target_for_build,LibreOfficePython.framework))
2830
2831else
2832
David Tardonbbf2f412012-12-29 10:00:49 +01002833$(call gb_ExternalExecutable_set_internal,python)
2834$(call gb_ExternalExecutable_set_precommand,python,$(gb_PYTHON_PRECOMMAND))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01002835$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
2836
2837endif
David Tardonc2eca352012-12-02 10:51:37 +01002838
2839endef
2840
Matúš Kukane4826722013-03-05 22:03:38 +01002841else
2842
2843define gb_ExternalExecutable__register_python
2844$(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
2845
2846endef
2847
2848endif # PYTHON_FOR_BUILD
David Tardonc2eca352012-12-02 10:51:37 +01002849
David Tardon63069262012-12-29 12:56:24 +01002850ifneq ($(SYSTEM_GENBRK),)
2851
2852define gb_ExternalExecutable__register_genbrk
2853$(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
2854
2855endef
2856
2857else # ! SYSTEM_GENBRK
2858
2859define gb_ExternalExecutable__register_genbrk
2860$(call gb_ExternalExecutable_set_internal,genbrk)
2861$(call gb_ExternalExecutable_add_dependencies,genbrk,\
2862 $(call gb_Package_get_target_for_build,icu) \
2863)
2864
2865endef
2866
2867endif
2868
2869ifneq ($(SYSTEM_GENCCODE),)
2870
2871define gb_ExternalExecutable__register_genccode
2872$(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
2873
2874endef
2875
2876else # ! SYSTEM_GENCCODE
2877
2878define gb_ExternalExecutable__register_genccode
2879$(call gb_ExternalExecutable_set_internal,genccode)
2880$(call gb_ExternalExecutable_add_dependencies,genccode,\
2881 $(call gb_Package_get_target_for_build,icu) \
2882)
2883
2884endef
2885
2886endif
2887
2888ifneq ($(SYSTEM_GENCMN),)
2889
2890define gb_ExternalExecutable__register_gencmn
2891$(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
2892
2893endef
2894
2895else # ! SYSTEM_GENCMN
2896
2897define gb_ExternalExecutable__register_gencmn
2898$(call gb_ExternalExecutable_set_internal,gencmn)
2899$(call gb_ExternalExecutable_add_dependencies,gencmn,\
2900 $(call gb_Package_get_target_for_build,icu) \
2901)
2902
2903endef
2904
2905endif
2906
Michael Stahlc74af0d2011-04-01 20:49:35 +00002907# vim: set noet sw=4 ts=4: