mirror of
https://github.com/DarkFlippers/unleashed-firmware.git
synced 2025-12-12 12:42:30 +04:00
89 lines
2.0 KiB
C
89 lines
2.0 KiB
C
|
|
#ifndef CS_COMMON_PLATFORM_H_
|
||
|
|
#define CS_COMMON_PLATFORM_H_
|
||
|
|
|
||
|
|
/*
|
||
|
|
* For the "custom" platform, includes and dependencies can be
|
||
|
|
* provided through mg_locals.h.
|
||
|
|
*/
|
||
|
|
#define CS_P_CUSTOM 0
|
||
|
|
#define CS_P_UNIX 1
|
||
|
|
#define CS_P_WINDOWS 2
|
||
|
|
#define CS_P_ESP32 15
|
||
|
|
#define CS_P_ESP8266 3
|
||
|
|
#define CS_P_CC3100 6
|
||
|
|
#define CS_P_CC3200 4
|
||
|
|
#define CS_P_CC3220 17
|
||
|
|
#define CS_P_MSP432 5
|
||
|
|
#define CS_P_TM4C129 14
|
||
|
|
#define CS_P_MBED 7
|
||
|
|
#define CS_P_WINCE 8
|
||
|
|
#define CS_P_NXP_LPC 13
|
||
|
|
#define CS_P_NXP_KINETIS 9
|
||
|
|
#define CS_P_NRF51 12
|
||
|
|
#define CS_P_NRF52 10
|
||
|
|
#define CS_P_PIC32 11
|
||
|
|
#define CS_P_RS14100 18
|
||
|
|
#define CS_P_STM32 16
|
||
|
|
#define CS_P_FLIPPER 19
|
||
|
|
/* Next id: 20 */
|
||
|
|
|
||
|
|
#ifndef CS_PLATFORM
|
||
|
|
#define CS_PLATFORM CS_P_FLIPPER
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#ifndef CS_PLATFORM
|
||
|
|
#error "CS_PLATFORM is not specified and we couldn't guess it."
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#define MG_NET_IF_SOCKET 1
|
||
|
|
#define MG_NET_IF_SIMPLELINK 2
|
||
|
|
#define MG_NET_IF_LWIP_LOW_LEVEL 3
|
||
|
|
#define MG_NET_IF_PIC32 4
|
||
|
|
#define MG_NET_IF_NULL 5
|
||
|
|
|
||
|
|
#define MG_SSL_IF_OPENSSL 1
|
||
|
|
#define MG_SSL_IF_MBEDTLS 2
|
||
|
|
#define MG_SSL_IF_SIMPLELINK 3
|
||
|
|
|
||
|
|
#if CS_PLATFORM == CS_P_FLIPPER
|
||
|
|
#include "platforms/platform_flipper.h"
|
||
|
|
#endif
|
||
|
|
|
||
|
|
/* Common stuff */
|
||
|
|
|
||
|
|
#if !defined(PRINTF_LIKE)
|
||
|
|
#if defined(__GNUC__) || defined(__clang__) || defined(__TI_COMPILER_VERSION__)
|
||
|
|
#define PRINTF_LIKE(f, a) __attribute__((format(printf, f, a)))
|
||
|
|
#else
|
||
|
|
#define PRINTF_LIKE(f, a)
|
||
|
|
#endif
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#if !defined(WEAK)
|
||
|
|
#if(defined(__GNUC__) || defined(__clang__) || defined(__TI_COMPILER_VERSION__)) && \
|
||
|
|
!defined(_WIN32)
|
||
|
|
#define WEAK __attribute__((weak))
|
||
|
|
#else
|
||
|
|
#define WEAK
|
||
|
|
#endif
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#ifdef __GNUC__
|
||
|
|
#define NORETURN __attribute__((noreturn))
|
||
|
|
#define NOINLINE __attribute__((noinline))
|
||
|
|
#define WARN_UNUSED_RESULT __attribute__((warn_unused_result))
|
||
|
|
#define NOINSTR __attribute__((no_instrument_function))
|
||
|
|
#define DO_NOT_WARN_UNUSED __attribute__((unused))
|
||
|
|
#else
|
||
|
|
#define NORETURN
|
||
|
|
#define NOINLINE
|
||
|
|
#define WARN_UNUSED_RESULT
|
||
|
|
#define NOINSTR
|
||
|
|
#define DO_NOT_WARN_UNUSED
|
||
|
|
#endif /* __GNUC__ */
|
||
|
|
|
||
|
|
#ifndef ARRAY_SIZE
|
||
|
|
#define ARRAY_SIZE(array) (sizeof(array) / sizeof(array[0]))
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#endif /* CS_COMMON_PLATFORM_H_ */
|