// // Copyright 2015 The ANGLE Project Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // // angle_config.h: // Helpers for importing the gpu test expectations package from Chrome. // #ifndef GPU_TEST_EXPECTATIONS_ANGLE_CONFIG_H_ #define GPU_TEST_EXPECTATIONS_ANGLE_CONFIG_H_ #include #include #include "common/debug.h" #include "common/string_utils.h" #define DCHECK_EQ(A,B) ASSERT((A) == (B)) #define DCHECK_NE(A,B) ASSERT((A) != (B)) #define DCHECK(X) ASSERT(X) #define LOG(X) std::cerr #define GPU_EXPORT typedef int32_t int32; typedef uint32_t uint32; typedef int64_t int64; typedef uint64_t uint64; // Shim Chromium's base by importing functions in the base namespace. namespace base { using angle::kWhitespaceASCII; using angle::TRIM_WHITESPACE; using angle::KEEP_WHITESPACE; using angle::SPLIT_WANT_ALL; using angle::SPLIT_WANT_NONEMPTY; using angle::SplitString; using angle::SplitStringAlongWhitespace; using angle::HexStringToUInt; using angle::ReadFileToString; // StringPrintf is called differently in ANGLE but using cannot change // the name of the imported function. Use a define to change the name. using ::FormatString; #define StringPrintf FormatString } // TODO(jmadill): other platforms // clang-format off #if defined(_WIN32) || defined(_WIN64) # define OS_WIN #elif defined(ANDROID) # define OS_ANDROID #elif defined(__linux__) # define OS_LINUX #elif defined(__APPLE__) # define OS_MACOSX #else # error "Unsupported platform" #endif // clang-format on #endif