1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef MOJO_PUBLIC_C_SYSTEM_SYSTEM_EXPORT_H_ 6 #define MOJO_PUBLIC_C_SYSTEM_SYSTEM_EXPORT_H_ 7 8 #if defined(COMPONENT_BUILD) && defined(MOJO_USE_SYSTEM_IMPL) 9 #if defined(WIN32) 10 11 #if defined(MOJO_SYSTEM_IMPLEMENTATION) 12 #define MOJO_SYSTEM_EXPORT __declspec(dllexport) 13 #else 14 #define MOJO_SYSTEM_EXPORT __declspec(dllimport) 15 #endif 16 17 #else // !defined(WIN32) 18 19 #if defined(MOJO_SYSTEM_IMPLEMENTATION) 20 #define MOJO_SYSTEM_EXPORT __attribute__((visibility("default"))) 21 #else 22 #define MOJO_SYSTEM_EXPORT 23 #endif 24 25 #endif // defined(WIN32) 26 27 #else // !defined(COMPONENT_BUILD) || !defined(MOJO_USE_SYSTEM_IMPL) 28 29 #define MOJO_SYSTEM_EXPORT 30 31 #endif // defined(COMPONENT_BUILD) && defined(MOJO_USE_SYSTEM_IMPL) 32 33 #endif // MOJO_PUBLIC_C_SYSTEM_SYSTEM_EXPORT_H_ 34