From 6f4e466989fc659fdf73d515c0761a3291e32751 Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Wed, 27 Sep 2017 15:27:00 -0500 Subject: [PATCH] yajl: add EPICS_YAJL_API_VERSION macro --- src/libCom/Makefile | 1 + src/libCom/yajl/RULES | 17 +++++++++++++++++ src/libCom/yajl/yajl_common.h | 16 ++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 src/libCom/yajl/RULES diff --git a/src/libCom/Makefile b/src/libCom/Makefile index ee93ada0a..2ecd32b21 100644 --- a/src/libCom/Makefile +++ b/src/libCom/Makefile @@ -63,4 +63,5 @@ include $(LIBCOM)/error/RULES include $(LIBCOM)/flex/RULES include $(LIBCOM)/misc/RULES include $(LIBCOM)/osi/RULES +include $(LIBCOM)/yajl/RULES diff --git a/src/libCom/yajl/RULES b/src/libCom/yajl/RULES new file mode 100644 index 000000000..9cd228cbe --- /dev/null +++ b/src/libCom/yajl/RULES @@ -0,0 +1,17 @@ +#************************************************************************* +# Copyright (c) 2010 UChicago Argonne LLC, as Operator of Argonne +# National Laboratory. +# EPICS BASE is distributed subject to a Software License Agreement found +# in file LICENSE that is included with this distribution. +#************************************************************************* + +# This is a Makefile fragment, see src/libCom/Makefile. + +# Ensure epicsVersion.h gets built first +yajl$(DEP): $(COMMON_DIR)/epicsVersion.h +yajl_alloc$(DEP): $(COMMON_DIR)/epicsVersion.h +yajl_buf$(DEP): $(COMMON_DIR)/epicsVersion.h +yajl_encode$(DEP): $(COMMON_DIR)/epicsVersion.h +yajl_gen$(DEP): $(COMMON_DIR)/epicsVersion.h +yajl_lex$(DEP): $(COMMON_DIR)/epicsVersion.h +yajl_parser$(DEP): $(COMMON_DIR)/epicsVersion.h diff --git a/src/libCom/yajl/yajl_common.h b/src/libCom/yajl/yajl_common.h index 096cf37a0..4bc63eead 100644 --- a/src/libCom/yajl/yajl_common.h +++ b/src/libCom/yajl/yajl_common.h @@ -20,10 +20,26 @@ #include #include +#include + #ifdef __cplusplus extern "C" { #endif +/** YAJL API history in brief + * + * Originally macro not defined + * YAJL 1.0.12 + * Bundled with EPICS Base 3.15.0.1 + * + * YAJL 2.1.0 + * Changes argument type for yajl_integer() from 'int' to 'long long' + * Changes argument type for yajl_string() and yajl_map_key() from 'unsigned' to 'size_t' + * Replacement of struct yajl_parser_config with yajl_config() + * Replacement of yajl_parse_complete() with yajl_complete_parse() + */ +#define EPICS_YAJL_VERSION VERSION_INT(2,1,0,0) + #define YAJL_MAX_DEPTH 128 #define YAJL_API epicsShareFunc