[Libreoffice-commits] core.git: bridges/Library_cc50_solaris_intel.mk bridges/Library_cc50_solaris_sparc.mk bridges/Library_cc5_solaris_sparc64.mk bridges/Library_cpp_uno.mk bridges/Library_gcc3_aix_powerpc.mk bridges/Library_gcc3_ios_arm.mk bridges/Library_gcc3_linux_alpha.mk bridges/Library_gcc3_linux_arm.mk bridges/Library_gcc3_linux_hppa.mk bridges/Library_gcc3_linux_ia64.mk bridges/Library_gcc3_linux_intel.mk bridges/Library_gcc3_linux_m68k.mk bridges/Library_gcc3_linux_mips.mk bridges/Library_gcc3_linux_powerpc64.mk bridges/Library_gcc3_linux_powerpc.mk bridges/Library_gcc3_linux_s390.mk bridges/Library_gcc3_linux_s390x.mk bridges/Library_gcc3_linux_sparc.mk bridges/Library_gcc3_linux_x86-64.mk bridges/Library_gcc3_macosx_intel.mk bridges/Library_gcc3_macosx_powerpc.mk bridges/Library_gcc3_macosx_x86-64.mk bridges/Library_gcc3_solaris_intel.mk bridges/Library_gcc3_solaris_sparc.mk bridges/Library_mingw_intel.mk bridges/Library_msvc_win32_intel.mk bridges/Library_msvc_win32_x86-64.mk bridges/Module_bridges.mk bridges/source
Peter Foley
pefoley2 at verizon.net
Mon Mar 18 00:53:41 PDT 2013
bridges/Library_cc50_solaris_intel.mk | 69 -
bridges/Library_cc50_solaris_sparc.mk | 63 -
bridges/Library_cc5_solaris_sparc64.mk | 66 -
bridges/Library_cpp_uno.mk | 216 +++
bridges/Library_gcc3_aix_powerpc.mk | 67 -
bridges/Library_gcc3_ios_arm.mk | 85 -
bridges/Library_gcc3_linux_alpha.mk | 67 -
bridges/Library_gcc3_linux_arm.mk | 75 -
bridges/Library_gcc3_linux_hppa.mk | 71 -
bridges/Library_gcc3_linux_ia64.mk | 71 -
bridges/Library_gcc3_linux_intel.mk | 77 -
bridges/Library_gcc3_linux_m68k.mk | 67 -
bridges/Library_gcc3_linux_mips.mk | 69 -
bridges/Library_gcc3_linux_powerpc.mk | 67 -
bridges/Library_gcc3_linux_powerpc64.mk | 67 -
bridges/Library_gcc3_linux_s390.mk | 67 -
bridges/Library_gcc3_linux_s390x.mk | 67 -
bridges/Library_gcc3_linux_sparc.mk | 71 -
bridges/Library_gcc3_linux_x86-64.mk | 78 -
bridges/Library_gcc3_macosx_intel.mk | 67 -
bridges/Library_gcc3_macosx_powerpc.mk | 63 -
bridges/Library_gcc3_macosx_x86-64.mk | 71 -
bridges/Library_gcc3_solaris_intel.mk | 67 -
bridges/Library_gcc3_solaris_sparc.mk | 67 -
bridges/Library_mingw_intel.mk | 78 -
bridges/Library_msvc_win32_intel.mk | 60
bridges/Library_msvc_win32_x86-64.mk | 64 -
bridges/Module_bridges.mk | 87 -
bridges/source/cpp_uno/cc50_solaris_intel/call.s | 266 ----
bridges/source/cpp_uno/cc50_solaris_intel/cc50_solaris_intel.hxx | 66 -
bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx | 519 --------
bridges/source/cpp_uno/cc50_solaris_intel/except.cxx | 438 -------
bridges/source/cpp_uno/cc50_solaris_intel/hash.cxx | 253 ----
bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp.cxx | 409 ------
bridges/source/cpp_uno/cc50_solaris_sparc/call.s | 217 ---
bridges/source/cpp_uno/cc50_solaris_sparc/cc50_solaris_sparc.hxx | 80 -
bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno.cxx | 506 --------
bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx | 434 -------
bridges/source/cpp_uno/cc50_solaris_sparc/flushcode.hxx | 42
bridges/source/cpp_uno/cc50_solaris_sparc/hash.cxx | 254 ----
bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx | 387 ------
bridges/source/cpp_uno/cc5_solaris_sparc64/callvirtualmethod.hxx | 30
bridges/source/cpp_uno/cc5_solaris_sparc64/callvirtualmethod.s | 50
bridges/source/cpp_uno/cc5_solaris_sparc64/cpp2uno.cxx | 602 ----------
bridges/source/cpp_uno/cc5_solaris_sparc64/exceptions.cxx | 448 -------
bridges/source/cpp_uno/cc5_solaris_sparc64/exceptions.hxx | 66 -
bridges/source/cpp_uno/cc5_solaris_sparc64/flushcode.hxx | 42
bridges/source/cpp_uno/cc5_solaris_sparc64/fp.hxx | 107 -
bridges/source/cpp_uno/cc5_solaris_sparc64/fp.s | 593 ---------
bridges/source/cpp_uno/cc5_solaris_sparc64/isdirectreturntype.cxx | 74 -
bridges/source/cpp_uno/cc5_solaris_sparc64/isdirectreturntype.hxx | 35
bridges/source/cpp_uno/cc5_solaris_sparc64/uno2cpp.cxx | 500 --------
bridges/source/cpp_uno/cc5_solaris_sparc64/vtableslotcall.hxx | 29
bridges/source/cpp_uno/cc5_solaris_sparc64/vtableslotcall.s | 42
54 files changed, 224 insertions(+), 8369 deletions(-)
New commits:
commit a1fbebff263f65bc25c0c955da2e68e90cd2bb03
Author: Peter Foley <pefoley2 at verizon.net>
Date: Thu Mar 14 21:21:28 2013 -0400
Cleanup bridges module
Reduce excessive copy-pasting
Remove bridges for C50 and C52 compilers which aren't in configure any
more
Prevent LTO from being used in the bridges module because it causes
crashes
Change-Id: I7ff85c2e8d6ff89c5acd48aea415e0960b3ef812
Reviewed-on: https://gerrit.libreoffice.org/2765
Reviewed-by: Tor Lillqvist <tml at iki.fi>
Tested-by: Tor Lillqvist <tml at iki.fi>
diff --git a/bridges/Library_cc50_solaris_intel.mk b/bridges/Library_cc50_solaris_intel.mk
deleted file mode 100644
index 7e3565d..0000000
--- a/bridges/Library_cc50_solaris_intel.mk
+++ /dev/null
@@ -1,69 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge cc50_solaris_intel: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := cc50_solaris_intel
-
-$(eval $(call gb_Library_Library,sunpro5_uno))
-
-$(eval $(call gb_Library_use_external,sunpro5_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,sunpro5_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,sunpro5_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,sunpro5_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,sunpro5_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
- -O5 \
- -xO5 \
-))
-
-$(eval $(call gb_Library_use_libraries,sunpro5_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,sunpro5_uno,\
- bridges/source/cpp_uno/cc50_solaris_intel/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,sunpro5_uno,\
- bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno \
- bridges/source/cpp_uno/cc50_solaris_intel/except \
- bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,sunpro5_uno,\
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_cc50_solaris_sparc.mk b/bridges/Library_cc50_solaris_sparc.mk
deleted file mode 100644
index 2e6ca9c..0000000
--- a/bridges/Library_cc50_solaris_sparc.mk
+++ /dev/null
@@ -1,63 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge cc50_solaris_sparc: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := cc50_solaris_sparc
-
-$(eval $(call gb_Library_Library,sunpro5_uno))
-
-$(eval $(call gb_Library_use_external,sunpro5_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,sunpro5_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,sunpro5_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,sunpro5_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,sunpro5_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_use_libraries,sunpro5_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,sunpro5_uno,\
- bridges/source/cpp_uno/cc50_solaris_sparc/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,sunpro5_uno,\
- bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno \
- bridges/source/cpp_uno/cc50_solaris_sparc/except \
- bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_cc5_solaris_sparc64.mk b/bridges/Library_cc5_solaris_sparc64.mk
deleted file mode 100644
index 2c12767..0000000
--- a/bridges/Library_cc5_solaris_sparc64.mk
+++ /dev/null
@@ -1,66 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge cc5_solaris_sparc64: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := cc5_solaris_sparc64
-
-$(eval $(call gb_Library_Library,sunpro5_uno))
-
-$(eval $(call gb_Library_use_external,sunpro5_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,sunpro5_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,sunpro5_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,sunpro5_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,sunpro5_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_use_libraries,sunpro5_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,sunpro5_uno,\
- bridges/source/cpp_uno/cc5_solaris_sparc64/callvirtualmethod \
- bridges/source/cpp_uno/cc5_solaris_sparc64/fp \
- bridges/source/cpp_uno/cc5_solaris_sparc64/vtableslotcall \
-))
-
-$(eval $(call gb_Library_add_exception_objects,sunpro5_uno,\
- bridges/source/cpp_uno/cc5_solaris_sparc64/cpp2uno \
- bridges/source/cpp_uno/cc5_solaris_sparc64/exceptions \
- bridges/source/cpp_uno/cc5_solaris_sparc64/isdirectreturntype \
- bridges/source/cpp_uno/cc5_solaris_sparc64/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_cpp_uno.mk b/bridges/Library_cpp_uno.mk
new file mode 100644
index 0000000..577e015
--- /dev/null
+++ b/bridges/Library_cpp_uno.mk
@@ -0,0 +1,216 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# 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/.
+#
+
+ifeq ($(COM),GCC)
+bridge_lib_name := gcc3_uno
+else ifeq ($(COM),MSC)
+ifeq ($(CPU),I)
+bridge_lib_name := msci_uno
+else ifeq ($(CPU),X)
+bridge_lib_name := mscx_uno
+endif # COM=WNT
+endif
+
+$(eval $(call gb_Library_Library,$(bridge_lib_name)))
+
+ifeq ($(OS)$(CPU),AIXP)
+bridges_SELECTED_BRIDGE := gcc3_aix_powerpc
+bridge_exception_objects := except
+bridge_cxx_objects := cpp2uno uno2cpp
+else ifeq ($(CPU),R)
+ifeq ($(OS),IOS)
+bridges_SELECTED_BRIDGE := gcc3_ios_arm
+bridge_asm_objects := helper
+bridge_exception_objects := cpp2uno cpp2uno-arm cpp2uno-i386 except uno2cpp uno2cpp-arm uno2cpp-i386
+$(eval $(call gb_Library_use_custom_headers,gcc3_uno,\
+ bridges/source/cpp_uno/gcc3_ios_arm \
+))
+else ifneq ($(filter LINUX ANDROID,$(OS)),)
+bridges_SELECTED_BRIDGE := gcc3_linux_arm
+bridge_noopt_objects := cpp2uno except uno2cpp
+# HACK
+$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,gcc3_uno)) : \
+ $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_linux_arm)/armhelper.objectlist
+$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,gcc3_uno)) : \
+ EXTRAOBJECTLISTS += $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_linux_arm)/armhelper.objectlist
+endif # CPU=R
+else ifeq ($(OS)$(CPU),LINUXL)
+bridges_SELECTED_BRIDGE := gcc3_linux_alpha
+bridge_exception_objects := cpp2uno except uno2cpp
+else ifeq ($(OS)$(CPU),LINUXH)
+bridges_SELECTED_BRIDGE := gcc3_linux_hppa
+bridge_asm_objects := call
+bridge_noopt_objects := cpp2uno except uno2cpp
+else ifeq ($(OS)$(CPU),LINUXA)
+bridges_SELECTED_BRIDGE := gcc3_linux_ia64
+bridge_asm_objects := call
+bridge_exception_objects := except
+bridge_noopt_objects := cpp2uno uno2cpp
+else ifeq ($(CPU),I)
+ifneq ($(filter ANDROID DRAGONFLY FREEBSD LINUX NETBSD OPENBSD,$(OS)),)
+bridges_SELECTED_BRIDGE := gcc3_linux_intel
+bridge_asm_objects := call
+bridge_exception_objects := callvirtualmethod cpp2uno except uno2cpp
+else ifeq ($(OS),MACOSX)
+bridges_SELECTED_BRIDGE := gcc3_macosx_intel
+bridge_asm_objects := call
+bridge_exception_objects := cpp2uno except uno2cpp
+else ifeq ($(COM),MSC)
+bridges_SELECTED_BRIDGE := msvc_win32_intel
+bridge_exception_objects := cpp2uno dllinit uno2cpp
+bridge_noopt_objects := except
+endif # CPU=I
+else ifeq ($(OS)$(CPU),LINUX6)
+bridges_SELECTED_BRIDGE := gcc3_linux_m68k
+bridge_noopt_objects := cpp2uno except uno2cpp
+else ifeq ($(CPU),M)
+ifneq ($(filter ANDROID LINUX,$(OS)),)
+bridges_SELECTED_BRIDGE := gcc3_linux_mips
+bridge_noopt_objects := cpp2uno uno2cpp
+bridge_exception_objects := except
+endif # CPU=M
+else ifeq ($(OS)$(CPUNAME),LINUXPOWERPC)
+bridges_SELECTED_BRIDGE := gcc3_linux_powerpc
+bridge_noopt_objects := uno2cpp
+bridge_exception_objects := cpp2uno except
+else ifeq ($(OS)$(CPUNAME),LINUXPOWERPC64)
+bridges_SELECTED_BRIDGE := gcc3_linux_powerpc64
+bridge_noopt_objects := cpp2uno uno2cpp
+bridge_exception_objects := except
+else ifeq ($(OS)$(CPUNAME),LINUXS390)
+bridges_SELECTED_BRIDGE := gcc3_linux_s390
+bridge_exception_objects := cpp2uno except uno2cpp
+else ifeq ($(OS)$(CPUNAME),LINUXS390X)
+bridges_SELECTED_BRIDGE := gcc3_linux_s390x
+bridge_exception_objects := cpp2uno except uno2cpp
+else ifeq ($(OS)$(CPU),LINUXS)
+bridges_SELECTED_BRIDGE := gcc3_linux_sparc
+bridge_asm_objects := call
+bridge_noopt_objects := except
+bridge_exception_objects := cpp2uno uno2cpp
+else ifeq ($(CPU),X)
+ifneq ($(filter DRAGONFLY FREEBSD LINUX NETBSD OPENBSD,$(OS)),)
+bridges_SELECTED_BRIDGE := gcc3_linux_x86-64
+bridge_asm_objects := call
+bridge_exception_objects := abi callvirtualmethod cpp2uno except uno2cpp
+else ifeq ($(OS),MACOSX)
+bridges_SELECTED_BRIDGE := gcc3_macosx_x86-64
+bridge_exception_objects := abi call callvirtualmethod cpp2uno except uno2cpp
+else ifeq ($(COM),MSC)
+bridges_SELECTED_BRIDGE := msvc_win32_x86-64
+bridge_exception_objects := cpp2uno dllinit uno2cpp
+bridge_noopt_objects := except
+bridge_asm_objects := call
+endif # CPU=X
+else ifeq ($(OS)$(CPU),MACOSXP)
+bridges_SELECTED_BRIDGE := gcc3_macosx_powerpc
+bridge_noopt_objects := uno2cpp
+bridge_exception_objects := cpp2uno except
+else ifeq ($(OS)$(CPU),SOLARISI)
+bridges_SELECTED_BRIDGE := gcc3_solaris_intel
+bridge_exception_objects := cpp2uno except uno2cpp
+else ifeq ($(OS)$(CPU),SOLARISS)
+bridges_SELECTED_BRIDGE := gcc3_solaris_sparc
+bridge_noopt_objects := cpp2uno uno2cpp
+bridge_exception_objects := except
+else ifeq ($(OS)$(COM),WNTGCC)
+bridges_SELECTED_BRIDGE := mingw_intel
+bridge_noopt_objects := uno2cpp
+bridge_exception_objects := callvirtualmethod cpp2uno dllinit except smallstruct
+endif
+
+$(eval $(call gb_Library_use_external,$(bridge_lib_name),boost_headers))
+
+$(eval $(call gb_Library_use_internal_comprehensive_api,$(bridge_lib_name),\
+ udkapi \
+))
+
+$(eval $(call gb_Library_set_include,$(bridge_lib_name),\
+ -I$(SRCDIR)/bridges/inc \
+ $$(INCLUDE) \
+))
+
+ifeq ($(HAVE_POSIX_FALLOCATE),YES)
+$(eval $(call gb_Library_add_defs,$(bridge_lib_name),\
+ -DHAVE_POSIX_FALLOCATE \
+))
+endif
+ifeq ($(OS),WNT)
+$(eval $(call gb_Library_add_defs,$(bridge_lib_name),\
+ $(if $(filter GCC,$(COM)),\
+ $(if $(filter sjlj,$(EXCEPTIONS)),\
+ -DBROKEN_ALLOCA \
+ ), \
+ $(if $(cppu_no_leak)$(bndchk),,\
+ -DLEAK_STATIC_DATA \
+ )) \
+))
+endif
+
+# In case someone enabled the non-standard -fomit-frame-pointer which does not
+# work with the .cxx sources of this library.
+# LTO causes crashes when enabled for this library
+# In case the compiler supports AVX this code segfaults so specifically turn
+# it off.
+ifeq ($(COM),GCC)
+$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
+ -fno-omit-frame-pointer \
+ -fno-strict-aliasing \
+ $(if $(filter TRUE,$(ENABLE_LTO)),-fno-lto) \
+ $(if $(filter I,$(OS)),\
+ $(if $(filter TRUE,$(HAVE_GCC_AVX)),\
+ -mno-avx)) \
+))
+
+ifneq ($(OS),ANDROID)
+$(eval $(call gb_Library_add_libs,gcc3_uno,\
+ -ldl \
+))
+endif
+endif
+
+$(eval $(call gb_Library_use_libraries,$(bridge_lib_name),\
+ cppu \
+ sal \
+))
+
+$(foreach obj,$(bridge_exception_objects),\
+ $(eval $(call gb_Library_add_exception_objects,$(bridge_lib_name),\
+ bridges/source/cpp_uno/$(bridges_SELECTED_BRIDGE)/$(obj))) \
+)
+
+$(foreach obj,$(bridge_noopt_objects),\
+ $(eval $(call gb_Library_add_cxxobjects,$(bridge_lib_name),\
+ bridges/source/cpp_uno/$(bridges_SELECTED_BRIDGE)/$(obj) \
+ , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS))) \
+)
+$(foreach obj,$(bridge_cxx_objects),\
+ $(eval $(call gb_Library_add_cxxobjects,$(bridge_lib_name),\
+ bridges/source/cpp_uno/$(bridges_SELECTED_BRIDGE)/$(obj))) \
+)
+$(foreach obj,$(bridge_asm_objects),\
+$(eval $(call gb_Library_add_asmobjects,$(bridge_lib_name),\
+ bridges/source/cpp_uno/$(bridges_SELECTED_BRIDGE)/$(obj))) \
+)
+
+$(eval $(call gb_Library_add_exception_objects,$(bridge_lib_name),\
+ bridges/source/cpp_uno/shared/bridge \
+ bridges/source/cpp_uno/shared/component \
+ bridges/source/cpp_uno/shared/types \
+ bridges/source/cpp_uno/shared/unointerfaceproxy \
+ bridges/source/cpp_uno/shared/vtablefactory \
+ bridges/source/cpp_uno/shared/vtables \
+))
+
+$(eval $(call gb_Library_add_cxxobjects,$(bridge_lib_name),\
+ bridges/source/cpp_uno/shared/cppinterfaceproxy \
+ , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_aix_powerpc.mk b/bridges/Library_gcc3_aix_powerpc.mk
deleted file mode 100644
index e27df57..0000000
--- a/bridges/Library_gcc3_aix_powerpc.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_aix_powerpc: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_aix_powerpc
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_aix_powerpc/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_aix_powerpc/cpp2uno \
- bridges/source/cpp_uno/gcc3_aix_powerpc/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_ios_arm.mk b/bridges/Library_gcc3_ios_arm.mk
deleted file mode 100644
index 314a589..0000000
--- a/bridges/Library_gcc3_ios_arm.mk
+++ /dev/null
@@ -1,85 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_ios_arm: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_ios_arm
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_custom_headers,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_ios_arm \
-))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_ios_arm/helper \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_ios_arm/cpp2uno \
- bridges/source/cpp_uno/gcc3_ios_arm/cpp2uno-arm \
- bridges/source/cpp_uno/gcc3_ios_arm/cpp2uno-i386 \
- bridges/source/cpp_uno/gcc3_ios_arm/except \
- bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp \
- bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp-arm \
- bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp-i386 \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-ifeq ($(COM),GCC)
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-else
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
-))
-endif
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_alpha.mk b/bridges/Library_gcc3_linux_alpha.mk
deleted file mode 100644
index 35e19648..0000000
--- a/bridges/Library_gcc3_linux_alpha.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_alpha: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_alpha
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_alpha/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_alpha/except \
- bridges/source/cpp_uno/gcc3_linux_alpha/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_arm.mk b/bridges/Library_gcc3_linux_arm.mk
deleted file mode 100644
index 95c85d2..0000000
--- a/bridges/Library_gcc3_linux_arm.mk
+++ /dev/null
@@ -1,75 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_arm: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_arm
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-ifneq ($(OS),ANDROID)
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-endif
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_arm/except \
- bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# HACK
-$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,gcc3_uno)) : \
- $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_linux_arm)/armhelper.objectlist
-$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,gcc3_uno)) : \
- EXTRAOBJECTLISTS += $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_linux_arm)/armhelper.objectlist
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_hppa.mk b/bridges/Library_gcc3_linux_hppa.mk
deleted file mode 100644
index bb2e90d..0000000
--- a/bridges/Library_gcc3_linux_hppa.mk
+++ /dev/null
@@ -1,71 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_hppa: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_hppa
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_hppa/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_hppa/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_hppa/except \
- bridges/source/cpp_uno/gcc3_linux_hppa/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_ia64.mk b/bridges/Library_gcc3_linux_ia64.mk
deleted file mode 100644
index 8944948..0000000
--- a/bridges/Library_gcc3_linux_ia64.mk
+++ /dev/null
@@ -1,71 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_ia64: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_ia64
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_ia64/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_ia64/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_ia64/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_ia64/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_intel.mk b/bridges/Library_gcc3_linux_intel.mk
deleted file mode 100644
index 02a033b..0000000
--- a/bridges/Library_gcc3_linux_intel.mk
+++ /dev/null
@@ -1,77 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_intel: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_intel
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
- $(if $(filter TRUE,$(HAVE_GCC_AVX)),\
- -mno-avx \
- ) \
-))
-
-ifneq ($(OS),ANDROID)
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-endif
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_intel/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_intel/callvirtualmethod \
- bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_intel/except \
- bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_m68k.mk b/bridges/Library_gcc3_linux_m68k.mk
deleted file mode 100644
index 015764e..0000000
--- a/bridges/Library_gcc3_linux_m68k.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_m68k: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_m68k
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_m68k/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_m68k/except \
- bridges/source/cpp_uno/gcc3_linux_m68k/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_mips.mk b/bridges/Library_gcc3_linux_mips.mk
deleted file mode 100644
index 37ca9b0..0000000
--- a/bridges/Library_gcc3_linux_mips.mk
+++ /dev/null
@@ -1,69 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_mips: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_mips
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-ifneq ($(OS),ANDROID)
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-endif
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_mips/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_mips/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_mips/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_powerpc.mk b/bridges/Library_gcc3_linux_powerpc.mk
deleted file mode 100644
index c9c79c4..0000000
--- a/bridges/Library_gcc3_linux_powerpc.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_powerpc: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_powerpc
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_powerpc/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_powerpc/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_powerpc/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_powerpc64.mk b/bridges/Library_gcc3_linux_powerpc64.mk
deleted file mode 100644
index baf6bf3..0000000
--- a/bridges/Library_gcc3_linux_powerpc64.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_powerpc64: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_powerpc64
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_powerpc64/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_powerpc64/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_powerpc64/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_s390.mk b/bridges/Library_gcc3_linux_s390.mk
deleted file mode 100644
index 388ef81..0000000
--- a/bridges/Library_gcc3_linux_s390.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_s390: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_s390
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_s390/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_s390/except \
- bridges/source/cpp_uno/gcc3_linux_s390/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_s390x.mk b/bridges/Library_gcc3_linux_s390x.mk
deleted file mode 100644
index 4216d3c..0000000
--- a/bridges/Library_gcc3_linux_s390x.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_s390x: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_s390x
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_s390x/except \
- bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_sparc.mk b/bridges/Library_gcc3_linux_sparc.mk
deleted file mode 100644
index 0240316..0000000
--- a/bridges/Library_gcc3_linux_sparc.mk
+++ /dev/null
@@ -1,71 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_sparc: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_sparc
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_sparc/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_sparc/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_linux_x86-64.mk b/bridges/Library_gcc3_linux_x86-64.mk
deleted file mode 100644
index 93b5d2a..0000000
--- a/bridges/Library_gcc3_linux_x86-64.mk
+++ /dev/null
@@ -1,78 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_x86-64: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_linux_x86-64
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-# In case the compiler supports AVX this code segfaults so specifically turn
-# it off.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
- $(if $(filter TRUE,$(HAVE_GCC_AVX)),\
- -mno-avx \
- ) \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_x86-64/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_linux_x86-64/abi \
- bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod \
- bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno \
- bridges/source/cpp_uno/gcc3_linux_x86-64/except \
- bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_macosx_intel.mk b/bridges/Library_gcc3_macosx_intel.mk
deleted file mode 100644
index 4807853..0000000
--- a/bridges/Library_gcc3_macosx_intel.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_macosx_intel: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_macosx_intel
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_macosx_intel/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno \
- bridges/source/cpp_uno/gcc3_macosx_intel/except \
- bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_macosx_powerpc.mk b/bridges/Library_gcc3_macosx_powerpc.mk
deleted file mode 100644
index 67b8b69..0000000
--- a/bridges/Library_gcc3_macosx_powerpc.mk
+++ /dev/null
@@ -1,63 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_macosx_powerpc: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_macosx_powerpc
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_macosx_powerpc/cpp2uno \
- bridges/source/cpp_uno/gcc3_macosx_powerpc/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_macosx_powerpc/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_macosx_x86-64.mk b/bridges/Library_gcc3_macosx_x86-64.mk
deleted file mode 100644
index 2a05faa..0000000
--- a/bridges/Library_gcc3_macosx_x86-64.mk
+++ /dev/null
@@ -1,71 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_linux_x86-64: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_macosx_x86-64
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-# In case the compiler supports AVX this code segfaults so specifically turn
-# it off.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
- $(if $(filter TRUE,$(HAVE_GCC_AVX)),\
- -mno-avx \
- ) \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_macosx_x86-64/abi \
- bridges/source/cpp_uno/gcc3_macosx_x86-64/call \
- bridges/source/cpp_uno/gcc3_macosx_x86-64/callvirtualmethod \
- bridges/source/cpp_uno/gcc3_macosx_x86-64/cpp2uno \
- bridges/source/cpp_uno/gcc3_macosx_x86-64/except \
- bridges/source/cpp_uno/gcc3_macosx_x86-64/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_solaris_intel.mk b/bridges/Library_gcc3_solaris_intel.mk
deleted file mode 100644
index 8cdabab..0000000
--- a/bridges/Library_gcc3_solaris_intel.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_solaris_intel: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_solaris_intel
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_solaris_intel/cpp2uno \
- bridges/source/cpp_uno/gcc3_solaris_intel/except \
- bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_gcc3_solaris_sparc.mk b/bridges/Library_gcc3_solaris_sparc.mk
deleted file mode 100644
index 456717a..0000000
--- a/bridges/Library_gcc3_solaris_sparc.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge gcc3_solaris_sparc: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := gcc3_solaris_sparc
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-ifeq ($(HAVE_POSIX_FALLOCATE),YES)
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- -DHAVE_POSIX_FALLOCATE \
-))
-endif
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
-))
-
-$(eval $(call gb_Library_add_libs,gcc3_uno,\
- -ldl \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_solaris_sparc/except \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/gcc3_solaris_sparc/cpp2uno \
- bridges/source/cpp_uno/gcc3_solaris_sparc/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_mingw_intel.mk b/bridges/Library_mingw_intel.mk
deleted file mode 100644
index 2a57d28..0000000
--- a/bridges/Library_mingw_intel.mk
+++ /dev/null
@@ -1,78 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge mingw_intel: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := mingw_intel
-
-$(eval $(call gb_Library_Library,gcc3_uno))
-
-$(eval $(call gb_Library_use_external,gcc3_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,gcc3_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,gcc3_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-$(eval $(call gb_Library_add_defs,gcc3_uno,\
- $(if $(filter sjlj,$(EXCEPTIONS)),\
- -DBROKEN_ALLOCA \
- ) \
- $(if $(filter YES,$(HAVE_POSIX_FALLOCATE)),\
- -DHAVE_POSIX_FALLOCATE \
- ) \
-))
-
-# In case someone enabled the non-standard -fomit-frame-pointer which does not
-# work with the .cxx sources of this library.
-# In case the compiler supports AVX this code segfaults so specifically turn
-# it off.
-$(eval $(call gb_Library_add_cxxflags,gcc3_uno,\
- -fno-omit-frame-pointer \
- -fno-strict-aliasing \
- $(if $(filter TRUE,$(HAVE_GCC_AVX)),\
- -mno-avx \
- ) \
-))
-
-$(eval $(call gb_Library_use_libraries,gcc3_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,gcc3_uno,\
- bridges/source/cpp_uno/mingw_intel/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,gcc3_uno,\
- bridges/source/cpp_uno/mingw_intel/callvirtualmethod \
- bridges/source/cpp_uno/mingw_intel/cpp2uno \
- bridges/source/cpp_uno/mingw_intel/dllinit \
- bridges/source/cpp_uno/mingw_intel/except \
- bridges/source/cpp_uno/mingw_intel/smallstruct \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,gcc3_uno,\
- bridges/source/cpp_uno/mingw_intel/uno2cpp \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_msvc_win32_intel.mk b/bridges/Library_msvc_win32_intel.mk
deleted file mode 100644
index aa51b9c..0000000
--- a/bridges/Library_msvc_win32_intel.mk
+++ /dev/null
@@ -1,60 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge msvc_win32_intel: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := msvc_win32_intel
-
-$(eval $(call gb_Library_Library,msci_uno))
-
-$(eval $(call gb_Library_use_external,msci_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,msci_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,msci_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-$(eval $(call gb_Library_add_defs,msci_uno,\
- $(if $(filter YES,$(HAVE_POSIX_FALLOCATE)),\
- -DHAVE_POSIX_FALLOCATE \
- ) \
- $(if $(cppu_no_leak)$(bndchk),,\
- -DLEAK_STATIC_DATA \
- ) \
-))
-
-$(eval $(call gb_Library_use_libraries,msci_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_exception_objects,msci_uno,\
- bridges/source/cpp_uno/msvc_win32_intel/cpp2uno \
- bridges/source/cpp_uno/msvc_win32_intel/dllinit \
- bridges/source/cpp_uno/msvc_win32_intel/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,msci_uno,\
- bridges/source/cpp_uno/msvc_win32_intel/except \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Library_msvc_win32_x86-64.mk b/bridges/Library_msvc_win32_x86-64.mk
deleted file mode 100644
index cf34370..0000000
--- a/bridges/Library_msvc_win32_x86-64.mk
+++ /dev/null
@@ -1,64 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# 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/.
-#
-
-ifneq ($(strip $(bridges_SELECTED_BRIDGE)),)
-$(eval $(call gb_Output_error,cannot build bridge msvc_win32_x86-64: bridge $(bridges_SELECTED_BRIDGE) already selected))
-endif
-bridges_SELECTED_BRIDGE := msvc_win32_x86-64
-
-$(eval $(call gb_Library_Library,mscx_uno))
-
-$(eval $(call gb_Library_use_external,mscx_uno,boost_headers))
-
-$(eval $(call gb_Library_use_internal_comprehensive_api,mscx_uno,\
- udkapi \
-))
-
-$(eval $(call gb_Library_set_include,mscx_uno,\
- -I$(SRCDIR)/bridges/inc \
- $$(INCLUDE) \
-))
-
-$(eval $(call gb_Library_add_defs,mscx_uno,\
- $(if $(filter YES,$(HAVE_POSIX_FALLOCATE)),\
- -DHAVE_POSIX_FALLOCATE \
- ) \
- $(if $(cppu_no_leak)$(bndchk),,\
- -DLEAK_STATIC_DATA \
- ) \
-))
-
-$(eval $(call gb_Library_use_libraries,mscx_uno,\
- cppu \
- sal \
-))
-
-$(eval $(call gb_Library_add_asmobjects,mscx_uno,\
- bridges/source/cpp_uno/msvc_win32_x86-64/call \
-))
-
-$(eval $(call gb_Library_add_exception_objects,mscx_uno,\
- bridges/source/cpp_uno/msvc_win32_x86-64/cpp2uno \
- bridges/source/cpp_uno/msvc_win32_x86-64/dllinit \
- bridges/source/cpp_uno/msvc_win32_x86-64/uno2cpp \
- bridges/source/cpp_uno/shared/bridge \
- bridges/source/cpp_uno/shared/component \
- bridges/source/cpp_uno/shared/cppinterfaceproxy \
- bridges/source/cpp_uno/shared/types \
- bridges/source/cpp_uno/shared/unointerfaceproxy \
- bridges/source/cpp_uno/shared/vtablefactory \
- bridges/source/cpp_uno/shared/vtables \
-))
-
-$(eval $(call gb_Library_add_cxxobjects,mscx_uno,\
- bridges/source/cpp_uno/msvc_win32_x86-64/except \
- , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/bridges/Module_bridges.mk b/bridges/Module_bridges.mk
index c1dbcef..f9d9c14 100644
--- a/bridges/Module_bridges.mk
+++ b/bridges/Module_bridges.mk
@@ -10,95 +10,24 @@
$(eval $(call gb_Module_Module,bridges))
$(eval $(call gb_Module_add_targets,bridges,\
+ Library_cpp_uno \
$(if $(filter TRUE,$(SOLAR_JAVA)),\
Jar_java_uno \
Library_java_uno \
) \
- $(if $(and $(filter I,$(CPU)),$(filter C50 C52,$(COM))),\
- Library_cc50_solaris_intel \
- ) \
- $(if $(filter C52S,$(COM)$(CPU)),\
- Library_cc50_solaris_sparc \
- ) \
- $(if $(filter C52U,$(COM)$(CPU)),\
- Library_cc5_solaris_sparc64 \
- ) \
- $(if $(filter GCCAIXP,$(COM)$(OS)$(CPU)),\
- Library_gcc3_aix_powerpc \
- ) \
- $(if $(filter GCCIOSR,$(COM)$(OS)$(CPU)),\
- CustomTarget_gcc3_ios_arm \
- Library_gcc3_ios_arm \
- ) \
- $(if $(filter GCCLINUXL,$(COM)$(OS)$(CPU)),\
- Library_gcc3_linux_alpha \
- ) \
- $(if $(and $(filter GCCR,$(COM)$(CPU)),$(filter ANDROID LINUX,$(OS))),\
- CustomTarget_gcc3_linux_arm \
- Library_gcc3_linux_arm \
- ) \
- $(if $(filter GCCLINUXH,$(COM)$(OS)$(CPU)),\
- Library_gcc3_linux_hppa \
- ) \
- $(if $(filter GCCLINUXA,$(COM)$(OS)$(CPU)),\
- Library_gcc3_linux_ia64 \
- ) \
- $(if $(and $(filter GCCI,$(COM)$(CPU)),$(filter ANDROID DRAGONFLY FREEBSD LINUX NETBSD OPENBSD,$(OS))),\
- Library_gcc3_linux_intel \
- ) \
- $(if $(filter GCCLINUX6,$(COM)$(OS)$(CPU)),\
- Library_gcc3_linux_m68k \
- ) \
- $(if $(and $(filter GCCM,$(COM)$(CPU)),$(filter ANDROID LINUX,$(OS))),\
- Library_gcc3_linux_mips \
- ) \
- $(if $(filter GCCLINUXPPOWERPC64,$(COM)$(OS)$(CPU)$(CPUNAME)),\
- Library_gcc3_linux_powerpc64 \
- ) \
- $(if $(filter GCCLINUXPPOWERPC,$(COM)$(OS)$(CPU)$(CPUNAME)),\
- Library_gcc3_linux_powerpc \
- ) \
- $(if $(filter GCCLINUX3S390,$(COM)$(OS)$(CPU)$(CPUNAME)),\
- Library_gcc3_linux_s390 \
- ) \
- $(if $(filter GCCLINUX3S390X,$(COM)$(OS)$(CPU)$(CPUNAME)),\
- Library_gcc3_linux_s390x \
- ) \
- $(if $(filter GCCLINUXS,$(COM)$(OS)$(CPU)),\
- Library_gcc3_linux_sparc \
- ) \
- $(if $(and $(filter GCCX,$(COM)$(CPU)),$(filter DRAGONFLY FREEBSD LINUX NETBSD OPENBSD,$(OS))),\
- Library_gcc3_linux_x86-64 \
- ) \
- $(if $(filter GCCMACOSXI,$(COM)$(OS)$(CPU)),\
- Library_gcc3_macosx_intel \
- ) \
- $(if $(filter GCCMACOSXX,$(COM)$(OS)$(CPU)),\
- Library_gcc3_macosx_x86-64 \
- ) \
- $(if $(filter GCCMACOSXP,$(COM)$(OS)$(CPU)),\
- Library_gcc3_macosx_powerpc \
- ) \
- $(if $(filter GCCSOLARISI,$(COM)$(OS)$(CPU)),\
- Library_gcc3_solaris_intel \
- ) \
- $(if $(filter GCCSOLARISS,$(COM)$(OS)$(CPU)),\
- Library_gcc3_solaris_sparc \
- ) \
- $(if $(filter WNTGCC,$(OS)$(COM)),\
- Library_mingw_intel \
- ) \
- $(if $(filter MSCI,$(COM)$(CPU)),\
- Library_msvc_win32_intel \
- ) \
- $(if $(filter MSCX,$(COM)$(CPU)),\
- Library_msvc_win32_x86-64 \
+ $(if $(filter R,$(CPU)),\
+ $(if $(filter IOS,$(OS)),\
+ CustomTarget_gcc3_ios_arm) \
+ $(if $(filter ANDROID LINUX,$(OS)),\
+ CustomTarget_gcc3_linux_arm) \
) \
))
ifeq (,$(gb_STRIPPED_BUILD))
ifeq ($(strip $(bridges_SELECTED_BRIDGE)),)
$(call gb_Output_error,no bridge selected for build: bailing out)
+else ifneq ($(words $(bridges_SELECTED_BRIDGE)),1)
+$(call gb_Output_error,multiple bridges selected for build: $(bridges_SELECTED_BRIDGE))
endif
endif
diff --git a/bridges/source/cpp_uno/cc50_solaris_intel/call.s b/bridges/source/cpp_uno/cc50_solaris_intel/call.s
deleted file mode 100644
index a487491..0000000
--- a/bridges/source/cpp_uno/cc50_solaris_intel/call.s
+++ /dev/null
@@ -1,266 +0,0 @@
-/
-/ This file is part of the LibreOffice project.
-/
-/ 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/.
-/
-/ This file incorporates work covered by the following license notice:
-/
-/ 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 .
-/
-
- .align 4
- .globl privateSnippetExecutorGeneral
-privateSnippetExecutorGeneral:
- movl %esp,%ecx
- pushl %ebp / proper stack frame needed for exception handling
- movl %esp,%ebp
- andl $0xFFFFFFF8,%esp / align following 64bit arg
- subl $0x8,%esp / 64bit nRegReturn
- pushl %ecx / 32bit pCallStack
- pushl %edx / 32bit nVtableOffset
- pushl %eax / 32bit nFunctionIndex
- call cpp_vtable_call
- movl 12(%esp),%eax / 64 bit nRegReturn, lower half
- leave
- ret
- .type privateSnippetExecutorGeneral, @function
- .size privateSnippetExecutorGeneral, .-privateSnippetExecutorGeneral
-
- .align 4
- .globl privateSnippetExecutorVoid
-privateSnippetExecutorVoid:
- movl %esp,%ecx
- pushl %ebp / proper stack frame needed for exception handling
- movl %esp,%ebp
- andl $0xFFFFFFF8,%esp / align following 64bit arg
- subl $0x8,%esp / 64bit nRegReturn
- pushl %ecx / 32bit pCallStack
- pushl %edx / 32bit nVtableOffset
- pushl %eax / 32bit nFunctionIndex
- call cpp_vtable_call
- leave
- ret
- .type privateSnippetExecutorVoid, @function
- .size privateSnippetExecutorVoid, .-privateSnippetExecutorVoid
-
- .align 4
- .globl privateSnippetExecutorHyper
-privateSnippetExecutorHyper:
- movl %esp,%ecx
- pushl %ebp / proper stack frame needed for exception handling
- movl %esp,%ebp
- andl $0xFFFFFFF8,%esp / align following 64bit arg
- subl $0x8,%esp / 64bit nRegReturn
- pushl %ecx / 32bit pCallStack
- pushl %edx / 32bit nVtableOffset
- pushl %eax / 32bit nFunctionIndex
- call cpp_vtable_call
- movl 12(%esp),%eax / 64 bit nRegReturn, lower half
- movl 16(%esp),%edx / 64 bit nRegReturn, upper half
- leave
- ret
- .type privateSnippetExecutorHyper, @function
- .size privateSnippetExecutorHyper, .-privateSnippetExecutorHyper
-
- .align 4
- .globl privateSnippetExecutorFloat
-privateSnippetExecutorFloat:
- movl %esp,%ecx
- pushl %ebp / proper stack frame needed for exception handling
- movl %esp,%ebp
- andl $0xFFFFFFF8,%esp / align following 64bit arg
- subl $0x8,%esp / 64bit nRegReturn
- pushl %ecx / 32bit pCallStack
- pushl %edx / 32bit nVtableOffset
- pushl %eax / 32bit nFunctionIndex
- call cpp_vtable_call
- flds 12(%esp) / 64 bit nRegReturn, lower half
- leave
- ret
- .type privateSnippetExecutorFloat, @function
- .size privateSnippetExecutorFloat, .-privateSnippetExecutorFloat
-
- .align 4
- .globl privateSnippetExecutorDouble
-privateSnippetExecutorDouble:
- movl %esp,%ecx
- pushl %ebp / proper stack frame needed for exception handling
- movl %esp,%ebp
- andl $0xFFFFFFF8,%esp / align following 64bit arg
- subl $0x8,%esp / 64bit nRegReturn
- pushl %ecx / 32bit pCallStack
- pushl %edx / 32bit nVtableOffset
- pushl %eax / 32bit nFunctionIndex
- call cpp_vtable_call
- fldl 12(%esp) / 64 bit nRegReturn
- leave
- ret
- .type privateSnippetExecutorDouble, @function
- .size privateSnippetExecutorDouble, .-privateSnippetExecutorDouble
-
- .align 4
- .globl privateSnippetExecutorStruct
-privateSnippetExecutorStruct:
- movl %esp,%ecx
- pushl %ebp / proper stack frame needed for exception handling
- movl %esp,%ebp
- andl $0xFFFFFFF8,%esp / align following 64bit arg
- subl $0x8,%esp / 64bit nRegReturn
- pushl %ecx / 32bit pCallStack
- pushl %edx / 32bit nVtableOffset
- pushl %eax / 32bit nFunctionIndex
- call cpp_vtable_call
- movl 12(%esp),%eax / 64 bit nRegReturn, lower half
- leave
- ret $4
- .type privateSnippetExecutorStruct, @function
- .size privateSnippetExecutorStruct, .-privateSnippetExecutorStruct
-
- .align 4
- .globl callVirtualMethod
-callVirtualMethod:
- pushl %ebp
- movl %esp, %ebp
- subl $24, %esp
- movl %edx, -4(%ebp)
- movl %ecx, -8(%ebp)
- movl %eax, -12(%ebp)
- movl %esp, -16(%ebp)
- movl %ebx, -20(%ebp)
-
- / set ebx to GOT
-.L_GOT_BEGIN_2:
- call .L_GOT_END_2
-.L_GOT_END_2:
- popl %ebx
- addl $_GLOBAL_OFFSET_TABLE_+[.-.L_GOT_END_2],%ebx
-.callBeginPosition:
- movl 28(%ebp), %eax
- movl %eax, %edx
- dec %edx
- shl $2, %edx
- add 24(%ebp), %edx
-.copyLong:
- movl 0(%edx), %ecx
- sub $4, %edx
- push %ecx
- dec %eax
- jne .copyLong
-.doCall:
- movl 8(%ebp), %edx
- movl 0(%edx), %edx
- movl 12(%ebp), %eax
- add $2, %eax
- shl $2, %eax
- add %eax, %edx
- movl 0(%edx), %edx
-
- call *%edx
-
-.callVirtualMethodExceptionPosition:
- / handle returns
- movl 20(%ebp), %ecx
-
- / byte types
- cmp $2, %ecx / typelib_TypeClass_BOOLEAN
- je .handleByte
- cmp $3, %ecx
- je .handleByte / typelib_TypeClass_BYTE
-
- / half word types
- cmp $4, %ecx / typelib_TypeClass_SHORT
- je .handleShort
- cmp $5, %ecx / typelib_TypeClass_UNSIGNED_SHORT
- je .handleShort
-
- / word types
- cmp $6, %ecx / typelib_TypeClass_LONG
- je .handleWord
- cmp $7, %ecx / typelib_TypeClass_UNSIGNED_LONG
- je .handleWord
- cmp $1, %ecx / typelib_TypeClass_CHAR (wchar_t)
- je .handleWord
- cmp $15, %ecx / typelib_TypeClass_ENUM
- je .handleWord
-
- / double word types
- cmp $8, %ecx / typelib_TypeClass_HYPER
- je .handleDoubleWord
- cmp $9, %ecx / typelib_TypeClass_UNSIGNED_HYPER
- je .handleDoubleWord
-
- / float
- cmp $10, %ecx / typelib_TypeClass_FLOAT
- je .handleFloat
-
- / double
- cmp $11, %ecx / typelib_TypeClass_DOUBLE
- je .handleDouble
-
- / default: return void
- jmp .doRestore
-.handleByte:
- movl 16(%ebp), %ecx
- movb %al, 0(%ecx)
- jmp .doRestore
-.handleShort:
- movl 16(%ebp), %ecx
- movw %ax, 0(%ecx)
- jmp .doRestore
-.handleWord:
- movl 16(%ebp), %ecx
- movl %eax, 0(%ecx)
- jmp .doRestore
-.handleDoubleWord:
- movl 16(%ebp), %ecx
- movl %eax, 0(%ecx)
- movl %edx, 4(%ecx)
- jmp .doRestore
-.handleFloat:
- movl 16(%ebp), %ecx
- fstps 0(%ecx)
- jmp .doRestore
-.handleDouble:
- movl 16(%ebp), %ecx
- fstpl 0(%ecx)
- jmp .doRestore
-.doRestore:
- movl -4(%ebp), %edx
- movl -8(%ebp), %ecx
- movl -12(%ebp), %eax
- movl -20(%ebp), %ebx
- movl %ebp, %esp
- popl %ebp
- ret
- .type callVirtualMethod, @function
- .size callVirtualMethod, .-callVirtualMethod
-
- .globl callVirtualMethodExceptionHandler
-callVirtualMethodExceptionHandler:
- movl -4(%ebp), %edx
- movl -8(%ebp), %ecx
- movl -12(%ebp), %eax
- movl -16(%ebp), %esp
- movl -20(%ebp), %ebx
- call __1cG__CrunMex_rethrow_q6F_v_ at PLT
- ret
-
- .type callVirtualMethodExceptionHandler, @function
- .size callVirtualMethodExceptionHandler, .-callVirtualMethodExceptionHandler
-
-
- .section .exception_ranges,"aw"
- .align 4
-
- .4byte .callBeginPosition at rel
- .4byte .callVirtualMethodExceptionPosition-.callBeginPosition
- .4byte callVirtualMethodExceptionHandler-.callBeginPosition
- .zero 8
diff --git a/bridges/source/cpp_uno/cc50_solaris_intel/cc50_solaris_intel.hxx b/bridges/source/cpp_uno/cc50_solaris_intel/cc50_solaris_intel.hxx
deleted file mode 100644
index 53211b0..0000000
--- a/bridges/source/cpp_uno/cc50_solaris_intel/cc50_solaris_intel.hxx
+++ /dev/null
@@ -1,66 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * 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/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * 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 .
- */
-
-#include <cstddef>
-#include <rtl/string.hxx>
-#include <typeinfo>
-
-typedef struct _uno_Any uno_Any;
-typedef struct _uno_Mapping uno_Mapping;
-
-// private C50 structures and functions
-namespace __Crun
-{
- struct static_type_info
- {
- std::ptrdiff_t m_pClassName;
- int m_nSkip1; // must be 0
- void* m_pMagic; // points to some magic data
- int m_nMagic[ 4 ];
- int m_nSkip2[2]; // must be 0
- };
- void* ex_alloc(unsigned);
- void ex_throw( void*, const static_type_info*, void(*)(void*));
- void* ex_get();
- void ex_rethrow_q();
-}
-
-namespace __Cimpl
-{
- const char* ex_name();
-}
-
-extern "C" void _ex_register( void*, int );
-
-namespace CPPU_CURRENT_NAMESPACE
-{
-
-//##################################################################################################
-//#### exceptions ##################################################################################
-//##################################################################################################
-
-void cc50_solaris_intel_raiseException(
- uno_Any * pUnoExc, uno_Mapping * pUno2Cpp );
-
-void cc50_solaris_intel_fillUnoException(
- void*, const char*,
- uno_Any*, uno_Mapping * pCpp2Uno );
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx b/bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx
deleted file mode 100644
index 7d2a0ea..0000000
--- a/bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx
+++ /dev/null
@@ -1,519 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * 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/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * 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 .
- */
-
-
-#include <sal/alloca.h>
-
-#include <com/sun/star/uno/genfunc.hxx>
-#include <uno/data.h>
-#include <typelib/typedescription.hxx>
-
-#include "bridges/cpp_uno/shared/bridge.hxx"
-#include "bridges/cpp_uno/shared/cppinterfaceproxy.hxx"
-#include "bridges/cpp_uno/shared/types.hxx"
-#include "bridges/cpp_uno/shared/vtablefactory.hxx"
-
-#include "cc50_solaris_intel.hxx"
-
-using namespace com::sun::star::uno;
-
-namespace
-{
-
-//==================================================================================================
-void cpp2uno_call(
- bridges::cpp_uno::shared::CppInterfaceProxy * pThis,
- const typelib_TypeDescription * pMemberTypeDescr,
- typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
- sal_Int32 nParams, typelib_MethodParameter * pParams,
- void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
-{
- // pCallStack: ret, [return ptr], this, params
- char * pCppStack = (char *)(pCallStack +1);
-
- // return
- typelib_TypeDescription * pReturnTypeDescr = 0;
- if (pReturnTypeRef)
- TYPELIB_DANGER_GET( &pReturnTypeDescr, pReturnTypeRef );
-
- void * pUnoReturn = 0;
- void * pCppReturn = 0; // complex return ptr: if != 0 && != pUnoReturn, reconversion need
-
- if (pReturnTypeDescr)
- {
- if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
- {
- pUnoReturn = pRegisterReturn; // direct way for simple types
- }
- else // complex return via ptr (pCppReturn)
- {
- pCppReturn = *(void**)pCppStack;
- pCppStack += sizeof( void* );
- pUnoReturn = (bridges::cpp_uno::shared::relatesToInterfaceType(
- pReturnTypeDescr )
- ? alloca( pReturnTypeDescr->nSize )
- : pCppReturn); // direct way
- }
- }
- // pop this
- pCppStack += sizeof( void* );
-
- // stack space
- OSL_ENSURE( sizeof(void *) == sizeof(sal_Int32), "### unexpected size!" );
- // parameters
- void ** pUnoArgs = (void **)alloca( 4 * sizeof(void *) * nParams );
- void ** pCppArgs = pUnoArgs + nParams;
- // indizes of values this have to be converted (interface conversion cpp<=>uno)
- sal_Int32 * pTempIndizes = (sal_Int32 *)(pUnoArgs + (2 * nParams));
- // type descriptions for reconversions
- typelib_TypeDescription ** ppTempParamTypeDescr = (typelib_TypeDescription **)(pUnoArgs + (3 * nParams));
-
- sal_Int32 nTempIndizes = 0;
-
- for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos )
- {
- const typelib_MethodParameter & rParam = pParams[nPos];
- typelib_TypeDescription * pParamTypeDescr = 0;
- TYPELIB_DANGER_GET( &pParamTypeDescr, rParam.pTypeRef );
-
- if (!rParam.bOut
- && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ))
- // value
- {
- pCppArgs[ nPos ] = pUnoArgs[ nPos ] = pCppStack;
- switch (pParamTypeDescr->eTypeClass)
- {
- case typelib_TypeClass_HYPER:
- case typelib_TypeClass_UNSIGNED_HYPER:
- case typelib_TypeClass_DOUBLE:
- pCppStack += sizeof(sal_Int32); // extra long
- }
- // no longer needed
- TYPELIB_DANGER_RELEASE( pParamTypeDescr );
- }
- else // ptr to complex value | ref
- {
- pCppArgs[nPos] = *(void **)pCppStack;
-
- if (! rParam.bIn) // is pure out
- {
- // uno out is unconstructed mem!
- pUnoArgs[nPos] = alloca( pParamTypeDescr->nSize );
- pTempIndizes[nTempIndizes] = nPos;
- // will be released at reconversion
- ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
- }
- // is in/inout
- else if (bridges::cpp_uno::shared::relatesToInterfaceType(
- pParamTypeDescr ))
- {
- uno_copyAndConvertData( pUnoArgs[nPos] = alloca( pParamTypeDescr->nSize ),
- *(void **)pCppStack, pParamTypeDescr,
- pThis->getBridge()->getCpp2Uno() );
- pTempIndizes[nTempIndizes] = nPos; // has to be reconverted
- // will be released at reconversion
- ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
- }
- else // direct way
- {
- pUnoArgs[nPos] = *(void **)pCppStack;
- // no longer needed
- TYPELIB_DANGER_RELEASE( pParamTypeDescr );
- }
- }
- pCppStack += sizeof(sal_Int32); // standard parameter length
- }
-
- // ExceptionHolder
- uno_Any aUnoExc; // Any will be constructed by callee
- uno_Any * pUnoExc = &aUnoExc;
-
- // invoke uno dispatch call
- (*pThis->getUnoI()->pDispatcher)(
- pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
-
- // in case no exception occurred...
- if (pUnoExc)
- {
- // destruct temporary in/inout params
- for ( ; nTempIndizes--; )
- {
- sal_Int32 nIndex = pTempIndizes[nTempIndizes];
-
- if (pParams[nIndex].bIn) // is in/inout => was constructed
- uno_destructData( pUnoArgs[nIndex], ppTempParamTypeDescr[nTempIndizes], 0 );
- TYPELIB_DANGER_RELEASE( ppTempParamTypeDescr[nTempIndizes] );
- }
- if (pReturnTypeDescr)
- TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
-
- CPPU_CURRENT_NAMESPACE::cc50_solaris_intel_raiseException(
- &aUnoExc, pThis->getBridge()->getUno2Cpp() );
- // has to destruct the any
- }
- else // else no exception occurred...
- {
- // temporary params
- for ( ; nTempIndizes--; )
- {
- sal_Int32 nIndex = pTempIndizes[nTempIndizes];
- typelib_TypeDescription * pParamTypeDescr = ppTempParamTypeDescr[nTempIndizes];
-
- if (pParams[nIndex].bOut) // inout/out
- {
- // convert and assign
- uno_destructData(
- pCppArgs[nIndex], pParamTypeDescr,
- reinterpret_cast< uno_ReleaseFunc >(cpp_release) );
- uno_copyAndConvertData( pCppArgs[nIndex], pUnoArgs[nIndex], pParamTypeDescr,
- pThis->getBridge()->getUno2Cpp() );
- }
- // destroy temp uno param
- uno_destructData( pUnoArgs[nIndex], pParamTypeDescr, 0 );
-
- TYPELIB_DANGER_RELEASE( pParamTypeDescr );
- }
- // return
- if (pCppReturn) // has complex return
- {
- if (pUnoReturn != pCppReturn) // needs reconversion
- {
- uno_copyAndConvertData( pCppReturn, pUnoReturn, pReturnTypeDescr,
- pThis->getBridge()->getUno2Cpp() );
- // destroy temp uno return
- uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
- }
- // complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
- }
- if (pReturnTypeDescr)
- {
- TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
- }
- }
-}
-
-
-//==================================================================================================
-extern "C" void cpp_vtable_call(
- int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
-{
- OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
-
- // pCallStack: ret adr, [ret *], this, params
- void * pThis;
- if( nFunctionIndex & 0x80000000 )
- {
- nFunctionIndex &= 0x7fffffff;
- pThis = pCallStack[2];
- }
- else
- {
- pThis = pCallStack[1];
- }
- pThis = static_cast< char * >(pThis) - nVtableOffset;
- bridges::cpp_uno::shared::CppInterfaceProxy * pCppI
- = bridges::cpp_uno::shared::CppInterfaceProxy::castInterfaceToProxy(
- pThis);
-
- typelib_InterfaceTypeDescription * pTypeDescr = pCppI->getTypeDescr();
-
- OSL_ENSURE( nFunctionIndex < pTypeDescr->nMapFunctionIndexToMemberIndex,
- "### illegal vtable index!" );
- if (nFunctionIndex >= pTypeDescr->nMapFunctionIndexToMemberIndex)
- {
- throw RuntimeException( "illegal vtable index!", (XInterface *)pThis );
- }
-
- // determine called method
- sal_Int32 nMemberPos = pTypeDescr->pMapFunctionIndexToMemberIndex[nFunctionIndex];
- OSL_ENSURE( nMemberPos < pTypeDescr->nAllMembers, "### illegal member index!" );
-
- TypeDescription aMemberDescr( pTypeDescr->ppAllMembers[nMemberPos] );
-
- switch (aMemberDescr.get()->eTypeClass)
- {
- case typelib_TypeClass_INTERFACE_ATTRIBUTE:
- {
- if (pTypeDescr->pMapMemberIndexToFunctionIndex[nMemberPos] == nFunctionIndex)
- {
- // is GET method
- cpp2uno_call(
- pCppI, aMemberDescr.get(),
- ((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
- 0, 0, // no params
- pCallStack, &nRegReturn );
- }
- else
- {
- // is SET method
- typelib_MethodParameter aParam;
- aParam.pTypeRef =
- ((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef;
- aParam.bIn = sal_True;
- aParam.bOut = sal_False;
-
- cpp2uno_call(
- pCppI, aMemberDescr.get(),
- 0, // indicates void return
- 1, &aParam,
- pCallStack, &nRegReturn );
- }
- break;
- }
- case typelib_TypeClass_INTERFACE_METHOD:
- {
- // is METHOD
- switch (nFunctionIndex)
- {
- // standard XInterface vtable calls
- case 1: // acquire()
- pCppI->acquireProxy(); // non virtual call!
- break;
- case 2: // release()
- pCppI->releaseProxy(); // non virtual call!
- break;
- case 0: // queryInterface() opt
- {
- typelib_TypeDescription * pTD = 0;
- TYPELIB_DANGER_GET( &pTD, reinterpret_cast< Type * >( pCallStack[3] )->getTypeLibType() );
- if (pTD)
- {
- XInterface * pInterface = 0;
- (*pCppI->getBridge()->getCppEnv()->getRegisteredInterface)(
- pCppI->getBridge()->getCppEnv(),
- (void **)&pInterface, pCppI->getOid().pData,
- (typelib_InterfaceTypeDescription *)pTD );
-
- if (pInterface)
- {
- ::uno_any_construct(
- reinterpret_cast< uno_Any * >( pCallStack[1] ),
- &pInterface, pTD,
- reinterpret_cast< uno_AcquireFunc >(cpp_acquire) );
- pInterface->release();
- TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
- break;
- }
- TYPELIB_DANGER_RELEASE( pTD );
- }
- } // else perform queryInterface()
- default:
- cpp2uno_call(
- pCppI, aMemberDescr.get(),
- ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
- ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
- ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
- }
- break;
- }
- default:
- {
- throw RuntimeException( "no member description found!", (XInterface *)pThis );
- }
- }
-}
-
-//==================================================================================================
-bool isSimpleStruct(typelib_TypeDescriptionReference * type) {
- typelib_TypeDescription * td = 0;
- TYPELIB_DANGER_GET(&td, type);
- OSL_ASSERT(td != 0);
- for (typelib_CompoundTypeDescription * ctd
- = reinterpret_cast< typelib_CompoundTypeDescription * >(td);
- ctd != 0; ctd = ctd->pBaseTypeDescription)
- {
- OSL_ASSERT(ctd->aBase.eTypeClass == typelib_TypeClass_STRUCT);
- for (sal_Int32 i = 0; i < ctd->nMembers; ++i) {
- typelib_TypeClass c = ctd->ppTypeRefs[i]->eTypeClass;
- switch (c) {
- case typelib_TypeClass_STRING:
- case typelib_TypeClass_TYPE:
- case typelib_TypeClass_ANY:
- case typelib_TypeClass_SEQUENCE:
- case typelib_TypeClass_INTERFACE:
- return false;
- case typelib_TypeClass_STRUCT:
- if (!isSimpleStruct(ctd->ppTypeRefs[i])) {
- return false;
- }
- break;
- default:
- OSL_ASSERT(
- c <= typelib_TypeClass_DOUBLE
- || c == typelib_TypeClass_ENUM);
- break;
- }
- }
- }
- TYPELIB_DANGER_RELEASE(td);
- return true;
-}
-
-extern "C" void privateSnippetExecutorGeneral();
-extern "C" void privateSnippetExecutorVoid();
-extern "C" void privateSnippetExecutorHyper();
-extern "C" void privateSnippetExecutorFloat();
-extern "C" void privateSnippetExecutorDouble();
-extern "C" void privateSnippetExecutorStruct();
-extern "C" typedef void (*PrivateSnippetExecutor)();
-
-int const codeSnippetSize = 16;
-
-unsigned char * codeSnippet(
- unsigned char * code, sal_Int32 functionIndex, sal_Int32 vtableOffset,
- typelib_TypeDescriptionReference * returnType)
-{
- typelib_TypeClass c = returnType == 0
- ? typelib_TypeClass_VOID : returnType->eTypeClass;
- if (returnType != 0 && !bridges::cpp_uno::shared::isSimpleType(c)) {
- functionIndex |= 0x80000000;
- }
- PrivateSnippetExecutor exec;
- switch (c) {
- case typelib_TypeClass_VOID:
- exec = privateSnippetExecutorVoid;
- break;
- case typelib_TypeClass_HYPER:
- case typelib_TypeClass_UNSIGNED_HYPER:
- exec = privateSnippetExecutorHyper;
- break;
- case typelib_TypeClass_FLOAT:
- exec = privateSnippetExecutorFloat;
- break;
- case typelib_TypeClass_DOUBLE:
- exec = privateSnippetExecutorDouble;
- break;
- case typelib_TypeClass_STRUCT:
- OSL_ASSERT(returnType != 0);
- // For "simple" (more-or-less POD, but not exactly) structs, the caller
- // pops the pointer to the return value off the stack, as documented in
- // the Intel SYSV ABI; for other structs (which includes STRING, TYPE,
- // ANY, sequences, and interfaces, btw.), the callee pops the pointer to
- // the return value off the stack:
- exec = isSimpleStruct(returnType)
- ? privateSnippetExecutorStruct : privateSnippetExecutorGeneral;
- break;
- default:
- exec = privateSnippetExecutorGeneral;
- break;
- }
- unsigned char * p = code;
- OSL_ASSERT(sizeof (sal_Int32) == 4);
- // mov function_index, %eax:
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list