Merge pull request #1705 from bluca/upstream_sysusers
Install sysusers.d config file for rdma system group
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6750ff0..9165fa2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -553,6 +553,19 @@
include_directories(${SYSTEMD_INCLUDE_DIRS})
RDMA_DoFixup("${SYSTEMD_FOUND}" "systemd/sd-daemon.h")
+# https://www.freedesktop.org/software/systemd/man/latest/sysusers.d.html
+set(SYSUSERS_DIR "")
+if (NOT ${CMAKE_VERSION} VERSION_LESS "3.4")
+ pkg_check_modules(SYSTEMD_PC systemd QUIET)
+ if (SYSTEMD_PC_FOUND)
+ pkg_get_variable(SYSUSERS_DIR systemd sysusersdir)
+ endif()
+endif()
+if ("${SYSUSERS_DIR}" STREQUAL "")
+ set(SYSUSERS_DIR "/usr/lib/sysusers.d")
+endif()
+install(FILES rdma-sysusers.conf DESTINATION "${SYSUSERS_DIR}" RENAME rdma.conf)
+
# drm headers
# Check if the headers have been installed by kernel-headers
diff --git a/debian/libibverbs1.install b/debian/libibverbs1.install
index 83bdd80..7bec9f5 100644
--- a/debian/libibverbs1.install
+++ b/debian/libibverbs1.install
@@ -1,2 +1,3 @@
usr/lib/*/libibverbs*.so.*
+usr/lib/sysusers.d/rdma.conf
usr/share/doc/rdma-core/libibverbs.md usr/share/doc/libibverbs1/
diff --git a/rdma-sysusers.conf b/rdma-sysusers.conf
new file mode 100644
index 0000000..587f8d8
--- /dev/null
+++ b/rdma-sysusers.conf
@@ -0,0 +1 @@
+g rdma
diff --git a/redhat/rdma-core.spec b/redhat/rdma-core.spec
index 77b8d7c..d1c857e 100644
--- a/redhat/rdma-core.spec
+++ b/redhat/rdma-core.spec
@@ -604,6 +604,7 @@
%{_libdir}/libmlx4.so.*
%config(noreplace) %{_sysconfdir}/libibverbs.d/*.driver
%doc %{_docdir}/%{name}/libibverbs.md
+%{_prefix}/lib/sysusers.d/rdma.conf
%files -n libibverbs-utils
%{_bindir}/ibv_*
diff --git a/suse/rdma-core.spec b/suse/rdma-core.spec
index af25c15..0835a42 100644
--- a/suse/rdma-core.spec
+++ b/suse/rdma-core.spec
@@ -724,6 +724,7 @@
%doc %{_docdir}/%{name}-%{version}/rxe.md
%doc %{_docdir}/%{name}-%{version}/tag_matching.md
%{_mandir}/man7/rxe*
+%{_prefix}/lib/sysusers.d/rdma.conf
%files -n libibnetdisc%{ibnetdisc_major}
%{_libdir}/libibnetdisc.so.*