diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py
index 11ab595..934b457 100644
--- a/Lib/distutils/command/build_ext.py
+++ b/Lib/distutils/command/build_ext.py
@@ -451,14 +451,6 @@
         for undef in ext.undef_macros:
             macros.append((undef,))
 
-        # XXX and if we support CFLAGS, why not CC (compiler
-        # executable), CPPFLAGS (pre-processor options), and LDFLAGS
-        # (linker options) too?
-        # XXX should we use shlex to properly parse CFLAGS?
-
-        if os.environ.has_key('CFLAGS'):
-            extra_args.extend(string.split(os.environ['CFLAGS']))
-
         objects = self.compiler.compile(sources,
                                         output_dir=self.build_temp,
                                         macros=macros,
@@ -485,7 +477,6 @@
             objects.extend(ext.extra_objects)
         extra_args = ext.extra_link_args or []
 
-
         self.compiler.link_shared_object(
             objects, ext_filename,
             libraries=self.get_libraries(ext),
