Updates to OEMCrypto API, OPK, ODK, and unit tests. See the file CHANGELOG.md for details.
46 lines
1.2 KiB
C++
46 lines
1.2 KiB
C++
// Copyright 2018 Google LLC. All Rights Reserved. This file and proprietary
|
|
// source code may only be used and distributed under the Widevine License
|
|
// Agreement.
|
|
|
|
#ifndef WVCDM_UTIL_UTIL_COMMON_H_
|
|
#define WVCDM_UTIL_UTIL_COMMON_H_
|
|
|
|
// This section deals with defines that are platform-specific.
|
|
|
|
#ifdef _WIN32
|
|
|
|
# define CORE_UTIL_IGNORE_DEPRECATED
|
|
# define CORE_UTIL_RESTORE_WARNINGS
|
|
|
|
#else
|
|
|
|
# ifdef __GNUC__
|
|
# define CORE_UTIL_IGNORE_DEPRECATED \
|
|
_Pragma("GCC diagnostic push") \
|
|
_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
|
|
# define CORE_UTIL_RESTORE_WARNINGS _Pragma("GCC diagnostic pop")
|
|
# else
|
|
# define CORE_UTIL_IGNORE_DEPRECATED
|
|
# define CORE_UTIL_RESTORE_WARNINGS
|
|
# endif
|
|
|
|
#endif
|
|
|
|
// This section deals with attribute-detection and is platform-agnostic.
|
|
|
|
#if !defined(__has_cpp_attribute)
|
|
# define __has_cpp_attribute(x) 0
|
|
#endif
|
|
|
|
#if __has_cpp_attribute(fallthrough)
|
|
# define CORE_UTIL_FALLTHROUGH [[fallthrough]]
|
|
#elif __has_cpp_attribute(clang::fallthrough)
|
|
# define CORE_UTIL_FALLTHROUGH [[clang::fallthrough]]
|
|
#elif __has_cpp_attribute(gnu::fallthrough)
|
|
# define CORE_UTIL_FALLTHROUGH [[gnu::fallthrough]]
|
|
#else
|
|
# define CORE_UTIL_FALLTHROUGH
|
|
#endif
|
|
|
|
#endif // WVCDM_UTIL_UTIL_COMMON_H_
|