summaryrefslogtreecommitdiffstats
path: root/generator/nanopb_generator.py
diff options
context:
space:
mode:
authorPetteri Aimonen <jpa@git.mail.kapsi.fi>2012-10-29 19:03:19 +0200
committerPetteri Aimonen <jpa@git.mail.kapsi.fi>2012-10-29 19:03:19 +0200
commit3aaa4ad8c290af87d9bb9e24447f9cd6f9a79eab (patch)
tree98a5f06be5c64a9c6199cd842064400d8e5e6d9e /generator/nanopb_generator.py
parentdb1eefc24bd9d1181dee35683c5fe12329f7d969 (diff)
Add extern "C" to header files.
Update issue 35 Status: FixedInGit
Diffstat (limited to 'generator/nanopb_generator.py')
-rw-r--r--generator/nanopb_generator.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/generator/nanopb_generator.py b/generator/nanopb_generator.py
index 2267238c..bd164e03 100644
--- a/generator/nanopb_generator.py
+++ b/generator/nanopb_generator.py
@@ -438,7 +438,10 @@ def generate_header(dependencies, headername, enums, messages):
for dependency in dependencies:
noext = os.path.splitext(dependency)[0]
yield '#include "%s.pb.h"\n' % noext
- yield '\n'
+
+ yield '#ifdef __cplusplus\n'
+ yield 'extern "C" {\n'
+ yield '#endif\n\n'
yield '/* Enum definitions */\n'
for enum in enums:
@@ -502,6 +505,10 @@ def generate_header(dependencies, headername, enums, messages):
yield 'STATIC_ASSERT((%s), YOU_MUST_DEFINE_PB_FIELD_32BIT)\n' % assertion
yield '#endif\n'
+ yield '\n#ifdef __cplusplus\n'
+ yield '} /* extern "C" */\n'
+ yield '#endif\n'
+
# End of header
yield '\n#endif\n'