linux-kernel-base.bbclass 976 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # parse kernel ABI version out of <linux/version.h>
  2. def get_kernelversion_headers(p):
  3. import re
  4. fn = p + '/include/linux/utsrelease.h'
  5. if not os.path.isfile(fn):
  6. # after 2.6.33-rc1
  7. fn = p + '/include/generated/utsrelease.h'
  8. if not os.path.isfile(fn):
  9. fn = p + '/include/linux/version.h'
  10. try:
  11. f = open(fn, 'r')
  12. except IOError:
  13. return None
  14. l = f.readlines()
  15. f.close()
  16. r = re.compile("#define UTS_RELEASE \"(.*)\"")
  17. for s in l:
  18. m = r.match(s)
  19. if m:
  20. return m.group(1)
  21. return None
  22. def get_kernelversion_file(p):
  23. fn = p + '/kernel-abiversion'
  24. try:
  25. with open(fn, 'r') as f:
  26. return f.readlines()[0].strip()
  27. except IOError:
  28. return None
  29. def linux_module_packages(s, d):
  30. suffix = ""
  31. return " ".join(map(lambda s: "kernel-module-%s%s" % (s.lower().replace('_', '-').replace('@', '+'), suffix), s.split()))
  32. # that's all