shell_encryption_export.h 1013 B

12345678910111213141516171819202122232425262728
  1. // Copyright 2021 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. #ifndef SHELL_ENCRYPTION_BASE_SHELL_ENCRYPTION_EXPORT_H_
  5. #define SHELL_ENCRYPTION_BASE_SHELL_ENCRYPTION_EXPORT_H_
  6. // SHELL_ENCRYPTION_EXPORT is used to mark symbols as imported or
  7. // exported when shell-encryption is built or used as a shared library.
  8. // When shell-encryption is built as a static library the
  9. // SHELL_ENCRYPTION_EXPORT macro expands to nothing.
  10. //
  11. // This export macros doesn't support Windows. There will be additional
  12. // component build work to support Windows (see crbug.com/1269714).
  13. #ifdef SHELL_ENCRYPTION_ENABLE_SYMBOL_EXPORT
  14. #if __has_attribute(visibility)
  15. #define SHELL_ENCRYPTION_EXPORT __attribute__((visibility("default")))
  16. #endif
  17. #endif // SHELL_ENCRYPTION_ENABLE_SYMBOL_EXPORT
  18. #ifndef SHELL_ENCRYPTION_EXPORT
  19. #define SHELL_ENCRYPTION_EXPORT
  20. #endif
  21. #endif // SHELL_ENCRYPTION_BASE_SHELL_ENCRYPTION_EXPORT_H_