[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 035/142] meson: generate hxtool files
From: |
Paolo Bonzini |
Subject: |
[PATCH 035/142] meson: generate hxtool files |
Date: |
Tue, 28 Jan 2020 18:51:55 +0100 |
From: Marc-André Lureau <address@hidden>
Signed-off-by: Marc-André Lureau <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
---
Makefile | 20 +-------------------
Makefile.target | 6 ------
meson.build | 35 +++++++++++++++++++++++++++++++++++
scripts/hxtool | 2 +-
4 files changed, 37 insertions(+), 26 deletions(-)
mode change 100644 => 100755 scripts/hxtool
diff --git a/Makefile b/Makefile
index a1cddb8476..040bcad43a 100644
--- a/Makefile
+++ b/Makefile
@@ -106,7 +106,7 @@ include $(SRC_PATH)/rules.mak
# lor is defined in rules.mak
CONFIG_BLOCK := $(call lor,$(CONFIG_SOFTMMU),$(CONFIG_TOOLS))
-generated-files-y = config-host.h qemu-options.def
+generated-files-y = config-host.h
generated-files-y += module_block.h
@@ -244,8 +244,6 @@ all: $(DOCS) $(if $(BUILD_DOCS),sphinxdocs) $(TOOLS)
$(HELPERS-y) recurse-all mo
config-host.h: config-host.h-timestamp
config-host.h-timestamp: config-host.mak
-qemu-options.def: $(SRC_PATH)/qemu-options.hx $(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -h < $< >
$@,"GEN","$@")
TARGET_DIRS_RULES := $(foreach t, all clean install, $(addsuffix /$(t),
$(TARGET_DIRS)))
@@ -343,9 +341,6 @@ ifdef CONFIG_MPATH
scsi/qemu-pr-helper$(EXESUF): LIBS += -ludev -lmultipath -lmpathpersist
endif
-qemu-img-cmds.h: $(SRC_PATH)/qemu-img-cmds.hx $(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -h < $< >
$@,"GEN","$@")
-
module_block.h: $(SRC_PATH)/scripts/modules/module_block.py config-host.mak
$(call quiet-command,$(PYTHON) $< $@ \
$(addprefix $(SRC_PATH)/,$(patsubst %.mo,%.c,$(block-obj-m))), \
@@ -363,7 +358,6 @@ clean: recurse-clean
rm -f $(edk2-decompressed)
rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) TAGS cscope.* *.pod *~
*/*~
rm -f fsdev/*.pod scsi/*.pod
- rm -f qemu-img-cmds.h
rm -f $(foreach f,$(generated-files-y),$(f) $(f)-timestamp)
rm -f config-all-devices.mak
@@ -639,18 +633,6 @@ $(MANUAL_BUILDDIR)/specs/index.html: $(call
manual-deps,specs)
$(MANUAL_BUILDDIR)/interop/qemu-ga.8: $(call manual-deps,interop)
$(call build-manual,interop,man)
-qemu-options.texi: $(SRC_PATH)/qemu-options.hx $(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -t < $< >
$@,"GEN","$@")
-
-qemu-monitor.texi: $(SRC_PATH)/hmp-commands.hx $(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -t < $< >
$@,"GEN","$@")
-
-qemu-monitor-info.texi: $(SRC_PATH)/hmp-commands-info.hx
$(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -t < $< >
$@,"GEN","$@")
-
-qemu-img-cmds.texi: $(SRC_PATH)/qemu-img-cmds.hx $(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -t < $< >
$@,"GEN","$@")
-
docs/interop/qemu-qmp-qapi.texi: qapi/qapi-doc.texi
@cp -p $< $@
diff --git a/Makefile.target b/Makefile.target
index 7ffb46ef73..d94fa687bf 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -212,12 +212,6 @@ endif
gdbstub-xml.c: $(TARGET_XML_FILES) $(SRC_PATH)/scripts/feature_to_c.sh
$(call quiet-command,rm -f $@ && $(SHELL)
$(SRC_PATH)/scripts/feature_to_c.sh $@
$(TARGET_XML_FILES),"GEN","$(TARGET_DIR)$@")
-hmp-commands.h: $(SRC_PATH)/hmp-commands.hx $(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -h < $< >
$@,"GEN","$(TARGET_DIR)$@")
-
-hmp-commands-info.h: $(SRC_PATH)/hmp-commands-info.hx
$(SRC_PATH)/scripts/hxtool
- $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -h < $< >
$@,"GEN","$(TARGET_DIR)$@")
-
clean: clean-target
rm -f *.a *~ $(PROGS)
rm -f $(shell find . -name '*.[od]')
diff --git a/meson.build b/meson.build
index c0122a1ab9..08e37fd677 100644
--- a/meson.build
+++ b/meson.build
@@ -117,6 +117,7 @@ have_block = have_system or have_tools
# Generators
+hxtool = find_program('scripts/hxtool')
shaderinclude = find_program('scripts/shaderinclude.pl')
qapi_gen = find_program('scripts/qapi-gen.py')
qapi_gen_depends = [ meson.source_root() / 'scripts/qapi/__init__.py',
@@ -137,6 +138,40 @@ qapi_gen_depends = [ meson.source_root() /
'scripts/qapi/__init__.py',
meson.source_root() / 'scripts/qapi/doc.py',
]
+hxdep = []
+hx_headers = [
+ ['qemu-options.hx', 'qemu-options.def'],
+ ['qemu-img-cmds.hx', 'qemu-img-cmds.h'],
+]
+if have_system
+ hx_headers += [
+ ['hmp-commands.hx', 'hmp-commands.h'],
+ ['hmp-commands-info.hx', 'hmp-commands-info.h'],
+ ]
+endif
+foreach d : hx_headers
+ custom_target(d[1],
+ input: files(d[0]),
+ output: d[1],
+ capture: true,
+ build_by_default: true, # to be removed when added to a target
+ command: [hxtool, '-h', '@INPUT0@'])
+endforeach
+
+foreach d : [
+ ['qemu-options.hx', 'qemu-options.texi'],
+ ['hmp-commands.hx', 'qemu-monitor.texi'],
+ ['hmp-commands-info.hx', 'qemu-monitor-info.texi'],
+ ['qemu-img-cmds.hx', 'qemu-img-cmds.texi'],
+]
+ custom_target(d[1],
+ input: files(d[0]),
+ output: d[1],
+ capture: true,
+ build_by_default: true, # to be removed when added to a target
+ command: [hxtool, '-t', '@INPUT0@'])
+endforeach
+
# Collect sourcesets.
util_ss = ss.source_set()
diff --git a/scripts/hxtool b/scripts/hxtool
old mode 100644
new mode 100755
index 7d7c4289e3..27cbab59bf
--- a/scripts/hxtool
+++ b/scripts/hxtool
@@ -64,6 +64,6 @@ case "$1" in
"-h") hxtoh ;;
"-t") hxtotexi ;;
*) exit 1 ;;
-esac
+esac < "$2"
exit 0
--
2.21.0
- [PATCH 025/142] meson: convert vss-win32, (continued)
- [PATCH 025/142] meson: convert vss-win32, Paolo Bonzini, 2020/01/28
- [PATCH 026/142] meson: add msi generation, Paolo Bonzini, 2020/01/28
- [PATCH 027/142] meson: convert dummy Windows qga/qemu-ga target, Paolo Bonzini, 2020/01/28
- [PATCH 028/142] meson: add qemu-bridge-helper, Paolo Bonzini, 2020/01/28
- [PATCH 029/142] meson: add qemu-keymap, Paolo Bonzini, 2020/01/28
- [PATCH 030/142] meson: add qemu-edid, Paolo Bonzini, 2020/01/28
- [PATCH 031/142] meson: add virtfs-proxy-helper, Paolo Bonzini, 2020/01/28
- [PATCH 032/142] meson: keymap-gen, Paolo Bonzini, 2020/01/28
- [PATCH 033/142] meson: generate qemu-version.h, Paolo Bonzini, 2020/01/28
- [PATCH 034/142] meson: generate shader headers, Paolo Bonzini, 2020/01/28
- [PATCH 035/142] meson: generate hxtool files,
Paolo Bonzini <=
- [PATCH 036/142] meson: configure 50-qemu-gpu.json, Paolo Bonzini, 2020/01/28
- [PATCH 038/142] build-sys hack: link with whole .fa archives, Paolo Bonzini, 2020/01/28
- [PATCH 040/142] meson: convert authz directory to Meson, Paolo Bonzini, 2020/01/28
- [PATCH 039/142] meson: convert qom directory to Meson, Paolo Bonzini, 2020/01/28
- [PATCH 041/142] meson: convert crypto directory to Meson, Paolo Bonzini, 2020/01/28
- [PATCH 037/142] meson: uncompress edk2 bios, Paolo Bonzini, 2020/01/28
- [PATCH 042/142] meson: convert io directory to Meson, Paolo Bonzini, 2020/01/28
- [PATCH 043/142] meson: convert target/s390x/gen-features.h, Paolo Bonzini, 2020/01/28
- [PATCH 045/142] meson: add macos dependencies, Paolo Bonzini, 2020/01/28
- [PATCH 044/142] meson: infrastructure for building emulators, Paolo Bonzini, 2020/01/28