Fix from Lyle Johnson: add the '--compiler' option.
diff --git a/Lib/distutils/command/build.py b/Lib/distutils/command/build.py
index 7fb0b56..7d753b1 100644
--- a/Lib/distutils/command/build.py
+++ b/Lib/distutils/command/build.py
@@ -26,10 +26,12 @@
          "build-purelib or build-platlib"),
         ('build-temp=', 't',
          "temporary build directory"),
+        ('compiler=', 'c',
+         "specify the compiler type"),
         ('debug', 'g',
          "compile extensions and libraries with debugging information"),
         ('force', 'f',
-         "forcibly build everything (ignore file timestamps"),
+         "forcibly build everything (ignore file timestamps)"),
         ]
 
     def initialize_options (self):
@@ -40,6 +42,7 @@
         self.build_platlib = None
         self.build_lib = None
         self.build_temp = None
+        self.compiler = None
         self.debug = None
         self.force = 0
 
diff --git a/Lib/distutils/command/build_clib.py b/Lib/distutils/command/build_clib.py
index 3117073..681cd76 100644
--- a/Lib/distutils/command/build_clib.py
+++ b/Lib/distutils/command/build_clib.py
@@ -38,7 +38,9 @@
         ('debug', 'g',
          "compile with debugging information"),
         ('force', 'f',
-         "forcibly build everything (ignore file timestamps"),
+         "forcibly build everything (ignore file timestamps)"),
+        ('compiler=', 'c',
+         "specify the compiler type"),
         ]
 
     def initialize_options (self):
@@ -54,6 +56,7 @@
         self.undef = None
         self.debug = None
         self.force = 0
+        self.compiler = None
 
     # initialize_options()
 
@@ -68,6 +71,7 @@
         self.set_undefined_options ('build',
                                     ('build_temp', 'build_clib'),
                                     ('build_temp', 'build_temp'),
+                                    ('compiler', 'compiler'),
                                     ('debug', 'debug'),
                                     ('force', 'force'))
 
@@ -93,9 +97,11 @@
             return
 
         # Yech -- this is cut 'n pasted from build_ext.py!
-        self.compiler = new_compiler (verbose=self.verbose,
+        self.compiler = new_compiler (compiler=self.compiler,
+                                      verbose=self.verbose,
                                       dry_run=self.dry_run,
                                       force=self.force)
+
         if self.include_dirs is not None:
             self.compiler.set_include_dirs (self.include_dirs)
         if self.define is not None: