From 1461b49385c6aa86e8426f91e8d608cb83bad241 Mon Sep 17 00:00:00 2001 From: Eric Haszlakiewicz Date: Sun, 23 Dec 2012 10:57:44 -0600 Subject: [PATCH] Add a json_c_version.h header (included from json.h), and several macros and functions for retrieving the json-c version at compile-time and run-time. --- Makefile.am | 2 ++ json.h | 1 + json_c_version.c | 20 ++++++++++++++++++++ json_c_version.h | 22 ++++++++++++++++++++++ 4 files changed, 45 insertions(+) create mode 100644 json_c_version.c create mode 100644 json_c_version.h diff --git a/Makefile.am b/Makefile.am index 36272f4..147d957 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,6 +21,7 @@ libjson_cinclude_HEADERS = \ debug.h \ json.h \ json_config.h \ + json_c_version.h \ json_inttypes.h \ json_object.h \ json_object_iterator.h \ @@ -48,6 +49,7 @@ endif libjson_c_la_SOURCES = \ arraylist.c \ debug.c \ + json_c_version.c \ json_object.c \ json_object_iterator.c \ json_tokener.c \ diff --git a/json.h b/json.h index d49715b..4339b20 100644 --- a/json.h +++ b/json.h @@ -25,6 +25,7 @@ extern "C" { #include "json_object.h" #include "json_tokener.h" #include "json_object_iterator.h" +#include "json_c_version.h" #ifdef __cplusplus } diff --git a/json_c_version.c b/json_c_version.c new file mode 100644 index 0000000..13eb188 --- /dev/null +++ b/json_c_version.c @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2012 Eric Haszlakiewicz + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the MIT license. See COPYING for details. + */ +#include "config.h" + +#include "json_c_version.h" + +const char *json_c_version(void) +{ + return JSON_C_VERSION; +} + +int json_c_version_num(void) +{ + return JSON_C_VERSION_NUM; +} + diff --git a/json_c_version.h b/json_c_version.h new file mode 100644 index 0000000..3e35aff --- /dev/null +++ b/json_c_version.h @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2012 Eric Haszlakiewicz + * + * This library is free software; you can redistribute it and/or modify + * it under the terms of the MIT license. See COPYING for details. + */ + +#ifndef _json_c_version_h_ +#define _json_c_version_h_ + +#define JSON_C_MAJOR_VERSION 0 +#define JSON_C_MINOR_VERSION 10 +#define JSON_C_MICRO_VERSION 0 +#define JSON_C_VERSION_NUM ((JSON_C_MAJOR_VERSION << 16) | \ + (JSON_C_MINOR_VERSION << 8) | \ + JSON_C_MICRO_VERSION) +#define JSON_C_VERSION "0.10" + +const char *json_c_version(void); /* Returns JSON_C_VERSION */ +int json_c_version_num(void); /* Returns JSON_C_VERSION_NUM */ + +#endif -- 2.7.4