qemu-e2k/scripts
Paolo Bonzini 3b4da13293 configure: automatically parse command line for meson -D options
Right now meson_options.txt lists about 90 options.  Each option
needs code in configure to parse it and pass the option down to Meson as
a -D command-line argument; in addition the default must be duplicated
between configure and meson_options.txt.  This series tries to remove
the code duplication by generating the case statement for those --enable
and --disable options, as well as the corresponding help text.

About 80% of the options can be handled completely by the new mechanism.
Eight meson options are not of the --enable/--disable kind.  Six more need
to be parsed in configure for various reasons documented in the patch,
but they still have their help automatically generated.

The advantages are:

- less code in configure

- parsing and help is more consistent (for example --enable-blobs was
  not supported)

- options are described entirely in one place, meson_options.txt.
  This make it more attractive to use Meson options instead of
  hand-crafted configure options and config-host.mak

A few options change name: --enable-tcmalloc and --enable-jemalloc
become --enable-malloc={tcmalloc,jemalloc}; --disable-blobs becomes
--disable-install-blobs; --enable-trace-backend becomes
--enable-trace-backends.  However, the old names are allowed
for backwards compatibility.

Message-Id: <20211007130829.632254-19-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-10-14 09:51:06 +02:00
..
ci Jobs based on custom runners: docs and gitlab-runner setup playbook 2021-07-14 14:31:48 +01:00
coccinelle softmmu/memory: Pass ram_flags to memory_region_init_ram_shared_nomigrate() 2021-06-15 20:27:38 +02:00
codeconverter
coverity-scan coverity-model: write models fully for non-array allocation functions 2021-07-30 12:04:01 +02:00
kvm
modules
oss-fuzz fuzz: add an instrumentation filter 2021-09-01 07:33:13 -04:00
performance
qapi qapi/parser: enable pylint checks 2021-10-02 07:33:42 +02:00
qemu-guest-agent
qemugdb scripts/gdb: implement 'qemu bt' 2021-01-12 12:38:03 +01:00
qmp scripts/qmp-shell: add redirection shim 2021-06-18 16:10:07 -04:00
simplebench simplebench: add img_bench_templater.py 2021-09-15 15:54:07 +02:00
tracetool scripts/tracetool: Replace the word 'whitelist' 2021-03-09 22:14:26 +01:00
analyse-9p-simpletrace.py
analyse-locks-simpletrace.py
analyze-inclusions
analyze-migration.py
archive-source.sh
block-coroutine-wrapper.py block-coroutine-wrapper: allow non bdrv_ prefix 2021-06-18 12:21:21 -05:00
check_sparse.py
checkpatch.pl scripts/checkpatch: roll diff tweaking into checkpatch itself 2021-06-25 10:08:33 +01:00
clean-header-guards.pl
clean-includes
cleanup-trace-events.pl
cocci-macro-file.h
cpu-x86-uarch-abi.py scripts: helper to generate x86_64 CPU ABI compat info 2021-06-17 14:11:06 -04:00
decodetree.py decodetree: Extend argument set syntax to allow types 2021-05-01 11:45:35 -07:00
device-crash-test device-crash-test: Ignore errors about a bus not being available 2021-04-01 14:28:39 +02:00
disas-objdump.pl
dump-guest-memory.py
entitlement.sh meson: Use input/output for entitlements target 2021-07-09 18:21:34 +02:00
extract-vsssdk-headers
feature_to_c.sh
fix-multiline-comments.sh docs: move CODING_STYLE into the developer documentation 2021-02-24 11:05:21 +00:00
gensyscalls.sh Hexagon (linux-user/hexagon) Linux user emulation 2021-02-18 07:48:22 -08:00
get_maintainer.pl get_maintainer: update repo URL to GitLab 2021-02-09 20:53:56 +00:00
git-submodule.sh configure: replace --enable/disable-git-update with --with-git-submodules 2021-01-29 17:07:53 +00:00
git.orderfile
hxtool
hxtool-conv.pl
kernel-doc scripts/kernel-doc: strip QEMU_ from function definitions 2021-03-24 14:24:40 +00:00
make-release
meson-buildoptions.py configure: automatically parse command line for meson -D options 2021-10-14 09:51:06 +02:00
meson-buildoptions.sh configure: automatically parse command line for meson -D options 2021-10-14 09:51:06 +02:00
meson.build trace: move configuration from configure to Meson 2021-10-14 09:50:56 +02:00
minikconf.py
modinfo-collect.py modules: collect module meta-data 2021-07-09 18:20:27 +02:00
modinfo-generate.py modules: check if all dependencies can be satisfied 2021-07-09 18:20:27 +02:00
mtest2make.py meson: switch minimum meson version to 0.58.2, minimum recommended to 0.59.2 2021-10-05 13:10:29 +02:00
nsis.py
qapi-gen.py
qemu-binfmt-conf.sh scripts: fix generation update-binfmts templates 2021-05-03 10:07:41 +02:00
qemu-gdb.py scripts/gdb: implement 'qemu bt' 2021-01-12 12:38:03 +01:00
qemu-trace-stap qemu-trace-stap: changing SYSTEMTAP_TAPSET considered harmful. 2021-07-12 17:37:06 +01:00
qemu-version.sh
refresh-pxe-roms.sh
render_block_graph.py
replay-dump.py
shaderinclude.pl
signrom.py
simpletrace.py docs: fix references to docs/devel/tracing.rst 2021-06-02 06:51:09 +02:00
switch-timer-api
tap-driver.pl
tap-merge.pl
test-driver.py
tracetool.py tracetool: add output filename command-line argument 2021-01-04 14:24:58 +00:00
u2f-setup-gen.py
undefsym.py
update-linux-headers.sh headers: Add udmabuf.h 2021-05-27 12:06:37 +02:00
update-mips-syscall-args.sh linux-user, mips: update syscall-args-o32.c.inc to Linux v5.13 2021-07-13 13:59:59 +02:00
update-syscalltbl.sh
userfaultfd-wrlat.py migration: introduce 'userfaultfd-wrlat.py' script 2021-02-08 11:19:51 +00:00
vmstate-static-checker.py