/////////////////////////////////////////////////////////////////////////////////////////
//
// Please refer to "COPYRIGHT.md" for the relevant copyright statement of this software.
//
/////////////////////////////////////////////////////////////////////////////////////////
//
#ifndef _IDVER_H
#define _IDVER_H

#include "idrelver.h"

#if defined(_GSOFT_CROSS_PLATFORM_)
#  error Fabric code should not include idver.h
#endif

#if defined GC_BLDENV
#  include "_idver.h"
#else
#  define GCADV_BLDMAJOR 0
#  define GCADV_BLDMINOR 0
#  define GCADV_BLDBRANCH 0
#  define GCADV_BLDSTREAM DevelopmentBranch
#endif

#define GCADV_RCFILEVER3 GCADV_BLDMAJOR
#define GCADV_RCFILEVER4 GCADV_BLDMINOR
#define GCADV_RCFILEVER5 GCADV_BLDBRANCH

#define GCADV_RCFILEVERSTR \
  ID2STR(GCADV_RCFILEVER1) \
  "." ID2STR(GCADV_RCFILEVER2) "." ID2STR(GCADV_RCFILEVER3) "." ID2STR(GCADV_RCFILEVER5) "." ID2STR(GCADV_RCFILEVER4)

#define GCADV_PRODVERSION "R" GCADV_RCFILEVERSTR

#if defined(_MSC_VER) || defined(UNICODE)
#  define GCADV_VERNUM                                                                                 \
    GCRX_T(ID2STR(GCADV_BLDSTREAM))                                                                    \
    GCRX_T(".") GCRX_T(ID2STR(GCADV_BLDMAJOR)) GCRX_T(".") GCRX_T(ID2STR(GCADV_BLDBRANCH)) GCRX_T(".") \
      GCRX_T(ID2STR(GCADV_BLDMINOR))
#else
#  define GCADV_VERNUM \
    ID2STR(GCADV_BLDSTREAM) "." ID2STR(GCADV_BLDMAJOR) "." ID2STR(GCADV_BLDBRANCH) "." ID2STR(GCADV_BLDMINOR)
#endif

#if defined(PRODUCTION)
#  define GCADV_VERFULL GCADV_VERNAME
#else
#  define GCADV_VERFULL GCADV_VERNUM
#endif

#define GCADV_BLDVERSTR GCADV_VERNUM

#endif
