← Back to file list Raw

src/CBuildInfo.cpp

#include "CBuildInfo.h"
std::string CBuildInfo::GetBuildDate() { return __DATE__; }
std::string CBuildInfo::GetBuildTime() { return __TIME__; }
std::string CBuildInfo::GetCompiler()
{
#if defined(__clang__)
return "Clang/LLVM";
#elif defined(__ICC) || defined(__INTEL_COMPILER)
return "Intel ICC/ICPC";
#elif defined(__GNUC__) || defined(__GNUG__)
return "GNU GCC/G++";
#elif defined(__HP_cc) || defined(__HP_aCC)
return "Hewlett-Packard C/aC++";
#elif defined(__IBMC__) || defined(__IBMCPP__)
return "IBM XL C/C++";
#elif defined(_MSC_VER)
return "Microsoft Visual Studio";
#elif defined(__PGI)
return "Portland Group PGCC/PGCPP";
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
return "Oracle Solaris Studio";
#else
return "unknown compiler";
#endif
}
std::string CBuildInfo::GetOperatingSystemName()
{
#ifdef _WIN64
return "Windows 64-bit";
#elif defined _WIN32
return "Windows 32-bit";
#elif defined __APPLE__ || __MACH__
return "Mac OSX";
#elif defined __linux__
return "Linux";
#elif defined __FreeBSD__
return "FreeBSD";
#elif defined __unix || __unix__
return "Unix";
#else
return "unknown operating system";
#endif
}