BA / Mbed OS BaBoRo1
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers fnet_comp_config.h Source File

fnet_comp_config.h

00001 /**************************************************************************
00002 *
00003 * Copyright 2011-2016 by Andrey Butok. FNET Community.
00004 * Copyright 2008-2010 by Andrey Butok. Freescale Semiconductor, Inc.
00005 *
00006 ***************************************************************************
00007 *
00008 *  Licensed under the Apache License, Version 2.0 (the "License"); you may
00009 *  not use this file except in compliance with the License.
00010 *  You may obtain a copy of the License at
00011 *
00012 *  http://www.apache.org/licenses/LICENSE-2.0
00013 *
00014 *  Unless required by applicable law or agreed to in writing, software
00015 *  distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
00016 *  WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00017 *  See the License for the specific language governing permissions and
00018 *  limitations under the License.
00019 *
00020 **********************************************************************/
00021 /*!
00022 * @brief Compiler-specific default configuration file.
00023 *
00024 ***************************************************************************/
00025 
00026 /************************************************************************
00027  * !!!DO NOT MODIFY THIS FILE!!!
00028  ************************************************************************/
00029 
00030 #ifndef _FNET_COMP_CONFIG_H_
00031 
00032 #define _FNET_COMP_CONFIG_H_
00033 
00034 /*! @addtogroup fnet_platform_config  */
00035 /*! @{ */
00036 /**************************************************************************/ /*!
00037  * @def      FNET_CFG_COMP_compiler_type
00038  * @brief    This is the set of the @c FNET_CFG_COMP_[compiler_type] definitions that
00039  *           define a currently used compiler. @n
00040  *           Current version of the FNET supports the following compiler definitions:
00041  *            - @c FNET_CFG_COMP_IAR = Used compiler is IAR.
00042  *            - @c FNET_CFG_COMP_GNUC = Used compiler is GCC.
00043  *            - @c FNET_CFG_COMP_UV  = Used compiler is Keil uVision.
00044  *            - @c FNET_CFG_COMP_GHS = Used compiler is Green Hills.
00045  *            - @c FNET_CFG_COMP_DCC = Used compiler is Diab.
00046  *            - @c FNET_CFG_COMP_CW  = Used compiler is CodeWarrior.
00047  *            @n @n
00048  *            Selected compiler definition should be only one and must be defined as 1.
00049  *            All others may be defined but must have the 0 value.
00050  *            @note If no compiler definition is defined, the used compiler is autodetected.
00051  *
00052  ******************************************************************************/
00053 #define FNET_CFG_COMP_compiler_type /* Ignore it. Just only for Doxygen documentation */
00054 
00055 /* CW compiler. */
00056 #if (defined(FNET_CFG_COMP_CW) && FNET_CFG_COMP_CW)
00057     #define FNET_COMP_STR       "CW"
00058     /* IAR compiler. */
00059 #elif (defined(FNET_CFG_COMP_IAR) && FNET_CFG_COMP_IAR)
00060     #define FNET_COMP_STR       "IAR"
00061     /* GHS compiler. */
00062 #elif (defined(FNET_CFG_COMP_GHS) && FNET_CFG_COMP_GHS)
00063     #define FNET_COMP_STR       "GHS"
00064     /* Keil uVision compiler. */
00065 #elif (defined(FNET_CFG_COMP_UV) && FNET_CFG_COMP_UV)
00066     #define FNET_COMP_STR       "UV"
00067     /* GNU GCC */
00068 #elif (defined(FNET_CFG_COMP_GNUC) && FNET_CFG_COMP_GNUC)
00069     #define FNET_COMP_STR       "GCC"
00070     /* Diab DCC */
00071 #elif (defined(FNET_CFG_COMP_DCC) && FNET_CFG_COMP_DCC)
00072     #define FNET_COMP_STR       "DCC"
00073 #endif
00074 
00075 #if !defined(FNET_COMP_STR)
00076     /* CW compiler. */
00077     #if (defined(__MWERKS__) || defined(__CODEWARRIOR__))
00078         #define FNET_CFG_COMP_CW    (1)
00079         #define FNET_COMP_STR       "CW"
00080         /* IAR compiler. */
00081     #elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ASM__) || defined(__ICCARM__)
00082         #define FNET_CFG_COMP_IAR   (1)
00083         #define FNET_COMP_STR       "IAR"
00084         /* GHS compiler. */
00085     #elif defined(__ghs__)
00086         #define FNET_CFG_COMP_GHS   (1)
00087         #define FNET_COMP_STR       "GHS"
00088         /* Keil uVision compiler. */
00089     #elif defined(__CC_ARM)
00090         #define FNET_CFG_COMP_UV    (1)
00091         #define FNET_COMP_STR       "UV"
00092         /* GNU GCC */
00093     #elif defined(__GNUC__)
00094         #define FNET_CFG_COMP_GNUC  (1)
00095         #define FNET_COMP_STR       "GCC"
00096         /* Diab DCC */
00097     #elif defined(__DCC__)
00098         #define FNET_CFG_COMP_DCC   (1)
00099         #define FNET_COMP_STR       "DCC"
00100     #else
00101         #error "It is not possible to detect the compiler. Please set a FNET_CFG_COMP_XXXX parameter."
00102     #endif
00103 #endif
00104 
00105 /* Set default value */
00106 #ifndef FNET_CFG_COMP_IAR
00107     #define FNET_CFG_COMP_IAR   (0)
00108 #endif
00109 #ifndef FNET_CFG_COMP_CW
00110     #define FNET_CFG_COMP_CW    (0)
00111 #endif
00112 #ifndef FNET_CFG_COMP_UV
00113     #define FNET_CFG_COMP_UV    (0)
00114 #endif
00115 #ifndef FNET_CFG_COMP_GNUC
00116     #define FNET_CFG_COMP_GNUC  (0)
00117 #endif
00118 #ifndef FNET_CFG_COMP_GHS
00119     #define FNET_CFG_COMP_GHS   (0)
00120 #endif
00121 #ifndef FNET_CFG_COMP_DCC
00122     #define FNET_CFG_COMP_DCC   (0)
00123 #endif
00124 
00125 /*! @} */
00126 
00127 #endif /* _FNET_COMP_CONFIG_H_ */