office-gobmx/RepositoryExternal.mk

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

4435 lines
89 KiB
Makefile
Raw Permalink Normal View History

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# This file is part of the LibreOffice project.
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# This file incorporates work covered by the following license notice:
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to you under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
# this file describes all the external libraries
# depending on the configure options these may be taken from the system,
# or the internal/bundled copy may be built.
# for every external, a function gb_LinkTarget__use_FOO is defined,
# once for the system case, once for the internal case.
# in the system case, no libraries should be registered, but the target-local
# variable LIBS should be set to FOO_LIBS, and INCLUDES to FOO_CFLAGS.
ifeq ($(CPUNAME),X86_64)
wnt_arch_subdir_optional=x64/
wnt_arch_subdir_mandatory=x64
else ifeq ($(CPUNAME),INTEL)
wnt_arch_subdir_mandatory=Win32
endif
2012-04-07 06:59:33 -05:00
# External headers
ifneq ($(SYSTEM_ODBC_HEADERS),)
2012-04-07 06:46:59 -05:00
define gb_LinkTarget__use_odbc_headers
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_ODBC_HEADERS \
)
endef
else # !SYSTEM_ODBC_HEADERS
2012-04-07 06:46:59 -05:00
define gb_LinkTarget__use_odbc_headers
$(call gb_LinkTarget_set_include,$(1),\
-I$(SRCDIR)/external/unixODBC/inc \
$$(INCLUDE) \
)
2012-04-07 06:46:59 -05:00
endef
endif # SYSTEM_ODBC_HEADERS
2012-04-07 06:46:59 -05:00
ifneq ($(SYSTEM_MDDS),)
gb_ExternalProject__use_mdds_headers :=
define gb_LinkTarget__use_mdds_headers
$(call gb_LinkTarget_set_include,$(1),\
$(MDDS_CFLAGS) \
$$(INCLUDE) \
)
endef
else # !SYSTEM_MDDS
define gb_ExternalProject__use_mdds_headers
$(call gb_ExternalProject_use_unpacked,$(1),mdds)
endef
define gb_LinkTarget__use_mdds_headers
$(call gb_LinkTarget_use_unpacked,$(1),mdds)
$(call gb_LinkTarget_set_include,$(1),\
$(MDDS_CFLAGS) \
$$(INCLUDE) \
)
endef
endif # SYSTEM_MDDS
ifneq ($(SYSTEM_GLM),)
define gb_LinkTarget__use_glm_headers
$(call gb_LinkTarget_add_defs,$(1),\
-DGLM_FORCE_CTOR_INIT \
)
endef
gb_ExternalProject__use_glm_headers :=
else
define gb_LinkTarget__use_glm_headers
$(call gb_LinkTarget_add_defs,$(1),\
-DGLM_FORCE_CTOR_INIT \
)
$(call gb_LinkTarget_use_unpacked,$(1),glm)
$(call gb_LinkTarget_set_include,$(1),\
$(GLM_CFLAGS) \
$$(INCLUDE) \
)
endef
define gb_ExternalProject__use_glm_headers
$(call gb_ExternalProject_use_unpacked,$(1),glm)
endef
endif
ifneq ($(ENABLE_SKIA),)
define gb_LinkTarget__use_skia
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/skia/include/core \
-I$(gb_UnpackedTarball_workdir)/skia/include/effects \
-I$(gb_UnpackedTarball_workdir)/skia/include/gpu \
-I$(gb_UnpackedTarball_workdir)/skia/include/config \
-I$(gb_UnpackedTarball_workdir)/skia/include/ports \
-I$(gb_UnpackedTarball_workdir)/skia/include/private \
-I$(gb_UnpackedTarball_workdir)/skia/include/third_party/vulkan \
-I$(gb_UnpackedTarball_workdir)/skia/tools/gpu \
-I$(gb_UnpackedTarball_workdir)/skia \
-I$(SRCDIR)/external/skia/inc/ \
$$(INCLUDE) \
)
Revert "make skia into static library" This reverts commit 6517ce70e50e61441484e7ee7a4be0e265020175. Reason for revert: <_rene__> noelgrandin: ping? <_rene__> noelgrandin: /usr/bin/ld: /home/rene/LibreOffice/git/master/workdir/LinkTarget/StaticLibrary/libskia.a: error adding symbols: archive has no index; run ranlib to add one <_rene__> noelgrandin: caused by your skia static library change. I think I pointed that out once already... <_rene__> $ ld -v <_rene__> GNU ld (GNU Binutils for Debian) 2.42 <noelgrandin> hmm, it's not an ld version issue, because I have ld 2.41 <_rene__> gcc version 13.2.0 (Debian 13.2.0-24) <_rene__> and <_rene__> Debian clang version 16.0.6 (27) <_rene__> fwiw, too <noelgrandin> is that a mergelibs build, or a regular build? <_rene__> mergelibs <_rene__> (the "normal" one, not =more) <_rene__> noelgrandin: ... and LTO <_rene__> noelgrandin: (saying because googling gives me https://github.com/mesonbuild/meson/issues/8371. and yes, .a is built with clang and the rest with gcc "of course") <_rene__> noelgrandin: but the Linux release builds _do_ that: <_rene__> $ grep -E "(lto|merge)" distro-configs/LibreOfficeLinux.conf <_rene__> --enable-mergelibs <_rene__> --enable-lto <_rene__> $ <loircbot> LibreOffice (core) [libreoffice-7-6-7] lohmaier+LibreOffice · readlicense_oo/license/CREDITS.fodt · update credits <noelgrandin> oh yeah, good spotting <noelgrandin> yes, LTO is going to be a problem because skia is built with clang Change-Id: I96c63109d2856c6e4cb22cf9ac945d4cfa9848c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167227 Tested-by: René Engelhard <rene@debian.org> Reviewed-by: René Engelhard <rene@debian.org> Tested-by: Jenkins
2024-05-07 12:27:43 -05:00
$(call gb_LinkTarget_use_libraries,$(1),skia)
$(call gb_LinkTarget_add_defs,$(1),\
-DSK_USER_CONFIG_HEADER="<$(BUILDDIR)/config_host/config_skia.h>" \
Revert "make skia into static library" This reverts commit 6517ce70e50e61441484e7ee7a4be0e265020175. Reason for revert: <_rene__> noelgrandin: ping? <_rene__> noelgrandin: /usr/bin/ld: /home/rene/LibreOffice/git/master/workdir/LinkTarget/StaticLibrary/libskia.a: error adding symbols: archive has no index; run ranlib to add one <_rene__> noelgrandin: caused by your skia static library change. I think I pointed that out once already... <_rene__> $ ld -v <_rene__> GNU ld (GNU Binutils for Debian) 2.42 <noelgrandin> hmm, it's not an ld version issue, because I have ld 2.41 <_rene__> gcc version 13.2.0 (Debian 13.2.0-24) <_rene__> and <_rene__> Debian clang version 16.0.6 (27) <_rene__> fwiw, too <noelgrandin> is that a mergelibs build, or a regular build? <_rene__> mergelibs <_rene__> (the "normal" one, not =more) <_rene__> noelgrandin: ... and LTO <_rene__> noelgrandin: (saying because googling gives me https://github.com/mesonbuild/meson/issues/8371. and yes, .a is built with clang and the rest with gcc "of course") <_rene__> noelgrandin: but the Linux release builds _do_ that: <_rene__> $ grep -E "(lto|merge)" distro-configs/LibreOfficeLinux.conf <_rene__> --enable-mergelibs <_rene__> --enable-lto <_rene__> $ <loircbot> LibreOffice (core) [libreoffice-7-6-7] lohmaier+LibreOffice · readlicense_oo/license/CREDITS.fodt · update credits <noelgrandin> oh yeah, good spotting <noelgrandin> yes, LTO is going to be a problem because skia is built with clang Change-Id: I96c63109d2856c6e4cb22cf9ac945d4cfa9848c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167227 Tested-by: René Engelhard <rene@debian.org> Reviewed-by: René Engelhard <rene@debian.org> Tested-by: Jenkins
2024-05-07 12:27:43 -05:00
-DSKIA_DLL \
)
endef
Revert "make skia into static library" This reverts commit 6517ce70e50e61441484e7ee7a4be0e265020175. Reason for revert: <_rene__> noelgrandin: ping? <_rene__> noelgrandin: /usr/bin/ld: /home/rene/LibreOffice/git/master/workdir/LinkTarget/StaticLibrary/libskia.a: error adding symbols: archive has no index; run ranlib to add one <_rene__> noelgrandin: caused by your skia static library change. I think I pointed that out once already... <_rene__> $ ld -v <_rene__> GNU ld (GNU Binutils for Debian) 2.42 <noelgrandin> hmm, it's not an ld version issue, because I have ld 2.41 <_rene__> gcc version 13.2.0 (Debian 13.2.0-24) <_rene__> and <_rene__> Debian clang version 16.0.6 (27) <_rene__> fwiw, too <noelgrandin> is that a mergelibs build, or a regular build? <_rene__> mergelibs <_rene__> (the "normal" one, not =more) <_rene__> noelgrandin: ... and LTO <_rene__> noelgrandin: (saying because googling gives me https://github.com/mesonbuild/meson/issues/8371. and yes, .a is built with clang and the rest with gcc "of course") <_rene__> noelgrandin: but the Linux release builds _do_ that: <_rene__> $ grep -E "(lto|merge)" distro-configs/LibreOfficeLinux.conf <_rene__> --enable-mergelibs <_rene__> --enable-lto <_rene__> $ <loircbot> LibreOffice (core) [libreoffice-7-6-7] lohmaier+LibreOffice · readlicense_oo/license/CREDITS.fodt · update credits <noelgrandin> oh yeah, good spotting <noelgrandin> yes, LTO is going to be a problem because skia is built with clang Change-Id: I96c63109d2856c6e4cb22cf9ac945d4cfa9848c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167227 Tested-by: René Engelhard <rene@debian.org> Reviewed-by: René Engelhard <rene@debian.org> Tested-by: Jenkins
2024-05-07 12:27:43 -05:00
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo,\
skia \
))
endif
ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
define gb_LinkTarget__use_sane_headers
$(call gb_LinkTarget_set_include,$(1),\
$(if $(filter WNT,$(OS)), \
-I$(gb_UnpackedTarball_workdir)/twain_dsm/pub/include, \
-I$(SRCDIR)/external/sane/inc) \
$$(INCLUDE) \
)
ifeq ($(OS),WNT)
$(call gb_LinkTarget_use_unpacked,$(1),twain_dsm)
endif
endef
else
gb_LinkTarget__use_sane_headers :=
endif
ifneq ($(SYSTEM_BLUEZ),)
gb_LinkTarget__use_bluez_bluetooth_headers :=
else # !SYSTEM_BLUEZ
define gb_LinkTarget__use_bluez_bluetooth_headers
$(call gb_LinkTarget_set_include,$(1),\
-I$(SRCDIR)/external/bluez_bluetooth/inc \
$$(INCLUDE) \
)
endef
endif # SYSTEM_BLUEZ
2012-04-07 06:59:33 -05:00
# External libraries
ifneq ($(SYSTEM_CPPUNIT),)
2011-07-25 03:34:22 -05:00
define gb_LinkTarget__use_cppunit
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(CPPUNIT_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(CPPUNIT_LIBS) \
)
2011-07-25 03:34:22 -05:00
endef
else # !SYSTEM_CPPUNIT
2011-07-25 03:34:22 -05:00
define gb_LinkTarget__use_cppunit
$(call gb_LinkTarget_use_external_project,$(1),cppunit, full)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/cppunit/include\
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/cppunit/src/cppunit/$(if $(MSVC_USE_DEBUG_RUNTIME),DebugDll/cppunitd_dll.lib,ReleaseDll/cppunit_dll.lib) \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/cppunit/src/cppunit/.libs -lcppunit \
)
endif
2011-07-25 03:34:22 -05:00
endef
endif # SYSTEM_CPPUNIT
ifeq ($(ENABLE_EPOXY),TRUE)
ifeq ($(SYSTEM_EPOXY),TRUE)
define gb_LinkTarget__use_epoxy
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(EPOXY_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(EPOXY_LIBS))
endef
gb_ExternalProject__use_epoxy :=
else # !SYSTEM_EPOXY
define gb_LinkTarget__use_epoxy
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/epoxy/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
epoxy \
)
endef
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
epoxy \
))
define gb_ExternalProject__use_epoxy
$(call gb_ExternalProject_use_external_project,$(1),epoxy)
endef
endif # !SYSTEM_EPOXY
else # !ENABLE_EPOXY
gb_LinkTarget__use_epoxy :=
gb_ExternalProject__use_epoxy :=
endif # !ENABLE_EPOXY
define gb_LinkTarget__use_iconv
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),libiconv.lib)
else
$(call gb_LinkTarget_add_libs,$(1),-liconv)
endif
endef
ifneq ($(SYSTEM_MARIADB_CONNECTOR_C),)
define gb_LinkTarget__use_mariadb-connector-c
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(MARIADB_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(MARIADB_LIBS))
endef
gb_ExternalProject__use_mariadb-connector-c :=
else # !SYSTEM_MARIADB_CONNECTOR_C
define gb_LinkTarget__use_mariadb-connector-c
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(MARIADB_CFLAGS) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
mariadb-connector-c \
)
ifeq ($(OS),MACOSX)
$(call gb_LinkTarget_add_libs,$(1),\
-liconv \
)
endif
$(call gb_LinkTarget_use_system_win32_libs,$(1),\
ws2_32 \
advapi32 \
kernel32 \
shlwapi \
crypt32 \
bcrypt \
)
endef
define gb_ExternalProject__use_mariadb-connector-c
$(call gb_ExternalProject_use_static_libraries,$(1),mariadb-connector-c)
endef
endif # SYSTEM_MARIADB_CONNECTOR_C
ifneq ($(SYSTEM_MARIADB_CONNECTOR_C),)
define gb_LinkTarget__use_mysql
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_MARIADB \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(MARIADB_LIBS) \
)
$(call gb_LinkTarget_set_include,$(1),\
$(MARIADB_CFLAGS) \
$$(INCLUDE) \
)
endef
else
define gb_LinkTarget__use_mysql
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
)
endef
endif
ifneq ($(SYSTEM_ZLIB),)
define gb_LinkTarget__use_zlib
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_ZLIB \
Avoid ODR violation, consistently define ZLIB_CONST At least my --enable-lto --enable-mergelibs build diagnosed > [build LNK] Library/libmergedlo.so > workdir/UnpackedTarball/zlib/zlib.h:86:16: warning: type ‘struct z_stream_s’ violates the C++ One Definition Rule [-Wodr] > 86 | typedef struct z_stream_s { > | ^ > workdir/UnpackedTarball/zlib/zlib.h:86: note: a different type is defined in another translation unit > 86 | typedef struct z_stream_s { > | > workdir/UnpackedTarball/zlib/zlib.h:87:20: note: the first difference of corresponding definitions is field ‘next_in’ > 87 | z_const Bytef *next_in; /* next input byte */ > | ^ > workdir/UnpackedTarball/zlib/zlib.h:87: note: a field of same name but different type is defined in another translation unit > 87 | z_const Bytef *next_in; /* next input byte */ > | (And ZLIB_CONST then required a small adaption in tools/source/zcodec/zcodec.cxx, plus some loplugin:redundantcast. And gb_PrecompiledHeader_ignore_flags_system had to be updated to avoid errors like > Error reusing pch/inc/pch/precompiled_system by Library_wpftdraw. > precompiled header flags : -DBOOST_ALL_NO_LIB -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_MEM_FN_ENABLE_CDECL -DBOOST_OPTIONAL_USE_OLD_DEFINITION_OF_NONE -DBOOST_SYSTEM_NO_DEPRECATED -DCPPU_ENV=msci -DDBG_UTIL -DEXCEPTIONS_ON -DINTEL -DNOMINMAX -DOSL_DEBUG_LEVEL=1 -DPCH_LEVEL=4 -DSAL_LOG_INFO -DSAL_LOG_WARN -DWIN32 -DWNT -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_DEBUG -D_DLL -D_HAS_AUTO_PTR_ETC -D_MT -D_REENTRANT -D_SCL_SECURE_NO_WARNINGS -D_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING -D_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING -D_WIN32_WINNT=0x0601 -D_X86_=1 -EHs -GR -GS -Gd -Gs -Gy -MDd -Od -W4 -Wv:18 -Zc:__cplusplus -Zm500 -bigobj -nologo -permissive- -std:c++17 -utf-8 -wd4127 -wd4201 -wd4244 -wd4250 -wd4251 -wd4267 -wd4275 -wd4505 -wd4611 -wd4706 > object flags : -DBOOST_ALL_NO_LIB -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_MEM_FN_ENABLE_CDECL -DBOOST_OPTIONAL_USE_OLD_DEFINITION_OF_NONE -DBOOST_SYSTEM_NO_DEPRECATED -DCPPU_ENV=msci -DDBG_UTIL -DEXCEPTIONS_ON -DINTEL -DNOMINMAX -DOSL_DEBUG_LEVEL=1 -DPCH_LEVEL=4 -DSAL_LOG_INFO -DSAL_LOG_WARN -DWIN32 -DWNT -DZLIB_CONST -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_DEBUG -D_DLL -D_HAS_AUTO_PTR_ETC -D_MT -D_REENTRANT -D_SCL_SECURE_NO_WARNINGS -D_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING -D_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING -D_WIN32_WINNT=0x0601 -D_X86_=1 -EHs -GR -GS -Gd -Gs -Gy -MDd -Od -W4 -Wv:18 -Zc:__cplusplus -Zm500 -bigobj -nologo -permissive- -std:c++17 -utf-8 -wd4127 -wd4201 -wd4244 -wd4250 -wd4251 -wd4267 -wd4275 -wd4505 -wd4611 -wd4706 > reason : -DZLIB_CONST -DZLIB_CONST > Incorrect precompiled header setup or internal gbuild error. > make[1]: *** [C:/cygwin/home/tdf/jenkins/workspace/gerrit_windows/writerperfect/Library_wpftdraw.mk:31: C:/cygwin/home/tdf/jenkins/workspace/gerrit_windows/workdir/PrecompiledHeader/nodebug/Timestamps/Library_wpftdraw_reuse] Error 1 with --enable-pch.) Change-Id: Iadd3c90a65993ebef98190458762b1c86d425c4d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119961 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-08-04 01:00:16 -05:00
-DZLIB_CONST \
)
$(call gb_LinkTarget_add_libs,$(1),-lz)
endef
# nothing on system
define gb_LinkTarget__use_zlib_x64
endef
gb_ExternalProject__use_zlib :=
else # !SYSTEM_ZLIB
define gb_LinkTarget__use_zlib_multiarch
$(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
Avoid ODR violation, consistently define ZLIB_CONST At least my --enable-lto --enable-mergelibs build diagnosed > [build LNK] Library/libmergedlo.so > workdir/UnpackedTarball/zlib/zlib.h:86:16: warning: type ‘struct z_stream_s’ violates the C++ One Definition Rule [-Wodr] > 86 | typedef struct z_stream_s { > | ^ > workdir/UnpackedTarball/zlib/zlib.h:86: note: a different type is defined in another translation unit > 86 | typedef struct z_stream_s { > | > workdir/UnpackedTarball/zlib/zlib.h:87:20: note: the first difference of corresponding definitions is field ‘next_in’ > 87 | z_const Bytef *next_in; /* next input byte */ > | ^ > workdir/UnpackedTarball/zlib/zlib.h:87: note: a field of same name but different type is defined in another translation unit > 87 | z_const Bytef *next_in; /* next input byte */ > | (And ZLIB_CONST then required a small adaption in tools/source/zcodec/zcodec.cxx, plus some loplugin:redundantcast. And gb_PrecompiledHeader_ignore_flags_system had to be updated to avoid errors like > Error reusing pch/inc/pch/precompiled_system by Library_wpftdraw. > precompiled header flags : -DBOOST_ALL_NO_LIB -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_MEM_FN_ENABLE_CDECL -DBOOST_OPTIONAL_USE_OLD_DEFINITION_OF_NONE -DBOOST_SYSTEM_NO_DEPRECATED -DCPPU_ENV=msci -DDBG_UTIL -DEXCEPTIONS_ON -DINTEL -DNOMINMAX -DOSL_DEBUG_LEVEL=1 -DPCH_LEVEL=4 -DSAL_LOG_INFO -DSAL_LOG_WARN -DWIN32 -DWNT -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_DEBUG -D_DLL -D_HAS_AUTO_PTR_ETC -D_MT -D_REENTRANT -D_SCL_SECURE_NO_WARNINGS -D_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING -D_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING -D_WIN32_WINNT=0x0601 -D_X86_=1 -EHs -GR -GS -Gd -Gs -Gy -MDd -Od -W4 -Wv:18 -Zc:__cplusplus -Zm500 -bigobj -nologo -permissive- -std:c++17 -utf-8 -wd4127 -wd4201 -wd4244 -wd4250 -wd4251 -wd4267 -wd4275 -wd4505 -wd4611 -wd4706 > object flags : -DBOOST_ALL_NO_LIB -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_MEM_FN_ENABLE_CDECL -DBOOST_OPTIONAL_USE_OLD_DEFINITION_OF_NONE -DBOOST_SYSTEM_NO_DEPRECATED -DCPPU_ENV=msci -DDBG_UTIL -DEXCEPTIONS_ON -DINTEL -DNOMINMAX -DOSL_DEBUG_LEVEL=1 -DPCH_LEVEL=4 -DSAL_LOG_INFO -DSAL_LOG_WARN -DWIN32 -DWNT -DZLIB_CONST -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_DEBUG -D_DLL -D_HAS_AUTO_PTR_ETC -D_MT -D_REENTRANT -D_SCL_SECURE_NO_WARNINGS -D_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING -D_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING -D_WIN32_WINNT=0x0601 -D_X86_=1 -EHs -GR -GS -Gd -Gs -Gy -MDd -Od -W4 -Wv:18 -Zc:__cplusplus -Zm500 -bigobj -nologo -permissive- -std:c++17 -utf-8 -wd4127 -wd4201 -wd4244 -wd4250 -wd4251 -wd4267 -wd4275 -wd4505 -wd4611 -wd4706 > reason : -DZLIB_CONST -DZLIB_CONST > Incorrect precompiled header setup or internal gbuild error. > make[1]: *** [C:/cygwin/home/tdf/jenkins/workspace/gerrit_windows/writerperfect/Library_wpftdraw.mk:31: C:/cygwin/home/tdf/jenkins/workspace/gerrit_windows/workdir/PrecompiledHeader/nodebug/Timestamps/Library_wpftdraw_reuse] Error 1 with --enable-pch.) Change-Id: Iadd3c90a65993ebef98190458762b1c86d425c4d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119961 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-08-04 01:00:16 -05:00
$(call gb_LinkTarget_add_defs,$(1), \
-DZLIB_CONST \
)
$(call gb_LinkTarget_set_include,$(1),\
$(ZLIB_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
$(2) \
)
endef
define gb_LinkTarget__use_zlib
$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
endef
define gb_LinkTarget__use_zlib_x64
$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
endef
define gb_ExternalProject__use_zlib
$(call gb_ExternalProject_use_static_libraries,$(1),zlib)
endef
endif # SYSTEM_ZLIB
ifneq ($(SYSTEM_LIBJPEG),)
define gb_LinkTarget__use_libjpeg
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBJPEG_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBJPEG_LIBS))
$(call gb_LinkTarget_set_ldflags,$(1),\
$$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \
)
endef
gb_ExternalProject__use_libjpeg :=
else
define gb_LinkTarget__use_libjpeg
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libjpeg-turbo \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),libjpeg-turbo)
endef
define gb_ExternalProject__use_libjpeg
$(call gb_ExternalProject_use_static_libraries,$(1),libjpeg-turbo)
endef
endif # SYSTEM_LIBJPEG
ifneq ($(SYSTEM_MYTHES),)
define gb_LinkTarget__use_mythes
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(MYTHES_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
endef
else # !SYSTEM_MYTHES
define gb_LinkTarget__use_mythes
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/mythes \
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_static_libraries,$(1),\
mythes \
)
else
$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
$(call gb_LinkTarget_use_external_project,$(1),mythes)
endif
endef
endif # SYSTEM_MYTHES
ifneq ($(SYSTEM_EXPAT),)
define gb_LinkTarget__use_expat_impl
$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_EXPAT \
)
$(call gb_LinkTarget_add_libs,$(1),-lexpat)
endef
gb_ExternalProject__use_expat :=
else # !SYSTEM_EXPAT
define gb_LinkTarget__use_expat_impl
$(if $(2),,$(error gb_LinkTarget__use_expat_impl needs additional parameter))
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/expat/lib \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
$(2) \
)
endef
define gb_ExternalProject__use_expat
$(call gb_ExternalProject_use_static_libraries,$(1),expat)
endef
endif # SYSTEM_EXPAT
define gb_LinkTarget__use_expat
$(call gb_LinkTarget__use_expat_impl,$(1),expat)
endef
define gb_LinkTarget__use_expat_x64
$(call gb_LinkTarget__use_expat_impl,$(1),expat_x64)
endef
ifneq ($(SYSTEM_HYPH),)
define gb_LinkTarget__use_hyphen
$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
endef
else # !SYSTEM_HYPH
define gb_LinkTarget__use_hyphen
$(call gb_LinkTarget_use_unpacked,$(1),hyphen)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/hyphen\
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_static_libraries,$(1),\
hyphen \
)
else
$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
$(call gb_LinkTarget_use_external_project,$(1),hyphen)
endif
endef
endif # SYSTEM_HYPH
ifneq ($(SYSTEM_HUNSPELL),)
2011-12-03 07:44:12 -06:00
define gb_LinkTarget__use_hunspell
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(HUNSPELL_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
endef
gb_ExternalProject__use_hunspell :=
2011-12-03 07:44:12 -06:00
else # !SYSTEM_HUNSPELL
ifneq ($(ENABLE_WASM_STRIP_HUNSPELL),TRUE)
2011-12-03 07:44:12 -06:00
define gb_LinkTarget__use_hunspell
$(call gb_LinkTarget_add_defs,$(1),\
-DHUNSPELL_STATIC \
)
$(call gb_LinkTarget_use_unpacked,$(1),hunspell)
2011-12-03 07:44:12 -06:00
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/hunspell/src/hunspell\
$$(INCLUDE) \
2011-12-03 07:44:12 -06:00
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_static_libraries,$(1),\
hunspell \
2011-12-03 07:44:12 -06:00
)
else
$(call gb_LinkTarget_add_libs,$(1),$(HUNSPELL_LIBS))
$(call gb_LinkTarget_use_external_project,$(1),hunspell)
endif
endef
define gb_ExternalProject__use_hunspell
$(call gb_ExternalProject_use_external_project,$(1),hunspell)
2011-12-03 07:44:12 -06:00
endef
endif # ENABLE_WASM_STRIP_HUNSPELL
2011-12-03 07:44:12 -06:00
endif # SYSTEM_HUNSPELL
ifneq ($(SYSTEM_BOOST),)
define gb_LinkTarget__use_boost_lib
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(BOOST_CPPFLAGS) \
)
$(call gb_LinkTarget_add_ldflags,$(1),\
$(BOOST_LDFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(2))
endef
define gb_LinkTarget__use_boost_locale
$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_LOCALE_LIB))
endef
define gb_LinkTarget__use_boost_date_time
$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_DATE_TIME_LIB))
endef
define gb_LinkTarget__use_boost_filesystem
$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_FILESYSTEM_LIB))
endef
gb_ExternalProject__use_boost_filesystem :=
define gb_LinkTarget__use_boost_iostreams
$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_IOSTREAMS_LIB))
endef
gb_ExternalProject__use_boost_iostreams :=
define gb_LinkTarget__use_boost_system
$(call gb_LinkTarget__use_boost_lib,$(1),$(BOOST_SYSTEM_LIB))
endef
gb_ExternalProject__use_boost_system :=
define gb_LinkTarget__use_boost_headers
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(BOOST_CPPFLAGS) \
)
endef
gb_ExternalProject__use_boost_headers:=
else # !SYSTEM_BOOST
define gb_LinkTarget__use_boost_lib
$(call gb_LinkTarget_add_defs,$(1),\
-DBOOST_ALL_NO_LIB \
)
$(call gb_LinkTarget_use_static_libraries,$(1),$(2))
endef
define gb_LinkTarget__use_boost_locale
$(call gb_LinkTarget__use_boost_lib,$(1),boost_locale)
$(call gb_LinkTarget_add_libs,$(1),\
$(if $(filter $(OS),MACOSX),-liconv) \
)
endef
define gb_LinkTarget__use_boost_date_time
$(call gb_LinkTarget__use_boost_lib,$(1),boost_date_time)
endef
define gb_LinkTarget__use_boost_filesystem
$(call gb_LinkTarget__use_boost_lib,$(1),boost_filesystem)
endef
define gb_ExternalProject__use_boost_filesystem
$(call gb_ExternalProject_use_static_libraries,$(1),boost_filesystem)
endef
define gb_LinkTarget__use_boost_iostreams
$(call gb_LinkTarget__use_boost_lib,$(1),boost_iostreams)
endef
define gb_ExternalProject__use_boost_iostreams
$(call gb_ExternalProject_use_static_libraries,$(1),boost_iostreams)
endef
define gb_LinkTarget__use_boost_system
$(call gb_LinkTarget__use_boost_lib,$(1),boost_system)
endef
define gb_ExternalProject__use_boost_system
$(call gb_ExternalProject_use_static_libraries,$(1),boost_system)
endef
define gb_LinkTarget__use_boost_headers
$(call gb_LinkTarget_use_unpacked,$(1),boost)
$(call gb_LinkTarget_set_include,$(1),\
$(BOOST_CPPFLAGS) \
$$(INCLUDE) \
)
endef
define gb_ExternalProject__use_boost_headers
$(call gb_ExternalProject_use_unpacked,$(1),boost)
endef
endif # SYSTEM_BOOST
ifneq ($(SYSTEM_LIBCMIS),)
define gb_LinkTarget__use_libcmis
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBCMIS_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBCMIS_LIBS))
endef
else # !SYSTEM_LIBCMIS
define gb_LinkTarget__use_libcmis
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libcmis/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
libcmis \
)
endef
endif # SYSTEM_LIBCMIS
ifeq ($(ENABLE_JAVA),TRUE)
define gb_LinkTarget__use_jawt
$(call gb_LinkTarget_add_libs,$(1),\
$(JAWTLIB) \
)
endef
else # !ENABLE_JAVA
gb_LinkTarget__use_jawt :=
endif # ENABLE_JAVA
ifneq ($(SYSTEM_LIBATOMIC_OPS),)
define gb_LinkTarget__use_libatomic_ops
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBATOMIC_OPS_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1), $(LIBATOMIC_OPS_LIBS))
endef
gb_ExternalProject__use_libatomic_ops :=
else # !SYSTEM_LIBATOMIC_OPS
define gb_LinkTarget__use_libatomic_ops
$(call gb_LinkTarget_set_include,$(1),\
$(LIBATOMIC_OPS_CFLAGS) \
$$(INCLUDE) \
$(LIBATOMIC_OPS_CFLAGS) \
)
$(call gb_LinkTarget_use_external_project,$(1),\
libatomic_ops \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libatomic_ops/src/lib -latomic_ops \
)
endef
define gb_ExternalProject__use_libatomic_ops
$(call gb_ExternalProject_use_external_project,$(1),libatomic_ops)
endef
endif # SYSTEM_LIBATOMIC_OPS
ifneq ($(SYSTEM_LIBEXTTEXTCAT),)
2011-12-03 08:06:52 -06:00
define gb_LinkTarget__use_libexttextcat
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBEXTTEXTCAT_CFLAGS) \
)
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_LIBEXTTEXTCAT \
)
2011-12-03 08:06:52 -06:00
$(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
endef
else # !SYSTEM_LIBEXTTEXTCAT
define gb_LinkTarget__use_libexttextcat
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libexttextcat/src \
$$(INCLUDE) \
2011-12-03 08:06:52 -06:00
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_static_libraries,$(1),\
libexttextcat \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libexttextcat/src/.libs/libexttextcat-2.0.a\
)
$(call gb_LinkTarget_use_external_project,$(1),libexttextcat)
endif
2011-12-03 08:06:52 -06:00
endef
endif # SYSTEM_LIBEXTTEXTCAT
ifneq ($(SYSTEM_LIBNUMBERTEXT),)
define gb_LinkTarget__use_libnumbertext
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBNUMBERTEXT_CFLAGS) \
)
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_LIBNUMBERTEXT \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBNUMBERTEXT_LIBS))
endef
else # !SYSTEM_LIBNUMBERTEXT
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
libnumbertext_numbertext \
))
define gb_LinkTarget__use_libnumbertext
$(call gb_LinkTarget_use_package,$(1),libnumbertext_numbertext)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libnumbertext/src \
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_static_libraries,$(1),\
libnumbertext \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libnumbertext/src/.libs/libnumbertext-1.0.a\
)
$(call gb_LinkTarget_use_external_project,$(1),libnumbertext,full)
endif
endef
endif # SYSTEM_LIBNUMBERTEXT
ifneq ($(SYSTEM_LIBXML),)
define gb_LinkTarget__use_libxml2
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_LIBXML \
)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBXML_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS))
endef
gb_ExternalProject__use_libxml2:=
else # !SYSTEM_LIBXML
$(eval $(call gb_Helper_register_packages_for_install,ure,\
libxml2 \
))
define gb_LinkTarget__use_libxml2
$(call gb_LinkTarget_use_package,$(1),libxml2)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBXML_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(LIBXML_LIBS) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_external,$(1),icu_headers)
endif
endef
define gb_ExternalProject__use_libxml2
$(call gb_ExternalProject_use_package,$(1),libxml2)
ifeq ($(COM),MSC)
$(call gb_ExternalProject_use_packages,$(1),icu icu_ure)
endif
endef
endif # SYSTEM_LIBXML
ifneq ($(SYSTEM_LIBXSLT),)
define gb_LinkTarget__use_libxslt
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBXSLT_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS))
endef
define gb_LinkTarget__use_libexslt
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBEXSLT_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBEXSLT_LIBS))
endef
else # !SYSTEM_LIBXSLT
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
libxslt \
))
define gb_LinkTarget__use_libxslt
$(call gb_LinkTarget_use_package,$(1),libxslt)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
-I$(gb_UnpackedTarball_workdir)/libxslt \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libxslt/win32/bin.msvc/libxslt.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libxslt/libxslt/.libs -lxslt \
)
endif
endef
define gb_LinkTarget__use_libexslt
$(call gb_LinkTarget_use_package,$(1),libxslt)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
-I$(gb_UnpackedTarball_workdir)/libxslt \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libxslt/win32/bin.msvc/libexslt.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libxslt/libexslt/.libs -lexslt \
)
endif
endef
endif # SYSTEM_LIBXSLT
ifneq ($(SYSTEM_XMLSEC),)
define gb_LinkTarget__use_xmlsec
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_XMLSEC \
)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(XMLSEC_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(XMLSEC_LIBS))
endef
gb_ExternalProject__use_xmlsec:=
else # !SYSTEM_XMLSEC
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
xmlsec \
))
define gb_LinkTarget__use_xmlsec
endef
endif # SYSTEM_XMLSEC
ifneq ($(SYSTEM_LIBLANGTAG),)
2012-08-06 12:22:43 -05:00
define gb_LinkTarget__use_liblangtag
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBLANGTAG_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
endef
gb_ExternalProject__use_liblangtag :=
2012-08-06 12:22:43 -05:00
else # !SYSTEM_LIBLANGTAG
$(eval $(call gb_Helper_register_packages_for_install,ure,\
liblangtag_data \
))
ifeq ($(COM),MSC)
2012-08-06 12:22:43 -05:00
define gb_LinkTarget__use_liblangtag
$(call gb_LinkTarget_set_include,$(1),\
$(LIBLANGTAG_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
$(call gb_LinkTarget_use_external_project,$(1),liblangtag)
2012-08-06 12:22:43 -05:00
endef
else
$(eval $(call gb_Helper_register_packages_for_install,ure,\
liblangtag \
))
define gb_LinkTarget__use_liblangtag
$(call gb_LinkTarget_set_include,$(1),\
$(LIBLANGTAG_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBLANGTAG_LIBS))
$(call gb_LinkTarget_use_package,$(1),liblangtag)
endef
endif # MSC
define gb_ExternalProject__use_liblangtag
$(call gb_ExternalProject_use_external_project,$(1),liblangtag)
endef
2012-08-06 12:22:43 -05:00
endif # SYSTEM_LIBLANGTAG
ifneq ($(SYSTEM_REDLAND),)
define gb_LinkTarget__use_librdf
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_REDLAND \
)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(REDLAND_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS))
endef
gb_LinkTarget__use_redland_headers:=
gb_LinkTarget__use_raptor_headers:=
gb_LinkTarget__use_rasqal_headers:=
else # !SYSTEM_REDLAND
define gb_LinkTarget__use_redland_headers
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/redland/src \
$$(INCLUDE) \
)
endef
define gb_LinkTarget__use_raptor_headers
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/raptor/src \
$$(INCLUDE) \
)
endef
define gb_LinkTarget__use_rasqal_headers
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/rasqal/src \
$$(INCLUDE) \
)
endef
ifneq ($(OS),ANDROID)
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
raptor2 \
rasqal \
rdf \
))
else
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
raptor \
rasqal \
redland \
))
endif
define gb_LinkTarget__use_librdf
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_libraries,$(1),\
raptor2 \
rdf \
)
else
$(call gb_LinkTarget_use_packages,$(1),redland raptor rasqal)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/redland/src/.libs -lrdf \
-L$(gb_UnpackedTarball_workdir)/raptor/src/.libs -lraptor2 \
-L$(gb_UnpackedTarball_workdir)/rasqal/src/.libs -lrasqal \
)
endif
endef
else # ANDROID
define gb_LinkTarget__use_librdf
$(call gb_LinkTarget_use_packages,$(1),redland raptor rasqal)
endef
endif # ANDROID
endif # SYSTEM_REDLAND
ifneq ($(SYSTEM_CAIRO),)
define gb_LinkTarget__use_cairo
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(CAIRO_CFLAGS) \
-DSYSTEM_CAIRO \
)
$(call gb_LinkTarget_use_external,$(1),freetype_headers)
$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS))
endef
else # !SYSTEM_CAIRO
ifneq ($(filter-out MACOSX WNT,$(OS)),)
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
cairo \
pixman \
))
define gb_LinkTarget__use_cairo
$(call gb_LinkTarget_use_package,$(1),cairo)
$(call gb_LinkTarget_use_package,$(1),pixman)
$(call gb_LinkTarget_use_external,$(1),freetype_headers)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/cairo \
-I$(gb_UnpackedTarball_workdir)/cairo/src \
-I$(gb_UnpackedTarball_workdir)/pixman/pixman \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(if $(filter EMSCRIPTEN,$(OS)), \
$(gb_UnpackedTarball_workdir)/cairo/src/.libs/libcairo.a \
$(gb_UnpackedTarball_workdir)/pixman/pixman/.libs/libpixman-1.a, \
-L$(gb_UnpackedTarball_workdir)/cairo/src/.libs -lcairo \
-L$(gb_UnpackedTarball_workdir)/pixman/pixman/.libs -lpixman-1) \
)
endef
endif # !MACOSX, !WNT
endif # !SYSTEM_CAIRO
ifneq ($(SYSTEM_FREETYPE),)
define gb_LinkTarget__use_freetype_headers
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(FREETYPE_CFLAGS) \
)
endef
gb_ExternalProject__use_freetype :=
else
define gb_LinkTarget__use_freetype_headers
$(call gb_LinkTarget_use_external_project,$(1),freetype)
$(call gb_LinkTarget_set_include,$(1),\
$(FREETYPE_CFLAGS) \
$$(INCLUDE) \
)
endef
define gb_ExternalProject__use_freetype
$(call gb_ExternalProject_use_external_project,$(1),freetype)
endef
endif # SYSTEM_FREETYPE
define gb_LinkTarget__use_freetype
$(call gb_LinkTarget_use_external,$(1),freetype_headers)
$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
endef
ifneq ($(SYSTEM_FONTCONFIG),)
define gb_LinkTarget__use_fontconfig
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(FONTCONFIG_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
endef
ifeq ($(OS),EMSCRIPTEN)
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
libfontconfig_data \
))
endif
gb_ExternalProject__use_fontconfig :=
else # SYSTEM_FONTCONFIG
ifneq ($(filter-out MACOSX WNT,$(OS)),)
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
fontconfig \
))
endif
define gb_LinkTarget__use_fontconfig
ifeq ($(OS),LINUX)
$(call gb_LinkTarget_use_package,$(1),fontconfig)
else
$(call gb_LinkTarget_use_external_project,$(1),fontconfig)
endif
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/fontconfig \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/fontconfig/src/.libs -lfontconfig \
)
endef
define gb_ExternalProject__use_fontconfig
$(call gb_ExternalProject_use_external_project,$(1),fontconfig)
endef
endif # SYSTEM_FONTCONFIG
ifneq ($(SYSTEM_GRAPHITE),)
define gb_LinkTarget__use_graphite
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(GRAPHITE_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
endef
gb_ExternalProject__use_graphite:=
else # !SYSTEM_GRAPHITE
define gb_LinkTarget__use_graphite
$(call gb_LinkTarget_use_unpacked,$(1),graphite)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/graphite/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
graphite \
)
endef
define gb_ExternalProject__use_graphite
$(call gb_ExternalProject_use_static_libraries,$(1),\
graphite \
)
endef
endif # SYSTEM_GRAPHITE
ifneq ($(SYSTEM_ICU),)
gb_LinkTarget__use_icu_headers:=
gb_ExternalProject__use_icu:=
2011-08-11 05:42:39 -05:00
define gb_LinkTarget__use_icudata
$(call gb_LinkTarget_add_libs,$(1),-licudata)
endef
2011-07-26 02:58:54 -05:00
define gb_LinkTarget__use_icui18n
$(call gb_LinkTarget_add_libs,$(1),-licui18n)
2011-08-11 05:42:39 -05:00
endef
define gb_LinkTarget__use_icuuc
$(call gb_LinkTarget_add_libs,$(1),-licuuc)
endef
else # !SYSTEM_ICU
$(eval $(call gb_Helper_register_packages_for_install,ure, \
icu_ure \
))
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
icu \
))
ifeq ($(OS)$(DISABLE_DYNLOADING),ANDROID)
gb_ICU_suffix:=lo
else
gb_ICU_suffix:=
endif
define gb_LinkTarget__use_icu_headers
$(call gb_LinkTarget_use_unpacked,$(1),icu)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/icu/source \
-I$(gb_UnpackedTarball_workdir)/icu/source/i18n \
-I$(gb_UnpackedTarball_workdir)/icu/source/common \
$$(INCLUDE) \
)
endef
define gb_ExternalProject__use_icu
$(call gb_ExternalProject_use_package,$(1),icu)
endef
# icudata and icui18n is called icudt and icuin when built with MSVC :-/
2011-08-11 05:42:39 -05:00
define gb_LinkTarget__use_icudata
$(call gb_LinkTarget_use_package,$(1),icu_ure)
ifeq ($(OS),WNT)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/icu/source/lib/icudt$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/icu/source/lib -licudata$(gb_ICU_suffix) \
2011-08-11 05:42:39 -05:00
)
endif
2011-08-11 05:42:39 -05:00
endef
2011-07-26 02:58:54 -05:00
define gb_LinkTarget__use_icui18n
$(call gb_LinkTarget_use_package,$(1),icu)
2011-08-11 05:42:39 -05:00
ifeq ($(OS),WNT)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/icu/source/lib/icuin$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/icu/source/lib -licui18n$(gb_ICU_suffix) \
)
2011-08-19 02:32:18 -05:00
endif
endef
define gb_LinkTarget__use_icuuc
$(call gb_LinkTarget_use_package,$(1),icu_ure)
ifeq ($(OS),WNT)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/icu/source/lib/icuuc$(if $(MSVC_USE_DEBUG_RUNTIME),d).lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/icu/source/lib -licuuc$(gb_ICU_suffix) \
)
endif
endef
endif # SYSTEM_ICU
ifneq ($(SYSTEM_HARFBUZZ),)
define gb_LinkTarget__use_harfbuzz
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(HARFBUZZ_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
endef
gb_ExternalProject__use_harfbuzz :=
else # SYSTEM_HARFBUZZ != TRUE
define gb_LinkTarget__use_harfbuzz
$(call gb_LinkTarget_set_include,$(1),\
$(HARFBUZZ_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
2018-09-22 10:30:36 -05:00
$(call gb_LinkTarget_use_external,$(1),icuuc)
$(call gb_LinkTarget_use_external_project,$(1),harfbuzz)
endef
define gb_ExternalProject__use_harfbuzz
$(call gb_ExternalProject_use_external_project,$(1),harfbuzz)
endef
endif # SYSTEM_HARFBUZZ
ifneq ($(ENABLE_OPENSSL),TRUE)
gb_ExternalProject__use_openssl:=
gb_LinkTarget__use_openssl_headers:=
gb_LinkTarget__use_openssl:=
else # ENABLE_OPENSSL
ifneq ($(SYSTEM_OPENSSL),)
gb_LinkTarget__use_openssl_headers:=
gb_ExternalProject__use_openssl:=
define gb_LinkTarget__use_openssl
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(OPENSSL_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS))
endef
else # !SYSTEM_OPENSSL
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
openssl \
))
define gb_ExternalProject__use_openssl
$(call gb_ExternalProject_use_package,$(1),openssl)
endef
define gb_LinkTarget__use_openssl_headers
$(call gb_LinkTarget_use_external_project,$(1),openssl,full)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/openssl/include \
$$(INCLUDE) \
)
endef
define gb_LinkTarget__use_openssl
$(call gb_LinkTarget_use_package,$(1),openssl)
ifeq ($(OS),WNT)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/openssl/libcrypto.lib \
$(gb_UnpackedTarball_workdir)/openssl/libssl.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/openssl/libssl.a \
$(gb_UnpackedTarball_workdir)/openssl/libcrypto.a \
$(if $(filter $(OS),LINUX),-pthread) \
)
$(call gb_LinkTarget_use_external_project,$(1),openssl)
ifeq ($(OS),SOLARIS)
$(call gb_LinkTarget_add_libs,$(1),\
-lnsl \
-lsocket \
)
endif
endif
endef
endif # SYSTEM_OPENSSL
endif # ENABLE_OPENSSL
2011-07-27 18:03:23 -05:00
ifneq ($(SYSTEM_ARGON2),)
define gb_LinkTarget__use_argon2
$(call gb_LinkTarget_set_include,$(1),\
$(ARGON2_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ARGON2_LIBS))
endef
else # !SYSTEM_ARGON2
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
argon2 \
))
define gb_LinkTarget__use_argon2
$(call gb_LinkTarget_set_include,$(1),\
$(ARGON2_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ARGON2_LIBS))
$(call gb_LinkTarget_use_package,$(1),argon2)
endef
endif # SYSTEM_ARGON2
ifneq ($(SYSTEM_CDR),)
2011-11-28 08:06:59 -06:00
define gb_LinkTarget__use_cdr
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(CDR_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(CDR_LIBS))
endef
else # !SYSTEM_CDR
2011-11-28 08:06:59 -06:00
define gb_LinkTarget__use_cdr
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libcdr/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libcdr/src/lib/.libs/libcdr-0.1$(gb_StaticLibrary_PLAINEXT) \
2011-11-28 08:06:59 -06:00
)
$(call gb_LinkTarget_use_external_project,$(1),libcdr)
2011-11-28 08:06:59 -06:00
endef
endif # SYSTEM_CDR
2011-11-28 08:06:59 -06:00
ifneq ($(SYSTEM_EBOOK),)
define gb_LinkTarget__use_ebook
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(EBOOK_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(EBOOK_LIBS))
endef
gb_ExternalProject__use_ebook :=
else # !SYSTEM_EBOOK
define gb_LinkTarget__use_ebook
$(call gb_LinkTarget_set_include,$(1),\
-I${WORKDIR}/UnpackedTarball/libebook/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libebook/src/lib/.libs/libe-book-0.1$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libebook)
endef
define gb_ExternalProject__use_ebook
$(call gb_ExternalProject_use_external_project,$(1),libebook)
endef
endif # SYSTEM_EBOOK
ifneq ($(SYSTEM_ETONYEK),)
define gb_LinkTarget__use_etonyek
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(ETONYEK_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ETONYEK_LIBS))
endef
gb_ExternalProject__use_etonyek :=
else # !SYSTEM_ETONYEK
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
etonyek \
))
define gb_LinkTarget__use_etonyek
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libetonyek/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
etonyek \
)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
libetonyek \
))
define gb_LinkTarget__use_etonyek
$(call gb_LinkTarget_use_package,$(1),libetonyek)
$(call gb_LinkTarget_set_include,$(1),\
-I${WORKDIR}/UnpackedTarball/libetonyek/inc \
-DLIBETONYEK_VISIBILITY \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libetonyek/src/lib/.libs -letonyek-0.1 \
)
$(call gb_LinkTarget_use_external_project,$(1),libetonyek)
endef
define gb_ExternalProject__use_etonyek
$(call gb_ExternalProject_use_external_project,$(1),libetonyek)
endef
endif
endif # SYSTEM_ETONYEK
ifneq ($(SYSTEM_FREEHAND),)
define gb_LinkTarget__use_freehand
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(FREEHAND_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(FREEHAND_LIBS))
endef
gb_ExternalProject__use_freehand :=
else # !SYSTEM_FREEHAND
define gb_LinkTarget__use_freehand
$(call gb_LinkTarget_set_include,$(1),\
-I${WORKDIR}/UnpackedTarball/libfreehand/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libfreehand/src/lib/.libs/libfreehand-0.1$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libfreehand)
endef
define gb_ExternalProject__use_freehand
$(call gb_ExternalProject_use_external_project,$(1),libfreehand)
endef
endif # SYSTEM_FREEHAND
ifneq ($(SYSTEM_ODFGEN),)
define gb_LinkTarget__use_odfgen
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(ODFGEN_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ODFGEN_LIBS))
endef
else # !SYSTEM_ODFGEN
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
odfgen \
))
define gb_LinkTarget__use_odfgen
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libodfgen/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
odfgen \
)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
libodfgen \
))
define gb_LinkTarget__use_odfgen
$(call gb_LinkTarget_use_package,$(1),libodfgen)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libodfgen/inc \
-DLIBODFGEN_VISIBILITY \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libodfgen/src/.libs -lodfgen-0.1 \
)
endef
endif
endif # SYSTEM_ODFGEN
ifneq ($(SYSTEM_EPUBGEN),)
define gb_LinkTarget__use_epubgen
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(EPUBGEN_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(EPUBGEN_LIBS))
endef
gb_ExternalProject__use_epubgen :=
else # !SYSTEM_EPUBGEN
ifneq ($(ENABLE_WASM_STRIP_EPUB),TRUE)
define gb_LinkTarget__use_epubgen
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libepubgen/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libepubgen/src/lib/.libs/libepubgen-0.1$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libepubgen)
endef
define gb_ExternalProject__use_epubgen
$(call gb_ExternalProject_use_external_project,$(1),libepubgen)
endef
endif # ENABLE_WASM_STRIP_EPUB
endif # SYSTEM_EPUBGEN
ifneq ($(SYSTEM_REVENGE),)
define gb_LinkTarget__use_revenge
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(REVENGE_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(REVENGE_LIBS))
endef
gb_ExternalProject__use_revenge :=
else # !SYSTEM_REVENGE
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
revenge \
))
define gb_LinkTarget__use_revenge
$(call gb_LinkTarget_set_include,$(1),\
$(REVENGE_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
revenge \
)
endef
define gb_ExternalProject__use_revenge
$(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,revenge)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
librevenge \
))
define gb_LinkTarget__use_revenge
$(call gb_LinkTarget_use_package,$(1),librevenge)
$(call gb_LinkTarget_set_include,$(1),\
$(REVENGE_CFLAGS) \
-DLIBREVENGE_VISIBILITY \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(REVENGE_LIBS) \
)
endef
define gb_ExternalProject__use_revenge
$(call gb_ExternalProject_use_package,$(1),librevenge)
endef
endif # MSC
endif # SYSTEM_REVENGE
ifneq ($(SYSTEM_ABW),)
define gb_LinkTarget__use_abw
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(ABW_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ABW_LIBS))
endef
gb_ExternalProject__use_abw :=
else # !SYSTEM_ABW
define gb_LinkTarget__use_abw
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libabw/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libabw/src/lib/.libs/libabw-0.1$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libabw)
endef
define gb_ExternalProject__use_abw
$(call gb_ExternalProject_use_external_project,$(1),libabw)
endef
endif # SYSTEM_ABW
ifneq ($(SYSTEM_MSPUB),)
define gb_LinkTarget__use_mspub
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(MSPUB_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(MSPUB_LIBS))
endef
else # !SYSTEM_MSPUB
define gb_LinkTarget__use_mspub
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libmspub/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libmspub/src/lib/.libs/libmspub-0.1$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libmspub)
endef
endif # SYSTEM_MSPUB
ifneq ($(SYSTEM_PAGEMAKER),)
define gb_LinkTarget__use_pagemaker
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(PAGEMAKER_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(PAGEMAKER_LIBS))
endef
gb_ExternalProject__use_pagemaker :=
else # !SYSTEM_PAGEMAKER
define gb_LinkTarget__use_pagemaker
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libpagemaker/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libpagemaker/src/lib/.libs/libpagemaker-0.0$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libpagemaker)
endef
define gb_ExternalProject__use_pagemaker
$(call gb_ExternalProject_use_external_project,$(1),libpagemaker)
endef
endif # SYSTEM_PAGEMAKER
ifneq ($(SYSTEM_QXP),)
define gb_LinkTarget__use_qxp
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(QXP_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(QXP_LIBS))
endef
gb_ExternalProject__use_qxp :=
else # !SYSTEM_QXP
define gb_LinkTarget__use_qxp
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libqxp/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libqxp/src/lib/.libs/libqxp-0.0$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libqxp)
endef
define gb_ExternalProject__use_qxp
$(call gb_ExternalProject_use_external_project,$(1),libqxp)
endef
endif # SYSTEM_QXP
ifneq ($(SYSTEM_ZMF),)
define gb_LinkTarget__use_zmf
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(ZMF_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ZMF_LIBS))
endef
gb_ExternalProject__use_zmf :=
else # !SYSTEM_ZMF
define gb_LinkTarget__use_zmf
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libzmf/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libzmf/src/lib/.libs/libzmf-0.0$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libzmf)
endef
define gb_ExternalProject__use_zmf
$(call gb_ExternalProject_use_external_project,$(1),libzmf)
endef
endif # SYSTEM_ZMF
ifneq ($(SYSTEM_VISIO),)
2011-07-28 10:29:44 -05:00
define gb_LinkTarget__use_visio
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(VISIO_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(VISIO_LIBS))
2011-07-28 10:29:44 -05:00
endef
else # !SYSTEM_VISIO
2011-07-28 10:29:44 -05:00
define gb_LinkTarget__use_visio
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libvisio/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libvisio/src/lib/.libs/libvisio-0.1$(gb_StaticLibrary_PLAINEXT) \
2011-07-28 10:29:44 -05:00
)
$(call gb_LinkTarget_use_external_project,$(1),libvisio)
2011-07-28 10:29:44 -05:00
endef
endif # SYSTEM_VISIO
2011-07-28 10:29:44 -05:00
ifneq ($(SYSTEM_WPD),)
2011-07-28 10:29:44 -05:00
define gb_LinkTarget__use_wpd
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(WPD_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(WPD_LIBS))
2011-07-28 10:29:44 -05:00
endef
gb_ExternalProject__use_wpd :=
2011-07-28 10:29:44 -05:00
else # !SYSTEM_WPD
2011-07-28 10:29:44 -05:00
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
wpd \
))
define gb_LinkTarget__use_wpd
$(call gb_LinkTarget_set_include,$(1),\
$(WPD_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
wpd \
)
endef
define gb_ExternalProject__use_wpd
$(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_Library_get_target,wpd)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
libwpd \
))
define gb_LinkTarget__use_wpd
$(call gb_LinkTarget_use_package,$(1),libwpd)
$(call gb_LinkTarget_set_include,$(1),\
$(WPD_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(WPD_LIBS) \
)
endef
define gb_ExternalProject__use_wpd
$(call gb_ExternalProject_use_package,$(1),libwpd)
endef
endif # MSC
endif # SYSTEM_WPD
2011-07-28 10:29:44 -05:00
ifneq ($(SYSTEM_WPG),)
2011-07-28 10:29:44 -05:00
define gb_LinkTarget__use_wpg
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(WPG_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(WPG_LIBS))
2011-07-28 10:29:44 -05:00
endef
gb_ExternalProject__use_wpg :=
2011-07-28 10:29:44 -05:00
else # !SYSTEM_WPG
2011-07-28 10:29:44 -05:00
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
wpg \
))
2011-07-28 10:29:44 -05:00
define gb_LinkTarget__use_wpg
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libwpg/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
wpg \
2011-07-28 10:29:44 -05:00
)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
libwpg \
))
define gb_LinkTarget__use_wpg
$(call gb_LinkTarget_use_package,$(1),libwpg)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libwpg/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libwpg/src/lib/.libs -lwpg-0.3 \
)
2011-07-28 10:29:44 -05:00
endef
endif # MSC
endif # SYSTEM_WPG
2011-07-28 10:29:44 -05:00
ifneq ($(SYSTEM_WPS),)
2011-07-28 10:29:44 -05:00
define gb_LinkTarget__use_wps
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(WPS_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(WPS_LIBS))
2011-07-28 10:29:44 -05:00
endef
gb_ExternalProject__use_wps :=
2011-07-28 10:29:44 -05:00
else # !SYSTEM_WPS
2011-07-28 10:29:44 -05:00
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
wps \
))
2011-07-28 10:29:44 -05:00
define gb_LinkTarget__use_wps
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libwps/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
wps \
2011-07-28 10:29:44 -05:00
)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
libwps \
))
define gb_LinkTarget__use_wps
$(call gb_LinkTarget_use_package,$(1),libwps)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libwps/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libwps/src/lib/.libs -lwps-0.4 \
)
2011-07-28 10:29:44 -05:00
endef
endif # MSC
endif # SYSTEM_WPS
2011-07-28 10:29:44 -05:00
ifneq ($(SYSTEM_MWAW),)
define gb_LinkTarget__use_mwaw
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(MWAW_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(MWAW_LIBS))
endef
else # !SYSTEM_MWAW
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
mwaw \
))
define gb_LinkTarget__use_mwaw
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libmwaw/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
mwaw \
)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
libmwaw \
))
define gb_LinkTarget__use_mwaw
$(call gb_LinkTarget_use_package,$(1),libmwaw)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libmwaw/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libmwaw/src/lib/.libs -lmwaw-0.3 \
)
endef
endif # MSC
endif # SYSTEM_MWAW
ifneq ($(SYSTEM_STAROFFICE),)
define gb_LinkTarget__use_staroffice
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(STAROFFICE_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(STAROFFICE_LIBS))
endef
else # !SYSTEM_STAROFFICE
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
staroffice \
))
define gb_LinkTarget__use_staroffice
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libstaroffice/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
staroffice \
)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
libstaroffice \
))
define gb_LinkTarget__use_staroffice
$(call gb_LinkTarget_use_package,$(1),libstaroffice)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libstaroffice/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libstaroffice/src/lib/.libs -lstaroffice-0.0 \
)
endef
endif # MSC
endif # SYSTEM_STAROFFICE
ifneq ($(SYSTEM_LCMS2),)
2012-03-02 03:15:42 -06:00
define gb_LinkTarget__use_lcms2
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LCMS2_CFLAGS) \
2012-03-02 03:15:42 -06:00
)
$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
endef
gb_ExternalProject__use_lcms2 :=
2012-03-02 03:15:42 -06:00
else # !SYSTEM_LCMS2
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
lcms2 \
))
define gb_ExternalProject__use_lcms2
$(call gb_ExternalProject_use_package,$(1),lcms2)
endef
ifeq ($(OS),ANDROID)
define gb_LinkTarget__use_lcms2
$(call gb_LinkTarget_use_package,$(1),lcms2)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/lcms2/include \
$$(INCLUDE) \
)
endef
else
2012-03-02 03:15:42 -06:00
define gb_LinkTarget__use_lcms2
$(call gb_LinkTarget_use_package,$(1),lcms2)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/lcms2/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
2012-03-02 03:15:42 -06:00
endef
endif # ANDROID
2012-03-02 03:15:42 -06:00
endif # SYSTEM_LCMS2
ifneq ($(ENABLE_LPSOLVE),)
2012-03-02 03:15:42 -06:00
ifneq ($(SYSTEM_LPSOLVE),)
2011-07-27 18:03:23 -05:00
define gb_LinkTarget__use_lpsolve
2011-07-27 18:03:23 -05:00
$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_LPSOLVE \
)
2011-07-27 18:03:23 -05:00
endef
else # !SYSTEM_LPSOLVE
define gb_LinkTarget__use_lpsolve
$(call gb_LinkTarget_use_package,$(1),lpsolve)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/lpsolve/lpsolve55/lpsolve55.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/lpsolve/lpsolve55 -llpsolve55 \
2011-07-27 18:03:23 -05:00
)
endif
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/lpsolve \
$$(INCLUDE) \
)
2011-07-27 18:03:23 -05:00
endef
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
lpsolve \
))
2011-07-27 18:03:23 -05:00
endif # SYSTEM_LPSOLVE
else
gb_LinkTarget__use_lpsolve :=
endif # ENABLE_LPSOLVE
ifneq ($(ENABLE_COINMP),)
ifneq ($(SYSTEM_COINMP),TRUE)
define gb_LinkTarget__use_coinmp
$(call gb_LinkTarget_use_package,$(1),coinmp)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/coinmp/CoinMP/MSVisualStudio/v9/$(wnt_arch_subdir_optional)$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release)/CoinMP.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/coinmp/Cbc/src/.libs -lCbc -lCbcSolver \
-L$(gb_UnpackedTarball_workdir)/coinmp/Cgl/src/.libs -lCgl \
-L$(gb_UnpackedTarball_workdir)/coinmp/Clp/src/.libs -lClp \
-L$(gb_UnpackedTarball_workdir)/coinmp/Clp/src/OsiClp/.libs -lOsiClp \
-L$(gb_UnpackedTarball_workdir)/coinmp/CoinMP/src/.libs -lCoinMP \
-L$(gb_UnpackedTarball_workdir)/coinmp/CoinUtils/src/.libs -lCoinUtils \
-L$(gb_UnpackedTarball_workdir)/coinmp/Osi/src/Osi/.libs -lOsi \
)
endif
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/coinmp/CoinMP/src \
-I$(gb_UnpackedTarball_workdir)/coinmp/CoinUtils/src \
$$(INCLUDE) \
)
endef
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
coinmp \
))
else # SYSTEM_COINMP
define gb_LinkTarget__use_coinmp
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(COINMP_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(COINMP_LIBS))
endef
endif
else
gb_LinkTarget__use_coinmp :=
endif # ENABLE_COINMP
2011-07-27 18:03:23 -05:00
ifneq (,$(filter MDNSRESPONDER,$(BUILD_TYPE)))
define gb_LinkTarget__use_mDNSResponder
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/mDNSResponder/mDNSShared \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),mDNSResponder)
endef
endif # MDNSRESPONDER
ifeq ($(ENABLE_GIO),TRUE)
2011-07-27 18:03:23 -05:00
define gb_LinkTarget__use_gio
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
2012-01-16 02:57:38 -06:00
$(GIO_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(GIO_LIBS))
endef
else # ENABLE_GIO
define gb_LinkTarget__use_gio
endef
endif # ENABLE_GIO
ifeq ($(ENABLE_AVAHI),TRUE)
define gb_LinkTarget__use_avahi
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(AVAHI_CFLAGS) \
)
$(call gb_LinkTarget_add_defs,$(1),\
-DENABLE_AVAHI \
)
$(call gb_LinkTarget_add_libs,$(1),$(AVAHI_LIBS))
endef
else # ENABLE_AVAHI
gb_LinkTarget__use_avahi :=
endif # ENABLE_AVAHI
Handle CPDB lib in configure/build system In preparation of Biswadeep's upcoming GSoC changes (see [1]) to update the CPDB (Common Print Dialog Backends) support to the latest version and use the CPDB C API, add a corresponding `--enable-cpdb` autogen option (disabled by default). When CPDB is enabled, check for the cpdb-frontend library, define `ENABLE_CPDB` and set the compiler and linker flags for building the `CPDManager` (in vcl/unx/generic/printer/cpdmgr.cxx). Add checks for existing code using `CPDBManager`, so it only gets used when when CPDB is actually enabled. While the cpdb-frontend library is currently not actually used in `CPDManager` yet (as the previous approach tried to use some DBUs API directly), it will be in Biswadeep's upcoming changes. With this commit in place, an `--enable-cpdb` build works with this additional local test change in place to actually make use of the library: diff --git a/vcl/unx/generic/printer/cpdmgr.cxx b/vcl/unx/generic/printer/cpdmgr.cxx index 7dc17cede353..0c3b71d519db 100644 --- a/vcl/unx/generic/printer/cpdmgr.cxx +++ b/vcl/unx/generic/printer/cpdmgr.cxx @@ -22,6 +22,8 @@ #include <cstddef> #include <unistd.h> +#include <cpdb/cpdb-frontend.h> + #include <unx/cpdmgr.hxx> #include <osl/file.h> @@ -259,6 +261,7 @@ CPDManager* CPDManager::tryLoadCPD() } } #endif + cpdbPrintFile(nullptr, nullptr); return pManager; } [1] https://lists.freedesktop.org/archives/libreoffice/2024-May/091911.html Change-Id: Ifc50d2cd6496346bea55c73cb703e3c2d3eb44b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168656 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Reviewed-by: Biswadeep Purkayastha <bpdps95@hotmail.com>
2024-06-11 00:31:07 -05:00
ifeq ($(ENABLE_CPDB),TRUE)
define gb_LinkTarget__use_cpdb
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(CPDB_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(CPDB_LIBS) \
)
endef
else # ENABLE_CPDB
define gb_LinkTarget__use_cpdb
endef
endif # ENABLE_CPDB
ifeq ($(ENABLE_CUPS),TRUE)
define gb_LinkTarget__use_cups
$(call gb_LinkTarget_add_libs,$(1),\
-lcups \
)
endef
else # ENABLE_CUPS
define gb_LinkTarget__use_cups
endef
endif # ENABLE_CUPS
2011-11-02 07:00:48 -05:00
ifeq ($(ENABLE_DBUS),TRUE)
2011-11-02 07:00:48 -05:00
define gb_LinkTarget__use_dbus
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(DBUS_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(DBUS_LIBS) \
)
endef
else # ENABLE_DBUS
define gb_LinkTarget__use_dbus
endef
endif # ENABLE_DBUS
ifneq ($(SYSTEM_LIBPNG),)
2011-09-15 07:44:34 -05:00
define gb_LinkTarget__use_libpng
2011-09-15 07:44:34 -05:00
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBPNG_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(LIBPNG_LIBS) \
)
endef
gb_ExternalProject__use_libpng :=
2011-09-15 07:44:34 -05:00
else # !SYSTEM_LIBPNG
define gb_LinkTarget__use_libpng
$(call gb_LinkTarget_set_include,$(1),\
$(LIBPNG_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
libpng \
2011-09-15 07:44:34 -05:00
)
$(call gb_LinkTarget__use_zlib,$(1))
2011-09-15 07:44:34 -05:00
endef
define gb_ExternalProject__use_libpng
$(call gb_ExternalProject_use_static_libraries,$(1),\
libpng \
)
endef
2011-09-15 07:44:34 -05:00
endif # !SYSTEM_LIBPNG
ifneq ($(SYSTEM_LIBTIFF),)
define gb_LinkTarget__use_libtiff
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBTIFF_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(LIBTIFF_LIBS) \
)
endef
gb_ExternalProject__use_libtiff :=
else # !SYSTEM_LIBTIFF
define gb_LinkTarget__use_libtiff
$(call gb_LinkTarget_set_include,$(1),\
$(LIBTIFF_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libtiff/libtiff \
$$(INCLUDE) \
)
ifeq ($(OS),WNT)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libtiff/libtiff/.libs/libtiff$(gb_StaticLibrary_PLAINEXT) \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libtiff/libtiff/.libs -ltiff \
)
endif
$(call gb_LinkTarget_use_external_project,$(1),libtiff,full)
endef
define gb_ExternalProject__use_libtiff
$(call gb_ExternalProject_use_external_project,$(1),libtiff)
endef
endif # !SYSTEM_LIBTIFF
2011-12-06 12:17:52 -06:00
ifneq ($(SYSTEM_LIBWEBP),)
define gb_LinkTarget__use_libwebp
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBWEBP_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(LIBWEBP_LIBS) \
)
endef
gb_ExternalProject__use_libwebp :=
else # !SYSTEM_LIBWEBP
define gb_LinkTarget__use_libwebp
$(call gb_LinkTarget_set_include,$(1),\
$(LIBWEBP_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libwebp/src \
$$(INCLUDE) \
)
ifeq ($(OS),WNT)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libwebp/output/lib/libwebp$(if $(MSVC_USE_DEBUG_RUNTIME),_debug)$(gb_StaticLibrary_PLAINEXT) \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/libwebp/src/.libs -lwebp \
-L$(gb_UnpackedTarball_workdir)/libwebp/sharpyuv/.libs -lsharpyuv \
)
endif
$(call gb_LinkTarget_use_external_project,$(1),libwebp)
endef
define gb_ExternalProject__use_libwebp
$(call gb_ExternalProject_use_external_project,$(1),libwebp)
endef
endif # !SYSTEM_LIBWEBP
ifneq ($(SYSTEM_CURL),)
2011-12-06 12:17:52 -06:00
define gb_LinkTarget__use_curl
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_CURL \
)
2011-12-06 12:17:52 -06:00
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(CURL_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(CURL_LIBS))
endef
else # !SYSTEM_CURL
$(if $(ENABLE_CURL),\
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
curl \
)))
2011-12-06 12:17:52 -06:00
define gb_LinkTarget__use_curl
$(call gb_LinkTarget_use_package,$(1),curl)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/curl/include \
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/curl/builds/libcurl-vc12-$(gb_MSBUILD_PLATFORM)-$(gb_MSBUILD_CONFIG)-dll-zlib-static-ipv6-sspi-schannel/lib/libcurl$(if $(MSVC_USE_DEBUG_RUNTIME),_debug).lib \
2011-12-06 12:17:52 -06:00
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/curl/lib/.libs -lcurl \
)
endif
2011-12-06 12:17:52 -06:00
endef
endif # SYSTEM_CURL
ifeq ($(ENABLE_VALGRIND),TRUE)
2011-12-23 05:21:19 -06:00
define gb_LinkTarget__use_valgrind
$(call gb_LinkTarget_add_defs,$(1),\
-DHAVE_VALGRIND_HEADERS \
2011-12-23 05:21:19 -06:00
)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(VALGRIND_CFLAGS) \
)
endef
else # !ENABLE_VALGRIND
2011-12-23 05:21:19 -06:00
define gb_LinkTarget__use_valgrind
endef
endif # ENABLE_VALGRIND
2011-12-23 05:21:19 -06:00
ifeq ($(ENABLE_POPPLER),TRUE)
ifneq ($(SYSTEM_POPPLER),)
2012-02-18 11:54:35 -06:00
define gb_LinkTarget__use_poppler
$(call gb_LinkTarget_set_include,$(1),\
$(POPPLER_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(POPPLER_LIBS) \
)
endef
else # !SYSTEM_POPPLER
$(eval $(call gb_Helper_register_packages_for_install,pdfimport,\
poppler_data \
))
2012-02-18 11:54:35 -06:00
define gb_LinkTarget__use_poppler
$(call gb_LinkTarget_use_external_project,$(1),poppler,full)
$(call gb_LinkTarget_use_package,$(1),poppler_data)
2012-02-20 23:58:02 -06:00
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/poppler \
-I$(gb_UnpackedTarball_workdir)/poppler/poppler \
-I$(gb_UnpackedTarball_workdir)/poppler/goo \
2012-02-20 23:58:02 -06:00
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),poppler)
$(call gb_LinkTarget_use_external,$(1),libjpeg)
2012-02-20 23:58:02 -06:00
ifeq ($(OS),MACOSX)
$(call gb_LinkTarget_add_libs,$(1),\
-lobjc \
2012-02-18 11:54:35 -06:00
)
else ifeq ($(OS),LINUX)
$(call gb_LinkTarget_add_libs,$(1),\
-pthread \
)
2012-02-20 23:58:02 -06:00
else ifeq ($(OS),WNT)
$(call gb_LinkTarget_use_system_win32_libs,$(1),\
2012-02-20 23:58:02 -06:00
advapi32 \
gdi32 \
)
endif
2012-02-18 11:54:35 -06:00
endef
endif # SYSTEM_POPPLER
endif # ENABLE_POPPLER
2011-12-23 05:21:19 -06:00
ifneq ($(SYSTEM_CLUCENE),)
2012-04-07 08:50:47 -05:00
define gb_LinkTarget__use_clucene
$(call gb_LinkTarget_add_defs,$(1),\
$(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(CLUCENE_CFLAGS))) \
-DSYSTEM_CLUCENE \
2012-04-07 08:50:47 -05:00
)
$(call gb_LinkTarget_set_include,$(1),\
$(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(CLUCENE_CFLAGS)))) \
2012-04-07 08:50:47 -05:00
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(CLUCENE_LIBS) \
)
endef
else # !SYSTEM_CLUCENE
define gb_LinkTarget__use_clucene
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/clucene/src/core \
-I$(gb_UnpackedTarball_workdir)/clucene/src/shared \
-I$(gb_UnpackedTarball_workdir)/clucene/src/contribs-lib \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
2012-04-07 08:50:47 -05:00
clucene \
)
endef
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
$(call gb_Helper_optionals_or,HELPTOOLS XMLHELP,clucene) \
2012-04-07 08:50:47 -05:00
))
endif # SYSTEM_CLUCENE
2011-12-22 15:34:35 -06:00
define gb_LinkTarget__use_gobject
$(call gb_LinkTarget_add_libs,$(1),\
$(GOBJECT_LIBS) \
)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(GOBJECT_CFLAGS) \
)
2011-12-22 15:34:35 -06:00
endef
ifneq ($(SYSTEM_HSQLDB),)
define gb_LinkTarget__use_hsqldb
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_HSQLDB \
-DHSQLDB_JAR=\""file://$(HSQLDB_JAR)"\" \
)
endef
else # !SYSTEM_HSQLDB
define gb_LinkTarget__use_hsqldb
endef
endif # SYSTEM_HSQLDB
ifeq ($(ENABLE_LDAP),TRUE)
ifneq ($(SYSTEM_OPENLDAP),)
define gb_LinkTarget__use_openldap
$(call gb_LinkTarget_add_libs,$(1),\
-lldap \
-llber \
)
endef
gb_ExternalProject__use_openldap :=
else # !SYSTEM_OPENLDAP
define gb_LinkTarget__use_openldap
$(call gb_LinkTarget_use_unpacked,$(1),openldap)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/openldap/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_external_project,$(1),openldap,full)
$(call gb_LinkTarget_add_libs,$(1), \
$(gb_UnpackedTarball_workdir)/openldap/libraries/libldap/.libs/libldap.a \
$(gb_UnpackedTarball_workdir)/openldap/libraries/liblber/.libs/liblber.a \
)
endef
endif
define gb_ExternalProject__use_openldap
$(call gb_ExternalProject_use_external_project,$(1),openldap)
endef
endif # SYSTEM_OPENLDAP
ifneq ($(SYSTEM_LIBTOMMATH),)
define gb_LinkTarget__use_libtommath
$(call gb_LinkTarget_set_include,$(1),\
$(LIBTOMMATH_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBTOMMATH_LIBS))
endef
else # !SYSTEM_LIBTOMMATH
define gb_LinkTarget__use_libtommath
$(call gb_LinkTarget_set_include,$(1),\
-I${WORKDIR}/UnpackedTarball/libtommath \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libtommath/libtommath$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libtommath)
endef
endif # SYSTEM_LIBTOMMATH
define gb_ExternalProject__use_libtommath
$(call gb_ExternalProject_use_external_project,$(1),libtommath)
endef
ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE)
ifneq ($(SYSTEM_FIREBIRD),)
define gb_LinkTarget__use_libfbembed
$(call gb_LinkTarget_set_include,$(1),\
$(FIREBIRD_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(FIREBIRD_LIBS))
endef
else # !SYSTEM_FIREBIRD
$(eval $(call gb_Helper_register_packages_for_install,firebirdsdbc,\
firebird \
))
#$(call gb_LinkTarget__use_libatomic_ops,$(1))
#$(call gb_LinkTarget__use_libtommath,$(1))
define gb_LinkTarget__use_libfbembed
$(call gb_LinkTarget_use_package,$(1),firebird)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/firebird/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/include \
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/firebird/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/bin/ifbclient.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/firebird/gen/$(if $(ENABLE_DEBUG),Debug,Release)/firebird/lib -lfbclient \
)
endif
endef
# endef
endif # SYSTEM_FIREBIRD
else # !ENABLE_FIREBIRD_SDBC
gb_LinkTarget__use_firebird :=
# gb_LinkTarget__use_atomic_ops :=
# gb_LinkTarget__use_libtommath :=
endif # ENABLE_FIREBIRD_SDBC
ifneq ($(SYSTEM_POSTGRESQL),)
define gb_LinkTarget__use_postgresql
$(call gb_LinkTarget_set_include,$(1),\
$(POSTGRESQL_INC) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-lpq \
)
$(call gb_LinkTarget_add_ldflags,$(1),\
$(POSTGRESQL_LIB) \
)
endef
else # !SYSTEM_POSTGRESQL
ifeq ($(OS),WNT)
$(if $(MPL_SUBSET),,\
$(eval $(call gb_Helper_register_packages_for_install,postgresqlsdbc,\
postgresql \
)))
endif # WNT
define gb_LinkTarget__use_postgresql
$(call gb_LinkTarget_use_external_project,$(1),postgresql,full)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/postgresql/src/include \
-I$(gb_UnpackedTarball_workdir)/postgresql/src/interfaces/libpq \
$$(INCLUDE) \
)
ifeq ($(OS),WNT)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/postgresql/$(gb_MSBUILD_CONFIG)/libpq/libpq.lib \
)
else # !WNT
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/postgresql/src/interfaces/libpq/libpq$(gb_StaticLibrary_PLAINEXT) \
$(gb_UnpackedTarball_workdir)/postgresql/src/common/libpgcommon$(gb_StaticLibrary_PLAINEXT) \
$(gb_UnpackedTarball_workdir)/postgresql/src/port/libpgport$(gb_StaticLibrary_PLAINEXT) \
$(if $(WITH_GSSAPI),$(GSSAPI_LIBS)) \
)
endif # !WNT
endef # gb_LinkTarget__use_postgresql
endif # !SYSTEM_POSTGRESQL
ifneq (,$(filter TRUE,$(ENABLE_KF5) $(ENABLE_GTK3_KDE5)))
define gb_LinkTarget__use_kf5
$(call gb_LinkTarget_set_include,$(1),\
$(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(KF5_CFLAGS)))) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_cxxflags,$(1),\
$(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(KF5_CFLAGS))) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(KF5_LIBS) \
)
endef
else # !ENABLE_KF5
define gb_LinkTarget__use_kf5
endef
endif # ENABLE_KF5
ifneq (,$(filter TRUE,$(ENABLE_KF6)))
define gb_LinkTarget__use_kf6
$(call gb_LinkTarget_set_include,$(1),\
$(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(KF6_CFLAGS)))) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_cxxflags,$(1),\
$(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(KF6_CFLAGS))) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(KF6_LIBS) \
)
endef
else # !ENABLE_KF6
define gb_LinkTarget__use_kf6
endef
endif # ENABLE_KF6
ifneq (,$(filter TRUE,$(ENABLE_QT5) $(ENABLE_GTK3_KDE5)))
define gb_LinkTarget__use_qt5
$(call gb_LinkTarget_set_include,$(1),\
$(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(QT5_CFLAGS)))) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_defs,$(1),\
$(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(QT5_CFLAGS))) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(QT5_LIBS) \
)
endef
else # !ENABLE_QT5
define gb_LinkTarget__use_qt5
endef
endif # ENABLE_QT5
qt6: Add a qt6 VCL plugin This adds a new "qt6" VCL plugin based on Qt 6. Building the plugin is enabled by autogen option '--enable-qt6' (and optionally setting 'QT6DIR' as needed). Use the 'SAL_USE_VCLPLUGIN=qt6' environment variable before running LO to select this VCL plugin. Taking qt6 into account at all relevant places certainly still requires follow-up changes, but this builds and runs with a self-compiled qtbase from the 'dev' git branch as of commit 3ce0672143d2eb3c3809f82998a4d71c5800d77a. I didn't see anything obviously broken in a quick run, but didn't test much. This reuses and shares the qt5 VCL plugin code; the qt6 headers and sources for now just '#include' the qt5 ones. Version checks are used for the code places that need different handling to be built against Qt 6. The build system parts in this commit were mostly done by copying the qt5 equivalents, then adapting as needed. Some notes on things I came across while porting to qt6: 1) At least in my self-compiled Qt versions, 'moc' (the meta-object compiler) is located in the 'libexec' subdirectory in 'QT6DIR', while the Qt 5 equivalent is located in the "bin" subdirectory of 'QT5DIR', so the configure.ac check uses the former. 2) moc does not process classes from the included headers. Since the headers in 'vcl/inc/qt6' just '#include' the ones from 'vcl/inc/qt5', running moc on the qt6 headers doesn't work, so moc is currently run on the qt5 headers for qt6 as well (s. 'vcl/CustomTarget_qt6_moc.mk'). That will have to be adapted in case the qt6 VCL plugin uses "own" headers instead of just including the qt5 ones at some point. 3) QX11Extras has been removed from Qt 6. [1] says: > Changes to Qt X11 Extras > > The QX11Info class has been removed. > > Clients that still rely on the functionality can include the private > header <QtGui/private/qtx11extras_p.h> as a stopgap solution. To enable > private headers use QT += core-private with qmake, or add a project > dependency to Qt::CorePrivate with CMake. I didn't take any closer look, just dropped the use of QtX11Extras for qt6 for now. 4) XCB_ICCCM is no longer needed. It is only used in qt5 to workaround a Qt bug fixed in Qt 5.12, s. commit fe2baf9e84e0ca9aeaa683e37076f57fa3f38dca Author: Jan-Marek Glogowski <jan-marek.glogowski@extern.cib.de> Date: Tue Dec 3 08:32:58 2019 +0100 Qt5 fix missing XCB_ICCCM_WM_HINT_WINDOW_GROUP 5) X11-specific code is still used for key modifier handling. Therefore, still check for the XCB headers when 'USING_X11' is set in configure.ac, and use a 'QT6_USING_X11' define (as qt5 uses 'QT5_USING_X11'). 6) There's currently no Qt 6 video sink for GStreamer. As of today, qt-gstreamer is unmaintained and there is no Qt 6 version. The project's README [2] says: > 0. Maintenance Notice > --------------------- > > This code is unmaintained. You can use it at your own risk. > > If you want to integrate video display in your QML-based UI, > you should consider using 'qmlglsink', from gst-plugins-good. > This is a well supported video sink that uses the generic > gstreamer-gl stack and is in many ways superior to 'qtquick2videosink' > that is provided by qt-gstreamer. You can use this code as an example: > https://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/tests/examples/qt/qmlsink > > If you are not interested in using QML in your UI, then you > may use one of the other elements provided by this module > (see below). If you do that, it would be helpful to let us > know that this code is still useful to you. We may consider > adding these elements in one of the core gstreamer modules. > > If you are here for the Qt-style bindings, I'm sorry to disappoint you. > The alternative is to use the C API, or the GStreamermm C++ API. > Qt-style bindings are cool, but unfortunately they are very hard > to maintain because they are written by hand. If you are interested > in continuing this project, you are welcome to implement a > generator for them, probably based on GObject-Introspection. > I am happy to provide directions if you want to pursue such a thing. Therefore, the Qt video sink handling is qt5-only and the corresponding handling for GOBJECT (used for the GStreamer video sink handling) was not taken over for qt6. This presumably means that video playback in Impress presentations does not work when using qt6 with they Qt Wayland plugin, s. tdf#125219 for the corresponding bug for qt5/kf5. (I did not build the qtwayland module to actually test this, though. Video playback with the Qt xcb plugin in a Wayland session works.) [1] https://doc-snapshots.qt.io/qt6-dev/extras-changes-qt6.html [2] https://cgit.freedesktop.org/gstreamer/qt-gstreamer/tree/README Change-Id: Ib105ccfb2c3630ec5d5403793a3cd9ba31d85bdf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122808 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2021-09-29 04:09:51 -05:00
ifeq ($(ENABLE_QT6),TRUE)
define gb_LinkTarget__use_qt6
$(call gb_LinkTarget_set_include,$(1),\
$(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(QT6_CFLAGS)))) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_defs,$(1),\
$(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(QT6_CFLAGS))) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(QT6_LIBS) \
)
endef
else # !ENABLE_QT6
define gb_LinkTarget__use_qt6
endef
endif # ENABLE_QT6
# PYTHON
# extra python_headers external because pyuno wrapper must not link python
ifneq ($(SYSTEM_PYTHON),)
define gb_LinkTarget__use_python_headers
$(call gb_LinkTarget_add_defs,$(1),\
$(filter-out -I% -isystem%,$(subst -isystem /,-isystem/,$(PYTHON_CFLAGS)))) \
)
$(call gb_LinkTarget_set_include,$(1),\
$(subst -isystem/,-isystem /,$(filter -I% -isystem%,$(subst -isystem /,-isystem/,$(PYTHON_CFLAGS)))) \
$$(INCLUDE) \
)
endef
define gb_LinkTarget__use_python
$(call gb_LinkTarget__use_python_headers,$(1))
$(call gb_LinkTarget_add_libs,$(1),\
$(PYTHON_LIBS) \
)
endef
else # !SYSTEM_PYTHON
$(eval $(call gb_Helper_register_packages_for_install,python,\
python3 \
$(if $(filter WNT,$(OS)),libffi) \
))
define gb_LinkTarget__use_python_headers
$(call gb_LinkTarget_use_external_project,$(1),python3,full)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/python3 \
-I$(gb_UnpackedTarball_workdir)/python3/PC \
-I$(gb_UnpackedTarball_workdir)/python3/Include \
$$(INCLUDE) \
)
endef
define gb_LinkTarget__use_python
$(call gb_LinkTarget__use_python_headers,$(1))
ifeq ($(OS),MACOSX)
$(call gb_LinkTarget_use_generated_package,$(1),python3)
else
$(call gb_LinkTarget_use_package,$(1),python3)
endif
ifeq ($(OS),WNT)
ifeq ($(CPUNAME),X86_64)
python_arch_subdir=amd64/
else ifeq ($(CPUNAME),AARCH64)
python_arch_subdir=arm64/
else
python_arch_subdir=win32/
endif
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/python3/PCbuild/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).lib \
)
else ifeq ($(OS),MACOSX)
$(call gb_LinkTarget_add_libs,$(1),\
-F$(gb_UnpackedTarball_workdir)/python3/python-inst/@__________________________________________________OOO -framework LibreOfficePython \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/python3 \
-lpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)$(if $(ENABLE_DBGUTIL),d) \
)
endif
endef
# this is only used by python currently
define gb_ExternalProject__use_libffi
$(call gb_ExternalProject_use_external_project,$(1),libffi)
endef
endif # SYSTEM_PYTHON
# ORCUS
ifneq ($(SYSTEM_LIBORCUS),)
define gb_LinkTarget__use_orcus
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(ORCUS_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
endef
define gb_LinkTarget__use_orcus-parser
endef
else # !SYSTEM_LIBORCUS
ifeq ($(COM),MSC)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
orcus \
orcus-parser \
))
define gb_LinkTarget__use_orcus
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/liborcus/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
orcus \
)
endef
define gb_LinkTarget__use_orcus-parser
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/liborcus/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
orcus-parser \
)
endef
else # !MSC
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
liborcus \
))
define gb_LinkTarget__use_orcus
$(call gb_LinkTarget_use_package,$(1),liborcus)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/liborcus/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/liborcus/src/liborcus/.libs -lorcus-0.18 \
)
$(if $(SYSTEM_BOOST), \
$(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
$(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
)
endef
define gb_LinkTarget__use_orcus-parser
$(call gb_LinkTarget_use_package,$(1),liborcus)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/liborcus/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/liborcus/src/parser/.libs -lorcus-parser-0.18 \
)
endef
endif # MSC
endif # SYSTEM_LIBORCUS
ifeq ($(ENABLE_EOT),TRUE)
ifneq ($(SYSTEM_LIBEOT),)
define gb_LinkTarget__use_libeot
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBEOT_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBEOT_LIBS))
endef
gb_ExternalProject__use_libeot :=
else # !SYSTEM_LIBEOT
define gb_LinkTarget__use_libeot
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/libeot/inc \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/libeot/.libs/libeot$(gb_StaticLibrary_PLAINEXT) \
)
$(call gb_LinkTarget_use_external_project,$(1),libeot)
endef
define gb_ExternalProject__use_libeot
$(call gb_ExternalProject_use_external_project,$(1),libeot)
endef
endif # SYSTEM_LIBEOT
else # !ENABLE_EOT
gb_LinkTarget__use_libeot :=
gb_ExternalProject__use_libeot :=
endif # ENABLE_EOT
### X11 stuff ###
ifeq ($(USING_X11), TRUE)
define gb_LinkTarget__use_Xrandr
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(XRANDR_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(XRANDR_LIBS) \
)
endef
define gb_LinkTarget__use_Xrender
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(XRENDER_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(XRENDER_LIBS) \
)
endef
endif # USING_X11
2011-08-02 13:22:35 -05:00
gb_ExternalProject__use_nss3:=
ifneq ($(SYSTEM_NSS),)
define gb_LinkTarget__use_nss3
$(call gb_LinkTarget_add_defs,$(1),\
-DSYSTEM_NSS \
)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
2011-11-02 15:16:53 -05:00
$(NSS_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
2011-11-02 15:16:53 -05:00
$(NSS_LIBS) \
)
endef
define gb_LinkTarget__use_nssutil3
$(call gb_LinkTarget__use_nss3,$(1))
endef
define gb_LinkTarget__use_plc4
$(call gb_LinkTarget__use_nss3,$(1))
endef
define gb_LinkTarget__use_ssl3
$(call gb_LinkTarget__use_nss3,$(1))
endef
else # !SYSTEM_NSS
$(eval $(call gb_Helper_register_packages_for_install,ooo, \
nss \
))
define gb_LinkTarget__use_nss3
$(call gb_LinkTarget_use_package,$(1),nss)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
-I$(gb_UnpackedTarball_workdir)/nss/dist/public/nss \
-I$(gb_UnpackedTarball_workdir)/nss/dist/out/include \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/nss/dist/out/lib/nspr4.lib \
$(gb_UnpackedTarball_workdir)/nss/dist/out/lib/nss3.lib \
$(gb_UnpackedTarball_workdir)/nss/dist/out/lib/smime3.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/nss/dist/out/lib \
-lnspr4 \
-lnss3 \
-lsmime3 \
)
endif
endef
define gb_LinkTarget__use_plc4
$(call gb_LinkTarget_use_package,$(1),nss)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/nss/dist/out/lib/plc4.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/nss/dist/out/lib -lplc4 \
)
endif
endef
define gb_LinkTarget__use_ssl3
$(call gb_LinkTarget_use_package,$(1),nss)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/nss/dist/out/lib/ssl3.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/nss/dist/out/lib -lssl3 \
)
endif
endef
define gb_LinkTarget__use_nssutil3
$(call gb_LinkTarget_use_package,$(1),nss)
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
-I$(gb_UnpackedTarball_workdir)/nss/dist/public/nss \
-I$(gb_UnpackedTarball_workdir)/nss/dist/out/include \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/nss/dist/out/lib/nssutil3.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/nss/dist/out/lib \
-lnssutil3 \
)
endif
endef
define gb_ExternalProject__use_nss3
$(call gb_ExternalProject_use_package,$(1),nss)
endef
endif # SYSTEM_NSS
ifeq ($(ENABLE_BREAKPAD),TRUE)
define gb_LinkTarget__use_breakpad
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/breakpad/src \
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_use_static_libraries,$(1),\
breakpad \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/breakpad/src/client/linux/libbreakpad_client.a \
)
endif
$(call gb_LinkTarget_use_external_project,$(1),breakpad)
endef
endif # ENABLE_BREAKPAD
ifeq ($(ENABLE_GPGMEPP),TRUE)
ifneq ($(SYSTEM_GPGMEPP),)
gb_ExternalProject__use_gpgmepp:=
gb_ExternalProject__use_libassuan:=
gb_ExternalProject__use_libgpg-error:=
define gb_LinkTarget__use_gpgmepp
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$$(GPGMEPP_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),\
$(GPGMEPP_LIBS) \
)
endef
else ifneq ($(filter GPGMEPP,$(BUILD_TYPE)),) # NON-SYSTEM_GPGME
define gb_ExternalProject__use_gpgmepp
$(call gb_ExternalProject_use_external_project,$(1),gpgmepp)
endef
define gb_ExternalProject__use_libassuan
$(call gb_ExternalProject_use_external_project,$(1),libassuan)
endef
define gb_ExternalProject__use_libgpg-error
$(call gb_ExternalProject_use_external_project,$(1),libgpg-error)
endef
ifneq ($(filter WNT,$(OS)),)
define gb_LinkTarget__use_libgpg-error
$(call gb_LinkTarget_use_package,$(1),libgpg-error)
$(call gb_LinkTarget_set_include,$(1),\
$(GPG_ERROR_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-LIBPATH:$(gb_UnpackedTarball_workdir)/libgpg-error/src/.libs libgpg-error.lib \
)
endef
define gb_LinkTarget__use_libassuan
$(call gb_LinkTarget_use_package,$(1),libassuan)
$(call gb_LinkTarget_set_include,$(1),\
$(LIBASSUAN_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-LIBPATH:$(gb_UnpackedTarball_workdir)/libassuan/src/.libs libassuan.lib \
)
endef
define gb_LinkTarget__use_gpgmepp
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/gpgmepp/lang/cpp/src \
-I$(gb_UnpackedTarball_workdir)/gpgmepp/src \
$$(GPG_ERROR_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
gpgmepp \
)
endef
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
gpgmepp \
libassuan \
libgpg-error \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
gpgmepp \
))
endif
ifneq ($(filter MACOSX LINUX,$(OS)),)
define gb_LinkTarget__use_gpgmepp
$(call gb_LinkTarget_use_package,$(1),gpgmepp)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/gpgmepp/lang/cpp/src \
-I$(gb_UnpackedTarball_workdir)/gpgmepp/src \
$$(GPG_ERROR_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/gpgmepp/lang/cpp/src/.libs/ -lgpgmepp \
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),-L$(gb_UnpackedTarball_workdir)/gpgmepp/src/.libs/ -lgpgme) \
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),$$(GPG_ERROR_LIBS)) \
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),$$(LIBASSUAN_LIBS)) \
)
endef
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
gpgmepp \
libassuan \
libgpg-error \
))
endif
endif
else # !ENABLE_GPGMEPP
gb_ExternalProject__use_gpgmepp :=
gb_ExternalProject__use_libassuan :=
gb_ExternalProject__use_libgpg-error :=
gb_LinkTarget__use_gpgmepp :=
gb_LinkTarget__use_libassuan :=
gb_LinkTarget__use_libgpg-error :=
endif # ENABLE_GPGMEPP
define gb_LinkTarget__use_dconf
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(DCONF_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(DCONF_LIBS))
endef
### Jars ############################################################
ifneq ($(SYSTEM_HSQLDB),)
define gb_Jar__use_hsqldb
$(call gb_Jar_use_system_jar,$(1),$(HSQLDB_JAR))
endef
define gb_JunitTest__use_hsqldb
$(call gb_JunitTest_use_system_jar,$(1),$(HSQLDB_JAR))
endef
else # !SYSTEM_HSQLDB
ifeq ($(ENABLE_JAVA),TRUE)
$(eval $(call gb_Helper_register_jars_for_install,OOO,ooo, \
hsqldb \
))
endif
define gb_Jar__use_hsqldb
$(call gb_Jar_use_jar,$(1),hsqldb)
endef
define gb_JunitTest__use_hsqldb
$(call gb_JunitTest_use_jar,$(1),hsqldb)
endef
endif # SYSTEM_HSQLDB
ifeq ($(ENABLE_SCRIPTING_BEANSHELL),TRUE)
ifneq ($(SYSTEM_BSH),)
2011-10-04 02:44:48 -05:00
define gb_Jar__use_bsh
$(call gb_Jar_use_system_jar,$(1),$(BSH_JAR))
2011-10-04 02:44:48 -05:00
endef
else # !SYSTEM_BSH
ifeq ($(ENABLE_JAVA),TRUE)
$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_bsh, \
bsh \
))
endif
define gb_Jar__use_bsh
$(call gb_Jar_use_jar,$(1),bsh)
2011-10-04 02:44:48 -05:00
endef
endif # SYSTEM_BSH
endif
ifeq ($(ENABLE_SCRIPTING_JAVASCRIPT),TRUE)
ifneq ($(SYSTEM_RHINO),)
define gb_Jar__use_rhino
$(call gb_Jar_use_system_jar,$(1),$(RHINO_JAR))
endef
else # !SYSTEM_RHINO
ifeq ($(ENABLE_JAVA),TRUE)
$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_rhino, \
js \
))
endif
define gb_Jar__use_rhino
$(call gb_Jar_use_jar,$(1),js)
endef
endif # SYSTEM_RHINO
endif
ifneq ($(SYSTEM_JFREEREPORT),)
define gb_Jar__use_flow-engine
$(call gb_Jar_use_system_jar,$(1),$(JFREEREPORT_JAR))
endef
define gb_Jar__use_flute
$(call gb_Jar_use_system_jar,$(1),$(FLUTE_JAR))
endef
define gb_Jar__use_libbase
$(call gb_Jar_use_system_jar,$(1),$(LIBBASE_JAR))
endef
define gb_Jar__use_libfonts
$(call gb_Jar_use_system_jar,$(1),$(LIBFONTS_JAR))
endef
define gb_Jar__use_libformula
$(call gb_Jar_use_system_jar,$(1),$(LIBFORMULA_JAR))
endef
define gb_Jar__use_liblayout
$(call gb_Jar_use_system_jar,$(1),$(LIBLAYOUT_JAR))
endef
define gb_Jar__use_libloader
$(call gb_Jar_use_system_jar,$(1),$(LIBLOADER_JAR))
endef
define gb_Jar__use_librepository
$(call gb_Jar_use_system_jar,$(1),$(LIBREPOSITORY_JAR))
endef
define gb_Jar__use_libserializer
$(call gb_Jar_use_system_jar,$(1),$(LIBSERIALIZER_JAR))
endef
define gb_Jar__use_libxml
$(call gb_Jar_use_system_jar,$(1),$(LIBXML_JAR))
endef
define gb_Jar__use_sac
$(call gb_Jar_use_system_jar,$(1),$(SAC_JAR))
endef
else # !SYSTEM_JFREEREPORT
ifeq ($(ENABLE_JAVA),TRUE)
$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
flow-engine \
flute-1.1.6 \
libbase-1.1.6 \
libfonts-1.1.6 \
libformula-1.1.7 \
liblayout \
libloader-1.1.6 \
librepository-1.1.6 \
libserializer-1.1.6 \
libxml-1.1.7 \
sac \
))
endif
define gb_Jar__use_flow-engine
$(call gb_Jar_use_jar,$(1),flow-engine)
endef
define gb_Jar__use_flute
$(call gb_Jar_use_jar,$(1),flute-1.1.6)
endef
define gb_Jar__use_libbase
$(call gb_Jar_use_jar,$(1),libbase-1.1.6)
endef
define gb_Jar__use_libfonts
$(call gb_Jar_use_jar,$(1),libfonts-1.1.6)
endef
define gb_Jar__use_libformula
$(call gb_Jar_use_jar,$(1),libformula-1.1.7)
endef
define gb_Jar__use_liblayout
$(call gb_Jar_use_jar,$(1),liblayout)
endef
define gb_Jar__use_libloader
$(call gb_Jar_use_jar,$(1),libloader-1.1.6)
endef
define gb_Jar__use_librepository
$(call gb_Jar_use_jar,$(1),librepository-1.1.6)
endef
define gb_Jar__use_libserializer
$(call gb_Jar_use_jar,$(1),libserializer-1.1.6)
endef
define gb_Jar__use_libxml
$(call gb_Jar_use_jar,$(1),libxml-1.1.7)
endef
define gb_Jar__use_sac
$(call gb_Jar_use_jar,$(1),sac)
endef
endif # SYSTEM_JFREEREPORT
# As a guide, Java-Websocket was packaged for Fedora 35
# https://src.fedoraproject.org/rpms/Java-WebSocket/tree/f35
ifneq ($(SYSTEM_JAVA_WEBSOCKET),)
define gb_Jar__use_java_websocket
$(call gb_Jar_use_system_jar,$(1),$(JAVA_WEBSOCKET_JAR))
endef
else # !SYSTEM_JAVA_WEBSOCKET
ifeq ($(ENABLE_JAVA),TRUE)
$(eval $(call gb_Helper_register_jars_for_install,URE,ure, \
java_websocket \
))
endif
define gb_Jar__use_java_websocket
$(call gb_Jar_use_jar,$(1),java_websocket)
endef
endif # SYSTEM_JAVA_WEBSOCKET
# Executables
define gb_Executable__register_bestreversemap
$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
$(call gb_CondLibSalTextenc,$(call gb_Library_get_target_for_build,sal_textenc)) \
)
endef
# TODO depending on the whole URE might be overkill, but I do not have a
# Windows machine to debug it...
define gb_Executable__register_climaker
$(call gb_Executable_add_runtime_dependencies,climaker,\
$(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
$(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
$(call gb_UnoApi_get_target_for_build,udkapi) \
$(INSTROOT_FOR_BUILD)/$(LIBO_URE_ETC_FOLDER)/$(call gb_Helper_get_rcfile,uno)
)
endef
define gb_Executable__register_cppumaker
$(call gb_Executable_add_runtime_dependencies,cppumaker,\
$(call gb_CondLibSalTextenc,$(call gb_Library_get_target,sal_textenc)) \
)
endef
# This is used to determine what we need for 'build' platform.
define gb_Executable__register_gengal
$(call gb_Executable_add_runtime_dependencies,gengal,\
$(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
gengal needs Library_localedata_en now Whatever caused that requirement, but a from-scratch build of e.g. Gallery_backgrounds failed for me (with a follow-on SIGABRT after "framework/source/services/desktop.cxx:176: Desktop::~Desktop(): Who forgot to dispose this service?") because it failed to load instdir/program/../program/liblocaledata_en.so at > #1 0x00007fffda0b9671 in i18npool::LocaleDataImpl::getFunctionSymbol(com::sun::star::lang::Locale const&, char const*) (this=0x159b630, rLocale=..., pFunction=0x7fffda136ed8 "getAllFormats0") at i18npool/source/localedata/localedata.cxx:1460 > #2 0x00007fffda0b6a93 in i18npool::LocaleDataImpl::FormatSection::getFunc(i18npool::LocaleDataImpl&, com::sun::star::lang::Locale const&, char const*) (this=0x7fffffffc840, rLocaleData=..., rL=..., pName=0x7fffda136ed8 "getAllFormats0") at i18npool/source/localedata/localedata.cxx:857 > #3 0x00007fffda0b6b5c in i18npool::LocaleDataImpl::getAllFormats(com::sun::star::lang::Locale const&) (this=0x159b630, rLocale=...) at i18npool/source/localedata/localedata.cxx:865 > #4 0x00007fffda0d4815 in NumberFormatCodeMapper::getFormats(com::sun::star::lang::Locale const&) (this=0x1594fa0, rLocale=...) at i18npool/source/numberformatcode/numberformatcode.cxx:150 > #5 0x00007fffda0d4155 in NumberFormatCodeMapper::getAllFormatCode(short, com::sun::star::lang::Locale const&) (this=0x1594fa0, formatUsage=8, rLocale=...) at i18npool/source/numberformatcode/numberformatcode.cxx:92 > #6 0x00007ffff572a824 in LocaleDataWrapper::loadCurrencyFormats() (this=0x159b3f0) at unotools/source/i18n/localedatawrapper.cxx:544 > #7 0x00007ffff572777e in LocaleDataWrapper::loadData() (this=0x159b3f0) at unotools/source/i18n/localedatawrapper.cxx:131 > #8 0x00007ffff57271b4 in LocaleDataWrapper::LocaleDataWrapper(LanguageTag const&, std::__debug::vector<rtl::OUString, std::allocator<rtl::OUString> > const&) (this=0x159b3f0, rLanguageTag=..., rOverrideDateAcceptancePatterns=std::__debug::vector of length 0, capacity 0) at unotools/source/i18n/localedatawrapper.cxx:80 > #9 0x00007ffff5766fd6 in SvtSysLocale_Impl::SvtSysLocale_Impl() (this=0x158a4e0) at unotools/source/misc/syslocale.cxx:67 > #10 0x00007ffff5768ad7 in std::construct_at<SvtSysLocale_Impl>(SvtSysLocale_Impl*) (__location=0x158a4e0) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/stl_construct.h:97 > #11 0x00007ffff5768b1c in std::allocator_traits<std::allocator<SvtSysLocale_Impl> >::construct<SvtSysLocale_Impl>(std::allocator<SvtSysLocale_Impl>&, SvtSysLocale_Impl*) (__a=..., __p=0x158a4e0) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/alloc_traits.h:514 > #12 0x00007ffff57688c2 in std::_Sp_counted_ptr_inplace<SvtSysLocale_Impl, std::allocator<SvtSysLocale_Impl>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<>(std::allocator<SvtSysLocale_Impl>) (this=0x158a4d0, __a=...) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/shared_ptr_base.h:519 > #13 0x00007ffff576860a in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<SvtSysLocale_Impl, std::allocator<SvtSysLocale_Impl>>(SvtSysLocale_Impl*&, std::_Sp_alloc_shared_tag<std::allocator<SvtSysLocale_Impl> >) (this=0x7fffffffd0a8, __p=@0x7fffffffd0a0: 0x0, __a=...) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/shared_ptr_base.h:650 > #14 0x00007ffff57684c6 in std::__shared_ptr<SvtSysLocale_Impl, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<SvtSysLocale_Impl>>(std::_Sp_alloc_shared_tag<std::allocator<SvtSysLocale_Impl> >) (this=0x7fffffffd0a0, __tag=...) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/shared_ptr_base.h:1342 > #15 0x00007ffff576838d in std::shared_ptr<SvtSysLocale_Impl>::shared_ptr<std::allocator<SvtSysLocale_Impl>>(std::_Sp_alloc_shared_tag<std::allocator<SvtSysLocale_Impl> >) (this=0x7fffffffd0a0, __tag=...) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/shared_ptr.h:409 > #16 0x00007ffff5768164 in std::allocate_shared<SvtSysLocale_Impl, std::allocator<SvtSysLocale_Impl>>(std::allocator<SvtSysLocale_Impl> const&) (__a=...) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/shared_ptr.h:863 > #17 0x00007ffff5767dfc in std::make_shared<SvtSysLocale_Impl>() () at ~/gcc/trunk/inst/include/c++/12.0.0/bits/shared_ptr.h:879 > #18 0x00007ffff5767583 in SvtSysLocale::SvtSysLocale() (this=0x7fffffffd120) at unotools/source/misc/syslocale.cxx:122 > #19 0x00007ffff015148f in FwkResId(TranslateId) (aId=...) at framework/source/fwe/classes/fwkresid.cxx:22 > #20 0x00007ffff025f333 in framework::Desktop::constructorInit() (this=0x1588850) at framework/source/services/desktop.cxx:106 > #21 0x00007ffff0265c1c in (anonymous namespace)::createDesktop(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) (context=...) at framework/source/services/desktop.cxx:1764 > #22 0x00007ffff0265ce5 in framework::getDesktop(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) (context=...) at framework/source/services/desktop.cxx:1773 > #23 0x00007ffff0265d9e in com_sun_star_comp_framework_Desktop_get_implementation(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&) (context=0x522200) at framework/source/services/desktop.cxx:1782 > #24 0x00007ffff5a5d864 in std::__invoke_impl<com::sun::star::uno::XInterface*, com::sun::star::uno::XInterface* (*&)(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&), com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&>(std::__invoke_other, com::sun::star::uno::XInterface* (*&)(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&), com::sun::star::uno::XComponentContext*&&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&) (__f=@0x54bb58: 0x7ffff0265d5f <com_sun_star_comp_framework_Desktop_get_implementation(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)>) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/invoke.h:61 > #25 0x00007ffff5a551f4 in std::__invoke_r<com::sun::star::uno::XInterface*, com::sun::star::uno::XInterface* (*&)(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&), com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&>(com::sun::star::uno::XInterface* (*&)(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&), com::sun::star::uno::XComponentContext*&&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&) (__fn=@0x54bb58: 0x7ffff0265d5f <com_sun_star_comp_framework_Desktop_get_implementation(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)>) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/invoke.h:114 > #26 0x00007ffff5a4d254 in std::_Function_handler<com::sun::star::uno::XInterface* (com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&), com::sun::star::uno::XInterface* (*)(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)>::_M_invoke(std::_Any_data const&, com::sun::star::uno::XComponentContext*&&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&) (__functor=..., __args#0=@0x7fffffffd4f0: 0x522200, __args#1=...) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/std_function.h:291 > #27 0x00007ffff5a3f913 in std::function<com::sun::star::uno::XInterface* (com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)>::operator()(com::sun::star::uno::XComponentContext*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&) const (this=0x54bb58, __args#0=0x522200, __args#1=...) at ~/gcc/trunk/inst/include/c++/12.0.0/bits/std_function.h:568 > #28 0x00007ffff5a2a396 in cppuhelper::ServiceManager::Data::Implementation::doCreateInstance(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) (this=0x54baa0, context=...) at cppuhelper/source/servicemanager.cxx:704 > #29 0x00007ffff5a2a12a in cppuhelper::ServiceManager::Data::Implementation::createInstance(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, bool) (this=0x54baa0, context=..., singletonRequest=false) at cppuhelper/source/servicemanager.cxx:672 > #30 0x00007ffff5a2d02d in cppuhelper::ServiceManager::createInstanceWithContext(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) (this=0x523450, aServiceSpecifier=..., Context=...) at cppuhelper/source/servicemanager.cxx:1003 > #31 0x00007ffff6cd9922 in com::sun::star::frame::Desktop::create(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) (the_context=...) at workdir/UnoApiHeadersTarget/offapi/normal/com/sun/star/frame/Desktop.hpp:38 > #32 0x00007ffff6cd8c07 in SfxApplication::Initialize_Impl() (this=0x1588150) at sfx2/source/appl/appinit.cxx:182 > #33 0x00007ffff6cb776a in SfxApplication::GetOrCreate() () at sfx2/source/appl/app.cxx:122 > #34 0x0000000000405ecf in (anonymous namespace)::GalApp::Main() (this=0x4204e0 <vclmain::createApplication()::aGalApp>) at svx/source/gengal/gengal.cxx:254 > #35 0x00007ffff2dd6777 in ImplSVMain() () at vcl/source/app/svmain.cxx:199 > #36 0x00007ffff2dd6898 in SVMain() () at vcl/source/app/svmain.cxx:231 > #37 0x0000000000410f1f in sal_main() () at vcl/source/salmain/salmain.cxx:34 > #38 0x0000000000410efa in main(int, char**) (argc=10, argv=0x7fffffffded8) at vcl/source/salmain/salmain.cxx:29 This fix should remove the need for the cross-build--only fix 0e142fa01972ad28182ca54b855d0ecae0d5c83b "cross-toolset: gengal now needs localedata_en", which it reverts. Change-Id: If71b7249c19619a83911c7624e3d99077decba31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120837 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-08-22 04:26:38 -05:00
$(call gb_Library_get_target_for_build,localedata_en) \
$(if $(filter MACOSX,$(OS_FOR_BUILD)),$(call gb_Library_get_target_for_build,vclplug_osx)) \
$(if $(filter WNT,$(OS_FOR_BUILD)),$(call gb_Library_get_target_for_build,vclplug_win)) \
$(if $(filter host,$(gb_Side)),$(call gb_Package_get_target,postprocess_images)) \
$(call gb_Package_get_target_for_build,postprocess_registry) \
$(INSTROOT_FOR_BUILD)/$(LIBO_URE_ETC_FOLDER)/$(call gb_Helper_get_rcfile,uno) \
$(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/$(call gb_Helper_get_rcfile,fundamental) \
$(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/$(call gb_Helper_get_rcfile,louno) \
$(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
$(INSTROOT_FOR_BUILD)/$(LIBO_ETC_FOLDER)/services/services.rdb \
$(call gb_UnoApi_get_target_for_build,offapi) \
$(call gb_UnoApi_get_target_for_build,udkapi) \
)
endef
ifeq ($(SYSTEM_ICU),)
define gb_Executable__register_gendict
$(call gb_Executable_add_runtime_dependencies,gendict,\
$(call gb_Package_get_target_for_build,icu) \
$(call gb_Package_get_target_for_build,icu_ure) \
)
endef
endif
define gb_Executable__register_localize
$(call gb_Executable_add_runtime_dependencies,localize,\
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
$(foreach exec,cfgex helpex propex treex ulfex xrmex,\
$(call gb_Executable_get_runtime_dependencies,$(exec)) \
) \
)
endef
# FIXME ure/services.rdb needs cleanup
# The dependencies on ure/services.rdb and udkapi.rdb are implicitly required
# due to the settings for URE_SERVICES and URE_TYPES in cppuhelper/source/unorc:
define gb_Executable__register_saxparser
$(call gb_Executable_add_runtime_dependencies,saxparser,\
$(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
$(call gb_Package_get_target_for_build,instsetoo_native_setup_ure) \
$(call gb_Rdb_get_target_for_build,saxparser) \
$(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER_FOR_BUILD)/services.rdb \
$(call gb_UnoApi_get_target_for_build,udkapi) \
)
endef
# NOTE: the dependencies on ure/services.rdb and udkapi.rdb are implicitly
# required due to the settings for URE_SERVICES and URE_TYPES in
# cppuhelper/source/unorc
define gb_Executable__register_uno
$(call gb_Executable_add_runtime_dependencies,uno,\
$(call gb_Library_get_target_for_build,$(CPPU_ENV_FOR_BUILD)_uno) \
$(INSTROOT_FOR_BUILD)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
$(call gb_UnoApi_get_target_for_build,udkapi) \
)
endef
# External executables
ifneq ($(SYSTEM_LIBXML_FOR_BUILD),)
gb_ExternalExecutable__register_xmllint :=
else # ! SYSTEM_LIBXML_FOR_BUILD
define gb_ExternalExecutable__register_xmllint
$(call gb_ExternalExecutable_set_internal,xmllint,$(WORKDIR_FOR_BUILD)/UnpackedTarball/libxml2/$(if $(filter MSC,$(COM)),win32/bin.msvc)/xmllint$(gb_Executable_EXT_for_build),libxml2)
$(call gb_ExternalExecutable_add_dependencies,xmllint,\
$(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
$(call gb_Package_get_target,libxml2) \
)
endef
endif # SYSTEM_LIBXML_FOR_BUILD
ifneq ($(SYSTEM_LIBXSLT_FOR_BUILD),)
gb_ExternalExecutable__register_xsltproc :=
else # ! SYSTEM_LIBXSLT_FOR_BUILD
define gb_ExternalExecutable__register_xsltproc
$(call gb_ExternalExecutable_set_internal,xsltproc,$(WORKDIR_FOR_BUILD)/UnpackedTarball/libxslt/$(if $(filter MSC,$(COM)),win32/bin.msvc,xsltproc)/xsltproc$(gb_Executable_EXT_for_build),libxslt)
$(call gb_ExternalExecutable_add_dependencies,xsltproc,\
$(if $(filter WNT,$(OS)),$(call gb_Package_get_target,icu_ure)) \
$(call gb_Package_get_target,libxml2) \
$(call gb_Package_get_target,libxslt) \
)
endef
endif # SYSTEM_LIBXSLT_FOR_BUILD
ifeq (,$(PYTHON_FOR_BUILD))
define gb_ExternalExecutable__register_python
ifeq ($(OS),MACOSX)
# use set_external, to avoid having the command added as prerequisite for the
# targets that make use of it. (Otherwise make will choke as it doesn't have a
# matching rule to build that specific file)
$(call gb_ExternalExecutable_set_external,python,$(gb_UnpackedTarball_workdir)/python3/python-inst/@__________________________________________________OOO/LibreOfficePython.framework/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR))
# the Zip ensures that internal python has been built (cannot use the Package
# target, as that is not used on Mac)
$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_GeneratedPackage_get_target_for_build,python3))
else
$(call gb_ExternalExecutable_set_internal,python,$(INSTROOT_FOR_BUILD)/$(LIBO_BIN_FOLDER)/$(if $(filter WNT,$(OS)),python-core-$(PYTHON_VERSION)/bin/python.exe,python.bin))
$(call gb_ExternalExecutable_set_precommand,python,$(subst $$,$$$$,$(gb_Python_PRECOMMAND)))
$(call gb_ExternalExecutable_add_dependencies,python,$(call gb_Package_get_target_for_build,python3))
endif
endef
else
define gb_ExternalExecutable__register_python
$(call gb_ExternalExecutable_set_external,python,$(PYTHON_FOR_BUILD))
endef
endif # PYTHON_FOR_BUILD
ifneq ($(SYSTEM_GENBRK),)
define gb_ExternalExecutable__register_genbrk
$(call gb_ExternalExecutable_set_external,genbrk,$(SYSTEM_GENBRK))
endef
else # ! SYSTEM_GENBRK
define gb_ExternalExecutable__register_genbrk
$(call gb_ExternalExecutable_set_internal,genbrk,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/genbrk$(gb_Executable_EXT_for_build),icu)
$(call gb_ExternalExecutable_set_precommand,genbrk,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
$(call gb_ExternalExecutable_add_dependencies,genbrk,\
$(call gb_Package_get_target_for_build,icu) \
$(call gb_Package_get_target_for_build,icu_ure) \
)
endef
endif
ifneq ($(SYSTEM_GENCCODE),)
define gb_ExternalExecutable__register_genccode
$(call gb_ExternalExecutable_set_external,genccode,$(SYSTEM_GENCCODE))
endef
else # ! SYSTEM_GENCCODE
define gb_ExternalExecutable__register_genccode
$(call gb_ExternalExecutable_set_internal,genccode,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/genccode$(gb_Executable_EXT_for_build),icu)
$(call gb_ExternalExecutable_set_precommand,genccode,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
$(call gb_ExternalExecutable_add_dependencies,genccode,\
$(call gb_Package_get_target_for_build,icu) \
$(call gb_Package_get_target_for_build,icu_ure) \
)
endef
endif
ifneq ($(SYSTEM_GENCMN),)
define gb_ExternalExecutable__register_gencmn
$(call gb_ExternalExecutable_set_external,gencmn,$(SYSTEM_GENCMN))
endef
else # ! SYSTEM_GENCMN
define gb_ExternalExecutable__register_gencmn
$(call gb_ExternalExecutable_set_internal,gencmn,$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source/bin/gencmn$(gb_Executable_EXT_for_build),icu)
$(call gb_ExternalExecutable_set_precommand,gencmn,$(subst $$,$$$$,$(gb_ICU_PRECOMMAND)))
$(call gb_ExternalExecutable_add_dependencies,gencmn,\
$(call gb_Package_get_target_for_build,icu) \
$(call gb_Package_get_target_for_build,icu_ure) \
)
endef
endif
ifneq ($(SYSTEM_BZIP2),)
define gb_LinkTarget__use_bzip2
$(call gb_LinkTarget_set_include,$(1),\
$(BZIP2_CFLAGS) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(BZIP2_LIBS))
endef
gb_ExternalProject__use_bzip2 :=
else # !SYSTEM_BZIP2
define gb_LinkTarget__use_bzip2
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/bzip2 \
$$(INCLUDE) \
)
ifeq ($(COM),MSC)
$(call gb_LinkTarget_add_libs,$(1),\
$(gb_UnpackedTarball_workdir)/bzip2/libbz2.lib \
)
else
$(call gb_LinkTarget_add_libs,$(1),\
-L$(gb_UnpackedTarball_workdir)/bzip2 -lbz2 \
)
endif
$(call gb_LinkTarget_use_external_project,$(1),bzip2)
endef
define gb_ExternalProject__use_bzip2
$(call gb_ExternalProject_use_external_project,$(1),bzip2)
endef
endif # SYSTEM_BZIP2
define gb_LinkTarget__use_clew
$(call gb_LinkTarget_set_include,$(1), \
-I$(SRCDIR)/external/clew/source/include \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),clew)
endef
ifneq ($(ENABLE_PDFIUM),)
define gb_LinkTarget__use_pdfium
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/pdfium/public \
-DCOMPONENT_BUILD \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),pdfium)
endef
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo,\
pdfium \
))
endif
ifneq ($(SYSTEM_DRAGONBOX),)
define gb_LinkTarget__use_dragonbox
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$$(DRAGONBOX_CFLAGS) \
)
endef
else
Use Dragonbox to implement doubleTo*String* This header-only library is accurate in decimal representation of doubles; provides API that allows to create custom representation - so it's possible to use custom decimal separators and grouping. This allows to unify all corner cases: integers, numbers close to DBL_MAX, up-rounding to the next decade. Note that Dragonbox creates the shortest decimal representation of the number, that is unambiguously convertible back to the same number; thus it may hide trailing digits that are unneeded for such conversion. The functional changes are minimal, and beneficial: 1. Rounding numbers close to DBL_MAX now takes into account the bEraseTrailingDecZeros argument, as it should, allowing to have "1.8E+308" for rounding DBL_MAX to 2 decimals without trailing zeroes, instead of previous "1.80E+308". 2. Incorrect rounding is fixed in some cases, e.g. 9.9999999999999929 rounded to 10 previously using rtl_math_DecimalPlaces_Max. 3. Representing the number in the shortest way may change display of some printed numbers. E.g., 5th greatest double is represented as "1.797693134862315E+308" instead of a bit longer, but giving the same double on roundtrip, "1.7976931348623149E+308". This would generally look better for some numbers similar to the famous 0.1, where users would likely expect more "round" representation where it's unambiguous (but we still truncate to 15 significant decimals anyway - so there's no point in pretending to provide exact digits for actual binary representation). These are reflected in the unit tests affected by the change. Change-Id: I05e20274a30eec499593ee3e9ec070e1269232a2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129948 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-02-15 00:20:52 -06:00
define gb_LinkTarget__use_dragonbox
$(call gb_LinkTarget_use_unpacked,$(1),dragonbox)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/dragonbox/include/\
Use Dragonbox to implement doubleTo*String* This header-only library is accurate in decimal representation of doubles; provides API that allows to create custom representation - so it's possible to use custom decimal separators and grouping. This allows to unify all corner cases: integers, numbers close to DBL_MAX, up-rounding to the next decade. Note that Dragonbox creates the shortest decimal representation of the number, that is unambiguously convertible back to the same number; thus it may hide trailing digits that are unneeded for such conversion. The functional changes are minimal, and beneficial: 1. Rounding numbers close to DBL_MAX now takes into account the bEraseTrailingDecZeros argument, as it should, allowing to have "1.8E+308" for rounding DBL_MAX to 2 decimals without trailing zeroes, instead of previous "1.80E+308". 2. Incorrect rounding is fixed in some cases, e.g. 9.9999999999999929 rounded to 10 previously using rtl_math_DecimalPlaces_Max. 3. Representing the number in the shortest way may change display of some printed numbers. E.g., 5th greatest double is represented as "1.797693134862315E+308" instead of a bit longer, but giving the same double on roundtrip, "1.7976931348623149E+308". This would generally look better for some numbers similar to the famous 0.1, where users would likely expect more "round" representation where it's unambiguous (but we still truncate to 15 significant decimals anyway - so there's no point in pretending to provide exact digits for actual binary representation). These are reflected in the unit tests affected by the change. Change-Id: I05e20274a30eec499593ee3e9ec070e1269232a2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129948 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-02-15 00:20:52 -06:00
$$(INCLUDE) \
)
endef
endif
tdf#130725: use strtod by David M. Gay to make sure we get the nearest ... representation of given decimal. Use dtoa.c from https://www.netlib.org/fp/dtoa.c to build a custom static library that doesn't use current locale (unlike strtod from stdlib.h). This is the implementation used by e.g. python and nss (search for "dtoa.c" under UnpackedTarball). To avoid name clash with the standard strtod, rename the function to strtod_nolocale. Size of buffer on stack in ImpSvNumberInputScan::StringToDouble is 256 characters. Logging function usage in make check, of ~124 600 invocations, the longest string was 14 characters, average being 2.1 characters. So heap allocation is unlikely in scenarios with intensive function usage. After std::from_chars is available in baseline compilers, external library can be dropped, and call to strtod_nolocale replaced with the standard function. The artifact at https://dev-www.libreoffice.org/src/dtoa-20180411.tgz is created with mkdir dtoa && mkdir dtoa/src && wget https://www.netlib.org/fp/dtoa.c -O dtoa/src/dtoa.c && \ printf 'd8bab255476f39ea495c8c8ed164f9077da926e6ca7afb9ad3c56d337c4484fe dtoa/src/dtoa.c' | sha256sum -c && \ tar -c --owner=0 --group=0 --mode=go=r,u=rw --mtime='Wed, 11 Apr 2018 15:59:39 GMT' dtoa/src/dtoa.c | gzip -n > dtoa-20180411.tgz && \ printf '0082d0684f7db6f62361b76c4b7faba19e0c7ce5cb8e36c4b65fea8281e711b4 dtoa-20180411.tgz' | sha256sum -c (where the date "Wed, 11 Apr 2018 15:59:39 GMT" is from `wget -S https://www.netlib.org/fp/dtoa.c` "Last-Modified: Wed, 11 Apr 2018 15:59:39 GMT" header). Change-Id: Ia61b7678e257c4bc1ff193f3f856d611aa5c1a21 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88854 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-02-23 10:19:10 -06:00
define gb_LinkTarget__use_dtoa
$(call gb_LinkTarget_use_unpacked,$(1),dtoa)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/dtoa/include/\
tdf#130725: use strtod by David M. Gay to make sure we get the nearest ... representation of given decimal. Use dtoa.c from https://www.netlib.org/fp/dtoa.c to build a custom static library that doesn't use current locale (unlike strtod from stdlib.h). This is the implementation used by e.g. python and nss (search for "dtoa.c" under UnpackedTarball). To avoid name clash with the standard strtod, rename the function to strtod_nolocale. Size of buffer on stack in ImpSvNumberInputScan::StringToDouble is 256 characters. Logging function usage in make check, of ~124 600 invocations, the longest string was 14 characters, average being 2.1 characters. So heap allocation is unlikely in scenarios with intensive function usage. After std::from_chars is available in baseline compilers, external library can be dropped, and call to strtod_nolocale replaced with the standard function. The artifact at https://dev-www.libreoffice.org/src/dtoa-20180411.tgz is created with mkdir dtoa && mkdir dtoa/src && wget https://www.netlib.org/fp/dtoa.c -O dtoa/src/dtoa.c && \ printf 'd8bab255476f39ea495c8c8ed164f9077da926e6ca7afb9ad3c56d337c4484fe dtoa/src/dtoa.c' | sha256sum -c && \ tar -c --owner=0 --group=0 --mode=go=r,u=rw --mtime='Wed, 11 Apr 2018 15:59:39 GMT' dtoa/src/dtoa.c | gzip -n > dtoa-20180411.tgz && \ printf '0082d0684f7db6f62361b76c4b7faba19e0c7ce5cb8e36c4b65fea8281e711b4 dtoa-20180411.tgz' | sha256sum -c (where the date "Wed, 11 Apr 2018 15:59:39 GMT" is from `wget -S https://www.netlib.org/fp/dtoa.c` "Last-Modified: Wed, 11 Apr 2018 15:59:39 GMT" header). Change-Id: Ia61b7678e257c4bc1ff193f3f856d611aa5c1a21 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88854 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-02-23 10:19:10 -06:00
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
dtoa \
)
endef
define gb_ExternalProject__use_dtoa
$(call gb_ExternalProject_use_static_libraries,$(1),dtoa)
endef
ifneq ($(SYSTEM_BOX2D),)
define gb_LinkTarget__use_box2d
$(call gb_LinkTarget_set_include,$(1),\
-DSYSTEM_BOX2D \
$$(INCLUDE) \
$(BOX2D_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(BOX2D_LIBS))
endef
gb_ExternalProject__use_box2d :=
else # !SYSTEM_BOX2D
define gb_LinkTarget__use_box2d
$(call gb_LinkTarget_use_unpacked,$(1),box2d)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/box2d/include/\
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
box2d \
)
endef
define gb_ExternalProject__use_box2d
$(call gb_ExternalProject_use_static_libraries,$(1),box2d)
endef
endif # SYSTEM_BOX2D
ifneq ($(SYSTEM_ZXCVBN),)
define gb_LinkTarget__use_zxcvbn-c
$(call gb_LinkTarget_set_include,$(1),\
-DSYSTEM_ZXCVBN \
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),-lzxcvbn)
endef
else
define gb_LinkTarget__use_zxcvbn-c
$(call gb_LinkTarget_use_unpacked,$(1),zxcvbn-c)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/zxcvbn-c\
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
zxcvbn-c \
)
endef
endif
ifneq ($(SYSTEM_ZXING),)
define gb_LinkTarget__use_zxing
$(call gb_LinkTarget_set_include,$(1),\
-DSYSTEM_ZXING \
$$(INCLUDE) \
$(ZXING_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ZXING_LIBS))
endef
gb_ExternalProject__use_zxing :=
else # !SYSTEM_ZXING
ifneq ($(ENABLE_ZXING),)
define gb_LinkTarget__use_zxing
$(call gb_LinkTarget_use_unpacked,$(1),zxing)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/zxing/core/src/\
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
zxing \
)
endef
define gb_ExternalProject__use_zxing
$(call gb_ExternalProject_use_static_libraries,$(1),zxing)
endef
else # !ENABLE_ZXING
define gb_LinkTarget__use_zxing
endef
endif # ENABLE_ZXING
endif # SYSTEM_ZXING
ifneq ($(SYSTEM_FROZEN),)
define gb_LinkTarget__use_frozen
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(FROZEN_CFLAGS)
)
endef
else
define gb_LinkTarget__use_frozen
$(call gb_LinkTarget_use_unpacked,$(1),frozen)
$(call gb_LinkTarget_set_include,$(1),\
-I$(gb_UnpackedTarball_workdir)/frozen/include/\
$$(INCLUDE) \
)
endef
endif
qt6: Add a qt6 VCL plugin This adds a new "qt6" VCL plugin based on Qt 6. Building the plugin is enabled by autogen option '--enable-qt6' (and optionally setting 'QT6DIR' as needed). Use the 'SAL_USE_VCLPLUGIN=qt6' environment variable before running LO to select this VCL plugin. Taking qt6 into account at all relevant places certainly still requires follow-up changes, but this builds and runs with a self-compiled qtbase from the 'dev' git branch as of commit 3ce0672143d2eb3c3809f82998a4d71c5800d77a. I didn't see anything obviously broken in a quick run, but didn't test much. This reuses and shares the qt5 VCL plugin code; the qt6 headers and sources for now just '#include' the qt5 ones. Version checks are used for the code places that need different handling to be built against Qt 6. The build system parts in this commit were mostly done by copying the qt5 equivalents, then adapting as needed. Some notes on things I came across while porting to qt6: 1) At least in my self-compiled Qt versions, 'moc' (the meta-object compiler) is located in the 'libexec' subdirectory in 'QT6DIR', while the Qt 5 equivalent is located in the "bin" subdirectory of 'QT5DIR', so the configure.ac check uses the former. 2) moc does not process classes from the included headers. Since the headers in 'vcl/inc/qt6' just '#include' the ones from 'vcl/inc/qt5', running moc on the qt6 headers doesn't work, so moc is currently run on the qt5 headers for qt6 as well (s. 'vcl/CustomTarget_qt6_moc.mk'). That will have to be adapted in case the qt6 VCL plugin uses "own" headers instead of just including the qt5 ones at some point. 3) QX11Extras has been removed from Qt 6. [1] says: > Changes to Qt X11 Extras > > The QX11Info class has been removed. > > Clients that still rely on the functionality can include the private > header <QtGui/private/qtx11extras_p.h> as a stopgap solution. To enable > private headers use QT += core-private with qmake, or add a project > dependency to Qt::CorePrivate with CMake. I didn't take any closer look, just dropped the use of QtX11Extras for qt6 for now. 4) XCB_ICCCM is no longer needed. It is only used in qt5 to workaround a Qt bug fixed in Qt 5.12, s. commit fe2baf9e84e0ca9aeaa683e37076f57fa3f38dca Author: Jan-Marek Glogowski <jan-marek.glogowski@extern.cib.de> Date: Tue Dec 3 08:32:58 2019 +0100 Qt5 fix missing XCB_ICCCM_WM_HINT_WINDOW_GROUP 5) X11-specific code is still used for key modifier handling. Therefore, still check for the XCB headers when 'USING_X11' is set in configure.ac, and use a 'QT6_USING_X11' define (as qt5 uses 'QT5_USING_X11'). 6) There's currently no Qt 6 video sink for GStreamer. As of today, qt-gstreamer is unmaintained and there is no Qt 6 version. The project's README [2] says: > 0. Maintenance Notice > --------------------- > > This code is unmaintained. You can use it at your own risk. > > If you want to integrate video display in your QML-based UI, > you should consider using 'qmlglsink', from gst-plugins-good. > This is a well supported video sink that uses the generic > gstreamer-gl stack and is in many ways superior to 'qtquick2videosink' > that is provided by qt-gstreamer. You can use this code as an example: > https://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/tests/examples/qt/qmlsink > > If you are not interested in using QML in your UI, then you > may use one of the other elements provided by this module > (see below). If you do that, it would be helpful to let us > know that this code is still useful to you. We may consider > adding these elements in one of the core gstreamer modules. > > If you are here for the Qt-style bindings, I'm sorry to disappoint you. > The alternative is to use the C API, or the GStreamermm C++ API. > Qt-style bindings are cool, but unfortunately they are very hard > to maintain because they are written by hand. If you are interested > in continuing this project, you are welcome to implement a > generator for them, probably based on GObject-Introspection. > I am happy to provide directions if you want to pursue such a thing. Therefore, the Qt video sink handling is qt5-only and the corresponding handling for GOBJECT (used for the GStreamer video sink handling) was not taken over for qt6. This presumably means that video playback in Impress presentations does not work when using qt6 with they Qt Wayland plugin, s. tdf#125219 for the corresponding bug for qt5/kf5. (I did not build the qtwayland module to actually test this, though. Video playback with the Qt xcb plugin in a Wayland session works.) [1] https://doc-snapshots.qt.io/qt6-dev/extras-changes-qt6.html [2] https://cgit.freedesktop.org/gstreamer/qt-gstreamer/tree/README Change-Id: Ib105ccfb2c3630ec5d5403793a3cd9ba31d85bdf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122808 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2021-09-29 04:09:51 -05:00
# vim: set noet sw=4 ts=4: