1 /*
2  * Copyright 2021-2022 NXP
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 /**
7 *   @file           CompilerDefinition.h
8 *   @version 0.9.0
9 *
10 *   @brief   AUTOSAR BaseNXP - SWS Compiler abstraction
11 *   @details The file Compiler.h provides macros for the encapsulation of definitions and
12 *            declarations.
13 *            This file contains sample code only. It is not part of the production code deliverables
14 *
15 *   @addtogroup BASENXP_COMPONENT
16 *   @{
17 */
18 
19 #ifndef COMPILERDEFINITION_H
20 #define COMPILERDEFINITION_H
21 
22 #ifdef __cplusplus
23 extern "C"{
24 #endif
25 
26 /*==================================================================================================
27 *                                        INCLUDE FILES
28 * 1) system and project includes
29 * 2) needed interfaces from external units
30 * 3) internal and external interfaces from this unit
31 ==================================================================================================*/
32 /*==================================================================================================
33 *                               SOURCE FILE VERSION INFORMATION
34 ==================================================================================================*/
35 /**
36 * @brief  Parameters that shall be published within the compiler abstraction header file and also in
37           the module's description file.
38 @{
39 */
40 #define COMPILERDEFINITION_VENDOR_ID                      43
41 #define COMPILERDEFINITION_AR_RELEASE_MAJOR_VERSION       4
42 #define COMPILERDEFINITION_AR_RELEASE_MINOR_VERSION       7
43 #define COMPILERDEFINITION_AR_RELEASE_REVISION_VERSION    0
44 #define COMPILERDEFINITION_SW_MAJOR_VERSION               0
45 #define COMPILERDEFINITION_SW_MINOR_VERSION               9
46 #define COMPILERDEFINITION_SW_PATCH_VERSION               0
47 /**@}*/
48 /*==================================================================================================
49 *                                     FILE VERSION CHECKS
50 ==================================================================================================*/
51 
52 /*==================================================================================================
53 *                                          CONSTANTS
54 ==================================================================================================*/
55 
56 /*==================================================================================================
57 *                                      DEFINES AND MACROS
58 ==================================================================================================*/
59 
60 #ifdef __ghs__
61     /**
62     * @brief Symbol required to be defined when GreenHills compiler is used.
63     */
64     #define _GREENHILLS_C_S32ZE_
65 #endif
66 #ifdef __DCC__
67     /**
68     * @brief Symbol required to be defined when Diab compiler is used.
69     */
70     #define _DIABDATA_C_S32ZE_
71 #endif
72 #ifdef __MWERKS__
73     /**
74     * @brief Symbol required to be defined when Codewarrior compiler is used.
75     */
76     #define _CODEWARRIOR_C_S32ZE_
77 #endif
78 #ifdef __CSMC__
79     /**
80     * @brief Symbol required to be defined when Cosmic compiler is used.
81     */
82   #define _COSMIC_C_S32ZE_
83 #endif
84 #if (defined(__GNUC__) && !defined(__DCC__))
85          /**
86         * @brief Symbol required to be defined when Linaro ARM compiler is used.
87         */
88         #define _LINARO_C_S32ZE_
89  #endif
90 #ifdef __CC_ARM
91         /**
92         * @brief Symbol required to be defined when DS5 ARM compiler is used.
93         */
94         #define _ARM_DS5_C_S32ZE_
95 #endif
96 #ifdef __ICCARM__
97         /**
98         * @brief Symbol required to be defined when IAR compiler is used.
99         */
100         #define _IAR_C_S32ZE_
101 #endif
102 
103 #ifdef __cplusplus
104 }
105 #endif
106 
107 #endif /* #ifndef COMPILERDEFINITION_H */
108 
109 /** @} */
110