Include a printf implementation supporting C99 snprintf and SUS
authorMatthias Clasen <matthiasc@src.gnome.org>
Thu, 21 Nov 2002 00:35:15 +0000 (00:35 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Thu, 21 Nov 2002 00:35:15 +0000 (00:35 +0000)
commitbc54ea6edf251c7623c3afa797da8a67a882fbd2
tree092d2287894eea17c508f7f0a68e8d9f42a28f6a
parentdc645ce354f06c93f982a0177951c9f98627d751
Include a printf implementation supporting C99 snprintf and SUS
positional parameters:  (#79488)

* glib/gstrfuncs.c:
* glib/gspawn-win32.c:
* glib/gscanner.c:
* glib/gconvert.c:
* glib/gbacktrace.c: Use _g_printf wrappers.

* glib/gutils.c (g_vsnprintf): Simplify, since we can assume C99
snprintf semantics now.

* glib/gmessages.c (printf_string_upper_bound): No longer needed,
since we can assume C99 snprintf semantics now.
(g_logv): Simplify.

* acinclude.m4 (AC_FUNC_PRINTF_UNIX98): New macro to check wether
printf supports SUS positional parameters.

* configure.in: New option --enable-included-printf to force
compilation of trio; otherwise trio is compiled if the system
printf misses either C99 snprintf semantics of SUS positional
parameters.

* glib/Makefile.am (SUBDIRS): Conditionally compile trio.
(libglib_2_0_la_SOURCES): Add gprintf.c and gprintfint.h.
(glibsubinclude_HEADERS): Add gprintf.h.

* glib/gprintfint.h: New private wrapping either system printf
or trio printf variants in _g_printf wrappers for use inside glib.

* glib/gprintf.h: New public header declaring g_printf variants.
* glib/gprintf.c: Corresponding implementations.

* glib/trio/*: New directory, containing the trio-1.9 sources.

* glib/tmpl/string_utils.sgml: Add note on including gprintf.h,
move some docs inline.

* glib/glib-sections.txt: Add g_printf, g_vprintf, g_fprintf,
g_vfprintf, g_sprintf, g_vsprintf.
33 files changed:
ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-12
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
acinclude.m4
configure.in
docs/reference/ChangeLog
docs/reference/glib/glib-sections.txt
docs/reference/glib/tmpl/string_utils.sgml
glib/Makefile.am
glib/gbacktrace.c
glib/gconvert.c
glib/gmessages.c
glib/gprintf.c [new file with mode: 0644]
glib/gprintf.h [new file with mode: 0644]
glib/gprintfint.h [new file with mode: 0644]
glib/gscanner.c
glib/gspawn-win32.c
glib/gstrfuncs.c
glib/gutils.c
glib/trio/Makefile.am [new file with mode: 0644]
glib/trio/README [new file with mode: 0644]
glib/trio/trio.c [new file with mode: 0644]
glib/trio/trio.h [new file with mode: 0644]
glib/trio/triodef.h [new file with mode: 0644]
glib/trio/trionan.c [new file with mode: 0644]
glib/trio/trionan.h [new file with mode: 0644]
glib/trio/triop.h [new file with mode: 0644]
glib/trio/triostr.c [new file with mode: 0644]
glib/trio/triostr.h [new file with mode: 0644]