1# Copyright 2020 The Pigweed Authors 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); you may not 4# use this file except in compliance with the License. You may obtain a copy of 5# the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12# License for the specific language governing permissions and limitations under 13# the License. 14 15import("//build_overrides/pigweed.gni") 16 17import("$dir_pw_build/python.gni") 18import("$dir_pw_third_party/nanopb/nanopb.gni") 19 20pw_python_package("py") { 21 setup = [ 22 "pyproject.toml", 23 "setup.cfg", 24 ] 25 sources = [ 26 "pw_protobuf_compiler/__init__.py", 27 "pw_protobuf_compiler/generate_protos.py", 28 "pw_protobuf_compiler/proto_target_invalid.py", 29 "pw_protobuf_compiler/python_protos.py", 30 ] 31 tests = [ 32 "compiled_protos_test.py", 33 "python_protos_test.py", 34 ] 35 python_deps = [ "$dir_pw_cli/py" ] 36 python_test_deps = [ "..:test_protos.python" ] 37 pylintrc = "$dir_pigweed/.pylintrc" 38 mypy_ini = "$dir_pigweed/.mypy.ini" 39 ruff_toml = "$dir_pigweed/.ruff.toml" 40 41 # If Nanopb is available, test protos that import nanopb.proto. 42 if (dir_pw_third_party_nanopb != "") { 43 python_test_deps += [ "..:nanopb_test_protos.python" ] 44 tests += [ "compiled_nanopb_protos_test.py" ] 45 } 46} 47