Fix build for Windows ARM (UWP)
This fixes #576 Patch inspired by the same, but modified. Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
This commit is contained in:
parent
29d29ca170
commit
17372d2e88
@ -79,15 +79,15 @@ LTC_EXPORT int LTC_CALL XSTRCMP(const char *s1, const char *s2);
|
|||||||
* The x86 platforms allow this but some others [ARM for instance] do not. On those platforms you **MUST**
|
* The x86 platforms allow this but some others [ARM for instance] do not. On those platforms you **MUST**
|
||||||
* use the portable [slower] macros.
|
* use the portable [slower] macros.
|
||||||
*/
|
*/
|
||||||
/* detect x86/i386 32bit */
|
/* detect x86/i386/ARM 32bit */
|
||||||
#if defined(__i386__) || defined(__i386) || defined(_M_IX86)
|
#if defined(__i386__) || defined(__i386) || defined(_M_IX86) || defined(_M_ARM)
|
||||||
#define ENDIAN_LITTLE
|
#define ENDIAN_LITTLE
|
||||||
#define ENDIAN_32BITWORD
|
#define ENDIAN_32BITWORD
|
||||||
#define LTC_FAST
|
#define LTC_FAST
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* detect amd64/x64 */
|
/* detect amd64/x64/arm64 */
|
||||||
#if defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64)
|
#if defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64) || defined(_M_ARM64)
|
||||||
#define ENDIAN_LITTLE
|
#define ENDIAN_LITTLE
|
||||||
#define ENDIAN_64BITWORD
|
#define ENDIAN_64BITWORD
|
||||||
#define LTC_FAST
|
#define LTC_FAST
|
||||||
@ -195,7 +195,8 @@ LTC_EXPORT int LTC_CALL XSTRCMP(const char *s1, const char *s2);
|
|||||||
defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ || \
|
defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ || \
|
||||||
defined(__LITTLE_ENDIAN__) || \
|
defined(__LITTLE_ENDIAN__) || \
|
||||||
defined(__ARMEL__) || defined(__THUMBEL__) || defined(__AARCH64EL__) || \
|
defined(__ARMEL__) || defined(__THUMBEL__) || defined(__AARCH64EL__) || \
|
||||||
defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__)
|
defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__) || \
|
||||||
|
defined(_M_ARM) || defined(_M_ARM64)
|
||||||
#define ENDIAN_LITTLE
|
#define ENDIAN_LITTLE
|
||||||
#else
|
#else
|
||||||
#error Cannot detect endianness
|
#error Cannot detect endianness
|
||||||
@ -219,7 +220,7 @@ LTC_EXPORT int LTC_CALL XSTRCMP(const char *s1, const char *s2);
|
|||||||
defined(__s390x__) || defined(__arch64__) || defined(__aarch64__) || \
|
defined(__s390x__) || defined(__arch64__) || defined(__aarch64__) || \
|
||||||
defined(__sparcv9) || defined(__sparc_v9__) || defined(__sparc64__) || \
|
defined(__sparcv9) || defined(__sparc_v9__) || defined(__sparc64__) || \
|
||||||
defined(__ia64) || defined(__ia64__) || defined(__itanium__) || defined(_M_IA64) || \
|
defined(__ia64) || defined(__ia64__) || defined(__itanium__) || defined(_M_IA64) || \
|
||||||
defined(__LP64__) || defined(_LP64) || defined(__64BIT__)
|
defined(__LP64__) || defined(_LP64) || defined(__64BIT__) || defined(_M_ARM64)
|
||||||
typedef unsigned ulong32;
|
typedef unsigned ulong32;
|
||||||
#if !defined(ENDIAN_64BITWORD) && !defined(ENDIAN_32BITWORD)
|
#if !defined(ENDIAN_64BITWORD) && !defined(ENDIAN_32BITWORD)
|
||||||
#define ENDIAN_64BITWORD
|
#define ENDIAN_64BITWORD
|
||||||
|
Loading…
Reference in New Issue
Block a user