base_export.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#ifndef BASE_BASE_EXPORT_H_
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_BASE_EXPORT_H_
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(COMPONENT_BUILD)
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(WIN32)
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(BASE_IMPLEMENTATION)
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT __declspec(dllexport)
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT_PRIVATE __declspec(dllexport)
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#else
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT __declspec(dllimport)
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT_PRIVATE __declspec(dllimport)
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif  // defined(BASE_IMPLEMENTATION)
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#else  // defined(WIN32)
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(BASE_IMPLEMENTATION)
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT __attribute__((visibility("default")))
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT_PRIVATE __attribute__((visibility("default")))
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#else
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT_PRIVATE
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif  // defined(BASE_IMPLEMENTATION)
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#else  // defined(COMPONENT_BUILD)
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define BASE_EXPORT_PRIVATE
322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif  // BASE_BASE_EXPORT_H_
352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)