diff --git a/CMakeLists.txt b/CMakeLists.txt index 5600ea85b..de24814cc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -305,6 +305,7 @@ option_with_deps(XRT_BUILD_DRIVER_SIMULAVR "Enable simula driver" DEPENDS XRT_HA option(XRT_BUILD_DRIVER_SIMULATED "Enable simulated driver" ON) option(XRT_BUILD_SAMPLES "Enable compiling sample code implementations that will not be linked into any final targets" ON) +set(XRT_IPC_MSG_SOCK_FILENAME monado_comp_ipc CACHE STRING "Service socket filename") # cmake-format: on diff --git a/src/xrt/include/xrt/xrt_config_build.h.cmake_in b/src/xrt/include/xrt/xrt_config_build.h.cmake_in index f12a501fc..e984174fe 100644 --- a/src/xrt/include/xrt/xrt_config_build.h.cmake_in +++ b/src/xrt/include/xrt/xrt_config_build.h.cmake_in @@ -28,3 +28,4 @@ #cmakedefine XRT_FEATURE_TRACING #cmakedefine XRT_FEATURE_CLIENT_DEBUG_GUI #cmakedefine XRT_FEATURE_WINDOW_PEEK +#cmakedefine XRT_IPC_MSG_SOCK_FILENAME "@XRT_IPC_MSG_SOCK_FILENAME@" diff --git a/src/xrt/ipc/client/ipc_client_instance.c b/src/xrt/ipc/client/ipc_client_instance.c index bb3029688..b95db60f7 100644 --- a/src/xrt/ipc/client/ipc_client_instance.c +++ b/src/xrt/ipc/client/ipc_client_instance.c @@ -132,7 +132,7 @@ ipc_connect(struct ipc_connection *ipc_c) char sock_file[PATH_MAX]; - int size = u_file_get_path_in_runtime_dir(IPC_MSG_SOCK_FILE, sock_file, PATH_MAX); + int size = u_file_get_path_in_runtime_dir(XRT_IPC_MSG_SOCK_FILENAME, sock_file, PATH_MAX); if (size == -1) { IPC_ERROR(ipc_c, "Could not get socket file name"); return -1; diff --git a/src/xrt/ipc/server/ipc_server_mainloop_linux.c b/src/xrt/ipc/server/ipc_server_mainloop_linux.c index 3590ab11d..05197b889 100644 --- a/src/xrt/ipc/server/ipc_server_mainloop_linux.c +++ b/src/xrt/ipc/server/ipc_server_mainloop_linux.c @@ -88,7 +88,7 @@ create_listen_socket(struct ipc_server_mainloop *ml, int *out_fd) char sock_file[PATH_MAX]; - int size = u_file_get_path_in_runtime_dir(IPC_MSG_SOCK_FILE, sock_file, PATH_MAX); + int size = u_file_get_path_in_runtime_dir(XRT_IPC_MSG_SOCK_FILENAME, sock_file, PATH_MAX); if (size == -1) { U_LOG_E("Could not get socket file name"); return -1; diff --git a/src/xrt/ipc/shared/ipc_protocol.h b/src/xrt/ipc/shared/ipc_protocol.h index 7bad07012..49c083621 100644 --- a/src/xrt/ipc/shared/ipc_protocol.h +++ b/src/xrt/ipc/shared/ipc_protocol.h @@ -19,10 +19,10 @@ #include "xrt/xrt_compositor.h" #include "xrt/xrt_device.h" #include "xrt/xrt_tracking.h" +#include "xrt/xrt_config_build.h" #include <sys/types.h> -#define IPC_MSG_SOCK_FILE "monado_comp_ipc" #define IPC_MAX_SWAPCHAIN_HANDLES 8 #define IPC_CRED_SIZE 1 // auth not implemented #define IPC_BUF_SIZE 512 // must be >= largest message length in bytes diff --git a/src/xrt/targets/ctl/main.c b/src/xrt/targets/ctl/main.c index 3bb8de774..58829b533 100644 --- a/src/xrt/targets/ctl/main.c +++ b/src/xrt/targets/ctl/main.c @@ -225,7 +225,7 @@ do_connect(struct ipc_connection *ipc_c) char sock_file[PATH_MAX]; - int rt_size = u_file_get_path_in_runtime_dir(IPC_MSG_SOCK_FILE, sock_file, PATH_MAX); + int rt_size = u_file_get_path_in_runtime_dir(XRT_IPC_MSG_SOCK_FILENAME, sock_file, PATH_MAX); if (rt_size == -1) { PE("Could not get socket file name"); return -1; diff --git a/src/xrt/targets/service/configure_and_install_units.cmake b/src/xrt/targets/service/configure_and_install_units.cmake index b1d6acd95..67e74fc53 100644 --- a/src/xrt/targets/service/configure_and_install_units.cmake +++ b/src/xrt/targets/service/configure_and_install_units.cmake @@ -7,6 +7,7 @@ set(XRT_INSTALL_ABSOLUTE_SYSTEMD_UNIT_FILES @XRT_INSTALL_ABSOLUTE_SYSTEMD_UNIT_F set(conflicts @conflicts@) set(exit_on_disconnect @exit_on_disconnect@) set(service_path "monado-service") +set(XRT_IPC_MSG_SOCK_FILENAME @XRT_IPC_MSG_SOCK_FILENAME@) if(XRT_INSTALL_ABSOLUTE_SYSTEMD_UNIT_FILES) set(service_path "${CMAKE_INSTALL_PREFIX}/@CMAKE_INSTALL_BINDIR@/${service_path}") endif() diff --git a/src/xrt/targets/service/monado.in.socket b/src/xrt/targets/service/monado.in.socket index 59f490985..f703f7751 100644 --- a/src/xrt/targets/service/monado.in.socket +++ b/src/xrt/targets/service/monado.in.socket @@ -7,7 +7,7 @@ ConditionUser=!root Conflicts=@conflicts@.socket [Socket] -ListenStream=%t/monado_comp_ipc +ListenStream=%t/@XRT_IPC_MSG_SOCK_FILENAME@ RemoveOnStop=true [Install]