*ping* [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]>
*ping*

On 30.03.22 12:56, Tobias Burnus wrote:
> 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
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.