Fix building shared libraries on MinGW-w64

pull/13240/head
مهدي شينون (Mehdi Chinoune) 1 year ago
parent 5db61db331
commit 45600c9ccc
  1. 2
      src/google/protobuf/arena.cc
  2. 2
      src/google/protobuf/descriptor.h
  3. 2
      src/google/protobuf/port_def.inc
  4. 2
      src/google/protobuf/reflection_mode.cc
  5. 4
      src/google/protobuf/reflection_mode.h
  6. 2
      src/google/protobuf/thread_safe_arena.h

@ -519,7 +519,7 @@ ThreadSafeArena::ThreadCache& ThreadSafeArena::thread_cache() {
new internal::ThreadLocalStorage<ThreadCache>();
return *thread_cache_->Get();
}
#elif defined(PROTOBUF_USE_DLLS) && defined(_MSC_VER)
#elif defined(PROTOBUF_USE_DLLS) && defined(_WIN32)
ThreadSafeArena::ThreadCache& ThreadSafeArena::thread_cache() {
static PROTOBUF_THREAD_LOCAL ThreadCache thread_cache;
return thread_cache;

@ -444,7 +444,7 @@ class PROTOBUF_EXPORT Descriptor : private internal::SymbolBase {
// A range of field numbers which are designated for third-party
// extensions.
class ExtensionRange {
class PROTOBUF_EXPORT ExtensionRange {
public:
typedef DescriptorProto_ExtensionRange Proto;

@ -706,7 +706,7 @@ static_assert(PROTOBUF_ABSL_MIN(20230125, 3),
// constant-initializing weak default instance pointers. Versions 12.0 and
// higher seem to work, except that XCode 12.5.1 shows the error even though it
// uses Clang 12.0.5.
# elif !defined(__CYGWIN__) && \
# elif !defined(__CYGWIN__) && !defined(__MINGW32__) && \
__has_cpp_attribute(clang::require_constant_initialization) && \
((defined(__APPLE__) && PROTOBUF_CLANG_MIN(13, 0)) || \
(!defined(__APPLE__) && PROTOBUF_CLANG_MIN(12, 0)))

@ -39,7 +39,7 @@ namespace internal {
#if !defined(PROTOBUF_NO_THREADLOCAL)
#if defined(PROTOBUF_USE_DLLS) && defined(_MSC_VER)
#if defined(PROTOBUF_USE_DLLS) && defined(_WIN32)
ReflectionMode& ScopedReflectionMode::reflection_mode() {
static PROTOBUF_THREAD_LOCAL ReflectionMode reflection_mode =
ReflectionMode::kDefault;

@ -95,7 +95,7 @@ class PROTOBUF_EXPORT ScopedReflectionMode final {
private:
#if !defined(PROTOBUF_NO_THREADLOCAL)
const ReflectionMode previous_mode_;
#if defined(PROTOBUF_USE_DLLS) && defined(_MSC_VER)
#if defined(PROTOBUF_USE_DLLS) && defined(_WIN32)
// Thread local variables cannot be exposed through MSVC DLL interface but we
// can wrap them in static functions.
static ReflectionMode& reflection_mode();
@ -108,7 +108,7 @@ class PROTOBUF_EXPORT ScopedReflectionMode final {
#if !defined(PROTOBUF_NO_THREADLOCAL)
#if defined(PROTOBUF_USE_DLLS) && defined(_MSC_VER)
#if defined(PROTOBUF_USE_DLLS) && defined(_WIN32)
inline ScopedReflectionMode::ScopedReflectionMode(ReflectionMode mode)
: previous_mode_(reflection_mode()) {

@ -260,7 +260,7 @@ class PROTOBUF_EXPORT ThreadSafeArena {
// iOS does not support __thread keyword so we use a custom thread local
// storage class we implemented.
static ThreadCache& thread_cache();
#elif defined(PROTOBUF_USE_DLLS) && defined(_MSC_VER)
#elif defined(PROTOBUF_USE_DLLS) && defined(_WIN32)
// Thread local variables cannot be exposed through MSVC DLL interface but we
// can wrap them in static functions.
static ThreadCache& thread_cache();

Loading…
Cancel
Save