summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Ward <gward@python.net>2000-05-30 02:02:14 (GMT)
committerGreg Ward <gward@python.net>2000-05-30 02:02:14 (GMT)
commitc1cb0493f89b7b9dcf2e84e367bd1da8594d9e9d (patch)
treee7dc7bc3fc4e3f0f37b62f4563cde6bfe695854d
parentd151711e66d1077669025b3fda5616bf31935538 (diff)
downloadcpython-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.py157
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."""
+
+