VOL-4925 - Build and release components.
VERSION
-------
o Bump version string for a release build.
makefiles
---------
o Import more library based makefile logic.
o Several lint targets added, disabled by default but can be used by name.
o Removed pyenv dependency to support simple checking by shell iteration.
Misc
----
o Bulk copyright notice update to 2023
Change-Id: I3a6668be96b3e03966f8fb72ceba72c0b947ba6e
diff --git a/makefiles/lint/python.mk b/makefiles/lint/python.mk
index 5aecd58..9252657 100644
--- a/makefiles/lint/python.mk
+++ b/makefiles/lint/python.mk
@@ -1,34 +1,39 @@
# -*- makefile -*-
# -----------------------------------------------------------------------
-# Copyright 2017-2022 Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
+# Copyright 2022 Open Networking Foundation (ONF) and the ONF Contributors
# -----------------------------------------------------------------------
-PYTHON_FILES ?= $(error PYTHON_FILES= is required)
+##-------------------##
+##---] GLOBALS [---##
+##-------------------##
-.PHONY: lint-python
+# Gather sources to check
+# TODO: implement deps, only check modified files
+python-check-find := find . -name '*venv*' -prune\
+ -o \( -name '*.py' \)\
+ -type f -print0
-lint : lint-python
+# python-check := $(env-clean) pylint
+python-check := pylint
-# check deps for format and python3 cleanliness
-lint-python: vst_venv
- source ./$</bin/activate \
- ; set -u \
- ; pylint --py3k $(PYTHON_FILES) \
- ; flake8 --max-line-length=99 --count $(PYTHON_FILES)
+# python-check-args += --dry-run
-help::
- @echo " lint-python Syntax check using pylint and flake8"
+##-------------------##
+##---] TARGETS [---##
+##-------------------##
+ifndef NO-LINT-PYTHON
+ lint : lint-python
+endif
+
+## -----------------------------------------------------------------------
+## -----------------------------------------------------------------------
+lint-python:
+ $(HIDE)$(env-clean) $(python-check-find) \
+ | $(xargs-n1) $(python-check) $(python-check-args)
+
+## -----------------------------------------------------------------------
+## -----------------------------------------------------------------------
+help ::
+ @echo ' lint-python Syntax check python sources'
# [EOF]