Submit
Path:
~
/
/
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
numpy
/
random
/
File Content:
setup.py
import os import sys from os.path import join from numpy.distutils.system_info import platform_bits from numpy.distutils.msvccompiler import lib_opts_if_msvc def configuration(parent_package='', top_path=None): from numpy.distutils.misc_util import Configuration, get_mathlibs config = Configuration('random', parent_package, top_path) def generate_libraries(ext, build_dir): config_cmd = config.get_config_cmd() libs = get_mathlibs() if sys.platform == 'win32': libs.extend(['Advapi32', 'Kernel32']) ext.libraries.extend(libs) return None # enable unix large file support on 32 bit systems # (64 bit off_t, lseek -> lseek64 etc.) if sys.platform[:3] == 'aix': defs = [('_LARGE_FILES', None)] else: defs = [('_FILE_OFFSET_BITS', '64'), ('_LARGEFILE_SOURCE', '1'), ('_LARGEFILE64_SOURCE', '1')] defs.append(('NPY_NO_DEPRECATED_API', 0)) config.add_subpackage('tests') config.add_data_dir('tests/data') config.add_data_dir('_examples') EXTRA_LINK_ARGS = [] EXTRA_LIBRARIES = ['npyrandom'] if os.name != 'nt': # Math lib EXTRA_LIBRARIES.append('m') # Some bit generators exclude GCC inlining EXTRA_COMPILE_ARGS = ['-U__GNUC_GNU_INLINE__'] if sys.platform == 'cygwin': # Export symbols without __declspec(dllexport) for using by cython. # Using __declspec(dllexport) does not export other necessary symbols # in Cygwin package's Cython environment, making it impossible to # import modules. EXTRA_LINK_ARGS += ['-Wl,--export-all-symbols'] # Use legacy integer variable sizes LEGACY_DEFS = [('NP_RANDOM_LEGACY', '1')] PCG64_DEFS = [] # One can force emulated 128-bit arithmetic if one wants. #PCG64_DEFS += [('PCG_FORCE_EMULATED_128BIT_MATH', '1')] depends = ['__init__.pxd', 'c_distributions.pxd', 'bit_generator.pxd'] # npyrandom - a library like npymath npyrandom_sources = [ 'src/distributions/logfactorial.c', 'src/distributions/distributions.c', 'src/distributions/random_mvhg_count.c', 'src/distributions/random_mvhg_marginals.c', 'src/distributions/random_hypergeometric.c', ] def lib_opts(build_cmd): """ Add flags that depend on the compiler. We can't see which compiler we are using in our scope, because we have not initialized the distutils build command, so use this deferred calculation to run when we are building the library. """ opts = lib_opts_if_msvc(build_cmd) if build_cmd.compiler.compiler_type != 'msvc': # Some bit generators require c99 opts.append('-std=c99') return opts config.add_installed_library('npyrandom', sources=npyrandom_sources, install_dir='lib', build_info={ 'include_dirs' : [], # empty list required for creating npyrandom.h 'extra_compiler_args': [lib_opts], }) for gen in ['mt19937']: # gen.pyx, src/gen/gen.c, src/gen/gen-jump.c config.add_extension(f'_{gen}', sources=[f'_{gen}.c', f'src/{gen}/{gen}.c', f'src/{gen}/{gen}-jump.c'], include_dirs=['.', 'src', join('src', gen)], libraries=EXTRA_LIBRARIES, extra_compile_args=EXTRA_COMPILE_ARGS, extra_link_args=EXTRA_LINK_ARGS, depends=depends + [f'_{gen}.pyx'], define_macros=defs, ) for gen in ['philox', 'pcg64', 'sfc64']: # gen.pyx, src/gen/gen.c _defs = defs + PCG64_DEFS if gen == 'pcg64' else defs config.add_extension(f'_{gen}', sources=[f'_{gen}.c', f'src/{gen}/{gen}.c'], include_dirs=['.', 'src', join('src', gen)], libraries=EXTRA_LIBRARIES, extra_compile_args=EXTRA_COMPILE_ARGS, extra_link_args=EXTRA_LINK_ARGS, depends=depends + [f'_{gen}.pyx', 'bit_generator.pyx', 'bit_generator.pxd'], define_macros=_defs, ) for gen in ['_common', 'bit_generator']: # gen.pyx config.add_extension(gen, sources=[f'{gen}.c'], libraries=EXTRA_LIBRARIES, extra_compile_args=EXTRA_COMPILE_ARGS, extra_link_args=EXTRA_LINK_ARGS, include_dirs=['.', 'src'], depends=depends + [f'{gen}.pyx', f'{gen}.pxd',], define_macros=defs, ) config.add_data_files(f'{gen}.pxd') for gen in ['_generator', '_bounded_integers']: # gen.pyx, src/distributions/distributions.c config.add_extension(gen, sources=[f'{gen}.c'], libraries=EXTRA_LIBRARIES + ['npymath'], extra_compile_args=EXTRA_COMPILE_ARGS, include_dirs=['.', 'src'], extra_link_args=EXTRA_LINK_ARGS, depends=depends + [f'{gen}.pyx'], define_macros=defs, ) config.add_data_files('_bounded_integers.pxd') mtrand_libs = ['m', 'npymath'] if os.name != 'nt' else ['npymath'] config.add_extension('mtrand', sources=['mtrand.c', 'src/legacy/legacy-distributions.c', 'src/distributions/distributions.c', ], include_dirs=['.', 'src', 'src/legacy'], libraries=mtrand_libs, extra_compile_args=EXTRA_COMPILE_ARGS, extra_link_args=EXTRA_LINK_ARGS, depends=depends + ['mtrand.pyx'], define_macros=defs + LEGACY_DEFS, ) config.add_data_files(*depends) config.add_data_files('*.pyi') return config if __name__ == '__main__': from numpy.distutils.core import setup setup(configuration=configuration)
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
__pycache__
---
0755
_examples
---
0755
lib
---
0755
tests
---
0755
__init__.pxd
431 bytes
0644
__init__.py
7506 bytes
0644
__init__.pyi
2143 bytes
0644
_bounded_integers.cpython-311-x86_64-linux-gnu.so
410480 bytes
0755
_bounded_integers.pxd
1669 bytes
0644
_common.cpython-311-x86_64-linux-gnu.so
286816 bytes
0755
_common.pxd
4939 bytes
0644
_generator.cpython-311-x86_64-linux-gnu.so
1008152 bytes
0755
_generator.pyi
22442 bytes
0644
_mt19937.cpython-311-x86_64-linux-gnu.so
115672 bytes
0755
_mt19937.pyi
724 bytes
0644
_pcg64.cpython-311-x86_64-linux-gnu.so
118144 bytes
0755
_pcg64.pyi
1091 bytes
0644
_philox.cpython-311-x86_64-linux-gnu.so
101416 bytes
0755
_philox.pyi
978 bytes
0644
_pickle.py
2318 bytes
0644
_sfc64.cpython-311-x86_64-linux-gnu.so
67384 bytes
0755
_sfc64.pyi
709 bytes
0644
bit_generator.cpython-311-x86_64-linux-gnu.so
232704 bytes
0755
bit_generator.pxd
1007 bytes
0644
bit_generator.pyi
3510 bytes
0644
c_distributions.pxd
6344 bytes
0644
mtrand.cpython-311-x86_64-linux-gnu.so
798376 bytes
0755
mtrand.pyi
19728 bytes
0644
setup.py
6688 bytes
0644
N4ST4R_ID | Naxtarrr