33 lines
911 B

  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. #ifndef STORAGE_LEVELDB_INCLUDE_EXPORT_H_
  5. #define STORAGE_LEVELDB_INCLUDE_EXPORT_H_
  6. #if !defined(LEVELDB_EXPORT)
  7. #if defined(LEVELDB_SHARED_LIBRARY)
  8. #if defined(_WIN32)
  9. #if defined(LEVELDB_COMPILE_LIBRARY)
  10. #define LEVELDB_EXPORT __declspec(dllexport)
  11. #else
  12. #define LEVELDB_EXPORT __declspec(dllimport)
  13. #endif // defined(LEVELDB_COMPILE_LIBRARY)
  14. #else // defined(_WIN32)
  15. #if defined(LEVELDB_COMPILE_LIBRARY)
  16. #define LEVELDB_EXPORT __attribute__((visibility("default")))
  17. #else
  18. #define LEVELDB_EXPORT
  19. #endif
  20. #endif // defined(_WIN32)
  21. #else // defined(LEVELDB_SHARED_LIBRARY)
  22. #define LEVELDB_EXPORT
  23. #endif
  24. #endif // !defined(LEVELDB_EXPORT)
  25. #endif // STORAGE_LEVELDB_INCLUDE_EXPORT_H_