Replace 'sc_prohibit_semicolon_at_eol_in_python' with generic 'sc_flake8'
rule
to check python code style.
Now 'sc_flake8' just check the error E703: 'statement ends with a
semicolon'.
In future, we could use '--select' to introduce more rules.
Signed-off-by: Shi Lei <shi_lei(a)massclouds.com>
---
cfg.mk | 8 +++-----
configure.ac | 4 ++++
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/cfg.mk b/cfg.mk
index 42e1abf0..8acc45ac 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -812,11 +812,9 @@ sc_require_enum_last_marker:
exit 1; } || :
# In Python files we don't want to end lines with a semicolon like in C
-sc_prohibit_semicolon_at_eol_in_python:
- @prohibit='^[^#].*\;$$' \
- in_vc_files='\.py$$' \
- halt='python does not require to end lines with a semicolon' \
- $(_sc_search_regexp)
+sc_flake8:
+ @$(VC_LIST_EXCEPT) | $(GREP) '\.py$$' | xargs $(FLAKE8) --select E703 \
+ | $(GREP) . && { exit 1; } || :
# mymain() in test files should use return, not exit, for nicer output
sc_prohibit_exit_in_tests:
diff --git a/configure.ac b/configure.ac
index a8f8b051..93212ca7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -704,6 +704,10 @@ AC_PATH_PROGS([PYTHON], [python3 python2 python])
if test -z "$PYTHON"; then
AC_MSG_ERROR(['python3', 'python2' or 'python' binary is
required to build libvirt])
fi
+AC_PATH_PROG([FLAKE8], [flake8])
+if test -z "$FLAKE8"; then
+ AC_MSG_ERROR(['flake8' binary is required to check python code style])
+fi
AC_PATH_PROG([PERL], [perl])
if test -z "$PERL"; then
AC_MSG_ERROR(['perl' binary is required to build libvirt])
--
2.17.1