Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 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)
This commit is contained in:
72
sources/poky/scripts/opkg-query-helper.py
Executable file
72
sources/poky/scripts/opkg-query-helper.py
Executable file
@@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
# OpenEmbedded opkg query helper utility
|
||||
#
|
||||
# Written by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
||||
#
|
||||
# Copyright 2012 Intel Corporation
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
#
|
||||
|
||||
import sys
|
||||
import fileinput
|
||||
import re
|
||||
|
||||
archmode = False
|
||||
filemode = False
|
||||
vermode = False
|
||||
|
||||
args = []
|
||||
for arg in sys.argv[1:]:
|
||||
if arg == '-a':
|
||||
archmode = True
|
||||
elif arg == '-f':
|
||||
filemode = True
|
||||
elif arg == '-v':
|
||||
vermode = True
|
||||
else:
|
||||
args.append(arg)
|
||||
|
||||
# Regex for removing version specs after dependency items
|
||||
verregex = re.compile(r' \([=<>]* [^ )]*\)')
|
||||
|
||||
pkg = ""
|
||||
ver = ""
|
||||
for line in fileinput.input(args):
|
||||
line = line.rstrip()
|
||||
if ': ' in line:
|
||||
if line.startswith("Package:"):
|
||||
pkg = line.split(": ")[1]
|
||||
ver = ""
|
||||
else:
|
||||
if archmode:
|
||||
if line.startswith("Architecture:"):
|
||||
arch = line.split(": ")[1]
|
||||
print("%s %s" % (pkg,arch))
|
||||
elif filemode:
|
||||
if line.startswith("Version:"):
|
||||
ver = line.split(": ")[1]
|
||||
elif line.startswith("Architecture:"):
|
||||
arch = line.split(": ")[1]
|
||||
print("%s %s_%s_%s.ipk %s" % (pkg,pkg,ver,arch,arch))
|
||||
elif vermode:
|
||||
if line.startswith("Version:"):
|
||||
ver = line.split(": ")[1]
|
||||
elif line.startswith("Architecture:"):
|
||||
arch = line.split(": ")[1]
|
||||
print("%s %s %s" % (pkg,arch,ver))
|
||||
else:
|
||||
if line.startswith("Depends:"):
|
||||
depval = line.split(": ")[1]
|
||||
deps = depval.split(", ")
|
||||
for dep in deps:
|
||||
dep = verregex.sub('', dep)
|
||||
print("%s|%s" % (pkg,dep))
|
||||
elif line.startswith("Recommends:"):
|
||||
recval = line.split(": ")[1]
|
||||
recs = recval.split(", ")
|
||||
for rec in recs:
|
||||
rec = verregex.sub('', rec)
|
||||
print("%s|%s [REC]" % (pkg, rec))
|
||||
|
||||
Reference in New Issue
Block a user