elf: Make dl-rseq-symbols Linux only
[glibc.git] / sysdeps / ieee754 / ldbl-128ibm-compat / Makefile
blob910c0198eb8be707190c5a7a56418241c5f82942
1 ifeq ($(subdir),libio)
2 ldbl-extra-routines += fwscanf \
3 fwprintf \
4 obprintf \
5 swscanf \
6 swprintf \
7 wscanf \
8 vasprintf \
9 vdprintf \
10 vscanf \
11 vsprintf \
12 vsnprintf \
13 vsscanf \
14 vswprintf \
15 vswscanf \
16 vwprintf \
17 vwscanf \
18 wprintf
19 endif
21 ifeq ($(subdir),wcsmbs)
22 ldbl-extra-routines += isoc99_fwscanf \
23 isoc99_swscanf \
24 isoc99_wscanf \
25 isoc99_vfwscanf \
26 isoc99_vswscanf \
27 isoc99_vwscanf \
28 isoc23_fwscanf \
29 isoc23_swscanf \
30 isoc23_wscanf \
31 isoc23_vfwscanf \
32 isoc23_vswscanf \
33 isoc23_vwscanf
35 tests-internal += test-wcstold-ibm128 test-wcstold-ieee128
36 CFLAGS-test-wcstold-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
37 CFLAGS-test-wcstold-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
39 endif
41 ifeq ($(subdir),stdio-common)
42 ldbl-extra-routines += printf_size \
43 asprintf \
44 dprintf \
45 fprintf \
46 printf \
47 snprintf \
48 sprintf \
49 vfprintf \
50 vprintf \
51 vfwprintf \
52 fscanf \
53 scanf \
54 sscanf \
55 vfscanf \
56 vfwscanf \
57 isoc99_fscanf \
58 isoc99_scanf \
59 isoc99_sscanf \
60 isoc99_vfscanf \
61 isoc99_vscanf \
62 isoc99_vsscanf \
63 isoc23_fscanf \
64 isoc23_scanf \
65 isoc23_sscanf \
66 isoc23_vfscanf \
67 isoc23_vscanf \
68 isoc23_vsscanf
70 # Printing long double values with IEEE binary128 format reuses part
71 # of the internal float128 implementation (__printf_fp, __printf_fphex,
72 # and __float128 variables and union members). Likewise, reading these
73 # values reuses __strtof128_internal. Thus, the compilation of the
74 # following functions, must have -mfloat128 and -mabi=ibmlongdouble
75 # passed to the compiler.
76 CFLAGS-vfprintf-internal.c += -mfloat128 -mabi=ibmlongdouble
77 CFLAGS-vfwprintf-internal.c += -mfloat128 -mabi=ibmlongdouble
78 CFLAGS-vfscanf-internal.c += -mfloat128 -mabi=ibmlongdouble
79 CFLAGS-vfwscanf-internal.c += -mfloat128 -mabi=ibmlongdouble
81 # Basic tests for the implementation of long double with IEEE binary128
82 # format and for the related redirections in installed headers.
83 tests-internal += test-printf-ieee128 test-printf-ibm128
84 CFLAGS-test-printf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
85 CFLAGS-test-printf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
87 tests-internal += test-wprintf-ieee128 test-wprintf-ibm128
88 CFLAGS-test-wprintf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
89 CFLAGS-test-wprintf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
91 # The following tests are setting _FORTIFY_SOURCE internally
92 tests-internal += test-obstack-ieee128 test-obstack-ibm128
93 CFLAGS-test-obstack-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi \
94 $(no-fortify-source)
95 CFLAGS-test-obstack-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
96 $(no-fortify-source)
98 # The following tests are setting _FORTIFY_SOURCE internally
99 tests-internal += test-obstack-chk-ieee128 test-obstack-chk-ibm128
100 CFLAGS-test-obstack-chk-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi \
101 $(no-fortify-source)
102 CFLAGS-test-obstack-chk-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
103 $(no-fortify-source)
105 tests-internal += test-scanf-ieee128 test-scanf-ibm128
106 CFLAGS-test-scanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
107 CFLAGS-test-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
109 tests-internal += test-wscanf-ieee128 test-wscanf-ibm128
110 CFLAGS-test-wscanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
111 CFLAGS-test-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
113 tests-internal += test-isoc99-scanf-ieee128 test-isoc99-scanf-ibm128
114 CFLAGS-test-isoc99-scanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c99
115 CFLAGS-test-isoc99-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c99
117 tests-internal += test-isoc99-wscanf-ieee128 test-isoc99-wscanf-ibm128
118 CFLAGS-test-isoc99-wscanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c99
119 CFLAGS-test-isoc99-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c99
121 ifeq ($(run-built-tests),yes)
122 tests-special += $(objpfx)test-scanf-ieee128.out
123 tests-special += $(objpfx)test-scanf-ibm128.out
125 tests-special += $(objpfx)test-wscanf-ieee128.out
126 tests-special += $(objpfx)test-wscanf-ibm128.out
128 tests-special += $(objpfx)test-isoc99-scanf-ieee128.out
129 tests-special += $(objpfx)test-isoc99-scanf-ibm128.out
131 tests-special += $(objpfx)test-isoc99-wscanf-ieee128.out
132 tests-special += $(objpfx)test-isoc99-wscanf-ibm128.out
133 endif
135 $(objpfx)test-scanf-ieee128.out: \
136 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
137 $(objpfx)test-scanf-ieee128
138 $(SHELL) $^ '$(test-program-prefix)' $@; \
139 $(evaluate-test)
141 $(objpfx)test-scanf-ibm128.out: \
142 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
143 $(objpfx)test-scanf-ibm128
144 $(SHELL) $^ '$(test-program-prefix)' $@; \
145 $(evaluate-test)
147 $(objpfx)test-wscanf-ieee128.out: \
148 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
149 $(objpfx)test-wscanf-ieee128
150 $(SHELL) $^ '$(test-program-prefix)' $@; \
151 $(evaluate-test)
153 $(objpfx)test-wscanf-ibm128.out: \
154 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
155 $(objpfx)test-wscanf-ibm128
156 $(SHELL) $^ '$(test-program-prefix)' $@; \
157 $(evaluate-test)
159 $(objpfx)test-isoc99-scanf-ieee128.out: \
160 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
161 $(objpfx)test-isoc99-scanf-ieee128
162 $(SHELL) $^ '$(test-program-prefix)' $@; \
163 $(evaluate-test)
165 $(objpfx)test-isoc99-scanf-ibm128.out: \
166 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
167 $(objpfx)test-isoc99-scanf-ibm128
168 $(SHELL) $^ '$(test-program-prefix)' $@; \
169 $(evaluate-test)
171 $(objpfx)test-isoc99-wscanf-ieee128.out: \
172 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
173 $(objpfx)test-isoc99-wscanf-ieee128
174 $(SHELL) $^ '$(test-program-prefix)' $@; \
175 $(evaluate-test)
177 $(objpfx)test-isoc99-wscanf-ibm128.out: \
178 ../sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat.sh \
179 $(objpfx)test-isoc99-wscanf-ibm128
180 $(SHELL) $^ '$(test-program-prefix)' $@; \
181 $(evaluate-test)
183 tests-internal += test-printf-size-ieee128 test-printf-size-ibm128
184 CFLAGS-test-printf-size-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
185 CFLAGS-test-printf-size-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
187 ifeq ($(run-built-tests),yes)
188 tests-special += $(objpfx)test-printf-size-ieee128.out
189 tests-special += $(objpfx)test-printf-size-ibm128.out
190 endif
192 $(objpfx)test-printf-size-ieee128.out: \
193 tst-printfsz-islongdouble.sh $(objpfx)test-printf-size-ieee128
194 $(SHELL) $^ '$(test-program-prefix)' $@; \
195 $(evaluate-test)
197 $(objpfx)test-printf-size-ibm128.out: \
198 tst-printfsz-islongdouble.sh $(objpfx)test-printf-size-ibm128
199 $(SHELL) $^ '$(test-program-prefix)' $@; \
200 $(evaluate-test)
201 endif
203 ifeq ($(subdir),debug)
204 ldbl-extra-routines += asprintf_chk \
205 dprintf_chk \
206 fprintf_chk \
207 printf_chk \
208 snprintf_chk \
209 sprintf_chk \
210 vasprintf_chk \
211 vdprintf_chk \
212 vfprintf_chk \
213 vprintf_chk \
214 vsnprintf_chk \
215 vsprintf_chk \
216 fwprintf_chk \
217 swprintf_chk \
218 wprintf_chk \
219 vfwprintf_chk \
220 vswprintf_chk \
221 vwprintf_chk \
222 obstack_chk \
223 vobstack_chk
225 # The following tests are setting _FORTIFY_SOURCE internally
226 tests-internal += test-printf-chk-ieee128 test-printf-chk-ibm128
227 CFLAGS-test-printf-chk-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi \
228 $(no-fortify-source)
229 CFLAGS-test-printf-chk-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
230 $(no-fortify-source)
232 # The following tests are setting _FORTIFY_SOURCE internally
233 tests-internal += test-printf-chk-redir-ieee128 test-printf-chk-redir-ibm128
234 CFLAGS-test-printf-chk-redir-ieee128.c += -mfloat128 -mabi=ieeelongdouble \
235 -Wno-psabi -Wno-unused-result \
236 $(no-fortify-source)
237 CFLAGS-test-printf-chk-redir-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
238 -Wno-unused-result \
239 $(no-fortify-source)
241 # The following tests are setting _FORTIFY_SOURCE internally
242 tests-internal += test-wprintf-chk-ieee128 test-wprintf-chk-ibm128
243 CFLAGS-test-wprintf-chk-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi \
244 $(no-fortify-source)
245 CFLAGS-test-wprintf-chk-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
246 $(no-fortify-source)
248 # The following tests are setting _FORTIFY_SOURCE internally
249 tests-internal += test-wprintf-chk-redir-ieee128 test-wprintf-chk-redir-ibm128
250 CFLAGS-test-wprintf-chk-redir-ieee128.c += -mfloat128 -mabi=ieeelongdouble \
251 -Wno-psabi -Wno-unused-result \
252 $(no-fortify-source)
253 CFLAGS-test-wprintf-chk-redir-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
254 -Wno-unused-result \
255 $(no-fortify-source)
256 endif
258 ifeq ($(subdir),argp)
259 ldbl-extra-routines += argp-help
261 $(objpfx)tst-ieee128-argp.c: tst-ldbl-argp.c
262 cp $< $@
264 $(objpfx)tst-ibm128-argp.c: tst-ldbl-argp.c
265 cp $< $@
267 tests-internal += tst-ieee128-argp tst-ibm128-argp
268 CFLAGS-tst-ieee128-argp.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
269 CFLAGS-tst-ibm128-argp.c += -mabi=ibmlongdouble -Wno-psabi
270 endif
272 ifeq ($(subdir),misc)
273 ldbl-extra-routines += err \
274 error \
275 syslog \
276 qefgcvt \
277 qefgcvt_r
279 CFLAGS-ieee128-qefgcvt.c += -mabi=ieeelongdouble -Wno-psabi -mno-gnu-attribute
280 CFLAGS-ieee128-qefgcvt_r.c += -mabi=ieeelongdouble -Wno-psabi -mno-gnu-attribute
282 tests-internal += tst-ibm128-warn tst-ieee128-warn
283 tests-internal += tst-ibm128-error tst-ieee128-error
284 tests-internal += tst-ibm128-efgcvt tst-ieee128-efgcvt
285 tests-internal += tst-ieee128-errorfptr
287 $(objpfx)tst-ibm128-%.c: tst-ldbl-%.c
288 cp $< $@
290 $(objpfx)tst-ieee128-%.c: tst-ldbl-%.c
291 cp $< $@
293 CFLAGS-tst-ibm128-warn.c += -mabi=ibmlongdouble -Wno-psabi
294 CFLAGS-tst-ibm128-error.c += -mabi=ibmlongdouble -Wno-psabi
295 CFLAGS-tst-ibm128-efgcvt.c += -mabi=ibmlongdouble -Wno-psabi
297 CFLAGS-tst-ieee128-warn.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
298 CFLAGS-tst-ieee128-error.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
299 CFLAGS-tst-ieee128-efgcvt.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
300 CFLAGS-tst-ieee128-errorfptr.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
302 # The following tests are setting _FORTIFY_SOURCE internally
303 tests-container += test-syslog-ieee128 test-syslog-ibm128
304 CFLAGS-test-syslog-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi \
305 $(no-fortify-source)
306 CFLAGS-test-syslog-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
307 $(no-fortify-source)
309 # The following tests are setting _FORTIFY_SOURCE internally
310 tests-container += test-syslog-chk-ieee128 test-syslog-chk-ibm128
311 CFLAGS-test-syslog-chk-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi \
312 $(no-fortify-source)
313 CFLAGS-test-syslog-chk-ibm128.c += -mabi=ibmlongdouble -Wno-psabi \
314 $(no-fortify-source)
315 endif
317 ifeq ($(subdir),stdlib)
318 ldbl-extra-routines += strfmon strfmon_l
320 # Printing long double values with IEEE binary128 format reuses part
321 # of the internal float128 implementation (__printf_fp, __printf_fphex,
322 # and __float128 variables and union members). Thus, the compilation of
323 # the following files, must have -mfloat128 passed to the compiler.
324 # Also, guarantee that they are compiled in IBM long double mode.
325 CFLAGS-strfmon.c += -mfloat128 -mabi=ibmlongdouble
326 CFLAGS-strfmon_l.c += -mfloat128 -mabi=ibmlongdouble
328 tests-internal += test-strfmon-ibm128 test-strfmon-ieee128
329 CFLAGS-test-strfmon-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
330 CFLAGS-test-strfmon-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
331 $(objpfx)tst-strfmon-ibm128.out: $(gen-locales)
332 $(objpfx)tst-strfmon-ieee128.out: $(gen-locales)
334 tests-internal += test-strfrom-ibm128 test-strfrom-ieee128
335 CFLAGS-test-strfrom-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
336 CFLAGS-test-strfrom-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
338 endif
340 ifeq ($(subdir),math)
341 # The totalorder{,mag} compatibility tests were added prior to this
342 # support. Thus, they can only correctly be used with ibm128.
343 CFLAGS-test-ldouble-compat_totalorder.c += -mabi=ibmlongdouble
344 CFLAGS-test-ldouble-compat_totalordermag.c += -mabi=ibmlongdouble
345 endif
347 ifeq ($(subdir), stdio-common)
348 tests += tst-ibm128-scanf-binary-c11 \
349 tst-ibm128-scanf-binary-c23 \
350 tst-ibm128-scanf-binary-gnu11 \
351 tst-ibm128-scanf-binary-gnu89 \
352 tst-ieee128-scanf-binary-c11 \
353 tst-ieee128-scanf-binary-c23 \
354 tst-ieee128-scanf-binary-gnu11 \
355 tst-ieee128-scanf-binary-gnu89
357 # Some versions of GCC supported for building glibc do not support -std=c23
358 # (added in GCC 14), or the older name -std=c2x (added in GCC 9), so
359 # the test for that version uses -std=c11 and then _ISOC23_SOURCE is defined in
360 # the test as needed.
361 CFLAGS-tst-ibm128-scanf-binary-c11.c += -mabi=ibmlongdouble -Wno-psabi \
362 -std=c11 -DOBJPFX=\"$(objpfx)\"
363 CFLAGS-tst-ibm128-scanf-binary-c23.c += -mabi=ibmlongdouble -Wno-psabi \
364 -std=c11 -DOBJPFX=\"$(objpfx)\"
365 CFLAGS-tst-ibm128-scanf-binary-gnu11.c += -mabi=ibmlongdouble -Wno-psabi \
366 -std=gnu11 -DOBJPFX=\"$(objpfx)\"
367 CFLAGS-tst-ibm128-scanf-binary-gnu89.c += -mabi=ibmlongdouble -Wno-psabi \
368 -std=gnu89 -DOBJPFX=\"$(objpfx)\"
369 CFLAGS-tst-ieee128-scanf-binary-c11.c += -mfloat128 -mabi=ieeelongdouble \
370 -Wno-psabi -std=c11 \
371 -DOBJPFX=\"$(objpfx)\"
372 CFLAGS-tst-ieee128-scanf-binary-c23.c += -mfloat128 -mabi=ieeelongdouble \
373 -Wno-psabi -std=c11 \
374 -DOBJPFX=\"$(objpfx)\"
375 CFLAGS-tst-ieee128-scanf-binary-gnu11.c += -mfloat128 -mabi=ieeelongdouble \
376 -Wno-psabi -std=gnu11 \
377 -DOBJPFX=\"$(objpfx)\"
378 CFLAGS-tst-ieee128-scanf-binary-gnu89.c += -mfloat128 -mabi=ieeelongdouble \
379 -Wno-psabi -std=gnu89 \
380 -DOBJPFX=\"$(objpfx)\"
382 endif
384 ifeq ($(subdir), wcsmbs)
385 tests += tst-ibm128-wscanf-binary-c11 \
386 tst-ibm128-wscanf-binary-c23 \
387 tst-ibm128-wscanf-binary-gnu11 \
388 tst-ibm128-wscanf-binary-gnu89 \
389 tst-ieee128-wscanf-binary-c11 \
390 tst-ieee128-wscanf-binary-c23 \
391 tst-ieee128-wscanf-binary-gnu11 \
392 tst-ieee128-wscanf-binary-gnu89
394 # Some versions of GCC supported for building glibc do not support -std=c23
395 # (added in GCC 14), or the older name -std=c2x (added in GCC 9), so
396 # the test for that version uses -std=c11 and then _ISOC23_SOURCE is defined in
397 # the test as needed.
398 CFLAGS-tst-ibm128-wscanf-binary-c11.c += -mabi=ibmlongdouble -Wno-psabi \
399 -std=c11 -DOBJPFX=\"$(objpfx)\"
400 CFLAGS-tst-ibm128-wscanf-binary-c23.c += -mabi=ibmlongdouble -Wno-psabi \
401 -std=c11 -DOBJPFX=\"$(objpfx)\"
402 CFLAGS-tst-ibm128-wscanf-binary-gnu11.c += -mabi=ibmlongdouble -Wno-psabi \
403 -std=gnu11 -DOBJPFX=\"$(objpfx)\"
404 CFLAGS-tst-ibm128-wscanf-binary-gnu89.c += -mabi=ibmlongdouble -Wno-psabi \
405 -std=gnu89 -DOBJPFX=\"$(objpfx)\"
406 CFLAGS-tst-ieee128-wscanf-binary-c11.c += -mfloat128 -mabi=ieeelongdouble \
407 -Wno-psabi -std=c11 \
408 -DOBJPFX=\"$(objpfx)\"
409 CFLAGS-tst-ieee128-wscanf-binary-c23.c += -mfloat128 -mabi=ieeelongdouble \
410 -Wno-psabi -std=c11 \
411 -DOBJPFX=\"$(objpfx)\"
412 CFLAGS-tst-ieee128-wscanf-binary-gnu11.c += -mfloat128 -mabi=ieeelongdouble \
413 -Wno-psabi -std=gnu11 \
414 -DOBJPFX=\"$(objpfx)\"
415 CFLAGS-tst-ieee128-wscanf-binary-gnu89.c += -mfloat128 -mabi=ieeelongdouble \
416 -Wno-psabi -std=gnu89 \
417 -DOBJPFX=\"$(objpfx)\"
419 endif
421 # Add IEEE binary128 files as make targets.
422 routines += $(foreach r,$(ldbl-extra-routines),ieee128-$(r))
424 routines_no_fortify += \
425 ieee128-asprintf \
426 ieee128-dprintf \
427 ieee128-fprintf \
428 ieee128-fwprintf \
429 ieee128-obstack \
430 ieee128-printf \
431 ieee128-snprintf \
432 ieee128-sprintf \
433 ieee128-swprintf \
434 ieee128-syslog \
435 ieee128-vasprintf \
436 ieee128-vdprintf \
437 ieee128-vfprintf \
438 ieee128-vfwprintf \
439 ieee128-vobstack \
440 ieee128-vprintf \
441 ieee128-vsnprintf \
442 ieee128-vsprintf \
443 ieee128-vswprintf \
444 ieee128-vsyslog \
445 ieee128-vwprintf \
446 ieee128-wprintf \
447 # routines_no_fortify
449 # On powerpc64le, the routines responsible for converting between long
450 # double and string (e.g.: printf, scanf, strtold, strfroml) default to
451 # IBM long double mode. When support for TS 18661-3 was added, several
452 # internal functions were modified so that they could also handle
453 # floating-point variables with IEEE binary128 format, but as an
454 # additional type, _Float128.
456 # The following rule ensures that the string conversion routines will
457 # always be built in IBM long double mode, with additional support for
458 # IEEE binary128, through the use of -mabi=ibmlongdouble and -mfloat128.
459 ldbl-ibm128-files := $(objpfx)test-%-ibm128^ \
460 $(objpfx)iovdprintf^ \
461 $(objpfx)iovsprintf^ \
462 $(objpfx)iovsscanf^ \
463 $(objpfx)iovswscanf^ \
464 $(objpfx)iovfscanf^ \
465 $(objpfx)mpn2ldbl^ \
466 $(objpfx)ldbl2mpn^ \
467 $(objpfx)strtold_nan^ \
468 $(objpfx)strtold_l^ \
469 $(objpfx)strtold^ \
470 $(objpfx)strfroml^ \
471 $(objpfx)wcstold_nan^ \
472 $(objpfx)wcstold_l^ \
473 $(objpfx)wcstold^ \
474 $(objpfx)printf_fphex^ \
475 $(objpfx)printf_fp^ \
476 $(foreach r,$(ldbl-extra-routines),$(objpfx)$(r)^) \
477 $(foreach r,$(ldbl-extra-routines),$(objpfx)$(r)-internal^)
478 obj-suf-foreach = $(foreach suf,$(all-object-suffixes),$(subst ^,$(suf),$(1)))
480 # Explicitly add -mabi=ibm-long-double to required files.
481 $(call obj-suf-foreach,$(ldbl-ibm128-files)): \
482 sysdep-CFLAGS += -mabi=ibmlongdouble