Version 5.4.3.2, tag libreoffice-5.4.3.2
[LibreOffice.git] / RepositoryExternal.mk
blob8ce8555a7233771a3d1f84ac3d08dedb192f9b99
1 # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
3 # This file is part of the LibreOffice project.
5 # 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/.
9 # This file incorporates work covered by the following license notice:
11 # 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 .
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.
24 # for every external, a function gb_LinkTarget__use_FOO is defined,
25 # once for the system case, once for the internal case.
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.
31 ifeq ($(CPUNAME),X86_64)
32 wnt_arch_subdir_optional=x64/
33 wnt_arch_subdir_mandatory=x64
34 else ifeq ($(CPUNAME),INTEL)
35 wnt_arch_subdir_mandatory=Win32
36 endif
38 # External headers
40 ifneq ($(SYSTEM_ODBC_HEADERS),)
42 define gb_LinkTarget__use_odbc_headers
43 $(call gb_LinkTarget_add_defs,$(1),\
44 -DSYSTEM_ODBC_HEADERS \
47 endef
49 else # !SYSTEM_ODBC_HEADERS
51 define gb_LinkTarget__use_odbc_headers
52 $(call gb_LinkTarget_set_include,$(1),\
53 -I$(SRCDIR)/external/unixODBC/inc \
54 $$(INCLUDE) \
57 endef
59 endif # SYSTEM_ODBC_HEADERS
61 ifneq ($(SYSTEM_MDDS),)
63 gb_ExternalProject__use_mdds_headers :=
65 define gb_LinkTarget__use_mdds_headers
66 $(call gb_LinkTarget_set_include,$(1),\
67 $(MDDS_CFLAGS) \
68 $$(INCLUDE) \
71 endef
73 else # !SYSTEM_MDDS
75 define gb_ExternalProject__use_mdds_headers
76 $(call gb_ExternalProject_use_unpacked,$(1),mdds)
78 endef
80 define gb_LinkTarget__use_mdds_headers
81 $(call gb_LinkTarget_use_unpacked,$(1),mdds)
82 $(call gb_LinkTarget_set_include,$(1),\
83 $(MDDS_CFLAGS) \
84 $$(INCLUDE) \
87 endef
89 endif # SYSTEM_MDDS
91 ifneq ($(SYSTEM_GLM),)
93 gb_LinkTarget__use_glm_headers :=
94 gb_ExternalProject__use_glm_headers :=
96 else
98 define gb_LinkTarget__use_glm_headers
99 $(call gb_LinkTarget_use_unpacked,$(1),glm)
100 $(call gb_LinkTarget_set_include,$(1),\
101 $(GLM_CFLAGS) \
102 $$(INCLUDE) \
105 endef
107 define gb_ExternalProject__use_glm_headers
108 $(call gb_ExternalProject_use_unpacked,$(1),glm)
110 endef
112 endif
114 ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
116 define gb_LinkTarget__use_sane_headers
117 $(call gb_LinkTarget_set_include,$(1),\
118 -I$(SRCDIR)/external/$(if $(filter WNT,$(OS)),twain,sane)/inc \
119 $$(INCLUDE) \
122 endef
124 else
126 gb_LinkTarget__use_sane_headers :=
128 endif
130 ifneq ($(SYSTEM_BLUEZ),)
132 gb_LinkTarget__use_bluez_bluetooth_headers :=
134 else # !SYSTEM_BLUEZ
136 define gb_LinkTarget__use_bluez_bluetooth_headers
137 $(call gb_LinkTarget_set_include,$(1),\
138 -I$(SRCDIR)/external/bluez_bluetooth/inc \
139 $$(INCLUDE) \
142 endef
144 endif # SYSTEM_BLUEZ
146 # External libraries
148 ifneq ($(SYSTEM_CPPUNIT),)
150 define gb_LinkTarget__use_cppunit
151 $(call gb_LinkTarget_set_include,$(1),\
152 $$(INCLUDE) \
153 $(CPPUNIT_CFLAGS) \
156 $(call gb_LinkTarget_add_libs,$(1),\
157 $(CPPUNIT_LIBS) \
160 endef
162 else # !SYSTEM_CPPUNIT
164 define gb_LinkTarget__use_cppunit
165 $(call gb_LinkTarget_use_external_project,$(1),cppunit, full)
167 $(call gb_LinkTarget_set_include,$(1),\
168 -I$(call gb_UnpackedTarball_get_dir,cppunit/include)\
169 $$(INCLUDE) \
172 ifeq ($(COM),MSC)
173 $(call gb_LinkTarget_add_libs,$(1),\
174 $(call gb_UnpackedTarball_get_dir,cppunit)/src/cppunit/$(if $(MSVC_USE_DEBUG_RUNTIME),DebugDll/cppunitd_dll.lib,ReleaseDll/cppunit_dll.lib) \
176 else
177 $(call gb_LinkTarget_add_libs,$(1),\
178 -L$(call gb_UnpackedTarball_get_dir,cppunit)/src/cppunit/.libs -lcppunit \
180 endif
182 endef
184 endif # SYSTEM_CPPUNIT
186 ifneq ($(SYSTEM_EPOXY),)
188 define gb_LinkTarget__use_epoxy
189 $(call gb_LinkTarget_set_include,$(1),\
190 $$(INCLUDE) \
191 $(EPOXY_CFLAGS) \
193 $(call gb_LinkTarget_add_libs,$(1),$(EPOXY_LIBS))
195 endef
197 gb_ExternalProject__use_epoxy :=
199 else # !SYSTEM_EPOXY
201 define gb_LinkTarget__use_epoxy
202 $(call gb_LinkTarget_set_include,$(1),\
203 -I$(call gb_UnpackedTarball_get_dir,epoxy/include) \
204 $$(INCLUDE) \
207 $(call gb_LinkTarget_use_libraries,$(1),\
208 epoxy \
211 endef
213 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
214 epoxy \
217 define gb_ExternalProject__use_epoxy
218 $(call gb_ExternalProject_use_external_project,$(1),epoxy)
220 endef
222 endif # SYSTEM_EPOXY
224 define gb_LinkTarget__use_iconv
225 $(call gb_LinkTarget_add_libs,$(1),-liconv)
227 endef
229 ifneq ($(SYSTEM_MARIADB),)
231 define gb_LinkTarget__use_mariadb
232 $(call gb_LinkTarget_set_include,$(1),\
233 $$(INCLUDE) \
234 $(MARIADB_CFLAGS) \
236 $(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
238 endef
239 gb_ExternalProject__use_mariadb :=
241 else # !SYSTEM_MARIADB
243 define gb_LinkTarget__use_mariadb
244 $(call gb_LinkTarget_set_include,$(1),\
245 $$(INCLUDE) \
246 $(MARIADB_CFLAGS) \
248 $(call gb_LinkTarget_use_static_libraries,$(1),\
249 mariadblib \
252 endef
253 define gb_ExternalProject__use_mariadb
254 $(call gb_ExternalProject_use_static_libraries,$(1),mariadblib)
256 endef
258 endif # SYSTEM_MARIADB
261 ifneq ($(SYSTEM_MARIADB),)
263 define gb_LinkTarget__use_mysql
265 $(call gb_LinkTarget_add_defs,$(1),\
266 -DSYSTEM_MARIADB \
269 $(call gb_LinkTarget_add_libs,$(1),\
270 $(MARIADB_LIBS) \
273 $(call gb_LinkTarget_set_include,$(1),\
274 $(MARIADB_CFLAGS) \
275 $$(INCLUDE) \
277 endef
279 else
281 define gb_LinkTarget__use_mysql
283 $(call gb_LinkTarget_set_include,$(1),\
284 $$(INCLUDE) \
287 endef
289 endif
291 ifneq ($(SYSTEM_MYSQL_CPPCONN),)
293 define gb_LinkTarget__use_mysqlcppconn
294 $(call gb_LinkTarget_add_libs,$(1),\
295 -lmysqlcppconn \
298 $(call gb_LinkTarget_add_defs,$(1),\
299 -DSYSTEM_MYSQL_CPPCONN \
301 endef
303 else
305 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OXT,\
306 mysqlcppconn \
309 # note: this does not link mysqlcppconn, it is loaded via osl_loadModuleRelative
310 define gb_LinkTarget__use_mysqlcppconn
312 $(call gb_LinkTarget_use_unpacked,$(1),mysqlcppconn)
314 $(call gb_LinkTarget_add_defs,$(1),\
315 -DCPPCONN_LIB_BUILD \
318 $(call gb_LinkTarget_set_include,$(1),\
319 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn) \
320 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn)/cppconn \
321 $$(INCLUDE) \
324 endef
326 endif
328 ifneq ($(SYSTEM_ZLIB),)
330 define gb_LinkTarget__use_zlib
331 $(call gb_LinkTarget_add_defs,$(1),\
332 -DSYSTEM_ZLIB \
334 $(call gb_LinkTarget_add_libs,$(1),-lz)
336 endef
338 # nothing on system
339 define gb_LinkTarget__use_zlib_x64
341 endef
343 gb_ExternalProject__use_zlib :=
345 else # !SYSTEM_ZLIB
347 define gb_LinkTarget__use_zlib_multiarch
348 $(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
350 $(call gb_LinkTarget_set_include,$(1),\
351 $(ZLIB_CFLAGS) \
352 $$(INCLUDE) \
355 $(call gb_LinkTarget_use_static_libraries,$(1),\
356 $(2) \
359 endef
361 define gb_LinkTarget__use_zlib
362 $(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
364 endef
366 define gb_LinkTarget__use_zlib_x64
367 $(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
369 endef
371 define gb_ExternalProject__use_zlib
372 $(call gb_ExternalProject_use_static_libraries,$(1),zlib)
374 endef
376 endif # SYSTEM_ZLIB
379 ifneq ($(SYSTEM_JPEG),)
381 define gb_LinkTarget__use_jpeg
382 $(call gb_LinkTarget_add_libs,$(1),$(LIBJPEG_LIBS))
383 $(call gb_LinkTarget_set_ldflags,$(1),\
384 $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
387 endef
389 gb_ExternalProject__use_jpeg :=
391 else
393 define gb_LinkTarget__use_jpeg
394 $(call gb_LinkTarget_set_include,$(1),\
395 $(LIBJPEG_CFLAGS) \
396 $$(INCLUDE) \
398 $(call gb_LinkTarget_add_libs,$(1),$(LIBJPEG_LIBS))
399 $(call gb_LinkTarget_use_external_project,$(1),jpeg-turbo,full)
401 endef
403 define gb_ExternalProject__use_jpeg
404 $(call gb_ExternalProject_use_external_project,$(1),jpeg-turbo)
406 endef
408 endif # SYSTEM_JPEG
410 ifneq ($(SYSTEM_MYTHES),)
412 define gb_LinkTarget__use_mythes
413 $(call gb_LinkTarget_set_include,$(1),\
414 $$(INCLUDE) \
415 $(MYTHES_CFLAGS) \
417 $(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
419 endef
421 else # !SYSTEM_MYTHES
423 define gb_LinkTarget__use_mythes
424 $(call gb_LinkTarget_set_include,$(1),\
425 -I$(call gb_UnpackedTarball_get_dir,mythes) \
426 $$(INCLUDE) \
429 ifeq ($(COM),MSC)
430 $(call gb_LinkTarget_use_static_libraries,$(1),\
431 mythes \
433 else
434 $(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
435 $(call gb_LinkTarget_use_external_project,$(1),mythes)
436 endif
438 endef
440 endif # SYSTEM_MYTHES
443 ifneq ($(SYSTEM_EXPAT),)
445 define gb_LinkTarget__use_expat_impl
446 $(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
448 $(call gb_LinkTarget_add_defs,$(1),\
449 -DSYSTEM_EXPAT \
452 $(call gb_LinkTarget_add_libs,$(1),-lexpat)
454 endef
456 gb_ExternalProject__use_expat :=
458 else # !SYSTEM_EXPAT
460 define gb_LinkTarget__use_expat_impl
461 $(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
463 $(call gb_LinkTarget_set_include,$(1),\
464 -I$(call gb_UnpackedTarball_get_dir,expat)/lib \
465 $$(INCLUDE) \
468 $(call gb_LinkTarget_use_static_libraries,$(1),\
469 $(2) \
472 endef
474 define gb_ExternalProject__use_expat
475 $(call gb_ExternalProject_use_static_libraries,$(1),expat)
477 endef
479 endif # SYSTEM_EXPAT
481 define gb_LinkTarget__use_expat
482 $(call gb_LinkTarget__use_expat_impl,$(1),expat)
484 endef
486 define gb_LinkTarget__use_expat_x64
487 $(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
489 endef
491 ifneq ($(SYSTEM_HYPH),)
493 define gb_LinkTarget__use_hyphen
494 $(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
496 endef
498 else # !SYSTEM_HYPH
500 define gb_LinkTarget__use_hyphen
501 $(call gb_LinkTarget_use_unpacked,$(1),hyphen)
502 $(call gb_LinkTarget_set_include,$(1),\
503 -I$(call gb_UnpackedTarball_get_dir,hyphen)\
504 $$(INCLUDE) \
507 ifeq ($(COM),MSC)
508 $(call gb_LinkTarget_use_static_libraries,$(1),\
509 hyphen \
511 else
512 $(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
513 $(call gb_LinkTarget_use_external_project,$(1),hyphen)
514 endif
516 endef
518 endif # SYSTEM_HYPH
520 ifneq ($(SYSTEM_HUNSPELL),)
522 define gb_LinkTarget__use_hunspell
523 $(call gb_LinkTarget_set_include,$(1),\
524 $$(INCLUDE) \
525 $(HUNSPELL_CFLAGS) \
527 $(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
529 endef
531 gb_ExternalProject__use_hunspell :=
533 else # !SYSTEM_HUNSPELL
535 define gb_LinkTarget__use_hunspell
536 $(call gb_LinkTarget_add_defs,$(1),\
537 -DHUNSPELL_STATIC \
539 $(call gb_LinkTarget_use_unpacked,$(1),hunspell)
540 $(call gb_LinkTarget_set_include,$(1),\
541 -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
542 $$(INCLUDE) \
545 ifeq ($(COM),MSC)
546 $(call gb_LinkTarget_use_static_libraries,$(1),\
547 hunspell \
549 else
550 $(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
551 $(call gb_LinkTarget_use_external_project,$(1),hunspell)
552 endif
554 endef
556 define gb_ExternalProject__use_hunspell
557 $(call gb_ExternalProject_use_external_project,$(1),hunspell)
559 endef
561 endif # SYSTEM_HUNSPELL
564 ifneq ($(SYSTEM_BOOST),)
566 define gb_LinkTarget__use_boost_lib
567 $(call gb_LinkTarget_set_include,$(1),\
568 $$(INCLUDE) \
569 $(BOOST_CPPFLAGS) \
572 $(call gb_LinkTarget_add_ldflags,$(1),\
573 $(BOOST_LDFLAGS) \
576 $(call gb_LinkTarget_add_libs,$(1),$(2))
578 endef
580 define gb_LinkTarget__use_boost_locale
581 $(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_LOCALE_LIB))
583 endef
585 define gb_LinkTarget__use_boost_date_time
586 $(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_DATE_TIME_LIB))
588 endef
590 define gb_LinkTarget__use_boost_filesystem
591 $(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_FILESYSTEM_LIB))
593 endef
595 gb_ExternalProject__use_boost_filesystem :=
597 define gb_LinkTarget__use_boost_iostreams
598 $(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_IOSTREAMS_LIB))
600 endef
602 gb_ExternalProject__use_boost_iostreams :=
604 define gb_LinkTarget__use_boost_system
605 $(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_SYSTEM_LIB))
607 endef
609 gb_ExternalProject__use_boost_system :=
611 define gb_LinkTarget__use_boost_headers
612 $(call gb_LinkTarget_set_include,$(1),\
613 $$(INCLUDE) \
614 $(BOOST_CPPFLAGS) \
617 endef
619 gb_ExternalProject__use_boost_headers:=
621 else # !SYSTEM_BOOST
623 define gb_LinkTarget__use_boost_lib
624 $(call gb_LinkTarget_add_defs,$(1),\
625 -DBOOST_ALL_NO_LIB \
628 $(call gb_LinkTarget_use_static_libraries,$(1),$(2))
630 endef
632 define gb_LinkTarget__use_boost_locale
633 $(call gb_LinkTarget__use_boost_lib,$(1),boost_locale)
634 $(call gb_LinkTarget_add_libs,$(1),\
635 $(if $(filter $(OS),MACOSX),-liconv) \
638 endef
640 define gb_LinkTarget__use_boost_date_time
641 $(call gb_LinkTarget__use_boost_lib,$(1),boost_date_time)
643 endef
645 define gb_LinkTarget__use_boost_filesystem
646 $(call gb_LinkTarget__use_boost_lib,$(1),boost_filesystem)
648 endef
650 define gb_ExternalProject__use_boost_filesystem
651 $(call gb_ExternalProject_use_static_libraries,$(1),boost_filesystem)
652 endef
654 define gb_LinkTarget__use_boost_iostreams
655 $(call gb_LinkTarget__use_boost_lib,$(1),boost_iostreams)
657 endef
659 define gb_ExternalProject__use_boost_iostreams
660 $(call gb_ExternalProject_use_static_libraries,$(1),boost_iostreams)
661 endef
663 define gb_LinkTarget__use_boost_system
664 $(call gb_LinkTarget__use_boost_lib,$(1),boost_system)
666 endef
668 define gb_ExternalProject__use_boost_system
669 $(call gb_ExternalProject_use_static_libraries,$(1),boost_system)
670 endef
672 define gb_LinkTarget__use_boost_headers
673 $(call gb_LinkTarget_use_unpacked,$(1),boost)
674 $(call gb_LinkTarget_set_include,$(1),\
675 $(BOOST_CPPFLAGS) \
676 $$(INCLUDE) \
679 endef
681 define gb_ExternalProject__use_boost_headers
682 $(call gb_ExternalProject_use_unpacked,$(1),boost)
684 endef
686 endif # SYSTEM_BOOST
689 ifneq ($(SYSTEM_CMIS),)
691 define gb_LinkTarget__use_cmis
692 $(call gb_LinkTarget_set_include,$(1),\
693 $$(INCLUDE) \
694 $(CMIS_CFLAGS) \
696 $(call gb_LinkTarget_add_libs,$(1),$(CMIS_LIBS))
698 endef
700 else # !SYSTEM_CMIS
702 define gb_LinkTarget__use_cmis
703 $(call gb_LinkTarget_set_include,$(1),\
704 -I$(call gb_UnpackedTarball_get_dir,cmis)/src \
705 $$(INCLUDE) \
707 $(call gb_LinkTarget_use_static_libraries,$(1),\
708 cmislib \
711 endef
713 endif # SYSTEM_CMIS
715 ifeq ($(ENABLE_JAVA),TRUE)
717 define gb_LinkTarget__use_jawt
718 $(call gb_LinkTarget_add_libs,$(1),\
719 $(JAWTLIB) \
722 endef
724 else # !ENABLE_JAVA
726 gb_LinkTarget__use_jawt :=
728 endif # ENABLE_JAVA
730 ifneq ($(SYSTEM_LIBATOMIC_OPS),)
732 define gb_LinkTarget__use_libatomic_ops
733 $(call gb_LinkTarget_set_include,$(1),\
734 $$(INCLUDE) \
735 $(LIBATOMIC_OPS_CFLAGS) \
737 $(call gb_LinkTarget_add_libs,$(1), $(LIBATOMIC_OPS_LIBS))
739 endef
740 gb_ExternalProject__use_libatomic_ops :=
742 else # !SYSTEM_LIBATOMIC_OPS
744 define gb_LinkTarget__use_libatomic_ops
745 $(call gb_LinkTarget_set_include,$(1),\
746 $(LIBATOMIC_OPS_CFLAGS) \
747 $$(INCLUDE) \
748 $(LIBATOMIC_OPS_CFLAGS) \
750 $(call gb_LinkTarget_use_external_project,$(1),\
751 libatomic_ops \
754 $(call gb_LinkTarget_add_libs,$(1),\
755 -L$(call gb_UnpackedTarball_get_dir,libatomic_ops)/src/lib -latomic_ops \
758 endef
760 define gb_ExternalProject__use_libatomic_ops
761 $(call gb_ExternalProject_use_external_project,$(1),libatomic_ops)
763 endef
765 endif # SYSTEM_LIBATOMIC_OPS
768 ifneq ($(SYSTEM_LIBEXTTEXTCAT),)
770 define gb_LinkTarget__use_libexttextcat
771 $(call gb_LinkTarget_set_include,$(1),\
772 $$(INCLUDE) \
773 $(LIBEXTTEXTCAT_CFLAGS) \
775 $(call gb_LinkTarget_add_defs,$(1),\
776 -DSYSTEM_LIBEXTTEXTCAT \
778 $(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
780 endef
782 else # !SYSTEM_LIBEXTTEXTCAT
784 define gb_LinkTarget__use_libexttextcat
785 $(call gb_LinkTarget_set_include,$(1),\
786 -I$(call gb_UnpackedTarball_get_dir,exttextcat/src) \
787 $$(INCLUDE) \
790 ifeq ($(COM),MSC)
791 $(call gb_LinkTarget_use_static_libraries,$(1),\
792 exttextcat \
794 else
795 $(call gb_LinkTarget_add_libs,$(1),\
796 $(call gb_UnpackedTarball_get_dir,exttextcat)/src/.libs/libexttextcat-2.0.a\
798 $(call gb_LinkTarget_use_external_project,$(1),exttextcat)
799 endif
802 endef
804 endif # SYSTEM_LIBEXTTEXTCAT
807 ifneq ($(SYSTEM_LIBXML),)
809 define gb_LinkTarget__use_libxml2
810 $(call gb_LinkTarget_add_defs,$(1),\
811 -DSYSTEM_LIBXML \
813 $(call gb_LinkTarget_set_include,$(1),\
814 $$(INCLUDE) \
815 $(LIBXML_CFLAGS) \
817 $(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
819 endef
820 gb_ExternalProject__use_libxml2:=
822 else # !SYSTEM_LIBXML
824 $(eval $(call gb_Helper_register_packages_for_install,ure,\
825 xml2 \
828 define gb_LinkTarget__use_libxml2
829 $(call gb_LinkTarget_use_package,$(1),xml2)
830 $(call gb_LinkTarget_set_include,$(1),\
831 $$(INCLUDE) \
832 $(LIBXML_CFLAGS) \
835 $(call gb_LinkTarget_add_libs,$(1),\
836 $(LIBXML_LIBS) \
839 ifeq ($(COM),MSC)
840 $(call gb_LinkTarget_use_external,$(1),icu_headers)
841 endif
843 endef
844 define gb_ExternalProject__use_libxml2
845 $(call gb_ExternalProject_use_package,$(1),xml2)
847 ifeq ($(COM),MSC)
848 $(call gb_ExternalProject_use_external_project,$(1),icu)
849 endif
851 endef
853 endif # SYSTEM_LIBXML
856 ifneq ($(SYSTEM_LIBXSLT),)
858 define gb_LinkTarget__use_libxslt
859 $(call gb_LinkTarget_set_include,$(1),\
860 $$(INCLUDE) \
861 $(LIBXSLT_CFLAGS) \
863 $(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
865 endef
867 define gb_LinkTarget__use_libexslt
868 $(call gb_LinkTarget_set_include,$(1),\
869 $$(INCLUDE) \
870 $(LIBEXSLT_CFLAGS) \
873 $(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
875 endef
877 else # !SYSTEM_LIBXSLT
879 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
880 xslt \
883 define gb_LinkTarget__use_libxslt
884 $(call gb_LinkTarget_use_package,$(1),xslt)
885 $(call gb_LinkTarget_set_include,$(1),\
886 $$(INCLUDE) \
887 -I$(call gb_UnpackedTarball_get_dir,xslt) \
890 ifeq ($(COM),MSC)
891 $(call gb_LinkTarget_add_libs,$(1),\
892 $(call gb_UnpackedTarball_get_dir,xslt)/win32/bin.msvc/libxslt.lib \
894 else
895 $(call gb_LinkTarget_add_libs,$(1),\
896 -L$(call gb_UnpackedTarball_get_dir,xslt)/libxslt/.libs -lxslt \
898 endif
900 endef
902 define gb_LinkTarget__use_libexslt
903 $(call gb_LinkTarget_use_package,$(1),xslt)
904 $(call gb_LinkTarget_set_include,$(1),\
905 $$(INCLUDE) \
906 -I$(call gb_UnpackedTarball_get_dir,xslt) \
909 ifeq ($(COM),MSC)
910 $(call gb_LinkTarget_add_libs,$(1),\
911 $(call gb_UnpackedTarball_get_dir,xslt)/win32/bin.msvc/libexslt.lib \
913 else
914 $(call gb_LinkTarget_add_libs,$(1),\
915 -L$(call gb_UnpackedTarball_get_dir,xslt)/libexslt/.libs -lexslt \
917 endif
919 endef
921 endif # SYSTEM_LIBXSLT
924 ifneq ($(SYSTEM_XMLSEC),)
926 define gb_LinkTarget__use_xmlsec
927 $(call gb_LinkTarget_add_defs,$(1),\
928 -DSYSTEM_XMLSEC \
930 $(call gb_LinkTarget_set_include,$(1),\
931 $$(INCLUDE) \
932 $(XMLSEC_CFLAGS) \
934 $(call gb_LinkTarget_add_libs,$(1),$(XMLSEC_LIBS))
936 endef
938 gb_ExternalProject__use_xmlsec:=
940 else # !SYSTEM_XMLSEC
942 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
943 xmlsec \
946 define gb_LinkTarget__use_xmlsec
948 endef
950 endif # SYSTEM_XMLSEC
952 ifneq ($(SYSTEM_LIBLANGTAG),)
954 define gb_LinkTarget__use_liblangtag
955 $(call gb_LinkTarget_set_include,$(1),\
956 $$(INCLUDE) \
957 $(LIBLANGTAG_CFLAGS) \
960 $(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
962 endef
964 gb_ExternalProject__use_liblangtag :=
966 else # !SYSTEM_LIBLANGTAG
968 $(eval $(call gb_Helper_register_packages_for_install,ure,\
969 liblangtag_data \
972 ifeq ($(COM),MSC)
974 define gb_LinkTarget__use_liblangtag
975 $(call gb_LinkTarget_set_include,$(1),\
976 $(LIBLANGTAG_CFLAGS) \
977 $$(INCLUDE) \
979 $(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
980 $(call gb_LinkTarget_use_external_project,$(1),langtag)
982 endef
984 else
986 $(eval $(call gb_Helper_register_packages_for_install,ure,\
987 liblangtag \
990 define gb_LinkTarget__use_liblangtag
991 $(call gb_LinkTarget_set_include,$(1),\
992 $(LIBLANGTAG_CFLAGS) \
993 $$(INCLUDE) \
995 $(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
996 $(call gb_LinkTarget_use_package,$(1),liblangtag)
998 endef
1000 endif # MSC
1002 define gb_ExternalProject__use_liblangtag
1003 $(call gb_ExternalProject_use_external_project,$(1),langtag)
1005 endef
1007 endif # SYSTEM_LIBLANGTAG
1010 gb_ExternalProject__use_apr :=
1012 ifeq ($(WITH_WEBDAV),serf)
1014 define gb_LinkTarget__use_apr
1015 $(call gb_LinkTarget_set_include,$(1),\
1016 $$(INCLUDE) \
1017 $(APR_CFLAGS) \
1019 $(call gb_LinkTarget_add_libs,$(1),\
1020 $(APR_LIBS) \
1021 $(if $(filter $(OS),LINUX),-lpthread) \
1022 $(if $(filter $(OS),MACOSX),-liconv) \
1025 ifeq ($(SYSTEM_APR),)
1026 $(call gb_LinkTarget_use_system_win32_libs,$(1),\
1027 mswsock \
1028 rpcrt4 \
1029 shell32 \
1031 $(call gb_LinkTarget_add_defs,$(1),\
1032 -DAPR_DECLARE_STATIC \
1033 -DAPU_DECLARE_STATIC \
1035 $(call gb_LinkTarget_use_external_project,$(1),apr_util)
1036 endif
1038 endef
1040 define gb_ExternalProject__use_apr
1041 ifeq ($(SYSTEM_APR),)
1042 $(call gb_ExternalProject_use_external_project,$(1),apr_util)
1043 endif
1045 endef
1047 define gb_LinkTarget__use_serf
1048 $(call gb_LinkTarget_set_include,$(1),\
1049 $(SERF_CFLAGS) \
1050 $$(INCLUDE) \
1052 $(call gb_LinkTarget_add_libs,$(1),\
1053 $(SERF_LIBS) \
1056 ifeq ($(SYSTEM_SERF),)
1057 $(call gb_LinkTarget_use_external_project,$(1),serf)
1058 endif
1060 endef
1062 else ifeq ($(WITH_WEBDAV),neon)
1064 ifneq ($(SYSTEM_NEON),)
1066 define gb_LinkTarget__use_neon
1067 $(call gb_LinkTarget_add_defs,$(1),\
1068 -DNEON_VERSION=0x$(NEON_VERSION) \
1069 -DSYSTEM_NEON \
1071 $(call gb_LinkTarget_set_include,$(1),\
1072 $$(INCLUDE) \
1073 $(NEON_CFLAGS) \
1076 $(call gb_LinkTarget_add_libs,$(1),$(NEON_LIBS))
1078 endef
1080 else # !SYSTEM_NEON
1082 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1083 neon \
1086 define gb_LinkTarget__use_neon
1087 $(call gb_LinkTarget_use_unpacked,$(1),neon)
1088 $(call gb_LinkTarget_set_include,$(1),\
1089 -I$(call gb_UnpackedTarball_get_dir,neon/src) \
1090 $$(INCLUDE) \
1092 $(call gb_LinkTarget_use_libraries,$(1),\
1093 neon \
1096 endef
1098 endif # SYSTEM_NEON
1100 endif # WITH_WEBDAV
1102 ifneq ($(SYSTEM_REDLAND),)
1104 define gb_LinkTarget__use_librdf
1105 $(call gb_LinkTarget_add_defs,$(1),\
1106 -DSYSTEM_REDLAND \
1108 $(call gb_LinkTarget_set_include,$(1),\
1109 $$(INCLUDE) \
1110 $(REDLAND_CFLAGS) \
1112 $(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
1114 endef
1116 gb_LinkTarget__use_redland_headers:=
1118 gb_LinkTarget__use_raptor_headers:=
1120 gb_LinkTarget__use_rasqal_headers:=
1122 else # !SYSTEM_REDLAND
1124 define gb_LinkTarget__use_redland_headers
1125 $(call gb_LinkTarget_set_include,$(1),\
1126 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
1127 $$(INCLUDE) \
1130 endef
1132 define gb_LinkTarget__use_raptor_headers
1133 $(call gb_LinkTarget_set_include,$(1),\
1134 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
1135 $$(INCLUDE) \
1138 endef
1140 define gb_LinkTarget__use_rasqal_headers
1141 $(call gb_LinkTarget_set_include,$(1),\
1142 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
1143 $$(INCLUDE) \
1146 endef
1148 ifneq ($(OS),ANDROID)
1150 ifeq ($(COM),MSC)
1151 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
1152 raptor2 \
1153 rasqal \
1154 rdf \
1156 else
1157 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
1158 raptor \
1159 rasqal \
1160 redland \
1162 endif
1164 define gb_LinkTarget__use_librdf
1165 ifeq ($(COM),MSC)
1166 $(call gb_LinkTarget_use_libraries,$(1),\
1167 raptor2 \
1168 rdf \
1170 else
1171 $(call gb_LinkTarget_use_packages,$(1),redland raptor rasqal)
1173 $(call gb_LinkTarget_add_libs,$(1),\
1174 -L$(call gb_UnpackedTarball_get_dir,redland)/src/.libs -lrdf \
1175 -L$(call gb_UnpackedTarball_get_dir,raptor)/src/.libs -lraptor2 \
1176 -L$(call gb_UnpackedTarball_get_dir,rasqal)/src/.libs -lrasqal \
1178 endif
1180 endef
1182 else # ANDROID
1184 define gb_LinkTarget__use_librdf
1185 $(call gb_LinkTarget_use_packages,$(1),redland raptor rasqal)
1187 endef
1189 endif # ANDROID
1191 endif # SYSTEM_REDLAND
1194 ifneq ($(USING_X11)$(ENABLE_CAIRO_CANVAS)$(ENABLE_HEADLESS),) # or
1196 ifneq ($(SYSTEM_CAIRO),)
1198 define gb_LinkTarget__use_cairo
1199 $(call gb_LinkTarget_set_include,$(1),\
1200 $$(INCLUDE) \
1201 $(CAIRO_CFLAGS) \
1203 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
1204 $(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
1206 endef
1208 else # !SYSTEM_CAIRO
1210 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
1211 cairo \
1212 $(if $(filter $(OS),WNT),,pixman) \
1215 define gb_LinkTarget__use_cairo
1216 $(call gb_LinkTarget_use_package,$(1),cairo)
1217 $(call gb_LinkTarget_use_package,$(1),pixman)
1218 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
1219 $(call gb_LinkTarget_set_include,$(1),\
1220 -I$(call gb_UnpackedTarball_get_dir,cairo) \
1221 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
1222 $$(INCLUDE) \
1224 $(call gb_LinkTarget_add_libs,$(1),\
1225 -L$(call gb_UnpackedTarball_get_dir,cairo)/src/.libs -lcairo \
1226 $(if $(filter-out MACOSX WNT,$(OS)), \
1227 -L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1 \
1231 endef
1233 endif # SYSTEM_CAIRO
1235 else ifeq ($(OS),ANDROID)
1237 define gb_LinkTarget__use_cairo
1238 $(call gb_LinkTarget_use_package,$(1),cairo)
1239 $(call gb_LinkTarget_use_package,$(1),pixman)
1240 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
1241 $(call gb_LinkTarget_set_include,$(1),\
1242 -I$(call gb_UnpackedTarball_get_dir,cairo) \
1243 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
1244 $$(INCLUDE) \
1246 $(call gb_LinkTarget_add_libs,$(1),\
1247 -L$(call gb_UnpackedTarball_get_dir,cairo)/src/.libs -lcairo \
1248 -L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1 \
1251 endef
1253 endif # CAIRO
1255 ifneq ($(SYSTEM_FREETYPE),)
1257 define gb_LinkTarget__use_freetype_headers
1258 $(call gb_LinkTarget_set_include,$(1),\
1259 $$(INCLUDE) \
1260 $(FREETYPE_CFLAGS) \
1263 endef
1265 gb_ExternalProject__use_freetype :=
1267 else
1269 define gb_LinkTarget__use_freetype_headers
1270 $(call gb_LinkTarget_use_external_project,$(1),freetype)
1271 $(call gb_LinkTarget_set_include,$(1),\
1272 $(FREETYPE_CFLAGS) \
1273 $$(INCLUDE) \
1276 endef
1278 define gb_ExternalProject__use_freetype
1279 $(call gb_ExternalProject_use_external_project,$(1),freetype)
1281 endef
1283 endif # SYSTEM_FREETYPE
1285 define gb_LinkTarget__use_freetype
1286 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
1287 $(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
1289 endef
1291 ifneq ($(SYSTEM_FONTCONFIG),)
1293 define gb_LinkTarget__use_fontconfig
1294 $(call gb_LinkTarget_set_include,$(1),\
1295 $$(INCLUDE) \
1296 $(FONTCONFIG_CFLAGS) \
1299 $(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
1301 endef
1303 else
1305 define gb_LinkTarget__use_fontconfig
1306 $(call gb_LinkTarget_use_external_project,$(1),fontconfig)
1307 $(call gb_LinkTarget_set_include,$(1),\
1308 -I$(call gb_UnpackedTarball_get_dir,fontconfig) \
1309 $$(INCLUDE) \
1312 $(call gb_LinkTarget_add_libs,$(1),\
1313 -L$(call gb_UnpackedTarball_get_dir,fontconfig)/src/.libs -lfontconfig \
1316 endef
1318 endif # SYSTEM_FONTCONFIG
1320 ifneq ($(SYSTEM_GRAPHITE),)
1322 define gb_LinkTarget__use_graphite
1323 $(call gb_LinkTarget_set_include,$(1),\
1324 $$(INCLUDE) \
1325 $(GRAPHITE_CFLAGS) \
1327 $(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
1329 endef
1331 gb_ExternalProject__use_graphite:=
1333 else # !SYSTEM_GRAPHITE
1335 define gb_LinkTarget__use_graphite
1336 $(call gb_LinkTarget_use_unpacked,$(1),graphite)
1337 $(call gb_LinkTarget_set_include,$(1),\
1338 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
1339 $$(INCLUDE) \
1341 $(call gb_LinkTarget_use_static_libraries,$(1),\
1342 graphite \
1345 endef
1347 define gb_ExternalProject__use_graphite
1348 $(call gb_ExternalProject_use_static_libraries,$(1),\
1349 graphite \
1352 endef
1353 endif # SYSTEM_GRAPHITE
1355 ifneq ($(SYSTEM_ICU),)
1357 gb_LinkTarget__use_icu_headers:=
1358 gb_ExternalProject__use_icu:=
1360 define gb_LinkTarget__use_icudata
1361 $(call gb_LinkTarget_add_libs,$(1),-licudata)
1363 endef
1364 define gb_LinkTarget__use_icui18n
1365 $(call gb_LinkTarget_add_libs,$(1),-licui18n)
1367 endef
1368 define gb_LinkTarget__use_icuuc
1369 $(call gb_LinkTarget_add_libs,$(1),-licuuc)
1371 endef
1373 else # !SYSTEM_ICU
1375 $(eval $(call gb_Helper_register_packages_for_install,ure, \
1376 icu_ure \
1379 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
1380 icu \
1383 ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
1384 gb_ICU_suffix:=lo
1385 else
1386 gb_ICU_suffix:=
1387 endif
1389 define gb_LinkTarget__use_icu_headers
1390 $(call gb_LinkTarget_use_unpacked,$(1),icu)
1391 $(call gb_LinkTarget_set_include,$(1),\
1392 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1393 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1394 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
1395 $$(INCLUDE) \
1398 endef
1400 define gb_ExternalProject__use_icu
1401 $(call gb_ExternalProject_use_package,$(1),icu)
1403 endef
1405 # icudata and icui18n is called icudt and icuin when built with MSVC :-/
1406 define gb_LinkTarget__use_icudata
1407 $(call gb_LinkTarget_use_package,$(1),icu_ure)
1409 ifeq ($(OS),WNT)
1410 $(call gb_LinkTarget_add_libs,$(1),\
1411 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icudt$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
1413 else
1414 $(call gb_LinkTarget_add_libs,$(1),\
1415 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licudata$(gb_ICU_suffix) \
1417 endif
1419 endef
1421 define gb_LinkTarget__use_icui18n
1422 $(call gb_LinkTarget_use_package,$(1),icu)
1424 ifeq ($(OS),WNT)
1425 $(call gb_LinkTarget_add_libs,$(1),\
1426 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuin$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
1428 else
1429 $(call gb_LinkTarget_add_libs,$(1),\
1430 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licui18n$(gb_ICU_suffix) \
1432 endif
1434 endef
1436 define gb_LinkTarget__use_icuuc
1437 $(call gb_LinkTarget_use_package,$(1),icu_ure)
1439 ifeq ($(OS),WNT)
1440 $(call gb_LinkTarget_add_libs,$(1),\
1441 $(call gb_UnpackedTarball_get_dir,icu)/source/lib/icuuc$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
1443 else
1444 $(call gb_LinkTarget_add_libs,$(1),\
1445 -L$(call gb_UnpackedTarball_get_dir,icu)/source/lib -licuuc$(gb_ICU_suffix) \
1447 endif
1449 endef
1451 endif # SYSTEM_ICU
1453 ifneq ($(SYSTEM_HARFBUZZ),)
1455 define gb_LinkTarget__use_harfbuzz
1456 $(call gb_LinkTarget_set_include,$(1),\
1457 $$(INCLUDE) \
1458 $(HARFBUZZ_CFLAGS) \
1460 $(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1462 endef
1464 gb_ExternalProject__use_harfbuzz :=
1466 else # SYSTEM_HARFBUZZ != TRUE
1468 define gb_LinkTarget__use_harfbuzz
1469 $(call gb_LinkTarget_set_include,$(1),\
1470 $(HARFBUZZ_CFLAGS) \
1471 $$(INCLUDE) \
1473 $(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1474 $(call gb_LinkTarget_use_external_project,$(1),harfbuzz)
1476 endef
1478 define gb_ExternalProject__use_harfbuzz
1479 $(call gb_ExternalProject_use_external_project,$(1),harfbuzz)
1481 endef
1483 endif # SYSTEM_HARFBUZZ
1485 ifeq ($(DISABLE_OPENSSL),TRUE)
1487 gb_ExternalProject__use_openssl:=
1488 gb_LinkTarget__use_openssl_headers:=
1489 gb_LinkTarget__use_openssl:=
1491 else # !DISABLE_OPENSSL
1493 ifneq ($(SYSTEM_OPENSSL),)
1495 gb_LinkTarget__use_openssl_headers:=
1496 gb_ExternalProject__use_openssl:=
1498 define gb_LinkTarget__use_openssl
1499 $(call gb_LinkTarget_set_include,$(1),\
1500 $$(INCLUDE) \
1501 $(OPENSSL_CFLAGS) \
1503 $(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
1505 endef
1507 else # !SYSTEM_OPENSSL
1509 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
1510 openssl \
1513 define gb_ExternalProject__use_openssl
1514 $(call gb_ExternalProject_use_package,$(1),openssl)
1516 endef
1518 define gb_LinkTarget__use_openssl_headers
1519 $(call gb_LinkTarget_use_external_project,$(1),openssl)
1520 $(call gb_LinkTarget_set_include,$(1),\
1521 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
1522 $$(INCLUDE) \
1525 endef
1527 define gb_LinkTarget__use_openssl
1528 $(call gb_LinkTarget_use_package,$(1),openssl)
1529 ifeq ($(OS),WNT)
1530 $(call gb_LinkTarget_add_libs,$(1),\
1531 $(call gb_UnpackedTarball_get_dir,openssl)/out32dll/ssleay32.lib \
1532 $(call gb_UnpackedTarball_get_dir,openssl)/out32dll/libeay32.lib \
1534 else
1535 $(call gb_LinkTarget_add_libs,$(1),\
1536 $(call gb_UnpackedTarball_get_dir,openssl)/libssl.a \
1537 $(call gb_UnpackedTarball_get_dir,openssl)/libcrypto.a \
1539 $(call gb_LinkTarget_use_external_project,$(1),openssl)
1540 ifeq ($(OS),SOLARIS)
1541 $(call gb_LinkTarget_add_libs,$(1),\
1542 -lnsl \
1543 -lsocket \
1545 endif
1546 endif
1548 endef
1550 endif # SYSTEM_OPENSSL
1551 endif # DISABLE_OPENSSL
1554 ifeq ($(DISABLE_OPENSSL),TRUE)
1556 define gb_LinkTarget__use_gnutls
1557 $(call gb_LinkTarget_set_include,$(1),\
1558 $$(INCLUDE) \
1559 $(GNUTLS_CFLAGS) \
1562 $(call gb_LinkTarget_add_defs,$(1),\
1563 -DDISABLE_OPENSSL \
1566 $(call gb_LinkTarget_add_libs,$(1),$(GNUTLS_LIBS))
1568 endef
1570 define gb_LinkTarget__use_libgcrypt
1571 $(call gb_LinkTarget_set_include,$(1),\
1572 $$(INCLUDE) \
1573 $(LIBGCRYPT_CFLAGS) \
1576 $(call gb_LinkTarget_add_libs,$(1),$(LIBGCRYPT_LIBS))
1578 endef
1580 else # !DISABLE_OPENSSL
1582 gb_LinkTarget__use_gnutls:=
1583 gb_LinkTarget__use_libgcrypt:=
1585 endif # DISABLE_OPENSSL
1588 ifneq ($(SYSTEM_CDR),)
1590 define gb_LinkTarget__use_cdr
1591 $(call gb_LinkTarget_set_include,$(1),\
1592 $$(INCLUDE) \
1593 $(CDR_CFLAGS) \
1595 $(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1597 endef
1599 else # !SYSTEM_CDR
1601 define gb_LinkTarget__use_cdr
1602 $(call gb_LinkTarget_set_include,$(1),\
1603 -I$(call gb_UnpackedTarball_get_dir,libcdr)/inc \
1604 $$(INCLUDE) \
1606 $(call gb_LinkTarget_add_libs,$(1),\
1607 $(call gb_UnpackedTarball_get_dir,libcdr)/src/lib/.libs/libcdr-0.1$(gb_StaticLibrary_PLAINEXT) \
1609 $(call gb_LinkTarget_use_external_project,$(1),libcdr)
1610 endef
1612 endif # SYSTEM_CDR
1615 ifneq ($(SYSTEM_EBOOK),)
1617 define gb_LinkTarget__use_ebook
1618 $(call gb_LinkTarget_set_include,$(1),\
1619 $$(INCLUDE) \
1620 $(EBOOK_CFLAGS) \
1622 $(call gb_LinkTarget_add_libs,$(1),$(EBOOK_LIBS))
1624 endef
1626 gb_ExternalProject__use_ebook :=
1628 else # !SYSTEM_EBOOK
1630 define gb_LinkTarget__use_ebook
1631 $(call gb_LinkTarget_set_include,$(1),\
1632 -I${WORKDIR}/UnpackedTarball/libebook/inc \
1633 $$(INCLUDE) \
1635 $(call gb_LinkTarget_add_libs,$(1),\
1636 $(call gb_UnpackedTarball_get_dir,libebook)/src/lib/.libs/libe-book-0.1$(gb_StaticLibrary_PLAINEXT) \
1638 $(call gb_LinkTarget_use_external_project,$(1),libebook)
1640 endef
1642 define gb_ExternalProject__use_ebook
1643 $(call gb_ExternalProject_use_external_project,$(1),libebook)
1645 endef
1647 endif # SYSTEM_EBOOK
1650 ifneq ($(SYSTEM_ETONYEK),)
1652 define gb_LinkTarget__use_etonyek
1653 $(call gb_LinkTarget_set_include,$(1),\
1654 $$(INCLUDE) \
1655 $(ETONYEK_CFLAGS) \
1657 $(call gb_LinkTarget_add_libs,$(1),$(ETONYEK_LIBS))
1659 endef
1661 gb_ExternalProject__use_etonyek :=
1663 else # !SYSTEM_ETONYEK
1665 ifeq ($(COM),MSC)
1667 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1668 etonyek \
1671 define gb_LinkTarget__use_etonyek
1672 $(call gb_LinkTarget_set_include,$(1),\
1673 -I$(call gb_UnpackedTarball_get_dir,libetonyek)/inc \
1674 $$(INCLUDE) \
1676 $(call gb_LinkTarget_use_libraries,$(1),\
1677 etonyek \
1680 endef
1682 else # !MSC
1684 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
1685 libetonyek \
1688 define gb_LinkTarget__use_etonyek
1689 $(call gb_LinkTarget_use_package,$(1),libetonyek)
1691 $(call gb_LinkTarget_set_include,$(1),\
1692 -I${WORKDIR}/UnpackedTarball/libetonyek/inc \
1693 -DLIBETONYEK_VISIBILITY \
1694 $$(INCLUDE) \
1696 $(call gb_LinkTarget_add_libs,$(1),\
1697 -L$(call gb_UnpackedTarball_get_dir,libetonyek)/src/lib/.libs -letonyek-0.1 \
1699 $(call gb_LinkTarget_use_external_project,$(1),libetonyek)
1701 endef
1703 define gb_ExternalProject__use_etonyek
1704 $(call gb_ExternalProject_use_external_project,$(1),libetonyek)
1706 endef
1708 endif
1710 endif # SYSTEM_ETONYEK
1713 ifneq ($(SYSTEM_FREEHAND),)
1715 define gb_LinkTarget__use_freehand
1716 $(call gb_LinkTarget_set_include,$(1),\
1717 $$(INCLUDE) \
1718 $(FREEHAND_CFLAGS) \
1720 $(call gb_LinkTarget_add_libs,$(1),$(FREEHAND_LIBS))
1722 endef
1724 gb_ExternalProject__use_freehand :=
1726 else # !SYSTEM_FREEHAND
1728 define gb_LinkTarget__use_freehand
1729 $(call gb_LinkTarget_set_include,$(1),\
1730 -I${WORKDIR}/UnpackedTarball/libfreehand/inc \
1731 $$(INCLUDE) \
1733 $(call gb_LinkTarget_add_libs,$(1),\
1734 $(call gb_UnpackedTarball_get_dir,libfreehand)/src/lib/.libs/libfreehand-0.1$(gb_StaticLibrary_PLAINEXT) \
1736 $(call gb_LinkTarget_use_external_project,$(1),libfreehand)
1738 endef
1740 define gb_ExternalProject__use_freehand
1741 $(call gb_ExternalProject_use_external_project,$(1),libfreehand)
1743 endef
1745 endif # SYSTEM_FREEHAND
1748 ifneq ($(SYSTEM_ODFGEN),)
1750 define gb_LinkTarget__use_odfgen
1751 $(call gb_LinkTarget_set_include,$(1),\
1752 $$(INCLUDE) \
1753 $(ODFGEN_CFLAGS) \
1755 $(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
1757 endef
1759 else # !SYSTEM_ODFGEN
1761 ifeq ($(COM),MSC)
1763 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1764 odfgen \
1767 define gb_LinkTarget__use_odfgen
1768 $(call gb_LinkTarget_set_include,$(1),\
1769 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1770 $$(INCLUDE) \
1772 $(call gb_LinkTarget_use_libraries,$(1),\
1773 odfgen \
1776 endef
1778 else # !MSC
1780 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
1781 libodfgen \
1784 define gb_LinkTarget__use_odfgen
1785 $(call gb_LinkTarget_use_package,$(1),libodfgen)
1787 $(call gb_LinkTarget_set_include,$(1),\
1788 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1789 -DLIBODFGEN_VISIBILITY \
1790 $$(INCLUDE) \
1792 $(call gb_LinkTarget_add_libs,$(1),\
1793 -L$(call gb_UnpackedTarball_get_dir,libodfgen)/src/.libs -lodfgen-0.1 \
1796 endef
1798 endif
1800 endif # SYSTEM_ODFGEN
1803 ifneq ($(SYSTEM_REVENGE),)
1805 define gb_LinkTarget__use_revenge
1806 $(call gb_LinkTarget_set_include,$(1),\
1807 $$(INCLUDE) \
1808 $(REVENGE_CFLAGS) \
1810 $(call gb_LinkTarget_add_libs,$(1),$(REVENGE_LIBS))
1812 endef
1814 gb_ExternalProject__use_revenge :=
1816 else # !SYSTEM_REVENGE
1818 ifeq ($(COM),MSC)
1820 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
1821 revenge \
1824 define gb_LinkTarget__use_revenge
1825 $(call gb_LinkTarget_set_include,$(1),\
1826 $(REVENGE_CFLAGS) \
1827 $$(INCLUDE) \
1829 $(call gb_LinkTarget_use_libraries,$(1),\
1830 revenge \
1833 endef
1835 define gb_ExternalProject__use_revenge
1836 $(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,revenge)
1838 endef
1840 else # !MSC
1842 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
1843 librevenge \
1846 define gb_LinkTarget__use_revenge
1847 $(call gb_LinkTarget_use_package,$(1),librevenge)
1849 $(call gb_LinkTarget_set_include,$(1),\
1850 $(REVENGE_CFLAGS) \
1851 -DLIBREVENGE_VISIBILITY \
1852 $$(INCLUDE) \
1854 $(call gb_LinkTarget_add_libs,$(1),\
1855 $(REVENGE_LIBS) \
1857 endef
1859 define gb_ExternalProject__use_revenge
1860 $(call gb_ExternalProject_use_package,$(1),librevenge)
1862 endef
1864 endif # MSC
1866 endif # SYSTEM_REVENGE
1869 ifneq ($(SYSTEM_ABW),)
1871 define gb_LinkTarget__use_abw
1872 $(call gb_LinkTarget_set_include,$(1),\
1873 $$(INCLUDE) \
1874 $(ABW_CFLAGS) \
1876 $(call gb_LinkTarget_add_libs,$(1),$(ABW_LIBS))
1878 endef
1879 gb_ExternalProject__use_abw :=
1881 else # !SYSTEM_ABW
1883 define gb_LinkTarget__use_abw
1884 $(call gb_LinkTarget_set_include,$(1),\
1885 -I$(call gb_UnpackedTarball_get_dir,libabw)/inc \
1886 $$(INCLUDE) \
1888 $(call gb_LinkTarget_add_libs,$(1),\
1889 $(call gb_UnpackedTarball_get_dir,libabw)/src/lib/.libs/libabw-0.1$(gb_StaticLibrary_PLAINEXT) \
1891 $(call gb_LinkTarget_use_external_project,$(1),libabw)
1893 endef
1894 define gb_ExternalProject__use_abw
1895 $(call gb_ExternalProject_use_external_project,$(1),libabw)
1897 endef
1899 endif # SYSTEM_ABW
1902 ifneq ($(SYSTEM_MSPUB),)
1904 define gb_LinkTarget__use_mspub
1905 $(call gb_LinkTarget_set_include,$(1),\
1906 $$(INCLUDE) \
1907 $(MSPUB_CFLAGS) \
1909 $(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1911 endef
1913 else # !SYSTEM_MSPUB
1915 define gb_LinkTarget__use_mspub
1916 $(call gb_LinkTarget_set_include,$(1),\
1917 -I$(call gb_UnpackedTarball_get_dir,libmspub)/inc \
1918 $$(INCLUDE) \
1920 $(call gb_LinkTarget_add_libs,$(1),\
1921 $(call gb_UnpackedTarball_get_dir,libmspub)/src/lib/.libs/libmspub-0.1$(gb_StaticLibrary_PLAINEXT) \
1923 $(call gb_LinkTarget_use_external_project,$(1),libmspub)
1925 endef
1927 endif # SYSTEM_MSPUB
1930 ifneq ($(SYSTEM_PAGEMAKER),)
1932 define gb_LinkTarget__use_pagemaker
1933 $(call gb_LinkTarget_set_include,$(1),\
1934 $$(INCLUDE) \
1935 $(PAGEMAKER_CFLAGS) \
1937 $(call gb_LinkTarget_add_libs,$(1),$(PAGEMAKER_LIBS))
1939 endef
1940 gb_ExternalProject__use_pagemaker :=
1942 else # !SYSTEM_PAGEMAKER
1944 define gb_LinkTarget__use_pagemaker
1945 $(call gb_LinkTarget_set_include,$(1),\
1946 -I$(call gb_UnpackedTarball_get_dir,libpagemaker)/inc \
1947 $$(INCLUDE) \
1949 $(call gb_LinkTarget_add_libs,$(1),\
1950 $(call gb_UnpackedTarball_get_dir,libpagemaker)/src/lib/.libs/libpagemaker-0.0$(gb_StaticLibrary_PLAINEXT) \
1952 $(call gb_LinkTarget_use_external_project,$(1),libpagemaker)
1954 endef
1955 define gb_ExternalProject__use_pagemaker
1956 $(call gb_ExternalProject_use_external_project,$(1),libpagemaker)
1958 endef
1960 endif # SYSTEM_PAGEMAKER
1963 ifneq ($(SYSTEM_ZMF),)
1965 define gb_LinkTarget__use_zmf
1966 $(call gb_LinkTarget_set_include,$(1),\
1967 $$(INCLUDE) \
1968 $(ZMF_CFLAGS) \
1970 $(call gb_LinkTarget_add_libs,$(1),$(ZMF_LIBS))
1972 endef
1973 gb_ExternalProject__use_zmf :=
1975 else # !SYSTEM_ZMF
1977 define gb_LinkTarget__use_zmf
1978 $(call gb_LinkTarget_set_include,$(1),\
1979 -I$(call gb_UnpackedTarball_get_dir,libzmf)/inc \
1980 $$(INCLUDE) \
1982 $(call gb_LinkTarget_add_libs,$(1),\
1983 $(call gb_UnpackedTarball_get_dir,libzmf)/src/lib/.libs/libzmf-0.0$(gb_StaticLibrary_PLAINEXT) \
1985 $(call gb_LinkTarget_use_external_project,$(1),libzmf)
1987 endef
1988 define gb_ExternalProject__use_zmf
1989 $(call gb_ExternalProject_use_external_project,$(1),libzmf)
1991 endef
1993 endif # SYSTEM_ZMF
1996 ifneq ($(SYSTEM_VISIO),)
1998 define gb_LinkTarget__use_visio
1999 $(call gb_LinkTarget_set_include,$(1),\
2000 $$(INCLUDE) \
2001 $(VISIO_CFLAGS) \
2003 $(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
2005 endef
2007 else # !SYSTEM_VISIO
2009 define gb_LinkTarget__use_visio
2010 $(call gb_LinkTarget_set_include,$(1),\
2011 -I$(call gb_UnpackedTarball_get_dir,libvisio)/inc \
2012 $$(INCLUDE) \
2014 $(call gb_LinkTarget_add_libs,$(1),\
2015 $(call gb_UnpackedTarball_get_dir,libvisio)/src/lib/.libs/libvisio-0.1$(gb_StaticLibrary_PLAINEXT) \
2017 $(call gb_LinkTarget_use_external_project,$(1),libvisio)
2019 endef
2021 endif # SYSTEM_VISIO
2024 ifneq ($(SYSTEM_WPD),)
2026 define gb_LinkTarget__use_wpd
2027 $(call gb_LinkTarget_set_include,$(1),\
2028 $$(INCLUDE) \
2029 $(WPD_CFLAGS) \
2031 $(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
2033 endef
2034 gb_ExternalProject__use_wpd :=
2036 else # !SYSTEM_WPD
2038 ifeq ($(COM),MSC)
2040 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2041 wpd \
2044 define gb_LinkTarget__use_wpd
2045 $(call gb_LinkTarget_set_include,$(1),\
2046 $(WPD_CFLAGS) \
2047 $$(INCLUDE) \
2049 $(call gb_LinkTarget_use_libraries,$(1),\
2050 wpd \
2053 endef
2055 define gb_ExternalProject__use_wpd
2056 $(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,wpd)
2058 endef
2060 else # !MSC
2062 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
2063 libwpd \
2066 define gb_LinkTarget__use_wpd
2067 $(call gb_LinkTarget_use_package,$(1),libwpd)
2069 $(call gb_LinkTarget_set_include,$(1),\
2070 $(WPD_CFLAGS) \
2071 $$(INCLUDE) \
2073 $(call gb_LinkTarget_add_libs,$(1),\
2074 $(WPD_LIBS) \
2077 endef
2079 define gb_ExternalProject__use_wpd
2080 $(call gb_ExternalProject_use_package,$(1),libwpd)
2082 endef
2084 endif # MSC
2086 endif # SYSTEM_WPD
2089 ifneq ($(SYSTEM_WPG),)
2091 define gb_LinkTarget__use_wpg
2092 $(call gb_LinkTarget_set_include,$(1),\
2093 $$(INCLUDE) \
2094 $(WPG_CFLAGS) \
2096 $(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
2098 endef
2099 gb_ExternalProject__use_wpg :=
2101 else # !SYSTEM_WPG
2103 ifeq ($(COM),MSC)
2105 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2106 wpg \
2109 define gb_LinkTarget__use_wpg
2110 $(call gb_LinkTarget_set_include,$(1),\
2111 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
2112 $$(INCLUDE) \
2114 $(call gb_LinkTarget_use_libraries,$(1),\
2115 wpg \
2118 endef
2120 else # !MSC
2122 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
2123 libwpg \
2126 define gb_LinkTarget__use_wpg
2127 $(call gb_LinkTarget_use_package,$(1),libwpg)
2129 $(call gb_LinkTarget_set_include,$(1),\
2130 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
2131 $$(INCLUDE) \
2133 $(call gb_LinkTarget_add_libs,$(1),\
2134 -L$(call gb_UnpackedTarball_get_dir,libwpg)/src/lib/.libs -lwpg-0.3 \
2137 endef
2139 endif # MSC
2141 endif # SYSTEM_WPG
2144 ifneq ($(SYSTEM_WPS),)
2146 define gb_LinkTarget__use_wps
2147 $(call gb_LinkTarget_set_include,$(1),\
2148 $$(INCLUDE) \
2149 $(WPS_CFLAGS) \
2151 $(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
2153 endef
2154 gb_ExternalProject__use_wps :=
2156 else # !SYSTEM_WPS
2158 ifeq ($(COM),MSC)
2160 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2161 wps \
2164 define gb_LinkTarget__use_wps
2165 $(call gb_LinkTarget_set_include,$(1),\
2166 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2167 $$(INCLUDE) \
2170 $(call gb_LinkTarget_use_libraries,$(1),\
2171 wps \
2174 endef
2176 else # !MSC
2178 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
2179 libwps \
2182 define gb_LinkTarget__use_wps
2183 $(call gb_LinkTarget_use_package,$(1),libwps)
2185 $(call gb_LinkTarget_set_include,$(1),\
2186 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
2187 $$(INCLUDE) \
2189 $(call gb_LinkTarget_add_libs,$(1),\
2190 -L$(call gb_UnpackedTarball_get_dir,libwps)/src/lib/.libs -lwps-0.4 \
2193 endef
2195 endif # MSC
2197 endif # SYSTEM_WPS
2200 ifneq ($(SYSTEM_MWAW),)
2202 define gb_LinkTarget__use_mwaw
2203 $(call gb_LinkTarget_set_include,$(1),\
2204 $$(INCLUDE) \
2205 $(MWAW_CFLAGS) \
2207 $(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
2209 endef
2211 else # !SYSTEM_MWAW
2213 ifeq ($(COM),MSC)
2215 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2216 mwaw \
2219 define gb_LinkTarget__use_mwaw
2220 $(call gb_LinkTarget_set_include,$(1),\
2221 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2222 $$(INCLUDE) \
2225 $(call gb_LinkTarget_use_libraries,$(1),\
2226 mwaw \
2229 endef
2231 else # !MSC
2233 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
2234 libmwaw \
2237 define gb_LinkTarget__use_mwaw
2238 $(call gb_LinkTarget_use_package,$(1),libmwaw)
2240 $(call gb_LinkTarget_set_include,$(1),\
2241 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
2242 $$(INCLUDE) \
2244 $(call gb_LinkTarget_add_libs,$(1),\
2245 -L$(call gb_UnpackedTarball_get_dir,libmwaw)/src/lib/.libs -lmwaw-0.3 \
2248 endef
2250 endif # MSC
2252 endif # SYSTEM_MWAW
2254 ifneq ($(SYSTEM_STAROFFICE),)
2256 define gb_LinkTarget__use_staroffice
2257 $(call gb_LinkTarget_set_include,$(1),\
2258 $$(INCLUDE) \
2259 $(STAROFFICE_CFLAGS) \
2261 $(call gb_LinkTarget_add_libs,$(1),$(STAROFFICE_LIBS))
2263 endef
2265 else # !SYSTEM_STAROFFICE
2267 ifeq ($(COM),MSC)
2269 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2270 staroffice \
2273 define gb_LinkTarget__use_staroffice
2274 $(call gb_LinkTarget_set_include,$(1),\
2275 -I$(call gb_UnpackedTarball_get_dir,libstaroffice)/inc \
2276 $$(INCLUDE) \
2279 $(call gb_LinkTarget_use_libraries,$(1),\
2280 staroffice \
2283 endef
2285 else # !MSC
2287 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
2288 libstaroffice \
2291 define gb_LinkTarget__use_staroffice
2292 $(call gb_LinkTarget_use_package,$(1),libstaroffice)
2294 $(call gb_LinkTarget_set_include,$(1),\
2295 -I$(call gb_UnpackedTarball_get_dir,libstaroffice)/inc \
2296 $$(INCLUDE) \
2298 $(call gb_LinkTarget_add_libs,$(1),\
2299 -L$(call gb_UnpackedTarball_get_dir,libstaroffice)/src/lib/.libs -lstaroffice-0.0 \
2302 endef
2304 endif # MSC
2306 endif # SYSTEM_STAROFFICE
2309 ifneq ($(SYSTEM_LCMS2),)
2311 define gb_LinkTarget__use_lcms2
2312 $(call gb_LinkTarget_set_include,$(1),\
2313 $$(INCLUDE) \
2314 $(LCMS2_CFLAGS) \
2316 $(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
2318 endef
2320 gb_ExternalProject__use_lcms2 :=
2322 else # !SYSTEM_LCMS2
2324 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
2325 lcms2 \
2328 define gb_ExternalProject__use_lcms2
2329 $(call gb_ExternalProject_use_package,$(1),lcms2)
2331 endef
2333 ifeq ($(OS),ANDROID)
2335 define gb_LinkTarget__use_lcms2
2336 $(call gb_LinkTarget_use_package,$(1),lcms2)
2337 $(call gb_LinkTarget_set_include,$(1),\
2338 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
2339 $$(INCLUDE) \
2342 endef
2344 else
2346 define gb_LinkTarget__use_lcms2
2347 $(call gb_LinkTarget_use_package,$(1),lcms2)
2348 $(call gb_LinkTarget_set_include,$(1),\
2349 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
2350 $$(INCLUDE) \
2352 $(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
2354 endef
2356 endif # ANDROID
2357 endif # SYSTEM_LCMS2
2359 ifneq ($(ENABLE_LPSOLVE),)
2361 ifneq ($(SYSTEM_LPSOLVE),)
2363 define gb_LinkTarget__use_lpsolve
2364 $(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
2365 $(call gb_LinkTarget_add_defs,$(1),\
2366 -DSYSTEM_LPSOLVE \
2369 endef
2371 else # !SYSTEM_LPSOLVE
2373 define gb_LinkTarget__use_lpsolve
2374 $(call gb_LinkTarget_use_external_project,$(1),lpsolve)
2375 ifeq ($(COM),MSC)
2376 $(call gb_LinkTarget_add_libs,$(1),\
2377 $(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55/lpsolve55.lib \
2379 else
2380 $(call gb_LinkTarget_add_libs,$(1),\
2381 -L$(call gb_UnpackedTarball_get_dir,lpsolve)/lpsolve55 -llpsolve55 \
2383 endif
2384 $(call gb_LinkTarget_set_include,$(1),\
2385 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
2386 $$(INCLUDE) \
2389 endef
2391 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
2392 lpsolve \
2395 endif # SYSTEM_LPSOLVE
2397 else
2399 gb_LinkTarget__use_lpsolve :=
2401 endif # ENABLE_LPSOLVE
2403 ifneq ($(ENABLE_COINMP),)
2405 ifneq ($(SYSTEM_COINMP),TRUE)
2407 define gb_LinkTarget__use_coinmp
2408 $(call gb_LinkTarget_use_package,$(1),coinmp)
2409 ifeq ($(COM),MSC)
2410 $(call gb_LinkTarget_add_libs,$(1),\
2411 $(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/MSVisualStudio/v9/$(wnt_arch_subdir_optional)$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release)/CoinMP.lib \
2413 else
2414 $(call gb_LinkTarget_add_libs,$(1),\
2415 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cbc/src/.libs -lCbc -lCbcSolver \
2416 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Cgl/src/.libs -lCgl \
2417 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/.libs -lClp \
2418 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Clp/src/OsiClp/.libs -lOsiClp \
2419 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src/.libs -lCoinMP \
2420 -L$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src/.libs -lCoinUtils \
2421 -L$(call gb_UnpackedTarball_get_dir,coinmp)/Osi/src/Osi/.libs -lOsi \
2423 endif
2424 $(call gb_LinkTarget_set_include,$(1),\
2425 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinMP/src \
2426 -I$(call gb_UnpackedTarball_get_dir,coinmp)/CoinUtils/src \
2427 $$(INCLUDE) \
2430 endef
2432 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
2433 coinmp \
2436 else # SYSTEM_COINMP
2438 define gb_LinkTarget__use_coinmp
2439 $(call gb_LinkTarget_set_include,$(1),\
2440 $$(INCLUDE) \
2441 $(COINMP_CFLAGS) \
2443 $(call gb_LinkTarget_add_libs,$(1),$(COINMP_LIBS))
2445 endef
2447 endif
2449 else
2451 gb_LinkTarget__use_coinmp :=
2453 endif # ENABLE_COINMP
2455 ifneq (,$(filter MDNSRESPONDER,$(BUILD_TYPE)))
2457 define gb_LinkTarget__use_mDNSResponder
2458 $(call gb_LinkTarget_set_include,$(1),\
2459 -I$(call gb_UnpackedTarball_get_dir,mDNSResponder)/mDNSShared \
2460 $$(INCLUDE) \
2462 $(call gb_LinkTarget_use_static_libraries,$(1),mDNSResponder)
2463 endef
2465 endif # MDNSRESPONDER
2467 ifeq ($(ENABLE_GIO),TRUE)
2469 define gb_LinkTarget__use_gio
2470 $(call gb_LinkTarget_set_include,$(1),\
2471 $$(INCLUDE) \
2472 $(GIO_CFLAGS) \
2475 $(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
2477 endef
2479 else # ENABLE_GIO
2481 define gb_LinkTarget__use_gio
2483 endef
2485 endif # ENABLE_GIO
2487 ifeq ($(ENABLE_AVAHI),TRUE)
2489 define gb_LinkTarget__use_avahi
2490 $(call gb_LinkTarget_set_include,$(1),\
2491 $$(INCLUDE) \
2492 $(AVAHI_CFLAGS) \
2495 $(call gb_LinkTarget_add_defs,$(1),\
2496 -DENABLE_AVAHI \
2499 $(call gb_LinkTarget_add_libs,$(1),$(AVAHI_LIBS))
2501 endef
2503 else # ENABLE_AVAHI
2505 gb_LinkTarget__use_avahi :=
2507 endif # ENABLE_AVAHI
2510 define gb_LinkTarget__use_gtk
2511 $(call gb_LinkTarget_set_include,$(1),\
2512 $$(INCLUDE) \
2513 $(GTK_CFLAGS) \
2516 $(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
2518 ifeq ($(ENABLE_GTK_PRINT),TRUE)
2520 $(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
2522 $(call gb_LinkTarget_set_include,$(1),\
2523 $$(INCLUDE) \
2524 $(GTK_PRINT_CFLAGS) \
2527 $(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
2529 endif
2531 endef
2533 define gb_LinkTarget__use_gthread
2534 $(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
2535 endef
2537 ifeq ($(ENABLE_CUPS),TRUE)
2539 define gb_LinkTarget__use_cups
2540 $(call gb_LinkTarget_add_defs,$(1),\
2541 -DENABLE_CUPS \
2544 $(call gb_LinkTarget_add_libs,$(1),\
2545 -lcups \
2548 endef
2550 else # ENABLE_CUPS
2552 define gb_LinkTarget__use_cups
2554 endef
2556 endif # ENABLE_DBUS
2558 ifeq ($(ENABLE_DBUS),TRUE)
2560 define gb_LinkTarget__use_dbus
2561 $(call gb_LinkTarget_set_include,$(1),\
2562 $$(INCLUDE) \
2563 $(DBUS_CFLAGS) \
2566 $(call gb_LinkTarget_add_libs,$(1),\
2567 $(DBUS_LIBS) \
2570 endef
2572 else # ENABLE_DBUS
2574 define gb_LinkTarget__use_dbus
2576 endef
2578 endif # ENABLE_DBUS
2581 ifneq ($(SYSTEM_LIBPNG),)
2583 define gb_LinkTarget__use_png
2584 $(call gb_LinkTarget_set_include,$(1),\
2585 $$(INCLUDE) \
2586 $(LIBPNG_CFLAGS) \
2589 $(call gb_LinkTarget_add_libs,$(1),\
2590 $(LIBPNG_LIBS) \
2593 endef
2595 gb_ExternalProject__use_png :=
2597 else # !SYSTEM_LIBPNG
2599 define gb_LinkTarget__use_png
2600 $(call gb_LinkTarget_set_include,$(1),\
2601 $(LIBPNG_CFLAGS) \
2602 $$(INCLUDE) \
2604 $(call gb_LinkTarget_use_static_libraries,$(1),\
2605 png \
2607 $(call gb_LinkTarget__use_zlib,$(1))
2609 endef
2611 define gb_ExternalProject__use_png
2612 $(call gb_ExternalProject_use_static_libraries,$(1),\
2613 png \
2616 endef
2618 endif # !SYSTEM_LIBPNG
2621 ifneq ($(SYSTEM_CURL),)
2623 define gb_LinkTarget__use_curl
2624 $(call gb_LinkTarget_add_defs,$(1),\
2625 -DSYSTEM_CURL \
2627 $(call gb_LinkTarget_set_include,$(1),\
2628 $$(INCLUDE) \
2629 $(CURL_CFLAGS) \
2631 $(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
2633 endef
2635 else # !SYSTEM_CURL
2637 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
2638 curl \
2641 define gb_LinkTarget__use_curl
2642 $(call gb_LinkTarget_use_package,$(1),curl)
2643 $(call gb_LinkTarget_set_include,$(1),\
2644 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
2645 $$(INCLUDE) \
2648 ifeq ($(COM),MSC)
2649 $(call gb_LinkTarget_add_libs,$(1),\
2650 $(call gb_UnpackedTarball_get_dir,curl)/lib/$(if $(MSVC_USE_DEBUG_RUNTIME),debug-dll,release-dll)/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),d)_imp.lib \
2652 else
2653 $(call gb_LinkTarget_add_libs,$(1),\
2654 -L$(call gb_UnpackedTarball_get_dir,curl)/lib/.libs -lcurl \
2656 endif
2658 endef
2660 endif # SYSTEM_CURL
2662 ifeq ($(ENABLE_VALGRIND),TRUE)
2664 define gb_LinkTarget__use_valgrind
2665 $(call gb_LinkTarget_add_defs,$(1),\
2666 -DHAVE_VALGRIND_HEADERS \
2669 $(call gb_LinkTarget_set_include,$(1),\
2670 $$(INCLUDE) \
2671 $(VALGRIND_CFLAGS) \
2674 endef
2676 else # !ENABLE_VALGRIND
2678 define gb_LinkTarget__use_valgrind
2680 endef
2682 endif # ENABLE_VALGRIND
2684 ifneq ($(SYSTEM_POPPLER),)
2686 define gb_LinkTarget__use_poppler
2687 $(call gb_LinkTarget_set_include,$(1),\
2688 $(POPPLER_CFLAGS) \
2689 $$(INCLUDE) \
2692 $(call gb_LinkTarget_add_libs,$(1),\
2693 $(POPPLER_LIBS) \
2696 endef
2698 else # !SYSTEM_POPPLER
2700 define gb_LinkTarget__use_poppler
2701 $(call gb_LinkTarget_use_external_project,$(1),poppler,full)
2703 $(call gb_LinkTarget_set_include,$(1),\
2704 -I$(call gb_UnpackedTarball_get_dir,poppler) \
2705 -I$(call gb_UnpackedTarball_get_dir,poppler)/poppler \
2706 -I$(call gb_UnpackedTarball_get_dir,poppler)/goo \
2707 $$(INCLUDE) \
2710 $(call gb_LinkTarget_add_libs,$(1),\
2711 $(call gb_UnpackedTarball_get_dir,poppler)/fofi/.libs/libfofi$(gb_StaticLibrary_PLAINEXT) \
2712 $(call gb_UnpackedTarball_get_dir,poppler)/goo/.libs/libgoo$(gb_StaticLibrary_PLAINEXT) \
2713 $(call gb_UnpackedTarball_get_dir,poppler)/poppler/.libs/libpoppler$(gb_StaticLibrary_PLAINEXT) \
2716 $(call gb_LinkTarget_use_external,$(1),jpeg)
2718 ifeq ($(OS),MACOSX)
2719 $(call gb_LinkTarget_add_libs,$(1),\
2720 -lobjc \
2722 else ifeq ($(OS),LINUX)
2723 $(call gb_LinkTarget_add_libs,$(1),\
2724 -pthread \
2726 else ifeq ($(OS),WNT)
2727 $(call gb_LinkTarget_use_system_win32_libs,$(1),\
2728 advapi32 \
2729 gdi32 \
2731 endif
2733 endef
2735 endif # SYSTEM_POPPLER
2738 ifneq ($(SYSTEM_CLUCENE),)
2740 define gb_LinkTarget__use_clucene
2741 $(call gb_LinkTarget_add_defs,$(1),\
2742 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(CLUCENE_CFLAGS))) \
2745 $(call gb_LinkTarget_set_include,$(1),\
2746 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(CLUCENE_CFLAGS)))) \
2747 $$(INCLUDE) \
2750 $(call gb_LinkTarget_add_libs,$(1),\
2751 $(CLUCENE_LIBS) \
2754 endef
2756 else # !SYSTEM_CLUCENE
2758 define gb_LinkTarget__use_clucene
2759 $(call gb_LinkTarget_set_include,$(1),\
2760 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/core \
2761 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/shared \
2762 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/contribs-lib \
2763 $$(INCLUDE) \
2766 $(call gb_LinkTarget_use_libraries,$(1),\
2767 clucene \
2770 endef
2772 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
2773 clucene \
2776 endif # SYSTEM_CLUCENE
2778 define gb_LinkTarget__use_gobject
2779 $(call gb_LinkTarget_add_libs,$(1),\
2780 $(GOBJECT_LIBS) \
2783 $(call gb_LinkTarget_set_include,$(1),\
2784 $$(INCLUDE) \
2785 $(GOBJECT_CFLAGS) \
2787 endef
2789 ifneq ($(SYSTEM_HSQLDB),)
2791 define gb_LinkTarget__use_hsqldb
2793 $(call gb_LinkTarget_add_defs,$(1),\
2794 -DSYSTEM_HSQLDB \
2795 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
2798 endef
2800 else # !SYSTEM_HSQLDB
2802 define gb_LinkTarget__use_hsqldb
2804 endef
2806 endif # SYSTEM_HSQLDB
2809 ifneq ($(SYSTEM_OPENLDAP),)
2811 define gb_LinkTarget__use_openldap
2813 $(call gb_LinkTarget_add_libs,$(1),\
2814 -lldap \
2815 -llber \
2818 endef
2820 gb_ExternalProject__use_openldap :=
2822 else # !SYSTEM_OPENLDAP
2824 define gb_LinkTarget__use_openldap
2825 $(call gb_LinkTarget_use_unpacked,$(1),openldap)
2826 $(call gb_LinkTarget_set_include,$(1),\
2827 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
2828 $$(INCLUDE) \
2830 $(call gb_LinkTarget_use_external_project,$(1),openldap,full)
2831 $(call gb_LinkTarget_add_libs,$(1), \
2832 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/libldap/.libs/libldap.a \
2833 $(call gb_UnpackedTarball_get_dir,openldap)/libraries/liblber/.libs/liblber.a \
2836 endef
2838 define gb_ExternalProject__use_openldap
2839 $(call gb_ExternalProject_use_external_project,$(1),openldap)
2841 endef
2843 endif # SYSTEM_OPENLDAP
2845 ifneq ($(SYSTEM_LIBTOMMATH),)
2847 define gb_LinkTarget__use_libtommath
2848 $(call gb_LinkTarget_set_include,$(1),\
2849 $(LIBTOMMATH_CFLAGS) \
2850 $$(INCLUDE) \
2852 $(call gb_LinkTarget_add_libs,$(1),$(LIBTOMMATH_LIBS))
2854 endef
2856 else # !SYSTEM_LIBTOMMATH
2857 define gb_LinkTarget__use_libtommath
2858 $(call gb_LinkTarget_set_include,$(1),\
2859 -I${WORKDIR}/UnpackedTarball/libtommath \
2860 $$(INCLUDE) \
2862 $(call gb_LinkTarget_add_libs,$(1),\
2863 $(call gb_UnpackedTarball_get_dir,libtommath)/libtommath$(gb_StaticLibrary_PLAINEXT) \
2865 $(call gb_LinkTarget_use_external_project,$(1),libtommath)
2867 endef
2869 endif # SYSTEM_LIBTOMMATH
2871 define gb_ExternalProject__use_libtommath
2872 $(call gb_ExternalProject_use_external_project,$(1),libtommath)
2874 endef
2876 ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE)
2878 ifneq ($(SYSTEM_FIREBIRD),)
2880 define gb_LinkTarget__use_libfbembed
2881 $(call gb_LinkTarget_set_include,$(1),\
2882 $(FIREBIRD_CFLAGS) \
2883 $$(INCLUDE) \
2885 $(call gb_LinkTarget_add_libs,$(1),$(FIREBIRD_LIBS))
2887 endef
2889 else # !SYSTEM_FIREBIRD
2891 $(eval $(call gb_Helper_register_packages_for_install,firebirdsdbc,\
2892 firebird \
2895 #$(call gb_LinkTarget__use_libatomic_ops,$(1))
2896 #$(call gb_LinkTarget__use_libtommath,$(1))
2898 define gb_LinkTarget__use_libfbembed
2899 $(call gb_LinkTarget_use_package,$(1),firebird)
2900 $(call gb_LinkTarget_set_include,$(1),\
2901 -I$(call gb_UnpackedTarball_get_dir,firebird)/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/include \
2902 $$(INCLUDE) \
2904 ifeq ($(COM),MSC)
2905 $(call gb_LinkTarget_add_libs,$(1),\
2906 $(call gb_UnpackedTarball_get_dir,firebird)/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/bin/ifbclient.lib \
2908 else
2909 $(call gb_LinkTarget_add_libs,$(1),\
2910 -L$(call gb_UnpackedTarball_get_dir,firebird)/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/lib -lfbclient \
2912 endif
2914 endef
2917 # endef
2919 endif # SYSTEM_FIREBIRD
2921 else # !ENABLE_FIREBIRD_SDBC
2923 gb_LinkTarget__use_firebird :=
2924 # gb_LinkTarget__use_atomic_ops :=
2925 # gb_LinkTarget__use_libtommath :=
2927 endif # ENABLE_FIREBIRD_SDBC
2930 ifneq ($(SYSTEM_POSTGRESQL),)
2932 define gb_LinkTarget__use_postgresql
2934 $(call gb_LinkTarget_set_include,$(1),\
2935 $(POSTGRESQL_INC) \
2936 $$(INCLUDE) \
2939 $(call gb_LinkTarget_add_libs,$(1),\
2940 -lpq \
2943 $(call gb_LinkTarget_add_ldflags,$(1),\
2944 $(POSTGRESQL_LIB) \
2947 endef
2949 else # !SYSTEM_POSTGRESQL
2951 define gb_LinkTarget__use_postgresql
2953 $(call gb_LinkTarget_use_external_project,$(1),postgresql)
2955 $(call gb_LinkTarget_set_include,$(1),\
2956 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \
2957 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq \
2958 $$(INCLUDE) \
2961 $(call gb_LinkTarget_add_libs,$(1),\
2962 $(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq/libpq$(gb_StaticLibrary_PLAINEXT) \
2965 ifeq ($(OS),WNT)
2966 $(call gb_LinkTarget_use_external,$(1),openssl)
2968 $(call gb_LinkTarget_use_system_win32_libs,$(1),\
2969 secur32 \
2970 ws2_32 \
2973 endif
2975 endef
2977 endif # SYSTEM_POSTGRESQL
2979 ifeq ($(ENABLE_KDE4),TRUE)
2981 define gb_LinkTarget__use_kde4
2982 $(call gb_LinkTarget_set_include,$(1),\
2983 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(KDE4_CFLAGS)))) \
2984 $$(INCLUDE) \
2987 $(call gb_LinkTarget_add_defs,$(1),\
2988 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(KDE4_CFLAGS))) \
2991 $(call gb_LinkTarget_add_libs,$(1),\
2992 $(KDE4_LIBS) \
2995 endef
2997 else # !ENABLE_KDE4
2999 define gb_LinkTarget__use_kde4
3001 endef
3003 endif # ENABLE_KDE4
3006 ifeq ($(ENABLE_TDE),TRUE)
3008 define gb_LinkTarget__use_tde
3009 $(call gb_LinkTarget_add_libs,$(1),\
3010 $(TDE_LIBS) \
3013 $(call gb_LinkTarget_set_include,$(1),\
3014 $$(INCLUDE) \
3015 $(TDE_CFLAGS) \
3017 endef
3019 else # ! ENABLE_TDE
3021 define gb_LinkTarget__use_tde
3023 endef
3025 endif # ENABLE_TDE
3028 # PYTHON
3029 # extra python_headers external because pyuno wrapper must not link python
3030 ifneq ($(SYSTEM_PYTHON),)
3032 define gb_LinkTarget__use_python_headers
3033 $(call gb_LinkTarget_add_defs,$(1),\
3034 $(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(PYHTON_CFLAGS)))) \
3037 $(call gb_LinkTarget_set_include,$(1),\
3038 $(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(PYTHON_CFLAGS)))) \
3039 $$(INCLUDE) \
3042 endef
3044 define gb_LinkTarget__use_python
3045 $(call gb_LinkTarget__use_python_headers,$(1))
3047 $(call gb_LinkTarget_add_libs,$(1),\
3048 $(PYTHON_LIBS) \
3051 endef
3053 else # !SYSTEM_PYTHON
3055 $(eval $(call gb_Helper_register_packages_for_install,python,\
3056 python3 \
3059 define gb_LinkTarget__use_python_headers
3060 $(call gb_LinkTarget_use_external_project,$(1),python3,full)
3061 $(call gb_LinkTarget_set_include,$(1),\
3062 -I$(call gb_UnpackedTarball_get_dir,python3) \
3063 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
3064 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
3065 $$(INCLUDE) \
3068 endef
3070 define gb_LinkTarget__use_python
3071 $(call gb_LinkTarget__use_python_headers,$(1))
3072 ifeq ($(OS),MACOSX)
3073 $(call gb_LinkTarget_use_generated_package,$(1),python3)
3074 else
3075 $(call gb_LinkTarget_use_package,$(1),python3)
3076 endif
3078 ifeq ($(OS),WNT)
3079 $(call gb_LinkTarget_add_libs,$(1),\
3080 $(call gb_UnpackedTarball_get_dir,python3)/PCbuild/$(if $(filter X86_64,$(CPUNAME)),amd64,win32)/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).lib \
3082 else ifeq ($(OS),MACOSX)
3083 $(call gb_LinkTarget_add_libs,$(1),\
3084 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
3086 else
3087 $(call gb_LinkTarget_add_libs,$(1),\
3088 -L$(call gb_UnpackedTarball_get_dir,python3) \
3089 -lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
3091 endif
3093 endef
3095 endif # SYSTEM_PYTHON
3097 # ORCUS
3098 ifneq ($(SYSTEM_LIBORCUS),)
3100 define gb_LinkTarget__use_orcus
3101 $(call gb_LinkTarget_set_include,$(1),\
3102 $$(INCLUDE) \
3103 $(ORCUS_CFLAGS) \
3105 $(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
3106 endef
3108 define gb_LinkTarget__use_orcus-parser
3110 endef
3112 else # !SYSTEM_LIBORCUS
3114 ifeq ($(COM),MSC)
3116 $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
3117 orcus \
3118 orcus-parser \
3121 define gb_LinkTarget__use_orcus
3122 $(call gb_LinkTarget_set_include,$(1),\
3123 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3124 $$(INCLUDE) \
3127 $(call gb_LinkTarget_use_libraries,$(1),\
3128 orcus \
3131 endef
3133 define gb_LinkTarget__use_orcus-parser
3134 $(call gb_LinkTarget_set_include,$(1),\
3135 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3136 $$(INCLUDE) \
3139 $(call gb_LinkTarget_use_libraries,$(1),\
3140 orcus-parser \
3143 endef
3145 else # !MSC
3147 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
3148 liborcus \
3151 define gb_LinkTarget__use_orcus
3152 $(call gb_LinkTarget_use_package,$(1),liborcus)
3154 $(call gb_LinkTarget_set_include,$(1),\
3155 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3156 $$(INCLUDE) \
3159 $(call gb_LinkTarget_add_libs,$(1),\
3160 -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs -lorcus-0.12 \
3163 $(if $(SYSTEM_BOOST), \
3164 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
3165 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
3168 endef
3170 define gb_LinkTarget__use_orcus-parser
3171 $(call gb_LinkTarget_use_package,$(1),liborcus)
3173 $(call gb_LinkTarget_set_include,$(1),\
3174 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
3175 $$(INCLUDE) \
3178 $(call gb_LinkTarget_add_libs,$(1),\
3179 -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs -lorcus-parser-0.12 \
3182 endef
3184 endif # MSC
3186 endif # SYSTEM_LIBORCUS
3188 ifeq ($(ENABLE_EOT),TRUE)
3190 ifneq ($(SYSTEM_LIBEOT),)
3192 define gb_LinkTarget__use_libeot
3193 $(call gb_LinkTarget_set_include,$(1),\
3194 $$(INCLUDE) \
3195 $(LIBEOT_CFLAGS) \
3197 $(call gb_LinkTarget_add_libs,$(1),$(LIBEOT_LIBS))
3199 endef
3201 gb_ExternalProject__use_libeot :=
3203 else # !SYSTEM_LIBEOT
3205 define gb_LinkTarget__use_libeot
3206 $(call gb_LinkTarget_set_include,$(1),\
3207 -I$(call gb_UnpackedTarball_get_dir,libeot)/inc \
3208 $$(INCLUDE) \
3210 $(call gb_LinkTarget_add_libs,$(1),\
3211 $(call gb_UnpackedTarball_get_dir,libeot)/.libs/libeot$(gb_StaticLibrary_PLAINEXT) \
3213 $(call gb_LinkTarget_use_external_project,$(1),libeot)
3215 endef
3217 define gb_ExternalProject__use_libeot
3218 $(call gb_ExternalProject_use_external_project,$(1),libeot)
3220 endef
3222 endif # SYSTEM_LIBEOT
3224 else # !ENABLE_EOT
3226 gb_LinkTarget__use_libeot :=
3227 gb_ExternalProject__use_libeot :=
3229 endif # ENABLE_EOT
3231 ### X11 stuff ###
3233 ifeq ($(USING_X11), TRUE)
3235 define gb_LinkTarget__use_Xrandr
3236 $(call gb_LinkTarget_set_include,$(1),\
3237 $$(INCLUDE) \
3238 $(XRANDR_CFLAGS) \
3241 $(call gb_LinkTarget_add_libs,$(1),\
3242 $(XRANDR_LIBS) \
3244 endef
3246 define gb_LinkTarget__use_Xrender
3247 $(call gb_LinkTarget_set_include,$(1),\
3248 $$(INCLUDE) \
3249 $(XRENDER_CFLAGS) \
3252 $(call gb_LinkTarget_add_libs,$(1),\
3253 $(XRENDER_LIBS) \
3255 endef
3257 endif # USING_X11
3260 gb_ExternalProject__use_nss3:=
3262 ifeq ($(OS),ANDROID)
3264 gb_LinkTarget__use_nss3:=
3265 gb_LinkTarget__use_plc4:=
3267 else
3269 ifneq ($(SYSTEM_NSS),)
3271 define gb_LinkTarget__use_nss3
3272 $(call gb_LinkTarget_add_defs,$(1),\
3273 -DSYSTEM_NSS \
3276 $(call gb_LinkTarget_set_include,$(1),\
3277 $$(INCLUDE) \
3278 $(NSS_CFLAGS) \
3281 $(call gb_LinkTarget_add_libs,$(1),\
3282 $(NSS_LIBS) \
3285 endef
3287 define gb_LinkTarget__use_plc4
3288 $(call gb_LinkTarget__use_nss3,$(1))
3290 endef
3292 define gb_LinkTarget__use_ssl3
3293 $(call gb_LinkTarget__use_nss3,$(1))
3295 endef
3297 else # !SYSTEM_NSS
3299 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
3300 nss \
3303 define gb_LinkTarget__use_nss3
3304 $(call gb_LinkTarget_use_package,$(1),nss)
3305 $(call gb_LinkTarget_set_include,$(1),\
3306 $$(INCLUDE) \
3307 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/public/nss \
3308 -I$(call gb_UnpackedTarball_get_dir,nss)/dist/out/include \
3311 ifeq ($(COM),MSC)
3312 $(call gb_LinkTarget_add_libs,$(1),\
3313 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nspr4.lib \
3314 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/nss3.lib \
3315 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/smime3.lib \
3317 else
3318 $(call gb_LinkTarget_add_libs,$(1),\
3319 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib \
3320 -lnspr4 \
3321 -lnss3 \
3322 -lsmime3 \
3324 endif
3326 endef
3328 define gb_LinkTarget__use_plc4
3329 $(call gb_LinkTarget_use_package,$(1),nss)
3330 ifeq ($(COM),MSC)
3331 $(call gb_LinkTarget_add_libs,$(1),\
3332 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/plc4.lib \
3334 else
3335 $(call gb_LinkTarget_add_libs,$(1),\
3336 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lplc4 \
3338 endif
3340 endef
3342 define gb_LinkTarget__use_ssl3
3343 $(call gb_LinkTarget_use_package,$(1),nss)
3344 ifeq ($(COM),MSC)
3345 $(call gb_LinkTarget_add_libs,$(1),\
3346 $(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib/ssl3.lib \
3348 else
3349 $(call gb_LinkTarget_add_libs,$(1),\
3350 -L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lssl3 \
3352 endif
3354 endef
3356 define gb_ExternalProject__use_nss3
3357 $(call gb_ExternalProject_use_package,$(1),nss)
3359 endef
3361 endif # SYSTEM_NSS
3363 endif # DESKTOP
3365 ifeq ($(ENABLE_BREAKPAD),TRUE)
3367 define gb_LinkTarget__use_breakpad
3368 $(call gb_LinkTarget_set_include,$(1),\
3369 -I$(call gb_UnpackedTarball_get_dir,breakpad)/src \
3370 $$(INCLUDE) \
3373 ifeq ($(COM),MSC)
3374 $(call gb_LinkTarget_use_static_libraries,$(1),\
3375 breakpad \
3377 else
3378 $(call gb_LinkTarget_add_libs,$(1),\
3379 $(call gb_UnpackedTarball_get_dir,breakpad)/src/client/linux/libbreakpad_client.a \
3381 endif
3383 $(call gb_LinkTarget_use_external_project,$(1),breakpad)
3385 endef
3387 endif # ENABLE_BREAKPAD
3389 ifneq ($(SYSTEM_GPGMEPP),)
3391 gb_ExternalProject__use_gpgmepp:=
3392 gb_ExternalProject__use_libassuan:=
3393 gb_ExternalProject__use_libgpg-error:=
3395 define gb_LinkTarget__use_gpgmepp
3396 $(call gb_LinkTarget_set_include,$(1),\
3397 $$(INCLUDE) \
3398 $$(GPGMEPP_CFLAGS) \
3401 $(call gb_LinkTarget_add_libs,$(1),\
3402 $(GPGMEPP_LIBS) \
3405 endef
3407 else # NON-SYSTEM_GPGME
3409 define gb_ExternalProject__use_gpgmepp
3410 $(call gb_ExternalProject_use_external_project,$(1),gpgme)
3412 endef
3413 define gb_ExternalProject__use_libassuan
3414 $(call gb_ExternalProject_use_external_project,$(1),libassuan)
3416 endef
3417 define gb_ExternalProject__use_libgpg-error
3418 $(call gb_ExternalProject_use_external_project,$(1),libgpg-error)
3420 endef
3422 define gb_LinkTarget__use_gpgmepp
3423 $(call gb_LinkTarget_set_include,$(1),\
3424 -I$(call gb_UnpackedTarball_get_dir,gpgme)/lang/cpp/src \
3425 -I$(call gb_UnpackedTarball_get_dir,gpgme)/src \
3426 $$(GPG_ERROR_CFLAGS) \
3427 $$(INCLUDE) \
3429 $(call gb_LinkTarget_add_libs,$(1),\
3430 -L$(call gb_UnpackedTarball_get_dir,gpgme)/lang/cpp/src/.libs/ -lgpgmepp \
3432 $(call gb_LinkTarget_use_package,$(1),gpgme)
3434 endef
3436 ifeq ($(OS),LINUX)
3438 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
3439 gpgme \
3440 libassuan \
3441 libgpg-error \
3444 endif
3446 endif
3448 ifeq ($(ENABLE_GLTF),TRUE)
3450 ifneq ($(SYSTEM_LIBGLTF),TRUE)
3452 define gb_LinkTarget__use_libgltf
3453 $(call gb_LinkTarget_set_include,$(1),\
3454 -I$(call gb_UnpackedTarball_get_dir,libgltf)/inc \
3455 $$(INCLUDE) \
3458 ifeq ($(COM),MSC)
3459 $(call gb_LinkTarget_add_libs,$(1),\
3460 $(call gb_UnpackedTarball_get_dir,libgltf)/build/win32/$(wnt_arch_subdir_optional)$(if $(MSVC_USE_DEBUG_RUNTIME),Debug/libgltf.lib,Release/libgltf.lib) \
3462 else
3463 $(call gb_LinkTarget_add_libs,$(1),\
3464 $(call gb_UnpackedTarball_get_dir,libgltf)/src/.libs/libgltf-0.1$(gb_StaticLibrary_PLAINEXT) \
3466 endif
3468 $(call gb_LinkTarget_use_external_project,$(1),libgltf)
3470 endef
3472 else # SYSTEM_LIBGLTF
3474 define gb_LinkTarget__use_libgltf
3475 $(call gb_LinkTarget_set_include,$(1),\
3476 $$(INCLUDE) \
3477 $(LIBGLTF_CFLAGS) \
3479 $(call gb_LinkTarget_add_libs,$(1),$(LIBGLTF_LIBS))
3481 endef
3483 endif # SYSTEM_LIBGLTF
3485 ifeq ($(ENABLE_COLLADA),TRUE)
3487 ifeq ($(SYSTEM_OPENCOLLADA),TRUE)
3489 define gb_LinkTarget__use_opencollada_parser
3490 $(call gb_LinkTarget_set_include,$(1),\
3491 $$(INCLUDE) \
3492 $(OPENCOLLADA_CFLAGS) \
3495 $(call gb_LinkTarget_add_libs,$(1),$(OPENCOLLADA_LIBS))
3497 endef
3499 else # !SYSTEM_OPENCOLLADA
3501 define gb_LinkTarget__use_opencollada_parser
3502 $(call gb_LinkTarget_set_include,$(1),\
3503 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
3504 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADAFramework/include \
3505 -I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADASaxFrameworkLoader/include \
3506 -I$(call gb_UnpackedTarball_get_dir,opencollada)/GeneratedSaxParser/include \
3507 $$(INCLUDE) \
3510 $(call gb_LinkTarget_use_static_libraries,$(1),\
3511 opencollada_parser \
3513 endef
3515 endif # SYSTEM_OPENCOLLADA
3517 ifeq ($(SYSTEM_COLLADA2GLTF),TRUE)
3519 define gb_LinkTarget__use_collada2gltf
3520 $(call gb_LinkTarget_set_include,$(1),\
3521 $$(INCLUDE) \
3522 $(COLLADA2GLTF_CFLAGS) \
3525 $(call gb_LinkTarget_add_libs,$(1),$(COLLADA2GLTF_LIBS))
3527 endef
3529 else # !SYSTEM_COLLADA2GLTF
3531 define gb_LinkTarget__use_collada2gltf
3532 $(call gb_LinkTarget_set_include,$(1),\
3533 -I$(call gb_UnpackedTarball_get_dir,collada2gltf) \
3534 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/assetModifiers \
3535 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/GLTF \
3536 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/helpers \
3537 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/JSON \
3538 -I$(call gb_UnpackedTarball_get_dir,collada2gltf)/dependencies/json/include/rapidjson/ \
3539 $$(INCLUDE) \
3542 $(call gb_LinkTarget_use_static_libraries,$(1),\
3543 collada2gltf \
3545 endef
3547 endif # SYSTEM_COLLADA2GLTF
3549 endif # ENABLE_COLLADA
3551 endif # ENABLE_GLTF
3553 define gb_LinkTarget__use_dconf
3554 $(call gb_LinkTarget_add_defs,$(1),$(DCONF_CFLAGS))
3555 $(call gb_LinkTarget_add_libs,$(1),$(DCONF_LIBS))
3556 endef
3558 ### Jars ############################################################
3560 ifneq ($(SYSTEM_HSQLDB),)
3562 define gb_Jar__use_hsqldb
3563 $(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
3564 endef
3565 define gb_JunitTest__use_hsqldb
3566 $(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
3567 endef
3569 else # !SYSTEM_HSQLDB
3571 ifeq ($(ENABLE_JAVA),TRUE)
3572 $(eval $(call gb_Helper_register_jars_for_install,OOO,ooo, \
3573 hsqldb \
3575 endif
3577 define gb_Jar__use_hsqldb
3578 $(call gb_Jar_use_jar,$(1),hsqldb)
3579 endef
3580 define gb_JunitTest__use_hsqldb
3581 $(call gb_JunitTest_use_jar,$(1),hsqldb)
3582 endef
3584 endif # SYSTEM_HSQLDB
3587 ifeq ($(ENABLE_SCRIPTING_BEANSHELL),TRUE)
3589 ifneq ($(SYSTEM_BSH),)
3591 define gb_Jar__use_bsh
3592 $(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
3593 endef
3595 else # !SYSTEM_BSH
3597 ifeq ($(ENABLE_JAVA),TRUE)
3598 $(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_bsh, \
3599 bsh \
3601 endif
3603 define gb_Jar__use_bsh
3604 $(call gb_Jar_use_jar,$(1),bsh)
3605 endef
3607 endif # SYSTEM_BSH
3609 endif
3611 ifeq ($(ENABLE_SCRIPTING_JAVASCRIPT),TRUE)
3613 ifneq ($(SYSTEM_RHINO),)
3615 define gb_Jar__use_rhino
3616 $(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
3617 endef
3619 else # !SYSTEM_RHINO
3621 ifeq ($(ENABLE_JAVA),TRUE)
3622 $(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_rhino, \
3623 js \
3625 endif
3627 define gb_Jar__use_rhino
3628 $(call gb_Jar_use_jar,$(1),js)
3629 endef
3631 endif # SYSTEM_RHINO
3633 endif
3635 ifneq ($(SYSTEM_APACHE_COMMONS),)
3637 define gb_Jar__use_commons-logging
3638 $(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
3639 endef
3640 gb_ExternalProject__use_commons-logging :=
3642 else # !SYSTEM_APACHE_COMMONS
3644 ifeq ($(ENABLE_JAVA),TRUE)
3645 $(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
3646 commons-logging-$(COMMONS_LOGGING_VERSION) \
3648 endif
3650 define gb_Jar__use_commons-logging
3651 $(call gb_Jar_use_external_project,$(1),apache_commons_logging)
3652 $(call gb_Jar_use_jar,$(1),commons-logging-$(COMMONS_LOGGING_VERSION))
3653 endef
3654 define gb_ExternalProject__use_commons-logging
3655 $(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
3656 endef
3658 endif # SYSTEM_APACHE_COMMONS
3661 ifneq ($(SYSTEM_JFREEREPORT),)
3663 define gb_Jar__use_flow-engine
3664 $(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
3665 endef
3667 define gb_Jar__use_flute
3668 $(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
3669 endef
3671 define gb_Jar__use_libbase
3672 $(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
3673 endef
3675 define gb_Jar__use_libfonts
3676 $(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
3677 endef
3679 define gb_Jar__use_libformula
3680 $(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
3681 endef
3683 define gb_Jar__use_liblayout
3684 $(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
3685 endef
3687 define gb_Jar__use_libloader
3688 $(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
3689 endef
3691 define gb_Jar__use_librepository
3692 $(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
3693 endef
3695 define gb_Jar__use_libserializer
3696 $(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
3697 endef
3699 define gb_Jar__use_libxml
3700 $(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
3701 endef
3703 define gb_Jar__use_sac
3704 $(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
3705 endef
3707 else # !SYSTEM_JFREEREPORT
3709 ifeq ($(ENABLE_JAVA),TRUE)
3710 $(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
3711 flow-engine \
3712 flute-1.1.6 \
3713 libbase-1.1.6 \
3714 libfonts-1.1.6 \
3715 libformula-1.1.7 \
3716 liblayout \
3717 libloader-1.1.6 \
3718 librepository-1.1.6 \
3719 libserializer-1.1.6 \
3720 libxml-1.1.7 \
3721 sac \
3723 endif
3725 define gb_Jar__use_flow-engine
3726 $(call gb_Jar_use_jar,$(1),flow-engine)
3727 endef
3729 define gb_Jar__use_flute
3730 $(call gb_Jar_use_jar,$(1),flute-1.1.6)
3731 endef
3733 define gb_Jar__use_libbase
3734 $(call gb_Jar_use_jar,$(1),libbase-1.1.6)
3735 endef
3737 define gb_Jar__use_libfonts
3738 $(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
3739 endef
3741 define gb_Jar__use_libformula
3742 $(call gb_Jar_use_jar,$(1),libformula-1.1.7)
3743 endef
3745 define gb_Jar__use_liblayout
3746 $(call gb_Jar_use_jar,$(1),liblayout)
3747 endef
3749 define gb_Jar__use_libloader
3750 $(call gb_Jar_use_jar,$(1),libloader-1.1.6)
3751 endef
3753 define gb_Jar__use_librepository
3754 $(call gb_Jar_use_jar,$(1),librepository-1.1.6)
3755 endef
3757 define gb_Jar__use_libserializer
3758 $(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
3759 endef
3761 define gb_Jar__use_libxml
3762 $(call gb_Jar_use_jar,$(1),libxml-1.1.7)
3763 endef
3765 define gb_Jar__use_sac
3766 $(call gb_Jar_use_jar,$(1),sac)
3767 endef
3769 endif # SYSTEM_JFREEREPORT
3772 # Executables
3774 # FIXME: the library target should be for build too
3775 define gb_Executable__register_bestreversemap
3776 $(call gb_Executable_add_runtime_dependencies,bestreversemap,\
3777 $(if $(filter $(OS),ANDROID),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,$(call gb_Library_get_target,sal_textenc))) \
3779 endef
3781 # TODO depending on the whole URE might be overkill, but I do not have a
3782 # Windows machine to debug it...
3783 # FIXME: the library target should be for build too
3784 define gb_Executable__register_climaker
3785 $(call gb_Executable_add_runtime_dependencies,climaker,\
3786 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
3787 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
3788 $(call gb_UnoApi_get_target,udkapi) \
3789 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_ETC_FOLDER)/$(call gb_Helper_get_rcfile,uno)
3791 endef
3793 define gb_Executable__register_cppumaker
3794 $(call gb_Executable_add_runtime_dependencies,cppumaker,\
3795 $(if $(filter $(OS),ANDROID),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,$(call gb_Library_get_target,sal_textenc))) \
3797 endef
3799 # This is used to determine what we need for 'build' platform.
3800 # FIXME: the library target should be for build too
3801 define gb_Executable__register_gengal
3802 $(call gb_Executable_add_runtime_dependencies,gengal,\
3803 $(call gb_AllLangResTarget_get_target,ofa) \
3804 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
3805 $(call gb_Package_get_target_for_build,postprocess_images) \
3806 $(call gb_Package_get_target_for_build,postprocess_registry) \
3807 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_ETC_FOLDER)/$(call gb_Helper_get_rcfile,uno) \
3808 $(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/$(call gb_Helper_get_rcfile,fundamental) \
3809 $(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/$(call gb_Helper_get_rcfile,louno) \
3810 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
3811 $(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/services/services.rdb \
3812 $(call gb_UnoApi_get_target,offapi) \
3813 $(call gb_UnoApi_get_target,udkapi) \
3815 endef
3817 ifeq ($(SYSTEM_ICU),)
3819 define gb_Executable__register_gendict
3820 $(call gb_Executable_add_runtime_dependencies,gendict,\
3821 $(call gb_Package_get_target_for_build,icu) \
3822 $(call gb_Package_get_target_for_build,icu_ure) \
3824 endef
3826 endif
3828 define gb_Executable__register_idlc
3829 $(call gb_Executable_add_runtime_dependencies,idlc,\
3830 $(call gb_ExternalExecutable_get_dependencies,ucpp) \
3832 endef
3834 define gb_Executable__register_localize
3835 $(call gb_Executable_add_runtime_dependencies,localize,\
3836 $(foreach exec,cfgex helpex propex transex3 treex uiex ulfex xrmex,\
3837 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
3840 endef
3842 # FIXME ure/services.rdb needs cleanup
3843 # The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
3844 # due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
3845 # FIXME: the library target should be for build too
3846 define gb_Executable__register_saxparser
3847 $(call gb_Executable_add_runtime_dependencies,saxparser,\
3848 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
3849 $(call gb_Package_get_target_for_build,instsetoo_native_setup_ure) \
3850 $(call gb_Rdb_get_target_for_build,saxparser) \
3851 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER_FOR_BUILD)/services.rdb \
3852 $(call gb_UnoApi_get_target,udkapi) \
3854 endef
3856 # NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
3857 # required due to the settings for URE_SERVICES and URE_TYPES in
3858 # cppuhelper/source/unorc
3859 # FIXME: the library target should be for build too
3860 define gb_Executable__register_uno
3861 $(call gb_Executable_add_runtime_dependencies,uno,\
3862 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
3863 $(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
3864 $(call gb_UnoApi_get_target,udkapi) \
3866 endef
3869 # External executables
3871 ifneq ($(SYSTEM_LIBXML_FOR_BUILD),)
3873 gb_ExternalExecutable__register_xmllint :=
3875 else # ! SYSTEM_LIBXML_FOR_BUILD
3877 define gb_ExternalExecutable__register_xmllint
3878 $(call gb_ExternalExecutable_set_internal,xmllint,$(WORKDIR_FOR_BUILD)/UnpackedTarball/xml2/$(if $(filter MSC,$(COM)),win32/bin.msvc)/xmllint$(gb_Executable_EXT_for_build),xml2)
3879 $(call gb_ExternalExecutable_add_dependencies,xmllint,\
3880 $(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
3881 $(call gb_Package_get_target,xml2) \
3884 endef
3886 endif # SYSTEM_LIBXML_FOR_BUILD
3888 ifneq ($(SYSTEM_LIBXSLT_FOR_BUILD),)
3890 gb_ExternalExecutable__register_xsltproc :=
3892 else # ! SYSTEM_LIBXSLT_FOR_BUILD
3894 define gb_ExternalExecutable__register_xsltproc
3895 $(call gb_ExternalExecutable_set_internal,xsltproc,$(WORKDIR_FOR_BUILD)/UnpackedTarball/xslt/$(if $(filter MSC,$(COM)),win32/bin.msvc,xsltproc)/xsltproc$(gb_Executable_EXT_for_build),xslt)
3896 $(call gb_ExternalExecutable_add_dependencies,xsltproc,\
3897 $(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
3898 $(call gb_Package_get_target,xml2) \
3899 $(call gb_Package_get_target,xslt) \
3902 endef
3904 endif # SYSTEM_LIBXSLT_FOR_BUILD
3906 ifneq (,$(SYSTEM_UCPP))
3908 gb_ExternalExecutable__register_ucpp :=
3910 else # ! SYSTEM_UCPP
3912 define gb_ExternalExecutable__register_ucpp
3913 $(call gb_ExternalExecutable_set_internal,ucpp,$(INSTDIR_FOR_BUILD)/$(SDKDIRNAME)/bin/ucpp$(gb_Executable_EXT_for_build))
3915 endef
3917 endif # SYSTEM_UCPP
3919 ifeq (,$(PYTHON_FOR_BUILD))
3921 define gb_ExternalExecutable__register_python
3922 ifeq ($(OS),MACOSX)
3924 # use set_external, to avoid having the command added as prerequisite for the
3925 # targets that make use of it. (Otherwise make will choke as it doesn't have a
3926 # matching rule to build that specific file)
3927 $(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))
3928 # the Zip ensures that internal python has been built (cannot use the Package
3929 # target, as that is not used on Mac)
3930 $(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
3932 else
3934 $(call gb_ExternalExecutable_set_internal,python,$(INSTROOT)/$(LIBO_BIN_FOLDER)/$(if $(filter WNT,$(OS)),python-core-$(PYTHON_VERSION)/bin/python.exe,python.bin))
3935 $(call gb_ExternalExecutable_set_precommand,python,$(subst $$,$$$$,$(gb_Python_PRECOMMAND)))
3936 $(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
3938 endif
3940 endef
3942 else
3944 define gb_ExternalExecutable__register_python
3945 $(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
3947 endef
3949 endif # PYTHON_FOR_BUILD
3951 ifneq ($(SYSTEM_GENBRK),)
3953 define gb_ExternalExecutable__register_genbrk
3954 $(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
3956 endef
3958 else # ! SYSTEM_GENBRK
3960 define gb_ExternalExecutable__register_genbrk
3961 $(call gb_ExternalExecutable_set_internal,genbrk,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/genbrk$(gb_Executable_EXT_for_build),icu)
3962 $(call gb_ExternalExecutable_set_precommand,genbrk,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
3963 $(call gb_ExternalExecutable_add_dependencies,genbrk,\
3964 $(call gb_Package_get_target_for_build,icu) \
3965 $(call gb_Package_get_target_for_build,icu_ure) \
3968 endef
3970 endif
3972 ifneq ($(SYSTEM_GENCCODE),)
3974 define gb_ExternalExecutable__register_genccode
3975 $(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
3977 endef
3979 else # ! SYSTEM_GENCCODE
3981 define gb_ExternalExecutable__register_genccode
3982 $(call gb_ExternalExecutable_set_internal,genccode,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/genccode$(gb_Executable_EXT_for_build),icu)
3983 $(call gb_ExternalExecutable_set_precommand,genccode,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
3984 $(call gb_ExternalExecutable_add_dependencies,genccode,\
3985 $(call gb_Package_get_target_for_build,icu) \
3986 $(call gb_Package_get_target_for_build,icu_ure) \
3989 endef
3991 endif
3993 ifneq ($(SYSTEM_GENCMN),)
3995 define gb_ExternalExecutable__register_gencmn
3996 $(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
3998 endef
4000 else # ! SYSTEM_GENCMN
4002 define gb_ExternalExecutable__register_gencmn
4003 $(call gb_ExternalExecutable_set_internal,gencmn,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/gencmn$(gb_Executable_EXT_for_build),icu)
4004 $(call gb_ExternalExecutable_set_precommand,gencmn,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
4005 $(call gb_ExternalExecutable_add_dependencies,gencmn,\
4006 $(call gb_Package_get_target_for_build,icu) \
4007 $(call gb_Package_get_target_for_build,icu_ure) \
4010 endef
4012 endif
4014 ifeq (OWNCLOUD_ANDROID_LIB,$(filter OWNCLOUD_ANDROID_LIB,$(BUILD_TYPE)))
4016 $(eval $(call gb_Helper_register_jars,OXT,\
4017 owncloud-android-library \
4020 define gb_Jar__use_owncloud_android_lib
4021 $(call gb_Jar_use_external_project,$(1),owncloud-android-lib)
4022 $(call gb_Jar_use_external_jar,$(1),$(call gb_UnpackedTarball_get_dir,owncloud-android-lib)/bin/owncloud-android-library.jar)
4023 endef
4024 define gb_ExternalProject__use_owncloud_android_lib
4025 $(call gb_ExternalProject_use_external_project,$(1),owncloud_android_lib)
4026 endef
4028 endif
4030 ifneq ($(ENABLE_ONLINE_UPDATE_MAR),)
4031 ifneq ($(SYSTEM_BZIP2),)
4033 define gb_LinkTarget__use_bzip2
4034 $(call gb_LinkTarget_set_include,$(1),\
4035 $(BZIP2_CFLAGS) \
4036 $$(INCLUDE) \
4038 $(call gb_LinkTarget_add_libs,$(1),$(BZIP2_LIBS))
4040 endef
4042 gb_ExternalProject__use_bzip2 :=
4044 else # !SYSTEM_BZIP2
4046 define gb_LinkTarget__use_bzip2
4047 $(call gb_LinkTarget_set_include,$(1),\
4048 -I$(call gb_UnpackedTarball_get_dir,bzip2) \
4049 $$(INCLUDE) \
4052 ifeq ($(COM),MSC)
4053 $(call gb_LinkTarget_add_libs,$(1),\
4054 $(call gb_UnpackedTarball_get_dir,bzip2)/libbz2.lib \
4056 else
4057 $(call gb_LinkTarget_add_libs,$(1),\
4058 -L$(call gb_UnpackedTarball_get_dir,bzip2) -lbz2 \
4060 endif
4062 $(call gb_LinkTarget_use_external_project,$(1),bzip2)
4063 endef
4065 define gb_ExternalProject__use_bzip2
4066 $(call gb_ExternalProject_use_external_project,$(1),bzip2)
4067 endef
4069 endif
4070 endif
4072 define gb_LinkTarget__use_clew
4073 $(call gb_LinkTarget_set_include,$(1), \
4074 -I$(SRCDIR)/external/clew/source/include \
4075 $$(INCLUDE) \
4077 $(call gb_LinkTarget_use_libraries,$(1),clew)
4078 endef
4080 ifneq ($(ENABLE_PDFIUM),)
4081 define gb_LinkTarget__use_pdfium
4082 $(call gb_LinkTarget_set_include,$(1),\
4083 -I$(call gb_UnpackedTarball_get_dir,pdfium)/public \
4084 $$(INCLUDE) \
4086 $(call gb_LinkTarget_use_libraries,$(1),pdfium)
4087 endef
4088 $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo,\
4089 pdfium \
4091 endif
4093 # vim: set noet sw=4 ts=4: