base_export.h 965 Bytes
Newer Older
gejun's avatar
gejun committed
1 2 3 4
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

5 6
#ifndef BUTIL_BASE_EXPORT_H_
#define BUTIL_BASE_EXPORT_H_
gejun's avatar
gejun committed
7 8 9 10

#if defined(COMPONENT_BUILD)
#if defined(WIN32)

11 12 13
#if defined(BUTIL_IMPLEMENTATION)
#define BUTIL_EXPORT __declspec(dllexport)
#define BUTIL_EXPORT_PRIVATE __declspec(dllexport)
gejun's avatar
gejun committed
14
#else
15 16 17
#define BUTIL_EXPORT __declspec(dllimport)
#define BUTIL_EXPORT_PRIVATE __declspec(dllimport)
#endif  // defined(BUTIL_IMPLEMENTATION)
gejun's avatar
gejun committed
18 19

#else  // defined(WIN32)
20 21 22
#if defined(BUTIL_IMPLEMENTATION)
#define BUTIL_EXPORT __attribute__((visibility("default")))
#define BUTIL_EXPORT_PRIVATE __attribute__((visibility("default")))
gejun's avatar
gejun committed
23
#else
24 25 26
#define BUTIL_EXPORT
#define BUTIL_EXPORT_PRIVATE
#endif  // defined(BUTIL_IMPLEMENTATION)
gejun's avatar
gejun committed
27 28 29
#endif

#else  // defined(COMPONENT_BUILD)
30 31
#define BUTIL_EXPORT
#define BUTIL_EXPORT_PRIVATE
gejun's avatar
gejun committed
32 33
#endif

34
#endif  // BUTIL_BASE_EXPORT_H_