aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Paland <marco@paland.com>2018-11-15 17:34:45 +0100
committerMarco Paland <marco@paland.com>2018-11-15 17:34:45 +0100
commit893c5056ffbae04adc5ceca8f4fbaf28521986a7 (patch)
treeecce3d372031e60ef25bf27ca5e7ceb27ffdd75d
parent735abbca130bb7180f762ff4859302bef8212383 (diff)
downloadprintf-893c5056ffbae04adc5ceca8f4fbaf28521986a7.tar.gz
printf-893c5056ffbae04adc5ceca8f4fbaf28521986a7.tar.bz2
printf-893c5056ffbae04adc5ceca8f4fbaf28521986a7.zip
change(printf): removed PRINTF_OVERRIDE_LIBC option
Removed the PRINTF_OVERRIDE_LIBC option. Basically this it not necessary and the ptintf() macro define can be used all the time.
-rw-r--r--printf.c28
-rw-r--r--printf.h44
2 files changed, 18 insertions, 54 deletions
diff --git a/printf.c b/printf.c
index b5a38fc..ee0351d 100644
--- a/printf.c
+++ b/printf.c
@@ -36,6 +36,14 @@
#include "printf.h"
+// define this globally (e.g. gcc -DPRINTF_INCLUDE_CONFIG_H ...) to include the
+// printf_config.h header file
+// default: undefined
+#ifdef PRINTF_INCLUDE_CONFIG_H
+#include "printf_config.h"
+#endif
+
+
// 'ntoa' conversion buffer size, this must be big enough to hold one converted
// numeric number including padded zeros (dynamically created on stack)
// default: 32 byte
@@ -699,11 +707,7 @@ static int _vsnprintf(out_fct_type out, char* buffer, const size_t maxlen, const
///////////////////////////////////////////////////////////////////////////////
-#ifndef PRINTF_OVERRIDE_LIBC
-int printf(const char* format, ...)
-#else
int printf_(const char* format, ...)
-#endif
{
va_list va;
va_start(va, format);
@@ -714,11 +718,7 @@ int printf_(const char* format, ...)
}
-#ifndef PRINTF_OVERRIDE_LIBC
-int sprintf(char* buffer, const char* format, ...)
-#else
int sprintf_(char* buffer, const char* format, ...)
-#endif
{
va_list va;
va_start(va, format);
@@ -728,11 +728,7 @@ int sprintf_(char* buffer, const char* format, ...)
}
-#ifndef PRINTF_OVERRIDE_LIBC
-int snprintf(char* buffer, size_t count, const char* format, ...)
-#else
int snprintf_(char* buffer, size_t count, const char* format, ...)
-#endif
{
va_list va;
va_start(va, format);
@@ -742,21 +738,13 @@ int snprintf_(char* buffer, size_t count, const char* format, ...)
}
-#ifndef PRINTF_OVERRIDE_LIBC
-int vsnprintf(char* buffer, size_t count, const char* format, va_list va)
-#else
int vsnprintf_(char* buffer, size_t count, const char* format, va_list va)
-#endif
{
return _vsnprintf(_out_buffer, buffer, count, format, va);
}
-#ifndef PRINTF_OVERRIDE_LIBC
int fctprintf(void (*out)(char character, void* arg), void* arg, const char* format, ...)
-#else
-int fctprintf_(void (*out)(char character, void* arg), void* arg, const char* format, ...)
-#endif
{
va_list va;
va_start(va, format);
diff --git a/printf.h b/printf.h
index 69245cb..6a9339e 100644
--- a/printf.h
+++ b/printf.h
@@ -35,13 +35,6 @@
#include <stdarg.h>
#include <stddef.h>
-// define this globally (e.g. gcc -DPRINTF_INCLUDE_CONFIG_H ...) to include the
-// printf_config.h header file
-// default: undefined
-#ifdef PRINTF_INCLUDE_CONFIG_H
-#include "printf_config.h"
-#endif
-
#ifdef __cplusplus
extern "C" {
@@ -56,19 +49,16 @@ extern "C" {
void _putchar(char character);
-// if PRINTF_OVERRIDE_LIBC is is defined, the regular printf() API is overridden by macro defines
-// and internal underscore-appended functions like printf_() are used to avoid conflicts with
-// LIBC defined printf() functions.
-// default: undefined
-#ifndef PRINTF_OVERRIDE_LIBC
-
/**
* Tiny printf implementation
* You have to implement _putchar if you use printf()
+ * To avoid conflicts with the regular printf() API it is overridden by macro defines
+ * and internal underscore-appended functions like printf_() are used
* \param format A string that specifies the format of the output
* \return The number of characters that are written into the array, not counting the terminating null character
*/
-int printf(const char* format, ...);
+#define printf printf_
+int printf_(const char* format, ...);
/**
@@ -78,7 +68,8 @@ int printf(const char* format, ...);
* \param format A string that specifies the format of the output
* \return The number of characters that are WRITTEN into the buffer, not counting the terminating null character
*/
-int sprintf(char* buffer, const char* format, ...);
+#define sprintf sprintf_
+int sprintf_(char* buffer, const char* format, ...);
/**
@@ -89,8 +80,10 @@ int sprintf(char* buffer, const char* format, ...);
* \return The number of characters that are WRITTEN into the buffer, not counting the terminating null character
* If the formatted string is truncated the buffer size (count) is returned
*/
-int snprintf(char* buffer, size_t count, const char* format, ...);
-int vsnprintf(char* buffer, size_t count, const char* format, va_list va);
+#define snprintf snprintf_
+#define vsnprintf vsnprintf_
+int snprintf_(char* buffer, size_t count, const char* format, ...);
+int vsnprintf_(char* buffer, size_t count, const char* format, va_list va);
/**
@@ -103,23 +96,6 @@ int vsnprintf(char* buffer, size_t count, const char* format, va_list va);
*/
int fctprintf(void (*out)(char character, void* arg), void* arg, const char* format, ...);
-#else // PRINTF_OVERRIDE_LIBC
-
-// override the LIBC defined function names
-#define printf printf_
-#define sprintf sprintf_
-#define snprintf snprintf_
-#define vsnprintf vsnprintf_
-#define fctprintf fctprintf_
-
-int printf_(const char* format, ...);
-int sprintf_(char* buffer, const char* format, ...);
-int snprintf_(char* buffer, size_t count, const char* format, ...);
-int vsnprintf_(char* buffer, size_t count, const char* format, va_list va);
-int fctprintf_(void (*out)(char character, void* arg), void* arg, const char* format, ...);
-
-#endif // PRINTF_OVERRIDE_LIBC
-
#ifdef __cplusplus
}