diff --git a/Makefile.dep b/Makefile.dep index fdcb2e3706..d7b84f0c26 100644 --- a/Makefile.dep +++ b/Makefile.dep @@ -415,7 +415,7 @@ ifneq (,$(filter newlib,$(USEMODULE))) ifeq (,$(filter newlib_syscalls_%,$(USEMODULE))) USEMODULE += newlib_syscalls_default endif - ifeq (,$(filter stdio_rtt stdio_cdc_acm,$(USEMODULE))) + ifeq (,$(filter stdio_cdc_acm stdio_null stdio_rtt,$(USEMODULE))) USEMODULE += stdio_uart endif endif diff --git a/sys/stdio_null/Makefile b/sys/stdio_null/Makefile new file mode 100644 index 0000000000..ee28b8423d --- /dev/null +++ b/sys/stdio_null/Makefile @@ -0,0 +1,5 @@ +ifeq ($(DEVELHELP),1) + $(warning STDIO disabled via stdio_null, but DEVELHELP enabled) +endif + +include $(RIOTBASE)/Makefile.base diff --git a/sys/stdio_null/stdio_null.c b/sys/stdio_null/stdio_null.c new file mode 100644 index 0000000000..2f55deac4c --- /dev/null +++ b/sys/stdio_null/stdio_null.c @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2019 Bas Stottelaar + * + * This file is subject to the terms and conditions of the GNU Lesser + * General Public License v2.1. See the file LICENSE in the top level + * directory for more details. + */ + +/** + * @ingroup sys + * @{ + * + * @file + * @brief STDIO null driver + * + * This file provides a null driver for STDIO that does not depend on anything. + * + * @author Bas Stottelaar + * + * @} + */ + +#include "stdio_base.h" + +#if MODULE_VFS +#include "vfs.h" +#endif + +#define ENABLE_DEBUG 0 +#include "debug.h" + +void stdio_init(void) +{ +#if MODULE_VFS + vfs_bind_stdio(); +#endif +} + +ssize_t stdio_read(void* buffer, size_t count) +{ + (void) buffer; + (void) count; + + return 0; +} + +ssize_t stdio_write(const void* buffer, size_t len) +{ + (void) buffer; + (void) len; + + return 0; +} diff --git a/tests/minimal/Makefile b/tests/minimal/Makefile index 0fb779d31e..afa80076a9 100644 --- a/tests/minimal/Makefile +++ b/tests/minimal/Makefile @@ -6,4 +6,6 @@ CFLAGS += -DNDEBUG -DLOG_LEVEL=LOG_NONE DISABLE_MODULE += auto_init DISABLE_MODULE += test_utils_interactive_sync +USEMODULE += stdio_null + include $(RIOTBASE)/Makefile.include