diff --git a/build_config.h b/build_config.h index 553484605..b07660db4 100644 --- a/build_config.h +++ b/build_config.h @@ -4,7 +4,8 @@ // This file adds defines about the platform we're currently building on. // Operating System: -// OS_WIN / OS_MACOSX / OS_LINUX / OS_POSIX (MACOSX or LINUX) / OS_NACL +// OS_WIN / OS_MACOSX / OS_LINUX / OS_POSIX (MACOSX or LINUX) / +// OS_NACL (NACL_SFI or NACL_NONSFI) / OS_NACL_SFI / OS_NACL_NONSFI // Compiler: // COMPILER_MSVC / COMPILER_GCC // Processor: @@ -18,6 +19,14 @@ #if defined(__native_client__) // __native_client__ must be first, so that other OS_ defines are not set. #define OS_NACL 1 +// OS_NACL comes in two sandboxing technology flavors, SFI or Non-SFI. +// PNaCl toolchain defines __native_client_nonsfi__ macro in Non-SFI build +// mode, while it does not in SFI build mode. +#if defined(__native_client_nonsfi__) +#define OS_NACL_NONSFI +#else +#define OS_NACL_SFI +#endif #elif defined(ANDROID) #define OS_ANDROID 1 #elif defined(__APPLE__)