diff options
author | David Timber <mieabby@gmail.com> | 2021-08-09 17:30:18 +1000 |
---|---|---|
committer | David Timber <mieabby@gmail.com> | 2021-08-09 19:20:40 +1000 |
commit | eea0a9fbbf1aff1eac1f17914d5c116de98e1d93 (patch) | |
tree | 776e61c070d7afa0df683093b82f327631534341 /src/config.h | |
parent | f6e94a01fd84b693c5a74b8f40edb4dc89836bdf (diff) |
Protocol and build system change ...
* Use autoheader
* Add --enable-minmem
* Add OS code. Bin archive and protocol changed accordingly
* Add instance flags in hostinfo frame. Bitfield util added for this
* Add org_id in hostinfo for lineage record
* SQL schema change: store integer value of hostinfo arch and os
* Remove config.c
* prne_index_nybin() now sets errno
* Instance ids are now preserved for lineage record
* Proone: remove arguments after init
* Fix bug in prne_htbt_ser_bin_meta(): alloc_len is not checked
Diffstat (limited to 'src/config.h')
-rw-r--r-- | src/config.h | 57 |
1 files changed, 55 insertions, 2 deletions
diff --git a/src/config.h b/src/config.h index ace35b3..b1db8e7 100644 --- a/src/config.h +++ b/src/config.h @@ -1,4 +1,8 @@ #pragma once +#ifndef CONFIG_GEN_H +#include "config_gen.h" +#define CONFIG_GEN_H +#endif #include "protocol.h" #include <stdint.h> @@ -7,7 +11,6 @@ #include <zlib.h> - #if INTPTR_MAX == INT32_MAX #define PRNE_HOST_WORDSIZE 32 #elif INTPTR_MAX == INT64_MAX @@ -38,4 +41,54 @@ #define PRNE_PACK_Z_LEVEL Z_DEFAULT_COMPRESSION -extern const prne_arch_t prne_host_arch; +// PRNE_HOST_ARCH +#ifdef __GNUC__ + #if defined(__i386__) + #define PRNE_HOST_ARCH PRNE_ARCH_I686 + #elif defined(__x86_64__) + #define PRNE_HOST_ARCH PRNE_ARCH_X86_64 + #elif defined(__ARM_ARCH_4T__) + #define PRNE_HOST_ARCH PRNE_ARCH_ARMV4T + #elif defined(__ARM_ARCH_7A__) + #define PRNE_HOST_ARCH PRNE_ARCH_ARMV7 + #elif defined(__aarch64__) + #define PRNE_HOST_ARCH PRNE_ARCH_AARCH64 + #elif defined(__mips__) + #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ + #define PRNE_HOST_ARCH PRNE_ARCH_MIPS + #elif __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ + #define PRNE_HOST_ARCH PRNE_ARCH_MPSL + #else + #error "FIXME!" + #endif + #elif defined(__powerpc__) + #define PRNE_HOST_ARCH PRNE_ARCH_PPC + #elif defined(__SH4__) + #define PRNE_HOST_ARCH PRNE_ARCH_SH4 + #elif defined(__m68k__) + #define PRNE_HOST_ARCH PRNE_ARCH_M68K + #elif defined(__arc__) + #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ + #define PRNE_HOST_ARCH PRNE_ARCH_ARCEB + #elif __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ + #define PRNE_HOST_ARCH PRNE_ARCH_ARC + #else + #error "FIXME!" + #endif + #else + #error "FIXME!" + #endif +#else + #error "FIXME!" +#endif + +// PRNE_HOST_OS +#ifdef __GNUC__ + #if defined(__linux__) + #define PRNE_HOST_OS PRNE_OS_LINUX + #else + #error "FIXME!" + #endif +#else + #error "FIXME!" +#endif |