Combine poky (Yocto scarthgap), meta-openembedded (scarthgap), and meta-openwrt into a single repository. Components: - poky/ Yocto core framework (BitBake + OE-Core) - meta-openembedded/ Community layers (meta-oe, meta-python, meta-networking) - meta-openwrt/ OpenWrt customization layer - setup-env.sh One-click build environment setup - README.md Project documentation
60 lines
1.7 KiB
Python
Executable File
60 lines
1.7 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
#
|
|
# Copyright (C) 2014 Alex Damian
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# This file re-uses code spread throughout other Bitbake source files.
|
|
# As such, all other copyrights belong to their own right holders.
|
|
#
|
|
|
|
"""
|
|
This command takes a filename as a single parameter. The filename is read
|
|
as a build eventlog, and the ToasterUI is used to process events in the file
|
|
and log data in the database
|
|
"""
|
|
|
|
import os
|
|
import sys
|
|
import json
|
|
import pickle
|
|
import codecs
|
|
import warnings
|
|
warnings.simplefilter("default")
|
|
|
|
from collections import namedtuple
|
|
|
|
# mangle syspath to allow easy import of modules
|
|
from os.path import join, dirname, abspath
|
|
sys.path.insert(0, join(dirname(dirname(abspath(__file__))), 'lib'))
|
|
|
|
import bb.cooker
|
|
from bb.ui import toasterui
|
|
from bb.ui import eventreplay
|
|
|
|
def main(argv):
|
|
with open(argv[-1]) as eventfile:
|
|
# load variables from the first line
|
|
variables = None
|
|
while line := eventfile.readline().strip():
|
|
try:
|
|
variables = json.loads(line)['allvariables']
|
|
break
|
|
except (KeyError, json.JSONDecodeError):
|
|
continue
|
|
if not variables:
|
|
sys.exit("Cannot find allvariables entry in event log file %s" % argv[-1])
|
|
eventfile.seek(0)
|
|
params = namedtuple('ConfigParams', ['observe_only'])(True)
|
|
player = eventreplay.EventPlayer(eventfile, variables)
|
|
|
|
return toasterui.main(player, player, params)
|
|
|
|
# run toaster ui on our mock bitbake class
|
|
if __name__ == "__main__":
|
|
if len(sys.argv) != 2:
|
|
print("Usage: %s <event file>" % os.path.basename(sys.argv[0]))
|
|
sys.exit(1)
|
|
|
|
sys.exit(main(sys.argv))
|