summaryrefslogtreecommitdiff
path: root/poky/meta/classes/license.bbclass
diff options
context:
space:
mode:
authorPatrick Williams <patrick@stwcx.xyz>2022-09-03 14:53:57 +0300
committerPatrick Williams <patrick@stwcx.xyz>2022-09-09 21:54:38 +0300
commit92b42cb35d755f8cfe6c17d403711a536e0f0721 (patch)
tree7b8663e1a7226f7a0811034af44979d1705b026f /poky/meta/classes/license.bbclass
parent497a421571ce561308d0501e73cb2c8128296fa7 (diff)
downloadopenbmc-92b42cb35d755f8cfe6c17d403711a536e0f0721.tar.xz
subtree updates
meta-raspberrypi: b6a1645a97..c57b464b88: Lluis Campos (1): rpi-cmdline: do_compile: Use pure Python syntax to get `CMDLINE` meta-openembedded: 2eb39477a7..a755af4fb5: Adrian Zaharia (1): lapack: add packageconfig for lapacke Akash Hadke (1): polkit: Add --shell /bin/nologin to polkitd user Alex Kiernan (3): ntpsec: Add UPSTREAM_CHECK_URI libgpiod: Detect ptest using PTEST_ENABLED ostree: Cleanup PACKAGECONFIGs Anuj Mittal (1): yasm: fix buildpaths warning Atanas Bunchev (1): python3-twitter: Upgrade 4.8.0 -> 4.10.1 Bartosz Golaszewski (4): imagemagick: add PACKAGECONFIG for C++ bindings python3-matplotlib: don't use PYTHON_PN python3-matplotlib: add packaging to RDEPENDS python3-matplotlib: bump to 3.5.2 Bruce Ashfield (3): vboxguestdrivers: fix build against 5.19 kernel / libc-headers zfs: update to v2.1.5 vboxguestdrivers: make kernel shared directory dependency explicit Carsten Bäcker (1): spdlog: Fix CMake flag Changqing Li (3): fuse3: support ptest redis: fix do_patch fuzz warning dlt-daemon: fix dlt-system.service failed since buffer overflow Clément Péron (1): python: add Pydantic data validation package Devendra Tewari (1): android-tools: sleep more in android-gadget-start Ed Tanous (1): Add python-requests-unixsocket recipe Enguerrand de Ribaucourt (1): mdio-tools: add recipes Etienne Cordonnier (1): uutils-coreutils: add recipe Jagadeesh Krishnanjanappa (4): python3-asgiref: add recipe python3-django: make 3.2.x as default version python3-django: Add python3-asgiref runtime dependency python3-django: remove 2.2.x recipe Jan Luebbe (2): chrony: add support for config and source snippet includes gensio: upgrade 2.3.1 -> 2.5.2 Jan Vermaete (1): makeself: added makeself as new recipe Jim Broadus (1): networkmanager: fix iptables and nft paths Jose Quaresma (2): wireguard-module: 1.0.20210219 -> 1.0.20220627 wireguard-tools: Add a new package for wg-quick Julian Haller (2): pcsc-lite: upgrade 1.9.0 -> 1.9.8 ccid: upgrade 1.4.33 -> 1.5.0 Justin Bronder (1): lmdb: only set SONAME on the shared library Khem Raj (61): mariadb: Inherit pkgconfig mariadb: Add packageconfig for lz4 and enable it ibus: Swith to use main branch instead of master kronosnet: Upgrade to 1.24 ostree: Upgrade to 2022.5 release sdbus-c++-libsystemd: Fix build with glibc 2.36 xfstests: Upgrade to v2022.07.10 autofs: Fix build with glibc 2.36 audit: Upgrade to 3.0.8 and fix build with linux 5.17+ pcp: Add to USERADD_PACKAGES instead of override mozjs: Use RUST_HOST_SYS and RUST_TARGET_SYS fluentbit: Fix build with clang audit: Fix build with musl fluentbit: Fix build with musl klibc: Upgrade to 2.0.10 gnome-keyring,cunit,xfce4-panel: Do not inherit remove-libtool class here mpd: Update to 0.23.8 openipmi: Enable largefile cflags proftpd: Always enable largefile support netperf: Always enable largefile support openipmi: Always enable largefile support unbound: Always enable largefile support sysbench: Always enable largefile support libmtp: Always enable largefile support toybox: Fix build with glibc 2.36+ xfstests: Upgrade to 2022.07.31 release libmpd: Fix function returns and casts audit: Revert the tweak done in configure step in do_install mpd: Upgrade to 0.23.9 fluentbit: Use CMAKE_C_STANDARD_LIBRARIES cmake var to pass libatomic fluentbit: Upgrade to 1.9.7 and fix build on x86 klibc: Fix build with kernel 5.19 headers ntpsec: Add -D_GNU_SOURCE and fix building with devtool gd: Fix build with clang-15 cpulimit: Define -D_GNU_SOURCE safec: Remove unused variable 'len' ncftp: Enable autoreconf ncftp: Fix TMPDIR path embedding into ncftpget libb64: Switch to github fork and upgrade to 2.0.0.1+git dhrystone: Disable warnings as errors with clang dibbler: Fix build with musl fio: Fix additional warnings seen with musl ssmtp: Fix null pointer assignments gst-editing-services: Add recipe rygel: Upgrade to 0.40.4 libesmtp: Define _GNU_SOURCE python3-grpcio: Enable largefile support explicitly libteam: Include missing headers for strrchr and memcmp neon: Upgrade to 0.32.2 satyr: Fix build on musl/clang libmusicbrainz: Avoid -Wnonnull warning aom: Upgrade to 3.4.0 vorbis-tools: Fix build on musl dvb-apps: Use tarball for SRC_URI and fix build on musl python3-netifaces: Fix build with python3 and musl python3-pyephem: Fix build with python3 and musl samba: Fix warnings in configure tests for rpath checks lirc: Fix build on musl mongodb: Fix boost build with clang-15 crda: Fix build with clang-15 monkey: Fix build with musl Lei Maohui (2): dnf-plugin-tui: Fix somw issue in postinstall process. xrdp: Fix buildpaths warning. Leon Anavi (16): python3-nocasedict: Upgrade 1.0.3 -> 1.0.4 python3-frozenlist: Upgrade 1.3.0 -> 1.3.1 python3-networkx: Upgrade 2.8.4 -> 2.8.5 python3-pyhamcrest: Upgrade 2.0.3 -> 2.0.4 python3-aiohue: Upgrade 4.4.2 -> 4.5.0 python3-pyperf: Upgrade 2.3.0 -> 2.4.1 python3-eth-abi: Upgrade 3.0.0 -> 3.0.1 python3-cytoolz: Upgrade 0.11.2 -> 0.12.0 python3-yarl: Upgrade 1.7.2 -> 1.8.1 python3-term: Upgrade 2.3 -> 2.4 python3-coverage: Upgrade 6.4.1 -> 6.4.4 python3-regex: Upgrade 2022.7.25 -> 2022.8.17 python3-awesomeversion: Upgrade 22.6.0 -> 22.8.0 python3-typed-ast: Upgrade 1.5.2 -> 1.5.4 python3-prompt-toolkit: Upgrade 3.0.24 -> 3.0.30 python3-prettytable: Upgrade 3.1.1 -> 3.3.0 Markus Volk (6): libass: update to v1.16.0 spdlog: update to v1.10.0 waylandpp: add recipe wireplumber: update to v0.4.11 pipewire: update to v0.3.56 pipewire: improve runtime dependency settings Marta Rybczynska (1): polkit: update patches for musl compilation Matthias Klein (1): libftdi: update to 1.5 Mike Crowe (1): yasm: Only depend on xmlto when docs are enabled Mike Petersen (1): sshpass: add recipe Mingli Yu (10): net-snmp: set ac_cv_path_PSPROG postgresql: Fix the buildpaths issue freeradius: Fix buildpaths issue openipmi: Fix buildpaths issue apache2: Fix the buildpaths issue frr: fix buildpaths issue nspr: fix buildpaths issue liblockfile: fix buildpaths issue freediameter: fix buildpaths issue postgresql: make sure pam conf installed when pam enabled Ovidiu Panait (1): net-snmp: upgrade 5.9.1 -> 5.9.3 Paulo Neves (1): fluentbit Upgrade to 1.3.5 -> 1.9.6 Philip Balister (2): python3-pybind11: Update to Version 2.10.0. Remove dead link and old information from the README. Potin Lai (7): libplist: add libplist_git.bb libimobiledevice-glue: SRCREV bump bc6c44b..d2ff796 libimobiledevice: add libimobiledevice_git.bb libirecovery: SRCREV bump e190945..ab5b4d8 libusbmuxd: add libusbmuxd_git.bb usbmuxd: add usbmuxd_git.bb idevicerestore: SRCREV bump 280575b..7d622d9 Richard Purdie (1): lmdb: Don't inherit base Sam Van Den Berge (1): python3-jsonrpcserver: add patch to use importlib.resources instead of pkg_resources Saul Wold (10): libipc-signal-perl: Fix LICENSE string libdigest-hmac-perl: Fix LICENSE string libio-socket-ssl-perl: Fix LICENSE string libdigest-sha1-perl: Fix LICENSE string libmime-types-perl: Fix LICENSE string libauthen-sasl-perl: Fix LICENSE string libnet-ldap-perl: Fix LICENSE string libxml-libxml-perl: Fix LICENSE string libnet-telnet-perl: Fix LICENSE string libproc-waitstat-perl: Fix LICENSE string Sean Anderson (2): image_types_sparse: Pad source image to block size image_types_sparse: Generate "don't care" chunks Vyacheslav Yurkov (4): protobuf: correct ptest dependency protobuf: 3.19.4 -> 3.21.5 upgrade protobuf: change build system to cmake protobuf: disable protoc binary for target Wang Mingyu (60): cifs-utils: upgrade 6.15 -> 7.0 geocode-glib: upgrade 3.26.3 -> 3.26.4 gjs: upgrade 1.72.1 -> 1.72.2 htpdate: upgrade 1.3.5 -> 1.3.6 icewm: upgrade 2.9.8 -> 2.9.9 ipc-run: upgrade 20200505.0 -> 20220807.0 iwd: upgrade 1.28 -> 1.29 ldns: upgrade 1.8.1 -> 1.8.2 libadwaita: upgrade 1.1.3 -> 1.1.4 libencode-perl: upgrade 3.18 -> 3.19 libmime-charset-perl: upgrade 1.012.2 -> 1.013.1 libtest-warn-perl: upgrade 0.36 -> 0.37 nano: upgrade 6.3 -> 6.4 nbdkit: upgrade 1.31.15 -> 1.32.1 netdata: upgrade 1.35.1 -> 1.36.0 fio: upgrade 3.30 -> 3.31 nlohmann-json: upgrade 3.10.5 -> 3.11.2 poco: upgrade 1.12.1 -> 1.12.2 postgresql: upgrade 14.4 -> 14.5 poppler: upgrade 22.07.0 -> 22.08.0 smarty: upgrade 4.1.1 -> 4.2.0 tracker: upgrade 3.3.2 -> 3.3.3 uftp: upgrade 5.0 -> 5.0.1 xdg-user-dirs: upgrade 0.17 -> 0.18 python3-pycodestyle: upgrade 2.9.0 -> 2.9.1 python3-pyzmq: upgrade 23.2.0 -> 23.2.1 python3-setuptools-declarative-requirements: upgrade 1.2.0 -> 1.3.0 python3-sqlalchemy: upgrade 1.4.39 -> 1.4.40 python3-werkzeug: upgrade 2.2.1 -> 2.2.2 python3-xmlschema: upgrade 2.0.1 -> 2.0.2 python3-yappi: upgrade 1.3.5 -> 1.3.6 ade: upgrade 0.1.1f -> 0.1.2 babl: upgrade 0.1.92 -> 0.1.94 ctags: upgrade 5.9.20220703.0 -> 5.9.20220821.0 grilo-plugins: upgrade 0.3.14 -> 0.3.15 ldns: upgrade 1.8.2 -> 1.8.3 libcurses-perl: upgrade 1.38 -> 1.41 mosquitto: upgrade 2.0.14 -> 2.0.15 nbdkit: upgrade 1.32.1 -> 1.33.1 netdata: upgrade 1.36.0 -> 1.36.1 libsdl2-ttf: upgrade 2.20.0 -> 2.20.1 xfstests: upgrade 2022.07.31 -> 2022.08.07 php: upgrade 8.1.8 -> 8.1.9 rdma-core: upgrade 41.0 -> 42.0 spitools: upgrade 1.0.1 -> 1.0.2 unbound: upgrade 1.16.1 -> 1.16.2 zlog: upgrade 1.2.15 -> 1.2.16 python3-hexbytes: upgrade 0.2.3 -> 0.3.0 python3-pythonping: upgrade 1.1.2 -> 1.1.3 python3-jsonrpcserver: Add dependence python3-typing-extensions feh: upgrade 3.9 -> 3.9.1 gnome-bluetooth: upgrade 42.2 -> 42.3 hunspell: upgrade 1.7.0 -> 1.7.1 gtk4: upgrade 4.6.6 -> 4.6.7 logwatch: upgrade 7.6 -> 7.7 bdwgc: upgrade 8.2.0 -> 8.2.2 tcpreplay: upgrade 4.4.1 -> 4.4.2 tree: upgrade 2.0.2 -> 2.0.3 xfsdump: upgrade 3.1.10 -> 3.1.11 babl: upgrade 0.1.94 -> 0.1.96 Wolfgang Meyer (1): libsdl2-ttf: upgrade 2.0.18 -> 2.20.0 Xu Huan (18): python3-protobuf: upgrade 4.21.3 -> 4.21.4 python3-pycodestyle: upgrade 2.8.0 -> 2.9.0 python3-pyflakes: upgrade 2.4.0 -> 2.5.0 python3-pythonping: upgrade 1.1.1 -> 1.1.2 python3-regex: upgrade 2022.7.24 -> 2022.7.25 python3-werkzeug: upgrade 2.2.0 -> 2.2.1 python3-google-auth: upgrade 2.9.1 -> 2.10.0 python3-humanize: upgrade 4.2.3 -> 4.3.0 python3-hexbytes: upgrade 0.2.2 -> 0.2.3 python3-imageio: upgrade 2.21.0 -> 2.21.1 python3-nocaselist: upgrade 1.0.5 -> 1.0.6 python3-protobuf: upgrade 4.21.4 -> 4.21.5 python3-pycares: upgrade 4.2.1 -> 4.2.2 python3-fastjsonschema: upgrade 2.16.1 -> 2.16.2 python3-google-api-python-client: upgrade 2.56.0 -> 2.57.0 python3-google-auth: upgrade 2.10.0 -> 2.11.0 python3-grpcio-tools: upgrade 1.47.0 -> 1.48.0 python3-grpcio: upgrade 1.47.0 -> 1.48.0 Yi Zhao (5): strongswan: upgrade 5.9.6 -> 5.9.7 libldb: upgrade 2.3.3 -> 2.3.4 samba: upgrade 4.14.13 -> 4.14.14 python3-jsonrpcserver: upgrade 5.0.7 -> 5.0.8 samba: fix buildpaths issue wangmy (16): gedit: upgrade 42.1 -> 42.2 libwacom: upgrade 2.3.0 -> 2.4.0 htpdate: upgrade 1.3.4 -> 1.3.5 nbdkit: upgrade 1.31.14 -> 1.31.15 pure-ftpd: upgrade 1.0.50 -> 1.0.51 avro-c: upgrade 1.11.0 -> 1.11.1 debootstrap: upgrade 1.0.126 -> 1.0.127 freerdp: upgrade 2.7.0 -> 2.8.0 icewm: upgrade 2.9.7 -> 2.9.8 libmxml: upgrade 3.3 -> 3.3.1 poco: upgrade 1.12.0 -> 1.12.1 xfontsel: upgrade 1.0.6 -> 1.1.0 xmessage: upgrade 1.0.5 -> 1.0.6 xrefresh: upgrade 1.0.6 -> 1.0.7 zabbix: upgrade 6.0.5 -> 6.2.1 xrdp: upgrade 0.9.18 -> 0.9.19 zhengrq.fnst (4): python3-asttokens: upgrade 2.0.7 -> 2.0.8 python3-charset-normalizer: upgrade 2.1.0 -> 2.1.1 python3-eth-account: 0.6.1 -> 0.7.0 python3-cantools: upgrade 37.1.0 -> 37.1.2 zhengruoqin (12): python3-dominate: upgrade 2.6.0 -> 2.7.0 python3-flask-login: upgrade 0.6.1 -> 0.6.2 python3-google-api-python-client: upgrade 2.54.0 -> 2.55.0 python3-haversine: upgrade 2.5.1 -> 2.6.0 python3-imageio: upgrade 2.19.5 -> 2.21.0 python3-autobahn: upgrade 22.6.1 -> 22.7.1 python3-engineio: upgrade 4.3.3 -> 4.3.4 python3-flask: upgrade 2.1.3 -> 2.2.2 python3-gcovr: upgrade 5.1 -> 5.2 python3-google-api-python-client: upgrade 2.55.0 -> 2.56.0 python3-asttokens: upgrade 2.0.5 -> 2.0.7 python3-zeroconf: upgrade 0.38.7 -> 0.39.0 meta-security: 2a2d650ee0..10fdc2b13a: Anton Antonov (2): Use CARGO_TARGET_SUBDIR in do_install parsec-service: Update oeqa tests Armin Kuster (8): python3-privacyidea: update to 3.7.3 lkrg-module: update to 0.9.5 apparmor: update to 3.0.6 packagegroup-core-security: add space for appends cryptmount: Add new pkg packagegroup-core-security: add pkg to grp cyptmount: Fix mount.h conflicts seen with glibc 2.36+ kas: update testimage inherit John Edward Broadbent (1): meta-security: Add recipe for Glome Mingli Yu (1): samhain-standalone: fix buildpaths issue poky: fc59c28724..9b1db65e7d: Alejandro Hernandez Samaniego (1): baremetal-image.bbclass: Emulate image.bbclass to handle new classes scope Alex Stewart (1): maintainers: update opkg maintainer Alexander Kanavin (113): kmscube: address linux 5.19 fails rpm: update 4.17.0 -> 4.17.1 go: update 1.18.4 -> 1.19 bluez5: update 5.64 -> 5.65 python3-pip: update 22.2.1 -> 22.2.2 ffmpeg: update 5.0.1 -> 5.1 iproute2: upgrade 5.18.0 -> 5.19.0 harfbuzz: upgrade 4.4.1 -> 5.1.0 libwpe: upgrade 1.12.0 -> 1.12.2 bind: upgrade 9.18.4 -> 9.18.5 diffoscope: upgrade 218 -> 220 ell: upgrade 0.51 -> 0.52 gnutls: upgrade 3.7.6 -> 3.7.7 iso-codes: upgrade 4.10.0 -> 4.11.0 kea: upgrade 2.0.2 -> 2.2.0 kexec-tools: upgrade 2.0.24 -> 2.0.25 libcap: upgrade 2.64 -> 2.65 libevdev: upgrade 1.12.1 -> 1.13.0 libnotify: upgrade 0.8.0 -> 0.8.1 libwebp: upgrade 1.2.2 -> 1.2.3 libxcvt: upgrade 0.1.1 -> 0.1.2 mesa: upgrade 22.1.3 -> 22.1.5 mobile-broadband-provider-info: upgrade 20220511 -> 20220725 nettle: upgrade 3.8 -> 3.8.1 piglit: upgrade to latest revision puzzles: upgrade to latest revision python3: upgrade 3.10.5 -> 3.10.6 python3-dtschema: upgrade 2022.7 -> 2022.8 python3-hypothesis: upgrade 6.50.1 -> 6.54.1 python3-jsonschema: upgrade 4.9.0 -> 4.9.1 python3-markdown: upgrade 3.3.7 -> 3.4.1 python3-setuptools: upgrade 63.3.0 -> 63.4.1 python3-sphinx: upgrade 5.0.2 -> 5.1.1 python3-urllib3: upgrade 1.26.10 -> 1.26.11 sqlite3: upgrade 3.39.1 -> 3.39.2 sysklogd: upgrade 2.4.0 -> 2.4.2 webkitgtk: upgrade 2.36.4 -> 2.36.5 kernel-dev: working with kernel using devtool does not require building and installing eSDK sdk-manual: describe how to use extensible SDK functionality directly in a Yocto build dropbear: merge .inc into .bb rust: update 1.62.0 -> 1.62.1 cmake: update 3.23.2 -> 3.24.0 weston: upgrade 10.0.1 -> 10.0.2 patchelf: update 0.14.5 -> 0.15.0 patchelf: replace a rejected patch with an equivalent uninative.bbclass tweak weston: exclude pre-releases from version check tzdata: upgrade 2022a -> 2022b libcgroup: update 2.0.2 -> 3.0.0 python3-setuptools-rust: update 1.4.1 -> 1.5.1 shadow: update 4.11.1 -> 4.12.1 slang: update 2.3.2 -> 2.3.3 xz: update 5.2.5 -> 5.2.6 gdk-pixbuf: update 2.42.8 -> 2.42.9 xorgproto: update 2022.1 -> 2022.2 boost-build-native: update 4.4.1 -> 1.80.0 boost: update 1.79.0 -> 1.80.0 vulkan-samples: update to latest revision epiphany: upgrade 42.3 -> 42.4 git: upgrade 2.37.1 -> 2.37.2 glib-networking: upgrade 2.72.1 -> 2.72.2 gnu-efi: upgrade 3.0.14 -> 3.0.15 gpgme: upgrade 1.17.1 -> 1.18.0 libjpeg-turbo: upgrade 2.1.3 -> 2.1.4 libwebp: upgrade 1.2.3 -> 1.2.4 lighttpd: upgrade 1.4.65 -> 1.4.66 mesa: upgrade 22.1.5 -> 22.1.6 meson: upgrade 0.63.0 -> 0.63.1 mpg123: upgrade 1.30.1 -> 1.30.2 pango: upgrade 1.50.8 -> 1.50.9 piglit: upgrade to latest revision pkgconf: upgrade 1.8.0 -> 1.9.2 python3-dtschema: upgrade 2022.8 -> 2022.8.1 python3-more-itertools: upgrade 8.13.0 -> 8.14.0 python3-numpy: upgrade 1.23.1 -> 1.23.2 python3-pbr: upgrade 5.9.0 -> 5.10.0 python3-pyelftools: upgrade 0.28 -> 0.29 python3-pytz: upgrade 2022.1 -> 2022.2.1 strace: upgrade 5.18 -> 5.19 sysklogd: upgrade 2.4.2 -> 2.4.4 wireless-regdb: upgrade 2022.06.06 -> 2022.08.12 wpebackend-fdo: upgrade 1.12.0 -> 1.12.1 python3-hatchling: update 1.6.0 -> 1.8.0 python3-setuptools: update 63.4.1 -> 65.0.2 devtool: do not leave behind source trees in workspace/sources systemtap: add a patch to address a python 3.11 failure bitbake: bitbake-layers: initialize tinfoil before registering command line arguments scripts/oe-setup-builddir: add a check that TEMPLATECONF is valid bitbake-layers: add a command to save the active build configuration as a template into a layer bitbake-layers: add ability to save current layer repository configuration into a file scripts/oe-setup-layers: add a script that restores the layer configuration from a json file selftest/bblayers: add a test for creating a layer setup and using it to restore the layers selftest/bblayers: adjust the revision for the layer setup test perl: run builds from a pristine source tree meta-poky/conf: move default templates to conf/templates/default/ syslinux: mark all pending patches as Inactive-Upstream shadow: correct the pam patch status mtd-utils: remove patch that adds -I option gstreamer1.0-plugins-bad: remove an unneeded patch ghostscript: remove unneeded patch ovmf: drop the force no-stack-protector patch python: submit CC to cc_basename patch upstream mc: submit perl warnings patch upstream sysvinit: send install.patch upstream valgrind: (re)send ppc instructions patch upstream gdk-pixbuf: submit fatal-loader.patch upstream libsdl2: follow upstream version is even rule python3-pip: submit reproducible.patch upstream python3-pip: remove unneeded reproducible.patch llvm: remove 0006-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch scripts/oe-setup-builddir: migrate build/conf/templateconf.cfg to new template locations meta/files/layers.schema.json: drop the layers property scripts/oe-setup-builddir: write to conf/templateconf.cfg after the build is set up scripts/oe-setup-builddir: make environment variable the highest priority source for TEMPLATECONF Alexandre Belloni (1): ruby: drop capstone support Andrei Gherzan (7): shadow: Enable subid support rootfspostcommands.py: Restructure sort_passwd and related functions rootfspostcommands.py: Cleanup subid backup files generated by shadow-utils selftest: Add module for testing rootfs postcommands rootfs-postcommands.bbclass: Follow function rename in rootfspostcommands.py shadow: Avoid nss warning/error with musl linux-yocto: Fix COMPATIBLE_MACHINE regex match Andrey Konovalov (2): mesa: add pipe-loader's libraries to libopencl-mesa package mesa: build clover with native LLVM codegen support for freedreno Anuj Mittal (1): poky.conf: add ubuntu-22.04 to tested distros Armin Kuster (1): system-requirements.rst: remove EOL and Centos7 hosts Aryaman Gupta (1): bitbake: runqueue: add memory pressure regulation Awais Belal (1): kernel-fitimage.bbclass: only package unique DTBs Beniamin Sandu (1): libpam: use /run instead of /var/run in systemd tmpfiles Bertrand Marquis (1): sysvinit-inittab/start_getty: Fix respawn too fast Bruce Ashfield (22): linux-yocto/5.15: update to v5.15.58 linux-yocto/5.10: update to v5.10.134 linux-yocto-rt/5.15: update to -rt48 (and fix -stable merge) linux-libc-headers: update to v5.19 kernel-devsrc: support arm v5.19+ on target build kernel-devsrc: support powerpc on v5.19+ lttng-modules: fix build against mips and v5.19 kernel linux-yocto: introduce v5.19 reference kernel recipes meta/conf: update preferred linux-yocto version to v5.19 linux-yocto: drop v5.10 reference kernel recipes linux-yocto/5.15: update to v5.15.59 linux-yocto/5.15: fix reproducibility issues linux-yocto/5.19: cfg: update x32 configuration fragment linux-yocto/5.19: fix reproducibility issues poky: update preferred version to v5.19 poky: change preferred kernel version to 5.15 in poky-alt yocto-bsp: drop v5.10 bbappend and create 5.19 placeholder lttng-modules: replace mips compaction fix with upstream change linux-yocto/5.15: update to v5.15.60 linux-yocto/5.19: update to v5.19.1 linux-yocto/5.19: update to v5.19.3 linux-yocto/5.15: update to v5.15.62 Changqing Li (1): apt: fix nativesdk-apt build failure during the second time build Chen Qi (2): python3-hypothesis: revert back to 6.46.11 python3-requests: add python3-compression dependency Drew Moseley (1): rng-tools: Replace obsolete "wants systemd-udev-settle" Enrico Scholz (2): npm.bbclass: fix typo in 'fund' config option npm.bbclass: fix architecture mapping Ernst Sjöstrand (1): cve-check: Don't use f-strings Jacob Kroon (1): python3-cython: Remove debug lines Jan Luebbe (2): openssh: sync local ssh_config + sshd_config files with upstream 8.7p1 openssh: add support for config snippet includes to ssh and sshd JeongBong Seo (1): wic: add 'none' fstype for custom image Johannes Schneider (1): classes: rootfs-postcommands: autologin root on serial-getty Jon Mason (2): oeqa/parselogs: add qemuarmv5 arm-charlcd masking ref-manual: add numa to machine features Jose Quaresma (4): bitbake: build: prefix the tasks with a timestamp in the log task_order archiver.bbclass: some recipes that uses the kernelsrc bbclass uses the shared source linux-yocto: prepend the the value with a space when append to KERNEL_EXTRA_ARGS shaderc: upgrade 2022.1 -> 2022.2 Joshua Watt (4): bitbake: siggen: Fix insufficent entropy in sigtask file names bitbake: utils: Pass lock argument in fileslocked classes: cve-check: Get shared database lock meta/files: add layer setup JSON schema and example Kai Kang (1): packagegroup-self-hosted: update for strace Kevin Hao (1): uboot-config.bbclass: Don't bail out early in multi configs Khem Raj (83): qemu: Fix build with glibc 2.36 mtd-utils: Fix build with glibc 2.36 stress-ng: Upgrade to 0.14.03 bootchart2: Fix build with glibc 2.36+ ltp: Fix sys/mount.h conflicts needed for glibc 2.36+ compile efivar: Fix build with glibc 2.36 cracklib: Drop using register keyword util-linux: Define pidfd_* function signatures util-linux: Upgrade to 2.38.1 tcp-wrappers: Fix implicit-function-declaration warnings perl-cross: Correct function signatures in configure_func.sh perl: Pass additional flags to enable lfs and gnu source sysvinit: Fix mount.h conflicts seen with glibc 2.36+ glibc: Bump to 2.36 glibc: Update patch status zip: Enable largefile support based on distro feature zip: Make configure checks to be more robust unzip: Fix configure tests to use modern C unzip: Enable largefile support when enabled in distro iproute2: Fix netns check during configure glibc: Bump to latest 2.36 branch gstreamer1.0-plugins-base: Include required system headers for isspace() and sscanf() musl: Upgrade to latest tip of trunk zip: Always enable LARGE_FILE_SUPPORT libmicrohttpd: Enable largefile support unconditionally unzip: Always enable largefile support default-distrovars: Remove largefile from defualt DISTRO_FEATURES zlib: Resolve CVE-2022-37434 json-c: Fix function prototypes rsync: Backport fix to address CVE-2022-29154 rsync: Upgrade to 3.2.5 libtirpc: Backport fix for CVE-2021-46828 libxml2: Ignore CVE-2016-3709 tiff: Backport a patch for CVE-2022-34526 libtirpc: Upgrade to 1.3.3 perf: Add packageconfig for libbfd support and use disabled as default connman: Backports for security fixes systemd: Upgrade to 251.4 and fix build with binutils 2.39 time: Add missing include for memset screen: Add missing include files in configure checks setserial: Fix build with clang expect: Fix implicit-function-declaration warnings spirv-tools: Remove default copy constructor in header boost: Compile out stdlib unary/binary_functions for c++11 and newer vulkan-samples: Qualify move as std::move apt: Do not use std::binary_function ltp: Fix sys/mount.h and linux/mount.h conflict rpm: Remove -Wimplicit-function-declaration warnings binutils: Upgrade to 2.39 release binutils-cross: Disable gprofng for when building cross binutils binutils: Package up gprofng binutils: Disable gprofng when using clang binutils-cross-canadian: Package up new gprofng.rc file autoconf: Fix strict prototype errors in generated tests rsync: Add missing prototypes to function declarations nfs-utils: Upgrade to 2.6.2 webkitgtk: Upgrade to 2.36.6 minor update musl: Update to tip binutils: Disable gprofng on musl systems binutils: Upgrade to latest on 2.39 release branch cargo_common.bbclass: Add missing space in shell conditional code rng-tools: Remove depndencies on hwrng ccache: Update the patch status ccache: Fix build with gcc12 on musl alsa-plugins: Include missing string.h xinetd: Pass missing -D_GNU_SOURCE watchdog: Include needed system header for function decls libcgroup: Use GNU strerror_r only when its available pinentry: enable _XOPEN_SOURCE on musl for wchar usage in curses apr: Use correct strerror_r implementation based on libc type gcr: Define _GNU_SOURCE ltp: Adjust types to match create_fifo_thread return gcc: Upgrade to 12.2.0 glibc: Update to latest on 2.36 ltp: Remove -mfpmath=sse on x86-64 too apr: Cache configure tests which use AC_TRY_RUN rust: Fix build failure on riscv32 ncurses: Fix configure tests for exit and mbstate_t rust-llvm: Update to matching LLVM_VERSION from rust-source librepo: Fix build on musl rsync: Turn on -pedantic-errors at the end of 'configure' ccache: Upgrade to 4.6.2 xmlto: Update to use upstream tip of trunk Konrad Weihmann (1): python3: disable user site-pkg for native target Lee Chee Yang (1): migration guides: add release notes for 4.0.3 Luca Ceresoli (1): libmnl: remove unneeded SRC_URI 'name' option Markus Volk (2): connman: add PACKAGECONFIG to support iwd packagegroup-base.bb: add a configure option to set the wireless-daemon Martin Jansa (5): glibc: revert one upstream change to work around broken DEBUG_BUILD build syslinux: Fix build with glibc-2.36 syslinux: refresh patches with devtool glibc: fix new upstream build issue with DEBUG_BUILD build glibc: apply proposed patch from upstream instead of revert Mateusz Marciniec (2): util-linux: Remove --enable-raw from EXTRA_OECONF util-linux: Improve check for magic in configure.ac Michael Halstead (1): uninative: Upgrade to 3.7 to work with glibc 2.36 Michael Opdenacker (1): dev-manual: use proper note directive Mingli Yu (1): bitbake: fetch: use BPN instead Neil Horman (1): bitbake: Fix npm to use https rather than http Paul Eggleton (1): relocate_sdk.py: ensure interpreter size error causes relocation to fail Pavel Zhukov (6): package_rpm: Do not replace square brackets in %files selftest: Add regression test for rpm filesnames parselogs: Ignore xf86OpenConsole error bitbake: gitsm: Error out if submodule refers to parent repo bitbake: tests: Add Timeout class bitbake: tests: Add test for possible gitsm deadlock Peter Bergin (3): rust-cross-canadian: rename shell variables for easier appends packagegroup-rust-cross-canadian: add native compiler environment oeqa/sdk: extend rust test to also use a build script Peter Marko (1): create-spdx: handle links to inaccessible locations Quentin Schulz (3): docs: conf.py: update yocto_git base URL docs: README: add TeX font package required for building PDF docs: ref-manual: system-requirements: add missing packages Randy MacLeod (1): rust: update from 1.62.1 to 1.63.0 Rasmus Villemoes (1): bitbake.conf: set BB_DEFAULT_UMASK using ??= Richard Purdie (85): oeqa/selftest/sstate: Ensure tests are deterministic nativesdk: Clear TUNE_FEATURES populate_sdk_base: Disable rust SDK for MIPS n32 selftest/reproducible: Exclude rust/rust-dbg for now until we can fix conf/distro/no-static-libs: Allow static musl for rust rust-target-config: Add mips n32 target information rust-common: Add CXXFLAGS rust-common: Drop export directive from wrappers rust-common: Rework wrappers to handle musl rust: Work around reproducibility issues rust: Switch to use RUST_XXX_SYS consistently rust.inc: Rename variables to make code clearer rust.inc: Fix cross build llvm-config handling rust/mesa: Drop obsolete YOCTO_ALTERNATE_MULTILIB_NAME rust-target-config: Show clear error when target isn't defined rust: Generate per recipe target configuration files rust-common/rust: Improve bootstrap BUILD_SYS handling cargo_common: Handle build SYS as well as HOST/TARGET rust-llvm: Enable nativesdk variant rust.inc: Fix for cross compilation configuration rust-common: Update to match cross targets rust-target-config: Make target workaround generic rust-common: Simplify libc handling cargo: Drop cross-canadian variant and fix/use nativesdk rust-common: Set rustlibdir to match target expectation rust-cross-canadian: Simplify and fix rust: Drop cross/crosssdk rust: Enable nativesdk and target builds + replace rust-tools-cross-canadian rust: Fix musl builds rust: Ensure buildpaths are handled in debug symbols correctly rust: Update README selftest/wic: Tweak test case to not depend on kernel size bitbake: runqueue: Ensure deferred tasks are sorted by multiconfig bitbake: runqueue: Improve deadlock warning messages bitbake: runqueue: Drop deadlock breaking force fail rust-common: Remove conflict with utils create_wrapper kern-devsrc: Drop auto.conf creation cargo: Work around host system library conflicts rust-cross-canadian: Use shell from SDK, not the host buildhistory: Only use image-artifact-names as an image class rust: Remove unneeded RUST_TARGETGENS settings meta-skeleton/hello-mod: Switch to SPDX-License-Identifier perf: Fix reproducibility issues with 5.19 onwards selftest/runtime_test/incompatible_lic: Use IMAGE_CLASSES for testimage testexport: Fix to work as an image class testexport: Use IMAGE_CLASSES for testimage selftest/runtime_test: Use testexport in IMAGE_CLASSES, not globally bitbake: BBHandler: Allow earlier exit for classes not found bitbake: BBHandler: Make inherit calls more directly bitbake: bitbake: Add copyright headers where missing bitbake: BBHandler/cooker: Implement recipe and global classes classes: Add copyright statements to files without one scripts: Add copyright statements to files without one classes: Add SPDX license identifiers lib: Add copyright statements to files without one insane: Update to allow for class layout changes classes: Update classes to match new bitbake class scope functionality recipetool: Update for class changes package: Switch debug source handling to use prefix map libgcc/gcc-runtime: Improve source reference handling bitbake.conf: Handle S and B separately for debug mapping python3-cython: Update code to match debug path changes gcc-cross: Fix relative links gcc: Resolve relative prefix-map filenames gcc: Add a patch to avoid hardcoded paths in libgcc on powerpc gcc: Update patch status to submitted for two patches valgrind: Disable drd/tests/std_thread2 ptest valgrind: Update to match debug file layout changes skeleton/service: Ensure debug path handling works as intended distrooverrides: Move back to classes whilst it's usage is clarified vim: Upgrade 9.0.0115 -> 9.0.0242 icu: Drop binconfig support (icu-config) libtirpc: Mark CVE-2021-46828 as resolved bitbake: runqueue: Change pressure file warning to a note rust-target-config: Drop has-elf-tls option llvm: Add llvm-config wrapper to improve flags handling mesa: Rework llvm handling rust-target-config: Fix qemuppc target cpu option rust: Fix crossbeam-utils for arches without atomics pseudo: Update to include recent upstream minor fixes bitbake: Revert "fetch: use BPN instead" vim: Upgrade 9.0.0242 -> 9.0.0341 gcc-multilib-config: Fix i686 toolchain relocation issues kernel: Always set CC and LD for the kernel build kernel: Use consistent make flags for menuconfig Robert Joslyn (1): curl: Update to 7.85.0 Ross Burton (9): oeqa/qemurunner: add run_serial() comment oeqa/commands: add support for running cross tools to runCmd oeqa/selftest: rewrite gdbserver test libxml2: wrap xmllint to use the correct XML catalogues oeqa/selftest: add test for debuginfod libgcrypt: remove obsolete pkgconfig install libgcrypt: remove obsolete patch libgcrypt: rewrite ptest cve-check: close cursors as soon as possible Sakib Sajal (2): qemu: fix CVE-2021-3507 qemu: fix CVE-2022-0216 Shubham Kulkarni (1): sanity: add a comment to ensure CONNECTIVITY_CHECK_URIS is correct Simone Weiss (1): json-c: Add ptest for json-c Sundeep KOKKONDA (1): glibc : stable 2.35 branch updates Thomas Roos (1): oeqa devtool: Add tests to cover devtool handling of various git URL styles Tom Hochstein (1): piglit: Add PACKAGECONFIG for glx and opencl Tom Rini (1): qemux86-64: Allow higher tunes Ulrich Ölmann (1): scripts/runqemu.README: fix typos and trailing whitespaces William A. Kennington III (1): image_types: Set SOURCE_DATE_EPOCH for squashfs Yang Xu (1): insane.bbclass: Skip patches not in oe-core by full path Yogesh Tyagi (1): gdbserver : add selftest Yongxin Liu (1): grub2: fix several CVEs wangmy (19): msmtp: upgrade 1.8.20 -> 1.8.22 bind: upgrade 9.18.5 -> 9.18.6 btrfs-tools: upgrade 5.18.1 -> 5.19 libdnf: upgrade 0.67.0 -> 0.68.0 librepo: upgrade 1.14.3 -> 1.14.4 pkgconf: upgrade 1.9.2 -> 1.9.3 python3-pygments: upgrade 2.12.0 -> 2.13.0 ethtool: upgrade 5.18 -> 5.19 librsvg: upgrade 2.54.4 -> 2.54.5 libtasn1: upgrade 4.18.0 -> 4.19.0 liburcu: upgrade 0.13.1 -> 0.13.2 libwpe: upgrade 1.12.2 -> 1.12.3 lttng-tools: upgrade 2.13.7 -> 2.13.8 lttng-ust: upgrade 2.13.3 -> 2.13.4 libatomic-ops: upgrade 7.6.12 -> 7.6.14 lz4: upgrade 1.9.3 -> 1.9.4 python3-hatchling: upgrade 1.8.0 -> 1.8.1 python3-urllib3: upgrade 1.26.11 -> 1.26.12 repo: upgrade 2.28 -> 2.29.1 meta-arm: 20a629180c..52f07a4b0b: Anton Antonov (11): arm/optee-os: backport RWX permission error patch work around for too few arguments to function init_disassemble_info() error arm/optee-os: backport linker warning patches arm/tf-a-tests: work around RWX permission error on segment Recipes for Trusted Services dependencies. Recipes for Trusted Services Secure Partitions ARM-FFA kernel drivers and kernel configs for Trusted Services Trusted Services test/demo NWd tools psa-api-tests for Trusted Services Include Trusted Services SPs into optee-os image Define qemuarm64-secureboot-ts CI pipeline and include it into meta-arm Gowtham Suresh Kumar (2): arm-bsp/secure-partitions: fix SMM gateway bug for EFI GetVariable() arm-bsp/u-boot: drop EFI GetVariable() workarounds patches Jon Mason (11): arm-bsp/fvp-base-arm32: Update kernel patch for v5.19 arm/qemuarm64-secureboot: remove tfa memory patch arm/linux-yocto: remove optee num pages kernel config variable arm-bsp/juno: drop scmi patch arm/qemuarm-secureboot: remove vmalloc from QB_KERNEL_CMDLINE_APPEND arm/fvp: use image-artifact-names as an image class atp/atp: drop package inherits arm/optee: Update to 3.18 arm-bsp/fvp-base: set preferred kernel to 5.15 arm/arm-bsp: Add yocto-kernel-cache bluetooth support arm-bsp/corstone1000: use compressed kernel image Khem Raj (2): gator-daemon: Define _GNU_SOURCE feature test macro optee-os: Add section attribute parameters when clang is used Peter Hoyes (3): docs: Update FVP_CONSOLES in runfvp documentation docs: Introduce meta-arm OEQA documentation arm/oeqa: Make linuxboot test case timeout configurable Richard Purdie (1): gem5/gem5-m5ops: Drop uneeded package inherit Ross Burton (2): arm/trusted-firmware-a: remove redundant patches arm/trusted-firmware-a: work around RWX permission error on segment Rui Miguel Silva (2): arm-bsp:corstone500: rebase u-boot patches on v2022.07 arm-bsp/corstone1000: rebase u-boot patches on top v2022.07 Vishnu Banavath (3): arm-bsp/trusted-firmware-a: Bump TF-A version for N1SDP arm-bsp/optee: add optee-os support for N1SDP target arm/optee: update optee-client to v3.18 Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I90aa0a94410dd208163af126566d22c77787abc2
Diffstat (limited to 'poky/meta/classes/license.bbclass')
-rw-r--r--poky/meta/classes/license.bbclass420
1 files changed, 0 insertions, 420 deletions
diff --git a/poky/meta/classes/license.bbclass b/poky/meta/classes/license.bbclass
deleted file mode 100644
index 4ebfc4fb92..0000000000
--- a/poky/meta/classes/license.bbclass
+++ /dev/null
@@ -1,420 +0,0 @@
-# Populates LICENSE_DIRECTORY as set in distro config with the license files as set by
-# LIC_FILES_CHKSUM.
-# TODO:
-# - There is a real issue revolving around license naming standards.
-
-LICENSE_DIRECTORY ??= "${DEPLOY_DIR}/licenses"
-LICSSTATEDIR = "${WORKDIR}/license-destdir/"
-
-# Create extra package with license texts and add it to RRECOMMENDS:${PN}
-LICENSE_CREATE_PACKAGE[type] = "boolean"
-LICENSE_CREATE_PACKAGE ??= "0"
-LICENSE_PACKAGE_SUFFIX ??= "-lic"
-LICENSE_FILES_DIRECTORY ??= "${datadir}/licenses/"
-
-addtask populate_lic after do_patch before do_build
-do_populate_lic[dirs] = "${LICSSTATEDIR}/${PN}"
-do_populate_lic[cleandirs] = "${LICSSTATEDIR}"
-
-python do_populate_lic() {
- """
- Populate LICENSE_DIRECTORY with licenses.
- """
- lic_files_paths = find_license_files(d)
-
- # The base directory we wrangle licenses to
- destdir = os.path.join(d.getVar('LICSSTATEDIR'), d.getVar('PN'))
- copy_license_files(lic_files_paths, destdir)
- info = get_recipe_info(d)
- with open(os.path.join(destdir, "recipeinfo"), "w") as f:
- for key in sorted(info.keys()):
- f.write("%s: %s\n" % (key, info[key]))
- oe.qa.exit_if_errors(d)
-}
-
-PSEUDO_IGNORE_PATHS .= ",${@','.join(((d.getVar('COMMON_LICENSE_DIR') or '') + ' ' + (d.getVar('LICENSE_PATH') or '') + ' ' + d.getVar('COREBASE') + '/meta/COPYING').split())}"
-# it would be better to copy them in do_install:append, but find_license_filesa is python
-python perform_packagecopy:prepend () {
- enabled = oe.data.typed_value('LICENSE_CREATE_PACKAGE', d)
- if d.getVar('CLASSOVERRIDE') == 'class-target' and enabled:
- lic_files_paths = find_license_files(d)
-
- # LICENSE_FILES_DIRECTORY starts with '/' so os.path.join cannot be used to join D and LICENSE_FILES_DIRECTORY
- destdir = d.getVar('D') + os.path.join(d.getVar('LICENSE_FILES_DIRECTORY'), d.getVar('PN'))
- copy_license_files(lic_files_paths, destdir)
- add_package_and_files(d)
-}
-perform_packagecopy[vardeps] += "LICENSE_CREATE_PACKAGE"
-
-def get_recipe_info(d):
- info = {}
- info["PV"] = d.getVar("PV")
- info["PR"] = d.getVar("PR")
- info["LICENSE"] = d.getVar("LICENSE")
- return info
-
-def add_package_and_files(d):
- packages = d.getVar('PACKAGES')
- files = d.getVar('LICENSE_FILES_DIRECTORY')
- pn = d.getVar('PN')
- pn_lic = "%s%s" % (pn, d.getVar('LICENSE_PACKAGE_SUFFIX', False))
- if pn_lic in packages.split():
- bb.warn("%s package already existed in %s." % (pn_lic, pn))
- else:
- # first in PACKAGES to be sure that nothing else gets LICENSE_FILES_DIRECTORY
- d.setVar('PACKAGES', "%s %s" % (pn_lic, packages))
- d.setVar('FILES:' + pn_lic, files)
-
-def copy_license_files(lic_files_paths, destdir):
- import shutil
- import errno
-
- bb.utils.mkdirhier(destdir)
- for (basename, path, beginline, endline) in lic_files_paths:
- try:
- src = path
- dst = os.path.join(destdir, basename)
- if os.path.exists(dst):
- os.remove(dst)
- if os.path.islink(src):
- src = os.path.realpath(src)
- canlink = os.access(src, os.W_OK) and (os.stat(src).st_dev == os.stat(destdir).st_dev) and beginline is None and endline is None
- if canlink:
- try:
- os.link(src, dst)
- except OSError as err:
- if err.errno == errno.EXDEV:
- # Copy license files if hardlink is not possible even if st_dev is the
- # same on source and destination (docker container with device-mapper?)
- canlink = False
- else:
- raise
- # Only chown if we did hardlink and we're running under pseudo
- if canlink and os.environ.get('PSEUDO_DISABLED') == '0':
- os.chown(dst,0,0)
- if not canlink:
- begin_idx = max(0, int(beginline) - 1) if beginline is not None else None
- end_idx = max(0, int(endline)) if endline is not None else None
- if begin_idx is None and end_idx is None:
- shutil.copyfile(src, dst)
- else:
- with open(src, 'rb') as src_f:
- with open(dst, 'wb') as dst_f:
- dst_f.write(b''.join(src_f.readlines()[begin_idx:end_idx]))
-
- except Exception as e:
- bb.warn("Could not copy license file %s to %s: %s" % (src, dst, e))
-
-def find_license_files(d):
- """
- Creates list of files used in LIC_FILES_CHKSUM and generic LICENSE files.
- """
- import shutil
- import oe.license
- from collections import defaultdict, OrderedDict
-
- # All the license files for the package
- lic_files = d.getVar('LIC_FILES_CHKSUM') or ""
- pn = d.getVar('PN')
- # The license files are located in S/LIC_FILE_CHECKSUM.
- srcdir = d.getVar('S')
- # Directory we store the generic licenses as set in the distro configuration
- generic_directory = d.getVar('COMMON_LICENSE_DIR')
- # List of basename, path tuples
- lic_files_paths = []
- # hash for keep track generic lics mappings
- non_generic_lics = {}
- # Entries from LIC_FILES_CHKSUM
- lic_chksums = {}
- license_source_dirs = []
- license_source_dirs.append(generic_directory)
- try:
- additional_lic_dirs = d.getVar('LICENSE_PATH').split()
- for lic_dir in additional_lic_dirs:
- license_source_dirs.append(lic_dir)
- except:
- pass
-
- class FindVisitor(oe.license.LicenseVisitor):
- def visit_Str(self, node):
- #
- # Until I figure out what to do with
- # the two modifiers I support (or greater = +
- # and "with exceptions" being *
- # we'll just strip out the modifier and put
- # the base license.
- find_license(node.s.replace("+", "").replace("*", ""))
- self.generic_visit(node)
-
- def visit_Constant(self, node):
- find_license(node.value.replace("+", "").replace("*", ""))
- self.generic_visit(node)
-
- def find_license(license_type):
- try:
- bb.utils.mkdirhier(gen_lic_dest)
- except:
- pass
- spdx_generic = None
- license_source = None
- # If the generic does not exist we need to check to see if there is an SPDX mapping to it,
- # unless NO_GENERIC_LICENSE is set.
- for lic_dir in license_source_dirs:
- if not os.path.isfile(os.path.join(lic_dir, license_type)):
- if d.getVarFlag('SPDXLICENSEMAP', license_type) != None:
- # Great, there is an SPDXLICENSEMAP. We can copy!
- bb.debug(1, "We need to use a SPDXLICENSEMAP for %s" % (license_type))
- spdx_generic = d.getVarFlag('SPDXLICENSEMAP', license_type)
- license_source = lic_dir
- break
- elif os.path.isfile(os.path.join(lic_dir, license_type)):
- spdx_generic = license_type
- license_source = lic_dir
- break
-
- non_generic_lic = d.getVarFlag('NO_GENERIC_LICENSE', license_type)
- if spdx_generic and license_source:
- # we really should copy to generic_ + spdx_generic, however, that ends up messing the manifest
- # audit up. This should be fixed in emit_pkgdata (or, we actually got and fix all the recipes)
-
- lic_files_paths.append(("generic_" + license_type, os.path.join(license_source, spdx_generic),
- None, None))
-
- # The user may attempt to use NO_GENERIC_LICENSE for a generic license which doesn't make sense
- # and should not be allowed, warn the user in this case.
- if d.getVarFlag('NO_GENERIC_LICENSE', license_type):
- oe.qa.handle_error("license-no-generic",
- "%s: %s is a generic license, please don't use NO_GENERIC_LICENSE for it." % (pn, license_type), d)
-
- elif non_generic_lic and non_generic_lic in lic_chksums:
- # if NO_GENERIC_LICENSE is set, we copy the license files from the fetched source
- # of the package rather than the license_source_dirs.
- lic_files_paths.append(("generic_" + license_type,
- os.path.join(srcdir, non_generic_lic), None, None))
- non_generic_lics[non_generic_lic] = license_type
- else:
- # Explicitly avoid the CLOSED license because this isn't generic
- if license_type != 'CLOSED':
- # And here is where we warn people that their licenses are lousy
- oe.qa.handle_error("license-exists",
- "%s: No generic license file exists for: %s in any provider" % (pn, license_type), d)
- pass
-
- if not generic_directory:
- bb.fatal("COMMON_LICENSE_DIR is unset. Please set this in your distro config")
-
- for url in lic_files.split():
- try:
- (method, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
- if method != "file" or not path:
- raise bb.fetch.MalformedUrl()
- except bb.fetch.MalformedUrl:
- bb.fatal("%s: LIC_FILES_CHKSUM contains an invalid URL: %s" % (d.getVar('PF'), url))
- # We want the license filename and path
- chksum = parm.get('md5', None)
- beginline = parm.get('beginline')
- endline = parm.get('endline')
- lic_chksums[path] = (chksum, beginline, endline)
-
- v = FindVisitor()
- try:
- v.visit_string(d.getVar('LICENSE'))
- except oe.license.InvalidLicense as exc:
- bb.fatal('%s: %s' % (d.getVar('PF'), exc))
- except SyntaxError:
- oe.qa.handle_error("license-syntax",
- "%s: Failed to parse it's LICENSE field." % (d.getVar('PF')), d)
- # Add files from LIC_FILES_CHKSUM to list of license files
- lic_chksum_paths = defaultdict(OrderedDict)
- for path, data in sorted(lic_chksums.items()):
- lic_chksum_paths[os.path.basename(path)][data] = (os.path.join(srcdir, path), data[1], data[2])
- for basename, files in lic_chksum_paths.items():
- if len(files) == 1:
- # Don't copy again a LICENSE already handled as non-generic
- if basename in non_generic_lics:
- continue
- data = list(files.values())[0]
- lic_files_paths.append(tuple([basename] + list(data)))
- else:
- # If there are multiple different license files with identical
- # basenames we rename them to <file>.0, <file>.1, ...
- for i, data in enumerate(files.values()):
- lic_files_paths.append(tuple(["%s.%d" % (basename, i)] + list(data)))
-
- return lic_files_paths
-
-def return_spdx(d, license):
- """
- This function returns the spdx mapping of a license if it exists.
- """
- return d.getVarFlag('SPDXLICENSEMAP', license)
-
-def canonical_license(d, license):
- """
- Return the canonical (SPDX) form of the license if available (so GPLv3
- becomes GPL-3.0-only) or the passed license if there is no canonical form.
- """
- return d.getVarFlag('SPDXLICENSEMAP', license) or license
-
-def expand_wildcard_licenses(d, wildcard_licenses):
- """
- There are some common wildcard values users may want to use. Support them
- here.
- """
- licenses = set(wildcard_licenses)
- mapping = {
- "AGPL-3.0*" : ["AGPL-3.0-only", "AGPL-3.0-or-later"],
- "GPL-3.0*" : ["GPL-3.0-only", "GPL-3.0-or-later"],
- "LGPL-3.0*" : ["LGPL-3.0-only", "LGPL-3.0-or-later"],
- }
- for k in mapping:
- if k in wildcard_licenses:
- licenses.remove(k)
- for item in mapping[k]:
- licenses.add(item)
-
- for l in licenses:
- if l in oe.license.obsolete_license_list():
- bb.fatal("Error, %s is an obsolete license, please use an SPDX reference in INCOMPATIBLE_LICENSE" % l)
- if "*" in l:
- bb.fatal("Error, %s is an invalid license wildcard entry" % l)
-
- return list(licenses)
-
-def incompatible_license_contains(license, truevalue, falsevalue, d):
- license = canonical_license(d, license)
- bad_licenses = (d.getVar('INCOMPATIBLE_LICENSE') or "").split()
- bad_licenses = expand_wildcard_licenses(d, bad_licenses)
- return truevalue if license in bad_licenses else falsevalue
-
-def incompatible_pkg_license(d, dont_want_licenses, license):
- # Handles an "or" or two license sets provided by
- # flattened_licenses(), pick one that works if possible.
- def choose_lic_set(a, b):
- return a if all(oe.license.license_ok(canonical_license(d, lic),
- dont_want_licenses) for lic in a) else b
-
- try:
- licenses = oe.license.flattened_licenses(license, choose_lic_set)
- except oe.license.LicenseError as exc:
- bb.fatal('%s: %s' % (d.getVar('P'), exc))
-
- incompatible_lic = []
- for l in licenses:
- license = canonical_license(d, l)
- if not oe.license.license_ok(license, dont_want_licenses):
- incompatible_lic.append(license)
-
- return sorted(incompatible_lic)
-
-def incompatible_license(d, dont_want_licenses, package=None):
- """
- This function checks if a recipe has only incompatible licenses. It also
- take into consideration 'or' operand. dont_want_licenses should be passed
- as canonical (SPDX) names.
- """
- import oe.license
- license = d.getVar("LICENSE:%s" % package) if package else None
- if not license:
- license = d.getVar('LICENSE')
-
- return incompatible_pkg_license(d, dont_want_licenses, license)
-
-def check_license_flags(d):
- """
- This function checks if a recipe has any LICENSE_FLAGS that
- aren't acceptable.
-
- If it does, it returns the all LICENSE_FLAGS missing from the list
- of acceptable license flags, or all of the LICENSE_FLAGS if there
- is no list of acceptable flags.
-
- If everything is is acceptable, it returns None.
- """
-
- def license_flag_matches(flag, acceptlist, pn):
- """
- Return True if flag matches something in acceptlist, None if not.
-
- Before we test a flag against the acceptlist, we append _${PN}
- to it. We then try to match that string against the
- acceptlist. This covers the normal case, where we expect
- LICENSE_FLAGS to be a simple string like 'commercial', which
- the user typically matches exactly in the acceptlist by
- explicitly appending the package name e.g 'commercial_foo'.
- If we fail the match however, we then split the flag across
- '_' and append each fragment and test until we either match or
- run out of fragments.
- """
- flag_pn = ("%s_%s" % (flag, pn))
- for candidate in acceptlist:
- if flag_pn == candidate:
- return True
-
- flag_cur = ""
- flagments = flag_pn.split("_")
- flagments.pop() # we've already tested the full string
- for flagment in flagments:
- if flag_cur:
- flag_cur += "_"
- flag_cur += flagment
- for candidate in acceptlist:
- if flag_cur == candidate:
- return True
- return False
-
- def all_license_flags_match(license_flags, acceptlist):
- """ Return all unmatched flags, None if all flags match """
- pn = d.getVar('PN')
- split_acceptlist = acceptlist.split()
- flags = []
- for flag in license_flags.split():
- if not license_flag_matches(flag, split_acceptlist, pn):
- flags.append(flag)
- return flags if flags else None
-
- license_flags = d.getVar('LICENSE_FLAGS')
- if license_flags:
- acceptlist = d.getVar('LICENSE_FLAGS_ACCEPTED')
- if not acceptlist:
- return license_flags.split()
- unmatched_flags = all_license_flags_match(license_flags, acceptlist)
- if unmatched_flags:
- return unmatched_flags
- return None
-
-def check_license_format(d):
- """
- This function checks if LICENSE is well defined,
- Validate operators in LICENSES.
- No spaces are allowed between LICENSES.
- """
- pn = d.getVar('PN')
- licenses = d.getVar('LICENSE')
- from oe.license import license_operator, license_operator_chars, license_pattern
-
- elements = list(filter(lambda x: x.strip(), license_operator.split(licenses)))
- for pos, element in enumerate(elements):
- if license_pattern.match(element):
- if pos > 0 and license_pattern.match(elements[pos - 1]):
- oe.qa.handle_error('license-format',
- '%s: LICENSE value "%s" has an invalid format - license names ' \
- 'must be separated by the following characters to indicate ' \
- 'the license selection: %s' %
- (pn, licenses, license_operator_chars), d)
- elif not license_operator.match(element):
- oe.qa.handle_error('license-format',
- '%s: LICENSE value "%s" has an invalid separator "%s" that is not ' \
- 'in the valid list of separators (%s)' %
- (pn, licenses, element, license_operator_chars), d)
-
-SSTATETASKS += "do_populate_lic"
-do_populate_lic[sstate-inputdirs] = "${LICSSTATEDIR}"
-do_populate_lic[sstate-outputdirs] = "${LICENSE_DIRECTORY}/"
-
-IMAGE_CLASSES:append = " license_image"
-
-python do_populate_lic_setscene () {
- sstate_setscene(d)
-}
-addtask do_populate_lic_setscene