grpcio_tools: setup.py: update libatomic check from top-level setup.py
This commit is contained in:
parent
ad36ff39d3
commit
1024ebeb31
|
|
@ -70,12 +70,22 @@ def check_linker_need_libatomic():
|
|||
"""Test if linker on system needs libatomic."""
|
||||
code_test = (b'#include <atomic>\n' +
|
||||
b'int main() { return std::atomic<int64_t>{}; }')
|
||||
cc_test = subprocess.Popen(['cc', '-x', 'c++', '-std=c++11', '-'],
|
||||
stdin=PIPE,
|
||||
stdout=PIPE,
|
||||
stderr=PIPE)
|
||||
cc_test.communicate(input=code_test)
|
||||
return cc_test.returncode != 0
|
||||
cpp_test = subprocess.Popen(['c++', '-x', 'c++', '-std=c++11', '-'],
|
||||
stdin=PIPE,
|
||||
stdout=PIPE,
|
||||
stderr=PIPE)
|
||||
cpp_test.communicate(input=code_test)
|
||||
if cpp_test.returncode == 0:
|
||||
return False
|
||||
# Double-check to see if -latomic actually can solve the problem.
|
||||
# https://github.com/grpc/grpc/issues/22491
|
||||
cpp_test = subprocess.Popen(
|
||||
['c++', '-x', 'c++', '-std=c++11', '-latomic', '-'],
|
||||
stdin=PIPE,
|
||||
stdout=PIPE,
|
||||
stderr=PIPE)
|
||||
cpp_test.communicate(input=code_test)
|
||||
return cpp_test.returncode == 0
|
||||
|
||||
|
||||
# There are some situations (like on Windows) where CC, CFLAGS, and LDFLAGS are
|
||||
|
|
|
|||
Loading…
Reference in New Issue