From 11318eb669b992870a229ed47892778fdd1e51b0 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 30 Dec 2014 21:12:43 +0100 Subject: [PATCH] Add rarchdb code to Makefile.common and griffin --- Makefile.common | 8 ++++++++ griffin/griffin.c | 9 +++++++++ rarchdb/rarchdb.c | 4 ++++ rarchdb/rarchdb_endian.h | 17 +---------------- rarchdb/rmsgpack_dom.c | 7 +++++-- 5 files changed, 27 insertions(+), 18 deletions(-) diff --git a/Makefile.common b/Makefile.common index 5295baf961..03838ff50d 100644 --- a/Makefile.common +++ b/Makefile.common @@ -151,6 +151,14 @@ OBJ += frontend/frontend.o \ record/ffemu.o \ performance.o +# RarchDB + +OBJ += rarchdb/bintree.o \ + rarchdb/db_parser.o \ + rarchdb/rarchdb.o \ + rarchdb/rmsgpack.o \ + rarchdb/rmsgpack_dom.o + # Miscellaneous ifeq ($(HAVE_STDIN_CMD), 1) diff --git a/griffin/griffin.c b/griffin/griffin.c index 0774cdb481..69d73ad0c3 100644 --- a/griffin/griffin.c +++ b/griffin/griffin.c @@ -782,6 +782,15 @@ XML ============================================================ */ #include "../audio/utils.c" +/*============================================================ + RARCHDB +============================================================ */ +#include "../rarchdb/bintree.c" +#include "../rarchdb/db_parser.c" +#include "../rarchdb/rarchdb.c" +#include "../rarchdb/rmsgpack.c" +#include "../rarchdb/rmsgpack_dom.c" + #ifdef __cplusplus } #endif diff --git a/rarchdb/rarchdb.c b/rarchdb/rarchdb.c index 908ce33b75..63634c3d8c 100644 --- a/rarchdb/rarchdb.c +++ b/rarchdb/rarchdb.c @@ -353,6 +353,10 @@ int rarchdb_create_index(struct rarchdb *db, const char* name, const char *field rmsgpack_dom_value_free(&item); item_loc = rarchdb_tell(db); } + + (void)rv; + (void)idx_header_offset; + idx_header_offset = lseek(db->fd, 0, SEEK_END); strncpy(idx.name, name, 50); diff --git a/rarchdb/rarchdb_endian.h b/rarchdb/rarchdb_endian.h index ddc313f5bd..70282be0f9 100644 --- a/rarchdb/rarchdb_endian.h +++ b/rarchdb/rarchdb_endian.h @@ -2,22 +2,7 @@ #define __RARCHDB_MSGPACK_ENDIAN_H #include - -#ifndef INLINE -#define INLINE inline -#endif - -static INLINE uint8_t is_little_endian(void) -{ - union - { - uint16_t x; - uint8_t y[2]; - } u; - - u.x = 1; - return u.y[0]; -} +#include #define swap16(val) \ ((((uint16_t)(val) & 0x00ff) << 8) \ diff --git a/rarchdb/rmsgpack_dom.c b/rarchdb/rmsgpack_dom.c index f33c286352..cb79e0b35b 100644 --- a/rarchdb/rmsgpack_dom.c +++ b/rarchdb/rmsgpack_dom.c @@ -376,7 +376,6 @@ int rmsgpack_dom_read_into(int fd, ...) struct rmsgpack_dom_value map; int rv; const char* key_name; - int value_type; struct rmsgpack_dom_value key; struct rmsgpack_dom_value *value; int64_t *int_value; @@ -385,8 +384,13 @@ int rmsgpack_dom_read_into(int fd, ...) char *buff_value; uint64_t min_len; + int value_type = 0; + va_start(ap, fd); rv = rmsgpack_dom_read(fd, &map); + + (void)value_type; + if (rv < 0) return rv; @@ -459,4 +463,3 @@ clean: rmsgpack_dom_value_free(&map); return 0; } -