summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAlex Kiernan <alex.kiernan@gmail.com>2018-04-19 04:32:55 +0000
committerTom Rini <trini@konsulko.com>2018-04-28 18:32:23 -0400
commit4f1eed7527e256edd10fab85d2651a35e530509f (patch)
treed7f43a4ed86674908bf5794e8c9d0a4db133089d /lib
parent14ad44ab466a8f4630c603f4c0bb5c57d0f27ae6 (diff)
spl: Disable printf if not required
Now we have a guard for printf, disable it in the build if it's not selected. Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/panic.c2
-rw-r--r--lib/tiny-printf.c12
-rw-r--r--lib/vsprintf.c3
3 files changed, 11 insertions, 6 deletions
diff --git a/lib/panic.c b/lib/panic.c
index e2b8b74b7c..0efa134344 100644
--- a/lib/panic.c
+++ b/lib/panic.c
@@ -37,9 +37,11 @@ void panic_str(const char *str)
void panic(const char *fmt, ...)
{
+#if CONFIG_IS_ENABLED(PRINTF)
va_list args;
va_start(args, fmt);
vprintf(fmt, args);
va_end(args);
+#endif
panic_finish();
}
diff --git a/lib/tiny-printf.c b/lib/tiny-printf.c
index 0b04813dc2..e29377e000 100644
--- a/lib/tiny-printf.c
+++ b/lib/tiny-printf.c
@@ -23,11 +23,6 @@ struct printf_info {
void (*putc)(struct printf_info *info, char ch);
};
-static void putc_normal(struct printf_info *info, char ch)
-{
- putc(ch);
-}
-
static void out(struct printf_info *info, char c)
{
*info->bf++ = c;
@@ -321,6 +316,12 @@ abort:
return 0;
}
+#if CONFIG_IS_ENABLED(PRINTF)
+static void putc_normal(struct printf_info *info, char ch)
+{
+ putc(ch);
+}
+
int vprintf(const char *fmt, va_list va)
{
struct printf_info info;
@@ -343,6 +344,7 @@ int printf(const char *fmt, ...)
return ret;
}
+#endif
static void putc_outstr(struct printf_info *info, char ch)
{
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index 5f7a5f17dc..9f0ce8aa79 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -783,6 +783,7 @@ int sprintf(char *buf, const char *fmt, ...)
return i;
}
+#if CONFIG_IS_ENABLED(PRINTF)
int printf(const char *fmt, ...)
{
va_list args;
@@ -824,7 +825,7 @@ int vprintf(const char *fmt, va_list args)
puts(printbuffer);
return i;
}
-
+#endif
void __assert_fail(const char *assertion, const char *file, unsigned line,
const char *function)