blob: 92ea4ba17670160da281154a0241593a088257a1 [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
David Ostrovsky152e2a22014-11-30 18:26:01 +010030
31ifeq ($(CPUNAME),X86_64)
32wnt_arch_subdir_optional=x64/
33wnt_arch_subdir_mandatory=x64
34else ifeq ($(CPUNAME),INTEL)
35wnt_arch_subdir_mandatory=Win32
36endif
37
Matúš Kukan8e535df2012-04-07 13:59:33 +020038# External headers
39
Michael Stahl5378dea2014-02-11 19:11:47 +010040ifneq ($(SYSTEM_ODBC_HEADERS),)
Matúš Kukan5eff0b62012-04-07 13:46:59 +020041
42define gb_LinkTarget__use_odbc_headers
43$(call gb_LinkTarget_add_defs,$(1),\
44 -DSYSTEM_ODBC_HEADERS \
45)
46
47endef
48
Michael Stahl5378dea2014-02-11 19:11:47 +010049else # !SYSTEM_ODBC_HEADERS
Matúš Kukan5eff0b62012-04-07 13:46:59 +020050
51define gb_LinkTarget__use_odbc_headers
Michael Stahlfea65aa2013-05-06 20:09:47 +020052$(call gb_LinkTarget_set_include,$(1),\
Khaled Hosny891bb7c2013-11-04 18:40:17 +020053 -I$(SRCDIR)/external/unixODBC/inc \
Michael Stahlfea65aa2013-05-06 20:09:47 +020054 $$(INCLUDE) \
55)
Matúš Kukan5eff0b62012-04-07 13:46:59 +020056
57endef
58
Michael Stahl5378dea2014-02-11 19:11:47 +010059endif # SYSTEM_ODBC_HEADERS
Matúš Kukan5eff0b62012-04-07 13:46:59 +020060
Michael Stahle3abec32014-02-11 15:57:18 +010061ifneq ($(SYSTEM_MDDS),)
Matúš Kukan22f50fb2012-08-29 12:27:17 +020062
David Tardond5d39272014-03-03 15:29:27 +010063gb_ExternalProject__use_mdds_headers :=
64
David Tardon93aff252014-03-03 16:23:27 +010065define gb_LinkTarget__use_mdds_headers
66$(call gb_LinkTarget_set_include,$(1),\
67 $(MDDS_CFLAGS) \
68 $$(INCLUDE) \
69)
70
71endef
Matúš Kukan22f50fb2012-08-29 12:27:17 +020072
Michael Stahle3abec32014-02-11 15:57:18 +010073else # !SYSTEM_MDDS
Matúš Kukan22f50fb2012-08-29 12:27:17 +020074
David Tardond5d39272014-03-03 15:29:27 +010075define gb_ExternalProject__use_mdds_headers
David Tardon7fffbdc2015-06-24 15:08:48 +020076$(call gb_ExternalProject_use_unpacked,$(1),mdds)
David Tardond5d39272014-03-03 15:29:27 +010077
78endef
79
Matúš Kukan22f50fb2012-08-29 12:27:17 +020080define gb_LinkTarget__use_mdds_headers
81$(call gb_LinkTarget_use_unpacked,$(1),mdds)
82$(call gb_LinkTarget_set_include,$(1),\
David Tardon93aff252014-03-03 16:23:27 +010083 $(MDDS_CFLAGS) \
Matúš Kukan22f50fb2012-08-29 12:27:17 +020084 $$(INCLUDE) \
85)
86
87endef
88
Michael Stahle3abec32014-02-11 15:57:18 +010089endif # SYSTEM_MDDS
Matúš Kukan22f50fb2012-08-29 12:27:17 +020090
Michael Stahlff69e722014-02-11 19:08:10 +010091ifneq ($(SYSTEM_GLM),)
Markus Mohrhardae9e6112013-12-23 17:31:55 +000092
Caolán McNamara2f866012020-02-06 16:45:18 +000093define gb_LinkTarget__use_glm_headers
94$(call gb_LinkTarget_add_defs,$(1),\
95 -DGLM_FORCE_CTOR_INIT \
96)
97
98endef
99
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200100gb_ExternalProject__use_glm_headers :=
Markus Mohrhardae9e6112013-12-23 17:31:55 +0000101
102else
103
104define gb_LinkTarget__use_glm_headers
Caolán McNamara2f866012020-02-06 16:45:18 +0000105$(call gb_LinkTarget_add_defs,$(1),\
106 -DGLM_FORCE_CTOR_INIT \
107)
Markus Mohrhardae9e6112013-12-23 17:31:55 +0000108$(call gb_LinkTarget_use_unpacked,$(1),glm)
109$(call gb_LinkTarget_set_include,$(1),\
David Tardon13494912015-05-19 16:59:26 +0200110 $(GLM_CFLAGS) \
Markus Mohrhardae9e6112013-12-23 17:31:55 +0000111 $$(INCLUDE) \
112)
113
114endef
115
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200116define gb_ExternalProject__use_glm_headers
David Tardon682e3592015-06-24 15:11:40 +0200117$(call gb_ExternalProject_use_unpacked,$(1),glm)
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200118
119endef
120
Markus Mohrhardae9e6112013-12-23 17:31:55 +0000121endif
122
Luboš Luňák478f2902019-10-12 16:24:03 +0200123ifneq ($(ENABLE_SKIA),)
124define gb_LinkTarget__use_skia
125$(call gb_LinkTarget_set_include,$(1),\
Luboš Luňáka81cddb2019-10-17 12:07:48 +0200126 -I$(call gb_UnpackedTarball_get_dir,skia)/include/core \
Tomaž Vajngerl8a4f6502019-10-18 00:29:46 +0200127 -I$(call gb_UnpackedTarball_get_dir,skia)/include/effects \
Luboš Luňák4faf0c52019-11-05 14:04:39 +0100128 -I$(call gb_UnpackedTarball_get_dir,skia)/include/gpu \
Luboš Luňáka81cddb2019-10-17 12:07:48 +0200129 -I$(call gb_UnpackedTarball_get_dir,skia)/include/config \
Luboš Luňák076926c2020-03-10 12:43:45 +0100130 -I$(call gb_UnpackedTarball_get_dir,skia)/include/ports \
Luboš Luňák2c86b792021-12-09 14:30:15 +0100131 -I$(call gb_UnpackedTarball_get_dir,skia)/include/private \
Luboš Luňáka81cddb2019-10-17 12:07:48 +0200132 -I$(call gb_UnpackedTarball_get_dir,skia)/include/third_party/vulkan \
Luboš Luňák54be6442019-11-06 16:14:50 +0100133 -I$(call gb_UnpackedTarball_get_dir,skia)/tools/gpu \
Luboš Luňáka81cddb2019-10-17 12:07:48 +0200134 -I$(call gb_UnpackedTarball_get_dir,skia) \
Luboš Luňák2eeb6822020-06-25 10:35:00 +0200135 -I$(SRCDIR)/external/skia/inc/ \
Luboš Luňáka81cddb2019-10-17 12:07:48 +0200136 $$(INCLUDE) \
Luboš Luňák478f2902019-10-12 16:24:03 +0200137)
138$(call gb_LinkTarget_use_libraries,$(1),skia)
Luboš Luňáka81cddb2019-10-17 12:07:48 +0200139$(call gb_LinkTarget_add_defs,$(1),\
140 -DSK_USER_CONFIG_HEADER="<$(BUILDDIR)/config_host/config_skia.h>" \
141 -DSKIA_DLL \
142)
Luboš Luňák478f2902019-10-12 16:24:03 +0200143endef
144$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo,\
Luboš Luňáka81cddb2019-10-17 12:07:48 +0200145 skia \
Luboš Luňák478f2902019-10-12 16:24:03 +0200146))
147endif
148
Michael Stahl674e7912013-05-06 20:23:49 +0200149ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
David Tardoneafaec92012-12-21 14:08:27 +0100150
151define gb_LinkTarget__use_sane_headers
Michael Stahl72279ea2013-05-06 20:14:35 +0200152$(call gb_LinkTarget_set_include,$(1),\
Mike Kaganski585d9802017-12-22 20:46:12 +0300153 $(if $(filter WNT,$(OS)), \
154 -I$(call gb_UnpackedTarball_get_dir,twain_dsm/pub/include), \
155 -I$(SRCDIR)/external/sane/inc) \
156 $$(INCLUDE) \
David Tardoneafaec92012-12-21 14:08:27 +0100157)
158
Mike Kaganski585d9802017-12-22 20:46:12 +0300159ifeq ($(OS),WNT)
160$(call gb_LinkTarget_use_unpacked,$(1),twain_dsm)
161endif
162
David Tardoneafaec92012-12-21 14:08:27 +0100163endef
164
165else
166
167gb_LinkTarget__use_sane_headers :=
168
169endif
170
Michael Stahl8555b372014-02-11 19:28:33 +0100171ifneq ($(SYSTEM_BLUEZ),)
David Tardon8fa06c82013-11-05 06:53:49 +0100172
173gb_LinkTarget__use_bluez_bluetooth_headers :=
174
175else # !SYSTEM_BLUEZ
176
177define gb_LinkTarget__use_bluez_bluetooth_headers
178$(call gb_LinkTarget_set_include,$(1),\
179 -I$(SRCDIR)/external/bluez_bluetooth/inc \
180 $$(INCLUDE) \
181)
182
183endef
184
185endif # SYSTEM_BLUEZ
186
Matúš Kukan8e535df2012-04-07 13:59:33 +0200187# External libraries
188
Michael Stahle3abec32014-02-11 15:57:18 +0100189ifneq ($(SYSTEM_CPPUNIT),)
David Tardon785e1d92011-07-25 10:34:22 +0200190
191define gb_LinkTarget__use_cppunit
192$(call gb_LinkTarget_set_include,$(1),\
193 $$(INCLUDE) \
194 $(CPPUNIT_CFLAGS) \
195)
196
197$(call gb_LinkTarget_add_libs,$(1),\
198 $(CPPUNIT_LIBS) \
199)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100200
David Tardon785e1d92011-07-25 10:34:22 +0200201endef
202
Michael Stahle3abec32014-02-11 15:57:18 +0100203else # !SYSTEM_CPPUNIT
David Tardon785e1d92011-07-25 10:34:22 +0200204
David Tardon785e1d92011-07-25 10:34:22 +0200205define gb_LinkTarget__use_cppunit
Markus Mohrhardd63a9402016-02-23 11:28:31 +0100206$(call gb_LinkTarget_use_external_project,$(1),cppunit, full)
Peter Foley143835b2012-11-25 16:37:40 -0500207
Peter Foley143835b2012-11-25 16:37:40 -0500208$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200209 -I$(call gb_UnpackedTarball_get_dir,cppunit/include)\
Peter Foley143835b2012-11-25 16:37:40 -0500210 $$(INCLUDE) \
211)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100212
Michael Stahl77fe50b2013-10-23 23:35:16 +0200213ifeq ($(COM),MSC)
214$(call gb_LinkTarget_add_libs,$(1),\
215 $(call gb_UnpackedTarball_get_dir,cppunit)/src/cppunit/$(if $(MSVC_USE_DEBUG_RUNTIME),DebugDll/cppunitd_dll.lib,ReleaseDll/cppunit_dll.lib) \
216)
217else
218$(call gb_LinkTarget_add_libs,$(1),\
219 -L$(call gb_UnpackedTarball_get_dir,cppunit)/src/cppunit/.libs -lcppunit \
220)
221endif
222
David Tardon785e1d92011-07-25 10:34:22 +0200223endef
224
Michael Stahle3abec32014-02-11 15:57:18 +0100225endif # SYSTEM_CPPUNIT
Michael Stahlc74af0d2011-04-01 20:49:35 +0000226
Jan-Marek Glogowskia6fae992022-01-05 11:49:19 +0100227
228ifeq ($(ENABLE_EPOXY),TRUE)
229ifeq ($(SYSTEM_EPOXY),TRUE)
David Tardon864f7752014-02-09 21:19:07 +0100230
Caolán McNamara482d7ce2016-11-25 20:25:27 +0000231define gb_LinkTarget__use_epoxy
David Tardon864f7752014-02-09 21:19:07 +0100232$(call gb_LinkTarget_set_include,$(1),\
233 $$(INCLUDE) \
Caolán McNamara482d7ce2016-11-25 20:25:27 +0000234 $(EPOXY_CFLAGS) \
David Tardon864f7752014-02-09 21:19:07 +0100235)
Caolán McNamara482d7ce2016-11-25 20:25:27 +0000236$(call gb_LinkTarget_add_libs,$(1),$(EPOXY_LIBS))
David Tardon864f7752014-02-09 21:19:07 +0100237
238endef
239
Caolán McNamara482d7ce2016-11-25 20:25:27 +0000240gb_ExternalProject__use_epoxy :=
Zolnai Tamás6403f2b2014-06-25 15:19:41 +0200241
Caolán McNamara482d7ce2016-11-25 20:25:27 +0000242else # !SYSTEM_EPOXY
David Tardon864f7752014-02-09 21:19:07 +0100243
Caolán McNamara482d7ce2016-11-25 20:25:27 +0000244define gb_LinkTarget__use_epoxy
245$(call gb_LinkTarget_set_include,$(1),\
246 -I$(call gb_UnpackedTarball_get_dir,epoxy/include) \
247 $$(INCLUDE) \
248)
249
250$(call gb_LinkTarget_use_libraries,$(1),\
251 epoxy \
252)
253
254endef
255
256$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
257 epoxy \
Michael Stahl0c94f232014-03-18 17:17:04 +0100258))
259
Caolán McNamara482d7ce2016-11-25 20:25:27 +0000260define gb_ExternalProject__use_epoxy
261$(call gb_ExternalProject_use_external_project,$(1),epoxy)
David Tardon864f7752014-02-09 21:19:07 +0100262
263endef
264
Jan-Marek Glogowskia6fae992022-01-05 11:49:19 +0100265endif # !SYSTEM_EPOXY
266else # !ENABLE_EPOXY
267
268gb_LinkTarget__use_epoxy :=
269gb_ExternalProject__use_epoxy :=
270
271endif # !ENABLE_EPOXY
272
David Tardon864f7752014-02-09 21:19:07 +0100273
Tor Lillqvist40900fb2013-01-03 12:48:14 +0200274define gb_LinkTarget__use_iconv
Tamas Bunth26b40fc2018-08-16 16:35:17 +0200275ifeq ($(COM),MSC)
276$(call gb_LinkTarget_add_libs,$(1),libiconv.lib)
277else
Tor Lillqvist40900fb2013-01-03 12:48:14 +0200278$(call gb_LinkTarget_add_libs,$(1),-liconv)
Tamas Bunth26b40fc2018-08-16 16:35:17 +0200279endif
Tor Lillqvist40900fb2013-01-03 12:48:14 +0200280endef
281
Michael Stahl871d75e2017-09-14 13:30:05 +0200282ifneq ($(SYSTEM_MARIADB_CONNECTOR_C),)
Peter Foleyc322d502013-01-23 16:29:08 -0500283
Michael Stahl871d75e2017-09-14 13:30:05 +0200284define gb_LinkTarget__use_mariadb-connector-c
David Tardon217eae42013-11-05 06:49:33 +0100285$(call gb_LinkTarget_set_include,$(1),\
286 $$(INCLUDE) \
287 $(MARIADB_CFLAGS) \
288)
289$(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
290
291endef
Michael Stahl871d75e2017-09-14 13:30:05 +0200292gb_ExternalProject__use_mariadb-connector-c :=
David Tardon217eae42013-11-05 06:49:33 +0100293
Michael Stahl871d75e2017-09-14 13:30:05 +0200294else # !SYSTEM_MARIADB_CONNECTOR_C
David Tardon217eae42013-11-05 06:49:33 +0100295
Michael Stahl871d75e2017-09-14 13:30:05 +0200296define gb_LinkTarget__use_mariadb-connector-c
David Tardon217eae42013-11-05 06:49:33 +0100297$(call gb_LinkTarget_set_include,$(1),\
298 $$(INCLUDE) \
299 $(MARIADB_CFLAGS) \
300)
301$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahl871d75e2017-09-14 13:30:05 +0200302 mariadb-connector-c \
David Tardon217eae42013-11-05 06:49:33 +0100303)
Michael Stahl13a05ee2018-08-20 19:07:40 +0200304ifeq ($(OS),MACOSX)
305$(call gb_LinkTarget_add_libs,$(1),\
306 -liconv \
307)
308endif
Michael Stahlfe041bb2020-06-16 15:09:50 +0200309$(call gb_LinkTarget_use_system_win32_libs,$(1),\
310 ws2_32 \
311 advapi32 \
312 kernel32 \
313 shlwapi \
314 crypt32 \
315)
David Tardon217eae42013-11-05 06:49:33 +0100316
317endef
Michael Stahl871d75e2017-09-14 13:30:05 +0200318define gb_ExternalProject__use_mariadb-connector-c
319$(call gb_ExternalProject_use_static_libraries,$(1),mariadb-connector-c)
David Tardon217eae42013-11-05 06:49:33 +0100320
321endef
322
Michael Stahl871d75e2017-09-14 13:30:05 +0200323endif # SYSTEM_MARIADB_CONNECTOR_C
David Tardon217eae42013-11-05 06:49:33 +0100324
325
Michael Stahl871d75e2017-09-14 13:30:05 +0200326ifneq ($(SYSTEM_MARIADB_CONNECTOR_C),)
David Tardon217eae42013-11-05 06:49:33 +0100327
Peter Foleyc322d502013-01-23 16:29:08 -0500328define gb_LinkTarget__use_mysql
329
330$(call gb_LinkTarget_add_defs,$(1),\
Fridrich Štrba1bf43062013-03-06 11:45:50 +0100331 -DSYSTEM_MARIADB \
Peter Foleyc322d502013-01-23 16:29:08 -0500332)
333
334$(call gb_LinkTarget_add_libs,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100335 $(MARIADB_LIBS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500336)
337
338$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbacad422a2013-03-06 16:33:07 +0100339 $(MARIADB_CFLAGS) \
Peter Foleyc322d502013-01-23 16:29:08 -0500340 $$(INCLUDE) \
341)
342endef
343
344else
345
346define gb_LinkTarget__use_mysql
347
348$(call gb_LinkTarget_set_include,$(1),\
Peter Foleyc322d502013-01-23 16:29:08 -0500349 $$(INCLUDE) \
350)
351
352endef
353
354endif
355
Michael Stahl04ff5352014-02-11 16:21:04 +0100356ifneq ($(SYSTEM_ZLIB),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000357
358define gb_LinkTarget__use_zlib
Michael Stahla88ef232011-04-13 16:11:41 +0000359$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000360 -DSYSTEM_ZLIB \
Stephan Bergmann2030e382021-08-04 08:00:16 +0200361 -DZLIB_CONST \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000362)
363$(call gb_LinkTarget_add_libs,$(1),-lz)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100364
Michael Stahlc74af0d2011-04-01 20:49:35 +0000365endef
366
David Tardoncb276232012-10-26 15:33:26 +0200367# nothing on system
368define gb_LinkTarget__use_zlib_x64
369
370endef
371
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100372gb_ExternalProject__use_zlib :=
373
Michael Stahlc74af0d2011-04-01 20:49:35 +0000374else # !SYSTEM_ZLIB
375
David Tardoncb276232012-10-26 15:33:26 +0200376define gb_LinkTarget__use_zlib_multiarch
377$(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
378
Stephan Bergmann2030e382021-08-04 08:00:16 +0200379$(call gb_LinkTarget_add_defs,$(1), \
380 -DZLIB_CONST \
381)
382
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200383$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl3c38b772013-05-08 15:47:24 +0200384 $(ZLIB_CFLAGS) \
Matúš Kukanf5ff45b2012-09-08 16:29:05 +0200385 $$(INCLUDE) \
386)
David Tardoncb276232012-10-26 15:33:26 +0200387
Michael Stahlc923f7d2012-04-07 23:22:08 +0200388$(call gb_LinkTarget_use_static_libraries,$(1),\
David Tardoncb276232012-10-26 15:33:26 +0200389 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000390)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100391
Michael Stahlc74af0d2011-04-01 20:49:35 +0000392endef
393
David Tardoncb276232012-10-26 15:33:26 +0200394define gb_LinkTarget__use_zlib
395$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
396
397endef
398
399define gb_LinkTarget__use_zlib_x64
400$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
401
402endef
403
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100404define gb_ExternalProject__use_zlib
Fridrich Štrba2f4d1602013-03-14 12:45:24 +0100405$(call gb_ExternalProject_use_static_libraries,$(1),zlib)
406
407endef
408
Michael Stahlc74af0d2011-04-01 20:49:35 +0000409endif # SYSTEM_ZLIB
410
411
Michael Stahl77d297f2017-09-13 22:50:14 +0200412ifneq ($(SYSTEM_LIBJPEG),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000413
Michael Stahl77d297f2017-09-13 22:50:14 +0200414define gb_LinkTarget__use_libjpeg
Caolán McNamara1295f492021-10-20 16:07:29 +0100415$(call gb_LinkTarget_set_include,$(1),\
416 $$(INCLUDE) \
417 $(LIBJPEG_CFLAGS) \
418)
Michael Stahleea709f2016-11-02 14:13:54 +0100419$(call gb_LinkTarget_add_libs,$(1),$(LIBJPEG_LIBS))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000420$(call gb_LinkTarget_set_ldflags,$(1),\
Michael Stahl73d2fe92011-04-13 16:11:39 +0000421 $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000422)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100423
Michael Stahlc74af0d2011-04-01 20:49:35 +0000424endef
425
Michael Stahl77d297f2017-09-13 22:50:14 +0200426gb_ExternalProject__use_libjpeg :=
Michael Stahleea709f2016-11-02 14:13:54 +0100427
Caolán McNamaraae967542017-03-14 14:20:36 +0000428else
Matúš Kukan71fae5d2014-11-17 09:16:34 +0100429
Michael Stahl77d297f2017-09-13 22:50:14 +0200430define gb_LinkTarget__use_libjpeg
Matúš Kukan71fae5d2014-11-17 09:16:34 +0100431$(call gb_LinkTarget_set_include,$(1),\
Caolán McNamara1295f492021-10-20 16:07:29 +0100432 -I$(call gb_UnpackedTarball_get_dir,libjpeg-turbo) \
Matúš Kukan71fae5d2014-11-17 09:16:34 +0100433 $$(INCLUDE) \
434)
Caolán McNamara1295f492021-10-20 16:07:29 +0100435$(call gb_LinkTarget_use_static_libraries,$(1),libjpeg-turbo)
Matúš Kukan71fae5d2014-11-17 09:16:34 +0100436
437endef
438
Michael Stahl77d297f2017-09-13 22:50:14 +0200439define gb_ExternalProject__use_libjpeg
Stephan Bergmannf6e02292022-01-02 20:14:04 +0100440$(call gb_ExternalProject_use_static_libraries,$(1),libjpeg-turbo)
Michael Stahleea709f2016-11-02 14:13:54 +0100441
442endef
443
Michael Stahl77d297f2017-09-13 22:50:14 +0200444endif # SYSTEM_LIBJPEG
Michael Stahlc74af0d2011-04-01 20:49:35 +0000445
Michael Stahlab586f12014-02-11 19:25:30 +0100446ifneq ($(SYSTEM_MYTHES),)
Peter Foley1d1bab42012-10-28 12:00:06 -0400447
448define gb_LinkTarget__use_mythes
Rene Engelhard99ef1f52012-10-28 23:00:03 +0100449$(call gb_LinkTarget_set_include,$(1),\
450 $$(INCLUDE) \
451 $(MYTHES_CFLAGS) \
452)
453$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
454
Peter Foley1d1bab42012-10-28 12:00:06 -0400455endef
456
457else # !SYSTEM_MYTHES
458
Peter Foley1d1bab42012-10-28 12:00:06 -0400459define gb_LinkTarget__use_mythes
Michael Stahl90ad80e32013-05-07 23:59:00 +0200460$(call gb_LinkTarget_set_include,$(1),\
461 -I$(call gb_UnpackedTarball_get_dir,mythes) \
462 $$(INCLUDE) \
463)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200464
465ifeq ($(COM),MSC)
Matúš Kukan327db9f2012-10-28 22:40:30 +0100466$(call gb_LinkTarget_use_static_libraries,$(1),\
467 mythes \
Peter Foley1d1bab42012-10-28 12:00:06 -0400468)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200469else
470$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
471$(call gb_LinkTarget_use_external_project,$(1),mythes)
472endif
Matúš Kukan327db9f2012-10-28 22:40:30 +0100473
Peter Foley1d1bab42012-10-28 12:00:06 -0400474endef
475
476endif # SYSTEM_MYTHES
477
Michael Stahlc74af0d2011-04-01 20:49:35 +0000478
Michael Stahl46648152014-02-11 16:33:18 +0100479ifneq ($(SYSTEM_EXPAT),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000480
David Tardon51149802013-04-09 09:22:20 +0200481define gb_LinkTarget__use_expat_impl
482$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000483
Michael Stahla88ef232011-04-13 16:11:41 +0000484$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000485 -DSYSTEM_EXPAT \
486)
487
488$(call gb_LinkTarget_add_libs,$(1),-lexpat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100489
Michael Stahlc74af0d2011-04-01 20:49:35 +0000490endef
491
Michael Stahl77289672012-11-17 00:36:29 +0100492gb_ExternalProject__use_expat :=
493
Michael Stahlc74af0d2011-04-01 20:49:35 +0000494else # !SYSTEM_EXPAT
495
David Tardon51149802013-04-09 09:22:20 +0200496define gb_LinkTarget__use_expat_impl
497$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
Michael Stahlc74af0d2011-04-01 20:49:35 +0000498
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700499$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl5e037bb2013-05-07 21:47:18 +0200500 -I$(call gb_UnpackedTarball_get_dir,expat)/lib \
David Ostrovsky2ffde7b2012-10-12 12:28:11 -0700501 $$(INCLUDE) \
502)
503
Michael Stahlc923f7d2012-04-07 23:22:08 +0200504$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000505 $(2) \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000506)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100507
Michael Stahlc74af0d2011-04-01 20:49:35 +0000508endef
509
Michael Stahl77289672012-11-17 00:36:29 +0100510define gb_ExternalProject__use_expat
Michael Stahl77289672012-11-17 00:36:29 +0100511$(call gb_ExternalProject_use_static_libraries,$(1),expat)
512
513endef
514
Michael Stahlc74af0d2011-04-01 20:49:35 +0000515endif # SYSTEM_EXPAT
516
David Tardon51149802013-04-09 09:22:20 +0200517define gb_LinkTarget__use_expat
518$(call gb_LinkTarget__use_expat_impl,$(1),expat)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100519
Michael Stahlc74af0d2011-04-01 20:49:35 +0000520endef
521
David Tardon51149802013-04-09 09:22:20 +0200522define gb_LinkTarget__use_expat_x64
523$(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100524
Michael Stahlc74af0d2011-04-01 20:49:35 +0000525endef
526
Michael Stahl9fc9e9c2014-02-11 19:21:36 +0100527ifneq ($(SYSTEM_HYPH),)
Peter Foleydd584cb2012-11-03 13:54:46 -0400528
529define gb_LinkTarget__use_hyphen
530$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
531
532endef
533
534else # !SYSTEM_HYPH
535
Peter Foleydd584cb2012-11-03 13:54:46 -0400536define gb_LinkTarget__use_hyphen
537$(call gb_LinkTarget_use_unpacked,$(1),hyphen)
538$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200539 -I$(call gb_UnpackedTarball_get_dir,hyphen)\
Peter Foleydd584cb2012-11-03 13:54:46 -0400540 $$(INCLUDE) \
541)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200542
543ifeq ($(COM),MSC)
Peter Foleydd584cb2012-11-03 13:54:46 -0400544$(call gb_LinkTarget_use_static_libraries,$(1),\
545 hyphen \
546)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200547else
548$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
549$(call gb_LinkTarget_use_external_project,$(1),hyphen)
550endif
Peter Foleydd584cb2012-11-03 13:54:46 -0400551
552endef
553
554endif # SYSTEM_HYPH
555
Michael Stahl9fc9e9c2014-02-11 19:21:36 +0100556ifneq ($(SYSTEM_HUNSPELL),)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100557
558define gb_LinkTarget__use_hunspell
559$(call gb_LinkTarget_set_include,$(1),\
560 $$(INCLUDE) \
561 $(HUNSPELL_CFLAGS) \
562)
563$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
564
565endef
566
Michael Stahl2f6261f2013-09-19 19:28:36 +0200567gb_ExternalProject__use_hunspell :=
568
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100569else # !SYSTEM_HUNSPELL
Armin Le Grand (Allotropia)02140552021-04-30 17:26:41 +0200570ifneq ($(ENABLE_WASM_STRIP_HUNSPELL),TRUE)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100571
572define gb_LinkTarget__use_hunspell
573$(call gb_LinkTarget_add_defs,$(1),\
574 -DHUNSPELL_STATIC \
575)
Matúš Kukan7a030392012-10-29 23:29:37 +0100576$(call gb_LinkTarget_use_unpacked,$(1),hunspell)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100577$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +0200578 -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
Matúš Kukan7a030392012-10-29 23:29:37 +0100579 $$(INCLUDE) \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100580)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200581
582ifeq ($(COM),MSC)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200583$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan327db9f2012-10-28 22:40:30 +0100584 hunspell \
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100585)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200586else
587$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
588$(call gb_LinkTarget_use_external_project,$(1),hunspell)
589endif
590
591endef
592
593define gb_ExternalProject__use_hunspell
594$(call gb_ExternalProject_use_external_project,$(1),hunspell)
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100595
596endef
597
Armin Le Grand (Allotropia)02140552021-04-30 17:26:41 +0200598endif # ENABLE_WASM_STRIP_HUNSPELL
Matúš Kukanb6bb9bd2011-12-03 14:44:12 +0100599endif # SYSTEM_HUNSPELL
600
601
Michael Stahladddbbc2014-02-11 18:40:09 +0100602ifneq ($(SYSTEM_BOOST),)
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200603
David Tardon57c439a2016-03-08 06:06:36 +0100604define gb_LinkTarget__use_boost_lib
David Tardon0f6919c2012-06-06 17:04:01 +0200605$(call gb_LinkTarget_set_include,$(1),\
606 $$(INCLUDE) \
607 $(BOOST_CPPFLAGS) \
608)
609
610$(call gb_LinkTarget_add_ldflags,$(1),\
611 $(BOOST_LDFLAGS) \
612)
613
David Tardon57c439a2016-03-08 06:06:36 +0100614$(call gb_LinkTarget_add_libs,$(1),$(2))
615
616endef
617
Caolán McNamarac25eee42017-04-19 12:02:25 +0100618define gb_LinkTarget__use_boost_locale
619$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_LOCALE_LIB))
620
621endef
622
David Tardon23d2e0e2016-03-08 08:35:59 +0100623define gb_LinkTarget__use_boost_date_time
David Tardon57c439a2016-03-08 06:06:36 +0100624$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_DATE_TIME_LIB))
David Tardon0f6919c2012-06-06 17:04:01 +0200625
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200626endef
627
David Tardonb4339fa2016-03-08 06:08:36 +0100628define gb_LinkTarget__use_boost_filesystem
629$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_FILESYSTEM_LIB))
630
631endef
632
633gb_ExternalProject__use_boost_filesystem :=
634
Markus Mohrhard36788e92014-01-08 13:17:28 +0100635define gb_LinkTarget__use_boost_iostreams
David Tardon57c439a2016-03-08 06:06:36 +0100636$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_IOSTREAMS_LIB))
Markus Mohrhard36788e92014-01-08 13:17:28 +0100637
638endef
639
David Tardon6d9de6b2014-03-03 20:39:13 +0100640gb_ExternalProject__use_boost_iostreams :=
641
Markus Mohrhard36788e92014-01-08 13:17:28 +0100642define gb_LinkTarget__use_boost_system
David Tardon57c439a2016-03-08 06:06:36 +0100643$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_SYSTEM_LIB))
Tor Lillqvist503b2482013-05-22 19:50:22 +0300644
645endef
646
Markus Mohrhard36788e92014-01-08 13:17:28 +0100647gb_ExternalProject__use_boost_system :=
Tor Lillqvist503b2482013-05-22 19:50:22 +0300648
Stephan Bergmann93208022013-02-16 22:56:19 +0100649define gb_LinkTarget__use_boost_headers
650$(call gb_LinkTarget_set_include,$(1),\
651 $$(INCLUDE) \
652 $(BOOST_CPPFLAGS) \
653)
654
655endef
656
Peter Foleycdb6eca2012-11-10 08:56:12 -0500657gb_ExternalProject__use_boost_headers:=
658
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200659else # !SYSTEM_BOOST
660
David Tardon57c439a2016-03-08 06:06:36 +0100661define gb_LinkTarget__use_boost_lib
Michael Stahl7f2e1682012-09-06 20:22:11 +0200662$(call gb_LinkTarget_add_defs,$(1),\
663 -DBOOST_ALL_NO_LIB \
664)
665
David Tardon57c439a2016-03-08 06:06:36 +0100666$(call gb_LinkTarget_use_static_libraries,$(1),$(2))
667
668endef
669
Caolán McNamarac25eee42017-04-19 12:02:25 +0100670define gb_LinkTarget__use_boost_locale
671$(call gb_LinkTarget__use_boost_lib,$(1),boost_locale)
672$(call gb_LinkTarget_add_libs,$(1),\
673 $(if $(filter $(OS),MACOSX),-liconv) \
674)
675
676endef
677
David Tardon23d2e0e2016-03-08 08:35:59 +0100678define gb_LinkTarget__use_boost_date_time
679$(call gb_LinkTarget__use_boost_lib,$(1),boost_date_time)
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200680
681endef
682
David Tardond72a33c2016-03-08 05:57:40 +0100683define gb_LinkTarget__use_boost_filesystem
David Tardon57c439a2016-03-08 06:06:36 +0100684$(call gb_LinkTarget__use_boost_lib,$(1),boost_filesystem)
David Tardond72a33c2016-03-08 05:57:40 +0100685
686endef
687
688define gb_ExternalProject__use_boost_filesystem
689$(call gb_ExternalProject_use_static_libraries,$(1),boost_filesystem)
690endef
691
Markus Mohrhard36788e92014-01-08 13:17:28 +0100692define gb_LinkTarget__use_boost_iostreams
David Tardon57c439a2016-03-08 06:06:36 +0100693$(call gb_LinkTarget__use_boost_lib,$(1),boost_iostreams)
Tor Lillqvist503b2482013-05-22 19:50:22 +0300694
695endef
696
Markus Mohrhard36788e92014-01-08 13:17:28 +0100697define gb_ExternalProject__use_boost_iostreams
698$(call gb_ExternalProject_use_static_libraries,$(1),boost_iostreams)
699endef
700
701define gb_LinkTarget__use_boost_system
David Tardon57c439a2016-03-08 06:06:36 +0100702$(call gb_LinkTarget__use_boost_lib,$(1),boost_system)
Markus Mohrhard36788e92014-01-08 13:17:28 +0100703
704endef
705
706define gb_ExternalProject__use_boost_system
707$(call gb_ExternalProject_use_static_libraries,$(1),boost_system)
Tor Lillqvist503b2482013-05-22 19:50:22 +0300708endef
709
Peter Foleye1f742a2012-11-12 18:37:10 -0500710define gb_LinkTarget__use_boost_headers
Christian Lohmaier1654a1e72012-11-14 18:11:30 +0100711$(call gb_LinkTarget_use_unpacked,$(1),boost)
Michael Stahla53586f2013-01-26 21:19:13 +0100712$(call gb_LinkTarget_set_include,$(1),\
Stephan Bergmannf51656c2016-05-31 13:32:15 +0200713 $(BOOST_CPPFLAGS) \
Michael Stahla53586f2013-01-26 21:19:13 +0100714 $$(INCLUDE) \
715)
Peter Foleye1f742a2012-11-12 18:37:10 -0500716
717endef
718
Peter Foleycdb6eca2012-11-10 08:56:12 -0500719define gb_ExternalProject__use_boost_headers
David Tardon682e3592015-06-24 15:11:40 +0200720$(call gb_ExternalProject_use_unpacked,$(1),boost)
Peter Foleycdb6eca2012-11-10 08:56:12 -0500721
722endef
David Tardond72a33c2016-03-08 05:57:40 +0100723
Cédric Bosdonnat12d193d2012-05-10 08:55:12 +0200724endif # SYSTEM_BOOST
725
726
Michael Stahl38abb6a2017-09-13 23:44:32 +0200727ifneq ($(SYSTEM_LIBCMIS),)
Matúš Kukan464b4332012-01-15 02:12:49 +0100728
Michael Stahl38abb6a2017-09-13 23:44:32 +0200729define gb_LinkTarget__use_libcmis
Matúš Kukan464b4332012-01-15 02:12:49 +0100730$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +0100731 $$(INCLUDE) \
Michael Stahl38abb6a2017-09-13 23:44:32 +0200732 $(LIBCMIS_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +0100733)
Michael Stahl38abb6a2017-09-13 23:44:32 +0200734$(call gb_LinkTarget_add_libs,$(1),$(LIBCMIS_LIBS))
Matúš Kukan464b4332012-01-15 02:12:49 +0100735
736endef
737
Michael Stahl38abb6a2017-09-13 23:44:32 +0200738else # !SYSTEM_LIBCMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100739
Michael Stahl38abb6a2017-09-13 23:44:32 +0200740define gb_LinkTarget__use_libcmis
Michael Stahl759d02b2013-05-08 00:55:21 +0200741$(call gb_LinkTarget_set_include,$(1),\
David Tardonb3c7bf52018-12-27 15:45:48 +0100742 -I$(call gb_UnpackedTarball_get_dir,libcmis)/inc \
Michael Stahl759d02b2013-05-08 00:55:21 +0200743 $$(INCLUDE) \
744)
Michael Stahlc923f7d2012-04-07 23:22:08 +0200745$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahl38abb6a2017-09-13 23:44:32 +0200746 libcmis \
Matúš Kukan464b4332012-01-15 02:12:49 +0100747)
748
749endef
750
Michael Stahl38abb6a2017-09-13 23:44:32 +0200751endif # SYSTEM_LIBCMIS
Matúš Kukan464b4332012-01-15 02:12:49 +0100752
David Tardon32cd12c2014-04-26 19:46:40 +0200753ifeq ($(ENABLE_JAVA),TRUE)
David Tardon2a71e152014-04-26 16:08:07 +0200754
David Tardon2a71e152014-04-26 16:08:07 +0200755define gb_LinkTarget__use_jawt
756$(call gb_LinkTarget_add_libs,$(1),\
757 $(JAWTLIB) \
758)
759
760endef
Peter Foleye5ccda42012-12-25 11:23:58 -0500761
David Tardon2a71e152014-04-26 16:08:07 +0200762else # !ENABLE_JAVA
763
764gb_LinkTarget__use_jawt :=
765
766endif # ENABLE_JAVA
Matúš Kukan464b4332012-01-15 02:12:49 +0100767
Michael Stahl23647592014-02-11 19:04:20 +0100768ifneq ($(SYSTEM_LIBATOMIC_OPS),)
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100769
770define gb_LinkTarget__use_libatomic_ops
771$(call gb_LinkTarget_set_include,$(1),\
772 $$(INCLUDE) \
773 $(LIBATOMIC_OPS_CFLAGS) \
774)
775$(call gb_LinkTarget_add_libs,$(1), $(LIBATOMIC_OPS_LIBS))
776
777endef
778gb_ExternalProject__use_libatomic_ops :=
779
780else # !SYSTEM_LIBATOMIC_OPS
781
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100782define gb_LinkTarget__use_libatomic_ops
783$(call gb_LinkTarget_set_include,$(1),\
784$(LIBATOMIC_OPS_CFLAGS) \
785 $$(INCLUDE) \
786 $(LIBATOMIC_OPS_CFLAGS) \
787)
Michael Stahlb3085262013-10-24 12:22:58 +0200788$(call gb_LinkTarget_use_external_project,$(1),\
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100789 libatomic_ops \
790)
Andrzej J.R. Huntf479f622013-09-05 16:27:50 +0100791
Michael Stahlb3085262013-10-24 12:22:58 +0200792$(call gb_LinkTarget_add_libs,$(1),\
Andrzej J.R. Huntf479f622013-09-05 16:27:50 +0100793 -L$(call gb_UnpackedTarball_get_dir,libatomic_ops)/src/lib -latomic_ops \
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100794)
795
796endef
797
798define gb_ExternalProject__use_libatomic_ops
Michael Stahlb3085262013-10-24 12:22:58 +0200799$(call gb_ExternalProject_use_external_project,$(1),libatomic_ops)
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +0100800
801endef
802
803endif # SYSTEM_LIBATOMIC_OPS
804
805
Michael Stahle3abec32014-02-11 15:57:18 +0100806ifneq ($(SYSTEM_LIBEXTTEXTCAT),)
Matúš Kukanbd030302011-12-03 15:06:52 +0100807
808define gb_LinkTarget__use_libexttextcat
809$(call gb_LinkTarget_set_include,$(1),\
810 $$(INCLUDE) \
811 $(LIBEXTTEXTCAT_CFLAGS) \
812)
Peter Foley31219f02012-11-09 17:25:56 -0500813$(call gb_LinkTarget_add_defs,$(1),\
814 -DSYSTEM_LIBEXTTEXTCAT \
815)
Matúš Kukanbd030302011-12-03 15:06:52 +0100816$(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
817
818endef
819
820else # !SYSTEM_LIBEXTTEXTCAT
821
Matúš Kukanbd030302011-12-03 15:06:52 +0100822define gb_LinkTarget__use_libexttextcat
Peter Foley31219f02012-11-09 17:25:56 -0500823$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl653e3582017-09-13 23:57:54 +0200824 -I$(call gb_UnpackedTarball_get_dir,libexttextcat/src) \
Peter Foley31219f02012-11-09 17:25:56 -0500825 $$(INCLUDE) \
826)
Matúš Kukanbd030302011-12-03 15:06:52 +0100827
Michael Stahl2f6261f2013-09-19 19:28:36 +0200828ifeq ($(COM),MSC)
829$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahl653e3582017-09-13 23:57:54 +0200830 libexttextcat \
Michael Stahl2f6261f2013-09-19 19:28:36 +0200831)
832else
833$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl653e3582017-09-13 23:57:54 +0200834 $(call gb_UnpackedTarball_get_dir,libexttextcat)/src/.libs/libexttextcat-2.0.a\
Michael Stahl2f6261f2013-09-19 19:28:36 +0200835)
Michael Stahl653e3582017-09-13 23:57:54 +0200836$(call gb_LinkTarget_use_external_project,$(1),libexttextcat)
Michael Stahl2f6261f2013-09-19 19:28:36 +0200837endif
838
839
Matúš Kukanbd030302011-12-03 15:06:52 +0100840endef
841
842endif # SYSTEM_LIBEXTTEXTCAT
843
844
László Némethf1579d32018-02-20 11:38:24 +0100845ifneq ($(SYSTEM_LIBNUMBERTEXT),)
846
847define gb_LinkTarget__use_libnumbertext
848$(call gb_LinkTarget_set_include,$(1),\
849 $$(INCLUDE) \
850 $(LIBNUMBERTEXT_CFLAGS) \
851)
852$(call gb_LinkTarget_add_defs,$(1),\
853 -DSYSTEM_LIBNUMBERTEXT \
854)
855$(call gb_LinkTarget_add_libs,$(1),$(LIBNUMBERTEXT_LIBS))
856
857endef
858
859else # !SYSTEM_LIBNUMBERTEXT
860
Christian Lohmaier566050c2018-08-22 00:47:13 +0200861$(eval $(call gb_Helper_register_packages_for_install,ooo, \
862 libnumbertext_numbertext \
863))
864
László Némethf1579d32018-02-20 11:38:24 +0100865define gb_LinkTarget__use_libnumbertext
Mike Kaganski19c45de2018-05-15 15:39:01 +0100866$(call gb_LinkTarget_use_package,$(1),libnumbertext_numbertext)
László Némethf1579d32018-02-20 11:38:24 +0100867$(call gb_LinkTarget_set_include,$(1),\
868 -I$(call gb_UnpackedTarball_get_dir,libnumbertext/src) \
869 $$(INCLUDE) \
870)
László Némethf1579d32018-02-20 11:38:24 +0100871
872ifeq ($(COM),MSC)
873$(call gb_LinkTarget_use_static_libraries,$(1),\
874 libnumbertext \
875)
876else
877
878$(call gb_LinkTarget_add_libs,$(1),\
879 $(call gb_UnpackedTarball_get_dir,libnumbertext)/src/.libs/libnumbertext-1.0.a\
880)
Stephan Bergmanne046c362018-05-04 10:21:23 +0200881$(call gb_LinkTarget_use_external_project,$(1),libnumbertext,full)
László Némethf1579d32018-02-20 11:38:24 +0100882
883endif
884
885endef
886
László Némethf1579d32018-02-20 11:38:24 +0100887endif # SYSTEM_LIBNUMBERTEXT
888
889
Michael Stahl379f9782014-02-11 16:49:19 +0100890ifneq ($(SYSTEM_LIBXML),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000891
892define gb_LinkTarget__use_libxml2
Michael Stahla88ef232011-04-13 16:11:41 +0000893$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +0000894 -DSYSTEM_LIBXML \
895)
896$(call gb_LinkTarget_set_include,$(1),\
897 $$(INCLUDE) \
898 $(LIBXML_CFLAGS) \
899)
900$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100901
Michael Stahlc74af0d2011-04-01 20:49:35 +0000902endef
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500903gb_ExternalProject__use_libxml2:=
Michael Stahlc74af0d2011-04-01 20:49:35 +0000904
905else # !SYSTEM_LIBXML
906
Michael Stahl64ea9942014-03-14 11:48:24 +0100907$(eval $(call gb_Helper_register_packages_for_install,ure,\
Michael Stahl84b0f062017-09-14 14:54:07 +0200908 libxml2 \
Michael Stahl64ea9942014-03-14 11:48:24 +0100909))
910
Michael Stahlc74af0d2011-04-01 20:49:35 +0000911define gb_LinkTarget__use_libxml2
Michael Stahl84b0f062017-09-14 14:54:07 +0200912$(call gb_LinkTarget_use_package,$(1),libxml2)
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500913$(call gb_LinkTarget_set_include,$(1),\
914 $$(INCLUDE) \
David Tardon7515b1a2014-07-17 17:27:05 +0200915 $(LIBXML_CFLAGS) \
916)
917
918$(call gb_LinkTarget_add_libs,$(1),\
919 $(LIBXML_LIBS) \
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500920)
921
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200922ifeq ($(COM),MSC)
David Tardon7515b1a2014-07-17 17:27:05 +0200923$(call gb_LinkTarget_use_external,$(1),icu_headers)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200924endif
925
Peter Foleyb9d6c7a2013-02-05 17:19:11 -0500926endef
927define gb_ExternalProject__use_libxml2
Michael Stahl84b0f062017-09-14 14:54:07 +0200928$(call gb_ExternalProject_use_package,$(1),libxml2)
Caolán McNamara6bccd202011-07-25 22:10:33 +0100929
David Tardon7515b1a2014-07-17 17:27:05 +0200930ifeq ($(COM),MSC)
Michael Stahl0c3838b2018-01-19 14:13:34 +0100931$(call gb_ExternalProject_use_packages,$(1),icu icu_ure)
David Tardon7515b1a2014-07-17 17:27:05 +0200932endif
933
Michael Stahlc74af0d2011-04-01 20:49:35 +0000934endef
935
936endif # SYSTEM_LIBXML
937
938
Michael Stahle3abec32014-02-11 15:57:18 +0100939ifneq ($(SYSTEM_LIBXSLT),)
Michael Stahlc74af0d2011-04-01 20:49:35 +0000940
941define gb_LinkTarget__use_libxslt
942$(call gb_LinkTarget_set_include,$(1),\
943 $$(INCLUDE) \
944 $(LIBXSLT_CFLAGS) \
945)
946$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +0100947
Michael Stahlc74af0d2011-04-01 20:49:35 +0000948endef
949
David Tardonab03e872012-08-15 07:20:13 +0200950define gb_LinkTarget__use_libexslt
951$(call gb_LinkTarget_set_include,$(1),\
952 $$(INCLUDE) \
953 $(LIBEXSLT_CFLAGS) \
954)
955
956$(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
957
958endef
959
Michael Stahlc74af0d2011-04-01 20:49:35 +0000960else # !SYSTEM_LIBXSLT
961
Michael Stahl32a617d2014-02-17 11:23:19 +0100962$(eval $(call gb_Helper_register_packages_for_install,ooo,\
Michael Stahl15b973e2017-09-14 15:26:10 +0200963 libxslt \
Michael Stahl32a617d2014-02-17 11:23:19 +0100964))
965
Michael Stahlc74af0d2011-04-01 20:49:35 +0000966define gb_LinkTarget__use_libxslt
Michael Stahl15b973e2017-09-14 15:26:10 +0200967$(call gb_LinkTarget_use_package,$(1),libxslt)
Peter Foley856c0752013-02-02 15:44:30 -0500968$(call gb_LinkTarget_set_include,$(1),\
969 $$(INCLUDE) \
Michael Stahl15b973e2017-09-14 15:26:10 +0200970 -I$(call gb_UnpackedTarball_get_dir,libxslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500971)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200972
973ifeq ($(COM),MSC)
974$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl15b973e2017-09-14 15:26:10 +0200975 $(call gb_UnpackedTarball_get_dir,libxslt)/win32/bin.msvc/libxslt.lib \
Michael Stahlc74af0d2011-04-01 20:49:35 +0000976)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200977else
978$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl15b973e2017-09-14 15:26:10 +0200979 -L$(call gb_UnpackedTarball_get_dir,libxslt)/libxslt/.libs -lxslt \
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200980)
981endif
Caolán McNamara6bccd202011-07-25 22:10:33 +0100982
Michael Stahlc74af0d2011-04-01 20:49:35 +0000983endef
984
David Tardonab03e872012-08-15 07:20:13 +0200985define gb_LinkTarget__use_libexslt
Michael Stahl15b973e2017-09-14 15:26:10 +0200986$(call gb_LinkTarget_use_package,$(1),libxslt)
Peter Foley856c0752013-02-02 15:44:30 -0500987$(call gb_LinkTarget_set_include,$(1),\
988 $$(INCLUDE) \
Michael Stahl15b973e2017-09-14 15:26:10 +0200989 -I$(call gb_UnpackedTarball_get_dir,libxslt) \
Peter Foley856c0752013-02-02 15:44:30 -0500990)
991
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200992ifeq ($(COM),MSC)
993$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl15b973e2017-09-14 15:26:10 +0200994 $(call gb_UnpackedTarball_get_dir,libxslt)/win32/bin.msvc/libexslt.lib \
David Tardonab03e872012-08-15 07:20:13 +0200995)
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200996else
997$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl15b973e2017-09-14 15:26:10 +0200998 -L$(call gb_UnpackedTarball_get_dir,libxslt)/libexslt/.libs -lexslt \
Michael Stahlc03ff5e2013-10-22 18:02:28 +0200999)
1000endif
David Tardonab03e872012-08-15 07:20:13 +02001001
1002endef
1003
Michael Stahlc74af0d2011-04-01 20:49:35 +00001004endif # SYSTEM_LIBXSLT
1005
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +02001006
Miklos Vajnaab50f0b2017-06-21 21:59:11 +02001007ifneq ($(SYSTEM_XMLSEC),)
1008
1009define gb_LinkTarget__use_xmlsec
1010$(call gb_LinkTarget_add_defs,$(1),\
1011 -DSYSTEM_XMLSEC \
1012)
1013$(call gb_LinkTarget_set_include,$(1),\
1014 $$(INCLUDE) \
1015 $(XMLSEC_CFLAGS) \
1016)
1017$(call gb_LinkTarget_add_libs,$(1),$(XMLSEC_LIBS))
1018
1019endef
1020
1021gb_ExternalProject__use_xmlsec:=
1022
1023else # !SYSTEM_XMLSEC
1024
1025$(eval $(call gb_Helper_register_packages_for_install,ooo,\
1026 xmlsec \
1027))
1028
1029define gb_LinkTarget__use_xmlsec
1030
1031endef
1032
1033endif # SYSTEM_XMLSEC
1034
Michael Stahl49dde4c2014-02-11 19:42:28 +01001035ifneq ($(SYSTEM_LIBLANGTAG),)
Eike Rathkea774a482012-08-06 19:22:43 +02001036
1037define gb_LinkTarget__use_liblangtag
1038$(call gb_LinkTarget_set_include,$(1),\
1039 $$(INCLUDE) \
1040 $(LIBLANGTAG_CFLAGS) \
1041)
1042
1043$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
1044
1045endef
1046
David Tardonc2a119b2016-01-13 14:24:31 +01001047gb_ExternalProject__use_liblangtag :=
1048
Eike Rathkea774a482012-08-06 19:22:43 +02001049else # !SYSTEM_LIBLANGTAG
1050
Stephan Bergmann475e4b42016-10-25 16:46:35 +02001051$(eval $(call gb_Helper_register_packages_for_install,ure,\
Michael Stahl01adcd82014-03-18 17:38:06 +01001052 liblangtag_data \
1053))
1054
David Tardon7d93bb82016-01-13 15:45:17 +01001055ifeq ($(COM),MSC)
1056
Eike Rathkea774a482012-08-06 19:22:43 +02001057define gb_LinkTarget__use_liblangtag
Peter Foley782151a2012-11-11 16:02:36 -05001058$(call gb_LinkTarget_set_include,$(1),\
David Tardon34513502016-01-13 14:21:10 +01001059 $(LIBLANGTAG_CFLAGS) \
Peter Foley782151a2012-11-11 16:02:36 -05001060 $$(INCLUDE) \
1061)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001062$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
Michael Stahl0bb76482017-09-14 12:20:31 +02001063$(call gb_LinkTarget_use_external_project,$(1),liblangtag)
Eike Rathkea774a482012-08-06 19:22:43 +02001064
1065endef
1066
David Tardon7d93bb82016-01-13 15:45:17 +01001067else
1068
Stephan Bergmann475e4b42016-10-25 16:46:35 +02001069$(eval $(call gb_Helper_register_packages_for_install,ure,\
David Tardon7d93bb82016-01-13 15:45:17 +01001070 liblangtag \
1071))
1072
1073define gb_LinkTarget__use_liblangtag
1074$(call gb_LinkTarget_set_include,$(1),\
1075 $(LIBLANGTAG_CFLAGS) \
1076 $$(INCLUDE) \
1077)
1078$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
1079$(call gb_LinkTarget_use_package,$(1),liblangtag)
1080
1081endef
1082
1083endif # MSC
1084
David Tardonc2a119b2016-01-13 14:24:31 +01001085define gb_ExternalProject__use_liblangtag
Michael Stahl0bb76482017-09-14 12:20:31 +02001086$(call gb_ExternalProject_use_external_project,$(1),liblangtag)
David Tardonc2a119b2016-01-13 14:24:31 +01001087
1088endef
1089
Eike Rathkea774a482012-08-06 19:22:43 +02001090endif # SYSTEM_LIBLANGTAG
1091
Jan Holesovsky6a7b32b02012-08-10 10:27:54 +02001092
Michael Stahle3abec32014-02-11 15:57:18 +01001093ifneq ($(SYSTEM_REDLAND),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001094
1095define gb_LinkTarget__use_librdf
Michael Stahla88ef232011-04-13 16:11:41 +00001096$(call gb_LinkTarget_add_defs,$(1),\
Michael Stahlc74af0d2011-04-01 20:49:35 +00001097 -DSYSTEM_REDLAND \
1098)
1099$(call gb_LinkTarget_set_include,$(1),\
1100 $$(INCLUDE) \
1101 $(REDLAND_CFLAGS) \
1102)
1103$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001104
Michael Stahlc74af0d2011-04-01 20:49:35 +00001105endef
1106
Peter Foley18bd1e72012-12-27 18:04:21 -05001107gb_LinkTarget__use_redland_headers:=
1108
1109gb_LinkTarget__use_raptor_headers:=
1110
1111gb_LinkTarget__use_rasqal_headers:=
1112
Michael Stahlc74af0d2011-04-01 20:49:35 +00001113else # !SYSTEM_REDLAND
1114
Peter Foley18bd1e72012-12-27 18:04:21 -05001115define gb_LinkTarget__use_redland_headers
1116$(call gb_LinkTarget_set_include,$(1),\
Michael Stahld719c012013-04-01 12:41:18 +02001117 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001118 $$(INCLUDE) \
1119)
1120
1121endef
1122
1123define gb_LinkTarget__use_raptor_headers
1124$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001125 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001126 $$(INCLUDE) \
1127)
1128
1129endef
1130
1131define gb_LinkTarget__use_rasqal_headers
1132$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001133 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
Peter Foley18bd1e72012-12-27 18:04:21 -05001134 $$(INCLUDE) \
1135)
1136
1137endef
1138
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001139ifneq ($(OS),ANDROID)
1140
Michael Stahl5f9cda22013-11-01 15:43:47 +01001141ifeq ($(COM),MSC)
Michael Stahlae8e5792014-01-10 12:07:31 +01001142$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
David Tardon491dea02013-05-01 11:23:50 +02001143 raptor2 \
1144 rasqal \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001145 rdf \
1146))
Michael Stahl5ae30d32014-03-13 19:32:13 +01001147else
1148$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1149 raptor \
1150 rasqal \
1151 redland \
1152))
Michael Stahl5f9cda22013-11-01 15:43:47 +01001153endif
Michael Stahlc74af0d2011-04-01 20:49:35 +00001154
1155define gb_LinkTarget__use_librdf
Michael Stahl831aaef2013-10-24 01:09:35 +02001156ifeq ($(COM),MSC)
1157$(call gb_LinkTarget_use_libraries,$(1),\
1158 raptor2 \
1159 rdf \
1160)
1161else
Caolán McNamara87114362016-12-19 21:17:48 +00001162$(call gb_LinkTarget_use_packages,$(1),redland raptor rasqal)
Matúš Kukan85d1e392013-12-14 11:17:30 +01001163
Michael Stahl2793c542013-10-23 21:18:24 +02001164$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl2793c542013-10-23 21:18:24 +02001165 -L$(call gb_UnpackedTarball_get_dir,redland)/src/.libs -lrdf \
Caolán McNamara87114362016-12-19 21:17:48 +00001166 -L$(call gb_UnpackedTarball_get_dir,raptor)/src/.libs -lraptor2 \
1167 -L$(call gb_UnpackedTarball_get_dir,rasqal)/src/.libs -lrasqal \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001168)
Michael Stahl831aaef2013-10-24 01:09:35 +02001169endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001170
Michael Stahlc74af0d2011-04-01 20:49:35 +00001171endef
1172
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001173else # ANDROID
1174
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001175define gb_LinkTarget__use_librdf
Caolán McNamara87114362016-12-19 21:17:48 +00001176$(call gb_LinkTarget_use_packages,$(1),redland raptor rasqal)
Tor Lillqvist9a42ca72012-04-19 21:45:14 +03001177
1178endef
1179
1180endif # ANDROID
1181
Michael Stahlc74af0d2011-04-01 20:49:35 +00001182endif # SYSTEM_REDLAND
1183
Michael Stahl5c0e6d82014-02-11 17:03:53 +01001184ifneq ($(SYSTEM_CAIRO),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001185
Michael Stahlc74af0d2011-04-01 20:49:35 +00001186define gb_LinkTarget__use_cairo
1187$(call gb_LinkTarget_set_include,$(1),\
1188 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001189 $(CAIRO_CFLAGS) \
1190)
David Tardon962771f2013-05-24 14:35:18 +02001191$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001192$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001193
Michael Stahlc74af0d2011-04-01 20:49:35 +00001194endef
1195
Michael Stahl5c0e6d82014-02-11 17:03:53 +01001196else # !SYSTEM_CAIRO
Michael Stahlc74af0d2011-04-01 20:49:35 +00001197
Christian Lohmaierdac70b92021-06-08 20:04:46 +02001198ifneq ($(filter-out MACOSX WNT,$(OS)),)
1199
Michael Stahl32a617d2014-02-17 11:23:19 +01001200$(eval $(call gb_Helper_register_packages_for_install,ooo,\
1201 cairo \
Jan-Marek Glogowski017bc462021-06-01 18:53:40 +02001202 pixman \
Michael Stahl32a617d2014-02-17 11:23:19 +01001203))
1204
Michael Stahlc74af0d2011-04-01 20:49:35 +00001205define gb_LinkTarget__use_cairo
Michael Stahlde142202012-11-20 22:05:36 +01001206$(call gb_LinkTarget_use_package,$(1),cairo)
1207$(call gb_LinkTarget_use_package,$(1),pixman)
David Tardon962771f2013-05-24 14:35:18 +02001208$(call gb_LinkTarget_use_external,$(1),freetype_headers)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001209$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001210 -I$(call gb_UnpackedTarball_get_dir,cairo) \
1211 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
Luboš Luňák04bd21d2021-04-22 17:10:53 +02001212 -I$(call gb_UnpackedTarball_get_dir,pixman)/pixman \
Matúš Kukan2cb7ba12012-11-10 22:14:42 +01001213 $$(INCLUDE) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001214)
Michael Stahld89f48b2013-10-23 21:27:05 +02001215$(call gb_LinkTarget_add_libs,$(1),\
Stephan Bergmann5ce9bf32022-11-28 23:37:15 +01001216 $(if $(filter EMSCRIPTEN,$(OS)), \
1217 $(call gb_UnpackedTarball_get_dir,cairo)/src/.libs/libcairo.a \
1218 $(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs/libpixman-1.a, \
1219 -L$(call gb_UnpackedTarball_get_dir,cairo)/src/.libs -lcairo \
1220 -L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1) \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001221)
Caolán McNamara5bb76f62011-07-25 21:50:34 +01001222
Michael Stahlc74af0d2011-04-01 20:49:35 +00001223endef
1224
Christian Lohmaierdac70b92021-06-08 20:04:46 +02001225endif # !MACOSX, !WNT
1226
Jan-Marek Glogowski1193c332021-06-01 19:29:58 +02001227endif # !SYSTEM_CAIRO
Michael Stahl32a617d2014-02-17 11:23:19 +01001228
Michael Stahl379f9782014-02-11 16:49:19 +01001229ifneq ($(SYSTEM_FREETYPE),)
David Tardon962771f2013-05-24 14:35:18 +02001230
1231define gb_LinkTarget__use_freetype_headers
Caolán McNamarab41ae462011-07-25 22:24:27 +01001232$(call gb_LinkTarget_set_include,$(1),\
1233 $$(INCLUDE) \
1234 $(FREETYPE_CFLAGS) \
1235)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001236
David Tardon962771f2013-05-24 14:35:18 +02001237endef
1238
Michael Stahle568d2a2013-09-30 14:10:22 +02001239gb_ExternalProject__use_freetype :=
1240
Caolán McNamara6cb661f2016-12-19 08:59:02 +00001241else
David Tardon962771f2013-05-24 14:35:18 +02001242
1243define gb_LinkTarget__use_freetype_headers
Michael Stahlb242cee82013-10-24 12:08:50 +02001244$(call gb_LinkTarget_use_external_project,$(1),freetype)
David Tardon962771f2013-05-24 14:35:18 +02001245$(call gb_LinkTarget_set_include,$(1),\
David Tardone0603172017-02-02 13:31:13 +01001246 $(FREETYPE_CFLAGS) \
David Tardon962771f2013-05-24 14:35:18 +02001247 $$(INCLUDE) \
1248)
1249
David Tardon61695f12013-05-24 17:15:20 +02001250endef
1251
Michael Stahle568d2a2013-09-30 14:10:22 +02001252define gb_ExternalProject__use_freetype
Michael Stahlb242cee82013-10-24 12:08:50 +02001253$(call gb_ExternalProject_use_external_project,$(1),freetype)
Michael Stahle568d2a2013-09-30 14:10:22 +02001254
1255endef
1256
David Tardon962771f2013-05-24 14:35:18 +02001257endif # SYSTEM_FREETYPE
1258
David Tardone0603172017-02-02 13:31:13 +01001259define gb_LinkTarget__use_freetype
1260$(call gb_LinkTarget_use_external,$(1),freetype_headers)
1261$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
1262
1263endef
1264
Michael Stahl04ff5352014-02-11 16:21:04 +01001265ifneq ($(SYSTEM_FONTCONFIG),)
David Tardon4eb68422013-05-24 14:16:03 +02001266
Caolán McNamarab41ae462011-07-25 22:24:27 +01001267define gb_LinkTarget__use_fontconfig
1268$(call gb_LinkTarget_set_include,$(1),\
1269 $$(INCLUDE) \
1270 $(FONTCONFIG_CFLAGS) \
1271)
Tor Lillqvist0d1c24e2012-04-19 21:10:00 +03001272
Caolán McNamarab41ae462011-07-25 22:24:27 +01001273$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
1274
1275endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001276
Jan-Marek Glogowskib7313bc2021-11-30 18:58:10 +01001277ifeq ($(OS),EMSCRIPTEN)
1278$(eval $(call gb_Helper_register_packages_for_install,ooo,\
1279 libfontconfig_data \
1280))
1281endif
1282
Jan-Marek Glogowski1193c332021-06-01 19:29:58 +02001283gb_ExternalProject__use_fontconfig :=
1284
Jan-Marek Glogowskib7313bc2021-11-30 18:58:10 +01001285else # SYSTEM_FONTCONFIG
David Tardon4eb68422013-05-24 14:16:03 +02001286
David Tardon4eb68422013-05-24 14:16:03 +02001287define gb_LinkTarget__use_fontconfig
Michael Stahl76596b32013-10-24 11:01:41 +02001288$(call gb_LinkTarget_use_external_project,$(1),fontconfig)
David Tardon4eb68422013-05-24 14:16:03 +02001289$(call gb_LinkTarget_set_include,$(1),\
1290 -I$(call gb_UnpackedTarball_get_dir,fontconfig) \
1291 $$(INCLUDE) \
1292)
1293
Caolán McNamara1ad871c2016-12-20 11:37:13 +00001294$(call gb_LinkTarget_add_libs,$(1),\
1295 -L$(call gb_UnpackedTarball_get_dir,fontconfig)/src/.libs -lfontconfig \
1296)
Caolán McNamara6cb661f2016-12-19 08:59:02 +00001297
David Tardon4eb68422013-05-24 14:16:03 +02001298endef
1299
Jan-Marek Glogowski1193c332021-06-01 19:29:58 +02001300define gb_ExternalProject__use_fontconfig
1301$(call gb_ExternalProject_use_external_project,$(1),fontconfig)
1302
1303endef
1304
David Tardon4eb68422013-05-24 14:16:03 +02001305endif # SYSTEM_FONTCONFIG
1306
Michael Stahle3abec32014-02-11 15:57:18 +01001307ifneq ($(SYSTEM_GRAPHITE),)
Michael Stahl87e44332011-04-13 16:11:39 +00001308
Michael Stahl87e44332011-04-13 16:11:39 +00001309define gb_LinkTarget__use_graphite
Michael Stahl87e44332011-04-13 16:11:39 +00001310$(call gb_LinkTarget_set_include,$(1),\
1311 $$(INCLUDE) \
1312 $(GRAPHITE_CFLAGS) \
1313)
1314$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001315
Michael Stahl87e44332011-04-13 16:11:39 +00001316endef
1317
Khaled Hosny9de76cb2016-09-23 18:34:09 +02001318gb_ExternalProject__use_graphite:=
1319
Michael Stahle3abec32014-02-11 15:57:18 +01001320else # !SYSTEM_GRAPHITE
Michael Stahl87e44332011-04-13 16:11:39 +00001321
Michael Stahl87e44332011-04-13 16:11:39 +00001322define gb_LinkTarget__use_graphite
Matúš Kukan7a030392012-10-29 23:29:37 +01001323$(call gb_LinkTarget_use_unpacked,$(1),graphite)
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001324$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001325 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001326 $$(INCLUDE) \
1327)
Michael Stahlc923f7d2012-04-07 23:22:08 +02001328$(call gb_LinkTarget_use_static_libraries,$(1),\
Matúš Kukan1ceb47d2012-10-25 09:55:13 +02001329 graphite \
Michael Stahl87e44332011-04-13 16:11:39 +00001330)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001331
Michael Stahl87e44332011-04-13 16:11:39 +00001332endef
1333
Khaled Hosny9de76cb2016-09-23 18:34:09 +02001334define gb_ExternalProject__use_graphite
David Tardonb5c566f2016-11-03 17:23:56 +01001335$(call gb_ExternalProject_use_static_libraries,$(1),\
1336 graphite \
1337)
Khaled Hosny9de76cb2016-09-23 18:34:09 +02001338
1339endef
Michael Stahl87e44332011-04-13 16:11:39 +00001340endif # SYSTEM_GRAPHITE
1341
Michael Stahl187194b2014-02-11 19:17:42 +01001342ifneq ($(SYSTEM_ICU),)
Michael Stahlc74af0d2011-04-01 20:49:35 +00001343
Peter Foleyb92a0d92012-12-25 17:39:43 -05001344gb_LinkTarget__use_icu_headers:=
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001345gb_ExternalProject__use_icu:=
Peter Foleyb92a0d92012-12-25 17:39:43 -05001346
Matúš Kukan6fad1752011-08-11 12:42:39 +02001347define gb_LinkTarget__use_icudata
1348$(call gb_LinkTarget_add_libs,$(1),-licudata)
1349
1350endef
David Tardon1a852392011-07-26 09:58:54 +02001351define gb_LinkTarget__use_icui18n
1352$(call gb_LinkTarget_add_libs,$(1),-licui18n)
Matúš Kukan6fad1752011-08-11 12:42:39 +02001353
David Tardon1a852392011-07-26 09:58:54 +02001354endef
Michael Stahlc74af0d2011-04-01 20:49:35 +00001355define gb_LinkTarget__use_icuuc
1356$(call gb_LinkTarget_add_libs,$(1),-licuuc)
Caolán McNamara6bccd202011-07-25 22:10:33 +01001357
Michael Stahlc74af0d2011-04-01 20:49:35 +00001358endef
1359
1360else # !SYSTEM_ICU
1361
Michael Stahl057613c2014-07-24 00:22:51 +02001362$(eval $(call gb_Helper_register_packages_for_install,ure, \
1363 icu_ure \
1364))
1365
Michael Stahle7592692014-03-14 11:23:52 +01001366$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1367 icu \
1368))
1369
Tor Lillqvist084db5f2012-09-24 10:37:25 +03001370ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
Tor Lillqvist8a3ea752011-11-21 14:25:37 +02001371gb_ICU_suffix:=lo
1372else
1373gb_ICU_suffix:=
1374endif
1375
Peter Foleyb92a0d92012-12-25 17:39:43 -05001376define gb_LinkTarget__use_icu_headers
Peter Foleyce9bf0f2013-03-23 12:32:31 -04001377$(call gb_LinkTarget_use_unpacked,$(1),icu)
Peter Foleyb92a0d92012-12-25 17:39:43 -05001378$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001379 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1380 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1381 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
Peter Foleyb92a0d92012-12-25 17:39:43 -05001382 $$(INCLUDE) \
1383)
1384
1385endef
1386
Fridrich Štrba8e9675d2013-01-25 10:55:04 +01001387define gb_ExternalProject__use_icu
1388$(call gb_ExternalProject_use_package,$(1),icu)
Fridrich Štrba851ca9c2013-01-25 10:29:59 +01001389
1390endef
1391
Peter Foleyf7452122012-11-04 08:46:44 -05001392# icudata and icui18n is called icudt and icuin when built with MSVC :-/
Michael Stahla92f80f2013-10-23 15:00:29 +02001393define gb_LinkTarget__use_icudata
Stephan Bergmann475e4b42016-10-25 16:46:35 +02001394$(call gb_LinkTarget_use_package,$(1),icu_ure)
Michael Stahla92f80f2013-10-23 15:00:29 +02001395
1396ifeq ($(OS),WNT)
1397$(call gb_LinkTarget_add_libs,$(1),\
1398 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icudt$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
Matúš Kukan6fad1752011-08-11 12:42:39 +02001399)
Michael Stahla92f80f2013-10-23 15:00:29 +02001400else
1401$(call gb_LinkTarget_add_libs,$(1),\
1402 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licudata$(gb_ICU_suffix) \
1403)
1404endif
Matúš Kukan6fad1752011-08-11 12:42:39 +02001405
1406endef
Michael Stahla92f80f2013-10-23 15:00:29 +02001407
1408define gb_LinkTarget__use_icui18n
1409$(call gb_LinkTarget_use_package,$(1),icu)
1410
1411ifeq ($(OS),WNT)
1412$(call gb_LinkTarget_add_libs,$(1),\
1413 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuin$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
1414)
1415else
1416$(call gb_LinkTarget_add_libs,$(1),\
1417 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licui18n$(gb_ICU_suffix) \
1418)
1419endif
1420
1421endef
1422
Michael Stahlc74af0d2011-04-01 20:49:35 +00001423define gb_LinkTarget__use_icuuc
Stephan Bergmann475e4b42016-10-25 16:46:35 +02001424$(call gb_LinkTarget_use_package,$(1),icu_ure)
Michael Stahla92f80f2013-10-23 15:00:29 +02001425
1426ifeq ($(OS),WNT)
1427$(call gb_LinkTarget_add_libs,$(1),\
1428 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuuc$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
Michael Stahlc74af0d2011-04-01 20:49:35 +00001429)
Michael Stahla92f80f2013-10-23 15:00:29 +02001430else
1431$(call gb_LinkTarget_add_libs,$(1),\
1432 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licuuc$(gb_ICU_suffix) \
1433)
1434endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001435
Michael Stahlc74af0d2011-04-01 20:49:35 +00001436endef
1437
1438endif # SYSTEM_ICU
1439
Michael Stahle3abec32014-02-11 15:57:18 +01001440ifneq ($(SYSTEM_HARFBUZZ),)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001441
1442define gb_LinkTarget__use_harfbuzz
1443$(call gb_LinkTarget_set_include,$(1),\
1444 $$(INCLUDE) \
1445 $(HARFBUZZ_CFLAGS) \
1446)
1447$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1448
1449endef
1450
David Tardoncc96f0c2017-02-01 12:32:35 +01001451gb_ExternalProject__use_harfbuzz :=
1452
Michael Stahle3abec32014-02-11 15:57:18 +01001453else # SYSTEM_HARFBUZZ != TRUE
Khaled Hosny7e389f42013-04-20 13:00:56 +02001454
Khaled Hosny7e389f42013-04-20 13:00:56 +02001455define gb_LinkTarget__use_harfbuzz
Michael Stahl8db02752013-05-07 23:28:45 +02001456$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl2f6261f2013-09-19 19:28:36 +02001457 $(HARFBUZZ_CFLAGS) \
Michael Stahl8db02752013-05-07 23:28:45 +02001458 $$(INCLUDE) \
1459)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001460$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
Stephan Bergmann0a554242018-09-22 17:30:36 +02001461$(call gb_LinkTarget_use_external,$(1),icuuc)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001462$(call gb_LinkTarget_use_external_project,$(1),harfbuzz)
Khaled Hosny7e389f42013-04-20 13:00:56 +02001463
1464endef
1465
David Tardoncc96f0c2017-02-01 12:32:35 +01001466define gb_ExternalProject__use_harfbuzz
1467$(call gb_ExternalProject_use_external_project,$(1),harfbuzz)
1468
1469endef
1470
Khaled Hosny7e389f42013-04-20 13:00:56 +02001471endif # SYSTEM_HARFBUZZ
Michael Stahl4a8919f2011-04-18 11:13:57 +00001472
Jan-Marek Glogowski013ddc42021-04-23 10:04:29 +02001473ifneq ($(ENABLE_OPENSSL),TRUE)
Andres Gomeze3f607e2013-04-11 10:24:25 +03001474
1475gb_ExternalProject__use_openssl:=
1476gb_LinkTarget__use_openssl_headers:=
1477gb_LinkTarget__use_openssl:=
1478
Jan-Marek Glogowski013ddc42021-04-23 10:04:29 +02001479else # ENABLE_OPENSSL
Andres Gomeze3f607e2013-04-11 10:24:25 +03001480
Michael Stahle3abec32014-02-11 15:57:18 +01001481ifneq ($(SYSTEM_OPENSSL),)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001482
Peter Foley9ddba662012-12-28 11:19:06 -05001483gb_LinkTarget__use_openssl_headers:=
1484gb_ExternalProject__use_openssl:=
1485
Michael Stahl4a8919f2011-04-18 11:13:57 +00001486define gb_LinkTarget__use_openssl
1487$(call gb_LinkTarget_set_include,$(1),\
1488 $$(INCLUDE) \
1489 $(OPENSSL_CFLAGS) \
1490)
1491$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
Caolán McNamara6bccd202011-07-25 22:10:33 +01001492
Michael Stahl4a8919f2011-04-18 11:13:57 +00001493endef
1494
1495else # !SYSTEM_OPENSSL
1496
Michael Stahlf921e262014-03-13 19:36:48 +01001497$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1498 openssl \
1499))
1500
Peter Foley9ddba662012-12-28 11:19:06 -05001501define gb_ExternalProject__use_openssl
1502$(call gb_ExternalProject_use_package,$(1),openssl)
1503
1504endef
1505
1506define gb_LinkTarget__use_openssl_headers
Stephan Bergmann0f7008e2021-01-07 10:15:51 +01001507$(call gb_LinkTarget_use_external_project,$(1),openssl,full)
Peter Foley9ddba662012-12-28 11:19:06 -05001508$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02001509 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
Peter Foley9ddba662012-12-28 11:19:06 -05001510 $$(INCLUDE) \
1511)
1512
1513endef
1514
Michael Stahl4a8919f2011-04-18 11:13:57 +00001515define gb_LinkTarget__use_openssl
Peter Foley9ddba662012-12-28 11:19:06 -05001516$(call gb_LinkTarget_use_package,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001517ifeq ($(OS),WNT)
Michael Stahl5b906622013-10-24 00:22:20 +02001518$(call gb_LinkTarget_add_libs,$(1),\
Jan-Marek Glogowski0911b0a2020-07-14 23:16:53 +02001519 $(call gb_UnpackedTarball_get_dir,openssl)/libcrypto.lib \
1520 $(call gb_UnpackedTarball_get_dir,openssl)/libssl.lib \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001521)
1522else
Michael Stahl2f6261f2013-09-19 19:28:36 +02001523$(call gb_LinkTarget_add_libs,$(1),\
1524 $(call gb_UnpackedTarball_get_dir,openssl)/libssl.a \
1525 $(call gb_UnpackedTarball_get_dir,openssl)/libcrypto.a \
Jan-Marek Glogowski0911b0a2020-07-14 23:16:53 +02001526 $(if $(filter $(OS),LINUX),-pthread) \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001527)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001528$(call gb_LinkTarget_use_external_project,$(1),openssl)
Michael Stahl4a8919f2011-04-18 11:13:57 +00001529ifeq ($(OS),SOLARIS)
Michael Stahl80374352012-09-28 12:25:50 +02001530$(call gb_LinkTarget_add_libs,$(1),\
1531 -lnsl \
1532 -lsocket \
Michael Stahl4a8919f2011-04-18 11:13:57 +00001533)
1534endif
1535endif
Caolán McNamara6bccd202011-07-25 22:10:33 +01001536
Michael Stahl4a8919f2011-04-18 11:13:57 +00001537endef
1538
1539endif # SYSTEM_OPENSSL
Jan-Marek Glogowski013ddc42021-04-23 10:04:29 +02001540endif # ENABLE_OPENSSL
Michael Stahl4a8919f2011-04-18 11:13:57 +00001541
Matúš Kukanc4560482011-07-28 01:03:23 +02001542
Michael Stahle3abec32014-02-11 15:57:18 +01001543ifneq ($(SYSTEM_CDR),)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001544
1545define gb_LinkTarget__use_cdr
1546$(call gb_LinkTarget_set_include,$(1),\
1547 $$(INCLUDE) \
1548 $(CDR_CFLAGS) \
1549)
1550$(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1551
1552endef
1553
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001554else # !SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001555
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001556define gb_LinkTarget__use_cdr
David Tardonf16f3662013-05-24 13:48:03 +02001557$(call gb_LinkTarget_set_include,$(1),\
1558 -I$(call gb_UnpackedTarball_get_dir,libcdr)/inc \
1559 $$(INCLUDE) \
1560)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001561$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001562 $(call gb_UnpackedTarball_get_dir,libcdr)/src/lib/.libs/libcdr-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrbab8f39c52012-10-05 13:32:14 +02001563)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001564$(call gb_LinkTarget_use_external_project,$(1),libcdr)
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001565endef
1566
Bjoern Michaelsenfb455e52013-02-19 11:22:02 +01001567endif # SYSTEM_CDR
Fridrich Štrbad701a0e2011-11-28 15:06:59 +01001568
1569
Michael Stahle3abec32014-02-11 15:57:18 +01001570ifneq ($(SYSTEM_EBOOK),)
David Tardon316be1b2013-11-09 15:52:36 +01001571
1572define gb_LinkTarget__use_ebook
1573$(call gb_LinkTarget_set_include,$(1),\
1574 $$(INCLUDE) \
1575 $(EBOOK_CFLAGS) \
1576)
1577$(call gb_LinkTarget_add_libs,$(1),$(EBOOK_LIBS))
1578
1579endef
1580
1581gb_ExternalProject__use_ebook :=
1582
1583else # !SYSTEM_EBOOK
1584
1585define gb_LinkTarget__use_ebook
1586$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001587 -I${WORKDIR}/UnpackedTarball/libebook/inc \
David Tardon316be1b2013-11-09 15:52:36 +01001588 $$(INCLUDE) \
1589)
1590$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001591 $(call gb_UnpackedTarball_get_dir,libebook)/src/lib/.libs/libe-book-0.1$(gb_StaticLibrary_PLAINEXT) \
David Tardon316be1b2013-11-09 15:52:36 +01001592)
1593$(call gb_LinkTarget_use_external_project,$(1),libebook)
1594
1595endef
1596
1597define gb_ExternalProject__use_ebook
1598$(call gb_ExternalProject_use_external_project,$(1),libebook)
1599
1600endef
1601
1602endif # SYSTEM_EBOOK
1603
1604
Michael Stahle3abec32014-02-11 15:57:18 +01001605ifneq ($(SYSTEM_ETONYEK),)
David Tardon08ca3e42013-10-24 16:46:49 +02001606
1607define gb_LinkTarget__use_etonyek
1608$(call gb_LinkTarget_set_include,$(1),\
1609 $$(INCLUDE) \
1610 $(ETONYEK_CFLAGS) \
1611)
1612$(call gb_LinkTarget_add_libs,$(1),$(ETONYEK_LIBS))
1613
1614endef
1615
1616gb_ExternalProject__use_etonyek :=
1617
1618else # !SYSTEM_ETONYEK
1619
David Tardon78deb812015-05-19 16:12:08 +02001620ifeq ($(COM),MSC)
1621
1622$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1623 etonyek \
1624))
1625
David Tardon08ca3e42013-10-24 16:46:49 +02001626define gb_LinkTarget__use_etonyek
1627$(call gb_LinkTarget_set_include,$(1),\
David Tardon78deb812015-05-19 16:12:08 +02001628 -I$(call gb_UnpackedTarball_get_dir,libetonyek)/inc \
1629 $$(INCLUDE) \
1630)
1631$(call gb_LinkTarget_use_libraries,$(1),\
1632 etonyek \
1633)
1634
1635endef
1636
1637else # !MSC
1638
1639$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1640 libetonyek \
1641))
1642
1643define gb_LinkTarget__use_etonyek
1644$(call gb_LinkTarget_use_package,$(1),libetonyek)
1645
1646$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001647 -I${WORKDIR}/UnpackedTarball/libetonyek/inc \
David Tardon78deb812015-05-19 16:12:08 +02001648 -DLIBETONYEK_VISIBILITY \
David Tardon08ca3e42013-10-24 16:46:49 +02001649 $$(INCLUDE) \
1650)
1651$(call gb_LinkTarget_add_libs,$(1),\
David Tardon78deb812015-05-19 16:12:08 +02001652 -L$(call gb_UnpackedTarball_get_dir,libetonyek)/src/lib/.libs -letonyek-0.1 \
David Tardon08ca3e42013-10-24 16:46:49 +02001653)
1654$(call gb_LinkTarget_use_external_project,$(1),libetonyek)
1655
1656endef
1657
1658define gb_ExternalProject__use_etonyek
1659$(call gb_ExternalProject_use_external_project,$(1),libetonyek)
1660
1661endef
1662
David Tardon78deb812015-05-19 16:12:08 +02001663endif
1664
David Tardon08ca3e42013-10-24 16:46:49 +02001665endif # SYSTEM_ETONYEK
1666
1667
Michael Stahle3abec32014-02-11 15:57:18 +01001668ifneq ($(SYSTEM_FREEHAND),)
Fridrich Štrba67153d72013-10-31 12:42:50 +01001669
1670define gb_LinkTarget__use_freehand
1671$(call gb_LinkTarget_set_include,$(1),\
1672 $$(INCLUDE) \
1673 $(FREEHAND_CFLAGS) \
1674)
1675$(call gb_LinkTarget_add_libs,$(1),$(FREEHAND_LIBS))
1676
1677endef
1678
1679gb_ExternalProject__use_freehand :=
1680
1681else # !SYSTEM_FREEHAND
1682
1683define gb_LinkTarget__use_freehand
1684$(call gb_LinkTarget_set_include,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001685 -I${WORKDIR}/UnpackedTarball/libfreehand/inc \
Fridrich Štrba67153d72013-10-31 12:42:50 +01001686 $$(INCLUDE) \
1687)
1688$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001689 $(call gb_UnpackedTarball_get_dir,libfreehand)/src/lib/.libs/libfreehand-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba67153d72013-10-31 12:42:50 +01001690)
1691$(call gb_LinkTarget_use_external_project,$(1),libfreehand)
1692
1693endef
1694
1695define gb_ExternalProject__use_freehand
1696$(call gb_ExternalProject_use_external_project,$(1),libfreehand)
1697
1698endef
1699
1700endif # SYSTEM_FREEHAND
1701
1702
Michael Stahle3abec32014-02-11 15:57:18 +01001703ifneq ($(SYSTEM_ODFGEN),)
Fridrich Štrba93848e12013-05-02 20:25:51 +02001704
1705define gb_LinkTarget__use_odfgen
1706$(call gb_LinkTarget_set_include,$(1),\
1707 $$(INCLUDE) \
1708 $(ODFGEN_CFLAGS) \
1709)
1710$(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
1711
1712endef
1713
1714else # !SYSTEM_ODFGEN
1715
David Tardon36c3f912014-05-24 09:13:33 +02001716ifeq ($(COM),MSC)
1717
1718$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1719 odfgen \
1720))
1721
Fridrich Štrba93848e12013-05-02 20:25:51 +02001722define gb_LinkTarget__use_odfgen
David Tardon0f8a90c2013-05-24 13:49:11 +02001723$(call gb_LinkTarget_set_include,$(1),\
1724 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1725 $$(INCLUDE) \
1726)
David Tardon36c3f912014-05-24 09:13:33 +02001727$(call gb_LinkTarget_use_libraries,$(1),\
1728 odfgen \
Fridrich Štrba93848e12013-05-02 20:25:51 +02001729)
Fridrich Štrba93848e12013-05-02 20:25:51 +02001730
1731endef
1732
David Tardon36c3f912014-05-24 09:13:33 +02001733else # !MSC
1734
1735$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1736 libodfgen \
1737))
1738
1739define gb_LinkTarget__use_odfgen
1740$(call gb_LinkTarget_use_package,$(1),libodfgen)
1741
1742$(call gb_LinkTarget_set_include,$(1),\
1743 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
Stephan Bergmannb6ee5cf2015-01-26 15:09:13 +01001744 -DLIBODFGEN_VISIBILITY \
David Tardon36c3f912014-05-24 09:13:33 +02001745 $$(INCLUDE) \
1746)
1747$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001748 -L$(call gb_UnpackedTarball_get_dir,libodfgen)/src/.libs -lodfgen-0.1 \
David Tardon36c3f912014-05-24 09:13:33 +02001749)
1750
1751endef
1752
1753endif
1754
Fridrich Štrba93848e12013-05-02 20:25:51 +02001755endif # SYSTEM_ODFGEN
1756
Miklos Vajna3f163062017-08-02 16:29:48 +02001757ifneq ($(SYSTEM_EPUBGEN),)
1758
1759define gb_LinkTarget__use_epubgen
1760$(call gb_LinkTarget_set_include,$(1),\
1761 $$(INCLUDE) \
1762 $(EPUBGEN_CFLAGS) \
1763)
1764$(call gb_LinkTarget_add_libs,$(1),$(EPUBGEN_LIBS))
1765
1766endef
1767gb_ExternalProject__use_epubgen :=
1768
1769else # !SYSTEM_EPUBGEN
Armin Le Grand (Allotropia)02140552021-04-30 17:26:41 +02001770ifneq ($(ENABLE_WASM_STRIP_EPUB),TRUE)
Miklos Vajna3f163062017-08-02 16:29:48 +02001771
1772define gb_LinkTarget__use_epubgen
1773$(call gb_LinkTarget_set_include,$(1),\
1774 -I$(call gb_UnpackedTarball_get_dir,libepubgen)/inc \
1775 $$(INCLUDE) \
1776)
1777$(call gb_LinkTarget_add_libs,$(1),\
Miklos Vajnab2b1debf2017-12-13 10:54:27 +01001778 $(call gb_UnpackedTarball_get_dir,libepubgen)/src/lib/.libs/libepubgen-0.1$(gb_StaticLibrary_PLAINEXT) \
Miklos Vajna3f163062017-08-02 16:29:48 +02001779)
1780$(call gb_LinkTarget_use_external_project,$(1),libepubgen)
1781
1782endef
1783define gb_ExternalProject__use_epubgen
1784$(call gb_ExternalProject_use_external_project,$(1),libepubgen)
1785
1786endef
1787
Armin Le Grand (Allotropia)02140552021-04-30 17:26:41 +02001788endif # ENABLE_WASM_STRIP_EPUB
Miklos Vajna3f163062017-08-02 16:29:48 +02001789endif # SYSTEM_EPUBGEN
Fridrich Štrba93848e12013-05-02 20:25:51 +02001790
David Tardonb421ce72014-05-24 08:39:54 +02001791ifneq ($(SYSTEM_REVENGE),)
1792
1793define gb_LinkTarget__use_revenge
1794$(call gb_LinkTarget_set_include,$(1),\
1795 $$(INCLUDE) \
1796 $(REVENGE_CFLAGS) \
1797)
1798$(call gb_LinkTarget_add_libs,$(1),$(REVENGE_LIBS))
1799
1800endef
1801
David Tardon7c9c7792014-05-25 13:06:57 +02001802gb_ExternalProject__use_revenge :=
1803
David Tardonb421ce72014-05-24 08:39:54 +02001804else # !SYSTEM_REVENGE
1805
1806ifeq ($(COM),MSC)
1807
1808$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1809 revenge \
1810))
1811
1812define gb_LinkTarget__use_revenge
1813$(call gb_LinkTarget_set_include,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001814 $(REVENGE_CFLAGS) \
David Tardonb421ce72014-05-24 08:39:54 +02001815 $$(INCLUDE) \
1816)
1817$(call gb_LinkTarget_use_libraries,$(1),\
1818 revenge \
1819)
1820
1821endef
1822
David Tardon7c9c7792014-05-25 13:06:57 +02001823define gb_ExternalProject__use_revenge
1824$(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,revenge)
1825
1826endef
1827
David Tardonb421ce72014-05-24 08:39:54 +02001828else # !MSC
1829
1830$(eval $(call gb_Helper_register_packages_for_install,ooo, \
1831 librevenge \
1832))
1833
1834define gb_LinkTarget__use_revenge
1835$(call gb_LinkTarget_use_package,$(1),librevenge)
1836
1837$(call gb_LinkTarget_set_include,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001838 $(REVENGE_CFLAGS) \
Stephan Bergmannb6ee5cf2015-01-26 15:09:13 +01001839 -DLIBREVENGE_VISIBILITY \
David Tardonb421ce72014-05-24 08:39:54 +02001840 $$(INCLUDE) \
1841)
1842$(call gb_LinkTarget_add_libs,$(1),\
David Tardon0b7d0a82014-05-25 13:19:31 +02001843 $(REVENGE_LIBS) \
David Tardonb421ce72014-05-24 08:39:54 +02001844)
1845endef
1846
David Tardon7c9c7792014-05-25 13:06:57 +02001847define gb_ExternalProject__use_revenge
1848$(call gb_ExternalProject_use_package,$(1),librevenge)
1849
1850endef
1851
David Tardonb421ce72014-05-24 08:39:54 +02001852endif # MSC
1853
1854endif # SYSTEM_REVENGE
1855
1856
Michael Stahle3abec32014-02-11 15:57:18 +01001857ifneq ($(SYSTEM_ABW),)
Fridrich Štrba10eaaac2014-01-13 17:01:32 +01001858
1859define gb_LinkTarget__use_abw
1860$(call gb_LinkTarget_set_include,$(1),\
1861 $$(INCLUDE) \
1862 $(ABW_CFLAGS) \
1863)
1864$(call gb_LinkTarget_add_libs,$(1),$(ABW_LIBS))
1865
1866endef
1867gb_ExternalProject__use_abw :=
1868
1869else # !SYSTEM_ABW
1870
1871define gb_LinkTarget__use_abw
1872$(call gb_LinkTarget_set_include,$(1),\
1873 -I$(call gb_UnpackedTarball_get_dir,libabw)/inc \
1874 $$(INCLUDE) \
1875)
1876$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001877 $(call gb_UnpackedTarball_get_dir,libabw)/src/lib/.libs/libabw-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba10eaaac2014-01-13 17:01:32 +01001878)
1879$(call gb_LinkTarget_use_external_project,$(1),libabw)
1880
1881endef
1882define gb_ExternalProject__use_abw
1883$(call gb_ExternalProject_use_external_project,$(1),libabw)
1884
1885endef
1886
1887endif # SYSTEM_ABW
1888
1889
Michael Stahle3abec32014-02-11 15:57:18 +01001890ifneq ($(SYSTEM_MSPUB),)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001891
1892define gb_LinkTarget__use_mspub
1893$(call gb_LinkTarget_set_include,$(1),\
1894 $$(INCLUDE) \
1895 $(MSPUB_CFLAGS) \
1896)
1897$(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1898
1899endef
1900
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001901else # !SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001902
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001903define gb_LinkTarget__use_mspub
Michael Stahl35ac39e2013-05-16 13:09:11 +02001904$(call gb_LinkTarget_set_include,$(1),\
1905 -I$(call gb_UnpackedTarball_get_dir,libmspub)/inc \
1906 $$(INCLUDE) \
1907)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001908$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02001909 $(call gb_UnpackedTarball_get_dir,libmspub)/src/lib/.libs/libmspub-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba093a5c92013-01-28 10:13:50 +01001910)
Michael Stahl2f6261f2013-09-19 19:28:36 +02001911$(call gb_LinkTarget_use_external_project,$(1),libmspub)
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001912
1913endef
1914
Bjoern Michaelsena4c80752013-02-19 11:22:51 +01001915endif # SYSTEM_MSPUB
Fridrich Štrbadc4b91d2012-05-24 11:59:16 +02001916
1917
David Tardon516fb342014-06-26 21:26:11 +02001918ifneq ($(SYSTEM_PAGEMAKER),)
1919
1920define gb_LinkTarget__use_pagemaker
1921$(call gb_LinkTarget_set_include,$(1),\
1922 $$(INCLUDE) \
1923 $(PAGEMAKER_CFLAGS) \
1924)
1925$(call gb_LinkTarget_add_libs,$(1),$(PAGEMAKER_LIBS))
1926
1927endef
1928gb_ExternalProject__use_pagemaker :=
1929
1930else # !SYSTEM_PAGEMAKER
1931
1932define gb_LinkTarget__use_pagemaker
1933$(call gb_LinkTarget_set_include,$(1),\
1934 -I$(call gb_UnpackedTarball_get_dir,libpagemaker)/inc \
1935 $$(INCLUDE) \
1936)
1937$(call gb_LinkTarget_add_libs,$(1),\
1938 $(call gb_UnpackedTarball_get_dir,libpagemaker)/src/lib/.libs/libpagemaker-0.0$(gb_StaticLibrary_PLAINEXT) \
1939)
1940$(call gb_LinkTarget_use_external_project,$(1),libpagemaker)
1941
1942endef
1943define gb_ExternalProject__use_pagemaker
1944$(call gb_ExternalProject_use_external_project,$(1),libpagemaker)
1945
1946endef
1947
1948endif # SYSTEM_PAGEMAKER
1949
1950
Aleksas Pantechovskise59b5b12017-08-27 22:10:14 +03001951ifneq ($(SYSTEM_QXP),)
1952
1953define gb_LinkTarget__use_qxp
1954$(call gb_LinkTarget_set_include,$(1),\
1955 $$(INCLUDE) \
1956 $(QXP_CFLAGS) \
1957)
1958$(call gb_LinkTarget_add_libs,$(1),$(QXP_LIBS))
1959
1960endef
1961gb_ExternalProject__use_qxp :=
1962
1963else # !SYSTEM_QXP
1964
1965define gb_LinkTarget__use_qxp
1966$(call gb_LinkTarget_set_include,$(1),\
1967 -I$(call gb_UnpackedTarball_get_dir,libqxp)/inc \
1968 $$(INCLUDE) \
1969)
1970$(call gb_LinkTarget_add_libs,$(1),\
1971 $(call gb_UnpackedTarball_get_dir,libqxp)/src/lib/.libs/libqxp-0.0$(gb_StaticLibrary_PLAINEXT) \
1972)
1973$(call gb_LinkTarget_use_external_project,$(1),libqxp)
1974
1975endef
1976define gb_ExternalProject__use_qxp
1977$(call gb_ExternalProject_use_external_project,$(1),libqxp)
1978
1979endef
1980
1981endif # SYSTEM_QXP
1982
1983
Aleksas Pantechovskisaaed6fe2016-06-22 19:02:29 +03001984ifneq ($(SYSTEM_ZMF),)
1985
1986define gb_LinkTarget__use_zmf
1987$(call gb_LinkTarget_set_include,$(1),\
1988 $$(INCLUDE) \
1989 $(ZMF_CFLAGS) \
1990)
1991$(call gb_LinkTarget_add_libs,$(1),$(ZMF_LIBS))
1992
1993endef
1994gb_ExternalProject__use_zmf :=
1995
1996else # !SYSTEM_ZMF
1997
1998define gb_LinkTarget__use_zmf
1999$(call gb_LinkTarget_set_include,$(1),\
2000 -I$(call gb_UnpackedTarball_get_dir,libzmf)/inc \
2001 $$(INCLUDE) \
2002)
2003$(call gb_LinkTarget_add_libs,$(1),\
2004 $(call gb_UnpackedTarball_get_dir,libzmf)/src/lib/.libs/libzmf-0.0$(gb_StaticLibrary_PLAINEXT) \
2005)
2006$(call gb_LinkTarget_use_external_project,$(1),libzmf)
2007
2008endef
2009define gb_ExternalProject__use_zmf
2010$(call gb_ExternalProject_use_external_project,$(1),libzmf)
2011
2012endef
2013
2014endif # SYSTEM_ZMF
2015
2016
Michael Stahle3abec32014-02-11 15:57:18 +01002017ifneq ($(SYSTEM_VISIO),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002018
2019define gb_LinkTarget__use_visio
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002020$(call gb_LinkTarget_set_include,$(1),\
2021 $$(INCLUDE) \
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02002022 $(VISIO_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002023)
Fridrich Štrbae531e8a2011-10-05 10:21:08 +02002024$(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02002025
2026endef
2027
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01002028else # !SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02002029
Matúš Kukanc6a63952011-07-28 17:29:44 +02002030define gb_LinkTarget__use_visio
Michael Stahlacc7f612013-05-16 13:14:37 +02002031$(call gb_LinkTarget_set_include,$(1),\
2032 -I$(call gb_UnpackedTarball_get_dir,libvisio)/inc \
2033 $$(INCLUDE) \
2034)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002035$(call gb_LinkTarget_add_libs,$(1),\
David Tardon48c9d7a2014-05-24 14:21:21 +02002036 $(call gb_UnpackedTarball_get_dir,libvisio)/src/lib/.libs/libvisio-0.1$(gb_StaticLibrary_PLAINEXT) \
Fridrich Štrba64ab6112012-11-05 11:43:55 +01002037)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002038$(call gb_LinkTarget_use_external_project,$(1),libvisio)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002039
2040endef
2041
Bjoern Michaelsenfe8bcfa2013-02-19 11:14:46 +01002042endif # SYSTEM_VISIO
Matúš Kukanc6a63952011-07-28 17:29:44 +02002043
2044
Michael Stahle3abec32014-02-11 15:57:18 +01002045ifneq ($(SYSTEM_WPD),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002046
2047define gb_LinkTarget__use_wpd
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002048$(call gb_LinkTarget_set_include,$(1),\
2049 $$(INCLUDE) \
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02002050 $(WPD_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002051)
Fridrich Štrba8703f3e2011-10-05 10:04:04 +02002052$(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02002053
2054endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002055gb_ExternalProject__use_wpd :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02002056
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01002057else # !SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02002058
David Tardonc868a0c2014-12-23 18:37:54 +01002059ifeq ($(COM),MSC)
2060
2061$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2062 wpd \
2063))
2064
Fridrich Štrba4425db62012-09-24 13:17:45 +02002065define gb_LinkTarget__use_wpd
Michael Stahldb5c8c52013-05-16 13:28:14 +02002066$(call gb_LinkTarget_set_include,$(1),\
2067 $(WPD_CFLAGS) \
2068 $$(INCLUDE) \
2069)
David Tardonc868a0c2014-12-23 18:37:54 +01002070$(call gb_LinkTarget_use_libraries,$(1),\
2071 wpd \
Michael Stahl34295432012-09-24 22:25:28 +02002072)
Fridrich Štrba4425db62012-09-24 13:17:45 +02002073
2074endef
David Tardonc868a0c2014-12-23 18:37:54 +01002075
Michael Stahl2b7536a2012-10-05 21:17:25 +02002076define gb_ExternalProject__use_wpd
David Tardonc868a0c2014-12-23 18:37:54 +01002077$(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,wpd)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002078
2079endef
Fridrich Štrba4425db62012-09-24 13:17:45 +02002080
David Tardonc868a0c2014-12-23 18:37:54 +01002081else # !MSC
2082
2083$(eval $(call gb_Helper_register_packages_for_install,ooo, \
2084 libwpd \
2085))
2086
2087define gb_LinkTarget__use_wpd
2088$(call gb_LinkTarget_use_package,$(1),libwpd)
2089
2090$(call gb_LinkTarget_set_include,$(1),\
2091 $(WPD_CFLAGS) \
2092 $$(INCLUDE) \
2093)
2094$(call gb_LinkTarget_add_libs,$(1),\
2095 $(WPD_LIBS) \
2096)
2097
2098endef
2099
2100define gb_ExternalProject__use_wpd
2101$(call gb_ExternalProject_use_package,$(1),libwpd)
2102
2103endef
2104
2105endif # MSC
2106
Bjoern Michaelsen5de206a2013-02-19 11:20:31 +01002107endif # SYSTEM_WPD
Matúš Kukanc6a63952011-07-28 17:29:44 +02002108
2109
Michael Stahle3abec32014-02-11 15:57:18 +01002110ifneq ($(SYSTEM_WPG),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002111
2112define gb_LinkTarget__use_wpg
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002113$(call gb_LinkTarget_set_include,$(1),\
2114 $$(INCLUDE) \
Fridrich Štrba62c43b42011-10-05 10:15:40 +02002115 $(WPG_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002116)
Fridrich Štrba62c43b42011-10-05 10:15:40 +02002117$(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02002118
2119endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002120gb_ExternalProject__use_wpg :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02002121
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002122else # !SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02002123
David Tardonc868a0c2014-12-23 18:37:54 +01002124ifeq ($(COM),MSC)
2125
2126$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2127 wpg \
2128))
2129
Matúš Kukanc6a63952011-07-28 17:29:44 +02002130define gb_LinkTarget__use_wpg
David Tardonc51a2542013-05-24 14:53:37 +02002131$(call gb_LinkTarget_set_include,$(1),\
2132 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
2133 $$(INCLUDE) \
2134)
David Tardonc868a0c2014-12-23 18:37:54 +01002135$(call gb_LinkTarget_use_libraries,$(1),\
2136 wpg \
Michael Stahl53b7bdc2012-10-05 17:19:47 +02002137)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002138
2139endef
David Tardonc868a0c2014-12-23 18:37:54 +01002140
2141else # !MSC
2142
2143$(eval $(call gb_Helper_register_packages_for_install,ooo, \
2144 libwpg \
2145))
2146
2147define gb_LinkTarget__use_wpg
2148$(call gb_LinkTarget_use_package,$(1),libwpg)
2149
2150$(call gb_LinkTarget_set_include,$(1),\
2151 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
2152 $$(INCLUDE) \
2153)
2154$(call gb_LinkTarget_add_libs,$(1),\
2155 -L$(call gb_UnpackedTarball_get_dir,libwpg)/src/lib/.libs -lwpg-0.3 \
2156)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002157
2158endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02002159
David Tardonc868a0c2014-12-23 18:37:54 +01002160endif # MSC
2161
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002162endif # SYSTEM_WPG
Matúš Kukanc6a63952011-07-28 17:29:44 +02002163
2164
Michael Stahle3abec32014-02-11 15:57:18 +01002165ifneq ($(SYSTEM_WPS),)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002166
2167define gb_LinkTarget__use_wps
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002168$(call gb_LinkTarget_set_include,$(1),\
2169 $$(INCLUDE) \
Fridrich Štrbae991bba2011-10-05 10:18:53 +02002170 $(WPS_CFLAGS) \
Lionel Elie Mamanee4a17792011-08-02 07:10:30 +02002171)
Fridrich Štrbae991bba2011-10-05 10:18:53 +02002172$(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
Matúš Kukanc6a63952011-07-28 17:29:44 +02002173
2174endef
Michael Stahl2b7536a2012-10-05 21:17:25 +02002175gb_ExternalProject__use_wps :=
Matúš Kukanc6a63952011-07-28 17:29:44 +02002176
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002177else # !SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02002178
David Tardonf85d10f2014-05-30 15:35:48 +02002179ifeq ($(COM),MSC)
2180
2181$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2182 wps \
2183))
2184
Matúš Kukanc6a63952011-07-28 17:29:44 +02002185define gb_LinkTarget__use_wps
David Tardon6f9d8212013-05-24 14:58:31 +02002186$(call gb_LinkTarget_set_include,$(1),\
2187 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2188 $$(INCLUDE) \
2189)
David Tardonf85d10f2014-05-30 15:35:48 +02002190
2191$(call gb_LinkTarget_use_libraries,$(1),\
2192 wps \
Fridrich Štrba8c07bd32013-04-19 12:06:58 +02002193)
Matúš Kukanc6a63952011-07-28 17:29:44 +02002194
2195endef
David Tardonf85d10f2014-05-30 15:35:48 +02002196
2197else # !MSC
2198
2199$(eval $(call gb_Helper_register_packages_for_install,ooo, \
2200 libwps \
2201))
2202
2203define gb_LinkTarget__use_wps
2204$(call gb_LinkTarget_use_package,$(1),libwps)
2205
2206$(call gb_LinkTarget_set_include,$(1),\
2207 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2208 $$(INCLUDE) \
2209)
2210$(call gb_LinkTarget_add_libs,$(1),\
osnolaf9568332015-05-18 10:21:10 +02002211 -L$(call gb_UnpackedTarball_get_dir,libwps)/src/lib/.libs -lwps-0.4 \
David Tardonf85d10f2014-05-30 15:35:48 +02002212)
Michael Stahl2b7536a2012-10-05 21:17:25 +02002213
2214endef
Matúš Kukanc6a63952011-07-28 17:29:44 +02002215
David Tardonf85d10f2014-05-30 15:35:48 +02002216endif # MSC
2217
Bjoern Michaelsen3a3254a2013-02-19 11:26:46 +01002218endif # SYSTEM_WPS
Matúš Kukanc6a63952011-07-28 17:29:44 +02002219
2220
Michael Stahle3abec32014-02-11 15:57:18 +01002221ifneq ($(SYSTEM_MWAW),)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002222
2223define gb_LinkTarget__use_mwaw
2224$(call gb_LinkTarget_set_include,$(1),\
2225 $$(INCLUDE) \
2226 $(MWAW_CFLAGS) \
2227)
2228$(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
2229
2230endef
2231
2232else # !SYSTEM_MWAW
2233
David Tardon79211c12014-05-30 13:55:20 +02002234ifeq ($(COM),MSC)
2235
2236$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2237 mwaw \
2238))
2239
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002240define gb_LinkTarget__use_mwaw
Michael Stahlff718952013-05-16 13:11:36 +02002241$(call gb_LinkTarget_set_include,$(1),\
2242 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2243 $$(INCLUDE) \
2244)
David Tardon79211c12014-05-30 13:55:20 +02002245
2246$(call gb_LinkTarget_use_libraries,$(1),\
2247 mwaw \
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002248)
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002249
2250endef
2251
David Tardon79211c12014-05-30 13:55:20 +02002252else # !MSC
2253
2254$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2255 libmwaw \
2256))
2257
2258define gb_LinkTarget__use_mwaw
2259$(call gb_LinkTarget_use_package,$(1),libmwaw)
2260
2261$(call gb_LinkTarget_set_include,$(1),\
2262 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2263 $$(INCLUDE) \
2264)
2265$(call gb_LinkTarget_add_libs,$(1),\
2266 -L$(call gb_UnpackedTarball_get_dir,libmwaw)/src/lib/.libs -lmwaw-0.3 \
2267)
2268
2269endef
2270
2271endif # MSC
2272
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002273endif # SYSTEM_MWAW
2274
osnola1faae1f2016-08-10 12:43:56 +02002275ifneq ($(SYSTEM_STAROFFICE),)
2276
2277define gb_LinkTarget__use_staroffice
2278$(call gb_LinkTarget_set_include,$(1),\
2279 $$(INCLUDE) \
2280 $(STAROFFICE_CFLAGS) \
2281)
2282$(call gb_LinkTarget_add_libs,$(1),$(STAROFFICE_LIBS))
2283
2284endef
2285
2286else # !SYSTEM_STAROFFICE
2287
2288ifeq ($(COM),MSC)
2289
2290$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2291 staroffice \
2292))
2293
2294define gb_LinkTarget__use_staroffice
2295$(call gb_LinkTarget_set_include,$(1),\
2296 -I$(call gb_UnpackedTarball_get_dir,libstaroffice)/inc \
2297 $$(INCLUDE) \
2298)
2299
2300$(call gb_LinkTarget_use_libraries,$(1),\
2301 staroffice \
2302)
2303
2304endef
2305
2306else # !MSC
2307
2308$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2309 libstaroffice \
2310))
2311
2312define gb_LinkTarget__use_staroffice
2313$(call gb_LinkTarget_use_package,$(1),libstaroffice)
2314
2315$(call gb_LinkTarget_set_include,$(1),\
2316 -I$(call gb_UnpackedTarball_get_dir,libstaroffice)/inc \
2317 $$(INCLUDE) \
2318)
2319$(call gb_LinkTarget_add_libs,$(1),\
2320 -L$(call gb_UnpackedTarball_get_dir,libstaroffice)/src/lib/.libs -lstaroffice-0.0 \
2321)
2322
2323endef
2324
2325endif # MSC
2326
2327endif # SYSTEM_STAROFFICE
2328
Fridrich Štrba790a36d2013-03-11 12:38:12 +01002329
Michael Stahle3abec32014-02-11 15:57:18 +01002330ifneq ($(SYSTEM_LCMS2),)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002331
2332define gb_LinkTarget__use_lcms2
2333$(call gb_LinkTarget_set_include,$(1),\
2334 $$(INCLUDE) \
Peter Foleyf7452122012-11-04 08:46:44 -05002335 $(LCMS2_CFLAGS) \
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002336)
2337$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
2338
2339endef
2340
Peter Foley8905c0e2012-11-08 21:00:30 -05002341gb_ExternalProject__use_lcms2 :=
2342
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002343else # !SYSTEM_LCMS2
2344
Michael Stahl32a617d2014-02-17 11:23:19 +01002345$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2346 lcms2 \
2347))
2348
Peter Foley8905c0e2012-11-08 21:00:30 -05002349define gb_ExternalProject__use_lcms2
2350$(call gb_ExternalProject_use_package,$(1),lcms2)
2351
2352endef
2353
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002354ifeq ($(OS),ANDROID)
2355
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002356define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002357$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02002358$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002359 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02002360 $$(INCLUDE) \
2361)
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002362
2363endef
2364
2365else
2366
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002367define gb_LinkTarget__use_lcms2
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002368$(call gb_LinkTarget_use_package,$(1),lcms2)
Matúš Kukan3790e842012-09-04 22:00:15 +02002369$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002370 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
Matúš Kukan3790e842012-09-04 22:00:15 +02002371 $$(INCLUDE) \
2372)
Michael Stahl25f65f22013-10-23 22:04:36 +02002373$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002374
2375endef
2376
Tor Lillqvistbd4d3712012-06-06 22:57:56 +03002377endif # ANDROID
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002378endif # SYSTEM_LCMS2
2379
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002380ifneq ($(ENABLE_LPSOLVE),)
Fridrich Štrba8a0a25d2012-03-02 10:15:42 +01002381
Michael Stahlab586f12014-02-11 19:25:30 +01002382ifneq ($(SYSTEM_LPSOLVE),)
Matúš Kukanc4560482011-07-28 01:03:23 +02002383
Peter Foley085346f2012-11-03 19:19:30 -04002384define gb_LinkTarget__use_lpsolve
Matúš Kukanc4560482011-07-28 01:03:23 +02002385$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
Peter Foley085346f2012-11-03 19:19:30 -04002386$(call gb_LinkTarget_add_defs,$(1),\
2387 -DSYSTEM_LPSOLVE \
Peter Foley29d5e292012-11-07 18:18:08 -05002388)
Matúš Kukanc4560482011-07-28 01:03:23 +02002389
2390endef
2391
2392else # !SYSTEM_LPSOLVE
2393
Peter Foley085346f2012-11-03 19:19:30 -04002394define gb_LinkTarget__use_lpsolve
Stephan Bergmann54471172019-10-19 15:50:07 +02002395$(call gb_LinkTarget_use_package,$(1),lpsolve)
Michael Stahlb7d8ca82013-10-24 01:25:59 +02002396ifeq ($(COM),MSC)
2397$(call gb_LinkTarget_add_libs,$(1),\
2398 $(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55/lpsolve55.lib \
2399)
2400else
Michael Stahlb177b302013-10-23 21:33:51 +02002401$(call gb_LinkTarget_add_libs,$(1),\
2402 -L$(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55 -llpsolve55 \
Matúš Kukanc4560482011-07-28 01:03:23 +02002403)
Michael Stahlb7d8ca82013-10-24 01:25:59 +02002404endif
Peter Foley085346f2012-11-03 19:19:30 -04002405$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002406 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
Peter Foley085346f2012-11-03 19:19:30 -04002407 $$(INCLUDE) \
2408)
Matúš Kukanc4560482011-07-28 01:03:23 +02002409
2410endef
2411
Matúš Kukan083fa762014-02-27 17:08:09 +01002412$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2413 lpsolve \
2414))
2415
Matúš Kukanc4560482011-07-28 01:03:23 +02002416endif # SYSTEM_LPSOLVE
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002417
Matúš Kukan077bdc72014-03-27 14:51:46 +01002418else
2419
2420gb_LinkTarget__use_lpsolve :=
2421
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002422endif # ENABLE_LPSOLVE
2423
2424ifneq ($(ENABLE_COINMP),)
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002425
Rene Engelhardd85f5132014-08-06 00:03:21 +02002426ifneq ($(SYSTEM_COINMP),TRUE)
2427
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002428define gb_LinkTarget__use_coinmp
2429$(call gb_LinkTarget_use_package,$(1),coinmp)
2430ifeq ($(COM),MSC)
2431$(call gb_LinkTarget_add_libs,$(1),\
David Ostrovsky152e2a22014-11-30 18:26:01 +01002432 $(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/MSVisualStudio/v9/$(wnt_arch_subdir_optional)$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release)/CoinMP.lib \
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002433)
2434else
2435$(call gb_LinkTarget_add_libs,$(1),\
2436 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cbc/src/.libs -lCbc -lCbcSolver \
2437 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cgl/src/.libs -lCgl \
2438 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/.libs -lClp \
2439 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/OsiClp/.libs -lOsiClp \
2440 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src/.libs -lCoinMP \
2441 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src/.libs -lCoinUtils \
2442 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Osi/src/Osi/.libs -lOsi \
2443)
2444endif
2445$(call gb_LinkTarget_set_include,$(1),\
2446 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src \
Caolán McNamara67b4b342014-06-06 14:32:09 +01002447 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src \
Matúš Kukan4f7b9682014-02-28 10:39:19 +01002448 $$(INCLUDE) \
2449)
2450
2451endef
2452
2453$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2454 coinmp \
2455))
2456
Rene Engelhardd85f5132014-08-06 00:03:21 +02002457else # SYSTEM_COINMP
2458
2459define gb_LinkTarget__use_coinmp
2460$(call gb_LinkTarget_set_include,$(1),\
2461 $$(INCLUDE) \
2462 $(COINMP_CFLAGS) \
2463)
2464$(call gb_LinkTarget_add_libs,$(1),$(COINMP_LIBS))
2465
2466endef
2467
2468endif
2469
Matúš Kukan077bdc72014-03-27 14:51:46 +01002470else
2471
2472gb_LinkTarget__use_coinmp :=
2473
Matúš Kukan8dc394d2014-03-31 19:36:41 +02002474endif # ENABLE_COINMP
Matúš Kukanc4560482011-07-28 01:03:23 +02002475
Michael Stahl9ec0e6d2015-11-27 23:54:40 +01002476ifneq (,$(filter MDNSRESPONDER,$(BUILD_TYPE)))
2477
2478define gb_LinkTarget__use_mDNSResponder
2479$(call gb_LinkTarget_set_include,$(1),\
2480 -I$(call gb_UnpackedTarball_get_dir,mDNSResponder)/mDNSShared \
2481 $$(INCLUDE) \
2482)
2483$(call gb_LinkTarget_use_static_libraries,$(1),mDNSResponder)
2484endef
2485
2486endif # MDNSRESPONDER
2487
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002488ifeq ($(ENABLE_GIO),TRUE)
Matúš Kukanc4560482011-07-28 01:03:23 +02002489
Matúš Kukan464b4332012-01-15 02:12:49 +01002490define gb_LinkTarget__use_gio
2491$(call gb_LinkTarget_set_include,$(1),\
Matúš Kukan464b4332012-01-15 02:12:49 +01002492 $$(INCLUDE) \
Caolán McNamara1ac9ccf2012-01-16 08:57:38 +00002493 $(GIO_CFLAGS) \
Matúš Kukan464b4332012-01-15 02:12:49 +01002494)
2495
2496$(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
2497
2498endef
2499
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002500else # ENABLE_GIO
2501
2502define gb_LinkTarget__use_gio
Caolán McNamara1e98bb42012-11-06 20:09:57 +00002503
Caolán McNamaraaabc73d2012-08-30 13:58:15 +01002504endef
2505
2506endif # ENABLE_GIO
2507
Siqid0419802013-07-24 11:16:31 +02002508ifeq ($(ENABLE_AVAHI),TRUE)
2509
2510define gb_LinkTarget__use_avahi
2511$(call gb_LinkTarget_set_include,$(1),\
2512 $$(INCLUDE) \
2513 $(AVAHI_CFLAGS) \
2514)
2515
2516$(call gb_LinkTarget_add_defs,$(1),\
2517 -DENABLE_AVAHI \
2518)
2519
2520$(call gb_LinkTarget_add_libs,$(1),$(AVAHI_LIBS))
2521
2522endef
2523
2524else # ENABLE_AVAHI
2525
David Tardon9ce38ef2013-11-05 07:03:08 +01002526gb_LinkTarget__use_avahi :=
Siqid0419802013-07-24 11:16:31 +02002527
2528endif # ENABLE_AVAHI
2529
Caolán McNamara68ffb332012-09-14 11:31:50 +01002530ifeq ($(ENABLE_CUPS),TRUE)
2531
2532define gb_LinkTarget__use_cups
2533$(call gb_LinkTarget_add_defs,$(1),\
2534 -DENABLE_CUPS \
2535)
2536
2537$(call gb_LinkTarget_add_libs,$(1),\
2538 -lcups \
2539)
2540
2541endef
2542
2543else # ENABLE_CUPS
2544
2545define gb_LinkTarget__use_cups
2546
2547endef
2548
Arkadiy Illarionov02addb32018-07-08 16:33:32 +03002549endif # ENABLE_CUPS
David Tardon1b717ce2011-11-02 13:00:48 +01002550
Caolán McNamara9ec0a3e2012-08-30 13:44:53 +01002551ifeq ($(ENABLE_DBUS),TRUE)
David Tardon1b717ce2011-11-02 13:00:48 +01002552
2553define gb_LinkTarget__use_dbus
2554$(call gb_LinkTarget_set_include,$(1),\
2555 $$(INCLUDE) \
2556 $(DBUS_CFLAGS) \
2557)
2558
David Tardon1b717ce2011-11-02 13:00:48 +01002559$(call gb_LinkTarget_add_libs,$(1),\
2560 $(DBUS_LIBS) \
2561)
2562
2563endef
2564
2565else # ENABLE_DBUS
2566
2567define gb_LinkTarget__use_dbus
2568
2569endef
2570
2571endif # ENABLE_DBUS
2572
2573
Michael Stahle3abec32014-02-11 15:57:18 +01002574ifneq ($(SYSTEM_LIBPNG),)
David Tardon6df9c472011-09-15 14:44:34 +02002575
Michael Stahlb0e0ee42017-09-14 14:12:40 +02002576define gb_LinkTarget__use_libpng
David Tardon6df9c472011-09-15 14:44:34 +02002577$(call gb_LinkTarget_set_include,$(1),\
2578 $$(INCLUDE) \
2579 $(LIBPNG_CFLAGS) \
2580)
2581
2582$(call gb_LinkTarget_add_libs,$(1),\
2583 $(LIBPNG_LIBS) \
2584)
2585
2586endef
2587
Michael Stahlb0e0ee42017-09-14 14:12:40 +02002588gb_ExternalProject__use_libpng :=
David Tardon5955e7b2016-11-03 13:58:29 +01002589
David Tardon6df9c472011-09-15 14:44:34 +02002590else # !SYSTEM_LIBPNG
2591
Michael Stahlb0e0ee42017-09-14 14:12:40 +02002592define gb_LinkTarget__use_libpng
Michael Stahl416b3212013-05-08 17:22:22 +02002593$(call gb_LinkTarget_set_include,$(1),\
2594 $(LIBPNG_CFLAGS) \
2595 $$(INCLUDE) \
2596)
Matúš Kukanf96d58b2012-09-08 18:13:20 +02002597$(call gb_LinkTarget_use_static_libraries,$(1),\
Michael Stahlb0e0ee42017-09-14 14:12:40 +02002598 libpng \
David Tardon6df9c472011-09-15 14:44:34 +02002599)
Michael Stahl398ce442012-09-28 21:47:29 +02002600$(call gb_LinkTarget__use_zlib,$(1))
David Tardon6df9c472011-09-15 14:44:34 +02002601
2602endef
2603
Michael Stahlb0e0ee42017-09-14 14:12:40 +02002604define gb_ExternalProject__use_libpng
David Tardon5955e7b2016-11-03 13:58:29 +01002605$(call gb_ExternalProject_use_static_libraries,$(1),\
Michael Stahlb0e0ee42017-09-14 14:12:40 +02002606 libpng \
David Tardon5955e7b2016-11-03 13:58:29 +01002607)
2608
2609endef
2610
David Tardon6df9c472011-09-15 14:44:34 +02002611endif # !SYSTEM_LIBPNG
2612
Julien Nabeta2ffd712022-05-19 20:09:51 +01002613ifneq ($(SYSTEM_LIBTIFF),)
2614
2615define gb_LinkTarget__use_libtiff
2616$(call gb_LinkTarget_set_include,$(1),\
2617 $$(INCLUDE) \
2618 $(LIBTIFF_CFLAGS) \
2619)
2620
2621$(call gb_LinkTarget_add_libs,$(1),\
2622 $(LIBTIFF_LIBS) \
2623)
2624
2625endef
2626
2627gb_ExternalProject__use_libtiff :=
2628
2629else # !SYSTEM_LIBTIFF
2630
2631define gb_LinkTarget__use_libtiff
2632$(call gb_LinkTarget_set_include,$(1),\
2633 $(LIBTIFF_CFLAGS) \
2634 $$(INCLUDE) \
2635)
2636
2637$(call gb_LinkTarget_set_include,$(1),\
Caolán McNamara22b50f12022-05-19 17:11:23 +01002638 -I$(call gb_UnpackedTarball_get_dir,libtiff)/libtiff \
Julien Nabeta2ffd712022-05-19 20:09:51 +01002639 $$(INCLUDE) \
2640)
2641ifeq ($(OS),WNT)
2642$(call gb_LinkTarget_add_libs,$(1),\
2643 $(call gb_UnpackedTarball_get_dir,libtiff)/libtiff/.libs/libtiff$(gb_StaticLibrary_PLAINEXT) \
2644)
2645else
2646$(call gb_LinkTarget_add_libs,$(1),\
2647 -L$(call gb_UnpackedTarball_get_dir,libtiff)/libtiff/.libs -ltiff \
2648)
2649endif
Stephan Bergmann3e21c3c2022-05-24 09:18:38 +02002650$(call gb_LinkTarget_use_external_project,$(1),libtiff,full)
Julien Nabeta2ffd712022-05-19 20:09:51 +01002651
2652endef
2653
2654define gb_ExternalProject__use_libtiff
Caolán McNamara11e42352022-05-21 16:30:59 +01002655$(call gb_ExternalProject_use_external_project,$(1),libtiff)
Julien Nabeta2ffd712022-05-19 20:09:51 +01002656
2657endef
2658
2659endif # !SYSTEM_LIBTIFF
Michael Stahl50471a82011-12-06 19:17:52 +01002660
Luboš Luňák60eaa422022-01-13 15:59:49 +01002661ifneq ($(SYSTEM_LIBWEBP),)
2662
2663define gb_LinkTarget__use_libwebp
2664$(call gb_LinkTarget_set_include,$(1),\
2665 $$(INCLUDE) \
2666 $(LIBWEBP_CFLAGS) \
2667)
2668
2669$(call gb_LinkTarget_add_libs,$(1),\
2670 $(LIBWEBP_LIBS) \
2671)
2672
2673endef
2674
2675gb_ExternalProject__use_libwebp :=
2676
2677else # !SYSTEM_LIBWEBP
2678
2679define gb_LinkTarget__use_libwebp
2680$(call gb_LinkTarget_set_include,$(1),\
2681 $(LIBWEBP_CFLAGS) \
2682 $$(INCLUDE) \
2683)
2684
2685$(call gb_LinkTarget_set_include,$(1),\
2686 -I$(call gb_UnpackedTarball_get_dir,libwebp)/src \
2687 $$(INCLUDE) \
2688)
2689ifeq ($(OS),WNT)
2690$(call gb_LinkTarget_add_libs,$(1),\
Luboš Luňák1661a3e2022-05-02 16:24:00 +02002691 $(call gb_UnpackedTarball_get_dir,libwebp)/output/lib/libwebp$(if $(MSVC_USE_DEBUG_RUNTIME),_debug)$(gb_StaticLibrary_PLAINEXT) \
Luboš Luňák60eaa422022-01-13 15:59:49 +01002692)
2693else
2694$(call gb_LinkTarget_add_libs,$(1),\
2695 -L$(call gb_UnpackedTarball_get_dir,libwebp)/src/.libs -lwebp \
Caolán McNamarae4474f82022-12-29 20:36:07 +00002696 -L$(call gb_UnpackedTarball_get_dir,libwebp)/sharpyuv/.libs -lsharpyuv \
Luboš Luňák60eaa422022-01-13 15:59:49 +01002697)
2698endif
2699$(call gb_LinkTarget_use_external_project,$(1),libwebp)
2700
2701endef
2702
2703define gb_ExternalProject__use_libwebp
Caolán McNamara11e42352022-05-21 16:30:59 +01002704$(call gb_ExternalProject_use_external_project,$(1),libwebp)
Luboš Luňák60eaa422022-01-13 15:59:49 +01002705
2706endef
2707
2708endif # !SYSTEM_LIBWEBP
2709
2710
Michael Stahle3abec32014-02-11 15:57:18 +01002711ifneq ($(SYSTEM_CURL),)
Michael Stahl50471a82011-12-06 19:17:52 +01002712
2713define gb_LinkTarget__use_curl
Cédric Bosdonnat89361fa2014-07-16 17:02:01 +02002714$(call gb_LinkTarget_add_defs,$(1),\
2715 -DSYSTEM_CURL \
2716)
Michael Stahl50471a82011-12-06 19:17:52 +01002717$(call gb_LinkTarget_set_include,$(1),\
2718 $$(INCLUDE) \
2719 $(CURL_CFLAGS) \
2720)
2721$(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
2722
2723endef
2724
2725else # !SYSTEM_CURL
2726
Michael Stahl32a617d2014-02-17 11:23:19 +01002727$(eval $(call gb_Helper_register_packages_for_install,ooo,\
2728 curl \
2729))
2730
Michael Stahl50471a82011-12-06 19:17:52 +01002731define gb_LinkTarget__use_curl
Christian Lohmaier3dee92e2012-11-13 19:44:44 +01002732$(call gb_LinkTarget_use_package,$(1),curl)
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01002733$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002734 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
Matúš Kukan9f3a3ab2012-10-29 22:57:34 +01002735 $$(INCLUDE) \
2736)
Michael Stahl936a1a92013-10-23 22:37:11 +02002737
2738ifeq ($(COM),MSC)
Michael Stahl714b93b2013-10-24 00:32:04 +02002739$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl4b7f8f72021-10-27 21:07:48 +02002740 $(call gb_UnpackedTarball_get_dir,curl)/builds/libcurl-vc12-$(gb_MSBUILD_PLATFORM)-$(gb_MSBUILD_CONFIG)-dll-zlib-static-ipv6-sspi-schannel/lib/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).lib \
Michael Stahl50471a82011-12-06 19:17:52 +01002741)
Michael Stahl936a1a92013-10-23 22:37:11 +02002742else
2743$(call gb_LinkTarget_add_libs,$(1),\
2744 -L$(call gb_UnpackedTarball_get_dir,curl)/lib/.libs -lcurl \
2745)
2746endif
Michael Stahl50471a82011-12-06 19:17:52 +01002747
2748endef
2749
2750endif # SYSTEM_CURL
2751
Stephan Bergmann49313b02012-11-27 15:35:02 +01002752ifeq ($(ENABLE_VALGRIND),TRUE)
David Tardon3446cda2011-12-23 12:21:19 +01002753
2754define gb_LinkTarget__use_valgrind
2755$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmann49313b02012-11-27 15:35:02 +01002756 -DHAVE_VALGRIND_HEADERS \
David Tardon3446cda2011-12-23 12:21:19 +01002757)
2758
2759$(call gb_LinkTarget_set_include,$(1),\
2760 $$(INCLUDE) \
2761 $(VALGRIND_CFLAGS) \
2762)
2763
2764endef
2765
Stephan Bergmann49313b02012-11-27 15:35:02 +01002766else # !ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01002767
2768define gb_LinkTarget__use_valgrind
2769
2770endef
2771
Stephan Bergmann49313b02012-11-27 15:35:02 +01002772endif # ENABLE_VALGRIND
David Tardon3446cda2011-12-23 12:21:19 +01002773
Ashod Nakashian0d8c6702019-03-06 22:06:35 -05002774ifeq ($(ENABLE_POPPLER),TRUE)
2775
Michael Stahl32db4992014-02-11 19:35:22 +01002776ifneq ($(SYSTEM_POPPLER),)
David Tardondba2d322012-02-18 18:54:35 +01002777
2778define gb_LinkTarget__use_poppler
David Tardondba2d322012-02-18 18:54:35 +01002779$(call gb_LinkTarget_set_include,$(1),\
2780 $(POPPLER_CFLAGS) \
2781 $$(INCLUDE) \
2782)
2783
2784$(call gb_LinkTarget_add_libs,$(1),\
2785 $(POPPLER_LIBS) \
2786)
2787
2788endef
2789
2790else # !SYSTEM_POPPLER
2791
Michael Warner6ea7ca42021-11-12 08:13:16 -05002792$(eval $(call gb_Helper_register_packages_for_install,pdfimport,\
2793 poppler_data \
2794))
2795
David Tardondba2d322012-02-18 18:54:35 +01002796define gb_LinkTarget__use_poppler
David Tardoncad68c62015-09-29 18:09:16 +02002797$(call gb_LinkTarget_use_external_project,$(1),poppler,full)
Michael Warner648e4102021-05-11 09:22:27 -04002798$(call gb_LinkTarget_use_package,$(1),poppler_data)
David Tardon548b61a2012-02-21 06:58:02 +01002799$(call gb_LinkTarget_set_include,$(1),\
Fridrich Štrbaeb276d12013-07-08 14:01:17 +02002800 -I$(call gb_UnpackedTarball_get_dir,poppler) \
2801 -I$(call gb_UnpackedTarball_get_dir,poppler)/poppler \
2802 -I$(call gb_UnpackedTarball_get_dir,poppler)/goo \
David Tardon548b61a2012-02-21 06:58:02 +01002803 $$(INCLUDE) \
David Tardondba2d322012-02-18 18:54:35 +01002804)
2805
Michael Stahl67e53552018-06-20 16:10:44 +02002806$(call gb_LinkTarget_use_static_libraries,$(1),poppler)
Michael Stahl77d297f2017-09-13 22:50:14 +02002807$(call gb_LinkTarget_use_external,$(1),libjpeg)
Michael Stahl43532a02016-11-03 15:58:08 +01002808
David Tardon548b61a2012-02-21 06:58:02 +01002809ifeq ($(OS),MACOSX)
Michael Stahl967986b2012-09-28 00:54:49 +02002810$(call gb_LinkTarget_add_libs,$(1),\
2811 -lobjc \
David Tardon548b61a2012-02-21 06:58:02 +01002812)
Caolán McNamara0d5cc8c2014-08-30 15:12:53 +01002813else ifeq ($(OS),LINUX)
2814$(call gb_LinkTarget_add_libs,$(1),\
2815 -pthread \
2816)
David Tardon548b61a2012-02-21 06:58:02 +01002817else ifeq ($(OS),WNT)
Michael Stahldc397aae2012-09-28 15:31:46 +02002818$(call gb_LinkTarget_use_system_win32_libs,$(1),\
David Tardon548b61a2012-02-21 06:58:02 +01002819 advapi32 \
2820 gdi32 \
2821)
2822endif
2823
David Tardondba2d322012-02-18 18:54:35 +01002824endef
2825
2826endif # SYSTEM_POPPLER
2827
Ashod Nakashian0d8c6702019-03-06 22:06:35 -05002828endif # ENABLE_POPPLER
2829
David Tardon3446cda2011-12-23 12:21:19 +01002830
Michael Stahl46648152014-02-11 16:33:18 +01002831ifneq ($(SYSTEM_CLUCENE),)
David Tardon22c60cb2012-04-07 15:50:47 +02002832
2833define gb_LinkTarget__use_clucene
2834$(call gb_LinkTarget_add_defs,$(1),\
Markus Mohrhard62101bc2014-08-07 19:40:33 +02002835 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(CLUCENE_CFLAGS))) \
David Tardon22c60cb2012-04-07 15:50:47 +02002836)
2837
2838$(call gb_LinkTarget_set_include,$(1),\
Markus Mohrhard62101bc2014-08-07 19:40:33 +02002839 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(CLUCENE_CFLAGS)))) \
David Tardon22c60cb2012-04-07 15:50:47 +02002840 $$(INCLUDE) \
2841)
2842
2843$(call gb_LinkTarget_add_libs,$(1),\
2844 $(CLUCENE_LIBS) \
2845)
2846
2847endef
2848
2849else # !SYSTEM_CLUCENE
2850
2851define gb_LinkTarget__use_clucene
Michael Stahl28cde0c2013-05-07 23:47:27 +02002852$(call gb_LinkTarget_set_include,$(1),\
2853 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/core \
2854 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/shared \
2855 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/contribs-lib \
2856 $$(INCLUDE) \
2857)
2858
Michael Stahlc923f7d2012-04-07 23:22:08 +02002859$(call gb_LinkTarget_use_libraries,$(1),\
David Tardon22c60cb2012-04-07 15:50:47 +02002860 clucene \
2861)
2862
2863endef
2864
Marcos Paulo de Souzaf70343b2014-02-12 06:53:02 -02002865$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
Jan-Marek Glogowski87cdb3e2021-12-21 14:12:10 +01002866 $(call gb_Helper_optionals_or,HELPTOOLS XMLHELP,clucene) \
David Tardon22c60cb2012-04-07 15:50:47 +02002867))
2868
2869endif # SYSTEM_CLUCENE
2870
Peter Foley64402842011-12-22 16:34:35 -05002871define gb_LinkTarget__use_gobject
Rene Engelhardac3c7ba2012-11-06 20:38:47 +01002872$(call gb_LinkTarget_add_libs,$(1),\
2873 $(GOBJECT_LIBS) \
2874)
2875
2876$(call gb_LinkTarget_set_include,$(1),\
2877 $$(INCLUDE) \
2878 $(GOBJECT_CFLAGS) \
2879)
Peter Foley64402842011-12-22 16:34:35 -05002880endef
2881
Sophia Schröderf4fc28a2018-04-11 15:39:57 +01002882ifneq ($(SYSTEM_HSQLDB),)
2883
2884define gb_LinkTarget__use_hsqldb
2885
2886$(call gb_LinkTarget_add_defs,$(1),\
2887 -DSYSTEM_HSQLDB \
2888 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
2889)
2890
2891endef
2892
2893else # !SYSTEM_HSQLDB
2894
2895define gb_LinkTarget__use_hsqldb
2896
2897endef
2898
2899endif # SYSTEM_HSQLDB
2900
Andrew Udvare6776c532019-01-08 04:53:51 -05002901ifeq ($(ENABLE_LDAP),TRUE)
Michael Stahl5378dea2014-02-11 19:11:47 +01002902ifneq ($(SYSTEM_OPENLDAP),)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002903
2904define gb_LinkTarget__use_openldap
2905
2906$(call gb_LinkTarget_add_libs,$(1),\
2907 -lldap \
2908 -llber \
2909)
2910
2911endef
2912
Michael Stahl2f6261f2013-09-19 19:28:36 +02002913gb_ExternalProject__use_openldap :=
2914
Michael Stahl5378dea2014-02-11 19:11:47 +01002915else # !SYSTEM_OPENLDAP
Michael Stahle0ee0d42012-07-16 19:00:07 +02002916
Michael Stahle0ee0d42012-07-16 19:00:07 +02002917define gb_LinkTarget__use_openldap
Matúš Kukan7a030392012-10-29 23:29:37 +01002918$(call gb_LinkTarget_use_unpacked,$(1),openldap)
Michael Stahle0ee0d42012-07-16 19:00:07 +02002919$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02002920 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002921 $$(INCLUDE) \
2922)
Stephan Bergmann6b4c4352015-10-09 09:21:48 +02002923$(call gb_LinkTarget_use_external_project,$(1),openldap,full)
Michael Stahl2f6261f2013-09-19 19:28:36 +02002924$(call gb_LinkTarget_add_libs,$(1), \
2925 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/libldap/.libs/libldap.a \
2926 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/liblber/.libs/liblber.a \
Michael Stahle0ee0d42012-07-16 19:00:07 +02002927)
2928
2929endef
Andrew Udvare6776c532019-01-08 04:53:51 -05002930endif
Michael Stahle0ee0d42012-07-16 19:00:07 +02002931
Michael Stahl2f6261f2013-09-19 19:28:36 +02002932define gb_ExternalProject__use_openldap
2933$(call gb_ExternalProject_use_external_project,$(1),openldap)
2934
2935endef
2936
Michael Stahle0ee0d42012-07-16 19:00:07 +02002937endif # SYSTEM_OPENLDAP
2938
Wastack45f42682016-07-28 17:16:19 +02002939ifneq ($(SYSTEM_LIBTOMMATH),)
2940
2941define gb_LinkTarget__use_libtommath
2942$(call gb_LinkTarget_set_include,$(1),\
2943 $(LIBTOMMATH_CFLAGS) \
2944 $$(INCLUDE) \
2945)
2946$(call gb_LinkTarget_add_libs,$(1),$(LIBTOMMATH_LIBS))
2947
2948endef
2949
2950else # !SYSTEM_LIBTOMMATH
2951define gb_LinkTarget__use_libtommath
2952$(call gb_LinkTarget_set_include,$(1),\
2953 -I${WORKDIR}/UnpackedTarball/libtommath \
2954 $$(INCLUDE) \
2955)
2956$(call gb_LinkTarget_add_libs,$(1),\
2957 $(call gb_UnpackedTarball_get_dir,libtommath)/libtommath$(gb_StaticLibrary_PLAINEXT) \
2958)
2959$(call gb_LinkTarget_use_external_project,$(1),libtommath)
2960
2961endef
2962
2963endif # SYSTEM_LIBTOMMATH
2964
2965define gb_ExternalProject__use_libtommath
2966$(call gb_ExternalProject_use_external_project,$(1),libtommath)
2967
2968endef
Michael Stahle0ee0d42012-07-16 19:00:07 +02002969
Javier Fernandezf53228c2013-05-10 18:21:30 +00002970ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE)
2971
Michael Stahl23647592014-02-11 19:04:20 +01002972ifneq ($(SYSTEM_FIREBIRD),)
Javier Fernandezf53228c2013-05-10 18:21:30 +00002973
Rene Engelhard0b68d702013-07-16 21:50:14 +02002974define gb_LinkTarget__use_libfbembed
Javier Fernandezf53228c2013-05-10 18:21:30 +00002975$(call gb_LinkTarget_set_include,$(1),\
2976 $(FIREBIRD_CFLAGS) \
2977 $$(INCLUDE) \
2978)
2979$(call gb_LinkTarget_add_libs,$(1),$(FIREBIRD_LIBS))
2980
2981endef
2982
Javier Fernandezf53228c2013-05-10 18:21:30 +00002983else # !SYSTEM_FIREBIRD
2984
Michael Stahl2c78d492017-01-09 14:45:11 +01002985$(eval $(call gb_Helper_register_packages_for_install,firebirdsdbc,\
2986 firebird \
2987))
2988
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +01002989#$(call gb_LinkTarget__use_libatomic_ops,$(1))
Wastack45f42682016-07-28 17:16:19 +02002990#$(call gb_LinkTarget__use_libtommath,$(1))
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +01002991
Andrzej J.R. Hunt0f16fa02013-06-14 14:55:22 +01002992define gb_LinkTarget__use_libfbembed
2993$(call gb_LinkTarget_use_package,$(1),firebird)
Javier Fernandezf53228c2013-05-10 18:21:30 +00002994$(call gb_LinkTarget_set_include,$(1),\
Stephan Bergmann416c5522016-10-17 08:39:09 +02002995 -I$(call gb_UnpackedTarball_get_dir,firebird)/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/include \
Javier Fernandezf53228c2013-05-10 18:21:30 +00002996 $$(INCLUDE) \
2997)
Michael Stahl37563db2013-10-22 22:22:49 +02002998ifeq ($(COM),MSC)
2999$(call gb_LinkTarget_add_libs,$(1),\
Stephan Bergmann416c5522016-10-17 08:39:09 +02003000 $(call gb_UnpackedTarball_get_dir,firebird)/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/bin/ifbclient.lib \
Javier Fernandezf53228c2013-05-10 18:21:30 +00003001)
Michael Stahl37563db2013-10-22 22:22:49 +02003002else
3003$(call gb_LinkTarget_add_libs,$(1),\
Stephan Bergmann416c5522016-10-17 08:39:09 +02003004 -L$(call gb_UnpackedTarball_get_dir,firebird)/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/lib -lfbclient \
Michael Stahl37563db2013-10-22 22:22:49 +02003005)
3006endif
Javier Fernandezf53228c2013-05-10 18:21:30 +00003007
3008endef
3009
Javier Fernandezf53228c2013-05-10 18:21:30 +00003010
3011# endef
3012
3013endif # SYSTEM_FIREBIRD
3014
3015else # !ENABLE_FIREBIRD_SDBC
Michael Stahl6fa0b372014-02-12 17:01:35 +01003016
Javier Fernandezf53228c2013-05-10 18:21:30 +00003017gb_LinkTarget__use_firebird :=
3018# gb_LinkTarget__use_atomic_ops :=
Wastack45f42682016-07-28 17:16:19 +02003019# gb_LinkTarget__use_libtommath :=
Javier Fernandezf53228c2013-05-10 18:21:30 +00003020
3021endif # ENABLE_FIREBIRD_SDBC
3022
3023
Michael Stahl5866b332014-02-11 18:56:33 +01003024ifneq ($(SYSTEM_POSTGRESQL),)
David Tardon8bc7afb2012-04-05 10:53:08 +02003025
3026define gb_LinkTarget__use_postgresql
3027
David Tardon8bc7afb2012-04-05 10:53:08 +02003028$(call gb_LinkTarget_set_include,$(1),\
3029 $(POSTGRESQL_INC) \
3030 $$(INCLUDE) \
3031)
3032
3033$(call gb_LinkTarget_add_libs,$(1),\
3034 -lpq \
3035)
3036
3037$(call gb_LinkTarget_add_ldflags,$(1),\
3038 $(POSTGRESQL_LIB) \
3039)
3040
3041endef
3042
3043else # !SYSTEM_POSTGRESQL
3044
Michael Stahl5e6e87f2021-01-21 14:26:01 +01003045ifeq ($(OS),WNT)
3046$(eval $(call gb_Helper_register_packages_for_install,postgresqlsdbc,\
3047 postgresql \
3048))
3049endif # WNT
3050
David Tardon8bc7afb2012-04-05 10:53:08 +02003051define gb_LinkTarget__use_postgresql
3052
Michael Stahl234833f2021-01-19 15:38:05 +01003053$(call gb_LinkTarget_use_external_project,$(1),postgresql,full)
David Tardoncb9823b2012-10-22 06:33:00 +02003054
David Tardon8bc7afb2012-04-05 10:53:08 +02003055$(call gb_LinkTarget_set_include,$(1),\
Michael Stahlee8323e2013-05-08 00:19:40 +02003056 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \
3057 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq \
David Tardon8bc7afb2012-04-05 10:53:08 +02003058 $$(INCLUDE) \
3059)
3060
Michael Stahl234833f2021-01-19 15:38:05 +01003061ifeq ($(OS),WNT)
3062
Michael Stahl234833f2021-01-19 15:38:05 +01003063$(call gb_LinkTarget_add_libs,$(1),\
3064 $(call gb_UnpackedTarball_get_dir,postgresql)/$(gb_MSBUILD_CONFIG)/libpq/libpq.lib \
3065)
3066
Jan-Marek Glogowski58d5f742021-05-22 21:42:26 +02003067else # !WNT
Michael Stahl234833f2021-01-19 15:38:05 +01003068
Michael Stahl2f6261f2013-09-19 19:28:36 +02003069$(call gb_LinkTarget_add_libs,$(1),\
3070 $(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq/libpq$(gb_StaticLibrary_PLAINEXT) \
Michael Stahl234833f2021-01-19 15:38:05 +01003071 $(call gb_UnpackedTarball_get_dir,postgresql)/src/common/libpgcommon$(gb_StaticLibrary_PLAINEXT) \
3072 $(call gb_UnpackedTarball_get_dir,postgresql)/src/port/libpgport$(gb_StaticLibrary_PLAINEXT) \
Jan-Marek Glogowski58d5f742021-05-22 21:42:26 +02003073 $(if $(WITH_GSSAPI),$(GSSAPI_LIBS)) \
David Tardon8bc7afb2012-04-05 10:53:08 +02003074)
3075
Jan-Marek Glogowski58d5f742021-05-22 21:42:26 +02003076endif # !WNT
David Tardon8bc7afb2012-04-05 10:53:08 +02003077
Jan-Marek Glogowski58d5f742021-05-22 21:42:26 +02003078endef # gb_LinkTarget__use_postgresql
David Tardon8bc7afb2012-04-05 10:53:08 +02003079
Jan-Marek Glogowski58d5f742021-05-22 21:42:26 +02003080endif # !SYSTEM_POSTGRESQL
David Tardon8bc7afb2012-04-05 10:53:08 +02003081
Michael Weghornba672022022-01-27 15:16:47 +01003082ifneq (,$(filter TRUE,$(ENABLE_KF5) $(ENABLE_GTK3_KDE5)))
Milian Wolff4d78cf92018-01-10 16:26:10 +01003083
Jan-Marek Glogowskid3c6ac62019-07-09 15:28:29 +00003084define gb_LinkTarget__use_kf5
Milian Wolff4d78cf92018-01-10 16:26:10 +01003085$(call gb_LinkTarget_set_include,$(1),\
3086 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(KF5_CFLAGS)))) \
3087 $$(INCLUDE) \
3088)
3089
Michael Weghorn4aa60492019-06-08 13:45:36 +02003090$(call gb_LinkTarget_add_cxxflags,$(1),\
Milian Wolff4d78cf92018-01-10 16:26:10 +01003091 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(KF5_CFLAGS))) \
3092)
3093
3094$(call gb_LinkTarget_add_libs,$(1),\
3095 $(KF5_LIBS) \
3096)
3097
Milian Wolff4d78cf92018-01-10 16:26:10 +01003098endef
3099
Jan-Marek Glogowskid3c6ac62019-07-09 15:28:29 +00003100else # !ENABLE_KF5
Milian Wolff4d78cf92018-01-10 16:26:10 +01003101
Jan-Marek Glogowskid3c6ac62019-07-09 15:28:29 +00003102define gb_LinkTarget__use_kf5
Milian Wolff4d78cf92018-01-10 16:26:10 +01003103
3104endef
3105
Jan-Marek Glogowskid3c6ac62019-07-09 15:28:29 +00003106endif # ENABLE_KF5
Milian Wolff4d78cf92018-01-10 16:26:10 +01003107
3108
3109
Michael Weghornba672022022-01-27 15:16:47 +01003110ifneq (,$(filter TRUE,$(ENABLE_QT5) $(ENABLE_GTK3_KDE5)))
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003111
Jan-Marek Glogowski2ffb83d2017-10-30 18:45:46 +01003112define gb_LinkTarget__use_qt5
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003113$(call gb_LinkTarget_set_include,$(1),\
Jan-Marek Glogowski2ffb83d2017-10-30 18:45:46 +01003114 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(QT5_CFLAGS)))) \
3115 $$(INCLUDE) \
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003116)
3117
3118$(call gb_LinkTarget_add_defs,$(1),\
Jan-Marek Glogowski2ffb83d2017-10-30 18:45:46 +01003119 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(QT5_CFLAGS))) \
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003120)
3121
3122$(call gb_LinkTarget_add_libs,$(1),\
Jan-Marek Glogowski2ffb83d2017-10-30 18:45:46 +01003123 $(QT5_LIBS) \
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003124)
3125
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003126endef
3127
Jan-Marek Glogowski2ffb83d2017-10-30 18:45:46 +01003128else # !ENABLE_QT5
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003129
Jan-Marek Glogowski2ffb83d2017-10-30 18:45:46 +01003130define gb_LinkTarget__use_qt5
Jan-Marek Glogowski93359452017-10-21 13:50:30 +00003131
3132endef
3133
Jan-Marek Glogowski2ffb83d2017-10-30 18:45:46 +01003134endif # ENABLE_QT5
David Tardond4efa8b2012-04-28 20:48:14 +02003135
Michael Weghorn88d57cf2021-09-29 11:09:51 +02003136ifeq ($(ENABLE_QT6),TRUE)
3137
3138define gb_LinkTarget__use_qt6
3139$(call gb_LinkTarget_set_include,$(1),\
3140 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(QT6_CFLAGS)))) \
3141 $$(INCLUDE) \
3142)
3143
3144$(call gb_LinkTarget_add_defs,$(1),\
3145 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(QT6_CFLAGS))) \
3146)
3147
3148$(call gb_LinkTarget_add_libs,$(1),\
3149 $(QT6_LIBS) \
3150)
3151
3152endef
3153
3154else # !ENABLE_QT6
3155
3156define gb_LinkTarget__use_qt6
3157
3158endef
3159
3160endif # ENABLE_QT6
3161
3162
David Ostrovskye16ac692012-05-27 22:50:41 +02003163# PYTHON
Michael Stahl91926332012-11-27 15:50:53 +01003164# extra python_headers external because pyuno wrapper must not link python
Michael Stahl0443d0a2014-02-11 16:57:35 +01003165ifneq ($(SYSTEM_PYTHON),)
David Ostrovskye16ac692012-05-27 22:50:41 +02003166
Michael Stahl91926332012-11-27 15:50:53 +01003167define gb_LinkTarget__use_python_headers
David Ostrovskye16ac692012-05-27 22:50:41 +02003168$(call gb_LinkTarget_add_defs,$(1),\
Andrea Gelmini2a81eee2018-12-06 23:10:27 +01003169 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(PYTHON_CFLAGS)))) \
David Ostrovskye16ac692012-05-27 22:50:41 +02003170)
3171
3172$(call gb_LinkTarget_set_include,$(1),\
Markus Mohrhard62101bc2014-08-07 19:40:33 +02003173 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(PYTHON_CFLAGS)))) \
David Ostrovskye16ac692012-05-27 22:50:41 +02003174 $$(INCLUDE) \
3175)
3176
Michael Stahl91926332012-11-27 15:50:53 +01003177endef
3178
3179define gb_LinkTarget__use_python
3180$(call gb_LinkTarget__use_python_headers,$(1))
3181
David Ostrovskye16ac692012-05-27 22:50:41 +02003182$(call gb_LinkTarget_add_libs,$(1),\
3183 $(PYTHON_LIBS) \
3184)
3185
3186endef
3187
3188else # !SYSTEM_PYTHON
3189
Michael Stahl720ca8e2014-03-18 18:24:15 +01003190$(eval $(call gb_Helper_register_packages_for_install,python,\
3191 python3 \
Jan-Marek Glogowskifad7e202021-02-07 15:15:58 +01003192 $(if $(filter WNT,$(OS)),libffi) \
Michael Stahl720ca8e2014-03-18 18:24:15 +01003193))
3194
Michael Stahl91926332012-11-27 15:50:53 +01003195define gb_LinkTarget__use_python_headers
David Tardoncad68c62015-09-29 18:09:16 +02003196$(call gb_LinkTarget_use_external_project,$(1),python3,full)
Michael Stahl91926332012-11-27 15:50:53 +01003197$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl70fcfee2013-04-01 12:47:16 +02003198 -I$(call gb_UnpackedTarball_get_dir,python3) \
3199 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
3200 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
Michael Stahl91926332012-11-27 15:50:53 +01003201 $$(INCLUDE) \
3202)
3203
3204endef
3205
David Ostrovskye16ac692012-05-27 22:50:41 +02003206define gb_LinkTarget__use_python
Michael Stahl91926332012-11-27 15:50:53 +01003207$(call gb_LinkTarget__use_python_headers,$(1))
Michael Stahld9162d22015-07-29 12:17:03 +02003208ifeq ($(OS),MACOSX)
3209$(call gb_LinkTarget_use_generated_package,$(1),python3)
3210else
Michael Stahl57dd4d02015-07-29 10:56:57 +02003211$(call gb_LinkTarget_use_package,$(1),python3)
Michael Stahld9162d22015-07-29 12:17:03 +02003212endif
David Ostrovskye16ac692012-05-27 22:50:41 +02003213
3214ifeq ($(OS),WNT)
Jan-Marek Glogowskibd066a12020-07-18 03:57:20 +02003215ifeq ($(CPUNAME),X86_64)
Stephan Bergmannc7a920a2022-02-23 08:51:28 +01003216python_arch_subdir=amd64/
Jan-Marek Glogowski5e1b3e92021-03-22 22:13:39 +01003217else ifeq ($(CPUNAME),AARCH64)
Stephan Bergmannc7a920a2022-02-23 08:51:28 +01003218python_arch_subdir=arm64/
Jan-Marek Glogowskibd066a12020-07-18 03:57:20 +02003219else
Stephan Bergmannc7a920a2022-02-23 08:51:28 +01003220python_arch_subdir=win32/
Jan-Marek Glogowskibd066a12020-07-18 03:57:20 +02003221endif
David Ostrovskye16ac692012-05-27 22:50:41 +02003222$(call gb_LinkTarget_add_libs,$(1),\
Stephan Bergmannc7a920a2022-02-23 08:51:28 +01003223 $(call gb_UnpackedTarball_get_dir,python3)/PCbuild/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).lib \
David Ostrovskye16ac692012-05-27 22:50:41 +02003224)
3225else ifeq ($(OS),MACOSX)
3226$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahl9d921ba2012-11-27 15:32:36 +01003227 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
David Ostrovskye16ac692012-05-27 22:50:41 +02003228)
3229else
Michael Stahlb6bcbb62013-04-21 14:34:50 +02003230$(call gb_LinkTarget_add_libs,$(1),\
3231 -L$(call gb_UnpackedTarball_get_dir,python3) \
Thomas Viehmann12142492020-11-27 23:08:08 +01003232 -lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)$(if $(ENABLE_DBGUTIL),d) \
David Ostrovskye16ac692012-05-27 22:50:41 +02003233)
3234endif
3235
David Ostrovskye16ac692012-05-27 22:50:41 +02003236endef
3237
Michael Stahl79084662020-01-09 15:06:07 +01003238# this is only used by python currently
3239define gb_ExternalProject__use_libffi
3240$(call gb_ExternalProject_use_external_project,$(1),libffi)
3241
3242endef
3243
David Ostrovskye16ac692012-05-27 22:50:41 +02003244endif # SYSTEM_PYTHON
3245
Kohei Yoshida49b0b692012-09-04 15:05:35 -04003246# ORCUS
Michael Stahle3abec32014-02-11 15:57:18 +01003247ifneq ($(SYSTEM_LIBORCUS),)
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003248
3249define gb_LinkTarget__use_orcus
3250$(call gb_LinkTarget_set_include,$(1),\
3251 $$(INCLUDE) \
Matúš Kukana2d63fe2012-09-09 16:29:10 +02003252 $(ORCUS_CFLAGS) \
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003253)
Rene Engelhard26b80fc2013-04-13 19:29:33 +02003254$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
Rene Engelhardfb360f52013-04-13 16:17:29 +02003255endef
3256
3257define gb_LinkTarget__use_orcus-parser
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003258
3259endef
3260
Kohei Yoshida31f589b2012-08-30 23:26:59 -04003261else # !SYSTEM_LIBORCUS
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003262
David Tardonedb38d72015-06-04 16:09:48 +02003263ifeq ($(COM),MSC)
3264
3265$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
3266 orcus \
3267 orcus-parser \
3268))
3269
Kohei Yoshidac8b7e982012-08-31 10:11:32 -04003270define gb_LinkTarget__use_orcus
Matúš Kukan1ee76032012-09-09 15:29:43 +02003271$(call gb_LinkTarget_set_include,$(1),\
Michael Stahl10fc13c2013-05-06 23:35:13 +02003272 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
Matúš Kukan1ee76032012-09-09 15:29:43 +02003273 $$(INCLUDE) \
3274)
David Tardonf1035c12012-11-23 06:49:21 +01003275
David Tardonedb38d72015-06-04 16:09:48 +02003276$(call gb_LinkTarget_use_libraries,$(1),\
3277 orcus \
Stephan Bergmann3743cdb2013-02-17 22:58:21 +01003278)
David Tardonf1035c12012-11-23 06:49:21 +01003279
Kohei Yoshidaa6639312012-07-27 22:14:39 -04003280endef
3281
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04003282define gb_LinkTarget__use_orcus-parser
Kohei Yoshidaecc884e2013-12-17 21:18:46 -05003283$(call gb_LinkTarget_set_include,$(1),\
3284 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3285 $$(INCLUDE) \
3286)
David Tardonedb38d72015-06-04 16:09:48 +02003287
3288$(call gb_LinkTarget_use_libraries,$(1),\
3289 orcus-parser \
Kohei Yoshida4d9c2fb2013-04-11 23:11:21 -04003290)
3291
3292endef
3293
David Tardonedb38d72015-06-04 16:09:48 +02003294else # !MSC
3295
3296$(eval $(call gb_Helper_register_packages_for_install,ooo,\
3297 liborcus \
3298))
3299
3300define gb_LinkTarget__use_orcus
3301$(call gb_LinkTarget_use_package,$(1),liborcus)
3302
3303$(call gb_LinkTarget_set_include,$(1),\
3304 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3305 $$(INCLUDE) \
3306)
3307
3308$(call gb_LinkTarget_add_libs,$(1),\
Kohei Yoshidaeb07a0e2021-11-01 14:01:22 -04003309 -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs -lorcus-0.17 \
David Tardonedb38d72015-06-04 16:09:48 +02003310)
3311
3312$(if $(SYSTEM_BOOST), \
3313 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
3314 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
3315)
3316
3317endef
3318
3319define gb_LinkTarget__use_orcus-parser
3320$(call gb_LinkTarget_use_package,$(1),liborcus)
3321
3322$(call gb_LinkTarget_set_include,$(1),\
3323 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3324 $$(INCLUDE) \
3325)
3326
3327$(call gb_LinkTarget_add_libs,$(1),\
Kohei Yoshidaeb07a0e2021-11-01 14:01:22 -04003328 -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs -lorcus-parser-0.17 \
David Tardonedb38d72015-06-04 16:09:48 +02003329)
3330
3331endef
3332
3333endif # MSC
3334
Kohei Yoshida31f589b2012-08-30 23:26:59 -04003335endif # SYSTEM_LIBORCUS
David Ostrovskye16ac692012-05-27 22:50:41 +02003336
Khaled Hosny5aad1912022-10-01 13:03:11 +02003337ifeq ($(ENABLE_EOT),TRUE)
David Tardon49a4d362013-11-12 16:44:40 +01003338
Khaled Hosny5aad1912022-10-01 13:03:11 +02003339ifneq ($(SYSTEM_LIBEOT),)
David Tardon49a4d362013-11-12 16:44:40 +01003340
3341define gb_LinkTarget__use_libeot
3342$(call gb_LinkTarget_set_include,$(1),\
3343 $$(INCLUDE) \
3344 $(LIBEOT_CFLAGS) \
3345)
3346$(call gb_LinkTarget_add_libs,$(1),$(LIBEOT_LIBS))
3347
3348endef
3349
3350gb_ExternalProject__use_libeot :=
3351
3352else # !SYSTEM_LIBEOT
3353
3354define gb_LinkTarget__use_libeot
3355$(call gb_LinkTarget_set_include,$(1),\
3356 -I$(call gb_UnpackedTarball_get_dir,libeot)/inc \
3357 $$(INCLUDE) \
3358)
3359$(call gb_LinkTarget_add_libs,$(1),\
3360 $(call gb_UnpackedTarball_get_dir,libeot)/.libs/libeot$(gb_StaticLibrary_PLAINEXT) \
3361)
3362$(call gb_LinkTarget_use_external_project,$(1),libeot)
3363
3364endef
3365
3366define gb_ExternalProject__use_libeot
3367$(call gb_ExternalProject_use_external_project,$(1),libeot)
3368
3369endef
3370
Khaled Hosny5aad1912022-10-01 13:03:11 +02003371endif # SYSTEM_LIBEOT
3372
3373else # !ENABLE_EOT
David Tardon49a4d362013-11-12 16:44:40 +01003374
3375gb_LinkTarget__use_libeot :=
3376gb_ExternalProject__use_libeot :=
3377
Khaled Hosny5aad1912022-10-01 13:03:11 +02003378endif # ENABLE_EOT
David Tardon49a4d362013-11-12 16:44:40 +01003379
Khaled Hosny5aad1912022-10-01 13:03:11 +02003380### X11 stuff ###
Michael Stahl78b59b82012-09-27 21:45:47 +02003381
Samuel Mehrbrodtc29ea222015-09-18 14:12:08 +02003382ifeq ($(USING_X11), TRUE)
Michael Stahl78b59b82012-09-27 21:45:47 +02003383
Michael Stahl78b59b82012-09-27 21:45:47 +02003384define gb_LinkTarget__use_Xrandr
Michael Stahl78b59b82012-09-27 21:45:47 +02003385$(call gb_LinkTarget_set_include,$(1),\
3386 $$(INCLUDE) \
3387 $(XRANDR_CFLAGS) \
3388)
3389
3390$(call gb_LinkTarget_add_libs,$(1),\
3391 $(XRANDR_LIBS) \
3392)
3393endef
3394
Michael Stahl78b59b82012-09-27 21:45:47 +02003395define gb_LinkTarget__use_Xrender
Michael Stahl78b59b82012-09-27 21:45:47 +02003396$(call gb_LinkTarget_set_include,$(1),\
3397 $$(INCLUDE) \
3398 $(XRENDER_CFLAGS) \
3399)
3400
3401$(call gb_LinkTarget_add_libs,$(1),\
3402 $(XRENDER_LIBS) \
3403)
3404endef
3405
Samuel Mehrbrodtc29ea222015-09-18 14:12:08 +02003406endif # USING_X11
Michael Stahl78b59b82012-09-27 21:45:47 +02003407
Tor Lillqvist35491072011-08-02 21:22:35 +03003408
Michael Meeksb440cfc2013-02-28 12:05:07 +00003409gb_ExternalProject__use_nss3:=
3410
Tor Lillqvist9dc7f052012-08-13 09:19:35 +03003411
Michael Stahle3abec32014-02-11 15:57:18 +01003412ifneq ($(SYSTEM_NSS),)
David Tardonb6aa4842011-08-11 13:10:14 +02003413
David Tardon2b9dbc82012-08-13 06:57:51 +02003414define gb_LinkTarget__use_nss3
3415$(call gb_LinkTarget_add_defs,$(1),\
Stephan Bergmannea641222012-11-19 16:40:33 +01003416 -DSYSTEM_NSS \
David Tardon2b9dbc82012-08-13 06:57:51 +02003417)
3418
David Tardonb6aa4842011-08-11 13:10:14 +02003419$(call gb_LinkTarget_set_include,$(1),\
3420 $$(INCLUDE) \
Tomas Chvatal75f77e62011-11-02 21:16:53 +01003421 $(NSS_CFLAGS) \
David Tardonb6aa4842011-08-11 13:10:14 +02003422)
3423
3424$(call gb_LinkTarget_add_libs,$(1),\
Tomas Chvatal75f77e62011-11-02 21:16:53 +01003425 $(NSS_LIBS) \
David Tardonb6aa4842011-08-11 13:10:14 +02003426)
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003427
David Tardonb6aa4842011-08-11 13:10:14 +02003428endef
3429
Michael Stahl395c0c02021-10-19 16:00:53 +02003430define gb_LinkTarget__use_nssutil3
3431$(call gb_LinkTarget__use_nss3,$(1))
3432
3433endef
3434
David Tardon2b9dbc82012-08-13 06:57:51 +02003435define gb_LinkTarget__use_plc4
3436$(call gb_LinkTarget__use_nss3,$(1))
3437
3438endef
3439
David Tardon6ef46562013-02-04 10:04:07 +01003440define gb_LinkTarget__use_ssl3
3441$(call gb_LinkTarget__use_nss3,$(1))
3442
3443endef
3444
Michael Stahle3abec32014-02-11 15:57:18 +01003445else # !SYSTEM_NSS
David Tardonb6aa4842011-08-11 13:10:14 +02003446
Michael Stahlffae67c2014-03-13 19:51:19 +01003447$(eval $(call gb_Helper_register_packages_for_install,ooo, \
3448 nss \
3449))
3450
David Tardon2b9dbc82012-08-13 06:57:51 +02003451define gb_LinkTarget__use_nss3
Peter Foleyc003d252013-01-01 09:39:36 -05003452$(call gb_LinkTarget_use_package,$(1),nss)
David Tardon2b9dbc82012-08-13 06:57:51 +02003453$(call gb_LinkTarget_set_include,$(1),\
3454 $$(INCLUDE) \
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003455 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/public/nss \
3456 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/out/include \
David Tardon2b9dbc82012-08-13 06:57:51 +02003457)
3458
Michael Stahld2f62c32013-10-23 00:14:01 +02003459ifeq ($(COM),MSC)
3460$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003461 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nspr4.lib \
3462 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nss3.lib \
3463 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/smime3.lib \
David Tardon2b9dbc82012-08-13 06:57:51 +02003464)
Michael Stahld2f62c32013-10-23 00:14:01 +02003465else
3466$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003467 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib \
Michael Stahld2f62c32013-10-23 00:14:01 +02003468 -lnspr4 \
3469 -lnss3 \
3470 -lsmime3 \
3471)
3472endif
David Tardon2b9dbc82012-08-13 06:57:51 +02003473
3474endef
3475
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003476define gb_LinkTarget__use_plc4
Peter Foleyc003d252013-01-01 09:39:36 -05003477$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahld2f62c32013-10-23 00:14:01 +02003478ifeq ($(COM),MSC)
3479$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003480 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/plc4.lib \
David Tardonb6aa4842011-08-11 13:10:14 +02003481)
Michael Stahld2f62c32013-10-23 00:14:01 +02003482else
3483$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003484 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lplc4 \
Michael Stahld2f62c32013-10-23 00:14:01 +02003485)
3486endif
Caolán McNamara24ae3ab2011-08-11 12:47:00 +01003487
David Tardonb6aa4842011-08-11 13:10:14 +02003488endef
3489
David Tardon6ef46562013-02-04 10:04:07 +01003490define gb_LinkTarget__use_ssl3
3491$(call gb_LinkTarget_use_package,$(1),nss)
Michael Stahld2f62c32013-10-23 00:14:01 +02003492ifeq ($(COM),MSC)
3493$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003494 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/ssl3.lib \
David Tardon6ef46562013-02-04 10:04:07 +01003495)
Michael Stahld2f62c32013-10-23 00:14:01 +02003496else
3497$(call gb_LinkTarget_add_libs,$(1),\
Michael Stahlcca8c8c2013-11-13 17:08:03 +01003498 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lssl3 \
Michael Stahld2f62c32013-10-23 00:14:01 +02003499)
3500endif
David Tardon6ef46562013-02-04 10:04:07 +01003501
3502endef
3503
Michael Stahl395c0c02021-10-19 16:00:53 +02003504define gb_LinkTarget__use_nssutil3
3505$(call gb_LinkTarget_use_package,$(1),nss)
3506$(call gb_LinkTarget_set_include,$(1),\
3507 $$(INCLUDE) \
3508 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/public/nss \
3509 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/out/include \
3510)
3511
3512ifeq ($(COM),MSC)
3513$(call gb_LinkTarget_add_libs,$(1),\
3514 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nssutil3.lib \
3515)
3516else
3517$(call gb_LinkTarget_add_libs,$(1),\
3518 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib \
3519 -lnssutil3 \
3520)
3521endif
3522
3523endef
3524
Michael Meeksb440cfc2013-02-28 12:05:07 +00003525define gb_ExternalProject__use_nss3
3526$(call gb_ExternalProject_use_package,$(1),nss)
Michael Meeksb440cfc2013-02-28 12:05:07 +00003527
3528endef
3529
Michael Stahle3abec32014-02-11 15:57:18 +01003530endif # SYSTEM_NSS
3531
Markus Mohrharda46ef632015-11-15 04:39:24 +01003532ifeq ($(ENABLE_BREAKPAD),TRUE)
3533
Markus Mohrharda46ef632015-11-15 04:39:24 +01003534define gb_LinkTarget__use_breakpad
3535$(call gb_LinkTarget_set_include,$(1),\
3536 -I$(call gb_UnpackedTarball_get_dir,breakpad)/src \
3537 $$(INCLUDE) \
3538)
3539
3540ifeq ($(COM),MSC)
Markus Mohrhardff9b7d12016-03-31 00:00:03 +02003541$(call gb_LinkTarget_use_static_libraries,$(1),\
3542 breakpad \
Markus Mohrharda46ef632015-11-15 04:39:24 +01003543)
3544else
3545$(call gb_LinkTarget_add_libs,$(1),\
3546 $(call gb_UnpackedTarball_get_dir,breakpad)/src/client/linux/libbreakpad_client.a \
3547)
3548endif
3549
3550$(call gb_LinkTarget_use_external_project,$(1),breakpad)
3551
Michael Stahlb4d3a0d2016-02-23 15:08:47 +01003552endef
3553
Markus Mohrhard133a5d872016-02-27 14:50:13 +01003554endif # ENABLE_BREAKPAD
Markus Mohrharda46ef632015-11-15 04:39:24 +01003555
David Tardon7c77ff52017-11-24 10:44:42 +01003556ifeq ($(ENABLE_GPGMEPP),TRUE)
3557
Katarina Behrensaceba1e2017-02-10 16:30:51 +01003558ifneq ($(SYSTEM_GPGMEPP),)
Katarina Behrens595848c2017-01-30 15:50:55 +01003559
Katarina Behrensf41fa222017-02-23 12:57:42 +01003560gb_ExternalProject__use_gpgmepp:=
Thorsten Behrensdc003d592017-02-17 09:32:05 +01003561gb_ExternalProject__use_libassuan:=
3562gb_ExternalProject__use_libgpg-error:=
3563
Katarina Behrensf41fa222017-02-23 12:57:42 +01003564define gb_LinkTarget__use_gpgmepp
Katarina Behrens595848c2017-01-30 15:50:55 +01003565$(call gb_LinkTarget_set_include,$(1),\
3566 $$(INCLUDE) \
Katarina Behrensaceba1e2017-02-10 16:30:51 +01003567 $$(GPGMEPP_CFLAGS) \
Katarina Behrens595848c2017-01-30 15:50:55 +01003568)
3569
3570$(call gb_LinkTarget_add_libs,$(1),\
Katarina Behrensaceba1e2017-02-10 16:30:51 +01003571 $(GPGMEPP_LIBS) \
Katarina Behrens595848c2017-01-30 15:50:55 +01003572)
3573
3574endef
3575
Thorsten Behrensa27f2622017-11-23 18:06:59 +01003576else ifneq ($(filter GPGMEPP,$(BUILD_TYPE)),) # NON-SYSTEM_GPGME
Katarina Behrens55519a12017-02-15 16:00:16 +01003577
Katarina Behrensf41fa222017-02-23 12:57:42 +01003578define gb_ExternalProject__use_gpgmepp
Thorsten Behrens50a55d82017-11-15 21:31:07 +01003579$(call gb_ExternalProject_use_external_project,$(1),gpgmepp)
Thorsten Behrensdc003d592017-02-17 09:32:05 +01003580
3581endef
3582define gb_ExternalProject__use_libassuan
3583$(call gb_ExternalProject_use_external_project,$(1),libassuan)
3584
3585endef
3586define gb_ExternalProject__use_libgpg-error
3587$(call gb_ExternalProject_use_external_project,$(1),libgpg-error)
3588
3589endef
3590
Thorsten Behrens50a55d82017-11-15 21:31:07 +01003591ifneq ($(filter WNT,$(OS)),)
3592
3593define gb_LinkTarget__use_libgpg-error
3594$(call gb_LinkTarget_use_package,$(1),libgpg-error)
3595
3596$(call gb_LinkTarget_set_include,$(1),\
3597 $(GPG_ERROR_CFLAGS) \
3598 $$(INCLUDE) \
3599)
3600$(call gb_LinkTarget_add_libs,$(1),\
3601 -LIBPATH:$(call gb_UnpackedTarball_get_dir,libgpg-error)/src/.libs libgpg-error.lib \
3602)
3603
3604endef
3605
3606define gb_LinkTarget__use_libassuan
3607$(call gb_LinkTarget_use_package,$(1),libassuan)
3608
3609$(call gb_LinkTarget_set_include,$(1),\
3610 $(LIBASSUAN_CFLAGS) \
3611 $$(INCLUDE) \
3612)
3613$(call gb_LinkTarget_add_libs,$(1),\
3614 -LIBPATH:$(call gb_UnpackedTarball_get_dir,libassuan)/src/.libs libassuan.lib \
3615)
3616
3617endef
3618
Katarina Behrensf41fa222017-02-23 12:57:42 +01003619define gb_LinkTarget__use_gpgmepp
Katarina Behrens55519a12017-02-15 16:00:16 +01003620$(call gb_LinkTarget_set_include,$(1),\
Thorsten Behrens50a55d82017-11-15 21:31:07 +01003621 -I$(call gb_UnpackedTarball_get_dir,gpgmepp)/lang/cpp/src \
3622 -I$(call gb_UnpackedTarball_get_dir,gpgmepp)/src \
3623 $$(GPG_ERROR_CFLAGS) \
3624 $$(INCLUDE) \
3625)
3626$(call gb_LinkTarget_use_libraries,$(1),\
3627 gpgmepp \
3628)
3629
3630endef
3631
3632$(eval $(call gb_Helper_register_packages_for_install,ooo,\
Michael Stahl2a589022020-08-05 11:59:03 +02003633 gpgmepp \
Thorsten Behrens50a55d82017-11-15 21:31:07 +01003634 libassuan \
3635 libgpg-error \
3636))
3637
3638$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
3639 gpgmepp \
3640))
3641
3642endif
3643
3644ifneq ($(filter MACOSX LINUX,$(OS)),)
3645
3646define gb_LinkTarget__use_gpgmepp
3647$(call gb_LinkTarget_use_package,$(1),gpgmepp)
3648
3649$(call gb_LinkTarget_set_include,$(1),\
3650 -I$(call gb_UnpackedTarball_get_dir,gpgmepp)/lang/cpp/src \
3651 -I$(call gb_UnpackedTarball_get_dir,gpgmepp)/src \
Samuel Mehrbrodt65866962017-02-24 16:54:36 +01003652 $$(GPG_ERROR_CFLAGS) \
Katarina Behrens55519a12017-02-15 16:00:16 +01003653 $$(INCLUDE) \
3654)
3655$(call gb_LinkTarget_add_libs,$(1),\
Thorsten Behrens50a55d82017-11-15 21:31:07 +01003656 -L$(call gb_UnpackedTarball_get_dir,gpgmepp)/lang/cpp/src/.libs/ -lgpgmepp \
Caolán McNamaraa58c4442017-12-08 09:48:09 +00003657 $(if $(filter TRUE,$(DISABLE_DYNLOADING)),-L$(call gb_UnpackedTarball_get_dir,gpgmepp)/src/.libs/ -lgpgme) \
3658 $(if $(filter TRUE,$(DISABLE_DYNLOADING)),$$(GPG_ERROR_LIBS)) \
3659 $(if $(filter TRUE,$(DISABLE_DYNLOADING)),$$(LIBASSUAN_LIBS)) \
Katarina Behrens55519a12017-02-15 16:00:16 +01003660)
Katarina Behrens55519a12017-02-15 16:00:16 +01003661
3662endef
3663
Thorsten Behrenscc71c6a2017-03-25 01:28:07 +01003664$(eval $(call gb_Helper_register_packages_for_install,ooo,\
Thorsten Behrens50a55d82017-11-15 21:31:07 +01003665 gpgmepp \
Thorsten Behrenscc71c6a2017-03-25 01:28:07 +01003666 libassuan \
3667 libgpg-error \
3668))
3669
Katarina Behrens595848c2017-01-30 15:50:55 +01003670endif
3671
Thorsten Behrensa4034d52017-03-26 05:57:10 +02003672endif
3673
David Tardon7c77ff52017-11-24 10:44:42 +01003674else # !ENABLE_GPGMEPP
3675
3676gb_ExternalProject__use_gpgmepp :=
3677gb_ExternalProject__use_libassuan :=
3678gb_ExternalProject__use_libgpg-error :=
3679
3680gb_LinkTarget__use_gpgmepp :=
3681gb_LinkTarget__use_libassuan :=
3682gb_LinkTarget__use_libgpg-error :=
3683
3684endif # ENABLE_GPGMEPP
3685
Stephan Bergmannecc617e2015-07-08 11:20:19 +02003686define gb_LinkTarget__use_dconf
Michael Weghorn2d4bb242019-09-30 15:08:30 +00003687$(call gb_LinkTarget_set_include,$(1),\
3688 $$(INCLUDE) \
3689 $(DCONF_CFLAGS) \
3690)
3691
Stephan Bergmannecc617e2015-07-08 11:20:19 +02003692$(call gb_LinkTarget_add_libs,$(1),$(DCONF_LIBS))
3693endef
3694
Michael Stahl2ee5f242011-09-15 14:01:27 +02003695### Jars ############################################################
3696
Sophia Schröderf4fc28a2018-04-11 15:39:57 +01003697ifneq ($(SYSTEM_HSQLDB),)
3698
3699define gb_Jar__use_hsqldb
3700$(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
3701endef
3702define gb_JunitTest__use_hsqldb
3703$(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
3704endef
3705
3706else # !SYSTEM_HSQLDB
3707
3708ifeq ($(ENABLE_JAVA),TRUE)
3709$(eval $(call gb_Helper_register_jars_for_install,OOO,ooo, \
3710 hsqldb \
3711))
3712endif
3713
3714define gb_Jar__use_hsqldb
3715$(call gb_Jar_use_jar,$(1),hsqldb)
3716endef
3717define gb_JunitTest__use_hsqldb
3718$(call gb_JunitTest_use_jar,$(1),hsqldb)
3719endef
3720
3721endif # SYSTEM_HSQLDB
3722
3723
Rene Engelhard40facc42014-05-23 07:43:19 +02003724ifeq ($(ENABLE_SCRIPTING_BEANSHELL),TRUE)
3725
Michael Stahl7d2f7c62014-02-11 19:39:18 +01003726ifneq ($(SYSTEM_BSH),)
David Tardon3bcf9102011-10-04 09:44:48 +02003727
Michael Stahla4551262012-08-15 17:41:25 +02003728define gb_Jar__use_bsh
3729$(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
David Tardon3bcf9102011-10-04 09:44:48 +02003730endef
3731
3732else # !SYSTEM_BSH
3733
David Tardon2dec0672014-05-19 10:20:37 +02003734ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl8475eb92014-03-18 20:38:30 +01003735$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_bsh, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003736 bsh \
3737))
David Tardon2dec0672014-05-19 10:20:37 +02003738endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003739
Michael Stahla4551262012-08-15 17:41:25 +02003740define gb_Jar__use_bsh
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003741$(call gb_Jar_use_jar,$(1),bsh)
David Tardon3bcf9102011-10-04 09:44:48 +02003742endef
3743
3744endif # SYSTEM_BSH
3745
Rene Engelhard40facc42014-05-23 07:43:19 +02003746endif
3747
3748ifeq ($(ENABLE_SCRIPTING_JAVASCRIPT),TRUE)
Michael Stahl2ee5f242011-09-15 14:01:27 +02003749
Michael Stahl49dde4c2014-02-11 19:42:28 +01003750ifneq ($(SYSTEM_RHINO),)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003751
Michael Stahla4551262012-08-15 17:41:25 +02003752define gb_Jar__use_rhino
3753$(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003754endef
3755
3756else # !SYSTEM_RHINO
3757
David Tardon2dec0672014-05-19 10:20:37 +02003758ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl6474d1c2014-03-18 20:50:02 +01003759$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_rhino, \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003760 js \
3761))
David Tardon2dec0672014-05-19 10:20:37 +02003762endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003763
Michael Stahla4551262012-08-15 17:41:25 +02003764define gb_Jar__use_rhino
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003765$(call gb_Jar_use_jar,$(1),js)
Tomas Chvatal32af02b2012-05-06 12:49:33 +02003766endef
3767
3768endif # SYSTEM_RHINO
3769
Rene Engelhard40facc42014-05-23 07:43:19 +02003770endif
3771
Michael Stahl32db4992014-02-11 19:35:22 +01003772ifneq ($(SYSTEM_JFREEREPORT),)
David Tardon9b530e12012-04-07 10:07:35 +02003773
Michael Stahla4551262012-08-15 17:41:25 +02003774define gb_Jar__use_flow-engine
3775$(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003776endef
3777
Michael Stahla4551262012-08-15 17:41:25 +02003778define gb_Jar__use_flute
3779$(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003780endef
3781
Michael Stahla4551262012-08-15 17:41:25 +02003782define gb_Jar__use_libbase
3783$(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003784endef
3785
Michael Stahla4551262012-08-15 17:41:25 +02003786define gb_Jar__use_libfonts
3787$(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003788endef
3789
Michael Stahla4551262012-08-15 17:41:25 +02003790define gb_Jar__use_libformula
3791$(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003792endef
3793
Michael Stahla4551262012-08-15 17:41:25 +02003794define gb_Jar__use_liblayout
3795$(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003796endef
3797
Michael Stahla4551262012-08-15 17:41:25 +02003798define gb_Jar__use_libloader
3799$(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003800endef
3801
Michael Stahla4551262012-08-15 17:41:25 +02003802define gb_Jar__use_librepository
3803$(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003804endef
3805
Michael Stahla4551262012-08-15 17:41:25 +02003806define gb_Jar__use_libserializer
3807$(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003808endef
3809
Michael Stahla4551262012-08-15 17:41:25 +02003810define gb_Jar__use_libxml
3811$(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003812endef
3813
Michael Stahla4551262012-08-15 17:41:25 +02003814define gb_Jar__use_sac
3815$(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
David Tardon9b530e12012-04-07 10:07:35 +02003816endef
3817
3818else # !SYSTEM_JFREEREPORT
3819
David Tardon2dec0672014-05-19 10:20:37 +02003820ifeq ($(ENABLE_JAVA),TRUE)
Michael Stahl4c3626af2014-03-18 22:03:00 +01003821$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
Michael Stahl070ca1e2013-10-25 21:01:58 +02003822 flow-engine \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003823 flute-1.1.6 \
3824 libbase-1.1.6 \
3825 libfonts-1.1.6 \
3826 libformula-1.1.7 \
Michael Stahl070ca1e2013-10-25 21:01:58 +02003827 liblayout \
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003828 libloader-1.1.6 \
3829 librepository-1.1.6 \
3830 libserializer-1.1.6 \
3831 libxml-1.1.7 \
3832 sac \
3833))
David Tardon2dec0672014-05-19 10:20:37 +02003834endif
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003835
Michael Stahla4551262012-08-15 17:41:25 +02003836define gb_Jar__use_flow-engine
Michael Stahl070ca1e2013-10-25 21:01:58 +02003837$(call gb_Jar_use_jar,$(1),flow-engine)
David Tardon9b530e12012-04-07 10:07:35 +02003838endef
3839
Michael Stahla4551262012-08-15 17:41:25 +02003840define gb_Jar__use_flute
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003841$(call gb_Jar_use_jar,$(1),flute-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003842endef
3843
Michael Stahla4551262012-08-15 17:41:25 +02003844define gb_Jar__use_libbase
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003845$(call gb_Jar_use_jar,$(1),libbase-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003846endef
3847
Michael Stahla4551262012-08-15 17:41:25 +02003848define gb_Jar__use_libfonts
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003849$(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003850endef
3851
Michael Stahla4551262012-08-15 17:41:25 +02003852define gb_Jar__use_libformula
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003853$(call gb_Jar_use_jar,$(1),libformula-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02003854endef
3855
Michael Stahla4551262012-08-15 17:41:25 +02003856define gb_Jar__use_liblayout
Michael Stahl070ca1e2013-10-25 21:01:58 +02003857$(call gb_Jar_use_jar,$(1),liblayout)
David Tardon9b530e12012-04-07 10:07:35 +02003858endef
3859
Michael Stahla4551262012-08-15 17:41:25 +02003860define gb_Jar__use_libloader
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003861$(call gb_Jar_use_jar,$(1),libloader-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003862endef
3863
Michael Stahla4551262012-08-15 17:41:25 +02003864define gb_Jar__use_librepository
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003865$(call gb_Jar_use_jar,$(1),librepository-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003866endef
3867
Michael Stahla4551262012-08-15 17:41:25 +02003868define gb_Jar__use_libserializer
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003869$(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
David Tardon9b530e12012-04-07 10:07:35 +02003870endef
3871
Michael Stahla4551262012-08-15 17:41:25 +02003872define gb_Jar__use_libxml
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003873$(call gb_Jar_use_jar,$(1),libxml-1.1.7)
David Tardon9b530e12012-04-07 10:07:35 +02003874endef
3875
Michael Stahla4551262012-08-15 17:41:25 +02003876define gb_Jar__use_sac
Michael Stahl5a4bcd32012-08-17 11:02:49 +02003877$(call gb_Jar_use_jar,$(1),sac)
David Tardon9b530e12012-04-07 10:07:35 +02003878endef
3879
3880endif # SYSTEM_JFREEREPORT
3881
David Tardonc2eca352012-12-02 10:51:37 +01003882
3883# Executables
3884
David Tardonedf67302012-12-30 12:27:04 +01003885define gb_Executable__register_bestreversemap
3886$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
Jan-Marek Glogowskied1aa172022-01-08 06:47:02 +01003887 $(call gb_CondLibSalTextenc,$(call gb_Library_get_target_for_build,sal_textenc)) \
David Tardonedf67302012-12-30 12:27:04 +01003888)
3889endef
3890
David Tardonceb0d062012-12-30 13:11:43 +01003891# TODO depending on the whole URE might be overkill, but I do not have a
3892# Windows machine to debug it...
David Tardonceb0d062012-12-30 13:11:43 +01003893define gb_Executable__register_climaker
3894$(call gb_Executable_add_runtime_dependencies,climaker,\
Jan-Marek Glogowskie9301742021-05-22 02:41:58 +02003895 $(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
Michael Stahl4e6b4fb2015-11-27 12:49:34 +01003896 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
Jan-Marek Glogowski7efb6322021-05-31 02:26:43 +02003897 $(call gb_UnoApi_get_target_for_build,udkapi) \
Michael Stahl4e6b4fb2015-11-27 12:49:34 +01003898 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_ETC_FOLDER)/$(call gb_Helper_get_rcfile,uno)
David Tardonceb0d062012-12-30 13:11:43 +01003899)
3900endef
3901
David Tardon6c1614a2014-01-08 13:49:46 +01003902define gb_Executable__register_cppumaker
3903$(call gb_Executable_add_runtime_dependencies,cppumaker,\
Jan-Marek Glogowskied1aa172022-01-08 06:47:02 +01003904 $(call gb_CondLibSalTextenc,$(call gb_Library_get_target,sal_textenc)) \
David Tardon6c1614a2014-01-08 13:49:46 +01003905)
3906endef
3907
Matúš Kukanbae52ee2013-05-16 09:17:57 +02003908# This is used to determine what we need for 'build' platform.
Matúš Kukan9555b5b2013-06-14 12:48:20 +02003909define gb_Executable__register_gengal
Matúš Kukan94b68822013-06-17 10:41:18 +02003910$(call gb_Executable_add_runtime_dependencies,gengal,\
Jan-Marek Glogowskie9301742021-05-22 02:41:58 +02003911 $(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
Stephan Bergmann0e7d4d92021-08-22 11:26:38 +02003912 $(call gb_Library_get_target_for_build,localedata_en) \
Jan-Marek Glogowskie9301742021-05-22 02:41:58 +02003913 $(if $(filter MACOSX,$(OS_FOR_BUILD)),$(call gb_Library_get_target_for_build,vclplug_osx)) \
3914 $(if $(filter WNT,$(OS_FOR_BUILD)),$(call gb_Library_get_target_for_build,vclplug_win)) \
Jan-Marek Glogowski63972e72020-07-17 22:14:39 +02003915 $(if $(filter host,$(gb_Side)),$(call gb_Package_get_target,postprocess_images)) \
Matúš Kukan8b162f22013-09-27 10:58:28 +02003916 $(call gb_Package_get_target_for_build,postprocess_registry) \
Matúš Kukan15614c82015-12-05 07:05:37 +01003917 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_ETC_FOLDER)/$(call gb_Helper_get_rcfile,uno) \
3918 $(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/$(call gb_Helper_get_rcfile,fundamental) \
3919 $(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/$(call gb_Helper_get_rcfile,louno) \
Michael Stahl4e6b4fb2015-11-27 12:49:34 +01003920 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
3921 $(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/services/services.rdb \
Jan-Marek Glogowski7efb6322021-05-31 02:26:43 +02003922 $(call gb_UnoApi_get_target_for_build,offapi) \
3923 $(call gb_UnoApi_get_target_for_build,udkapi) \
David Tardon1546c292013-05-07 20:41:41 +02003924)
3925endef
3926
Michael Stahl187194b2014-02-11 19:17:42 +01003927ifeq ($(SYSTEM_ICU),)
David Tardonedf67302012-12-30 12:27:04 +01003928
3929define gb_Executable__register_gendict
3930$(call gb_Executable_add_runtime_dependencies,gendict,\
3931 $(call gb_Package_get_target_for_build,icu) \
Stephan Bergmann475e4b42016-10-25 16:46:35 +02003932 $(call gb_Package_get_target_for_build,icu_ure) \
David Tardonedf67302012-12-30 12:27:04 +01003933)
3934endef
3935
3936endif
3937
3938define gb_Executable__register_localize
3939$(call gb_Executable_add_runtime_dependencies,localize,\
Caolán McNamara00657ae2017-06-11 20:56:30 +01003940 $(foreach exec,cfgex helpex propex treex ulfex xrmex,\
David Tardonedf67302012-12-30 12:27:04 +01003941 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
3942 ) \
3943)
3944endef
3945
Michael Stahl4c51feb2013-09-21 01:39:41 +02003946# FIXME ure/services.rdb needs cleanup
Stephan Bergmannab149c72013-04-24 10:42:40 +02003947# The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
David Tardonedf67302012-12-30 12:27:04 +01003948# due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
David Tardonedf67302012-12-30 12:27:04 +01003949define gb_Executable__register_saxparser
3950$(call gb_Executable_add_runtime_dependencies,saxparser,\
Jan-Marek Glogowskie9301742021-05-22 02:41:58 +02003951 $(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
David Tardon92f66c52014-10-13 16:59:33 +02003952 $(call gb_Package_get_target_for_build,instsetoo_native_setup_ure) \
Matúš Kukanb469cd22013-05-24 12:24:27 +02003953 $(call gb_Rdb_get_target_for_build,saxparser) \
Tor Lillqvistcb872392016-08-17 01:14:54 +03003954 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER_FOR_BUILD)/services.rdb \
Jan-Marek Glogowski7efb6322021-05-31 02:26:43 +02003955 $(call gb_UnoApi_get_target_for_build,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01003956)
3957endef
3958
Stephan Bergmannab149c72013-04-24 10:42:40 +02003959# NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
David Tardonedf67302012-12-30 12:27:04 +01003960# required due to the settings for URE_SERVICES and URE_TYPES in
3961# cppuhelper/source/unorc
David Tardonedf67302012-12-30 12:27:04 +01003962define gb_Executable__register_uno
3963$(call gb_Executable_add_runtime_dependencies,uno,\
Jan-Marek Glogowskie9301742021-05-22 02:41:58 +02003964 $(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
Michael Stahl4e6b4fb2015-11-27 12:49:34 +01003965 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
Jan-Marek Glogowski7efb6322021-05-31 02:26:43 +02003966 $(call gb_UnoApi_get_target_for_build,udkapi) \
David Tardonedf67302012-12-30 12:27:04 +01003967)
3968endef
3969
3970
3971# External executables
3972
Michael Stahl379f9782014-02-11 16:49:19 +01003973ifneq ($(SYSTEM_LIBXML_FOR_BUILD),)
David Tardonc2eca352012-12-02 10:51:37 +01003974
3975gb_ExternalExecutable__register_xmllint :=
3976
3977else # ! SYSTEM_LIBXML_FOR_BUILD
3978
3979define gb_ExternalExecutable__register_xmllint
Michael Stahl84b0f062017-09-14 14:54:07 +02003980$(call gb_ExternalExecutable_set_internal,xmllint,$(WORKDIR_FOR_BUILD)/UnpackedTarball/libxml2/$(if $(filter MSC,$(COM)),win32/bin.msvc)/xmllint$(gb_Executable_EXT_for_build),libxml2)
David Tardon5b660242014-07-28 10:38:49 +02003981$(call gb_ExternalExecutable_add_dependencies,xmllint,\
3982 $(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
Michael Stahl84b0f062017-09-14 14:54:07 +02003983 $(call gb_Package_get_target,libxml2) \
David Tardon5b660242014-07-28 10:38:49 +02003984)
David Tardonc2eca352012-12-02 10:51:37 +01003985
3986endef
3987
3988endif # SYSTEM_LIBXML_FOR_BUILD
3989
Michael Stahle3abec32014-02-11 15:57:18 +01003990ifneq ($(SYSTEM_LIBXSLT_FOR_BUILD),)
David Tardonc2eca352012-12-02 10:51:37 +01003991
3992gb_ExternalExecutable__register_xsltproc :=
3993
3994else # ! SYSTEM_LIBXSLT_FOR_BUILD
3995
3996define gb_ExternalExecutable__register_xsltproc
Michael Stahl15b973e2017-09-14 15:26:10 +02003997$(call gb_ExternalExecutable_set_internal,xsltproc,$(WORKDIR_FOR_BUILD)/UnpackedTarball/libxslt/$(if $(filter MSC,$(COM)),win32/bin.msvc,xsltproc)/xsltproc$(gb_Executable_EXT_for_build),libxslt)
David Tardon5b660242014-07-28 10:38:49 +02003998$(call gb_ExternalExecutable_add_dependencies,xsltproc,\
3999 $(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
Michael Stahl84b0f062017-09-14 14:54:07 +02004000 $(call gb_Package_get_target,libxml2) \
Michael Stahl15b973e2017-09-14 15:26:10 +02004001 $(call gb_Package_get_target,libxslt) \
David Tardon5b660242014-07-28 10:38:49 +02004002)
David Tardonc2eca352012-12-02 10:51:37 +01004003
4004endef
4005
4006endif # SYSTEM_LIBXSLT_FOR_BUILD
4007
Matúš Kukane4826722013-03-05 22:03:38 +01004008ifeq (,$(PYTHON_FOR_BUILD))
David Tardonc2eca352012-12-02 10:51:37 +01004009
4010define gb_ExternalExecutable__register_python
Christian Lohmaier04032bd2013-03-19 17:27:01 +01004011ifeq ($(OS),MACOSX)
4012
4013# use set_external, to avoid having the command added as prerequisite for the
4014# targets that make use of it. (Otherwise make will choke as it doesn't have a
4015# matching rule to build that specific file)
4016$(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))
4017# the Zip ensures that internal python has been built (cannot use the Package
4018# target, as that is not used on Mac)
David Tardon45a5c262013-05-16 13:36:24 +02004019$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01004020
4021else
4022
Jan-Marek Glogowski114ed732020-07-17 23:03:59 +02004023$(call gb_ExternalExecutable_set_internal,python,$(INSTROOT_FOR_BUILD)/$(LIBO_BIN_FOLDER)/$(if $(filter WNT,$(OS)),python-core-$(PYTHON_VERSION)/bin/python.exe,python.bin))
Stephan Bergmann233610f2014-03-19 11:24:13 +01004024$(call gb_ExternalExecutable_set_precommand,python,$(subst $$,$$$$,$(gb_Python_PRECOMMAND)))
Christian Lohmaier04032bd2013-03-19 17:27:01 +01004025$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
4026
4027endif
David Tardonc2eca352012-12-02 10:51:37 +01004028
4029endef
4030
Matúš Kukane4826722013-03-05 22:03:38 +01004031else
4032
4033define gb_ExternalExecutable__register_python
4034$(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
4035
4036endef
4037
4038endif # PYTHON_FOR_BUILD
David Tardonc2eca352012-12-02 10:51:37 +01004039
David Tardon63069262012-12-29 12:56:24 +01004040ifneq ($(SYSTEM_GENBRK),)
4041
4042define gb_ExternalExecutable__register_genbrk
4043$(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
4044
4045endef
4046
4047else # ! SYSTEM_GENBRK
4048
4049define gb_ExternalExecutable__register_genbrk
David Tardondbac8f52014-04-18 18:34:40 +02004050$(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 +01004051$(call gb_ExternalExecutable_set_precommand,genbrk,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01004052$(call gb_ExternalExecutable_add_dependencies,genbrk,\
4053 $(call gb_Package_get_target_for_build,icu) \
Stephan Bergmann475e4b42016-10-25 16:46:35 +02004054 $(call gb_Package_get_target_for_build,icu_ure) \
David Tardon63069262012-12-29 12:56:24 +01004055)
4056
4057endef
4058
4059endif
4060
4061ifneq ($(SYSTEM_GENCCODE),)
4062
4063define gb_ExternalExecutable__register_genccode
4064$(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
4065
4066endef
4067
4068else # ! SYSTEM_GENCCODE
4069
4070define gb_ExternalExecutable__register_genccode
David Tardondbac8f52014-04-18 18:34:40 +02004071$(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 +01004072$(call gb_ExternalExecutable_set_precommand,genccode,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01004073$(call gb_ExternalExecutable_add_dependencies,genccode,\
4074 $(call gb_Package_get_target_for_build,icu) \
Stephan Bergmann475e4b42016-10-25 16:46:35 +02004075 $(call gb_Package_get_target_for_build,icu_ure) \
David Tardon63069262012-12-29 12:56:24 +01004076)
4077
4078endef
4079
4080endif
4081
4082ifneq ($(SYSTEM_GENCMN),)
4083
4084define gb_ExternalExecutable__register_gencmn
4085$(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
4086
4087endef
4088
4089else # ! SYSTEM_GENCMN
4090
4091define gb_ExternalExecutable__register_gencmn
David Tardondbac8f52014-04-18 18:34:40 +02004092$(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 +01004093$(call gb_ExternalExecutable_set_precommand,gencmn,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
David Tardon63069262012-12-29 12:56:24 +01004094$(call gb_ExternalExecutable_add_dependencies,gencmn,\
4095 $(call gb_Package_get_target_for_build,icu) \
Stephan Bergmann475e4b42016-10-25 16:46:35 +02004096 $(call gb_Package_get_target_for_build,icu_ure) \
David Tardon63069262012-12-29 12:56:24 +01004097)
4098
4099endef
4100
4101endif
4102
Nathan Yee7eb863d2015-07-03 11:58:27 +02004103ifneq ($(ENABLE_ONLINE_UPDATE_MAR),)
4104ifneq ($(SYSTEM_BZIP2),)
4105
4106define gb_LinkTarget__use_bzip2
4107$(call gb_LinkTarget_set_include,$(1),\
4108 $(BZIP2_CFLAGS) \
4109 $$(INCLUDE) \
4110)
4111$(call gb_LinkTarget_add_libs,$(1),$(BZIP2_LIBS))
4112
4113endef
Jan Holesovsky025952f2015-07-03 13:46:38 +02004114
Nathan Yee7eb863d2015-07-03 11:58:27 +02004115gb_ExternalProject__use_bzip2 :=
4116
4117else # !SYSTEM_BZIP2
4118
4119define gb_LinkTarget__use_bzip2
Nathan Yee7eb863d2015-07-03 11:58:27 +02004120$(call gb_LinkTarget_set_include,$(1),\
4121 -I$(call gb_UnpackedTarball_get_dir,bzip2) \
4122 $$(INCLUDE) \
4123)
Nathan Yeeb59955b2015-07-14 14:36:37 -07004124
4125ifeq ($(COM),MSC)
4126$(call gb_LinkTarget_add_libs,$(1),\
4127 $(call gb_UnpackedTarball_get_dir,bzip2)/libbz2.lib \
4128)
4129else
Jan Holesovsky025952f2015-07-03 13:46:38 +02004130$(call gb_LinkTarget_add_libs,$(1),\
4131 -L$(call gb_UnpackedTarball_get_dir,bzip2) -lbz2 \
4132)
Nathan Yeeb59955b2015-07-14 14:36:37 -07004133endif
4134
Jan Holesovskyec477172015-07-07 09:24:45 +02004135$(call gb_LinkTarget_use_external_project,$(1),bzip2)
Nathan Yee7eb863d2015-07-03 11:58:27 +02004136endef
4137
4138define gb_ExternalProject__use_bzip2
4139$(call gb_ExternalProject_use_external_project,$(1),bzip2)
4140endef
4141
4142endif
4143endif
4144
Stephan Bergmannec53ac62016-04-12 20:06:04 +02004145define gb_LinkTarget__use_clew
4146$(call gb_LinkTarget_set_include,$(1), \
4147 -I$(SRCDIR)/external/clew/source/include \
4148 $$(INCLUDE) \
4149)
4150$(call gb_LinkTarget_use_libraries,$(1),clew)
4151endef
4152
Rene Engelhardf05d8e32017-03-06 18:49:00 +01004153ifneq ($(ENABLE_PDFIUM),)
Miklos Vajnab6f9eeb2017-02-08 11:19:39 +01004154define gb_LinkTarget__use_pdfium
4155$(call gb_LinkTarget_set_include,$(1),\
4156 -I$(call gb_UnpackedTarball_get_dir,pdfium)/public \
Miklos Vajna9b4ab9b2020-01-22 21:02:05 +01004157 -DCOMPONENT_BUILD \
Miklos Vajnab6f9eeb2017-02-08 11:19:39 +01004158 $$(INCLUDE) \
4159)
4160$(call gb_LinkTarget_use_libraries,$(1),pdfium)
4161endef
4162$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo,\
4163 pdfium \
4164))
Rene Engelhardf05d8e32017-03-06 18:49:00 +01004165endif
Miklos Vajnab6f9eeb2017-02-08 11:19:39 +01004166
Rene Engelhard19b0ba52022-02-20 12:13:19 +01004167ifneq ($(SYSTEM_DRAGONBOX),)
4168
4169define gb_LinkTarget__use_dragonbox
4170$(call gb_LinkTarget_set_include,$(1),\
4171 $$(INCLUDE) \
4172 $$(DRAGONBOX_CFLAGS) \
4173)
4174endef
4175
4176else
4177
Mike Kaganski9eb90832022-02-15 09:20:52 +03004178define gb_LinkTarget__use_dragonbox
4179$(call gb_LinkTarget_use_unpacked,$(1),dragonbox)
4180$(call gb_LinkTarget_set_include,$(1),\
4181 -I$(call gb_UnpackedTarball_get_dir,dragonbox/include/)\
4182 $$(INCLUDE) \
4183)
Mike Kaganski9eb90832022-02-15 09:20:52 +03004184endef
4185
Rene Engelhard19b0ba52022-02-20 12:13:19 +01004186endif
4187
Mike Kaganskif3e70042020-02-23 19:19:10 +03004188define gb_LinkTarget__use_dtoa
4189$(call gb_LinkTarget_use_unpacked,$(1),dtoa)
4190$(call gb_LinkTarget_set_include,$(1),\
4191 -I$(call gb_UnpackedTarball_get_dir,dtoa/include/)\
4192 $$(INCLUDE) \
4193)
4194$(call gb_LinkTarget_use_static_libraries,$(1),\
4195 dtoa \
4196)
4197
4198endef
4199
4200define gb_ExternalProject__use_dtoa
4201$(call gb_ExternalProject_use_static_libraries,$(1),dtoa)
4202
4203endef
4204
Mike Kaganskib8424432018-04-15 23:24:42 +03004205$(eval $(call gb_Helper_register_packages_for_install,ucrt_binarytable,\
4206 $(if $(UCRT_REDISTDIR),ucrt) \
Mike Kaganski61b1d632017-12-13 00:04:03 +03004207))
4208
Sarper Akdemira7f22392020-05-13 11:28:05 +03004209ifneq ($(SYSTEM_BOX2D),)
4210
4211define gb_LinkTarget__use_box2d
4212$(call gb_LinkTarget_set_include,$(1),\
4213 -DSYSTEM_BOX2D \
4214 $$(INCLUDE) \
4215 $(BOX2D_CFLAGS) \
4216)
4217$(call gb_LinkTarget_add_libs,$(1),$(BOX2D_LIBS))
4218
4219endef
4220
4221gb_ExternalProject__use_box2d :=
4222
4223else # !SYSTEM_BOX2D
4224
4225define gb_LinkTarget__use_box2d
4226$(call gb_LinkTarget_use_unpacked,$(1),box2d)
4227$(call gb_LinkTarget_set_include,$(1),\
Caolán McNamara9c273772022-01-22 19:45:53 +00004228 -I$(call gb_UnpackedTarball_get_dir,box2d/include/)\
Sarper Akdemira7f22392020-05-13 11:28:05 +03004229 $$(INCLUDE) \
4230)
4231$(call gb_LinkTarget_use_static_libraries,$(1),\
4232 box2d \
4233)
4234
4235endef
4236
4237define gb_ExternalProject__use_box2d
4238$(call gb_ExternalProject_use_static_libraries,$(1),box2d)
4239
4240endef
4241
4242endif # SYSTEM_BOX2D
4243
homeboy445f72cd652021-03-06 14:21:25 +05304244ifneq ($(SYSTEM_ZXING),)
4245
4246define gb_LinkTarget__use_zxing
4247$(call gb_LinkTarget_set_include,$(1),\
4248 -DSYSTEM_ZXING \
4249 $$(INCLUDE) \
4250 $(ZXING_CFLAGS) \
4251)
4252$(call gb_LinkTarget_add_libs,$(1),$(ZXING_LIBS))
4253
4254endef
4255
4256gb_ExternalProject__use_zxing :=
4257
4258else # !SYSTEM_ZXING
4259
4260ifneq ($(ENABLE_ZXING),)
4261
4262define gb_LinkTarget__use_zxing
4263$(call gb_LinkTarget_use_unpacked,$(1),zxing)
4264$(call gb_LinkTarget_set_include,$(1),\
4265 -I$(call gb_UnpackedTarball_get_dir,zxing/core/src/)\
4266 $$(INCLUDE) \
4267)
4268$(call gb_LinkTarget_use_static_libraries,$(1),\
4269 zxing \
4270)
4271
4272endef
4273
4274define gb_ExternalProject__use_zxing
4275$(call gb_ExternalProject_use_static_libraries,$(1),zxing)
4276
4277endef
4278
4279else # !ENABLE_ZXING
4280
4281define gb_LinkTarget__use_zxing
4282endef
4283
4284endif # ENABLE_ZXING
4285
4286endif # SYSTEM_ZXING
4287
Michael Weghorn88d57cf2021-09-29 11:09:51 +02004288# vim: set noet sw=4 ts=4: