1 //
2 // Copyright 2018 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 // util_export.h : Defines ANGLE_UTIL_EXPORT, a macro for exporting symbols.
7 
8 #ifndef UTIL_EXPORT_H_
9 #define UTIL_EXPORT_H_
10 
11 // How to get the right import/export annotations on Windows:
12 // We define "IMPLEMENTATION" to get the dllexport label when compiling the
13 // util library. Consumers get the dllimport label by default.
14 #if !defined(ANGLE_UTIL_EXPORT)
15 #    if defined(_WIN32)
16 #        if defined(LIBANGLE_UTIL_IMPLEMENTATION)
17 #            define ANGLE_UTIL_EXPORT __declspec(dllexport)
18 #        else
19 #            define ANGLE_UTIL_EXPORT __declspec(dllimport)
20 #        endif
21 #    elif defined(__GNUC__)
22 #        define ANGLE_UTIL_EXPORT __attribute__((visibility("default")))
23 #    else
24 #        define ANGLE_UTIL_EXPORT
25 #    endif
26 #endif  // !defined(ANGLE_UTIL_EXPORT)
27 
28 #endif  // UTIL_EXPORT_H_
29