//
// Copyright (c) 2010 Advanced Micro Devices, Inc. All rights reserved.
//

#ifndef _CL_VERSIONS_HPP_
#define _CL_VERSIONS_HPP_

#include "utils/macros.hpp"

#ifndef AMD_COMPILER_NAME
# define AMD_COMPILER_NAME "AMD COMPILER"
#endif // AMD_COMPILER_NAME

#ifndef AMD_COMPILER_BUILD_NUMBER
# define AMD_COMPILER_BUILD_NUMBER 0
#endif // AMD_COMPILER_BUILD_NUMBER

#ifndef AMD_COMPILER_REVISION_NUMBER
# define AMD_COMPILER_REVISION_NUMBER 0
#endif // AMD_COMPILER_REVISION_NUMBER

#ifndef AMD_SC_COMPILER_REVISION_NUMBER
#define AMD_SC_COMPILER_REVISION_NUMBER SC_BUILD_NUMBER
#endif // AMD_SC_COMPILER_REVISION_NUMBER

#ifndef AMD_COMPILER_MAJOR_VERSION
# define AMD_COMPILER_MAJOR_VERSION 0
#endif // AMD_COMPILER_MAJOR_VERSION

#ifndef AMD_COMPILER_MINOR_VERSION
# define AMD_COMPILER_MINOR_VERSION 8
#endif // AMD_COMPILER_MINOR_VERSION

#ifndef AMD_COMPILER_RELEASE_INFO
# define AMD_COMPILER_RELEASE_INFO NOT_MAINLINE("-internal")
#endif // AMD_COMPILER_RELEASE_INFO

#ifndef AMD_COMPILER_NAME
# define AMD_COMPILER_NAME "AMD Compiler Library"
#endif // AMD_COMPILER_NAME

#define AMD_BUILD_STRING XSTR(AMD_COMPILER_BUILD_NUMBER) \
    IF(IS_MAINLINE, "." XSTR(AMD_COMPILER_REVISION_NUMBER) "." XSTR(AMD_SC_COMPILER_REVISION_NUMBER), "")

#ifndef AMD_COMPILER_INFO
# define AMD_COMPILER_INFO "AMD-COMP-LIB-" \
    "v" XSTR(AMD_COMPILER_MAJOR_VERSION) "." XSTR(AMD_COMPILER_MINOR_VERSION) \
    AMD_COMPILER_RELEASE_INFO DEBUG_ONLY(".dbg") " (" AMD_BUILD_STRING ")"
#endif // AMD_COMPILER_INFO


#endif // _CL_VERSIONS_HPP_
