def make_elementtree(maker, log): elementtree_dirs = [ xpath("src/elementtree"), xpath("src/cElementTree"), xpath("src/ciElementTree") ] for src_dir in elementtree_dirs: # Distutils' --install-data doesn't seem to NOT install default.css # to the lib dir without this hack. if cfg.komodo_cfg.buildType == "debug": debug_flags = "--debug" else: debug_flags = "" if sys.platform == "darwin": os.environ["CFLAGS"] = os.environ.get("CFLAGS", "").replace( "-fvisibility=hidden", "") + " -arch x86_64" os.environ["CXXFLAGS"] = os.environ.get("CXXFLAGS", "").replace( "-fvisibility=hidden", "") + " -arch x86_64" _run_in_dir(" ".join([cfg.python, "setup.py", "build", debug_flags]), src_dir, logstream=log.info) _run_in_dir(cfg.python + " setup.py install --skip-build --prefix=bitbucket " "--install-data=bitbucket --install-scripts=bitbucket " "--install-lib=%s" % abspath("lib"), src_dir, logstream=log.info)
def make_src_syck(maker, log): pattern = "syck-*.tar.gz" candidates = [] for src_repo in cfg.src_repositories: candidates += glob(join(src_repo, pattern)) if not candidates: raise MakeError("cannot find Syck source (%s) in source " "repositories: '%s'" % (pattern, "', '".join(cfg.src_repositories))) candidates.sort() pkg_path = abspath(candidates[-1]) pkg_name = basename(pkg_path)[:-len(".tar.gz")] _run_in_dir("tar xzf %s" % pkg_path, "src", logstream=log.info) _mv(xpath("src", pkg_name), xpath("src/syck"), logstream=log.info)
def make_syck(maker, log): src_dir = xpath("src/syck") _run_in_dir("./configure", src_dir, logstream=log.info) _run_in_dir("make", src_dir, logstream=log.info) _run_in_dir(cfg.python+" setup.py install --install-lib=%s" % abspath("lib"), src_dir/"ext/python", logstream=log.info)
def make_src_silvercity(maker, log): METHOD = "komodo" # one of "komodo" or "tarball" if METHOD == "komodo": ko_silvercity_dir = join(cfg.komodo_src, "src", "silvercity") if not isdir(ko_silvercity_dir): raise MakeError("cannot find Komodo silvercity source dir: '%s'" % ko_silvercity_dir) assert ' ' not in ko_silvercity_dir dest = join("src", "SilverCity") _cp(ko_silvercity_dir, dest, logstream=log.info) if sys.platform == "win32": for dirpath, dirnames, filenames in os.walk(dest): for filename in filenames: _run("attrib -R %s" % join(dirpath, filename), logstream=log.info) else: _run("chmod -R ug+w %s" % dest, logstream=log.info) elif METHOD == "tarball": pattern = "SilverCity-*.tar.gz" candidates = [] for src_repo in cfg.src_repositories: candidates += glob(join(src_repo, pattern)) if not candidates: raise MakeError("cannot find SilverCity source (%s) in source " "repositories: '%s'" % (pattern, "', '".join(cfg.src_repositories))) candidates.sort() pkg_path = abspath(candidates[-1]) pkg_name = basename(pkg_path)[:-len(".tar.gz")] _run_in_dir("tar xzf %s" % pkg_path, "src", logstream=log.info) _mv(xpath("src", pkg_name), xpath("src/SilverCity"), logstream=log.info) for dirname, dirs, files in os.walk("src/SilverCity"): for file in files: eol.convert_path_eol(join(dirname, file), eol.NATIVE, log=log) # Patch it. #XXX Use my patchtool thing. for patchfile in glob("src/patches/silvercity-*.patch"): _run_in_dir("patch -p0 < %s" % abspath(patchfile), "src", logstream=log.info)
def make_elementtree(maker, log): elementtree_dirs = [xpath("src/elementtree"), xpath("src/cElementTree"), xpath("src/ciElementTree")] for src_dir in elementtree_dirs: # Distutils' --install-data doesn't seem to NOT install default.css # to the lib dir without this hack. if cfg.komodo_cfg.buildType == "debug": debug_flags = "--debug" else: debug_flags = "" if sys.platform == "darwin": os.environ["CFLAGS"] = os.environ.get("CFLAGS", "").replace("-fvisibility=hidden", "") + " -arch x86_64" os.environ["CXXFLAGS"] = os.environ.get("CXXFLAGS", "").replace("-fvisibility=hidden", "") + " -arch x86_64" _run_in_dir(" ".join([cfg.python, "setup.py", "build", debug_flags]), src_dir, logstream=log.info) _run_in_dir( cfg.python + " setup.py install --skip-build --prefix=bitbucket " "--install-data=bitbucket --install-scripts=bitbucket " "--install-lib=%s" % abspath("lib"), src_dir, logstream=log.info, )
def make_silvercity(maker, log): src_dir = xpath("src/SilverCity") # Regenerate ScintillaConstants.py for new scintilla sources. _run_in_dir(cfg.python+" PySilverCity/Src/write_scintilla.py ../scintilla/include ../scintilla/include/Scintilla.iface PySilverCity/SilverCity/ScintillaConstants.py", src_dir, logstream=log.info) # Distutils' --install-data doesn't seem to NOT install default.css # to the lib dir without this hack. _run_in_dir(cfg.python+" setup.py install --prefix=bitbucket " "--install-data=bitbucket --install-scripts=bitbucket " "--install-lib=%s" % abspath("lib"), src_dir, logstream=log.info)