1
0
mirror of https://github.com/xmrig/xmrig.git synced 2025-12-09 08:42:40 -05:00

Compare commits

...

2 Commits

Author SHA1 Message Date
Alik Aslanyan
e95364eed6 Merge a7d57daad3 into 0bc87345c4 2023-06-06 17:27:03 +07:00
Alik Aslanyan
a7d57daad3 Implement pause-on-active for Linux and FreeBSD 2021-03-31 16:49:32 +04:00
2 changed files with 31 additions and 9 deletions

View File

@@ -179,15 +179,21 @@ else()
if (XMRIG_OS_ANDROID)
set(EXTRA_LIBS pthread rt dl log)
elseif (XMRIG_OS_LINUX)
list(APPEND SOURCES_OS
src/crypto/common/LinuxMemory.h
src/crypto/common/LinuxMemory.cpp
)
else()
if (XMRIG_OS_LINUX)
list(APPEND SOURCES_OS
src/crypto/common/LinuxMemory.h
src/crypto/common/LinuxMemory.cpp
)
set(EXTRA_LIBS pthread rt dl)
elseif (XMRIG_OS_FREEBSD)
set(EXTRA_LIBS kvm pthread)
set(EXTRA_LIBS pthread rt dl)
elseif (XMRIG_OS_FREEBSD)
set(EXTRA_LIBS kvm pthread)
endif()
find_package(X11 REQUIRED)
set(EXTRA_LIBS ${EXTRA_LIBS} Xss ${X11_LIBRARIES})
include_directories(${X11_INCLUDE_DIR})
endif()
endif()

View File

@@ -38,6 +38,8 @@
#include <fstream>
#include <limits>
#include <X11/extensions/scrnsaver.h>
#include "base/kernel/Platform.h"
#include "version.h"
@@ -175,5 +177,19 @@ bool xmrig::Platform::isOnBatteryPower()
uint64_t xmrig::Platform::idleTime()
{
return std::numeric_limits<uint64_t>::max();
Display *dpy = XOpenDisplay(nullptr);
if (!dpy) {
return std::numeric_limits<uint64_t>::max();
}
XScreenSaverInfo *info = XScreenSaverAllocInfo();
XScreenSaverQueryInfo(dpy, DefaultRootWindow(dpy), info);
uint64_t idle = info->idle;
XFree(info);
XCloseDisplay(dpy);
return idle;
}