diff options
Diffstat (limited to 'cvs2svn_lib/main.py')
-rw-r--r-- | cvs2svn_lib/main.py | 117 |
1 files changed, 0 insertions, 117 deletions
diff --git a/cvs2svn_lib/main.py b/cvs2svn_lib/main.py deleted file mode 100644 index 492c49e..0000000 --- a/cvs2svn_lib/main.py +++ /dev/null @@ -1,117 +0,0 @@ -#!/usr/bin/env python2 -# (Be in -*- python -*- mode.) -# -# ==================================================================== -# Copyright (c) 2000-2009 CollabNet. All rights reserved. -# -# This software is licensed as described in the file COPYING, which -# you should have received as part of this distribution. The terms -# are also available at http://subversion.tigris.org/license-1.html. -# If newer versions of this license are posted there, you may use a -# newer version instead, at your option. -# -# This software consists of voluntary contributions made by many -# individuals. For exact contribution history, see the revision -# history and logs, available at http://cvs2svn.tigris.org/. -# ==================================================================== - -import os -import errno -import gc - -try: - # Try to get access to a bunch of encodings for use with --encoding. - # See http://cjkpython.i18n.org/ for details. - import iconv_codec -except ImportError: - pass - -from cvs2svn_lib.common import FatalError -from cvs2svn_lib.svn_run_options import SVNRunOptions -from cvs2svn_lib.git_run_options import GitRunOptions -from cvs2svn_lib.bzr_run_options import BzrRunOptions -from cvs2svn_lib.context import Ctx -from cvs2svn_lib.pass_manager import PassManager -from cvs2svn_lib.passes import passes - - -def main(progname, run_options, pass_manager): - # Disable garbage collection, as we try not to create any circular - # data structures: - gc.disable() - - # Convenience var, so we don't have to keep instantiating this Borg. - ctx = Ctx() - - # Make sure the tmp directory exists. Note that we don't check if - # it's empty -- we want to be able to use, for example, "." to hold - # tempfiles. But if we *did* want check if it were empty, we'd do - # something like os.stat(ctx.tmpdir)[stat.ST_NLINK], of course :-). - if not os.path.exists(ctx.tmpdir): - erase_tmpdir = True - os.mkdir(ctx.tmpdir) - elif not os.path.isdir(ctx.tmpdir): - raise FatalError( - "cvs2svn tried to use '%s' for temporary files, but that path\n" - " exists and is not a directory. Please make it be a directory,\n" - " or specify some other directory for temporary files." - % (ctx.tmpdir,)) - else: - erase_tmpdir = False - - # But do lock the tmpdir, to avoid process clash. - try: - os.mkdir(os.path.join(ctx.tmpdir, 'cvs2svn.lock')) - except OSError, e: - if e.errno == errno.EACCES: - raise FatalError("Permission denied:" - + " No write access to directory '%s'." % ctx.tmpdir) - if e.errno == errno.EEXIST: - raise FatalError( - "cvs2svn is using directory '%s' for temporary files, but\n" - " subdirectory '%s/cvs2svn.lock' exists, indicating that another\n" - " cvs2svn process is currently using '%s' as its temporary\n" - " workspace. If you are certain that is not the case,\n" - " then remove the '%s/cvs2svn.lock' subdirectory." - % (ctx.tmpdir, ctx.tmpdir, ctx.tmpdir, ctx.tmpdir,)) - raise - - try: - if run_options.profiling: - import hotshot - prof = hotshot.Profile('cvs2svn.hotshot') - prof.runcall(pass_manager.run, run_options) - prof.close() - else: - pass_manager.run(run_options) - finally: - try: - os.rmdir(os.path.join(ctx.tmpdir, 'cvs2svn.lock')) - except: - pass - - if erase_tmpdir: - try: - os.rmdir(ctx.tmpdir) - except: - pass - - -def svn_main(progname, cmd_args): - pass_manager = PassManager(passes) - run_options = SVNRunOptions(progname, cmd_args, pass_manager) - main(progname, run_options, pass_manager) - - -def git_main(progname, cmd_args): - pass_manager = PassManager(passes) - run_options = GitRunOptions(progname, cmd_args, pass_manager) - main(progname, run_options, pass_manager) - - -def bzr_main(progname, cmd_args): - pass_manager = PassManager(passes) - run_options = BzrRunOptions(progname, cmd_args, pass_manager) - main(progname, run_options, pass_manager) - - |