deleted code that was commented out
[LibreOffice.git] / RepositoryExternal.mk
blob0217196f2c1cb1b41cfb470810d506838927e8d4
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.
30 # External headers
32 ifeq ($(ENABLE_OPENCL),TRUE)
34 define gb_LinkTarget__use_opencl
35 $(call gb_LinkTarget_set_include,$(1),\
36 $$(INCLUDE) \
37 $(OPENCL_CFLAGS) \
39 $(call gb_LinkTarget_add_libs,$(1),$(OPENCL_LIBS))
41 endef
43 else # ENABLE_OPENCL != TRUE
45 gb_LinkTarget__use_opencl :=
47 endif
49 ifeq ($(SYSTEM_MARIADB),YES)
51 define gb_LinkTarget__use_mariadb
52 $(call gb_LinkTarget_set_include,$(1),\
53 $$(INCLUDE) \
54 $(MARIADB_CFLAGS) \
56 $(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
58 endef
59 gb_ExternalProject__use_mariadb :=
61 else # !SYSTEM_MARIADB
63 define gb_LinkTarget__use_mariadb
64 $(call gb_LinkTarget_set_include,$(1),\
65 $$(INCLUDE) \
66 $(MARIADB_CFLAGS) \
68 $(call gb_LinkTarget_use_static_libraries,$(1),\
69 mariadblib \
72 endef
73 define gb_ExternalProject__use_mariadb
74 $(call gb_ExternalProject_use_static_libraries,$(1),mariadblib)
76 endef
78 endif # SYSTEM_MARIADB
81 ifeq ($(SYSTEM_MESA_HEADERS),YES)
83 gb_LinkTarget__use_mesa_headers :=
85 else
87 define gb_LinkTarget__use_mesa_headers
88 $(call gb_LinkTarget_set_include,$(1),\
89 -I$(SRCDIR)/Mesa/inc \
90 $$(INCLUDE) \
93 endef
95 endif
97 ifeq ($(SYSTEM_NPAPI_HEADERS),YES)
99 # yes this uses internal headers too...
100 # they are split across 2 dirs for this reason
101 define gb_LinkTarget__use_npapi_headers
102 $(call gb_LinkTarget_set_include,$(1),\
103 $(NPAPI_HEADERS_CFLAGS) \
104 -I$(SRCDIR)/np_sdk \
105 $$(INCLUDE) \
108 endef
110 else #!SYSTEM_NPAPI_HEADERS
112 define gb_LinkTarget__use_npapi_headers
113 $(call gb_LinkTarget_set_include,$(1),\
114 -I$(SRCDIR)/np_sdk/inc \
115 -I$(SRCDIR)/np_sdk \
116 $$(INCLUDE) \
119 endef
121 endif #SYSTEM_NPAPI_HEADERS
123 ifeq ($(SYSTEM_ODBC_HEADERS),YES)
125 define gb_LinkTarget__use_odbc_headers
126 $(call gb_LinkTarget_add_defs,$(1),\
127 -DSYSTEM_ODBC_HEADERS \
130 endef
132 else
134 define gb_LinkTarget__use_odbc_headers
135 $(call gb_LinkTarget_set_include,$(1),\
136 -I$(SRCDIR)/unixODBC/inc \
137 $$(INCLUDE) \
140 endef
142 endif
144 ifeq ($(SYSTEM_VIGRA),YES)
146 gb_LinkTarget__use_vigra_headers :=
148 else
150 define gb_LinkTarget__use_vigra_headers
151 $(call gb_LinkTarget_use_unpacked,$(1),vigra)
152 $(call gb_LinkTarget_set_include,$(1),\
153 -I$(call gb_UnpackedTarball_get_dir,vigra/include) \
154 $$(INCLUDE) \
157 endef
159 endif
161 ifeq ($(SYSTEM_MDDS),YES)
163 gb_LinkTarget__use_mdds_headers :=
165 else
167 define gb_LinkTarget__use_mdds_headers
168 $(call gb_LinkTarget_use_unpacked,$(1),mdds)
169 $(call gb_LinkTarget_set_include,$(1),\
170 -I$(call gb_UnpackedTarball_get_dir,mdds/include) \
171 $$(INCLUDE) \
174 endef
176 endif
178 ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
180 define gb_LinkTarget__use_sane_headers
181 $(call gb_LinkTarget_set_include,$(1),\
182 -I$(SRCDIR)/$(if $(filter WNT,$(OS)),twain,sane)/inc \
183 $$(INCLUDE) \
186 endef
188 else
190 gb_LinkTarget__use_sane_headers :=
192 endif
194 # External libraries
196 ifeq ($(SYSTEM_CPPUNIT),YES)
198 define gb_LinkTarget__use_cppunit
199 $(call gb_LinkTarget_set_include,$(1),\
200 $$(INCLUDE) \
201 $(CPPUNIT_CFLAGS) \
204 $(call gb_LinkTarget_add_libs,$(1),\
205 $(CPPUNIT_LIBS) \
208 endef
210 else
212 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
213 cppunit \
216 define gb_LinkTarget__use_cppunit
217 $(call gb_LinkTarget_use_package,$(1),cppunit)
219 $(call gb_LinkTarget_use_libraries,$(1),\
220 cppunit \
222 $(call gb_LinkTarget_set_include,$(1),\
223 -I$(call gb_UnpackedTarball_get_dir,cppunit/include)\
224 $$(INCLUDE) \
227 endef
229 endif
231 define gb_LinkTarget__use_iconv
232 $(call gb_LinkTarget_add_libs,$(1),-liconv)
234 endef
236 ifeq ($(SYSTEM_MARIADB),YES)
238 define gb_LinkTarget__use_mysql
240 $(call gb_LinkTarget_add_defs,$(1),\
241 -DSYSTEM_MARIADB \
244 $(call gb_LinkTarget_add_libs,$(1),\
245 $(MARIADB_LIBS) \
248 $(call gb_LinkTarget_set_include,$(1),\
249 $(MARIADB_CFLAGS) \
250 $$(INCLUDE) \
252 endef
254 else
256 define gb_LinkTarget__use_mysql
258 $(call gb_LinkTarget_set_include,$(1),\
259 $$(INCLUDE) \
262 endef
264 endif
266 ifeq ($(SYSTEM_MYSQL_CPPCONN),YES)
268 define gb_LinkTarget__use_mysqlcppconn
269 $(call gb_LinkTarget_add_libs,$(1),\
270 -lmysqlcppconn \
273 $(call gb_LinkTarget_add_defs,$(1),\
274 -DSYSTEM_MYSQL_CPPCONN \
276 endef
278 else
280 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
281 mysqlcppconn \
284 # note: this does not link mysqlcppconn, it is loaded via osl_loadModuleRelative
285 define gb_LinkTarget__use_mysqlcppconn
287 $(call gb_LinkTarget_use_unpacked,$(1),mysqlcppconn)
289 $(call gb_LinkTarget_add_defs,$(1),\
290 -DCPPCONN_LIB_BUILD \
293 $(call gb_LinkTarget_set_include,$(1),\
294 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn) \
295 -I$(call gb_UnpackedTarball_get_dir,mysqlcppconn)/cppconn \
296 $$(INCLUDE) \
299 endef
301 endif
303 ifeq ($(SYSTEM_ZLIB),YES)
305 define gb_LinkTarget__use_zlib
306 $(call gb_LinkTarget_add_defs,$(1),\
307 -DSYSTEM_ZLIB \
309 $(call gb_LinkTarget_add_libs,$(1),-lz)
311 endef
313 # nothing on system
314 define gb_LinkTarget__use_zlib_x64
316 endef
318 gb_ExternalProject__use_zlib :=
320 else # !SYSTEM_ZLIB
322 define gb_LinkTarget__use_zlib_multiarch
323 $(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
325 $(call gb_LinkTarget_set_include,$(1),\
326 $(ZLIB_CFLAGS) \
327 $$(INCLUDE) \
330 $(call gb_LinkTarget_use_static_libraries,$(1),\
331 $(2) \
334 endef
336 define gb_LinkTarget__use_zlib
337 $(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
339 endef
341 define gb_LinkTarget__use_zlib_x64
342 $(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
344 endef
346 define gb_ExternalProject__use_zlib
347 $(call gb_ExternalProject_use_static_libraries,$(1),zlib)
349 endef
351 endif # SYSTEM_ZLIB
354 ifeq ($(SYSTEM_JPEG),YES)
356 define gb_LinkTarget__use_jpeg
357 $(call gb_LinkTarget_add_libs,$(1),-ljpeg)
358 $(call gb_LinkTarget_set_ldflags,$(1),\
359 $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
362 endef
364 else # !SYSTEM_JPEG
366 define gb_LinkTarget__use_jpeg
367 $(call gb_LinkTarget_set_include,$(1),\
368 -I$(call gb_UnpackedTarball_get_dir,jpeg) \
369 $$(INCLUDE) \
372 $(call gb_LinkTarget_use_static_libraries,$(1),\
373 jpeg \
376 endef
378 endif # SYSTEM_JPEG
380 ifeq ($(SYSTEM_MYTHES),YES)
382 define gb_LinkTarget__use_mythes
383 $(call gb_LinkTarget_set_include,$(1),\
384 $$(INCLUDE) \
385 $(MYTHES_CFLAGS) \
387 $(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
389 endef
391 else # !SYSTEM_MYTHES
393 define gb_LinkTarget__use_mythes
394 $(call gb_LinkTarget_set_include,$(1),\
395 -I$(call gb_UnpackedTarball_get_dir,mythes) \
396 $$(INCLUDE) \
398 $(call gb_LinkTarget_use_package,$(1),\
399 mythes \
401 $(call gb_LinkTarget_use_static_libraries,$(1),\
402 mythes \
405 endef
407 endif # SYSTEM_MYTHES
410 ifeq ($(SYSTEM_EXPAT),YES)
412 define gb_LinkTarget__use_expat_impl
413 $(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
415 $(call gb_LinkTarget_add_defs,$(1),\
416 -DSYSTEM_EXPAT \
419 $(call gb_LinkTarget_add_libs,$(1),-lexpat)
421 endef
423 gb_ExternalProject__use_expat :=
425 else # !SYSTEM_EXPAT
427 define gb_LinkTarget__use_expat_impl
428 $(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
430 $(call gb_LinkTarget_set_include,$(1),\
431 -I$(call gb_UnpackedTarball_get_dir,expat)/lib \
432 $$(INCLUDE) \
435 $(call gb_LinkTarget_use_static_libraries,$(1),\
436 $(2) \
439 endef
441 define gb_ExternalProject__use_expat
442 $(call gb_ExternalProject_use_static_libraries,$(1),expat)
444 endef
446 endif # SYSTEM_EXPAT
448 define gb_LinkTarget__use_expat
449 $(call gb_LinkTarget__use_expat_impl,$(1),expat)
451 endef
453 define gb_LinkTarget__use_expat_x64
454 $(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
456 endef
458 ifeq ($(SYSTEM_HYPH),YES)
460 define gb_LinkTarget__use_hyphen
461 $(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
463 endef
465 else # !SYSTEM_HYPH
467 define gb_LinkTarget__use_hyphen
468 $(call gb_LinkTarget_use_unpacked,$(1),hyphen)
469 $(call gb_LinkTarget_set_include,$(1),\
470 -I$(call gb_UnpackedTarball_get_dir,hyphen)\
471 $$(INCLUDE) \
473 $(call gb_LinkTarget_use_static_libraries,$(1),\
474 hyphen \
477 endef
479 endif # SYSTEM_HYPH
481 ifeq ($(SYSTEM_HUNSPELL),YES)
483 define gb_LinkTarget__use_hunspell
484 $(call gb_LinkTarget_set_include,$(1),\
485 $$(INCLUDE) \
486 $(HUNSPELL_CFLAGS) \
488 $(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
490 endef
492 else # !SYSTEM_HUNSPELL
494 define gb_LinkTarget__use_hunspell
495 $(call gb_LinkTarget_add_defs,$(1),\
496 -DHUNSPELL_STATIC \
498 $(call gb_LinkTarget_use_unpacked,$(1),hunspell)
499 $(call gb_LinkTarget_set_include,$(1),\
500 -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
501 $$(INCLUDE) \
503 $(call gb_LinkTarget_use_static_libraries,$(1),\
504 hunspell \
507 endef
509 endif # SYSTEM_HUNSPELL
512 ifeq ($(SYSTEM_BOOST),YES)
514 define gb_LinkTarget__use_boostdatetime
515 $(call gb_LinkTarget_set_include,$(1),\
516 $$(INCLUDE) \
517 $(BOOST_CPPFLAGS) \
520 $(call gb_LinkTarget_add_ldflags,$(1),\
521 $(BOOST_LDFLAGS) \
524 $(call gb_LinkTarget_add_libs,$(1),\
525 $(BOOST_DATE_TIME_LIB) \
528 endef
530 define gb_LinkTarget__use_boostsystem
531 $(call gb_LinkTarget_set_include,$(1),\
532 $$(INCLUDE) \
533 $(BOOST_CPPFLAGS) \
536 $(call gb_LinkTarget_add_ldflags,$(1),\
537 $(BOOST_LDFLAGS) \
540 $(call gb_LinkTarget_add_libs,$(1),\
541 $(BOOST_SYSTEM_LIB) \
544 endef
546 gb_ExternalProject__use_boostsystem :=
548 define gb_LinkTarget__use_boost_headers
549 $(call gb_LinkTarget_set_include,$(1),\
550 $$(INCLUDE) \
551 $(BOOST_CPPFLAGS) \
554 endef
556 gb_ExternalProject__use_boost_headers:=
558 else # !SYSTEM_BOOST
560 ifeq ($(OS),WNT)
561 define gb_LinkTarget__use_boostthread
562 $(call gb_LinkTarget_add_defs,$(1),\
563 -DBOOST_ALL_NO_LIB \
566 $(call gb_LinkTarget_use_static_libraries,$(1),\
567 boostthread \
569 endef
570 endif
572 define gb_LinkTarget__use_boostdatetime
573 $(call gb_LinkTarget_add_defs,$(1),\
574 -DBOOST_ALL_NO_LIB \
577 $(call gb_LinkTarget_use_static_libraries,$(1),\
578 boostdatetime \
581 endef
583 define gb_LinkTarget__use_boostsystem
584 $(call gb_LinkTarget_add_defs,$(1),\
585 -DBOOST_ALL_NO_LIB \
588 $(call gb_LinkTarget_use_static_libraries,$(1),\
589 boostsystem \
592 endef
594 define gb_ExternalProject__use_boostsystem
595 $(call gb_ExternalProject_use_static_libraries,$(1),boostsystem)
596 endef
598 define gb_LinkTarget__use_boost_headers
599 $(call gb_LinkTarget_use_unpacked,$(1),boost)
600 $(call gb_LinkTarget_set_include,$(1),\
601 -I$(call gb_UnpackedTarball_get_dir,boost) \
602 $$(INCLUDE) \
605 endef
607 define gb_ExternalProject__use_boost_headers
608 $(call gb_ExternalProject_get_preparation_target,$(1)) :| $(call gb_UnpackedTarball_get_final_target,boost)
610 endef
611 endif # SYSTEM_BOOST
614 ifeq ($(SYSTEM_CMIS),YES)
616 define gb_LinkTarget__use_cmis
617 $(call gb_LinkTarget_set_include,$(1),\
618 $$(INCLUDE) \
619 $(CMIS_CFLAGS) \
621 $(call gb_LinkTarget_add_libs,$(1),$(CMIS_LIBS))
623 endef
625 else # !SYSTEM_CMIS
627 define gb_LinkTarget__use_cmis
628 $(call gb_LinkTarget_set_include,$(1),\
629 -I$(call gb_UnpackedTarball_get_dir,cmis)/src \
630 $$(INCLUDE) \
632 $(call gb_LinkTarget_use_static_libraries,$(1),\
633 cmislib \
636 endef
638 endif # SYSTEM_CMIS
640 ifeq ($(OS)$(COM),WNTGCC)
642 define gb_LinkTarget__use_jawt
643 $(call gb_LinkTarget_use_packages,$(1),\
644 jawt \
647 endef
649 else # $(OS)$(COM) != WNTGCC
651 gb_LinkTarget__use_jawt :=
653 endif # $(OS)$(COM) = WNTGCC
656 ifeq ($(SYSTEM_LIBATOMIC_OPS),YES)
658 define gb_LinkTarget__use_libatomic_ops
659 $(call gb_LinkTarget_set_include,$(1),\
660 $$(INCLUDE) \
661 $(LIBATOMIC_OPS_CFLAGS) \
663 $(call gb_LinkTarget_add_libs,$(1), $(LIBATOMIC_OPS_LIBS))
665 endef
666 gb_ExternalProject__use_libatomic_ops :=
668 else # !SYSTEM_LIBATOMIC_OPS
670 $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
671 libatomic-ops-7.2d \
675 define gb_LinkTarget__use_libatomic_ops
676 $(call gb_LinkTarget_set_include,$(1),\
677 $(LIBATOMIC_OPS_CFLAGS) \
678 $$(INCLUDE) \
679 $(LIBATOMIC_OPS_CFLAGS) \
681 $(call gb_LinkTarget_use_package,$(1),\
682 libatomic_ops \
684 $(call gb_LinkTarget_use_static_libraries,$(1),\
685 libatomic_ops \
688 endef
690 define gb_ExternalProject__use_libatomic_ops
691 $(call gb_ExternalProject_use_package,$(1),libatomic_ops)
693 endef
695 endif # SYSTEM_LIBATOMIC_OPS
698 ifeq ($(SYSTEM_LIBEXTTEXTCAT),YES)
700 define gb_LinkTarget__use_libexttextcat
701 $(call gb_LinkTarget_set_include,$(1),\
702 $$(INCLUDE) \
703 $(LIBEXTTEXTCAT_CFLAGS) \
705 $(call gb_LinkTarget_add_defs,$(1),\
706 -DSYSTEM_LIBEXTTEXTCAT \
708 $(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
710 endef
712 else # !SYSTEM_LIBEXTTEXTCAT
714 define gb_LinkTarget__use_libexttextcat
715 $(call gb_LinkTarget_use_static_libraries,$(1),\
716 exttextcat \
719 $(call gb_LinkTarget_set_include,$(1),\
720 -I$(call gb_UnpackedTarball_get_dir,exttextcat/src) \
721 $$(INCLUDE) \
724 endef
726 endif # SYSTEM_LIBEXTTEXTCAT
729 ifeq ($(SYSTEM_LIBXML),YES)
731 define gb_LinkTarget__use_libxml2
732 $(call gb_LinkTarget_add_defs,$(1),\
733 -DSYSTEM_LIBXML \
735 $(call gb_LinkTarget_set_include,$(1),\
736 $$(INCLUDE) \
737 $(LIBXML_CFLAGS) \
739 $(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
741 endef
742 gb_ExternalProject__use_libxml2:=
744 else # !SYSTEM_LIBXML
746 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
747 xml2 \
750 define gb_LinkTarget__use_libxml2
751 $(call gb_LinkTarget_use_package,$(1),xml2)
752 $(call gb_LinkTarget_use_libraries,$(1),\
753 xml2 \
755 $(call gb_LinkTarget_set_include,$(1),\
756 $$(INCLUDE) \
757 -I$(call gb_UnpackedTarball_get_dir,xml2)/include \
760 endef
761 define gb_ExternalProject__use_libxml2
762 $(call gb_ExternalProject_use_package,$(1),xml2)
764 endef
766 endif # SYSTEM_LIBXML
769 ifeq ($(SYSTEM_LIBXSLT),YES)
771 define gb_LinkTarget__use_libxslt
772 $(call gb_LinkTarget_set_include,$(1),\
773 $$(INCLUDE) \
774 $(LIBXSLT_CFLAGS) \
776 $(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
778 endef
780 define gb_LinkTarget__use_libexslt
781 $(call gb_LinkTarget_set_include,$(1),\
782 $$(INCLUDE) \
783 $(LIBEXSLT_CFLAGS) \
786 $(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
788 endef
790 else # !SYSTEM_LIBXSLT
792 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
793 exslt \
794 xslt \
797 define gb_LinkTarget__use_libxslt
798 $(call gb_LinkTarget_use_package,$(1),xslt)
799 $(call gb_LinkTarget_set_include,$(1),\
800 $$(INCLUDE) \
801 -I$(call gb_UnpackedTarball_get_dir,xslt) \
803 $(call gb_LinkTarget_use_libraries,$(1),\
804 xslt \
807 endef
809 define gb_LinkTarget__use_libexslt
810 $(call gb_LinkTarget_use_package,$(1),xslt)
811 $(call gb_LinkTarget_set_include,$(1),\
812 $$(INCLUDE) \
813 -I$(call gb_UnpackedTarball_get_dir,xslt) \
816 $(call gb_LinkTarget_use_libraries,$(1),\
817 exslt \
820 endef
822 endif # SYSTEM_LIBXSLT
824 define gb_LinkTarget__use_glib
825 $(error gb_LinkTarget__use_glib should not be called any more)
826 endef
828 ifeq ($(ENABLE_LIBLANGTAG),TRUE)
830 ifeq ($(SYSTEM_LIBLANGTAG),YES)
832 define gb_LinkTarget__use_liblangtag
833 $(call gb_LinkTarget_set_include,$(1),\
834 $$(INCLUDE) \
835 $(LIBLANGTAG_CFLAGS) \
838 $(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
840 endef
842 else # !SYSTEM_LIBLANGTAG
844 define gb_LinkTarget__use_liblangtag
845 $(call gb_LinkTarget_use_unpacked,$(1),langtag)
846 $(call gb_LinkTarget_set_include,$(1),\
847 -I$(call gb_UnpackedTarball_get_dir,langtag) \
848 $$(INCLUDE) \
850 $(call gb_LinkTarget_use_static_libraries,$(1),\
851 langtag \
854 endef
856 endif # SYSTEM_LIBLANGTAG
858 else
860 gb_LinkTarget__use_liblangtag :=
862 endif # ENABLE_LIBLANGTAG
865 ifeq ($(SYSTEM_NEON),YES)
867 define gb_LinkTarget__use_neon
868 $(call gb_LinkTarget_add_defs,$(1),\
869 -DNEON_VERSION=0x$(NEON_VERSION) \
870 -DSYSTEM_NEON \
872 $(call gb_LinkTarget_set_include,$(1),\
873 $$(INCLUDE) \
874 $(NEON_CFLAGS) \
877 $(call gb_LinkTarget_add_libs,$(1),$(NEON_LIBS))
879 endef
881 else # !SYSTEM_NEON
883 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
884 neon \
887 define gb_LinkTarget__use_neon
888 $(call gb_LinkTarget_use_unpacked,$(1),neon)
889 $(call gb_LinkTarget_set_include,$(1),\
890 -I$(call gb_UnpackedTarball_get_dir,neon/src) \
891 $$(INCLUDE) \
893 $(call gb_LinkTarget_use_libraries,$(1),\
894 neon \
897 endef
899 endif # SYSTEM_NEON
902 ifeq ($(SYSTEM_REDLAND),YES)
904 define gb_LinkTarget__use_librdf
905 $(call gb_LinkTarget_add_defs,$(1),\
906 -DSYSTEM_REDLAND \
908 $(call gb_LinkTarget_set_include,$(1),\
909 $$(INCLUDE) \
910 $(REDLAND_CFLAGS) \
912 $(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
914 endef
916 gb_LinkTarget__use_redland_headers:=
918 gb_LinkTarget__use_raptor_headers:=
920 gb_LinkTarget__use_rasqal_headers:=
922 else # !SYSTEM_REDLAND
924 define gb_LinkTarget__use_redland_headers
925 $(call gb_LinkTarget_set_include,$(1),\
926 -I$(call gb_UnpackedTarball_get_dir,redland)/src \
927 $$(INCLUDE) \
930 endef
932 define gb_LinkTarget__use_raptor_headers
933 $(call gb_LinkTarget_set_include,$(1),\
934 -I$(call gb_UnpackedTarball_get_dir,raptor)/src \
935 $$(INCLUDE) \
938 endef
940 define gb_LinkTarget__use_rasqal_headers
941 $(call gb_LinkTarget_set_include,$(1),\
942 -I$(call gb_UnpackedTarball_get_dir,rasqal)/src \
943 $$(INCLUDE) \
946 endef
948 ifneq ($(OS),ANDROID)
950 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
951 raptor2 \
952 rasqal \
953 rdf \
956 define gb_LinkTarget__use_librdf
957 $(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
958 $(call gb_LinkTarget_use_libraries,$(1),\
959 raptor2 \
960 rdf \
963 endef
965 else # ANDROID
967 define gb_LinkTarget__use_librdf
968 $(call gb_LinkTarget_use_packages,$(1),raptor rasqal redland)
969 $(call gb_LinkTarget_use_static_libraries,$(1),\
970 rdf \
971 rasqal \
972 raptor2 \
975 endef
977 endif # ANDROID
979 endif # SYSTEM_REDLAND
982 ifeq ($(SYSTEM_CAIRO),YES)
984 define gb_LinkTarget__use_cairo
985 $(call gb_LinkTarget_set_include,$(1),\
986 $$(INCLUDE) \
987 $(CAIRO_CFLAGS) \
989 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
990 $(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
992 endef
994 else ifeq ($(SYSTEM_CAIRO),NO)
996 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
997 cairo \
998 $(if $(filter-out MACOSX WNT,$(OS)), \
999 pixman-1 \
1003 define gb_LinkTarget__use_cairo
1004 $(call gb_LinkTarget_use_package,$(1),cairo)
1005 $(call gb_LinkTarget_use_package,$(1),pixman)
1006 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
1007 $(call gb_LinkTarget_set_include,$(1),\
1008 -I$(call gb_UnpackedTarball_get_dir,cairo) \
1009 -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
1010 $$(INCLUDE) \
1012 $(call gb_LinkTarget_use_libraries,$(1),\
1013 cairo \
1014 $(if $(filter-out MACOSX WNT,$(OS)), \
1015 pixman-1 \
1019 endef
1021 endif # SYSTEM_CAIRO
1023 ifeq ($(SYSTEM_FREETYPE),YES)
1025 define gb_LinkTarget__use_freetype_headers
1026 $(call gb_LinkTarget_set_include,$(1),\
1027 $$(INCLUDE) \
1028 $(FREETYPE_CFLAGS) \
1031 endef
1033 define gb_LinkTarget__use_freetype
1034 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
1035 $(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
1037 endef
1039 else # ! SYSTEM_FREETYPE
1041 define gb_LinkTarget__use_freetype_headers
1042 $(call gb_LinkTarget_set_include,$(1),\
1043 -I$(call gb_UnpackedTarball_get_dir,freetype)/include \
1044 $$(INCLUDE) \
1047 endef
1049 define gb_LinkTarget__use_freetype
1050 $(call gb_LinkTarget_use_external,$(1),freetype_headers)
1051 $(call gb_LinkTarget_use_static_libraries,$(1),freetype)
1053 endef
1055 endif # SYSTEM_FREETYPE
1057 ifeq ($(SYSTEM_FONTCONFIG),YES)
1059 define gb_LinkTarget__use_fontconfig
1060 $(call gb_LinkTarget_set_include,$(1),\
1061 $$(INCLUDE) \
1062 $(FONTCONFIG_CFLAGS) \
1065 $(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
1067 endef
1069 else # ! SYSTEM_FONTCONFIG
1071 define gb_LinkTarget__use_fontconfig
1072 $(call gb_LinkTarget_set_include,$(1),\
1073 -I$(call gb_UnpackedTarball_get_dir,fontconfig) \
1074 $$(INCLUDE) \
1077 $(call gb_LinkTarget_use_static_libraries,$(1),fontconfig)
1079 endef
1081 endif # SYSTEM_FONTCONFIG
1083 ifeq ($(SYSTEM_GRAPHITE),YES)
1085 define gb_LinkTarget__use_graphite
1086 $(call gb_LinkTarget_set_include,$(1),\
1087 $$(INCLUDE) \
1088 $(GRAPHITE_CFLAGS) \
1090 $(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
1092 endef
1094 else ifeq ($(SYSTEM_GRAPHITE),NO)
1096 define gb_LinkTarget__use_graphite
1097 $(call gb_LinkTarget_use_unpacked,$(1),graphite)
1098 $(call gb_LinkTarget_set_include,$(1),\
1099 -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
1100 $$(INCLUDE) \
1102 $(call gb_LinkTarget_use_static_libraries,$(1),\
1103 graphite \
1106 endef
1108 else # DISABLED GRAPHITE
1110 gb_LinkTarget__use_graphite :=
1112 endif # SYSTEM_GRAPHITE
1114 ifeq ($(SYSTEM_ICU),YES)
1116 gb_LinkTarget__use_icu_headers:=
1117 gb_ExternalProject__use_icu:=
1119 define gb_LinkTarget__use_icudata
1120 $(call gb_LinkTarget_add_libs,$(1),-licudata)
1122 endef
1123 define gb_LinkTarget__use_icui18n
1124 $(call gb_LinkTarget_add_libs,$(1),-licui18n)
1126 endef
1127 define gb_LinkTarget__use_icutu
1128 $(call gb_LinkTarget_add_libs,$(1),-licutu)
1130 endef
1131 define gb_LinkTarget__use_icuuc
1132 $(call gb_LinkTarget_add_libs,$(1),-licuuc)
1134 endef
1136 else # !SYSTEM_ICU
1138 ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
1139 gb_ICU_suffix:=lo
1140 else
1141 gb_ICU_suffix:=
1142 endif
1144 define gb_LinkTarget__use_icu_headers
1145 $(call gb_LinkTarget_use_unpacked,$(1),icu)
1146 $(call gb_LinkTarget_set_include,$(1),\
1147 -I$(call gb_UnpackedTarball_get_dir,icu)/source \
1148 -I$(call gb_UnpackedTarball_get_dir,icu)/source/i18n \
1149 -I$(call gb_UnpackedTarball_get_dir,icu)/source/common \
1150 $$(INCLUDE) \
1153 endef
1155 define gb_ExternalProject__use_icu
1156 $(call gb_ExternalProject_use_package,$(1),icu)
1158 endef
1160 # icudata and icui18n is called icudt and icuin when built with MSVC :-/
1161 ifeq ($(OS)$(COM),WNTMSC)
1162 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1163 icudt \
1164 icuin \
1167 define gb_LinkTarget__use_icudata
1168 $(call gb_LinkTarget_use_package,$(1),icu)
1169 $(call gb_LinkTarget_use_libraries,$(1),\
1170 icudt \
1173 endef
1174 define gb_LinkTarget__use_icui18n
1175 $(call gb_LinkTarget_use_package,$(1),icu)
1176 $(call gb_LinkTarget_use_libraries,$(1),\
1177 icuin \
1180 endef
1181 else
1182 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1183 icudata$(gb_ICU_suffix) \
1184 icui18n$(gb_ICU_suffix) \
1187 define gb_LinkTarget__use_icudata
1188 $(call gb_LinkTarget_use_package,$(1),icu)
1189 $(call gb_LinkTarget_use_libraries,$(1),\
1190 icudata$(gb_ICU_suffix) \
1193 endef
1194 define gb_LinkTarget__use_icui18n
1195 $(call gb_LinkTarget_use_package,$(1),icu)
1196 $(call gb_LinkTarget_use_libraries,$(1),\
1197 icui18n$(gb_ICU_suffix) \
1200 endef
1201 endif
1203 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1204 icutu$(gb_ICU_suffix) \
1205 icuuc$(gb_ICU_suffix) \
1208 define gb_LinkTarget__use_icutu
1209 $(call gb_LinkTarget_use_package,$(1),icu)
1210 $(call gb_LinkTarget_use_libraries,$(1),\
1211 icutu$(gb_ICU_suffix) \
1214 endef
1215 define gb_LinkTarget__use_icuuc
1216 $(call gb_LinkTarget_use_package,$(1),icu)
1217 $(call gb_LinkTarget_use_libraries,$(1),\
1218 icuuc$(gb_ICU_suffix) \
1221 endef
1223 endif # SYSTEM_ICU
1225 ifeq ($(ENABLE_HARFBUZZ),TRUE)
1226 ifeq ($(SYSTEM_HARFBUZZ),YES)
1228 define gb_LinkTarget__use_harfbuzz
1229 $(call gb_LinkTarget_set_include,$(1),\
1230 $$(INCLUDE) \
1231 $(HARFBUZZ_CFLAGS) \
1233 $(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
1235 endef
1237 else # SYSTEM_HARFBUZZ != YES
1239 define gb_LinkTarget__use_harfbuzz
1240 $(call gb_LinkTarget_set_include,$(1),\
1241 -I$(call gb_UnpackedTarball_get_dir,harfbuzz)/src \
1242 $$(INCLUDE) \
1244 $(call gb_LinkTarget_use_package,$(1),\
1245 harfbuzz \
1247 $(call gb_LinkTarget_use_static_libraries,$(1),\
1248 harfbuzz \
1249 harfbuzz-icu \
1252 endef
1254 endif # SYSTEM_HARFBUZZ
1255 else # ENABLE_HARFBUZZ != YES
1257 gb_LinkTarget__use_harfbuzz :=
1259 endif # ENABLE_HARFBUZZ
1261 ifeq ($(DISABLE_OPENSSL),YES)
1263 gb_ExternalProject__use_openssl:=
1264 gb_LinkTarget__use_openssl_headers:=
1265 gb_LinkTarget__use_openssl:=
1267 else # !DISABLE_OPENSSL
1269 ifeq ($(SYSTEM_OPENSSL),YES)
1271 gb_LinkTarget__use_openssl_headers:=
1272 gb_ExternalProject__use_openssl:=
1274 define gb_LinkTarget__use_openssl
1275 $(call gb_LinkTarget_set_include,$(1),\
1276 $$(INCLUDE) \
1277 $(OPENSSL_CFLAGS) \
1279 $(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
1281 endef
1283 else # !SYSTEM_OPENSSL
1285 ifeq ($(OS),WNT)
1286 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1287 crypto \
1288 ssl \
1290 endif
1292 define gb_ExternalProject__use_openssl
1293 $(call gb_ExternalProject_use_package,$(1),openssl)
1295 endef
1297 define gb_LinkTarget__use_openssl_headers
1298 $(call gb_LinkTarget_set_include,$(1),\
1299 -I$(call gb_UnpackedTarball_get_dir,openssl)/include \
1300 $$(INCLUDE) \
1303 endef
1305 define gb_LinkTarget__use_openssl
1306 $(call gb_LinkTarget_use_package,$(1),openssl)
1307 ifeq ($(OS),WNT)
1308 $(call gb_LinkTarget_use_libraries,$(1),\
1309 crypto \
1310 ssl \
1312 else
1313 $(call gb_LinkTarget_use_static_libraries,$(1),\
1314 crypto \
1315 ssl \
1317 ifeq ($(OS),SOLARIS)
1318 $(call gb_LinkTarget_add_libs,$(1),\
1319 -lnsl \
1320 -lsocket \
1322 endif
1323 endif
1325 endef
1327 endif # SYSTEM_OPENSSL
1328 endif # DISABLE_OPENSSL
1331 ifeq ($(DISABLE_OPENSSL),YES)
1333 define gb_LinkTarget__use_gnutls
1334 $(call gb_LinkTarget_set_include,$(1),\
1335 $$(INCLUDE) \
1336 $(GNUTLS_CFLAGS) \
1339 $(call gb_LinkTarget_add_defs,$(1),\
1340 -DDISABLE_OPENSSL \
1343 $(call gb_LinkTarget_add_libs,$(1),$(GNUTLS_LIBS))
1345 endef
1347 define gb_LinkTarget__use_libgcrypt
1348 $(call gb_LinkTarget_set_include,$(1),\
1349 $$(INCLUDE) \
1350 $(LIBGCRYPT_CFLAGS) \
1353 $(call gb_LinkTarget_add_libs,$(1),$(LIBGCRYPT_LIBS))
1355 endef
1357 else # !DISABLE_OPENSSL
1359 gb_LinkTarget__use_gnutls:=
1360 gb_LinkTarget__use_libgcrypt:=
1362 endif # DISABLE_OPENSSL
1365 ifeq ($(SYSTEM_CDR),YES)
1367 define gb_LinkTarget__use_cdr
1368 $(call gb_LinkTarget_set_include,$(1),\
1369 $$(INCLUDE) \
1370 $(CDR_CFLAGS) \
1372 $(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
1374 endef
1376 else # !SYSTEM_CDR
1378 define gb_LinkTarget__use_cdr
1379 $(call gb_LinkTarget_set_include,$(1),\
1380 -I$(call gb_UnpackedTarball_get_dir,libcdr)/inc \
1381 $$(INCLUDE) \
1383 $(call gb_LinkTarget_use_package,$(1),\
1384 libcdr \
1386 $(call gb_LinkTarget_use_static_libraries,$(1),\
1387 cdr-0.0 \
1390 endef
1392 endif # SYSTEM_CDR
1395 ifeq ($(SYSTEM_ODFGEN),YES)
1397 define gb_LinkTarget__use_odfgen
1398 $(call gb_LinkTarget_set_include,$(1),\
1399 $$(INCLUDE) \
1400 $(ODFGEN_CFLAGS) \
1402 $(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
1404 endef
1406 else # !SYSTEM_ODFGEN
1408 define gb_LinkTarget__use_odfgen
1409 $(call gb_LinkTarget_set_include,$(1),\
1410 -I$(call gb_UnpackedTarball_get_dir,libodfgen)/inc \
1411 $$(INCLUDE) \
1413 $(call gb_LinkTarget_use_package,$(1),\
1414 libodfgen \
1416 $(call gb_LinkTarget_use_static_libraries,$(1),\
1417 odfgen-0.0 \
1420 endef
1422 endif # SYSTEM_ODFGEN
1425 ifeq ($(SYSTEM_MSPUB),YES)
1427 define gb_LinkTarget__use_mspub
1428 $(call gb_LinkTarget_set_include,$(1),\
1429 $$(INCLUDE) \
1430 $(MSPUB_CFLAGS) \
1432 $(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
1434 endef
1436 else # !SYSTEM_MSPUB
1438 define gb_LinkTarget__use_mspub
1439 $(call gb_LinkTarget_set_include,$(1),\
1440 -I$(call gb_UnpackedTarball_get_dir,libmspub)/inc \
1441 $$(INCLUDE) \
1443 $(call gb_LinkTarget_use_package,$(1),\
1444 libmspub \
1446 $(call gb_LinkTarget_use_static_libraries,$(1),\
1447 mspub-0.0 \
1450 endef
1452 endif # SYSTEM_MSPUB
1455 ifeq ($(SYSTEM_VISIO),YES)
1457 define gb_LinkTarget__use_visio
1458 $(call gb_LinkTarget_set_include,$(1),\
1459 $$(INCLUDE) \
1460 $(VISIO_CFLAGS) \
1462 $(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
1464 endef
1466 else # !SYSTEM_VISIO
1468 define gb_LinkTarget__use_visio
1469 $(call gb_LinkTarget_set_include,$(1),\
1470 -I$(call gb_UnpackedTarball_get_dir,libvisio)/inc \
1471 $$(INCLUDE) \
1473 $(call gb_LinkTarget_use_package,$(1),\
1474 libvisio \
1476 $(call gb_LinkTarget_use_static_libraries,$(1),\
1477 visio-0.0 \
1480 endef
1482 endif # SYSTEM_VISIO
1485 ifeq ($(SYSTEM_WPD),YES)
1487 define gb_LinkTarget__use_wpd
1488 $(call gb_LinkTarget_set_include,$(1),\
1489 $$(INCLUDE) \
1490 $(WPD_CFLAGS) \
1492 $(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
1494 endef
1495 gb_ExternalProject__use_wpd :=
1497 else # !SYSTEM_WPD
1499 define gb_LinkTarget__use_wpd
1500 $(call gb_LinkTarget_set_include,$(1),\
1501 $(WPD_CFLAGS) \
1502 $$(INCLUDE) \
1504 $(call gb_LinkTarget_use_package,$(1),\
1505 libwpd \
1507 $(call gb_LinkTarget_use_static_libraries,$(1),\
1508 wpd-0.9 \
1511 endef
1512 define gb_ExternalProject__use_wpd
1513 $(call gb_ExternalProject_use_package,$(1),libwpd)
1515 endef
1517 endif # SYSTEM_WPD
1520 ifeq ($(SYSTEM_WPG),YES)
1522 define gb_LinkTarget__use_wpg
1523 $(call gb_LinkTarget_set_include,$(1),\
1524 $$(INCLUDE) \
1525 $(WPG_CFLAGS) \
1527 $(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
1529 endef
1530 gb_ExternalProject__use_wpg :=
1532 else # !SYSTEM_WPG
1534 define gb_LinkTarget__use_wpg
1535 $(call gb_LinkTarget_set_include,$(1),\
1536 -I$(call gb_UnpackedTarball_get_dir,libwpg)/inc \
1537 $$(INCLUDE) \
1539 $(call gb_LinkTarget_use_package,$(1),\
1540 libwpg \
1542 $(call gb_LinkTarget_use_static_libraries,$(1),\
1543 wpg-0.2 \
1546 endef
1547 define gb_ExternalProject__use_wpg
1548 $(call gb_ExternalProject_use_package,$(1),libwpg)
1550 endef
1552 endif # SYSTEM_WPG
1555 ifeq ($(SYSTEM_WPS),YES)
1557 define gb_LinkTarget__use_wps
1558 $(call gb_LinkTarget_set_include,$(1),\
1559 $$(INCLUDE) \
1560 $(WPS_CFLAGS) \
1562 $(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
1564 endef
1565 gb_ExternalProject__use_wps :=
1567 else # !SYSTEM_WPS
1569 define gb_LinkTarget__use_wps
1570 $(call gb_LinkTarget_set_include,$(1),\
1571 -I$(call gb_UnpackedTarball_get_dir,libwps)/inc \
1572 $$(INCLUDE) \
1574 $(call gb_LinkTarget_use_package,$(1),\
1575 libwps \
1577 $(call gb_LinkTarget_use_static_libraries,$(1),\
1578 wps-0.2 \
1581 endef
1582 define gb_ExternalProject__use_wps
1583 $(call gb_ExternalProject_use_package,$(1),libwps)
1585 endef
1587 endif # SYSTEM_WPS
1590 ifeq ($(SYSTEM_MWAW),YES)
1592 define gb_LinkTarget__use_mwaw
1593 $(call gb_LinkTarget_set_include,$(1),\
1594 $$(INCLUDE) \
1595 $(MWAW_CFLAGS) \
1597 $(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
1599 endef
1601 else # !SYSTEM_MWAW
1603 define gb_LinkTarget__use_mwaw
1604 $(call gb_LinkTarget_set_include,$(1),\
1605 -I$(call gb_UnpackedTarball_get_dir,libmwaw)/inc \
1606 $$(INCLUDE) \
1608 $(call gb_LinkTarget_use_package,$(1),\
1609 libmwaw \
1611 $(call gb_LinkTarget_use_static_libraries,$(1),\
1612 mwaw-0.1 \
1615 endef
1617 endif # SYSTEM_MWAW
1620 ifeq ($(SYSTEM_LCMS2),YES)
1622 define gb_LinkTarget__use_lcms2
1623 $(call gb_LinkTarget_set_include,$(1),\
1624 $$(INCLUDE) \
1625 $(LCMS2_CFLAGS) \
1627 $(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
1629 endef
1631 gb_ExternalProject__use_lcms2 :=
1633 else # !SYSTEM_LCMS2
1635 define gb_ExternalProject__use_lcms2
1636 $(call gb_ExternalProject_use_package,$(1),lcms2)
1638 endef
1640 ifeq ($(OS),ANDROID)
1642 define gb_LinkTarget__use_lcms2
1643 $(call gb_LinkTarget_use_package,$(1),lcms2)
1644 $(call gb_LinkTarget_set_include,$(1),\
1645 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
1646 $$(INCLUDE) \
1648 $(call gb_LinkTarget_use_static_libraries,$(1),\
1649 lcms2 \
1652 endef
1654 else
1656 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1657 lcms2 \
1660 define gb_LinkTarget__use_lcms2
1661 $(call gb_LinkTarget_use_package,$(1),lcms2)
1662 $(call gb_LinkTarget_set_include,$(1),\
1663 -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
1664 $$(INCLUDE) \
1666 $(call gb_LinkTarget_use_libraries,$(1),\
1667 lcms2 \
1670 endef
1672 endif # ANDROID
1673 endif # SYSTEM_LCMS2
1676 ifeq ($(SYSTEM_LPSOLVE),YES)
1678 define gb_LinkTarget__use_lpsolve
1679 $(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
1680 $(call gb_LinkTarget_add_defs,$(1),\
1681 -DSYSTEM_LPSOLVE \
1684 endef
1686 else # !SYSTEM_LPSOLVE
1688 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1689 lpsolve55 \
1692 define gb_LinkTarget__use_lpsolve
1693 $(call gb_LinkTarget_use_unpacked,$(1),lpsolve)
1694 $(call gb_LinkTarget_use_libraries,$(1),\
1695 lpsolve55 \
1697 $(call gb_LinkTarget_set_include,$(1),\
1698 -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
1699 $$(INCLUDE) \
1702 endef
1704 endif # SYSTEM_LPSOLVE
1706 ifeq ($(ENABLE_GIO),TRUE)
1708 define gb_LinkTarget__use_gio
1709 $(call gb_LinkTarget_set_include,$(1),\
1710 $$(INCLUDE) \
1711 $(GIO_CFLAGS) \
1714 $(call gb_LinkTarget_add_defs,$(1),\
1715 -DENABLE_GIO \
1718 $(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
1720 endef
1722 else # ENABLE_GIO
1724 define gb_LinkTarget__use_gio
1726 endef
1728 endif # ENABLE_GIO
1730 ifeq ($(ENABLE_AVAHI),TRUE)
1732 define gb_LinkTarget__use_avahi
1733 $(call gb_LinkTarget_set_include,$(1),\
1734 $$(INCLUDE) \
1735 $(AVAHI_CFLAGS) \
1738 $(call gb_LinkTarget_add_defs,$(1),\
1739 -DENABLE_AVAHI \
1742 $(call gb_LinkTarget_add_libs,$(1),$(AVAHI_LIBS))
1744 endef
1746 else # ENABLE_AVAHI
1748 define gb_LinkTarget__use_AVAHI
1750 endef
1752 endif # ENABLE_AVAHI
1755 define gb_LinkTarget__use_gtk
1756 $(call gb_LinkTarget_set_include,$(1),\
1757 $$(INCLUDE) \
1758 $(GTK_CFLAGS) \
1761 $(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS))
1763 ifeq ($(ENABLE_GTK_PRINT),TRUE)
1765 $(call gb_LinkTarget_add_defs,$(1),-DENABLE_GTK_PRINT)
1767 $(call gb_LinkTarget_set_include,$(1),\
1768 $$(INCLUDE) \
1769 $(GTK_PRINT_CFLAGS) \
1772 $(call gb_LinkTarget_add_libs,$(1),$(GTK_PRINT_LIBS))
1774 endif
1776 endef
1778 define gb_LinkTarget__use_gthread
1779 $(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
1780 endef
1782 ifeq ($(ENABLE_CUPS),TRUE)
1784 define gb_LinkTarget__use_cups
1785 $(call gb_LinkTarget_add_defs,$(1),\
1786 -DENABLE_CUPS \
1789 $(call gb_LinkTarget_add_libs,$(1),\
1790 -lcups \
1793 endef
1795 else # ENABLE_CUPS
1797 define gb_LinkTarget__use_cups
1799 endef
1801 endif # ENABLE_DBUS
1803 ifeq ($(ENABLE_DBUS),TRUE)
1805 define gb_LinkTarget__use_dbus
1806 $(call gb_LinkTarget_set_include,$(1),\
1807 $$(INCLUDE) \
1808 $(DBUS_CFLAGS) \
1811 $(call gb_LinkTarget_add_defs,$(1),\
1812 -DENABLE_DBUS \
1815 ifeq ($(ENABLE_PACKAGEKIT),TRUE)
1816 $(call gb_LinkTarget_add_defs,$(1),\
1817 -DENABLE_PACKAGEKIT \
1819 endif # ENABLE_PACKAGEKIT
1821 $(call gb_LinkTarget_add_libs,$(1),\
1822 $(DBUS_LIBS) \
1825 endef
1827 else # ENABLE_DBUS
1829 define gb_LinkTarget__use_dbus
1831 endef
1833 endif # ENABLE_DBUS
1836 define gb_LinkTarget__use_dbusmenugtk
1837 $(call gb_LinkTarget_set_include,$(1),\
1838 $$(INCLUDE) \
1839 $(DBUSMENUGTK_CFLAGS) \
1842 $(call gb_LinkTarget_add_libs,$(1),$(DBUSMENUGTK_LIBS))
1844 endef
1847 ifeq ($(ENABLE_TELEPATHY),TRUE)
1849 define gb_LinkTarget__use_telepathy
1850 $(call gb_LinkTarget_set_include,$(1),\
1851 $$(INCLUDE) \
1852 $(TELEPATHY_CFLAGS) \
1855 $(call gb_LinkTarget_add_libs,$(1),\
1856 $(TELEPATHY_LIBS) \
1859 endef
1861 else # !ENABLE_TELEPATHY
1863 gb_LinkTarget__use_telepathy :=
1865 endif # ENABLE_TELEPATHY
1867 define gb_LinkTarget__use_croco
1868 $(error gb_LinkTarget__use_croco should not be used any more)
1869 endef
1871 define gb_LinkTarget__use_pango
1872 $(error gb_LinkTarget__use_pango should not be used any more)
1873 endef
1875 define gb_LinkTarget__use_gsf
1876 $(error gb_LinkTarget__use_gsf should not be used any more)
1877 endef
1879 define gb_LinkTarget__use_pixbuf
1880 $(error gb_LinkTarget__use_pixbuf should not be used any more)
1881 endef
1883 ifeq ($(SYSTEM_LIBPNG),YES)
1885 define gb_LinkTarget__use_png
1886 $(call gb_LinkTarget_set_include,$(1),\
1887 $$(INCLUDE) \
1888 $(LIBPNG_CFLAGS) \
1891 $(call gb_LinkTarget_add_libs,$(1),\
1892 $(LIBPNG_LIBS) \
1895 endef
1897 else # !SYSTEM_LIBPNG
1899 define gb_LinkTarget__use_png
1900 $(call gb_LinkTarget_set_include,$(1),\
1901 $(LIBPNG_CFLAGS) \
1902 $$(INCLUDE) \
1904 $(call gb_LinkTarget_use_static_libraries,$(1),\
1905 png \
1907 $(call gb_LinkTarget__use_zlib,$(1))
1909 endef
1911 endif # !SYSTEM_LIBPNG
1914 ifeq ($(SYSTEM_CURL),YES)
1916 define gb_LinkTarget__use_curl
1917 $(call gb_LinkTarget_set_include,$(1),\
1918 $$(INCLUDE) \
1919 $(CURL_CFLAGS) \
1921 $(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
1923 endef
1925 else # !SYSTEM_CURL
1927 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
1928 curl \
1931 define gb_LinkTarget__use_curl
1932 $(call gb_LinkTarget_use_package,$(1),curl)
1933 $(call gb_LinkTarget_set_include,$(1),\
1934 -I$(call gb_UnpackedTarball_get_dir,curl/include) \
1935 $$(INCLUDE) \
1937 $(call gb_LinkTarget_use_libraries,$(1),\
1938 curl \
1941 endef
1943 endif # SYSTEM_CURL
1945 ifeq ($(ENABLE_VALGRIND),TRUE)
1947 define gb_LinkTarget__use_valgrind
1948 $(call gb_LinkTarget_add_defs,$(1),\
1949 -DHAVE_VALGRIND_HEADERS \
1952 $(call gb_LinkTarget_set_include,$(1),\
1953 $$(INCLUDE) \
1954 $(VALGRIND_CFLAGS) \
1957 endef
1959 else # !ENABLE_VALGRIND
1961 define gb_LinkTarget__use_valgrind
1963 endef
1965 endif # ENABLE_VALGRIND
1967 ifeq ($(SYSTEM_POPPLER),YES)
1969 define gb_LinkTarget__use_poppler
1970 $(call gb_LinkTarget_set_include,$(1),\
1971 $(POPPLER_CFLAGS) \
1972 $$(INCLUDE) \
1975 $(call gb_LinkTarget_add_libs,$(1),\
1976 $(POPPLER_LIBS) \
1979 endef
1981 else # !SYSTEM_POPPLER
1983 define gb_LinkTarget__use_poppler
1984 $(call gb_LinkTarget_use_package,$(1),poppler)
1986 $(call gb_LinkTarget_set_include,$(1),\
1987 -I$(call gb_UnpackedTarball_get_dir,poppler) \
1988 -I$(call gb_UnpackedTarball_get_dir,poppler)/poppler \
1989 -I$(call gb_UnpackedTarball_get_dir,poppler)/goo \
1990 $$(INCLUDE) \
1993 $(call gb_LinkTarget_use_static_libraries,$(1),\
1994 fofi \
1995 goo \
1996 poppler \
1999 ifeq ($(OS),MACOSX)
2000 $(call gb_LinkTarget_add_libs,$(1),\
2001 -lobjc \
2003 else ifeq ($(OS),WNT)
2004 $(call gb_LinkTarget_use_system_win32_libs,$(1),\
2005 advapi32 \
2006 gdi32 \
2008 endif
2010 endef
2012 endif # SYSTEM_POPPLER
2015 ifeq ($(SYSTEM_CLUCENE),YES)
2017 define gb_LinkTarget__use_clucene
2018 $(call gb_LinkTarget_add_defs,$(1),\
2019 $(filter-out -I%,$(CLUCENE_CFLAGS)) \
2022 $(call gb_LinkTarget_set_include,$(1),\
2023 $(filter -I%,$(CLUCENE_CFLAGS)) \
2024 $$(INCLUDE) \
2027 $(call gb_LinkTarget_add_libs,$(1),\
2028 $(CLUCENE_LIBS) \
2031 endef
2033 else # !SYSTEM_CLUCENE
2035 define gb_LinkTarget__use_clucene
2036 $(call gb_LinkTarget_set_include,$(1),\
2037 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/core \
2038 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/shared \
2039 -I$(call gb_UnpackedTarball_get_dir,clucene)/src/contribs-lib \
2040 $$(INCLUDE) \
2043 $(call gb_LinkTarget_use_libraries,$(1),\
2044 clucene \
2047 endef
2049 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
2050 clucene \
2053 endif # SYSTEM_CLUCENE
2055 define gb_LinkTarget__use_gobject
2056 $(call gb_LinkTarget_add_libs,$(1),\
2057 $(GOBJECT_LIBS) \
2060 $(call gb_LinkTarget_set_include,$(1),\
2061 $$(INCLUDE) \
2062 $(GOBJECT_CFLAGS) \
2064 endef
2066 ifeq ($(SYSTEM_HSQLDB),YES)
2068 define gb_LinkTarget__use_hsqldb
2070 $(call gb_LinkTarget_add_defs,$(1),\
2071 -DSYSTEM_HSQLDB \
2072 -DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
2075 endef
2077 else # !SYSTEM_HSQLDB
2079 define gb_LinkTarget__use_hsqldb
2081 endef
2083 endif # SYSTEM_HSQLDB
2086 ifeq ($(SYSTEM_OPENLDAP),YES)
2088 define gb_LinkTarget__use_openldap
2090 $(call gb_LinkTarget_add_libs,$(1),\
2091 -lldap \
2092 -llber \
2095 endef
2097 else ifeq ($(SYSTEM_OPENLDAP),NO)
2099 define gb_LinkTarget__use_openldap
2100 $(call gb_LinkTarget_use_unpacked,$(1),openldap)
2101 $(call gb_LinkTarget_set_include,$(1),\
2102 -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
2103 $$(INCLUDE) \
2105 $(call gb_LinkTarget_use_package,$(1),openldap)
2106 $(call gb_LinkTarget_use_static_libraries,$(1),\
2107 ldap \
2108 lber \
2111 endef
2113 else # no openldap
2115 gb_LinkTarget__use_openldap :=
2117 endif # SYSTEM_OPENLDAP
2120 ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE)
2122 ifeq ($(SYSTEM_FIREBIRD),YES)
2124 define gb_LinkTarget__use_libfbembed
2125 $(call gb_LinkTarget_set_include,$(1),\
2126 $(FIREBIRD_CFLAGS) \
2127 $$(INCLUDE) \
2129 $(call gb_LinkTarget_add_libs,$(1),$(FIREBIRD_LIBS))
2131 endef
2133 # gb_LinkTarget__use_atomic_ops :=
2134 # gb_LinkTarget__use_tommath :=
2136 else # !SYSTEM_FIREBIRD
2138 #$(call gb_LinkTarget__use_libatomic_ops,$(1))
2140 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
2141 fbembed \
2144 define gb_LinkTarget__use_libfbembed
2145 $(call gb_LinkTarget_use_package,$(1),firebird)
2146 $(call gb_LinkTarget_set_include,$(1),\
2147 $$(INCLUDE) \
2148 -I$(call gb_UnpackedTarball_get_dir,firebird)/gen/firebird/include \
2150 $(call gb_LinkTarget_use_libraries,$(1),\
2151 fbembed \
2154 endef
2156 # define gb_LinkTarget__use_tommath
2157 # $(call gb_LinkTarget_set_include,$(1),\
2158 # $(TOMMATH_CFLAGS) \
2159 # $$(INCLUDE) \
2162 # $(call gb_LinkTarget_add_libs,$(1),$(TOMMATH_LIBS))
2164 # endef
2166 endif # SYSTEM_FIREBIRD
2168 else # !ENABLE_FIREBIRD_SDBC
2170 gb_LinkTarget__use_firebird :=
2171 # gb_LinkTarget__use_atomic_ops :=
2172 # gb_LinkTarget__use_tommath :=
2174 endif # ENABLE_FIREBIRD_SDBC
2177 ifeq ($(SYSTEM_POSTGRESQL),YES)
2179 define gb_LinkTarget__use_postgresql
2181 $(call gb_LinkTarget_set_include,$(1),\
2182 $(POSTGRESQL_INC) \
2183 $$(INCLUDE) \
2186 $(call gb_LinkTarget_add_libs,$(1),\
2187 -lpq \
2190 $(call gb_LinkTarget_add_ldflags,$(1),\
2191 $(POSTGRESQL_LIB) \
2194 endef
2196 else # !SYSTEM_POSTGRESQL
2198 define gb_LinkTarget__use_postgresql
2200 $(call gb_LinkTarget_use_packages,$(1),\
2201 postgresql \
2204 $(call gb_LinkTarget_set_include,$(1),\
2205 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/include \
2206 -I$(call gb_UnpackedTarball_get_dir,postgresql)/src/interfaces/libpq \
2207 $$(INCLUDE) \
2210 $(call gb_LinkTarget_use_static_libraries,$(1),\
2211 $(if $(filter MSC,$(COM)),lib)pq \
2214 ifeq ($(OS)$(COM),WNTMSC)
2215 $(call gb_LinkTarget_use_external,$(1),openssl)
2217 $(call gb_LinkTarget_use_system_win32_libs,$(1),\
2218 secur32 \
2219 ws2_32 \
2222 endif
2224 endef
2226 endif # SYSTEM_POSTGRESQL
2228 ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
2229 define gb_LinkTarget__use_mozilla
2231 $(call gb_LinkTarget_add_defs,$(1),\
2232 -DMOZILLA_INTERNAL_API \
2235 $(call gb_LinkTarget_set_include,$(1),\
2236 $$(INCLUDE) \
2237 -I$(OUTDIR)/inc/mozilla \
2240 $(call gb_LinkTarget_use_libraries,$(1),\
2241 nspr4 \
2242 xpcom \
2243 xpcom_core \
2246 $(call gb_LinkTarget_use_static_libraries,$(1),\
2247 embed_base_s \
2248 mozreg_s \
2251 $(call gb_LinkTarget_add_defs,$(1),\
2252 -DMOZILLA_CLIENT \
2253 -DMOZ_REFLOW_PERF \
2254 -DMOZ_REFLOW_PERF_DSP \
2255 -DMOZ_XUL \
2256 -DOJI \
2257 -DWIN32 \
2258 -DXP_PC \
2259 -DXP_WIN \
2260 -DXP_WIN32 \
2261 -D_WINDOWS \
2264 ifeq ($(COM),GCC)
2266 $(call gb_LinkTarget_add_cxxflags,$(1),\
2267 -Wall \
2268 -Wcast-align \
2269 -Wconversion \
2270 -Wno-long-long \
2271 -Woverloaded-virtual \
2272 -Wpointer-arith \
2273 -Wsynth \
2274 -fno-rtti \
2277 else
2279 ifneq ($(DBG_LEVEL),0)
2280 $(call gb_LinkTarget_add_defs,$(1),\
2281 -D_STL_NOFORCE_MANIFEST \
2283 endif
2285 $(call gb_LinkTarget_add_libs,$(1),\
2286 $(OUTDIR)/lib/embed_base_s.lib \
2287 $(OUTDIR)/lib/mozreg_s.lib \
2290 endif # !GCC
2292 endef
2294 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE,\
2295 xpcom \
2296 xpcom_core \
2299 endif # DESKTOP
2301 ifeq ($(ENABLE_KDE),TRUE)
2303 define gb_LinkTarget__use_kde
2304 $(call gb_LinkTarget_set_include,$(1),\
2305 $(filter -I%,$(KDE_CFLAGS)) \
2306 $$(INCLUDE) \
2309 $(call gb_LinkTarget_add_defs,$(1),\
2310 $(filter-out -I%,$(KDE_CFLAGS)) \
2313 $(call gb_LinkTarget_add_libs,$(1),\
2314 $(KDE_LIBS) \
2317 ifeq ($(COM),GCC)
2318 $(call gb_LinkTarget_add_cxxflags,$(1),\
2319 -Wno-shadow \
2321 endif
2323 endef
2325 else # !ENABLE_KDE
2327 define gb_LinkTarget__use_kde
2329 endef
2331 endif # ENABLE_KDE
2334 ifeq ($(ENABLE_KDE4),TRUE)
2336 define gb_LinkTarget__use_kde4
2337 $(call gb_LinkTarget_set_include,$(1),\
2338 $(filter -I%,$(KDE4_CFLAGS)) \
2339 $$(INCLUDE) \
2342 $(call gb_LinkTarget_add_defs,$(1),\
2343 $(filter-out -I%,$(KDE4_CFLAGS)) \
2346 $(call gb_LinkTarget_add_libs,$(1),\
2347 $(KDE4_LIBS) \
2350 ifeq ($(COM),GCC)
2351 $(call gb_LinkTarget_add_cxxflags,$(1),\
2352 -Wno-shadow \
2354 endif
2356 endef
2358 else # !ENABLE_KDE4
2360 define gb_LinkTarget__use_kde4
2362 endef
2364 endif # ENABLE_KDE4
2367 ifeq ($(ENABLE_TDE),TRUE)
2369 define gb_LinkTarget__use_tde
2370 $(call gb_LinkTarget_add_libs,$(1),\
2371 $(TDE_LIBS) \
2374 $(call gb_LinkTarget_set_include,$(1),\
2375 $$(INCLUDE) \
2376 $(TDE_CFLAGS) \
2378 endef
2380 else # ! ENABLE_TDE
2382 define gb_LinkTarget__use_tde
2384 endef
2386 endif # ENABLE_TDE
2389 ifeq ($(ENABLE_GCONF),TRUE)
2391 define gb_LinkTarget__use_gconf
2392 $(call gb_LinkTarget_set_include,$(1),\
2393 $(filter -I%,$(GCONF_CFLAGS)) \
2394 $$(INCLUDE) \
2397 $(call gb_LinkTarget_add_defs,$(1),\
2398 $(filter-out -I%,$(GCONF_CFLAGS)) \
2401 $(call gb_LinkTarget_add_libs,$(1),\
2402 $(GCONF_LIBS) \
2405 endef
2407 else # !ENABLE_GCONF
2409 define gb_LinkTarget__use_gconf
2411 endef
2413 endif # ENABLE_GCONF
2416 # PYTHON
2417 # extra python_headers external because pyuno wrapper must not link python
2418 ifeq ($(SYSTEM_PYTHON),YES)
2420 define gb_LinkTarget__use_python_headers
2421 $(call gb_LinkTarget_add_defs,$(1),\
2422 $(filter-out -I%,$(PYTHON_CFLAGS)) \
2425 $(call gb_LinkTarget_set_include,$(1),\
2426 $(filter -I%,$(PYTHON_CFLAGS)) \
2427 $$(INCLUDE) \
2430 endef
2432 define gb_LinkTarget__use_python
2433 $(call gb_LinkTarget__use_python_headers,$(1))
2435 $(call gb_LinkTarget_add_libs,$(1),\
2436 $(PYTHON_LIBS) \
2439 endef
2441 else # !SYSTEM_PYTHON
2443 # depend on external project because on MACOSX the Package is disabled...
2444 define gb_LinkTarget__use_python_headers
2445 $(call gb_LinkTarget_use_external_project,$(1),python3)
2446 $(call gb_LinkTarget_set_include,$(1),\
2447 -I$(call gb_UnpackedTarball_get_dir,python3) \
2448 -I$(call gb_UnpackedTarball_get_dir,python3)/PC \
2449 -I$(call gb_UnpackedTarball_get_dir,python3)/Include \
2450 $$(INCLUDE) \
2453 endef
2455 define gb_LinkTarget__use_python
2456 $(call gb_LinkTarget__use_python_headers,$(1))
2458 ifeq ($(OS),WNT)
2459 $(call gb_LinkTarget_add_libs,$(1),\
2460 $(call gb_UnpackedTarball_get_dir,python3)/PCbuild$(if $(filter X86_64,$(CPUNAME)),/amd64)/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).lib \
2462 else ifeq ($(OS),MACOSX)
2463 $(call gb_LinkTarget_add_libs,$(1),\
2464 -F$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
2466 else
2467 $(call gb_LinkTarget_add_libs,$(1),\
2468 -L$(call gb_UnpackedTarball_get_dir,python3) \
2469 -lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
2471 endif
2473 endef
2475 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
2476 python$(PYTHON_VERSION_MAJOR) \
2477 python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
2480 endif # SYSTEM_PYTHON
2482 # ORCUS
2483 ifeq ($(SYSTEM_LIBORCUS),YES)
2485 define gb_LinkTarget__use_orcus
2486 $(call gb_LinkTarget_set_include,$(1),\
2487 $$(INCLUDE) \
2488 $(ORCUS_CFLAGS) \
2490 $(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
2491 endef
2493 define gb_LinkTarget__use_orcus-parser
2495 endef
2497 else # !SYSTEM_LIBORCUS
2499 define gb_LinkTarget__use_orcus
2500 $(call gb_LinkTarget_use_unpacked,$(1),liborcus)
2501 $(call gb_LinkTarget_set_include,$(1),\
2502 -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
2503 $$(INCLUDE) \
2505 $(call gb_LinkTarget_use_static_libraries,$(1),orcus)
2507 $(if $(filter YES,$(SYSTEM_BOOST)), \
2508 $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
2509 $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
2512 endef
2514 define gb_LinkTarget__use_orcus-parser
2515 $(call gb_LinkTarget_use_static_libraries,$(1),\
2516 orcus-parser \
2519 endef
2521 endif # SYSTEM_LIBORCUS
2524 ### X11 stuff ###
2526 ifeq ($(GUIBASE),unx)
2528 ifeq ($(XRANDR_DLOPEN),FALSE)
2530 define gb_LinkTarget__use_Xrandr
2531 $(call gb_LinkTarget_set_include,$(1),\
2532 $$(INCLUDE) \
2533 $(XRANDR_CFLAGS) \
2536 $(call gb_LinkTarget_add_libs,$(1),\
2537 $(XRANDR_LIBS) \
2539 endef
2541 else # XRANDR_DLOPEN
2543 define gb_LinkTarget__use_Xrandr
2544 $(call gb_LinkTarget_add_defs,$(1),\
2545 -DXRANDR_DLOPEN \
2547 endef
2549 endif # XRANDR_DLOPEN
2551 define gb_LinkTarget__use_Xrender
2552 $(call gb_LinkTarget_set_include,$(1),\
2553 $$(INCLUDE) \
2554 $(XRENDER_CFLAGS) \
2557 $(call gb_LinkTarget_add_libs,$(1),\
2558 $(XRENDER_LIBS) \
2560 endef
2562 endif # GUIBASE=unx
2565 gb_ExternalProject__use_nss3:=
2567 ifeq (,$(filter DESKTOP,$(BUILD_TYPE)))
2569 gb_LinkTarget__use_nss3:=
2571 else
2573 ifeq ($(SYSTEM_NSS),YES)
2575 define gb_LinkTarget__use_nss3
2576 $(call gb_LinkTarget_add_defs,$(1),\
2577 -DSYSTEM_NSS \
2580 $(call gb_LinkTarget_set_include,$(1),\
2581 $$(INCLUDE) \
2582 $(NSS_CFLAGS) \
2585 $(call gb_LinkTarget_add_libs,$(1),\
2586 $(NSS_LIBS) \
2589 endef
2591 define gb_LinkTarget__use_plc4
2592 $(call gb_LinkTarget__use_nss3,$(1))
2594 endef
2596 define gb_LinkTarget__use_ssl3
2597 $(call gb_LinkTarget__use_nss3,$(1))
2599 endef
2601 else
2603 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
2604 nspr4 \
2605 nss3 \
2606 plc4 \
2607 smime3 \
2608 ssl3 \
2611 define gb_LinkTarget__use_nss3
2612 $(call gb_LinkTarget_use_package,$(1),nss)
2613 $(call gb_LinkTarget_set_include,$(1),\
2614 $$(INCLUDE) \
2615 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/public/nss \
2616 -I$(call gb_UnpackedTarball_get_dir,nss)/mozilla/dist/out/include \
2619 $(call gb_LinkTarget_use_libraries,$(1),\
2620 nspr4 \
2621 nss3 \
2622 smime3 \
2625 endef
2627 define gb_LinkTarget__use_plc4
2628 $(call gb_LinkTarget_use_package,$(1),nss)
2629 $(call gb_LinkTarget_use_libraries,$(1),\
2630 plc4 \
2633 endef
2635 define gb_LinkTarget__use_ssl3
2636 $(call gb_LinkTarget_use_package,$(1),nss)
2637 $(call gb_LinkTarget_use_libraries,$(1),\
2638 ssl3 \
2641 endef
2643 define gb_ExternalProject__use_nss3
2644 $(call gb_ExternalProject_use_package,$(1),nss)
2645 $(call gb_ExternalProject_use_libraries,$(1),\
2646 nspr4 \
2647 nss3 \
2648 smime3 \
2651 endef
2653 endif
2654 endif # DESKTOP
2656 ### Jars ############################################################
2658 ifeq ($(SYSTEM_HSQLDB),YES)
2660 define gb_Jar__use_hsqldb
2661 $(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
2662 endef
2663 define gb_JunitTest__use_hsqldb
2664 $(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
2665 endef
2667 else # !SYSTEM_HSQLDB
2669 $(eval $(call gb_Helper_register_jars,OOO,\
2670 hsqldb \
2673 define gb_Jar__use_hsqldb
2674 $(call gb_Jar_use_jar,$(1),hsqldb)
2675 endef
2676 define gb_JunitTest__use_hsqldb
2677 $(call gb_JunitTest_use_jar,$(1),hsqldb)
2678 endef
2680 endif # SYSTEM_HSQLDB
2683 ifeq ($(SYSTEM_BSH),YES)
2685 define gb_Jar__use_bsh
2686 $(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
2687 endef
2689 else # !SYSTEM_BSH
2691 $(eval $(call gb_Helper_register_jars,OOO,\
2692 bsh \
2695 define gb_Jar__use_bsh
2696 $(call gb_Jar_use_jar,$(1),bsh)
2697 endef
2699 endif # SYSTEM_BSH
2702 ifeq ($(SYSTEM_RHINO),YES)
2704 define gb_Jar__use_rhino
2705 $(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
2706 endef
2708 else # !SYSTEM_RHINO
2710 $(eval $(call gb_Helper_register_jars,OOO,\
2711 js \
2714 define gb_Jar__use_rhino
2715 $(call gb_Jar_use_jar,$(1),js)
2716 endef
2718 endif # SYSTEM_RHINO
2720 ifeq ($(SYSTEM_APACHE_COMMONS),YES)
2722 define gb_Jar__use_commons-codec
2723 $(call gb_Jar_use_system_jar,$(1),$(COMMONS_CODEC_JAR))
2724 endef
2725 gb_ExternalProject__use_commons-codec :=
2727 define gb_Jar__use_commons-httpclient
2728 $(call gb_Jar_use_system_jar,$(1),$(COMMONS_HTTPCLIENT_JAR))
2729 endef
2730 gb_ExternalProject__use_commons-httpclient :=
2732 define gb_Jar__use_commons-lang
2733 $(call gb_Jar_usadd_linked_libse_system_jar,$(1),$(COMMONS_LANG_JAR))
2734 endef
2735 gb_ExternalProject__use_commons-lang :=
2737 define gb_Jar__use_commons-logging
2738 $(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
2739 endef
2740 gb_ExternalProject__use_commons-logging :=
2742 else # !SYSTEM_APACHE_COMMONS
2744 $(eval $(call gb_Helper_register_jars,OXT,\
2745 commons-codec-1.6 \
2746 commons-httpclient-3.1 \
2747 commons-lang-2.4 \
2748 commons-logging-1.1.1 \
2751 define gb_Jar__use_commons-codec
2752 $(call gb_Jar_use_jar,$(1),commons-codec-1.6)
2753 endef
2754 define gb_ExternalProject__use_commons-codec
2755 $(call gb_ExternalProject_use_external_project,$(1),apache_commons_codec)
2756 endef
2758 define gb_Jar__use_commons-httpclient
2759 $(call gb_Jar_use_jar,$(1),commons-httpclient-3.1)
2760 endef
2761 define gb_ExternalProject__use_commons-httpclient
2762 $(call gb_ExternalProject_use_external_project,$(1),apache_commons_httpclient)
2763 endef
2765 define gb_Jar__use_commons-lang
2766 $(call gb_Jar_use_jar,$(1),commons-lang-2.4)
2767 endef
2768 define gb_ExternalProject__use_commons-lang
2769 $(call gb_ExternalProject_use_external_project,$(1),apache_commons_lang)
2770 endef
2772 define gb_Jar__use_commons-logging
2773 $(call gb_Jar_use_jar,$(1),commons-logging-1.1.1)
2774 endef
2775 define gb_ExternalProject__use_commons-logging
2776 $(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
2777 endef
2779 endif # SYSTEM_APACHE_COMMONS
2782 ifeq ($(SYSTEM_JFREEREPORT),YES)
2784 define gb_Jar__use_flow-engine
2785 $(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
2786 endef
2788 define gb_Jar__use_flute
2789 $(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
2790 endef
2792 define gb_Jar__use_libbase
2793 $(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
2794 endef
2796 define gb_Jar__use_libfonts
2797 $(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
2798 endef
2800 define gb_Jar__use_libformula
2801 $(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
2802 endef
2804 define gb_Jar__use_liblayout
2805 $(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
2806 endef
2808 define gb_Jar__use_libloader
2809 $(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
2810 endef
2812 define gb_Jar__use_librepository
2813 $(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
2814 endef
2816 define gb_Jar__use_libserializer
2817 $(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
2818 endef
2820 define gb_Jar__use_libxml
2821 $(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
2822 endef
2824 define gb_Jar__use_sac
2825 $(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
2826 endef
2828 else # !SYSTEM_JFREEREPORT
2830 $(eval $(call gb_Helper_register_jars,OXT,\
2831 flow-engine-0.9.4 \
2832 flute-1.1.6 \
2833 libbase-1.1.6 \
2834 libfonts-1.1.6 \
2835 libformula-1.1.7 \
2836 liblayout-0.2.10 \
2837 libloader-1.1.6 \
2838 librepository-1.1.6 \
2839 libserializer-1.1.6 \
2840 libxml-1.1.7 \
2841 sac \
2844 define gb_Jar__use_flow-engine
2845 $(call gb_Jar_use_jar,$(1),flow-engine-0.9.4)
2846 endef
2848 define gb_Jar__use_flute
2849 $(call gb_Jar_use_jar,$(1),flute-1.1.6)
2850 endef
2852 define gb_Jar__use_libbase
2853 $(call gb_Jar_use_jar,$(1),libbase-1.1.6)
2854 endef
2856 define gb_Jar__use_libfonts
2857 $(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
2858 endef
2860 define gb_Jar__use_libformula
2861 $(call gb_Jar_use_jar,$(1),libformula-1.1.7)
2862 endef
2864 define gb_Jar__use_liblayout
2865 $(call gb_Jar_use_jar,$(1),liblayout-0.2.10)
2866 endef
2868 define gb_Jar__use_libloader
2869 $(call gb_Jar_use_jar,$(1),libloader-1.1.6)
2870 endef
2872 define gb_Jar__use_librepository
2873 $(call gb_Jar_use_jar,$(1),librepository-1.1.6)
2874 endef
2876 define gb_Jar__use_libserializer
2877 $(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
2878 endef
2880 define gb_Jar__use_libxml
2881 $(call gb_Jar_use_jar,$(1),libxml-1.1.7)
2882 endef
2884 define gb_Jar__use_sac
2885 $(call gb_Jar_use_jar,$(1),sac)
2886 endef
2888 endif # SYSTEM_JFREEREPORT
2891 # Executables
2893 # FIXME: the library target should be for build too
2894 define gb_Executable__register_bestreversemap
2895 $(call gb_Executable_add_runtime_dependencies,bestreversemap,\
2896 $(if $(filter-out ANDROID,$(OS)),$(call gb_Library_get_target,sal_textenc)) \
2898 endef
2900 # TODO depending on the whole URE might be overkill, but I do not have a
2901 # Windows machine to debug it...
2902 # FIXME: the library target should be for build too
2903 define gb_Executable__register_climaker
2904 $(call gb_Executable_add_runtime_dependencies,climaker,\
2905 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2906 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2907 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2908 $(call gb_UnoApi_get_target,udkapi) \
2910 endef
2912 # Better duplication with gb_Gallery__UNO_COMPONENTS than nothing.
2913 # This is used to determine what we need for 'build' platform.
2914 define gb_Executable__register_gengal
2915 $(call gb_Executable_add_runtime_dependencies,gengal,\
2916 $(foreach component, \
2917 comphelper/util/comphelp \
2918 configmgr/source/configmgr \
2919 fileaccess/source/fileacc \
2920 framework/util/fwk \
2921 i18npool/util/i18npool \
2922 package/source/xstor/xstor \
2923 package/util/package2 \
2924 sfx2/util/sfx \
2925 svx/util/svx \
2926 svx/util/svxcore \
2927 ucb/source/core/ucb1 \
2928 ucb/source/ucp/file/ucpfile1 \
2929 unoxml/source/service/unoxml \
2930 ,$(call gb_ComponentTarget_get_target_for_build,$(component))) \
2931 $(call gb_AllLangResTarget_get_target,ofa) \
2932 $(call gb_Configuration_get_target,registry) \
2933 $(call gb_Configuration_get_target,fcfg_langpack) \
2934 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2935 $(if $(filter-out MACOSX WNT,$(OS_FOR_BUILD)),$(if $(ENABLE_HEADLESS),, \
2936 $(call gb_Library_get_target,vclplug_svp) \
2937 )) \
2938 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2939 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2940 $(call gb_UnoApi_get_target,offapi) \
2941 $(call gb_UnoApi_get_target,udkapi) \
2943 endef
2945 ifneq ($(SYSTEM_ICU),YES)
2947 define gb_Executable__register_gendict
2948 $(call gb_Executable_add_runtime_dependencies,gendict,\
2949 $(call gb_Package_get_target_for_build,icu) \
2951 endef
2953 endif
2955 ifeq (,$(SYSTEM_UCPP))
2956 define gb_Executable__register_idlc
2957 $(call gb_Executable_add_runtime_dependencies,idlc,\
2958 $(call gb_Executable_get_target_for_build,ucpp) \
2960 endef
2961 endif
2963 define gb_Executable__register_localize
2964 $(call gb_Executable_add_runtime_dependencies,localize,\
2965 $(foreach exec,cfgex helpex propex transex3 treex uiex ulfex xrmex,\
2966 $(call gb_Executable_get_runtime_dependencies,$(exec)) \
2969 endef
2971 # The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
2972 # due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
2973 # FIXME: the library target should be for build too
2974 define gb_Executable__register_saxparser
2975 $(call gb_Executable_add_runtime_dependencies,saxparser,\
2976 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2977 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2978 $(call gb_Rdb_get_outdir_target_for_build,saxparser) \
2979 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2980 $(call gb_UnoApi_get_target,udkapi) \
2982 endef
2984 # NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
2985 # required due to the settings for URE_SERVICES and URE_TYPES in
2986 # cppuhelper/source/unorc
2987 # FIXME: the library target should be for build too
2988 define gb_Executable__register_uno
2989 $(call gb_Executable_add_runtime_dependencies,uno,\
2990 $(call gb_Library_get_target,$(gb_CPPU_ENV)_uno) \
2991 $(call gb_Package_get_target_for_build,cppuhelper_unorc) \
2992 $(call gb_Rdb_get_outdir_target_for_build,ure/services) \
2993 $(call gb_UnoApi_get_target,udkapi) \
2995 endef
2998 # External executables
3000 ifneq ($(SYSTEM_LIBXML_FOR_BUILD),YES)
3002 gb_ExternalExecutable__register_xmllint :=
3004 else # ! SYSTEM_LIBXML_FOR_BUILD
3006 define gb_ExternalExecutable__register_xmllint
3007 $(call gb_ExternalExecutable_set_internal,xmllint)
3009 endef
3011 endif # SYSTEM_LIBXML_FOR_BUILD
3013 ifeq ($(SYSTEM_LIBXSLT_FOR_BUILD),YES)
3015 gb_ExternalExecutable__register_xsltproc :=
3017 else # ! SYSTEM_LIBXSLT_FOR_BUILD
3019 define gb_ExternalExecutable__register_xsltproc
3020 $(call gb_ExternalExecutable_set_internal,xsltproc)
3021 $(call gb_ExternalExecutable_add_dependencies,xsltproc,$(call gb_Package_get_target,xslt))
3023 endef
3025 endif # SYSTEM_LIBXSLT_FOR_BUILD
3027 ifeq (,$(PYTHON_FOR_BUILD))
3029 define gb_ExternalExecutable__register_python
3030 ifeq ($(OS),MACOSX)
3032 # use set_external, to avoid having the command added as prerequisite for the
3033 # targets that make use of it. (Otherwise make will choke as it doesn't have a
3034 # matching rule to build that specific file)
3035 $(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))
3036 # the Zip ensures that internal python has been built (cannot use the Package
3037 # target, as that is not used on Mac)
3038 $(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
3040 else
3042 $(call gb_ExternalExecutable_set_internal,python,$(INSTDIR)/$(LIBO_BIN_FOLDER)/$(if $(filter WNT,$(OS)),python-core-$(PYTHON_VERSION)/bin/python.exe,python.bin))
3043 $(call gb_ExternalExecutable_set_precommand,python,$(gb_Python_PRECOMMAND))
3044 $(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
3046 endif
3048 endef
3050 else
3052 define gb_ExternalExecutable__register_python
3053 $(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
3055 endef
3057 endif # PYTHON_FOR_BUILD
3059 ifneq ($(SYSTEM_GENBRK),)
3061 define gb_ExternalExecutable__register_genbrk
3062 $(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
3064 endef
3066 else # ! SYSTEM_GENBRK
3068 define gb_ExternalExecutable__register_genbrk
3069 $(call gb_ExternalExecutable_set_internal,genbrk)
3070 $(call gb_ExternalExecutable_add_dependencies,genbrk,\
3071 $(call gb_Package_get_target_for_build,icu) \
3074 endef
3076 endif
3078 ifneq ($(SYSTEM_GENCCODE),)
3080 define gb_ExternalExecutable__register_genccode
3081 $(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
3083 endef
3085 else # ! SYSTEM_GENCCODE
3087 define gb_ExternalExecutable__register_genccode
3088 $(call gb_ExternalExecutable_set_internal,genccode)
3089 $(call gb_ExternalExecutable_add_dependencies,genccode,\
3090 $(call gb_Package_get_target_for_build,icu) \
3093 endef
3095 endif
3097 ifneq ($(SYSTEM_GENCMN),)
3099 define gb_ExternalExecutable__register_gencmn
3100 $(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
3102 endef
3104 else # ! SYSTEM_GENCMN
3106 define gb_ExternalExecutable__register_gencmn
3107 $(call gb_ExternalExecutable_set_internal,gencmn)
3108 $(call gb_ExternalExecutable_add_dependencies,gencmn,\
3109 $(call gb_Package_get_target_for_build,icu) \
3112 endef
3114 endif
3116 # vim: set noet sw=4 ts=4: