[Python-checkins] CVS: distutils/distutils/command build.py,1.28,1.29
Greg Ward
python-dev@python.org
Sat, 30 Sep 2000 10:08:18 -0700
Update of /cvsroot/python/distutils/distutils/command
In directory slayer.i.sourceforge.net:/tmp/cvs-serv7503
Modified Files:
build.py
Log Message:
Changed to use the 'sub-commands' machinery:
- added 'sub_commands' class attr
- added 'has_*()' predicates referenced by the sub-command list
- rewrote 'run()' so it's a trivial loop over relevant sub-commands
Index: build.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/build.py,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -r1.28 -r1.29
*** build.py 2000/09/25 01:41:14 1.28
--- build.py 2000/09/30 17:08:12 1.29
***************
*** 98,122 ****
def run (self):
! # For now, "build" means "build_py" then "build_ext". (Eventually
! # it should also build documentation.)
- # Invoke the 'build_py' command to "build" pure Python modules
- # (ie. copy 'em into the build tree)
- if self.distribution.has_pure_modules():
- self.run_command ('build_py')
-
- # Build any standalone C libraries next -- they're most likely to
- # be needed by extension modules, so obviously have to be done
- # first!
- if self.distribution.has_c_libraries():
- self.run_command ('build_clib')
-
- # And now 'build_ext' -- compile extension modules and put them
- # into the build tree
- if self.distribution.has_ext_modules():
- self.run_command ('build_ext')
! if self.distribution.has_scripts():
! self.run_command ('build_scripts')
# class build
--- 98,130 ----
def run (self):
! # Run all relevant sub-commands. This will be some subset of:
! # - build_py - pure Python modules
! # - build_clib - standalone C libraries
! # - build_ext - Python extensions
! # - build_scripts - (Python) scripts
! for cmd_name in self.get_sub_commands():
! self.run_command(cmd_name)
! # -- Predicates for the sub-command list ---------------------------
!
! def has_pure_modules (self):
! return self.distribution.has_pure_modules()
!
! def has_c_libraries (self):
! return self.distribution.has_c_libraries()
!
! def has_ext_modules (self):
! return self.distribution.has_ext_modules()
!
! def has_scripts (self):
! return self.distribution.has_scripts()
!
!
! sub_commands = [('build_py', has_pure_modules),
! ('build_clib', has_c_libraries),
! ('build_ext', has_ext_modules),
! ('build_scripts', has_scripts),
! ]
# class build