From 117f7716414bb0826ad4b78d9b27f30e6f8e2e24 Mon Sep 17 00:00:00 2001 From: Bo Yang Date: Wed, 21 Dec 2016 16:50:56 -0800 Subject: Update _GNUC_VER to use the correct implementation of atomic operation on Mac. --- python/setup.py | 7 +++++++ src/google/protobuf/stubs/atomicops.h | 1 - 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py index ef1a31b4..1683674e 100755 --- a/python/setup.py +++ b/python/setup.py @@ -5,6 +5,7 @@ import glob import os import subprocess import sys +import platform # We must use setuptools, not distutils, because we need to use the # namespace_packages option for the "google" package. @@ -189,6 +190,12 @@ if __name__ == '__main__': if "clang" in os.popen('$CC --version 2> /dev/null').read(): extra_compile_args.append('-Wno-shorten-64-to-32') + v, _, _ = platform.mac_ver() + if not v: + v = float('.'.join(v.split('.')[:2])) + if v >= 10.12: + extra_compile_args=['-std=c++11'], + if warnings_as_errors in sys.argv: extra_compile_args.append('-Werror') sys.argv.remove(warnings_as_errors) diff --git a/src/google/protobuf/stubs/atomicops.h b/src/google/protobuf/stubs/atomicops.h index eacec663..c25492f3 100644 --- a/src/google/protobuf/stubs/atomicops.h +++ b/src/google/protobuf/stubs/atomicops.h @@ -196,7 +196,6 @@ Atomic64 Release_Load(volatile const Atomic64* ptr); // Apple. #elif defined(GOOGLE_PROTOBUF_OS_APPLE) -#pragma message(_GNUC_VER) #if __has_feature(cxx_atomic) || _GNUC_VER >= 407 #include #else // __has_feature(cxx_atomic) || _GNUC_VER >= 407 -- cgit v1.2.3