mirror of
https://github.com/xmrig/xmrig.git
synced 2024-11-18 18:11:05 +00:00
Better compiler name and version handling on Linux and macOS for user-agent string.
This commit is contained in:
parent
0c930e277b
commit
c06f77b9e9
3 changed files with 14 additions and 14 deletions
|
@ -40,22 +40,20 @@
|
||||||
|
|
||||||
char *Platform::createUserAgent()
|
char *Platform::createUserAgent()
|
||||||
{
|
{
|
||||||
const size_t max = 160;
|
constexpr const size_t max = 256;
|
||||||
|
|
||||||
char *buf = new char[max];
|
char *buf = new char[max]();
|
||||||
|
int length = snprintf(buf, max, "%s/%s (Macintosh; Intel Mac OS X) libuv/%s", APP_NAME, APP_VERSION, uv_version_string());
|
||||||
|
|
||||||
# ifdef XMRIG_NVIDIA_PROJECT
|
# ifdef XMRIG_NVIDIA_PROJECT
|
||||||
const int cudaVersion = cuda_get_runtime_version();
|
const int cudaVersion = cuda_get_runtime_version();
|
||||||
snprintf(buf, max, "%s/%s (Macintosh; Intel Mac OS X) libuv/%s CUDA/%d.%d", APP_NAME, APP_VERSION, uv_version_string(), cudaVersion / 1000, cudaVersion % 100);
|
length += snprintf(buf + length, max - length, " CUDA/%d.%d", cudaVersion / 1000, cudaVersion % 100);
|
||||||
# else
|
|
||||||
snprintf(buf, max, "%s/%s (Macintosh; Intel Mac OS X) libuv/%s", APP_NAME, APP_VERSION, uv_version_string());
|
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
# ifdef __clang__
|
# ifdef __clang__
|
||||||
size_t i = strlen(buf);
|
length += snprintf(buf + length, max - length, " clang/%d.%d.%d", __clang_major__, __clang_minor__, __clang_patchlevel__);
|
||||||
snprintf(buf + i, max - i, " clang/%d.%d.%d", __clang_major__, __clang_minor__, __clang_patchlevel__);
|
|
||||||
# elif defined(__GNUC__)
|
# elif defined(__GNUC__)
|
||||||
size_t i = strlen(buf);
|
length += snprintf(buf + length, max - length, " gcc/%d.%d.%d", __GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__);
|
||||||
snprintf(buf + i, max - i, " gcc/%d.%d.%d", __GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__);
|
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
return buf;
|
return buf;
|
||||||
|
|
|
@ -54,9 +54,9 @@ typedef cpuset_t cpu_set_t;
|
||||||
|
|
||||||
char *Platform::createUserAgent()
|
char *Platform::createUserAgent()
|
||||||
{
|
{
|
||||||
const size_t max = 160;
|
constexpr const size_t max = 256;
|
||||||
|
|
||||||
char *buf = new char[max];
|
char *buf = new char[max]();
|
||||||
int length = snprintf(buf, max, "%s/%s (Linux ", APP_NAME, APP_VERSION);
|
int length = snprintf(buf, max, "%s/%s (Linux ", APP_NAME, APP_VERSION);
|
||||||
|
|
||||||
# if defined(__x86_64__)
|
# if defined(__x86_64__)
|
||||||
|
@ -70,7 +70,9 @@ char *Platform::createUserAgent()
|
||||||
length += snprintf(buf + length, max - length, " CUDA/%d.%d", cudaVersion / 1000, cudaVersion % 100);
|
length += snprintf(buf + length, max - length, " CUDA/%d.%d", cudaVersion / 1000, cudaVersion % 100);
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
# ifdef __GNUC__
|
# ifdef __clang__
|
||||||
|
length += snprintf(buf + length, max - length, " clang/%d.%d.%d", __clang_major__, __clang_minor__, __clang_patchlevel__);
|
||||||
|
# elif defined(__GNUC__)
|
||||||
length += snprintf(buf + length, max - length, " gcc/%d.%d.%d", __GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__);
|
length += snprintf(buf + length, max - length, " gcc/%d.%d.%d", __GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__);
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
|
|
|
@ -63,9 +63,9 @@ static inline OSVERSIONINFOEX winOsVersion()
|
||||||
char *Platform::createUserAgent()
|
char *Platform::createUserAgent()
|
||||||
{
|
{
|
||||||
const auto osver = winOsVersion();
|
const auto osver = winOsVersion();
|
||||||
const size_t max = 160;
|
constexpr const size_t max = 256;
|
||||||
|
|
||||||
char *buf = new char[max];
|
char *buf = new char[max]();
|
||||||
int length = snprintf(buf, max, "%s/%s (Windows NT %lu.%lu", APP_NAME, APP_VERSION, osver.dwMajorVersion, osver.dwMinorVersion);
|
int length = snprintf(buf, max, "%s/%s (Windows NT %lu.%lu", APP_NAME, APP_VERSION, osver.dwMajorVersion, osver.dwMinorVersion);
|
||||||
|
|
||||||
# if defined(__x86_64__) || defined(_M_AMD64)
|
# if defined(__x86_64__) || defined(_M_AMD64)
|
||||||
|
|
Loading…
Reference in a new issue