blob: 2f2502938a53d8bdc4b5bc4b836c2e24133e9ecc [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#
Michael Meeks35bd9b12013-05-16 21:56:04 +01003# This file is part of the LibreOffice project.
Kohei Yoshidaa6639312012-07-27 22:14:39 -04004#
Michael Meeks35bd9b12013-05-16 21:56:04 +01005# This Source Code Form is subject to the terms of the Mozilla Public
6# License, v. 2.0. If a copy of the MPL was not distributed with this
7# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Michael Stahlc74af0d2011-04-01 20:49:35 +00008#
Michael Meeks35bd9b12013-05-16 21:56:04 +01009# This file incorporates work covered by the following license notice:
Michael Stahlc74af0d2011-04-01 20:49:35 +000010#
Michael Meeks35bd9b12013-05-16 21:56:04 +010011# Licensed to the Apache Software Foundation (ASF) under one or more
12# contributor license agreements. See the NOTICE file distributed
13# with this work for additional information regarding copyright
14# ownership. The ASF licenses this file to you under the Apache
15# License, Version 2.0 (the "License"); you may not use this file
16# except in compliance with the License. You may obtain a copy of
17# the License at http://www.apache.org/licenses/LICENSE-2.0 .
Michael Stahlc74af0d2011-04-01 20:49:35 +000018#
Michael Stahlc74af0d2011-04-01 20:49:35 +000019
20# this file describes all the external libraries
21# depending on the configure options these may be taken from the system,
22# or the internal/bundled copy may be built.
23
24# for every external, a function gb_LinkTarget_use__FOO is defined,
25# once for the system case, once for the internal case.
26
27# in the system case, no libraries should be registered, but the target-local
28# variable LIBS should be set to FOO_LIBS, and INCLUDES to FOO_CFLAGS.
29
Matúš Kukan8e535df2012-04-07 13:59:33 +020030# External headers
31
Fridrich Štrbacad422a2013-03-06 16:33:07 +010032ifeq ($(SYSTEM_MARIADB),YES)
33
34define gb_LinkTarget__use_mariadb
35$(call gb_LinkTarget_set_include,$(1),\
36 $$(INCLUDE) \
37 $(MARIADB_CFLAGS) \
38)
39$(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
40
41endef
42gb_ExternalProject__use_mariadb :=
43
44else # !SYSTEM_MARIADB
45
46$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
47 mariadblib \
48))
49
50define gb_LinkTarget__use_mariadb
Michael Stahl6416e9b2013-05-08 00:35:28 +020051$(call gb_LinkTarget_set_include,$(1),\
52 $$(INCLUDE) \
53 $(MARIADB_CFLAGS) \
54)
Fridrich Štrbacad422a2013-03-06 16:33:07 +010055$(call gb_LinkTarget_use_static_libraries,$(1),\
56 mariadblib \
57)
58
59endef
60define gb_ExternalProject__use_mariadb
Fridrich Štrbacad422a2013-03-06 16:33:07 +010061$(call gb_ExternalProject_use_static_libraries,$(1),mariadblib)
62
63endef
64
65endif # SYSTEM_MARIADB
66
67
Peter Foley1bd28842011-09-09 17:42:24 -040068ifeq ($(SYSTEM_MESA_HEADERS),YES)
69
Matúš Kukan8e535df2012-04-07 13:59:33 +020070gb_LinkTarget__use_mesa_headers :=
Peter Foley1bd28842011-09-09 17:42:24 -040071
72else
73
Matúš Kukan8e535df2012-04-07 13:59:33 +020074define gb_LinkTarget__use_mesa_headers
Michael Stahl6b2ce082013-05-06 17:43:54 +020075$(call gb_LinkTarget_set_include,$(1),\
76 -I$(SRCDIR)/Mesa/inc \
77 $$(INCLUDE) \
78)
Matúš Kukan8e535df2012-04-07 13:59:33 +020079
Peter Foley1bd28842011-09-09 17:42:24 -040080endef
81
82endif
83
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010084ifeq ($(SYSTEM_NPAPI_HEADERS),YES)
Matúš Kukan8e535df2012-04-07 13:59:33 +020085
Michael Stahl96907bf2013-05-07 00:50:15 +020086# yes this uses internal headers too...
87# they are split across 2 dirs for this reason
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010088define gb_LinkTarget__use_npapi_headers
Matúš Kukan8f6510b2012-06-02 21:54:26 +020089$(call gb_LinkTarget_set_include,$(1),\
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010090 $(NPAPI_HEADERS_CFLAGS) \
Michael Stahl96907bf2013-05-07 00:50:15 +020091 -I$(SRCDIR)/np_sdk \
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
Matúš Kukan8f6510b2012-06-02 21:54:26 +0200100$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl96907bf2013-05-07 00:50:15 +0200101 -I$(SRCDIR)/np_sdk/inc \
102 -I$(SRCDIR)/np_sdk \
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
Michael Stahlfea65aa2013-05-06 20:09:47 +0200122$(call gb_LinkTarget_set_include,$(1),\
123 -I$(SRCDIR)/unixODBC/inc \
124 $$(INCLUDE) \
125)
Matúš Kukan5eff0b62012-04-07 13:46:59 +0200126
127endef
128
129endif
130
Matúš Kukan54a06c62012-08-25 01:29:00 +0200131ifeq ($(SYSTEM_VIGRA),YES)
132
133gb_LinkTarget__use_vigra_headers :=
134
135else
136
137define gb_LinkTarget__use_vigra_headers
138$(call gb_LinkTarget_use_unpacked,$(1),vigra)
139$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200140 -I$(call gb_UnpackedTarball_get_dir,vigra/include) \
Matúš Kukan54a06c62012-08-25 01:29:00 +0200141 $$(INCLUDE) \
142)
143
144endef
145
146endif
147
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200148ifeq ($(SYSTEM_MDDS),YES)
149
150gb_LinkTarget__use_mdds_headers :=
151
152else
153
154define gb_LinkTarget__use_mdds_headers
155$(call gb_LinkTarget_use_unpacked,$(1),mdds)
156$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200157 -I$(call gb_UnpackedTarball_get_dir,mdds/include) \
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200158 $$(INCLUDE) \
159)
160
161endef
162
163endif
164
Michael Stahl674e7912013-05-06 20:23:49 +0200165ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
David Tardoneafaec92012-12-21 14:08:27 +0100166
167define gb_LinkTarget__use_sane_headers
Michael Stahl72279ea2013-05-06 20:14:35 +0200168$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl674e7912013-05-06 20:23:49 +0200169 -I$(SRCDIR)/$(if $(filter WNT,$(OS)),twain,sane)/inc \
Michael Stahl72279ea2013-05-06 20:14:35 +0200170 $$(INCLUDE) \
David Tardoneafaec92012-12-21 14:08:27 +0100171)
172
173endef
174
175else
176
177gb_LinkTarget__use_sane_headers :=
178
179endif
180
Matúš Kukan8e535df2012-04-07 13:59:33 +0200181# External libraries
182
David Tardon785e1d92011-07-25 10:34:22 +0200183ifeq ($(SYSTEM_CPPUNIT),YES)
184
185define gb_LinkTarget__use_cppunit
186$(call gb_LinkTarget_set_include,$(1),\
187 $$(INCLUDE) \
188 $(CPPUNIT_CFLAGS) \
189)
190
191$(call gb_LinkTarget_add_libs,$(1),\
192 $(CPPUNIT_LIBS) \
193)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100194
David Tardon785e1d92011-07-25 10:34:22 +0200195endef
196
197else
198
Stephan Bergmann39a6e452012-12-07 08:11:16 +0100199$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
David Tardon785e1d92011-07-25 10:34:22 +0200200 cppunit \
201))
202
203define gb_LinkTarget__use_cppunit
Peter Foley143835b2012-11-25 16:37:40 -0500204$(call gb_LinkTarget_use_package,$(1),cppunit)
205
Michael Stahlc923f7d2012-04-07 23:22:08 +0200206$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon785e1d92011-07-25 10:34:22 +0200207 cppunit \
208)
Peter Foley143835b2012-11-25 16:37:40 -0500209$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200210 -I$(call gb_UnpackedTarball_get_dir,cppunit/include)\
Peter Foley143835b2012-11-25 16:37:40 -0500211 $$(INCLUDE) \
212)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100213
David Tardon785e1d92011-07-25 10:34:22 +0200214endef
215
216endif
Michael Stahlc74af0d2011-04-01 20:49:35 +0000217
Tor Lillqvist40900fb2013-01-03 12:48:14 +0200218define gb_LinkTarget__use_iconv
219$(call gb_LinkTarget_add_libs,$(1),-liconv)
220
221endef
222
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100223ifeq ($(SYSTEM_MARIADB),YES)
Peter Foleyc322d502013-01-23 16:29:08 -0500224
225define gb_LinkTarget__use_mysql
226
227$(call gb_LinkTarget_add_defs,$(1),\
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100228 -DSYSTEM_MARIADB \
Peter Foleyc322d502013-01-23 16:29:08 -0500229)
230
231$(call gb_LinkTarget_add_libs,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100232 $(MARIADB_LIBS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500233)
234
235$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100236 $(MARIADB_CFLAGS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500237 $$(INCLUDE) \
238)
239endef
240
241else
242
243define gb_LinkTarget__use_mysql
244
245$(call gb_LinkTarget_set_include,$(1),\
Peter Foleyc322d502013-01-23 16:29:08 -0500246 $$(INCLUDE) \
247)
248
249endef
250
251endif
252
253ifeq ($(SYSTEM_MYSQL_CPPCONN),YES)
254
255define gb_LinkTarget__use_mysqlcppconn
256$(call gb_LinkTarget_add_libs,$(1),\
257 -lmysqlcppconn \
258)
259
260$(call gb_LinkTarget_add_defs,$(1),\
Peter Foleyb02d7992013-01-24 15:43:52 -0500261 -DSYSTEM_MYSQL_CPPCONN \
Peter Foleyc322d502013-01-23 16:29:08 -0500262)
263endef
264
265else
266
Michael Stahl5f356bd2013-01-28 23:53:30 +0100267$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
Peter Foleyc322d502013-01-23 16:29:08 -0500268 mysqlcppconn \
269))
270
Michael Stahl5f356bd2013-01-28 23:53:30 +0100271# note: this does not link mysqlcppconn, it is loaded via osl_loadModuleRelative
Peter Foleyc322d502013-01-23 16:29:08 -0500272define gb_LinkTarget__use_mysqlcppconn
273
Michael Stahl5f356bd2013-01-28 23:53:30 +0100274$(call gb_LinkTarget_use_unpacked,$(1),mysqlcppconn)
275
Peter Foleyb02d7992013-01-24 15:43:52 -0500276$(call gb_LinkTarget_add_defs,$(1),\
277 -DCPPCONN_LIB_BUILD \
278)
279
Peter Foleyc322d502013-01-23 16:29:08 -0500280$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200281 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn) \
282 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn)/cppconn \
Peter Foleyc322d502013-01-23 16:29:08 -0500283 $$(INCLUDE) \
284)
285
286endef
287
288endif
289
Michael Stahlc74af0d2011-04-01 20:49:35 +0000290ifeq ($(SYSTEM_ZLIB),YES)
291
292define gb_LinkTarget__use_zlib
Michael Stahla88ef232011-04-13 16:11:41 +0000293$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000294 -DSYSTEM_ZLIB \
295)
296$(call gb_LinkTarget_add_libs,$(1),-lz)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100297
Michael Stahlc74af0d2011-04-01 20:49:35 +0000298endef
299
David Tardoncb276232012-10-26 15:33:26 +0200300# nothing on system
301define gb_LinkTarget__use_zlib_x64
302
303endef
304
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100305gb_ExternalProject__use_zlib :=
306
Michael Stahlc74af0d2011-04-01 20:49:35 +0000307else # !SYSTEM_ZLIB
308
309$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Caolán McNamara3934efe2012-04-13 14:06:05 +0100310 zlib \
David Tardoncb276232012-10-26 15:33:26 +0200311 zlib_x64 \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000312))
313
David Tardoncb276232012-10-26 15:33:26 +0200314define gb_LinkTarget__use_zlib_multiarch
315$(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
316
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200317$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl3c38b772013-05-08 15:47:24 +0200318 $(ZLIB_CFLAGS) \
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200319 $$(INCLUDE) \
320)
David Tardoncb276232012-10-26 15:33:26 +0200321
Michael Stahlc923f7d2012-04-07 23:22:08 +0200322$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardoncb276232012-10-26 15:33:26 +0200323 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000324)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100325
Michael Stahlc74af0d2011-04-01 20:49:35 +0000326endef
327
David Tardoncb276232012-10-26 15:33:26 +0200328define gb_LinkTarget__use_zlib
329$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
330
331endef
332
333define gb_LinkTarget__use_zlib_x64
334$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
335
336endef
337
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100338define gb_ExternalProject__use_zlib
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100339$(call gb_ExternalProject_use_static_libraries,$(1),zlib)
340
341endef
342
Michael Stahlc74af0d2011-04-01 20:49:35 +0000343endif # SYSTEM_ZLIB
344
345
346ifeq ($(SYSTEM_JPEG),YES)
347
348define gb_LinkTarget__use_jpeg
349$(call gb_LinkTarget_add_libs,$(1),-ljpeg)
350$(call gb_LinkTarget_set_ldflags,$(1),\
Michael Stahl73d2fe92011-04-13 16:11:39 +0000351 $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000352)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100353
Michael Stahlc74af0d2011-04-01 20:49:35 +0000354endef
355
356else # !SYSTEM_JPEG
357
358$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
David Tardon4ed91fd2012-10-12 09:32:02 +0200359 jpeg \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000360))
361
362define gb_LinkTarget__use_jpeg
Matúš Kukane8a28be2012-01-21 00:46:29 +0100363$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlb65859c2013-05-08 17:30:40 +0200364 -I$(call gb_UnpackedTarball_get_dir,jpeg) \
Matúš Kukane8a28be2012-01-21 00:46:29 +0100365 $$(INCLUDE) \
Matúš Kukane8a28be2012-01-21 00:46:29 +0100366)
367
Michael Stahlc923f7d2012-04-07 23:22:08 +0200368$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon4ed91fd2012-10-12 09:32:02 +0200369 jpeg \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000370)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100371
Michael Stahlc74af0d2011-04-01 20:49:35 +0000372endef
373
374endif # SYSTEM_JPEG
375
Peter Foley1d1bab42012-10-28 12:00:06 -0400376ifeq ($(SYSTEM_MYTHES),YES)
377
378define gb_LinkTarget__use_mythes
Rene Engelhard99ef1f52012-10-28 23:00:03 +0100379$(call gb_LinkTarget_set_include,$(1),\
380 $$(INCLUDE) \
381 $(MYTHES_CFLAGS) \
382)
383$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
384
Peter Foley1d1bab42012-10-28 12:00:06 -0400385endef
386
387else # !SYSTEM_MYTHES
388
389$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
390 mythes \
391))
392
393define gb_LinkTarget__use_mythes
Michael Stahl90ad80e32013-05-07 23:59:00 +0200394$(call gb_LinkTarget_set_include,$(1),\
395 -I$(call gb_UnpackedTarball_get_dir,mythes) \
396 $$(INCLUDE) \
397)
Peter Foley1d1bab42012-10-28 12:00:06 -0400398$(call gb_LinkTarget_use_package,$(1),\
399 mythes \
400)
Matúš Kukan327db9f2012-10-28 22:40:30 +0100401$(call gb_LinkTarget_use_static_libraries,$(1),\
402 mythes \
Peter Foley1d1bab42012-10-28 12:00:06 -0400403)
Matúš Kukan327db9f2012-10-28 22:40:30 +0100404
Peter Foley1d1bab42012-10-28 12:00:06 -0400405endef
406
407endif # SYSTEM_MYTHES
408
Michael Stahlc74af0d2011-04-01 20:49:35 +0000409
410ifeq ($(SYSTEM_EXPAT),YES)
411
David Tardon51149802013-04-09 09:22:20 +0200412define gb_LinkTarget__use_expat_impl
413$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000414
Michael Stahla88ef232011-04-13 16:11:41 +0000415$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000416 -DSYSTEM_EXPAT \
417)
418
419$(call gb_LinkTarget_add_libs,$(1),-lexpat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100420
Michael Stahlc74af0d2011-04-01 20:49:35 +0000421endef
422
Michael Stahl77289672012-11-17 00:36:29 +0100423gb_ExternalProject__use_expat :=
424
Michael Stahlc74af0d2011-04-01 20:49:35 +0000425else # !SYSTEM_EXPAT
426
427$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Michael Stahl70527512012-11-14 20:43:57 +0100428 expat \
Michael Stahlabc873f2012-10-25 13:02:55 +0200429 expat_x64 \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000430))
431
David Tardon51149802013-04-09 09:22:20 +0200432define gb_LinkTarget__use_expat_impl
433$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000434
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700435$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl5e037bb2013-05-07 21:47:18 +0200436 -I$(call gb_UnpackedTarball_get_dir,expat)/lib \
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700437 $$(INCLUDE) \
438)
439
Michael Stahlc923f7d2012-04-07 23:22:08 +0200440$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000441 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000442)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100443
Michael Stahlc74af0d2011-04-01 20:49:35 +0000444endef
445
Michael Stahl77289672012-11-17 00:36:29 +0100446define gb_ExternalProject__use_expat
Michael Stahl77289672012-11-17 00:36:29 +0100447$(call gb_ExternalProject_use_static_libraries,$(1),expat)
448
449endef
450
Michael Stahlc74af0d2011-04-01 20:49:35 +0000451endif # SYSTEM_EXPAT
452
David Tardon51149802013-04-09 09:22:20 +0200453define gb_LinkTarget__use_expat
454$(call gb_LinkTarget__use_expat_impl,$(1),expat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100455
Michael Stahlc74af0d2011-04-01 20:49:35 +0000456endef
457
David Tardon51149802013-04-09 09:22:20 +0200458define gb_LinkTarget__use_expat_x64
459$(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100460
Michael Stahlc74af0d2011-04-01 20:49:35 +0000461endef
462
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +0300463ifeq ($(OS),ANDROID)
464$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
465 fontconfig \
466 freetype \
467))
468endif
Michael Stahlc74af0d2011-04-01 20:49:35 +0000469
Peter Foleydd584cb2012-11-03 13:54:46 -0400470ifeq ($(SYSTEM_HYPH),YES)
471
472define gb_LinkTarget__use_hyphen
473$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
474
475endef
476
477else # !SYSTEM_HYPH
478
479$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
480 hyphen \
481))
482
483define gb_LinkTarget__use_hyphen
484$(call gb_LinkTarget_use_unpacked,$(1),hyphen)
485$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200486 -I$(call gb_UnpackedTarball_get_dir,hyphen)\
Peter Foleydd584cb2012-11-03 13:54:46 -0400487 $$(INCLUDE) \
488)
489$(call gb_LinkTarget_use_static_libraries,$(1),\
490 hyphen \
491)
492
493endef
494
495endif # SYSTEM_HYPH
496
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100497ifeq ($(SYSTEM_HUNSPELL),YES)
498
499define gb_LinkTarget__use_hunspell
500$(call gb_LinkTarget_set_include,$(1),\
501 $$(INCLUDE) \
502 $(HUNSPELL_CFLAGS) \
503)
504$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
505
506endef
507
508else # !SYSTEM_HUNSPELL
509
Matúš Kukan472a7db2011-12-27 00:16:36 +0100510$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Matúš Kukan327db9f2012-10-28 22:40:30 +0100511 hunspell \
Matúš Kukan472a7db2011-12-27 00:16:36 +0100512))
513
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100514define gb_LinkTarget__use_hunspell
515$(call gb_LinkTarget_add_defs,$(1),\
516 -DHUNSPELL_STATIC \
517)
Matúš Kukan7a030392012-10-29 23:29:37 +0100518$(call gb_LinkTarget_use_unpacked,$(1),hunspell)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100519$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200520 -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
Matúš Kukan7a030392012-10-29 23:29:37 +0100521 $$(INCLUDE) \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100522)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200523$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan327db9f2012-10-28 22:40:30 +0100524 hunspell \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100525)
526
527endef
528
529endif # SYSTEM_HUNSPELL
530
531
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200532ifeq ($(SYSTEM_BOOST),YES)
533
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200534define gb_LinkTarget__use_boostdatetime
David Tardon0f6919c2012-06-06 17:04:01 +0200535$(call gb_LinkTarget_set_include,$(1),\
536 $$(INCLUDE) \
537 $(BOOST_CPPFLAGS) \
538)
539
540$(call gb_LinkTarget_add_ldflags,$(1),\
541 $(BOOST_LDFLAGS) \
542)
543
544$(call gb_LinkTarget_add_libs,$(1),\
545 $(BOOST_DATE_TIME_LIB) \
546)
547
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200548endef
549
Stephan Bergmann93208022013-02-16 22:56:19 +0100550define gb_LinkTarget__use_boost_headers
551$(call gb_LinkTarget_set_include,$(1),\
552 $$(INCLUDE) \
553 $(BOOST_CPPFLAGS) \
554)
555
556endef
557
Peter Foleycdb6eca2012-11-10 08:56:12 -0500558gb_ExternalProject__use_boost_headers:=
559
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200560else # !SYSTEM_BOOST
561
562$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
563 boostdatetime \
Kohei Yoshida0454b732012-09-06 15:10:19 -0400564))
565
566ifeq ($(OS),WNT)
567$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Kohei Yoshidaaf463042012-09-06 13:57:22 -0400568 boostthread \
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200569))
Michael Stahl7f2e1682012-09-06 20:22:11 +0200570
571define gb_LinkTarget__use_boostthread
572$(call gb_LinkTarget_add_defs,$(1),\
573 -DBOOST_ALL_NO_LIB \
574)
575
576$(call gb_LinkTarget_use_static_libraries,$(1),\
577 boostthread \
578)
579endef
580
581endif # WNT
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200582
583define gb_LinkTarget__use_boostdatetime
Michael Stahl7f2e1682012-09-06 20:22:11 +0200584$(call gb_LinkTarget_add_defs,$(1),\
585 -DBOOST_ALL_NO_LIB \
586)
587
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200588$(call gb_LinkTarget_use_static_libraries,$(1),\
589 boostdatetime \
590)
591
592endef
593
Peter Foleye1f742a2012-11-12 18:37:10 -0500594define gb_LinkTarget__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100595$(call gb_LinkTarget_use_unpacked,$(1),boost)
Michael Stahla53586f2013-01-26 21:19:13 +0100596$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200597 -I$(call gb_UnpackedTarball_get_dir,boost) \
Michael Stahla53586f2013-01-26 21:19:13 +0100598 $$(INCLUDE) \
599)
Peter Foleye1f742a2012-11-12 18:37:10 -0500600
601endef
602
Peter Foleycdb6eca2012-11-10 08:56:12 -0500603define gb_ExternalProject__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100604$(call gb_ExternalProject_get_preparation_target,$(1)) :| $(call gb_UnpackedTarball_get_final_target,boost)
Peter Foleycdb6eca2012-11-10 08:56:12 -0500605
606endef
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200607endif # SYSTEM_BOOST
608
609
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100610ifeq ($(SYSTEM_CMIS),YES)
Matúš Kukan464b4332012-01-15 02:12:49 +0100611
612define gb_LinkTarget__use_cmis
613$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100614 $$(INCLUDE) \
Matúš Kukan707194e2012-09-06 18:19:34 +0200615 $(CMIS_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100616)
Matúš Kukan707194e2012-09-06 18:19:34 +0200617$(call gb_LinkTarget_add_libs,$(1),$(CMIS_LIBS))
Matúš Kukan464b4332012-01-15 02:12:49 +0100618
619endef
620
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100621else # !SYSTEM_CMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100622
623$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
624 cmislib \
625))
626
627define gb_LinkTarget__use_cmis
Michael Stahl759d02b2013-05-08 00:55:21 +0200628$(call gb_LinkTarget_set_include,$(1),\
629 -I$(call gb_UnpackedTarball_get_dir,cmis)/src \
630 $$(INCLUDE) \
631)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200632$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100633 cmislib \
634)
635
636endef
637
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100638endif # SYSTEM_CMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100639
Peter Foleye5ccda42012-12-25 11:23:58 -0500640ifeq ($(OS)$(COM),WNTGCC)
641
642define gb_LinkTarget__use_jawt
643$(call gb_LinkTarget_use_packages,$(1),\
644 jawt \
645)
646
647endef
648
649else # $(OS)$(COM) != WNTGCC
650
651gb_LinkTarget__use_jawt :=
652
653endif # $(OS)$(COM) = WNTGCC
654
Matúš Kukan464b4332012-01-15 02:12:49 +0100655
Matúš Kukanbd030302011-12-03 15:06:52 +0100656ifeq ($(SYSTEM_LIBEXTTEXTCAT),YES)
657
658define gb_LinkTarget__use_libexttextcat
659$(call gb_LinkTarget_set_include,$(1),\
660 $$(INCLUDE) \
661 $(LIBEXTTEXTCAT_CFLAGS) \
662)
Peter Foley31219f02012-11-09 17:25:56 -0500663$(call gb_LinkTarget_add_defs,$(1),\
664 -DSYSTEM_LIBEXTTEXTCAT \
665)
Matúš Kukanbd030302011-12-03 15:06:52 +0100666$(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
667
668endef
669
670else # !SYSTEM_LIBEXTTEXTCAT
671
Matúš Kukanbd030302011-12-03 15:06:52 +0100672$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
Peter Foley31219f02012-11-09 17:25:56 -0500673 exttextcat \
Matúš Kukanbd030302011-12-03 15:06:52 +0100674))
Matúš Kukanbd030302011-12-03 15:06:52 +0100675
676define gb_LinkTarget__use_libexttextcat
Michael Stahlc923f7d2012-04-07 23:22:08 +0200677$(call gb_LinkTarget_use_static_libraries,$(1),\
Peter Foley31219f02012-11-09 17:25:56 -0500678 exttextcat \
Matúš Kukanbd030302011-12-03 15:06:52 +0100679)
Peter Foley31219f02012-11-09 17:25:56 -0500680
681$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200682 -I$(call gb_UnpackedTarball_get_dir,exttextcat/src) \
Peter Foley31219f02012-11-09 17:25:56 -0500683 $$(INCLUDE) \
684)
Matúš Kukanbd030302011-12-03 15:06:52 +0100685
686endef
687
688endif # SYSTEM_LIBEXTTEXTCAT
689
690
Michael Stahlc74af0d2011-04-01 20:49:35 +0000691ifeq ($(SYSTEM_LIBXML),YES)
692
693define gb_LinkTarget__use_libxml2
Michael Stahla88ef232011-04-13 16:11:41 +0000694$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000695 -DSYSTEM_LIBXML \
696)
697$(call gb_LinkTarget_set_include,$(1),\
698 $$(INCLUDE) \
699 $(LIBXML_CFLAGS) \
700)
701$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100702
Michael Stahlc74af0d2011-04-01 20:49:35 +0000703endef
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500704gb_ExternalProject__use_libxml2:=
Michael Stahlc74af0d2011-04-01 20:49:35 +0000705
706else # !SYSTEM_LIBXML
707
708$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
709 xml2 \
710))
711
712define gb_LinkTarget__use_libxml2
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500713$(call gb_LinkTarget_use_package,$(1),xml2)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200714$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000715 xml2 \
716)
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500717$(call gb_LinkTarget_set_include,$(1),\
718 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200719 -I$(call gb_UnpackedTarball_get_dir,xml2)/include \
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500720)
721
722endef
723define gb_ExternalProject__use_libxml2
724$(call gb_ExternalProject_use_package,$(1),xml2)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100725
Michael Stahlc74af0d2011-04-01 20:49:35 +0000726endef
727
728endif # SYSTEM_LIBXML
729
730
731ifeq ($(SYSTEM_LIBXSLT),YES)
732
733define gb_LinkTarget__use_libxslt
734$(call gb_LinkTarget_set_include,$(1),\
735 $$(INCLUDE) \
736 $(LIBXSLT_CFLAGS) \
737)
738$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100739
Michael Stahlc74af0d2011-04-01 20:49:35 +0000740endef
741
David Tardonab03e872012-08-15 07:20:13 +0200742define gb_LinkTarget__use_libexslt
743$(call gb_LinkTarget_set_include,$(1),\
744 $$(INCLUDE) \
745 $(LIBEXSLT_CFLAGS) \
746)
747
748$(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
749
750endef
751
Michael Stahlc74af0d2011-04-01 20:49:35 +0000752else # !SYSTEM_LIBXSLT
753
754$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
David Tardonab03e872012-08-15 07:20:13 +0200755 exslt \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000756 xslt \
757))
758
759define gb_LinkTarget__use_libxslt
Peter Foley856c0752013-02-02 15:44:30 -0500760$(call gb_LinkTarget_use_package,$(1),xslt)
761$(call gb_LinkTarget_set_include,$(1),\
762 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200763 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500764)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200765$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000766 xslt \
767)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100768
Michael Stahlc74af0d2011-04-01 20:49:35 +0000769endef
770
David Tardonab03e872012-08-15 07:20:13 +0200771define gb_LinkTarget__use_libexslt
Peter Foley856c0752013-02-02 15:44:30 -0500772$(call gb_LinkTarget_use_package,$(1),xslt)
773$(call gb_LinkTarget_set_include,$(1),\
774 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200775 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500776)
777
David Tardonab03e872012-08-15 07:20:13 +0200778$(call gb_LinkTarget_use_libraries,$(1),\
779 exslt \
780)
781
782endef
783
Michael Stahlc74af0d2011-04-01 20:49:35 +0000784endif # SYSTEM_LIBXSLT
785
Eike Rathkea774a482012-08-06 19:22:43 +0200786define gb_LinkTarget__use_glib
Tor Lillqviste10124b2012-11-06 18:08:16 +0200787$(error gb_LinkTarget__use_glib should not be called any more)
Eike Rathkea774a482012-08-06 19:22:43 +0200788endef
789
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +0200790ifeq ($(ENABLE_LIBLANGTAG),YES)
791
Eike Rathkea774a482012-08-06 19:22:43 +0200792ifeq ($(SYSTEM_LIBLANGTAG),YES)
793
794define gb_LinkTarget__use_liblangtag
795$(call gb_LinkTarget_set_include,$(1),\
796 $$(INCLUDE) \
797 $(LIBLANGTAG_CFLAGS) \
798)
799
800$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
801
802endef
803
804else # !SYSTEM_LIBLANGTAG
805
Fridrich Štrba9fe90112012-11-13 11:59:33 +0100806$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Eike Rathkea774a482012-08-06 19:22:43 +0200807 langtag \
808))
809
810define gb_LinkTarget__use_liblangtag
Peter Foley782151a2012-11-11 16:02:36 -0500811$(call gb_LinkTarget_use_unpacked,$(1),langtag)
812$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200813 -I$(call gb_UnpackedTarball_get_dir,langtag) \
Peter Foley782151a2012-11-11 16:02:36 -0500814 $$(INCLUDE) \
815)
Fridrich Štrba9fe90112012-11-13 11:59:33 +0100816$(call gb_LinkTarget_use_static_libraries,$(1),\
Eike Rathkea774a482012-08-06 19:22:43 +0200817 langtag \
818)
819
820endef
821
822endif # SYSTEM_LIBLANGTAG
823
Matúš Kukan51ba7db2013-05-02 12:19:35 +0200824else
825
826gb_LinkTarget__use_liblangtag :=
827
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +0200828endif # ENABLE_LIBLANGTAG
829
Eike Rathkea774a482012-08-06 19:22:43 +0200830
Matúš Kukan464b4332012-01-15 02:12:49 +0100831ifeq ($(SYSTEM_NEON),YES)
832
833define gb_LinkTarget__use_neon
Matúš Kukan464b4332012-01-15 02:12:49 +0100834$(call gb_LinkTarget_add_defs,$(1),\
835 -DNEON_VERSION=0x$(NEON_VERSION) \
David Tardon88585862013-08-12 09:39:59 +0200836 -DSYSTEM_NEON \
Matúš Kukan464b4332012-01-15 02:12:49 +0100837)
Matúš Kukan464b4332012-01-15 02:12:49 +0100838$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100839 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +0000840 $(NEON_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100841)
842
843$(call gb_LinkTarget_add_libs,$(1),$(NEON_LIBS))
844
845endef
846
847else # !SYSTEM_NEON
848
Matúš Kukanbb6c5a52012-09-11 12:56:39 +0200849$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
Matúš Kukan464b4332012-01-15 02:12:49 +0100850 neon \
851))
852
853define gb_LinkTarget__use_neon
Matúš Kukan7a030392012-10-29 23:29:37 +0100854$(call gb_LinkTarget_use_unpacked,$(1),neon)
Matúš Kukan464b4332012-01-15 02:12:49 +0100855$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200856 -I$(call gb_UnpackedTarball_get_dir,neon/src) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100857 $$(INCLUDE) \
858)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200859$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100860 neon \
861)
862
863endef
864
865endif # SYSTEM_NEON
866
867
Michael Stahlc74af0d2011-04-01 20:49:35 +0000868ifeq ($(SYSTEM_REDLAND),YES)
869
870define gb_LinkTarget__use_librdf
Michael Stahla88ef232011-04-13 16:11:41 +0000871$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000872 -DSYSTEM_REDLAND \
873)
874$(call gb_LinkTarget_set_include,$(1),\
875 $$(INCLUDE) \
876 $(REDLAND_CFLAGS) \
877)
878$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100879
Michael Stahlc74af0d2011-04-01 20:49:35 +0000880endef
881
Peter Foley18bd1e72012-12-27 18:04:21 -0500882gb_LinkTarget__use_redland_headers:=
883
884gb_LinkTarget__use_raptor_headers:=
885
886gb_LinkTarget__use_rasqal_headers:=
887
Michael Stahlc74af0d2011-04-01 20:49:35 +0000888else # !SYSTEM_REDLAND
889
Peter Foley18bd1e72012-12-27 18:04:21 -0500890define gb_LinkTarget__use_redland_headers
891$(call gb_LinkTarget_set_include,$(1),\
Michael Stahld719c012013-04-01 12:41:18 +0200892 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500893 $$(INCLUDE) \
894)
895
896endef
897
898define gb_LinkTarget__use_raptor_headers
899$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200900 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500901 $$(INCLUDE) \
902)
903
904endef
905
906define gb_LinkTarget__use_rasqal_headers
907$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200908 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500909 $$(INCLUDE) \
910)
911
912endef
913
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300914ifneq ($(OS),ANDROID)
915
Michael Stahlc74af0d2011-04-01 20:49:35 +0000916$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
David Tardon491dea02013-05-01 11:23:50 +0200917 raptor2 \
918 rasqal \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000919 rdf \
920))
921
922define gb_LinkTarget__use_librdf
Michael Stahl95565d52013-05-07 12:17:20 +0200923$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200924$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlae11e552013-06-26 21:57:03 +0200925 raptor2 \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000926 rdf \
927)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100928
Michael Stahlc74af0d2011-04-01 20:49:35 +0000929endef
930
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300931else # ANDROID
932
933$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
934 rdf \
935 rasqal \
Michael Stahld719c012013-04-01 12:41:18 +0200936 raptor2 \
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300937))
938
939define gb_LinkTarget__use_librdf
Michael Stahl95565d52013-05-07 12:17:20 +0200940$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300941$(call gb_LinkTarget_use_static_libraries,$(1),\
942 rdf \
943 rasqal \
Michael Stahld719c012013-04-01 12:41:18 +0200944 raptor2 \
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300945)
946
947endef
948
949endif # ANDROID
950
Michael Stahlc74af0d2011-04-01 20:49:35 +0000951endif # SYSTEM_REDLAND
952
953
954ifeq ($(SYSTEM_CAIRO),YES)
955
956# FREETYPE_CLAGS from environment if ENABLE_CAIRO is used
957define gb_LinkTarget__use_cairo
958$(call gb_LinkTarget_set_include,$(1),\
959 $$(INCLUDE) \
960 $(FREETYPE_CFLAGS) \
961 $(CAIRO_CFLAGS) \
962)
963$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100964
Michael Stahlc74af0d2011-04-01 20:49:35 +0000965endef
966
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100967else ifeq ($(SYSTEM_CAIRO),NO)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000968
969$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
970 cairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100971 $(if $(filter-out MACOSX WNT,$(OS)), \
972 pixman-1 \
973 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000974))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000975
976define gb_LinkTarget__use_cairo
Michael Stahlde142202012-11-20 22:05:36 +0100977$(call gb_LinkTarget_use_package,$(1),cairo)
978$(call gb_LinkTarget_use_package,$(1),pixman)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000979$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200980 -I$(call gb_UnpackedTarball_get_dir,cairo) \
981 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000982 $(FREETYPE_CFLAGS) \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100983 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000984)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200985$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000986 cairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100987 $(if $(filter-out MACOSX WNT,$(OS)), \
988 pixman-1 \
989 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000990)
Caolán McNamara5bb76f62011-07-25 21:50:34 +0100991
Michael Stahlc74af0d2011-04-01 20:49:35 +0000992endef
993
994endif # SYSTEM_CAIRO
995
Caolán McNamarab41ae462011-07-25 22:24:27 +0100996define gb_LinkTarget__use_freetype
997$(call gb_LinkTarget_set_include,$(1),\
998 $$(INCLUDE) \
999 $(FREETYPE_CFLAGS) \
1000)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001001
1002ifneq ($(OS),ANDROID)
Caolán McNamarab41ae462011-07-25 22:24:27 +01001003$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001004else
1005$(call gb_LinkTarget_use_static_libraries,$(1),freetype)
1006endif
Caolán McNamarab41ae462011-07-25 22:24:27 +01001007
1008endef
1009
1010define gb_LinkTarget__use_fontconfig
1011$(call gb_LinkTarget_set_include,$(1),\
1012 $$(INCLUDE) \
1013 $(FONTCONFIG_CFLAGS) \
1014)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001015
1016ifneq ($(OS),ANDROID)
Caolán McNamarab41ae462011-07-25 22:24:27 +01001017$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001018else
1019$(call gb_LinkTarget_use_static_libraries,$(1),fontconfig)
1020endif
Caolán McNamarab41ae462011-07-25 22:24:27 +01001021
1022endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001023
Michael Stahl87e44332011-04-13 16:11:39 +00001024ifeq ($(SYSTEM_GRAPHITE),YES)
1025
Michael Stahl87e44332011-04-13 16:11:39 +00001026define gb_LinkTarget__use_graphite
Michael Stahl87e44332011-04-13 16:11:39 +00001027$(call gb_LinkTarget_set_include,$(1),\
1028 $$(INCLUDE) \
1029 $(GRAPHITE_CFLAGS) \
1030)
1031$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001032
Michael Stahl87e44332011-04-13 16:11:39 +00001033endef
1034
Matúš Kukan1e925462012-10-26 13:37:59 +02001035else ifeq ($(SYSTEM_GRAPHITE),NO)
Michael Stahl87e44332011-04-13 16:11:39 +00001036
1037$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001038 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001039))
1040define gb_LinkTarget__use_graphite
Matúš Kukan7a030392012-10-29 23:29:37 +01001041$(call gb_LinkTarget_use_unpacked,$(1),graphite)
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001042$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001043 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001044 $$(INCLUDE) \
1045)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001046$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001047 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001048)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001049
Michael Stahl87e44332011-04-13 16:11:39 +00001050endef
1051
Matúš Kukan1e925462012-10-26 13:37:59 +02001052else # DISABLED GRAPHITE
1053
1054gb_LinkTarget__use_graphite :=
1055
Michael Stahl87e44332011-04-13 16:11:39 +00001056endif # SYSTEM_GRAPHITE
1057
Michael Stahlc74af0d2011-04-01 20:49:35 +00001058ifeq ($(SYSTEM_ICU),YES)
1059
Peter Foleyb92a0d92012-12-25 17:39:43 -05001060gb_LinkTarget__use_icu_headers:=
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001061gb_ExternalProject__use_icu:=
Peter Foleyb92a0d92012-12-25 17:39:43 -05001062
Matúš Kukan6fad1752011-08-11 12:42:39 +02001063define gb_LinkTarget__use_icudata
1064$(call gb_LinkTarget_add_libs,$(1),-licudata)
1065
1066endef
David Tardon1a852392011-07-26 09:58:54 +02001067define gb_LinkTarget__use_icui18n
1068$(call gb_LinkTarget_add_libs,$(1),-licui18n)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001069
David Tardon1a852392011-07-26 09:58:54 +02001070endef
Michael Stahle1999382011-04-13 16:11:40 +00001071define gb_LinkTarget__use_icule
1072$(call gb_LinkTarget_add_libs,$(1),-licule)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001073
Michael Stahle1999382011-04-13 16:11:40 +00001074endef
Matúš Kukan6fad1752011-08-11 12:42:39 +02001075define gb_LinkTarget__use_icutu
1076$(call gb_LinkTarget_add_libs,$(1),-licutu)
1077
1078endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001079define gb_LinkTarget__use_icuuc
1080$(call gb_LinkTarget_add_libs,$(1),-licuuc)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001081
Michael Stahlc74af0d2011-04-01 20:49:35 +00001082endef
1083
1084else # !SYSTEM_ICU
1085
Tor Lillqvist084db5f2012-09-24 10:37:25 +03001086ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001087gb_ICU_suffix:=lo
1088else
1089gb_ICU_suffix:=
1090endif
1091
Peter Foleyb92a0d92012-12-25 17:39:43 -05001092define gb_LinkTarget__use_icu_headers
Peter Foleyce9bf0f2013-03-23 12:32:31 -04001093$(call gb_LinkTarget_use_unpacked,$(1),icu)
Peter Foleyb92a0d92012-12-25 17:39:43 -05001094$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001095 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1096 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1097 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
Peter Foleyb92a0d92012-12-25 17:39:43 -05001098 $$(INCLUDE) \
1099)
1100
1101endef
1102
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001103define gb_ExternalProject__use_icu
1104$(call gb_ExternalProject_use_package,$(1),icu)
Fridrich Štrba851ca9c2013-01-25 10:29:59 +01001105
1106endef
1107
Peter Foleyf7452122012-11-04 08:46:44 -05001108# icudata and icui18n is called icudt and icuin when built with MSVC :-/
Tor Lillqvistbdfca5e2011-08-19 12:38:09 +03001109ifeq ($(OS)$(COM),WNTMSC)
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001110$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1111 icudt \
1112 icuin \
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001113))
1114
Michael Stahl1658e4e2012-12-02 18:56:17 +01001115define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001116$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001117$(call gb_LinkTarget_use_libraries,$(1),\
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001118 icudt \
1119)
1120
1121endef
Michael Stahl1658e4e2012-12-02 18:56:17 +01001122define gb_LinkTarget__use_icui18n
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001123$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001124$(call gb_LinkTarget_use_libraries,$(1),\
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001125 icuin \
1126)
1127
1128endef
1129else
Michael Stahlc74af0d2011-04-01 20:49:35 +00001130$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001131 icudata$(gb_ICU_suffix) \
1132 icui18n$(gb_ICU_suffix) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001133))
1134
Matúš Kukan6fad1752011-08-11 12:42:39 +02001135define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001136$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001137$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001138 icudata$(gb_ICU_suffix) \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001139)
1140
1141endef
David Tardon1a852392011-07-26 09:58:54 +02001142define gb_LinkTarget__use_icui18n
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001143$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001144$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001145 icui18n$(gb_ICU_suffix) \
David Tardon1a852392011-07-26 09:58:54 +02001146)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001147
David Tardon1a852392011-07-26 09:58:54 +02001148endef
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001149endif
1150
Michael Stahl1658e4e2012-12-02 18:56:17 +01001151$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1152 icule$(gb_ICU_suffix) \
1153 icutu$(gb_ICU_suffix) \
1154 icuuc$(gb_ICU_suffix) \
1155))
1156
Michael Stahle1999382011-04-13 16:11:40 +00001157define gb_LinkTarget__use_icule
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001158$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001159$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001160 icule$(gb_ICU_suffix) \
Michael Stahle1999382011-04-13 16:11:40 +00001161)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001162
Michael Stahle1999382011-04-13 16:11:40 +00001163endef
Matúš Kukan6fad1752011-08-11 12:42:39 +02001164define gb_LinkTarget__use_icutu
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001165$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001166$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001167 icutu$(gb_ICU_suffix) \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001168)
1169
1170endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001171define gb_LinkTarget__use_icuuc
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001172$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001173$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001174 icuuc$(gb_ICU_suffix) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001175)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001176
Michael Stahlc74af0d2011-04-01 20:49:35 +00001177endef
1178
1179endif # SYSTEM_ICU
1180
Fridrich Štrba9a943e52013-04-23 11:23:17 +02001181ifeq ($(ENABLE_HARFBUZZ),TRUE)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001182ifeq ($(SYSTEM_HARFBUZZ),YES)
1183
1184define gb_LinkTarget__use_harfbuzz
1185$(call gb_LinkTarget_set_include,$(1),\
1186 $$(INCLUDE) \
1187 $(HARFBUZZ_CFLAGS) \
1188)
1189$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1190
1191endef
1192
1193else # SYSTEM_HARFBUZZ != YES
1194
1195$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1196 harfbuzz \
1197))
1198define gb_LinkTarget__use_harfbuzz
Michael Stahl8db02752013-05-07 23:28:45 +02001199$(call gb_LinkTarget_set_include,$(1),\
1200 -I$(call gb_UnpackedTarball_get_dir,harfbuzz)/src \
1201 $$(INCLUDE) \
1202)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001203$(call gb_LinkTarget_use_package,$(1),\
1204 harfbuzz \
1205)
1206$(call gb_LinkTarget_use_static_libraries,$(1),\
1207 harfbuzz \
1208)
1209
1210endef
1211
1212endif # SYSTEM_HARFBUZZ
1213else # ENABLE_HARFBUZZ != YES
1214
1215gb_LinkTarget__use_harfbuzz :=
1216
1217endif # ENABLE_HARFBUZZ
Michael Stahl4a8919f2011-04-18 11:13:57 +00001218
Andres Gomeze3f607e2013-04-11 10:24:25 +03001219ifeq ($(DISABLE_OPENSSL),YES)
1220
1221gb_ExternalProject__use_openssl:=
1222gb_LinkTarget__use_openssl_headers:=
1223gb_LinkTarget__use_openssl:=
1224
1225else # !DISABLE_OPENSSL
1226
Michael Stahl4a8919f2011-04-18 11:13:57 +00001227ifeq ($(SYSTEM_OPENSSL),YES)
1228
Peter Foley9ddba662012-12-28 11:19:06 -05001229gb_LinkTarget__use_openssl_headers:=
1230gb_ExternalProject__use_openssl:=
1231
Michael Stahl4a8919f2011-04-18 11:13:57 +00001232define gb_LinkTarget__use_openssl
1233$(call gb_LinkTarget_set_include,$(1),\
1234 $$(INCLUDE) \
1235 $(OPENSSL_CFLAGS) \
1236)
1237$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001238
Michael Stahl4a8919f2011-04-18 11:13:57 +00001239endef
1240
1241else # !SYSTEM_OPENSSL
1242
1243ifeq ($(OS),WNT)
1244$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1245 crypto \
1246 ssl \
1247))
1248else
1249$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1250 crypto \
1251 ssl \
1252))
1253endif
1254
Peter Foley9ddba662012-12-28 11:19:06 -05001255define gb_ExternalProject__use_openssl
1256$(call gb_ExternalProject_use_package,$(1),openssl)
1257
1258endef
1259
1260define gb_LinkTarget__use_openssl_headers
1261$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001262 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
Peter Foley9ddba662012-12-28 11:19:06 -05001263 $$(INCLUDE) \
1264)
1265
1266endef
1267
Michael Stahl4a8919f2011-04-18 11:13:57 +00001268define gb_LinkTarget__use_openssl
Peter Foley9ddba662012-12-28 11:19:06 -05001269$(call gb_LinkTarget_use_package,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001270ifeq ($(OS),WNT)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001271$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahl4a8919f2011-04-18 11:13:57 +00001272 crypto \
1273 ssl \
1274)
1275else
Michael Stahlc923f7d2012-04-07 23:22:08 +02001276$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahl4a8919f2011-04-18 11:13:57 +00001277 crypto \
1278 ssl \
1279)
1280ifeq ($(OS),SOLARIS)
Michael Stahl80374352012-09-28 12:25:50 +02001281$(call gb_LinkTarget_add_libs,$(1),\
1282 -lnsl \
1283 -lsocket \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001284)
1285endif
1286endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001287
Michael Stahl4a8919f2011-04-18 11:13:57 +00001288endef
1289
1290endif # SYSTEM_OPENSSL
Andres Gomeze3f607e2013-04-11 10:24:25 +03001291endif # DISABLE_OPENSSL
Michael Stahl4a8919f2011-04-18 11:13:57 +00001292
Matúš Kukanc4560482011-07-28 01:03:23 +02001293
Andres Gomez48d49752013-04-11 10:32:54 +03001294ifeq ($(DISABLE_OPENSSL),YES)
1295
1296define gb_LinkTarget__use_gnutls
1297$(call gb_LinkTarget_set_include,$(1),\
1298 $$(INCLUDE) \
1299 $(GNUTLS_CFLAGS) \
1300)
1301
1302$(call gb_LinkTarget_add_defs,$(1),\
1303 -DDISABLE_OPENSSL \
1304)
1305
1306$(call gb_LinkTarget_add_libs,$(1),$(GNUTLS_LIBS))
1307
1308endef
1309
1310define gb_LinkTarget__use_libgcrypt
1311$(call gb_LinkTarget_set_include,$(1),\
1312 $$(INCLUDE) \
1313 $(LIBGCRYPT_CFLAGS) \
1314)
1315
1316$(call gb_LinkTarget_add_libs,$(1),$(LIBGCRYPT_LIBS))
1317
1318endef
1319
1320else # !DISABLE_OPENSSL
1321
1322gb_LinkTarget__use_gnutls:=
1323gb_LinkTarget__use_libgcrypt:=
1324
1325endif # DISABLE_OPENSSL
1326
1327
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001328ifeq ($(SYSTEM_CDR),YES)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001329
1330define gb_LinkTarget__use_cdr
1331$(call gb_LinkTarget_set_include,$(1),\
1332 $$(INCLUDE) \
1333 $(CDR_CFLAGS) \
1334)
1335$(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1336
1337endef
1338
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001339else # !SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001340
1341$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001342 cdr-0.0 \
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001343))
1344
1345define gb_LinkTarget__use_cdr
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001346$(call gb_LinkTarget_use_package,$(1),\
1347 libcdr \
1348)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001349$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001350 cdr-0.0 \
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001351)
1352
1353endef
1354
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001355endif # SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001356
1357
Fridrich Štrba93848e12013-05-02 20:25:51 +02001358ifeq ($(SYSTEM_ODFGEN),YES)
1359
1360define gb_LinkTarget__use_odfgen
1361$(call gb_LinkTarget_set_include,$(1),\
1362 $$(INCLUDE) \
1363 $(ODFGEN_CFLAGS) \
1364)
1365$(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
1366
1367endef
1368
1369else # !SYSTEM_ODFGEN
1370
1371$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1372 odfgen-0.0 \
1373))
1374
1375define gb_LinkTarget__use_odfgen
1376$(call gb_LinkTarget_use_package,$(1),\
1377 libodfgen \
1378)
1379$(call gb_LinkTarget_use_static_libraries,$(1),\
1380 odfgen-0.0 \
1381)
1382
1383endef
1384
1385endif # SYSTEM_ODFGEN
1386
1387
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001388ifeq ($(SYSTEM_MSPUB),YES)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001389
1390define gb_LinkTarget__use_mspub
1391$(call gb_LinkTarget_set_include,$(1),\
1392 $$(INCLUDE) \
1393 $(MSPUB_CFLAGS) \
1394)
1395$(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1396
1397endef
1398
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001399else # !SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001400
1401$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001402 mspub-0.0 \
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001403))
1404
1405define gb_LinkTarget__use_mspub
Michael Stahl35ac39e2013-05-16 13:09:11 +02001406$(call gb_LinkTarget_set_include,$(1),\
1407 -I$(call gb_UnpackedTarball_get_dir,libmspub)/inc \
1408 $$(INCLUDE) \
1409)
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001410$(call gb_LinkTarget_use_package,$(1),\
1411 libmspub \
1412)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001413$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001414 mspub-0.0 \
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001415)
1416
1417endef
1418
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001419endif # SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001420
1421
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001422ifeq ($(SYSTEM_VISIO),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001423
1424define gb_LinkTarget__use_visio
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001425$(call gb_LinkTarget_set_include,$(1),\
1426 $$(INCLUDE) \
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001427 $(VISIO_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001428)
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001429$(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001430
1431endef
1432
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001433else # !SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001434
1435$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001436 visio-0.0 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001437))
1438
1439define gb_LinkTarget__use_visio
Michael Stahlacc7f612013-05-16 13:14:37 +02001440$(call gb_LinkTarget_set_include,$(1),\
1441 -I$(call gb_UnpackedTarball_get_dir,libvisio)/inc \
1442 $$(INCLUDE) \
1443)
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001444$(call gb_LinkTarget_use_package,$(1),\
1445 libvisio \
1446)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001447$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001448 visio-0.0 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001449)
1450
1451endef
1452
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001453endif # SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001454
1455
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001456ifeq ($(SYSTEM_WPD),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001457
1458define gb_LinkTarget__use_wpd
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001459$(call gb_LinkTarget_set_include,$(1),\
1460 $$(INCLUDE) \
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001461 $(WPD_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001462)
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001463$(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001464
1465endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001466gb_ExternalProject__use_wpd :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001467
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001468else # !SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001469
Fridrich Štrba4425db62012-09-24 13:17:45 +02001470$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1471 wpd-0.9 \
1472))
1473
1474define gb_LinkTarget__use_wpd
Michael Stahldb5c8c52013-05-16 13:28:14 +02001475$(call gb_LinkTarget_set_include,$(1),\
1476 $(WPD_CFLAGS) \
1477 $$(INCLUDE) \
1478)
Michael Stahl34295432012-09-24 22:25:28 +02001479$(call gb_LinkTarget_use_package,$(1),\
1480 libwpd \
1481)
Fridrich Štrba4425db62012-09-24 13:17:45 +02001482$(call gb_LinkTarget_use_static_libraries,$(1),\
1483 wpd-0.9 \
1484)
1485
1486endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001487define gb_ExternalProject__use_wpd
Michael Stahlc8d064d2013-02-20 14:14:30 +01001488$(call gb_ExternalProject_use_package,$(1),libwpd)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001489
1490endef
Fridrich Štrba4425db62012-09-24 13:17:45 +02001491
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001492endif # SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001493
1494
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001495ifeq ($(SYSTEM_WPG),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001496
1497define gb_LinkTarget__use_wpg
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001498$(call gb_LinkTarget_set_include,$(1),\
1499 $$(INCLUDE) \
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001500 $(WPG_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001501)
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001502$(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001503
1504endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001505gb_ExternalProject__use_wpg :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001506
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001507else # !SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02001508
1509$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrba115033f2013-04-18 15:23:28 +02001510 wpg-0.2 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001511))
1512
1513define gb_LinkTarget__use_wpg
Michael Stahl53b7bdc2012-10-05 17:19:47 +02001514$(call gb_LinkTarget_use_package,$(1),\
Fridrich Štrba115033f2013-04-18 15:23:28 +02001515 libwpg \
Michael Stahl53b7bdc2012-10-05 17:19:47 +02001516)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001517$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba115033f2013-04-18 15:23:28 +02001518 wpg-0.2 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001519)
1520
1521endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001522define gb_ExternalProject__use_wpg
Fridrich Štrba115033f2013-04-18 15:23:28 +02001523$(call gb_ExternalProject_use_package,$(1),libwpg)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001524
1525endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02001526
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001527endif # SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02001528
1529
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001530ifeq ($(SYSTEM_WPS),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001531
1532define gb_LinkTarget__use_wps
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001533$(call gb_LinkTarget_set_include,$(1),\
1534 $$(INCLUDE) \
Fridrich Štrbae991bba2011-10-05 10:18:53 +02001535 $(WPS_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001536)
Fridrich Štrbae991bba2011-10-05 10:18:53 +02001537$(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001538
1539endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001540gb_ExternalProject__use_wps :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001541
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001542else # !SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02001543
1544$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02001545 wps-0.2 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001546))
1547
1548define gb_LinkTarget__use_wps
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02001549$(call gb_LinkTarget_use_package,$(1),\
1550 libwps \
1551)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001552$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02001553 wps-0.2 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001554)
1555
1556endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001557define gb_ExternalProject__use_wps
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02001558$(call gb_ExternalProject_use_package,$(1),libwps)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001559
1560endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02001561
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001562endif # SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02001563
1564
Fridrich Štrba790a36d2013-03-11 12:38:12 +01001565ifeq ($(SYSTEM_MWAW),YES)
1566
1567define gb_LinkTarget__use_mwaw
1568$(call gb_LinkTarget_set_include,$(1),\
1569 $$(INCLUDE) \
1570 $(MWAW_CFLAGS) \
1571)
1572$(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
1573
1574endef
1575
1576else # !SYSTEM_MWAW
1577
1578$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1579 mwaw-0.1 \
1580))
1581
1582define gb_LinkTarget__use_mwaw
Michael Stahlff718952013-05-16 13:11:36 +02001583$(call gb_LinkTarget_set_include,$(1),\
1584 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
1585 $$(INCLUDE) \
1586)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01001587$(call gb_LinkTarget_use_package,$(1),\
1588 libmwaw \
1589)
1590$(call gb_LinkTarget_use_static_libraries,$(1),\
1591 mwaw-0.1 \
1592)
1593
1594endef
1595
1596endif # SYSTEM_MWAW
1597
1598
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001599ifeq ($(SYSTEM_LCMS2),YES)
1600
1601define gb_LinkTarget__use_lcms2
1602$(call gb_LinkTarget_set_include,$(1),\
1603 $$(INCLUDE) \
Peter Foleyf7452122012-11-04 08:46:44 -05001604 $(LCMS2_CFLAGS) \
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001605)
1606$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
1607
1608endef
1609
Peter Foley8905c0e2012-11-08 21:00:30 -05001610gb_ExternalProject__use_lcms2 :=
1611
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001612else # !SYSTEM_LCMS2
1613
Peter Foley8905c0e2012-11-08 21:00:30 -05001614define gb_ExternalProject__use_lcms2
1615$(call gb_ExternalProject_use_package,$(1),lcms2)
1616
1617endef
1618
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001619ifeq ($(OS),ANDROID)
1620
1621$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
1622 lcms2 \
1623))
1624
1625define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001626$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02001627$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001628 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02001629 $$(INCLUDE) \
1630)
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001631$(call gb_LinkTarget_use_static_libraries,$(1),\
1632 lcms2 \
1633)
1634
1635endef
1636
1637else
1638
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001639$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1640 lcms2 \
1641))
1642
1643define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001644$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02001645$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001646 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02001647 $$(INCLUDE) \
1648)
Norbert Thiebaud1b61693a2012-11-04 16:27:25 -06001649$(call gb_LinkTarget_use_libraries,$(1),\
1650 lcms2 \
1651)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001652
1653endef
1654
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001655endif # ANDROID
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001656endif # SYSTEM_LCMS2
1657
1658
Matúš Kukanc4560482011-07-28 01:03:23 +02001659ifeq ($(SYSTEM_LPSOLVE),YES)
1660
Peter Foley085346f2012-11-03 19:19:30 -04001661define gb_LinkTarget__use_lpsolve
Matúš Kukanc4560482011-07-28 01:03:23 +02001662$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
Peter Foley085346f2012-11-03 19:19:30 -04001663$(call gb_LinkTarget_add_defs,$(1),\
1664 -DSYSTEM_LPSOLVE \
Peter Foley29d5e292012-11-07 18:18:08 -05001665)
Matúš Kukanc4560482011-07-28 01:03:23 +02001666
1667endef
1668
1669else # !SYSTEM_LPSOLVE
1670
1671$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1672 lpsolve55 \
1673))
1674
Peter Foley085346f2012-11-03 19:19:30 -04001675define gb_LinkTarget__use_lpsolve
1676$(call gb_LinkTarget_use_unpacked,$(1),lpsolve)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001677$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukanc4560482011-07-28 01:03:23 +02001678 lpsolve55 \
1679)
Peter Foley085346f2012-11-03 19:19:30 -04001680$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001681 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
Peter Foley085346f2012-11-03 19:19:30 -04001682 $$(INCLUDE) \
1683)
Matúš Kukanc4560482011-07-28 01:03:23 +02001684
1685endef
1686
1687endif # SYSTEM_LPSOLVE
1688
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001689ifeq ($(ENABLE_GIO),TRUE)
Matúš Kukanc4560482011-07-28 01:03:23 +02001690
Matúš Kukan464b4332012-01-15 02:12:49 +01001691define gb_LinkTarget__use_gio
1692$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01001693 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00001694 $(GIO_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01001695)
1696
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001697$(call gb_LinkTarget_add_defs,$(1),\
1698 -DENABLE_GIO \
1699)
1700
Matúš Kukan464b4332012-01-15 02:12:49 +01001701$(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
1702
1703endef
1704
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001705else # ENABLE_GIO
1706
1707define gb_LinkTarget__use_gio
Caolán McNamara1e98bb42012-11-06 20:09:57 +00001708
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001709endef
1710
1711endif # ENABLE_GIO
1712
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02001713define gb_LinkTarget__use_gtk
1714$(call gb_LinkTarget_set_include,$(1),\
1715 $$(INCLUDE) \
1716 $(GTK_CFLAGS) \
1717)
1718
1719$(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
1720
David Tardonadb11052011-12-01 13:39:09 +01001721ifeq ($(ENABLE_GTK_PRINT),TRUE)
1722
1723$(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
1724
1725$(call gb_LinkTarget_set_include,$(1),\
1726 $$(INCLUDE) \
1727 $(GTK_PRINT_CFLAGS) \
1728)
1729
1730$(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
1731
1732endif
1733
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02001734endef
Michael Stahl4a8919f2011-04-18 11:13:57 +00001735
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02001736define gb_LinkTarget__use_gthread
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01001737$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02001738endef
1739
Caolán McNamara68ffb332012-09-14 11:31:50 +01001740ifeq ($(ENABLE_CUPS),TRUE)
1741
1742define gb_LinkTarget__use_cups
1743$(call gb_LinkTarget_add_defs,$(1),\
1744 -DENABLE_CUPS \
1745)
1746
1747$(call gb_LinkTarget_add_libs,$(1),\
1748 -lcups \
1749)
1750
1751endef
1752
1753else # ENABLE_CUPS
1754
1755define gb_LinkTarget__use_cups
1756
1757endef
1758
1759endif # ENABLE_DBUS
David Tardon1b717ce2011-11-02 13:00:48 +01001760
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01001761ifeq ($(ENABLE_DBUS),TRUE)
David Tardon1b717ce2011-11-02 13:00:48 +01001762
1763define gb_LinkTarget__use_dbus
1764$(call gb_LinkTarget_set_include,$(1),\
1765 $$(INCLUDE) \
1766 $(DBUS_CFLAGS) \
1767)
1768
Matúš Kukan464b4332012-01-15 02:12:49 +01001769$(call gb_LinkTarget_add_defs,$(1),\
David Tardon1b717ce2011-11-02 13:00:48 +01001770 -DENABLE_DBUS \
1771)
1772
Rene Engelhardbea61492012-09-11 02:30:09 +02001773ifeq ($(ENABLE_PACKAGEKIT),YES)
1774$(call gb_LinkTarget_add_defs,$(1),\
1775 -DENABLE_PACKAGEKIT \
1776)
1777endif # ENABLE_PACKAGEKIT
1778
David Tardon1b717ce2011-11-02 13:00:48 +01001779$(call gb_LinkTarget_add_libs,$(1),\
1780 $(DBUS_LIBS) \
1781)
1782
1783endef
1784
1785else # ENABLE_DBUS
1786
1787define gb_LinkTarget__use_dbus
1788
1789endef
1790
1791endif # ENABLE_DBUS
1792
1793
Bjoern Michaelsendd321062011-07-26 16:04:15 +02001794define gb_LinkTarget__use_dbusmenugtk
1795$(call gb_LinkTarget_set_include,$(1),\
1796 $$(INCLUDE) \
1797 $(DBUSMENUGTK_CFLAGS) \
1798)
1799
1800$(call gb_LinkTarget_add_libs,$(1),$(DBUSMENUGTK_LIBS))
1801
1802endef
1803
Eike Rathkea3a8b802012-03-16 22:14:54 +01001804
1805ifeq ($(ENABLE_TELEPATHY),TRUE)
1806
1807define gb_LinkTarget__use_telepathy
1808$(call gb_LinkTarget_set_include,$(1),\
1809 $$(INCLUDE) \
1810 $(TELEPATHY_CFLAGS) \
1811)
1812
Eike Rathkea3a8b802012-03-16 22:14:54 +01001813$(call gb_LinkTarget_add_libs,$(1),\
1814 $(TELEPATHY_LIBS) \
1815)
1816
1817endef
1818
1819else # !ENABLE_TELEPATHY
1820
Matúš Kukanfe327622012-08-09 00:15:52 +02001821gb_LinkTarget__use_telepathy :=
Eike Rathkea3a8b802012-03-16 22:14:54 +01001822
1823endif # ENABLE_TELEPATHY
1824
Peter Foley8615d092012-10-10 21:43:21 -04001825define gb_LinkTarget__use_croco
Tor Lillqviste10124b2012-11-06 18:08:16 +02001826$(error gb_LinkTarget__use_croco should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001827endef
1828
Peter Foley8615d092012-10-10 21:43:21 -04001829define gb_LinkTarget__use_pango
Tor Lillqviste10124b2012-11-06 18:08:16 +02001830$(error gb_LinkTarget__use_pango should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001831endef
1832
Peter Foley8615d092012-10-10 21:43:21 -04001833define gb_LinkTarget__use_gsf
Tor Lillqviste10124b2012-11-06 18:08:16 +02001834$(error gb_LinkTarget__use_gsf should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001835endef
1836
Peter Foley8615d092012-10-10 21:43:21 -04001837define gb_LinkTarget__use_pixbuf
Tor Lillqviste10124b2012-11-06 18:08:16 +02001838$(error gb_LinkTarget__use_pixbuf should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001839endef
1840
David Tardon6df9c472011-09-15 14:44:34 +02001841ifeq ($(SYSTEM_LIBPNG),YES)
1842
1843define gb_LinkTarget__use_png
1844$(call gb_LinkTarget_set_include,$(1),\
1845 $$(INCLUDE) \
1846 $(LIBPNG_CFLAGS) \
1847)
1848
1849$(call gb_LinkTarget_add_libs,$(1),\
1850 $(LIBPNG_LIBS) \
1851)
1852
1853endef
1854
1855else # !SYSTEM_LIBPNG
1856
Matúš Kukanf96d58b2012-09-08 18:13:20 +02001857$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
David Tardon6df9c472011-09-15 14:44:34 +02001858 png \
1859))
1860
1861define gb_LinkTarget__use_png
Michael Stahl416b3212013-05-08 17:22:22 +02001862$(call gb_LinkTarget_set_include,$(1),\
1863 $(LIBPNG_CFLAGS) \
1864 $$(INCLUDE) \
1865)
Matúš Kukanf96d58b2012-09-08 18:13:20 +02001866$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon6df9c472011-09-15 14:44:34 +02001867 png \
1868)
Michael Stahl398ce442012-09-28 21:47:29 +02001869$(call gb_LinkTarget__use_zlib,$(1))
David Tardon6df9c472011-09-15 14:44:34 +02001870
1871endef
1872
1873endif # !SYSTEM_LIBPNG
1874
Michael Stahl50471a82011-12-06 19:17:52 +01001875
1876ifeq ($(SYSTEM_CURL),YES)
1877
1878define gb_LinkTarget__use_curl
1879$(call gb_LinkTarget_set_include,$(1),\
1880 $$(INCLUDE) \
1881 $(CURL_CFLAGS) \
1882)
1883$(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
1884
1885endef
1886
1887else # !SYSTEM_CURL
1888
1889$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1890 curl \
1891))
1892
1893define gb_LinkTarget__use_curl
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001894$(call gb_LinkTarget_use_package,$(1),curl)
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01001895$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001896 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01001897 $$(INCLUDE) \
1898)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001899$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahl50471a82011-12-06 19:17:52 +01001900 curl \
1901)
1902
1903endef
1904
1905endif # SYSTEM_CURL
1906
Stephan Bergmann49313b02012-11-27 15:35:02 +01001907ifeq ($(ENABLE_VALGRIND),TRUE)
David Tardon3446cda2011-12-23 12:21:19 +01001908
1909define gb_LinkTarget__use_valgrind
1910$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmann49313b02012-11-27 15:35:02 +01001911 -DHAVE_VALGRIND_HEADERS \
David Tardon3446cda2011-12-23 12:21:19 +01001912)
1913
1914$(call gb_LinkTarget_set_include,$(1),\
1915 $$(INCLUDE) \
1916 $(VALGRIND_CFLAGS) \
1917)
1918
1919endef
1920
Stephan Bergmann49313b02012-11-27 15:35:02 +01001921else # !ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01001922
1923define gb_LinkTarget__use_valgrind
1924
1925endef
1926
Stephan Bergmann49313b02012-11-27 15:35:02 +01001927endif # ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01001928
David Tardondba2d322012-02-18 18:54:35 +01001929ifeq ($(SYSTEM_POPPLER),YES)
1930
1931define gb_LinkTarget__use_poppler
1932$(call gb_LinkTarget_add_defs,$(1),\
1933 -DSYSTEM_POPPLER \
1934)
1935
1936$(call gb_LinkTarget_set_include,$(1),\
1937 $(POPPLER_CFLAGS) \
1938 $$(INCLUDE) \
1939)
1940
1941$(call gb_LinkTarget_add_libs,$(1),\
1942 $(POPPLER_LIBS) \
1943)
1944
1945endef
1946
1947else # !SYSTEM_POPPLER
1948
David Tardon548b61a2012-02-21 06:58:02 +01001949$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
Tor Lillqvist97d8b882012-11-13 10:27:21 +02001950 fofi \
1951 Goo \
1952 xpdf \
David Tardondba2d322012-02-18 18:54:35 +01001953))
1954
1955define gb_LinkTarget__use_poppler
Peter Foleyfb1d11d2013-02-17 09:26:01 -05001956$(call gb_LinkTarget_use_package,$(1),xpdf)
1957
David Tardon548b61a2012-02-21 06:58:02 +01001958$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001959 -I$(call gb_UnpackedTarball_get_dir,xpdf) \
1960 -I$(call gb_UnpackedTarball_get_dir,xpdf)/xpdf \
1961 -I$(call gb_UnpackedTarball_get_dir,xpdf)/goo \
David Tardon548b61a2012-02-21 06:58:02 +01001962 $$(INCLUDE) \
David Tardondba2d322012-02-18 18:54:35 +01001963)
1964
Michael Stahlc923f7d2012-04-07 23:22:08 +02001965$(call gb_LinkTarget_use_static_libraries,$(1),\
Tor Lillqvist97d8b882012-11-13 10:27:21 +02001966 fofi \
1967 Goo \
1968 xpdf \
David Tardon548b61a2012-02-21 06:58:02 +01001969)
1970
1971ifeq ($(OS),MACOSX)
Michael Stahl967986b2012-09-28 00:54:49 +02001972$(call gb_LinkTarget_add_libs,$(1),\
1973 -lobjc \
David Tardon548b61a2012-02-21 06:58:02 +01001974)
1975else ifeq ($(OS),WNT)
Michael Stahldc397aae2012-09-28 15:31:46 +02001976$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon548b61a2012-02-21 06:58:02 +01001977 advapi32 \
1978 gdi32 \
1979)
1980endif
1981
David Tardondba2d322012-02-18 18:54:35 +01001982endef
1983
1984endif # SYSTEM_POPPLER
1985
David Tardon3446cda2011-12-23 12:21:19 +01001986
David Tardon22c60cb2012-04-07 15:50:47 +02001987ifeq ($(SYSTEM_CLUCENE),YES)
1988
1989define gb_LinkTarget__use_clucene
1990$(call gb_LinkTarget_add_defs,$(1),\
1991 $(filter-out -I%,$(CLUCENE_CFLAGS)) \
1992)
1993
1994$(call gb_LinkTarget_set_include,$(1),\
1995 $(filter -I%,$(CLUCENE_CFLAGS)) \
1996 $$(INCLUDE) \
1997)
1998
1999$(call gb_LinkTarget_add_libs,$(1),\
2000 $(CLUCENE_LIBS) \
2001)
2002
2003endef
2004
2005else # !SYSTEM_CLUCENE
2006
2007define gb_LinkTarget__use_clucene
Michael Stahl28cde0c2013-05-07 23:47:27 +02002008$(call gb_LinkTarget_set_include,$(1),\
2009 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/core \
2010 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/shared \
2011 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/contribs-lib \
2012 $$(INCLUDE) \
2013)
2014
Michael Stahlc923f7d2012-04-07 23:22:08 +02002015$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon22c60cb2012-04-07 15:50:47 +02002016 clucene \
2017)
2018
2019endef
2020
David Tardon735c5292012-04-07 17:15:35 +02002021$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
David Tardon22c60cb2012-04-07 15:50:47 +02002022 clucene \
2023))
2024
2025endif # SYSTEM_CLUCENE
2026
Peter Foley64402842011-12-22 16:34:35 -05002027define gb_LinkTarget__use_gobject
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01002028$(call gb_LinkTarget_add_libs,$(1),\
2029 $(GOBJECT_LIBS) \
2030)
2031
2032$(call gb_LinkTarget_set_include,$(1),\
2033 $$(INCLUDE) \
2034 $(GOBJECT_CFLAGS) \
2035)
Peter Foley64402842011-12-22 16:34:35 -05002036endef
2037
Michael Stahl1d6830e2012-07-17 13:07:30 +02002038ifeq ($(SYSTEM_HSQLDB),YES)
David Tardon579f52d2012-03-27 16:36:31 +02002039
2040define gb_LinkTarget__use_hsqldb
2041
2042$(call gb_LinkTarget_add_defs,$(1),\
2043 -DSYSTEM_HSQLDB \
2044 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
2045)
2046
2047endef
2048
2049else # !SYSTEM_HSQLDB
2050
2051define gb_LinkTarget__use_hsqldb
2052
2053endef
2054
2055endif # SYSTEM_HSQLDB
2056
David Tardon8bc7afb2012-04-05 10:53:08 +02002057
Luboš Luňáke13cda12012-07-16 21:50:59 +02002058ifeq ($(SYSTEM_OPENLDAP),YES)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002059
2060define gb_LinkTarget__use_openldap
2061
2062$(call gb_LinkTarget_add_libs,$(1),\
2063 -lldap \
2064 -llber \
2065)
2066
2067endef
2068
Matúš Kukand6a02072013-03-27 00:34:19 +01002069else ifeq ($(SYSTEM_OPENLDAP),NO)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002070
2071$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
2072 ldap \
2073 lber \
2074))
2075
2076define gb_LinkTarget__use_openldap
Matúš Kukan7a030392012-10-29 23:29:37 +01002077$(call gb_LinkTarget_use_unpacked,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002078$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002079 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002080 $$(INCLUDE) \
2081)
Matúš Kukanc3a586a2012-10-28 12:35:07 +01002082$(call gb_LinkTarget_use_package,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002083$(call gb_LinkTarget_use_static_libraries,$(1),\
2084 ldap \
2085 lber \
2086)
2087
2088endef
2089
Matúš Kukan006e1272013-03-27 01:02:55 +01002090else # no openldap
2091
2092gb_LinkTarget__use_openldap :=
2093
Michael Stahle0ee0d42012-07-16 19:00:07 +02002094endif # SYSTEM_OPENLDAP
2095
2096
David Tardon8bc7afb2012-04-05 10:53:08 +02002097ifeq ($(SYSTEM_POSTGRESQL),YES)
2098
2099define gb_LinkTarget__use_postgresql
2100
David Tardon8bc7afb2012-04-05 10:53:08 +02002101$(call gb_LinkTarget_set_include,$(1),\
2102 $(POSTGRESQL_INC) \
2103 $$(INCLUDE) \
2104)
2105
2106$(call gb_LinkTarget_add_libs,$(1),\
2107 -lpq \
2108)
2109
2110$(call gb_LinkTarget_add_ldflags,$(1),\
2111 $(POSTGRESQL_LIB) \
2112)
2113
2114endef
2115
2116else # !SYSTEM_POSTGRESQL
2117
2118define gb_LinkTarget__use_postgresql
2119
David Tardoncb9823b2012-10-22 06:33:00 +02002120$(call gb_LinkTarget_use_packages,$(1),\
2121 postgresql \
2122)
2123
David Tardon8bc7afb2012-04-05 10:53:08 +02002124$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlee8323e2013-05-08 00:19:40 +02002125 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \
2126 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002127 $$(INCLUDE) \
2128)
2129
David Tardon9b530e12012-04-07 10:07:35 +02002130$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukana1539242012-05-26 23:38:34 +02002131 $(if $(filter MSC,$(COM)),lib)pq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002132)
2133
Tor Lillqvistc2909892012-12-12 01:07:09 +02002134ifeq ($(OS)$(COM),WNTMSC)
Matúš Kukan5e32d152012-05-27 00:21:12 +02002135$(call gb_LinkTarget_use_external,$(1),openssl)
2136
Michael Stahldc397aae2012-09-28 15:31:46 +02002137$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon8bc7afb2012-04-05 10:53:08 +02002138 secur32 \
2139 ws2_32 \
David Tardon8bc7afb2012-04-05 10:53:08 +02002140)
David Tardon8af6aa62012-05-30 12:06:42 +02002141
David Tardon8bc7afb2012-04-05 10:53:08 +02002142endif
2143
2144endef
2145
2146$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
Matúš Kukana1539242012-05-26 23:38:34 +02002147 $(if $(filter MSC,$(COM)),lib)pq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002148))
2149
2150endif # SYSTEM_POSTGRESQL
2151
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002152ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
David Tardonc678a4c2012-04-05 17:59:36 +02002153define gb_LinkTarget__use_mozilla
2154
2155$(call gb_LinkTarget_add_defs,$(1),\
2156 -DMOZILLA_INTERNAL_API \
2157)
2158
2159$(call gb_LinkTarget_set_include,$(1),\
2160 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +02002161 -I$(OUTDIR)/inc/mozilla \
David Tardonc678a4c2012-04-05 17:59:36 +02002162)
2163
David Tardon9b530e12012-04-07 10:07:35 +02002164$(call gb_LinkTarget_use_libraries,$(1),\
David Tardonc678a4c2012-04-05 17:59:36 +02002165 nspr4 \
2166 xpcom \
2167 xpcom_core \
2168)
2169
David Tardon9b530e12012-04-07 10:07:35 +02002170$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardonc678a4c2012-04-05 17:59:36 +02002171 embed_base_s \
2172 mozreg_s \
2173)
2174
David Tardonc678a4c2012-04-05 17:59:36 +02002175$(call gb_LinkTarget_add_defs,$(1),\
2176 -DMOZILLA_CLIENT \
2177 -DMOZ_REFLOW_PERF \
2178 -DMOZ_REFLOW_PERF_DSP \
2179 -DMOZ_XUL \
2180 -DOJI \
2181 -DWIN32 \
2182 -DXP_PC \
2183 -DXP_WIN \
2184 -DXP_WIN32 \
2185 -D_WINDOWS \
2186)
2187
2188ifeq ($(COM),GCC)
2189
2190$(call gb_LinkTarget_add_cxxflags,$(1),\
2191 -Wall \
2192 -Wcast-align \
2193 -Wconversion \
2194 -Wno-long-long \
2195 -Woverloaded-virtual \
2196 -Wpointer-arith \
2197 -Wsynth \
2198 -fno-rtti \
2199)
2200
2201else
2202
2203ifneq ($(DBG_LEVEL),0)
2204$(call gb_LinkTarget_add_defs,$(1),\
2205 -D_STL_NOFORCE_MANIFEST \
2206)
2207endif
2208
2209$(call gb_LinkTarget_add_libs,$(1),\
David Tardon764fc482012-05-30 14:55:09 +02002210 $(OUTDIR)/lib/embed_base_s.lib \
2211 $(OUTDIR)/lib/mozreg_s.lib \
David Tardonc678a4c2012-04-05 17:59:36 +02002212)
2213
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002214endif # !GCC
David Tardonc678a4c2012-04-05 17:59:36 +02002215
David Tardonc678a4c2012-04-05 17:59:36 +02002216endef
2217
2218$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
2219 xpcom \
2220 xpcom_core \
2221))
2222
2223$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
2224 embed_base_s \
2225 mozreg_s \
2226))
2227
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002228endif # DESKTOP
David Tardonc678a4c2012-04-05 17:59:36 +02002229
David Tardond4efa8b2012-04-28 20:48:14 +02002230ifeq ($(ENABLE_KDE),TRUE)
2231
2232define gb_LinkTarget__use_kde
2233$(call gb_LinkTarget_set_include,$(1),\
2234 $(filter -I%,$(KDE_CFLAGS)) \
2235 $$(INCLUDE) \
2236)
2237
2238$(call gb_LinkTarget_add_defs,$(1),\
2239 $(filter-out -I%,$(KDE_CFLAGS)) \
2240)
2241
2242$(call gb_LinkTarget_add_libs,$(1),\
2243 $(KDE_LIBS) \
2244)
2245
2246ifeq ($(COM),GCC)
2247$(call gb_LinkTarget_add_cxxflags,$(1),\
2248 -Wno-shadow \
2249)
2250endif
2251
2252endef
2253
2254else # !ENABLE_KDE
2255
2256define gb_LinkTarget__use_kde
2257
2258endef
2259
2260endif # ENABLE_KDE
2261
2262
2263ifeq ($(ENABLE_KDE4),TRUE)
2264
2265define gb_LinkTarget__use_kde4
2266$(call gb_LinkTarget_set_include,$(1),\
2267 $(filter -I%,$(KDE4_CFLAGS)) \
2268 $$(INCLUDE) \
2269)
2270
2271$(call gb_LinkTarget_add_defs,$(1),\
2272 $(filter-out -I%,$(KDE4_CFLAGS)) \
2273)
2274
2275$(call gb_LinkTarget_add_libs,$(1),\
2276 $(KDE4_LIBS) \
2277)
2278
2279ifeq ($(COM),GCC)
2280$(call gb_LinkTarget_add_cxxflags,$(1),\
2281 -Wno-shadow \
2282)
2283endif
2284
2285endef
2286
2287else # !ENABLE_KDE4
2288
2289define gb_LinkTarget__use_kde4
2290
2291endef
2292
2293endif # ENABLE_KDE4
2294
2295
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002296ifeq ($(ENABLE_TDE),TRUE)
David Tardond4efa8b2012-04-28 20:48:14 +02002297
2298define gb_LinkTarget__use_tde
2299$(call gb_LinkTarget_add_libs,$(1),\
2300 $(TDE_LIBS) \
2301)
2302
2303$(call gb_LinkTarget_set_include,$(1),\
2304 $$(INCLUDE) \
2305 $(TDE_CFLAGS) \
2306)
2307endef
2308
2309else # ! ENABLE_TDE
2310
2311define gb_LinkTarget__use_tde
2312
2313endef
2314
2315endif # ENABLE_TDE
2316
2317
2318ifeq ($(ENABLE_GCONF),TRUE)
2319
2320define gb_LinkTarget__use_gconf
2321$(call gb_LinkTarget_set_include,$(1),\
2322 $(filter -I%,$(GCONF_CFLAGS)) \
2323 $$(INCLUDE) \
2324)
2325
2326$(call gb_LinkTarget_add_defs,$(1),\
2327 $(filter-out -I%,$(GCONF_CFLAGS)) \
2328)
2329
2330$(call gb_LinkTarget_add_libs,$(1),\
2331 $(GCONF_LIBS) \
2332)
2333
2334endef
2335
2336else # !ENABLE_GCONF
2337
2338define gb_LinkTarget__use_gconf
2339
2340endef
2341
2342endif # ENABLE_GCONF
2343
2344
David Ostrovskye16ac692012-05-27 22:50:41 +02002345# PYTHON
Michael Stahl91926332012-11-27 15:50:53 +01002346# extra python_headers external because pyuno wrapper must not link python
David Ostrovskye16ac692012-05-27 22:50:41 +02002347ifeq ($(SYSTEM_PYTHON),YES)
2348
Michael Stahl91926332012-11-27 15:50:53 +01002349define gb_LinkTarget__use_python_headers
David Ostrovskye16ac692012-05-27 22:50:41 +02002350$(call gb_LinkTarget_add_defs,$(1),\
2351 $(filter-out -I%,$(PYTHON_CFLAGS)) \
2352)
2353
2354$(call gb_LinkTarget_set_include,$(1),\
2355 $(filter -I%,$(PYTHON_CFLAGS)) \
2356 $$(INCLUDE) \
2357)
2358
Michael Stahl91926332012-11-27 15:50:53 +01002359endef
2360
2361define gb_LinkTarget__use_python
2362$(call gb_LinkTarget__use_python_headers,$(1))
2363
David Ostrovskye16ac692012-05-27 22:50:41 +02002364$(call gb_LinkTarget_add_libs,$(1),\
2365 $(PYTHON_LIBS) \
2366)
2367
2368endef
2369
2370else # !SYSTEM_PYTHON
2371
Michael Stahl75a2c502012-12-04 13:47:22 +01002372# depend on external project because on MACOSX the Package is disabled...
Michael Stahl91926332012-11-27 15:50:53 +01002373define gb_LinkTarget__use_python_headers
Michael Stahl75a2c502012-12-04 13:47:22 +01002374$(call gb_LinkTarget_use_external_project,$(1),python3)
Michael Stahl91926332012-11-27 15:50:53 +01002375$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002376 -I$(call gb_UnpackedTarball_get_dir,python3) \
2377 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
2378 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
Michael Stahl91926332012-11-27 15:50:53 +01002379 $$(INCLUDE) \
2380)
2381
2382endef
2383
David Ostrovskye16ac692012-05-27 22:50:41 +02002384define gb_LinkTarget__use_python
Michael Stahl91926332012-11-27 15:50:53 +01002385$(call gb_LinkTarget__use_python_headers,$(1))
David Ostrovskye16ac692012-05-27 22:50:41 +02002386
2387ifeq ($(OS),WNT)
2388$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlb6bcbb62013-04-21 14:34:50 +02002389 $(call gb_UnpackedTarball_get_dir,python3)/$(if $(filter 90,$(VCVER)),PC/VS9.0,PCbuild)$(if $(filter X86_64,$(CPUNAME)),/amd64)/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).lib \
David Ostrovskye16ac692012-05-27 22:50:41 +02002390)
2391else ifeq ($(OS),MACOSX)
2392$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002393 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
David Ostrovskye16ac692012-05-27 22:50:41 +02002394)
2395else
Michael Stahlb6bcbb62013-04-21 14:34:50 +02002396$(call gb_LinkTarget_add_libs,$(1),\
2397 -L$(call gb_UnpackedTarball_get_dir,python3) \
2398 -lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02002399)
2400endif
2401
David Ostrovskye16ac692012-05-27 22:50:41 +02002402endef
2403
2404$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002405 python$(PYTHON_VERSION_MAJOR) \
2406 python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02002407))
2408
2409endif # SYSTEM_PYTHON
2410
Kohei Yoshida49b0b692012-09-04 15:05:35 -04002411# ORCUS
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002412ifeq ($(SYSTEM_LIBORCUS),YES)
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002413
2414define gb_LinkTarget__use_orcus
2415$(call gb_LinkTarget_set_include,$(1),\
2416 $$(INCLUDE) \
Matúš Kukana2d63fe2012-09-09 16:29:10 +02002417 $(ORCUS_CFLAGS) \
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002418)
Rene Engelhard26b80fc2013-04-13 19:29:33 +02002419$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
Rene Engelhardfb360f52013-04-13 16:17:29 +02002420endef
2421
2422define gb_LinkTarget__use_orcus-parser
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002423
2424endef
2425
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002426else # !SYSTEM_LIBORCUS
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002427
Matúš Kukan8a026372012-09-11 16:19:19 +02002428$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
2429 orcus \
2430))
2431
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04002432$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
2433 orcus-parser \
2434))
2435
Kohei Yoshidac8b7e982012-08-31 10:11:32 -04002436define gb_LinkTarget__use_orcus
Michael Stahl10fc13c2013-05-06 23:35:13 +02002437$(call gb_LinkTarget_use_unpacked,$(1),liborcus)
Matúš Kukan1ee76032012-09-09 15:29:43 +02002438$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl10fc13c2013-05-06 23:35:13 +02002439 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
Matúš Kukan1ee76032012-09-09 15:29:43 +02002440 $$(INCLUDE) \
2441)
Matúš Kukanf4889fa2012-09-11 18:23:27 +02002442$(call gb_LinkTarget_use_static_libraries,$(1),orcus)
David Tardonf1035c12012-11-23 06:49:21 +01002443
Stephan Bergmann3743cdb2013-02-17 22:58:21 +01002444$(if $(filter YES,$(SYSTEM_BOOST)), \
2445 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
2446 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
2447)
David Tardonf1035c12012-11-23 06:49:21 +01002448
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002449endef
2450
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04002451define gb_LinkTarget__use_orcus-parser
2452$(call gb_LinkTarget_use_static_libraries,$(1),\
2453 orcus-parser \
2454)
2455
2456endef
2457
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002458endif # SYSTEM_LIBORCUS
David Ostrovskye16ac692012-05-27 22:50:41 +02002459
Michael Stahl78b59b82012-09-27 21:45:47 +02002460
2461### X11 stuff ###
2462
2463ifeq ($(GUIBASE),unx)
2464
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002465# TODO: do we really need these X11 headers in the repo?
2466ifneq ($(filter X11_EXTENSIONS,$(BUILD_TYPE)),)
2467
2468define gb_LinkTarget__use_x11extensions
Michael Stahl4f94ee52013-05-06 20:28:45 +02002469$(call gb_LinkTarget_set_include,$(1),\
2470 -I$(SRCDIR)/x11_extensions/inc \
2471 $$(INCLUDE) \
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002472)
2473endef
2474
2475else # !X11_EXTENSIONS
2476
2477gb_LinkTarget__use_x11extensions :=
2478
2479endif # X11_EXTENSIONS
2480
Michael Stahl78b59b82012-09-27 21:45:47 +02002481ifeq ($(XRANDR_DLOPEN),FALSE)
2482
2483define gb_LinkTarget__use_Xrandr
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002484$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002485
2486$(call gb_LinkTarget_set_include,$(1),\
2487 $$(INCLUDE) \
2488 $(XRANDR_CFLAGS) \
2489)
2490
2491$(call gb_LinkTarget_add_libs,$(1),\
2492 $(XRANDR_LIBS) \
2493)
2494endef
2495
2496else # XRANDR_DLOPEN
2497
2498define gb_LinkTarget__use_Xrandr
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002499$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002500
2501$(call gb_LinkTarget_add_defs,$(1),\
2502 -DXRANDR_DLOPEN \
2503)
2504endef
2505
2506endif # XRANDR_DLOPEN
2507
2508define gb_LinkTarget__use_Xrender
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002509$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002510
2511$(call gb_LinkTarget_set_include,$(1),\
2512 $$(INCLUDE) \
2513 $(XRENDER_CFLAGS) \
2514)
2515
2516$(call gb_LinkTarget_add_libs,$(1),\
2517 $(XRENDER_LIBS) \
2518)
2519endef
2520
2521endif # GUIBASE=unx
2522
Tor Lillqvist35491072011-08-02 21:22:35 +03002523
Michael Meeksb440cfc2013-02-28 12:05:07 +00002524gb_ExternalProject__use_nss3:=
2525
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002526ifeq (,$(filter DESKTOP,$(BUILD_TYPE)))
2527
Peter Foleyc003d252013-01-01 09:39:36 -05002528gb_LinkTarget__use_nss3:=
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002529
2530else
2531
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002532ifeq ($(SYSTEM_NSS),YES)
David Tardonb6aa4842011-08-11 13:10:14 +02002533
David Tardon2b9dbc82012-08-13 06:57:51 +02002534define gb_LinkTarget__use_nss3
2535$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmannea641222012-11-19 16:40:33 +01002536 -DSYSTEM_NSS \
David Tardon2b9dbc82012-08-13 06:57:51 +02002537)
2538
David Tardonb6aa4842011-08-11 13:10:14 +02002539$(call gb_LinkTarget_set_include,$(1),\
2540 $$(INCLUDE) \
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002541 $(NSS_CFLAGS) \
David Tardonb6aa4842011-08-11 13:10:14 +02002542)
2543
2544$(call gb_LinkTarget_add_libs,$(1),\
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002545 $(NSS_LIBS) \
David Tardonb6aa4842011-08-11 13:10:14 +02002546)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002547
David Tardonb6aa4842011-08-11 13:10:14 +02002548endef
2549
David Tardon2b9dbc82012-08-13 06:57:51 +02002550define gb_LinkTarget__use_plc4
2551$(call gb_LinkTarget__use_nss3,$(1))
2552
2553endef
2554
David Tardon6ef46562013-02-04 10:04:07 +01002555define gb_LinkTarget__use_ssl3
2556$(call gb_LinkTarget__use_nss3,$(1))
2557
2558endef
2559
David Tardonb6aa4842011-08-11 13:10:14 +02002560else
2561
David Tardonb6aa4842011-08-11 13:10:14 +02002562$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
2563 nspr4 \
2564 nss3 \
2565 plc4 \
Stephan Bergmannfc2b42e2012-08-13 11:46:50 +02002566 smime3 \
David Tardon6ef46562013-02-04 10:04:07 +01002567 ssl3 \
David Tardonb6aa4842011-08-11 13:10:14 +02002568))
2569
David Tardon2b9dbc82012-08-13 06:57:51 +02002570define gb_LinkTarget__use_nss3
Peter Foleyc003d252013-01-01 09:39:36 -05002571$(call gb_LinkTarget_use_package,$(1),nss)
David Tardon2b9dbc82012-08-13 06:57:51 +02002572$(call gb_LinkTarget_set_include,$(1),\
2573 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +02002574 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/public/nss \
2575 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/out/include \
David Tardon2b9dbc82012-08-13 06:57:51 +02002576)
2577
2578$(call gb_LinkTarget_use_libraries,$(1),\
2579 nspr4 \
2580 nss3 \
2581 smime3 \
2582)
2583
2584endef
2585
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002586define gb_LinkTarget__use_plc4
Peter Foleyc003d252013-01-01 09:39:36 -05002587$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahlc923f7d2012-04-07 23:22:08 +02002588$(call gb_LinkTarget_use_libraries,$(1),\
David Tardonb6aa4842011-08-11 13:10:14 +02002589 plc4 \
2590)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002591
David Tardonb6aa4842011-08-11 13:10:14 +02002592endef
2593
David Tardon6ef46562013-02-04 10:04:07 +01002594define gb_LinkTarget__use_ssl3
2595$(call gb_LinkTarget_use_package,$(1),nss)
2596$(call gb_LinkTarget_use_libraries,$(1),\
2597 ssl3 \
2598)
2599
2600endef
2601
Michael Meeksb440cfc2013-02-28 12:05:07 +00002602define gb_ExternalProject__use_nss3
2603$(call gb_ExternalProject_use_package,$(1),nss)
2604$(call gb_ExternalProject_use_libraries,$(1),\
2605 nspr4 \
2606 nss3 \
2607 smime3 \
2608)
2609
2610endef
2611
David Tardonb6aa4842011-08-11 13:10:14 +02002612endif
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002613endif # DESKTOP
David Tardonb6aa4842011-08-11 13:10:14 +02002614
Michael Stahl2ee5f242011-09-15 14:01:27 +02002615### Jars ############################################################
2616
Michael Stahl666173b2012-08-15 20:24:59 +02002617ifeq ($(SYSTEM_HSQLDB),YES)
2618
2619define gb_Jar__use_hsqldb
2620$(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
2621endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02002622define gb_JunitTest__use_hsqldb
2623$(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
2624endef
Michael Stahl666173b2012-08-15 20:24:59 +02002625
2626else # !SYSTEM_HSQLDB
2627
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002628$(eval $(call gb_Helper_register_jars,OOO,\
2629 hsqldb \
2630))
2631
Michael Stahl666173b2012-08-15 20:24:59 +02002632define gb_Jar__use_hsqldb
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002633$(call gb_Jar_use_jar,$(1),hsqldb)
Michael Stahl666173b2012-08-15 20:24:59 +02002634endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02002635define gb_JunitTest__use_hsqldb
2636$(call gb_JunitTest_use_jar,$(1),hsqldb)
2637endef
Michael Stahl666173b2012-08-15 20:24:59 +02002638
2639endif # SYSTEM_HSQLDB
2640
Michael Stahl2ee5f242011-09-15 14:01:27 +02002641
David Tardon3bcf9102011-10-04 09:44:48 +02002642ifeq ($(SYSTEM_BSH),YES)
2643
Michael Stahla4551262012-08-15 17:41:25 +02002644define gb_Jar__use_bsh
2645$(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
David Tardon3bcf9102011-10-04 09:44:48 +02002646endef
2647
2648else # !SYSTEM_BSH
2649
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002650$(eval $(call gb_Helper_register_jars,OOO,\
2651 bsh \
2652))
2653
Michael Stahla4551262012-08-15 17:41:25 +02002654define gb_Jar__use_bsh
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002655$(call gb_Jar_use_jar,$(1),bsh)
David Tardon3bcf9102011-10-04 09:44:48 +02002656endef
2657
2658endif # SYSTEM_BSH
2659
Michael Stahl2ee5f242011-09-15 14:01:27 +02002660
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002661ifeq ($(SYSTEM_RHINO),YES)
2662
Michael Stahla4551262012-08-15 17:41:25 +02002663define gb_Jar__use_rhino
2664$(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002665endef
2666
2667else # !SYSTEM_RHINO
2668
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002669$(eval $(call gb_Helper_register_jars,OOO,\
2670 js \
2671))
2672
Michael Stahla4551262012-08-15 17:41:25 +02002673define gb_Jar__use_rhino
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002674$(call gb_Jar_use_jar,$(1),js)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002675endef
2676
2677endif # SYSTEM_RHINO
2678
David Tardon9b530e12012-04-07 10:07:35 +02002679ifeq ($(SYSTEM_APACHE_COMMONS),YES)
2680
Michael Stahla4551262012-08-15 17:41:25 +02002681define gb_Jar__use_commons-codec
2682$(call gb_Jar_use_system_jar,$(1),$(COMMONS_CODEC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002683endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002684gb_ExternalProject__use_commons-codec :=
David Tardon9b530e12012-04-07 10:07:35 +02002685
Michael Stahla4551262012-08-15 17:41:25 +02002686define gb_Jar__use_commons-httpclient
2687$(call gb_Jar_use_system_jar,$(1),$(COMMONS_HTTPCLIENT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002688endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002689gb_ExternalProject__use_commons-httpclient :=
David Tardon9b530e12012-04-07 10:07:35 +02002690
Michael Stahla4551262012-08-15 17:41:25 +02002691define gb_Jar__use_commons-lang
2692$(call gb_Jar_usadd_linked_libse_system_jar,$(1),$(COMMONS_LANG_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002693endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002694gb_ExternalProject__use_commons-lang :=
David Tardon9b530e12012-04-07 10:07:35 +02002695
Michael Stahla4551262012-08-15 17:41:25 +02002696define gb_Jar__use_commons-logging
2697$(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002698endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002699gb_ExternalProject__use_commons-logging :=
David Tardon9b530e12012-04-07 10:07:35 +02002700
2701else # !SYSTEM_APACHE_COMMONS
2702
Michael Stahl87a723d2012-08-17 12:43:37 +02002703$(eval $(call gb_Helper_register_jars,OXT,\
Julien Nabet6188e1d2013-03-26 21:39:42 +01002704 commons-codec-1.6 \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002705 commons-httpclient-3.1 \
Julien Nabeta70aeef2013-03-26 21:49:53 +01002706 commons-lang-2.4 \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002707 commons-logging-1.1.1 \
2708))
2709
Michael Stahla4551262012-08-15 17:41:25 +02002710define gb_Jar__use_commons-codec
Julien Nabet6188e1d2013-03-26 21:39:42 +01002711$(call gb_Jar_use_jar,$(1),commons-codec-1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002712endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002713define gb_ExternalProject__use_commons-codec
2714$(call gb_ExternalProject_use_external_project,$(1),apache_commons_codec)
2715endef
David Tardon9b530e12012-04-07 10:07:35 +02002716
Michael Stahla4551262012-08-15 17:41:25 +02002717define gb_Jar__use_commons-httpclient
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002718$(call gb_Jar_use_jar,$(1),commons-httpclient-3.1)
David Tardon9b530e12012-04-07 10:07:35 +02002719endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002720define gb_ExternalProject__use_commons-httpclient
2721$(call gb_ExternalProject_use_external_project,$(1),apache_commons_httpclient)
2722endef
David Tardon9b530e12012-04-07 10:07:35 +02002723
Michael Stahla4551262012-08-15 17:41:25 +02002724define gb_Jar__use_commons-lang
Fridrich Štrba3b42b442013-03-26 21:52:35 +01002725$(call gb_Jar_use_jar,$(1),commons-lang-2.4)
David Tardon9b530e12012-04-07 10:07:35 +02002726endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002727define gb_ExternalProject__use_commons-lang
2728$(call gb_ExternalProject_use_external_project,$(1),apache_commons_lang)
2729endef
David Tardon9b530e12012-04-07 10:07:35 +02002730
Michael Stahla4551262012-08-15 17:41:25 +02002731define gb_Jar__use_commons-logging
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002732$(call gb_Jar_use_jar,$(1),commons-logging-1.1.1)
David Tardon9b530e12012-04-07 10:07:35 +02002733endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002734define gb_ExternalProject__use_commons-logging
2735$(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
2736endef
David Tardon9b530e12012-04-07 10:07:35 +02002737
2738endif # SYSTEM_APACHE_COMMONS
2739
2740
2741ifeq ($(SYSTEM_JFREEREPORT),YES)
2742
Michael Stahla4551262012-08-15 17:41:25 +02002743define gb_Jar__use_flow-engine
2744$(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002745endef
2746
Michael Stahla4551262012-08-15 17:41:25 +02002747define gb_Jar__use_flute
2748$(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002749endef
2750
Michael Stahla4551262012-08-15 17:41:25 +02002751define gb_Jar__use_libbase
2752$(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002753endef
2754
Michael Stahla4551262012-08-15 17:41:25 +02002755define gb_Jar__use_libfonts
2756$(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002757endef
2758
Michael Stahla4551262012-08-15 17:41:25 +02002759define gb_Jar__use_libformula
2760$(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002761endef
2762
Michael Stahla4551262012-08-15 17:41:25 +02002763define gb_Jar__use_liblayout
2764$(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002765endef
2766
Michael Stahla4551262012-08-15 17:41:25 +02002767define gb_Jar__use_libloader
2768$(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002769endef
2770
Michael Stahla4551262012-08-15 17:41:25 +02002771define gb_Jar__use_librepository
2772$(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002773endef
2774
Michael Stahla4551262012-08-15 17:41:25 +02002775define gb_Jar__use_libserializer
2776$(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002777endef
2778
Michael Stahla4551262012-08-15 17:41:25 +02002779define gb_Jar__use_libxml
2780$(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002781endef
2782
Michael Stahla4551262012-08-15 17:41:25 +02002783define gb_Jar__use_sac
2784$(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002785endef
2786
2787else # !SYSTEM_JFREEREPORT
2788
Michael Stahl87a723d2012-08-17 12:43:37 +02002789$(eval $(call gb_Helper_register_jars,OXT,\
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002790 flow-engine-0.9.4 \
2791 flute-1.1.6 \
2792 libbase-1.1.6 \
2793 libfonts-1.1.6 \
2794 libformula-1.1.7 \
2795 liblayout-0.2.10 \
2796 libloader-1.1.6 \
2797 librepository-1.1.6 \
2798 libserializer-1.1.6 \
2799 libxml-1.1.7 \
2800 sac \
2801))
2802
Michael Stahla4551262012-08-15 17:41:25 +02002803define gb_Jar__use_flow-engine
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002804$(call gb_Jar_use_jar,$(1),flow-engine-0.9.4)
David Tardon9b530e12012-04-07 10:07:35 +02002805endef
2806
Michael Stahla4551262012-08-15 17:41:25 +02002807define gb_Jar__use_flute
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002808$(call gb_Jar_use_jar,$(1),flute-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002809endef
2810
Michael Stahla4551262012-08-15 17:41:25 +02002811define gb_Jar__use_libbase
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002812$(call gb_Jar_use_jar,$(1),libbase-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002813endef
2814
Michael Stahla4551262012-08-15 17:41:25 +02002815define gb_Jar__use_libfonts
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002816$(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002817endef
2818
Michael Stahla4551262012-08-15 17:41:25 +02002819define gb_Jar__use_libformula
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002820$(call gb_Jar_use_jar,$(1),libformula-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02002821endef
2822
Michael Stahla4551262012-08-15 17:41:25 +02002823define gb_Jar__use_liblayout
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002824$(call gb_Jar_use_jar,$(1),liblayout-0.2.10)
David Tardon9b530e12012-04-07 10:07:35 +02002825endef
2826
Michael Stahla4551262012-08-15 17:41:25 +02002827define gb_Jar__use_libloader
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002828$(call gb_Jar_use_jar,$(1),libloader-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002829endef
2830
Michael Stahla4551262012-08-15 17:41:25 +02002831define gb_Jar__use_librepository
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002832$(call gb_Jar_use_jar,$(1),librepository-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002833endef
2834
Michael Stahla4551262012-08-15 17:41:25 +02002835define gb_Jar__use_libserializer
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002836$(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002837endef
2838
Michael Stahla4551262012-08-15 17:41:25 +02002839define gb_Jar__use_libxml
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002840$(call gb_Jar_use_jar,$(1),libxml-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02002841endef
2842
Michael Stahla4551262012-08-15 17:41:25 +02002843define gb_Jar__use_sac
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002844$(call gb_Jar_use_jar,$(1),sac)
David Tardon9b530e12012-04-07 10:07:35 +02002845endef
2846
2847endif # SYSTEM_JFREEREPORT
2848
David Tardonc2eca352012-12-02 10:51:37 +01002849
2850# Executables
2851
David Tardonedf67302012-12-30 12:27:04 +01002852# FIXME: the library target should be for build too
2853define gb_Executable__register_bestreversemap
2854$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
2855 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
2856)
2857endef
2858
David Tardonceb0d062012-12-30 13:11:43 +01002859# TODO depending on the whole URE might be overkill, but I do not have a
2860# Windows machine to debug it...
2861# FIXME: the library target should be for build too
2862define gb_Executable__register_climaker
2863$(call gb_Executable_add_runtime_dependencies,climaker,\
2864 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2865 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2866 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03002867 $(call gb_UnoApi_get_target,udkapi) \
David Tardonceb0d062012-12-30 13:11:43 +01002868)
2869endef
2870
Matúš Kukanbae52ee2013-05-16 09:17:57 +02002871# Better duplication with gb_Gallery__UNO_COMPONENTS than nothing.
2872# This is used to determine what we need for 'build' platform.
David Tardon56aaeb52013-05-23 09:31:48 +02002873define gb_Executable__register_gengal_impl
2874$(call gb_Executable_add_runtime_dependencies,$(1),\
Matúš Kukanbae52ee2013-05-16 09:17:57 +02002875 $(foreach component, \
2876 comphelper/util/comphelp \
2877 configmgr/source/configmgr \
2878 fileaccess/source/fileacc \
2879 framework/util/fwk \
2880 i18npool/util/i18npool \
2881 package/source/xstor/xstor \
2882 package/util/package2 \
2883 sfx2/util/sfx \
2884 svx/util/svx \
2885 svx/util/svxcore \
2886 ucb/source/core/ucb1 \
2887 ucb/source/ucp/file/ucpfile1 \
2888 unoxml/source/service/unoxml \
2889 ,$(call gb_ComponentTarget_get_outdir_target_for_build,$(component))) \
David Tardon1546c292013-05-07 20:41:41 +02002890 $(call gb_AllLangResTarget_get_target,ofa) \
2891 $(call gb_Configuration_get_target,registry) \
2892 $(call gb_Configuration_get_target,fcfg_langpack) \
2893 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Riccardo Magliocchetti63a43712013-06-06 18:52:57 +02002894 $(if $(filter-out MACOSX WNT,$(OS_FOR_BUILD)),$(if $(ENABLE_HEADLESS),, \
Caolan McNamara48e70ad2013-05-15 10:30:18 +01002895 $(call gb_Library_get_target,vclplug_svp) \
Riccardo Magliocchetti63a43712013-06-06 18:52:57 +02002896 )) \
David Tardon1546c292013-05-07 20:41:41 +02002897 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2898 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2899 $(call gb_UnoApi_get_target,offapi) \
2900 $(call gb_UnoApi_get_target,udkapi) \
2901)
2902endef
2903
David Tardon56aaeb52013-05-23 09:31:48 +02002904ifeq ($(OS),WNT)
2905gb_Executable__register_gengal = $(call gb_Executable__register_gengal_impl,gengal)
2906else
2907gb_Executable__register_gengal.bin = $(call gb_Executable__register_gengal_impl,gengal.bin)
2908endif
2909
David Tardonedf67302012-12-30 12:27:04 +01002910ifneq ($(SYSTEM_ICU),YES)
2911
2912define gb_Executable__register_gendict
2913$(call gb_Executable_add_runtime_dependencies,gendict,\
2914 $(call gb_Package_get_target_for_build,icu) \
2915)
2916endef
2917
2918endif
2919
David Tardonceb0d062012-12-30 13:11:43 +01002920define gb_Executable__register_idlc
2921$(call gb_Executable_add_runtime_dependencies,idlc,\
2922 $(call gb_ExternalExecutable_get_dependencies,ucpp) \
2923)
2924endef
2925
David Tardonedf67302012-12-30 12:27:04 +01002926define gb_Executable__register_localize
2927$(call gb_Executable_add_runtime_dependencies,localize,\
2928 $(foreach exec,cfgex helpex propex transex3 treex uiex ulfex xrmex,\
2929 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
2930 ) \
2931)
2932endef
2933
Stephan Bergmannab149c72013-04-24 10:42:40 +02002934# The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
David Tardonedf67302012-12-30 12:27:04 +01002935# due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
2936# FIXME: the library target should be for build too
2937define gb_Executable__register_saxparser
2938$(call gb_Executable_add_runtime_dependencies,saxparser,\
Matúš Kukanbdfdd052013-03-08 14:14:46 +01002939 $(call gb_ComponentTarget_get_outdir_target,sax/source/expatwrap/expwrap) \
David Tardonedf67302012-12-30 12:27:04 +01002940 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2941 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2942 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03002943 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01002944)
2945endef
2946
Stephan Bergmannab149c72013-04-24 10:42:40 +02002947# NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
David Tardonedf67302012-12-30 12:27:04 +01002948# required due to the settings for URE_SERVICES and URE_TYPES in
2949# cppuhelper/source/unorc
2950# FIXME: the library target should be for build too
2951define gb_Executable__register_uno
2952$(call gb_Executable_add_runtime_dependencies,uno,\
2953 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2954 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2955 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03002956 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01002957)
2958endef
2959
2960
2961# External executables
2962
David Tardonc2eca352012-12-02 10:51:37 +01002963ifneq ($(SYSTEM_LIBXML_FOR_BUILD),YES)
2964
2965gb_ExternalExecutable__register_xmllint :=
2966
2967else # ! SYSTEM_LIBXML_FOR_BUILD
2968
2969define gb_ExternalExecutable__register_xmllint
David Tardonbbf2f412012-12-29 10:00:49 +01002970$(call gb_ExternalExecutable_set_internal,xmllint)
David Tardonc2eca352012-12-02 10:51:37 +01002971
2972endef
2973
2974endif # SYSTEM_LIBXML_FOR_BUILD
2975
2976ifeq ($(SYSTEM_LIBXSLT_FOR_BUILD),YES)
2977
2978gb_ExternalExecutable__register_xsltproc :=
2979
2980else # ! SYSTEM_LIBXSLT_FOR_BUILD
2981
2982define gb_ExternalExecutable__register_xsltproc
David Tardonbbf2f412012-12-29 10:00:49 +01002983$(call gb_ExternalExecutable_set_internal,xsltproc)
Peter Foley52e47b62013-02-06 17:59:18 -05002984$(call gb_ExternalExecutable_add_dependencies,xsltproc,$(call gb_Package_get_target,xslt))
David Tardonc2eca352012-12-02 10:51:37 +01002985
2986endef
2987
2988endif # SYSTEM_LIBXSLT_FOR_BUILD
2989
2990ifneq (,$(SYSTEM_UCPP))
2991
2992gb_ExternalExecutable__register_ucpp :=
2993
2994else # ! SYSTEM_UCPP
2995
2996define gb_ExternalExecutable__register_ucpp
David Tardonbbf2f412012-12-29 10:00:49 +01002997$(call gb_ExternalExecutable_set_internal,ucpp)
David Tardonc2eca352012-12-02 10:51:37 +01002998
2999endef
3000
3001endif # SYSTEM_UCPP
3002
Matúš Kukane4826722013-03-05 22:03:38 +01003003ifeq (,$(PYTHON_FOR_BUILD))
David Tardonc2eca352012-12-02 10:51:37 +01003004
3005define gb_ExternalExecutable__register_python
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003006ifeq ($(OS),MACOSX)
3007
3008# use set_external, to avoid having the command added as prerequisite for the
3009# targets that make use of it. (Otherwise make will choke as it doesn't have a
3010# matching rule to build that specific file)
3011$(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))
3012# the Zip ensures that internal python has been built (cannot use the Package
3013# target, as that is not used on Mac)
David Tardon45a5c262013-05-16 13:36:24 +02003014$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003015
3016else
3017
Michael Stahlb6bcbb62013-04-21 14:34:50 +02003018$(call gb_ExternalExecutable_set_internal,python,$(INSTDIR)/program/$(if $(filter WNT,$(OS)),python-core-$(PYTHON_VERSION)/bin/python.exe,python.bin))
3019$(call gb_ExternalExecutable_set_precommand,python,$(gb_Python_PRECOMMAND))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003020$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
3021
3022endif
David Tardonc2eca352012-12-02 10:51:37 +01003023
3024endef
3025
Matúš Kukane4826722013-03-05 22:03:38 +01003026else
3027
3028define gb_ExternalExecutable__register_python
3029$(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
3030
3031endef
3032
3033endif # PYTHON_FOR_BUILD
David Tardonc2eca352012-12-02 10:51:37 +01003034
David Tardon63069262012-12-29 12:56:24 +01003035ifneq ($(SYSTEM_GENBRK),)
3036
3037define gb_ExternalExecutable__register_genbrk
3038$(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
3039
3040endef
3041
3042else # ! SYSTEM_GENBRK
3043
3044define gb_ExternalExecutable__register_genbrk
3045$(call gb_ExternalExecutable_set_internal,genbrk)
3046$(call gb_ExternalExecutable_add_dependencies,genbrk,\
3047 $(call gb_Package_get_target_for_build,icu) \
3048)
3049
3050endef
3051
3052endif
3053
3054ifneq ($(SYSTEM_GENCCODE),)
3055
3056define gb_ExternalExecutable__register_genccode
3057$(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
3058
3059endef
3060
3061else # ! SYSTEM_GENCCODE
3062
3063define gb_ExternalExecutable__register_genccode
3064$(call gb_ExternalExecutable_set_internal,genccode)
3065$(call gb_ExternalExecutable_add_dependencies,genccode,\
3066 $(call gb_Package_get_target_for_build,icu) \
3067)
3068
3069endef
3070
3071endif
3072
3073ifneq ($(SYSTEM_GENCMN),)
3074
3075define gb_ExternalExecutable__register_gencmn
3076$(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
3077
3078endef
3079
3080else # ! SYSTEM_GENCMN
3081
3082define gb_ExternalExecutable__register_gencmn
3083$(call gb_ExternalExecutable_set_internal,gencmn)
3084$(call gb_ExternalExecutable_add_dependencies,gencmn,\
3085 $(call gb_Package_get_target_for_build,icu) \
3086)
3087
3088endef
3089
3090endif
3091
Michael Stahlc74af0d2011-04-01 20:49:35 +00003092# vim: set noet sw=4 ts=4: