1 //
2 // Copyright 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 // export.h : Defines ANGLE_EXPORT, a macro for exporting functions from the DLL
8 
9 #ifndef LIBGLESV2_EXPORT_H_
10 #define LIBGLESV2_EXPORT_H_
11 
12 #if !defined(ANGLE_EXPORT)
13 #    if defined(_WIN32)
14 #        if defined(LIBGLESV2_IMPLEMENTATION) || defined(LIBANGLE_IMPLEMENTATION) || \
15             defined(LIBFEATURE_SUPPORT_IMPLEMENTATION) || defined(LIBCL_IMPLEMENTATION)
16 #            define ANGLE_EXPORT __declspec(dllexport)
17 #        else
18 #            define ANGLE_EXPORT __declspec(dllimport)
19 #        endif
20 #    elif defined(__GNUC__)
21 #        if defined(LIBGLESV2_IMPLEMENTATION) || defined(LIBANGLE_IMPLEMENTATION) || \
22             defined(LIBFEATURE_SUPPORT_IMPLEMENTATION) || defined(LIBCL_IMPLEMENTATION)
23 #            define ANGLE_EXPORT __attribute__((visibility("default")))
24 #        else
25 #            define ANGLE_EXPORT
26 #        endif
27 #    else
28 #        define ANGLE_EXPORT
29 #    endif
30 #endif  // !defined(ANGLE_EXPORT)
31 
32 #if !defined(ANGLE_NO_EXPORT)
33 #    if defined(__GNUC__)
34 #        define ANGLE_NO_EXPORT __attribute__((visibility("hidden")))
35 #    else
36 #        define ANGLE_NO_EXPORT
37 #    endif
38 #endif  // !defined(ANGLE_NO_EXPORT)
39 
40 #endif  // LIBGLESV2_EXPORT_H_
41