gstreamer/gst/printf
Tim-Philipp Müller de8fe283d6 autotools: stop controlling symbol visibility with -export-symbols-regex
Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT.
This should result in consistent behaviour for the autotools and
Meson builds where this is done already, and will allow us to drop
the win32 .def files.
2018-08-12 23:26:25 +01:00
..
asnprintf.c
gst-printf.h printf: On MSVC, also define HAVE_STDINT_H_WITH_UINTMAX 2016-02-20 10:07:37 +00:00
Makefile.am autotools: stop controlling symbol visibility with -export-symbols-regex 2018-08-12 23:26:25 +01:00
meson.build meson: enable more warnings 2018-03-01 17:20:48 +01:00
printf-args.c
printf-args.h
printf-extension.c
printf-extension.h
printf-parse.c printf: add support for %I32 2015-03-12 13:29:00 +00:00
printf-parse.h
printf.c printf: disable some unused printf variants 2013-04-14 11:33:41 +01:00
printf.h printf: disable some unused printf variants 2013-04-14 11:33:41 +01:00
README printf: fix alloca use for windows with mingw32 2013-04-12 23:05:58 +01:00
vasnprintf.c printf: fix invalid memory access in case of %% 2015-04-24 15:16:24 +01:00
vasnprintf.h printf: fix up dodgy use of #if HAVE_FOO and #if !HAVE_FOO 2013-04-12 23:05:58 +01:00

The files

 asnprintf.c
 printf-args.c
 printf-args.h
 printf-parse.c
 printf-parse.h
 vasnprintf.c
 vasnprintf.h

are taken from the vasnprintf module of the GNUlib package, which can
be found at:

 http://www.gnu.org/software/gnulib/

All files have been modified to include g-gnulib.h.

vasnprintf.c has also been modified to include support for long long
printing if the system printf doesn't. This code is protected by
#ifndef HAVE_LONG_LONG_FORMAT.

Code has been added to printf-args.[ch], printf-parse.c and vasnprintf.c
to support printing of __int64 values with the I64 format modifier. This
is protected by #ifdef HAVE_INT64_AND_I64.

The files

 printf.h
 printf.c
 g-gnulib.h

have been written by me. printf.[hc] contain implementations of the
remaining functions in the printf family based on vasnprintf.
g-gnulib.h is included by all source files in order to move all
exported functions to the _g_gnulib namespace, replace malloc by
g_malloc and make sure that snprintf is only used if it implements
C99 return value semantics.

Matthias Clasen
November 1, 2003

-----

GStreamer modifications

This was imported from GLib's gnulib subdirectory.

g-gnulib.h and _g_gnulib namespace has been changed to gst-printf.h and
__gst_printf namespace for GStreamer. Also #define HAVE_SNPRINTF 0 has
been changed to #undef HAVE_SNPRINTF, and HAVE_ALLOCA has been replaced
by an #if defined(alloca) || defined(GLIB_HAVE_ALLOCA_H)

printf-extension.[ch] were added to provide support for custom pointer
arguments (e.g. caps, events, etc.)

Files have also been indented with gst-indent, so this is basically a
permanent fork and any patches will have to be merged manually.

March 30, 2013.