On Sun, Sep 12, 2021 at 6:12 PM apinski--- via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > From: Andrew Pinski <apin...@marvell.com> > > So right now liblto_plugin.so exports many libiberty symbols and > simple_object file symbols but really it just needs to export onload. > > This fixes the problem by using "-export-symbols-regex onload" on > the libtool link line.
OK. > lto-plugin/ChangeLog: > > * Makefile.am: Export only onload. > * Makefile.in: Regenerate. > --- > lto-plugin/Makefile.am | 3 ++- > lto-plugin/Makefile.in | 7 ++++--- > 2 files changed, 6 insertions(+), 4 deletions(-) > > diff --git a/lto-plugin/Makefile.am b/lto-plugin/Makefile.am > index 8b20e1d1d87..988d7a78294 100644 > --- a/lto-plugin/Makefile.am > +++ b/lto-plugin/Makefile.am > @@ -21,7 +21,8 @@ in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), > $(gcc_build_dir)/$(lib)) > liblto_plugin_la_SOURCES = lto-plugin.c > # Note that we intentionally override the bindir supplied by > ACX_LT_HOST_FLAGS. > liblto_plugin_la_LDFLAGS = $(AM_LDFLAGS) \ > - $(lt_host_flags) -module -avoid-version -bindir $(libexecsubdir) > + $(lt_host_flags) -module -avoid-version -bindir $(libexecsubdir) \ > + -export-symbols-regex onload > # Can be simplified when libiberty becomes a normal convenience library. > libiberty = $(with_libiberty)/libiberty.a > libiberty_noasan = $(with_libiberty)/noasan/libiberty.a > diff --git a/lto-plugin/Makefile.in b/lto-plugin/Makefile.in > index 20611c6b1e6..f8df31bb1e8 100644 > --- a/lto-plugin/Makefile.in > +++ b/lto-plugin/Makefile.in > @@ -323,6 +323,7 @@ prefix = @prefix@ > program_transform_name = @program_transform_name@ > psdir = @psdir@ > real_target_noncanonical = @real_target_noncanonical@ > +runstatedir = @runstatedir@ > sbindir = @sbindir@ > sharedstatedir = @sharedstatedir@ > srcdir = @srcdir@ > @@ -350,9 +351,9 @@ libexecsub_LTLIBRARIES = liblto_plugin.la > in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), > $(gcc_build_dir)/$(lib)) > liblto_plugin_la_SOURCES = lto-plugin.c > # Note that we intentionally override the bindir supplied by > ACX_LT_HOST_FLAGS. > -liblto_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(lt_host_flags) -module > -avoid-version \ > - -bindir $(libexecsubdir) $(if $(wildcard \ > - $(libiberty_noasan)),, $(if $(wildcard \ > +liblto_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(lt_host_flags) -module \ > + -avoid-version -bindir $(libexecsubdir) -export-symbols-regex \ > + onload $(if $(wildcard $(libiberty_noasan)),, $(if $(wildcard \ > $(libiberty_pic)),,-Wc,$(libiberty))) > # Can be simplified when libiberty becomes a normal convenience library. > libiberty = $(with_libiberty)/libiberty.a > -- > 2.17.1 >