blob: e69f625687ca9bd290ce9d04a6163fae475b4102 [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
Zolnai Tamás62fd6302014-04-18 12:55:56 +020024# for every external, a function gb_LinkTarget__use_FOO is defined,
Michael Stahlc74af0d2011-04-01 20:49:35 +000025# 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 Stahl8555b372014-02-11 19:28:33 +010032ifneq ($(SYSTEM_MESA_HEADERS),)
Peter Foley1bd28842011-09-09 17:42:24 -040033
Matúš Kukan8e535df2012-04-07 13:59:33 +020034gb_LinkTarget__use_mesa_headers :=
Peter Foley1bd28842011-09-09 17:42:24 -040035
Michael Stahl8555b372014-02-11 19:28:33 +010036else # !SYSTEM_MESA_HEADERS
Peter Foley1bd28842011-09-09 17:42:24 -040037
Matúš Kukan8e535df2012-04-07 13:59:33 +020038define gb_LinkTarget__use_mesa_headers
Michael Stahl6b2ce082013-05-06 17:43:54 +020039$(call gb_LinkTarget_set_include,$(1),\
Khaled Hosny6c4b7e42013-11-03 20:54:23 +020040 -I$(SRCDIR)/external/Mesa/inc \
Michael Stahl6b2ce082013-05-06 17:43:54 +020041 $$(INCLUDE) \
42)
Matúš Kukan8e535df2012-04-07 13:59:33 +020043
Peter Foley1bd28842011-09-09 17:42:24 -040044endef
45
Michael Stahl8555b372014-02-11 19:28:33 +010046endif # SYSTEM_MESA_HEADERS
Peter Foley1bd28842011-09-09 17:42:24 -040047
Michael Stahl187194b2014-02-11 19:17:42 +010048ifneq ($(SYSTEM_NPAPI_HEADERS),)
Matúš Kukan8e535df2012-04-07 13:59:33 +020049
Michael Stahl96907bf2013-05-07 00:50:15 +020050# yes this uses internal headers too...
51# they are split across 2 dirs for this reason
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010052define gb_LinkTarget__use_npapi_headers
Matúš Kukan8f6510b2012-06-02 21:54:26 +020053$(call gb_LinkTarget_set_include,$(1),\
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010054 $(NPAPI_HEADERS_CFLAGS) \
Khaled Hosny622a6332013-11-03 20:58:47 +020055 -I$(SRCDIR)/external/np_sdk \
Matúš Kukan8e535df2012-04-07 13:59:33 +020056 $$(INCLUDE) \
Matúš Kukan8f6510b2012-06-02 21:54:26 +020057)
Matúš Kukan8e535df2012-04-07 13:59:33 +020058
59endef
60
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010061else #!SYSTEM_NPAPI_HEADERS
Matúš Kukan8e535df2012-04-07 13:59:33 +020062
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010063define gb_LinkTarget__use_npapi_headers
Matúš Kukan8f6510b2012-06-02 21:54:26 +020064$(call gb_LinkTarget_set_include,$(1),\
Khaled Hosny622a6332013-11-03 20:58:47 +020065 -I$(SRCDIR)/external/np_sdk/inc \
66 -I$(SRCDIR)/external/np_sdk \
Matúš Kukan8e535df2012-04-07 13:59:33 +020067 $$(INCLUDE) \
Matúš Kukan8f6510b2012-06-02 21:54:26 +020068)
Matúš Kukan8e535df2012-04-07 13:59:33 +020069
70endef
71
Stephan Bergmann13ef9dc2012-11-15 18:09:55 +010072endif #SYSTEM_NPAPI_HEADERS
Matúš Kukan8e535df2012-04-07 13:59:33 +020073
Michael Stahl5378dea2014-02-11 19:11:47 +010074ifneq ($(SYSTEM_ODBC_HEADERS),)
Matúš Kukan5eff0b62012-04-07 13:46:59 +020075
76define gb_LinkTarget__use_odbc_headers
77$(call gb_LinkTarget_add_defs,$(1),\
78 -DSYSTEM_ODBC_HEADERS \
79)
80
81endef
82
Michael Stahl5378dea2014-02-11 19:11:47 +010083else # !SYSTEM_ODBC_HEADERS
Matúš Kukan5eff0b62012-04-07 13:46:59 +020084
85define gb_LinkTarget__use_odbc_headers
Michael Stahlfea65aa2013-05-06 20:09:47 +020086$(call gb_LinkTarget_set_include,$(1),\
Khaled Hosny891bb7c2013-11-04 18:40:17 +020087 -I$(SRCDIR)/external/unixODBC/inc \
Michael Stahlfea65aa2013-05-06 20:09:47 +020088 $$(INCLUDE) \
89)
Matúš Kukan5eff0b62012-04-07 13:46:59 +020090
91endef
92
Michael Stahl5378dea2014-02-11 19:11:47 +010093endif # SYSTEM_ODBC_HEADERS
Matúš Kukan5eff0b62012-04-07 13:46:59 +020094
Michael Stahlff69e722014-02-11 19:08:10 +010095ifneq ($(SYSTEM_VIGRA),)
Matúš Kukan54a06c62012-08-25 01:29:00 +020096
97gb_LinkTarget__use_vigra_headers :=
98
99else
100
101define gb_LinkTarget__use_vigra_headers
102$(call gb_LinkTarget_use_unpacked,$(1),vigra)
103$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200104 -I$(call gb_UnpackedTarball_get_dir,vigra/include) \
Matúš Kukan54a06c62012-08-25 01:29:00 +0200105 $$(INCLUDE) \
106)
107
108endef
109
110endif
111
Michael Stahle3abec32014-02-11 15:57:18 +0100112ifneq ($(SYSTEM_MDDS),)
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200113
David Tardond5d39272014-03-03 15:29:27 +0100114gb_ExternalProject__use_mdds_headers :=
115
David Tardon93aff252014-03-03 16:23:27 +0100116define gb_LinkTarget__use_mdds_headers
117$(call gb_LinkTarget_set_include,$(1),\
118 $(MDDS_CFLAGS) \
119 $$(INCLUDE) \
120)
121
122endef
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200123
Michael Stahle3abec32014-02-11 15:57:18 +0100124else # !SYSTEM_MDDS
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200125
David Tardond5d39272014-03-03 15:29:27 +0100126define gb_ExternalProject__use_mdds_headers
127$(call gb_ExternalProject_use_external_project,$(1),mdds)
128
129endef
130
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200131define gb_LinkTarget__use_mdds_headers
132$(call gb_LinkTarget_use_unpacked,$(1),mdds)
133$(call gb_LinkTarget_set_include,$(1),\
David Tardon93aff252014-03-03 16:23:27 +0100134 $(MDDS_CFLAGS) \
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200135 $$(INCLUDE) \
136)
137
138endef
139
Michael Stahle3abec32014-02-11 15:57:18 +0100140endif # SYSTEM_MDDS
Matúš Kukan22f50fb2012-08-29 12:27:17 +0200141
Michael Stahlff69e722014-02-11 19:08:10 +0100142ifneq ($(SYSTEM_GLM),)
Markus Mohrhardae9e6112013-12-23 17:31:55 +0000143
144gb_LinkTarget__use_glm_headers :=
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200145gb_ExternalProject__use_glm_headers :=
Markus Mohrhardae9e6112013-12-23 17:31:55 +0000146
147else
148
149define gb_LinkTarget__use_glm_headers
150$(call gb_LinkTarget_use_unpacked,$(1),glm)
151$(call gb_LinkTarget_set_include,$(1),\
152 -I$(call gb_UnpackedTarball_get_dir,glm) \
153 $$(INCLUDE) \
154)
155
156endef
157
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200158define gb_ExternalProject__use_glm_headers
159$(call gb_ExternalProject_get_preparation_target,$(1)) :| $(call gb_UnpackedTarball_get_final_target,glm)
160
161endef
162
Markus Mohrhardae9e6112013-12-23 17:31:55 +0000163endif
164
Michael Stahl674e7912013-05-06 20:23:49 +0200165ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
David Tardoneafaec92012-12-21 14:08:27 +0100166
167define gb_LinkTarget__use_sane_headers
Michael Stahl72279ea2013-05-06 20:14:35 +0200168$(call gb_LinkTarget_set_include,$(1),\
Khaled Hosnya62e7732013-11-04 18:33:52 +0200169 -I$(SRCDIR)/external/$(if $(filter WNT,$(OS)),twain,sane)/inc \
Michael Stahl72279ea2013-05-06 20:14:35 +0200170 $$(INCLUDE) \
David Tardoneafaec92012-12-21 14:08:27 +0100171)
172
173endef
174
175else
176
177gb_LinkTarget__use_sane_headers :=
178
179endif
180
Michael Stahl8555b372014-02-11 19:28:33 +0100181ifneq ($(SYSTEM_BLUEZ),)
David Tardon8fa06c82013-11-05 06:53:49 +0100182
183gb_LinkTarget__use_bluez_bluetooth_headers :=
184
185else # !SYSTEM_BLUEZ
186
187define gb_LinkTarget__use_bluez_bluetooth_headers
188$(call gb_LinkTarget_set_include,$(1),\
189 -I$(SRCDIR)/external/bluez_bluetooth/inc \
190 $$(INCLUDE) \
191)
192
193endef
194
195endif # SYSTEM_BLUEZ
196
Matúš Kukan8e535df2012-04-07 13:59:33 +0200197# External libraries
198
Michael Stahle3abec32014-02-11 15:57:18 +0100199ifneq ($(SYSTEM_CPPUNIT),)
David Tardon785e1d92011-07-25 10:34:22 +0200200
201define gb_LinkTarget__use_cppunit
202$(call gb_LinkTarget_set_include,$(1),\
203 $$(INCLUDE) \
204 $(CPPUNIT_CFLAGS) \
205)
206
207$(call gb_LinkTarget_add_libs,$(1),\
208 $(CPPUNIT_LIBS) \
209)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100210
David Tardon785e1d92011-07-25 10:34:22 +0200211endef
212
Michael Stahle3abec32014-02-11 15:57:18 +0100213else # !SYSTEM_CPPUNIT
David Tardon785e1d92011-07-25 10:34:22 +0200214
David Tardon785e1d92011-07-25 10:34:22 +0200215define gb_LinkTarget__use_cppunit
Michael Stahl32a001d2013-10-23 23:41:58 +0200216$(call gb_LinkTarget_use_external_project,$(1),cppunit)
Peter Foley143835b2012-11-25 16:37:40 -0500217
Peter Foley143835b2012-11-25 16:37:40 -0500218$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200219 -I$(call gb_UnpackedTarball_get_dir,cppunit/include)\
Peter Foley143835b2012-11-25 16:37:40 -0500220 $$(INCLUDE) \
221)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100222
Michael Stahl77fe50b2013-10-23 23:35:16 +0200223ifeq ($(COM),MSC)
224$(call gb_LinkTarget_add_libs,$(1),\
225 $(call gb_UnpackedTarball_get_dir,cppunit)/src/cppunit/$(if $(MSVC_USE_DEBUG_RUNTIME),DebugDll/cppunitd_dll.lib,ReleaseDll/cppunit_dll.lib) \
226)
227else
228$(call gb_LinkTarget_add_libs,$(1),\
229 -L$(call gb_UnpackedTarball_get_dir,cppunit)/src/cppunit/.libs -lcppunit \
230)
231endif
232
David Tardon785e1d92011-07-25 10:34:22 +0200233endef
234
Michael Stahle3abec32014-02-11 15:57:18 +0100235endif # SYSTEM_CPPUNIT
Michael Stahlc74af0d2011-04-01 20:49:35 +0000236
Tor Lillqvist65b27f82014-04-08 13:36:30 +0300237ifneq ($(SYSTEM_GLEW),)
David Tardon864f7752014-02-09 21:19:07 +0100238
239define gb_LinkTarget__use_glew
240$(call gb_LinkTarget_set_include,$(1),\
241 $$(INCLUDE) \
242 $(GLEW_CFLAGS) \
243)
244$(call gb_LinkTarget_add_libs,$(1),$(GLEW_LIBS))
245
246endef
247
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200248gb_ExternalProject__use_glew :=
249
Michael Stahle3abec32014-02-11 15:57:18 +0100250else # !SYSTEM_GLEW
David Tardon864f7752014-02-09 21:19:07 +0100251
Michael Stahl0c94f232014-03-18 17:17:04 +0100252$(eval $(call gb_Helper_register_packages_for_install,ooo,\
253 glew \
254))
255
David Tardon864f7752014-02-09 21:19:07 +0100256define gb_LinkTarget__use_glew
Matúš Kukan532e8cc2014-04-08 10:30:47 +0200257$(call gb_LinkTarget_use_package,$(1),glew)
David Tardon864f7752014-02-09 21:19:07 +0100258$(call gb_LinkTarget_set_include,$(1),\
259 -I$(call gb_UnpackedTarball_get_dir,glew/include) \
260 $$(INCLUDE) \
261)
262
263ifeq ($(COM),MSC)
264$(call gb_LinkTarget_add_libs,$(1),\
265 $(call gb_UnpackedTarball_get_dir,glew)/lib/$(if $(MSVC_USE_DEBUG_RUNTIME),Debug/Win32/glew32d.lib,Release/Win32/glew32.lib) \
266)
267else
268$(call gb_LinkTarget_add_libs,$(1),\
269 -L$(call gb_UnpackedTarball_get_dir,glew)/lib/ -lGLEW \
270)
271endif
272
273endef
274
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200275define gb_ExternalProject__use_glew
276$(call gb_ExternalProject_use_external_project,$(1),glew)
277
278endef
279
Michael Stahle3abec32014-02-11 15:57:18 +0100280endif # SYSTEM_GLEW
David Tardon864f7752014-02-09 21:19:07 +0100281
Tor Lillqvist40900fb2013-01-03 12:48:14 +0200282define gb_LinkTarget__use_iconv
283$(call gb_LinkTarget_add_libs,$(1),-liconv)
284
285endef
286
Michael Stahl379f9782014-02-11 16:49:19 +0100287ifneq ($(SYSTEM_MARIADB),)
Peter Foleyc322d502013-01-23 16:29:08 -0500288
David Tardon217eae42013-11-05 06:49:33 +0100289define gb_LinkTarget__use_mariadb
290$(call gb_LinkTarget_set_include,$(1),\
291 $$(INCLUDE) \
292 $(MARIADB_CFLAGS) \
293)
294$(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
295
296endef
297gb_ExternalProject__use_mariadb :=
298
299else # !SYSTEM_MARIADB
300
301define gb_LinkTarget__use_mariadb
302$(call gb_LinkTarget_set_include,$(1),\
303 $$(INCLUDE) \
304 $(MARIADB_CFLAGS) \
305)
306$(call gb_LinkTarget_use_static_libraries,$(1),\
307 mariadblib \
308)
309
310endef
311define gb_ExternalProject__use_mariadb
312$(call gb_ExternalProject_use_static_libraries,$(1),mariadblib)
313
314endef
315
316endif # SYSTEM_MARIADB
317
318
Michael Stahl379f9782014-02-11 16:49:19 +0100319ifneq ($(SYSTEM_MARIADB),)
David Tardon217eae42013-11-05 06:49:33 +0100320
Peter Foleyc322d502013-01-23 16:29:08 -0500321define gb_LinkTarget__use_mysql
322
323$(call gb_LinkTarget_add_defs,$(1),\
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100324 -DSYSTEM_MARIADB \
Peter Foleyc322d502013-01-23 16:29:08 -0500325)
326
327$(call gb_LinkTarget_add_libs,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100328 $(MARIADB_LIBS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500329)
330
331$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100332 $(MARIADB_CFLAGS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500333 $$(INCLUDE) \
334)
335endef
336
337else
338
339define gb_LinkTarget__use_mysql
340
341$(call gb_LinkTarget_set_include,$(1),\
Peter Foleyc322d502013-01-23 16:29:08 -0500342 $$(INCLUDE) \
343)
344
345endef
346
347endif
348
Michael Stahl0443d0a2014-02-11 16:57:35 +0100349ifneq ($(SYSTEM_MYSQL_CPPCONN),)
Peter Foleyc322d502013-01-23 16:29:08 -0500350
351define gb_LinkTarget__use_mysqlcppconn
352$(call gb_LinkTarget_add_libs,$(1),\
353 -lmysqlcppconn \
354)
355
356$(call gb_LinkTarget_add_defs,$(1),\
Peter Foleyb02d7992013-01-24 15:43:52 -0500357 -DSYSTEM_MYSQL_CPPCONN \
Peter Foleyc322d502013-01-23 16:29:08 -0500358)
359endef
360
361else
362
Michael Stahl5f356bd2013-01-28 23:53:30 +0100363$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
Peter Foleyc322d502013-01-23 16:29:08 -0500364 mysqlcppconn \
365))
366
Michael Stahl5f356bd2013-01-28 23:53:30 +0100367# note: this does not link mysqlcppconn, it is loaded via osl_loadModuleRelative
Peter Foleyc322d502013-01-23 16:29:08 -0500368define gb_LinkTarget__use_mysqlcppconn
369
Michael Stahl5f356bd2013-01-28 23:53:30 +0100370$(call gb_LinkTarget_use_unpacked,$(1),mysqlcppconn)
371
Peter Foleyb02d7992013-01-24 15:43:52 -0500372$(call gb_LinkTarget_add_defs,$(1),\
373 -DCPPCONN_LIB_BUILD \
374)
375
Peter Foleyc322d502013-01-23 16:29:08 -0500376$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200377 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn) \
378 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn)/cppconn \
Peter Foleyc322d502013-01-23 16:29:08 -0500379 $$(INCLUDE) \
380)
381
382endef
383
384endif
385
Michael Stahl04ff5352014-02-11 16:21:04 +0100386ifneq ($(SYSTEM_ZLIB),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000387
388define gb_LinkTarget__use_zlib
Michael Stahla88ef232011-04-13 16:11:41 +0000389$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000390 -DSYSTEM_ZLIB \
391)
392$(call gb_LinkTarget_add_libs,$(1),-lz)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100393
Michael Stahlc74af0d2011-04-01 20:49:35 +0000394endef
395
David Tardoncb276232012-10-26 15:33:26 +0200396# nothing on system
397define gb_LinkTarget__use_zlib_x64
398
399endef
400
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100401gb_ExternalProject__use_zlib :=
402
Michael Stahlc74af0d2011-04-01 20:49:35 +0000403else # !SYSTEM_ZLIB
404
David Tardoncb276232012-10-26 15:33:26 +0200405define gb_LinkTarget__use_zlib_multiarch
406$(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
407
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200408$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl3c38b772013-05-08 15:47:24 +0200409 $(ZLIB_CFLAGS) \
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200410 $$(INCLUDE) \
411)
David Tardoncb276232012-10-26 15:33:26 +0200412
Michael Stahlc923f7d2012-04-07 23:22:08 +0200413$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardoncb276232012-10-26 15:33:26 +0200414 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000415)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100416
Michael Stahlc74af0d2011-04-01 20:49:35 +0000417endef
418
David Tardoncb276232012-10-26 15:33:26 +0200419define gb_LinkTarget__use_zlib
420$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
421
422endef
423
424define gb_LinkTarget__use_zlib_x64
425$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
426
427endef
428
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100429define gb_ExternalProject__use_zlib
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100430$(call gb_ExternalProject_use_static_libraries,$(1),zlib)
431
432endef
433
Michael Stahlc74af0d2011-04-01 20:49:35 +0000434endif # SYSTEM_ZLIB
435
436
Michael Stahl46648152014-02-11 16:33:18 +0100437ifneq ($(SYSTEM_JPEG),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000438
439define gb_LinkTarget__use_jpeg
440$(call gb_LinkTarget_add_libs,$(1),-ljpeg)
441$(call gb_LinkTarget_set_ldflags,$(1),\
Michael Stahl73d2fe92011-04-13 16:11:39 +0000442 $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000443)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100444
Michael Stahlc74af0d2011-04-01 20:49:35 +0000445endef
446
447else # !SYSTEM_JPEG
448
Michael Stahlc74af0d2011-04-01 20:49:35 +0000449define gb_LinkTarget__use_jpeg
Matúš Kukane8a28be2012-01-21 00:46:29 +0100450$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlb65859c2013-05-08 17:30:40 +0200451 -I$(call gb_UnpackedTarball_get_dir,jpeg) \
Matúš Kukane8a28be2012-01-21 00:46:29 +0100452 $$(INCLUDE) \
Matúš Kukane8a28be2012-01-21 00:46:29 +0100453)
454
Michael Stahlc923f7d2012-04-07 23:22:08 +0200455$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon4ed91fd2012-10-12 09:32:02 +0200456 jpeg \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000457)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100458
Michael Stahlc74af0d2011-04-01 20:49:35 +0000459endef
460
461endif # SYSTEM_JPEG
462
Michael Stahlab586f12014-02-11 19:25:30 +0100463ifneq ($(SYSTEM_MYTHES),)
Peter Foley1d1bab42012-10-28 12:00:06 -0400464
465define gb_LinkTarget__use_mythes
Rene Engelhard99ef1f52012-10-28 23:00:03 +0100466$(call gb_LinkTarget_set_include,$(1),\
467 $$(INCLUDE) \
468 $(MYTHES_CFLAGS) \
469)
470$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
471
Peter Foley1d1bab42012-10-28 12:00:06 -0400472endef
473
474else # !SYSTEM_MYTHES
475
Peter Foley1d1bab42012-10-28 12:00:06 -0400476define gb_LinkTarget__use_mythes
Michael Stahl90ad80e32013-05-07 23:59:00 +0200477$(call gb_LinkTarget_set_include,$(1),\
478 -I$(call gb_UnpackedTarball_get_dir,mythes) \
479 $$(INCLUDE) \
480)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200481
482ifeq ($(COM),MSC)
Matúš Kukan327db9f2012-10-28 22:40:30 +0100483$(call gb_LinkTarget_use_static_libraries,$(1),\
484 mythes \
Peter Foley1d1bab42012-10-28 12:00:06 -0400485)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200486else
487$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
488$(call gb_LinkTarget_use_external_project,$(1),mythes)
489endif
Matúš Kukan327db9f2012-10-28 22:40:30 +0100490
Peter Foley1d1bab42012-10-28 12:00:06 -0400491endef
492
493endif # SYSTEM_MYTHES
494
Michael Stahlc74af0d2011-04-01 20:49:35 +0000495
Michael Stahl46648152014-02-11 16:33:18 +0100496ifneq ($(SYSTEM_EXPAT),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000497
David Tardon51149802013-04-09 09:22:20 +0200498define gb_LinkTarget__use_expat_impl
499$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000500
Michael Stahla88ef232011-04-13 16:11:41 +0000501$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000502 -DSYSTEM_EXPAT \
503)
504
505$(call gb_LinkTarget_add_libs,$(1),-lexpat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100506
Michael Stahlc74af0d2011-04-01 20:49:35 +0000507endef
508
Michael Stahl77289672012-11-17 00:36:29 +0100509gb_ExternalProject__use_expat :=
510
Michael Stahlc74af0d2011-04-01 20:49:35 +0000511else # !SYSTEM_EXPAT
512
David Tardon51149802013-04-09 09:22:20 +0200513define gb_LinkTarget__use_expat_impl
514$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000515
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700516$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl5e037bb2013-05-07 21:47:18 +0200517 -I$(call gb_UnpackedTarball_get_dir,expat)/lib \
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700518 $$(INCLUDE) \
519)
520
Michael Stahlc923f7d2012-04-07 23:22:08 +0200521$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000522 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000523)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100524
Michael Stahlc74af0d2011-04-01 20:49:35 +0000525endef
526
Michael Stahl77289672012-11-17 00:36:29 +0100527define gb_ExternalProject__use_expat
Michael Stahl77289672012-11-17 00:36:29 +0100528$(call gb_ExternalProject_use_static_libraries,$(1),expat)
529
530endef
531
Michael Stahlc74af0d2011-04-01 20:49:35 +0000532endif # SYSTEM_EXPAT
533
David Tardon51149802013-04-09 09:22:20 +0200534define gb_LinkTarget__use_expat
535$(call gb_LinkTarget__use_expat_impl,$(1),expat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100536
Michael Stahlc74af0d2011-04-01 20:49:35 +0000537endef
538
David Tardon51149802013-04-09 09:22:20 +0200539define gb_LinkTarget__use_expat_x64
540$(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100541
Michael Stahlc74af0d2011-04-01 20:49:35 +0000542endef
543
Michael Stahl9fc9e9c2014-02-11 19:21:36 +0100544ifneq ($(SYSTEM_HYPH),)
Peter Foleydd584cb2012-11-03 13:54:46 -0400545
546define gb_LinkTarget__use_hyphen
547$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
548
549endef
550
551else # !SYSTEM_HYPH
552
Peter Foleydd584cb2012-11-03 13:54:46 -0400553define gb_LinkTarget__use_hyphen
554$(call gb_LinkTarget_use_unpacked,$(1),hyphen)
555$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200556 -I$(call gb_UnpackedTarball_get_dir,hyphen)\
Peter Foleydd584cb2012-11-03 13:54:46 -0400557 $$(INCLUDE) \
558)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200559
560ifeq ($(COM),MSC)
Peter Foleydd584cb2012-11-03 13:54:46 -0400561$(call gb_LinkTarget_use_static_libraries,$(1),\
562 hyphen \
563)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200564else
565$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
566$(call gb_LinkTarget_use_external_project,$(1),hyphen)
567endif
Peter Foleydd584cb2012-11-03 13:54:46 -0400568
569endef
570
571endif # SYSTEM_HYPH
572
Michael Stahl9fc9e9c2014-02-11 19:21:36 +0100573ifneq ($(SYSTEM_HUNSPELL),)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100574
575define gb_LinkTarget__use_hunspell
576$(call gb_LinkTarget_set_include,$(1),\
577 $$(INCLUDE) \
578 $(HUNSPELL_CFLAGS) \
579)
580$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
581
582endef
583
Michael Stahl2f6261f2013-09-19 19:28:36 +0200584gb_ExternalProject__use_hunspell :=
585
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100586else # !SYSTEM_HUNSPELL
587
588define gb_LinkTarget__use_hunspell
589$(call gb_LinkTarget_add_defs,$(1),\
590 -DHUNSPELL_STATIC \
591)
Matúš Kukan7a030392012-10-29 23:29:37 +0100592$(call gb_LinkTarget_use_unpacked,$(1),hunspell)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100593$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200594 -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
Matúš Kukan7a030392012-10-29 23:29:37 +0100595 $$(INCLUDE) \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100596)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200597
598ifeq ($(COM),MSC)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200599$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan327db9f2012-10-28 22:40:30 +0100600 hunspell \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100601)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200602else
603$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
604$(call gb_LinkTarget_use_external_project,$(1),hunspell)
605endif
606
607endef
608
609define gb_ExternalProject__use_hunspell
610$(call gb_ExternalProject_use_external_project,$(1),hunspell)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100611
612endef
613
614endif # SYSTEM_HUNSPELL
615
616
Michael Stahladddbbc2014-02-11 18:40:09 +0100617ifneq ($(SYSTEM_BOOST),)
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200618
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200619define gb_LinkTarget__use_boostdatetime
David Tardon0f6919c2012-06-06 17:04:01 +0200620$(call gb_LinkTarget_set_include,$(1),\
621 $$(INCLUDE) \
622 $(BOOST_CPPFLAGS) \
623)
624
625$(call gb_LinkTarget_add_ldflags,$(1),\
626 $(BOOST_LDFLAGS) \
627)
628
629$(call gb_LinkTarget_add_libs,$(1),\
630 $(BOOST_DATE_TIME_LIB) \
631)
632
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200633endef
634
Markus Mohrhard36788e92014-01-08 13:17:28 +0100635define gb_LinkTarget__use_boost_iostreams
636$(call gb_LinkTarget_set_include,$(1),\
637 $$(INCLUDE) \
638 $(BOOST_CPPFLAGS) \
639)
640
641$(call gb_LinkTarget_add_ldflags,$(1),\
642 $(BOOST_LDFLAGS) \
643)
644
645$(call gb_LinkTarget_add_libs,$(1),\
646 $(BOOST_IOSTREAMS_LIB) \
647)
648
649endef
650
David Tardon6d9de6b2014-03-03 20:39:13 +0100651gb_ExternalProject__use_boost_iostreams :=
652
Markus Mohrhard36788e92014-01-08 13:17:28 +0100653define gb_LinkTarget__use_boost_system
Tor Lillqvist503b2482013-05-22 19:50:22 +0300654$(call gb_LinkTarget_set_include,$(1),\
655 $$(INCLUDE) \
656 $(BOOST_CPPFLAGS) \
657)
658
659$(call gb_LinkTarget_add_ldflags,$(1),\
660 $(BOOST_LDFLAGS) \
661)
662
663$(call gb_LinkTarget_add_libs,$(1),\
664 $(BOOST_SYSTEM_LIB) \
665)
666
667endef
668
Markus Mohrhard36788e92014-01-08 13:17:28 +0100669gb_ExternalProject__use_boost_system :=
Tor Lillqvist503b2482013-05-22 19:50:22 +0300670
Stephan Bergmann93208022013-02-16 22:56:19 +0100671define gb_LinkTarget__use_boost_headers
672$(call gb_LinkTarget_set_include,$(1),\
673 $$(INCLUDE) \
674 $(BOOST_CPPFLAGS) \
675)
676
677endef
678
Peter Foleycdb6eca2012-11-10 08:56:12 -0500679gb_ExternalProject__use_boost_headers:=
680
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200681else # !SYSTEM_BOOST
682
Kohei Yoshida0454b732012-09-06 15:10:19 -0400683ifeq ($(OS),WNT)
Michael Stahl7f2e1682012-09-06 20:22:11 +0200684define gb_LinkTarget__use_boostthread
685$(call gb_LinkTarget_add_defs,$(1),\
686 -DBOOST_ALL_NO_LIB \
687)
688
689$(call gb_LinkTarget_use_static_libraries,$(1),\
690 boostthread \
691)
692endef
Matúš Kukanddb5edc2013-05-30 14:39:38 +0200693endif
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200694
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200695define gb_LinkTarget__use_boostdatetime
Michael Stahl7f2e1682012-09-06 20:22:11 +0200696$(call gb_LinkTarget_add_defs,$(1),\
697 -DBOOST_ALL_NO_LIB \
698)
699
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200700$(call gb_LinkTarget_use_static_libraries,$(1),\
Fridrich Štrbacdabc882013-05-24 14:46:28 +0200701 boostdatetime \
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200702)
703
704endef
705
Markus Mohrhard36788e92014-01-08 13:17:28 +0100706define gb_LinkTarget__use_boost_iostreams
Tor Lillqvist503b2482013-05-22 19:50:22 +0300707$(call gb_LinkTarget_add_defs,$(1),\
708 -DBOOST_ALL_NO_LIB \
709)
710
711$(call gb_LinkTarget_use_static_libraries,$(1),\
Markus Mohrhard36788e92014-01-08 13:17:28 +0100712 boost_iostreams \
Tor Lillqvist503b2482013-05-22 19:50:22 +0300713)
714
715endef
716
Markus Mohrhard36788e92014-01-08 13:17:28 +0100717define gb_ExternalProject__use_boost_iostreams
718$(call gb_ExternalProject_use_static_libraries,$(1),boost_iostreams)
719endef
720
721define gb_LinkTarget__use_boost_system
722$(call gb_LinkTarget_add_defs,$(1),\
723 -DBOOST_ALL_NO_LIB \
724)
725
726$(call gb_LinkTarget_use_static_libraries,$(1),\
727 boost_system \
728)
729
730endef
731
732define gb_ExternalProject__use_boost_system
733$(call gb_ExternalProject_use_static_libraries,$(1),boost_system)
Tor Lillqvist503b2482013-05-22 19:50:22 +0300734endef
735
Peter Foleye1f742a2012-11-12 18:37:10 -0500736define gb_LinkTarget__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100737$(call gb_LinkTarget_use_unpacked,$(1),boost)
Michael Stahla53586f2013-01-26 21:19:13 +0100738$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200739 -I$(call gb_UnpackedTarball_get_dir,boost) \
Michael Stahla53586f2013-01-26 21:19:13 +0100740 $$(INCLUDE) \
741)
Peter Foleye1f742a2012-11-12 18:37:10 -0500742
743endef
744
Peter Foleycdb6eca2012-11-10 08:56:12 -0500745define gb_ExternalProject__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100746$(call gb_ExternalProject_get_preparation_target,$(1)) :| $(call gb_UnpackedTarball_get_final_target,boost)
Peter Foleycdb6eca2012-11-10 08:56:12 -0500747
748endef
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200749endif # SYSTEM_BOOST
750
751
Michael Stahle3abec32014-02-11 15:57:18 +0100752ifneq ($(SYSTEM_CMIS),)
Matúš Kukan464b4332012-01-15 02:12:49 +0100753
754define gb_LinkTarget__use_cmis
755$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100756 $$(INCLUDE) \
Matúš Kukan707194e2012-09-06 18:19:34 +0200757 $(CMIS_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100758)
Matúš Kukan707194e2012-09-06 18:19:34 +0200759$(call gb_LinkTarget_add_libs,$(1),$(CMIS_LIBS))
Matúš Kukan464b4332012-01-15 02:12:49 +0100760
761endef
762
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100763else # !SYSTEM_CMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100764
Matúš Kukan464b4332012-01-15 02:12:49 +0100765define gb_LinkTarget__use_cmis
Michael Stahl759d02b2013-05-08 00:55:21 +0200766$(call gb_LinkTarget_set_include,$(1),\
767 -I$(call gb_UnpackedTarball_get_dir,cmis)/src \
768 $$(INCLUDE) \
769)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200770$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100771 cmislib \
772)
773
774endef
775
Bjoern Michaelsen88ed6d12013-02-19 11:10:16 +0100776endif # SYSTEM_CMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100777
David Tardon32cd12c2014-04-26 19:46:40 +0200778ifeq ($(ENABLE_JAVA),TRUE)
David Tardon2a71e152014-04-26 16:08:07 +0200779
Peter Foleye5ccda42012-12-25 11:23:58 -0500780ifeq ($(OS)$(COM),WNTGCC)
781
782define gb_LinkTarget__use_jawt
David Tardon943dedc2014-04-26 15:50:10 +0200783$(call gb_LinkTarget_use_custom_headers,$(1),external/jawt)
784
785$(call gb_LinkTarget_add_ldflags,$(1),\
786 -L$(call gb_CustomTarget_get_workdir,external/jawt) \
787)
788
789$(call gb_LinkTarget_add_libs,$(1),\
David Tardon2a71e152014-04-26 16:08:07 +0200790 $(JAWTLIB) \
Peter Foleye5ccda42012-12-25 11:23:58 -0500791)
792
793endef
794
795else # $(OS)$(COM) != WNTGCC
796
David Tardon2a71e152014-04-26 16:08:07 +0200797define gb_LinkTarget__use_jawt
798$(call gb_LinkTarget_add_libs,$(1),\
799 $(JAWTLIB) \
800)
801
802endef
Peter Foleye5ccda42012-12-25 11:23:58 -0500803
804endif # $(OS)$(COM) = WNTGCC
805
David Tardon2a71e152014-04-26 16:08:07 +0200806else # !ENABLE_JAVA
807
808gb_LinkTarget__use_jawt :=
809
810endif # ENABLE_JAVA
Matúš Kukan464b4332012-01-15 02:12:49 +0100811
Michael Stahl23647592014-02-11 19:04:20 +0100812ifneq ($(SYSTEM_LIBATOMIC_OPS),)
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100813
814define gb_LinkTarget__use_libatomic_ops
815$(call gb_LinkTarget_set_include,$(1),\
816 $$(INCLUDE) \
817 $(LIBATOMIC_OPS_CFLAGS) \
818)
819$(call gb_LinkTarget_add_libs,$(1), $(LIBATOMIC_OPS_LIBS))
820
821endef
822gb_ExternalProject__use_libatomic_ops :=
823
824else # !SYSTEM_LIBATOMIC_OPS
825
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100826define gb_LinkTarget__use_libatomic_ops
827$(call gb_LinkTarget_set_include,$(1),\
828$(LIBATOMIC_OPS_CFLAGS) \
829 $$(INCLUDE) \
830 $(LIBATOMIC_OPS_CFLAGS) \
831)
Michael Stahlb3085262013-10-24 12:22:58 +0200832$(call gb_LinkTarget_use_external_project,$(1),\
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100833 libatomic_ops \
834)
Andrzej J.R. Huntf479f622013-09-05 16:27:50 +0100835
Michael Stahlb3085262013-10-24 12:22:58 +0200836$(call gb_LinkTarget_add_libs,$(1),\
Andrzej J.R. Huntf479f622013-09-05 16:27:50 +0100837 -L$(call gb_UnpackedTarball_get_dir,libatomic_ops)/src/lib -latomic_ops \
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100838)
839
840endef
841
842define gb_ExternalProject__use_libatomic_ops
Michael Stahlb3085262013-10-24 12:22:58 +0200843$(call gb_ExternalProject_use_external_project,$(1),libatomic_ops)
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100844
845endef
846
847endif # SYSTEM_LIBATOMIC_OPS
848
849
Michael Stahle3abec32014-02-11 15:57:18 +0100850ifneq ($(SYSTEM_LIBEXTTEXTCAT),)
Matúš Kukanbd030302011-12-03 15:06:52 +0100851
852define gb_LinkTarget__use_libexttextcat
853$(call gb_LinkTarget_set_include,$(1),\
854 $$(INCLUDE) \
855 $(LIBEXTTEXTCAT_CFLAGS) \
856)
Peter Foley31219f02012-11-09 17:25:56 -0500857$(call gb_LinkTarget_add_defs,$(1),\
858 -DSYSTEM_LIBEXTTEXTCAT \
859)
Matúš Kukanbd030302011-12-03 15:06:52 +0100860$(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
861
862endef
863
864else # !SYSTEM_LIBEXTTEXTCAT
865
Matúš Kukanbd030302011-12-03 15:06:52 +0100866define gb_LinkTarget__use_libexttextcat
Peter Foley31219f02012-11-09 17:25:56 -0500867$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200868 -I$(call gb_UnpackedTarball_get_dir,exttextcat/src) \
Peter Foley31219f02012-11-09 17:25:56 -0500869 $$(INCLUDE) \
870)
Matúš Kukanbd030302011-12-03 15:06:52 +0100871
Michael Stahl2f6261f2013-09-19 19:28:36 +0200872ifeq ($(COM),MSC)
873$(call gb_LinkTarget_use_static_libraries,$(1),\
874 exttextcat \
875)
876else
877$(call gb_LinkTarget_add_libs,$(1),\
878 $(call gb_UnpackedTarball_get_dir,exttextcat)/src/.libs/libexttextcat-2.0.a\
879)
David Tardon523a3042013-10-12 18:22:55 +0200880$(call gb_LinkTarget_use_external_project,$(1),exttextcat)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200881endif
882
883
Matúš Kukanbd030302011-12-03 15:06:52 +0100884endef
885
886endif # SYSTEM_LIBEXTTEXTCAT
887
888
Michael Stahl379f9782014-02-11 16:49:19 +0100889ifneq ($(SYSTEM_LIBXML),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000890
891define gb_LinkTarget__use_libxml2
Michael Stahla88ef232011-04-13 16:11:41 +0000892$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000893 -DSYSTEM_LIBXML \
894)
895$(call gb_LinkTarget_set_include,$(1),\
896 $$(INCLUDE) \
897 $(LIBXML_CFLAGS) \
898)
899$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100900
Michael Stahlc74af0d2011-04-01 20:49:35 +0000901endef
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500902gb_ExternalProject__use_libxml2:=
Michael Stahlc74af0d2011-04-01 20:49:35 +0000903
904else # !SYSTEM_LIBXML
905
Michael Stahl64ea9942014-03-14 11:48:24 +0100906$(eval $(call gb_Helper_register_packages_for_install,ure,\
907 xml2 \
908))
909
910$(eval $(call gb_Helper_register_packages_for_install,ooo,\
911 xml2_win32 \
912))
913
Michael Stahlc74af0d2011-04-01 20:49:35 +0000914define gb_LinkTarget__use_libxml2
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500915$(call gb_LinkTarget_use_package,$(1),xml2)
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500916$(call gb_LinkTarget_set_include,$(1),\
917 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200918 -I$(call gb_UnpackedTarball_get_dir,xml2)/include \
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500919)
920
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200921ifeq ($(COM),MSC)
922$(call gb_LinkTarget_add_libs,$(1),\
923 $(call gb_UnpackedTarball_get_dir,xml2)/win32/bin.msvc/libxml2.lib \
924)
925else
926$(call gb_LinkTarget_add_libs,$(1),\
927 -L$(call gb_UnpackedTarball_get_dir,xml2)/.libs -lxml2 \
928)
929endif
930
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500931endef
932define gb_ExternalProject__use_libxml2
933$(call gb_ExternalProject_use_package,$(1),xml2)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100934
Michael Stahlc74af0d2011-04-01 20:49:35 +0000935endef
936
937endif # SYSTEM_LIBXML
938
939
Michael Stahle3abec32014-02-11 15:57:18 +0100940ifneq ($(SYSTEM_LIBXSLT),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000941
942define gb_LinkTarget__use_libxslt
943$(call gb_LinkTarget_set_include,$(1),\
944 $$(INCLUDE) \
945 $(LIBXSLT_CFLAGS) \
946)
947$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100948
Michael Stahlc74af0d2011-04-01 20:49:35 +0000949endef
950
David Tardonab03e872012-08-15 07:20:13 +0200951define gb_LinkTarget__use_libexslt
952$(call gb_LinkTarget_set_include,$(1),\
953 $$(INCLUDE) \
954 $(LIBEXSLT_CFLAGS) \
955)
956
957$(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
958
959endef
960
Michael Stahlc74af0d2011-04-01 20:49:35 +0000961else # !SYSTEM_LIBXSLT
962
Michael Stahl32a617d2014-02-17 11:23:19 +0100963$(eval $(call gb_Helper_register_packages_for_install,ooo,\
964 xslt \
965))
966
Michael Stahlc74af0d2011-04-01 20:49:35 +0000967define gb_LinkTarget__use_libxslt
Peter Foley856c0752013-02-02 15:44:30 -0500968$(call gb_LinkTarget_use_package,$(1),xslt)
969$(call gb_LinkTarget_set_include,$(1),\
970 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200971 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500972)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200973
974ifeq ($(COM),MSC)
975$(call gb_LinkTarget_add_libs,$(1),\
976 $(call gb_UnpackedTarball_get_dir,xslt)/win32/bin.msvc/libxslt.lib \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000977)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200978else
979$(call gb_LinkTarget_add_libs,$(1),\
980 -L$(call gb_UnpackedTarball_get_dir,xslt)/libxslt/.libs -lxslt \
981)
982endif
Caolán McNamara6bccd202011-07-25 22:10:33 +0100983
Michael Stahlc74af0d2011-04-01 20:49:35 +0000984endef
985
David Tardonab03e872012-08-15 07:20:13 +0200986define gb_LinkTarget__use_libexslt
Peter Foley856c0752013-02-02 15:44:30 -0500987$(call gb_LinkTarget_use_package,$(1),xslt)
988$(call gb_LinkTarget_set_include,$(1),\
989 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200990 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500991)
992
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200993ifeq ($(COM),MSC)
994$(call gb_LinkTarget_add_libs,$(1),\
995 $(call gb_UnpackedTarball_get_dir,xslt)/win32/bin.msvc/libexslt.lib \
David Tardonab03e872012-08-15 07:20:13 +0200996)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200997else
998$(call gb_LinkTarget_add_libs,$(1),\
999 -L$(call gb_UnpackedTarball_get_dir,xslt)/libexslt/.libs -lexslt \
1000)
1001endif
David Tardonab03e872012-08-15 07:20:13 +02001002
1003endef
1004
Michael Stahlc74af0d2011-04-01 20:49:35 +00001005endif # SYSTEM_LIBXSLT
1006
Norbert Thiebaud587d9692013-08-29 10:38:00 -05001007ifeq ($(ENABLE_LIBLANGTAG),TRUE)
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +02001008
Michael Stahl49dde4c2014-02-11 19:42:28 +01001009ifneq ($(SYSTEM_LIBLANGTAG),)
Eike Rathkea774a482012-08-06 19:22:43 +02001010
1011define gb_LinkTarget__use_liblangtag
1012$(call gb_LinkTarget_set_include,$(1),\
1013 $$(INCLUDE) \
1014 $(LIBLANGTAG_CFLAGS) \
1015)
1016
1017$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
1018
1019endef
1020
1021else # !SYSTEM_LIBLANGTAG
1022
Michael Stahl01adcd82014-03-18 17:38:06 +01001023$(eval $(call gb_Helper_register_packages_for_install,ooo,\
1024 liblangtag_data \
1025))
1026
Eike Rathkea774a482012-08-06 19:22:43 +02001027define gb_LinkTarget__use_liblangtag
Peter Foley782151a2012-11-11 16:02:36 -05001028$(call gb_LinkTarget_use_unpacked,$(1),langtag)
1029$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001030 -I$(call gb_UnpackedTarball_get_dir,langtag) \
Peter Foley782151a2012-11-11 16:02:36 -05001031 $$(INCLUDE) \
1032)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001033$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
1034$(call gb_LinkTarget_use_external_project,$(1),langtag)
Eike Rathkea774a482012-08-06 19:22:43 +02001035
1036endef
1037
1038endif # SYSTEM_LIBLANGTAG
1039
Matúš Kukan51ba7db2013-05-02 12:19:35 +02001040else
1041
1042gb_LinkTarget__use_liblangtag :=
1043
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +02001044endif # ENABLE_LIBLANGTAG
1045
Matúš Kukandcae0502014-02-25 21:47:33 +01001046gb_ExternalProject__use_apr :=
1047
1048ifeq ($(WITH_WEBDAV),serf)
Matúš Kukan0b272532014-02-06 12:28:36 +01001049
1050define gb_LinkTarget__use_apr
1051$(call gb_LinkTarget_set_include,$(1),\
1052 $$(INCLUDE) \
1053 $(APR_CFLAGS) \
1054)
1055$(call gb_LinkTarget_add_libs,$(1),\
1056 $(APR_LIBS) \
Michael Stahl5cf22052014-06-05 13:35:14 +02001057 $(if $(filter $(OS),LINUX),-lpthread) \
1058 $(if $(filter $(OS),MACOSX),-liconv) \
Matúš Kukan0b272532014-02-06 12:28:36 +01001059)
1060
1061ifeq ($(SYSTEM_APR),)
1062$(call gb_LinkTarget_use_system_win32_libs,$(1),\
1063 mswsock \
1064 rpcrt4 \
1065 shell32 \
1066)
1067$(call gb_LinkTarget_add_defs,$(1),\
1068 -DAPR_DECLARE_STATIC \
1069 -DAPU_DECLARE_STATIC \
1070)
1071$(call gb_LinkTarget_use_external_project,$(1),apr_util)
1072endif
1073
1074endef
1075
1076define gb_ExternalProject__use_apr
1077ifeq ($(SYSTEM_APR),)
1078$(call gb_ExternalProject_use_external_project,$(1),apr_util)
1079endif
1080
1081endef
1082
1083define gb_LinkTarget__use_serf
1084$(call gb_LinkTarget_set_include,$(1),\
1085 $(SERF_CFLAGS) \
1086 $$(INCLUDE) \
1087)
1088$(call gb_LinkTarget_add_libs,$(1),\
1089 $(SERF_LIBS) \
1090)
1091
1092ifeq ($(SYSTEM_SERF),)
1093$(call gb_LinkTarget_use_external_project,$(1),serf)
1094endif
1095
1096endef
1097
Matúš Kukandcae0502014-02-25 21:47:33 +01001098else ifeq ($(WITH_WEBDAV),neon)
Eike Rathkea774a482012-08-06 19:22:43 +02001099
Michael Stahle3abec32014-02-11 15:57:18 +01001100ifneq ($(SYSTEM_NEON),)
Matúš Kukan464b4332012-01-15 02:12:49 +01001101
1102define gb_LinkTarget__use_neon
Matúš Kukan464b4332012-01-15 02:12:49 +01001103$(call gb_LinkTarget_add_defs,$(1),\
1104 -DNEON_VERSION=0x$(NEON_VERSION) \
David Tardonb74bf412013-08-12 09:39:59 +02001105 -DSYSTEM_NEON \
Matúš Kukan464b4332012-01-15 02:12:49 +01001106)
Matúš Kukan464b4332012-01-15 02:12:49 +01001107$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01001108 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00001109 $(NEON_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01001110)
1111
1112$(call gb_LinkTarget_add_libs,$(1),$(NEON_LIBS))
1113
1114endef
1115
1116else # !SYSTEM_NEON
1117
Marcos Paulo de Souzaf70343b2014-02-12 06:53:02 -02001118$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
Matúš Kukan464b4332012-01-15 02:12:49 +01001119 neon \
1120))
1121
1122define gb_LinkTarget__use_neon
Matúš Kukan7a030392012-10-29 23:29:37 +01001123$(call gb_LinkTarget_use_unpacked,$(1),neon)
Matúš Kukan464b4332012-01-15 02:12:49 +01001124$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001125 -I$(call gb_UnpackedTarball_get_dir,neon/src) \
Matúš Kukan464b4332012-01-15 02:12:49 +01001126 $$(INCLUDE) \
1127)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001128$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01001129 neon \
1130)
1131
1132endef
1133
1134endif # SYSTEM_NEON
1135
Matúš Kukandcae0502014-02-25 21:47:33 +01001136endif # WITH_WEBDAV
Matúš Kukan464b4332012-01-15 02:12:49 +01001137
Michael Stahle3abec32014-02-11 15:57:18 +01001138ifneq ($(SYSTEM_REDLAND),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001139
1140define gb_LinkTarget__use_librdf
Michael Stahla88ef232011-04-13 16:11:41 +00001141$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +00001142 -DSYSTEM_REDLAND \
1143)
1144$(call gb_LinkTarget_set_include,$(1),\
1145 $$(INCLUDE) \
1146 $(REDLAND_CFLAGS) \
1147)
1148$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001149
Michael Stahlc74af0d2011-04-01 20:49:35 +00001150endef
1151
Peter Foley18bd1e72012-12-27 18:04:21 -05001152gb_LinkTarget__use_redland_headers:=
1153
1154gb_LinkTarget__use_raptor_headers:=
1155
1156gb_LinkTarget__use_rasqal_headers:=
1157
Michael Stahlc74af0d2011-04-01 20:49:35 +00001158else # !SYSTEM_REDLAND
1159
Peter Foley18bd1e72012-12-27 18:04:21 -05001160define gb_LinkTarget__use_redland_headers
1161$(call gb_LinkTarget_set_include,$(1),\
Michael Stahld719c012013-04-01 12:41:18 +02001162 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001163 $$(INCLUDE) \
1164)
1165
1166endef
1167
1168define gb_LinkTarget__use_raptor_headers
1169$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001170 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001171 $$(INCLUDE) \
1172)
1173
1174endef
1175
1176define gb_LinkTarget__use_rasqal_headers
1177$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001178 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001179 $$(INCLUDE) \
1180)
1181
1182endef
1183
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001184ifneq ($(OS),ANDROID)
1185
Michael Stahl5f9cda22013-11-01 15:43:47 +01001186ifeq ($(COM),MSC)
Michael Stahlae8e5792014-01-10 12:07:31 +01001187$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
David Tardon491dea02013-05-01 11:23:50 +02001188 raptor2 \
1189 rasqal \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001190 rdf \
1191))
Michael Stahl5ae30d32014-03-13 19:32:13 +01001192else
1193$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1194 raptor \
1195 rasqal \
1196 redland \
1197))
Michael Stahl5f9cda22013-11-01 15:43:47 +01001198endif
Michael Stahlc74af0d2011-04-01 20:49:35 +00001199
1200define gb_LinkTarget__use_librdf
Michael Stahl831aaef2013-10-24 01:09:35 +02001201ifeq ($(COM),MSC)
1202$(call gb_LinkTarget_use_libraries,$(1),\
1203 raptor2 \
1204 rdf \
1205)
1206else
Matúš Kukan85d1e392013-12-14 11:17:30 +01001207$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
1208
Michael Stahl2793c542013-10-23 21:18:24 +02001209$(call gb_LinkTarget_add_libs,$(1),\
1210 -L$(call gb_UnpackedTarball_get_dir,raptor)/src/.libs -lraptor2 \
1211 -L$(call gb_UnpackedTarball_get_dir,redland)/src/.libs -lrdf \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001212)
Michael Stahl831aaef2013-10-24 01:09:35 +02001213endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001214
Michael Stahlc74af0d2011-04-01 20:49:35 +00001215endef
1216
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001217else # ANDROID
1218
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001219define gb_LinkTarget__use_librdf
Michael Stahl95565d52013-05-07 12:17:20 +02001220$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001221
1222endef
1223
1224endif # ANDROID
1225
Michael Stahlc74af0d2011-04-01 20:49:35 +00001226endif # SYSTEM_REDLAND
1227
1228
Michael Stahl32a617d2014-02-17 11:23:19 +01001229ifneq ($(filter unx,$(GUIBASE))$(ENABLE_CAIRO_CANVAS),) # or
1230
Michael Stahl5c0e6d82014-02-11 17:03:53 +01001231ifneq ($(SYSTEM_CAIRO),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001232
Michael Stahlc74af0d2011-04-01 20:49:35 +00001233define gb_LinkTarget__use_cairo
1234$(call gb_LinkTarget_set_include,$(1),\
1235 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001236 $(CAIRO_CFLAGS) \
1237)
David Tardon962771f2013-05-24 14:35:18 +02001238$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001239$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001240
Michael Stahlc74af0d2011-04-01 20:49:35 +00001241endef
1242
Michael Stahl5c0e6d82014-02-11 17:03:53 +01001243else # !SYSTEM_CAIRO
Michael Stahlc74af0d2011-04-01 20:49:35 +00001244
Michael Stahl32a617d2014-02-17 11:23:19 +01001245$(eval $(call gb_Helper_register_packages_for_install,ooo,\
1246 cairo \
1247 $(if $(filter $(OS),WNT),,pixman) \
1248))
1249
Michael Stahlc74af0d2011-04-01 20:49:35 +00001250define gb_LinkTarget__use_cairo
Michael Stahlde142202012-11-20 22:05:36 +01001251$(call gb_LinkTarget_use_package,$(1),cairo)
1252$(call gb_LinkTarget_use_package,$(1),pixman)
David Tardon962771f2013-05-24 14:35:18 +02001253$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001254$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001255 -I$(call gb_UnpackedTarball_get_dir,cairo) \
1256 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +01001257 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001258)
Michael Stahld89f48b2013-10-23 21:27:05 +02001259$(call gb_LinkTarget_add_libs,$(1),\
1260 -L$(call gb_UnpackedTarball_get_dir,cairo)/src/.libs -lcairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +01001261 $(if $(filter-out MACOSX WNT,$(OS)), \
Michael Stahld89f48b2013-10-23 21:27:05 +02001262 -L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1 \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +01001263 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001264)
Caolán McNamara5bb76f62011-07-25 21:50:34 +01001265
Michael Stahlc74af0d2011-04-01 20:49:35 +00001266endef
1267
1268endif # SYSTEM_CAIRO
1269
Michael Stahl32a617d2014-02-17 11:23:19 +01001270endif # CAIRO
1271
Michael Stahl379f9782014-02-11 16:49:19 +01001272ifneq ($(SYSTEM_FREETYPE),)
David Tardon962771f2013-05-24 14:35:18 +02001273
1274define gb_LinkTarget__use_freetype_headers
Caolán McNamarab41ae462011-07-25 22:24:27 +01001275$(call gb_LinkTarget_set_include,$(1),\
1276 $$(INCLUDE) \
1277 $(FREETYPE_CFLAGS) \
1278)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001279
David Tardon962771f2013-05-24 14:35:18 +02001280endef
1281
1282define gb_LinkTarget__use_freetype
1283$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Caolán McNamarab41ae462011-07-25 22:24:27 +01001284$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
1285
1286endef
1287
Michael Stahle568d2a2013-09-30 14:10:22 +02001288gb_ExternalProject__use_freetype :=
1289
Zolnai Tamás6403f2b2014-06-25 15:19:41 +02001290else ifeq ($(OS),ANDROID)
David Tardon962771f2013-05-24 14:35:18 +02001291
1292define gb_LinkTarget__use_freetype_headers
Michael Stahlb242cee82013-10-24 12:08:50 +02001293$(call gb_LinkTarget_use_external_project,$(1),freetype)
David Tardon962771f2013-05-24 14:35:18 +02001294$(call gb_LinkTarget_set_include,$(1),\
1295 -I$(call gb_UnpackedTarball_get_dir,freetype)/include \
1296 $$(INCLUDE) \
1297)
1298
David Tardon61695f12013-05-24 17:15:20 +02001299endef
1300
David Tardon962771f2013-05-24 14:35:18 +02001301define gb_LinkTarget__use_freetype
1302$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Jan Holesovskyfe5dbe32014-04-22 00:41:57 +02001303$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
David Tardon962771f2013-05-24 14:35:18 +02001304
1305endef
1306
Michael Stahle568d2a2013-09-30 14:10:22 +02001307define gb_ExternalProject__use_freetype
Michael Stahlb242cee82013-10-24 12:08:50 +02001308$(call gb_ExternalProject_use_external_project,$(1),freetype)
Michael Stahle568d2a2013-09-30 14:10:22 +02001309
1310endef
1311
David Tardon962771f2013-05-24 14:35:18 +02001312endif # SYSTEM_FREETYPE
1313
Michael Stahl04ff5352014-02-11 16:21:04 +01001314ifneq ($(SYSTEM_FONTCONFIG),)
David Tardon4eb68422013-05-24 14:16:03 +02001315
Caolán McNamarab41ae462011-07-25 22:24:27 +01001316define gb_LinkTarget__use_fontconfig
1317$(call gb_LinkTarget_set_include,$(1),\
1318 $$(INCLUDE) \
1319 $(FONTCONFIG_CFLAGS) \
1320)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001321
Caolán McNamarab41ae462011-07-25 22:24:27 +01001322$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
1323
1324endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001325
Matúš Kukanfb8d0a42013-09-25 10:13:09 +02001326else ifeq ($(OS),ANDROID)
David Tardon4eb68422013-05-24 14:16:03 +02001327
David Tardon4eb68422013-05-24 14:16:03 +02001328define gb_LinkTarget__use_fontconfig
Michael Stahl76596b32013-10-24 11:01:41 +02001329$(call gb_LinkTarget_use_external_project,$(1),fontconfig)
David Tardon4eb68422013-05-24 14:16:03 +02001330$(call gb_LinkTarget_set_include,$(1),\
1331 -I$(call gb_UnpackedTarball_get_dir,fontconfig) \
1332 $$(INCLUDE) \
1333)
1334
David Tardon4eb68422013-05-24 14:16:03 +02001335endef
1336
1337endif # SYSTEM_FONTCONFIG
1338
David Tardon026dc562014-05-30 19:50:24 +02001339ifeq ($(ENABLE_GRAPHITE),TRUE)
1340
Michael Stahle3abec32014-02-11 15:57:18 +01001341ifneq ($(SYSTEM_GRAPHITE),)
Michael Stahl87e44332011-04-13 16:11:39 +00001342
Michael Stahl87e44332011-04-13 16:11:39 +00001343define gb_LinkTarget__use_graphite
Michael Stahl87e44332011-04-13 16:11:39 +00001344$(call gb_LinkTarget_set_include,$(1),\
1345 $$(INCLUDE) \
1346 $(GRAPHITE_CFLAGS) \
1347)
1348$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001349
Michael Stahl87e44332011-04-13 16:11:39 +00001350endef
1351
Michael Stahle3abec32014-02-11 15:57:18 +01001352else # !SYSTEM_GRAPHITE
Michael Stahl87e44332011-04-13 16:11:39 +00001353
Michael Stahl87e44332011-04-13 16:11:39 +00001354define gb_LinkTarget__use_graphite
Matúš Kukan7a030392012-10-29 23:29:37 +01001355$(call gb_LinkTarget_use_unpacked,$(1),graphite)
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001356$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001357 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001358 $$(INCLUDE) \
1359)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001360$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001361 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001362)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001363
Michael Stahl87e44332011-04-13 16:11:39 +00001364endef
1365
1366endif # SYSTEM_GRAPHITE
1367
David Tardon026dc562014-05-30 19:50:24 +02001368else # !ENABLE_GRAPHITE
1369
1370gb_LinkTarget__use_graphite :=
1371
1372endif # ENABLE_GRAPHITE
1373
Michael Stahl187194b2014-02-11 19:17:42 +01001374ifneq ($(SYSTEM_ICU),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001375
Peter Foleyb92a0d92012-12-25 17:39:43 -05001376gb_LinkTarget__use_icu_headers:=
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001377gb_ExternalProject__use_icu:=
Peter Foleyb92a0d92012-12-25 17:39:43 -05001378
Matúš Kukan6fad1752011-08-11 12:42:39 +02001379define gb_LinkTarget__use_icudata
1380$(call gb_LinkTarget_add_libs,$(1),-licudata)
1381
1382endef
David Tardon1a852392011-07-26 09:58:54 +02001383define gb_LinkTarget__use_icui18n
1384$(call gb_LinkTarget_add_libs,$(1),-licui18n)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001385
David Tardon1a852392011-07-26 09:58:54 +02001386endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001387define gb_LinkTarget__use_icuuc
1388$(call gb_LinkTarget_add_libs,$(1),-licuuc)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001389
Michael Stahlc74af0d2011-04-01 20:49:35 +00001390endef
1391
1392else # !SYSTEM_ICU
1393
Michael Stahle7592692014-03-14 11:23:52 +01001394$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1395 icu \
1396))
1397
Tor Lillqvist084db5f2012-09-24 10:37:25 +03001398ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001399gb_ICU_suffix:=lo
1400else
1401gb_ICU_suffix:=
1402endif
1403
Peter Foleyb92a0d92012-12-25 17:39:43 -05001404define gb_LinkTarget__use_icu_headers
Peter Foleyce9bf0f2013-03-23 12:32:31 -04001405$(call gb_LinkTarget_use_unpacked,$(1),icu)
Peter Foleyb92a0d92012-12-25 17:39:43 -05001406$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001407 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1408 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1409 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
Peter Foleyb92a0d92012-12-25 17:39:43 -05001410 $$(INCLUDE) \
1411)
1412
1413endef
1414
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001415define gb_ExternalProject__use_icu
1416$(call gb_ExternalProject_use_package,$(1),icu)
Fridrich Štrba851ca9c2013-01-25 10:29:59 +01001417
1418endef
1419
Peter Foleyf7452122012-11-04 08:46:44 -05001420# icudata and icui18n is called icudt and icuin when built with MSVC :-/
Michael Stahla92f80f2013-10-23 15:00:29 +02001421define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001422$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahla92f80f2013-10-23 15:00:29 +02001423
1424ifeq ($(OS),WNT)
1425$(call gb_LinkTarget_add_libs,$(1),\
1426 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icudt$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001427)
Michael Stahla92f80f2013-10-23 15:00:29 +02001428else
1429$(call gb_LinkTarget_add_libs,$(1),\
1430 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licudata$(gb_ICU_suffix) \
1431)
1432endif
Matúš Kukan6fad1752011-08-11 12:42:39 +02001433
1434endef
Michael Stahla92f80f2013-10-23 15:00:29 +02001435
1436define gb_LinkTarget__use_icui18n
1437$(call gb_LinkTarget_use_package,$(1),icu)
1438
1439ifeq ($(OS),WNT)
1440$(call gb_LinkTarget_add_libs,$(1),\
1441 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuin$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
1442)
1443else
1444$(call gb_LinkTarget_add_libs,$(1),\
1445 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licui18n$(gb_ICU_suffix) \
1446)
1447endif
1448
1449endef
1450
Michael Stahlc74af0d2011-04-01 20:49:35 +00001451define gb_LinkTarget__use_icuuc
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001452$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahla92f80f2013-10-23 15:00:29 +02001453
1454ifeq ($(OS),WNT)
1455$(call gb_LinkTarget_add_libs,$(1),\
1456 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuuc$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001457)
Michael Stahla92f80f2013-10-23 15:00:29 +02001458else
1459$(call gb_LinkTarget_add_libs,$(1),\
1460 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licuuc$(gb_ICU_suffix) \
1461)
1462endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001463
Michael Stahlc74af0d2011-04-01 20:49:35 +00001464endef
1465
1466endif # SYSTEM_ICU
1467
Fridrich Štrba9a943e52013-04-23 11:23:17 +02001468ifeq ($(ENABLE_HARFBUZZ),TRUE)
Michael Stahle3abec32014-02-11 15:57:18 +01001469ifneq ($(SYSTEM_HARFBUZZ),)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001470
1471define gb_LinkTarget__use_harfbuzz
1472$(call gb_LinkTarget_set_include,$(1),\
1473 $$(INCLUDE) \
1474 $(HARFBUZZ_CFLAGS) \
1475)
1476$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1477
1478endef
1479
Michael Stahle3abec32014-02-11 15:57:18 +01001480else # SYSTEM_HARFBUZZ != TRUE
Khaled Hosny7e389f42013-04-20 13:00:56 +02001481
Khaled Hosny7e389f42013-04-20 13:00:56 +02001482define gb_LinkTarget__use_harfbuzz
Michael Stahl8db02752013-05-07 23:28:45 +02001483$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl2f6261f2013-09-19 19:28:36 +02001484 $(HARFBUZZ_CFLAGS) \
Michael Stahl8db02752013-05-07 23:28:45 +02001485 $$(INCLUDE) \
1486)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001487$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1488$(call gb_LinkTarget_use_external_project,$(1),harfbuzz)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001489
1490endef
1491
1492endif # SYSTEM_HARFBUZZ
1493else # ENABLE_HARFBUZZ != YES
1494
1495gb_LinkTarget__use_harfbuzz :=
1496
1497endif # ENABLE_HARFBUZZ
Michael Stahl4a8919f2011-04-18 11:13:57 +00001498
Norbert Thiebaudbf6d1f72013-08-31 18:55:53 -05001499ifeq ($(DISABLE_OPENSSL),TRUE)
Andres Gomeze3f607e2013-04-11 10:24:25 +03001500
1501gb_ExternalProject__use_openssl:=
1502gb_LinkTarget__use_openssl_headers:=
1503gb_LinkTarget__use_openssl:=
1504
1505else # !DISABLE_OPENSSL
1506
Michael Stahle3abec32014-02-11 15:57:18 +01001507ifneq ($(SYSTEM_OPENSSL),)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001508
Peter Foley9ddba662012-12-28 11:19:06 -05001509gb_LinkTarget__use_openssl_headers:=
1510gb_ExternalProject__use_openssl:=
1511
Michael Stahl4a8919f2011-04-18 11:13:57 +00001512define gb_LinkTarget__use_openssl
1513$(call gb_LinkTarget_set_include,$(1),\
1514 $$(INCLUDE) \
1515 $(OPENSSL_CFLAGS) \
1516)
1517$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001518
Michael Stahl4a8919f2011-04-18 11:13:57 +00001519endef
1520
1521else # !SYSTEM_OPENSSL
1522
Michael Stahlf921e262014-03-13 19:36:48 +01001523$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1524 openssl \
1525))
1526
Peter Foley9ddba662012-12-28 11:19:06 -05001527define gb_ExternalProject__use_openssl
1528$(call gb_ExternalProject_use_package,$(1),openssl)
1529
1530endef
1531
1532define gb_LinkTarget__use_openssl_headers
1533$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001534 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
Peter Foley9ddba662012-12-28 11:19:06 -05001535 $$(INCLUDE) \
1536)
1537
1538endef
1539
Michael Stahl4a8919f2011-04-18 11:13:57 +00001540define gb_LinkTarget__use_openssl
Peter Foley9ddba662012-12-28 11:19:06 -05001541$(call gb_LinkTarget_use_package,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001542ifeq ($(OS),WNT)
Michael Stahl5b906622013-10-24 00:22:20 +02001543$(call gb_LinkTarget_add_libs,$(1),\
1544 $(call gb_UnpackedTarball_get_dir,openssl)/out32dll/ssleay32.lib \
1545 $(call gb_UnpackedTarball_get_dir,openssl)/out32dll/libeay32.lib \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001546)
1547else
Michael Stahl2f6261f2013-09-19 19:28:36 +02001548$(call gb_LinkTarget_add_libs,$(1),\
1549 $(call gb_UnpackedTarball_get_dir,openssl)/libssl.a \
1550 $(call gb_UnpackedTarball_get_dir,openssl)/libcrypto.a \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001551)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001552$(call gb_LinkTarget_use_external_project,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001553ifeq ($(OS),SOLARIS)
Michael Stahl80374352012-09-28 12:25:50 +02001554$(call gb_LinkTarget_add_libs,$(1),\
1555 -lnsl \
1556 -lsocket \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001557)
1558endif
1559endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001560
Michael Stahl4a8919f2011-04-18 11:13:57 +00001561endef
1562
1563endif # SYSTEM_OPENSSL
Andres Gomeze3f607e2013-04-11 10:24:25 +03001564endif # DISABLE_OPENSSL
Michael Stahl4a8919f2011-04-18 11:13:57 +00001565
Matúš Kukanc4560482011-07-28 01:03:23 +02001566
Norbert Thiebaudbf6d1f72013-08-31 18:55:53 -05001567ifeq ($(DISABLE_OPENSSL),TRUE)
Andres Gomez48d49752013-04-11 10:32:54 +03001568
1569define gb_LinkTarget__use_gnutls
1570$(call gb_LinkTarget_set_include,$(1),\
1571 $$(INCLUDE) \
1572 $(GNUTLS_CFLAGS) \
1573)
1574
1575$(call gb_LinkTarget_add_defs,$(1),\
1576 -DDISABLE_OPENSSL \
1577)
1578
1579$(call gb_LinkTarget_add_libs,$(1),$(GNUTLS_LIBS))
1580
1581endef
1582
1583define gb_LinkTarget__use_libgcrypt
1584$(call gb_LinkTarget_set_include,$(1),\
1585 $$(INCLUDE) \
1586 $(LIBGCRYPT_CFLAGS) \
1587)
1588
1589$(call gb_LinkTarget_add_libs,$(1),$(LIBGCRYPT_LIBS))
1590
1591endef
1592
1593else # !DISABLE_OPENSSL
1594
1595gb_LinkTarget__use_gnutls:=
1596gb_LinkTarget__use_libgcrypt:=
1597
1598endif # DISABLE_OPENSSL
1599
1600
Michael Stahle3abec32014-02-11 15:57:18 +01001601ifneq ($(SYSTEM_CDR),)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001602
1603define gb_LinkTarget__use_cdr
1604$(call gb_LinkTarget_set_include,$(1),\
1605 $$(INCLUDE) \
1606 $(CDR_CFLAGS) \
1607)
1608$(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1609
1610endef
1611
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001612else # !SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001613
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001614define gb_LinkTarget__use_cdr
David Tardonf16f3662013-05-24 13:48:03 +02001615$(call gb_LinkTarget_set_include,$(1),\
1616 -I$(call gb_UnpackedTarball_get_dir,libcdr)/inc \
1617 $$(INCLUDE) \
1618)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001619$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001620 $(call gb_UnpackedTarball_get_dir,libcdr)/src/lib/.libs/libcdr-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001621)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001622$(call gb_LinkTarget_use_external_project,$(1),libcdr)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001623endef
1624
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001625endif # SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001626
1627
Michael Stahle3abec32014-02-11 15:57:18 +01001628ifneq ($(SYSTEM_EBOOK),)
David Tardon316be1b2013-11-09 15:52:36 +01001629
1630define gb_LinkTarget__use_ebook
1631$(call gb_LinkTarget_set_include,$(1),\
1632 $$(INCLUDE) \
1633 $(EBOOK_CFLAGS) \
1634)
1635$(call gb_LinkTarget_add_libs,$(1),$(EBOOK_LIBS))
1636
1637endef
1638
1639gb_ExternalProject__use_ebook :=
1640
1641else # !SYSTEM_EBOOK
1642
1643define gb_LinkTarget__use_ebook
1644$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001645 -I${WORKDIR}/UnpackedTarball/libebook/inc \
David Tardon316be1b2013-11-09 15:52:36 +01001646 $$(INCLUDE) \
1647)
1648$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001649 $(call gb_UnpackedTarball_get_dir,libebook)/src/lib/.libs/libe-book-0.1$(gb_StaticLibrary_PLAINEXT) \
David Tardon316be1b2013-11-09 15:52:36 +01001650)
1651$(call gb_LinkTarget_use_external_project,$(1),libebook)
1652
1653endef
1654
1655define gb_ExternalProject__use_ebook
1656$(call gb_ExternalProject_use_external_project,$(1),libebook)
1657
1658endef
1659
1660endif # SYSTEM_EBOOK
1661
1662
Michael Stahle3abec32014-02-11 15:57:18 +01001663ifneq ($(SYSTEM_ETONYEK),)
David Tardon08ca3e42013-10-24 16:46:49 +02001664
1665define gb_LinkTarget__use_etonyek
1666$(call gb_LinkTarget_set_include,$(1),\
1667 $$(INCLUDE) \
1668 $(ETONYEK_CFLAGS) \
1669)
1670$(call gb_LinkTarget_add_libs,$(1),$(ETONYEK_LIBS))
1671
1672endef
1673
1674gb_ExternalProject__use_etonyek :=
1675
1676else # !SYSTEM_ETONYEK
1677
1678define gb_LinkTarget__use_etonyek
1679$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001680 -I${WORKDIR}/UnpackedTarball/libetonyek/inc \
David Tardon08ca3e42013-10-24 16:46:49 +02001681 $$(INCLUDE) \
1682)
1683$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001684 $(call gb_UnpackedTarball_get_dir,libetonyek)/src/lib/.libs/libetonyek-0.1$(gb_StaticLibrary_PLAINEXT) \
David Tardon08ca3e42013-10-24 16:46:49 +02001685)
1686$(call gb_LinkTarget_use_external_project,$(1),libetonyek)
1687
1688endef
1689
1690define gb_ExternalProject__use_etonyek
1691$(call gb_ExternalProject_use_external_project,$(1),libetonyek)
1692
1693endef
1694
1695endif # SYSTEM_ETONYEK
1696
1697
Michael Stahle3abec32014-02-11 15:57:18 +01001698ifneq ($(SYSTEM_FREEHAND),)
Fridrich Štrba67153d72013-10-31 12:42:50 +01001699
1700define gb_LinkTarget__use_freehand
1701$(call gb_LinkTarget_set_include,$(1),\
1702 $$(INCLUDE) \
1703 $(FREEHAND_CFLAGS) \
1704)
1705$(call gb_LinkTarget_add_libs,$(1),$(FREEHAND_LIBS))
1706
1707endef
1708
1709gb_ExternalProject__use_freehand :=
1710
1711else # !SYSTEM_FREEHAND
1712
1713define gb_LinkTarget__use_freehand
1714$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001715 -I${WORKDIR}/UnpackedTarball/libfreehand/inc \
Fridrich Štrba67153d72013-10-31 12:42:50 +01001716 $$(INCLUDE) \
1717)
1718$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001719 $(call gb_UnpackedTarball_get_dir,libfreehand)/src/lib/.libs/libfreehand-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba67153d72013-10-31 12:42:50 +01001720)
1721$(call gb_LinkTarget_use_external_project,$(1),libfreehand)
1722
1723endef
1724
1725define gb_ExternalProject__use_freehand
1726$(call gb_ExternalProject_use_external_project,$(1),libfreehand)
1727
1728endef
1729
1730endif # SYSTEM_FREEHAND
1731
1732
Michael Stahle3abec32014-02-11 15:57:18 +01001733ifneq ($(SYSTEM_ODFGEN),)
Fridrich Štrba93848e12013-05-02 20:25:51 +02001734
1735define gb_LinkTarget__use_odfgen
1736$(call gb_LinkTarget_set_include,$(1),\
1737 $$(INCLUDE) \
1738 $(ODFGEN_CFLAGS) \
1739)
1740$(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
1741
1742endef
1743
1744else # !SYSTEM_ODFGEN
1745
David Tardon36c3f912014-05-24 09:13:33 +02001746ifeq ($(COM),MSC)
1747
1748$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1749 odfgen \
1750))
1751
Fridrich Štrba93848e12013-05-02 20:25:51 +02001752define gb_LinkTarget__use_odfgen
David Tardon0f8a90c2013-05-24 13:49:11 +02001753$(call gb_LinkTarget_set_include,$(1),\
1754 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1755 $$(INCLUDE) \
1756)
David Tardon36c3f912014-05-24 09:13:33 +02001757$(call gb_LinkTarget_use_libraries,$(1),\
1758 odfgen \
Fridrich Štrba93848e12013-05-02 20:25:51 +02001759)
Fridrich Štrba93848e12013-05-02 20:25:51 +02001760
1761endef
1762
David Tardon36c3f912014-05-24 09:13:33 +02001763else # !MSC
1764
1765$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1766 libodfgen \
1767))
1768
1769define gb_LinkTarget__use_odfgen
1770$(call gb_LinkTarget_use_package,$(1),libodfgen)
1771
1772$(call gb_LinkTarget_set_include,$(1),\
1773 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1774 $$(INCLUDE) \
1775)
1776$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001777 -L$(call gb_UnpackedTarball_get_dir,libodfgen)/src/.libs -lodfgen-0.1 \
David Tardon36c3f912014-05-24 09:13:33 +02001778)
1779
1780endef
1781
1782endif
1783
Fridrich Štrba93848e12013-05-02 20:25:51 +02001784endif # SYSTEM_ODFGEN
1785
1786
David Tardonb421ce72014-05-24 08:39:54 +02001787ifneq ($(SYSTEM_REVENGE),)
1788
1789define gb_LinkTarget__use_revenge
1790$(call gb_LinkTarget_set_include,$(1),\
1791 $$(INCLUDE) \
1792 $(REVENGE_CFLAGS) \
1793)
1794$(call gb_LinkTarget_add_libs,$(1),$(REVENGE_LIBS))
1795
1796endef
1797
David Tardon7c9c7792014-05-25 13:06:57 +02001798gb_ExternalProject__use_revenge :=
1799
David Tardonb421ce72014-05-24 08:39:54 +02001800else # !SYSTEM_REVENGE
1801
1802ifeq ($(COM),MSC)
1803
1804$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1805 revenge \
1806))
1807
1808define gb_LinkTarget__use_revenge
1809$(call gb_LinkTarget_set_include,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001810 $(REVENGE_CFLAGS) \
David Tardonb421ce72014-05-24 08:39:54 +02001811 $$(INCLUDE) \
1812)
1813$(call gb_LinkTarget_use_libraries,$(1),\
1814 revenge \
1815)
1816
1817endef
1818
David Tardon7c9c7792014-05-25 13:06:57 +02001819define gb_ExternalProject__use_revenge
1820$(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,revenge)
1821
1822endef
1823
David Tardonb421ce72014-05-24 08:39:54 +02001824else # !MSC
1825
1826$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1827 librevenge \
1828))
1829
1830define gb_LinkTarget__use_revenge
1831$(call gb_LinkTarget_use_package,$(1),librevenge)
1832
1833$(call gb_LinkTarget_set_include,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001834 $(REVENGE_CFLAGS) \
David Tardonb421ce72014-05-24 08:39:54 +02001835 $$(INCLUDE) \
1836)
1837$(call gb_LinkTarget_add_libs,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001838 $(REVENGE_LIBS) \
David Tardonb421ce72014-05-24 08:39:54 +02001839)
1840endef
1841
David Tardon7c9c7792014-05-25 13:06:57 +02001842define gb_ExternalProject__use_revenge
1843$(call gb_ExternalProject_use_package,$(1),librevenge)
1844
1845endef
1846
David Tardonb421ce72014-05-24 08:39:54 +02001847endif # MSC
1848
1849endif # SYSTEM_REVENGE
1850
1851
Michael Stahle3abec32014-02-11 15:57:18 +01001852ifneq ($(SYSTEM_ABW),)
Fridrich Štrba10eaaac2014-01-13 17:01:32 +01001853
1854define gb_LinkTarget__use_abw
1855$(call gb_LinkTarget_set_include,$(1),\
1856 $$(INCLUDE) \
1857 $(ABW_CFLAGS) \
1858)
1859$(call gb_LinkTarget_add_libs,$(1),$(ABW_LIBS))
1860
1861endef
1862gb_ExternalProject__use_abw :=
1863
1864else # !SYSTEM_ABW
1865
1866define gb_LinkTarget__use_abw
1867$(call gb_LinkTarget_set_include,$(1),\
1868 -I$(call gb_UnpackedTarball_get_dir,libabw)/inc \
1869 $$(INCLUDE) \
1870)
1871$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001872 $(call gb_UnpackedTarball_get_dir,libabw)/src/lib/.libs/libabw-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba10eaaac2014-01-13 17:01:32 +01001873)
1874$(call gb_LinkTarget_use_external_project,$(1),libabw)
1875
1876endef
1877define gb_ExternalProject__use_abw
1878$(call gb_ExternalProject_use_external_project,$(1),libabw)
1879
1880endef
1881
1882endif # SYSTEM_ABW
1883
1884
Michael Stahle3abec32014-02-11 15:57:18 +01001885ifneq ($(SYSTEM_MSPUB),)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001886
1887define gb_LinkTarget__use_mspub
1888$(call gb_LinkTarget_set_include,$(1),\
1889 $$(INCLUDE) \
1890 $(MSPUB_CFLAGS) \
1891)
1892$(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1893
1894endef
1895
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001896else # !SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001897
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001898define gb_LinkTarget__use_mspub
Michael Stahl35ac39e2013-05-16 13:09:11 +02001899$(call gb_LinkTarget_set_include,$(1),\
1900 -I$(call gb_UnpackedTarball_get_dir,libmspub)/inc \
1901 $$(INCLUDE) \
1902)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001903$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001904 $(call gb_UnpackedTarball_get_dir,libmspub)/src/lib/.libs/libmspub-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001905)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001906$(call gb_LinkTarget_use_external_project,$(1),libmspub)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001907
1908endef
1909
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001910endif # SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001911
1912
Michael Stahle3abec32014-02-11 15:57:18 +01001913ifneq ($(SYSTEM_VISIO),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001914
1915define gb_LinkTarget__use_visio
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001916$(call gb_LinkTarget_set_include,$(1),\
1917 $$(INCLUDE) \
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001918 $(VISIO_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001919)
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001920$(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001921
1922endef
1923
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001924else # !SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001925
Matúš Kukanc6a63952011-07-28 17:29:44 +02001926define gb_LinkTarget__use_visio
Michael Stahlacc7f612013-05-16 13:14:37 +02001927$(call gb_LinkTarget_set_include,$(1),\
1928 -I$(call gb_UnpackedTarball_get_dir,libvisio)/inc \
1929 $$(INCLUDE) \
1930)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001931$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001932 $(call gb_UnpackedTarball_get_dir,libvisio)/src/lib/.libs/libvisio-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001933)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001934$(call gb_LinkTarget_use_external_project,$(1),libvisio)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001935
1936endef
1937
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001938endif # SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001939
1940
Michael Stahle3abec32014-02-11 15:57:18 +01001941ifneq ($(SYSTEM_WPD),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001942
1943define gb_LinkTarget__use_wpd
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001944$(call gb_LinkTarget_set_include,$(1),\
1945 $$(INCLUDE) \
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001946 $(WPD_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001947)
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001948$(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001949
1950endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001951gb_ExternalProject__use_wpd :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001952
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001953else # !SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001954
Fridrich Štrba4425db62012-09-24 13:17:45 +02001955define gb_LinkTarget__use_wpd
Michael Stahldb5c8c52013-05-16 13:28:14 +02001956$(call gb_LinkTarget_set_include,$(1),\
1957 $(WPD_CFLAGS) \
1958 $$(INCLUDE) \
1959)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001960$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001961 $(call gb_UnpackedTarball_get_dir,libwpd)/src/lib/.libs/libwpd-0.10$(gb_StaticLibrary_PLAINEXT) \
Michael Stahl34295432012-09-24 22:25:28 +02001962)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001963$(call gb_LinkTarget_use_external_project,$(1),libwpd)
Fridrich Štrba4425db62012-09-24 13:17:45 +02001964
1965endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001966define gb_ExternalProject__use_wpd
Michael Stahl2f6261f2013-09-19 19:28:36 +02001967$(call gb_ExternalProject_use_external_project,$(1),libwpd)
Michael Stahl2b7536a2012-10-05 21:17:25 +02001968
1969endef
Fridrich Štrba4425db62012-09-24 13:17:45 +02001970
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001971endif # SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001972
1973
Michael Stahle3abec32014-02-11 15:57:18 +01001974ifneq ($(SYSTEM_WPG),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001975
1976define gb_LinkTarget__use_wpg
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001977$(call gb_LinkTarget_set_include,$(1),\
1978 $$(INCLUDE) \
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001979 $(WPG_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001980)
Fridrich Štrba62c43b42011-10-05 10:15:40 +02001981$(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001982
1983endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001984gb_ExternalProject__use_wpg :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001985
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01001986else # !SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02001987
Matúš Kukanc6a63952011-07-28 17:29:44 +02001988define gb_LinkTarget__use_wpg
David Tardonc51a2542013-05-24 14:53:37 +02001989$(call gb_LinkTarget_set_include,$(1),\
1990 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
1991 $$(INCLUDE) \
1992)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001993$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001994 $(call gb_UnpackedTarball_get_dir,libwpg)/src/lib/.libs/libwpg-0.3$(gb_StaticLibrary_PLAINEXT) \
Michael Stahl53b7bdc2012-10-05 17:19:47 +02001995)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001996$(call gb_LinkTarget_use_external_project,$(1),libwpg)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001997
1998endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001999define gb_ExternalProject__use_wpg
Michael Stahl2f6261f2013-09-19 19:28:36 +02002000$(call gb_ExternalProject_use_external_project,$(1),libwpg)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002001
2002endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02002003
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002004endif # SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02002005
2006
Michael Stahle3abec32014-02-11 15:57:18 +01002007ifneq ($(SYSTEM_WPS),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002008
2009define gb_LinkTarget__use_wps
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002010$(call gb_LinkTarget_set_include,$(1),\
2011 $$(INCLUDE) \
Fridrich Štrbae991bba2011-10-05 10:18:53 +02002012 $(WPS_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002013)
Fridrich Štrbae991bba2011-10-05 10:18:53 +02002014$(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02002015
2016endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002017gb_ExternalProject__use_wps :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02002018
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002019else # !SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02002020
David Tardonf85d10f2014-05-30 15:35:48 +02002021ifeq ($(COM),MSC)
2022
2023$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2024 wps \
2025))
2026
Matúš Kukanc6a63952011-07-28 17:29:44 +02002027define gb_LinkTarget__use_wps
David Tardon6f9d8212013-05-24 14:58:31 +02002028$(call gb_LinkTarget_set_include,$(1),\
2029 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2030 $$(INCLUDE) \
2031)
David Tardonf85d10f2014-05-30 15:35:48 +02002032
2033$(call gb_LinkTarget_use_libraries,$(1),\
2034 wps \
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02002035)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002036
2037endef
David Tardonf85d10f2014-05-30 15:35:48 +02002038
2039else # !MSC
2040
2041$(eval $(call gb_Helper_register_packages_for_install,ooo, \
2042 libwps \
2043))
2044
2045define gb_LinkTarget__use_wps
2046$(call gb_LinkTarget_use_package,$(1),libwps)
2047
2048$(call gb_LinkTarget_set_include,$(1),\
2049 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2050 $$(INCLUDE) \
2051)
2052$(call gb_LinkTarget_add_libs,$(1),\
2053 -L$(call gb_UnpackedTarball_get_dir,libwps)/src/lib/.libs -lwps-0.3 \
2054)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002055
2056endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02002057
David Tardonf85d10f2014-05-30 15:35:48 +02002058endif # MSC
2059
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002060endif # SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02002061
2062
Michael Stahle3abec32014-02-11 15:57:18 +01002063ifneq ($(SYSTEM_MWAW),)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002064
2065define gb_LinkTarget__use_mwaw
2066$(call gb_LinkTarget_set_include,$(1),\
2067 $$(INCLUDE) \
2068 $(MWAW_CFLAGS) \
2069)
2070$(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
2071
2072endef
2073
2074else # !SYSTEM_MWAW
2075
David Tardon79211c12014-05-30 13:55:20 +02002076ifeq ($(COM),MSC)
2077
2078$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2079 mwaw \
2080))
2081
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002082define gb_LinkTarget__use_mwaw
Michael Stahlff718952013-05-16 13:11:36 +02002083$(call gb_LinkTarget_set_include,$(1),\
2084 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2085 $$(INCLUDE) \
2086)
David Tardon79211c12014-05-30 13:55:20 +02002087
2088$(call gb_LinkTarget_use_libraries,$(1),\
2089 mwaw \
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002090)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002091
2092endef
2093
David Tardon79211c12014-05-30 13:55:20 +02002094else # !MSC
2095
2096$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2097 libmwaw \
2098))
2099
2100define gb_LinkTarget__use_mwaw
2101$(call gb_LinkTarget_use_package,$(1),libmwaw)
2102
2103$(call gb_LinkTarget_set_include,$(1),\
2104 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2105 $$(INCLUDE) \
2106)
2107$(call gb_LinkTarget_add_libs,$(1),\
2108 -L$(call gb_UnpackedTarball_get_dir,libmwaw)/src/lib/.libs -lmwaw-0.3 \
2109)
2110
2111endef
2112
2113endif # MSC
2114
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002115endif # SYSTEM_MWAW
2116
2117
Michael Stahle3abec32014-02-11 15:57:18 +01002118ifneq ($(SYSTEM_LCMS2),)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002119
2120define gb_LinkTarget__use_lcms2
2121$(call gb_LinkTarget_set_include,$(1),\
2122 $$(INCLUDE) \
Peter Foleyf7452122012-11-04 08:46:44 -05002123 $(LCMS2_CFLAGS) \
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002124)
2125$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
2126
2127endef
2128
Peter Foley8905c0e2012-11-08 21:00:30 -05002129gb_ExternalProject__use_lcms2 :=
2130
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002131else # !SYSTEM_LCMS2
2132
Michael Stahl32a617d2014-02-17 11:23:19 +01002133$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2134 lcms2 \
2135))
2136
Peter Foley8905c0e2012-11-08 21:00:30 -05002137define gb_ExternalProject__use_lcms2
2138$(call gb_ExternalProject_use_package,$(1),lcms2)
2139
2140endef
2141
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002142ifeq ($(OS),ANDROID)
2143
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002144define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002145$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02002146$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002147 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02002148 $$(INCLUDE) \
2149)
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002150
2151endef
2152
2153else
2154
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002155define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002156$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02002157$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002158 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02002159 $$(INCLUDE) \
2160)
Michael Stahl25f65f22013-10-23 22:04:36 +02002161$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002162
2163endef
2164
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002165endif # ANDROID
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002166endif # SYSTEM_LCMS2
2167
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002168ifneq ($(ENABLE_LPSOLVE),)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002169
Michael Stahlab586f12014-02-11 19:25:30 +01002170ifneq ($(SYSTEM_LPSOLVE),)
Matúš Kukanc4560482011-07-28 01:03:23 +02002171
Peter Foley085346f2012-11-03 19:19:30 -04002172define gb_LinkTarget__use_lpsolve
Matúš Kukanc4560482011-07-28 01:03:23 +02002173$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
Peter Foley085346f2012-11-03 19:19:30 -04002174$(call gb_LinkTarget_add_defs,$(1),\
2175 -DSYSTEM_LPSOLVE \
Peter Foley29d5e292012-11-07 18:18:08 -05002176)
Matúš Kukanc4560482011-07-28 01:03:23 +02002177
2178endef
2179
2180else # !SYSTEM_LPSOLVE
2181
Peter Foley085346f2012-11-03 19:19:30 -04002182define gb_LinkTarget__use_lpsolve
2183$(call gb_LinkTarget_use_unpacked,$(1),lpsolve)
Michael Stahlb7d8ca82013-10-24 01:25:59 +02002184ifeq ($(COM),MSC)
2185$(call gb_LinkTarget_add_libs,$(1),\
2186 $(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55/lpsolve55.lib \
2187)
2188else
Michael Stahlb177b302013-10-23 21:33:51 +02002189$(call gb_LinkTarget_add_libs,$(1),\
2190 -L$(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55 -llpsolve55 \
Matúš Kukanc4560482011-07-28 01:03:23 +02002191)
Michael Stahlb7d8ca82013-10-24 01:25:59 +02002192endif
Peter Foley085346f2012-11-03 19:19:30 -04002193$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002194 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
Peter Foley085346f2012-11-03 19:19:30 -04002195 $$(INCLUDE) \
2196)
Matúš Kukanc4560482011-07-28 01:03:23 +02002197
2198endef
2199
Matúš Kukan083fa762014-02-27 17:08:09 +01002200$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2201 lpsolve \
2202))
2203
Matúš Kukanc4560482011-07-28 01:03:23 +02002204endif # SYSTEM_LPSOLVE
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002205
Matúš Kukan077bdc72014-03-27 14:51:46 +01002206else
2207
2208gb_LinkTarget__use_lpsolve :=
2209
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002210endif # ENABLE_LPSOLVE
2211
2212ifneq ($(ENABLE_COINMP),)
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002213
2214define gb_LinkTarget__use_coinmp
2215$(call gb_LinkTarget_use_package,$(1),coinmp)
2216ifeq ($(COM),MSC)
2217$(call gb_LinkTarget_add_libs,$(1),\
Tomofumi Yagicddbec72014-04-05 12:02:38 +09002218 $(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/MSVisualStudio/v9/$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release)/CoinMP.lib \
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002219)
2220else
2221$(call gb_LinkTarget_add_libs,$(1),\
2222 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cbc/src/.libs -lCbc -lCbcSolver \
2223 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cgl/src/.libs -lCgl \
2224 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/.libs -lClp \
2225 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/OsiClp/.libs -lOsiClp \
2226 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src/.libs -lCoinMP \
2227 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src/.libs -lCoinUtils \
2228 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Osi/src/Osi/.libs -lOsi \
2229)
2230endif
2231$(call gb_LinkTarget_set_include,$(1),\
2232 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src \
Caolán McNamara67b4b342014-06-06 14:32:09 +01002233 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src \
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002234 $$(INCLUDE) \
2235)
2236
2237endef
2238
2239$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2240 coinmp \
2241))
2242
Matúš Kukan077bdc72014-03-27 14:51:46 +01002243else
2244
2245gb_LinkTarget__use_coinmp :=
2246
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002247endif # ENABLE_COINMP
Matúš Kukanc4560482011-07-28 01:03:23 +02002248
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002249ifeq ($(ENABLE_GIO),TRUE)
Matúš Kukanc4560482011-07-28 01:03:23 +02002250
Matúš Kukan464b4332012-01-15 02:12:49 +01002251define gb_LinkTarget__use_gio
2252$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01002253 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00002254 $(GIO_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01002255)
2256
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002257$(call gb_LinkTarget_add_defs,$(1),\
Siqid0419802013-07-24 11:16:31 +02002258 -DENABLE_GIO \
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002259)
2260
Matúš Kukan464b4332012-01-15 02:12:49 +01002261$(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
2262
2263endef
2264
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002265else # ENABLE_GIO
2266
2267define gb_LinkTarget__use_gio
Caolán McNamara1e98bb42012-11-06 20:09:57 +00002268
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002269endef
2270
2271endif # ENABLE_GIO
2272
Siqid0419802013-07-24 11:16:31 +02002273ifeq ($(ENABLE_AVAHI),TRUE)
2274
2275define gb_LinkTarget__use_avahi
2276$(call gb_LinkTarget_set_include,$(1),\
2277 $$(INCLUDE) \
2278 $(AVAHI_CFLAGS) \
2279)
2280
2281$(call gb_LinkTarget_add_defs,$(1),\
2282 -DENABLE_AVAHI \
2283)
2284
2285$(call gb_LinkTarget_add_libs,$(1),$(AVAHI_LIBS))
2286
2287endef
2288
2289else # ENABLE_AVAHI
2290
David Tardon9ce38ef2013-11-05 07:03:08 +01002291gb_LinkTarget__use_avahi :=
Siqid0419802013-07-24 11:16:31 +02002292
2293endif # ENABLE_AVAHI
2294
2295
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02002296define gb_LinkTarget__use_gtk
2297$(call gb_LinkTarget_set_include,$(1),\
2298 $$(INCLUDE) \
2299 $(GTK_CFLAGS) \
2300)
2301
2302$(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
2303
David Tardonadb11052011-12-01 13:39:09 +01002304ifeq ($(ENABLE_GTK_PRINT),TRUE)
2305
2306$(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
2307
2308$(call gb_LinkTarget_set_include,$(1),\
2309 $$(INCLUDE) \
2310 $(GTK_PRINT_CFLAGS) \
2311)
2312
2313$(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
2314
2315endif
2316
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02002317endef
Michael Stahl4a8919f2011-04-18 11:13:57 +00002318
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02002319define gb_LinkTarget__use_gthread
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01002320$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02002321endef
2322
Caolán McNamara68ffb332012-09-14 11:31:50 +01002323ifeq ($(ENABLE_CUPS),TRUE)
2324
2325define gb_LinkTarget__use_cups
2326$(call gb_LinkTarget_add_defs,$(1),\
2327 -DENABLE_CUPS \
2328)
2329
2330$(call gb_LinkTarget_add_libs,$(1),\
2331 -lcups \
2332)
2333
2334endef
2335
2336else # ENABLE_CUPS
2337
2338define gb_LinkTarget__use_cups
2339
2340endef
2341
2342endif # ENABLE_DBUS
David Tardon1b717ce2011-11-02 13:00:48 +01002343
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002344ifeq ($(ENABLE_DBUS),TRUE)
David Tardon1b717ce2011-11-02 13:00:48 +01002345
2346define gb_LinkTarget__use_dbus
2347$(call gb_LinkTarget_set_include,$(1),\
2348 $$(INCLUDE) \
2349 $(DBUS_CFLAGS) \
2350)
2351
Matúš Kukan464b4332012-01-15 02:12:49 +01002352$(call gb_LinkTarget_add_defs,$(1),\
David Tardon1b717ce2011-11-02 13:00:48 +01002353 -DENABLE_DBUS \
2354)
2355
Norbert Thiebaud7c88b252013-08-30 23:05:04 -05002356ifeq ($(ENABLE_PACKAGEKIT),TRUE)
Rene Engelhardbea61492012-09-11 02:30:09 +02002357$(call gb_LinkTarget_add_defs,$(1),\
2358 -DENABLE_PACKAGEKIT \
2359)
2360endif # ENABLE_PACKAGEKIT
2361
David Tardon1b717ce2011-11-02 13:00:48 +01002362$(call gb_LinkTarget_add_libs,$(1),\
2363 $(DBUS_LIBS) \
2364)
2365
2366endef
2367
2368else # ENABLE_DBUS
2369
2370define gb_LinkTarget__use_dbus
2371
2372endef
2373
2374endif # ENABLE_DBUS
2375
2376
Bjoern Michaelsendd321062011-07-26 16:04:15 +02002377define gb_LinkTarget__use_dbusmenugtk
2378$(call gb_LinkTarget_set_include,$(1),\
2379 $$(INCLUDE) \
2380 $(DBUSMENUGTK_CFLAGS) \
2381)
2382
2383$(call gb_LinkTarget_add_libs,$(1),$(DBUSMENUGTK_LIBS))
2384
2385endef
2386
Eike Rathkea3a8b802012-03-16 22:14:54 +01002387
2388ifeq ($(ENABLE_TELEPATHY),TRUE)
2389
2390define gb_LinkTarget__use_telepathy
2391$(call gb_LinkTarget_set_include,$(1),\
2392 $$(INCLUDE) \
2393 $(TELEPATHY_CFLAGS) \
2394)
2395
Eike Rathkea3a8b802012-03-16 22:14:54 +01002396$(call gb_LinkTarget_add_libs,$(1),\
2397 $(TELEPATHY_LIBS) \
2398)
2399
2400endef
2401
2402else # !ENABLE_TELEPATHY
2403
Matúš Kukanfe327622012-08-09 00:15:52 +02002404gb_LinkTarget__use_telepathy :=
Eike Rathkea3a8b802012-03-16 22:14:54 +01002405
2406endif # ENABLE_TELEPATHY
2407
Michael Stahle3abec32014-02-11 15:57:18 +01002408ifneq ($(SYSTEM_LIBPNG),)
David Tardon6df9c472011-09-15 14:44:34 +02002409
2410define gb_LinkTarget__use_png
2411$(call gb_LinkTarget_set_include,$(1),\
2412 $$(INCLUDE) \
2413 $(LIBPNG_CFLAGS) \
2414)
2415
2416$(call gb_LinkTarget_add_libs,$(1),\
2417 $(LIBPNG_LIBS) \
2418)
2419
2420endef
2421
2422else # !SYSTEM_LIBPNG
2423
David Tardon6df9c472011-09-15 14:44:34 +02002424define gb_LinkTarget__use_png
Michael Stahl416b3212013-05-08 17:22:22 +02002425$(call gb_LinkTarget_set_include,$(1),\
2426 $(LIBPNG_CFLAGS) \
2427 $$(INCLUDE) \
2428)
Matúš Kukanf96d58b2012-09-08 18:13:20 +02002429$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon6df9c472011-09-15 14:44:34 +02002430 png \
2431)
Michael Stahl398ce442012-09-28 21:47:29 +02002432$(call gb_LinkTarget__use_zlib,$(1))
David Tardon6df9c472011-09-15 14:44:34 +02002433
2434endef
2435
2436endif # !SYSTEM_LIBPNG
2437
Michael Stahl50471a82011-12-06 19:17:52 +01002438
Michael Stahle3abec32014-02-11 15:57:18 +01002439ifneq ($(SYSTEM_CURL),)
Michael Stahl50471a82011-12-06 19:17:52 +01002440
2441define gb_LinkTarget__use_curl
2442$(call gb_LinkTarget_set_include,$(1),\
2443 $$(INCLUDE) \
2444 $(CURL_CFLAGS) \
2445)
2446$(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
2447
2448endef
2449
2450else # !SYSTEM_CURL
2451
Michael Stahl32a617d2014-02-17 11:23:19 +01002452$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2453 curl \
2454))
2455
Michael Stahl50471a82011-12-06 19:17:52 +01002456define gb_LinkTarget__use_curl
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002457$(call gb_LinkTarget_use_package,$(1),curl)
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01002458$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002459 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01002460 $$(INCLUDE) \
2461)
Michael Stahl936a1a92013-10-23 22:37:11 +02002462
2463ifeq ($(COM),MSC)
Michael Stahl714b93b2013-10-24 00:32:04 +02002464$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl548da052014-06-02 01:35:41 +02002465 $(call gb_UnpackedTarball_get_dir,curl)/lib/$(if $(MSVC_USE_DEBUG_RUNTIME),debug-dll,release-dll)/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),d)_imp.lib \
Michael Stahl50471a82011-12-06 19:17:52 +01002466)
Michael Stahl936a1a92013-10-23 22:37:11 +02002467else
2468$(call gb_LinkTarget_add_libs,$(1),\
2469 -L$(call gb_UnpackedTarball_get_dir,curl)/lib/.libs -lcurl \
2470)
2471endif
Michael Stahl50471a82011-12-06 19:17:52 +01002472
2473endef
2474
2475endif # SYSTEM_CURL
2476
Stephan Bergmann49313b02012-11-27 15:35:02 +01002477ifeq ($(ENABLE_VALGRIND),TRUE)
David Tardon3446cda2011-12-23 12:21:19 +01002478
2479define gb_LinkTarget__use_valgrind
2480$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmann49313b02012-11-27 15:35:02 +01002481 -DHAVE_VALGRIND_HEADERS \
David Tardon3446cda2011-12-23 12:21:19 +01002482)
2483
2484$(call gb_LinkTarget_set_include,$(1),\
2485 $$(INCLUDE) \
2486 $(VALGRIND_CFLAGS) \
2487)
2488
2489endef
2490
Stephan Bergmann49313b02012-11-27 15:35:02 +01002491else # !ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01002492
2493define gb_LinkTarget__use_valgrind
2494
2495endef
2496
Stephan Bergmann49313b02012-11-27 15:35:02 +01002497endif # ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01002498
Michael Stahl32db4992014-02-11 19:35:22 +01002499ifneq ($(SYSTEM_POPPLER),)
David Tardondba2d322012-02-18 18:54:35 +01002500
2501define gb_LinkTarget__use_poppler
David Tardondba2d322012-02-18 18:54:35 +01002502$(call gb_LinkTarget_set_include,$(1),\
2503 $(POPPLER_CFLAGS) \
2504 $$(INCLUDE) \
2505)
2506
2507$(call gb_LinkTarget_add_libs,$(1),\
2508 $(POPPLER_LIBS) \
2509)
2510
2511endef
2512
2513else # !SYSTEM_POPPLER
2514
David Tardondba2d322012-02-18 18:54:35 +01002515define gb_LinkTarget__use_poppler
Michael Stahl2f6261f2013-09-19 19:28:36 +02002516$(call gb_LinkTarget_use_external_project,$(1),poppler)
Peter Foleyfb1d11d2013-02-17 09:26:01 -05002517
David Tardon548b61a2012-02-21 06:58:02 +01002518$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbaeb276d12013-07-08 14:01:17 +02002519 -I$(call gb_UnpackedTarball_get_dir,poppler) \
2520 -I$(call gb_UnpackedTarball_get_dir,poppler)/poppler \
2521 -I$(call gb_UnpackedTarball_get_dir,poppler)/goo \
David Tardon548b61a2012-02-21 06:58:02 +01002522 $$(INCLUDE) \
David Tardondba2d322012-02-18 18:54:35 +01002523)
2524
Michael Stahl2f6261f2013-09-19 19:28:36 +02002525$(call gb_LinkTarget_add_libs,$(1),\
2526 $(call gb_UnpackedTarball_get_dir,poppler)/fofi/.libs/libfofi$(gb_StaticLibrary_PLAINEXT) \
2527 $(call gb_UnpackedTarball_get_dir,poppler)/goo/.libs/libgoo$(gb_StaticLibrary_PLAINEXT) \
2528 $(call gb_UnpackedTarball_get_dir,poppler)/poppler/.libs/libpoppler$(gb_StaticLibrary_PLAINEXT) \
David Tardon548b61a2012-02-21 06:58:02 +01002529)
2530
2531ifeq ($(OS),MACOSX)
Michael Stahl967986b2012-09-28 00:54:49 +02002532$(call gb_LinkTarget_add_libs,$(1),\
2533 -lobjc \
David Tardon548b61a2012-02-21 06:58:02 +01002534)
2535else ifeq ($(OS),WNT)
Michael Stahldc397aae2012-09-28 15:31:46 +02002536$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon548b61a2012-02-21 06:58:02 +01002537 advapi32 \
2538 gdi32 \
2539)
2540endif
2541
David Tardondba2d322012-02-18 18:54:35 +01002542endef
2543
2544endif # SYSTEM_POPPLER
2545
David Tardon3446cda2011-12-23 12:21:19 +01002546
Michael Stahl46648152014-02-11 16:33:18 +01002547ifneq ($(SYSTEM_CLUCENE),)
David Tardon22c60cb2012-04-07 15:50:47 +02002548
2549define gb_LinkTarget__use_clucene
2550$(call gb_LinkTarget_add_defs,$(1),\
2551 $(filter-out -I%,$(CLUCENE_CFLAGS)) \
2552)
2553
2554$(call gb_LinkTarget_set_include,$(1),\
2555 $(filter -I%,$(CLUCENE_CFLAGS)) \
2556 $$(INCLUDE) \
2557)
2558
2559$(call gb_LinkTarget_add_libs,$(1),\
2560 $(CLUCENE_LIBS) \
2561)
2562
2563endef
2564
2565else # !SYSTEM_CLUCENE
2566
2567define gb_LinkTarget__use_clucene
Michael Stahl28cde0c2013-05-07 23:47:27 +02002568$(call gb_LinkTarget_set_include,$(1),\
2569 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/core \
2570 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/shared \
2571 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/contribs-lib \
2572 $$(INCLUDE) \
2573)
2574
Michael Stahlc923f7d2012-04-07 23:22:08 +02002575$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon22c60cb2012-04-07 15:50:47 +02002576 clucene \
2577)
2578
2579endef
2580
Marcos Paulo de Souzaf70343b2014-02-12 06:53:02 -02002581$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
David Tardon22c60cb2012-04-07 15:50:47 +02002582 clucene \
2583))
2584
2585endif # SYSTEM_CLUCENE
2586
Peter Foley64402842011-12-22 16:34:35 -05002587define gb_LinkTarget__use_gobject
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01002588$(call gb_LinkTarget_add_libs,$(1),\
2589 $(GOBJECT_LIBS) \
2590)
2591
2592$(call gb_LinkTarget_set_include,$(1),\
2593 $$(INCLUDE) \
2594 $(GOBJECT_CFLAGS) \
2595)
Peter Foley64402842011-12-22 16:34:35 -05002596endef
2597
Michael Stahl5866b332014-02-11 18:56:33 +01002598ifneq ($(SYSTEM_HSQLDB),)
David Tardon579f52d2012-03-27 16:36:31 +02002599
2600define gb_LinkTarget__use_hsqldb
2601
2602$(call gb_LinkTarget_add_defs,$(1),\
2603 -DSYSTEM_HSQLDB \
2604 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
2605)
2606
2607endef
2608
2609else # !SYSTEM_HSQLDB
2610
2611define gb_LinkTarget__use_hsqldb
2612
2613endef
2614
2615endif # SYSTEM_HSQLDB
2616
David Tardon8bc7afb2012-04-05 10:53:08 +02002617
Michael Stahl5378dea2014-02-11 19:11:47 +01002618ifneq ($(SYSTEM_OPENLDAP),)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002619
2620define gb_LinkTarget__use_openldap
2621
2622$(call gb_LinkTarget_add_libs,$(1),\
2623 -lldap \
2624 -llber \
2625)
2626
2627endef
2628
Michael Stahl2f6261f2013-09-19 19:28:36 +02002629gb_ExternalProject__use_openldap :=
2630
Michael Stahl5378dea2014-02-11 19:11:47 +01002631else # !SYSTEM_OPENLDAP
Michael Stahle0ee0d42012-07-16 19:00:07 +02002632
Michael Stahle0ee0d42012-07-16 19:00:07 +02002633define gb_LinkTarget__use_openldap
Matúš Kukan7a030392012-10-29 23:29:37 +01002634$(call gb_LinkTarget_use_unpacked,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002635$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002636 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002637 $$(INCLUDE) \
2638)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002639$(call gb_LinkTarget_use_external_project,$(1),openldap)
2640$(call gb_LinkTarget_add_libs,$(1), \
2641 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/libldap/.libs/libldap.a \
2642 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/liblber/.libs/liblber.a \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002643)
2644
2645endef
2646
Michael Stahl2f6261f2013-09-19 19:28:36 +02002647define gb_ExternalProject__use_openldap
2648$(call gb_ExternalProject_use_external_project,$(1),openldap)
2649
2650endef
2651
Michael Stahle0ee0d42012-07-16 19:00:07 +02002652endif # SYSTEM_OPENLDAP
2653
2654
Javier Fernandezf53228c2013-05-10 18:21:30 +00002655ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE)
2656
Michael Stahl23647592014-02-11 19:04:20 +01002657ifneq ($(SYSTEM_FIREBIRD),)
Javier Fernandezf53228c2013-05-10 18:21:30 +00002658
Rene Engelhard0b68d702013-07-16 21:50:14 +02002659define gb_LinkTarget__use_libfbembed
Javier Fernandezf53228c2013-05-10 18:21:30 +00002660$(call gb_LinkTarget_set_include,$(1),\
2661 $(FIREBIRD_CFLAGS) \
2662 $$(INCLUDE) \
2663)
2664$(call gb_LinkTarget_add_libs,$(1),$(FIREBIRD_LIBS))
2665
2666endef
2667
2668# gb_LinkTarget__use_atomic_ops :=
2669# gb_LinkTarget__use_tommath :=
2670
2671else # !SYSTEM_FIREBIRD
2672
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +01002673#$(call gb_LinkTarget__use_libatomic_ops,$(1))
2674
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +01002675define gb_LinkTarget__use_libfbembed
2676$(call gb_LinkTarget_use_package,$(1),firebird)
Javier Fernandezf53228c2013-05-10 18:21:30 +00002677$(call gb_LinkTarget_set_include,$(1),\
Javier Fernandezf53228c2013-05-10 18:21:30 +00002678 $$(INCLUDE) \
Andrzej J.R. Hunt7309fda2013-07-16 22:40:47 +02002679 -I$(call gb_UnpackedTarball_get_dir,firebird)/gen/firebird/include \
Javier Fernandezf53228c2013-05-10 18:21:30 +00002680)
Michael Stahl37563db2013-10-22 22:22:49 +02002681ifeq ($(COM),MSC)
2682$(call gb_LinkTarget_add_libs,$(1),\
2683 $(call gb_UnpackedTarball_get_dir,firebird)/gen/firebird/bin/ifbembed.lib \
Javier Fernandezf53228c2013-05-10 18:21:30 +00002684)
Michael Stahl37563db2013-10-22 22:22:49 +02002685else
2686$(call gb_LinkTarget_add_libs,$(1),\
2687 -L$(call gb_UnpackedTarball_get_dir,firebird)/gen/firebird/lib -lfbembed \
2688)
2689endif
Javier Fernandezf53228c2013-05-10 18:21:30 +00002690
2691endef
2692
Javier Fernandezf53228c2013-05-10 18:21:30 +00002693# define gb_LinkTarget__use_tommath
2694# $(call gb_LinkTarget_set_include,$(1),\
2695# $(TOMMATH_CFLAGS) \
2696# $$(INCLUDE) \
2697# )
2698
2699# $(call gb_LinkTarget_add_libs,$(1),$(TOMMATH_LIBS))
2700
2701# endef
2702
2703endif # SYSTEM_FIREBIRD
2704
2705else # !ENABLE_FIREBIRD_SDBC
Michael Stahl6fa0b372014-02-12 17:01:35 +01002706
Javier Fernandezf53228c2013-05-10 18:21:30 +00002707gb_LinkTarget__use_firebird :=
2708# gb_LinkTarget__use_atomic_ops :=
2709# gb_LinkTarget__use_tommath :=
2710
2711endif # ENABLE_FIREBIRD_SDBC
2712
2713
Michael Stahl5866b332014-02-11 18:56:33 +01002714ifneq ($(SYSTEM_POSTGRESQL),)
David Tardon8bc7afb2012-04-05 10:53:08 +02002715
2716define gb_LinkTarget__use_postgresql
2717
David Tardon8bc7afb2012-04-05 10:53:08 +02002718$(call gb_LinkTarget_set_include,$(1),\
2719 $(POSTGRESQL_INC) \
2720 $$(INCLUDE) \
2721)
2722
2723$(call gb_LinkTarget_add_libs,$(1),\
2724 -lpq \
2725)
2726
2727$(call gb_LinkTarget_add_ldflags,$(1),\
2728 $(POSTGRESQL_LIB) \
2729)
2730
2731endef
2732
2733else # !SYSTEM_POSTGRESQL
2734
2735define gb_LinkTarget__use_postgresql
2736
Michael Stahl2f6261f2013-09-19 19:28:36 +02002737$(call gb_LinkTarget_use_external_project,$(1),postgresql)
David Tardoncb9823b2012-10-22 06:33:00 +02002738
David Tardon8bc7afb2012-04-05 10:53:08 +02002739$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlee8323e2013-05-08 00:19:40 +02002740 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \
2741 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002742 $$(INCLUDE) \
2743)
2744
Michael Stahl2f6261f2013-09-19 19:28:36 +02002745$(call gb_LinkTarget_add_libs,$(1),\
2746 $(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq/libpq$(gb_StaticLibrary_PLAINEXT) \
David Tardon8bc7afb2012-04-05 10:53:08 +02002747)
2748
Tor Lillqvistc2909892012-12-12 01:07:09 +02002749ifeq ($(OS)$(COM),WNTMSC)
Matúš Kukan5e32d152012-05-27 00:21:12 +02002750$(call gb_LinkTarget_use_external,$(1),openssl)
2751
Michael Stahldc397aae2012-09-28 15:31:46 +02002752$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon8bc7afb2012-04-05 10:53:08 +02002753 secur32 \
2754 ws2_32 \
David Tardon8bc7afb2012-04-05 10:53:08 +02002755)
David Tardon8af6aa62012-05-30 12:06:42 +02002756
David Tardon8bc7afb2012-04-05 10:53:08 +02002757endif
2758
2759endef
2760
David Tardon8bc7afb2012-04-05 10:53:08 +02002761endif # SYSTEM_POSTGRESQL
2762
Michael Stahl589d6342014-03-18 17:56:10 +01002763ifneq ($(WITH_MOZAB4WIN),)
2764
2765$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2766 moz_runtime \
2767))
Michael Stahlbf80dfc2013-10-31 11:00:47 +01002768
David Tardonc678a4c2012-04-05 17:59:36 +02002769define gb_LinkTarget__use_mozilla
2770
Michael Stahlbf80dfc2013-10-31 11:00:47 +01002771$(call gb_LinkTarget_use_unpacked,$(1),moz_lib)
2772$(call gb_LinkTarget_use_unpacked,$(1),moz_inc)
2773
David Tardonc678a4c2012-04-05 17:59:36 +02002774$(call gb_LinkTarget_add_defs,$(1),\
2775 -DMOZILLA_INTERNAL_API \
2776)
2777
2778$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlbf80dfc2013-10-31 11:00:47 +01002779 -I$(call gb_UnpackedTarball_get_dir,moz_inc) \
2780 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/addrbook \
2781 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/content \
2782 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/embed_base \
2783 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/intl \
2784 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/mime \
2785 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/mozldap \
2786 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/msgbase \
2787 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/necko \
2788 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/pref \
2789 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/profile \
2790 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/rdf \
2791 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/string \
2792 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/uconv \
2793 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/xpcom \
2794 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/xpcom_obsolete \
David Tardonc678a4c2012-04-05 17:59:36 +02002795 $$(INCLUDE) \
David Tardonc678a4c2012-04-05 17:59:36 +02002796)
2797
Michael Stahld2f62c32013-10-23 00:14:01 +02002798$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01002799 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nspr4.lib \
Michael Stahl3dadfa52013-10-29 14:34:56 +01002800 $(call gb_UnpackedTarball_get_dir,moz_lib)/xpcom.lib \
2801 $(call gb_UnpackedTarball_get_dir,moz_lib)/xpcom_core.lib \
David Tardonc678a4c2012-04-05 17:59:36 +02002802)
2803
David Tardonc678a4c2012-04-05 17:59:36 +02002804$(call gb_LinkTarget_add_defs,$(1),\
2805 -DMOZILLA_CLIENT \
2806 -DMOZ_REFLOW_PERF \
2807 -DMOZ_REFLOW_PERF_DSP \
2808 -DMOZ_XUL \
2809 -DOJI \
2810 -DWIN32 \
2811 -DXP_PC \
2812 -DXP_WIN \
2813 -DXP_WIN32 \
2814 -D_WINDOWS \
2815)
2816
2817ifeq ($(COM),GCC)
2818
2819$(call gb_LinkTarget_add_cxxflags,$(1),\
2820 -Wall \
2821 -Wcast-align \
2822 -Wconversion \
2823 -Wno-long-long \
2824 -Woverloaded-virtual \
2825 -Wpointer-arith \
2826 -Wsynth \
2827 -fno-rtti \
2828)
2829
2830else
2831
2832ifneq ($(DBG_LEVEL),0)
2833$(call gb_LinkTarget_add_defs,$(1),\
2834 -D_STL_NOFORCE_MANIFEST \
2835)
2836endif
2837
2838$(call gb_LinkTarget_add_libs,$(1),\
Christian Lohmaierc18dc122013-10-10 18:31:27 +02002839 $(call gb_UnpackedTarball_get_dir,moz_lib)/embed_base_s.lib \
2840 $(call gb_UnpackedTarball_get_dir,moz_lib)/mozreg_s.lib \
David Tardonc678a4c2012-04-05 17:59:36 +02002841)
2842
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002843endif # !GCC
David Tardonc678a4c2012-04-05 17:59:36 +02002844
David Tardonc678a4c2012-04-05 17:59:36 +02002845endef
2846
Michael Stahl589d6342014-03-18 17:56:10 +01002847endif # WITH_MOZAB4WIN
David Tardonc678a4c2012-04-05 17:59:36 +02002848
David Tardond4efa8b2012-04-28 20:48:14 +02002849ifeq ($(ENABLE_KDE),TRUE)
2850
2851define gb_LinkTarget__use_kde
2852$(call gb_LinkTarget_set_include,$(1),\
2853 $(filter -I%,$(KDE_CFLAGS)) \
2854 $$(INCLUDE) \
2855)
2856
2857$(call gb_LinkTarget_add_defs,$(1),\
2858 $(filter-out -I%,$(KDE_CFLAGS)) \
2859)
2860
2861$(call gb_LinkTarget_add_libs,$(1),\
2862 $(KDE_LIBS) \
2863)
2864
2865ifeq ($(COM),GCC)
2866$(call gb_LinkTarget_add_cxxflags,$(1),\
2867 -Wno-shadow \
2868)
2869endif
2870
2871endef
2872
2873else # !ENABLE_KDE
2874
2875define gb_LinkTarget__use_kde
2876
2877endef
2878
2879endif # ENABLE_KDE
2880
2881
2882ifeq ($(ENABLE_KDE4),TRUE)
2883
2884define gb_LinkTarget__use_kde4
2885$(call gb_LinkTarget_set_include,$(1),\
2886 $(filter -I%,$(KDE4_CFLAGS)) \
2887 $$(INCLUDE) \
2888)
2889
2890$(call gb_LinkTarget_add_defs,$(1),\
2891 $(filter-out -I%,$(KDE4_CFLAGS)) \
2892)
2893
2894$(call gb_LinkTarget_add_libs,$(1),\
2895 $(KDE4_LIBS) \
2896)
2897
2898ifeq ($(COM),GCC)
2899$(call gb_LinkTarget_add_cxxflags,$(1),\
2900 -Wno-shadow \
2901)
2902endif
2903
2904endef
2905
2906else # !ENABLE_KDE4
2907
2908define gb_LinkTarget__use_kde4
2909
2910endef
2911
2912endif # ENABLE_KDE4
2913
2914
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002915ifeq ($(ENABLE_TDE),TRUE)
David Tardond4efa8b2012-04-28 20:48:14 +02002916
2917define gb_LinkTarget__use_tde
2918$(call gb_LinkTarget_add_libs,$(1),\
2919 $(TDE_LIBS) \
2920)
2921
2922$(call gb_LinkTarget_set_include,$(1),\
2923 $$(INCLUDE) \
2924 $(TDE_CFLAGS) \
2925)
2926endef
2927
2928else # ! ENABLE_TDE
2929
2930define gb_LinkTarget__use_tde
2931
2932endef
2933
2934endif # ENABLE_TDE
2935
2936
2937ifeq ($(ENABLE_GCONF),TRUE)
2938
2939define gb_LinkTarget__use_gconf
2940$(call gb_LinkTarget_set_include,$(1),\
2941 $(filter -I%,$(GCONF_CFLAGS)) \
2942 $$(INCLUDE) \
2943)
2944
2945$(call gb_LinkTarget_add_defs,$(1),\
2946 $(filter-out -I%,$(GCONF_CFLAGS)) \
2947)
2948
2949$(call gb_LinkTarget_add_libs,$(1),\
2950 $(GCONF_LIBS) \
2951)
2952
2953endef
2954
2955else # !ENABLE_GCONF
2956
2957define gb_LinkTarget__use_gconf
2958
2959endef
2960
2961endif # ENABLE_GCONF
2962
2963
David Ostrovskye16ac692012-05-27 22:50:41 +02002964# PYTHON
Michael Stahl91926332012-11-27 15:50:53 +01002965# extra python_headers external because pyuno wrapper must not link python
Michael Stahl0443d0a2014-02-11 16:57:35 +01002966ifneq ($(SYSTEM_PYTHON),)
David Ostrovskye16ac692012-05-27 22:50:41 +02002967
Michael Stahl91926332012-11-27 15:50:53 +01002968define gb_LinkTarget__use_python_headers
David Ostrovskye16ac692012-05-27 22:50:41 +02002969$(call gb_LinkTarget_add_defs,$(1),\
2970 $(filter-out -I%,$(PYTHON_CFLAGS)) \
2971)
2972
2973$(call gb_LinkTarget_set_include,$(1),\
2974 $(filter -I%,$(PYTHON_CFLAGS)) \
2975 $$(INCLUDE) \
2976)
2977
Michael Stahl91926332012-11-27 15:50:53 +01002978endef
2979
2980define gb_LinkTarget__use_python
2981$(call gb_LinkTarget__use_python_headers,$(1))
2982
David Ostrovskye16ac692012-05-27 22:50:41 +02002983$(call gb_LinkTarget_add_libs,$(1),\
2984 $(PYTHON_LIBS) \
2985)
2986
2987endef
2988
2989else # !SYSTEM_PYTHON
2990
Michael Stahl720ca8e2014-03-18 18:24:15 +01002991$(eval $(call gb_Helper_register_packages_for_install,python,\
2992 python3 \
2993))
2994
Michael Stahl75a2c502012-12-04 13:47:22 +01002995# depend on external project because on MACOSX the Package is disabled...
Michael Stahl91926332012-11-27 15:50:53 +01002996define gb_LinkTarget__use_python_headers
Michael Stahl75a2c502012-12-04 13:47:22 +01002997$(call gb_LinkTarget_use_external_project,$(1),python3)
Michael Stahl91926332012-11-27 15:50:53 +01002998$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002999 -I$(call gb_UnpackedTarball_get_dir,python3) \
3000 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
3001 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
Michael Stahl91926332012-11-27 15:50:53 +01003002 $$(INCLUDE) \
3003)
3004
3005endef
3006
David Ostrovskye16ac692012-05-27 22:50:41 +02003007define gb_LinkTarget__use_python
Michael Stahl91926332012-11-27 15:50:53 +01003008$(call gb_LinkTarget__use_python_headers,$(1))
David Ostrovskye16ac692012-05-27 22:50:41 +02003009
3010ifeq ($(OS),WNT)
3011$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl5b7ccf32013-06-04 17:16:47 +02003012 $(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 +02003013)
3014else ifeq ($(OS),MACOSX)
3015$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01003016 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
David Ostrovskye16ac692012-05-27 22:50:41 +02003017)
3018else
Michael Stahlb6bcbb62013-04-21 14:34:50 +02003019$(call gb_LinkTarget_add_libs,$(1),\
3020 -L$(call gb_UnpackedTarball_get_dir,python3) \
3021 -lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02003022)
3023endif
3024
David Ostrovskye16ac692012-05-27 22:50:41 +02003025endef
3026
David Ostrovskye16ac692012-05-27 22:50:41 +02003027endif # SYSTEM_PYTHON
3028
Kohei Yoshida49b0b692012-09-04 15:05:35 -04003029# ORCUS
Kohei Yoshida02346aa2013-09-18 19:06:20 -04003030ifeq ($(ENABLE_ORCUS),TRUE)
3031
Michael Stahle3abec32014-02-11 15:57:18 +01003032ifneq ($(SYSTEM_LIBORCUS),)
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003033
3034define gb_LinkTarget__use_orcus
3035$(call gb_LinkTarget_set_include,$(1),\
3036 $$(INCLUDE) \
Matúš Kukana2d63fe2012-09-09 16:29:10 +02003037 $(ORCUS_CFLAGS) \
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003038)
Rene Engelhard26b80fc2013-04-13 19:29:33 +02003039$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
Rene Engelhardfb360f52013-04-13 16:17:29 +02003040endef
3041
3042define gb_LinkTarget__use_orcus-parser
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003043
3044endef
3045
Kohei Yoshida31f589b2012-08-30 23:26:59 -04003046else # !SYSTEM_LIBORCUS
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003047
Kohei Yoshidac8b7e982012-08-31 10:11:32 -04003048define gb_LinkTarget__use_orcus
Michael Stahl2f6261f2013-09-19 19:28:36 +02003049$(call gb_LinkTarget_use_external_project,$(1),liborcus)
Matúš Kukan1ee76032012-09-09 15:29:43 +02003050$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl10fc13c2013-05-06 23:35:13 +02003051 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
Matúš Kukan1ee76032012-09-09 15:29:43 +02003052 $$(INCLUDE) \
3053)
Michael Stahl2f6261f2013-09-19 19:28:36 +02003054$(call gb_LinkTarget_add_libs,$(1),\
Markus Mohrhard36788e92014-01-08 13:17:28 +01003055 $(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs/liborcus-0.8$(gb_StaticLibrary_PLAINEXT) \
Michael Stahl2f6261f2013-09-19 19:28:36 +02003056)
David Tardonf1035c12012-11-23 06:49:21 +01003057
Michael Stahladddbbc2014-02-11 18:40:09 +01003058$(if $(SYSTEM_BOOST), \
Stephan Bergmann3743cdb2013-02-17 22:58:21 +01003059 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
3060 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
3061)
David Tardonf1035c12012-11-23 06:49:21 +01003062
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003063endef
3064
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04003065define gb_LinkTarget__use_orcus-parser
Michael Stahl2f6261f2013-09-19 19:28:36 +02003066$(call gb_LinkTarget_use_external_project,$(1),liborcus)
Kohei Yoshidaecc884e2013-12-17 21:18:46 -05003067$(call gb_LinkTarget_set_include,$(1),\
3068 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3069 $$(INCLUDE) \
3070)
Michael Stahl2f6261f2013-09-19 19:28:36 +02003071$(call gb_LinkTarget_add_libs,$(1),\
Markus Mohrhard36788e92014-01-08 13:17:28 +01003072 $(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs/liborcus-parser-0.8$(gb_StaticLibrary_PLAINEXT) \
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04003073)
3074
3075endef
3076
Kohei Yoshida31f589b2012-08-30 23:26:59 -04003077endif # SYSTEM_LIBORCUS
David Ostrovskye16ac692012-05-27 22:50:41 +02003078
Kohei Yoshida02346aa2013-09-18 19:06:20 -04003079else # ENABLE_ORCUS != TRUE
3080
3081gb_LinkTarget__use_orcus :=
3082gb_LinkTarget__use_orcus-parser :=
3083
3084endif
Michael Stahl78b59b82012-09-27 21:45:47 +02003085
David Tardon49a4d362013-11-12 16:44:40 +01003086ifeq ($(ENABLE_EOT),TRUE)
3087
Michael Stahle3abec32014-02-11 15:57:18 +01003088ifneq ($(SYSTEM_LIBEOT),)
David Tardon49a4d362013-11-12 16:44:40 +01003089
3090define gb_LinkTarget__use_libeot
3091$(call gb_LinkTarget_set_include,$(1),\
3092 $$(INCLUDE) \
3093 $(LIBEOT_CFLAGS) \
3094)
3095$(call gb_LinkTarget_add_libs,$(1),$(LIBEOT_LIBS))
3096
3097endef
3098
3099gb_ExternalProject__use_libeot :=
3100
3101else # !SYSTEM_LIBEOT
3102
3103define gb_LinkTarget__use_libeot
3104$(call gb_LinkTarget_set_include,$(1),\
3105 -I$(call gb_UnpackedTarball_get_dir,libeot)/inc \
3106 $$(INCLUDE) \
3107)
3108$(call gb_LinkTarget_add_libs,$(1),\
3109 $(call gb_UnpackedTarball_get_dir,libeot)/.libs/libeot$(gb_StaticLibrary_PLAINEXT) \
3110)
3111$(call gb_LinkTarget_use_external_project,$(1),libeot)
3112
3113endef
3114
3115define gb_ExternalProject__use_libeot
3116$(call gb_ExternalProject_use_external_project,$(1),libeot)
3117
3118endef
3119
3120endif # SYSTEM_LIBEOT
3121
3122else # !ENABLE_EOT
3123
3124gb_LinkTarget__use_libeot :=
3125gb_ExternalProject__use_libeot :=
3126
3127endif # ENABLE_EOT
3128
Michael Stahl78b59b82012-09-27 21:45:47 +02003129### X11 stuff ###
3130
3131ifeq ($(GUIBASE),unx)
3132
Michael Stahl78b59b82012-09-27 21:45:47 +02003133ifeq ($(XRANDR_DLOPEN),FALSE)
3134
3135define gb_LinkTarget__use_Xrandr
Michael Stahl78b59b82012-09-27 21:45:47 +02003136$(call gb_LinkTarget_set_include,$(1),\
3137 $$(INCLUDE) \
3138 $(XRANDR_CFLAGS) \
3139)
3140
3141$(call gb_LinkTarget_add_libs,$(1),\
3142 $(XRANDR_LIBS) \
3143)
3144endef
3145
3146else # XRANDR_DLOPEN
3147
3148define gb_LinkTarget__use_Xrandr
Michael Stahl78b59b82012-09-27 21:45:47 +02003149$(call gb_LinkTarget_add_defs,$(1),\
3150 -DXRANDR_DLOPEN \
3151)
3152endef
3153
3154endif # XRANDR_DLOPEN
3155
3156define gb_LinkTarget__use_Xrender
Michael Stahl78b59b82012-09-27 21:45:47 +02003157$(call gb_LinkTarget_set_include,$(1),\
3158 $$(INCLUDE) \
3159 $(XRENDER_CFLAGS) \
3160)
3161
3162$(call gb_LinkTarget_add_libs,$(1),\
3163 $(XRENDER_LIBS) \
3164)
3165endef
3166
3167endif # GUIBASE=unx
3168
Tor Lillqvist35491072011-08-02 21:22:35 +03003169
Michael Meeksb440cfc2013-02-28 12:05:07 +00003170gb_ExternalProject__use_nss3:=
3171
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03003172ifeq (,$(filter DESKTOP,$(BUILD_TYPE)))
3173
Peter Foleyc003d252013-01-01 09:39:36 -05003174gb_LinkTarget__use_nss3:=
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03003175
3176else
3177
Michael Stahle3abec32014-02-11 15:57:18 +01003178ifneq ($(SYSTEM_NSS),)
David Tardonb6aa4842011-08-11 13:10:14 +02003179
David Tardon2b9dbc82012-08-13 06:57:51 +02003180define gb_LinkTarget__use_nss3
3181$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmannea641222012-11-19 16:40:33 +01003182 -DSYSTEM_NSS \
David Tardon2b9dbc82012-08-13 06:57:51 +02003183)
3184
David Tardonb6aa4842011-08-11 13:10:14 +02003185$(call gb_LinkTarget_set_include,$(1),\
3186 $$(INCLUDE) \
Tomas Chvatal75f77e62011-11-02 21:16:53 +01003187 $(NSS_CFLAGS) \
David Tardonb6aa4842011-08-11 13:10:14 +02003188)
3189
3190$(call gb_LinkTarget_add_libs,$(1),\
Tomas Chvatal75f77e62011-11-02 21:16:53 +01003191 $(NSS_LIBS) \
David Tardonb6aa4842011-08-11 13:10:14 +02003192)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003193
David Tardonb6aa4842011-08-11 13:10:14 +02003194endef
3195
David Tardon2b9dbc82012-08-13 06:57:51 +02003196define gb_LinkTarget__use_plc4
3197$(call gb_LinkTarget__use_nss3,$(1))
3198
3199endef
3200
David Tardon6ef46562013-02-04 10:04:07 +01003201define gb_LinkTarget__use_ssl3
3202$(call gb_LinkTarget__use_nss3,$(1))
3203
3204endef
3205
Michael Stahle3abec32014-02-11 15:57:18 +01003206else # !SYSTEM_NSS
David Tardonb6aa4842011-08-11 13:10:14 +02003207
Michael Stahlffae67c2014-03-13 19:51:19 +01003208$(eval $(call gb_Helper_register_packages_for_install,ooo, \
3209 nss \
3210))
3211
David Tardon2b9dbc82012-08-13 06:57:51 +02003212define gb_LinkTarget__use_nss3
Peter Foleyc003d252013-01-01 09:39:36 -05003213$(call gb_LinkTarget_use_package,$(1),nss)
David Tardon2b9dbc82012-08-13 06:57:51 +02003214$(call gb_LinkTarget_set_include,$(1),\
3215 $$(INCLUDE) \
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003216 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/public/nss \
3217 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/out/include \
David Tardon2b9dbc82012-08-13 06:57:51 +02003218)
3219
Michael Stahld2f62c32013-10-23 00:14:01 +02003220ifeq ($(COM),MSC)
3221$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003222 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nspr4.lib \
3223 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nss3.lib \
3224 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/smime3.lib \
David Tardon2b9dbc82012-08-13 06:57:51 +02003225)
Michael Stahld2f62c32013-10-23 00:14:01 +02003226else
3227$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003228 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib \
Michael Stahld2f62c32013-10-23 00:14:01 +02003229 -lnspr4 \
3230 -lnss3 \
3231 -lsmime3 \
3232)
3233endif
David Tardon2b9dbc82012-08-13 06:57:51 +02003234
3235endef
3236
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003237define gb_LinkTarget__use_plc4
Peter Foleyc003d252013-01-01 09:39:36 -05003238$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahld2f62c32013-10-23 00:14:01 +02003239ifeq ($(COM),MSC)
3240$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003241 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/plc4.lib \
David Tardonb6aa4842011-08-11 13:10:14 +02003242)
Michael Stahld2f62c32013-10-23 00:14:01 +02003243else
3244$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003245 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lplc4 \
Michael Stahld2f62c32013-10-23 00:14:01 +02003246)
3247endif
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003248
David Tardonb6aa4842011-08-11 13:10:14 +02003249endef
3250
David Tardon6ef46562013-02-04 10:04:07 +01003251define gb_LinkTarget__use_ssl3
3252$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahld2f62c32013-10-23 00:14:01 +02003253ifeq ($(COM),MSC)
3254$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003255 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/ssl3.lib \
David Tardon6ef46562013-02-04 10:04:07 +01003256)
Michael Stahld2f62c32013-10-23 00:14:01 +02003257else
3258$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003259 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lssl3 \
Michael Stahld2f62c32013-10-23 00:14:01 +02003260)
3261endif
David Tardon6ef46562013-02-04 10:04:07 +01003262
3263endef
3264
Michael Meeksb440cfc2013-02-28 12:05:07 +00003265define gb_ExternalProject__use_nss3
3266$(call gb_ExternalProject_use_package,$(1),nss)
Michael Meeksb440cfc2013-02-28 12:05:07 +00003267
3268endef
3269
Michael Stahle3abec32014-02-11 15:57:18 +01003270endif # SYSTEM_NSS
3271
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03003272endif # DESKTOP
David Tardonb6aa4842011-08-11 13:10:14 +02003273
Zolnai Tamás62fd6302014-04-18 12:55:56 +02003274ifeq ($(ENABLE_GLTF),TRUE)
3275
3276define gb_LinkTarget__use_libgltf
3277$(call gb_LinkTarget_set_include,$(1),\
3278 -I$(call gb_UnpackedTarball_get_dir,libgltf)/inc \
3279 $$(INCLUDE) \
3280)
3281
Zolnai Tamás6403f2b2014-06-25 15:19:41 +02003282ifeq ($(COM),MSC)
3283$(call gb_LinkTarget_add_libs,$(1),\
3284 $(call gb_UnpackedTarball_get_dir,libgltf)/build/win32/$(if $(MSVC_USE_DEBUG_RUNTIME),Debug/libgltf.lib,Release/libgltf.lib) \
Zolnai Tamás62fd6302014-04-18 12:55:56 +02003285)
Zolnai Tamás6403f2b2014-06-25 15:19:41 +02003286else
3287$(call gb_LinkTarget_add_libs,$(1),\
3288 $(call gb_UnpackedTarball_get_dir,libgltf)/src/.libs/libgltf-0.0$(gb_StaticLibrary_PLAINEXT) \
3289)
3290endif
3291
3292$(call gb_LinkTarget_use_external_project,$(1),libgltf)
3293
3294endef
3295
3296define gb_ExternalProject__use_libgltf
3297$(call gb_ExternalProject_use_external_project,$(1),libgltf)
3298
Zolnai Tamás62fd6302014-04-18 12:55:56 +02003299endef
3300
Zolnai Tamásaa5fe792014-04-10 13:33:58 +02003301define gb_LinkTarget__use_opencollada_parser
3302$(call gb_LinkTarget_set_include,$(1),\
3303 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
3304 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADAFramework/include \
3305 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADASaxFrameworkLoader/include \
3306 -I$(call gb_UnpackedTarball_get_dir,opencollada)/GeneratedSaxParser/include \
3307 $$(INCLUDE) \
3308)
3309
3310$(call gb_LinkTarget_use_static_libraries,$(1),\
3311 opencollada_parser \
3312)
3313endef
3314
Zolnai Tamásd57591702014-04-10 13:37:38 +02003315define gb_LinkTarget__use_collada2gltf
3316$(call gb_LinkTarget_set_include,$(1),\
3317 -I$(call gb_UnpackedTarball_get_dir,collada2gltf) \
3318 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/assetModifiers \
3319 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/GLTF \
3320 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/helpers \
3321 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/JSON \
3322 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/dependencies/json/include/rapidjson/ \
3323 $$(INCLUDE) \
3324)
3325
3326$(call gb_LinkTarget_use_static_libraries,$(1),\
3327 collada2gltf \
3328)
3329endef
3330
Zolnai Tamás62fd6302014-04-18 12:55:56 +02003331endif
3332
Michael Stahl2ee5f242011-09-15 14:01:27 +02003333### Jars ############################################################
3334
Michael Stahl5866b332014-02-11 18:56:33 +01003335ifneq ($(SYSTEM_HSQLDB),)
Michael Stahl666173b2012-08-15 20:24:59 +02003336
3337define gb_Jar__use_hsqldb
3338$(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
3339endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02003340define gb_JunitTest__use_hsqldb
3341$(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
3342endef
Michael Stahl666173b2012-08-15 20:24:59 +02003343
3344else # !SYSTEM_HSQLDB
3345
David Tardon2dec0672014-05-19 10:20:37 +02003346ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl376d1b52014-03-18 20:25:04 +01003347$(eval $(call gb_Helper_register_jars_for_install,OOO,ooo, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003348 hsqldb \
3349))
David Tardon2dec0672014-05-19 10:20:37 +02003350endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003351
Michael Stahl666173b2012-08-15 20:24:59 +02003352define gb_Jar__use_hsqldb
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003353$(call gb_Jar_use_jar,$(1),hsqldb)
Michael Stahl666173b2012-08-15 20:24:59 +02003354endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02003355define gb_JunitTest__use_hsqldb
3356$(call gb_JunitTest_use_jar,$(1),hsqldb)
3357endef
Michael Stahl666173b2012-08-15 20:24:59 +02003358
3359endif # SYSTEM_HSQLDB
3360
Michael Stahl2ee5f242011-09-15 14:01:27 +02003361
Rene Engelhard40facc42014-05-23 07:43:19 +02003362ifeq ($(ENABLE_SCRIPTING_BEANSHELL),TRUE)
3363
Michael Stahl7d2f7c62014-02-11 19:39:18 +01003364ifneq ($(SYSTEM_BSH),)
David Tardon3bcf9102011-10-04 09:44:48 +02003365
Michael Stahla4551262012-08-15 17:41:25 +02003366define gb_Jar__use_bsh
3367$(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
David Tardon3bcf9102011-10-04 09:44:48 +02003368endef
3369
3370else # !SYSTEM_BSH
3371
David Tardon2dec0672014-05-19 10:20:37 +02003372ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl8475eb92014-03-18 20:38:30 +01003373$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_bsh, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003374 bsh \
3375))
David Tardon2dec0672014-05-19 10:20:37 +02003376endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003377
Michael Stahla4551262012-08-15 17:41:25 +02003378define gb_Jar__use_bsh
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003379$(call gb_Jar_use_jar,$(1),bsh)
David Tardon3bcf9102011-10-04 09:44:48 +02003380endef
3381
3382endif # SYSTEM_BSH
3383
Rene Engelhard40facc42014-05-23 07:43:19 +02003384endif
3385
3386ifeq ($(ENABLE_SCRIPTING_JAVASCRIPT),TRUE)
Michael Stahl2ee5f242011-09-15 14:01:27 +02003387
Michael Stahl49dde4c2014-02-11 19:42:28 +01003388ifneq ($(SYSTEM_RHINO),)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003389
Michael Stahla4551262012-08-15 17:41:25 +02003390define gb_Jar__use_rhino
3391$(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003392endef
3393
3394else # !SYSTEM_RHINO
3395
David Tardon2dec0672014-05-19 10:20:37 +02003396ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl6474d1c2014-03-18 20:50:02 +01003397$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_rhino, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003398 js \
3399))
David Tardon2dec0672014-05-19 10:20:37 +02003400endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003401
Michael Stahla4551262012-08-15 17:41:25 +02003402define gb_Jar__use_rhino
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003403$(call gb_Jar_use_jar,$(1),js)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003404endef
3405
3406endif # SYSTEM_RHINO
3407
Rene Engelhard40facc42014-05-23 07:43:19 +02003408endif
3409
Michael Stahl7d2f7c62014-02-11 19:39:18 +01003410ifneq ($(SYSTEM_APACHE_COMMONS),)
David Tardon9b530e12012-04-07 10:07:35 +02003411
Michael Stahla4551262012-08-15 17:41:25 +02003412define gb_Jar__use_commons-codec
3413$(call gb_Jar_use_system_jar,$(1),$(COMMONS_CODEC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003414endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003415gb_ExternalProject__use_commons-codec :=
David Tardon9b530e12012-04-07 10:07:35 +02003416
Michael Stahla4551262012-08-15 17:41:25 +02003417define gb_Jar__use_commons-httpclient
3418$(call gb_Jar_use_system_jar,$(1),$(COMMONS_HTTPCLIENT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003419endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003420gb_ExternalProject__use_commons-httpclient :=
David Tardon9b530e12012-04-07 10:07:35 +02003421
Michael Stahla4551262012-08-15 17:41:25 +02003422define gb_Jar__use_commons-lang
3423$(call gb_Jar_usadd_linked_libse_system_jar,$(1),$(COMMONS_LANG_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003424endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003425gb_ExternalProject__use_commons-lang :=
David Tardon9b530e12012-04-07 10:07:35 +02003426
Michael Stahla4551262012-08-15 17:41:25 +02003427define gb_Jar__use_commons-logging
3428$(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003429endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003430gb_ExternalProject__use_commons-logging :=
David Tardon9b530e12012-04-07 10:07:35 +02003431
3432else # !SYSTEM_APACHE_COMMONS
3433
David Tardon2dec0672014-05-19 10:20:37 +02003434ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl2bec9f42014-03-18 21:54:33 +01003435$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
Caolán McNamara2b15c852014-03-25 09:31:52 +00003436 commons-logging-1.1.3 \
Michael Stahldb23d4b2013-10-24 23:10:27 +02003437))
David Tardon2dec0672014-05-19 10:20:37 +02003438endif
Michael Stahl87a723d2012-08-17 12:43:37 +02003439$(eval $(call gb_Helper_register_jars,OXT,\
Douglas Mencken7e470872014-05-20 12:55:56 -04003440 $(if $(filter TRUE,$(HAVE_JAVA6)),commons-codec-1.9,commons-codec-1.6) \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003441 commons-httpclient-3.1 \
Douglas Mencken7e470872014-05-20 12:55:56 -04003442 $(if $(filter TRUE,$(HAVE_JAVA6)),commons-lang3-3.3.1.jar,commons-lang-2.4) \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003443))
3444
Michael Stahla4551262012-08-15 17:41:25 +02003445define gb_Jar__use_commons-codec
Michael Stahl461d8302013-10-25 18:40:48 +02003446$(call gb_Jar_use_external_project,$(1),apache_commons_codec)
Douglas Mencken7e470872014-05-20 12:55:56 -04003447$(call gb_Jar_use_external_jar,$(1),$(call gb_UnpackedTarball_get_dir,apache_commons_codec)\
3448$(if $(filter TRUE,$(HAVE_JAVA6)),/dist/commons-codec-1.9.jar,/dist/commons-codec-1.6.jar),\
3449$(if $(filter TRUE,$(HAVE_JAVA6)),commons-codec-1.9.jar,commons-codec-1.6.jar)\
3450)
David Tardon9b530e12012-04-07 10:07:35 +02003451endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003452define gb_ExternalProject__use_commons-codec
3453$(call gb_ExternalProject_use_external_project,$(1),apache_commons_codec)
3454endef
David Tardon9b530e12012-04-07 10:07:35 +02003455
Michael Stahla4551262012-08-15 17:41:25 +02003456define gb_Jar__use_commons-httpclient
Michael Stahl461d8302013-10-25 18:40:48 +02003457$(call gb_Jar_use_external_project,$(1),apache_commons_httpclient)
3458$(call gb_Jar_use_external_jar,$(1),$(call gb_UnpackedTarball_get_dir,apache_commons_httpclient)/dist/commons-httpclient.jar,commons-httpclient-3.1.jar)
David Tardon9b530e12012-04-07 10:07:35 +02003459endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003460define gb_ExternalProject__use_commons-httpclient
3461$(call gb_ExternalProject_use_external_project,$(1),apache_commons_httpclient)
3462endef
David Tardon9b530e12012-04-07 10:07:35 +02003463
Michael Stahla4551262012-08-15 17:41:25 +02003464define gb_Jar__use_commons-lang
Michael Stahl461d8302013-10-25 18:40:48 +02003465$(call gb_Jar_use_external_project,$(1),apache_commons_lang)
Douglas Mencken7e470872014-05-20 12:55:56 -04003466$(call gb_Jar_use_external_jar,$(1),$(call gb_UnpackedTarball_get_dir,apache_commons_lang)\
3467$(if $(filter TRUE,$(HAVE_JAVA6)),/target/commons-lang3-3.3.1.jar,/dist/commons-lang-2.4.jar),\
3468$(if $(filter TRUE,$(HAVE_JAVA6)),commons-lang3-3.3.1.jar,commons-lang-2.4.jar)\
3469)
David Tardon9b530e12012-04-07 10:07:35 +02003470endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003471define gb_ExternalProject__use_commons-lang
3472$(call gb_ExternalProject_use_external_project,$(1),apache_commons_lang)
3473endef
David Tardon9b530e12012-04-07 10:07:35 +02003474
Michael Stahla4551262012-08-15 17:41:25 +02003475define gb_Jar__use_commons-logging
Michael Stahl461d8302013-10-25 18:40:48 +02003476$(call gb_Jar_use_external_project,$(1),apache_commons_logging)
Caolán McNamara2b15c852014-03-25 09:31:52 +00003477$(call gb_Jar_use_jar,$(1),commons-logging-1.1.3)
David Tardon9b530e12012-04-07 10:07:35 +02003478endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003479define gb_ExternalProject__use_commons-logging
Michael Stahla60427e2013-10-26 20:17:52 +02003480$(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
Michael Stahl2b7536a2012-10-05 21:17:25 +02003481endef
David Tardon9b530e12012-04-07 10:07:35 +02003482
3483endif # SYSTEM_APACHE_COMMONS
3484
3485
Michael Stahl32db4992014-02-11 19:35:22 +01003486ifneq ($(SYSTEM_JFREEREPORT),)
David Tardon9b530e12012-04-07 10:07:35 +02003487
Michael Stahla4551262012-08-15 17:41:25 +02003488define gb_Jar__use_flow-engine
3489$(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003490endef
3491
Michael Stahla4551262012-08-15 17:41:25 +02003492define gb_Jar__use_flute
3493$(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003494endef
3495
Michael Stahla4551262012-08-15 17:41:25 +02003496define gb_Jar__use_libbase
3497$(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003498endef
3499
Michael Stahla4551262012-08-15 17:41:25 +02003500define gb_Jar__use_libfonts
3501$(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003502endef
3503
Michael Stahla4551262012-08-15 17:41:25 +02003504define gb_Jar__use_libformula
3505$(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003506endef
3507
Michael Stahla4551262012-08-15 17:41:25 +02003508define gb_Jar__use_liblayout
3509$(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003510endef
3511
Michael Stahla4551262012-08-15 17:41:25 +02003512define gb_Jar__use_libloader
3513$(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003514endef
3515
Michael Stahla4551262012-08-15 17:41:25 +02003516define gb_Jar__use_librepository
3517$(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003518endef
3519
Michael Stahla4551262012-08-15 17:41:25 +02003520define gb_Jar__use_libserializer
3521$(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003522endef
3523
Michael Stahla4551262012-08-15 17:41:25 +02003524define gb_Jar__use_libxml
3525$(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003526endef
3527
Michael Stahla4551262012-08-15 17:41:25 +02003528define gb_Jar__use_sac
3529$(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003530endef
3531
3532else # !SYSTEM_JFREEREPORT
3533
David Tardon2dec0672014-05-19 10:20:37 +02003534ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl4c3626af2014-03-18 22:03:00 +01003535$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
Michael Stahl070ca1e2013-10-25 21:01:58 +02003536 flow-engine \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003537 flute-1.1.6 \
3538 libbase-1.1.6 \
3539 libfonts-1.1.6 \
3540 libformula-1.1.7 \
Michael Stahl070ca1e2013-10-25 21:01:58 +02003541 liblayout \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003542 libloader-1.1.6 \
3543 librepository-1.1.6 \
3544 libserializer-1.1.6 \
3545 libxml-1.1.7 \
3546 sac \
3547))
David Tardon2dec0672014-05-19 10:20:37 +02003548endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003549
Michael Stahla4551262012-08-15 17:41:25 +02003550define gb_Jar__use_flow-engine
Michael Stahl070ca1e2013-10-25 21:01:58 +02003551$(call gb_Jar_use_jar,$(1),flow-engine)
David Tardon9b530e12012-04-07 10:07:35 +02003552endef
3553
Michael Stahla4551262012-08-15 17:41:25 +02003554define gb_Jar__use_flute
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003555$(call gb_Jar_use_jar,$(1),flute-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003556endef
3557
Michael Stahla4551262012-08-15 17:41:25 +02003558define gb_Jar__use_libbase
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003559$(call gb_Jar_use_jar,$(1),libbase-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003560endef
3561
Michael Stahla4551262012-08-15 17:41:25 +02003562define gb_Jar__use_libfonts
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003563$(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003564endef
3565
Michael Stahla4551262012-08-15 17:41:25 +02003566define gb_Jar__use_libformula
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003567$(call gb_Jar_use_jar,$(1),libformula-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02003568endef
3569
Michael Stahla4551262012-08-15 17:41:25 +02003570define gb_Jar__use_liblayout
Michael Stahl070ca1e2013-10-25 21:01:58 +02003571$(call gb_Jar_use_jar,$(1),liblayout)
David Tardon9b530e12012-04-07 10:07:35 +02003572endef
3573
Michael Stahla4551262012-08-15 17:41:25 +02003574define gb_Jar__use_libloader
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003575$(call gb_Jar_use_jar,$(1),libloader-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003576endef
3577
Michael Stahla4551262012-08-15 17:41:25 +02003578define gb_Jar__use_librepository
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003579$(call gb_Jar_use_jar,$(1),librepository-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003580endef
3581
Michael Stahla4551262012-08-15 17:41:25 +02003582define gb_Jar__use_libserializer
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003583$(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003584endef
3585
Michael Stahla4551262012-08-15 17:41:25 +02003586define gb_Jar__use_libxml
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003587$(call gb_Jar_use_jar,$(1),libxml-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02003588endef
3589
Michael Stahla4551262012-08-15 17:41:25 +02003590define gb_Jar__use_sac
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003591$(call gb_Jar_use_jar,$(1),sac)
David Tardon9b530e12012-04-07 10:07:35 +02003592endef
3593
3594endif # SYSTEM_JFREEREPORT
3595
David Tardonc2eca352012-12-02 10:51:37 +01003596
3597# Executables
3598
David Tardonedf67302012-12-30 12:27:04 +01003599# FIXME: the library target should be for build too
3600define gb_Executable__register_bestreversemap
3601$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
3602 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
3603)
3604endef
3605
David Tardonceb0d062012-12-30 13:11:43 +01003606# TODO depending on the whole URE might be overkill, but I do not have a
3607# Windows machine to debug it...
3608# FIXME: the library target should be for build too
3609define gb_Executable__register_climaker
3610$(call gb_Executable_add_runtime_dependencies,climaker,\
3611 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003612 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003613 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03003614 $(call gb_UnoApi_get_target,udkapi) \
David Tardonceb0d062012-12-30 13:11:43 +01003615)
3616endef
3617
David Tardon6c1614a2014-01-08 13:49:46 +01003618define gb_Executable__register_cppumaker
3619$(call gb_Executable_add_runtime_dependencies,cppumaker,\
3620 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
3621)
3622endef
3623
Matúš Kukane1b51e72013-09-27 09:41:09 +02003624gb_Gallery__UNO_COMPONENTS := \
3625 comphelper/util/comphelp \
3626 configmgr/source/configmgr \
3627 drawinglayer/drawinglayer \
Matúš Kukane1b51e72013-09-27 09:41:09 +02003628 framework/util/fwk \
3629 i18npool/util/i18npool \
3630 package/source/xstor/xstor \
3631 package/util/package2 \
3632 sax/source/expatwrap/expwrap \
3633 sfx2/util/sfx \
3634 svgio/svgio \
3635 svx/util/svx \
3636 svx/util/svxcore \
3637 ucb/source/core/ucb1 \
3638 ucb/source/ucp/file/ucpfile1 \
3639 unoxml/source/service/unoxml
3640
Matúš Kukanbae52ee2013-05-16 09:17:57 +02003641# This is used to determine what we need for 'build' platform.
Matúš Kukan9555b5b2013-06-14 12:48:20 +02003642define gb_Executable__register_gengal
Matúš Kukan94b68822013-06-17 10:41:18 +02003643$(call gb_Executable_add_runtime_dependencies,gengal,\
Matúš Kukane1b51e72013-09-27 09:41:09 +02003644 $(foreach component,$(gb_Gallery__UNO_COMPONENTS) \
Matúš Kukan85c6f802013-05-23 23:01:05 +02003645 ,$(call gb_ComponentTarget_get_target_for_build,$(component))) \
David Tardon1546c292013-05-07 20:41:41 +02003646 $(call gb_AllLangResTarget_get_target,ofa) \
David Tardon1546c292013-05-07 20:41:41 +02003647 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Riccardo Magliocchettib75fae72013-06-06 18:52:57 +02003648 $(if $(filter-out MACOSX WNT,$(OS_FOR_BUILD)),$(if $(ENABLE_HEADLESS),, \
Caolan McNamara48e70ad2013-05-15 10:30:18 +01003649 $(call gb_Library_get_target,vclplug_svp) \
Riccardo Magliocchettib75fae72013-06-06 18:52:57 +02003650 )) \
Matúš Kukan8b162f22013-09-27 10:58:28 +02003651 $(call gb_Package_get_target_for_build,postprocess_registry) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003652 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003653 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
David Tardon1546c292013-05-07 20:41:41 +02003654 $(call gb_UnoApi_get_target,offapi) \
3655 $(call gb_UnoApi_get_target,udkapi) \
3656)
3657endef
3658
Michael Stahl187194b2014-02-11 19:17:42 +01003659ifeq ($(SYSTEM_ICU),)
David Tardonedf67302012-12-30 12:27:04 +01003660
3661define gb_Executable__register_gendict
3662$(call gb_Executable_add_runtime_dependencies,gendict,\
3663 $(call gb_Package_get_target_for_build,icu) \
3664)
3665endef
3666
3667endif
3668
David Tardonceb0d062012-12-30 13:11:43 +01003669define gb_Executable__register_idlc
3670$(call gb_Executable_add_runtime_dependencies,idlc,\
David Tardonce038cf2013-10-20 20:43:46 +02003671 $(call gb_ExternalExecutable_get_dependencies,ucpp) \
David Tardonceb0d062012-12-30 13:11:43 +01003672)
3673endef
3674
David Tardonedf67302012-12-30 12:27:04 +01003675define gb_Executable__register_localize
3676$(call gb_Executable_add_runtime_dependencies,localize,\
3677 $(foreach exec,cfgex helpex propex transex3 treex uiex ulfex xrmex,\
3678 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
3679 ) \
3680)
3681endef
3682
Michael Stahl4c51feb2013-09-21 01:39:41 +02003683# FIXME ure/services.rdb needs cleanup
Stephan Bergmannab149c72013-04-24 10:42:40 +02003684# The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
David Tardonedf67302012-12-30 12:27:04 +01003685# due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
3686# FIXME: the library target should be for build too
3687define gb_Executable__register_saxparser
3688$(call gb_Executable_add_runtime_dependencies,saxparser,\
3689 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003690 $(call gb_Rdb_get_target_for_build,saxparser) \
3691 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003692 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03003693 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01003694)
3695endef
3696
Stephan Bergmannab149c72013-04-24 10:42:40 +02003697# NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
David Tardonedf67302012-12-30 12:27:04 +01003698# required due to the settings for URE_SERVICES and URE_TYPES in
3699# cppuhelper/source/unorc
3700# FIXME: the library target should be for build too
3701define gb_Executable__register_uno
3702$(call gb_Executable_add_runtime_dependencies,uno,\
3703 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003704 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003705 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03003706 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01003707)
3708endef
3709
3710
3711# External executables
3712
Michael Stahl379f9782014-02-11 16:49:19 +01003713ifneq ($(SYSTEM_LIBXML_FOR_BUILD),)
David Tardonc2eca352012-12-02 10:51:37 +01003714
3715gb_ExternalExecutable__register_xmllint :=
3716
3717else # ! SYSTEM_LIBXML_FOR_BUILD
3718
3719define gb_ExternalExecutable__register_xmllint
David Tardondbac8f52014-04-18 18:34:40 +02003720$(call gb_ExternalExecutable_set_internal,xmllint,$(WORKDIR_FOR_BUILD)/UnpackedTarball/xml2/$(if $(filter MSC,$(COM)),win32/bin.msvc)/xmllint$(gb_Executable_EXT_for_build),xml2)
Michael Stahle6c47b02013-10-22 18:47:56 +02003721$(call gb_ExternalExecutable_add_dependencies,xmllint,$(call gb_Package_get_target,xml2))
David Tardonc2eca352012-12-02 10:51:37 +01003722
3723endef
3724
3725endif # SYSTEM_LIBXML_FOR_BUILD
3726
Michael Stahle3abec32014-02-11 15:57:18 +01003727ifneq ($(SYSTEM_LIBXSLT_FOR_BUILD),)
David Tardonc2eca352012-12-02 10:51:37 +01003728
3729gb_ExternalExecutable__register_xsltproc :=
3730
3731else # ! SYSTEM_LIBXSLT_FOR_BUILD
3732
3733define gb_ExternalExecutable__register_xsltproc
David Tardondbac8f52014-04-18 18:34:40 +02003734$(call gb_ExternalExecutable_set_internal,xsltproc,$(WORKDIR_FOR_BUILD)/UnpackedTarball/xslt/$(if $(filter MSC,$(COM)),win32/bin.msvc,xsltproc)/xsltproc$(gb_Executable_EXT_for_build),xslt)
Peter Foley52e47b62013-02-06 17:59:18 -05003735$(call gb_ExternalExecutable_add_dependencies,xsltproc,$(call gb_Package_get_target,xslt))
David Tardonc2eca352012-12-02 10:51:37 +01003736
3737endef
3738
3739endif # SYSTEM_LIBXSLT_FOR_BUILD
3740
David Tardonce038cf2013-10-20 20:43:46 +02003741ifneq (,$(SYSTEM_UCPP))
3742
3743gb_ExternalExecutable__register_ucpp :=
3744
3745else # ! SYSTEM_UCPP
3746
3747define gb_ExternalExecutable__register_ucpp
David Tardon489d2ea2013-10-21 08:17:32 +02003748$(call gb_ExternalExecutable_set_internal,ucpp,$(INSTDIR_FOR_BUILD)/$(SDKDIRNAME)/bin/ucpp$(gb_Executable_EXT_for_build))
David Tardonce038cf2013-10-20 20:43:46 +02003749
3750endef
3751
3752endif # SYSTEM_UCPP
3753
Matúš Kukane4826722013-03-05 22:03:38 +01003754ifeq (,$(PYTHON_FOR_BUILD))
David Tardonc2eca352012-12-02 10:51:37 +01003755
3756define gb_ExternalExecutable__register_python
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003757ifeq ($(OS),MACOSX)
3758
3759# use set_external, to avoid having the command added as prerequisite for the
3760# targets that make use of it. (Otherwise make will choke as it doesn't have a
3761# matching rule to build that specific file)
3762$(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))
3763# the Zip ensures that internal python has been built (cannot use the Package
3764# target, as that is not used on Mac)
David Tardon45a5c262013-05-16 13:36:24 +02003765$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003766
3767else
3768
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003769$(call gb_ExternalExecutable_set_internal,python,$(INSTROOT)/$(LIBO_BIN_FOLDER)/$(if $(filter WNT,$(OS)),python-core-$(PYTHON_VERSION)/bin/python.exe,python.bin))
Stephan Bergmann233610f2014-03-19 11:24:13 +01003770$(call gb_ExternalExecutable_set_precommand,python,$(subst $$,$$$$,$(gb_Python_PRECOMMAND)))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003771$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
3772
3773endif
David Tardonc2eca352012-12-02 10:51:37 +01003774
3775endef
3776
Matúš Kukane4826722013-03-05 22:03:38 +01003777else
3778
3779define gb_ExternalExecutable__register_python
3780$(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
3781
3782endef
3783
3784endif # PYTHON_FOR_BUILD
David Tardonc2eca352012-12-02 10:51:37 +01003785
David Tardon63069262012-12-29 12:56:24 +01003786ifneq ($(SYSTEM_GENBRK),)
3787
3788define gb_ExternalExecutable__register_genbrk
3789$(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
3790
3791endef
3792
3793else # ! SYSTEM_GENBRK
3794
3795define gb_ExternalExecutable__register_genbrk
David Tardondbac8f52014-04-18 18:34:40 +02003796$(call gb_ExternalExecutable_set_internal,genbrk,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/genbrk$(gb_Executable_EXT_for_build),icu)
Stephan Bergmann58d80a62014-03-19 10:39:40 +01003797$(call gb_ExternalExecutable_set_precommand,genbrk,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01003798$(call gb_ExternalExecutable_add_dependencies,genbrk,\
3799 $(call gb_Package_get_target_for_build,icu) \
3800)
3801
3802endef
3803
3804endif
3805
3806ifneq ($(SYSTEM_GENCCODE),)
3807
3808define gb_ExternalExecutable__register_genccode
3809$(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
3810
3811endef
3812
3813else # ! SYSTEM_GENCCODE
3814
3815define gb_ExternalExecutable__register_genccode
David Tardondbac8f52014-04-18 18:34:40 +02003816$(call gb_ExternalExecutable_set_internal,genccode,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/genccode$(gb_Executable_EXT_for_build),icu)
Stephan Bergmann58d80a62014-03-19 10:39:40 +01003817$(call gb_ExternalExecutable_set_precommand,genccode,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01003818$(call gb_ExternalExecutable_add_dependencies,genccode,\
3819 $(call gb_Package_get_target_for_build,icu) \
3820)
3821
3822endef
3823
3824endif
3825
3826ifneq ($(SYSTEM_GENCMN),)
3827
3828define gb_ExternalExecutable__register_gencmn
3829$(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
3830
3831endef
3832
3833else # ! SYSTEM_GENCMN
3834
3835define gb_ExternalExecutable__register_gencmn
David Tardondbac8f52014-04-18 18:34:40 +02003836$(call gb_ExternalExecutable_set_internal,gencmn,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/gencmn$(gb_Executable_EXT_for_build),icu)
Stephan Bergmann58d80a62014-03-19 10:39:40 +01003837$(call gb_ExternalExecutable_set_precommand,gencmn,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01003838$(call gb_ExternalExecutable_add_dependencies,gencmn,\
3839 $(call gb_Package_get_target_for_build,icu) \
3840)
3841
3842endef
3843
3844endif
3845
Michael Stahlc74af0d2011-04-01 20:49:35 +00003846# vim: set noet sw=4 ts=4: