diff options
author | Chris Johns <chrisj@rtems.org> | 2013-03-15 17:00:38 +1100 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2013-03-15 17:00:38 +1100 |
commit | 3351e1575d18f9c421e3c1cbf1ff432222cf907a (patch) | |
tree | 40617e33373d780942d10f36b221b01890880e74 /source-builder/sb/linux.py | |
parent | Remove tabs. Add a safe way to default to a distro. (diff) | |
download | rtems-source-builder-3351e1575d18f9c421e3c1cbf1ff432222cf907a.tar.bz2 |
Add distro aliases to group similar types.
Diffstat (limited to 'source-builder/sb/linux.py')
-rw-r--r-- | source-builder/sb/linux.py | 39 |
1 files changed, 28 insertions, 11 deletions
diff --git a/source-builder/sb/linux.py b/source-builder/sb/linux.py index 451ed6b..22973f8 100644 --- a/source-builder/sb/linux.py +++ b/source-builder/sb/linux.py @@ -50,6 +50,7 @@ def load(): cpu = 'arm' else: cpu = uname[4] + defines = { '_os': ('none', 'none', 'linux'), '_host': ('triplet', 'required', cpu + '-linux-gnu'), @@ -66,25 +67,41 @@ def load(): '__gzip': ('exe', 'required', '/bin/gzip'), '__tar': ('exe', 'required', '/bin/tar') } - variations = { - 'Ubuntu' : {'__bzip2': ('exe', 'required', '/bin/bzip2'), - '__chgrp': ('exe', 'required', '/bin/chgrp'), - '__chown': ('exe', 'required', '/bin/chown'), - '__grep': ('exe', 'required', '/bin/grep'), - '__sed': ('exe', 'required', '/bin/sed') }, - 'Fedora' : { '__install_info': ('exe', 'required', '/sbin/install-info') }, - 'Arch' : { '__gzip': ('exe', 'required', '/usr/bin/gzip'), - '__chown': ('exe', 'required', '/usr/bin/chown') } - } + # Works for LSB distros distro = platform.dist()[0] + # Non LSB - fail over to issue if distro == '': try: issue = open('/etc/issue').read() distro = issue.split(' ')[0] except: - distro = 'Ubuntu' + pass + + # Manage distro aliases + if distro in ['centos', 'fedora']: + distro = 'redhat' + if distro in ['Ubuntu', 'ubuntu']: + distro = 'debian' + if distro in ['Arch']: + distro = 'arch' + + variations = { + 'debian' : { '__bzip2': ('exe', 'required', '/bin/bzip2'), + '__chgrp': ('exe', 'required', '/bin/chgrp'), + '__chown': ('exe', 'required', '/bin/chown'), + '__grep': ('exe', 'required', '/bin/grep'), + '__sed': ('exe', 'required', '/bin/sed') }, + 'redhat' : { '__bzip2': ('exe', 'required', '/bin/bzip2'), + '__chgrp': ('exe', 'required', '/bin/chgrp'), + '__chown': ('exe', 'required', '/bin/chown'), + '__grep': ('exe', 'required', '/bin/grep'), + '__sed': ('exe', 'required', '/bin/sed'), + '__install_info': ('exe', 'required', '/sbin/install-info') }, + 'arch' : { '__gzip': ('exe', 'required', '/usr/bin/gzip'), + '__chown': ('exe', 'required', '/usr/bin/chown') }, + } if variations.has_key(distro): for v in variations[distro]: |