changeset 3607:cc0158c86570

Fix building (tarball) installer without version db.
author Jan Nieuwenhuizen <janneke@gnu.org>
date Wed, 11 Jul 2007 21:59:59 +0200
parents c0ef682c2c70
children 02066868aff1
files bin/installer-builder gub/installer.py
diffstat 2 files changed, 8 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/bin/installer-builder	Wed Jul 11 21:59:35 2007 +0200
+++ b/bin/installer-builder	Wed Jul 11 21:59:59 2007 +0200
@@ -154,16 +154,14 @@
 
     installer.use_install_root_manager (install_manager)
 
-
     version = install_manager.package_dict (args[0])['version']
-    version_tup = 0,0
-    buildnumber = 0
     try:
         version_tup = tuple (map (int, version.split ('.')))
         db = versiondb.VersionDataBase (options.version_db)
         buildnumber = '%d' % db.get_next_build_number (version_tup)
     except:
-        pass
+        version = '0.0'
+        buildnumber = '0'
 
     settings.installer_version = version
     settings.installer_build = buildnumber
--- a/gub/installer.py	Wed Jul 11 21:59:35 2007 +0200
+++ b/gub/installer.py	Wed Jul 11 21:59:59 2007 +0200
@@ -20,8 +20,6 @@
         self.no_binary_strip = []
         self.no_binary_strip_extensions = ['.la', '.py', '.def', '.scm', '.pyc']
         self.installer_uploads = settings.uploads
-        self.installer_version = None
-        self.installer_build = None
         self.checksum = '0000'
 
     @context.subst_method
@@ -276,12 +274,7 @@
 class Linux_installer (Installer):
     def __init__ (self, settings):
         Installer.__init__ (self, settings)
-        try:
-            #FIXME: how can installer_build/installer_version be undefined?
-            self.bundle_tarball = '%(targetdir)s/%(name)s-%(installer_version)s-%(installer_build)s.%(platform)s.tar.bz2'
-            self.expand (self.bundle_tarball)
-        except:
-            self.bundle_tarball = 'image.tar.bz2'
+        self.bundle_tarball = '%(targetdir)s/%(name)s-%(installer_version)s-%(installer_build)s.%(platform)s.tar.bz2'
 
     def strip_prefixes (self):
         return Installer.strip_prefixes (self)
@@ -289,6 +282,10 @@
     def create_tarball (self):
         self.system ('tar --owner=0 --group=0 -C %(installer_root)s -jcf %(bundle_tarball)s .', locals ())
 
+    def create (self):
+        Installer.create (self)
+        self.create_tarball ()
+
 def create_shar (orig_file, hello, head, target_shar):
     length = os.stat (orig_file)[6]
 
@@ -303,8 +300,6 @@
     f = open (target_shar, 'w')
     f.write (script % locals())
     f.close ()
-
-        
     cmd = 'cat %(orig_file)s >> %(target_shar)s' % locals ()
     print 'invoking ', cmd
     stat = os.system (cmd)
@@ -315,8 +310,6 @@
 class Shar (Linux_installer):
     def create (self):
         Linux_installer.create (self)
-        self.create_tarball ()
-        
         target_shar = self.expand ('%(installer_uploads)s/%(name)s-%(installer_version)s-%(installer_build)s.%(platform)s.sh')
 
         head = self.expand ('%(sourcefiledir)s/sharhead.sh')
@@ -341,7 +334,7 @@
         'freebsd4-x86' : Shar,
         'freebsd6-x86' : Shar,
         'linux-arm-softfloat' : Shar,
-        'linux-arm-vfp' : Shar,
+        'linux-arm-vfp' : Linux_installer,
         'linux-x86' : Shar,
         'linux-64' : Shar,
         'linux-ppc' : Shar,