Liqun Wu / Mbed 2 deprecated 90418_mbed_controller

Dependencies:   mbed

Revision:
0:be95bfb06686
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libscpi/inc/scpi/cc.h	Mon Jan 17 13:20:09 2022 +0000
@@ -0,0 +1,206 @@
+/*-
+ * BSD 2-Clause License
+ *
+ * Copyright (c) 2012-2018, Jan Breuer
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * * Redistributions of source code must retain the above copyright notice, this
+ *   list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
+ *   and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * @file   cc.h
+ *
+ * @brief  compiler detection
+ *
+ *
+ */
+
+#ifndef __SCPI_CC_H_
+#define __SCPI_CC_H_
+
+#ifdef	__cplusplus
+extern "C" {
+#endif
+
+#if defined(__STDC__)
+# define C89 1
+# if defined(__STDC_VERSION__)
+#  define C90 1
+#  if (__STDC_VERSION__ >= 199409L)
+#   define C94 1
+#  endif
+#  if (__STDC_VERSION__ >= 199901L)
+#   define C99 1
+#  endif
+# endif
+#endif
+
+#if (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 200809L) || \
+    (defined _XOPEN_SOURCE && _XOPEN_SOURCE >= 700)
+    #define HAVE_STRNDUP 1
+    #define HAVE_STRNLEN 1
+#endif
+
+#if (defined _BSD_SOURCE && _BSD_SOURCE) || \
+    (defined _XOPEN_SOURCE  && _XOPEN_SOURCE >= 500) || \
+    (defined _ISOC99_SOURCE && _ISOC99_SOURCE) || \
+    (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 200112L) || \
+    C99
+    #define HAVE_SNPRINTF 1
+#endif
+
+#if (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 200112L)
+    #define HAVE_STRNCASECMP 1
+#endif
+
+#if (defined _BSD_SOURCE && _BSD_SOURCE) || \
+    (defined _SVID_SOURCE && _SVID_SOURCE) || \
+    (defined _XOPEN_SOURCE && _XOPEN_SOURCE) || \
+    (defined _ISOC99_SOURCE && _ISOC99_SOURCE) || \
+    (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 200112L) ||\
+    C99
+    #define HAVE_ISNAN 1
+#endif
+
+#if (defined _XOPEN_SOURCE && _XOPEN_SOURCE >= 600)|| \
+    (defined _ISOC99_SOURCE && _ISOC99_SOURCE) || \
+    (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 200112L) || \
+    C99
+    #define HAVE_ISFINITE 1
+    #define HAVE_SIGNBIT 1
+#endif
+
+#if (defined _XOPEN_SOURCE && XOPEN_SOURCE >= 600) || \
+    (defined _BSD_SOURCE && _BSD_SOURCE) || \
+    (defined _SVID_SOURCE && _SVID_SOURCE) || \
+    (defined _ISOC99_SOURCE && _ISOC99_SOURCE) || \
+    (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 200112L)
+    #define HAVE_STRTOLL 1
+#endif
+
+#if (defined _XOPEN_SOURCE && _XOPEN_SOURCE >= 600) || \
+    (defined _ISOC99_SOURCE && _ISOC99_SOURCE) || \
+    (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 200112L) || \
+    C99
+    #define HAVE_STRTOF 1
+#endif
+
+#if (defined _ISOC99_SOURCE && _ISOC99_SOURCE) || C99
+    #define HAVE_STDBOOL 1
+#endif
+
+/* Compiler specific */
+/* RealView/Keil ARM Compiler, e.g. Cortex-M CPUs */
+#if defined(__CC_ARM)
+#define HAVE_STRNCASECMP        1
+#endif
+
+/* National Instruments (R) CVI x86/x64 PC platform */
+#if defined(_CVI_)
+#define HAVE_STRNICMP           1
+#endif
+
+/* 8bit PIC - PIC16, etc */
+#if defined(_MPC_)
+#define HAVE_STRNICMP           1
+#endif
+
+/* PIC24 */
+#if defined(__C30__)
+#endif
+
+/* PIC32mx */
+#if defined(__C32__)
+#define HAVE_FINITE             1
+#endif
+
+/* AVR libc */
+#if defined(__AVR__)
+#include <stdlib.h>
+#define HAVE_DTOSTRE            1
+#undef HAVE_STRTOF
+#define HAVE_STRTOF				0
+#endif
+
+/* default values */
+#ifndef HAVE_STRNLEN
+#define HAVE_STRNLEN            0
+#endif
+
+#ifndef HAVE_STRDUP
+#define HAVE_STRDUP             0
+#endif
+
+#ifndef HAVE_STRNDUP
+#define HAVE_STRNDUP             0
+#endif
+
+#ifndef HAVE_STRNICMP
+#define HAVE_STRNICMP           0
+#endif
+
+#ifndef HAVE_STDBOOL
+#define HAVE_STDBOOL            0
+#endif
+
+#ifndef HAVE_SNPRINTF
+#define HAVE_SNPRINTF           0
+#endif
+
+#ifndef HAVE_STRNCASECMP
+#define HAVE_STRNCASECMP        0
+#endif
+
+#ifndef HAVE_ISNAN
+#define HAVE_ISNAN              0
+#endif
+
+#ifndef HAVE_ISFINITE
+#define HAVE_ISFINITE           0
+#endif
+
+#ifndef HAVE_FINITE
+#define HAVE_FINITE             0
+#endif
+
+#ifndef HAVE_SIGNBIT
+#define HAVE_SIGNBIT            0
+#endif
+
+#ifndef HAVE_STRTOLL
+#define HAVE_STRTOLL            0
+#endif
+
+#ifndef HAVE_STRTOF
+#define HAVE_STRTOF             0
+#endif
+
+#ifndef  HAVE_DTOSTRE
+#define  HAVE_DTOSTRE           0
+#endif
+
+#ifdef	__cplusplus
+}
+#endif
+
+#endif /* __SCPI_CC_H_ */
+