[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 6/9] qapi: Turn generators' mandatory option -i into
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PATCH 6/9] qapi: Turn generators' mandatory option -i into an argument |
Date: |
Mon, 11 May 2015 09:24:40 +0200 |
Mandatory option is silly, and the error handling is missing: the
programs crash when -i isn't supplied. Make it an argument, and check
it properly.
Signed-off-by: Markus Armbruster <address@hidden>
---
Makefile | 14 +++++++-------
docs/qapi-code-gen.txt | 10 +++++-----
scripts/qapi.py | 12 +++++-------
tests/Makefile | 8 ++++----
4 files changed, 21 insertions(+), 23 deletions(-)
diff --git a/Makefile b/Makefile
index bfa5dab..d945804 100644
--- a/Makefile
+++ b/Makefile
@@ -243,17 +243,17 @@ qapi-py = $(SRC_PATH)/scripts/qapi.py
$(SRC_PATH)/scripts/ordereddict.py
qga/qapi-generated/qga-qapi-types.c qga/qapi-generated/qga-qapi-types.h :\
$(SRC_PATH)/qga/qapi-schema.json $(SRC_PATH)/scripts/qapi-types.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-types.py \
- $(gen-out-type) -o qga/qapi-generated -p "qga-" -i $<, \
+ $(gen-out-type) -o qga/qapi-generated -p "qga-" $<, \
" GEN $@")
qga/qapi-generated/qga-qapi-visit.c qga/qapi-generated/qga-qapi-visit.h :\
$(SRC_PATH)/qga/qapi-schema.json $(SRC_PATH)/scripts/qapi-visit.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-visit.py \
- $(gen-out-type) -o qga/qapi-generated -p "qga-" -i $<, \
+ $(gen-out-type) -o qga/qapi-generated -p "qga-" $<, \
" GEN $@")
qga/qapi-generated/qga-qmp-commands.h qga/qapi-generated/qga-qmp-marshal.c :\
$(SRC_PATH)/qga/qapi-schema.json $(SRC_PATH)/scripts/qapi-commands.py
$(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-commands.py \
- $(gen-out-type) -o qga/qapi-generated -p "qga-" -i $<, \
+ $(gen-out-type) -o qga/qapi-generated -p "qga-" $<, \
" GEN $@")
qapi-modules = $(SRC_PATH)/qapi-schema.json $(SRC_PATH)/qapi/common.json \
@@ -263,22 +263,22 @@ qapi-modules = $(SRC_PATH)/qapi-schema.json
$(SRC_PATH)/qapi/common.json \
qapi-types.c qapi-types.h :\
$(qapi-modules) $(SRC_PATH)/scripts/qapi-types.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-types.py \
- $(gen-out-type) -o "." -b -i $<, \
+ $(gen-out-type) -o "." -b $<, \
" GEN $@")
qapi-visit.c qapi-visit.h :\
$(qapi-modules) $(SRC_PATH)/scripts/qapi-visit.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-visit.py \
- $(gen-out-type) -o "." -b -i $<, \
+ $(gen-out-type) -o "." -b $<, \
" GEN $@")
qapi-event.c qapi-event.h :\
$(qapi-modules) $(SRC_PATH)/scripts/qapi-event.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-event.py \
- $(gen-out-type) -o "." -i $<, \
+ $(gen-out-type) -o "." $<, \
" GEN $@")
qmp-commands.h qmp-marshal.c :\
$(qapi-modules) $(SRC_PATH)/scripts/qapi-commands.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-commands.py \
- $(gen-out-type) -o "." -m -i $<, \
+ $(gen-out-type) -o "." -m $<, \
" GEN $@")
QGALIB_GEN=$(addprefix qga/qapi-generated/, qga-qapi-types.h qga-qapi-visit.h
qga-qmp-commands.h)
diff --git a/docs/qapi-code-gen.txt b/docs/qapi-code-gen.txt
index 269a1f3..3f0522e 100644
--- a/docs/qapi-code-gen.txt
+++ b/docs/qapi-code-gen.txt
@@ -536,7 +536,7 @@ created code.
Example:
$ python scripts/qapi-types.py --output-dir="qapi-generated" \
- --prefix="example-" --input-file=example-schema.json
+ --prefix="example-" example-schema.json
$ cat qapi-generated/example-qapi-types.c
[Uninteresting stuff omitted...]
@@ -623,7 +623,7 @@ $(prefix)qapi-visit.h: declarations for previously
mentioned visitor
Example:
$ python scripts/qapi-visit.py --output-dir="qapi-generated"
- --prefix="example-" --input-file=example-schema.json
+ --prefix="example-" example-schema.json
$ cat qapi-generated/example-qapi-visit.c
[Uninteresting stuff omitted...]
@@ -681,7 +681,7 @@ Example:
error_propagate(errp, err);
}
$ python scripts/qapi-commands.py --output-dir="qapi-generated" \
- --prefix="example-" --input-file=example-schema.json
+ --prefix="example-" example-schema.json
$ cat qapi-generated/example-qapi-visit.h
[Uninteresting stuff omitted...]
@@ -715,7 +715,7 @@ $(prefix)qmp-commands.h: Function prototypes for the QMP
commands
Example:
$ python scripts/qapi-commands.py --output-dir="qapi-generated"
- --prefix="example-" --input-file=example-schema.json
+ --prefix="example-" example-schema.json
$ cat qapi-generated/example-qmp-marshal.c
[Uninteresting stuff omitted...]
@@ -806,7 +806,7 @@ $(prefix)qapi-event.c - Implementation of functions to send
an event
Example:
$ python scripts/qapi-event.py --output-dir="qapi-generated"
- --prefix="example-" --input-file=example-schema.json
+ --prefix="example-" example-schema.json
$ cat qapi-generated/example-qapi-event.c
[Uninteresting stuff omitted...]
diff --git a/scripts/qapi.py b/scripts/qapi.py
index 5807476..79d1e52 100644
--- a/scripts/qapi.py
+++ b/scripts/qapi.py
@@ -966,10 +966,9 @@ def parse_command_line(extra_options = "",
extra_long_options = []):
try:
opts, args = getopt.gnu_getopt(sys.argv[1:],
- "chp:i:o:" + extra_options,
+ "chp:o:" + extra_options,
["source", "header", "prefix=",
- "input-file=", "output-dir="]
- + extra_long_options)
+ "output-dir="] + extra_long_options)
except getopt.GetoptError, err:
print >>sys.stderr, "%s: %s" % (sys.argv[0], str(err))
sys.exit(1)
@@ -984,8 +983,6 @@ def parse_command_line(extra_options = "",
extra_long_options = []):
o, a = oa
if o in ("-p", "--prefix"):
prefix = a
- elif o in ("-i", "--input-file"):
- input_file = a
elif o in ("-o", "--output-dir"):
output_dir = a + "/"
elif o in ("-c", "--source"):
@@ -999,8 +996,9 @@ def parse_command_line(extra_options = "",
extra_long_options = []):
do_c = True
do_h = True
- if len(args) != 0:
- print >>sys.stderr, "%s: too many arguments"% sys.argv[0]
+ if len(args) != 1:
+ print >>sys.stderr, "%s: need exactly one argument" % sys.argv[0]
sys.exit(1)
+ input_file = args[0]
return (input_file, output_dir, do_c, do_h, prefix, extra_opts)
diff --git a/tests/Makefile b/tests/Makefile
index 6d2f2e5..729b969 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -303,22 +303,22 @@ tests/test-vmstate$(EXESUF): tests/test-vmstate.o \
tests/test-qapi-types.c tests/test-qapi-types.h :\
$(SRC_PATH)/tests/qapi-schema/qapi-schema-test.json
$(SRC_PATH)/scripts/qapi-types.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-types.py \
- $(gen-out-type) -o tests -p "test-" -i $<, \
+ $(gen-out-type) -o tests -p "test-" $<, \
" GEN $@")
tests/test-qapi-visit.c tests/test-qapi-visit.h :\
$(SRC_PATH)/tests/qapi-schema/qapi-schema-test.json
$(SRC_PATH)/scripts/qapi-visit.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-visit.py \
- $(gen-out-type) -o tests -p "test-" -i $<, \
+ $(gen-out-type) -o tests -p "test-" $<, \
" GEN $@")
tests/test-qmp-commands.h tests/test-qmp-marshal.c :\
$(SRC_PATH)/tests/qapi-schema/qapi-schema-test.json
$(SRC_PATH)/scripts/qapi-commands.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-commands.py \
- $(gen-out-type) -o tests -p "test-" -i $<, \
+ $(gen-out-type) -o tests -p "test-" $<, \
" GEN $@")
tests/test-qapi-event.c tests/test-qapi-event.h :\
$(SRC_PATH)/tests/qapi-schema/qapi-schema-test.json
$(SRC_PATH)/scripts/qapi-event.py $(qapi-py)
$(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-event.py \
- $(gen-out-type) -o tests -p "test-" -i $<, \
+ $(gen-out-type) -o tests -p "test-" $<, \
" GEN $@")
tests/test-string-output-visitor$(EXESUF): tests/test-string-output-visitor.o
$(test-qapi-obj-y) libqemuutil.a libqemustub.a
--
1.9.3
- [Qemu-devel] [PATCH 0/9] qapi: Mostly generator cleanups, Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 8/9] qapi: Drop pointless flush() before close(), Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 5/9] qapi: Fix generators to report command line errors decently, Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 1/9] tests: Add missing dependencies on $(qapi-py), Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 3/9] qapi: qapi-commands.py option --type is unused, drop it, Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 9/9] qapi: Inline gen_command_decl_prologue(), gen_command_def_prologue(), Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 4/9] qapi: Factor parse_command_line() out of the generators, Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 6/9] qapi: Turn generators' mandatory option -i into an argument,
Markus Armbruster <=
- [Qemu-devel] [PATCH 7/9] qapi: Factor open_output(), close_output() out of generators, Markus Armbruster, 2015/05/11
- [Qemu-devel] [PATCH 2/9] qapi: qapi-event.py option -b does nothing, drop it, Markus Armbruster, 2015/05/11
- Re: [Qemu-devel] [PATCH 0/9] qapi: Mostly generator cleanups, Eric Blake, 2015/05/14