From 6d657891a5410b7d93cc90f376a3ef27b72b20f6 Mon Sep 17 00:00:00 2001 From: Mark Tearle Date: Sat, 27 Dec 2014 12:08:13 +0800 Subject: [PATCH] Initial move to common config code directory --- src/{server => common}/config.c | 2 +- src/common/config.h | 32 ++++++++++++++++++++++++++++++++ src/server/Makefile | 8 +++++++- src/server/common.h | 14 +------------- src/server/handler_coke.c | 1 + src/server/main.c | 1 + src/server/server.c | 1 + 7 files changed, 44 insertions(+), 15 deletions(-) rename src/{server => common}/config.c (99%) create mode 100644 src/common/config.h diff --git a/src/server/config.c b/src/common/config.c similarity index 99% rename from src/server/config.c rename to src/common/config.c index 4630b58..2328a88 100644 --- a/src/server/config.c +++ b/src/common/config.c @@ -9,7 +9,7 @@ */ #include #include -#include "common.h" +#include "config.h" #include #include #include diff --git a/src/common/config.h b/src/common/config.h new file mode 100644 index 0000000..1e7583e --- /dev/null +++ b/src/common/config.h @@ -0,0 +1,32 @@ +/* + * OpenDispense2 + * + * This code is published under the terms of the Acess licence. + * See the file COPYING for details. + * + * config.h - Config Header + */ +#ifndef _CONFIG_H_ +#define _CONFIG_H_ + +#include +extern void CompileRegex(regex_t *Regex, const char *Pattern, int Flags); +extern int RunRegex(regex_t *regex, const char *string, int nMatches, regmatch_t *matches, const char *errorMessage); + +// === HELPER MACROS === +#define _EXPSTR(x) #x +#define EXPSTR(x) _EXPSTR(x) + +#define ASSERT(cnd) do{if(!(cnd)){fprintf(stderr, "ASSERT failed at "__FILE__":"EXPSTR(__LINE__)" - "EXPSTR(cnd)"\n");exit(-1);}}while(0) + + + +// --- Config Database --- +extern void Config_ParseFile(const char *Filename); +extern void Config_AddValue(const char *Key, const char *Value); +extern int Config_GetValueCount(const char *KeyName); +extern const char *Config_GetValue(const char *KeyName, int Index); +extern int Config_GetValue_Bool(const char *KeyName, int Index); +extern int Config_GetValue_Int(const char *KeyName, int Index); + +#endif diff --git a/src/server/Makefile b/src/server/Makefile index f2ca968..dcd6f0d 100644 --- a/src/server/Makefile +++ b/src/server/Makefile @@ -29,10 +29,16 @@ install: $(BIN) $(BIN): $(OBJ) $(CC) -o $(BIN) $(OBJ) $(LINKFLAGS) -obj/%.o: %.c +obj/%.o: %.c @mkdir -p $(dir $@) $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) @cpp $< -MM -MF $@.d + +obj/%.o: ../common/%.c + @mkdir -p $(dir $@) + $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) + @cpp $< -MM -MF $@.d + -include $(DEPFILES) diff --git a/src/server/common.h b/src/server/common.h index 8a80497..1bdca84 100644 --- a/src/server/common.h +++ b/src/server/common.h @@ -17,12 +17,8 @@ #define DEFAULT_ITEM_FILE "/etc/opendispense/items.cfg" // === HELPER MACROS === -#define _EXPSTR(x) #x -#define EXPSTR(x) _EXPSTR(x) -#define UNUSED(var) unused__##var __attribute__((__unused__)) - -#define ASSERT(cnd) do{if(!(cnd)){fprintf(stderr, "ASSERT failed at "__FILE__":"EXPSTR(__LINE__)" - "EXPSTR(cnd)"\n");exit(-1);}}while(0) +#define UNUSED(var) unused__##var __attribute__((__unused__)) // === STRUCTURES === typedef struct sItem tItem; @@ -103,12 +99,4 @@ extern void Log_Info(const char *Format, ...); #define Debug_Notice(msg, v...) fprintf(stderr, "%08llun: "msg"\n", (unsigned long long)time(NULL) ,##v) #define Debug_Debug(msg, v...) fprintf(stderr, "%08llud: "msg"\n", (unsigned long long)time(NULL) ,##v) -// --- Config Database --- -extern void Config_ParseFile(const char *Filename); -extern void Config_AddValue(const char *Key, const char *Value); -extern int Config_GetValueCount(const char *KeyName); -extern const char *Config_GetValue(const char *KeyName, int Index); -extern int Config_GetValue_Bool(const char *KeyName, int Index); -extern int Config_GetValue_Int(const char *KeyName, int Index); - #endif diff --git a/src/server/handler_coke.c b/src/server/handler_coke.c index ff051c8..b9a9cf3 100644 --- a/src/server/handler_coke.c +++ b/src/server/handler_coke.c @@ -11,6 +11,7 @@ * - Remember, the coke machine echoes your text back to you! */ #include "common.h" +#include "../common/config.h" #include #include #include diff --git a/src/server/main.c b/src/server/main.c index 284002b..c8be473 100644 --- a/src/server/main.c +++ b/src/server/main.c @@ -21,6 +21,7 @@ #include #include #include "../cokebank.h" +#include "../common/config.h" // === IMPORTS === extern void Init_Handlers(void); diff --git a/src/server/server.c b/src/server/server.c index c41cc2c..11846bb 100644 --- a/src/server/server.c +++ b/src/server/server.c @@ -10,6 +10,7 @@ #include #include #include "common.h" +#include "../common/config.h" #include #include #include -- 2.20.1