[Patch] (2/n) newlib: Move vasniprintf.c to ELIX 1 (was: Build-dependency issues with ELIX_LEVEL)

Tobias Burnus <[email protected]>
Newsgroups gmane.comp.lib.newlib
Message-ID <[email protected]>
Attached is a revised version of the patch in the first email in the thread.
Found when looking for referenced but not provided functions
with nvptx, which sets ELIX Level to 1.


libc/stdio/vdiprintf.c's _vdiprintf_r calls _vasniprintf_r
The file is compiled with ELIX Level 1.

The function _vasniprintf_r is provided either via
* libc/stdio/vasniprintf.c which calls _svfiprintf_r
* libc/stdio/vasnprintf.c (only '#ifdef _NANO_FORMATTED_IO')
   which calls _svfprintf_r

We can ignore the second file as no NANO function calls
it. Thus, only the first file (vasniprintf.c) remains.

The _svfiprintf_r / _svfiprintf_r are provided by
libc/stdio/(nano-)vfprintf.c
Those files are also available with ELIX Level 1.


Solution: Also build vasniprintf.c with ELIX Level 1
instead of building it with ELIX Level 4.

The change should be save as the only library call I see
in that file (vasniprintf.c) is to vfprintf.c. And on the
caller side, the call to _vasniprintf_r is not guarded by
any #if. Thus, no new dependencies should get introduced
by this change.


OK? Comments?

Tobias
(Makefile.inc patch + regenerated Makefile.in as separate patch)
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
0001-newlib-Move-vasniprintf.c-to-ELIX-1.patch (text/x-patch, 1.2 KB)
From 17cf1375e4f0e5ad02fdaccfd0735536629f014c Mon Sep 17 00:00:00 2001
From: Tobias Burnus <[email protected]>
Date: Wed, 30 Mar 2022 12:17:45 +0200
Subject: [PATCH] newlib: Move vasniprintf.c to ELIX 1

vdiprintf.c is ELIX Level 1 and calls _vasniprintf_r, which is in
vasniprintf.c (before ELIX Level 4 now in 1). The latter only calls
_svfiprintf_r which is provided by vfprintf.c (also ELIX Level 1).
---
 newlib/libc/stdio/Makefile.inc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/newlib/libc/stdio/Makefile.inc b/newlib/libc/stdio/Makefile.inc
index 2126ceaf5..c2b79641e 100644
--- a/newlib/libc/stdio/Makefile.inc
+++ b/newlib/libc/stdio/Makefile.inc
@@ -34,5 +34,6 @@ libc_a_SOURCES += \
 	%D%/vsiprintf.c \
 	%D%/vsiscanf.c \
-	%D%/vsniprintf.c
+	%D%/vsniprintf.c \
+	%D%/vasniprintf.c
 endif
 
@@ -130,5 +131,5 @@ endif !NEWLIB_NANO_FORMATTED_IO
 endif !ELIX_LEVEL_1
 
-## The following are EL/IX level 2 interfaces
+## The following are EL/IX level 4 interfaces
 if ELIX_LEVEL_1
 %C%_ELIX_4_SOURCES =
@@ -193,6 +194,5 @@ if !NEWLIB_NANO_FORMATTED_IO
 %C%_ELIX_4_SOURCES += \
 	%D%/asniprintf.c \
-	%D%/diprintf.c \
-	%D%/vasniprintf.c
+	%D%/diprintf.c
 endif !NEWLIB_NANO_FORMATTED_IO
 endif !ELIX_LEVEL_3
-- 
2.25.1
re-gen-Makefile.in.diff (text/x-patch, 11.2 KB)
 newlib/Makefile.in | 44 ++++++++++++++++++++++----------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

diff --git a/newlib/Makefile.in b/newlib/Makefile.in
index 41e41412b..719c8c295 100644
--- a/newlib/Makefile.in
+++ b/newlib/Makefile.in
@@ -238,7 +238,8 @@ check_PROGRAMS =
 @HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/viscanf.c \
 @HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/vsiprintf.c \
 @HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/vsiscanf.c \
-@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/vsniprintf.c
+@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/vsniprintf.c \
+@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/vasniprintf.c
 
 @HAVE_STDIO_DIR_TRUE@am__append_13 = libc/stdio/clearerr.c \
 @HAVE_STDIO_DIR_TRUE@	libc/stdio/fclose.c libc/stdio/fdopen.c \
@@ -294,8 +295,7 @@ check_PROGRAMS =
 
 @ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@am__append_15 = \
 @ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/asniprintf.c \
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/diprintf.c \
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/vasniprintf.c
+@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/diprintf.c
 
 @ELIX_LEVEL_1_FALSE@@HAVE_STDIO64_DIR_TRUE@am__append_16 = \
 @ELIX_LEVEL_1_FALSE@@HAVE_STDIO64_DIR_TRUE@	libc/stdio64/fdopen64.c \
@@ -1145,7 +1145,8 @@ am__objects_5 = libc/stdlib/libc_a-rpmatch.$(OBJEXT) \
 @HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-viscanf.$(OBJEXT) \
 @HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-vsiprintf.$(OBJEXT) \
 @HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-vsiscanf.$(OBJEXT) \
-@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-vsniprintf.$(OBJEXT)
+@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-vsniprintf.$(OBJEXT) \
+@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-vasniprintf.$(OBJEXT)
 @ELIX_LEVEL_1_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@am__objects_12 = libc/stdio/libc_a-asiprintf.$(OBJEXT) \
 @ELIX_LEVEL_1_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-vasiprintf.$(OBJEXT)
 @ELIX_LEVEL_1_FALSE@@HAVE_STDIO_DIR_TRUE@am__objects_13 = libc/stdio/libc_a-asprintf.$(OBJEXT) \
@@ -1158,8 +1159,7 @@ am__objects_5 = libc/stdlib/libc_a-rpmatch.$(OBJEXT) \
 @ELIX_LEVEL_1_FALSE@@HAVE_STDIO_DIR_TRUE@	libc/stdio/libc_a-vasprintf.$(OBJEXT) \
 @ELIX_LEVEL_1_FALSE@@HAVE_STDIO_DIR_TRUE@	$(am__objects_12)
 @ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@am__objects_14 = libc/stdio/libc_a-asniprintf.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-diprintf.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-vasniprintf.$(OBJEXT)
+@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@@NEWLIB_NANO_FORMATTED_IO_FALSE@	libc/stdio/libc_a-diprintf.$(OBJEXT)
 @ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@am__objects_15 = libc/stdio/libc_a-asnprintf.$(OBJEXT) \
 @ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@	libc/stdio/libc_a-clearerr_u.$(OBJEXT) \
 @ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@HAVE_STDIO_DIR_TRUE@	libc/stdio/libc_a-dprintf.$(OBJEXT) \
@@ -5535,6 +5535,8 @@ libc/stdio/libc_a-vsiscanf.$(OBJEXT): libc/stdio/$(am__dirstamp) \
 	libc/stdio/$(DEPDIR)/$(am__dirstamp)
 libc/stdio/libc_a-vsniprintf.$(OBJEXT): libc/stdio/$(am__dirstamp) \
 	libc/stdio/$(DEPDIR)/$(am__dirstamp)
+libc/stdio/libc_a-vasniprintf.$(OBJEXT): libc/stdio/$(am__dirstamp) \
+	libc/stdio/$(DEPDIR)/$(am__dirstamp)
 libc/stdio/libc_a-clearerr.$(OBJEXT): libc/stdio/$(am__dirstamp) \
 	libc/stdio/$(DEPDIR)/$(am__dirstamp)
 libc/stdio/libc_a-fclose.$(OBJEXT): libc/stdio/$(am__dirstamp) \
@@ -5804,8 +5806,6 @@ libc/stdio/libc_a-asniprintf.$(OBJEXT): libc/stdio/$(am__dirstamp) \
 	libc/stdio/$(DEPDIR)/$(am__dirstamp)
 libc/stdio/libc_a-diprintf.$(OBJEXT): libc/stdio/$(am__dirstamp) \
 	libc/stdio/$(DEPDIR)/$(am__dirstamp)
-libc/stdio/libc_a-vasniprintf.$(OBJEXT): libc/stdio/$(am__dirstamp) \
-	libc/stdio/$(DEPDIR)/$(am__dirstamp)
 libc/stdio64/$(am__dirstamp):
 	@$(MKDIR_P) libc/stdio64
 	@: > libc/stdio64/$(am__dirstamp)
@@ -22741,6 +22741,20 @@ libc/stdio/libc_a-vsniprintf.obj: libc/stdio/vsniprintf.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdio/libc_a-vsniprintf.obj `if test -f 'libc/stdio/vsniprintf.c'; then $(CYGPATH_W) 'libc/stdio/vsniprintf.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdio/vsniprintf.c'; fi`
 
+libc/stdio/libc_a-vasniprintf.o: libc/stdio/vasniprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdio/libc_a-vasniprintf.o -MD -MP -MF libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo -c -o libc/stdio/libc_a-vasniprintf.o `test -f 'libc/stdio/vasniprintf.c' || echo '$(srcdir)/'`libc/stdio/vasniprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libc/stdio/vasniprintf.c' object='libc/stdio/libc_a-vasniprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdio/libc_a-vasniprintf.o `test -f 'libc/stdio/vasniprintf.c' || echo '$(srcdir)/'`libc/stdio/vasniprintf.c
+
+libc/stdio/libc_a-vasniprintf.obj: libc/stdio/vasniprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdio/libc_a-vasniprintf.obj -MD -MP -MF libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo -c -o libc/stdio/libc_a-vasniprintf.obj `if test -f 'libc/stdio/vasniprintf.c'; then $(CYGPATH_W) 'libc/stdio/vasniprintf.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdio/vasniprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libc/stdio/vasniprintf.c' object='libc/stdio/libc_a-vasniprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdio/libc_a-vasniprintf.obj `if test -f 'libc/stdio/vasniprintf.c'; then $(CYGPATH_W) 'libc/stdio/vasniprintf.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdio/vasniprintf.c'; fi`
+
 libc/stdio/libc_a-clearerr.o: libc/stdio/clearerr.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdio/libc_a-clearerr.o -MD -MP -MF libc/stdio/$(DEPDIR)/libc_a-clearerr.Tpo -c -o libc/stdio/libc_a-clearerr.o `test -f 'libc/stdio/clearerr.c' || echo '$(srcdir)/'`libc/stdio/clearerr.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) libc/stdio/$(DEPDIR)/libc_a-clearerr.Tpo libc/stdio/$(DEPDIR)/libc_a-clearerr.Po
@@ -24617,20 +24631,6 @@ libc/stdio/libc_a-diprintf.obj: libc/stdio/diprintf.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdio/libc_a-diprintf.obj `if test -f 'libc/stdio/diprintf.c'; then $(CYGPATH_W) 'libc/stdio/diprintf.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdio/diprintf.c'; fi`
 
-libc/stdio/libc_a-vasniprintf.o: libc/stdio/vasniprintf.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdio/libc_a-vasniprintf.o -MD -MP -MF libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo -c -o libc/stdio/libc_a-vasniprintf.o `test -f 'libc/stdio/vasniprintf.c' || echo '$(srcdir)/'`libc/stdio/vasniprintf.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libc/stdio/vasniprintf.c' object='libc/stdio/libc_a-vasniprintf.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdio/libc_a-vasniprintf.o `test -f 'libc/stdio/vasniprintf.c' || echo '$(srcdir)/'`libc/stdio/vasniprintf.c
-
-libc/stdio/libc_a-vasniprintf.obj: libc/stdio/vasniprintf.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdio/libc_a-vasniprintf.obj -MD -MP -MF libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo -c -o libc/stdio/libc_a-vasniprintf.obj `if test -f 'libc/stdio/vasniprintf.c'; then $(CYGPATH_W) 'libc/stdio/vasniprintf.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdio/vasniprintf.c'; fi`
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Tpo libc/stdio/$(DEPDIR)/libc_a-vasniprintf.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libc/stdio/vasniprintf.c' object='libc/stdio/libc_a-vasniprintf.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdio/libc_a-vasniprintf.obj `if test -f 'libc/stdio/vasniprintf.c'; then $(CYGPATH_W) 'libc/stdio/vasniprintf.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdio/vasniprintf.c'; fi`
-
 libc/stdio64/libc_a-fdopen64.o: libc/stdio64/fdopen64.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdio64/libc_a-fdopen64.o -MD -MP -MF libc/stdio64/$(DEPDIR)/libc_a-fdopen64.Tpo -c -o libc/stdio64/libc_a-fdopen64.o `test -f 'libc/stdio64/fdopen64.c' || echo '$(srcdir)/'`libc/stdio64/fdopen64.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) libc/stdio64/$(DEPDIR)/libc_a-fdopen64.Tpo libc/stdio64/$(DEPDIR)/libc_a-fdopen64.Po
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.