This option limits visibility of the glew.h header to just bf_gpu and intern_gawain
[blender.git] / intern / gawain / gawain / gwn_common.h
1
2 // Gawain common #defines and #includes
3 //
4 // This code is part of the Gawain library, with modifications
5 // specific to integration with Blender.
6 //
7 // Copyright 2016 Mike Erwin
8 //
9 // This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of
10 // the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/.
11
12 #pragma once
13
14 #define PROGRAM_NO_OPTI 0
15
16 #if defined(NDEBUG)
17   #define TRUST_NO_ONE 0
18 #else
19   // strict error checking, enabled for debug builds during early development
20   #define TRUST_NO_ONE 1
21 #endif
22
23 #if defined(WITH_OPENGL)
24   #include <GL/glew.h>
25 #endif
26
27 #include <stdbool.h>
28 #include <stdint.h>
29
30 #if TRUST_NO_ONE
31   #include <assert.h>
32 #endif
33
34 /* GWN_INLINE */
35 #if defined(_MSC_VER)
36 #  define GWN_INLINE static __forceinline
37 #else
38 #  define GWN_INLINE static inline __attribute__((always_inline)) __attribute__((__unused__))
39 #endif