blob: f10c68f4df9536830411d680b954764f4425dbb0 [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) \
David Tardon7515b1a2014-07-17 17:27:05 +0200918 $(LIBXML_CFLAGS) \
919)
920
921$(call gb_LinkTarget_add_libs,$(1),\
922 $(LIBXML_LIBS) \
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500923)
924
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200925ifeq ($(COM),MSC)
David Tardon7515b1a2014-07-17 17:27:05 +0200926$(call gb_LinkTarget_use_external,$(1),icu_headers)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200927endif
928
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500929endef
930define gb_ExternalProject__use_libxml2
931$(call gb_ExternalProject_use_package,$(1),xml2)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100932
David Tardon7515b1a2014-07-17 17:27:05 +0200933ifeq ($(COM),MSC)
934$(call gb_ExternalProject_use_external_project,$(1),icu)
935endif
936
Michael Stahlc74af0d2011-04-01 20:49:35 +0000937endef
938
939endif # SYSTEM_LIBXML
940
941
Michael Stahle3abec32014-02-11 15:57:18 +0100942ifneq ($(SYSTEM_LIBXSLT),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000943
944define gb_LinkTarget__use_libxslt
945$(call gb_LinkTarget_set_include,$(1),\
946 $$(INCLUDE) \
947 $(LIBXSLT_CFLAGS) \
948)
949$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100950
Michael Stahlc74af0d2011-04-01 20:49:35 +0000951endef
952
David Tardonab03e872012-08-15 07:20:13 +0200953define gb_LinkTarget__use_libexslt
954$(call gb_LinkTarget_set_include,$(1),\
955 $$(INCLUDE) \
956 $(LIBEXSLT_CFLAGS) \
957)
958
959$(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
960
961endef
962
Michael Stahlc74af0d2011-04-01 20:49:35 +0000963else # !SYSTEM_LIBXSLT
964
Michael Stahl32a617d2014-02-17 11:23:19 +0100965$(eval $(call gb_Helper_register_packages_for_install,ooo,\
966 xslt \
967))
968
Michael Stahlc74af0d2011-04-01 20:49:35 +0000969define gb_LinkTarget__use_libxslt
Peter Foley856c0752013-02-02 15:44:30 -0500970$(call gb_LinkTarget_use_package,$(1),xslt)
971$(call gb_LinkTarget_set_include,$(1),\
972 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200973 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500974)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200975
976ifeq ($(COM),MSC)
977$(call gb_LinkTarget_add_libs,$(1),\
978 $(call gb_UnpackedTarball_get_dir,xslt)/win32/bin.msvc/libxslt.lib \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000979)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200980else
981$(call gb_LinkTarget_add_libs,$(1),\
982 -L$(call gb_UnpackedTarball_get_dir,xslt)/libxslt/.libs -lxslt \
983)
984endif
Caolán McNamara6bccd202011-07-25 22:10:33 +0100985
Michael Stahlc74af0d2011-04-01 20:49:35 +0000986endef
987
David Tardonab03e872012-08-15 07:20:13 +0200988define gb_LinkTarget__use_libexslt
Peter Foley856c0752013-02-02 15:44:30 -0500989$(call gb_LinkTarget_use_package,$(1),xslt)
990$(call gb_LinkTarget_set_include,$(1),\
991 $$(INCLUDE) \
Michael Stahl70fcfee2013-04-01 12:47:16 +0200992 -I$(call gb_UnpackedTarball_get_dir,xslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500993)
994
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200995ifeq ($(COM),MSC)
996$(call gb_LinkTarget_add_libs,$(1),\
997 $(call gb_UnpackedTarball_get_dir,xslt)/win32/bin.msvc/libexslt.lib \
David Tardonab03e872012-08-15 07:20:13 +0200998)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200999else
1000$(call gb_LinkTarget_add_libs,$(1),\
1001 -L$(call gb_UnpackedTarball_get_dir,xslt)/libexslt/.libs -lexslt \
1002)
1003endif
David Tardonab03e872012-08-15 07:20:13 +02001004
1005endef
1006
Michael Stahlc74af0d2011-04-01 20:49:35 +00001007endif # SYSTEM_LIBXSLT
1008
Norbert Thiebaud587d9692013-08-29 10:38:00 -05001009ifeq ($(ENABLE_LIBLANGTAG),TRUE)
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +02001010
Michael Stahl49dde4c2014-02-11 19:42:28 +01001011ifneq ($(SYSTEM_LIBLANGTAG),)
Eike Rathkea774a482012-08-06 19:22:43 +02001012
1013define gb_LinkTarget__use_liblangtag
1014$(call gb_LinkTarget_set_include,$(1),\
1015 $$(INCLUDE) \
1016 $(LIBLANGTAG_CFLAGS) \
1017)
1018
1019$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
1020
1021endef
1022
1023else # !SYSTEM_LIBLANGTAG
1024
Michael Stahl01adcd82014-03-18 17:38:06 +01001025$(eval $(call gb_Helper_register_packages_for_install,ooo,\
1026 liblangtag_data \
1027))
1028
Eike Rathkea774a482012-08-06 19:22:43 +02001029define gb_LinkTarget__use_liblangtag
Peter Foley782151a2012-11-11 16:02:36 -05001030$(call gb_LinkTarget_use_unpacked,$(1),langtag)
1031$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001032 -I$(call gb_UnpackedTarball_get_dir,langtag) \
Peter Foley782151a2012-11-11 16:02:36 -05001033 $$(INCLUDE) \
1034)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001035$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
1036$(call gb_LinkTarget_use_external_project,$(1),langtag)
Eike Rathkea774a482012-08-06 19:22:43 +02001037
1038endef
1039
1040endif # SYSTEM_LIBLANGTAG
1041
Matúš Kukan51ba7db2013-05-02 12:19:35 +02001042else
1043
1044gb_LinkTarget__use_liblangtag :=
1045
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +02001046endif # ENABLE_LIBLANGTAG
1047
Matúš Kukandcae0502014-02-25 21:47:33 +01001048gb_ExternalProject__use_apr :=
1049
1050ifeq ($(WITH_WEBDAV),serf)
Matúš Kukan0b272532014-02-06 12:28:36 +01001051
1052define gb_LinkTarget__use_apr
1053$(call gb_LinkTarget_set_include,$(1),\
1054 $$(INCLUDE) \
1055 $(APR_CFLAGS) \
1056)
1057$(call gb_LinkTarget_add_libs,$(1),\
1058 $(APR_LIBS) \
Michael Stahl5cf22052014-06-05 13:35:14 +02001059 $(if $(filter $(OS),LINUX),-lpthread) \
1060 $(if $(filter $(OS),MACOSX),-liconv) \
Matúš Kukan0b272532014-02-06 12:28:36 +01001061)
1062
1063ifeq ($(SYSTEM_APR),)
1064$(call gb_LinkTarget_use_system_win32_libs,$(1),\
1065 mswsock \
1066 rpcrt4 \
1067 shell32 \
1068)
1069$(call gb_LinkTarget_add_defs,$(1),\
1070 -DAPR_DECLARE_STATIC \
1071 -DAPU_DECLARE_STATIC \
1072)
1073$(call gb_LinkTarget_use_external_project,$(1),apr_util)
1074endif
1075
1076endef
1077
1078define gb_ExternalProject__use_apr
1079ifeq ($(SYSTEM_APR),)
1080$(call gb_ExternalProject_use_external_project,$(1),apr_util)
1081endif
1082
1083endef
1084
1085define gb_LinkTarget__use_serf
1086$(call gb_LinkTarget_set_include,$(1),\
1087 $(SERF_CFLAGS) \
1088 $$(INCLUDE) \
1089)
1090$(call gb_LinkTarget_add_libs,$(1),\
1091 $(SERF_LIBS) \
1092)
1093
1094ifeq ($(SYSTEM_SERF),)
1095$(call gb_LinkTarget_use_external_project,$(1),serf)
1096endif
1097
1098endef
1099
Matúš Kukandcae0502014-02-25 21:47:33 +01001100else ifeq ($(WITH_WEBDAV),neon)
Eike Rathkea774a482012-08-06 19:22:43 +02001101
Michael Stahle3abec32014-02-11 15:57:18 +01001102ifneq ($(SYSTEM_NEON),)
Matúš Kukan464b4332012-01-15 02:12:49 +01001103
1104define gb_LinkTarget__use_neon
Matúš Kukan464b4332012-01-15 02:12:49 +01001105$(call gb_LinkTarget_add_defs,$(1),\
1106 -DNEON_VERSION=0x$(NEON_VERSION) \
David Tardonb74bf412013-08-12 09:39:59 +02001107 -DSYSTEM_NEON \
Matúš Kukan464b4332012-01-15 02:12:49 +01001108)
Matúš Kukan464b4332012-01-15 02:12:49 +01001109$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01001110 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00001111 $(NEON_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01001112)
1113
1114$(call gb_LinkTarget_add_libs,$(1),$(NEON_LIBS))
1115
1116endef
1117
1118else # !SYSTEM_NEON
1119
Marcos Paulo de Souzaf70343b2014-02-12 06:53:02 -02001120$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
Matúš Kukan464b4332012-01-15 02:12:49 +01001121 neon \
1122))
1123
1124define gb_LinkTarget__use_neon
Matúš Kukan7a030392012-10-29 23:29:37 +01001125$(call gb_LinkTarget_use_unpacked,$(1),neon)
Matúš Kukan464b4332012-01-15 02:12:49 +01001126$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001127 -I$(call gb_UnpackedTarball_get_dir,neon/src) \
Matúš Kukan464b4332012-01-15 02:12:49 +01001128 $$(INCLUDE) \
1129)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001130$(call gb_LinkTarget_use_libraries,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01001131 neon \
1132)
1133
1134endef
1135
1136endif # SYSTEM_NEON
1137
Matúš Kukandcae0502014-02-25 21:47:33 +01001138endif # WITH_WEBDAV
Matúš Kukan464b4332012-01-15 02:12:49 +01001139
Michael Stahle3abec32014-02-11 15:57:18 +01001140ifneq ($(SYSTEM_REDLAND),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001141
1142define gb_LinkTarget__use_librdf
Michael Stahla88ef232011-04-13 16:11:41 +00001143$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +00001144 -DSYSTEM_REDLAND \
1145)
1146$(call gb_LinkTarget_set_include,$(1),\
1147 $$(INCLUDE) \
1148 $(REDLAND_CFLAGS) \
1149)
1150$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001151
Michael Stahlc74af0d2011-04-01 20:49:35 +00001152endef
1153
Peter Foley18bd1e72012-12-27 18:04:21 -05001154gb_LinkTarget__use_redland_headers:=
1155
1156gb_LinkTarget__use_raptor_headers:=
1157
1158gb_LinkTarget__use_rasqal_headers:=
1159
Michael Stahlc74af0d2011-04-01 20:49:35 +00001160else # !SYSTEM_REDLAND
1161
Peter Foley18bd1e72012-12-27 18:04:21 -05001162define gb_LinkTarget__use_redland_headers
1163$(call gb_LinkTarget_set_include,$(1),\
Michael Stahld719c012013-04-01 12:41:18 +02001164 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001165 $$(INCLUDE) \
1166)
1167
1168endef
1169
1170define gb_LinkTarget__use_raptor_headers
1171$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001172 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001173 $$(INCLUDE) \
1174)
1175
1176endef
1177
1178define gb_LinkTarget__use_rasqal_headers
1179$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001180 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001181 $$(INCLUDE) \
1182)
1183
1184endef
1185
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001186ifneq ($(OS),ANDROID)
1187
Michael Stahl5f9cda22013-11-01 15:43:47 +01001188ifeq ($(COM),MSC)
Michael Stahlae8e5792014-01-10 12:07:31 +01001189$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
David Tardon491dea02013-05-01 11:23:50 +02001190 raptor2 \
1191 rasqal \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001192 rdf \
1193))
Michael Stahl5ae30d32014-03-13 19:32:13 +01001194else
1195$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1196 raptor \
1197 rasqal \
1198 redland \
1199))
Michael Stahl5f9cda22013-11-01 15:43:47 +01001200endif
Michael Stahlc74af0d2011-04-01 20:49:35 +00001201
1202define gb_LinkTarget__use_librdf
Michael Stahl831aaef2013-10-24 01:09:35 +02001203ifeq ($(COM),MSC)
1204$(call gb_LinkTarget_use_libraries,$(1),\
1205 raptor2 \
1206 rdf \
1207)
1208else
Matúš Kukan85d1e392013-12-14 11:17:30 +01001209$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
1210
Michael Stahl2793c542013-10-23 21:18:24 +02001211$(call gb_LinkTarget_add_libs,$(1),\
1212 -L$(call gb_UnpackedTarball_get_dir,raptor)/src/.libs -lraptor2 \
1213 -L$(call gb_UnpackedTarball_get_dir,redland)/src/.libs -lrdf \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001214)
Michael Stahl831aaef2013-10-24 01:09:35 +02001215endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001216
Michael Stahlc74af0d2011-04-01 20:49:35 +00001217endef
1218
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001219else # ANDROID
1220
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001221define gb_LinkTarget__use_librdf
Michael Stahl95565d52013-05-07 12:17:20 +02001222$(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001223
1224endef
1225
1226endif # ANDROID
1227
Michael Stahlc74af0d2011-04-01 20:49:35 +00001228endif # SYSTEM_REDLAND
1229
1230
Michael Stahl32a617d2014-02-17 11:23:19 +01001231ifneq ($(filter unx,$(GUIBASE))$(ENABLE_CAIRO_CANVAS),) # or
1232
Michael Stahl5c0e6d82014-02-11 17:03:53 +01001233ifneq ($(SYSTEM_CAIRO),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001234
Michael Stahlc74af0d2011-04-01 20:49:35 +00001235define gb_LinkTarget__use_cairo
1236$(call gb_LinkTarget_set_include,$(1),\
1237 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001238 $(CAIRO_CFLAGS) \
1239)
David Tardon962771f2013-05-24 14:35:18 +02001240$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001241$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001242
Michael Stahlc74af0d2011-04-01 20:49:35 +00001243endef
1244
Michael Stahl5c0e6d82014-02-11 17:03:53 +01001245else # !SYSTEM_CAIRO
Michael Stahlc74af0d2011-04-01 20:49:35 +00001246
Michael Stahl32a617d2014-02-17 11:23:19 +01001247$(eval $(call gb_Helper_register_packages_for_install,ooo,\
1248 cairo \
1249 $(if $(filter $(OS),WNT),,pixman) \
1250))
1251
Michael Stahlc74af0d2011-04-01 20:49:35 +00001252define gb_LinkTarget__use_cairo
Michael Stahlde142202012-11-20 22:05:36 +01001253$(call gb_LinkTarget_use_package,$(1),cairo)
1254$(call gb_LinkTarget_use_package,$(1),pixman)
David Tardon962771f2013-05-24 14:35:18 +02001255$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001256$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001257 -I$(call gb_UnpackedTarball_get_dir,cairo) \
1258 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +01001259 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001260)
Michael Stahld89f48b2013-10-23 21:27:05 +02001261$(call gb_LinkTarget_add_libs,$(1),\
1262 -L$(call gb_UnpackedTarball_get_dir,cairo)/src/.libs -lcairo \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +01001263 $(if $(filter-out MACOSX WNT,$(OS)), \
Michael Stahld89f48b2013-10-23 21:27:05 +02001264 -L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1 \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +01001265 ) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001266)
Caolán McNamara5bb76f62011-07-25 21:50:34 +01001267
Michael Stahlc74af0d2011-04-01 20:49:35 +00001268endef
1269
1270endif # SYSTEM_CAIRO
1271
Michael Stahl32a617d2014-02-17 11:23:19 +01001272endif # CAIRO
1273
Michael Stahl379f9782014-02-11 16:49:19 +01001274ifneq ($(SYSTEM_FREETYPE),)
David Tardon962771f2013-05-24 14:35:18 +02001275
1276define gb_LinkTarget__use_freetype_headers
Caolán McNamarab41ae462011-07-25 22:24:27 +01001277$(call gb_LinkTarget_set_include,$(1),\
1278 $$(INCLUDE) \
1279 $(FREETYPE_CFLAGS) \
1280)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001281
David Tardon962771f2013-05-24 14:35:18 +02001282endef
1283
1284define gb_LinkTarget__use_freetype
1285$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Caolán McNamarab41ae462011-07-25 22:24:27 +01001286$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
1287
1288endef
1289
Michael Stahle568d2a2013-09-30 14:10:22 +02001290gb_ExternalProject__use_freetype :=
1291
Zolnai Tamás6403f2b2014-06-25 15:19:41 +02001292else ifeq ($(OS),ANDROID)
David Tardon962771f2013-05-24 14:35:18 +02001293
1294define gb_LinkTarget__use_freetype_headers
Michael Stahlb242cee82013-10-24 12:08:50 +02001295$(call gb_LinkTarget_use_external_project,$(1),freetype)
David Tardon962771f2013-05-24 14:35:18 +02001296$(call gb_LinkTarget_set_include,$(1),\
1297 -I$(call gb_UnpackedTarball_get_dir,freetype)/include \
1298 $$(INCLUDE) \
1299)
1300
David Tardon61695f12013-05-24 17:15:20 +02001301endef
1302
David Tardon962771f2013-05-24 14:35:18 +02001303define gb_LinkTarget__use_freetype
1304$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Jan Holesovskyfe5dbe32014-04-22 00:41:57 +02001305$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
David Tardon962771f2013-05-24 14:35:18 +02001306
1307endef
1308
Michael Stahle568d2a2013-09-30 14:10:22 +02001309define gb_ExternalProject__use_freetype
Michael Stahlb242cee82013-10-24 12:08:50 +02001310$(call gb_ExternalProject_use_external_project,$(1),freetype)
Michael Stahle568d2a2013-09-30 14:10:22 +02001311
1312endef
1313
David Tardon962771f2013-05-24 14:35:18 +02001314endif # SYSTEM_FREETYPE
1315
Michael Stahl04ff5352014-02-11 16:21:04 +01001316ifneq ($(SYSTEM_FONTCONFIG),)
David Tardon4eb68422013-05-24 14:16:03 +02001317
Caolán McNamarab41ae462011-07-25 22:24:27 +01001318define gb_LinkTarget__use_fontconfig
1319$(call gb_LinkTarget_set_include,$(1),\
1320 $$(INCLUDE) \
1321 $(FONTCONFIG_CFLAGS) \
1322)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001323
Caolán McNamarab41ae462011-07-25 22:24:27 +01001324$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
1325
1326endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001327
Matúš Kukanfb8d0a42013-09-25 10:13:09 +02001328else ifeq ($(OS),ANDROID)
David Tardon4eb68422013-05-24 14:16:03 +02001329
David Tardon4eb68422013-05-24 14:16:03 +02001330define gb_LinkTarget__use_fontconfig
Michael Stahl76596b32013-10-24 11:01:41 +02001331$(call gb_LinkTarget_use_external_project,$(1),fontconfig)
David Tardon4eb68422013-05-24 14:16:03 +02001332$(call gb_LinkTarget_set_include,$(1),\
1333 -I$(call gb_UnpackedTarball_get_dir,fontconfig) \
1334 $$(INCLUDE) \
1335)
1336
David Tardon4eb68422013-05-24 14:16:03 +02001337endef
1338
1339endif # SYSTEM_FONTCONFIG
1340
David Tardon026dc562014-05-30 19:50:24 +02001341ifeq ($(ENABLE_GRAPHITE),TRUE)
1342
Michael Stahle3abec32014-02-11 15:57:18 +01001343ifneq ($(SYSTEM_GRAPHITE),)
Michael Stahl87e44332011-04-13 16:11:39 +00001344
Michael Stahl87e44332011-04-13 16:11:39 +00001345define gb_LinkTarget__use_graphite
Michael Stahl87e44332011-04-13 16:11:39 +00001346$(call gb_LinkTarget_set_include,$(1),\
1347 $$(INCLUDE) \
1348 $(GRAPHITE_CFLAGS) \
1349)
1350$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001351
Michael Stahl87e44332011-04-13 16:11:39 +00001352endef
1353
Michael Stahle3abec32014-02-11 15:57:18 +01001354else # !SYSTEM_GRAPHITE
Michael Stahl87e44332011-04-13 16:11:39 +00001355
Michael Stahl87e44332011-04-13 16:11:39 +00001356define gb_LinkTarget__use_graphite
Matúš Kukan7a030392012-10-29 23:29:37 +01001357$(call gb_LinkTarget_use_unpacked,$(1),graphite)
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001358$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001359 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001360 $$(INCLUDE) \
1361)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001362$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001363 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001364)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001365
Michael Stahl87e44332011-04-13 16:11:39 +00001366endef
1367
1368endif # SYSTEM_GRAPHITE
1369
David Tardon026dc562014-05-30 19:50:24 +02001370else # !ENABLE_GRAPHITE
1371
1372gb_LinkTarget__use_graphite :=
1373
1374endif # ENABLE_GRAPHITE
1375
Michael Stahl187194b2014-02-11 19:17:42 +01001376ifneq ($(SYSTEM_ICU),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001377
Peter Foleyb92a0d92012-12-25 17:39:43 -05001378gb_LinkTarget__use_icu_headers:=
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001379gb_ExternalProject__use_icu:=
Peter Foleyb92a0d92012-12-25 17:39:43 -05001380
Matúš Kukan6fad1752011-08-11 12:42:39 +02001381define gb_LinkTarget__use_icudata
1382$(call gb_LinkTarget_add_libs,$(1),-licudata)
1383
1384endef
David Tardon1a852392011-07-26 09:58:54 +02001385define gb_LinkTarget__use_icui18n
1386$(call gb_LinkTarget_add_libs,$(1),-licui18n)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001387
David Tardon1a852392011-07-26 09:58:54 +02001388endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001389define gb_LinkTarget__use_icuuc
1390$(call gb_LinkTarget_add_libs,$(1),-licuuc)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001391
Michael Stahlc74af0d2011-04-01 20:49:35 +00001392endef
1393
1394else # !SYSTEM_ICU
1395
Michael Stahl057613c2014-07-24 00:22:51 +02001396$(eval $(call gb_Helper_register_packages_for_install,ure, \
1397 icu_ure \
1398))
1399
Michael Stahle7592692014-03-14 11:23:52 +01001400$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1401 icu \
1402))
1403
Tor Lillqvist084db5f2012-09-24 10:37:25 +03001404ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001405gb_ICU_suffix:=lo
1406else
1407gb_ICU_suffix:=
1408endif
1409
Peter Foleyb92a0d92012-12-25 17:39:43 -05001410define gb_LinkTarget__use_icu_headers
Peter Foleyce9bf0f2013-03-23 12:32:31 -04001411$(call gb_LinkTarget_use_unpacked,$(1),icu)
Peter Foleyb92a0d92012-12-25 17:39:43 -05001412$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001413 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1414 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1415 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
Peter Foleyb92a0d92012-12-25 17:39:43 -05001416 $$(INCLUDE) \
1417)
1418
1419endef
1420
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001421define gb_ExternalProject__use_icu
1422$(call gb_ExternalProject_use_package,$(1),icu)
Fridrich Štrba851ca9c2013-01-25 10:29:59 +01001423
1424endef
1425
Peter Foleyf7452122012-11-04 08:46:44 -05001426# icudata and icui18n is called icudt and icuin when built with MSVC :-/
Michael Stahla92f80f2013-10-23 15:00:29 +02001427define gb_LinkTarget__use_icudata
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001428$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahla92f80f2013-10-23 15:00:29 +02001429
1430ifeq ($(OS),WNT)
1431$(call gb_LinkTarget_add_libs,$(1),\
1432 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icudt$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001433)
Michael Stahla92f80f2013-10-23 15:00:29 +02001434else
1435$(call gb_LinkTarget_add_libs,$(1),\
1436 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licudata$(gb_ICU_suffix) \
1437)
1438endif
Matúš Kukan6fad1752011-08-11 12:42:39 +02001439
1440endef
Michael Stahla92f80f2013-10-23 15:00:29 +02001441
1442define gb_LinkTarget__use_icui18n
1443$(call gb_LinkTarget_use_package,$(1),icu)
1444
1445ifeq ($(OS),WNT)
1446$(call gb_LinkTarget_add_libs,$(1),\
1447 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuin$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
1448)
1449else
1450$(call gb_LinkTarget_add_libs,$(1),\
1451 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licui18n$(gb_ICU_suffix) \
1452)
1453endif
1454
1455endef
1456
Michael Stahlc74af0d2011-04-01 20:49:35 +00001457define gb_LinkTarget__use_icuuc
Peter Foleyb4b6c45982012-12-31 15:12:11 -05001458$(call gb_LinkTarget_use_package,$(1),icu)
Michael Stahla92f80f2013-10-23 15:00:29 +02001459
1460ifeq ($(OS),WNT)
1461$(call gb_LinkTarget_add_libs,$(1),\
1462 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuuc$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001463)
Michael Stahla92f80f2013-10-23 15:00:29 +02001464else
1465$(call gb_LinkTarget_add_libs,$(1),\
1466 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licuuc$(gb_ICU_suffix) \
1467)
1468endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001469
Michael Stahlc74af0d2011-04-01 20:49:35 +00001470endef
1471
1472endif # SYSTEM_ICU
1473
Fridrich Štrba9a943e52013-04-23 11:23:17 +02001474ifeq ($(ENABLE_HARFBUZZ),TRUE)
Michael Stahle3abec32014-02-11 15:57:18 +01001475ifneq ($(SYSTEM_HARFBUZZ),)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001476
1477define gb_LinkTarget__use_harfbuzz
1478$(call gb_LinkTarget_set_include,$(1),\
1479 $$(INCLUDE) \
1480 $(HARFBUZZ_CFLAGS) \
1481)
1482$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1483
1484endef
1485
Michael Stahle3abec32014-02-11 15:57:18 +01001486else # SYSTEM_HARFBUZZ != TRUE
Khaled Hosny7e389f42013-04-20 13:00:56 +02001487
Khaled Hosny7e389f42013-04-20 13:00:56 +02001488define gb_LinkTarget__use_harfbuzz
Michael Stahl8db02752013-05-07 23:28:45 +02001489$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl2f6261f2013-09-19 19:28:36 +02001490 $(HARFBUZZ_CFLAGS) \
Michael Stahl8db02752013-05-07 23:28:45 +02001491 $$(INCLUDE) \
1492)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001493$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1494$(call gb_LinkTarget_use_external_project,$(1),harfbuzz)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001495
1496endef
1497
1498endif # SYSTEM_HARFBUZZ
1499else # ENABLE_HARFBUZZ != YES
1500
1501gb_LinkTarget__use_harfbuzz :=
1502
1503endif # ENABLE_HARFBUZZ
Michael Stahl4a8919f2011-04-18 11:13:57 +00001504
Norbert Thiebaudbf6d1f72013-08-31 18:55:53 -05001505ifeq ($(DISABLE_OPENSSL),TRUE)
Andres Gomeze3f607e2013-04-11 10:24:25 +03001506
1507gb_ExternalProject__use_openssl:=
1508gb_LinkTarget__use_openssl_headers:=
1509gb_LinkTarget__use_openssl:=
1510
1511else # !DISABLE_OPENSSL
1512
Michael Stahle3abec32014-02-11 15:57:18 +01001513ifneq ($(SYSTEM_OPENSSL),)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001514
Peter Foley9ddba662012-12-28 11:19:06 -05001515gb_LinkTarget__use_openssl_headers:=
1516gb_ExternalProject__use_openssl:=
1517
Michael Stahl4a8919f2011-04-18 11:13:57 +00001518define gb_LinkTarget__use_openssl
1519$(call gb_LinkTarget_set_include,$(1),\
1520 $$(INCLUDE) \
1521 $(OPENSSL_CFLAGS) \
1522)
1523$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001524
Michael Stahl4a8919f2011-04-18 11:13:57 +00001525endef
1526
1527else # !SYSTEM_OPENSSL
1528
Michael Stahlf921e262014-03-13 19:36:48 +01001529$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1530 openssl \
1531))
1532
Peter Foley9ddba662012-12-28 11:19:06 -05001533define gb_ExternalProject__use_openssl
1534$(call gb_ExternalProject_use_package,$(1),openssl)
1535
1536endef
1537
1538define gb_LinkTarget__use_openssl_headers
1539$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001540 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
Peter Foley9ddba662012-12-28 11:19:06 -05001541 $$(INCLUDE) \
1542)
1543
1544endef
1545
Michael Stahl4a8919f2011-04-18 11:13:57 +00001546define gb_LinkTarget__use_openssl
Peter Foley9ddba662012-12-28 11:19:06 -05001547$(call gb_LinkTarget_use_package,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001548ifeq ($(OS),WNT)
Michael Stahl5b906622013-10-24 00:22:20 +02001549$(call gb_LinkTarget_add_libs,$(1),\
1550 $(call gb_UnpackedTarball_get_dir,openssl)/out32dll/ssleay32.lib \
1551 $(call gb_UnpackedTarball_get_dir,openssl)/out32dll/libeay32.lib \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001552)
1553else
Michael Stahl2f6261f2013-09-19 19:28:36 +02001554$(call gb_LinkTarget_add_libs,$(1),\
1555 $(call gb_UnpackedTarball_get_dir,openssl)/libssl.a \
1556 $(call gb_UnpackedTarball_get_dir,openssl)/libcrypto.a \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001557)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001558$(call gb_LinkTarget_use_external_project,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001559ifeq ($(OS),SOLARIS)
Michael Stahl80374352012-09-28 12:25:50 +02001560$(call gb_LinkTarget_add_libs,$(1),\
1561 -lnsl \
1562 -lsocket \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001563)
1564endif
1565endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001566
Michael Stahl4a8919f2011-04-18 11:13:57 +00001567endef
1568
1569endif # SYSTEM_OPENSSL
Andres Gomeze3f607e2013-04-11 10:24:25 +03001570endif # DISABLE_OPENSSL
Michael Stahl4a8919f2011-04-18 11:13:57 +00001571
Matúš Kukanc4560482011-07-28 01:03:23 +02001572
Norbert Thiebaudbf6d1f72013-08-31 18:55:53 -05001573ifeq ($(DISABLE_OPENSSL),TRUE)
Andres Gomez48d49752013-04-11 10:32:54 +03001574
1575define gb_LinkTarget__use_gnutls
1576$(call gb_LinkTarget_set_include,$(1),\
1577 $$(INCLUDE) \
1578 $(GNUTLS_CFLAGS) \
1579)
1580
1581$(call gb_LinkTarget_add_defs,$(1),\
1582 -DDISABLE_OPENSSL \
1583)
1584
1585$(call gb_LinkTarget_add_libs,$(1),$(GNUTLS_LIBS))
1586
1587endef
1588
1589define gb_LinkTarget__use_libgcrypt
1590$(call gb_LinkTarget_set_include,$(1),\
1591 $$(INCLUDE) \
1592 $(LIBGCRYPT_CFLAGS) \
1593)
1594
1595$(call gb_LinkTarget_add_libs,$(1),$(LIBGCRYPT_LIBS))
1596
1597endef
1598
1599else # !DISABLE_OPENSSL
1600
1601gb_LinkTarget__use_gnutls:=
1602gb_LinkTarget__use_libgcrypt:=
1603
1604endif # DISABLE_OPENSSL
1605
1606
Michael Stahle3abec32014-02-11 15:57:18 +01001607ifneq ($(SYSTEM_CDR),)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001608
1609define gb_LinkTarget__use_cdr
1610$(call gb_LinkTarget_set_include,$(1),\
1611 $$(INCLUDE) \
1612 $(CDR_CFLAGS) \
1613)
1614$(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1615
1616endef
1617
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001618else # !SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001619
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001620define gb_LinkTarget__use_cdr
David Tardonf16f3662013-05-24 13:48:03 +02001621$(call gb_LinkTarget_set_include,$(1),\
1622 -I$(call gb_UnpackedTarball_get_dir,libcdr)/inc \
1623 $$(INCLUDE) \
1624)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001625$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001626 $(call gb_UnpackedTarball_get_dir,libcdr)/src/lib/.libs/libcdr-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001627)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001628$(call gb_LinkTarget_use_external_project,$(1),libcdr)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001629endef
1630
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001631endif # SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001632
1633
Michael Stahle3abec32014-02-11 15:57:18 +01001634ifneq ($(SYSTEM_EBOOK),)
David Tardon316be1b2013-11-09 15:52:36 +01001635
1636define gb_LinkTarget__use_ebook
1637$(call gb_LinkTarget_set_include,$(1),\
1638 $$(INCLUDE) \
1639 $(EBOOK_CFLAGS) \
1640)
1641$(call gb_LinkTarget_add_libs,$(1),$(EBOOK_LIBS))
1642
1643endef
1644
1645gb_ExternalProject__use_ebook :=
1646
1647else # !SYSTEM_EBOOK
1648
1649define gb_LinkTarget__use_ebook
1650$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001651 -I${WORKDIR}/UnpackedTarball/libebook/inc \
David Tardon316be1b2013-11-09 15:52:36 +01001652 $$(INCLUDE) \
1653)
1654$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001655 $(call gb_UnpackedTarball_get_dir,libebook)/src/lib/.libs/libe-book-0.1$(gb_StaticLibrary_PLAINEXT) \
David Tardon316be1b2013-11-09 15:52:36 +01001656)
1657$(call gb_LinkTarget_use_external_project,$(1),libebook)
1658
1659endef
1660
1661define gb_ExternalProject__use_ebook
1662$(call gb_ExternalProject_use_external_project,$(1),libebook)
1663
1664endef
1665
1666endif # SYSTEM_EBOOK
1667
1668
Michael Stahle3abec32014-02-11 15:57:18 +01001669ifneq ($(SYSTEM_ETONYEK),)
David Tardon08ca3e42013-10-24 16:46:49 +02001670
1671define gb_LinkTarget__use_etonyek
1672$(call gb_LinkTarget_set_include,$(1),\
1673 $$(INCLUDE) \
1674 $(ETONYEK_CFLAGS) \
1675)
1676$(call gb_LinkTarget_add_libs,$(1),$(ETONYEK_LIBS))
1677
1678endef
1679
1680gb_ExternalProject__use_etonyek :=
1681
1682else # !SYSTEM_ETONYEK
1683
1684define gb_LinkTarget__use_etonyek
1685$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001686 -I${WORKDIR}/UnpackedTarball/libetonyek/inc \
David Tardon08ca3e42013-10-24 16:46:49 +02001687 $$(INCLUDE) \
1688)
1689$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001690 $(call gb_UnpackedTarball_get_dir,libetonyek)/src/lib/.libs/libetonyek-0.1$(gb_StaticLibrary_PLAINEXT) \
David Tardon08ca3e42013-10-24 16:46:49 +02001691)
1692$(call gb_LinkTarget_use_external_project,$(1),libetonyek)
1693
1694endef
1695
1696define gb_ExternalProject__use_etonyek
1697$(call gb_ExternalProject_use_external_project,$(1),libetonyek)
1698
1699endef
1700
1701endif # SYSTEM_ETONYEK
1702
1703
Michael Stahle3abec32014-02-11 15:57:18 +01001704ifneq ($(SYSTEM_FREEHAND),)
Fridrich Štrba67153d72013-10-31 12:42:50 +01001705
1706define gb_LinkTarget__use_freehand
1707$(call gb_LinkTarget_set_include,$(1),\
1708 $$(INCLUDE) \
1709 $(FREEHAND_CFLAGS) \
1710)
1711$(call gb_LinkTarget_add_libs,$(1),$(FREEHAND_LIBS))
1712
1713endef
1714
1715gb_ExternalProject__use_freehand :=
1716
1717else # !SYSTEM_FREEHAND
1718
1719define gb_LinkTarget__use_freehand
1720$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001721 -I${WORKDIR}/UnpackedTarball/libfreehand/inc \
Fridrich Štrba67153d72013-10-31 12:42:50 +01001722 $$(INCLUDE) \
1723)
1724$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001725 $(call gb_UnpackedTarball_get_dir,libfreehand)/src/lib/.libs/libfreehand-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba67153d72013-10-31 12:42:50 +01001726)
1727$(call gb_LinkTarget_use_external_project,$(1),libfreehand)
1728
1729endef
1730
1731define gb_ExternalProject__use_freehand
1732$(call gb_ExternalProject_use_external_project,$(1),libfreehand)
1733
1734endef
1735
1736endif # SYSTEM_FREEHAND
1737
1738
Michael Stahle3abec32014-02-11 15:57:18 +01001739ifneq ($(SYSTEM_ODFGEN),)
Fridrich Štrba93848e12013-05-02 20:25:51 +02001740
1741define gb_LinkTarget__use_odfgen
1742$(call gb_LinkTarget_set_include,$(1),\
1743 $$(INCLUDE) \
1744 $(ODFGEN_CFLAGS) \
1745)
1746$(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
1747
1748endef
1749
1750else # !SYSTEM_ODFGEN
1751
David Tardon36c3f912014-05-24 09:13:33 +02001752ifeq ($(COM),MSC)
1753
1754$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1755 odfgen \
1756))
1757
Fridrich Štrba93848e12013-05-02 20:25:51 +02001758define gb_LinkTarget__use_odfgen
David Tardon0f8a90c2013-05-24 13:49:11 +02001759$(call gb_LinkTarget_set_include,$(1),\
1760 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1761 $$(INCLUDE) \
1762)
David Tardon36c3f912014-05-24 09:13:33 +02001763$(call gb_LinkTarget_use_libraries,$(1),\
1764 odfgen \
Fridrich Štrba93848e12013-05-02 20:25:51 +02001765)
Fridrich Štrba93848e12013-05-02 20:25:51 +02001766
1767endef
1768
David Tardon36c3f912014-05-24 09:13:33 +02001769else # !MSC
1770
1771$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1772 libodfgen \
1773))
1774
1775define gb_LinkTarget__use_odfgen
1776$(call gb_LinkTarget_use_package,$(1),libodfgen)
1777
1778$(call gb_LinkTarget_set_include,$(1),\
1779 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1780 $$(INCLUDE) \
1781)
1782$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001783 -L$(call gb_UnpackedTarball_get_dir,libodfgen)/src/.libs -lodfgen-0.1 \
David Tardon36c3f912014-05-24 09:13:33 +02001784)
1785
1786endef
1787
1788endif
1789
Fridrich Štrba93848e12013-05-02 20:25:51 +02001790endif # SYSTEM_ODFGEN
1791
1792
David Tardonb421ce72014-05-24 08:39:54 +02001793ifneq ($(SYSTEM_REVENGE),)
1794
1795define gb_LinkTarget__use_revenge
1796$(call gb_LinkTarget_set_include,$(1),\
1797 $$(INCLUDE) \
1798 $(REVENGE_CFLAGS) \
1799)
1800$(call gb_LinkTarget_add_libs,$(1),$(REVENGE_LIBS))
1801
1802endef
1803
David Tardon7c9c7792014-05-25 13:06:57 +02001804gb_ExternalProject__use_revenge :=
1805
David Tardonb421ce72014-05-24 08:39:54 +02001806else # !SYSTEM_REVENGE
1807
1808ifeq ($(COM),MSC)
1809
1810$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1811 revenge \
1812))
1813
1814define gb_LinkTarget__use_revenge
1815$(call gb_LinkTarget_set_include,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001816 $(REVENGE_CFLAGS) \
David Tardonb421ce72014-05-24 08:39:54 +02001817 $$(INCLUDE) \
1818)
1819$(call gb_LinkTarget_use_libraries,$(1),\
1820 revenge \
1821)
1822
1823endef
1824
David Tardon7c9c7792014-05-25 13:06:57 +02001825define gb_ExternalProject__use_revenge
1826$(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,revenge)
1827
1828endef
1829
David Tardonb421ce72014-05-24 08:39:54 +02001830else # !MSC
1831
1832$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1833 librevenge \
1834))
1835
1836define gb_LinkTarget__use_revenge
1837$(call gb_LinkTarget_use_package,$(1),librevenge)
1838
1839$(call gb_LinkTarget_set_include,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001840 $(REVENGE_CFLAGS) \
David Tardonb421ce72014-05-24 08:39:54 +02001841 $$(INCLUDE) \
1842)
1843$(call gb_LinkTarget_add_libs,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001844 $(REVENGE_LIBS) \
David Tardonb421ce72014-05-24 08:39:54 +02001845)
1846endef
1847
David Tardon7c9c7792014-05-25 13:06:57 +02001848define gb_ExternalProject__use_revenge
1849$(call gb_ExternalProject_use_package,$(1),librevenge)
1850
1851endef
1852
David Tardonb421ce72014-05-24 08:39:54 +02001853endif # MSC
1854
1855endif # SYSTEM_REVENGE
1856
1857
Michael Stahle3abec32014-02-11 15:57:18 +01001858ifneq ($(SYSTEM_ABW),)
Fridrich Štrba10eaaac2014-01-13 17:01:32 +01001859
1860define gb_LinkTarget__use_abw
1861$(call gb_LinkTarget_set_include,$(1),\
1862 $$(INCLUDE) \
1863 $(ABW_CFLAGS) \
1864)
1865$(call gb_LinkTarget_add_libs,$(1),$(ABW_LIBS))
1866
1867endef
1868gb_ExternalProject__use_abw :=
1869
1870else # !SYSTEM_ABW
1871
1872define gb_LinkTarget__use_abw
1873$(call gb_LinkTarget_set_include,$(1),\
1874 -I$(call gb_UnpackedTarball_get_dir,libabw)/inc \
1875 $$(INCLUDE) \
1876)
1877$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001878 $(call gb_UnpackedTarball_get_dir,libabw)/src/lib/.libs/libabw-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba10eaaac2014-01-13 17:01:32 +01001879)
1880$(call gb_LinkTarget_use_external_project,$(1),libabw)
1881
1882endef
1883define gb_ExternalProject__use_abw
1884$(call gb_ExternalProject_use_external_project,$(1),libabw)
1885
1886endef
1887
1888endif # SYSTEM_ABW
1889
1890
Michael Stahle3abec32014-02-11 15:57:18 +01001891ifneq ($(SYSTEM_MSPUB),)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001892
1893define gb_LinkTarget__use_mspub
1894$(call gb_LinkTarget_set_include,$(1),\
1895 $$(INCLUDE) \
1896 $(MSPUB_CFLAGS) \
1897)
1898$(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1899
1900endef
1901
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001902else # !SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001903
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001904define gb_LinkTarget__use_mspub
Michael Stahl35ac39e2013-05-16 13:09:11 +02001905$(call gb_LinkTarget_set_include,$(1),\
1906 -I$(call gb_UnpackedTarball_get_dir,libmspub)/inc \
1907 $$(INCLUDE) \
1908)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001909$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001910 $(call gb_UnpackedTarball_get_dir,libmspub)/src/lib/.libs/libmspub-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001911)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001912$(call gb_LinkTarget_use_external_project,$(1),libmspub)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001913
1914endef
1915
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001916endif # SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001917
1918
David Tardon516fb342014-06-26 21:26:11 +02001919ifneq ($(SYSTEM_PAGEMAKER),)
1920
1921define gb_LinkTarget__use_pagemaker
1922$(call gb_LinkTarget_set_include,$(1),\
1923 $$(INCLUDE) \
1924 $(PAGEMAKER_CFLAGS) \
1925)
1926$(call gb_LinkTarget_add_libs,$(1),$(PAGEMAKER_LIBS))
1927
1928endef
1929gb_ExternalProject__use_pagemaker :=
1930
1931else # !SYSTEM_PAGEMAKER
1932
1933define gb_LinkTarget__use_pagemaker
1934$(call gb_LinkTarget_set_include,$(1),\
1935 -I$(call gb_UnpackedTarball_get_dir,libpagemaker)/inc \
1936 $$(INCLUDE) \
1937)
1938$(call gb_LinkTarget_add_libs,$(1),\
1939 $(call gb_UnpackedTarball_get_dir,libpagemaker)/src/lib/.libs/libpagemaker-0.0$(gb_StaticLibrary_PLAINEXT) \
1940)
1941$(call gb_LinkTarget_use_external_project,$(1),libpagemaker)
1942
1943endef
1944define gb_ExternalProject__use_pagemaker
1945$(call gb_ExternalProject_use_external_project,$(1),libpagemaker)
1946
1947endef
1948
1949endif # SYSTEM_PAGEMAKER
1950
1951
Michael Stahle3abec32014-02-11 15:57:18 +01001952ifneq ($(SYSTEM_VISIO),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001953
1954define gb_LinkTarget__use_visio
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001955$(call gb_LinkTarget_set_include,$(1),\
1956 $$(INCLUDE) \
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001957 $(VISIO_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001958)
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02001959$(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001960
1961endef
1962
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001963else # !SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001964
Matúš Kukanc6a63952011-07-28 17:29:44 +02001965define gb_LinkTarget__use_visio
Michael Stahlacc7f612013-05-16 13:14:37 +02001966$(call gb_LinkTarget_set_include,$(1),\
1967 -I$(call gb_UnpackedTarball_get_dir,libvisio)/inc \
1968 $$(INCLUDE) \
1969)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001970$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001971 $(call gb_UnpackedTarball_get_dir,libvisio)/src/lib/.libs/libvisio-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba64ab6112012-11-05 11:43:55 +01001972)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001973$(call gb_LinkTarget_use_external_project,$(1),libvisio)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001974
1975endef
1976
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01001977endif # SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02001978
1979
Michael Stahle3abec32014-02-11 15:57:18 +01001980ifneq ($(SYSTEM_WPD),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02001981
1982define gb_LinkTarget__use_wpd
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001983$(call gb_LinkTarget_set_include,$(1),\
1984 $$(INCLUDE) \
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001985 $(WPD_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02001986)
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02001987$(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02001988
1989endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02001990gb_ExternalProject__use_wpd :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02001991
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01001992else # !SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02001993
Fridrich Štrba4425db62012-09-24 13:17:45 +02001994define gb_LinkTarget__use_wpd
Michael Stahldb5c8c52013-05-16 13:28:14 +02001995$(call gb_LinkTarget_set_include,$(1),\
1996 $(WPD_CFLAGS) \
1997 $$(INCLUDE) \
1998)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001999$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02002000 $(call gb_UnpackedTarball_get_dir,libwpd)/src/lib/.libs/libwpd-0.10$(gb_StaticLibrary_PLAINEXT) \
Michael Stahl34295432012-09-24 22:25:28 +02002001)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002002$(call gb_LinkTarget_use_external_project,$(1),libwpd)
Fridrich Štrba4425db62012-09-24 13:17:45 +02002003
2004endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002005define gb_ExternalProject__use_wpd
Michael Stahl2f6261f2013-09-19 19:28:36 +02002006$(call gb_ExternalProject_use_external_project,$(1),libwpd)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002007
2008endef
Fridrich Štrba4425db62012-09-24 13:17:45 +02002009
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01002010endif # SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02002011
2012
Michael Stahle3abec32014-02-11 15:57:18 +01002013ifneq ($(SYSTEM_WPG),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002014
2015define gb_LinkTarget__use_wpg
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002016$(call gb_LinkTarget_set_include,$(1),\
2017 $$(INCLUDE) \
Fridrich Štrba62c43b42011-10-05 10:15:40 +02002018 $(WPG_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002019)
Fridrich Štrba62c43b42011-10-05 10:15:40 +02002020$(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02002021
2022endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002023gb_ExternalProject__use_wpg :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02002024
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002025else # !SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02002026
Matúš Kukanc6a63952011-07-28 17:29:44 +02002027define gb_LinkTarget__use_wpg
David Tardonc51a2542013-05-24 14:53:37 +02002028$(call gb_LinkTarget_set_include,$(1),\
2029 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
2030 $$(INCLUDE) \
2031)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002032$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02002033 $(call gb_UnpackedTarball_get_dir,libwpg)/src/lib/.libs/libwpg-0.3$(gb_StaticLibrary_PLAINEXT) \
Michael Stahl53b7bdc2012-10-05 17:19:47 +02002034)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002035$(call gb_LinkTarget_use_external_project,$(1),libwpg)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002036
2037endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002038define gb_ExternalProject__use_wpg
Michael Stahl2f6261f2013-09-19 19:28:36 +02002039$(call gb_ExternalProject_use_external_project,$(1),libwpg)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002040
2041endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02002042
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002043endif # SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02002044
2045
Michael Stahle3abec32014-02-11 15:57:18 +01002046ifneq ($(SYSTEM_WPS),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002047
2048define gb_LinkTarget__use_wps
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002049$(call gb_LinkTarget_set_include,$(1),\
2050 $$(INCLUDE) \
Fridrich Štrbae991bba2011-10-05 10:18:53 +02002051 $(WPS_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002052)
Fridrich Štrbae991bba2011-10-05 10:18:53 +02002053$(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02002054
2055endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002056gb_ExternalProject__use_wps :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02002057
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002058else # !SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02002059
David Tardonf85d10f2014-05-30 15:35:48 +02002060ifeq ($(COM),MSC)
2061
2062$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2063 wps \
2064))
2065
Matúš Kukanc6a63952011-07-28 17:29:44 +02002066define gb_LinkTarget__use_wps
David Tardon6f9d8212013-05-24 14:58:31 +02002067$(call gb_LinkTarget_set_include,$(1),\
2068 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2069 $$(INCLUDE) \
2070)
David Tardonf85d10f2014-05-30 15:35:48 +02002071
2072$(call gb_LinkTarget_use_libraries,$(1),\
2073 wps \
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02002074)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002075
2076endef
David Tardonf85d10f2014-05-30 15:35:48 +02002077
2078else # !MSC
2079
2080$(eval $(call gb_Helper_register_packages_for_install,ooo, \
2081 libwps \
2082))
2083
2084define gb_LinkTarget__use_wps
2085$(call gb_LinkTarget_use_package,$(1),libwps)
2086
2087$(call gb_LinkTarget_set_include,$(1),\
2088 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2089 $$(INCLUDE) \
2090)
2091$(call gb_LinkTarget_add_libs,$(1),\
2092 -L$(call gb_UnpackedTarball_get_dir,libwps)/src/lib/.libs -lwps-0.3 \
2093)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002094
2095endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02002096
David Tardonf85d10f2014-05-30 15:35:48 +02002097endif # MSC
2098
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002099endif # SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02002100
2101
Michael Stahle3abec32014-02-11 15:57:18 +01002102ifneq ($(SYSTEM_MWAW),)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002103
2104define gb_LinkTarget__use_mwaw
2105$(call gb_LinkTarget_set_include,$(1),\
2106 $$(INCLUDE) \
2107 $(MWAW_CFLAGS) \
2108)
2109$(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
2110
2111endef
2112
2113else # !SYSTEM_MWAW
2114
David Tardon79211c12014-05-30 13:55:20 +02002115ifeq ($(COM),MSC)
2116
2117$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2118 mwaw \
2119))
2120
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002121define gb_LinkTarget__use_mwaw
Michael Stahlff718952013-05-16 13:11:36 +02002122$(call gb_LinkTarget_set_include,$(1),\
2123 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2124 $$(INCLUDE) \
2125)
David Tardon79211c12014-05-30 13:55:20 +02002126
2127$(call gb_LinkTarget_use_libraries,$(1),\
2128 mwaw \
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002129)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002130
2131endef
2132
David Tardon79211c12014-05-30 13:55:20 +02002133else # !MSC
2134
2135$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2136 libmwaw \
2137))
2138
2139define gb_LinkTarget__use_mwaw
2140$(call gb_LinkTarget_use_package,$(1),libmwaw)
2141
2142$(call gb_LinkTarget_set_include,$(1),\
2143 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2144 $$(INCLUDE) \
2145)
2146$(call gb_LinkTarget_add_libs,$(1),\
2147 -L$(call gb_UnpackedTarball_get_dir,libmwaw)/src/lib/.libs -lmwaw-0.3 \
2148)
2149
2150endef
2151
2152endif # MSC
2153
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002154endif # SYSTEM_MWAW
2155
2156
Michael Stahle3abec32014-02-11 15:57:18 +01002157ifneq ($(SYSTEM_LCMS2),)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002158
2159define gb_LinkTarget__use_lcms2
2160$(call gb_LinkTarget_set_include,$(1),\
2161 $$(INCLUDE) \
Peter Foleyf7452122012-11-04 08:46:44 -05002162 $(LCMS2_CFLAGS) \
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002163)
2164$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
2165
2166endef
2167
Peter Foley8905c0e2012-11-08 21:00:30 -05002168gb_ExternalProject__use_lcms2 :=
2169
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002170else # !SYSTEM_LCMS2
2171
Michael Stahl32a617d2014-02-17 11:23:19 +01002172$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2173 lcms2 \
2174))
2175
Peter Foley8905c0e2012-11-08 21:00:30 -05002176define gb_ExternalProject__use_lcms2
2177$(call gb_ExternalProject_use_package,$(1),lcms2)
2178
2179endef
2180
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002181ifeq ($(OS),ANDROID)
2182
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002183define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002184$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02002185$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002186 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02002187 $$(INCLUDE) \
2188)
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002189
2190endef
2191
2192else
2193
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002194define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002195$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02002196$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002197 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02002198 $$(INCLUDE) \
2199)
Michael Stahl25f65f22013-10-23 22:04:36 +02002200$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002201
2202endef
2203
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002204endif # ANDROID
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002205endif # SYSTEM_LCMS2
2206
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002207ifneq ($(ENABLE_LPSOLVE),)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002208
Michael Stahlab586f12014-02-11 19:25:30 +01002209ifneq ($(SYSTEM_LPSOLVE),)
Matúš Kukanc4560482011-07-28 01:03:23 +02002210
Peter Foley085346f2012-11-03 19:19:30 -04002211define gb_LinkTarget__use_lpsolve
Matúš Kukanc4560482011-07-28 01:03:23 +02002212$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
Peter Foley085346f2012-11-03 19:19:30 -04002213$(call gb_LinkTarget_add_defs,$(1),\
2214 -DSYSTEM_LPSOLVE \
Peter Foley29d5e292012-11-07 18:18:08 -05002215)
Matúš Kukanc4560482011-07-28 01:03:23 +02002216
2217endef
2218
2219else # !SYSTEM_LPSOLVE
2220
Peter Foley085346f2012-11-03 19:19:30 -04002221define gb_LinkTarget__use_lpsolve
2222$(call gb_LinkTarget_use_unpacked,$(1),lpsolve)
Michael Stahlb7d8ca82013-10-24 01:25:59 +02002223ifeq ($(COM),MSC)
2224$(call gb_LinkTarget_add_libs,$(1),\
2225 $(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55/lpsolve55.lib \
2226)
2227else
Michael Stahlb177b302013-10-23 21:33:51 +02002228$(call gb_LinkTarget_add_libs,$(1),\
2229 -L$(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55 -llpsolve55 \
Matúš Kukanc4560482011-07-28 01:03:23 +02002230)
Michael Stahlb7d8ca82013-10-24 01:25:59 +02002231endif
Peter Foley085346f2012-11-03 19:19:30 -04002232$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002233 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
Peter Foley085346f2012-11-03 19:19:30 -04002234 $$(INCLUDE) \
2235)
Matúš Kukanc4560482011-07-28 01:03:23 +02002236
2237endef
2238
Matúš Kukan083fa762014-02-27 17:08:09 +01002239$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2240 lpsolve \
2241))
2242
Matúš Kukanc4560482011-07-28 01:03:23 +02002243endif # SYSTEM_LPSOLVE
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002244
Matúš Kukan077bdc72014-03-27 14:51:46 +01002245else
2246
2247gb_LinkTarget__use_lpsolve :=
2248
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002249endif # ENABLE_LPSOLVE
2250
2251ifneq ($(ENABLE_COINMP),)
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002252
2253define gb_LinkTarget__use_coinmp
2254$(call gb_LinkTarget_use_package,$(1),coinmp)
2255ifeq ($(COM),MSC)
2256$(call gb_LinkTarget_add_libs,$(1),\
Tomofumi Yagicddbec72014-04-05 12:02:38 +09002257 $(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 +01002258)
2259else
2260$(call gb_LinkTarget_add_libs,$(1),\
2261 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cbc/src/.libs -lCbc -lCbcSolver \
2262 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cgl/src/.libs -lCgl \
2263 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/.libs -lClp \
2264 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/OsiClp/.libs -lOsiClp \
2265 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src/.libs -lCoinMP \
2266 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src/.libs -lCoinUtils \
2267 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Osi/src/Osi/.libs -lOsi \
2268)
2269endif
2270$(call gb_LinkTarget_set_include,$(1),\
2271 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src \
Caolán McNamara67b4b342014-06-06 14:32:09 +01002272 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src \
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002273 $$(INCLUDE) \
2274)
2275
2276endef
2277
2278$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2279 coinmp \
2280))
2281
Matúš Kukan077bdc72014-03-27 14:51:46 +01002282else
2283
2284gb_LinkTarget__use_coinmp :=
2285
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002286endif # ENABLE_COINMP
Matúš Kukanc4560482011-07-28 01:03:23 +02002287
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002288ifeq ($(ENABLE_GIO),TRUE)
Matúš Kukanc4560482011-07-28 01:03:23 +02002289
Matúš Kukan464b4332012-01-15 02:12:49 +01002290define gb_LinkTarget__use_gio
2291$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01002292 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00002293 $(GIO_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01002294)
2295
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002296$(call gb_LinkTarget_add_defs,$(1),\
Siqid0419802013-07-24 11:16:31 +02002297 -DENABLE_GIO \
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002298)
2299
Matúš Kukan464b4332012-01-15 02:12:49 +01002300$(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
2301
2302endef
2303
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002304else # ENABLE_GIO
2305
2306define gb_LinkTarget__use_gio
Caolán McNamara1e98bb42012-11-06 20:09:57 +00002307
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002308endef
2309
2310endif # ENABLE_GIO
2311
Siqid0419802013-07-24 11:16:31 +02002312ifeq ($(ENABLE_AVAHI),TRUE)
2313
2314define gb_LinkTarget__use_avahi
2315$(call gb_LinkTarget_set_include,$(1),\
2316 $$(INCLUDE) \
2317 $(AVAHI_CFLAGS) \
2318)
2319
2320$(call gb_LinkTarget_add_defs,$(1),\
2321 -DENABLE_AVAHI \
2322)
2323
2324$(call gb_LinkTarget_add_libs,$(1),$(AVAHI_LIBS))
2325
2326endef
2327
2328else # ENABLE_AVAHI
2329
David Tardon9ce38ef2013-11-05 07:03:08 +01002330gb_LinkTarget__use_avahi :=
Siqid0419802013-07-24 11:16:31 +02002331
2332endif # ENABLE_AVAHI
2333
2334
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02002335define gb_LinkTarget__use_gtk
2336$(call gb_LinkTarget_set_include,$(1),\
2337 $$(INCLUDE) \
2338 $(GTK_CFLAGS) \
2339)
2340
2341$(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
2342
David Tardonadb11052011-12-01 13:39:09 +01002343ifeq ($(ENABLE_GTK_PRINT),TRUE)
2344
2345$(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
2346
2347$(call gb_LinkTarget_set_include,$(1),\
2348 $$(INCLUDE) \
2349 $(GTK_PRINT_CFLAGS) \
2350)
2351
2352$(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
2353
2354endif
2355
Bjoern Michaelsene7cc9e02011-07-26 14:51:35 +02002356endef
Michael Stahl4a8919f2011-04-18 11:13:57 +00002357
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02002358define gb_LinkTarget__use_gthread
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01002359$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
Bjoern Michaelsen54dd3072011-07-26 15:15:41 +02002360endef
2361
Caolán McNamara68ffb332012-09-14 11:31:50 +01002362ifeq ($(ENABLE_CUPS),TRUE)
2363
2364define gb_LinkTarget__use_cups
2365$(call gb_LinkTarget_add_defs,$(1),\
2366 -DENABLE_CUPS \
2367)
2368
2369$(call gb_LinkTarget_add_libs,$(1),\
2370 -lcups \
2371)
2372
2373endef
2374
2375else # ENABLE_CUPS
2376
2377define gb_LinkTarget__use_cups
2378
2379endef
2380
2381endif # ENABLE_DBUS
David Tardon1b717ce2011-11-02 13:00:48 +01002382
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002383ifeq ($(ENABLE_DBUS),TRUE)
David Tardon1b717ce2011-11-02 13:00:48 +01002384
2385define gb_LinkTarget__use_dbus
2386$(call gb_LinkTarget_set_include,$(1),\
2387 $$(INCLUDE) \
2388 $(DBUS_CFLAGS) \
2389)
2390
Matúš Kukan464b4332012-01-15 02:12:49 +01002391$(call gb_LinkTarget_add_defs,$(1),\
David Tardon1b717ce2011-11-02 13:00:48 +01002392 -DENABLE_DBUS \
2393)
2394
Norbert Thiebaud7c88b252013-08-30 23:05:04 -05002395ifeq ($(ENABLE_PACKAGEKIT),TRUE)
Rene Engelhardbea61492012-09-11 02:30:09 +02002396$(call gb_LinkTarget_add_defs,$(1),\
2397 -DENABLE_PACKAGEKIT \
2398)
2399endif # ENABLE_PACKAGEKIT
2400
David Tardon1b717ce2011-11-02 13:00:48 +01002401$(call gb_LinkTarget_add_libs,$(1),\
2402 $(DBUS_LIBS) \
2403)
2404
2405endef
2406
2407else # ENABLE_DBUS
2408
2409define gb_LinkTarget__use_dbus
2410
2411endef
2412
2413endif # ENABLE_DBUS
2414
2415
Bjoern Michaelsendd321062011-07-26 16:04:15 +02002416define gb_LinkTarget__use_dbusmenugtk
2417$(call gb_LinkTarget_set_include,$(1),\
2418 $$(INCLUDE) \
2419 $(DBUSMENUGTK_CFLAGS) \
2420)
2421
2422$(call gb_LinkTarget_add_libs,$(1),$(DBUSMENUGTK_LIBS))
2423
2424endef
2425
Eike Rathkea3a8b802012-03-16 22:14:54 +01002426
2427ifeq ($(ENABLE_TELEPATHY),TRUE)
2428
2429define gb_LinkTarget__use_telepathy
2430$(call gb_LinkTarget_set_include,$(1),\
2431 $$(INCLUDE) \
2432 $(TELEPATHY_CFLAGS) \
2433)
2434
Eike Rathkea3a8b802012-03-16 22:14:54 +01002435$(call gb_LinkTarget_add_libs,$(1),\
2436 $(TELEPATHY_LIBS) \
2437)
2438
2439endef
2440
2441else # !ENABLE_TELEPATHY
2442
Matúš Kukanfe327622012-08-09 00:15:52 +02002443gb_LinkTarget__use_telepathy :=
Eike Rathkea3a8b802012-03-16 22:14:54 +01002444
2445endif # ENABLE_TELEPATHY
2446
Michael Stahle3abec32014-02-11 15:57:18 +01002447ifneq ($(SYSTEM_LIBPNG),)
David Tardon6df9c472011-09-15 14:44:34 +02002448
2449define gb_LinkTarget__use_png
2450$(call gb_LinkTarget_set_include,$(1),\
2451 $$(INCLUDE) \
2452 $(LIBPNG_CFLAGS) \
2453)
2454
2455$(call gb_LinkTarget_add_libs,$(1),\
2456 $(LIBPNG_LIBS) \
2457)
2458
2459endef
2460
2461else # !SYSTEM_LIBPNG
2462
David Tardon6df9c472011-09-15 14:44:34 +02002463define gb_LinkTarget__use_png
Michael Stahl416b3212013-05-08 17:22:22 +02002464$(call gb_LinkTarget_set_include,$(1),\
2465 $(LIBPNG_CFLAGS) \
2466 $$(INCLUDE) \
2467)
Matúš Kukanf96d58b2012-09-08 18:13:20 +02002468$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardon6df9c472011-09-15 14:44:34 +02002469 png \
2470)
Michael Stahl398ce442012-09-28 21:47:29 +02002471$(call gb_LinkTarget__use_zlib,$(1))
David Tardon6df9c472011-09-15 14:44:34 +02002472
2473endef
2474
2475endif # !SYSTEM_LIBPNG
2476
Michael Stahl50471a82011-12-06 19:17:52 +01002477
Michael Stahle3abec32014-02-11 15:57:18 +01002478ifneq ($(SYSTEM_CURL),)
Michael Stahl50471a82011-12-06 19:17:52 +01002479
2480define gb_LinkTarget__use_curl
Cédric Bosdonnat89361fa2014-07-16 17:02:01 +02002481$(call gb_LinkTarget_add_defs,$(1),\
2482 -DSYSTEM_CURL \
2483)
Michael Stahl50471a82011-12-06 19:17:52 +01002484$(call gb_LinkTarget_set_include,$(1),\
2485 $$(INCLUDE) \
2486 $(CURL_CFLAGS) \
2487)
2488$(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
2489
2490endef
2491
2492else # !SYSTEM_CURL
2493
Michael Stahl32a617d2014-02-17 11:23:19 +01002494$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2495 curl \
2496))
2497
Michael Stahl50471a82011-12-06 19:17:52 +01002498define gb_LinkTarget__use_curl
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002499$(call gb_LinkTarget_use_package,$(1),curl)
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01002500$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002501 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01002502 $$(INCLUDE) \
2503)
Michael Stahl936a1a92013-10-23 22:37:11 +02002504
2505ifeq ($(COM),MSC)
Michael Stahl714b93b2013-10-24 00:32:04 +02002506$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl548da052014-06-02 01:35:41 +02002507 $(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 +01002508)
Michael Stahl936a1a92013-10-23 22:37:11 +02002509else
2510$(call gb_LinkTarget_add_libs,$(1),\
2511 -L$(call gb_UnpackedTarball_get_dir,curl)/lib/.libs -lcurl \
2512)
2513endif
Michael Stahl50471a82011-12-06 19:17:52 +01002514
2515endef
2516
2517endif # SYSTEM_CURL
2518
Stephan Bergmann49313b02012-11-27 15:35:02 +01002519ifeq ($(ENABLE_VALGRIND),TRUE)
David Tardon3446cda2011-12-23 12:21:19 +01002520
2521define gb_LinkTarget__use_valgrind
2522$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmann49313b02012-11-27 15:35:02 +01002523 -DHAVE_VALGRIND_HEADERS \
David Tardon3446cda2011-12-23 12:21:19 +01002524)
2525
2526$(call gb_LinkTarget_set_include,$(1),\
2527 $$(INCLUDE) \
2528 $(VALGRIND_CFLAGS) \
2529)
2530
2531endef
2532
Stephan Bergmann49313b02012-11-27 15:35:02 +01002533else # !ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01002534
2535define gb_LinkTarget__use_valgrind
2536
2537endef
2538
Stephan Bergmann49313b02012-11-27 15:35:02 +01002539endif # ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01002540
Michael Stahl32db4992014-02-11 19:35:22 +01002541ifneq ($(SYSTEM_POPPLER),)
David Tardondba2d322012-02-18 18:54:35 +01002542
2543define gb_LinkTarget__use_poppler
David Tardondba2d322012-02-18 18:54:35 +01002544$(call gb_LinkTarget_set_include,$(1),\
2545 $(POPPLER_CFLAGS) \
2546 $$(INCLUDE) \
2547)
2548
2549$(call gb_LinkTarget_add_libs,$(1),\
2550 $(POPPLER_LIBS) \
2551)
2552
2553endef
2554
2555else # !SYSTEM_POPPLER
2556
David Tardondba2d322012-02-18 18:54:35 +01002557define gb_LinkTarget__use_poppler
Michael Stahl2f6261f2013-09-19 19:28:36 +02002558$(call gb_LinkTarget_use_external_project,$(1),poppler)
Peter Foleyfb1d11d2013-02-17 09:26:01 -05002559
David Tardon548b61a2012-02-21 06:58:02 +01002560$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbaeb276d12013-07-08 14:01:17 +02002561 -I$(call gb_UnpackedTarball_get_dir,poppler) \
2562 -I$(call gb_UnpackedTarball_get_dir,poppler)/poppler \
2563 -I$(call gb_UnpackedTarball_get_dir,poppler)/goo \
David Tardon548b61a2012-02-21 06:58:02 +01002564 $$(INCLUDE) \
David Tardondba2d322012-02-18 18:54:35 +01002565)
2566
Michael Stahl2f6261f2013-09-19 19:28:36 +02002567$(call gb_LinkTarget_add_libs,$(1),\
2568 $(call gb_UnpackedTarball_get_dir,poppler)/fofi/.libs/libfofi$(gb_StaticLibrary_PLAINEXT) \
2569 $(call gb_UnpackedTarball_get_dir,poppler)/goo/.libs/libgoo$(gb_StaticLibrary_PLAINEXT) \
2570 $(call gb_UnpackedTarball_get_dir,poppler)/poppler/.libs/libpoppler$(gb_StaticLibrary_PLAINEXT) \
David Tardon548b61a2012-02-21 06:58:02 +01002571)
2572
2573ifeq ($(OS),MACOSX)
Michael Stahl967986b2012-09-28 00:54:49 +02002574$(call gb_LinkTarget_add_libs,$(1),\
2575 -lobjc \
David Tardon548b61a2012-02-21 06:58:02 +01002576)
2577else ifeq ($(OS),WNT)
Michael Stahldc397aae2012-09-28 15:31:46 +02002578$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon548b61a2012-02-21 06:58:02 +01002579 advapi32 \
2580 gdi32 \
2581)
2582endif
2583
David Tardondba2d322012-02-18 18:54:35 +01002584endef
2585
2586endif # SYSTEM_POPPLER
2587
David Tardon3446cda2011-12-23 12:21:19 +01002588
Michael Stahl46648152014-02-11 16:33:18 +01002589ifneq ($(SYSTEM_CLUCENE),)
David Tardon22c60cb2012-04-07 15:50:47 +02002590
2591define gb_LinkTarget__use_clucene
2592$(call gb_LinkTarget_add_defs,$(1),\
2593 $(filter-out -I%,$(CLUCENE_CFLAGS)) \
2594)
2595
2596$(call gb_LinkTarget_set_include,$(1),\
2597 $(filter -I%,$(CLUCENE_CFLAGS)) \
2598 $$(INCLUDE) \
2599)
2600
2601$(call gb_LinkTarget_add_libs,$(1),\
2602 $(CLUCENE_LIBS) \
2603)
2604
2605endef
2606
2607else # !SYSTEM_CLUCENE
2608
2609define gb_LinkTarget__use_clucene
Michael Stahl28cde0c2013-05-07 23:47:27 +02002610$(call gb_LinkTarget_set_include,$(1),\
2611 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/core \
2612 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/shared \
2613 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/contribs-lib \
2614 $$(INCLUDE) \
2615)
2616
Michael Stahlc923f7d2012-04-07 23:22:08 +02002617$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon22c60cb2012-04-07 15:50:47 +02002618 clucene \
2619)
2620
2621endef
2622
Marcos Paulo de Souzaf70343b2014-02-12 06:53:02 -02002623$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
David Tardon22c60cb2012-04-07 15:50:47 +02002624 clucene \
2625))
2626
2627endif # SYSTEM_CLUCENE
2628
Peter Foley64402842011-12-22 16:34:35 -05002629define gb_LinkTarget__use_gobject
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01002630$(call gb_LinkTarget_add_libs,$(1),\
2631 $(GOBJECT_LIBS) \
2632)
2633
2634$(call gb_LinkTarget_set_include,$(1),\
2635 $$(INCLUDE) \
2636 $(GOBJECT_CFLAGS) \
2637)
Peter Foley64402842011-12-22 16:34:35 -05002638endef
2639
Michael Stahl5866b332014-02-11 18:56:33 +01002640ifneq ($(SYSTEM_HSQLDB),)
David Tardon579f52d2012-03-27 16:36:31 +02002641
2642define gb_LinkTarget__use_hsqldb
2643
2644$(call gb_LinkTarget_add_defs,$(1),\
2645 -DSYSTEM_HSQLDB \
2646 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
2647)
2648
2649endef
2650
2651else # !SYSTEM_HSQLDB
2652
2653define gb_LinkTarget__use_hsqldb
2654
2655endef
2656
2657endif # SYSTEM_HSQLDB
2658
David Tardon8bc7afb2012-04-05 10:53:08 +02002659
Michael Stahl5378dea2014-02-11 19:11:47 +01002660ifneq ($(SYSTEM_OPENLDAP),)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002661
2662define gb_LinkTarget__use_openldap
2663
2664$(call gb_LinkTarget_add_libs,$(1),\
2665 -lldap \
2666 -llber \
2667)
2668
2669endef
2670
Michael Stahl2f6261f2013-09-19 19:28:36 +02002671gb_ExternalProject__use_openldap :=
2672
Michael Stahl5378dea2014-02-11 19:11:47 +01002673else # !SYSTEM_OPENLDAP
Michael Stahle0ee0d42012-07-16 19:00:07 +02002674
Michael Stahle0ee0d42012-07-16 19:00:07 +02002675define gb_LinkTarget__use_openldap
Matúš Kukan7a030392012-10-29 23:29:37 +01002676$(call gb_LinkTarget_use_unpacked,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002677$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002678 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002679 $$(INCLUDE) \
2680)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002681$(call gb_LinkTarget_use_external_project,$(1),openldap)
2682$(call gb_LinkTarget_add_libs,$(1), \
2683 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/libldap/.libs/libldap.a \
2684 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/liblber/.libs/liblber.a \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002685)
2686
2687endef
2688
Michael Stahl2f6261f2013-09-19 19:28:36 +02002689define gb_ExternalProject__use_openldap
2690$(call gb_ExternalProject_use_external_project,$(1),openldap)
2691
2692endef
2693
Michael Stahle0ee0d42012-07-16 19:00:07 +02002694endif # SYSTEM_OPENLDAP
2695
2696
Javier Fernandezf53228c2013-05-10 18:21:30 +00002697ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE)
2698
Michael Stahl23647592014-02-11 19:04:20 +01002699ifneq ($(SYSTEM_FIREBIRD),)
Javier Fernandezf53228c2013-05-10 18:21:30 +00002700
Rene Engelhard0b68d702013-07-16 21:50:14 +02002701define gb_LinkTarget__use_libfbembed
Javier Fernandezf53228c2013-05-10 18:21:30 +00002702$(call gb_LinkTarget_set_include,$(1),\
2703 $(FIREBIRD_CFLAGS) \
2704 $$(INCLUDE) \
2705)
2706$(call gb_LinkTarget_add_libs,$(1),$(FIREBIRD_LIBS))
2707
2708endef
2709
2710# gb_LinkTarget__use_atomic_ops :=
2711# gb_LinkTarget__use_tommath :=
2712
2713else # !SYSTEM_FIREBIRD
2714
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +01002715#$(call gb_LinkTarget__use_libatomic_ops,$(1))
2716
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +01002717define gb_LinkTarget__use_libfbembed
2718$(call gb_LinkTarget_use_package,$(1),firebird)
Javier Fernandezf53228c2013-05-10 18:21:30 +00002719$(call gb_LinkTarget_set_include,$(1),\
Javier Fernandezf53228c2013-05-10 18:21:30 +00002720 $$(INCLUDE) \
Andrzej J.R. Hunt7309fda2013-07-16 22:40:47 +02002721 -I$(call gb_UnpackedTarball_get_dir,firebird)/gen/firebird/include \
Javier Fernandezf53228c2013-05-10 18:21:30 +00002722)
Michael Stahl37563db2013-10-22 22:22:49 +02002723ifeq ($(COM),MSC)
2724$(call gb_LinkTarget_add_libs,$(1),\
2725 $(call gb_UnpackedTarball_get_dir,firebird)/gen/firebird/bin/ifbembed.lib \
Javier Fernandezf53228c2013-05-10 18:21:30 +00002726)
Michael Stahl37563db2013-10-22 22:22:49 +02002727else
2728$(call gb_LinkTarget_add_libs,$(1),\
2729 -L$(call gb_UnpackedTarball_get_dir,firebird)/gen/firebird/lib -lfbembed \
2730)
2731endif
Javier Fernandezf53228c2013-05-10 18:21:30 +00002732
2733endef
2734
Javier Fernandezf53228c2013-05-10 18:21:30 +00002735# define gb_LinkTarget__use_tommath
2736# $(call gb_LinkTarget_set_include,$(1),\
2737# $(TOMMATH_CFLAGS) \
2738# $$(INCLUDE) \
2739# )
2740
2741# $(call gb_LinkTarget_add_libs,$(1),$(TOMMATH_LIBS))
2742
2743# endef
2744
2745endif # SYSTEM_FIREBIRD
2746
2747else # !ENABLE_FIREBIRD_SDBC
Michael Stahl6fa0b372014-02-12 17:01:35 +01002748
Javier Fernandezf53228c2013-05-10 18:21:30 +00002749gb_LinkTarget__use_firebird :=
2750# gb_LinkTarget__use_atomic_ops :=
2751# gb_LinkTarget__use_tommath :=
2752
2753endif # ENABLE_FIREBIRD_SDBC
2754
2755
Michael Stahl5866b332014-02-11 18:56:33 +01002756ifneq ($(SYSTEM_POSTGRESQL),)
David Tardon8bc7afb2012-04-05 10:53:08 +02002757
2758define gb_LinkTarget__use_postgresql
2759
David Tardon8bc7afb2012-04-05 10:53:08 +02002760$(call gb_LinkTarget_set_include,$(1),\
2761 $(POSTGRESQL_INC) \
2762 $$(INCLUDE) \
2763)
2764
2765$(call gb_LinkTarget_add_libs,$(1),\
2766 -lpq \
2767)
2768
2769$(call gb_LinkTarget_add_ldflags,$(1),\
2770 $(POSTGRESQL_LIB) \
2771)
2772
2773endef
2774
2775else # !SYSTEM_POSTGRESQL
2776
2777define gb_LinkTarget__use_postgresql
2778
Michael Stahl2f6261f2013-09-19 19:28:36 +02002779$(call gb_LinkTarget_use_external_project,$(1),postgresql)
David Tardoncb9823b2012-10-22 06:33:00 +02002780
David Tardon8bc7afb2012-04-05 10:53:08 +02002781$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlee8323e2013-05-08 00:19:40 +02002782 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \
2783 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq \
David Tardon8bc7afb2012-04-05 10:53:08 +02002784 $$(INCLUDE) \
2785)
2786
Michael Stahl2f6261f2013-09-19 19:28:36 +02002787$(call gb_LinkTarget_add_libs,$(1),\
2788 $(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq/libpq$(gb_StaticLibrary_PLAINEXT) \
David Tardon8bc7afb2012-04-05 10:53:08 +02002789)
2790
Tor Lillqvistc2909892012-12-12 01:07:09 +02002791ifeq ($(OS)$(COM),WNTMSC)
Matúš Kukan5e32d152012-05-27 00:21:12 +02002792$(call gb_LinkTarget_use_external,$(1),openssl)
2793
Michael Stahldc397aae2012-09-28 15:31:46 +02002794$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon8bc7afb2012-04-05 10:53:08 +02002795 secur32 \
2796 ws2_32 \
David Tardon8bc7afb2012-04-05 10:53:08 +02002797)
David Tardon8af6aa62012-05-30 12:06:42 +02002798
David Tardon8bc7afb2012-04-05 10:53:08 +02002799endif
2800
2801endef
2802
David Tardon8bc7afb2012-04-05 10:53:08 +02002803endif # SYSTEM_POSTGRESQL
2804
Michael Stahl589d6342014-03-18 17:56:10 +01002805ifneq ($(WITH_MOZAB4WIN),)
2806
2807$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2808 moz_runtime \
2809))
Michael Stahlbf80dfc2013-10-31 11:00:47 +01002810
David Tardonc678a4c2012-04-05 17:59:36 +02002811define gb_LinkTarget__use_mozilla
2812
Michael Stahlbf80dfc2013-10-31 11:00:47 +01002813$(call gb_LinkTarget_use_unpacked,$(1),moz_lib)
2814$(call gb_LinkTarget_use_unpacked,$(1),moz_inc)
2815
David Tardonc678a4c2012-04-05 17:59:36 +02002816$(call gb_LinkTarget_add_defs,$(1),\
2817 -DMOZILLA_INTERNAL_API \
2818)
2819
2820$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlbf80dfc2013-10-31 11:00:47 +01002821 -I$(call gb_UnpackedTarball_get_dir,moz_inc) \
2822 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/addrbook \
2823 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/content \
2824 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/embed_base \
2825 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/intl \
2826 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/mime \
2827 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/mozldap \
2828 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/msgbase \
2829 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/necko \
2830 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/pref \
2831 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/profile \
2832 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/rdf \
2833 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/string \
2834 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/uconv \
2835 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/xpcom \
2836 -I$(call gb_UnpackedTarball_get_dir,moz_inc)/xpcom_obsolete \
David Tardonc678a4c2012-04-05 17:59:36 +02002837 $$(INCLUDE) \
David Tardonc678a4c2012-04-05 17:59:36 +02002838)
2839
Michael Stahld2f62c32013-10-23 00:14:01 +02002840$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01002841 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nspr4.lib \
Michael Stahl3dadfa52013-10-29 14:34:56 +01002842 $(call gb_UnpackedTarball_get_dir,moz_lib)/xpcom.lib \
2843 $(call gb_UnpackedTarball_get_dir,moz_lib)/xpcom_core.lib \
David Tardonc678a4c2012-04-05 17:59:36 +02002844)
2845
David Tardonc678a4c2012-04-05 17:59:36 +02002846$(call gb_LinkTarget_add_defs,$(1),\
2847 -DMOZILLA_CLIENT \
2848 -DMOZ_REFLOW_PERF \
2849 -DMOZ_REFLOW_PERF_DSP \
2850 -DMOZ_XUL \
2851 -DOJI \
2852 -DWIN32 \
2853 -DXP_PC \
2854 -DXP_WIN \
2855 -DXP_WIN32 \
2856 -D_WINDOWS \
2857)
2858
2859ifeq ($(COM),GCC)
2860
2861$(call gb_LinkTarget_add_cxxflags,$(1),\
2862 -Wall \
2863 -Wcast-align \
2864 -Wconversion \
2865 -Wno-long-long \
2866 -Woverloaded-virtual \
2867 -Wpointer-arith \
2868 -Wsynth \
2869 -fno-rtti \
2870)
2871
2872else
2873
2874ifneq ($(DBG_LEVEL),0)
2875$(call gb_LinkTarget_add_defs,$(1),\
2876 -D_STL_NOFORCE_MANIFEST \
2877)
2878endif
2879
2880$(call gb_LinkTarget_add_libs,$(1),\
Christian Lohmaierc18dc122013-10-10 18:31:27 +02002881 $(call gb_UnpackedTarball_get_dir,moz_lib)/embed_base_s.lib \
2882 $(call gb_UnpackedTarball_get_dir,moz_lib)/mozreg_s.lib \
David Tardonc678a4c2012-04-05 17:59:36 +02002883)
2884
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03002885endif # !GCC
David Tardonc678a4c2012-04-05 17:59:36 +02002886
David Tardonc678a4c2012-04-05 17:59:36 +02002887endef
2888
Michael Stahl589d6342014-03-18 17:56:10 +01002889endif # WITH_MOZAB4WIN
David Tardonc678a4c2012-04-05 17:59:36 +02002890
David Tardond4efa8b2012-04-28 20:48:14 +02002891ifeq ($(ENABLE_KDE),TRUE)
2892
2893define gb_LinkTarget__use_kde
2894$(call gb_LinkTarget_set_include,$(1),\
2895 $(filter -I%,$(KDE_CFLAGS)) \
2896 $$(INCLUDE) \
2897)
2898
2899$(call gb_LinkTarget_add_defs,$(1),\
2900 $(filter-out -I%,$(KDE_CFLAGS)) \
2901)
2902
2903$(call gb_LinkTarget_add_libs,$(1),\
2904 $(KDE_LIBS) \
2905)
2906
2907ifeq ($(COM),GCC)
2908$(call gb_LinkTarget_add_cxxflags,$(1),\
2909 -Wno-shadow \
2910)
2911endif
2912
2913endef
2914
2915else # !ENABLE_KDE
2916
2917define gb_LinkTarget__use_kde
2918
2919endef
2920
2921endif # ENABLE_KDE
2922
2923
2924ifeq ($(ENABLE_KDE4),TRUE)
2925
2926define gb_LinkTarget__use_kde4
2927$(call gb_LinkTarget_set_include,$(1),\
2928 $(filter -I%,$(KDE4_CFLAGS)) \
2929 $$(INCLUDE) \
2930)
2931
2932$(call gb_LinkTarget_add_defs,$(1),\
2933 $(filter-out -I%,$(KDE4_CFLAGS)) \
2934)
2935
2936$(call gb_LinkTarget_add_libs,$(1),\
2937 $(KDE4_LIBS) \
2938)
2939
2940ifeq ($(COM),GCC)
2941$(call gb_LinkTarget_add_cxxflags,$(1),\
2942 -Wno-shadow \
2943)
2944endif
2945
2946endef
2947
2948else # !ENABLE_KDE4
2949
2950define gb_LinkTarget__use_kde4
2951
2952endef
2953
2954endif # ENABLE_KDE4
2955
2956
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002957ifeq ($(ENABLE_TDE),TRUE)
David Tardond4efa8b2012-04-28 20:48:14 +02002958
2959define gb_LinkTarget__use_tde
2960$(call gb_LinkTarget_add_libs,$(1),\
2961 $(TDE_LIBS) \
2962)
2963
2964$(call gb_LinkTarget_set_include,$(1),\
2965 $$(INCLUDE) \
2966 $(TDE_CFLAGS) \
2967)
2968endef
2969
2970else # ! ENABLE_TDE
2971
2972define gb_LinkTarget__use_tde
2973
2974endef
2975
2976endif # ENABLE_TDE
2977
2978
2979ifeq ($(ENABLE_GCONF),TRUE)
2980
2981define gb_LinkTarget__use_gconf
2982$(call gb_LinkTarget_set_include,$(1),\
2983 $(filter -I%,$(GCONF_CFLAGS)) \
2984 $$(INCLUDE) \
2985)
2986
2987$(call gb_LinkTarget_add_defs,$(1),\
2988 $(filter-out -I%,$(GCONF_CFLAGS)) \
2989)
2990
2991$(call gb_LinkTarget_add_libs,$(1),\
2992 $(GCONF_LIBS) \
2993)
2994
2995endef
2996
2997else # !ENABLE_GCONF
2998
2999define gb_LinkTarget__use_gconf
3000
3001endef
3002
3003endif # ENABLE_GCONF
3004
3005
David Ostrovskye16ac692012-05-27 22:50:41 +02003006# PYTHON
Michael Stahl91926332012-11-27 15:50:53 +01003007# extra python_headers external because pyuno wrapper must not link python
Michael Stahl0443d0a2014-02-11 16:57:35 +01003008ifneq ($(SYSTEM_PYTHON),)
David Ostrovskye16ac692012-05-27 22:50:41 +02003009
Michael Stahl91926332012-11-27 15:50:53 +01003010define gb_LinkTarget__use_python_headers
David Ostrovskye16ac692012-05-27 22:50:41 +02003011$(call gb_LinkTarget_add_defs,$(1),\
3012 $(filter-out -I%,$(PYTHON_CFLAGS)) \
3013)
3014
3015$(call gb_LinkTarget_set_include,$(1),\
3016 $(filter -I%,$(PYTHON_CFLAGS)) \
3017 $$(INCLUDE) \
3018)
3019
Michael Stahl91926332012-11-27 15:50:53 +01003020endef
3021
3022define gb_LinkTarget__use_python
3023$(call gb_LinkTarget__use_python_headers,$(1))
3024
David Ostrovskye16ac692012-05-27 22:50:41 +02003025$(call gb_LinkTarget_add_libs,$(1),\
3026 $(PYTHON_LIBS) \
3027)
3028
3029endef
3030
3031else # !SYSTEM_PYTHON
3032
Michael Stahl720ca8e2014-03-18 18:24:15 +01003033$(eval $(call gb_Helper_register_packages_for_install,python,\
3034 python3 \
3035))
3036
Michael Stahl75a2c502012-12-04 13:47:22 +01003037# depend on external project because on MACOSX the Package is disabled...
Michael Stahl91926332012-11-27 15:50:53 +01003038define gb_LinkTarget__use_python_headers
Michael Stahl75a2c502012-12-04 13:47:22 +01003039$(call gb_LinkTarget_use_external_project,$(1),python3)
Michael Stahl91926332012-11-27 15:50:53 +01003040$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02003041 -I$(call gb_UnpackedTarball_get_dir,python3) \
3042 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
3043 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
Michael Stahl91926332012-11-27 15:50:53 +01003044 $$(INCLUDE) \
3045)
3046
3047endef
3048
David Ostrovskye16ac692012-05-27 22:50:41 +02003049define gb_LinkTarget__use_python
Michael Stahl91926332012-11-27 15:50:53 +01003050$(call gb_LinkTarget__use_python_headers,$(1))
David Ostrovskye16ac692012-05-27 22:50:41 +02003051
3052ifeq ($(OS),WNT)
3053$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl5b7ccf32013-06-04 17:16:47 +02003054 $(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 +02003055)
3056else ifeq ($(OS),MACOSX)
3057$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01003058 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
David Ostrovskye16ac692012-05-27 22:50:41 +02003059)
3060else
Michael Stahlb6bcbb62013-04-21 14:34:50 +02003061$(call gb_LinkTarget_add_libs,$(1),\
3062 -L$(call gb_UnpackedTarball_get_dir,python3) \
3063 -lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
David Ostrovskye16ac692012-05-27 22:50:41 +02003064)
3065endif
3066
David Ostrovskye16ac692012-05-27 22:50:41 +02003067endef
3068
David Ostrovskye16ac692012-05-27 22:50:41 +02003069endif # SYSTEM_PYTHON
3070
Kohei Yoshida49b0b692012-09-04 15:05:35 -04003071# ORCUS
Kohei Yoshida02346aa2013-09-18 19:06:20 -04003072ifeq ($(ENABLE_ORCUS),TRUE)
3073
Michael Stahle3abec32014-02-11 15:57:18 +01003074ifneq ($(SYSTEM_LIBORCUS),)
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003075
3076define gb_LinkTarget__use_orcus
3077$(call gb_LinkTarget_set_include,$(1),\
3078 $$(INCLUDE) \
Matúš Kukana2d63fe2012-09-09 16:29:10 +02003079 $(ORCUS_CFLAGS) \
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003080)
Rene Engelhard26b80fc2013-04-13 19:29:33 +02003081$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
Rene Engelhardfb360f52013-04-13 16:17:29 +02003082endef
3083
3084define gb_LinkTarget__use_orcus-parser
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003085
3086endef
3087
Kohei Yoshida31f589b2012-08-30 23:26:59 -04003088else # !SYSTEM_LIBORCUS
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003089
Kohei Yoshidac8b7e982012-08-31 10:11:32 -04003090define gb_LinkTarget__use_orcus
Michael Stahl2f6261f2013-09-19 19:28:36 +02003091$(call gb_LinkTarget_use_external_project,$(1),liborcus)
Matúš Kukan1ee76032012-09-09 15:29:43 +02003092$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl10fc13c2013-05-06 23:35:13 +02003093 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
Matúš Kukan1ee76032012-09-09 15:29:43 +02003094 $$(INCLUDE) \
3095)
Michael Stahl2f6261f2013-09-19 19:28:36 +02003096$(call gb_LinkTarget_add_libs,$(1),\
Markus Mohrhard36788e92014-01-08 13:17:28 +01003097 $(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs/liborcus-0.8$(gb_StaticLibrary_PLAINEXT) \
Michael Stahl2f6261f2013-09-19 19:28:36 +02003098)
David Tardonf1035c12012-11-23 06:49:21 +01003099
Michael Stahladddbbc2014-02-11 18:40:09 +01003100$(if $(SYSTEM_BOOST), \
Stephan Bergmann3743cdb2013-02-17 22:58:21 +01003101 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
3102 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
3103)
David Tardonf1035c12012-11-23 06:49:21 +01003104
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003105endef
3106
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04003107define gb_LinkTarget__use_orcus-parser
Michael Stahl2f6261f2013-09-19 19:28:36 +02003108$(call gb_LinkTarget_use_external_project,$(1),liborcus)
Kohei Yoshidaecc884e2013-12-17 21:18:46 -05003109$(call gb_LinkTarget_set_include,$(1),\
3110 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3111 $$(INCLUDE) \
3112)
Michael Stahl2f6261f2013-09-19 19:28:36 +02003113$(call gb_LinkTarget_add_libs,$(1),\
Markus Mohrhard36788e92014-01-08 13:17:28 +01003114 $(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs/liborcus-parser-0.8$(gb_StaticLibrary_PLAINEXT) \
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04003115)
3116
3117endef
3118
Kohei Yoshida31f589b2012-08-30 23:26:59 -04003119endif # SYSTEM_LIBORCUS
David Ostrovskye16ac692012-05-27 22:50:41 +02003120
Kohei Yoshida02346aa2013-09-18 19:06:20 -04003121else # ENABLE_ORCUS != TRUE
3122
3123gb_LinkTarget__use_orcus :=
3124gb_LinkTarget__use_orcus-parser :=
3125
3126endif
Michael Stahl78b59b82012-09-27 21:45:47 +02003127
David Tardon49a4d362013-11-12 16:44:40 +01003128ifeq ($(ENABLE_EOT),TRUE)
3129
Michael Stahle3abec32014-02-11 15:57:18 +01003130ifneq ($(SYSTEM_LIBEOT),)
David Tardon49a4d362013-11-12 16:44:40 +01003131
3132define gb_LinkTarget__use_libeot
3133$(call gb_LinkTarget_set_include,$(1),\
3134 $$(INCLUDE) \
3135 $(LIBEOT_CFLAGS) \
3136)
3137$(call gb_LinkTarget_add_libs,$(1),$(LIBEOT_LIBS))
3138
3139endef
3140
3141gb_ExternalProject__use_libeot :=
3142
3143else # !SYSTEM_LIBEOT
3144
3145define gb_LinkTarget__use_libeot
3146$(call gb_LinkTarget_set_include,$(1),\
3147 -I$(call gb_UnpackedTarball_get_dir,libeot)/inc \
3148 $$(INCLUDE) \
3149)
3150$(call gb_LinkTarget_add_libs,$(1),\
3151 $(call gb_UnpackedTarball_get_dir,libeot)/.libs/libeot$(gb_StaticLibrary_PLAINEXT) \
3152)
3153$(call gb_LinkTarget_use_external_project,$(1),libeot)
3154
3155endef
3156
3157define gb_ExternalProject__use_libeot
3158$(call gb_ExternalProject_use_external_project,$(1),libeot)
3159
3160endef
3161
3162endif # SYSTEM_LIBEOT
3163
3164else # !ENABLE_EOT
3165
3166gb_LinkTarget__use_libeot :=
3167gb_ExternalProject__use_libeot :=
3168
3169endif # ENABLE_EOT
3170
Michael Stahl78b59b82012-09-27 21:45:47 +02003171### X11 stuff ###
3172
3173ifeq ($(GUIBASE),unx)
3174
Michael Stahl78b59b82012-09-27 21:45:47 +02003175ifeq ($(XRANDR_DLOPEN),FALSE)
3176
3177define gb_LinkTarget__use_Xrandr
Michael Stahl78b59b82012-09-27 21:45:47 +02003178$(call gb_LinkTarget_set_include,$(1),\
3179 $$(INCLUDE) \
3180 $(XRANDR_CFLAGS) \
3181)
3182
3183$(call gb_LinkTarget_add_libs,$(1),\
3184 $(XRANDR_LIBS) \
3185)
3186endef
3187
3188else # XRANDR_DLOPEN
3189
3190define gb_LinkTarget__use_Xrandr
Michael Stahl78b59b82012-09-27 21:45:47 +02003191$(call gb_LinkTarget_add_defs,$(1),\
3192 -DXRANDR_DLOPEN \
3193)
3194endef
3195
3196endif # XRANDR_DLOPEN
3197
3198define gb_LinkTarget__use_Xrender
Michael Stahl78b59b82012-09-27 21:45:47 +02003199$(call gb_LinkTarget_set_include,$(1),\
3200 $$(INCLUDE) \
3201 $(XRENDER_CFLAGS) \
3202)
3203
3204$(call gb_LinkTarget_add_libs,$(1),\
3205 $(XRENDER_LIBS) \
3206)
3207endef
3208
3209endif # GUIBASE=unx
3210
Tor Lillqvist35491072011-08-02 21:22:35 +03003211
Michael Meeksb440cfc2013-02-28 12:05:07 +00003212gb_ExternalProject__use_nss3:=
3213
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03003214ifeq (,$(filter DESKTOP,$(BUILD_TYPE)))
3215
Peter Foleyc003d252013-01-01 09:39:36 -05003216gb_LinkTarget__use_nss3:=
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03003217
3218else
3219
Michael Stahle3abec32014-02-11 15:57:18 +01003220ifneq ($(SYSTEM_NSS),)
David Tardonb6aa4842011-08-11 13:10:14 +02003221
David Tardon2b9dbc82012-08-13 06:57:51 +02003222define gb_LinkTarget__use_nss3
3223$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmannea641222012-11-19 16:40:33 +01003224 -DSYSTEM_NSS \
David Tardon2b9dbc82012-08-13 06:57:51 +02003225)
3226
David Tardonb6aa4842011-08-11 13:10:14 +02003227$(call gb_LinkTarget_set_include,$(1),\
3228 $$(INCLUDE) \
Tomas Chvatal75f77e62011-11-02 21:16:53 +01003229 $(NSS_CFLAGS) \
David Tardonb6aa4842011-08-11 13:10:14 +02003230)
3231
3232$(call gb_LinkTarget_add_libs,$(1),\
Tomas Chvatal75f77e62011-11-02 21:16:53 +01003233 $(NSS_LIBS) \
David Tardonb6aa4842011-08-11 13:10:14 +02003234)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003235
David Tardonb6aa4842011-08-11 13:10:14 +02003236endef
3237
David Tardon2b9dbc82012-08-13 06:57:51 +02003238define gb_LinkTarget__use_plc4
3239$(call gb_LinkTarget__use_nss3,$(1))
3240
3241endef
3242
David Tardon6ef46562013-02-04 10:04:07 +01003243define gb_LinkTarget__use_ssl3
3244$(call gb_LinkTarget__use_nss3,$(1))
3245
3246endef
3247
Michael Stahle3abec32014-02-11 15:57:18 +01003248else # !SYSTEM_NSS
David Tardonb6aa4842011-08-11 13:10:14 +02003249
Michael Stahlffae67c2014-03-13 19:51:19 +01003250$(eval $(call gb_Helper_register_packages_for_install,ooo, \
3251 nss \
3252))
3253
David Tardon2b9dbc82012-08-13 06:57:51 +02003254define gb_LinkTarget__use_nss3
Peter Foleyc003d252013-01-01 09:39:36 -05003255$(call gb_LinkTarget_use_package,$(1),nss)
David Tardon2b9dbc82012-08-13 06:57:51 +02003256$(call gb_LinkTarget_set_include,$(1),\
3257 $$(INCLUDE) \
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003258 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/public/nss \
3259 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/out/include \
David Tardon2b9dbc82012-08-13 06:57:51 +02003260)
3261
Michael Stahld2f62c32013-10-23 00:14:01 +02003262ifeq ($(COM),MSC)
3263$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003264 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nspr4.lib \
3265 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nss3.lib \
3266 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/smime3.lib \
David Tardon2b9dbc82012-08-13 06:57:51 +02003267)
Michael Stahld2f62c32013-10-23 00:14:01 +02003268else
3269$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003270 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib \
Michael Stahld2f62c32013-10-23 00:14:01 +02003271 -lnspr4 \
3272 -lnss3 \
3273 -lsmime3 \
3274)
3275endif
David Tardon2b9dbc82012-08-13 06:57:51 +02003276
3277endef
3278
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003279define gb_LinkTarget__use_plc4
Peter Foleyc003d252013-01-01 09:39:36 -05003280$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahld2f62c32013-10-23 00:14:01 +02003281ifeq ($(COM),MSC)
3282$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003283 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/plc4.lib \
David Tardonb6aa4842011-08-11 13:10:14 +02003284)
Michael Stahld2f62c32013-10-23 00:14:01 +02003285else
3286$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003287 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lplc4 \
Michael Stahld2f62c32013-10-23 00:14:01 +02003288)
3289endif
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003290
David Tardonb6aa4842011-08-11 13:10:14 +02003291endef
3292
David Tardon6ef46562013-02-04 10:04:07 +01003293define gb_LinkTarget__use_ssl3
3294$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahld2f62c32013-10-23 00:14:01 +02003295ifeq ($(COM),MSC)
3296$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003297 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/ssl3.lib \
David Tardon6ef46562013-02-04 10:04:07 +01003298)
Michael Stahld2f62c32013-10-23 00:14:01 +02003299else
3300$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003301 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lssl3 \
Michael Stahld2f62c32013-10-23 00:14:01 +02003302)
3303endif
David Tardon6ef46562013-02-04 10:04:07 +01003304
3305endef
3306
Michael Meeksb440cfc2013-02-28 12:05:07 +00003307define gb_ExternalProject__use_nss3
3308$(call gb_ExternalProject_use_package,$(1),nss)
Michael Meeksb440cfc2013-02-28 12:05:07 +00003309
3310endef
3311
Michael Stahle3abec32014-02-11 15:57:18 +01003312endif # SYSTEM_NSS
3313
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03003314endif # DESKTOP
David Tardonb6aa4842011-08-11 13:10:14 +02003315
Zolnai Tamás62fd6302014-04-18 12:55:56 +02003316ifeq ($(ENABLE_GLTF),TRUE)
3317
3318define gb_LinkTarget__use_libgltf
3319$(call gb_LinkTarget_set_include,$(1),\
3320 -I$(call gb_UnpackedTarball_get_dir,libgltf)/inc \
3321 $$(INCLUDE) \
3322)
3323
Zolnai Tamás6403f2b2014-06-25 15:19:41 +02003324ifeq ($(COM),MSC)
3325$(call gb_LinkTarget_add_libs,$(1),\
3326 $(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 +02003327)
Zolnai Tamás6403f2b2014-06-25 15:19:41 +02003328else
3329$(call gb_LinkTarget_add_libs,$(1),\
3330 $(call gb_UnpackedTarball_get_dir,libgltf)/src/.libs/libgltf-0.0$(gb_StaticLibrary_PLAINEXT) \
3331)
3332endif
3333
3334$(call gb_LinkTarget_use_external_project,$(1),libgltf)
3335
3336endef
3337
3338define gb_ExternalProject__use_libgltf
3339$(call gb_ExternalProject_use_external_project,$(1),libgltf)
3340
Zolnai Tamás62fd6302014-04-18 12:55:56 +02003341endef
3342
Zolnai Tamásaa5fe792014-04-10 13:33:58 +02003343define gb_LinkTarget__use_opencollada_parser
3344$(call gb_LinkTarget_set_include,$(1),\
3345 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
3346 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADAFramework/include \
3347 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADASaxFrameworkLoader/include \
3348 -I$(call gb_UnpackedTarball_get_dir,opencollada)/GeneratedSaxParser/include \
3349 $$(INCLUDE) \
3350)
3351
3352$(call gb_LinkTarget_use_static_libraries,$(1),\
3353 opencollada_parser \
3354)
3355endef
3356
Zolnai Tamásd57591702014-04-10 13:37:38 +02003357define gb_LinkTarget__use_collada2gltf
3358$(call gb_LinkTarget_set_include,$(1),\
3359 -I$(call gb_UnpackedTarball_get_dir,collada2gltf) \
3360 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/assetModifiers \
3361 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/GLTF \
3362 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/helpers \
3363 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/JSON \
3364 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/dependencies/json/include/rapidjson/ \
3365 $$(INCLUDE) \
3366)
3367
3368$(call gb_LinkTarget_use_static_libraries,$(1),\
3369 collada2gltf \
3370)
3371endef
3372
Zolnai Tamás62fd6302014-04-18 12:55:56 +02003373endif
3374
Michael Stahl2ee5f242011-09-15 14:01:27 +02003375### Jars ############################################################
3376
Michael Stahl5866b332014-02-11 18:56:33 +01003377ifneq ($(SYSTEM_HSQLDB),)
Michael Stahl666173b2012-08-15 20:24:59 +02003378
3379define gb_Jar__use_hsqldb
3380$(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
3381endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02003382define gb_JunitTest__use_hsqldb
3383$(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
3384endef
Michael Stahl666173b2012-08-15 20:24:59 +02003385
3386else # !SYSTEM_HSQLDB
3387
David Tardon2dec0672014-05-19 10:20:37 +02003388ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl376d1b52014-03-18 20:25:04 +01003389$(eval $(call gb_Helper_register_jars_for_install,OOO,ooo, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003390 hsqldb \
3391))
David Tardon2dec0672014-05-19 10:20:37 +02003392endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003393
Michael Stahl666173b2012-08-15 20:24:59 +02003394define gb_Jar__use_hsqldb
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003395$(call gb_Jar_use_jar,$(1),hsqldb)
Michael Stahl666173b2012-08-15 20:24:59 +02003396endef
Michael Stahlb254f4f2012-08-17 11:47:29 +02003397define gb_JunitTest__use_hsqldb
3398$(call gb_JunitTest_use_jar,$(1),hsqldb)
3399endef
Michael Stahl666173b2012-08-15 20:24:59 +02003400
3401endif # SYSTEM_HSQLDB
3402
Michael Stahl2ee5f242011-09-15 14:01:27 +02003403
Rene Engelhard40facc42014-05-23 07:43:19 +02003404ifeq ($(ENABLE_SCRIPTING_BEANSHELL),TRUE)
3405
Michael Stahl7d2f7c62014-02-11 19:39:18 +01003406ifneq ($(SYSTEM_BSH),)
David Tardon3bcf9102011-10-04 09:44:48 +02003407
Michael Stahla4551262012-08-15 17:41:25 +02003408define gb_Jar__use_bsh
3409$(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
David Tardon3bcf9102011-10-04 09:44:48 +02003410endef
3411
3412else # !SYSTEM_BSH
3413
David Tardon2dec0672014-05-19 10:20:37 +02003414ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl8475eb92014-03-18 20:38:30 +01003415$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_bsh, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003416 bsh \
3417))
David Tardon2dec0672014-05-19 10:20:37 +02003418endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003419
Michael Stahla4551262012-08-15 17:41:25 +02003420define gb_Jar__use_bsh
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003421$(call gb_Jar_use_jar,$(1),bsh)
David Tardon3bcf9102011-10-04 09:44:48 +02003422endef
3423
3424endif # SYSTEM_BSH
3425
Rene Engelhard40facc42014-05-23 07:43:19 +02003426endif
3427
3428ifeq ($(ENABLE_SCRIPTING_JAVASCRIPT),TRUE)
Michael Stahl2ee5f242011-09-15 14:01:27 +02003429
Michael Stahl49dde4c2014-02-11 19:42:28 +01003430ifneq ($(SYSTEM_RHINO),)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003431
Michael Stahla4551262012-08-15 17:41:25 +02003432define gb_Jar__use_rhino
3433$(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003434endef
3435
3436else # !SYSTEM_RHINO
3437
David Tardon2dec0672014-05-19 10:20:37 +02003438ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl6474d1c2014-03-18 20:50:02 +01003439$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_rhino, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003440 js \
3441))
David Tardon2dec0672014-05-19 10:20:37 +02003442endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003443
Michael Stahla4551262012-08-15 17:41:25 +02003444define gb_Jar__use_rhino
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003445$(call gb_Jar_use_jar,$(1),js)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003446endef
3447
3448endif # SYSTEM_RHINO
3449
Rene Engelhard40facc42014-05-23 07:43:19 +02003450endif
3451
Michael Stahl7d2f7c62014-02-11 19:39:18 +01003452ifneq ($(SYSTEM_APACHE_COMMONS),)
David Tardon9b530e12012-04-07 10:07:35 +02003453
Michael Stahla4551262012-08-15 17:41:25 +02003454define gb_Jar__use_commons-codec
3455$(call gb_Jar_use_system_jar,$(1),$(COMMONS_CODEC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003456endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003457gb_ExternalProject__use_commons-codec :=
David Tardon9b530e12012-04-07 10:07:35 +02003458
Michael Stahla4551262012-08-15 17:41:25 +02003459define gb_Jar__use_commons-httpclient
3460$(call gb_Jar_use_system_jar,$(1),$(COMMONS_HTTPCLIENT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003461endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003462gb_ExternalProject__use_commons-httpclient :=
David Tardon9b530e12012-04-07 10:07:35 +02003463
Michael Stahla4551262012-08-15 17:41:25 +02003464define gb_Jar__use_commons-lang
3465$(call gb_Jar_usadd_linked_libse_system_jar,$(1),$(COMMONS_LANG_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003466endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003467gb_ExternalProject__use_commons-lang :=
David Tardon9b530e12012-04-07 10:07:35 +02003468
Michael Stahla4551262012-08-15 17:41:25 +02003469define gb_Jar__use_commons-logging
3470$(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003471endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003472gb_ExternalProject__use_commons-logging :=
David Tardon9b530e12012-04-07 10:07:35 +02003473
3474else # !SYSTEM_APACHE_COMMONS
3475
David Tardon2dec0672014-05-19 10:20:37 +02003476ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl2bec9f42014-03-18 21:54:33 +01003477$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
Caolán McNamara2b15c852014-03-25 09:31:52 +00003478 commons-logging-1.1.3 \
Michael Stahldb23d4b2013-10-24 23:10:27 +02003479))
David Tardon2dec0672014-05-19 10:20:37 +02003480endif
Michael Stahl87a723d2012-08-17 12:43:37 +02003481$(eval $(call gb_Helper_register_jars,OXT,\
Douglas Mencken7e470872014-05-20 12:55:56 -04003482 $(if $(filter TRUE,$(HAVE_JAVA6)),commons-codec-1.9,commons-codec-1.6) \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003483 commons-httpclient-3.1 \
Douglas Mencken7e470872014-05-20 12:55:56 -04003484 $(if $(filter TRUE,$(HAVE_JAVA6)),commons-lang3-3.3.1.jar,commons-lang-2.4) \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003485))
3486
Michael Stahla4551262012-08-15 17:41:25 +02003487define gb_Jar__use_commons-codec
Michael Stahl461d8302013-10-25 18:40:48 +02003488$(call gb_Jar_use_external_project,$(1),apache_commons_codec)
Douglas Mencken7e470872014-05-20 12:55:56 -04003489$(call gb_Jar_use_external_jar,$(1),$(call gb_UnpackedTarball_get_dir,apache_commons_codec)\
3490$(if $(filter TRUE,$(HAVE_JAVA6)),/dist/commons-codec-1.9.jar,/dist/commons-codec-1.6.jar),\
3491$(if $(filter TRUE,$(HAVE_JAVA6)),commons-codec-1.9.jar,commons-codec-1.6.jar)\
3492)
David Tardon9b530e12012-04-07 10:07:35 +02003493endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003494define gb_ExternalProject__use_commons-codec
3495$(call gb_ExternalProject_use_external_project,$(1),apache_commons_codec)
3496endef
David Tardon9b530e12012-04-07 10:07:35 +02003497
Michael Stahla4551262012-08-15 17:41:25 +02003498define gb_Jar__use_commons-httpclient
Michael Stahl461d8302013-10-25 18:40:48 +02003499$(call gb_Jar_use_external_project,$(1),apache_commons_httpclient)
3500$(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 +02003501endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003502define gb_ExternalProject__use_commons-httpclient
3503$(call gb_ExternalProject_use_external_project,$(1),apache_commons_httpclient)
3504endef
David Tardon9b530e12012-04-07 10:07:35 +02003505
Michael Stahla4551262012-08-15 17:41:25 +02003506define gb_Jar__use_commons-lang
Michael Stahl461d8302013-10-25 18:40:48 +02003507$(call gb_Jar_use_external_project,$(1),apache_commons_lang)
Douglas Mencken7e470872014-05-20 12:55:56 -04003508$(call gb_Jar_use_external_jar,$(1),$(call gb_UnpackedTarball_get_dir,apache_commons_lang)\
3509$(if $(filter TRUE,$(HAVE_JAVA6)),/target/commons-lang3-3.3.1.jar,/dist/commons-lang-2.4.jar),\
3510$(if $(filter TRUE,$(HAVE_JAVA6)),commons-lang3-3.3.1.jar,commons-lang-2.4.jar)\
3511)
David Tardon9b530e12012-04-07 10:07:35 +02003512endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003513define gb_ExternalProject__use_commons-lang
3514$(call gb_ExternalProject_use_external_project,$(1),apache_commons_lang)
3515endef
David Tardon9b530e12012-04-07 10:07:35 +02003516
Michael Stahla4551262012-08-15 17:41:25 +02003517define gb_Jar__use_commons-logging
Michael Stahl461d8302013-10-25 18:40:48 +02003518$(call gb_Jar_use_external_project,$(1),apache_commons_logging)
Caolán McNamara2b15c852014-03-25 09:31:52 +00003519$(call gb_Jar_use_jar,$(1),commons-logging-1.1.3)
David Tardon9b530e12012-04-07 10:07:35 +02003520endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02003521define gb_ExternalProject__use_commons-logging
Michael Stahla60427e2013-10-26 20:17:52 +02003522$(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
Michael Stahl2b7536a2012-10-05 21:17:25 +02003523endef
David Tardon9b530e12012-04-07 10:07:35 +02003524
3525endif # SYSTEM_APACHE_COMMONS
3526
3527
Michael Stahl32db4992014-02-11 19:35:22 +01003528ifneq ($(SYSTEM_JFREEREPORT),)
David Tardon9b530e12012-04-07 10:07:35 +02003529
Michael Stahla4551262012-08-15 17:41:25 +02003530define gb_Jar__use_flow-engine
3531$(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003532endef
3533
Michael Stahla4551262012-08-15 17:41:25 +02003534define gb_Jar__use_flute
3535$(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003536endef
3537
Michael Stahla4551262012-08-15 17:41:25 +02003538define gb_Jar__use_libbase
3539$(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003540endef
3541
Michael Stahla4551262012-08-15 17:41:25 +02003542define gb_Jar__use_libfonts
3543$(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003544endef
3545
Michael Stahla4551262012-08-15 17:41:25 +02003546define gb_Jar__use_libformula
3547$(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003548endef
3549
Michael Stahla4551262012-08-15 17:41:25 +02003550define gb_Jar__use_liblayout
3551$(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003552endef
3553
Michael Stahla4551262012-08-15 17:41:25 +02003554define gb_Jar__use_libloader
3555$(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003556endef
3557
Michael Stahla4551262012-08-15 17:41:25 +02003558define gb_Jar__use_librepository
3559$(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003560endef
3561
Michael Stahla4551262012-08-15 17:41:25 +02003562define gb_Jar__use_libserializer
3563$(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003564endef
3565
Michael Stahla4551262012-08-15 17:41:25 +02003566define gb_Jar__use_libxml
3567$(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003568endef
3569
Michael Stahla4551262012-08-15 17:41:25 +02003570define gb_Jar__use_sac
3571$(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003572endef
3573
3574else # !SYSTEM_JFREEREPORT
3575
David Tardon2dec0672014-05-19 10:20:37 +02003576ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl4c3626af2014-03-18 22:03:00 +01003577$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
Michael Stahl070ca1e2013-10-25 21:01:58 +02003578 flow-engine \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003579 flute-1.1.6 \
3580 libbase-1.1.6 \
3581 libfonts-1.1.6 \
3582 libformula-1.1.7 \
Michael Stahl070ca1e2013-10-25 21:01:58 +02003583 liblayout \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003584 libloader-1.1.6 \
3585 librepository-1.1.6 \
3586 libserializer-1.1.6 \
3587 libxml-1.1.7 \
3588 sac \
3589))
David Tardon2dec0672014-05-19 10:20:37 +02003590endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003591
Michael Stahla4551262012-08-15 17:41:25 +02003592define gb_Jar__use_flow-engine
Michael Stahl070ca1e2013-10-25 21:01:58 +02003593$(call gb_Jar_use_jar,$(1),flow-engine)
David Tardon9b530e12012-04-07 10:07:35 +02003594endef
3595
Michael Stahla4551262012-08-15 17:41:25 +02003596define gb_Jar__use_flute
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003597$(call gb_Jar_use_jar,$(1),flute-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003598endef
3599
Michael Stahla4551262012-08-15 17:41:25 +02003600define gb_Jar__use_libbase
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003601$(call gb_Jar_use_jar,$(1),libbase-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003602endef
3603
Michael Stahla4551262012-08-15 17:41:25 +02003604define gb_Jar__use_libfonts
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003605$(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003606endef
3607
Michael Stahla4551262012-08-15 17:41:25 +02003608define gb_Jar__use_libformula
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003609$(call gb_Jar_use_jar,$(1),libformula-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02003610endef
3611
Michael Stahla4551262012-08-15 17:41:25 +02003612define gb_Jar__use_liblayout
Michael Stahl070ca1e2013-10-25 21:01:58 +02003613$(call gb_Jar_use_jar,$(1),liblayout)
David Tardon9b530e12012-04-07 10:07:35 +02003614endef
3615
Michael Stahla4551262012-08-15 17:41:25 +02003616define gb_Jar__use_libloader
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003617$(call gb_Jar_use_jar,$(1),libloader-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003618endef
3619
Michael Stahla4551262012-08-15 17:41:25 +02003620define gb_Jar__use_librepository
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003621$(call gb_Jar_use_jar,$(1),librepository-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003622endef
3623
Michael Stahla4551262012-08-15 17:41:25 +02003624define gb_Jar__use_libserializer
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003625$(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003626endef
3627
Michael Stahla4551262012-08-15 17:41:25 +02003628define gb_Jar__use_libxml
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003629$(call gb_Jar_use_jar,$(1),libxml-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02003630endef
3631
Michael Stahla4551262012-08-15 17:41:25 +02003632define gb_Jar__use_sac
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003633$(call gb_Jar_use_jar,$(1),sac)
David Tardon9b530e12012-04-07 10:07:35 +02003634endef
3635
3636endif # SYSTEM_JFREEREPORT
3637
David Tardonc2eca352012-12-02 10:51:37 +01003638
3639# Executables
3640
David Tardonedf67302012-12-30 12:27:04 +01003641# FIXME: the library target should be for build too
3642define gb_Executable__register_bestreversemap
3643$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
3644 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
3645)
3646endef
3647
David Tardonceb0d062012-12-30 13:11:43 +01003648# TODO depending on the whole URE might be overkill, but I do not have a
3649# Windows machine to debug it...
3650# FIXME: the library target should be for build too
3651define gb_Executable__register_climaker
3652$(call gb_Executable_add_runtime_dependencies,climaker,\
3653 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003654 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003655 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03003656 $(call gb_UnoApi_get_target,udkapi) \
David Tardonceb0d062012-12-30 13:11:43 +01003657)
3658endef
3659
David Tardon6c1614a2014-01-08 13:49:46 +01003660define gb_Executable__register_cppumaker
3661$(call gb_Executable_add_runtime_dependencies,cppumaker,\
3662 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
3663)
3664endef
3665
Matúš Kukane1b51e72013-09-27 09:41:09 +02003666gb_Gallery__UNO_COMPONENTS := \
3667 comphelper/util/comphelp \
3668 configmgr/source/configmgr \
3669 drawinglayer/drawinglayer \
Matúš Kukane1b51e72013-09-27 09:41:09 +02003670 framework/util/fwk \
3671 i18npool/util/i18npool \
3672 package/source/xstor/xstor \
3673 package/util/package2 \
3674 sax/source/expatwrap/expwrap \
3675 sfx2/util/sfx \
3676 svgio/svgio \
3677 svx/util/svx \
3678 svx/util/svxcore \
3679 ucb/source/core/ucb1 \
3680 ucb/source/ucp/file/ucpfile1 \
3681 unoxml/source/service/unoxml
3682
Matúš Kukanbae52ee2013-05-16 09:17:57 +02003683# This is used to determine what we need for 'build' platform.
Matúš Kukan9555b5b2013-06-14 12:48:20 +02003684define gb_Executable__register_gengal
Matúš Kukan94b68822013-06-17 10:41:18 +02003685$(call gb_Executable_add_runtime_dependencies,gengal,\
Matúš Kukane1b51e72013-09-27 09:41:09 +02003686 $(foreach component,$(gb_Gallery__UNO_COMPONENTS) \
Matúš Kukan85c6f802013-05-23 23:01:05 +02003687 ,$(call gb_ComponentTarget_get_target_for_build,$(component))) \
David Tardon1546c292013-05-07 20:41:41 +02003688 $(call gb_AllLangResTarget_get_target,ofa) \
David Tardon1546c292013-05-07 20:41:41 +02003689 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Riccardo Magliocchettib75fae72013-06-06 18:52:57 +02003690 $(if $(filter-out MACOSX WNT,$(OS_FOR_BUILD)),$(if $(ENABLE_HEADLESS),, \
Caolan McNamara48e70ad2013-05-15 10:30:18 +01003691 $(call gb_Library_get_target,vclplug_svp) \
Riccardo Magliocchettib75fae72013-06-06 18:52:57 +02003692 )) \
Matúš Kukan8b162f22013-09-27 10:58:28 +02003693 $(call gb_Package_get_target_for_build,postprocess_registry) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003694 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003695 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
David Tardon1546c292013-05-07 20:41:41 +02003696 $(call gb_UnoApi_get_target,offapi) \
3697 $(call gb_UnoApi_get_target,udkapi) \
3698)
3699endef
3700
Michael Stahl187194b2014-02-11 19:17:42 +01003701ifeq ($(SYSTEM_ICU),)
David Tardonedf67302012-12-30 12:27:04 +01003702
3703define gb_Executable__register_gendict
3704$(call gb_Executable_add_runtime_dependencies,gendict,\
3705 $(call gb_Package_get_target_for_build,icu) \
3706)
3707endef
3708
3709endif
3710
David Tardonceb0d062012-12-30 13:11:43 +01003711define gb_Executable__register_idlc
3712$(call gb_Executable_add_runtime_dependencies,idlc,\
David Tardonce038cf2013-10-20 20:43:46 +02003713 $(call gb_ExternalExecutable_get_dependencies,ucpp) \
David Tardonceb0d062012-12-30 13:11:43 +01003714)
3715endef
3716
David Tardonedf67302012-12-30 12:27:04 +01003717define gb_Executable__register_localize
3718$(call gb_Executable_add_runtime_dependencies,localize,\
3719 $(foreach exec,cfgex helpex propex transex3 treex uiex ulfex xrmex,\
3720 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
3721 ) \
3722)
3723endef
3724
Michael Stahl4c51feb2013-09-21 01:39:41 +02003725# FIXME ure/services.rdb needs cleanup
Stephan Bergmannab149c72013-04-24 10:42:40 +02003726# The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
David Tardonedf67302012-12-30 12:27:04 +01003727# due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
3728# FIXME: the library target should be for build too
3729define gb_Executable__register_saxparser
3730$(call gb_Executable_add_runtime_dependencies,saxparser,\
3731 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003732 $(call gb_Rdb_get_target_for_build,saxparser) \
3733 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003734 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03003735 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01003736)
3737endef
3738
Stephan Bergmannab149c72013-04-24 10:42:40 +02003739# NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
David Tardonedf67302012-12-30 12:27:04 +01003740# required due to the settings for URE_SERVICES and URE_TYPES in
3741# cppuhelper/source/unorc
3742# FIXME: the library target should be for build too
3743define gb_Executable__register_uno
3744$(call gb_Executable_add_runtime_dependencies,uno,\
3745 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003746 $(call gb_Rdb_get_target_for_build,ure/services) \
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003747 $(INSTROOT)/$(LIBO_URE_SHARE_FOLDER)/misc/services.rdb \
Tor Lillqviste4c6fe52013-04-24 15:11:39 +03003748 $(call gb_UnoApi_get_target,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01003749)
3750endef
3751
3752
3753# External executables
3754
Michael Stahl379f9782014-02-11 16:49:19 +01003755ifneq ($(SYSTEM_LIBXML_FOR_BUILD),)
David Tardonc2eca352012-12-02 10:51:37 +01003756
3757gb_ExternalExecutable__register_xmllint :=
3758
3759else # ! SYSTEM_LIBXML_FOR_BUILD
3760
3761define gb_ExternalExecutable__register_xmllint
David Tardondbac8f52014-04-18 18:34:40 +02003762$(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)
David Tardon5b660242014-07-28 10:38:49 +02003763$(call gb_ExternalExecutable_add_dependencies,xmllint,\
3764 $(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
3765 $(call gb_Package_get_target,xml2) \
3766)
David Tardonc2eca352012-12-02 10:51:37 +01003767
3768endef
3769
3770endif # SYSTEM_LIBXML_FOR_BUILD
3771
Michael Stahle3abec32014-02-11 15:57:18 +01003772ifneq ($(SYSTEM_LIBXSLT_FOR_BUILD),)
David Tardonc2eca352012-12-02 10:51:37 +01003773
3774gb_ExternalExecutable__register_xsltproc :=
3775
3776else # ! SYSTEM_LIBXSLT_FOR_BUILD
3777
3778define gb_ExternalExecutable__register_xsltproc
David Tardondbac8f52014-04-18 18:34:40 +02003779$(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)
David Tardon5b660242014-07-28 10:38:49 +02003780$(call gb_ExternalExecutable_add_dependencies,xsltproc,\
3781 $(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
3782 $(call gb_Package_get_target,xslt) \
3783)
David Tardonc2eca352012-12-02 10:51:37 +01003784
3785endef
3786
3787endif # SYSTEM_LIBXSLT_FOR_BUILD
3788
David Tardonce038cf2013-10-20 20:43:46 +02003789ifneq (,$(SYSTEM_UCPP))
3790
3791gb_ExternalExecutable__register_ucpp :=
3792
3793else # ! SYSTEM_UCPP
3794
3795define gb_ExternalExecutable__register_ucpp
David Tardon489d2ea2013-10-21 08:17:32 +02003796$(call gb_ExternalExecutable_set_internal,ucpp,$(INSTDIR_FOR_BUILD)/$(SDKDIRNAME)/bin/ucpp$(gb_Executable_EXT_for_build))
David Tardonce038cf2013-10-20 20:43:46 +02003797
3798endef
3799
3800endif # SYSTEM_UCPP
3801
Matúš Kukane4826722013-03-05 22:03:38 +01003802ifeq (,$(PYTHON_FOR_BUILD))
David Tardonc2eca352012-12-02 10:51:37 +01003803
3804define gb_ExternalExecutable__register_python
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003805ifeq ($(OS),MACOSX)
3806
3807# use set_external, to avoid having the command added as prerequisite for the
3808# targets that make use of it. (Otherwise make will choke as it doesn't have a
3809# matching rule to build that specific file)
3810$(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))
3811# the Zip ensures that internal python has been built (cannot use the Package
3812# target, as that is not used on Mac)
David Tardon45a5c262013-05-16 13:36:24 +02003813$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003814
3815else
3816
Tor Lillqvist4c63fd102013-09-22 19:59:37 +03003817$(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 +01003818$(call gb_ExternalExecutable_set_precommand,python,$(subst $$,$$$$,$(gb_Python_PRECOMMAND)))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01003819$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
3820
3821endif
David Tardonc2eca352012-12-02 10:51:37 +01003822
3823endef
3824
Matúš Kukane4826722013-03-05 22:03:38 +01003825else
3826
3827define gb_ExternalExecutable__register_python
3828$(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
3829
3830endef
3831
3832endif # PYTHON_FOR_BUILD
David Tardonc2eca352012-12-02 10:51:37 +01003833
David Tardon63069262012-12-29 12:56:24 +01003834ifneq ($(SYSTEM_GENBRK),)
3835
3836define gb_ExternalExecutable__register_genbrk
3837$(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
3838
3839endef
3840
3841else # ! SYSTEM_GENBRK
3842
3843define gb_ExternalExecutable__register_genbrk
David Tardondbac8f52014-04-18 18:34:40 +02003844$(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 +01003845$(call gb_ExternalExecutable_set_precommand,genbrk,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01003846$(call gb_ExternalExecutable_add_dependencies,genbrk,\
3847 $(call gb_Package_get_target_for_build,icu) \
3848)
3849
3850endef
3851
3852endif
3853
3854ifneq ($(SYSTEM_GENCCODE),)
3855
3856define gb_ExternalExecutable__register_genccode
3857$(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
3858
3859endef
3860
3861else # ! SYSTEM_GENCCODE
3862
3863define gb_ExternalExecutable__register_genccode
David Tardondbac8f52014-04-18 18:34:40 +02003864$(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 +01003865$(call gb_ExternalExecutable_set_precommand,genccode,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01003866$(call gb_ExternalExecutable_add_dependencies,genccode,\
3867 $(call gb_Package_get_target_for_build,icu) \
3868)
3869
3870endef
3871
3872endif
3873
3874ifneq ($(SYSTEM_GENCMN),)
3875
3876define gb_ExternalExecutable__register_gencmn
3877$(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
3878
3879endef
3880
3881else # ! SYSTEM_GENCMN
3882
3883define gb_ExternalExecutable__register_gencmn
David Tardondbac8f52014-04-18 18:34:40 +02003884$(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 +01003885$(call gb_ExternalExecutable_set_precommand,gencmn,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01003886$(call gb_ExternalExecutable_add_dependencies,gencmn,\
3887 $(call gb_Package_get_target_for_build,icu) \
3888)
3889
3890endef
3891
3892endif
3893
Michael Stahlc74af0d2011-04-01 20:49:35 +00003894# vim: set noet sw=4 ts=4: