Non portable sed invocation in libgcc configury

Martin Husemann martin@NetBSD.org
Sun Mar 23 12:54:00 GMT 2014


This version seems to work for me - but do you really want to go on
this slippery ice?

Martin
-------------- next part --------------
--- libgcc/config/t-hardfp.orig	2014-02-07 08:46:34.000000000 +0100
+++ libgcc/config/t-hardfp	2014-03-23 13:25:44.000000000 +0100
@@ -51,11 +51,11 @@
 		    	      $(subst M,$(pair),truncM2))
 
 # Regexp for matching a floating-point mode.
-hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /\\|/g')
+hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /|/g')
 
 # Regexp for matching the end of a function name, after the last
 # floating-point mode.
-hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /\\|/g')
+hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /|/g')
 
 # Add -D options to define:
 #   FUNC: the function name (e.g. __addsf3)
@@ -64,7 +64,7 @@
 #   TYPE: the last floating-point mode (e.g. sf)
 hardfp_defines_for = \
   $(shell echo $1 | \
-    sed 's/\(.*\)\($(hardfp_mode_regexp)\)\($(hardfp_suffix_regexp)\|\)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
+    sed -r 's/(.*)($(hardfp_mode_regexp))($(hardfp_suffix_regexp)|.*)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
 
 hardfp-o = $(patsubst %,%$(objext),$(hardfp_func_list))
 $(hardfp-o): %$(objext): $(srcdir)/config/hardfp.c


More information about the Gcc-patches mailing list