ldbl-128ibm-compat: fixup subdir location of several funcs
authorPaul E. Murphy <murphyp@linux.vnet.ibm.com>
Fri, 7 Feb 2020 20:06:41 +0000 (14:06 -0600)
committerPaul E. Murphy <murphyp@linux.vnet.ibm.com>
Fri, 21 Feb 2020 14:24:15 +0000 (08:24 -0600)
We want to ensure that if a second file is built to support
ieee128 long double, we built its companion implementation
with ibm128 long double.  The shared object versions of these
files build correctly because the aliasing is sufficiently
complex to prevent the redirects from applying when defining
them.

However, this does not prevent the static object variants
from becoming quietly broken due to redirects.  This is
intentionally avoided by marking such objects to be built
with -mabi=ibmlongdouble.

Shuffle the misplaced routines to build against the subdir
which defines the needed symbols.

sysdeps/ieee754/ldbl-128ibm-compat/Makefile

index 2dceb65..e40ae08 100644 (file)
@@ -1,9 +1,21 @@
 ifeq ($(subdir),libio)
 ldbl-extra-routines += fwscanf \
+                      fwprintf \
+                      obprintf \
                       swscanf \
+                      swprintf \
                       wscanf \
+                      vasprintf \
+                      vdprintf \
+                      vscanf \
+                      vsprintf \
+                      vsnprintf \
+                      vsscanf \
+                      vswprintf \
                       vswscanf \
-                      vwscanf
+                      vwprintf \
+                      vwscanf \
+                      wprintf
 endif
 
 ifeq ($(subdir),wcsmbs)
@@ -29,28 +41,14 @@ ldbl-extra-routines += printf_size \
                       printf \
                       snprintf \
                       sprintf \
-                      vasprintf \
-                      vdprintf \
                       vfprintf \
                       vprintf \
-                      vsnprintf \
-                      vsprintf \
-                      fwprintf \
-                      swprintf \
-                      wprintf \
                       vfwprintf \
-                      vswprintf \
-                      vwprintf \
                       fscanf \
                       scanf \
                       sscanf \
                       vfscanf \
-                      vscanf \
-                      vsscanf \
                       vfwscanf \
-                      obprintf \
-                      obstack_chk \
-                      vobstack_chk \
                       isoc99_fscanf \
                       isoc99_scanf \
                       isoc99_sscanf \
@@ -211,7 +209,9 @@ ldbl-extra-routines += asprintf_chk \
                       wprintf_chk \
                       vfwprintf_chk \
                       vswprintf_chk \
-                      vwprintf_chk
+                      vwprintf_chk \
+                      obstack_chk \
+                      vobstack_chk
 
 tests-internal += test-printf-chk-ieee128 test-printf-chk-ibm128
 CFLAGS-test-printf-chk-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi