[U-Boot] [PATCH v2 03/17] lib: build charset.o only if needed
Heinrich Schuchardt
xypron.glpk at gmx.de
Fri Aug 31 19:31:25 UTC 2018
charset.o is only needed for the EFI subsystem
Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
v2
use CONFIG_IS_ENABLED(EFI_LOADER) instead of
defined(CONFIG_EFI_LOADER) && !defined(CONFIG_SPL_BUILD)
---
lib/Makefile | 5 ++++-
lib/vsprintf.c | 12 ++++++++----
2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/lib/Makefile b/lib/Makefile
index 5f583aed37..2fd32798a0 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -19,7 +19,10 @@ obj-$(CONFIG_ARCH_AT91) += at91/
obj-$(CONFIG_OPTEE) += optee/
obj-$(CONFIG_AES) += aes.o
-obj-y += charset.o
+
+ifndef API_BUILD
+obj-$(CONFIG_EFI_LOADER) += charset.o
+endif
obj-$(CONFIG_USB_TTY) += circbuf.o
obj-y += crc7.o
obj-y += crc8.o
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index ef8b0b5989..632796f864 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -274,6 +274,8 @@ static char *string(char *buf, char *end, char *s, int field_width,
return buf;
}
+/* U-Boot uses UTF-16 strings in the EFI context only. */
+#if CONFIG_IS_ENABLED(EFI_LOADER) && !defined(API_BUILD)
static char *string16(char *buf, char *end, u16 *s, int field_width,
int precision, int flags)
{
@@ -294,8 +296,6 @@ static char *string16(char *buf, char *end, u16 *s, int field_width,
return buf;
}
-/* Device paths only exist in the EFI context. */
-#if CONFIG_IS_ENABLED(EFI_LOADER) && !defined(API_BUILD)
static char *device_path_string(char *buf, char *end, void *dp, int field_width,
int precision, int flags)
{
@@ -612,10 +612,14 @@ repeat:
continue;
case 's':
- if (qualifier == 'l' && !IS_ENABLED(CONFIG_SPL_BUILD)) {
+/* U-Boot uses UTF-16 strings in the EFI context only. */
+#if CONFIG_IS_ENABLED(EFI_LOADER) && !defined(API_BUILD)
+ if (qualifier == 'l') {
str = string16(str, end, va_arg(args, u16 *),
field_width, precision, flags);
- } else {
+ } else
+#endif
+ {
str = string(str, end, va_arg(args, char *),
field_width, precision, flags);
}
--
2.18.0
More information about the U-Boot
mailing list