/ src / leveldb / include / leveldb / export.h
export.h
 1  // Copyright (c) 2017 The LevelDB 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. See the AUTHORS file for names of contributors.
 4  
 5  #ifndef STORAGE_LEVELDB_INCLUDE_EXPORT_H_
 6  #define STORAGE_LEVELDB_INCLUDE_EXPORT_H_
 7  
 8  #if !defined(LEVELDB_EXPORT)
 9  
10  #if defined(LEVELDB_SHARED_LIBRARY)
11  #if defined(_WIN32)
12  
13  #if defined(LEVELDB_COMPILE_LIBRARY)
14  #define LEVELDB_EXPORT __declspec(dllexport)
15  #else
16  #define LEVELDB_EXPORT __declspec(dllimport)
17  #endif  // defined(LEVELDB_COMPILE_LIBRARY)
18  
19  #else  // defined(_WIN32)
20  #if defined(LEVELDB_COMPILE_LIBRARY)
21  #define LEVELDB_EXPORT __attribute__((visibility("default")))
22  #else
23  #define LEVELDB_EXPORT
24  #endif
25  #endif  // defined(_WIN32)
26  
27  #else  // defined(LEVELDB_SHARED_LIBRARY)
28  #define LEVELDB_EXPORT
29  #endif
30  
31  #endif  // !defined(LEVELDB_EXPORT)
32  
33  #endif  // STORAGE_LEVELDB_INCLUDE_EXPORT_H_