Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / ash / ash_export.h
blob2f59f09a975a32adb2791168afab0f88ee26f4e6
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef ASH_ASH_EXPORT_H_
6 #define ASH_ASH_EXPORT_H_
8 // Defines ASH_EXPORT so that functionality implemented by the Ash module can
9 // be exported to consumers.
11 #if defined(COMPONENT_BUILD)
12 #if defined(WIN32)
14 #if defined(ASH_IMPLEMENTATION)
15 #define ASH_EXPORT __declspec(dllexport)
16 #else
17 #define ASH_EXPORT __declspec(dllimport)
18 #endif // defined(ASH_IMPLEMENTATION)
20 #else // defined(WIN32)
21 #if defined(ASH_IMPLEMENTATION)
22 #define ASH_EXPORT __attribute__((visibility("default")))
23 #else
24 #define ASH_EXPORT
25 #endif
26 #endif
28 #else // defined(COMPONENT_BUILD)
29 #define ASH_EXPORT
30 #endif
32 #endif // ASH_ASH_EXPORT_H_