Default to defining endian-conversion DECLs in compat w/o config
While this isn't a supported build configuration, some build systems need to build without going through our autotools steps, so defaulting to something sane may make it easier to build. Specifically, this fixes the inability to build rust-bitcoinconsensus on some non-x86 platforms. It needs to build without our autotools/configure steps to ensure correct compile args are passed from the rust build system to gcc. Converting the args from the rust build system to gcc would be a lot of unmaintainable work.
This commit is contained in:
parent
0d6992168c
commit
150b2f0265
1 changed files with 45 additions and 0 deletions
|
@ -19,6 +19,51 @@
|
||||||
#include <sys/endian.h>
|
#include <sys/endian.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef HAVE_CONFIG_H
|
||||||
|
// While not technically a supported configuration, defaulting to defining these
|
||||||
|
// DECLs when we were compiled without autotools makes it easier for other build
|
||||||
|
// systems to build things like libbitcoinconsensus for strange targets.
|
||||||
|
#ifdef htobe16
|
||||||
|
#define HAVE_DECL_HTOBE16 1
|
||||||
|
#endif
|
||||||
|
#ifdef htole16
|
||||||
|
#define HAVE_DECL_HTOLE16 1
|
||||||
|
#endif
|
||||||
|
#ifdef be16toh
|
||||||
|
#define HAVE_DECL_BE16TOH 1
|
||||||
|
#endif
|
||||||
|
#ifdef le16toh
|
||||||
|
#define HAVE_DECL_LE16TOH 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef htobe32
|
||||||
|
#define HAVE_DECL_HTOBE32 1
|
||||||
|
#endif
|
||||||
|
#ifdef htole32
|
||||||
|
#define HAVE_DECL_HTOLE32 1
|
||||||
|
#endif
|
||||||
|
#ifdef be32toh
|
||||||
|
#define HAVE_DECL_BE32TOH 1
|
||||||
|
#endif
|
||||||
|
#ifdef le32toh
|
||||||
|
#define HAVE_DECL_LE32TOH 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef htobe64
|
||||||
|
#define HAVE_DECL_HTOBE64 1
|
||||||
|
#endif
|
||||||
|
#ifdef htole64
|
||||||
|
#define HAVE_DECL_HTOLE64 1
|
||||||
|
#endif
|
||||||
|
#ifdef be64toh
|
||||||
|
#define HAVE_DECL_BE64TOH 1
|
||||||
|
#endif
|
||||||
|
#ifdef le64toh
|
||||||
|
#define HAVE_DECL_LE64TOH 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // HAVE_CONFIG_H
|
||||||
|
|
||||||
#if defined(WORDS_BIGENDIAN)
|
#if defined(WORDS_BIGENDIAN)
|
||||||
|
|
||||||
#if HAVE_DECL_HTOBE16 == 0
|
#if HAVE_DECL_HTOBE16 == 0
|
||||||
|
|
Loading…
Reference in a new issue