diff options
author | erg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-02 16:45:19 +0000 |
---|---|---|
committer | erg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-02 16:45:19 +0000 |
commit | 25a407726e1e4ba84857b6b9de97e4d732119ca9 (patch) | |
tree | 0916df3a3da4acc70756ee4940946855d250b081 /ui/linux_ui/linux_ui_export.h | |
parent | 6e0b0d2271fa33774cd46f3677c1b61370f04116 (diff) | |
download | chromium_src-25a407726e1e4ba84857b6b9de97e4d732119ca9.zip chromium_src-25a407726e1e4ba84857b6b9de97e4d732119ca9.tar.gz chromium_src-25a407726e1e4ba84857b6b9de97e4d732119ca9.tar.bz2 |
Sort out build dependencies for LinuxUI.
LinuxUI now needs to vend NativeTheme instances into code in views/. This means
it can't live in ui/base/ because ui/native_theme depends on ui/base/.
LinuxUI used to live entirely in ui/base/. When ShellDialog was split off of
ui/base/, an intermediary derived interfact was created in ui/shell_dialogs,
requiring casting. This a bit ugly and has been cleaned up.
It makes more sense to have LinuxUI depend on NativeTheme and ShellDialog, and
in turn, be depended on by classes in ui/views/ and chrome/. This patch only moves
files and adds interfaces; the actual NativeThemeGtk2 instance will land in
a separate patch.
BUG=130810
Review URL: https://chromiumcodereview.appspot.com/12315139
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@185705 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/linux_ui/linux_ui_export.h')
-rw-r--r-- | ui/linux_ui/linux_ui_export.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/ui/linux_ui/linux_ui_export.h b/ui/linux_ui/linux_ui_export.h new file mode 100644 index 0000000..68f2ab5 --- /dev/null +++ b/ui/linux_ui/linux_ui_export.h @@ -0,0 +1,36 @@ +// Copyright 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. + +#ifndef UI_LINUX_UI_LINUX_UI_EXPORT_H_ +#define UI_LINUX_UI_LINUX_UI_EXPORT_H_ + +// Defines LINUX_UI_EXPORT so that functionality implemented by the +// native_theme library can be exported to consumers. + +#if defined(COMPONENT_BUILD) +#if defined(WIN32) + +#if defined(LINUX_UI_IMPLEMENTATION) +#define LINUX_UI_EXPORT __declspec(dllexport) +#else +#define LINUX_UI_EXPORT __declspec(dllimport) +#endif // defined(LINUX_UI_IMPLEMENTATION) + +#else // !defined(WIN32) + +#if defined(LINUX_UI_IMPLEMENTATION) +#define LINUX_UI_EXPORT __attribute__((visibility("default"))) +#else +#define LINUX_UI_EXPORT +#endif + +#endif // defined(WIN32) + +#else // !defined(COMPONENT_BUILD) + +#define LINUX_UI_EXPORT + +#endif // defined(COMPONENT_BUILD) + +#endif // UI_LINUX_UI_LINUX_UI_EXPORT_H_ |