Changed to reflect the new "command options" regime -- in particular,
we no longer explicitly pull distribution options out of our Distribution
object, but rather let the Distribution put them into the command object.
diff --git a/Lib/distutils/command/build_py.py b/Lib/distutils/command/build_py.py
index d75bf3f..28aefa9 100644
--- a/Lib/distutils/command/build_py.py
+++ b/Lib/distutils/command/build_py.py
@@ -20,10 +20,14 @@
 
     def set_default_options (self):
         self.dir = None
+        self.modules = None
+        self.package = None
 
     def set_final_options (self):
         self.set_undefined_options ('build',
                                     ('libdir', 'dir'))
+        if self.package is None:
+            self.package = ''
 
 
     def run (self):
@@ -43,10 +47,6 @@
 
         self.set_final_options ()
 
-        (modules, package) = \
-            self.distribution.get_options ('py_modules', 'package')
-        package = package or ''
-
         infiles = []
         outfiles = []
         missing = []
@@ -56,20 +56,20 @@
         # input files.
 
         # it's ok not to have *any* py files, right?
-        if not modules:
+        if not self.modules:
             return
         
         # XXX we should allow for wildcards, so eg. the Distutils setup.py
         # file would just have to say
         #   py_modules = ['distutils.*', 'distutils.command.*']
         # without having to list each one explicitly.
-        for m in modules:
+        for m in self.modules:
             fn = apply (os.path.join, tuple (string.split (m, '.'))) + '.py'
             if not os.path.exists (fn):
                 missing.append (fn)
             else:
                 infiles.append (fn)
-                outfiles.append (os.path.join (self.dir, package, fn))
+                outfiles.append (os.path.join (self.dir, self.package, fn))
 
         # Blow up if any input files were not found.
         if missing: