blob: cf7ebd78162d108d90aed12c69e3e8d347388cb3 [file] [log] [blame]
rsesek@chromium.orgc2d2b202012-05-17 00:23:30 +09001// Copyright (c) 2012 The Chromium Authors. All rights reserved.
rvargas@google.com7a976cf2011-03-23 07:11:08 +09002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
darin@chromium.orge585bed2011-08-06 00:34:00 +09005#ifndef BASE_BASE_EXPORT_H_
6#define BASE_BASE_EXPORT_H_
rvargas@google.com7a976cf2011-03-23 07:11:08 +09007
darin@chromium.org86d9f942011-07-14 05:41:28 +09008#if defined(COMPONENT_BUILD)
evan@chromium.org75d1cb32011-04-30 05:45:22 +09009#if defined(WIN32)
rvargas@google.comd8b28f52011-07-01 08:51:24 +090010
rvargas@google.comc3b65182011-03-29 08:48:44 +090011#if defined(BASE_IMPLEMENTATION)
darin@chromium.orge585bed2011-08-06 00:34:00 +090012#define BASE_EXPORT __declspec(dllexport)
rvargas@google.com7a976cf2011-03-23 07:11:08 +090013#else
darin@chromium.orge585bed2011-08-06 00:34:00 +090014#define BASE_EXPORT __declspec(dllimport)
rvargas@google.comc3b65182011-03-29 08:48:44 +090015#endif // defined(BASE_IMPLEMENTATION)
rvargas@google.comd8b28f52011-07-01 08:51:24 +090016
17#else // defined(WIN32)
thakis@chromium.org163b02f2012-05-16 00:04:32 +090018#if defined(BASE_IMPLEMENTATION)
darin@chromium.orge585bed2011-08-06 00:34:00 +090019#define BASE_EXPORT __attribute__((visibility("default")))
thakis@chromium.org163b02f2012-05-16 00:04:32 +090020#else
21#define BASE_EXPORT
rsesek@chromium.orgc2d2b202012-05-17 00:23:30 +090022#endif // defined(BASE_IMPLEMENTATION)
rvargas@google.comd8b28f52011-07-01 08:51:24 +090023#endif
24
darin@chromium.org86d9f942011-07-14 05:41:28 +090025#else // defined(COMPONENT_BUILD)
darin@chromium.orge585bed2011-08-06 00:34:00 +090026#define BASE_EXPORT
rvargas@google.com7a976cf2011-03-23 07:11:08 +090027#endif
28
darin@chromium.orge585bed2011-08-06 00:34:00 +090029#endif // BASE_BASE_EXPORT_H_