OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef NET_BASE_NET_API_H_ | 5 #ifndef NET_BASE_NET_API_H_ |
6 #define NET_BASE_NET_API_H_ | 6 #define NET_BASE_NET_API_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 // Defines NET_API so that funtionality implemented by the net module can be | 9 // Defines NET_API so that funtionality implemented by the net module can be |
10 // exported to consumers, and NET_TEST that allows unit tests to access features | 10 // exported to consumers, and NET_TEST that allows unit tests to access features |
11 // not intended to be used directly by real consumers. | 11 // not intended to be used directly by real consumers. |
12 | 12 |
13 #if defined(WIN32) && defined(NET_DLL) | 13 #if defined(NET_DLL) |
| 14 #if defined(WIN32) |
| 15 |
14 #if defined(NET_IMPLEMENTATION) | 16 #if defined(NET_IMPLEMENTATION) |
15 #define NET_API __declspec(dllexport) | 17 #define NET_API __declspec(dllexport) |
16 #define NET_TEST __declspec(dllexport) | 18 #define NET_TEST __declspec(dllexport) |
17 #else | 19 #else |
18 #define NET_API __declspec(dllimport) | 20 #define NET_API __declspec(dllimport) |
19 #define NET_TEST __declspec(dllimport) | 21 #define NET_TEST __declspec(dllimport) |
20 #endif // defined(NET_IMPLEMENTATION) | 22 #endif // defined(NET_IMPLEMENTATION) |
21 #else | 23 |
| 24 #else // defined(WIN32) |
| 25 #define NET_API __attribute__((visibility("default"))) |
| 26 #define NET_TEST __attribute__((visibility("default"))) |
| 27 #endif |
| 28 |
| 29 #else /// defined(NET_DLL) |
22 #define NET_API | 30 #define NET_API |
23 #define NET_TEST | 31 #define NET_TEST |
24 #endif | 32 #endif |
25 | 33 |
26 #endif // NET_BASE_NET_API_H_ | 34 #endif // NET_BASE_NET_API_H_ |
OLD | NEW |