diff options
author | Greg Ward <gward@python.net> | 2000-05-30 02:02:14 (GMT) |
---|---|---|
committer | Greg Ward <gward@python.net> | 2000-05-30 02:02:14 (GMT) |
commit | c1cb0493f89b7b9dcf2e84e367bd1da8594d9e9d (patch) | |
tree | e7dc7bc3fc4e3f0f37b62f4563cde6bfe695854d | |
parent | d151711e66d1077669025b3fda5616bf31935538 (diff) | |
download | cpython-c1cb0493f89b7b9dcf2e84e367bd1da8594d9e9d.zip cpython-c1cb0493f89b7b9dcf2e84e367bd1da8594d9e9d.tar.gz cpython-c1cb0493f89b7b9dcf2e84e367bd1da8594d9e9d.tar.bz2 |
Moved the CCompiler exceptions here, to avoid having to import ccompiler.py
just to get a little exception class.
No more string-based exceptions.
-rw-r--r-- | Lib/distutils/errors.py | 157 |
1 files changed, 78 insertions, 79 deletions
diff --git a/Lib/distutils/errors.py b/Lib/distutils/errors.py index d66043a..1617056 100644 --- a/Lib/distutils/errors.py +++ b/Lib/distutils/errors.py @@ -12,82 +12,81 @@ symbols whose names start with "Distutils" and end with "Error".""" __revision__ = "$Id$" -import types - -if type (RuntimeError) is types.ClassType: - - class DistutilsError (Exception): - """The root of all Distutils evil.""" - pass - - class DistutilsModuleError (DistutilsError): - """Unable to load an expected module, or to find an expected class - within some module (in particular, command modules and classes).""" - pass - - class DistutilsClassError (DistutilsError): - """Some command class (or possibly distribution class, if anyone - feels a need to subclass Distribution) is found not to be holding - up its end of the bargain, ie. implementing some part of the - "command "interface.""" - pass - - class DistutilsGetoptError (DistutilsError): - """The option table provided to 'fancy_getopt()' is bogus.""" - pass - - class DistutilsArgError (DistutilsError): - """Raised by fancy_getopt in response to getopt.error -- ie. an - error in the command line usage.""" - pass - - class DistutilsFileError (DistutilsError): - """Any problems in the filesystem: expected file not found, etc. - Typically this is for problems that we detect before IOError or - OSError could be raised.""" - pass - - class DistutilsOptionError (DistutilsError): - """Syntactic/semantic errors in command options, such as use of - mutually conflicting options, or inconsistent options, - badly-spelled values, etc. No distinction is made between option - values originating in the setup script, the command line, config - files, or what-have-you -- but if we *know* something originated in - the setup script, we'll raise DistutilsSetupError instead.""" - pass - - class DistutilsSetupError (DistutilsError): - """For errors that can be definitely blamed on the setup script, - such as invalid keyword arguments to 'setup()'.""" - pass - - class DistutilsPlatformError (DistutilsError): - """We don't know how to do something on the current platform (but - we do know how to do it on some platform) -- eg. trying to compile - C files on a platform not supported by a CCompiler subclass.""" - pass - - class DistutilsExecError (DistutilsError): - """Any problems executing an external program (such as the C - compiler, when compiling C files).""" - pass - - class DistutilsInternalError (DistutilsError): - """Internal inconsistencies or impossibilities (obviously, this - should never be seen if the code is working!).""" - pass - -# String-based exceptions -else: - DistutilsError = 'DistutilsError' - DistutilsModuleError = 'DistutilsModuleError' - DistutilsClassError = 'DistutilsClassError' - DistutilsGetoptError = 'DistutilsGetoptError' - DistutilsArgError = 'DistutilsArgError' - DistutilsFileError = 'DistutilsFileError' - DistutilsOptionError = 'DistutilsOptionError' - DistutilsPlatformError = 'DistutilsPlatformError' - DistutilsExecError = 'DistutilsExecError' - DistutilsInternalError = 'DistutilsInternalError' - -del types +class DistutilsError (Exception): + """The root of all Distutils evil.""" + pass + +class DistutilsModuleError (DistutilsError): + """Unable to load an expected module, or to find an expected class + within some module (in particular, command modules and classes).""" + pass + +class DistutilsClassError (DistutilsError): + """Some command class (or possibly distribution class, if anyone + feels a need to subclass Distribution) is found not to be holding + up its end of the bargain, ie. implementing some part of the + "command "interface.""" + pass + +class DistutilsGetoptError (DistutilsError): + """The option table provided to 'fancy_getopt()' is bogus.""" + pass + +class DistutilsArgError (DistutilsError): + """Raised by fancy_getopt in response to getopt.error -- ie. an + error in the command line usage.""" + pass + +class DistutilsFileError (DistutilsError): + """Any problems in the filesystem: expected file not found, etc. + Typically this is for problems that we detect before IOError or + OSError could be raised.""" + pass + +class DistutilsOptionError (DistutilsError): + """Syntactic/semantic errors in command options, such as use of + mutually conflicting options, or inconsistent options, + badly-spelled values, etc. No distinction is made between option + values originating in the setup script, the command line, config + files, or what-have-you -- but if we *know* something originated in + the setup script, we'll raise DistutilsSetupError instead.""" + pass + +class DistutilsSetupError (DistutilsError): + """For errors that can be definitely blamed on the setup script, + such as invalid keyword arguments to 'setup()'.""" + pass + +class DistutilsPlatformError (DistutilsError): + """We don't know how to do something on the current platform (but + we do know how to do it on some platform) -- eg. trying to compile + C files on a platform not supported by a CCompiler subclass.""" + pass + +class DistutilsExecError (DistutilsError): + """Any problems executing an external program (such as the C + compiler, when compiling C files).""" + pass + +class DistutilsInternalError (DistutilsError): + """Internal inconsistencies or impossibilities (obviously, this + should never be seen if the code is working!).""" + pass + + +# Exception classes used by the CCompiler implementation classes +class CCompilerError (Exception): + """Some compile/link operation failed.""" + +class CompileError (CCompilerError): + """Failure to compile one or more C/C++ source files.""" + +class LibError (CCompilerError): + """Failure to create a static library from one or more C/C++ object + files.""" + +class LinkError (CCompilerError): + """Failure to link one or more C/C++ object files into an executable + or shared library file.""" + + |