Loading...
Searching...
No Matches
Go to the documentation of this file.
8#ifndef PXR_ARCH_DEFINES_H
9#define PXR_ARCH_DEFINES_H
14#if defined(__EMSCRIPTEN__)
15#define ARCH_OS_WASM_VM
16#elif defined(__linux__)
18#elif defined(__APPLE__)
19#include "TargetConditionals.h"
29#elif defined(_WIN32) || defined(_WIN64)
30#define ARCH_OS_WINDOWS
37#if defined(i386) || defined(__i386__) || defined(__x86_64__) || \
38 defined(_M_IX86) || defined(_M_X64)
40#elif defined(__arm__) || defined(__aarch64__) || defined(_M_ARM) || \
49#if defined(__x86_64__) || defined(__aarch64__) || defined(_M_X64) || \
50 defined(_M_ARM64) || defined(__wasm64__)
52#elif defined(__wasm32__)
55#error "Unsupported architecture. x86_64 or ARM64 required."
63#define ARCH_COMPILER_CLANG
64#define ARCH_COMPILER_CLANG_MAJOR __clang_major__
65#define ARCH_COMPILER_CLANG_MINOR __clang_minor__
66#define ARCH_COMPILER_CLANG_PATCHLEVEL __clang_patchlevel__
67#elif defined(__GNUC__)
68#define ARCH_COMPILER_GCC
69#define ARCH_COMPILER_GCC_MAJOR __GNUC__
70#define ARCH_COMPILER_GCC_MINOR __GNUC_MINOR__
71#define ARCH_COMPILER_GCC_PATCHLEVEL __GNUC_PATCHLEVEL__
73#define ARCH_COMPILER_ICC
74#elif defined(_MSC_VER)
75#define ARCH_COMPILER_MSVC
76#define ARCH_COMPILER_MSVC_VERSION _MSC_VER
84#if defined(ARCH_OS_LINUX) && defined(ARCH_COMPILER_GCC)
85#define ARCH_HAS_GNU_STL_EXTENSIONS
89#if defined(ARCH_OS_LINUX)
90#define ARCH_HAS_MMAP_MAP_POPULATE
99#if defined(ARCH_COMPILER_MSVC)
100 #if !defined(_MSVC_TRADITIONAL) || _MSVC_TRADITIONAL
101 #define ARCH_PREPROCESSOR_MSVC_TRADITIONAL