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.
4
5#ifndef BUTIL_BASE_EXPORT_H_
6#define BUTIL_BASE_EXPORT_H_
7
8#if defined(COMPONENT_BUILD)
9#if defined(WIN32)
10
11#if defined(BUTIL_IMPLEMENTATION)
12#define BUTIL_EXPORT __declspec(dllexport)
13#define BUTIL_EXPORT_PRIVATE __declspec(dllexport)
14#else
15#define BUTIL_EXPORT __declspec(dllimport)
16#define BUTIL_EXPORT_PRIVATE __declspec(dllimport)
17#endif // defined(BUTIL_IMPLEMENTATION)
18
19#else // defined(WIN32)
20#if defined(BUTIL_IMPLEMENTATION)
21#define BUTIL_EXPORT __attribute__((visibility("default")))
22#define BUTIL_EXPORT_PRIVATE __attribute__((visibility("default")))
23#else
24#define BUTIL_EXPORT
25#define BUTIL_EXPORT_PRIVATE
26#endif // defined(BUTIL_IMPLEMENTATION)
27#endif
28
29#else // defined(COMPONENT_BUILD)
30#define BUTIL_EXPORT
31#define BUTIL_EXPORT_PRIVATE
32#endif
33
34#endif // BUTIL_BASE_EXPORT_H_
35