summaryrefslogtreecommitdiffstats
path: root/source-builder/sb/linux.py
diff options
context:
space:
mode:
authorDhananjay Balan <mb.dhananjay@gmail.com>2013-03-15 10:02:17 +0530
committerChris Johns <chrisj@rtems.org>2013-03-15 16:10:34 +1100
commit2c2c6bc824b058e42aad423095e79a2aa1b40ea5 (patch)
tree39b76a66b50b7937f099a293da74342c279a12ac /source-builder/sb/linux.py
parentAdd RTEMS 4.9 support for i386 and SPARC. (diff)
downloadrtems-source-builder-2c2c6bc824b058e42aad423095e79a2aa1b40ea5.tar.bz2
Linux Distro specific path names
Diffstat (limited to 'source-builder/sb/linux.py')
-rw-r--r--source-builder/sb/linux.py28
1 files changed, 19 insertions, 9 deletions
diff --git a/source-builder/sb/linux.py b/source-builder/sb/linux.py
index f77a57c..ef91523 100644
--- a/source-builder/sb/linux.py
+++ b/source-builder/sb/linux.py
@@ -25,6 +25,7 @@
import pprint
import os
+import platform
import execute
import path
@@ -66,16 +67,25 @@ def load():
'__tar': ('exe', 'required', '/bin/tar')
}
variations = {
- '__bzip2': ('exe', 'required', '/bin/bzip2'), # Ubuntu
- '__chgrp': ('exe', 'required', '/bin/chgrp'), # Ubuntu
- '__chown': ('exe', 'required', '/bin/chown'), # Ubuntu
- '__grep': ('exe', 'required', '/bin/grep'), # Ubuntu
- '__sed': ('exe', 'required', '/bin/sed'), # Ubuntu
- '__install_info': ('exe', 'required', '/sbin/install-info') # Fedora
+ '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') }
}
- for v in variations:
- if path.exists(variations[v][2]):
- defines[v] = variations[v]
+ # Works for LSB distros
+ distro = platform.dist()[0]
+ # Non LSB - fail over to issue
+ if distro == '':
+ issue = open('/etc/issue').read()
+ distro = issue.split(' ')[0]
+
+ if variations.has_key(distro):
+ for v in variations[distro]:
+ if path.exists(variations[distro][v][2]):
+ defines[v] = variations[distro][v]
return defines
if __name__ == '__main__':