blob: 16fd6430725062ac389748add370786f5e8bf698 [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 Meeks1e4422a2013-05-16 21:56:04 +01003# This file is part of the LibreOffice project.
Kohei Yoshidaa6639312012-07-27 22:14:39 -04004#
Michael Meeks1e4422a2013-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 Meeks1e4422a2013-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 Meeks1e4422a2013-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
Michael Meekscab3e222013-06-16 17:55:11 +010032ifeq ($(ENABLE_OPENCL),TRUE)
Peng Gaof01985a2013-06-16 17:18:23 +010033
34define gb_LinkTarget__use_opencl
35$(call gb_LinkTarget_set_include,$(1),\
36 $$(INCLUDE) \
37 $(OPENCL_CFLAGS) \
38)
39$(call gb_LinkTarget_add_libs,$(1),$(OPENCL_LIBS))
40
41endef
42
43else # ENABLE_OPENCL != TRUE
44
45gb_LinkTarget__use_opencl :=
46
47endif
48
Fridrich Štrbacad422a2013-03-06 16:33:07 +010049ifeq ($(SYSTEM_MARIADB),YES)
50
51define gb_LinkTarget__use_mariadb
52$(call gb_LinkTarget_set_include,$(1),\
53 $$(INCLUDE) \
54 $(MARIADB_CFLAGS) \
55)
56$(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
57
58endef
59gb_ExternalProject__use_mariadb :=
60
61else # !SYSTEM_MARIADB
62
Fridrich Štrbacad422a2013-03-06 16:33:07 +010063define gb_LinkTarget__use_mariadb
Michael Stahl6416e9b2013-05-08 00:35:28 +020064$(call gb_LinkTarget_set_include,$(1),\
65 $$(INCLUDE) \
66 $(MARIADB_CFLAGS) \
67)
Fridrich Štrbacad422a2013-03-06 16:33:07 +010068$(call gb_LinkTarget_use_static_libraries,$(1),\
69 mariadblib \
70)
71
72endef
73define gb_ExternalProject__use_mariadb
Fridrich Štrbacad422a2013-03-06 16:33:07 +010074$(call gb_ExternalProject_use_static_libraries,$(1),mariadblib)
75
76endef
77
78endif # SYSTEM_MARIADB
79
80
Peter Foley1bd28842011-09-09 17:42:24 -040081ifeq ($(SYSTEM_MESA_HEADERS),YES)
82
Matúš Kukan8e535df2012-04-07 13:59:33 +020083gb_LinkTarget__use_mesa_headers :=
Peter Foley1bd28842011-09-09 17:42:24 -040084
85else
86
Matúš Kukan8e535df2012-04-07 13:59:33 +020087define gb_LinkTarget__use_mesa_headers
Michael Stahl6b2ce082013-05-06 17:43:54 +020088$(call gb_LinkTarget_set_include,$(1),\
89 -I$(SRCDIR)/Mesa/inc \
90 $$(INCLUDE) \
91)
Matúš Kukan8e535df2012-04-07 13:59:33 +020092
Peter Foley1bd28842011-09-09 17:42:24 -040093endef
94
95endif
96
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010097ifeq ($(SYSTEM_NPAPI_HEADERS),YES)
Matúš Kukan8e535df2012-04-07 13:59:33 +020098
Michael Stahl96907bf2013-05-07 00:50:15 +020099# yes this uses internal headers too...
100# they are split across 2 dirs for this reason
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +0100101define gb_LinkTarget__use_npapi_headers
Matúš Kukan8f6510b2012-06-02 21:54:26 +0200102$(call gb_LinkTarget_set_include,$(1),\
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +0100103 $(NPAPI_HEADERS_CFLAGS) \
Michael Stahl96907bf2013-05-07 00:50:15 +0200104 -I$(SRCDIR)/np_sdk \
Matúš Kukan8e535df2012-04-07 13:59:33 +0200105 $$(INCLUDE) \
Matúš Kukan8f6510b2012-06-02 21:54:26 +0200106)
Matúš Kukan8e535df2012-04-07 13:59:33 +0200107
108endef
109
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +0100110else #!SYSTEM_NPAPI_HEADERS
Matúš Kukan8e535df2012-04-07 13:59:33 +0200111
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +0100112define gb_LinkTarget__use_npapi_headers
Matúš Kukan8f6510b2012-06-02 21:54:26 +0200113$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl96907bf2013-05-07 00:50:15 +0200114 -I$(SRCDIR)/np_sdk/inc \
115 -I$(SRCDIR)/np_sdk \
Matúš Kukan8e535df2012-04-07 13:59:33 +0200116 $$(INCLUDE) \
Matúš Kukan8f6510b2012-06-02 21:54:26 +0200117)
Matúš Kukan8e535df2012-04-07 13:59:33 +0200118
119endef
120
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +0100121endif #SYSTEM_NPAPI_HEADERS
Matúš Kukan8e535df2012-04-07 13:59:33 +0200122
Matúš Kukan5eff0b62012-04-07 13:46:59 +0200123ifeq ($(SYSTEM_ODBC_HEADERS),YES)
124
125define gb_LinkTarget__use_odbc_headers
126$(call gb_LinkTarget_add_defs,$(1),\
127 -DSYSTEM_ODBC_HEADERS \
128)
129
130endef
131
132else
133
134define gb_LinkTarget__use_odbc_headers
Michael Stahlfea65aa2013-05-06 20:09:47 +0200135$(call gb_LinkTarget_set_include,$(1),\
136 -I$(SRCDIR)/unixODBC/inc \
137 $$(INCLUDE) \
138)
Matúš Kukan5eff0b62012-04-07 13:46:59 +0200139
140endef
141
142endif
143
Matúš Kukan54a06c62012-08-25 01:29:00 +0200144ifeq ($(SYSTEM_VIGRA),YES)
145
146gb_LinkTarget__use_vigra_headers :=
147
148else
149
150define gb_LinkTarget__use_vigra_headers
151$(call gb_LinkTarget_use_unpacked,$(1),vigra)
152$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200153 -I$(call gb_UnpackedTarball_get_dir,vigra/include) \
Matúš Kukan54a06c62012-08-25 01:29:00 +0200154 $$(INCLUDE) \
155)
156
157endef
158
159endif
160
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200161ifeq ($(SYSTEM_MDDS),YES)
162
163gb_LinkTarget__use_mdds_headers :=
164
165else
166
167define gb_LinkTarget__use_mdds_headers
168$(call gb_LinkTarget_use_unpacked,$(1),mdds)
169$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200170 -I$(call gb_UnpackedTarball_get_dir,mdds/include) \
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200171 $$(INCLUDE) \
172)
173
174endef
175
176endif
177
Michael Stahl674e7912013-05-06 20:23:49 +0200178ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
David Tardoneafaec92012-12-21 14:08:27 +0100179
180define gb_LinkTarget__use_sane_headers
Michael Stahl72279ea2013-05-06 20:14:35 +0200181$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl674e7912013-05-06 20:23:49 +0200182 -I$(SRCDIR)/$(if $(filter WNT,$(OS)),twain,sane)/inc \
Michael Stahl72279ea2013-05-06 20:14:35 +0200183 $$(INCLUDE) \
David Tardoneafaec92012-12-21 14:08:27 +0100184)
185
186endef
187
188else
189
190gb_LinkTarget__use_sane_headers :=
191
192endif
193
Matúš Kukan8e535df2012-04-07 13:59:33 +0200194# External libraries
195
David Tardon785e1d92011-07-25 10:34:22 +0200196ifeq ($(SYSTEM_CPPUNIT),YES)
197
198define gb_LinkTarget__use_cppunit
199$(call gb_LinkTarget_set_include,$(1),\
200 $$(INCLUDE) \
201 $(CPPUNIT_CFLAGS) \
202)
203
204$(call gb_LinkTarget_add_libs,$(1),\
205 $(CPPUNIT_LIBS) \
206)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100207
David Tardon785e1d92011-07-25 10:34:22 +0200208endef
209
210else
211
Stephan Bergmann39a6e452012-12-07 08:11:16 +0100212$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
David Tardon785e1d92011-07-25 10:34:22 +0200213 cppunit \
214))
215
216define gb_LinkTarget__use_cppunit
Peter Foley143835b2012-11-25 16:37:40 -0500217$(call gb_LinkTarget_use_package,$(1),cppunit)
218
Michael Stahlc923f7d2012-04-07 23:22:08 +0200219$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon785e1d92011-07-25 10:34:22 +0200220 cppunit \
221)
Peter Foley143835b2012-11-25 16:37:40 -0500222$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200223 -I$(call gb_UnpackedTarball_get_dir,cppunit/include)\
Peter Foley143835b2012-11-25 16:37:40 -0500224 $$(INCLUDE) \
225)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100226
David Tardon785e1d92011-07-25 10:34:22 +0200227endef
228
229endif
Michael Stahlc74af0d2011-04-01 20:49:35 +0000230
Tor Lillqvist40900fb2013-01-03 12:48:14 +0200231define gb_LinkTarget__use_iconv
232$(call gb_LinkTarget_add_libs,$(1),-liconv)
233
234endef
235
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100236ifeq ($(SYSTEM_MARIADB),YES)
Peter Foleyc322d502013-01-23 16:29:08 -0500237
238define gb_LinkTarget__use_mysql
239
240$(call gb_LinkTarget_add_defs,$(1),\
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100241 -DSYSTEM_MARIADB \
Peter Foleyc322d502013-01-23 16:29:08 -0500242)
243
244$(call gb_LinkTarget_add_libs,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100245 $(MARIADB_LIBS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500246)
247
248$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100249 $(MARIADB_CFLAGS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500250 $$(INCLUDE) \
251)
252endef
253
254else
255
256define gb_LinkTarget__use_mysql
257
258$(call gb_LinkTarget_set_include,$(1),\
Peter Foleyc322d502013-01-23 16:29:08 -0500259 $$(INCLUDE) \
260)
261
262endef
263
264endif
265
266ifeq ($(SYSTEM_MYSQL_CPPCONN),YES)
267
268define gb_LinkTarget__use_mysqlcppconn
269$(call gb_LinkTarget_add_libs,$(1),\
270 -lmysqlcppconn \
271)
272
273$(call gb_LinkTarget_add_defs,$(1),\
Peter Foleyb02d7992013-01-24 15:43:52 -0500274 -DSYSTEM_MYSQL_CPPCONN \
Peter Foleyc322d502013-01-23 16:29:08 -0500275)
276endef
277
278else
279
Michael Stahl5f356bd2013-01-28 23:53:30 +0100280$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
Peter Foleyc322d502013-01-23 16:29:08 -0500281 mysqlcppconn \
282))
283
Michael Stahl5f356bd2013-01-28 23:53:30 +0100284# note: this does not link mysqlcppconn, it is loaded via osl_loadModuleRelative
Peter Foleyc322d502013-01-23 16:29:08 -0500285define gb_LinkTarget__use_mysqlcppconn
286
Michael Stahl5f356bd2013-01-28 23:53:30 +0100287$(call gb_LinkTarget_use_unpacked,$(1),mysqlcppconn)
288
Peter Foleyb02d7992013-01-24 15:43:52 -0500289$(call gb_LinkTarget_add_defs,$(1),\
290 -DCPPCONN_LIB_BUILD \
291)
292
Peter Foleyc322d502013-01-23 16:29:08 -0500293$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200294 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn) \
295 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn)/cppconn \
Peter Foleyc322d502013-01-23 16:29:08 -0500296 $$(INCLUDE) \
297)
298
299endef
300
301endif
302
Michael Stahlc74af0d2011-04-01 20:49:35 +0000303ifeq ($(SYSTEM_ZLIB),YES)
304
305define gb_LinkTarget__use_zlib
Michael Stahla88ef232011-04-13 16:11:41 +0000306$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000307 -DSYSTEM_ZLIB \
308)
309$(call gb_LinkTarget_add_libs,$(1),-lz)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100310
Michael Stahlc74af0d2011-04-01 20:49:35 +0000311endef
312
David Tardoncb276232012-10-26 15:33:26 +0200313# nothing on system
314define gb_LinkTarget__use_zlib_x64
315
316endef
317
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100318gb_ExternalProject__use_zlib :=
319
Michael Stahlc74af0d2011-04-01 20:49:35 +0000320else # !SYSTEM_ZLIB
321
David Tardoncb276232012-10-26 15:33:26 +0200322define gb_LinkTarget__use_zlib_multiarch
323$(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
324
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200325$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl3c38b772013-05-08 15:47:24 +0200326 $(ZLIB_CFLAGS) \
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200327 $$(INCLUDE) \
328)
David Tardoncb276232012-10-26 15:33:26 +0200329
Michael Stahlc923f7d2012-04-07 23:22:08 +0200330$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardoncb276232012-10-26 15:33:26 +0200331 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000332)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100333
Michael Stahlc74af0d2011-04-01 20:49:35 +0000334endef
335
David Tardoncb276232012-10-26 15:33:26 +0200336define gb_LinkTarget__use_zlib
337$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
338
339endef
340
341define gb_LinkTarget__use_zlib_x64
342$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
343
344endef
345
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100346define gb_ExternalProject__use_zlib
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100347$(call gb_ExternalProject_use_static_libraries,$(1),zlib)
348
349endef
350
Michael Stahlc74af0d2011-04-01 20:49:35 +0000351endif # SYSTEM_ZLIB
352
353
354ifeq ($(SYSTEM_JPEG),YES)
355
356define gb_LinkTarget__use_jpeg
357$(call gb_LinkTarget_add_libs,$(1),-ljpeg)
358$(call gb_LinkTarget_set_ldflags,$(1),\
Michael Stahl73d2fe92011-04-13 16:11:39 +0000359 $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000360)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100361
Michael Stahlc74af0d2011-04-01 20:49:35 +0000362endef
363
364else # !SYSTEM_JPEG
365
Michael Stahlc74af0d2011-04-01 20:49:35 +0000366define gb_LinkTarget__use_jpeg
Matúš Kukane8a28be2012-01-21 00:46:29 +0100367$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlb65859c2013-05-08 17:30:40 +0200368 -I$(call gb_UnpackedTarball_get_dir,jpeg) \
Matúš Kukane8a28be2012-01-21 00:46:29 +0100369 $$(INCLUDE) \
Matúš Kukane8a28be2012-01-21 00:46:29 +0100370)
371
Michael Stahlc923f7d2012-04-07 23:22:08 +0200372$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon4ed91fd2012-10-12 09:32:02 +0200373 jpeg \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000374)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100375
Michael Stahlc74af0d2011-04-01 20:49:35 +0000376endef
377
378endif # SYSTEM_JPEG
379
Peter Foley1d1bab42012-10-28 12:00:06 -0400380ifeq ($(SYSTEM_MYTHES),YES)
381
382define gb_LinkTarget__use_mythes
Rene Engelhard99ef1f52012-10-28 23:00:03 +0100383$(call gb_LinkTarget_set_include,$(1),\
384 $$(INCLUDE) \
385 $(MYTHES_CFLAGS) \
386)
387$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
388
Peter Foley1d1bab42012-10-28 12:00:06 -0400389endef
390
391else # !SYSTEM_MYTHES
392
Peter Foley1d1bab42012-10-28 12:00:06 -0400393define 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
David Tardon51149802013-04-09 09:22:20 +0200427define gb_LinkTarget__use_expat_impl
428$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000429
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700430$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl5e037bb2013-05-07 21:47:18 +0200431 -I$(call gb_UnpackedTarball_get_dir,expat)/lib \
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700432 $$(INCLUDE) \
433)
434
Michael Stahlc923f7d2012-04-07 23:22:08 +0200435$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000436 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000437)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100438
Michael Stahlc74af0d2011-04-01 20:49:35 +0000439endef
440
Michael Stahl77289672012-11-17 00:36:29 +0100441define gb_ExternalProject__use_expat
Michael Stahl77289672012-11-17 00:36:29 +0100442$(call gb_ExternalProject_use_static_libraries,$(1),expat)
443
444endef
445
Michael Stahlc74af0d2011-04-01 20:49:35 +0000446endif # SYSTEM_EXPAT
447
David Tardon51149802013-04-09 09:22:20 +0200448define gb_LinkTarget__use_expat
449$(call gb_LinkTarget__use_expat_impl,$(1),expat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100450
Michael Stahlc74af0d2011-04-01 20:49:35 +0000451endef
452
David Tardon51149802013-04-09 09:22:20 +0200453define gb_LinkTarget__use_expat_x64
454$(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100455
Michael Stahlc74af0d2011-04-01 20:49:35 +0000456endef
457
Peter Foleydd584cb2012-11-03 13:54:46 -0400458ifeq ($(SYSTEM_HYPH),YES)
459
460define gb_LinkTarget__use_hyphen
461$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
462
463endef
464
465else # !SYSTEM_HYPH
466
Peter Foleydd584cb2012-11-03 13:54:46 -0400467define gb_LinkTarget__use_hyphen
468$(call gb_LinkTarget_use_unpacked,$(1),hyphen)
469$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200470 -I$(call gb_UnpackedTarball_get_dir,hyphen)\
Peter Foleydd584cb2012-11-03 13:54:46 -0400471 $$(INCLUDE) \
472)
473$(call gb_LinkTarget_use_static_libraries,$(1),\
474 hyphen \
475)
476
477endef
478
479endif # SYSTEM_HYPH
480
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100481ifeq ($(SYSTEM_HUNSPELL),YES)
482
483define gb_LinkTarget__use_hunspell
484$(call gb_LinkTarget_set_include,$(1),\
485 $$(INCLUDE) \
486 $(HUNSPELL_CFLAGS) \
487)
488$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
489
490endef
491
492else # !SYSTEM_HUNSPELL
493
494define gb_LinkTarget__use_hunspell
495$(call gb_LinkTarget_add_defs,$(1),\
496 -DHUNSPELL_STATIC \
497)
Matúš Kukan7a030392012-10-29 23:29:37 +0100498$(call gb_LinkTarget_use_unpacked,$(1),hunspell)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100499$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200500 -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
Matúš Kukan7a030392012-10-29 23:29:37 +0100501 $$(INCLUDE) \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100502)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200503$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan327db9f2012-10-28 22:40:30 +0100504 hunspell \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100505)
506
507endef
508
509endif # SYSTEM_HUNSPELL
510
511
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200512ifeq ($(SYSTEM_BOOST),YES)
513
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200514define gb_LinkTarget__use_boostdatetime
David Tardon0f6919c2012-06-06 17:04:01 +0200515$(call gb_LinkTarget_set_include,$(1),\
516 $$(INCLUDE) \
517 $(BOOST_CPPFLAGS) \
518)
519
520$(call gb_LinkTarget_add_ldflags,$(1),\
521 $(BOOST_LDFLAGS) \
522)
523
524$(call gb_LinkTarget_add_libs,$(1),\
525 $(BOOST_DATE_TIME_LIB) \
526)
527
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200528endef
529
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200530define gb_LinkTarget__use_boostsystem
Tor Lillqvist503b2482013-05-22 19:50:22 +0300531$(call gb_LinkTarget_set_include,$(1),\
532 $$(INCLUDE) \
533 $(BOOST_CPPFLAGS) \
534)
535
536$(call gb_LinkTarget_add_ldflags,$(1),\
537 $(BOOST_LDFLAGS) \
538)
539
540$(call gb_LinkTarget_add_libs,$(1),\
541 $(BOOST_SYSTEM_LIB) \
542)
543
544endef
545
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200546gb_ExternalProject__use_boostsystem :=
Tor Lillqvist503b2482013-05-22 19:50:22 +0300547
Stephan Bergmann93208022013-02-16 22:56:19 +0100548define gb_LinkTarget__use_boost_headers
549$(call gb_LinkTarget_set_include,$(1),\
550 $$(INCLUDE) \
551 $(BOOST_CPPFLAGS) \
552)
553
554endef
555
Peter Foleycdb6eca2012-11-10 08:56:12 -0500556gb_ExternalProject__use_boost_headers:=
557
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200558else # !SYSTEM_BOOST
559
Kohei Yoshida0454b732012-09-06 15:10:19 -0400560ifeq ($(OS),WNT)
Michael Stahl7f2e1682012-09-06 20:22:11 +0200561define gb_LinkTarget__use_boostthread
562$(call gb_LinkTarget_add_defs,$(1),\
563 -DBOOST_ALL_NO_LIB \
564)
565
566$(call gb_LinkTarget_use_static_libraries,$(1),\
567 boostthread \
568)
569endef
Matúš Kukanddb5edc2013-05-30 14:39:38 +0200570endif
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200571
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200572define gb_LinkTarget__use_boostdatetime
Michael Stahl7f2e1682012-09-06 20:22:11 +0200573$(call gb_LinkTarget_add_defs,$(1),\
574 -DBOOST_ALL_NO_LIB \
575)
576
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200577$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200578 boostdatetime \
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200579)
580
581endef
582
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200583define gb_LinkTarget__use_boostsystem
Tor Lillqvist503b2482013-05-22 19:50:22 +0300584$(call gb_LinkTarget_add_defs,$(1),\
585 -DBOOST_ALL_NO_LIB \
586)
587
588$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200589 boostsystem \
Tor Lillqvist503b2482013-05-22 19:50:22 +0300590)
591
592endef
593
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200594define gb_ExternalProject__use_boostsystem
Michael Stahl963737d2013-05-29 18:36:29 +0200595$(call gb_ExternalProject_use_static_libraries,$(1),boostsystem)
Tor Lillqvist503b2482013-05-22 19:50:22 +0300596endef
597
Peter Foleye1f742a2012-11-12 18:37:10 -0500598define gb_LinkTarget__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100599$(call gb_LinkTarget_use_unpacked,$(1),boost)
Michael Stahla53586f2013-01-26 21:19:13 +0100600$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200601 -I$(call gb_UnpackedTarball_get_dir,boost) \
Michael Stahla53586f2013-01-26 21:19:13 +0100602 $$(INCLUDE) \
603)
Peter Foleye1f742a2012-11-12 18:37:10 -0500604
605endef
606
Peter Foleycdb6eca2012-11-10 08:56:12 -0500607define gb_ExternalProject__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100608$(call gb_ExternalProject_get_preparation_target,$(1)) :| $(call gb_UnpackedTarball_get_final_target,boost)
Peter Foleycdb6eca2012-11-10 08:56:12 -0500609
610endef
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200611endif # SYSTEM_BOOST
612
613
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100614ifeq ($(SYSTEM_CMIS),YES)
Matúš Kukan464b4332012-01-15 02:12:49 +0100615
616define gb_LinkTarget__use_cmis
617$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100618 $$(INCLUDE) \
Matúš Kukan707194e2012-09-06 18:19:34 +0200619 $(CMIS_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100620)
Matúš Kukan707194e2012-09-06 18:19:34 +0200621$(call gb_LinkTarget_add_libs,$(1),$(CMIS_LIBS))
Matúš Kukan464b4332012-01-15 02:12:49 +0100622
623endef
624
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100625else # !SYSTEM_CMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100626
Matúš Kukan464b4332012-01-15 02:12:49 +0100627define 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 +0100672define gb_LinkTarget__use_libexttextcat
Michael Stahlc923f7d2012-04-07 23:22:08 +0200673$(call gb_LinkTarget_use_static_libraries,$(1),\
Peter Foley31219f02012-11-09 17:25:56 -0500674 exttextcat \
Matúš Kukanbd030302011-12-03 15:06:52 +0100675)
Peter Foley31219f02012-11-09 17:25:56 -0500676
677$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200678 -I$(call gb_UnpackedTarball_get_dir,exttextcat/src) \
Peter Foley31219f02012-11-09 17:25:56 -0500679 $$(INCLUDE) \
680)
Matúš Kukanbd030302011-12-03 15:06:52 +0100681
682endef
683
684endif # SYSTEM_LIBEXTTEXTCAT
685
686
Michael Stahlc74af0d2011-04-01 20:49:35 +0000687ifeq ($(SYSTEM_LIBXML),YES)
688
689define gb_LinkTarget__use_libxml2
Michael Stahla88ef232011-04-13 16:11:41 +0000690$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000691 -DSYSTEM_LIBXML \
692)
693$(call gb_LinkTarget_set_include,$(1),\
694 $$(INCLUDE) \
695 $(LIBXML_CFLAGS) \
696)
697$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100698
Michael Stahlc74af0d2011-04-01 20:49:35 +0000699endef
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500700gb_ExternalProject__use_libxml2:=
Michael Stahlc74af0d2011-04-01 20:49:35 +0000701
702else # !SYSTEM_LIBXML
703
704$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
705 xml2 \
706))
707
708define gb_LinkTarget__use_libxml2
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500709$(call gb_LinkTarget_use_package,$(1),xml2)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200710$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000711 xml2 \
712)
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500713$(call gb_LinkTarget_set_include,$(1),\
714 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200715 -I$(call gb_UnpackedTarball_get_dir,xml2)/include \
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500716)
717
718endef
719define gb_ExternalProject__use_libxml2
720$(call gb_ExternalProject_use_package,$(1),xml2)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100721
Michael Stahlc74af0d2011-04-01 20:49:35 +0000722endef
723
724endif # SYSTEM_LIBXML
725
726
727ifeq ($(SYSTEM_LIBXSLT),YES)
728
729define gb_LinkTarget__use_libxslt
730$(call gb_LinkTarget_set_include,$(1),\
731 $$(INCLUDE) \
732 $(LIBXSLT_CFLAGS) \
733)
734$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100735
Michael Stahlc74af0d2011-04-01 20:49:35 +0000736endef
737
David Tardonab03e872012-08-15 07:20:13 +0200738define gb_LinkTarget__use_libexslt
739$(call gb_LinkTarget_set_include,$(1),\
740 $$(INCLUDE) \
741 $(LIBEXSLT_CFLAGS) \
742)
743
744$(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
745
746endef
747
Michael Stahlc74af0d2011-04-01 20:49:35 +0000748else # !SYSTEM_LIBXSLT
749
750$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
David Tardonab03e872012-08-15 07:20:13 +0200751 exslt \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000752 xslt \
753))
754
755define gb_LinkTarget__use_libxslt
Peter Foley856c0752013-02-02 15:44:30 -0500756$(call gb_LinkTarget_use_package,$(1),xslt)
757$(call gb_LinkTarget_set_include,$(1),\
758 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200759 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500760)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200761$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000762 xslt \
763)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100764
Michael Stahlc74af0d2011-04-01 20:49:35 +0000765endef
766
David Tardonab03e872012-08-15 07:20:13 +0200767define gb_LinkTarget__use_libexslt
Peter Foley856c0752013-02-02 15:44:30 -0500768$(call gb_LinkTarget_use_package,$(1),xslt)
769$(call gb_LinkTarget_set_include,$(1),\
770 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200771 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500772)
773
David Tardonab03e872012-08-15 07:20:13 +0200774$(call gb_LinkTarget_use_libraries,$(1),\
775 exslt \
776)
777
778endef
779
Michael Stahlc74af0d2011-04-01 20:49:35 +0000780endif # SYSTEM_LIBXSLT
781
Eike Rathkea774a482012-08-06 19:22:43 +0200782define gb_LinkTarget__use_glib
Tor Lillqviste10124b2012-11-06 18:08:16 +0200783$(error gb_LinkTarget__use_glib should not be called any more)
Eike Rathkea774a482012-08-06 19:22:43 +0200784endef
785
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +0200786ifeq ($(ENABLE_LIBLANGTAG),YES)
787
Eike Rathkea774a482012-08-06 19:22:43 +0200788ifeq ($(SYSTEM_LIBLANGTAG),YES)
789
790define gb_LinkTarget__use_liblangtag
791$(call gb_LinkTarget_set_include,$(1),\
792 $$(INCLUDE) \
793 $(LIBLANGTAG_CFLAGS) \
794)
795
796$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
797
798endef
799
800else # !SYSTEM_LIBLANGTAG
801
Eike Rathkea774a482012-08-06 19:22:43 +0200802define gb_LinkTarget__use_liblangtag
Peter Foley782151a2012-11-11 16:02:36 -0500803$(call gb_LinkTarget_use_unpacked,$(1),langtag)
804$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200805 -I$(call gb_UnpackedTarball_get_dir,langtag) \
Peter Foley782151a2012-11-11 16:02:36 -0500806 $$(INCLUDE) \
807)
Fridrich Štrba9fe90112012-11-13 11:59:33 +0100808$(call gb_LinkTarget_use_static_libraries,$(1),\
Eike Rathkea774a482012-08-06 19:22:43 +0200809 langtag \
810)
811
812endef
813
814endif # SYSTEM_LIBLANGTAG
815
Matúš Kukan51ba7db2013-05-02 12:19:35 +0200816else
817
818gb_LinkTarget__use_liblangtag :=
819
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +0200820endif # ENABLE_LIBLANGTAG
821
Eike Rathkea774a482012-08-06 19:22:43 +0200822
Matúš Kukan464b4332012-01-15 02:12:49 +0100823ifeq ($(SYSTEM_NEON),YES)
824
825define gb_LinkTarget__use_neon
Matúš Kukan464b4332012-01-15 02:12:49 +0100826$(call gb_LinkTarget_add_defs,$(1),\
827 -DNEON_VERSION=0x$(NEON_VERSION) \
828)
Matúš Kukan464b4332012-01-15 02:12:49 +0100829$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100830 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +0000831 $(NEON_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100832)
833
834$(call gb_LinkTarget_add_libs,$(1),$(NEON_LIBS))
835
836endef
837
838else # !SYSTEM_NEON
839
Matúš Kukanbb6c5a52012-09-11 12:56:39 +0200840$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
Matúš Kukan464b4332012-01-15 02:12:49 +0100841 neon \
842))
843
844define gb_LinkTarget__use_neon
Matúš Kukan7a030392012-10-29 23:29:37 +0100845$(call gb_LinkTarget_use_unpacked,$(1),neon)
Matúš Kukan464b4332012-01-15 02:12:49 +0100846$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200847 -I$(call gb_UnpackedTarball_get_dir,neon/src) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100848 $$(INCLUDE) \
849)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200850$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100851 neon \
852)
853
854endef
855
856endif # SYSTEM_NEON
857
858
Michael Stahlc74af0d2011-04-01 20:49:35 +0000859ifeq ($(SYSTEM_REDLAND),YES)
860
861define gb_LinkTarget__use_librdf
Michael Stahla88ef232011-04-13 16:11:41 +0000862$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000863 -DSYSTEM_REDLAND \
864)
865$(call gb_LinkTarget_set_include,$(1),\
866 $$(INCLUDE) \
867 $(REDLAND_CFLAGS) \
868)
869$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100870
Michael Stahlc74af0d2011-04-01 20:49:35 +0000871endef
872
Peter Foley18bd1e72012-12-27 18:04:21 -0500873gb_LinkTarget__use_redland_headers:=
874
875gb_LinkTarget__use_raptor_headers:=
876
877gb_LinkTarget__use_rasqal_headers:=
878
Michael Stahlc74af0d2011-04-01 20:49:35 +0000879else # !SYSTEM_REDLAND
880
Peter Foley18bd1e72012-12-27 18:04:21 -0500881define gb_LinkTarget__use_redland_headers
882$(call gb_LinkTarget_set_include,$(1),\
Michael Stahld719c012013-04-01 12:41:18 +0200883 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500884 $$(INCLUDE) \
885)
886
887endef
888
889define gb_LinkTarget__use_raptor_headers
890$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200891 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500892 $$(INCLUDE) \
893)
894
895endef
896
897define gb_LinkTarget__use_rasqal_headers
898$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200899 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -0500900 $$(INCLUDE) \
901)
902
903endef
904
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300905ifneq ($(OS),ANDROID)
906
Michael Stahlc74af0d2011-04-01 20:49:35 +0000907$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
David Tardon491dea02013-05-01 11:23:50 +0200908 raptor2 \
909 rasqal \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000910 rdf \
911))
912
913define gb_LinkTarget__use_librdf
Michael Stahl95565d52013-05-07 12:17:20 +0200914$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200915$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000916 rdf \
917)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100918
Michael Stahlc74af0d2011-04-01 20:49:35 +0000919endef
920
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300921else # ANDROID
922
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300923define gb_LinkTarget__use_librdf
Michael Stahl95565d52013-05-07 12:17:20 +0200924$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300925$(call gb_LinkTarget_use_static_libraries,$(1),\
926 rdf \
927 rasqal \
Michael Stahld719c012013-04-01 12:41:18 +0200928 raptor2 \
Tor Lillqvist9a42ca72012-04-19 21:45:14 +0300929)
930
931endef
932
933endif # ANDROID
934
Michael Stahlc74af0d2011-04-01 20:49:35 +0000935endif # SYSTEM_REDLAND
936
937
938ifeq ($(SYSTEM_CAIRO),YES)
939
Michael Stahlc74af0d2011-04-01 20:49:35 +0000940define gb_LinkTarget__use_cairo
941$(call gb_LinkTarget_set_include,$(1),\
942 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000943 $(CAIRO_CFLAGS) \
944)
David Tardon962771f2013-05-24 14:35:18 +0200945$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000946$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100947
Michael Stahlc74af0d2011-04-01 20:49:35 +0000948endef
949
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100950else ifeq ($(SYSTEM_CAIRO),NO)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000951
952$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
953 cairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100954 $(if $(filter-out MACOSX WNT,$(OS)), \
955 pixman-1 \
956 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000957))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000958
959define gb_LinkTarget__use_cairo
Michael Stahlde142202012-11-20 22:05:36 +0100960$(call gb_LinkTarget_use_package,$(1),cairo)
961$(call gb_LinkTarget_use_package,$(1),pixman)
David Tardon962771f2013-05-24 14:35:18 +0200962$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000963$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200964 -I$(call gb_UnpackedTarball_get_dir,cairo) \
965 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100966 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000967)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200968$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000969 cairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +0100970 $(if $(filter-out MACOSX WNT,$(OS)), \
971 pixman-1 \
972 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000973)
Caolán McNamara5bb76f62011-07-25 21:50:34 +0100974
Michael Stahlc74af0d2011-04-01 20:49:35 +0000975endef
976
977endif # SYSTEM_CAIRO
978
David Tardon962771f2013-05-24 14:35:18 +0200979ifeq ($(SYSTEM_FREETYPE),YES)
980
981define gb_LinkTarget__use_freetype_headers
Caolán McNamarab41ae462011-07-25 22:24:27 +0100982$(call gb_LinkTarget_set_include,$(1),\
983 $$(INCLUDE) \
984 $(FREETYPE_CFLAGS) \
985)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +0300986
David Tardon962771f2013-05-24 14:35:18 +0200987endef
988
989define gb_LinkTarget__use_freetype
990$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Caolán McNamarab41ae462011-07-25 22:24:27 +0100991$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
992
993endef
994
David Tardon962771f2013-05-24 14:35:18 +0200995else # ! SYSTEM_FREETYPE
996
997define gb_LinkTarget__use_freetype_headers
998$(call gb_LinkTarget_set_include,$(1),\
999 -I$(call gb_UnpackedTarball_get_dir,freetype)/include \
1000 $$(INCLUDE) \
1001)
1002
David Tardon61695f12013-05-24 17:15:20 +02001003endef
1004
David Tardon962771f2013-05-24 14:35:18 +02001005define gb_LinkTarget__use_freetype
1006$(call gb_LinkTarget_use_external,$(1),freetype_headers)
1007$(call gb_LinkTarget_use_static_libraries,$(1),freetype)
1008
1009endef
1010
1011endif # SYSTEM_FREETYPE
1012
David Tardon4eb68422013-05-24 14:16:03 +02001013ifeq ($(SYSTEM_FONTCONFIG),YES)
1014
Caolán McNamarab41ae462011-07-25 22:24:27 +01001015define gb_LinkTarget__use_fontconfig
1016$(call gb_LinkTarget_set_include,$(1),\
1017 $$(INCLUDE) \
1018 $(FONTCONFIG_CFLAGS) \
1019)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001020
Caolán McNamarab41ae462011-07-25 22:24:27 +01001021$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
1022
1023endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001024
David Tardon4eb68422013-05-24 14:16:03 +02001025else # ! SYSTEM_FONTCONFIG
1026
David Tardon4eb68422013-05-24 14:16:03 +02001027define gb_LinkTarget__use_fontconfig
1028$(call gb_LinkTarget_set_include,$(1),\
1029 -I$(call gb_UnpackedTarball_get_dir,fontconfig) \
1030 $$(INCLUDE) \
1031)
1032
1033$(call gb_LinkTarget_use_static_libraries,$(1),fontconfig)
1034
1035endef
1036
1037endif # SYSTEM_FONTCONFIG
1038
Michael Stahl87e44332011-04-13 16:11:39 +00001039ifeq ($(SYSTEM_GRAPHITE),YES)
1040
Michael Stahl87e44332011-04-13 16:11:39 +00001041define gb_LinkTarget__use_graphite
Michael Stahl87e44332011-04-13 16:11:39 +00001042$(call gb_LinkTarget_set_include,$(1),\
1043 $$(INCLUDE) \
1044 $(GRAPHITE_CFLAGS) \
1045)
1046$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001047
Michael Stahl87e44332011-04-13 16:11:39 +00001048endef
1049
Matúš Kukan1e925462012-10-26 13:37:59 +02001050else ifeq ($(SYSTEM_GRAPHITE),NO)
Michael Stahl87e44332011-04-13 16:11:39 +00001051
Michael Stahl87e44332011-04-13 16:11:39 +00001052define gb_LinkTarget__use_graphite
Matúš Kukan7a030392012-10-29 23:29:37 +01001053$(call gb_LinkTarget_use_unpacked,$(1),graphite)
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001054$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001055 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001056 $$(INCLUDE) \
1057)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001058$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001059 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001060)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001061
Michael Stahl87e44332011-04-13 16:11:39 +00001062endef
1063
Matúš Kukan1e925462012-10-26 13:37:59 +02001064else # DISABLED GRAPHITE
1065
1066gb_LinkTarget__use_graphite :=
1067
Michael Stahl87e44332011-04-13 16:11:39 +00001068endif # SYSTEM_GRAPHITE
1069
Michael Stahlc74af0d2011-04-01 20:49:35 +00001070ifeq ($(SYSTEM_ICU),YES)
1071
Peter Foleyb92a0d92012-12-25 17:39:43 -05001072gb_LinkTarget__use_icu_headers:=
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001073gb_ExternalProject__use_icu:=
Peter Foleyb92a0d92012-12-25 17:39:43 -05001074
Matúš Kukan6fad1752011-08-11 12:42:39 +02001075define gb_LinkTarget__use_icudata
1076$(call gb_LinkTarget_add_libs,$(1),-licudata)
1077
1078endef
David Tardon1a852392011-07-26 09:58:54 +02001079define gb_LinkTarget__use_icui18n
1080$(call gb_LinkTarget_add_libs,$(1),-licui18n)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001081
David Tardon1a852392011-07-26 09:58:54 +02001082endef
Matúš Kukan6fad1752011-08-11 12:42:39 +02001083define gb_LinkTarget__use_icutu
1084$(call gb_LinkTarget_add_libs,$(1),-licutu)
1085
1086endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001087define gb_LinkTarget__use_icuuc
1088$(call gb_LinkTarget_add_libs,$(1),-licuuc)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001089
Michael Stahlc74af0d2011-04-01 20:49:35 +00001090endef
1091
1092else # !SYSTEM_ICU
1093
Tor Lillqvist084db5f2012-09-24 10:37:25 +03001094ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001095gb_ICU_suffix:=lo
1096else
1097gb_ICU_suffix:=
1098endif
1099
Peter Foleyb92a0d92012-12-25 17:39:43 -05001100define gb_LinkTarget__use_icu_headers
Peter Foleyce9bf0f2013-03-23 12:32:31 -04001101$(call gb_LinkTarget_use_unpacked,$(1),icu)
Peter Foleyb92a0d92012-12-25 17:39:43 -05001102$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001103 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1104 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1105 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
Peter Foleyb92a0d92012-12-25 17:39:43 -05001106 $$(INCLUDE) \
1107)
1108
1109endef
1110
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001111define gb_ExternalProject__use_icu
1112$(call gb_ExternalProject_use_package,$(1),icu)
Fridrich Štrba851ca9c2013-01-25 10:29:59 +01001113
1114endef
1115
Peter Foleyf7452122012-11-04 08:46:44 -05001116# icudata and icui18n is called icudt and icuin when built with MSVC :-/
Tor Lillqvistbdfca5e2011-08-19 12:38:09 +03001117ifeq ($(OS)$(COM),WNTMSC)
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001118$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1119 icudt \
1120 icuin \
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001121))
1122
Michael Stahl1658e4e2012-12-02 18:56:17 +01001123define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001124$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001125$(call gb_LinkTarget_use_libraries,$(1),\
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001126 icudt \
1127)
1128
1129endef
Michael Stahl1658e4e2012-12-02 18:56:17 +01001130define gb_LinkTarget__use_icui18n
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001131$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001132$(call gb_LinkTarget_use_libraries,$(1),\
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001133 icuin \
1134)
1135
1136endef
1137else
Michael Stahlc74af0d2011-04-01 20:49:35 +00001138$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001139 icudata$(gb_ICU_suffix) \
1140 icui18n$(gb_ICU_suffix) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001141))
1142
Matúš Kukan6fad1752011-08-11 12:42:39 +02001143define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001144$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001145$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001146 icudata$(gb_ICU_suffix) \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001147)
1148
1149endef
David Tardon1a852392011-07-26 09:58:54 +02001150define gb_LinkTarget__use_icui18n
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001151$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001152$(call gb_LinkTarget_use_libraries,$(1),\
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001153 icui18n$(gb_ICU_suffix) \
David Tardon1a852392011-07-26 09:58:54 +02001154)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001155
David Tardon1a852392011-07-26 09:58:54 +02001156endef
Jan Holesovsky534b3bc2011-08-19 09:32:18 +02001157endif
1158
Michael Stahl1658e4e2012-12-02 18:56:17 +01001159$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
Michael Stahl1658e4e2012-12-02 18:56:17 +01001160 icutu$(gb_ICU_suffix) \
1161 icuuc$(gb_ICU_suffix) \
1162))
1163
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
Khaled Hosny7e389f42013-04-20 13:00:56 +02001195define gb_LinkTarget__use_harfbuzz
Michael Stahl8db02752013-05-07 23:28:45 +02001196$(call gb_LinkTarget_set_include,$(1),\
1197 -I$(call gb_UnpackedTarball_get_dir,harfbuzz)/src \
1198 $$(INCLUDE) \
1199)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001200$(call gb_LinkTarget_use_package,$(1),\
1201 harfbuzz \
1202)
1203$(call gb_LinkTarget_use_static_libraries,$(1),\
1204 harfbuzz \
1205)
1206
1207endef
1208
1209endif # SYSTEM_HARFBUZZ
1210else # ENABLE_HARFBUZZ != YES
1211
1212gb_LinkTarget__use_harfbuzz :=
1213
1214endif # ENABLE_HARFBUZZ
Michael Stahl4a8919f2011-04-18 11:13:57 +00001215
Andres Gomeze3f607e2013-04-11 10:24:25 +03001216ifeq ($(DISABLE_OPENSSL),YES)
1217
1218gb_ExternalProject__use_openssl:=
1219gb_LinkTarget__use_openssl_headers:=
1220gb_LinkTarget__use_openssl:=
1221
1222else # !DISABLE_OPENSSL
1223
Michael Stahl4a8919f2011-04-18 11:13:57 +00001224ifeq ($(SYSTEM_OPENSSL),YES)
1225
Peter Foley9ddba662012-12-28 11:19:06 -05001226gb_LinkTarget__use_openssl_headers:=
1227gb_ExternalProject__use_openssl:=
1228
Michael Stahl4a8919f2011-04-18 11:13:57 +00001229define gb_LinkTarget__use_openssl
1230$(call gb_LinkTarget_set_include,$(1),\
1231 $$(INCLUDE) \
1232 $(OPENSSL_CFLAGS) \
1233)
1234$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001235
Michael Stahl4a8919f2011-04-18 11:13:57 +00001236endef
1237
1238else # !SYSTEM_OPENSSL
1239
1240ifeq ($(OS),WNT)
1241$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1242 crypto \
1243 ssl \
1244))
Michael Stahl4a8919f2011-04-18 11:13:57 +00001245endif
1246
Peter Foley9ddba662012-12-28 11:19:06 -05001247define gb_ExternalProject__use_openssl
1248$(call gb_ExternalProject_use_package,$(1),openssl)
1249
1250endef
1251
1252define gb_LinkTarget__use_openssl_headers
1253$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001254 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
Peter Foley9ddba662012-12-28 11:19:06 -05001255 $$(INCLUDE) \
1256)
1257
1258endef
1259
Michael Stahl4a8919f2011-04-18 11:13:57 +00001260define gb_LinkTarget__use_openssl
Peter Foley9ddba662012-12-28 11:19:06 -05001261$(call gb_LinkTarget_use_package,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001262ifeq ($(OS),WNT)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001263$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahl4a8919f2011-04-18 11:13:57 +00001264 crypto \
1265 ssl \
1266)
1267else
Michael Stahlc923f7d2012-04-07 23:22:08 +02001268$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahl4a8919f2011-04-18 11:13:57 +00001269 crypto \
1270 ssl \
1271)
1272ifeq ($(OS),SOLARIS)
Michael Stahl80374352012-09-28 12:25:50 +02001273$(call gb_LinkTarget_add_libs,$(1),\
1274 -lnsl \
1275 -lsocket \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001276)
1277endif
1278endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001279
Michael Stahl4a8919f2011-04-18 11:13:57 +00001280endef
1281
1282endif # SYSTEM_OPENSSL
Andres Gomeze3f607e2013-04-11 10:24:25 +03001283endif # DISABLE_OPENSSL
Michael Stahl4a8919f2011-04-18 11:13:57 +00001284
Matúš Kukanc4560482011-07-28 01:03:23 +02001285
Andres Gomez48d49752013-04-11 10:32:54 +03001286ifeq ($(DISABLE_OPENSSL),YES)
1287
1288define gb_LinkTarget__use_gnutls
1289$(call gb_LinkTarget_set_include,$(1),\
1290 $$(INCLUDE) \
1291 $(GNUTLS_CFLAGS) \
1292)
1293
1294$(call gb_LinkTarget_add_defs,$(1),\
1295 -DDISABLE_OPENSSL \
1296)
1297
1298$(call gb_LinkTarget_add_libs,$(1),$(GNUTLS_LIBS))
1299
1300endef
1301
1302define gb_LinkTarget__use_libgcrypt
1303$(call gb_LinkTarget_set_include,$(1),\
1304 $$(INCLUDE) \
1305 $(LIBGCRYPT_CFLAGS) \
1306)
1307
1308$(call gb_LinkTarget_add_libs,$(1),$(LIBGCRYPT_LIBS))
1309
1310endef
1311
1312else # !DISABLE_OPENSSL
1313
1314gb_LinkTarget__use_gnutls:=
1315gb_LinkTarget__use_libgcrypt:=
1316
1317endif # DISABLE_OPENSSL
1318
1319
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001320ifeq ($(SYSTEM_CDR),YES)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001321
1322define gb_LinkTarget__use_cdr
1323$(call gb_LinkTarget_set_include,$(1),\
1324 $$(INCLUDE) \
1325 $(CDR_CFLAGS) \
1326)
1327$(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1328
1329endef
1330
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001331else # !SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001332
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001333define gb_LinkTarget__use_cdr
David Tardonf16f3662013-05-24 13:48:03 +02001334$(call gb_LinkTarget_set_include,$(1),\
1335 -I$(call gb_UnpackedTarball_get_dir,libcdr)/inc \
1336 $$(INCLUDE) \
1337)
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001338$(call gb_LinkTarget_use_package,$(1),\
1339 libcdr \
1340)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001341$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001342 cdr-0.0 \
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001343)
1344
1345endef
1346
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001347endif # SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001348
1349
Fridrich Štrba93848e12013-05-02 20:25:51 +02001350ifeq ($(SYSTEM_ODFGEN),YES)
1351
1352define gb_LinkTarget__use_odfgen
1353$(call gb_LinkTarget_set_include,$(1),\
1354 $$(INCLUDE) \
1355 $(ODFGEN_CFLAGS) \
1356)
1357$(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
1358
1359endef
1360
1361else # !SYSTEM_ODFGEN
1362
Fridrich Štrba93848e12013-05-02 20:25:51 +02001363define gb_LinkTarget__use_odfgen
David Tardon0f8a90c2013-05-24 13:49:11 +02001364$(call gb_LinkTarget_set_include,$(1),\
1365 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1366 $$(INCLUDE) \
1367)
Fridrich Štrba93848e12013-05-02 20:25:51 +02001368$(call gb_LinkTarget_use_package,$(1),\
1369 libodfgen \
1370)
1371$(call gb_LinkTarget_use_static_libraries,$(1),\
1372 odfgen-0.0 \
1373)
1374
1375endef
1376
1377endif # SYSTEM_ODFGEN
1378
1379
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001380ifeq ($(SYSTEM_MSPUB),YES)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001381
1382define gb_LinkTarget__use_mspub
1383$(call gb_LinkTarget_set_include,$(1),\
1384 $$(INCLUDE) \
1385 $(MSPUB_CFLAGS) \
1386)
1387$(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1388
1389endef
1390
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001391else # !SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001392
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001393define gb_LinkTarget__use_mspub
Michael Stahl35ac39e2013-05-16 13:09:11 +02001394$(call gb_LinkTarget_set_include,$(1),\
1395 -I$(call gb_UnpackedTarball_get_dir,libmspub)/inc \
1396 $$(INCLUDE) \
1397)
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001398$(call gb_LinkTarget_use_package,$(1),\
1399 libmspub \
1400)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001401$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001402 mspub-0.0 \
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001403)
1404
1405endef
1406
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001407endif # SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001408
1409
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001410ifeq ($(SYSTEM_VISIO),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001411
1412define gb_LinkTarget__use_visio
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001413$(call gb_LinkTarget_set_include,$(1),\
1414 $$(INCLUDE) \
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001415 $(VISIO_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001416)
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001417$(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001418
1419endef
1420
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001421else # !SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001422
Matúš Kukanc6a63952011-07-28 17:29:44 +02001423define gb_LinkTarget__use_visio
Michael Stahlacc7f612013-05-16 13:14:37 +02001424$(call gb_LinkTarget_set_include,$(1),\
1425 -I$(call gb_UnpackedTarball_get_dir,libvisio)/inc \
1426 $$(INCLUDE) \
1427)
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001428$(call gb_LinkTarget_use_package,$(1),\
1429 libvisio \
1430)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001431$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001432 visio-0.0 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001433)
1434
1435endef
1436
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001437endif # SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001438
1439
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001440ifeq ($(SYSTEM_WPD),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001441
1442define gb_LinkTarget__use_wpd
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001443$(call gb_LinkTarget_set_include,$(1),\
1444 $$(INCLUDE) \
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001445 $(WPD_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001446)
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001447$(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001448
1449endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001450gb_ExternalProject__use_wpd :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001451
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001452else # !SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001453
Fridrich Štrba4425db62012-09-24 13:17:45 +02001454define gb_LinkTarget__use_wpd
Michael Stahldb5c8c52013-05-16 13:28:14 +02001455$(call gb_LinkTarget_set_include,$(1),\
1456 $(WPD_CFLAGS) \
1457 $$(INCLUDE) \
1458)
Michael Stahl34295432012-09-24 22:25:28 +02001459$(call gb_LinkTarget_use_package,$(1),\
1460 libwpd \
1461)
Fridrich Štrba4425db62012-09-24 13:17:45 +02001462$(call gb_LinkTarget_use_static_libraries,$(1),\
1463 wpd-0.9 \
1464)
1465
1466endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001467define gb_ExternalProject__use_wpd
Michael Stahlc8d064d2013-02-20 14:14:30 +01001468$(call gb_ExternalProject_use_package,$(1),libwpd)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001469
1470endef
Fridrich Štrba4425db62012-09-24 13:17:45 +02001471
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001472endif # SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001473
1474
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001475ifeq ($(SYSTEM_WPG),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001476
1477define gb_LinkTarget__use_wpg
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001478$(call gb_LinkTarget_set_include,$(1),\
1479 $$(INCLUDE) \
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001480 $(WPG_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001481)
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001482$(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001483
1484endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001485gb_ExternalProject__use_wpg :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001486
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001487else # !SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02001488
Matúš Kukanc6a63952011-07-28 17:29:44 +02001489define gb_LinkTarget__use_wpg
David Tardonc51a2542013-05-24 14:53:37 +02001490$(call gb_LinkTarget_set_include,$(1),\
1491 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
1492 $$(INCLUDE) \
1493)
Michael Stahl53b7bdc2012-10-05 17:19:47 +02001494$(call gb_LinkTarget_use_package,$(1),\
Fridrich Štrba115033f2013-04-18 15:23:28 +02001495 libwpg \
Michael Stahl53b7bdc2012-10-05 17:19:47 +02001496)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001497$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba115033f2013-04-18 15:23:28 +02001498 wpg-0.2 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001499)
1500
1501endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001502define gb_ExternalProject__use_wpg
Fridrich Štrba115033f2013-04-18 15:23:28 +02001503$(call gb_ExternalProject_use_package,$(1),libwpg)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001504
1505endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02001506
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001507endif # SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02001508
1509
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001510ifeq ($(SYSTEM_WPS),YES)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001511
1512define gb_LinkTarget__use_wps
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001513$(call gb_LinkTarget_set_include,$(1),\
1514 $$(INCLUDE) \
Fridrich Štrbae991bba2011-10-05 10:18:53 +02001515 $(WPS_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001516)
Fridrich Štrbae991bba2011-10-05 10:18:53 +02001517$(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001518
1519endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001520gb_ExternalProject__use_wps :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001521
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001522else # !SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02001523
Matúš Kukanc6a63952011-07-28 17:29:44 +02001524define gb_LinkTarget__use_wps
David Tardon6f9d8212013-05-24 14:58:31 +02001525$(call gb_LinkTarget_set_include,$(1),\
1526 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
1527 $$(INCLUDE) \
1528)
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02001529$(call gb_LinkTarget_use_package,$(1),\
1530 libwps \
1531)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001532$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02001533 wps-0.2 \
Matúš Kukanc6a63952011-07-28 17:29:44 +02001534)
1535
1536endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001537define gb_ExternalProject__use_wps
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02001538$(call gb_ExternalProject_use_package,$(1),libwps)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001539
1540endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02001541
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001542endif # SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02001543
1544
Fridrich Štrba790a36d2013-03-11 12:38:12 +01001545ifeq ($(SYSTEM_MWAW),YES)
1546
1547define gb_LinkTarget__use_mwaw
1548$(call gb_LinkTarget_set_include,$(1),\
1549 $$(INCLUDE) \
1550 $(MWAW_CFLAGS) \
1551)
1552$(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
1553
1554endef
1555
1556else # !SYSTEM_MWAW
1557
Fridrich Štrba790a36d2013-03-11 12:38:12 +01001558define gb_LinkTarget__use_mwaw
Michael Stahlff718952013-05-16 13:11:36 +02001559$(call gb_LinkTarget_set_include,$(1),\
1560 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
1561 $$(INCLUDE) \
1562)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01001563$(call gb_LinkTarget_use_package,$(1),\
1564 libmwaw \
1565)
1566$(call gb_LinkTarget_use_static_libraries,$(1),\
1567 mwaw-0.1 \
1568)
1569
1570endef
1571
1572endif # SYSTEM_MWAW
1573
1574
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001575ifeq ($(SYSTEM_LCMS2),YES)
1576
1577define gb_LinkTarget__use_lcms2
1578$(call gb_LinkTarget_set_include,$(1),\
1579 $$(INCLUDE) \
Peter Foleyf7452122012-11-04 08:46:44 -05001580 $(LCMS2_CFLAGS) \
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001581)
1582$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
1583
1584endef
1585
Peter Foley8905c0e2012-11-08 21:00:30 -05001586gb_ExternalProject__use_lcms2 :=
1587
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001588else # !SYSTEM_LCMS2
1589
Peter Foley8905c0e2012-11-08 21:00:30 -05001590define gb_ExternalProject__use_lcms2
1591$(call gb_ExternalProject_use_package,$(1),lcms2)
1592
1593endef
1594
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001595ifeq ($(OS),ANDROID)
1596
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001597define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001598$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02001599$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001600 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02001601 $$(INCLUDE) \
1602)
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001603$(call gb_LinkTarget_use_static_libraries,$(1),\
1604 lcms2 \
1605)
1606
1607endef
1608
1609else
1610
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001611$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1612 lcms2 \
1613))
1614
1615define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001616$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02001617$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001618 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02001619 $$(INCLUDE) \
1620)
Norbert Thiebaud1b61693a2012-11-04 16:27:25 -06001621$(call gb_LinkTarget_use_libraries,$(1),\
1622 lcms2 \
1623)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001624
1625endef
1626
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03001627endif # ANDROID
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01001628endif # SYSTEM_LCMS2
1629
1630
Matúš Kukanc4560482011-07-28 01:03:23 +02001631ifeq ($(SYSTEM_LPSOLVE),YES)
1632
Peter Foley085346f2012-11-03 19:19:30 -04001633define gb_LinkTarget__use_lpsolve
Matúš Kukanc4560482011-07-28 01:03:23 +02001634$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
Peter Foley085346f2012-11-03 19:19:30 -04001635$(call gb_LinkTarget_add_defs,$(1),\
1636 -DSYSTEM_LPSOLVE \
Peter Foley29d5e292012-11-07 18:18:08 -05001637)
Matúš Kukanc4560482011-07-28 01:03:23 +02001638
1639endef
1640
1641else # !SYSTEM_LPSOLVE
1642
1643$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1644 lpsolve55 \
1645))
1646
Peter Foley085346f2012-11-03 19:19:30 -04001647define gb_LinkTarget__use_lpsolve
1648$(call gb_LinkTarget_use_unpacked,$(1),lpsolve)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001649$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukanc4560482011-07-28 01:03:23 +02001650 lpsolve55 \
1651)
Peter Foley085346f2012-11-03 19:19:30 -04001652$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001653 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
Peter Foley085346f2012-11-03 19:19:30 -04001654 $$(INCLUDE) \
1655)
Matúš Kukanc4560482011-07-28 01:03:23 +02001656
1657endef
1658
1659endif # SYSTEM_LPSOLVE
1660
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001661ifeq ($(ENABLE_GIO),TRUE)
Matúš Kukanc4560482011-07-28 01:03:23 +02001662
Matúš Kukan464b4332012-01-15 02:12:49 +01001663define gb_LinkTarget__use_gio
1664$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01001665 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00001666 $(GIO_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01001667)
1668
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001669$(call gb_LinkTarget_add_defs,$(1),\
1670 -DENABLE_GIO \
1671)
1672
Matúš Kukan464b4332012-01-15 02:12:49 +01001673$(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
1674
1675endef
1676
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001677else # ENABLE_GIO
1678
1679define gb_LinkTarget__use_gio
Caolán McNamara1e98bb42012-11-06 20:09:57 +00001680
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01001681endef
1682
1683endif # ENABLE_GIO
1684
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02001685define gb_LinkTarget__use_gtk
1686$(call gb_LinkTarget_set_include,$(1),\
1687 $$(INCLUDE) \
1688 $(GTK_CFLAGS) \
1689)
1690
1691$(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
1692
David Tardonadb11052011-12-01 13:39:09 +01001693ifeq ($(ENABLE_GTK_PRINT),TRUE)
1694
1695$(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
1696
1697$(call gb_LinkTarget_set_include,$(1),\
1698 $$(INCLUDE) \
1699 $(GTK_PRINT_CFLAGS) \
1700)
1701
1702$(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
1703
1704endif
1705
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02001706endef
Michael Stahl4a8919f2011-04-18 11:13:57 +00001707
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02001708define gb_LinkTarget__use_gthread
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01001709$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02001710endef
1711
Caolán McNamara68ffb332012-09-14 11:31:50 +01001712ifeq ($(ENABLE_CUPS),TRUE)
1713
1714define gb_LinkTarget__use_cups
1715$(call gb_LinkTarget_add_defs,$(1),\
1716 -DENABLE_CUPS \
1717)
1718
1719$(call gb_LinkTarget_add_libs,$(1),\
1720 -lcups \
1721)
1722
1723endef
1724
1725else # ENABLE_CUPS
1726
1727define gb_LinkTarget__use_cups
1728
1729endef
1730
1731endif # ENABLE_DBUS
David Tardon1b717ce2011-11-02 13:00:48 +01001732
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01001733ifeq ($(ENABLE_DBUS),TRUE)
David Tardon1b717ce2011-11-02 13:00:48 +01001734
1735define gb_LinkTarget__use_dbus
1736$(call gb_LinkTarget_set_include,$(1),\
1737 $$(INCLUDE) \
1738 $(DBUS_CFLAGS) \
1739)
1740
Matúš Kukan464b4332012-01-15 02:12:49 +01001741$(call gb_LinkTarget_add_defs,$(1),\
David Tardon1b717ce2011-11-02 13:00:48 +01001742 -DENABLE_DBUS \
1743)
1744
Rene Engelhardbea61492012-09-11 02:30:09 +02001745ifeq ($(ENABLE_PACKAGEKIT),YES)
1746$(call gb_LinkTarget_add_defs,$(1),\
1747 -DENABLE_PACKAGEKIT \
1748)
1749endif # ENABLE_PACKAGEKIT
1750
David Tardon1b717ce2011-11-02 13:00:48 +01001751$(call gb_LinkTarget_add_libs,$(1),\
1752 $(DBUS_LIBS) \
1753)
1754
1755endef
1756
1757else # ENABLE_DBUS
1758
1759define gb_LinkTarget__use_dbus
1760
1761endef
1762
1763endif # ENABLE_DBUS
1764
1765
Bjoern Michaelsendd321062011-07-26 16:04:15 +02001766define gb_LinkTarget__use_dbusmenugtk
1767$(call gb_LinkTarget_set_include,$(1),\
1768 $$(INCLUDE) \
1769 $(DBUSMENUGTK_CFLAGS) \
1770)
1771
1772$(call gb_LinkTarget_add_libs,$(1),$(DBUSMENUGTK_LIBS))
1773
1774endef
1775
Eike Rathkea3a8b802012-03-16 22:14:54 +01001776
1777ifeq ($(ENABLE_TELEPATHY),TRUE)
1778
1779define gb_LinkTarget__use_telepathy
1780$(call gb_LinkTarget_set_include,$(1),\
1781 $$(INCLUDE) \
1782 $(TELEPATHY_CFLAGS) \
1783)
1784
Eike Rathkea3a8b802012-03-16 22:14:54 +01001785$(call gb_LinkTarget_add_libs,$(1),\
1786 $(TELEPATHY_LIBS) \
1787)
1788
1789endef
1790
1791else # !ENABLE_TELEPATHY
1792
Matúš Kukanfe327622012-08-09 00:15:52 +02001793gb_LinkTarget__use_telepathy :=
Eike Rathkea3a8b802012-03-16 22:14:54 +01001794
1795endif # ENABLE_TELEPATHY
1796
Peter Foley8615d092012-10-10 21:43:21 -04001797define gb_LinkTarget__use_croco
Tor Lillqviste10124b2012-11-06 18:08:16 +02001798$(error gb_LinkTarget__use_croco should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001799endef
1800
Peter Foley8615d092012-10-10 21:43:21 -04001801define gb_LinkTarget__use_pango
Tor Lillqviste10124b2012-11-06 18:08:16 +02001802$(error gb_LinkTarget__use_pango should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001803endef
1804
Peter Foley8615d092012-10-10 21:43:21 -04001805define gb_LinkTarget__use_gsf
Tor Lillqviste10124b2012-11-06 18:08:16 +02001806$(error gb_LinkTarget__use_gsf should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001807endef
1808
Peter Foley8615d092012-10-10 21:43:21 -04001809define gb_LinkTarget__use_pixbuf
Tor Lillqviste10124b2012-11-06 18:08:16 +02001810$(error gb_LinkTarget__use_pixbuf should not be used any more)
Peter Foley8615d092012-10-10 21:43:21 -04001811endef
1812
David Tardon6df9c472011-09-15 14:44:34 +02001813ifeq ($(SYSTEM_LIBPNG),YES)
1814
1815define gb_LinkTarget__use_png
1816$(call gb_LinkTarget_set_include,$(1),\
1817 $$(INCLUDE) \
1818 $(LIBPNG_CFLAGS) \
1819)
1820
1821$(call gb_LinkTarget_add_libs,$(1),\
1822 $(LIBPNG_LIBS) \
1823)
1824
1825endef
1826
1827else # !SYSTEM_LIBPNG
1828
David Tardon6df9c472011-09-15 14:44:34 +02001829define gb_LinkTarget__use_png
Michael Stahl416b3212013-05-08 17:22:22 +02001830$(call gb_LinkTarget_set_include,$(1),\
1831 $(LIBPNG_CFLAGS) \
1832 $$(INCLUDE) \
1833)
Matúš Kukanf96d58b2012-09-08 18:13:20 +02001834$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon6df9c472011-09-15 14:44:34 +02001835 png \
1836)
Michael Stahl398ce442012-09-28 21:47:29 +02001837$(call gb_LinkTarget__use_zlib,$(1))
David Tardon6df9c472011-09-15 14:44:34 +02001838
1839endef
1840
1841endif # !SYSTEM_LIBPNG
1842
Michael Stahl50471a82011-12-06 19:17:52 +01001843
1844ifeq ($(SYSTEM_CURL),YES)
1845
1846define gb_LinkTarget__use_curl
1847$(call gb_LinkTarget_set_include,$(1),\
1848 $$(INCLUDE) \
1849 $(CURL_CFLAGS) \
1850)
1851$(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
1852
1853endef
1854
1855else # !SYSTEM_CURL
1856
1857$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1858 curl \
1859))
1860
1861define gb_LinkTarget__use_curl
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01001862$(call gb_LinkTarget_use_package,$(1),curl)
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01001863$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001864 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01001865 $$(INCLUDE) \
1866)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001867$(call gb_LinkTarget_use_libraries,$(1),\
Michael Stahl50471a82011-12-06 19:17:52 +01001868 curl \
1869)
1870
1871endef
1872
1873endif # SYSTEM_CURL
1874
Stephan Bergmann49313b02012-11-27 15:35:02 +01001875ifeq ($(ENABLE_VALGRIND),TRUE)
David Tardon3446cda2011-12-23 12:21:19 +01001876
1877define gb_LinkTarget__use_valgrind
1878$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmann49313b02012-11-27 15:35:02 +01001879 -DHAVE_VALGRIND_HEADERS \
David Tardon3446cda2011-12-23 12:21:19 +01001880)
1881
1882$(call gb_LinkTarget_set_include,$(1),\
1883 $$(INCLUDE) \
1884 $(VALGRIND_CFLAGS) \
1885)
1886
1887endef
1888
Stephan Bergmann49313b02012-11-27 15:35:02 +01001889else # !ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01001890
1891define gb_LinkTarget__use_valgrind
1892
1893endef
1894
Stephan Bergmann49313b02012-11-27 15:35:02 +01001895endif # ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01001896
David Tardondba2d322012-02-18 18:54:35 +01001897ifeq ($(SYSTEM_POPPLER),YES)
1898
1899define gb_LinkTarget__use_poppler
1900$(call gb_LinkTarget_add_defs,$(1),\
1901 -DSYSTEM_POPPLER \
1902)
1903
1904$(call gb_LinkTarget_set_include,$(1),\
1905 $(POPPLER_CFLAGS) \
1906 $$(INCLUDE) \
1907)
1908
1909$(call gb_LinkTarget_add_libs,$(1),\
1910 $(POPPLER_LIBS) \
1911)
1912
1913endef
1914
1915else # !SYSTEM_POPPLER
1916
David Tardondba2d322012-02-18 18:54:35 +01001917define gb_LinkTarget__use_poppler
Peter Foleyfb1d11d2013-02-17 09:26:01 -05001918$(call gb_LinkTarget_use_package,$(1),xpdf)
1919
David Tardon548b61a2012-02-21 06:58:02 +01001920$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001921 -I$(call gb_UnpackedTarball_get_dir,xpdf) \
1922 -I$(call gb_UnpackedTarball_get_dir,xpdf)/xpdf \
1923 -I$(call gb_UnpackedTarball_get_dir,xpdf)/goo \
David Tardon548b61a2012-02-21 06:58:02 +01001924 $$(INCLUDE) \
David Tardondba2d322012-02-18 18:54:35 +01001925)
1926
Michael Stahlc923f7d2012-04-07 23:22:08 +02001927$(call gb_LinkTarget_use_static_libraries,$(1),\
Tor Lillqvist97d8b882012-11-13 10:27:21 +02001928 fofi \
1929 Goo \
1930 xpdf \
David Tardon548b61a2012-02-21 06:58:02 +01001931)
1932
1933ifeq ($(OS),MACOSX)
Michael Stahl967986b2012-09-28 00:54:49 +02001934$(call gb_LinkTarget_add_libs,$(1),\
1935 -lobjc \
David Tardon548b61a2012-02-21 06:58:02 +01001936)
1937else ifeq ($(OS),WNT)
Michael Stahldc397aae2012-09-28 15:31:46 +02001938$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon548b61a2012-02-21 06:58:02 +01001939 advapi32 \
1940 gdi32 \
1941)
1942endif
1943
David Tardondba2d322012-02-18 18:54:35 +01001944endef
1945
1946endif # SYSTEM_POPPLER
1947
David Tardon3446cda2011-12-23 12:21:19 +01001948
David Tardon22c60cb2012-04-07 15:50:47 +02001949ifeq ($(SYSTEM_CLUCENE),YES)
1950
1951define gb_LinkTarget__use_clucene
1952$(call gb_LinkTarget_add_defs,$(1),\
1953 $(filter-out -I%,$(CLUCENE_CFLAGS)) \
1954)
1955
1956$(call gb_LinkTarget_set_include,$(1),\
1957 $(filter -I%,$(CLUCENE_CFLAGS)) \
1958 $$(INCLUDE) \
1959)
1960
1961$(call gb_LinkTarget_add_libs,$(1),\
1962 $(CLUCENE_LIBS) \
1963)
1964
1965endef
1966
1967else # !SYSTEM_CLUCENE
1968
1969define gb_LinkTarget__use_clucene
Michael Stahl28cde0c2013-05-07 23:47:27 +02001970$(call gb_LinkTarget_set_include,$(1),\
1971 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/core \
1972 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/shared \
1973 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/contribs-lib \
1974 $$(INCLUDE) \
1975)
1976
Michael Stahlc923f7d2012-04-07 23:22:08 +02001977$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon22c60cb2012-04-07 15:50:47 +02001978 clucene \
1979)
1980
1981endef
1982
David Tardon735c5292012-04-07 17:15:35 +02001983$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
David Tardon22c60cb2012-04-07 15:50:47 +02001984 clucene \
1985))
1986
1987endif # SYSTEM_CLUCENE
1988
Peter Foley64402842011-12-22 16:34:35 -05001989define gb_LinkTarget__use_gobject
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01001990$(call gb_LinkTarget_add_libs,$(1),\
1991 $(GOBJECT_LIBS) \
1992)
1993
1994$(call gb_LinkTarget_set_include,$(1),\
1995 $$(INCLUDE) \
1996 $(GOBJECT_CFLAGS) \
1997)
Peter Foley64402842011-12-22 16:34:35 -05001998endef
1999
Michael Stahl1d6830e2012-07-17 13:07:30 +02002000ifeq ($(SYSTEM_HSQLDB),YES)
David Tardon579f52d2012-03-27 16:36:31 +02002001
2002define gb_LinkTarget__use_hsqldb
2003
2004$(call gb_LinkTarget_add_defs,$(1),\
2005 -DSYSTEM_HSQLDB \
2006 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
2007)
2008
2009endef
2010
2011else # !SYSTEM_HSQLDB
2012
2013define gb_LinkTarget__use_hsqldb
2014
2015endef
2016
2017endif # SYSTEM_HSQLDB
2018
David Tardon8bc7afb2012-04-05 10:53:08 +02002019
Luboš Luňáke13cda12012-07-16 21:50:59 +02002020ifeq ($(SYSTEM_OPENLDAP),YES)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002021
2022define gb_LinkTarget__use_openldap
2023
2024$(call gb_LinkTarget_add_libs,$(1),\
2025 -lldap \
2026 -llber \
2027)
2028
2029endef
2030
Matúš Kukand6a02072013-03-27 00:34:19 +01002031else ifeq ($(SYSTEM_OPENLDAP),NO)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002032
Michael Stahle0ee0d42012-07-16 19:00:07 +02002033define gb_LinkTarget__use_openldap
Matúš Kukan7a030392012-10-29 23:29:37 +01002034$(call gb_LinkTarget_use_unpacked,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002035$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002036 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002037 $$(INCLUDE) \
2038)
Matúš Kukanc3a586a2012-10-28 12:35:07 +01002039$(call gb_LinkTarget_use_package,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002040$(call gb_LinkTarget_use_static_libraries,$(1),\
2041 ldap \
2042 lber \
2043)
2044
2045endef
2046
Matúš Kukan006e1272013-03-27 01:02:55 +01002047else # no openldap
2048
2049gb_LinkTarget__use_openldap :=
2050
Michael Stahle0ee0d42012-07-16 19:00:07 +02002051endif # SYSTEM_OPENLDAP
2052
2053
David Tardon8bc7afb2012-04-05 10:53:08 +02002054ifeq ($(SYSTEM_POSTGRESQL),YES)
2055
2056define gb_LinkTarget__use_postgresql
2057
David Tardon8bc7afb2012-04-05 10:53:08 +02002058$(call gb_LinkTarget_set_include,$(1),\
2059 $(POSTGRESQL_INC) \
2060 $$(INCLUDE) \
2061)
2062
2063$(call gb_LinkTarget_add_libs,$(1),\
2064 -lpq \
2065)
2066
2067$(call gb_LinkTarget_add_ldflags,$(1),\
2068 $(POSTGRESQL_LIB) \
2069)
2070
2071endef
2072
2073else # !SYSTEM_POSTGRESQL
2074
2075define gb_LinkTarget__use_postgresql
2076
David Tardoncb9823b2012-10-22 06:33:00 +02002077$(call gb_LinkTarget_use_packages,$(1),\
2078 postgresql \
2079)
2080
David Tardon8bc7afb2012-04-05 10:53:08 +02002081$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlee8323e2013-05-08 00:19:40 +02002082 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \
2083 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002084 $$(INCLUDE) \
2085)
2086
David Tardon9b530e12012-04-07 10:07:35 +02002087$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukana1539242012-05-26 23:38:34 +02002088 $(if $(filter MSC,$(COM)),lib)pq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002089)
2090
Tor Lillqvistc2909892012-12-12 01:07:09 +02002091ifeq ($(OS)$(COM),WNTMSC)
Matúš Kukan5e32d152012-05-27 00:21:12 +02002092$(call gb_LinkTarget_use_external,$(1),openssl)
2093
Michael Stahldc397aae2012-09-28 15:31:46 +02002094$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon8bc7afb2012-04-05 10:53:08 +02002095 secur32 \
2096 ws2_32 \
David Tardon8bc7afb2012-04-05 10:53:08 +02002097)
David Tardon8af6aa62012-05-30 12:06:42 +02002098
David Tardon8bc7afb2012-04-05 10:53:08 +02002099endif
2100
2101endef
2102
David Tardon8bc7afb2012-04-05 10:53:08 +02002103endif # SYSTEM_POSTGRESQL
2104
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002105ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
David Tardonc678a4c2012-04-05 17:59:36 +02002106define gb_LinkTarget__use_mozilla
2107
2108$(call gb_LinkTarget_add_defs,$(1),\
2109 -DMOZILLA_INTERNAL_API \
2110)
2111
2112$(call gb_LinkTarget_set_include,$(1),\
2113 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +02002114 -I$(OUTDIR)/inc/mozilla \
David Tardonc678a4c2012-04-05 17:59:36 +02002115)
2116
David Tardon9b530e12012-04-07 10:07:35 +02002117$(call gb_LinkTarget_use_libraries,$(1),\
David Tardonc678a4c2012-04-05 17:59:36 +02002118 nspr4 \
2119 xpcom \
2120 xpcom_core \
2121)
2122
David Tardon9b530e12012-04-07 10:07:35 +02002123$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardonc678a4c2012-04-05 17:59:36 +02002124 embed_base_s \
2125 mozreg_s \
2126)
2127
David Tardonc678a4c2012-04-05 17:59:36 +02002128$(call gb_LinkTarget_add_defs,$(1),\
2129 -DMOZILLA_CLIENT \
2130 -DMOZ_REFLOW_PERF \
2131 -DMOZ_REFLOW_PERF_DSP \
2132 -DMOZ_XUL \
2133 -DOJI \
2134 -DWIN32 \
2135 -DXP_PC \
2136 -DXP_WIN \
2137 -DXP_WIN32 \
2138 -D_WINDOWS \
2139)
2140
2141ifeq ($(COM),GCC)
2142
2143$(call gb_LinkTarget_add_cxxflags,$(1),\
2144 -Wall \
2145 -Wcast-align \
2146 -Wconversion \
2147 -Wno-long-long \
2148 -Woverloaded-virtual \
2149 -Wpointer-arith \
2150 -Wsynth \
2151 -fno-rtti \
2152)
2153
2154else
2155
2156ifneq ($(DBG_LEVEL),0)
2157$(call gb_LinkTarget_add_defs,$(1),\
2158 -D_STL_NOFORCE_MANIFEST \
2159)
2160endif
2161
2162$(call gb_LinkTarget_add_libs,$(1),\
David Tardon764fc482012-05-30 14:55:09 +02002163 $(OUTDIR)/lib/embed_base_s.lib \
2164 $(OUTDIR)/lib/mozreg_s.lib \
David Tardonc678a4c2012-04-05 17:59:36 +02002165)
2166
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002167endif # !GCC
David Tardonc678a4c2012-04-05 17:59:36 +02002168
David Tardonc678a4c2012-04-05 17:59:36 +02002169endef
2170
2171$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
2172 xpcom \
2173 xpcom_core \
2174))
2175
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002176endif # DESKTOP
David Tardonc678a4c2012-04-05 17:59:36 +02002177
David Tardond4efa8b2012-04-28 20:48:14 +02002178ifeq ($(ENABLE_KDE),TRUE)
2179
2180define gb_LinkTarget__use_kde
2181$(call gb_LinkTarget_set_include,$(1),\
2182 $(filter -I%,$(KDE_CFLAGS)) \
2183 $$(INCLUDE) \
2184)
2185
2186$(call gb_LinkTarget_add_defs,$(1),\
2187 $(filter-out -I%,$(KDE_CFLAGS)) \
2188)
2189
2190$(call gb_LinkTarget_add_libs,$(1),\
2191 $(KDE_LIBS) \
2192)
2193
2194ifeq ($(COM),GCC)
2195$(call gb_LinkTarget_add_cxxflags,$(1),\
2196 -Wno-shadow \
2197)
2198endif
2199
2200endef
2201
2202else # !ENABLE_KDE
2203
2204define gb_LinkTarget__use_kde
2205
2206endef
2207
2208endif # ENABLE_KDE
2209
2210
2211ifeq ($(ENABLE_KDE4),TRUE)
2212
2213define gb_LinkTarget__use_kde4
2214$(call gb_LinkTarget_set_include,$(1),\
2215 $(filter -I%,$(KDE4_CFLAGS)) \
2216 $$(INCLUDE) \
2217)
2218
2219$(call gb_LinkTarget_add_defs,$(1),\
2220 $(filter-out -I%,$(KDE4_CFLAGS)) \
2221)
2222
2223$(call gb_LinkTarget_add_libs,$(1),\
2224 $(KDE4_LIBS) \
2225)
2226
2227ifeq ($(COM),GCC)
2228$(call gb_LinkTarget_add_cxxflags,$(1),\
2229 -Wno-shadow \
2230)
2231endif
2232
2233endef
2234
2235else # !ENABLE_KDE4
2236
2237define gb_LinkTarget__use_kde4
2238
2239endef
2240
2241endif # ENABLE_KDE4
2242
2243
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002244ifeq ($(ENABLE_TDE),TRUE)
David Tardond4efa8b2012-04-28 20:48:14 +02002245
2246define gb_LinkTarget__use_tde
2247$(call gb_LinkTarget_add_libs,$(1),\
2248 $(TDE_LIBS) \
2249)
2250
2251$(call gb_LinkTarget_set_include,$(1),\
2252 $$(INCLUDE) \
2253 $(TDE_CFLAGS) \
2254)
2255endef
2256
2257else # ! ENABLE_TDE
2258
2259define gb_LinkTarget__use_tde
2260
2261endef
2262
2263endif # ENABLE_TDE
2264
2265
2266ifeq ($(ENABLE_GCONF),TRUE)
2267
2268define gb_LinkTarget__use_gconf
2269$(call gb_LinkTarget_set_include,$(1),\
2270 $(filter -I%,$(GCONF_CFLAGS)) \
2271 $$(INCLUDE) \
2272)
2273
2274$(call gb_LinkTarget_add_defs,$(1),\
2275 $(filter-out -I%,$(GCONF_CFLAGS)) \
2276)
2277
2278$(call gb_LinkTarget_add_libs,$(1),\
2279 $(GCONF_LIBS) \
2280)
2281
2282endef
2283
2284else # !ENABLE_GCONF
2285
2286define gb_LinkTarget__use_gconf
2287
2288endef
2289
2290endif # ENABLE_GCONF
2291
2292
David Ostrovskye16ac692012-05-27 22:50:41 +02002293# PYTHON
Michael Stahl91926332012-11-27 15:50:53 +01002294# extra python_headers external because pyuno wrapper must not link python
David Ostrovskye16ac692012-05-27 22:50:41 +02002295ifeq ($(SYSTEM_PYTHON),YES)
2296
Michael Stahl91926332012-11-27 15:50:53 +01002297define gb_LinkTarget__use_python_headers
David Ostrovskye16ac692012-05-27 22:50:41 +02002298$(call gb_LinkTarget_add_defs,$(1),\
2299 $(filter-out -I%,$(PYTHON_CFLAGS)) \
2300)
2301
2302$(call gb_LinkTarget_set_include,$(1),\
2303 $(filter -I%,$(PYTHON_CFLAGS)) \
2304 $$(INCLUDE) \
2305)
2306
Michael Stahl91926332012-11-27 15:50:53 +01002307endef
2308
2309define gb_LinkTarget__use_python
2310$(call gb_LinkTarget__use_python_headers,$(1))
2311
David Ostrovskye16ac692012-05-27 22:50:41 +02002312$(call gb_LinkTarget_add_libs,$(1),\
2313 $(PYTHON_LIBS) \
2314)
2315
2316endef
2317
2318else # !SYSTEM_PYTHON
2319
Michael Stahl75a2c502012-12-04 13:47:22 +01002320# depend on external project because on MACOSX the Package is disabled...
Michael Stahl91926332012-11-27 15:50:53 +01002321define gb_LinkTarget__use_python_headers
Michael Stahl75a2c502012-12-04 13:47:22 +01002322$(call gb_LinkTarget_use_external_project,$(1),python3)
Michael Stahl91926332012-11-27 15:50:53 +01002323$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002324 -I$(call gb_UnpackedTarball_get_dir,python3) \
2325 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
2326 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
Michael Stahl91926332012-11-27 15:50:53 +01002327 $$(INCLUDE) \
2328)
2329
2330endef
2331
David Ostrovskye16ac692012-05-27 22:50:41 +02002332define gb_LinkTarget__use_python
Michael Stahl91926332012-11-27 15:50:53 +01002333$(call gb_LinkTarget__use_python_headers,$(1))
David Ostrovskye16ac692012-05-27 22:50:41 +02002334
2335ifeq ($(OS),WNT)
2336$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl5b7ccf32013-06-04 17:16:47 +02002337 $(call gb_UnpackedTarball_get_dir,python3)/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 +02002338)
2339else ifeq ($(OS),MACOSX)
2340$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002341 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
David Ostrovskye16ac692012-05-27 22:50:41 +02002342)
2343else
Michael Stahlb6bcbb62013-04-21 14:34:50 +02002344$(call gb_LinkTarget_add_libs,$(1),\
2345 -L$(call gb_UnpackedTarball_get_dir,python3) \
2346 -lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02002347)
2348endif
2349
David Ostrovskye16ac692012-05-27 22:50:41 +02002350endef
2351
2352$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
Michael Stahl9d921ba2012-11-27 15:32:36 +01002353 python$(PYTHON_VERSION_MAJOR) \
2354 python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02002355))
2356
2357endif # SYSTEM_PYTHON
2358
Kohei Yoshida49b0b692012-09-04 15:05:35 -04002359# ORCUS
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002360ifeq ($(SYSTEM_LIBORCUS),YES)
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002361
2362define gb_LinkTarget__use_orcus
2363$(call gb_LinkTarget_set_include,$(1),\
2364 $$(INCLUDE) \
Matúš Kukana2d63fe2012-09-09 16:29:10 +02002365 $(ORCUS_CFLAGS) \
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002366)
Rene Engelhard26b80fc2013-04-13 19:29:33 +02002367$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
Rene Engelhardfb360f52013-04-13 16:17:29 +02002368endef
2369
2370define gb_LinkTarget__use_orcus-parser
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002371
2372endef
2373
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002374else # !SYSTEM_LIBORCUS
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002375
Kohei Yoshidac8b7e982012-08-31 10:11:32 -04002376define gb_LinkTarget__use_orcus
Michael Stahl10fc13c2013-05-06 23:35:13 +02002377$(call gb_LinkTarget_use_unpacked,$(1),liborcus)
Matúš Kukan1ee76032012-09-09 15:29:43 +02002378$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl10fc13c2013-05-06 23:35:13 +02002379 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
Matúš Kukan1ee76032012-09-09 15:29:43 +02002380 $$(INCLUDE) \
2381)
Matúš Kukanf4889fa2012-09-11 18:23:27 +02002382$(call gb_LinkTarget_use_static_libraries,$(1),orcus)
David Tardonf1035c12012-11-23 06:49:21 +01002383
Stephan Bergmann3743cdb2013-02-17 22:58:21 +01002384$(if $(filter YES,$(SYSTEM_BOOST)), \
2385 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
2386 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
2387)
David Tardonf1035c12012-11-23 06:49:21 +01002388
Kohei Yoshidaa6639312012-07-27 22:14:39 -04002389endef
2390
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04002391define gb_LinkTarget__use_orcus-parser
2392$(call gb_LinkTarget_use_static_libraries,$(1),\
2393 orcus-parser \
2394)
2395
2396endef
2397
Kohei Yoshida31f589b2012-08-30 23:26:59 -04002398endif # SYSTEM_LIBORCUS
David Ostrovskye16ac692012-05-27 22:50:41 +02002399
Michael Stahl78b59b82012-09-27 21:45:47 +02002400
2401### X11 stuff ###
2402
2403ifeq ($(GUIBASE),unx)
2404
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002405# TODO: do we really need these X11 headers in the repo?
2406ifneq ($(filter X11_EXTENSIONS,$(BUILD_TYPE)),)
2407
2408define gb_LinkTarget__use_x11extensions
Michael Stahl4f94ee52013-05-06 20:28:45 +02002409$(call gb_LinkTarget_set_include,$(1),\
2410 -I$(SRCDIR)/x11_extensions/inc \
2411 $$(INCLUDE) \
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002412)
2413endef
2414
2415else # !X11_EXTENSIONS
2416
2417gb_LinkTarget__use_x11extensions :=
2418
2419endif # X11_EXTENSIONS
2420
Michael Stahl78b59b82012-09-27 21:45:47 +02002421ifeq ($(XRANDR_DLOPEN),FALSE)
2422
2423define gb_LinkTarget__use_Xrandr
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002424$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002425
2426$(call gb_LinkTarget_set_include,$(1),\
2427 $$(INCLUDE) \
2428 $(XRANDR_CFLAGS) \
2429)
2430
2431$(call gb_LinkTarget_add_libs,$(1),\
2432 $(XRANDR_LIBS) \
2433)
2434endef
2435
2436else # XRANDR_DLOPEN
2437
2438define gb_LinkTarget__use_Xrandr
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002439$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002440
2441$(call gb_LinkTarget_add_defs,$(1),\
2442 -DXRANDR_DLOPEN \
2443)
2444endef
2445
2446endif # XRANDR_DLOPEN
2447
2448define gb_LinkTarget__use_Xrender
Fridrich Štrbaec6013c2012-11-21 16:28:14 +01002449$(call gb_LinkTarget__use_x11extensions,$(1))
Michael Stahl78b59b82012-09-27 21:45:47 +02002450
2451$(call gb_LinkTarget_set_include,$(1),\
2452 $$(INCLUDE) \
2453 $(XRENDER_CFLAGS) \
2454)
2455
2456$(call gb_LinkTarget_add_libs,$(1),\
2457 $(XRENDER_LIBS) \
2458)
2459endef
2460
2461endif # GUIBASE=unx
2462
Tor Lillqvist35491072011-08-02 21:22:35 +03002463
Michael Meeksb440cfc2013-02-28 12:05:07 +00002464gb_ExternalProject__use_nss3:=
2465
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002466ifeq (,$(filter DESKTOP,$(BUILD_TYPE)))
2467
Peter Foleyc003d252013-01-01 09:39:36 -05002468gb_LinkTarget__use_nss3:=
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002469
2470else
2471
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002472ifeq ($(SYSTEM_NSS),YES)
David Tardonb6aa4842011-08-11 13:10:14 +02002473
David Tardon2b9dbc82012-08-13 06:57:51 +02002474define gb_LinkTarget__use_nss3
2475$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmannea641222012-11-19 16:40:33 +01002476 -DSYSTEM_NSS \
David Tardon2b9dbc82012-08-13 06:57:51 +02002477)
2478
David Tardonb6aa4842011-08-11 13:10:14 +02002479$(call gb_LinkTarget_set_include,$(1),\
2480 $$(INCLUDE) \
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002481 $(NSS_CFLAGS) \
David Tardonb6aa4842011-08-11 13:10:14 +02002482)
2483
2484$(call gb_LinkTarget_add_libs,$(1),\
Tomas Chvatal75f77e62011-11-02 21:16:53 +01002485 $(NSS_LIBS) \
David Tardonb6aa4842011-08-11 13:10:14 +02002486)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002487
David Tardonb6aa4842011-08-11 13:10:14 +02002488endef
2489
David Tardon2b9dbc82012-08-13 06:57:51 +02002490define gb_LinkTarget__use_plc4
2491$(call gb_LinkTarget__use_nss3,$(1))
2492
2493endef
2494
David Tardon6ef46562013-02-04 10:04:07 +01002495define gb_LinkTarget__use_ssl3
2496$(call gb_LinkTarget__use_nss3,$(1))
2497
2498endef
2499
David Tardonb6aa4842011-08-11 13:10:14 +02002500else
2501
David Tardonb6aa4842011-08-11 13:10:14 +02002502$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
2503 nspr4 \
2504 nss3 \
2505 plc4 \
Stephan Bergmannfc2b42e2012-08-13 11:46:50 +02002506 smime3 \
David Tardon6ef46562013-02-04 10:04:07 +01002507 ssl3 \
David Tardonb6aa4842011-08-11 13:10:14 +02002508))
2509
David Tardon2b9dbc82012-08-13 06:57:51 +02002510define gb_LinkTarget__use_nss3
Peter Foleyc003d252013-01-01 09:39:36 -05002511$(call gb_LinkTarget_use_package,$(1),nss)
David Tardon2b9dbc82012-08-13 06:57:51 +02002512$(call gb_LinkTarget_set_include,$(1),\
2513 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +02002514 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/public/nss \
2515 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/out/include \
David Tardon2b9dbc82012-08-13 06:57:51 +02002516)
2517
2518$(call gb_LinkTarget_use_libraries,$(1),\
2519 nspr4 \
2520 nss3 \
2521 smime3 \
2522)
2523
2524endef
2525
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002526define gb_LinkTarget__use_plc4
Peter Foleyc003d252013-01-01 09:39:36 -05002527$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahlc923f7d2012-04-07 23:22:08 +02002528$(call gb_LinkTarget_use_libraries,$(1),\
David Tardonb6aa4842011-08-11 13:10:14 +02002529 plc4 \
2530)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01002531
David Tardonb6aa4842011-08-11 13:10:14 +02002532endef
2533
David Tardon6ef46562013-02-04 10:04:07 +01002534define gb_LinkTarget__use_ssl3
2535$(call gb_LinkTarget_use_package,$(1),nss)
2536$(call gb_LinkTarget_use_libraries,$(1),\
2537 ssl3 \
2538)
2539
2540endef
2541
Michael Meeksb440cfc2013-02-28 12:05:07 +00002542define gb_ExternalProject__use_nss3
2543$(call gb_ExternalProject_use_package,$(1),nss)
2544$(call gb_ExternalProject_use_libraries,$(1),\
2545 nspr4 \
2546 nss3 \
2547 smime3 \
2548)
2549
2550endef
2551
David Tardonb6aa4842011-08-11 13:10:14 +02002552endif
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002553endif # DESKTOP
David Tardonb6aa4842011-08-11 13:10:14 +02002554
Michael Stahl2ee5f242011-09-15 14:01:27 +02002555### Jars ############################################################
2556
Michael Stahl666173b2012-08-15 20:24:59 +02002557ifeq ($(SYSTEM_HSQLDB),YES)
2558
2559define gb_Jar__use_hsqldb
2560$(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
2561endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02002562define gb_JunitTest__use_hsqldb
2563$(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
2564endef
Michael Stahl666173b2012-08-15 20:24:59 +02002565
2566else # !SYSTEM_HSQLDB
2567
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002568$(eval $(call gb_Helper_register_jars,OOO,\
2569 hsqldb \
2570))
2571
Michael Stahl666173b2012-08-15 20:24:59 +02002572define gb_Jar__use_hsqldb
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002573$(call gb_Jar_use_jar,$(1),hsqldb)
Michael Stahl666173b2012-08-15 20:24:59 +02002574endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02002575define gb_JunitTest__use_hsqldb
2576$(call gb_JunitTest_use_jar,$(1),hsqldb)
2577endef
Michael Stahl666173b2012-08-15 20:24:59 +02002578
2579endif # SYSTEM_HSQLDB
2580
Michael Stahl2ee5f242011-09-15 14:01:27 +02002581
David Tardon3bcf9102011-10-04 09:44:48 +02002582ifeq ($(SYSTEM_BSH),YES)
2583
Michael Stahla4551262012-08-15 17:41:25 +02002584define gb_Jar__use_bsh
2585$(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
David Tardon3bcf9102011-10-04 09:44:48 +02002586endef
2587
2588else # !SYSTEM_BSH
2589
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002590$(eval $(call gb_Helper_register_jars,OOO,\
2591 bsh \
2592))
2593
Michael Stahla4551262012-08-15 17:41:25 +02002594define gb_Jar__use_bsh
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002595$(call gb_Jar_use_jar,$(1),bsh)
David Tardon3bcf9102011-10-04 09:44:48 +02002596endef
2597
2598endif # SYSTEM_BSH
2599
Michael Stahl2ee5f242011-09-15 14:01:27 +02002600
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002601ifeq ($(SYSTEM_RHINO),YES)
2602
Michael Stahla4551262012-08-15 17:41:25 +02002603define gb_Jar__use_rhino
2604$(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002605endef
2606
2607else # !SYSTEM_RHINO
2608
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002609$(eval $(call gb_Helper_register_jars,OOO,\
2610 js \
2611))
2612
Michael Stahla4551262012-08-15 17:41:25 +02002613define gb_Jar__use_rhino
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002614$(call gb_Jar_use_jar,$(1),js)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02002615endef
2616
2617endif # SYSTEM_RHINO
2618
David Tardon9b530e12012-04-07 10:07:35 +02002619ifeq ($(SYSTEM_APACHE_COMMONS),YES)
2620
Michael Stahla4551262012-08-15 17:41:25 +02002621define gb_Jar__use_commons-codec
2622$(call gb_Jar_use_system_jar,$(1),$(COMMONS_CODEC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002623endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002624gb_ExternalProject__use_commons-codec :=
David Tardon9b530e12012-04-07 10:07:35 +02002625
Michael Stahla4551262012-08-15 17:41:25 +02002626define gb_Jar__use_commons-httpclient
2627$(call gb_Jar_use_system_jar,$(1),$(COMMONS_HTTPCLIENT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002628endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002629gb_ExternalProject__use_commons-httpclient :=
David Tardon9b530e12012-04-07 10:07:35 +02002630
Michael Stahla4551262012-08-15 17:41:25 +02002631define gb_Jar__use_commons-lang
2632$(call gb_Jar_usadd_linked_libse_system_jar,$(1),$(COMMONS_LANG_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002633endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002634gb_ExternalProject__use_commons-lang :=
David Tardon9b530e12012-04-07 10:07:35 +02002635
Michael Stahla4551262012-08-15 17:41:25 +02002636define gb_Jar__use_commons-logging
2637$(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002638endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002639gb_ExternalProject__use_commons-logging :=
David Tardon9b530e12012-04-07 10:07:35 +02002640
2641else # !SYSTEM_APACHE_COMMONS
2642
Michael Stahl87a723d2012-08-17 12:43:37 +02002643$(eval $(call gb_Helper_register_jars,OXT,\
Julien Nabet6188e1d2013-03-26 21:39:42 +01002644 commons-codec-1.6 \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002645 commons-httpclient-3.1 \
Julien Nabeta70aeef2013-03-26 21:49:53 +01002646 commons-lang-2.4 \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002647 commons-logging-1.1.1 \
2648))
2649
Michael Stahla4551262012-08-15 17:41:25 +02002650define gb_Jar__use_commons-codec
Julien Nabet6188e1d2013-03-26 21:39:42 +01002651$(call gb_Jar_use_jar,$(1),commons-codec-1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002652endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002653define gb_ExternalProject__use_commons-codec
2654$(call gb_ExternalProject_use_external_project,$(1),apache_commons_codec)
2655endef
David Tardon9b530e12012-04-07 10:07:35 +02002656
Michael Stahla4551262012-08-15 17:41:25 +02002657define gb_Jar__use_commons-httpclient
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002658$(call gb_Jar_use_jar,$(1),commons-httpclient-3.1)
David Tardon9b530e12012-04-07 10:07:35 +02002659endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002660define gb_ExternalProject__use_commons-httpclient
2661$(call gb_ExternalProject_use_external_project,$(1),apache_commons_httpclient)
2662endef
David Tardon9b530e12012-04-07 10:07:35 +02002663
Michael Stahla4551262012-08-15 17:41:25 +02002664define gb_Jar__use_commons-lang
Fridrich Štrba3b42b442013-03-26 21:52:35 +01002665$(call gb_Jar_use_jar,$(1),commons-lang-2.4)
David Tardon9b530e12012-04-07 10:07:35 +02002666endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002667define gb_ExternalProject__use_commons-lang
2668$(call gb_ExternalProject_use_external_project,$(1),apache_commons_lang)
2669endef
David Tardon9b530e12012-04-07 10:07:35 +02002670
Michael Stahla4551262012-08-15 17:41:25 +02002671define gb_Jar__use_commons-logging
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002672$(call gb_Jar_use_jar,$(1),commons-logging-1.1.1)
David Tardon9b530e12012-04-07 10:07:35 +02002673endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002674define gb_ExternalProject__use_commons-logging
2675$(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
2676endef
David Tardon9b530e12012-04-07 10:07:35 +02002677
2678endif # SYSTEM_APACHE_COMMONS
2679
2680
2681ifeq ($(SYSTEM_JFREEREPORT),YES)
2682
Michael Stahla4551262012-08-15 17:41:25 +02002683define gb_Jar__use_flow-engine
2684$(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002685endef
2686
Michael Stahla4551262012-08-15 17:41:25 +02002687define gb_Jar__use_flute
2688$(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002689endef
2690
Michael Stahla4551262012-08-15 17:41:25 +02002691define gb_Jar__use_libbase
2692$(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002693endef
2694
Michael Stahla4551262012-08-15 17:41:25 +02002695define gb_Jar__use_libfonts
2696$(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002697endef
2698
Michael Stahla4551262012-08-15 17:41:25 +02002699define gb_Jar__use_libformula
2700$(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002701endef
2702
Michael Stahla4551262012-08-15 17:41:25 +02002703define gb_Jar__use_liblayout
2704$(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002705endef
2706
Michael Stahla4551262012-08-15 17:41:25 +02002707define gb_Jar__use_libloader
2708$(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002709endef
2710
Michael Stahla4551262012-08-15 17:41:25 +02002711define gb_Jar__use_librepository
2712$(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002713endef
2714
Michael Stahla4551262012-08-15 17:41:25 +02002715define gb_Jar__use_libserializer
2716$(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002717endef
2718
Michael Stahla4551262012-08-15 17:41:25 +02002719define gb_Jar__use_libxml
2720$(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002721endef
2722
Michael Stahla4551262012-08-15 17:41:25 +02002723define gb_Jar__use_sac
2724$(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02002725endef
2726
2727else # !SYSTEM_JFREEREPORT
2728
Michael Stahl87a723d2012-08-17 12:43:37 +02002729$(eval $(call gb_Helper_register_jars,OXT,\
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002730 flow-engine-0.9.4 \
2731 flute-1.1.6 \
2732 libbase-1.1.6 \
2733 libfonts-1.1.6 \
2734 libformula-1.1.7 \
2735 liblayout-0.2.10 \
2736 libloader-1.1.6 \
2737 librepository-1.1.6 \
2738 libserializer-1.1.6 \
2739 libxml-1.1.7 \
2740 sac \
2741))
2742
Michael Stahla4551262012-08-15 17:41:25 +02002743define gb_Jar__use_flow-engine
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002744$(call gb_Jar_use_jar,$(1),flow-engine-0.9.4)
David Tardon9b530e12012-04-07 10:07:35 +02002745endef
2746
Michael Stahla4551262012-08-15 17:41:25 +02002747define gb_Jar__use_flute
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002748$(call gb_Jar_use_jar,$(1),flute-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002749endef
2750
Michael Stahla4551262012-08-15 17:41:25 +02002751define gb_Jar__use_libbase
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002752$(call gb_Jar_use_jar,$(1),libbase-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002753endef
2754
Michael Stahla4551262012-08-15 17:41:25 +02002755define gb_Jar__use_libfonts
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002756$(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002757endef
2758
Michael Stahla4551262012-08-15 17:41:25 +02002759define gb_Jar__use_libformula
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002760$(call gb_Jar_use_jar,$(1),libformula-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02002761endef
2762
Michael Stahla4551262012-08-15 17:41:25 +02002763define gb_Jar__use_liblayout
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002764$(call gb_Jar_use_jar,$(1),liblayout-0.2.10)
David Tardon9b530e12012-04-07 10:07:35 +02002765endef
2766
Michael Stahla4551262012-08-15 17:41:25 +02002767define gb_Jar__use_libloader
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002768$(call gb_Jar_use_jar,$(1),libloader-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002769endef
2770
Michael Stahla4551262012-08-15 17:41:25 +02002771define gb_Jar__use_librepository
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002772$(call gb_Jar_use_jar,$(1),librepository-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002773endef
2774
Michael Stahla4551262012-08-15 17:41:25 +02002775define gb_Jar__use_libserializer
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002776$(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02002777endef
2778
Michael Stahla4551262012-08-15 17:41:25 +02002779define gb_Jar__use_libxml
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002780$(call gb_Jar_use_jar,$(1),libxml-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02002781endef
2782
Michael Stahla4551262012-08-15 17:41:25 +02002783define gb_Jar__use_sac
Michael Stahl5a4bcd32012-08-17 11:02:49 +02002784$(call gb_Jar_use_jar,$(1),sac)
David Tardon9b530e12012-04-07 10:07:35 +02002785endef
2786
2787endif # SYSTEM_JFREEREPORT
2788
David Tardonc2eca352012-12-02 10:51:37 +01002789
2790# Executables
2791
David Tardonedf67302012-12-30 12:27:04 +01002792# FIXME: the library target should be for build too
2793define gb_Executable__register_bestreversemap
2794$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
2795 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
2796)
2797endef
2798
David Tardonceb0d062012-12-30 13:11:43 +01002799# TODO depending on the whole URE might be overkill, but I do not have a
2800# Windows machine to debug it...
2801# FIXME: the library target should be for build too
2802define gb_Executable__register_climaker
2803$(call gb_Executable_add_runtime_dependencies,climaker,\
2804 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2805 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2806 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03002807 $(call gb_UnoApi_get_target,udkapi) \
David Tardonceb0d062012-12-30 13:11:43 +01002808)
2809endef
2810
Matúš Kukanbae52ee2013-05-16 09:17:57 +02002811# Better duplication with gb_Gallery__UNO_COMPONENTS than nothing.
2812# This is used to determine what we need for 'build' platform.
Matúš Kukan9555b5b2013-06-14 12:48:20 +02002813define gb_Executable__register_gengal
Matúš Kukan94b68822013-06-17 10:41:18 +02002814$(call gb_Executable_add_runtime_dependencies,gengal,\
Matúš Kukanbae52ee2013-05-16 09:17:57 +02002815 $(foreach component, \
2816 comphelper/util/comphelp \
2817 configmgr/source/configmgr \
2818 fileaccess/source/fileacc \
2819 framework/util/fwk \
2820 i18npool/util/i18npool \
2821 package/source/xstor/xstor \
2822 package/util/package2 \
2823 sfx2/util/sfx \
2824 svx/util/svx \
2825 svx/util/svxcore \
2826 ucb/source/core/ucb1 \
2827 ucb/source/ucp/file/ucpfile1 \
2828 unoxml/source/service/unoxml \
Matúš Kukan85c6f802013-05-23 23:01:05 +02002829 ,$(call gb_ComponentTarget_get_target_for_build,$(component))) \
David Tardon1546c292013-05-07 20:41:41 +02002830 $(call gb_AllLangResTarget_get_target,ofa) \
2831 $(call gb_Configuration_get_target,registry) \
2832 $(call gb_Configuration_get_target,fcfg_langpack) \
2833 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Riccardo Magliocchettib75fae72013-06-06 18:52:57 +02002834 $(if $(filter-out MACOSX WNT,$(OS_FOR_BUILD)),$(if $(ENABLE_HEADLESS),, \
Caolan McNamara48e70ad2013-05-15 10:30:18 +01002835 $(call gb_Library_get_target,vclplug_svp) \
Riccardo Magliocchettib75fae72013-06-06 18:52:57 +02002836 )) \
David Tardon1546c292013-05-07 20:41:41 +02002837 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2838 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2839 $(call gb_UnoApi_get_target,offapi) \
2840 $(call gb_UnoApi_get_target,udkapi) \
2841)
2842endef
2843
David Tardonedf67302012-12-30 12:27:04 +01002844ifneq ($(SYSTEM_ICU),YES)
2845
2846define gb_Executable__register_gendict
2847$(call gb_Executable_add_runtime_dependencies,gendict,\
2848 $(call gb_Package_get_target_for_build,icu) \
2849)
2850endef
2851
2852endif
2853
Matúš Kukan7369a8c2013-06-14 12:02:56 +02002854ifeq (,$(SYSTEM_UCPP))
David Tardonceb0d062012-12-30 13:11:43 +01002855define gb_Executable__register_idlc
2856$(call gb_Executable_add_runtime_dependencies,idlc,\
Matúš Kukan7369a8c2013-06-14 12:02:56 +02002857 $(call gb_Executable_get_target_for_build,ucpp) \
David Tardonceb0d062012-12-30 13:11:43 +01002858)
2859endef
Matúš Kukan7369a8c2013-06-14 12:02:56 +02002860endif
David Tardonceb0d062012-12-30 13:11:43 +01002861
David Tardonedf67302012-12-30 12:27:04 +01002862define gb_Executable__register_localize
2863$(call gb_Executable_add_runtime_dependencies,localize,\
2864 $(foreach exec,cfgex helpex propex transex3 treex uiex ulfex xrmex,\
2865 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
2866 ) \
2867)
2868endef
2869
Stephan Bergmannab149c72013-04-24 10:42:40 +02002870# The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
David Tardonedf67302012-12-30 12:27:04 +01002871# due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
2872# FIXME: the library target should be for build too
2873define gb_Executable__register_saxparser
2874$(call gb_Executable_add_runtime_dependencies,saxparser,\
2875 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2876 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
Matúš Kukan85c6f802013-05-23 23:01:05 +02002877 $(call gb_Rdb_get_outdir_target_for_build,saxparser) \
David Tardonedf67302012-12-30 12:27:04 +01002878 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03002879 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01002880)
2881endef
2882
Stephan Bergmannab149c72013-04-24 10:42:40 +02002883# NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
David Tardonedf67302012-12-30 12:27:04 +01002884# required due to the settings for URE_SERVICES and URE_TYPES in
2885# cppuhelper/source/unorc
2886# FIXME: the library target should be for build too
2887define gb_Executable__register_uno
2888$(call gb_Executable_add_runtime_dependencies,uno,\
2889 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2890 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2891 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03002892 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01002893)
2894endef
2895
2896
2897# External executables
2898
David Tardonc2eca352012-12-02 10:51:37 +01002899ifneq ($(SYSTEM_LIBXML_FOR_BUILD),YES)
2900
2901gb_ExternalExecutable__register_xmllint :=
2902
2903else # ! SYSTEM_LIBXML_FOR_BUILD
2904
2905define gb_ExternalExecutable__register_xmllint
David Tardonbbf2f412012-12-29 10:00:49 +01002906$(call gb_ExternalExecutable_set_internal,xmllint)
David Tardonc2eca352012-12-02 10:51:37 +01002907
2908endef
2909
2910endif # SYSTEM_LIBXML_FOR_BUILD
2911
2912ifeq ($(SYSTEM_LIBXSLT_FOR_BUILD),YES)
2913
2914gb_ExternalExecutable__register_xsltproc :=
2915
2916else # ! SYSTEM_LIBXSLT_FOR_BUILD
2917
2918define gb_ExternalExecutable__register_xsltproc
David Tardonbbf2f412012-12-29 10:00:49 +01002919$(call gb_ExternalExecutable_set_internal,xsltproc)
Peter Foley52e47b62013-02-06 17:59:18 -05002920$(call gb_ExternalExecutable_add_dependencies,xsltproc,$(call gb_Package_get_target,xslt))
David Tardonc2eca352012-12-02 10:51:37 +01002921
2922endef
2923
2924endif # SYSTEM_LIBXSLT_FOR_BUILD
2925
Matúš Kukane4826722013-03-05 22:03:38 +01002926ifeq (,$(PYTHON_FOR_BUILD))
David Tardonc2eca352012-12-02 10:51:37 +01002927
2928define gb_ExternalExecutable__register_python
Christian Lohmaier04032bd2013-03-19 17:27:01 +01002929ifeq ($(OS),MACOSX)
2930
2931# use set_external, to avoid having the command added as prerequisite for the
2932# targets that make use of it. (Otherwise make will choke as it doesn't have a
2933# matching rule to build that specific file)
2934$(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))
2935# the Zip ensures that internal python has been built (cannot use the Package
2936# target, as that is not used on Mac)
David Tardon45a5c262013-05-16 13:36:24 +02002937$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01002938
2939else
2940
Michael Stahlb6bcbb62013-04-21 14:34:50 +02002941$(call gb_ExternalExecutable_set_internal,python,$(INSTDIR)/program/$(if $(filter WNT,$(OS)),python-core-$(PYTHON_VERSION)/bin/python.exe,python.bin))
2942$(call gb_ExternalExecutable_set_precommand,python,$(gb_Python_PRECOMMAND))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01002943$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
2944
2945endif
David Tardonc2eca352012-12-02 10:51:37 +01002946
2947endef
2948
Matúš Kukane4826722013-03-05 22:03:38 +01002949else
2950
2951define gb_ExternalExecutable__register_python
2952$(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
2953
2954endef
2955
2956endif # PYTHON_FOR_BUILD
David Tardonc2eca352012-12-02 10:51:37 +01002957
David Tardon63069262012-12-29 12:56:24 +01002958ifneq ($(SYSTEM_GENBRK),)
2959
2960define gb_ExternalExecutable__register_genbrk
2961$(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
2962
2963endef
2964
2965else # ! SYSTEM_GENBRK
2966
2967define gb_ExternalExecutable__register_genbrk
2968$(call gb_ExternalExecutable_set_internal,genbrk)
2969$(call gb_ExternalExecutable_add_dependencies,genbrk,\
2970 $(call gb_Package_get_target_for_build,icu) \
2971)
2972
2973endef
2974
2975endif
2976
2977ifneq ($(SYSTEM_GENCCODE),)
2978
2979define gb_ExternalExecutable__register_genccode
2980$(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
2981
2982endef
2983
2984else # ! SYSTEM_GENCCODE
2985
2986define gb_ExternalExecutable__register_genccode
2987$(call gb_ExternalExecutable_set_internal,genccode)
2988$(call gb_ExternalExecutable_add_dependencies,genccode,\
2989 $(call gb_Package_get_target_for_build,icu) \
2990)
2991
2992endef
2993
2994endif
2995
2996ifneq ($(SYSTEM_GENCMN),)
2997
2998define gb_ExternalExecutable__register_gencmn
2999$(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
3000
3001endef
3002
3003else # ! SYSTEM_GENCMN
3004
3005define gb_ExternalExecutable__register_gencmn
3006$(call gb_ExternalExecutable_set_internal,gencmn)
3007$(call gb_ExternalExecutable_add_dependencies,gencmn,\
3008 $(call gb_Package_get_target_for_build,icu) \
3009)
3010
3011endef
3012
3013endif
3014
Michael Stahlc74af0d2011-04-01 20:49:35 +00003015# vim: set noet sw=4 ts=4: