From ca17284c6b3990d30c78900c9968d88feabe02fa Mon Sep 17 00:00:00 2001 From: Petri Savolainen Date: Fri, 16 Aug 2019 17:25:26 +0300 Subject: helper: debug: add ODPH_ASSERT macro Added assert macro to be used by test applications. Signed-off-by: Petri Savolainen Reviewed-by: Matias Elo --- helper/include/odph_debug.h | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) (limited to 'helper') diff --git a/helper/include/odph_debug.h b/helper/include/odph_debug.h index d08918be0..c99936f4b 100644 --- a/helper/include/odph_debug.h +++ b/helper/include/odph_debug.h @@ -1,16 +1,19 @@ /* Copyright (c) 2015-2018, Linaro Limited + * Copyright (c) 2019, Nokia + * * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ + /** * @file * - * HELPER debug + * Helper debug */ -#ifndef HELPER_DEBUG_H_ -#define HELPER_DEBUG_H_ +#ifndef ODPH_DEBUG_H_ +#define ODPH_DEBUG_H_ #include #include @@ -19,14 +22,29 @@ extern "C" { #endif +/** + * Assert macro for applications and helper code + * + * No code is generated when ODPH_DEBUG=0. Prints error message and aborts when + * ODPH_DEBUG=1 and 'cond' is false. + */ +#define ODPH_ASSERT(cond) \ + do { \ + if ((ODPH_DEBUG == 1) && (!(cond))) { \ + fprintf(stderr, "%s:%d:%s(): %s\n", __FILE__, __LINE__,\ + __func__, #cond); \ + abort(); \ + } \ + } while (0) + /** * log level. */ -typedef enum HELPER_log_level { +typedef enum odph_log_level { ODPH_LOG_DBG, ODPH_LOG_ERR, ODPH_LOG_ABORT -} HELPER_log_level_e; +} odph_log_level_e; /** * default LOG macro. -- cgit v1.2.3