diff --git a/README.md b/README.md
index a8569c3602..d604a26225 100644
--- a/README.md
+++ b/README.md
@@ -82,14 +82,14 @@ located in [build-system-differences][build-system-differences].
 
 ### Meson
 
-After creating your build directory (e.g. `meson build`), you can view a list
+After creating your build directory (e.g. `meson setup build`), you can view a list
 of all the build options via `meson configure build`. You could also just simply
 look at the `meson_options.txt` file. Logs are stored in `meson-logs` within
 your build directory.
 
 Example:
 
-    meson build
+    meson setup build
     meson compile -C build
     meson install -C build
 
diff --git a/ci/build-freebsd.sh b/ci/build-freebsd.sh
index 37fb10c5e8..b5bc3b4cd4 100755
--- a/ci/build-freebsd.sh
+++ b/ci/build-freebsd.sh
@@ -5,7 +5,7 @@ export CFLAGS="$CFLAGS -isystem/usr/local/include"
 export CXXFLAGS="$CXXFLAGS -isystem/usr/local/include"
 export LDFLAGS="$LDFLAGS -L/usr/local/lib"
 
-meson build \
+meson setup build \
     -Dlibmpv=true \
     -Dlua=enabled \
     -Degl-drm=enabled \
diff --git a/ci/build-macos.sh b/ci/build-macos.sh
index 6e6456c154..938eff7251 100755
--- a/ci/build-macos.sh
+++ b/ci/build-macos.sh
@@ -12,7 +12,7 @@ fi
 
 if [[ $1 = "meson" ]]; then
     PKG_CONFIG_PATH="${FFMPEG_SYSROOT}/lib/pkgconfig/" CC="${CC}" CXX="${CXX}" \
-      meson build \
+      meson setup build \
         -Dprefix="${MPV_INSTALL_PREFIX}" \
         -Dlibmpv=true \
         -D{gl,iconv,lcms2,lua,jpeg,plain-gl,zlib}=enabled \
diff --git a/ci/build-mingw64.sh b/ci/build-mingw64.sh
index d50d317d13..0647376b14 100755
--- a/ci/build-mingw64.sh
+++ b/ci/build-mingw64.sh
@@ -187,7 +187,7 @@ if [ $1 = "meson" ]; then
     mkdir -p "${TARGET}_mingw_build" && pushd "${TARGET}_mingw_build"
 
     CFLAGS="-I'$prefix_dir/include'" LDFLAGS="-L'$prefix_dir/lib'" \
-    meson .. --cross-file "${prefix_dir}/crossfile" --libdir lib \
+    meson setup .. --cross-file "${prefix_dir}/crossfile" --libdir lib \
         -D{libmpv,tests}=true -Dlua=luajit \
         -D{shaderc,spirv-cross,d3d11,libplacebo}=enabled
 
diff --git a/ci/build-tumbleweed.sh b/ci/build-tumbleweed.sh
index 2b27149310..1fd8ef4314 100755
--- a/ci/build-tumbleweed.sh
+++ b/ci/build-tumbleweed.sh
@@ -2,7 +2,7 @@
 set -e
 
 if [ "$1" = "meson" ]; then
-    meson build \
+    meson setup build \
       -Dcdda=enabled          \
       -Ddvbin=enabled         \
       -Ddvdnav=enabled        \
diff --git a/meson.build b/meson.build
index 6d85b4e3cb..f38f2d9237 100644
--- a/meson.build
+++ b/meson.build
@@ -1590,7 +1590,7 @@ endif
 # We can't easily get every single thing a user might have passed on the cli,
 # but we might as well add prefix (even if it's not specifically set) since
 # it's highly relevant and useful.
-configuration = 'meson build '
+configuration = 'meson configure build '
 configuration += '-Dprefix=' + get_option('prefix')
 
 features += {'cplayer': get_option('cplayer')}