You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by da...@apache.org on 2025/01/19 07:03:04 UTC
(openoffice) 07/10: We cannot use $(SRCDIR)/solenv/src/component.map as a version map file yet, because it doesn't export RTTI and exception typeinfos.
This is an automated email from the ASF dual-hosted git repository.
damjan pushed a commit to branch windows-amd64
in repository https://gitbox.apache.org/repos/asf/openoffice.git
commit 3a153766d216273cadf097f5d2247953b162a002
Author: Damjan Jovanovic <da...@apache.org>
AuthorDate: Sat Jan 18 11:47:02 2025 +0200
We cannot use $(SRCDIR)/solenv/src/component.map as a version map
file yet, because it doesn't export RTTI and exception typeinfos.
Generally speaking, .map files have 2 purposes:
(A) to set symbol visibility (exported / hidden).
(B) to assign symbol versions to symbols.
We already achieve (A) by means of compiler-level annotations,
at least in gbuild (and in some dmake modules too), so we only
need .map files for (B).
dmake also has an AWK script in main/solenv/bin/addsym.awk, which
it uses to add:
_ZTI*; _ZTS*; # weak RTTI symbols for C++ exceptions
to the "global" section in .map files before linking with them.
However we don't need that. Since gbuild already hides unwanted
symbols, and exports everything wanted, once dmake is gone,
we could just use this much simpler .map file:
UDK_3_0_0 {
global:
*;
};
which would assign symbol version, without changing visibility.
For now, just stop using $(SRCDIR)/solenv/src/component.map. It
crashes during chart creation, because it cannot find exception
typeinfos. This means all gbuild modules lack symbol versions
which they used to have with dmake, but we can easily add that
later.
Patch by: me
---
main/chart2/Library_chartcontroller.mk | 2 --
main/chart2/Library_chartmodel.mk | 2 --
2 files changed, 4 deletions(-)
diff --git a/main/chart2/Library_chartcontroller.mk b/main/chart2/Library_chartcontroller.mk
index c69c3e7028..835146e0df 100644
--- a/main/chart2/Library_chartcontroller.mk
+++ b/main/chart2/Library_chartcontroller.mk
@@ -25,8 +25,6 @@ $(eval $(call gb_Library_Library,chartcontroller))
$(eval $(call gb_Library_add_precompiled_header,chartcontroller,$(SRCDIR)/chart2/inc/pch/precompiled_chartcontroller))
-$(eval $(call gb_Library_set_versionmap,chartcontroller,$(SRCDIR)/solenv/src/component.map))
-
$(eval $(call gb_Library_set_componentfile,chartcontroller,chart2/source/controller/chartcontroller))
$(eval $(call gb_Library_set_include,chartcontroller,\
diff --git a/main/chart2/Library_chartmodel.mk b/main/chart2/Library_chartmodel.mk
index 9418ed4332..a1b20958f8 100644
--- a/main/chart2/Library_chartmodel.mk
+++ b/main/chart2/Library_chartmodel.mk
@@ -25,8 +25,6 @@ $(eval $(call gb_Library_Library,chartmodel))
$(eval $(call gb_Library_add_precompiled_header,chartmodel,$(SRCDIR)/chart2/inc/pch/precompiled_chartmodel))
-$(eval $(call gb_Library_set_versionmap,chartmodel,$(SRCDIR)/solenv/src/component.map))
-
$(eval $(call gb_Library_set_componentfile,chartmodel,chart2/source/model/chartmodel))
$(eval $(call gb_Library_set_include,chartmodel,\