Current Path: > > usr > lib > python3.8 > site-packages > > setuptools > command > >
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__pycache__ | Directory | - | - | |
__init__.py | File | 594 bytes | April 21 2022 12:45:22. | |
alias.py | File | 2426 bytes | April 21 2022 12:45:22. | |
bdist_egg.py | File | 18185 bytes | April 21 2022 12:45:22. | |
bdist_rpm.py | File | 1508 bytes | April 21 2022 12:45:22. | |
bdist_wininst.py | File | 637 bytes | April 21 2022 12:45:22. | |
build_clib.py | File | 4484 bytes | April 21 2022 12:45:22. | |
build_ext.py | File | 13019 bytes | April 21 2022 12:45:22. | |
build_py.py | File | 9596 bytes | April 21 2022 12:45:22. | |
develop.py | File | 8184 bytes | April 21 2022 12:45:22. | |
dist_info.py | File | 960 bytes | April 21 2022 12:45:22. | |
easy_install.py | File | 87453 bytes | April 21 2022 12:45:22. | |
egg_info.py | File | 25570 bytes | April 21 2022 12:45:22. | |
install.py | File | 4683 bytes | April 21 2022 12:45:22. | |
install_egg_info.py | File | 2203 bytes | April 21 2022 12:45:22. | |
install_lib.py | File | 3862 bytes | April 21 2022 12:45:22. | |
install_scripts.py | File | 2439 bytes | April 21 2022 12:45:22. | |
launcher manifest.xml | File | 628 bytes | April 21 2022 12:45:22. | |
py36compat.py | File | 4986 bytes | April 21 2022 12:45:22. | |
register.py | File | 534 bytes | April 21 2022 12:45:22. | |
rotate.py | File | 2164 bytes | April 21 2022 12:45:22. | |
saveopts.py | File | 658 bytes | April 21 2022 12:45:22. | |
sdist.py | File | 7388 bytes | April 21 2022 12:45:22. | |
setopt.py | File | 5085 bytes | April 21 2022 12:45:22. | |
test.py | File | 9602 bytes | April 21 2022 12:45:22. | |
upload.py | File | 6811 bytes | April 21 2022 12:45:22. | |
upload_docs.py | File | 7311 bytes | April 21 2022 12:45:22. |
import distutils.command.build_clib as orig from distutils.errors import DistutilsSetupError from distutils import log from setuptools.dep_util import newer_pairwise_group class build_clib(orig.build_clib): """ Override the default build_clib behaviour to do the following: 1. Implement a rudimentary timestamp-based dependency system so 'compile()' doesn't run every time. 2. Add more keys to the 'build_info' dictionary: * obj_deps - specify dependencies for each object compiled. this should be a dictionary mapping a key with the source filename to a list of dependencies. Use an empty string for global dependencies. * cflags - specify a list of additional flags to pass to the compiler. """ def build_libraries(self, libraries): for (lib_name, build_info) in libraries: sources = build_info.get('sources') if sources is None or not isinstance(sources, (list, tuple)): raise DistutilsSetupError( "in 'libraries' option (library '%s'), " "'sources' must be present and must be " "a list of source filenames" % lib_name) sources = list(sources) log.info("building '%s' library", lib_name) # Make sure everything is the correct type. # obj_deps should be a dictionary of keys as sources # and a list/tuple of files that are its dependencies. obj_deps = build_info.get('obj_deps', dict()) if not isinstance(obj_deps, dict): raise DistutilsSetupError( "in 'libraries' option (library '%s'), " "'obj_deps' must be a dictionary of " "type 'source: list'" % lib_name) dependencies = [] # Get the global dependencies that are specified by the '' key. # These will go into every source's dependency list. global_deps = obj_deps.get('', list()) if not isinstance(global_deps, (list, tuple)): raise DistutilsSetupError( "in 'libraries' option (library '%s'), " "'obj_deps' must be a dictionary of " "type 'source: list'" % lib_name) # Build the list to be used by newer_pairwise_group # each source will be auto-added to its dependencies. for source in sources: src_deps = [source] src_deps.extend(global_deps) extra_deps = obj_deps.get(source, list()) if not isinstance(extra_deps, (list, tuple)): raise DistutilsSetupError( "in 'libraries' option (library '%s'), " "'obj_deps' must be a dictionary of " "type 'source: list'" % lib_name) src_deps.extend(extra_deps) dependencies.append(src_deps) expected_objects = self.compiler.object_filenames( sources, output_dir=self.build_temp ) if newer_pairwise_group(dependencies, expected_objects) != ([], []): # First, compile the source code to object files in the library # directory. (This should probably change to putting object # files in a temporary build directory.) macros = build_info.get('macros') include_dirs = build_info.get('include_dirs') cflags = build_info.get('cflags') objects = self.compiler.compile( sources, output_dir=self.build_temp, macros=macros, include_dirs=include_dirs, extra_postargs=cflags, debug=self.debug ) # Now "link" the object files together into a static library. # (On Unix at least, this isn't really linking -- it just # builds an archive. Whatever.) self.compiler.create_static_lib( expected_objects, lib_name, output_dir=self.build_clib, debug=self.debug )
SILENT KILLER Tool