OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This file adds defines about the platform we're currently building on. | 5 // This file adds defines about the platform we're currently building on. |
6 // Operating System: | 6 // Operating System: |
7 // OS_WIN / OS_MACOSX / OS_LINUX / OS_POSIX (MACOSX or LINUX) | 7 // OS_WIN / OS_MACOSX / OS_LINUX / OS_POSIX (MACOSX or LINUX) / OS_NACL |
8 // Compiler: | 8 // Compiler: |
9 // COMPILER_MSVC / COMPILER_GCC | 9 // COMPILER_MSVC / COMPILER_GCC |
10 // Processor: | 10 // Processor: |
11 // ARCH_CPU_X86 / ARCH_CPU_X86_64 / ARCH_CPU_X86_FAMILY (X86 or X86_64) | 11 // ARCH_CPU_X86 / ARCH_CPU_X86_64 / ARCH_CPU_X86_FAMILY (X86 or X86_64) |
12 // ARCH_CPU_32_BITS / ARCH_CPU_64_BITS | 12 // ARCH_CPU_32_BITS / ARCH_CPU_64_BITS |
13 | 13 |
14 #ifndef BUILD_BUILD_CONFIG_H_ | 14 #ifndef BUILD_BUILD_CONFIG_H_ |
15 #define BUILD_BUILD_CONFIG_H_ | 15 #define BUILD_BUILD_CONFIG_H_ |
16 | 16 |
17 #if defined(__APPLE__) | 17 #if defined(__APPLE__) |
18 #include <TargetConditionals.h> | 18 #include <TargetConditionals.h> |
19 #endif | 19 #endif |
20 | 20 |
21 // A set of macros to use for platform detection. | 21 // A set of macros to use for platform detection. |
22 #if defined(ANDROID) | 22 #if defined(__native_client__) |
| 23 // __native_client__ must be first, so that other OS_ defines are not set. |
| 24 #define OS_NACL 1 |
| 25 #elif defined(ANDROID) |
23 #define OS_ANDROID 1 | 26 #define OS_ANDROID 1 |
24 #elif defined(__APPLE__) | 27 #elif defined(__APPLE__) |
25 #define OS_MACOSX 1 | 28 #define OS_MACOSX 1 |
26 #if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE | 29 #if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE |
27 #define OS_IOS 1 | 30 #define OS_IOS 1 |
28 #endif // defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE | 31 #endif // defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE |
29 #elif defined(__native_client__) | |
30 #define OS_NACL 1 | |
31 #elif defined(__linux__) | 32 #elif defined(__linux__) |
32 #define OS_LINUX 1 | 33 #define OS_LINUX 1 |
33 // include a system header to pull in features.h for glibc/uclibc macros. | 34 // include a system header to pull in features.h for glibc/uclibc macros. |
34 #include <unistd.h> | 35 #include <unistd.h> |
35 #if defined(__GLIBC__) && !defined(__UCLIBC__) | 36 #if defined(__GLIBC__) && !defined(__UCLIBC__) |
36 // we really are using glibc, not uClibc pretending to be glibc | 37 // we really are using glibc, not uClibc pretending to be glibc |
37 #define LIBC_GLIBC 1 | 38 #define LIBC_GLIBC 1 |
38 #endif | 39 #endif |
39 #elif defined(_WIN32) | 40 #elif defined(_WIN32) |
40 #define OS_WIN 1 | 41 #define OS_WIN 1 |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
142 #if defined(OS_ANDROID) | 143 #if defined(OS_ANDROID) |
143 // The compiler thinks std::string::const_iterator and "const char*" are | 144 // The compiler thinks std::string::const_iterator and "const char*" are |
144 // equivalent types. | 145 // equivalent types. |
145 #define STD_STRING_ITERATOR_IS_CHAR_POINTER | 146 #define STD_STRING_ITERATOR_IS_CHAR_POINTER |
146 // The compiler thinks base::string16::const_iterator and "char16*" are | 147 // The compiler thinks base::string16::const_iterator and "char16*" are |
147 // equivalent types. | 148 // equivalent types. |
148 #define BASE_STRING16_ITERATOR_IS_CHAR16_POINTER | 149 #define BASE_STRING16_ITERATOR_IS_CHAR16_POINTER |
149 #endif | 150 #endif |
150 | 151 |
151 #endif // BUILD_BUILD_CONFIG_H_ | 152 #endif // BUILD_BUILD_CONFIG_H_ |
OLD | NEW |