policy_export.h revision 3551c9c881056c480085172ff9840cab31610854
19fc12334a7d14347cd6951d0653264b2597bd3a0Sam Judd// Copyright 2013 The Chromium Authors. All rights reserved.
20ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd// Use of this source code is governed by a BSD-style license that can be
39fc12334a7d14347cd6951d0653264b2597bd3a0Sam Judd// found in the LICENSE file.
40ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd
50ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#ifndef COMPONENTS_POLICY_POLICY_EXPORT_H_
60ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#define COMPONENTS_POLICY_POLICY_EXPORT_H_
70ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd
80ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#if defined(COMPONENT_BUILD)
90ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#if defined(WIN32)
100ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd
110ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#if defined(POLICY_COMPONENT_IMPLEMENTATION)
120ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#define POLICY_EXPORT __declspec(dllexport)
130ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#else
140ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#define POLICY_EXPORT __declspec(dllimport)
150ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#endif  // defined(BASE_PREFS_IMPLEMENTATION)
160ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd
170ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#else  // defined(WIN32)
180ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#if defined(POLICY_COMPONENT_IMPLEMENTATION)
190ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#define POLICY_EXPORT __attribute__((visibility("default")))
200ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#else
210ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#define POLICY_EXPORT
228a6067fbe2a670d2e893c79c9c0ec17817da6568Sam Judd#endif
238a6067fbe2a670d2e893c79c9c0ec17817da6568Sam Judd#endif
248a6067fbe2a670d2e893c79c9c0ec17817da6568Sam Judd
258a6067fbe2a670d2e893c79c9c0ec17817da6568Sam Judd#else  // defined(COMPONENT_BUILD)
268a6067fbe2a670d2e893c79c9c0ec17817da6568Sam Judd#define POLICY_EXPORT
270ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#endif
280ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd
290ba0245a97116b2f2c7bd67213961ac4e2dc3e56Sam Judd#endif  // COMPONENTS_POLICY_POLICY_EXPORT_H_
3027eb05702fd4531d6974640c62df1d569629edb6Sam Judd