- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
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))
|