Implement P0607R0 "Inline Variables for Standard Library" for C++17
[official-gcc.git] / libgcc / fixed-obj.mk
blob4db7a5792c7a88e31942c669783d4d0b14e6817d
1 # This file is included several times in a row, once for each element of
2 # $(iter-items). On each inclusion, we advance $o to the next element.
3 # $(iter-labels) and $(iter-from) and $(iter-to) are also advanced.
5 o := $(firstword $(iter-items))
6 iter-items := $(filter-out $o,$(iter-items))
8 $o-label := $(firstword $(iter-labels))
9 iter-labels := $(wordlist 2,$(words $(iter-labels)),$(iter-labels))
11 $o-from := $(firstword $(iter-from))
12 iter-from := $(wordlist 2,$(words $(iter-from)),$(iter-from))
14 $o-to := $(firstword $(iter-to))
15 iter-to := $(wordlist 2,$(words $(iter-to)),$(iter-to))
17 ifeq ($($o-from),$($o-to))
18 $o-opt := -D$($o-from)_MODE
19 else
20 $o-opt := -DFROM_$($o-from) -DTO_$($o-to)
21 endif
23 #$(info $o$(objext): -DL$($o-label) $($o-opt))
25 ifneq ($o,$(filter $o,$(LIB2FUNCS_EXCLUDE)))
26 $o$(objext): %$(objext): $(srcdir)/fixed-bit.c
27 $(gcc_compile) -DL$($*-label) $($*-opt) -c $(srcdir)/fixed-bit.c $(vis_hide)
29 ifeq ($(enable_shared),yes)
30 $(o)_s$(objext): %_s$(objext): $(srcdir)/fixed-bit.c
31 $(gcc_s_compile) -DL$($*-label) $($*-opt) -c $(srcdir)/fixed-bit.c
32 endif
33 endif