main: don't renice as non-root on non-Linux
On BSD systems only the super-user may lower priority values. meson.build:40:0: ERROR: Dependency "libcap" not found, tried pkgconfig and cmake src/main.cpp:7:10: fatal error: 'sys/capability.h' file not found #include <sys/capability.h> ^~~~~~~~~~~~~~~~~~ src/main.cpp:244:2: error: unknown type name 'cap_t' cap_t caps = cap_get_proc(); ^ src/main.cpp:244:15: error: use of undeclared identifier 'cap_get_proc' cap_t caps = cap_get_proc(); ^ src/main.cpp:247:3: error: unknown type name 'cap_flag_value_t' cap_flag_value_t nicecapvalue = CAP_CLEAR; ^ src/main.cpp:247:35: error: use of undeclared identifier 'CAP_CLEAR' cap_flag_value_t nicecapvalue = CAP_CLEAR; ^ src/main.cpp:248:23: error: use of undeclared identifier 'CAP_SYS_NICE' cap_get_flag( caps, CAP_SYS_NICE, CAP_EFFECTIVE, &nicecapvalue ); ^ src/main.cpp:248:37: error: use of undeclared identifier 'CAP_EFFECTIVE' cap_get_flag( caps, CAP_SYS_NICE, CAP_EFFECTIVE, &nicecapvalue ); ^ src/main.cpp:250:24: error: use of undeclared identifier 'CAP_SET' if ( nicecapvalue == CAP_SET ) ^
This commit is contained in:
parent
ba467640a8
commit
241df252fd
2 changed files with 5 additions and 1 deletions
|
@ -5,7 +5,9 @@
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
#if defined(__linux__)
|
||||||
#include <sys/capability.h>
|
#include <sys/capability.h>
|
||||||
|
#endif
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
|
@ -435,6 +437,7 @@ int main(int argc, char **argv)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if defined(__linux__)
|
||||||
cap_t caps = cap_get_proc();
|
cap_t caps = cap_get_proc();
|
||||||
if ( caps != nullptr )
|
if ( caps != nullptr )
|
||||||
{
|
{
|
||||||
|
@ -478,6 +481,7 @@ int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
fprintf( stderr, "No CAP_SYS_NICE, falling back to regular-priority compute and threads.\nPerformance will be affected.\n" );
|
fprintf( stderr, "No CAP_SYS_NICE, falling back to regular-priority compute and threads.\nPerformance will be affected.\n" );
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
setenv( "XWAYLAND_FORCE_ENABLE_EXTRA_MODES", "1", 1 );
|
setenv( "XWAYLAND_FORCE_ENABLE_EXTRA_MODES", "1", 1 );
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ wayland_server = dependency('wayland-server', version: '>=1.21')
|
||||||
wayland_protos = dependency('wayland-protocols', version: '>=1.17')
|
wayland_protos = dependency('wayland-protocols', version: '>=1.17')
|
||||||
xkbcommon = dependency('xkbcommon')
|
xkbcommon = dependency('xkbcommon')
|
||||||
thread_dep = dependency('threads')
|
thread_dep = dependency('threads')
|
||||||
cap_dep = dependency('libcap')
|
cap_dep = dependency('libcap', required: false)
|
||||||
sdl_dep = dependency('SDL2')
|
sdl_dep = dependency('SDL2')
|
||||||
|
|
||||||
stb_dep = dependency('stb')
|
stb_dep = dependency('stb')
|
||||||
|
|
Loading…
Reference in a new issue