[Python-checkins] python/dist/src/Lib/distutils/command bdist_dumb.py,1.22,1.23

akuchling@users.sourceforge.net akuchling@users.sourceforge.net
Tue, 26 Nov 2002 09:45:22 -0800


Update of /cvsroot/python/python/dist/src/Lib/distutils/command
In directory sc8-pr-cvs1:/tmp/cvs-serv1427

Modified Files:
	bdist_dumb.py 
Log Message:
Fix for bug #410541: bdist builds bogus .zips
This adds a --relative option to the bdist_dumb command that defaults 
to false; if true, the .tar.gz or .zip will be assembled using relative
paths.


Index: bdist_dumb.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/distutils/command/bdist_dumb.py,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -d -r1.22 -r1.23
*** bdist_dumb.py	19 Nov 2002 13:12:28 -0000	1.22
--- bdist_dumb.py	26 Nov 2002 17:45:19 -0000	1.23
***************
*** 12,16 ****
  from distutils.core import Command
  from distutils.util import get_platform
! from distutils.dir_util import create_tree, remove_tree
  from distutils.errors import *
  from distutils import log
--- 12,16 ----
  from distutils.core import Command
  from distutils.util import get_platform
! from distutils.dir_util import create_tree, remove_tree, ensure_relative
  from distutils.errors import *
  from distutils import log
***************
*** 34,40 ****
                      ('skip-build', None,
                       "skip rebuilding everything (for testing/debugging)"),
                     ]
  
!     boolean_options = ['keep-temp', 'skip-build']
  
      default_format = { 'posix': 'gztar',
--- 34,43 ----
                      ('skip-build', None,
                       "skip rebuilding everything (for testing/debugging)"),
+                     ('relative', None,
+                      "build the archive using relative paths"
+                      "(default: false)"),
                     ]
  
!     boolean_options = ['keep-temp', 'skip-build', 'relative']
  
      default_format = { 'posix': 'gztar',
***************
*** 50,54 ****
          self.dist_dir = None
          self.skip_build = 0
! 
      # initialize_options()
  
--- 53,58 ----
          self.dist_dir = None
          self.skip_build = 0
!         self.relative = 0
!         
      # initialize_options()
  
***************
*** 98,104 ****
              archive_basename = archive_basename.replace(":", "-")
  
!         self.make_archive(os.path.join(self.dist_dir, archive_basename),
!                           self.format,
!                           root_dir=self.bdist_dir)
  
          if not self.keep_temp:
--- 102,123 ----
              archive_basename = archive_basename.replace(":", "-")
  
!         pseudoinstall_root = os.path.join(self.dist_dir, archive_basename)
!         if not self.relative:
!             archive_root = self.bdist_dir
!         else:
!             if (self.distribution.has_ext_modules() and
!                 (install.install_base != install.install_platbase)):
!                 raise DistutilsPlatformError, \
!                       ("can't make a dumb built distribution where "
!                        "base and platbase are different (%s, %s)"
!                        % (repr(install.install_base),
!                           repr(install.install_platbase)))
!             else:
!                 archive_root = os.path.join(self.bdist_dir,
!                                    ensure_relative(install.install_base))
! 
!         # Make the archive
!         self.make_archive(pseudoinstall_root,
!                           self.format, root_dir=archive_root)
  
          if not self.keep_temp: