def build_module(self, module, module_file, package): orig_content = None if (module == 'build_info' and package == 'netperf_wrapper' and 'install' in self.distribution.command_obj): iobj = self.distribution.command_obj['install'] with open(module_file, 'rb') as module_fp: orig_content = module_fp.read() if iobj.fake_root: prefix = iobj.prefix else: prefix = iobj.install_data with open(module_file, 'w') as module_fp: module_fp.write('# -*- coding: UTF-8 -*-\n\n') module_fp.write("VERSION='%s'\n" % (version_string)) module_fp.write( "DATA_DIR='%s'\n" % (os.path.join(prefix, 'share', 'netperf-wrapper'))) _build_py.build_module(self, module, module_file, package) if orig_content is not None: with open(module_file, 'wb') as module_fp: module_fp.write(orig_content)
def build_module (self, module, module_file, package): _build_py.build_module(self, module, module_file, package) if type(package) is StringType: package = string.split(package, '.') elif type(package) not in (ListType, TupleType): raise TypeError, \ "'package' must be a string (dot-separated), list, or tuple" if ( module == 'settings' and len(package) == 1 and package[0] == 'gourmet' and 'install' in self.distribution.command_obj): outfile = self.get_module_outfile(self.build_lib, package, module) iobj = self.distribution.command_obj['install'] data_dir = iobj.install_data if (iobj.root): data_dir = data_dir[len(iobj.root):] data_dir = os.path.join(data_dir, 'share') # abuse fileinput to replace two lines in bin/gourmet for line in fileinput.input(outfile, inplace = 1): if "data_dir = " in line: line = "data_dir = '%s'\n" % data_dir elif "icon_base = " in line: line = "icon_base = '%s'\n" % \ os.path.join(data_dir, 'icons', 'hicolor') elif "locale_base = " in line: line = "locale_base = '%s'\n" % \ os.path.join(data_dir, 'locale') elif "plugin_base = " in line: line = "plugin_base = ''\n" print line,
def build_module (self, module, module_file, package): orig_content = None if ( module == 'build_info' and package == 'netperf_wrapper' and 'install' in self.distribution.command_obj): iobj = self.distribution.command_obj['install'] with open(module_file, 'rb') as module_fp: orig_content = module_fp.read() if iobj.fake_root: prefix = iobj.prefix print(prefix) else: prefix = iobj.install_data with open(module_file, 'w') as module_fp: module_fp.write('# -*- coding: UTF-8 -*-\n\n') module_fp.write("VERSION='%s'\n"%(version_string)) module_fp.write("DATA_DIR='%s'\n"%( os.path.join(prefix, 'share', 'netperf-wrapper'))) _build_py.build_module(self, module, module_file, package) if orig_content is not None: with open(module_file, 'wb') as module_fp: module_fp.write(orig_content)
def build_module(self, module, module_file, package): cobj = self.distribution.command_obj.get('install') if cobj and package == 'pympler' and module == '__init__': # Modify DATA_PATH to point to the location where distutils # installs the data files. Note: easy_install will place the data # files alongside the code instead (see pympler/__init__.py). data_path = cobj.install_data for line in fileinput.FileInput(module_file, inplace=True): if line.startswith("DATA_PATH = "): line = "DATA_PATH = '%s'\n" % data_path sys.stdout.write(line) build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): if ('%s/%s' % (package, module) == 'gg/build_info'): try: iobj = self.distribution.command_obj['install'] with open(module_file, 'w') as module_fp: module_fp.write( build_info_template % (iobj.prefix, join(iobj.prefix, 'share', PACKAGE), Popen(['git', 'describe'], stdout=PIPE).communicate()[0].strip())) except KeyError: pass _build_py.build_module(self, module, module_file, package)
def build_module (self, module, module_file, package): if ('%s/%s' % (package, module) == 'gg/build_info'): try: iobj = self.distribution.command_obj['install'] with open(module_file, 'w') as module_fp: module_fp.write(build_info_template % ( iobj.prefix, join(iobj.prefix, 'share', PACKAGE), Popen(['git', 'describe'], stdout=PIPE).communicate()[0].strip() )) except KeyError: pass _build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): if (module_file == 'gg/build_info.py'): try: iobj = self.distribution.command_obj['install'] with open(module_file, 'w') as module_fp: module_fp.write(build_info_template.format( prefix=iobj.prefix, datadir=join(iobj.prefix, 'share', PACKAGE), version=(VERSION if root else Popen(('git', 'describe'), stdout=PIPE).communicate()[0].strip()) )) except KeyError: pass _build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): if (module_file == 'gg/build_info.py'): try: iobj = self.distribution.command_obj['install'] with open(module_file, 'w') as module_fp: module_fp.write( build_info_template.format( prefix=iobj.prefix, datadir=join(iobj.prefix, 'share', PACKAGE), version=(VERSION if root else Popen( ('git', 'describe'), stdout=PIPE).communicate()[0].strip()))) except KeyError: pass _build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): if package == 'lsd.config' and 'install' in self.distribution.command_obj: iobj = self.distribution.command_obj['install'] outfile = self.get_module_outfile(self.build_lib, package.split('.'), module) dir = os.path.dirname(outfile) self.mkpath(dir) with file(outfile, 'w') as fp: import textwrap fp.write( textwrap.dedent("""\ # Do not edit. This file is regenerated by LSD's setup.py. data_dir = '{datadir}' bin_dir = '{bindir}' """).format(datadir=os.path.join(iobj.install_data, 'share', 'lsd', 'data'), bindir=iobj.install_scripts)) return (outfile, 1) elif module == 'version' and module_file == 'src/lsd/version.py': # Load the version information from developer module (which gets it # from git), and write out the install module that is git independent. # Store it to a generated file outfile = self.get_module_outfile(self.build_lib, package.split('.'), module) dir = os.path.dirname(outfile) self.mkpath(dir) write_version_file(outfile) return (outfile, 1) else: return _build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): res = build_py.build_module(self, module, module_file, package) if module == 'git' and package == 'PyInstaller.utils': filename = self.get_module_outfile(self.build_lib, package.split('.'), module) _write_git_version_file(filename) return res
def build_module(self, module, module_file, package): build_py.build_module(self, module, module_file, package) if module == '__init__' and '.' not in package: version_line = "__version__ = '{0}'\n".format(__version__) old_init_name = self.get_module_outfile(self.build_lib, (package,), module) new_init_name = old_init_name + '.new' with open(new_init_name, 'w') as new_init: with open(old_init_name) as old_init: for line in old_init: if line.startswith('__version__ ='): new_init.write(version_line) else: new_init.write(line) new_init.flush() os.rename(new_init_name, old_init_name)
def build_module(self, module, module_file, package): build_py.build_module(self, module, module_file, package) print module, module_file, package if module == "__init__" and "." not in package: version_line = "__version__ = '{0}'\n".format(__version__) old_init_name = self.get_module_outfile(self.build_lib, (package,), module) new_init_name = old_init_name + ".new" with open(new_init_name, "w") as new_init: with open(old_init_name) as old_init: for line in old_init: if line.startswith("__version__ ="): new_init.write(version_line) else: new_init.write(line) new_init.flush() os.rename(new_init_name, old_init_name)
def build_module (self, module, module_file, package): if package == 'lsd.config' and 'install' in self.distribution.command_obj: iobj = self.distribution.command_obj['install'] outfile = self.get_module_outfile(self.build_lib, package.split('.'), module) dir = os.path.dirname(outfile) self.mkpath(dir) with file(outfile, 'w') as fp: import textwrap fp.write(textwrap.dedent( """\ # Do not edit. This file is regenerated by LSD's setup.py. data_dir = '{datadir}' bin_dir = '{bindir}' """).format(datadir=os.path.join(iobj.install_data, 'share', 'lsd', 'data'), bindir=iobj.install_scripts)) return (outfile, 1) elif module == 'version' and module_file == 'src/lsd/version.py': # Load the version information from developer module (which gets it # from git), and write out the install module that is git independent. # Store it to a generated file outfile = self.get_module_outfile(self.build_lib, package.split('.'), module) dir = os.path.dirname(outfile) self.mkpath(dir) write_version_file(outfile) return (outfile, 1) else: return _build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): res = build_py.build_module(self, module, module_file, package) if module == 'git' and package == 'PyInstaller.utils': filename = self.get_module_outfile( self.build_lib, package.split('.'), module) _write_git_version_file(filename) return res
def build_module(self, module, module_file, package): build_py.build_module(self, module, module_file, package) print module, module_file, package if module == 'version' and '.' not in package: version_line = "__version__ = '{0}'\n".format(__version__) old_ver_name = self.get_module_outfile(self.build_lib, (package,), module) new_ver_name = old_ver_name + '.new' with open(new_ver_name, 'w') as new_ver: with open(old_ver_name) as old_ver: for line in old_ver: if line.startswith('__version__ ='): new_ver.write(version_line) else: new_ver.write(line) new_ver.flush() os.rename(new_ver_name, old_ver_name)
def build_module(self, module, module_file, package): python3 = sys.version_info >= (3,) exclude_pattern = re.compile( 'wsgiserver2|ssl_pyopenssl' if python3 else 'wsgiserver3' ) if exclude_pattern.match(module): return # skip it return build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): cobj = self.distribution.command_obj.get('install') if cobj and package == 'pympler' and module == '__init__': # Modify DATA_PATH to point to the location where distutils # installs the data files. Note: easy_install will place the data # files alongside the code instead (see pympler/__init__.py). data_path = cobj.install_data for line in fileinput.FileInput(module_file, inplace=True): if line.startswith("DATA_PATH = "): line = "DATA_PATH = '%s'\n" % data_path sys.stdout.write(line) # TODO: Cannot build bottle2 at Python3 and vice versa. if sys.hexversion >= 0x3000000 and module == 'bottle2': return elif sys.hexversion < 0x3000000 and module == 'bottle3': return build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): python3 = sys.version_info >= (3, ) if python3: exclude_pattern = re.compile('ssl_pyopenssl') else: exclude_pattern = re.compile('xxx') if exclude_pattern.match(module): return # skip it return build_py.build_module(self, module, module_file, package)
def build_module (self, module, module_file, package): if isinstance(package, str): package = package.split('.') elif not isinstance(package, (list, tuple)): raise TypeError( "'package' must be a string (dot-separated), list, or tuple") if ( module == 'build_info' and len(package) == 1 and package[0] == 'mwdb'): iobj = self.distribution.command_obj['install'] with open(module_file, 'w') as module_fp: module_fp.write('# -*- coding: UTF-8 -*-\n\n') module_fp.write("DATA_DIR = '%s'\n"%( os.path.join(iobj.install_data, 'share'))) module_fp.write("LIB_DIR = '%s'\n"%(iobj.install_lib)) module_fp.write("SCRIPT_DIR = '%s'\n"%(iobj.install_scripts)) _build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): _build_py.build_module(self, module, module_file, package) if type(package) is StringType: package = string.split(package, '.') elif type(package) not in (ListType, TupleType): raise TypeError, \ "'package' must be a string (dot-separated), list, or tuple" if (module == 'settings' and len(package) == 1 and package[0] == 'gourmet' and 'install' in self.distribution.command_obj): outfile = self.get_module_outfile(self.build_lib, package, module) iobj = self.distribution.command_obj['install'] lib_dir = iobj.install_lib base = iobj.install_data if (iobj.root): lib_dir = lib_dir[len(iobj.root):] base = base[len(iobj.root):] base = os.path.join(base, 'share') data_dir = os.path.join(base, 'gourmet') # abuse fileinput to replace two lines in bin/gourmet for line in fileinput.input(outfile, inplace=1): if "base_dir = " in line: line = "base_dir = '%s'\n" % base elif "lib_dir = " in line: line = "lib_dir = '%s'\n" % lib_dir elif "data_dir = " in line: line = "data_dir = '%s'\n" % data_dir elif "doc_base = " in line: line = "doc_base = '%s'\n" % \ os.path.join(base, 'doc', 'gourmet') elif "icon_base = " in line: line = "icon_base = '%s'\n" % \ os.path.join(base, 'icons', 'hicolor') elif "locale_base = " in line: line = "locale_base = '%s'\n" % \ os.path.join(base, 'locale') elif "plugin_base = " in line: line = "plugin_base = data_dir\n" print line,
def build_module(self, module, module_file, package): python3 = sys.version_info >= (3,) if python3: exclude_pattern = re.compile('ssl_pyopenssl|' '_cpcompat_subprocess') else: exclude_pattern = re.compile('xxx') if exclude_pattern.match(module): return # skip it return build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): python3 = sys.version_info >= (3,) if python3: exclude_pattern = re.compile('wsgiserver2|ssl_pyopenssl|' '_cpcompat_subprocess') else: exclude_pattern = re.compile('wsgiserver3') if exclude_pattern.match(module): return # skip it return build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): "Extend build_module by modification files" # do original function retval = _build_py.build_module(self, module, module_file, package) # if type(package) is StringType: if isinstance(package, str): package = string.split(package, ".") outfile = self.get_module_outfile(self.build_lib, package, module) # extend by modify file if is defined self.modify_file("build_py", module_file, os.path.dirname(outfile)) return retval
def build_module(self, module, module_file, package): "Extend build_module by modification files" # do original function retval = _build_py.build_module(self, module, module_file, package) #if type(package) is StringType: if isinstance(package, str): package = string.split(package, '.') outfile = self.get_module_outfile(self.build_lib, package, module) # extend by modify file if is defined self.modify_file("build_py", module_file, os.path.dirname(outfile)) return retval
def build_module(self, module, module_file, package): if type(package) is StringType: package = package.split(".") elif type(package) not in (ListType, TupleType): raise TypeError, \ "'package' must be a string (dot-separated), list, or tuple" if module_file.endswith(".g"): outfile = self.get_module_outfile(self.build_lib, package, module) novelwriting.yapps.generate(module_file, outfile) self.announce("building %s -> %s" % (module_file, outfile)) else: return build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): result = build_py.build_module(self, module, module_file, package) if module_file == os.path.join("src", "netzob", "NetzobResources.py"): # Re-compute the path to the output file if isinstance(package, str): package = package.split(".") elif not isinstance(package, (list, tuple)): raise TypeError("'package' must be a string (dot-separated), list, or tuple") outfile = self.get_module_outfile(self.build_lib, package, module) if self.getBID() is not None: self.updateFileWithBID(outfile, self.getBID()) return result
def build_module(self, module, module_file, package): orig_outfile, _ = build_py.build_module(self, module, module_file, package) version_line = "__version__ = '{0}'\n".format(__version__) new_outfile = orig_outfile + ".new" with open(new_outfile, "w") as new_fh: with open(orig_outfile) as orig_fh: for line in orig_fh: if line.startswith("__version__ ="): new_fh.write(version_line) else: new_fh.write(line) new_fh.flush() os.rename(new_outfile, orig_outfile)
def build_module(self, module, module_file, package): real_build_py.build_module(self, module, module_file, package) # append version to every module package = package.split('.') outfile = self.get_module_outfile(self.build_lib, package, module) with open(outfile, 'r+U') as module: verstr = "__version__ = '%s'" % (ver) try_and_seek(module, -LOOK_BACK) # do we have a version string? line = module.read() idx = line.rfind('\n__version__') if idx != -1: # is it the right version string? idx = -len(line) + idx try_and_seek(module, idx) line = module.read().strip() if line == verstr: # all good in the hood return else: try_and_seek(module, idx) module.truncate() else: # no version string found pass # write the version string log.info('writing version: %s' % outfile) try_and_seek(module, 0) print >> module print >> module, verstr
def build_module(self, module, module_file, package): orig_outfile, _ = build_py.build_module(self, module, module_file, package) version_line = "__version__ = '{0}'\n".format(__version__) new_outfile = orig_outfile + '.new' with open(new_outfile, 'w') as new_fh: with open(orig_outfile) as orig_fh: for line in orig_fh: if line.startswith('__version__ ='): new_fh.write(version_line) else: new_fh.write(line) new_fh.flush() os.rename(new_outfile, orig_outfile)
def build_module(self, module, module_file, package): orig_outfile, _ = build_py.build_module(self, module, module_file, package) if module == 'eucameta' and package == 'sos.plugins': version_line = "__version__ = '{0}'\n".format(__version__) new_outfile = orig_outfile + '.new' with open(new_outfile, 'w') as new_fh: with open(orig_outfile) as orig_fh: for line in orig_fh: if line.startswith('__version__ ='): new_fh.write(version_line) else: new_fh.write(line) new_fh.flush() os.rename(new_outfile, orig_outfile)
def build_module(self, module, module_file, package): result = build_py.build_module(self, module, module_file, package) if module_file == os.path.join("src", "netzob", "NetzobResources.py"): # Re-compute the path to the output file if isinstance(package, str): package = package.split('.') elif not isinstance(package, (list, tuple)): raise TypeError( "'package' must be a string (dot-separated), list, or tuple" ) outfile = self.get_module_outfile(self.build_lib, package, module) if self.getBID() is not None: self.updateFileWithBID(outfile, self.getBID()) return result
def build_module(self, module, module_file, package): outfile, copied = _build_py.build_module(self, module, module_file, package) if copied: self.__updated_files.append(outfile) return outfile, copied
def build_module(self, module, module_file, package): res = build_py.build_module(self, module, module_file, package) if res[1]: # file was copied self.updated_files.append(res[0]) return res
def build_module(self, module, module_file, package): if sys.version_info >= (3,) and module == '_compat2x': return return build_py.build_module(self, module, module_file, package)
def build_module(self, module, module_file, package): if sys.version_info >= (3, ) and module == '_compat2x': return return build_py.build_module(self, module, module_file, package)