diff options
author | olegts <olegts@yandex-team.ru> | 2022-02-10 16:48:23 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:48:23 +0300 |
commit | 5eefa17021221fd267f1dd5f9d63d2493d131a8a (patch) | |
tree | 5d5cb817648f650d76cf1076100726fd9b8448e8 /contrib/python/cryptography/_cffi_src/utils.py | |
parent | 30983fb2586f6904aaf6a5d6ef2b445cbaec1f44 (diff) | |
download | ydb-5eefa17021221fd267f1dd5f9d63d2493d131a8a.tar.gz |
Restoring authorship annotation for <olegts@yandex-team.ru>. Commit 2 of 2.
Diffstat (limited to 'contrib/python/cryptography/_cffi_src/utils.py')
-rw-r--r-- | contrib/python/cryptography/_cffi_src/utils.py | 148 |
1 files changed, 74 insertions, 74 deletions
diff --git a/contrib/python/cryptography/_cffi_src/utils.py b/contrib/python/cryptography/_cffi_src/utils.py index 21ebf8a467..56745a3e5b 100644 --- a/contrib/python/cryptography/_cffi_src/utils.py +++ b/contrib/python/cryptography/_cffi_src/utils.py @@ -1,17 +1,17 @@ -# This file is dual licensed under the terms of the Apache License, Version -# 2.0, and the BSD License. See the LICENSE file in the root of this repository -# for complete details. - -from __future__ import absolute_import, division, print_function - +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import absolute_import, division, print_function + import os -import sys -from distutils.ccompiler import new_compiler -from distutils.dist import Distribution - -from cffi import FFI - - +import sys +from distutils.ccompiler import new_compiler +from distutils.dist import Distribution + +from cffi import FFI + + # Load the cryptography __about__ to get the current package version base_src = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) about = {} @@ -27,42 +27,42 @@ def build_ffi_for_binding( extra_compile_args=[], extra_link_args=[], ): - """ - Modules listed in ``modules`` should have the following attributes: - - * ``INCLUDES``: A string containing C includes. - * ``TYPES``: A string containing C declarations for types. + """ + Modules listed in ``modules`` should have the following attributes: + + * ``INCLUDES``: A string containing C includes. + * ``TYPES``: A string containing C declarations for types. * ``FUNCTIONS``: A string containing C declarations for functions & macros. - * ``CUSTOMIZATIONS``: A string containing arbitrary top-level C code, this - can be used to do things like test for a define and provide an - alternate implementation based on that. - """ - types = [] - includes = [] - functions = [] - customizations = [] - for name in modules: - __import__(module_prefix + name) - module = sys.modules[module_prefix + name] - - types.append(module.TYPES) - functions.append(module.FUNCTIONS) - includes.append(module.INCLUDES) - customizations.append(module.CUSTOMIZATIONS) - + * ``CUSTOMIZATIONS``: A string containing arbitrary top-level C code, this + can be used to do things like test for a define and provide an + alternate implementation based on that. + """ + types = [] + includes = [] + functions = [] + customizations = [] + for name in modules: + __import__(module_prefix + name) + module = sys.modules[module_prefix + name] + + types.append(module.TYPES) + functions.append(module.FUNCTIONS) + includes.append(module.INCLUDES) + customizations.append(module.CUSTOMIZATIONS) + verify_source = "\n".join(includes + customizations) - ffi = build_ffi( - module_name, + ffi = build_ffi( + module_name, cdef_source="\n".join(types + functions), - verify_source=verify_source, - libraries=libraries, - extra_compile_args=extra_compile_args, - extra_link_args=extra_link_args, - ) - - return ffi - - + verify_source=verify_source, + libraries=libraries, + extra_compile_args=extra_compile_args, + extra_link_args=extra_link_args, + ) + + return ffi + + def build_ffi( module_name, cdef_source, @@ -71,40 +71,40 @@ def build_ffi( extra_compile_args=[], extra_link_args=[], ): - ffi = FFI() + ffi = FFI() # Always add the CRYPTOGRAPHY_PACKAGE_VERSION to the shared object cdef_source += "\nstatic const char *const CRYPTOGRAPHY_PACKAGE_VERSION;" verify_source += '\n#define CRYPTOGRAPHY_PACKAGE_VERSION "{}"'.format( about["__version__"] ) - ffi.cdef(cdef_source) - ffi.set_source( - module_name, - verify_source, - libraries=libraries, - extra_compile_args=extra_compile_args, - extra_link_args=extra_link_args, - ) - return ffi - - -def extra_link_args(compiler_type): + ffi.cdef(cdef_source) + ffi.set_source( + module_name, + verify_source, + libraries=libraries, + extra_compile_args=extra_compile_args, + extra_link_args=extra_link_args, + ) + return ffi + + +def extra_link_args(compiler_type): if compiler_type == "msvc": - # Enable NX and ASLR for Windows builds on MSVC. These are enabled by - # default on Python 3.3+ but not on 2.x. + # Enable NX and ASLR for Windows builds on MSVC. These are enabled by + # default on Python 3.3+ but not on 2.x. return ["/NXCOMPAT", "/DYNAMICBASE"] - else: - return [] - - -def compiler_type(): - """ - Gets the compiler type from distutils. On Windows with MSVC it will be + else: + return [] + + +def compiler_type(): + """ + Gets the compiler type from distutils. On Windows with MSVC it will be "msvc". On macOS and linux it is "unix". - """ - dist = Distribution() - dist.parse_config_files() + """ + dist = Distribution() + dist.parse_config_files() cmd = dist.get_command_obj("build") - cmd.ensure_finalized() - compiler = new_compiler(compiler=cmd.compiler) - return compiler.compiler_type + cmd.ensure_finalized() + compiler = new_compiler(compiler=cmd.compiler) + return compiler.compiler_type |