Changeset 128:99e4c4b74a13

Show
Ignore:
Timestamp:
11/08/08 19:49:19 (3 years ago)
Author:
chris
Branch:
unix
Message:

Added more options to put info in the debian control file.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • bdist_debian.py

    r127 r128  
    33# Add 'bdist_debian' Debian binary package distribution support to 'distutils'. 
    44# 
    5 # This command builds '.deb' packages and supports the "Maemo" extensions for the Nokia N770/N800/N810. 
    6 # 
    75# Written by: Gene Cash <gene.cash@gmail.com> 16-NOV-2007 
     6# Extended by: Chris Freeze <cfreeze@users.sourceforge.net> 11/08/2008 
     7#       * Removed Nokia specific items 
     8#       * Added other keywords that can be in the control file 
    89 
    910import os, base64 
     
    1617Distribution.section=None 
    1718Distribution.depends=None 
     19Distribution.recommends=None 
     20Distribution.suggests=None 
     21Distribution.architecture=None 
     22Distribution.essential=None 
     23Distribution.source=None 
    1824 
    1925class ControlFile(object): 
     
    5359    # List of option tuples: long name, short name (None if no short name), and help string. 
    5460    user_options=[('name=', None, 'Package name'), 
    55                   ('section=', None, 'Section (Only "user/*" will display in App Mgr usually)'), 
    56                   ('priority=', None, 'Priority'), 
    57                   ('depends=', None, 'Other Debian package dependencies (comma separated)'), 
     61                  ('section=', None, 'Section (Only "user/*" will display in App Mgr usually) (default=user/other)'), 
     62                  ('priority=', None, 'Priority  (default=optional)'), 
     63                  ('depends=', None, 'Other Debian package dependencies (comma separated) (default=python)'), 
     64                  ('recommends=', None, 'Other Debian package you recommend (comma separated) (default=none)'), 
     65                  ('suggests=', None, 'Other Debian package you suggest (comma separated) (default=none)'), 
     66                  ('essential=', None, 'Whether packge is essential(yes/no) (default=no)'), 
     67                  ('architecture=', None, 'Target architecture (default=all)'), 
     68                  ('source=', None, 'Source keyword.. (default=package_name)'), 
    5869                  ('icon=', None, 'Name of icon file to be displayed by App Mgr')] 
    5970 
     
    6273        self.priority=None 
    6374        self.depends=None 
     75        self.recommends=None 
     76        self.suggests=None 
     77        self.architecture=None 
     78        self.essential=None 
     79        self.source=None 
    6480        self.icon=None 
    6581 
     
    7490 
    7591        if self.depends is None: 
    76             self.depends='python2.5' 
     92            self.depends='python' 
    7793 
    7894        self.name=self.distribution.get_name() 
     
    8096        self.long_description=self.distribution.get_long_description() 
    8197        self.version=self.distribution.get_version() 
     98 
     99        if self.source is None: 
     100            self.source=self.name 
    82101 
    83102        # process new keywords 
     
    88107        if self.distribution.depends != None: 
    89108            self.depends=self.distribution.depends 
     109        if self.distribution.recommends != None: 
     110            self.recommends=self.distribution.recommends 
     111        if self.distribution.suggests != None: 
     112            self.suggests=self.distribution.suggests 
     113        if self.distribution.architecture != None: 
     114            self.architecture=self.distribution.architecture 
     115        if self.distribution.essential != None: 
     116            self.essential=self.distribution.essential 
    90117 
    91118    def run(self): 
    92         build_dir=os.path.join(self.get_finalized_command('build').build_base, 'nokia') 
     119        build_dir=os.path.join(self.get_finalized_command('build').build_base, 'debian') 
    93120        dist_dir='dist' 
    94121        binary_fn='debian-binary' 
     
    116143        # create control file contents 
    117144        ctl=ControlFile(Package=self.name, Version=self.version, Section=self.section, Priority=self.priority, 
    118                         Installed_Size=installed_size/1024+1, Architecture='all', Maintainer=self.maintainer, 
     145                        Installed_Size=installed_size/1024+1, Architecture=self.architecture, Maintainer=self.maintainer, 
    119146                        Depends=self.depends, Description=self.description, Long_Description=self.long_description, 
     147                        Recommends=self.recommends, Suggests=self.suggests, Essential=self.essential, 
     148                                                Source=self.source, 
    120149                        Icon=self.icon).getContent() 
    121150