/* MODULE : cpa_dep.h (Depandancy Modules Detection) AUTHOR : Alexandre LANGER [ALX] UBI R&D FILE : cpa_dep.h (Principal header file) */ /* This header file must be included by all .h public header files. The Main goal of this operation is to get information on modules dependancy during the compilation. You just have to uncomment the two #define line below to activate dependancy checking. All result will appear as warning during the compilation. */ /* UnComment this to enable dependancies checking */ /* #define CPA_CHECK_DEP_ENABLE */ /* UnComment this to check if dependancy compiler derectives are defined */ #define CPA_CHECK_DEP_DEFINITIONS /* UnComment this to check public header inclusion conflic : */ #define CPA_CHECK_PUBLIC_INTRUSION /* UnComment this to check dependancies : */ #define CPA_CHECK_DEP #ifdef CPA_CHECK_DEP_ENABLE /* *** Definition of Module identifier *** Visual C Project of the TAG module must define : CPA_SRC_TAG_NAME=CPA_TAG */ /* No Dependancies Checking for this module for the moment. |The .h header file was modified for dependancies Checking ( call cpa_dep.h ). ||The Project was modified for dependancies Chechink ( CPA_SRC_TAG_NAME=CPA_ ). ||| VVV */ #define CPA_ADI "ADI" #define CPA_AI "AI" #define CPA_BIN "BIN" #define CPA_CAP "CAP" #define CPA_CMP "CMP" #define CPA_COL "COL" #define CPA_DNM "DNM" #define CPA_DPT "DPT" #define CPA_ENV "ENV" #define CPA_ERM "ERM" #define CPA_ERO "ERO" #define CPA_FIL "FIL" #define CPA_FON "FON" #define CPA_GAM "GAM" #define CPA_GEO "GEO" #define CPA_GLD "GLD" #define CPA_GLI "GLI" #define CPA_GMT "GMT" #define CPA_HDL "HDL" #define CPA_HLM "HLM" #define CPA_INO "INO" #define CPA_INV "INV" #define CPA_IPO "IPO" #define CPA_IPT "IPT" #define CPA_ISI "ISI" #define CPA_ITF "ITF" #define CPA_LRM "LRM" #define CPA_LST "LST" #define CPA_MMG "MMG" #define CPA_MMU "MNU" #define CPA_MRC "MRC" #define CPA_MTH "MTH" #define CPA_NET "NET" #define CPA_OAC "OAC" #define CPA_PCS "PCS" #define CPA_PIC "PIC" #define CPA_PO "PO" #define CPA_POS "POS" #define CPA_PRT "PRT" #define CPA_RAD "RAD" #define CPA_RAY "RAY" #define CPA_RND "RND" #define CPA_SAI "SAI" #define CPA_SCR "SCR" #define CPA_SCT "SCT" #define CPA_SHW "SHW" #define CPA_SIF "SIF" #define CPA_SND "SND" #define CPA_SPO "SPO" #define CPA_SRF "SRF" #define CPA_STR "STR" #define CPA_TDE "TDE" #define CPA_TME "TME" #define CPA_TEX "TEX" #define CPA_TMR "TMR" #define CPA_TSN "TSN" #define CPA_VDO "VDO" #define CPA_VET "VET" #define CPA_VIG "VIG" /* Checking if All compiler directive existent */ #ifdef CPA_CHECK_DEP_DEFINITIONS /* This Must be defined into the main public header file of the module : */ #ifndef CPA_PUBLIC_HEADER_TAG_NAME #pragma message ("CPA_DEP: CPA_PUBLIC_HEADER_TAG_NAME IS NOT DEFINED !") #undef CPA_CHECK_PUBLIC_INTRUSION #undef CPA_CHECK_DEP #endif /* CPA_PUBLIC_HEADER_TAG_NAME */ /* This Must be defined into the Project (makefile or Visual C Project), this must have CPA_ as value. */ #ifndef CPA_SRC_TAG_NAME #pragma message ("CPA_DEP: CPA_SRC_TAG_NAME IS NOT DEFINED !") #undef CPA_CHECK_PUBLIC_INTRUSION #undef CPA_CHECK_DEP #endif /* CPA_SCR_TAG_NAME */ #endif /* CPA_CHECK_DEP_DEFINITIONS */ /* Checking Public header inter-inclusion */ #ifdef CPA_CHECK_PUBLIC_INTRUSION #ifdef CPA_PUBLIC_HEADER #pragma message ("CPA_DEP: " CPA_SRC_TAG_NAME ":PUBLIC_HEADER_INTER_INCLUSION " CPA_PUBLIC_HEADER_TAG_NAME "_BY_" CPA_PUBLIC_HEADER) #endif /* CPA_PUBLIC_HEADER */ #endif /* CPA_CHECK_PUBLIC_INTRUSION */ /* Building dependancy information */ #ifdef CPA_CHECK_DEP #pragma message ("CPA_DEP: " CPA_SRC_TAG_NAME "_DEP_" CPA_PUBLIC_HEADER_TAG_NAME) #endif /* CPA_CHECK_DEP */ #endif /* CPA_CHECK_DEP_ENABLE */ #ifdef CPA_PUBLIC_HEADER_TAG_NAME #undef CPA_PUBLIC_HEADER_TAG_NAME #endif /* CPA_PUBLIC_HEADER_TAG_NAME */ #ifdef CPA_PUBLIC_HEADER #undef CPA_PUBLIC_HEADER #endif /* CPA_PUBLIC_HEADER */