Rework the Makefiles to be compatible with binary packages.
This commit is contained in:
@@ -15,10 +15,17 @@ except:
|
||||
print
|
||||
raise
|
||||
|
||||
import proto.nanopb_pb2 as nanopb_pb2
|
||||
import proto.descriptor_pb2 as descriptor
|
||||
|
||||
|
||||
try:
|
||||
import proto.nanopb_pb2 as nanopb_pb2
|
||||
import proto.descriptor_pb2 as descriptor
|
||||
except:
|
||||
print
|
||||
print "********************************************************************"
|
||||
print "*** Failed to import the protocol definitions for generator. ***"
|
||||
print "*** You have to run 'make' in the nanopb/generator/proto folder. ***"
|
||||
print "********************************************************************"
|
||||
print
|
||||
raise
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
@@ -1031,7 +1038,7 @@ def main_plugin():
|
||||
|
||||
if __name__ == '__main__':
|
||||
# Check if we are running as a plugin under protoc
|
||||
if 'protoc-gen-' in sys.argv[0]:
|
||||
if 'protoc-gen-' in sys.argv[0] or '--protoc-plugin' in sys.argv:
|
||||
main_plugin()
|
||||
else:
|
||||
main_cli()
|
||||
|
||||
12
generator/protoc-gen-nanopb
Executable file
12
generator/protoc-gen-nanopb
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This file is used to invoke nanopb_generator.py as a plugin
|
||||
# to protoc on Linux and other *nix-style systems.
|
||||
# Use it like this:
|
||||
# protoc --plugin=nanopb=..../protoc-gen-nanopb --nanopb_out=dir foo.proto
|
||||
#
|
||||
# Note that if you use the binary package of nanopb, the protoc
|
||||
# path is already set up properly and there is no need to give
|
||||
# --plugin= on the command line.
|
||||
|
||||
exec python $(dirname $0)/nanopb_generator.py --protoc-plugin
|
||||
11
generator/protoc-gen-nanopb.bat
Normal file
11
generator/protoc-gen-nanopb.bat
Normal file
@@ -0,0 +1,11 @@
|
||||
:: This file is used to invoke nanopb_generator.py as a plugin
|
||||
:: to protoc on Windows.
|
||||
:: Use it like this:
|
||||
:: protoc --plugin=nanopb=..../protoc-gen-nanopb.bat --nanopb_out=dir foo.proto
|
||||
::
|
||||
:: Note that if you use the binary package of nanopb, the protoc
|
||||
:: path is already set up properly and there is no need to give
|
||||
:: --plugin= on the command line.
|
||||
|
||||
set mydir=%~dp0
|
||||
python %mydir%\nanopb_generator.py --protoc-plugin
|
||||
Reference in New Issue
Block a user