1// 2// Copyright (c) 2014 The ANGLE Project Authors. All rights reserved. 3// Use of this source code is governed by a BSD-style license that can be 4// found in the LICENSE file. 5// 6 7// platform.h: Operating system specific includes and defines. 8 9#ifndef COMMON_PLATFORM_H_ 10#define COMMON_PLATFORM_H_ 11 12#if defined(_WIN32) || defined(_WIN64) 13# define ANGLE_PLATFORM_WINDOWS 1 14#elif defined(__APPLE__) 15# define ANGLE_PLATFORM_APPLE 1 16# define ANGLE_PLATFORM_POSIX 1 17#elif defined(__linux__) 18# define ANGLE_PLATFORM_LINUX 1 19# define ANGLE_PLATFORM_POSIX 1 20#elif defined(ANDROID) 21# define ANGLE_PLATFORM_ANDROID 1 22# define ANGLE_PLATFORM_POSIX 1 23#elif defined(__FreeBSD__) || \ 24 defined(__OpenBSD__) || \ 25 defined(__NetBSD__) || \ 26 defined(__DragonFly__) || \ 27 defined(__sun) || \ 28 defined(__GLIBC__) || \ 29 defined(__GNU__) || \ 30 defined(__QNX__) 31# define ANGLE_PLATFORM_POSIX 1 32#else 33# error Unsupported platform. 34#endif 35 36#ifdef ANGLE_PLATFORM_WINDOWS 37# ifndef STRICT 38# define STRICT 1 39# endif 40# ifndef WIN32_LEAN_AND_MEAN 41# define WIN32_LEAN_AND_MEAN 1 42# endif 43# ifndef NOMINMAX 44# define NOMINMAX 1 45# endif 46 47# include <windows.h> 48# include <intrin.h> 49 50# if defined(ANGLE_ENABLE_D3D9) || defined(ANGLE_ENABLE_PERF) 51# include <d3d9.h> 52# include <d3dcompiler.h> 53# endif 54 55# if defined(ANGLE_ENABLE_D3D11) 56# include <d3d10_1.h> 57# include <d3d11.h> 58# include <dxgi.h> 59# include <dxgi1_2.h> 60# include <d3dcompiler.h> 61# endif 62 63# undef near 64# undef far 65#endif 66 67#endif // COMMON_PLATFORM_H_ 68