forked from Imagelibrary/rtems
cpukit, testsuite: Add rtems_printf and rtems_printer support.
This change adds rtems_printf and related functions and wraps the RTEMS print plugin support into a user API. All references to the plugin are removed and replaced with the rtems_printer interface. Printk and related functions are made to return a valid number of characters formatted and output. The function attribute to check printf functions has been added to rtems_printf and printk. No changes to remove warrnings are part of this patch set. The testsuite has been moved over to the rtems_printer. The testsuite has a mix of rtems_printer access and direct print control via the tmacros.h header file. The support for begink/endk has been removed as it served no purpose and only confused the code base. The testsuite has not been refactored to use rtems_printf. This is future work.
This commit is contained in:
@@ -24,7 +24,7 @@ extern "C" {
|
||||
*/
|
||||
#if defined(TESTS_USE_PRINTK)
|
||||
|
||||
#include <rtems/bspIo.h>
|
||||
#include <rtems/print.h>
|
||||
|
||||
#undef printf
|
||||
#define printf(...) \
|
||||
@@ -54,9 +54,9 @@ extern "C" {
|
||||
do { \
|
||||
} while (0)
|
||||
|
||||
#define TEST_BEGIN() rtems_test_begink()
|
||||
#define TEST_BEGIN() printk(TEST_BEGIN_STRING)
|
||||
|
||||
#define TEST_END() rtems_test_endk()
|
||||
#define TEST_END() printk(TEST_END_STRING)
|
||||
|
||||
/*
|
||||
* BUFFER TEST OUTPUT
|
||||
@@ -156,9 +156,9 @@ extern "C" {
|
||||
fflush(stdout); \
|
||||
} while (0)
|
||||
|
||||
#define TEST_BEGIN() rtems_test_begin()
|
||||
#define TEST_BEGIN() printf(TEST_BEGIN_STRING)
|
||||
|
||||
#define TEST_END() rtems_test_end()
|
||||
#define TEST_END() printf(TEST_END_STRING)
|
||||
|
||||
/*
|
||||
* USE IPRINT
|
||||
@@ -205,11 +205,9 @@ extern "C" {
|
||||
fflush(stdout); \
|
||||
} while (0)
|
||||
|
||||
#define TEST_BEGIN() \
|
||||
rtems_test_begin_with_plugin((rtems_printk_plugin_t) fiprintf, stderr)
|
||||
#define TEST_BEGIN() fiprintf( stderr, TEST_BEGIN_STRING)
|
||||
|
||||
#define TEST_END() \
|
||||
rtems_test_end_with_plugin((rtems_printk_plugin_t) fiprintf, stderr)
|
||||
#define TEST_END() fiprintf( stderr, TEST_END_STRING)
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user