From 7f3dc31336765cc46e78b7b361c548e3bbe4c51c Mon Sep 17 00:00:00 2001 From: Karel Gardas Date: Wed, 19 Jul 2023 19:04:13 +0200 Subject: bsps/stm32h7: workaround compilation issue with libbsd Part of the new HAL requires float_t type definition. For that it includes math.h header file which unfortunately brings a lot of math functions in. One of them, 'log' conflicts with FreeBSD log function defined in systm.h Provided hack is really just a crude work around this issue. Never thought that Motorola 68881 would help me even in 21st century. --- bsps/arm/stm32h7/include/stm32h7xx_hal_def.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/bsps/arm/stm32h7/include/stm32h7xx_hal_def.h b/bsps/arm/stm32h7/include/stm32h7xx_hal_def.h index 188e31cefb..7317b5ed5d 100644 --- a/bsps/arm/stm32h7/include/stm32h7xx_hal_def.h +++ b/bsps/arm/stm32h7/include/stm32h7xx_hal_def.h @@ -29,6 +29,13 @@ #include "stm32h7xx.h" #include "Legacy/stm32_hal_legacy.h" #include +#ifdef __rtems__ +/* this is to avoid definition of log function which conflicts with + * freebsd's systm.h log function. Whole theatre just to make sure + * we do have float_t available (defined in math.h) which is later + * used in HAL */ +#define __math_68881 1 +#endif /* __rtems__ */ #include /* Exported types ------------------------------------------------------------*/ -- cgit v1.2.3