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