From 5d36eb91ec7463b48b7c91f8d2f018fc6a3a36a9 Mon Sep 17 00:00:00 2001 From: Kubat <mael.martin31@gmail.com> Date: Sat, 13 Nov 2021 17:00:01 +0100 Subject: [PATCH] BUILD: Include the STB's dynamic structure header implementation in a single source file --- CMakeLists.txt | 1 + inc/lektor/stb/ds.h | 2 +- src/base/stb.c | 5 +++++ 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 src/base/stb.c diff --git a/CMakeLists.txt b/CMakeLists.txt index fca00820..a0d44e12 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -133,6 +133,7 @@ set(lektor_base_SOURCES src/base/uri.c src/base/commands.c src/base/os.c + src/base/stb.c ) set(lektor_net_SOURCES diff --git a/inc/lektor/stb/ds.h b/inc/lektor/stb/ds.h index 4c59bcc6..2a0c631e 100644 --- a/inc/lektor/stb/ds.h +++ b/inc/lektor/stb/ds.h @@ -535,7 +535,7 @@ extern void *stbds_shmode_func(size_t elemsize, int mode); #define STBDS_OFFSETOF(var, field) ((char *)&(var)->field - (char *)(var)) -#define stbds_header(t) ((stbds_array_header *)(t)-1) +#define stbds_header(t) (((stbds_array_header *)(t)) - 1) #define stbds_temp(t) stbds_header(t)->temp #define stbds_temp_key(t) (*(char **)stbds_header(t)->hash_table) diff --git a/src/base/stb.c b/src/base/stb.c new file mode 100644 index 00000000..28eae51f --- /dev/null +++ b/src/base/stb.c @@ -0,0 +1,5 @@ +/* Include all implementations here to not compile the things or have multiple + * defines in multiple places of the same symbols. */ + +#define STB_DS_IMPLEMENTATION +#include <lektor/stb/ds.h> -- GitLab