diff options
author | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2014-03-18 16:13:54 +0200 |
---|---|---|
committer | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2014-03-18 16:13:54 +0200 |
commit | f4949119ada32e28959e25e46b4f3314805b5ed1 (patch) | |
tree | 6784c8b30cebe773e4ae8d140268757f231cbca4 | |
parent | 607cb998b5472ef1df461995b33694e9a54bef23 (diff) |
Add stdlib.h to pb_syshdr.h for dynamic allocation
-rw-r--r-- | extra/pb_syshdr.h | 10 | ||||
-rw-r--r-- | tests/SConstruct | 2 |
2 files changed, 12 insertions, 0 deletions
diff --git a/extra/pb_syshdr.h b/extra/pb_syshdr.h index b9a97a4f..1ff48230 100644 --- a/extra/pb_syshdr.h +++ b/extra/pb_syshdr.h @@ -53,6 +53,16 @@ typedef int bool; #endif +/* stdlib.h subset */ +#ifdef PB_ENABLE_MALLOC +#ifdef HAVE_STDLIB_H +#include <stdlib.h> +#else +void *realloc(void *ptr, size_t size); +void free(void *ptr); +#endif +#endif + /* string.h subset */ #ifdef HAVE_STRING_H #include <string.h> diff --git a/tests/SConstruct b/tests/SConstruct index 8bf16ebe..b6b877f7 100644 --- a/tests/SConstruct +++ b/tests/SConstruct @@ -50,6 +50,7 @@ if not env.GetOption('clean'): stdint = conf.CheckCHeader('stdint.h') stddef = conf.CheckCHeader('stddef.h') string = conf.CheckCHeader('string.h') + stdlib = conf.CheckCHeader('stdlib.h') if not stdbool or not stdint or not stddef or not string: conf.env.Append(CPPDEFINES = {'PB_SYSTEM_HEADER': '\\"pb_syshdr.h\\"'}) conf.env.Append(CPPPATH = "#../extra") @@ -58,6 +59,7 @@ if not env.GetOption('clean'): if stdint: conf.env.Append(CPPDEFINES = {'HAVE_STDINT_H': 1}) if stddef: conf.env.Append(CPPDEFINES = {'HAVE_STDDEF_H': 1}) if string: conf.env.Append(CPPDEFINES = {'HAVE_STRING_H': 1}) + if stdlib: conf.env.Append(CPPDEFINES = {'HAVE_STDLIB_H': 1}) # Check if we can use pkg-config to find protobuf include path status, output = conf.TryAction('pkg-config protobuf --variable=includedir > $TARGET') |