GCC allows this, but notably clang does not. Other systems,
like FreeBSD and some Linux distros ship with clang as default
compiler. While here, switch the approach to filtering out std
flag since the make workaround relies on GNU make syntax and
'make' binary could be bmake and/or gmake could be absent.
The idea to filter the flags was taken from an answer to this
Stack Overflow question:
https://stackoverflow.com/questions/15527611/how-do-i-specify-different-compiler-flags-in-distutils-for-just-one-python-c-ext
* Use templates instead of generating them every time
* Theme changed
* Add grpc_* modules
* APIs grouped
* No documentation for class members without docstring
* Add docstring for status code
Before, Cython would *need* to be imported immediately if generated
files did not already exist. Now, missing generated files will trigger a
`setup_requires` inclusion of Cython and defer cythonization until
extension build-time. If cythonization was specified via environment
variable and setup could not find Cython, the extensions are poisoned
instead of blocking non-extension commands from running.
Notable Changes:
-Convert all str types to byte types at cython layer (ascii encoding)
-Use six for packages that have different names in Python2/Python3
-By default, unit tests are compiled/run in Python2.7 and Python3.4
-Ensure MACOSX_BUILD_TARGET is at least 10.7
The custom gRPC bdist command depends on numerous undocumented and
private behaviors of setuptools, wheel, distutils, etc. One such is the
ordering of generated distribution targets. We paper over this under the
assumption that the command will only be useful for gRPC devs, and
document with a command description a contractual obligation of users of
the command.