about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGabriel F. T. Gomes <gftg@linux.vnet.ibm.com>2017-06-27 15:41:12 -0300
committerGabriel F. T. Gomes <gftg@linux.vnet.ibm.com>2017-07-11 14:02:10 -0300
commit4de0cb2e9a86c02ff853630efbae0d2ae777ff47 (patch)
tree1062a1dbf44ddceeddae17c13355d78459936190
parented421fca42fd9b4cab7c66e77894b8dd7ca57ed0 (diff)
downloadglibc-4de0cb2e9a86c02ff853630efbae0d2ae777ff47.tar.gz
glibc-4de0cb2e9a86c02ff853630efbae0d2ae777ff47.tar.xz
glibc-4de0cb2e9a86c02ff853630efbae0d2ae777ff47.zip
powerpc64le: Iterate over all object suffixes when appending -mfloat128
On powerpc64le, the compilation of the files related to float128 support
requires the option -mfloat128 to be passed to gcc.  However, not all
possible object suffixes were covered in the Makefile.  This patch uses
$(all-object-suffixes) in all remaining rules.

Tested for powerpc64le.

	* sysdeps/powerpc/powerpc64le/Makefile: Use $(all-object-suffixes)
	to iterate over all possible object suffixes.  Add a comment
	explaining the use of sysdep-CFLAGS instead of CFLAGS.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/powerpc/powerpc64le/Makefile14
2 files changed, 16 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 081551fdce..018e4f2971 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-07-11  Gabriel F. T. Gomes  <gftg@linux.vnet.ibm.com>
+
+	* sysdeps/powerpc/powerpc64le/Makefile: Use $(all-object-suffixes)
+	to iterate over all possible object suffixes.  Add a comment
+	explaining the use of sysdep-CFLAGS instead of CFLAGS.
+
 2017-07-11  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #12189]
diff --git a/sysdeps/powerpc/powerpc64le/Makefile b/sysdeps/powerpc/powerpc64le/Makefile
index bd8a82dd85..2c34f38a83 100644
--- a/sysdeps/powerpc/powerpc64le/Makefile
+++ b/sysdeps/powerpc/powerpc64le/Makefile
@@ -8,14 +8,18 @@ CPPFLAGS += -I../soft-fp
 # float128 requires adding a handful of extra flags.
 $(foreach suf,$(all-object-suffixes),%f128$(suf)): CFLAGS += -mfloat128
 $(foreach suf,$(all-object-suffixes),%f128_r$(suf)): CFLAGS += -mfloat128
-$(objpfx)test-float128%.o $(objpfx)test-float128%.os: CFLAGS += -mfloat128
-$(objpfx)test-ifloat128%.o $(objpfx)test-ifloat128%.os: CFLAGS += -mfloat128
+$(foreach suf,$(all-object-suffixes),$(objpfx)test-float128%$(suf)): CFLAGS += -mfloat128
+$(foreach suf,$(all-object-suffixes),$(objpfx)test-ifloat128%$(suf)): CFLAGS += -mfloat128
 CFLAGS-libm-test-support-float128.c += -mfloat128
 endif
 
 # Append flags to string <-> _Float128 routines.
 ifneq ($(filter $(subdir),wcsmbs stdlib),)
-%f128.o %f128.os %f128_l.o %f128_l.os %f128_nan.o %f128_nan.os %float1282mpn.o %float1282mpn.os %mpn2float128.o %mpn2float128.os: CFLAGS += -mfloat128
+$(foreach suf,$(all-object-suffixes),%f128$(suf)): CFLAGS += -mfloat128
+$(foreach suf,$(all-object-suffixes),%f128_l$(suf)): CFLAGS += -mfloat128
+$(foreach suf,$(all-object-suffixes),%f128_nan$(suf)): CFLAGS += -mfloat128
+$(foreach suf,$(all-object-suffixes),%float1282mpn$(suf)): CFLAGS += -mfloat128
+$(foreach suf,$(all-object-suffixes),%mpn2float128$(suf)): CFLAGS += -mfloat128
 CFLAGS-bug-strtod.c += -mfloat128
 CFLAGS-bug-strtod2.c += -mfloat128
 CFLAGS-tst-strtod-round.c += -mfloat128
@@ -26,7 +30,9 @@ CFLAGS-tst-strfrom-locale.c += -mfloat128
 CFLAGS-strfrom-skeleton.c += -mfloat128
 
 # When building glibc with support for _Float128, the powers of ten tables in
-# fpioconst.c and in the string conversion functions must be extended.
+# fpioconst.c and in the string conversion functions must be extended.  Some
+# Makefiles (e.g.: wcsmbs/Makefile) override CFLAGS defined by the Makefiles in
+# sysdeps.  This is avoided with the use sysdep-CFLAGS instead of CFLAGS.
 sysdep-CFLAGS += $(sysdep-CFLAGS-$(<F))
 sysdep-CFLAGS-fpioconst.c += -mfloat128
 sysdep-CFLAGS-strtod_l.c += -mfloat128