| /* Use # error to output the arch, and then parse from cmake */ |
| /* See https://sourceforge.net/p/predef/wiki/Architectures/ for reference */ |
| #if defined(__i386) || defined(__i386__) || defined(_M_IX86) |
| # error ARCH x86_32 |
| #elif defined(__x86_64) || defined(__x86_64__) || defined(__amd64) || defined(_M_X64) |
| # error ARCH x86_64 |
| #elif defined(__aarch64__) |
| # error ARCH armv8 |
| #elif defined(__arm__) |
| # if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) |
| # error ARCH armv7 |
| # elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) |
| # error ARCH armv6 |
| # endif |
| #else |
| # error ARCH unknown |
| #endif |
| |