summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaolo Bonzini2022-04-20 17:33:59 +0200
committerPaolo Bonzini2022-05-07 07:46:58 +0200
commit0a31e3a0a00f7cd3d1d7e8885a9b1f979fed3c20 (patch)
tree43c3cb40ebd7c4711e7ccedc1c4b3247d6efe071
parentmeson: pass more options directly as -D (diff)
downloadqemu-0a31e3a0a00f7cd3d1d7e8885a9b1f979fed3c20.tar.gz
qemu-0a31e3a0a00f7cd3d1d7e8885a9b1f979fed3c20.tar.xz
qemu-0a31e3a0a00f7cd3d1d7e8885a9b1f979fed3c20.zip
configure: omit options with default values from meson command line
This has no functional change, it only makes the command line shorter and nicer. Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rwxr-xr-xconfigure29
-rw-r--r--meson.build2
-rw-r--r--meson_options.txt2
3 files changed, 19 insertions, 14 deletions
diff --git a/configure b/configure
index fc7868948b..1c88e697c5 100755
--- a/configure
+++ b/configure
@@ -2350,19 +2350,24 @@ if test "$skip_meson" = no; then
mv $cross config-meson.cross
rm -rf meson-private meson-info meson-logs
+
+ # Built-in options
+ test "$bindir" != "bin" && meson_option_add "-Dbindir=$bindir"
+ test "$default_feature" = no && meson_option_add -Dauto_features=disabled
+ test "$pie" = no && meson_option_add -Db_pie=false
+ test "$werror" = yes && meson_option_add -Dwerror=true
+
+ # QEMU options
+ test "$capstone" != auto && meson_option_add "-Dcapstone=$capstone"
+ test "$cfi" != false && meson_option_add "-Dcfi=$cfi"
+ test "$fdt" != auto && meson_option_add "-Dfdt=$fdt"
+ test -n "${LIB_FUZZING_ENGINE+xxx}" && meson_option_add "-Dfuzzing_engine=$LIB_FUZZING_ENGINE"
+ test "$qemu_suffix" != qemu && meson_option_add "-Dqemu_suffix=$qemu_suffix"
+ test "$slirp" != auto && meson_option_add "-Dslirp=$slirp"
+ test "$smbd" != '' && meson_option_add "-Dsmbd=$smbd"
+ test "$tcg" != enabled && meson_option_add "-Dtcg=$tcg"
run_meson() {
- NINJA=$ninja $meson setup \
- --prefix "$prefix" \
- --bindir "$bindir" \
- -Dqemu_suffix="$qemu_suffix" \
- -Dsmbd="$smbd" \
- -Dwerror=$(if test "$werror" = yes; then echo true; else echo false; fi) \
- -Db_pie=$(if test "$pie" = yes; then echo true; else echo false; fi) \
- -Dcfi=$cfi -Dtcg=$tcg \
- -Dcapstone=$capstone -Dfdt=$fdt -Dslirp=$slirp \
- $(test -n "${LIB_FUZZING_ENGINE+xxx}" && echo "-Dfuzzing_engine=$LIB_FUZZING_ENGINE") \
- $(if test "$default_feature" = no; then echo "-Dauto_features=disabled"; fi) \
- "$@" $cross_arg "$PWD" "$source_path"
+ NINJA=$ninja $meson setup --prefix "$prefix" "$@" $cross_arg "$PWD" "$source_path"
}
eval run_meson $meson_options
if test "$?" -ne 0 ; then
diff --git a/meson.build b/meson.build
index 44f3ca3218..215be030d1 100644
--- a/meson.build
+++ b/meson.build
@@ -1,6 +1,6 @@
project('qemu', ['c'], meson_version: '>=0.59.3',
default_options: ['warning_level=1', 'c_std=gnu11', 'cpp_std=gnu++11', 'b_colorout=auto',
- 'b_staticpic=false', 'stdsplit=false', 'optimization=2'],
+ 'b_staticpic=false', 'stdsplit=false', 'optimization=2', 'b_pie=true'],
version: files('VERSION'))
add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true)
diff --git a/meson_options.txt b/meson_options.txt
index 15fe40c700..35f5a72507 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -78,7 +78,7 @@ option('xen', type: 'feature', value: 'auto',
description: 'Xen backend support')
option('xen_pci_passthrough', type: 'feature', value: 'auto',
description: 'Xen PCI passthrough support')
-option('tcg', type: 'feature', value: 'auto',
+option('tcg', type: 'feature', value: 'enabled',
description: 'TCG support')
option('tcg_interpreter', type: 'boolean', value: false,
description: 'TCG with bytecode interpreter (slow)')