bitbake 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #!/usr/bin/env python3
  2. # ex:ts=4:sw=4:sts=4:et
  3. # -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
  4. #
  5. # Copyright (C) 2003, 2004 Chris Larson
  6. # Copyright (C) 2003, 2004 Phil Blundell
  7. # Copyright (C) 2003 - 2005 Michael 'Mickey' Lauer
  8. # Copyright (C) 2005 Holger Hans Peter Freyther
  9. # Copyright (C) 2005 ROAD GmbH
  10. # Copyright (C) 2006 Richard Purdie
  11. #
  12. # SPDX-License-Identifier: GPL-2.0-only
  13. #
  14. import os
  15. import sys
  16. sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)),
  17. 'lib'))
  18. try:
  19. import bb
  20. except RuntimeError as exc:
  21. sys.exit(str(exc))
  22. from bb import cookerdata
  23. from bb.main import bitbake_main, BitBakeConfigParameters, BBMainException
  24. if sys.getfilesystemencoding() != "utf-8":
  25. sys.exit("Please use a locale setting which supports UTF-8 (such as LANG=en_US.UTF-8).\nPython can't change the filesystem locale after loading so we need a UTF-8 when Python starts or things won't work.")
  26. __version__ = "1.43.0"
  27. if __name__ == "__main__":
  28. if __version__ != bb.__version__:
  29. sys.exit("Bitbake core version and program version mismatch!")
  30. try:
  31. sys.exit(bitbake_main(BitBakeConfigParameters(sys.argv),
  32. cookerdata.CookerConfiguration()))
  33. except BBMainException as err:
  34. sys.exit(err)
  35. except bb.BBHandledException:
  36. sys.exit(1)
  37. except Exception:
  38. import traceback
  39. traceback.print_exc()
  40. sys.exit(1)