diff --git a/README b/README
index 37d99ec4628f6e872b1279b892043a4a42345535..a89777e8c67bc9f7aaeccbfcaf75b0c9bfef74b4 100644
--- a/README
+++ b/README
@@ -79,8 +79,8 @@ ninja install
 
 Done !
 
-More details available here:
-https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Build-instructions
+Note:
+If you don't want SHM to be used, you can build with `--without-dbus`
 
 How to compile on Linux for Android
 -----------------------------------
diff --git a/configure.ac b/configure.ac
index 0706f2d460f6eeb7ad3e1b041cb4f61548be65bd..d1707d4cf42827c1049c460ff56efce04aa05875 100644
--- a/configure.ac
+++ b/configure.ac
@@ -606,9 +606,11 @@ AC_DEFINE_UNQUOTED([HAVE_LIBNATPMP],
   [Define if you have libnatpmp])
 AM_CONDITIONAL([BUILD_NATPMP], test "x$with_natpmp" = "xyes")
 
+# SHM
+dnl check for shm
+
 AC_DEFINE_UNQUOTED([HAVE_SHM],
-  `if test -z "${HAVE_LINUX_TRUE}" && \
-test -z "${HAVE_ANDROID_FALSE}"; then echo 1; else echo 0; fi`,
+  `if test "x$with_dbus" == xyes; then echo 1; else echo 0; fi`,
   [Define if you have shared memory support])
 
 # DOXYGEN
diff --git a/meson.build b/meson.build
index f59ee3c1ac0d7c5b46ce75b5a9993c51181cef2b..c9f688b6fca03ffe4d6a99f5abc5d2e41753b2f4 100644
--- a/meson.build
+++ b/meson.build
@@ -147,7 +147,7 @@ else
 endif
 
 conf.set10('HAVE_COREAUDIO', host_machine.system() == 'darwin')
-conf.set10('HAVE_SHM', host_machine.system() == 'linux' and meson.get_compiler('cpp').get_define('__ANDROID__') != '1')
+conf.set10('HAVE_SHM', get_option('interfaces').contains('dbus'))
 
 configure_file(
     output: 'config.h',