diff --git a/systemd/system/meson.build b/systemd/system/meson.build
index 96e6a219b..b4b4d523c 100644
--- a/systemd/system/meson.build
+++ b/systemd/system/meson.build
@@ -1,4 +1,10 @@
 systemd_system_unit_dir = get_option('systemd_system_unit_dir')
+if systemd_system_unit_dir == ''
+  systemd = dependency('systemd', required: false)
+  if systemd.found()
+      systemd_system_unit_dir = systemd.get_pkgconfig_variable('systemdsystemunitdir')
+  endif
+endif
 if systemd_system_unit_dir == ''
   systemd_system_unit_dir = join_paths(get_option('prefix'), 'lib', 'systemd', 'system')
 endif
diff --git a/systemd/user/meson.build b/systemd/user/meson.build
index fdce339e4..8411f0856 100644
--- a/systemd/user/meson.build
+++ b/systemd/user/meson.build
@@ -1,4 +1,10 @@
 systemd_user_unit_dir = get_option('systemd_user_unit_dir')
+if systemd_user_unit_dir == ''
+  systemd = dependency('systemd', required: false)
+  if systemd.found()
+    systemd_user_unit_dir = systemd.get_pkgconfig_variable('systemduserunitdir')
+  endif
+endif
 if systemd_user_unit_dir == ''
   systemd_user_unit_dir = join_paths(get_option('prefix'), 'lib', 'systemd', 'user')
 endif