treewide: Move device_tree to commonlib
[coreboot2.git] / util / crossgcc / patches / gcc-14.1.0_libgcc.patch
blob2f75c92b41fc120ab92ccbb1fd8dea2720f087c3
1 This enables building on Mac OS and FreeBSD by adding support to their
2 variants of the sed utility.
4 diff -urN gcc-5.2.0.orig/libgcc/config/t-hardfp gcc-5.2.0/libgcc/config/t-hardfp
5 --- gcc-5.2.0.orig/libgcc/config/t-hardfp 2015-01-05 04:33:28.000000000 -0800
6 +++ gcc-8.1.0/libgcc/config/t-hardfp 2016-04-06 12:04:51.000000000 -0700
7 @@ -59,21 +59,52 @@
9 hardfp_func_list := $(filter-out $(hardfp_exclusions),$(hardfp_func_list))
11 +HOST_OS ?= $(shell uname)
13 # Regexp for matching a floating-point mode.
14 +ifeq ($(HOST_OS), Darwin)
15 +hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /|/g')
16 +else
17 +ifeq ($(HOST_OS), FreeBSD)
18 +hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /|/g')
19 +else
20 hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /\\|/g')
21 +endif
22 +endif
24 # Regexp for matching the end of a function name, after the last
25 # floating-point mode.
26 +ifeq ($(HOST_OS), Darwin)
27 +hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /|/g')
28 +else
29 +ifeq ($(HOST_OS), FreeBSD)
30 +hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /|/g')
31 +else
32 hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /\\|/g')
33 +endif
34 +endif
36 # Add -D options to define:
37 # FUNC: the function name (e.g. __addsf3)
38 # OP: the function name without the leading __ and with the last
39 # floating-point mode removed (e.g. add3)
40 # TYPE: the last floating-point mode (e.g. sf)
42 +ifeq ($(HOST_OS), Darwin)
43 hardfp_defines_for = \
44 $(shell echo $1 | \
45 - sed 's/\(.*\)\($(hardfp_mode_regexp)\)\($(hardfp_suffix_regexp)\|\)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
46 + sed -E 's/(.*)($(hardfp_mode_regexp))($(hardfp_suffix_regexp)|.*)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
47 +else
48 +ifeq ($(HOST_OS), FreeBSD)
49 +hardfp_defines_for = \
50 + $(shell echo $1 | \
51 + sed -r 's/(.*)($(hardfp_mode_regexp))($(hardfp_suffix_regexp)|.*)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
52 +else
53 +hardfp_defines_for = \
54 + $(shell echo $1 | \
55 + sed 's/\(.*\)\($(hardfp_mode_regexp)\)\($(hardfp_suffix_regexp)\|\)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
56 +endif
57 +endif
59 hardfp-o = $(patsubst %,%$(objext),$(hardfp_func_list))
60 $(hardfp-o): %$(objext): $(srcdir)/config/hardfp.c