aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2021-04-18 00:34:36 -0700
committerChris Robinson <[email protected]>2021-04-18 00:43:01 -0700
commit5165b29b1945e1cff5e8c042bd371a5b2da9b492 (patch)
tree686d5edf04f9b33ca65ec3cf16c2bf536c73400a /CMakeLists.txt
parent784dbd7d21f36b0dbf034e7ac5d46cdc5533b91b (diff)
Optionally use RTKit/D-Bus to set elevated priority
If pthread_setschedparam fails or is unavailable.
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt25
1 files changed, 24 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bd64c9d9..3f1894fa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -673,7 +673,30 @@ set(CORE_OBJS
core/mastering.h
core/resampler_limits.h
core/uhjfilter.cpp
- core/uhjfilter.h
+ core/uhjfilter.h)
+
+set(HAVE_RTKIT 0)
+option(ALSOFT_REQUIRE_RTKIT "Require RTKit/D-Bus support" FALSE)
+find_package(DBus1)
+if(DBus1_FOUND)
+ option(ALSOFT_RTKIT "Enable RTKit support" ON)
+ if(ALSOFT_RTKIT)
+ set(HAVE_RTKIT 1)
+ set(CORE_OBJS ${CORE_OBJS} core/dbus_wrap.cpp core/dbus_wrap.h core/rtkit.cpp core/rtkit.h)
+ if(WIN32 OR HAVE_DLFCN_H)
+ set(INC_PATHS ${INC_PATHS} ${DBus1_INCLUDE_DIRS})
+ set(CPP_DEFS ${CPP_DEFS} ${DBus1_DEFINITIONS})
+ else()
+ set(EXTRA_LIBS ${EXTRA_LIBS} ${DBus1_LIBRARIES})
+ endif()
+ endif()
+endif()
+if(ALSOFT_REQUIRE_RTKIT AND NOT HAVE_RTKIT)
+ message(FATAL_ERROR "Failed to enabled required RTKit support")
+endif()
+
+# Default mixers, always available
+set(CORE_OBJS ${CORE_OBJS}
core/mixer/defs.h
core/mixer/hrtfbase.h
core/mixer/hrtfdefs.h