diff --git a/meson.build b/meson.build
index 3e43a01c9d565b7af57d41504dde1f79f74a2345..22b0b20ad576d3ce88bf9dc7347d8a23ca36963a 100644
--- a/meson.build
+++ b/meson.build
@@ -194,7 +194,9 @@ subdir('remoting')
 subdir('pipewire')
 subdir('clients')
 subdir('wcap')
-subdir('tests')
+if get_option('tests')
+	subdir('tests')
+endif
 subdir('data')
 subdir('man')
 subdir('pam')
diff --git a/meson_options.txt b/meson_options.txt
index ac355f15becec3156f50f1ac2f0916084a13a9fd..19674bbff060e671c144b94035d8178a22b3930f 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -202,6 +202,12 @@ option(
 	description: 'Tools: screen recording decoder tool'
 )
 
+option(
+	'tests',
+	type: 'boolean',
+	value: true,
+	description: 'Compile Weston tests'
+)
 option(
 	'test-junit-xml',
 	type: 'boolean',