[pushed] modula-2, plugin: Fix Darwin bootstrap issues.

Message ID 20230813134515.12498-1-iain@sandoe.co.uk
State Unresolved
Headers
Series [pushed] modula-2, plugin: Fix Darwin bootstrap issues. |

Checks

Context Check Description
snail/gcc-patch-check warning Git am fail log

Commit Message

Iain Sandoe Aug. 13, 2023, 1:45 p.m. UTC
  Tested on x86_64 Darwin and x86_64 Linux, pushed to master, will
also backport to 13 if it is needed there, thanks
Iain

--- 8< ---

This corrects some typos in the suffix of the m2rte pluing that
lead to a bootstrap fail on Darwin, where the suffix is not '.so'.

On some versions of Darwin, the linker complains if libSystem is not
linked, so we disable all the default libs, but add libc back.

Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>

gcc/m2/ChangeLog:

	* Make-lang.in: Update suffix spellings to use 'soext'.
	Add libc to the plugin link.
---
 gcc/m2/Make-lang.in | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
  

Patch

diff --git a/gcc/m2/Make-lang.in b/gcc/m2/Make-lang.in
index 8c6bac229e7..ca1581fe643 100644
--- a/gcc/m2/Make-lang.in
+++ b/gcc/m2/Make-lang.in
@@ -39,6 +39,7 @@  else
   PLUGINLDFLAGS = -Wl,-undefined,dynamic_lookup
   PLUGINLDFLAGS += -Wl,-install_name,m2rte$(soext)
   PLUGINLDFLAGS += -nodefaultlibs
+  PLUGINLDFLAGS += -lc
 endif
 
 TEXISRC = $(srcdir)/doc/gm2.texi \
@@ -91,7 +92,7 @@  PGE=m2/pge$(exeext)
 SRC_PREFIX=G
 
 ifeq ($(enable_plugin),yes)
-M2RTE_PLUGIN_SO=plugin/m2rte$(exeext).so
+M2RTE_PLUGIN_SO=plugin/m2rte$(soext)
 endif
 
 m2/gm2spec.o: $(srcdir)/m2/gm2spec.cc $(SYSTEM_H) $(GCC_H) $(CONFIG_H) \
@@ -420,7 +421,7 @@  plugin/m2rte$(soext): $(srcdir)/m2/plugin/m2rte.cc $(GCC_HEADER_DEPENDENCIES_FOR
 else
 m2.install-plugin:
 
-plugin/m2rte$(exeext).so:
+plugin/m2rte$(soext):
 
 endif