diff options
author | Patrick Williams <patrick@stwcx.xyz> | 2021-10-07 00:15:23 +0300 |
---|---|---|
committer | Patrick Williams <patrick@stwcx.xyz> | 2021-10-07 00:16:59 +0300 |
commit | 93c203f3a38be7db9cd7bb6b4954f3eb655acc8e (patch) | |
tree | 04bda7390e80d6fbca827a2759af81fc2d8bab78 | |
parent | 17e10e6463249dda117e09d86749610931b52053 (diff) | |
download | openbmc-93c203f3a38be7db9cd7bb6b4954f3eb655acc8e.tar.xz |
subtree updates
meta-security: de6712a806..a85fbe980e:
Anton Antonov (1):
Upgrade parsec-service 0.8.1 and parsec-tool 0.4.0
Armin Kuster (1):
chkrootkit: update to 0.55
Bhupesh Sharma (1):
recipes-security/fscrypt: Add fscrypt .bb file
Christer Fletcher (1):
dmverity: Make use of DATA_BLOCK_SIZE variable in initrdscript.
Kristian Klausen (1):
libtpm: update to 0.8.7
Zoltán Böszörményi (1):
clamav: Set clamav:clamav ownership on /var/lib/clamav in do_install
poky: 06dcace68b..80f2b56ad8:
Anibal Limon (1):
recipes-support/ptest-runner: Bump to v2.4.2
Bruce Ashfield (5):
linux-yocto-dev: update to v5.15-rcX
lttng-modules/dev-upstream: update to 2.13-latest
lttng-modules: fix build against 5.15+
linux-yocto/5.13: drop recipes
yocto-bsp/5.13: drop recipes
Chandana kalluri (1):
scriptutils.py: Add check before deleting path
Daniel Wagenknecht (2):
common-tasks: add note about license implications of bundled initramfs
ref-manual: add note about license implications of bundled initramfs
Joshua Watt (2):
lib/oe/spdx.py: Add comments
python3: Fix sysroot reproducibility
Kenfe-Mickael Laventure (1):
package_ipk: Use localdata store when signing packages
Kiran Surendran (1):
ffmpeg: fix CVE-2021-38171
Kristian Klausen (2):
ovmf: add TPM PACKAGECONFIG and enable if tpm is in MACHINE_FEATURES
wic/bootimg-efi: Add Unified Kernel Image option
Markus Volk (1):
wic:direct.py: ignore invalid mountpoints during fstab update
Matt Madison (1):
autotools.bbclass: use ordinary append for file-checksums update
Michael Halstead (1):
releases: update to include 3.1.11
Minjae Kim (1):
vim: fix CVE-2021-3778
Quentin Schulz (1):
ref-manual: fix missed override syntax change
Rasmus Villemoes (1):
kernel.bbclass: remove unnecessary dead code
Richard Purdie (29):
oeqa/qemurunner: Use oe._exit(), not sys.exit()
pseudo: Add in ability to flush database with shutdown request
packagegroup-core-tools-profile: Exclude systemtap from riscv32 as well
bitbake: bitbake-worker: Allow shutdown/database flush of pseudo server at task exit
bitbake: siggen: Fix sorting in diff output
bitbake: cooker/command: Add a dummy event for tinfoil testing
oeqa/selftest/gotoolchain: Fix temp file cleanup
oeqa/buildproject: Ensure temp directories are cleaned up
libc_package/buildstats: Fix python regex quoting warnings
oeqa/selftest/tinfoil: Update to use test command
glew: Stop polluting /tmp during builds
rpm: Ensure compression parallelism isn't coded into rpms
package: Ensure pclist files are deterministic and don't use full paths
gnupg: Be deterministic about sendmail
mesa: Ensure megadrivers runtime mappings are deterministic
util-linux: Fix reproducibility
libtool: Allow libtool-cross to reproduce
gobject-introspection: Don't write $HOME into scripts
oeqa/selftest/bbtests: Add uuid to force build test
image: Exclude IMAGE_VERSION_SUFFIX from expansion in image tasks
sstatesig: Revert "Test cross/native hashserv method extension"
bitbake: data: Ensure functions are defined in a deterministic order
bitbake.conf: Set vardepvalue for PARALLEL_MAKEINST
externalsrc: Fix a source date epoch race in reproducible builds
sstatesig: Add processing for full build paths in sysroot files
python3: Drop broken pyc files
image-artifact-names: Use SOURCE_DATE_EPOCH when making reproducible builds for deploy
abi_version/sstate: Bump HASH_VERSION and SSTATE_VERSION
reproducible_build: Work around caching issues
Robert P. J. Day (3):
ref-manual: extend explanation of PACKAGE_DEBUG_SPLIT_STYLE
ref-manual: mention INHIBIT_PACKAGE_DEBUG_SPLIT variable
overview-manual: delete bad backslashes in SSTATE_MIRRORS example
Saul Wold (3):
spdx-licenses.json: Use 3.14 tagged version
spdx.py: Add SPDXAnnotation Object
create-spdx: Use SPDXAnnotation to track native recipes
Thomas Perrot (2):
libevent: mark util/monotonic_prc_fallback as retriable
ruby: fix the reproducibility issue
Tom Pollard (2):
bzip2: Update soname for libbz2 1.0.8
libsamplerate0: Set correct soname for 0.1.9
Trevor Woerner (1):
hello-mod/hello.c: convert printk to pr_xxx
William A. Kennington III (1):
rm_work.bbclass: Fix for files starting with -
Yi Zhao (1):
inetutils: fix CVE-2021-40491
wangmy (1):
strace: upgrade 5.13 -> 5.14
meta-openembedded: cff8331f96..23dc4f060f:
Armin Kuster (1):
README: update to main repo
Chandana kalluri (1):
python3-humanfriendly: Add nativesdk to BBCLASSEXTEND
Changqing Li (1):
layer.conf: add openembedded-layer as LAYERDEPENDS
Khem Raj (3):
smcroute: Add missing pkgconfig inherit
packagegroup-meta-oe: Add new packages smarty and libjs-jquery-icheck
gattlib: Upgrade to latest
LiweiSong (1):
chipsec: platform security assessment framework
Martin Jansa (5):
opencv: fix build with protobuf-3.18 when dnn PACKAGECONFIG is enabled
libeigen: backport fix for -Werror=class-memaccess issues when NEON is enabled
README: mention linux-libc-dev:i386 for luajit on ubuntu-21.10
gpsd: inherit pkgconfig
pahole: use MACHINE_ARCH
Matteo Croce (1):
pahole: don't download vendored libbpf
Mingli Yu (1):
libqb: Upgrade to 2.0.3
Nandor Han (1):
libiio: depend on avahi only when network backed is used
Peter Kjellerstedt (1):
netdata: Move the version to the file name and correct the SRC_URI
Richard Purdie (1):
gattlib: Place pkgconfig file in correct package
Yi Zhao (1):
phpmyadmin: upgrade 5.1.0 -> 5.1.1
wangmy (7):
unionfs-fuse: upgrade 2.1 -> 2.2
smcroute: upgrade 2.4.4 -> 2.5.3
snort: upgrade 2.9.18 -> 2.9.18.1
libsass: upgrade 3.6.4 -> 3.6.5
sanlock: upgrade 3.8.3 -> 3.8.4
sassc: upgrade 3.6.1 -> 3.6.2
valijson: upgrade 0.5 -> 0.6
zangrc (8):
python3-pychromecast: upgrade 9.2.0 -> 9.2.1
python3-pyro4: upgrade 4.80 -> 4.81
python3-pyzmq: upgrade 22.2.1 -> 22.3.0
python3-robotframework: upgrade 4.1 -> 4.1.1
python3-sqlparse: upgrade 0.4.1 -> 0.4.2
python3-tqdm: upgrade 4.62.2 -> 4.62.3
libjs-jquery-icheck: Add recipe
smarty: Add recipe
zhengruoqin (6):
python3-cmd2: upgrade 2.1.2 -> 2.2.0
python3-huey: upgrade 2.4.0 -> 2.4.1
python3-humanfriendly: upgrade 9.2 -> 10.0
cifs-utils: upgrade 6.13 -> 6.14
cmark: upgrade 0.30.1 -> 0.30.2
gpsd: upgrade 3.23 -> 3.23.1
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ie782ff5d7f3004fb1f1ac9a4c8644a178bae46ad
149 files changed, 4347 insertions, 2153 deletions
diff --git a/meta-openembedded/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.1.bb b/meta-openembedded/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.2.bb index 3dd5c82ee..0cc02983d 100644 --- a/meta-openembedded/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.1.bb +++ b/meta-openembedded/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.2.bb @@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://src/unionfs.c;beginline=3;endline=8;md5=30fa8de70fd8a SRC_URI = "git://github.com/rpodgorny/${BPN}.git;branch=master \ file://0001-support-cross-compiling.patch \ " -SRCREV = "8d732962423c3ca5be1f14b7ec139ff464e10a51" +SRCREV = "b0e3805d3d84d44ddf3e4e5238ae0332145d8157" DEPENDS = "fuse" diff --git a/meta-openembedded/meta-gnome/README b/meta-openembedded/meta-gnome/README index 1a9105000..fbb0d7247 100644 --- a/meta-openembedded/meta-gnome/README +++ b/meta-openembedded/meta-gnome/README @@ -2,13 +2,11 @@ Dependencies ------------ This layer depends on: -URI: git://github.com/openembedded/oe-core.git +URI: git://git.openembedded.org/openembedded-core branch: master -revision: HEAD -URI: git://github.com/openembedded/meta-oe.git +URI: git://git.openembedded.org/meta-openembedded branch: master -revision: HEAD Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-gnome]' in the subject' diff --git a/meta-openembedded/meta-initramfs/README b/meta-openembedded/meta-initramfs/README index a8f17ba85..119293a74 100644 --- a/meta-openembedded/meta-initramfs/README +++ b/meta-openembedded/meta-initramfs/README @@ -11,9 +11,8 @@ Dependencies This layer depends on: -URI: git://github.com/openembedded/oe-core.git +URI: git://git.openembedded.org/meta-openembedded branch: master -revision: HEAD Maintenance diff --git a/meta-openembedded/meta-multimedia/README b/meta-openembedded/meta-multimedia/README index 9c649ff87..235c34331 100644 --- a/meta-openembedded/meta-multimedia/README +++ b/meta-openembedded/meta-multimedia/README @@ -1,13 +1,11 @@ This layer depends on: -URI: git://github.com/openembedded/oe-core.git +URI: git://git.openembedded.org/openembedded-core branch: master -revision: HEAD -URI: git://github.com/openembedded/meta-oe.git +URI: git://git.openembedded.org/meta-openembedded layers: meta-oe branch: master -revision: HEAD Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-multimedia]' in the subject diff --git a/meta-openembedded/meta-multimedia/conf/layer.conf b/meta-openembedded/meta-multimedia/conf/layer.conf index 5a17a5048..56c3569d0 100644 --- a/meta-openembedded/meta-multimedia/conf/layer.conf +++ b/meta-openembedded/meta-multimedia/conf/layer.conf @@ -29,6 +29,6 @@ BBFILE_PRIORITY_multimedia-layer = "6" # cause compatibility issues with other layers LAYERVERSION_multimedia-layer = "1" -LAYERDEPENDS_multimedia-layer = "core meta-python" +LAYERDEPENDS_multimedia-layer = "core openembedded-layer meta-python" LAYERSERIES_COMPAT_multimedia-layer = "honister" diff --git a/meta-openembedded/meta-networking/README b/meta-openembedded/meta-networking/README index e1ba27d83..1aea8a661 100644 --- a/meta-openembedded/meta-networking/README +++ b/meta-openembedded/meta-networking/README @@ -17,21 +17,18 @@ Dependencies This layer depends on: -URI: git://github.com/openembedded/openembedded-core.git +URI: git://git.openembedded.org/openembedded-core branch: master -revision: HEAD For some recipes, the meta-oe layer is required: -URI: git://github.com/openembedded/meta-openembedded.git +URI: git://git.openembedded.org/meta-openembedded subdirectory: meta-oe branch: master -revision: HEAD -URI: git://github.com/openembedded/meta-openembedded.git +URI: git://git.openembedded.org/meta-openembedded subdirectory: meta-python branch: master -revision: HEAD Maintenance ----------- diff --git a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.18.bb b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.18.1.bb index 47c201fa1..1e2495406 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.18.bb +++ b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.18.1.bb @@ -14,7 +14,7 @@ SRC_URI = "https://www.snort.org/downloads/archive/snort/${BP}.tar.gz \ file://disable-run-test-program-while-cross-compiling.patch \ file://configure.in-disable-tirpc-checking-for-fedora.patch \ " -SRC_URI[sha256sum] = "d0308642f69e0d36f70db9703e5766afce2f44ff05b7d2c9cc8e3ac8323b2c77" +SRC_URI[sha256sum] = "da8af0f1b2e4f247d970c6a3c0e83fb6dcd5c84faa21aea49f306f269e8e28aa" UPSTREAM_CHECK_URI = "https://www.snort.org/downloads" UPSTREAM_CHECK_REGEX = "snort-(?P<pver>\d+(\.\d+)+)\.tar" diff --git a/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.13.bb b/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.14.bb index a8d3e91eb..5fafb4ef6 100644 --- a/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.13.bb +++ b/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.14.bb @@ -4,7 +4,7 @@ SECTION = "otherosfs" LICENSE = "GPLv3 & LGPLv3" LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" -SRCREV = "464a60344a324311a6f5bb326fdf5f422a3c9005" +SRCREV = "8c06dce7d596e478c20bc54bdcec87ad97f80a1b" SRC_URI = "git://git.samba.org/cifs-utils.git" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.4.4.bb b/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.5.3.bb index 0b63f79ac..8e62f588f 100644 --- a/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.4.4.bb +++ b/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.5.3.bb @@ -5,9 +5,9 @@ SECTION = "net" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" -SRCREV = "a8e5847e5f7e411be424f9b52a6cdf9d2ed4aeb5" +SRCREV = "d998043dc39cb763c9adec3eda3cc8b1d79f444c" SRC_URI = "git://github.com/troglobit/smcroute.git;branch=master;protocol=git" S = "${WORKDIR}/git" -inherit autotools +inherit autotools pkgconfig diff --git a/meta-openembedded/meta-oe/README b/meta-openembedded/meta-oe/README index 98f671d7c..676a2c892 100644 --- a/meta-openembedded/meta-oe/README +++ b/meta-openembedded/meta-oe/README @@ -5,7 +5,6 @@ This layer depends on: URI: git://github.com/openembedded/openembedded-core.git branch: master -revision: HEAD luajit recipe requires host compiler to be able to generate 32bit code when target is 32bit e.g. arm, so ensure that $CC -m32 is functional on build host, if building this recipe, needed @@ -15,7 +14,7 @@ e.g. on archlinux based distributions install prerequisites like below pacman -S lib32-gcc-libs lib32-glibc Ubuntu -sudo apt-get install gcc-multilib +sudo apt-get install gcc-multilib linux-libc-dev:i386 Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-oe]' in the subject' diff --git a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.5.bb b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.6.bb index 9b6f19f58..a57aaf08a 100644 --- a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.5.bb +++ b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.6.bb @@ -4,7 +4,7 @@ LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=015106c62262b2383f6c72063f0998f2" SRC_URI = "git://github.com/tristanpenman/valijson.git" -SRCREV = "c5487c39eb900b97535f8b3a38a17af098c784e3" +SRCREV = "2dfc7499a31b84edef71189f4247919268ebc74e" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-bsp/chipsec/chipsec_git.bb b/meta-openembedded/meta-oe/recipes-bsp/chipsec/chipsec_git.bb new file mode 100644 index 000000000..3339dc142 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-bsp/chipsec/chipsec_git.bb @@ -0,0 +1,35 @@ +SUMMARY = "CHIPSEC: Platform Security Assessment Framework" + +DESCRIPTION = "CHIPSEC is a framework for analyzing the security \ + of PC platforms including hardware, system firmware \ + (BIOS/UEFI), and platform components." + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=bc2d1f9b427be5fb63f6af9da56f7c5d" + +SRC_URI = "git://github.com/chipsec/chipsec.git;branch=master \ + " + +SRCREV = "b2a61684826dc8b9f622a844a40efea579cd7e7d" + +COMPATIBLE_HOST = "(i.86|x86_64).*-linux" + +S = "${WORKDIR}/git" +EXTRA_OEMAKE = "CC='${CC}' LDFLAGS='${LDFLAGS}' CFLAGS='${CFLAGS}'" + +DEPENDS = "virtual/kernel nasm-native python3-setuptools-native" +RDEPENDS:${PN} += "python3 python3-modules" + +inherit module distutils3 + +do_compile:append() { + cd ${S}/drivers/linux + oe_runmake KSRC=${STAGING_KERNEL_BUILDDIR} +} + +do_install:append() { + install -m 0644 ${S}/drivers/linux/chipsec.ko ${D}${PYTHON_SITEPACKAGES_DIR}/chipsec/helper/linux +} + +FILES:${PN} += "${exec_prefix} \ +" diff --git a/meta-openembedded/meta-oe/recipes-connectivity/gattlib/files/0001-cmake-Use-GNUInstallDirs.patch b/meta-openembedded/meta-oe/recipes-connectivity/gattlib/files/0001-cmake-Use-GNUInstallDirs.patch deleted file mode 100644 index ffe0a0067..000000000 --- a/meta-openembedded/meta-oe/recipes-connectivity/gattlib/files/0001-cmake-Use-GNUInstallDirs.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 63dc2d0c9384d85482dc4cbb3c179b4b0bb18d4e Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Thu, 19 Dec 2019 22:32:01 -0800 -Subject: [PATCH] cmake: Use GNUInstallDirs - -Helps install cmakefiles in right libdir - -Upstream-Status: Submitted [https://github.com/labapart/gattlib/pull/139] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - CMakeLists.txt | 5 +++-- - dbus/CMakeLists.txt | 18 ++++++++++-------- - 2 files changed, 13 insertions(+), 10 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 12d8d71..ded7239 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -152,7 +152,8 @@ endif() - # - # List of file to install - # --install(FILES include/gattlib.h DESTINATION include) --install(FILES ${PROJECT_BINARY_DIR}/gattlib.pc DESTINATION lib/pkgconfig) -+include(GNUInstallDirs) -+install(FILES include/gattlib.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) -+install(FILES ${PROJECT_BINARY_DIR}/gattlib.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) - - include(CPack) -diff --git a/dbus/CMakeLists.txt b/dbus/CMakeLists.txt -index f5096ce..cef031f 100644 ---- a/dbus/CMakeLists.txt -+++ b/dbus/CMakeLists.txt -@@ -19,7 +19,7 @@ - # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - # - --cmake_minimum_required(VERSION 2.6) -+cmake_minimum_required(VERSION 3.0) - - find_package(PkgConfig REQUIRED) - -@@ -119,4 +119,6 @@ endif() - add_library(gattlib SHARED ${gattlib_SRCS}) - target_link_libraries(gattlib ${gattlib_LIBS}) - --install(TARGETS gattlib LIBRARY DESTINATION lib) -+include(GNUInstallDirs) -+ -+install(TARGETS gattlib LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) --- -2.24.1 - diff --git a/meta-openembedded/meta-oe/recipes-connectivity/gattlib/gattlib_git.bb b/meta-openembedded/meta-oe/recipes-connectivity/gattlib/gattlib_git.bb index 234f840f9..ea4f4d546 100644 --- a/meta-openembedded/meta-oe/recipes-connectivity/gattlib/gattlib_git.bb +++ b/meta-openembedded/meta-oe/recipes-connectivity/gattlib/gattlib_git.bb @@ -1,8 +1,8 @@ DESCRIPTION = "Bluetooth library with attribute support" SECTION = "libs/network" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://CMakeLists.txt;beginline=1;endline=20;md5=8d5efeb9189b60866baff80ff791bf00" +LICENSE = "GPL-2.0+ | BSD-3-Clause" +LIC_FILES_CHKSUM = "file://CMakeLists.txt;beginline=1;endline=6;md5=71fdd2be76b4e95fe28324a70d4981c5" DEPENDS = "bluez5 glib-2.0" DEPENDS += "glib-2.0-native" @@ -11,11 +11,10 @@ PV = "0.2+git${SRCPV}" SRC_URI = "git://github.com/labapart/gattlib.git \ file://dbus-avoid-strange-chars-from-the-build-dir.patch \ - file://0001-cmake-Use-GNUInstallDirs.patch \ " SRCBRANCH = "master" -SRCREV = "5c7ee43bd70ee09a7170ddd55b9fdbdef69e9080" +SRCREV = "fa54ae42ccb3d8f911e00b02ed1e581537e47f79" S = "${WORKDIR}/git" @@ -29,4 +28,4 @@ EXTRA_OECMAKE += "-DGATTLIB_BUILD_DOCS=OFF" inherit pkgconfig cmake FILES:${PN} = "${libdir}/*" -FILES:${PN}-dev = "${includedir}/*" +FILES:${PN}-dev = "${includedir}/* ${libdir}/pkgconfig" diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb index efa7b7a66..dab983b94 100644 --- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb +++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb @@ -823,6 +823,7 @@ RDEPENDS:packagegroup-meta-oe-support ="\ remmina \ neon \ nmon \ + libjs-jquery-icheck \ libtinyxml \ libusbg \ libutempter \ @@ -874,6 +875,7 @@ RDEPENDS:packagegroup-meta-oe-support ="\ spitools \ libsass \ sassc \ + smarty \ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "synergy", "", d)} \ syslog-ng \ system-config-keyboard \ diff --git a/meta-openembedded/meta-oe/recipes-devtools/pahole/files/0003-CMakeList.txt-don-t-download-libbpf-source-when-syst.patch b/meta-openembedded/meta-oe/recipes-devtools/pahole/files/0003-CMakeList.txt-don-t-download-libbpf-source-when-syst.patch new file mode 100644 index 000000000..3d491e2ef --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/pahole/files/0003-CMakeList.txt-don-t-download-libbpf-source-when-syst.patch @@ -0,0 +1,34 @@ +From 3d20210d84f61ee2189927e2d9de9ce3e5a0a9c5 Mon Sep 17 00:00:00 2001 +From: Matteo Croce <mcroce@microsoft.com> +Date: Mon, 20 Sep 2021 18:44:52 +0200 +Subject: [PATCH] CMakeList.txt: Don't download libbpf source when system + library is used + +Upstream-Status: Backport [https://git.kernel.org/pub/scm/devel/pahole/pahole.git/commit/?id=3d20210d84f61ee2189927e2d9de9ce3e5a0a9c5] + +The build system always download the libbpf submodule, regardless if +we're using the embedded or the system version. +Download the libbpf source only if we're using the embedded one. + +Signed-off-by: Matteo Croce <mcroce@microsoft.com> +Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8523bce..2ab66e4 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -65,7 +65,7 @@ find_package(Python3 QUIET) + + # make sure git submodule(s) are checked out + find_package(Git QUIET) +-if(GIT_FOUND AND EXISTS "${PROJECT_SOURCE_DIR}/.git") ++if(LIBBPF_EMBEDDED AND GIT_FOUND AND EXISTS "${PROJECT_SOURCE_DIR}/.git") + # Update submodules as needed + option(GIT_SUBMODULE "Check submodules during build" ON) + if(GIT_SUBMODULE) +-- +2.31.1 + diff --git a/meta-openembedded/meta-oe/recipes-devtools/pahole/pahole_1.22.bb b/meta-openembedded/meta-oe/recipes-devtools/pahole/pahole_1.22.bb index 0fdde93e0..66f776135 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/pahole/pahole_1.22.bb +++ b/meta-openembedded/meta-oe/recipes-devtools/pahole/pahole_1.22.bb @@ -5,12 +5,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" DEPENDS = "elfutils zlib libbpf" +# Depends on MACHINE_ARCH libbpf +PACKAGE_ARCH = "${MACHINE_ARCH}" COMPATIBLE_HOST = "(x86_64|i.86|aarch64).*-linux" SRCREV = "f02af2553ea58ae1186226af0d0ec835a248358f" SRC_URI = "git://git.kernel.org/pub/scm/devel/pahole/pahole.git \ file://0001-CMakeList.txt-make-python-optional.patch \ - file://0002-Use-usr-bin-env-python3-instead-of-just-usr-bin-pyth.patch" + file://0002-Use-usr-bin-env-python3-instead-of-just-usr-bin-pyth.patch \ + file://0003-CMakeList.txt-don-t-download-libbpf-source-when-syst.patch" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb/0001-build-fix-configure-script-neglecting-re-enable-out-.patch b/meta-openembedded/meta-oe/recipes-extended/libqb/libqb/0001-build-fix-configure-script-neglecting-re-enable-out-.patch deleted file mode 100644 index c82f3bf01..000000000 --- a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb/0001-build-fix-configure-script-neglecting-re-enable-out-.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 73d2aea33e32272bac693550e8a3b0e3ad89707f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jan=20Pokorn=C3=BD?= <jpokorny@redhat.com> -Date: Tue, 26 Dec 2017 00:02:26 +0100 -Subject: [PATCH] build: fix configure script neglecting, re-enable out-of-tree - builds -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -For the former, a prototype and the final code got (hm, mysteriously) -intertwisted. For the latter, I am clearly guilty of (rare, anyway) -testing of the out-of-tree builds only with libqb-already-system-wide -scenario, which is rather shortsighted. - -Thanks Fabio and his ci.kronosnet.org project for spotting that. - -X-mas-present-for: Fabio M. Di Nitto <fdinitto@redhat.com> -Signed-off-by: Jan Pokorný <jpokorny@redhat.com> ---- -Upstream-Status: Backport - - configure.ac | 2 +- - lib/Makefile.am | 4 +++- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 9900310..f9761cc 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -710,7 +710,7 @@ if test "x${GCC}" = xyes; then - | grep __stop___verbose | cut -d" " -f 3) - test "${verbose_start_addr}" = "${verbose_stop_addr}" \ - && gcc_has_attribute_section_visible=no \ -- || { verbose_start_type=$(${READELF} -s backup \ -+ || { verbose_start_type=$(${READELF} -s "conftest${shrext_cmds}" \ - | sed -n '/__start___verbose/{s/^\s*//p;q}' \ - | tr -s ' ' \ - | cut -d" " -f6) -diff --git a/lib/Makefile.am b/lib/Makefile.am -index 6ca6b15..b035f0b 100644 ---- a/lib/Makefile.am -+++ b/lib/Makefile.am -@@ -101,7 +101,9 @@ endif - endif - - qblog_script.ld: %.ld: %.ld.in -- $(AM_V_GEN)$(CPP) -xc -I$(top_srcdir)/include -D_GNU_SOURCE -C -P $< \ -+ $(AM_V_GEN)$(CPP) -C -D_GNU_SOURCE -P \ -+ -I$(top_srcdir)/include -I$(top_builddir)/include \ -+ -xc $< \ - | sed -n "/$$(sed -n '/^[^#]/{s/[*\/]/\\&/g;p;q;}' $<)/,$$ p" \ - > $@ - --- -2.16.2 - diff --git a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.5.bb b/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.5.bb deleted file mode 100644 index d14fbaed3..000000000 --- a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.5.bb +++ /dev/null @@ -1,37 +0,0 @@ -SUMMARY = "An IPC library for high performance servers" -DESCRIPTION = "libqb is a library with the primary purpose of providing high performance client server reusable features. \ -It provides high performance logging, tracing, ipc, and poll." - -HOMEPAGE = "https://github.com/clusterlabs/libqb/wiki" -SECTION = "libs" -LICENSE = "LGPL-2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785" - -inherit autotools pkgconfig - -# v1.0.5 -SRCREV = "d08dbcf08b0da418bce9b5427dfd89522916322a" -SRC_URI = "git://github.com/ClusterLabs/${BPN}.git;branch=version_1 \ - file://0001-build-fix-configure-script-neglecting-re-enable-out-.patch \ - " -S = "${WORKDIR}/git" - -# otherwise do_configure fails -# configure:21609: checking whether linker workaround for orphan sections usable -# configure:21639: i586-oe-linux-gcc -m32 -march=i586 --sysroot=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot -o conftest -O -fno-omit-frame-pointer -g -feliminate-unused-debug-types -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0=/usr/src/debug/libqb/1.0.3+gitAUTOINC+c235284b5f-r0 -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot= -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native= -pipe -pthread -D_REENTRANT -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,conftest.ld conftest.c >&5 -# WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/8.1.0/ld: error: conftest.ld: SECTIONS seen after other input files; try -T/--script -# WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/8.1.0/ld: internal error in write_sections, at ../../gold/reloc.cc:791 -# collect2: error: ld returned 1 exit status -NOSECTION_FALLBACK = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-nosection-fallback', '', d)}" -NOSECTION_FALLBACK:toolchain-clang:mips64 = "--enable-nosection-fallback" - -EXTRA_OECONF += "${NOSECTION_FALLBACK}" - -CFLAGS += "-pthread -D_REENTRANT" - -do_configure:prepend() { - ( cd ${S} - ${S}/autogen.sh ) -} - -BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_2.0.3.bb b/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_2.0.3.bb new file mode 100644 index 000000000..18d6a4f27 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_2.0.3.bb @@ -0,0 +1,26 @@ +SUMMARY = "An IPC library for high performance servers" +DESCRIPTION = "libqb is a library with the primary purpose of providing high performance client server reusable features. \ +It provides high performance logging, tracing, ipc, and poll." + +HOMEPAGE = "https://github.com/clusterlabs/libqb/wiki" +SECTION = "libs" +LICENSE = "LGPL-2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785" + +inherit autotools pkgconfig + +SRCREV = "404adbcd998ec83643e47d92b3ea8d9c3970e68b" +SRC_URI = "git://github.com/ClusterLabs/${BPN}.git \ + " +S = "${WORKDIR}/git" + +DEPENDS += "libxml2" + +CFLAGS += "-pthread -D_REENTRANT" + +do_configure:prepend() { + ( cd ${S} + ${S}/autogen.sh ) +} + +BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.3.bb b/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.4.bb index 11a165ed7..fa08d0f98 100644 --- a/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.3.bb +++ b/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.4.bb @@ -16,7 +16,7 @@ PV .= "+git${SRCPV}" SRC_URI = "git://pagure.io/sanlock.git;protocol=http \ file://0001-sanlock-Replace-cp-a-with-cp-R-no-dereference-preser.patch;patchdir=../ \ " -SRCREV = "3a750fed849405c745dcb7b4ceb85f662c53d8d0" +SRCREV = "a181e951376d49a82eef17920c8ebedec80b4823" S = "${WORKDIR}/git/python" diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConscript-Correct-the-installation-of-gpsd.hotplug.patch b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConscript-Correct-the-installation-of-gpsd.hotplug.patch deleted file mode 100644 index 172f47825..000000000 --- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConscript-Correct-the-installation-of-gpsd.hotplug.patch +++ /dev/null @@ -1,29 +0,0 @@ -From c7183b2cc4a42f6ca7c2dc687ee7881efe9aeb73 Mon Sep 17 00:00:00 2001 -From: Peter Kjellerstedt <peter.kjellerstedt@axis.com> -Date: Sat, 28 Aug 2021 14:22:02 +0200 -Subject: [PATCH] SConscript: Correct the installation of gpsd.hotplug - -Without this, `scons systemd=false && scons udev-install` fails with: - - cp .../gpsd/gpsd-3.23.1~dev/gpsd.hotplug /home/pkj/gpsd/foobar/lib/udev - cp: cannot stat '.../gpsd/gpsd-3.23.1~dev/gpsd.hotplug': No such file or directory - -Upstream-Status: Submitted [https://gitlab.com/gpsd/gpsd/-/merge_requests/277] -Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> ---- - SConscript | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/SConscript b/SConscript -index 1cd3354e1..e578012f5 100644 ---- a/SConscript -+++ b/SConscript -@@ -3060,7 +3060,7 @@ if env['systemd']: - hotplug_wrapper_install = [] - else: - hotplug_wrapper_install = [ -- 'cp $SRCDIR/gpsd.hotplug ' + DESTDIR + env['udevdir'], -+ 'cp $SRCDIR/../gpsd.hotplug ' + DESTDIR + env['udevdir'], - 'chmod a+x ' + DESTDIR + env['udevdir'] + '/gpsd.hotplug' - ] - diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.23.bb b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.23.1.bb index aaf742929..4740e0c98 100644 --- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.23.bb +++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.23.1.bb @@ -6,13 +6,11 @@ DEPENDS = "dbus ncurses python3 pps-tools" PROVIDES = "virtual/gpsd" SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \ - file://0001-SConscript-Correct-the-installation-of-gpsd.hotplug.patch \ - file://gpsd.init \ -" -SRC_URI[md5sum] = "b4f96cb01cbc06542b1cb66b3296078d" -SRC_URI[sha256sum] = "522c2362a7eb2d7ac37eaa1504f12aded1c373479a87ba06cc6795974b567bbc" + file://gpsd.init \ + " +SRC_URI[sha256sum] = "0b991ce9a46538c4ea450f7a8ee428ff44fb4f8d665fddf2ffe40fe0ae9a6c09" -inherit scons update-rc.d python3-dir python3native systemd update-alternatives +inherit scons update-rc.d python3-dir python3native systemd update-alternatives pkgconfig INITSCRIPT_PACKAGES = "gpsd-conf" INITSCRIPT_NAME = "gpsd" diff --git a/meta-openembedded/meta-oe/recipes-support/cmark/cmark_0.30.1.bb b/meta-openembedded/meta-oe/recipes-support/cmark/cmark_0.30.2.bb index e2db8aa76..6669c6e50 100644 --- a/meta-openembedded/meta-oe/recipes-support/cmark/cmark_0.30.1.bb +++ b/meta-openembedded/meta-oe/recipes-support/cmark/cmark_0.30.2.bb @@ -4,7 +4,7 @@ LICENSE = "BSD-2-Clause & MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=81f9cae6293cc0345a9144b78152ab62" SRC_URI = "git://github.com/commonmark/cmark.git" -SRCREV = "977b128291c0cf6c5053cdcf2ac72e627f09c105" +SRCREV = "a8da5a2f252b96eca60ae8bada1a9ba059a38401" S = "${WORKDIR}/git" inherit cmake lib_package diff --git a/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen/0001-Default-eigen_packet_wrapper-constructor.patch b/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen/0001-Default-eigen_packet_wrapper-constructor.patch new file mode 100644 index 000000000..84b5a4da9 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen/0001-Default-eigen_packet_wrapper-constructor.patch @@ -0,0 +1,72 @@ +From cb507309937958c632147de87e8f1231d6698847 Mon Sep 17 00:00:00 2001 +From: Antonio Sanchez <cantonios@google.com> +Date: Tue, 14 Sep 2021 10:57:22 -0700 +Subject: [PATCH] Default eigen_packet_wrapper constructor. + +This makes it trivial, allowing use of `memcpy`. + +Fixes #2326 + +Upstream-Status: Backport [https://gitlab.com/libeigen/eigen/-/merge_requests/645/diffs?commit_id=cb507309937958c632147de87e8f1231d6698847] +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> + +* fixes build failures for arm targets with NEON enabled (e.g. -mfpu=neon-vfpv4) + for recipes with -Werror enabled and gcc-11, e.g. fuse-core, robot-localization, + prbt-ikfast-manipulator-plugin, rm-chassis-controllers in meta-ros1-noetic: + +In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:214, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34: +/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function 'Packet Eigen::internal::pload(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]': +/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1671:9: error: 'void* memcpy(void*, const void*, size_t)' copying an object of non-trivial type 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} from an array of 'const int8_t' {aka 'const signed char'} [-Werror=class-memaccess] + 1671 | memcpy(&res, from, sizeof(Packet4c)); + | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:172, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34: +/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} declared here + 159 | struct eigen_packet_wrapper + | ^~~~~~~~~~~~~~~~~~~~ +In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:214, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34: +/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function 'Packet Eigen::internal::ploadu(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]': +/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1716:9: error: 'void* memcpy(void*, const void*, size_t)' copying an object of non-trivial type 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} from an array of 'const int8_t' {aka 'const signed char'} [-Werror=class-memaccess] + 1716 | memcpy(&res, from, sizeof(Packet4c)); + | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:172, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37, + from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34: +/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} declared here + 159 | struct eigen_packet_wrapper + | ^~~~~~~~~~~~~~~~~~~~ +cc1plus: all warnings being treated as errors + +--- + Eigen/src/Core/GenericPacketMath.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Eigen/src/Core/GenericPacketMath.h b/Eigen/src/Core/GenericPacketMath.h +index 8f8f64f15..72234288e 100644 +--- a/Eigen/src/Core/GenericPacketMath.h ++++ b/Eigen/src/Core/GenericPacketMath.h +@@ -162,7 +162,7 @@ struct eigen_packet_wrapper + { + EIGEN_ALWAYS_INLINE operator T&() { return m_val; } + EIGEN_ALWAYS_INLINE operator const T&() const { return m_val; } +- EIGEN_ALWAYS_INLINE eigen_packet_wrapper() {} ++ EIGEN_ALWAYS_INLINE eigen_packet_wrapper() = default; + EIGEN_ALWAYS_INLINE eigen_packet_wrapper(const T &v) : m_val(v) {} + EIGEN_ALWAYS_INLINE eigen_packet_wrapper& operator=(const T &v) { + m_val = v; +-- +2.17.1 + diff --git a/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.4.0.bb b/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.4.0.bb index 54b6f74d8..9682f7a8e 100644 --- a/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.4.0.bb +++ b/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.4.0.bb @@ -9,7 +9,9 @@ LIC_FILES_CHKSUM = "file://COPYING.MPL2;md5=815ca599c9df247a0c7f619bab123dad \ file://COPYING.MINPACK;md5=71d91b0f75ce79a75d3108a72bef8116 \ " -SRC_URI = "git://gitlab.com/libeigen/eigen.git;protocol=http;nobranch=1" +SRC_URI = "git://gitlab.com/libeigen/eigen.git;protocol=http;branch=3.4 \ + file://0001-Default-eigen_packet_wrapper-constructor.patch \ +" SRCREV = "3147391d946bb4b6c68edd901f2add6ac1f31f8c" diff --git a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb index 6ac534a28..488d4e3b0 100644 --- a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb +++ b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb @@ -18,7 +18,6 @@ DISTUTILS_SETUP_PATH ?= "${B}/bindings/python/" DEPENDS = " \ flex-native bison-native libaio \ - ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \ " inherit cmake python3native systemd setuptools3 @@ -31,8 +30,13 @@ EXTRA_OECMAKE = " \ PACKAGECONFIG ??= "usb_backend network_backend serial_backend" +NETWORK_BACKEND_DEPENDENCIES = "\ + libxml2 \ + ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \ +" + PACKAGECONFIG[usb_backend] = "-DWITH_USB_BACKEND=ON,-DWITH_USB_BACKEND=OFF,libusb1 libxml2" -PACKAGECONFIG[network_backend] = "-DWITH_NETWORK_BACKEND=ON,-DWITH_NETWORK_BACKEND=OFF,libxml2" +PACKAGECONFIG[network_backend] = "-DWITH_NETWORK_BACKEND=ON,-DWITH_NETWORK_BACKEND=OFF, ${NETWORK_BACKEND_DEPENDENCIES}" PACKAGECONFIG[serial_backend] = "-DWITH_SERIAL_BACKEND=ON,-DWITH_SERIAL_BACKEND=off,libserialport libxml2" PACKAGECONFIG[libiio-python3] = "-DPYTHON_BINDINGS=ON,-DPYTHON_BINDINGS=OFF" diff --git a/meta-openembedded/meta-oe/recipes-support/libjs/libjs-jquery-icheck_1.0.3.bb b/meta-openembedded/meta-oe/recipes-support/libjs/libjs-jquery-icheck_1.0.3.bb new file mode 100644 index 000000000..f14b619a9 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-support/libjs/libjs-jquery-icheck_1.0.3.bb @@ -0,0 +1,42 @@ +DESCRIPTION = "Highly customizable checkboxes and radio buttons (jQuery & Zepto)" +SECTION = "console/network" +HOMEPAGE = "http://fronteed.com/iCheck" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://icheck.js;start_line=1;end_line=8;md5=404078d7de9f05ed64d364274f790055" + +DEPENDS = "virtual/libc" + +SRC_URI = "git://github.com/fronteed/icheck.git;protocol=https;branch=${PV};tag=${PV}" + +FILES:${PN} += "${datadir}/javascript/jquery-icheck" + +S = "${WORKDIR}/git" + +do_install() { + install -d ${D}${datadir}/javascript/jquery-icheck/ + install -m 0644 ${S}/icheck.js ${D}${datadir}/javascript/jquery-icheck/ + install -m 0644 ${S}/icheck.min.js ${D}${datadir}/javascript/jquery-icheck/ + + install -d ${D}${datadir}/javascript/jquery-icheck/skins/ + install -m 0644 ${S}/skins/all.css ${D}${datadir}/javascript/jquery-icheck/skins/ + + install -d ${D}${datadir}/javascript/jquery-icheck/skins/flat/ + install -m 0644 ${S}/skins/flat/* ${D}${datadir}/javascript/jquery-icheck/skins/flat/ + + install -d ${D}${datadir}/javascript/jquery-icheck/skins/futurico/ + install -m 0644 ${S}/skins/futurico/* ${D}${datadir}/javascript/jquery-icheck/skins/futurico/ + + install -d ${D}${datadir}/javascript/jquery-icheck/skins/line/ + install -m 0644 ${S}/skins/line/* ${D}${datadir}/javascript/jquery-icheck/skins/line/ + + install -d ${D}${datadir}/javascript/jquery-icheck/skins/minimal/ + install -m 0644 ${S}/skins/minimal/* ${D}${datadir}/javascript/jquery-icheck/skins/minimal/ + + install -d ${D}${datadir}/javascript/jquery-icheck/skins/polaris/ + install -m 0644 ${S}/skins/polaris/* ${D}${datadir}/javascript/jquery-icheck/skins/polaris/ + + install -d ${D}${datadir}/javascript/jquery-icheck/skins/square/ + install -m 0644 ${S}/skins/square/* ${D}${datadir}/javascript/jquery-icheck/skins/square/ +} + diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch new file mode 100644 index 000000000..5d88d1a6a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch @@ -0,0 +1,41 @@ +From 9cfa84313c5833d7295fcf57be93d5d2aaadfd88 Mon Sep 17 00:00:00 2001 +From: Vincent Rabaud <vrabaud@google.com> +Date: Sat, 10 Jul 2021 00:21:52 +0200 +Subject: [PATCH] Use the one argument version of SetTotalBytesLimit. + +The two argument versions has been deprecated, cf +https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.io.coded_stream + +Upstream-Status: Backport [9cfa84313c5833d7295fcf57be93d5d2aaadfd88 - from master after 4.5.3 tag] +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> +--- + modules/dnn/src/caffe/caffe_io.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/modules/dnn/src/caffe/caffe_io.cpp b/modules/dnn/src/caffe/caffe_io.cpp +index 2fc4d84f46..ebecf95eea 100644 +--- a/modules/dnn/src/caffe/caffe_io.cpp ++++ b/modules/dnn/src/caffe/caffe_io.cpp +@@ -92,6 +92,7 @@ + #ifdef HAVE_PROTOBUF + #include <google/protobuf/io/coded_stream.h> + #include <google/protobuf/io/zero_copy_stream_impl.h> ++#include <google/protobuf/stubs/common.h> + #include <google/protobuf/text_format.h> + + #include <opencv2/core.hpp> +@@ -1111,7 +1112,11 @@ static const int kProtoReadBytesLimit = INT_MAX; // Max size of 2 GB minus 1 by + + bool ReadProtoFromBinary(ZeroCopyInputStream* input, Message *proto) { + CodedInputStream coded_input(input); ++#if GOOGLE_PROTOBUF_VERSION >= 3006000 ++ coded_input.SetTotalBytesLimit(kProtoReadBytesLimit); ++#else + coded_input.SetTotalBytesLimit(kProtoReadBytesLimit, 536870912); ++#endif + + return proto->ParseFromCodedStream(&coded_input); + } +-- +2.32.0 + diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb index 7eefbccfe..361ac0cb9 100644 --- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb +++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb @@ -52,6 +52,7 @@ SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \ file://download.patch \ file://0001-Make-ts-module-external.patch \ file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \ + file://0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch \ " SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib" diff --git a/meta-openembedded/meta-oe/recipes-support/sass/libsass_git.bb b/meta-openembedded/meta-oe/recipes-support/sass/libsass_git.bb index 9cba3a890..bc2ec805e 100644 --- a/meta-openembedded/meta-oe/recipes-support/sass/libsass_git.bb +++ b/meta-openembedded/meta-oe/recipes-support/sass/libsass_git.bb @@ -6,8 +6,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=8f34396ca205f5e119ee77aae91fa27d" inherit autotools SRC_URI = "git://github.com/sass/libsass.git;branch=master" -SRCREV = "8d312a1c91bb7dd22883ebdfc829003f75a82396" -PV = "3.6.4" +SRCREV = "f6afdbb9288d20d1257122e71d88e53348a53af3" +PV = "3.6.5" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-support/sass/sassc_git.bb b/meta-openembedded/meta-oe/recipes-support/sass/sassc_git.bb index 3c7a55cc3..407cbbddd 100644 --- a/meta-openembedded/meta-oe/recipes-support/sass/sassc_git.bb +++ b/meta-openembedded/meta-oe/recipes-support/sass/sassc_git.bb @@ -7,8 +7,8 @@ DEPENDS = "libsass" inherit autotools pkgconfig SRC_URI = "git://github.com/sass/sassc.git" -SRCREV = "46748216ba0b60545e814c07846ca10c9fefc5b6" +SRCREV = "66f0ef37e7f0ad3a65d2f481eff09d09408f42d0" S = "${WORKDIR}/git" -PV = "3.6.1" +PV = "3.6.2" BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-support/smarty/smarty_3.1.39.bb b/meta-openembedded/meta-oe/recipes-support/smarty/smarty_3.1.39.bb new file mode 100644 index 000000000..50d995838 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-support/smarty/smarty_3.1.39.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "the compiling PHP template engine" +SECTION = "console/network" +HOMEPAGE = "https://www.smarty.net/" + +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://LICENSE;md5=2c0f216b2120ffc367e20f2b56df51b3" + +DEPENDS = "php" + +SRC_URI = "git://github.com/smarty-php/smarty.git;protocol=https;tag=v${PV}" + +FILES:${PN} = "${datadir}/php/smarty3/" + +S = "${WORKDIR}/git" + +do_install() { + install -d ${D}${datadir}/php/smarty3/libs/ + install -m 0644 ${S}/libs/*.php ${D}${datadir}/php/smarty3/libs/ + + install -d ${D}${datadir}/php/smarty3/libs/plugins + install -m 0644 ${S}/libs/plugins/*.php ${D}${datadir}/php/smarty3/libs/plugins/ + + install -d ${D}${datadir}/php/smarty3/libs/sysplugins + install -m 0644 ${S}/libs/sysplugins/*.php ${D}${datadir}/php/smarty3/libs/sysplugins/ +} diff --git a/meta-openembedded/meta-perl/README b/meta-openembedded/meta-perl/README index c519dff52..13014b0ff 100644 --- a/meta-openembedded/meta-perl/README +++ b/meta-openembedded/meta-perl/README @@ -53,8 +53,6 @@ This layer depends on: URI: git://git.openembedded.org/openembedded-core branch: master - revision: HEAD - prio: default Adding the meta-perl layer to your build --------------------------------------- diff --git a/meta-openembedded/meta-python/README b/meta-openembedded/meta-python/README index df6abe0e2..194bac39c 100644 --- a/meta-openembedded/meta-python/README +++ b/meta-openembedded/meta-python/README @@ -14,12 +14,10 @@ The meta-python layer depends on: URI: git://git.openembedded.org/openembedded-core layers: meta branch: master - revision: HEAD URI: git://git.openembedded.org/meta-openembedded layers: meta-oe branch: master - revision: HEAD Please follow the recommended setup procedures of your OE distribution. For Angstrom that is: diff --git a/meta-openembedded/meta-python/recipes-connectivity/python-pyro4/python3-pyro4_4.80.bb b/meta-openembedded/meta-python/recipes-connectivity/python-pyro4/python3-pyro4_4.81.bb index ba331eea0..b05ce34f8 100644 --- a/meta-openembedded/meta-python/recipes-connectivity/python-pyro4/python3-pyro4_4.80.bb +++ b/meta-openembedded/meta-python/recipes-connectivity/python-pyro4/python3-pyro4_4.81.bb @@ -2,8 +2,7 @@ SUMMARY = "Python Remote Objects" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=cd13dafd4eeb0802bb6efea6b4a4bdbc" -SRC_URI[md5sum] = "e31fc077e06de9fc0bb061e357401954" -SRC_URI[sha256sum] = "46847ca703de3f483fbd0b2d22622f36eff03e6ef7ec7704d4ecaa3964cb2220" +SRC_URI[sha256sum] = "e130da06478b813173b959f7013d134865e07fbf58cc5f1a2598f99479cdac5f" PYPI_PACKAGE = "Pyro4" diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cmd2_2.1.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cmd2_2.2.0.bb index 874e7cf0c..2632ce1c8 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-cmd2_2.1.2.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-cmd2_2.2.0.bb @@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=4c527bcb481233ebcb803de975f42701" DEPENDS += "${PYTHON_PN}-setuptools-scm-native" -SRC_URI[sha256sum] = "25dbb2e9847aaa686a8a21e84e3d101db8b79f5cb992e044fc54210ab8c0ad41" +SRC_URI[sha256sum] = "34cd12424d9e2835eff125146af3d9f4a4c2931c6bc5a3cea9790bd4f55756d9" inherit pypi setuptools3 @@ -17,6 +17,7 @@ RDEPENDS:${PN} += "\ ${PYTHON_PN}-compression \ ${PYTHON_PN}-pydoc \ ${PYTHON_PN}-json \ + ${PYTHON_PN}-numbers \ " BBCLASSEXTEND = "native nativesdk" diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.4.1.bb index afdc65b24..64bd8880e 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.4.0.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.4.1.bb @@ -5,7 +5,14 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=5cac039fcc82f01141cc170b48f315d4" PYPI_PACKAGE = "huey" -SRC_URI[sha256sum] = "82981fb8f1964e8c9ee8f4ebcd5a2ebad561dd93ce8b454bf4f4ecfb54bd1411" +SRC_URI[sha256sum] = "bd55e90746cec16e7a61d6dc60d4591c74cba59000dca96c387a4d4eee1395f6" + +RDEPENDS:${PN} += " \ + python3-datetime \ + python3-logging \ + python3-multiprocessing \ + python3-json \ +" inherit pypi setuptools3 diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-humanfriendly_9.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanfriendly_10.0.bb index d87ed4d2a..7d185989d 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-humanfriendly_9.2.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanfriendly_10.0.bb @@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=5d178009f806c2bdd498a19be0013a7a" PYPI_PACKAGE = "humanfriendly" -SRC_URI[sha256sum] = "f7dba53ac7935fd0b4a2fc9a29e316ddd9ea135fb3052d3d0279d10c18ff9c48" +SRC_URI[sha256sum] = "6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc" inherit pypi setuptools3 @@ -21,4 +21,4 @@ RDEPENDS:${PN}:class-target += " \ ${PYTHON_PN}-stringold \ " -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.2.1.bb index c1f52881a..1fd76ed39 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.2.0.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.2.1.bb @@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/balloob/pychromecast" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=b1dbd4e85f47b389bdadee9c694669f5" -SRC_URI[sha256sum] = "6d34593575cf77565df47af4c75dd47c6a65831ec18a8c10b5367b2f1c172f0a" +SRC_URI[sha256sum] = "883d6e836ff5f1068a8bd00364a15b4c9854293086495e9fd9cacd9b4d54c0bf" PYPI_PACKAGE = "PyChromecast" diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyzmq_22.2.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyzmq_22.3.0.bb index f58074a9a..3c91eee16 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyzmq_22.2.1.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyzmq_22.3.0.bb @@ -8,7 +8,7 @@ DEPENDS = "zeromq" FILESEXTRAPATHS:prepend := "${THISDIR}/python-pyzmq:" SRC_URI += "file://club-rpath-out.patch" -SRC_URI[sha256sum] = "6d18c76676771fd891ca8e0e68da0bbfb88e30129835c0ade748016adb3b6242" +SRC_URI[sha256sum] = "8eddc033e716f8c91c6a2112f0a8ebc5e00532b4a6ae1eb0ccc48e027f9c671c" inherit pypi pkgconfig setuptools3 diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.1.1.bb index 7c6c41af7..d715f3513 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.1.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.1.1.bb @@ -13,7 +13,7 @@ inherit pypi setuptools3 PYPI_PACKAGE_EXT = "zip" -SRC_URI[sha256sum] = "567f2a21f0906635e21d45fe3cb84a4809a12980c9f2706a8a5f65f40f6b4ccd" +SRC_URI[sha256sum] = "663f84c177b2fa9b3b782939e31637a057a33f3a4b29067812f1259b7f4bad35" RDEPENDS:${PN} += " \ ${PYTHON_PN}-shell \ diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlparse_0.4.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlparse_0.4.2.bb index 3565da7d1..0980ff9c2 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlparse_0.4.1.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlparse_0.4.2.bb @@ -8,8 +8,7 @@ SRC_URI += "file://0001-sqlparse-change-shebang-to-python3.patch \ file://run-ptest \ " -SRC_URI[md5sum] = "eebbc6b5f1033054873033e54b0c1266" -SRC_URI[sha256sum] = "0f91fd2e829c44362cbcfab3e9ae12e22badaa8a29ad5ff599f9ec109f0454e8" +SRC_URI[sha256sum] = "0c00730c74263a94e5a9919ade150dfc3b19c574389985446148402998287dae" export BUILD_SYS export HOST_SYS diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.62.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.62.3.bb index bbdd795aa..148431d0a 100644 --- a/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.62.2.bb +++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.62.3.bb @@ -3,9 +3,9 @@ HOMEPAGE = "http://tqdm.github.io/" SECTION = "devel/python" LICENSE = "MIT & MPL-2.0" -LIC_FILES_CHKSUM = "file://LICENCE;md5=59e4271a933d33edfe60237db377a14b" +LIC_FILES_CHKSUM = "file://LICENCE;md5=1672e2674934fd93a31c09cf17f34100" -SRC_URI[sha256sum] = "a4d6d112e507ef98513ac119ead1159d286deab17dffedd96921412c2d236ff5" +SRC_URI[sha256sum] = "d359de7217506c9851b7869f3708d8ee53ed70a1b8edbba4dbcb47442592920d" inherit pypi setuptools3 diff --git a/meta-openembedded/meta-webserver/README b/meta-openembedded/meta-webserver/README index 7b6063070..d23f6cc65 100644 --- a/meta-openembedded/meta-webserver/README +++ b/meta-openembedded/meta-webserver/README @@ -11,17 +11,15 @@ Dependencies This layer depends on: -URI: git://github.com/openembedded/oe-core.git +URI: git://git.openembedded.org/openembedded-core subdirectory: meta branch: master -revision: HEAD For some recipes, the meta-oe layer is required: -URI: git://github.com/openembedded/meta-oe.git +URI: git://git.openembedded.org/meta-openembedded subdirectory: meta-oe branch: master -revision: HEAD diff --git a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.1.bb index 84e1da620..b64824c47 100644 --- a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb +++ b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.1.bb @@ -11,8 +11,8 @@ SRC_URI = "https://files.phpmyadmin.net/phpMyAdmin/${PV}/phpMyAdmin-${PV}-all-la file://apache.conf \ " -SRC_URI[md5sum] = "4587343e706c5434adf91c396b418731" -SRC_URI[sha256sum] = "aa8ccf357f672012384df34e1c2bc70147476761c8458a0dad6233497e142c68" +SRC_URI[md5sum] = "e73377b11b7d38fa3f3014f2799c5252" +SRC_URI[sha256sum] = "1964d7190223c11e89fa1b7970c618e3a3bae2e859f5f60383f64c3848ef6921" UPSTREAM_CHECK_URI = "https://www.phpmyadmin.net/downloads/" UPSTREAM_CHECK_REGEX = "phpMyAdmin-(?P<pver>\d+(\.\d+)+)-all-languages.tar.xz" diff --git a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_git.bb b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_1.22.1.bb index 7ec989815..fb4d27294 100644 --- a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_git.bb +++ b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_1.22.1.bb @@ -5,15 +5,14 @@ DESCRIPTION = "Netdata is high-fidelity infrastructure monitoring and troublesho LICENSE = "GPLv3" LIC_FILES_CHKSUM = "file://LICENSE;md5=fc9b848046ef54b5eaee6071947abd24" -SRC_URI:append = " git://github.com/firehol/netdata.git;protocol=https" +SRC_URI = "git://github.com/netdata/netdata.git;protocol=https" SRCREV = "1be9200ba8e11dc81a2101d85a2725137d43f766" -PV = "1.22.1" # default netdata.conf for netdata configuration -SRC_URI += " file://netdata.conf" +SRC_URI += "file://netdata.conf" # file for providing systemd service support -SRC_URI += " file://netdata.service" +SRC_URI += "file://netdata.service" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-xfce/README b/meta-openembedded/meta-xfce/README index bbf4b2edf..1e9acc471 100644 --- a/meta-openembedded/meta-xfce/README +++ b/meta-openembedded/meta-xfce/README @@ -1,12 +1,11 @@ This layer depends on: -URI: git://github.com/openembedded/oe-core.git +URI: git://git.openembedded.org/openembedded-core branch: master -revision: HEAD -URI: git://github.com/openembedded/meta-oe.git +URI: git://git.openembedded.org/meta-openembedded branch: master -revision: HEAD + meta-xfce depends on meta-oe, meta-gnome and meta-multimedia in this repository. To avoid dependencies on meta-multimedia you need to mask recipes by adding diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/files/cryptoki.patch b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/cryptoki.patch deleted file mode 100644 index c23447967..000000000 --- a/meta-security/meta-parsec/recipes-parsec/parsec-service/files/cryptoki.patch +++ /dev/null @@ -1,18 +0,0 @@ - -Use cryptoki v0.1.1 which supports the "generate-bindings" feature -required for building Parsec service 0.7.0 in Yocto. - -Signed-off-by: Anton Antonov <Anton.Antonov@arm.com> -Upstream-Status: Submitted - ---- a/Cargo.toml 2021-04-01 10:29:50.333687763 +0100 -+++ b/Cargo.toml 2021-04-01 10:27:13.051860002 +0100 -@@ -37,7 +37,7 @@ - version = "1.3.1" - - [dependencies.cryptoki] --version = "0.1.0" -+version = "0.1.1" - features = ["psa-crypto-conversions"] - optional = true - diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.inc b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.inc deleted file mode 100644 index 59a47f92a..000000000 --- a/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.inc +++ /dev/null @@ -1,147 +0,0 @@ -# This file is created from parsec-service repository Cargo.lock using cargo-bitbake tool - -SRC_URI += " \ - crate://crates.io/aho-corasick/0.7.15 \ - crate://crates.io/ansi_term/0.11.0 \ - crate://crates.io/anyhow/1.0.38 \ - crate://crates.io/atty/0.2.14 \ - crate://crates.io/autocfg/1.0.1 \ - crate://crates.io/base64/0.12.3 \ - crate://crates.io/base64/0.13.0 \ - crate://crates.io/bincode/1.3.2 \ - crate://crates.io/bindgen/0.56.0 \ - crate://crates.io/bindgen/0.57.0 \ - crate://crates.io/bitfield/0.13.2 \ - crate://crates.io/bitflags/1.2.1 \ - crate://crates.io/byteorder/1.3.4 \ - crate://crates.io/bytes/0.5.6 \ - crate://crates.io/bytes/1.0.1 \ - crate://crates.io/cc/1.0.67 \ - crate://crates.io/cexpr/0.4.0 \ - crate://crates.io/cfg-if/1.0.0 \ - crate://crates.io/clang-sys/1.1.1 \ - crate://crates.io/clap/2.33.3 \ - crate://crates.io/cmake/0.1.45 \ - crate://crates.io/cryptoauthlib-sys/0.1.0 \ - crate://crates.io/cryptoki-sys/0.1.1 \ - crate://crates.io/cryptoki/0.1.1 \ - crate://crates.io/derivative/2.2.0 \ - crate://crates.io/either/1.6.1 \ - crate://crates.io/enumflags2/0.6.4 \ - crate://crates.io/enumflags2_derive/0.6.4 \ - crate://crates.io/env_logger/0.8.3 \ - crate://crates.io/fixedbitset/0.2.0 \ - crate://crates.io/getrandom/0.2.2 \ - crate://crates.io/glob/0.3.0 \ - crate://crates.io/hashbrown/0.9.1 \ - crate://crates.io/heck/0.3.2 \ - crate://crates.io/hermit-abi/0.1.18 \ - crate://crates.io/hex/0.4.3 \ - crate://crates.io/hostname-validator/1.0.0 \ - crate://crates.io/humantime/2.1.0 \ - crate://crates.io/indexmap/1.6.2 \ - crate://crates.io/itertools/0.8.2 \ - crate://crates.io/itertools/0.9.0 \ - crate://crates.io/lazy_static/1.4.0 \ - crate://crates.io/lazycell/1.3.0 \ - crate://crates.io/libc/0.2.89 \ - crate://crates.io/libloading/0.7.0 \ - crate://crates.io/log/0.4.14 \ - crate://crates.io/mbox/0.5.0 \ - crate://crates.io/memchr/2.3.4 \ - crate://crates.io/multimap/0.8.3 \ - crate://crates.io/nom/5.1.2 \ - crate://crates.io/num-bigint/0.3.2 \ - crate://crates.io/num-complex/0.3.1 \ - crate://crates.io/num-derive/0.3.3 \ - crate://crates.io/num-integer/0.1.44 \ - crate://crates.io/num-iter/0.1.42 \ - crate://crates.io/num-rational/0.3.2 \ - crate://crates.io/num-traits/0.2.14 \ - crate://crates.io/num/0.3.1 \ - crate://crates.io/num_cpus/1.13.0 \ - crate://crates.io/oid/0.1.1 \ - crate://crates.io/parsec-interface/0.24.0 \ - crate://crates.io/peeking_take_while/0.1.2 \ - crate://crates.io/petgraph/0.5.1 \ - crate://crates.io/picky-asn1-der/0.2.4 \ - crate://crates.io/picky-asn1-x509/0.4.0 \ - crate://crates.io/picky-asn1/0.3.1 \ - crate://crates.io/pkg-config/0.3.19 \ - crate://crates.io/ppv-lite86/0.2.10 \ - crate://crates.io/proc-macro-error-attr/1.0.4 \ - crate://crates.io/proc-macro-error/1.0.4 \ - crate://crates.io/proc-macro2/1.0.24 \ - crate://crates.io/prost-build/0.6.1 \ - crate://crates.io/prost-build/0.7.0 \ - crate://crates.io/prost-derive/0.6.1 \ - crate://crates.io/prost-derive/0.7.0 \ - crate://crates.io/prost-types/0.6.1 \ - crate://crates.io/prost-types/0.7.0 \ - crate://crates.io/prost/0.6.1 \ - crate://crates.io/prost/0.7.0 \ - crate://crates.io/psa-crypto-sys/0.8.0 \ - crate://crates.io/psa-crypto/0.8.0 \ - crate://crates.io/quote/1.0.9 \ - crate://crates.io/rand/0.8.3 \ - crate://crates.io/rand_chacha/0.3.0 \ - crate://crates.io/rand_core/0.6.2 \ - crate://crates.io/rand_hc/0.3.0 \ - crate://crates.io/redox_syscall/0.2.5 \ - crate://crates.io/regex-syntax/0.6.23 \ - crate://crates.io/regex/1.4.5 \ - crate://crates.io/remove_dir_all/0.5.3 \ - crate://crates.io/rust-cryptoauthlib/0.1.0 \ - crate://crates.io/rustc-hash/1.1.0 \ - crate://crates.io/rustc_version/0.2.3 \ - crate://crates.io/same-file/1.0.6 \ - crate://crates.io/sd-notify/0.2.0 \ - crate://crates.io/secrecy/0.7.0 \ - crate://crates.io/semver-parser/0.7.0 \ - crate://crates.io/semver/0.9.0 \ - crate://crates.io/serde/1.0.124 \ - crate://crates.io/serde_bytes/0.11.5 \ - crate://crates.io/serde_derive/1.0.124 \ - crate://crates.io/shlex/0.1.1 \ - crate://crates.io/signal-hook-registry/1.3.0 \ - crate://crates.io/signal-hook/0.3.7 \ - crate://crates.io/stable_deref_trait/1.2.0 \ - crate://crates.io/strsim/0.8.0 \ - crate://crates.io/structopt-derive/0.4.14 \ - crate://crates.io/structopt/0.3.21 \ - crate://crates.io/strum_macros/0.19.4 \ - crate://crates.io/syn/1.0.64 \ - crate://crates.io/synstructure/0.12.4 \ - crate://crates.io/tempfile/3.2.0 \ - crate://crates.io/termcolor/1.1.2 \ - crate://crates.io/textwrap/0.11.0 \ - crate://crates.io/thiserror-impl/1.0.24 \ - crate://crates.io/thiserror/1.0.24 \ - crate://crates.io/threadpool/1.8.1 \ - crate://crates.io/toml/0.5.8 \ - crate://crates.io/tss-esapi-sys/0.1.0 \ - crate://crates.io/tss-esapi/5.0.0 \ - crate://crates.io/unicode-segmentation/1.7.1 \ - crate://crates.io/unicode-width/0.1.8 \ - crate://crates.io/unicode-xid/0.2.1 \ - crate://crates.io/users/0.11.0 \ - crate://crates.io/uuid/0.8.2 \ - crate://crates.io/vec_map/0.8.2 \ - crate://crates.io/version/3.0.0 \ - crate://crates.io/version_check/0.9.3 \ - crate://crates.io/walkdir/2.3.1 \ - crate://crates.io/wasi/0.10.2+wasi-snapshot-preview1 \ - crate://crates.io/which/3.1.1 \ - crate://crates.io/which/4.0.2 \ - crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \ - crate://crates.io/winapi-util/0.1.5 \ - crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ - crate://crates.io/winapi/0.3.9 \ - crate://crates.io/zeroize/1.2.0 \ - crate://crates.io/zeroize_derive/1.0.1 \ - file://cryptoki.patch \ -" - -LIC_FILES_CHKSUM = " \ - file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \ -" diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.bb b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.bb index 5f7a99b42..b8bfa98ac 100644 --- a/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.bb +++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.bb @@ -10,9 +10,18 @@ SRC_URI += "crate://crates.io/parsec-service/${PV} \ file://parsec-tmpfiles.conf \ " -DEPENDS = "tpm2-tss clang-native" - -CARGO_BUILD_FLAGS += " --features all-providers,cryptoki/generate-bindings,tss-esapi/generate-bindings" +DEPENDS = "clang-native" + +PACKAGECONFIG ??= "TPM PKCS11 MBED-CRYPTO CRYPTOAUTHLIB" +PACKAGECONFIG[ALL] = "all-providers,,tpm2-tss libts,libts" +PACKAGECONFIG[TPM] = "tpm-provider,,tpm2-tss" +PACKAGECONFIG[PKCS11] = "pkcs11-provider," +PACKAGECONFIG[MBED-CRYPTO] = "mbed-crypto-provider," +PACKAGECONFIG[CRYPTOAUTHLIB] = "cryptoauthlib-provider," +PACKAGECONFIG[TS] = "trusted-service-provider,,libts,libts" + +PARSEC_PROVIDERS = "${@d.getVar('PACKAGECONFIG_CONFARGS',True).replace(' ', ',')}" +CARGO_BUILD_FLAGS += " --features ${PARSEC_PROVIDERS},cryptoki/generate-bindings,tss-esapi/generate-bindings" inherit systemd SYSTEMD_SERVICE:${PN} = "parsec.service" diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.inc b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.inc new file mode 100644 index 000000000..fd88e8717 --- /dev/null +++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.inc @@ -0,0 +1,246 @@ +# This file is created from parsec-service repository Cargo.lock using cargo-bitbake tool + +SRC_URI += " \ + crate://crates.io/addr2line/0.15.2 \ + crate://crates.io/adler/1.0.2 \ + crate://crates.io/aho-corasick/0.7.15 \ + crate://crates.io/ansi_term/0.11.0 \ + crate://crates.io/anyhow/1.0.41 \ + crate://crates.io/arrayvec/0.5.2 \ + crate://crates.io/atty/0.2.14 \ + crate://crates.io/autocfg/1.0.1 \ + crate://crates.io/backtrace/0.3.59 \ + crate://crates.io/base64/0.12.3 \ + crate://crates.io/base64/0.13.0 \ + crate://crates.io/bincode/1.3.3 \ + crate://crates.io/bindgen/0.56.0 \ + crate://crates.io/bindgen/0.57.0 \ + crate://crates.io/bitfield/0.13.2 \ + crate://crates.io/bitflags/1.2.1 \ + crate://crates.io/bitvec/0.19.5 \ + crate://crates.io/boringssl-src/0.3.0+688fc5c \ + crate://crates.io/bumpalo/3.7.0 \ + crate://crates.io/bytes/0.5.6 \ + crate://crates.io/bytes/1.0.1 \ + crate://crates.io/cc/1.0.68 \ + crate://crates.io/cexpr/0.4.0 \ + crate://crates.io/cfg-if/1.0.0 \ + crate://crates.io/chrono/0.4.19 \ + crate://crates.io/clang-sys/1.2.0 \ + crate://crates.io/clap/2.33.3 \ + crate://crates.io/cmake/0.1.45 \ + crate://crates.io/const-oid/0.6.0 \ + crate://crates.io/cryptoauthlib-sys/0.2.0 \ + crate://crates.io/cryptoki-sys/0.1.2 \ + crate://crates.io/cryptoki/0.2.0 \ + crate://crates.io/data-encoding/2.3.2 \ + crate://crates.io/der-oid-macro/0.4.0 \ + crate://crates.io/der-parser/5.1.0 \ + crate://crates.io/der/0.4.0 \ + crate://crates.io/derivative/2.2.0 \ + crate://crates.io/either/1.6.1 \ + crate://crates.io/enumflags2/0.6.4 \ + crate://crates.io/enumflags2_derive/0.6.4 \ + crate://crates.io/env_logger/0.8.4 \ + crate://crates.io/failure/0.1.8 \ + crate://crates.io/failure_derive/0.1.8 \ + crate://crates.io/fixedbitset/0.2.0 \ + crate://crates.io/form_urlencoded/1.0.1 \ + crate://crates.io/funty/1.1.0 \ + crate://crates.io/futures-channel/0.3.15 \ + crate://crates.io/futures-core/0.3.15 \ + crate://crates.io/futures-executor/0.3.15 \ + crate://crates.io/futures-io/0.3.15 \ + crate://crates.io/futures-macro/0.3.15 \ + crate://crates.io/futures-sink/0.3.15 \ + crate://crates.io/futures-task/0.3.15 \ + crate://crates.io/futures-util/0.3.15 \ + crate://crates.io/futures/0.3.15 \ + crate://crates.io/generic-array/0.14.4 \ + crate://crates.io/getrandom/0.2.3 \ + crate://crates.io/gimli/0.24.0 \ + crate://crates.io/glob/0.3.0 \ + crate://crates.io/grpcio-compiler/0.7.0 \ + crate://crates.io/grpcio-sys/0.9.0+1.38.0 \ + crate://crates.io/grpcio/0.9.0 \ + crate://crates.io/hamming/0.1.3 \ + crate://crates.io/hashbrown/0.9.1 \ + crate://crates.io/heck/0.3.3 \ + crate://crates.io/hermit-abi/0.1.18 \ + crate://crates.io/hex/0.4.3 \ + crate://crates.io/hostname-validator/1.1.0 \ + crate://crates.io/humantime/2.1.0 \ + crate://crates.io/idna/0.2.3 \ + crate://crates.io/indexmap/1.6.2 \ + crate://crates.io/instant/0.1.9 \ + crate://crates.io/itertools/0.8.2 \ + crate://crates.io/itertools/0.9.0 \ + crate://crates.io/itoa/0.4.7 \ + crate://crates.io/js-sys/0.3.51 \ + crate://crates.io/jsonwebkey/0.3.2 \ + crate://crates.io/jsonwebtoken/7.2.0 \ + crate://crates.io/lazy_static/1.4.0 \ + crate://crates.io/lazycell/1.3.0 \ + crate://crates.io/lexical-core/0.7.6 \ + crate://crates.io/libc/0.2.97 \ + crate://crates.io/libloading/0.7.0 \ + crate://crates.io/libz-sys/1.1.3 \ + crate://crates.io/lock_api/0.4.4 \ + crate://crates.io/log/0.4.14 \ + crate://crates.io/matches/0.1.8 \ + crate://crates.io/mbox/0.5.0 \ + crate://crates.io/memchr/2.3.4 \ + crate://crates.io/miniz_oxide/0.4.4 \ + crate://crates.io/multimap/0.8.3 \ + crate://crates.io/nom/5.1.2 \ + crate://crates.io/nom/6.2.0 \ + crate://crates.io/num-bigint/0.2.6 \ + crate://crates.io/num-bigint/0.3.2 \ + crate://crates.io/num-bigint/0.4.0 \ + crate://crates.io/num-complex/0.3.1 \ + crate://crates.io/num-derive/0.3.3 \ + crate://crates.io/num-integer/0.1.44 \ + crate://crates.io/num-iter/0.1.42 \ + crate://crates.io/num-rational/0.3.2 \ + crate://crates.io/num-traits/0.2.14 \ + crate://crates.io/num/0.3.1 \ + crate://crates.io/num_cpus/1.13.0 \ + crate://crates.io/object/0.24.0 \ + crate://crates.io/oid-registry/0.1.3 \ + crate://crates.io/oid/0.1.1 \ + crate://crates.io/once_cell/1.8.0 \ + crate://crates.io/parking_lot/0.11.1 \ + crate://crates.io/parking_lot_core/0.8.3 \ + crate://crates.io/parsec-interface/0.25.0 \ + crate://crates.io/peeking_take_while/0.1.2 \ + crate://crates.io/pem/0.8.3 \ + crate://crates.io/percent-encoding/2.1.0 \ + crate://crates.io/petgraph/0.5.1 \ + crate://crates.io/picky-asn1-der/0.2.4 \ + crate://crates.io/picky-asn1-x509/0.4.0 \ + crate://crates.io/picky-asn1/0.3.1 \ + crate://crates.io/pin-project-lite/0.2.6 \ + crate://crates.io/pin-utils/0.1.0 \ + crate://crates.io/pkcs8/0.7.0 \ + crate://crates.io/pkg-config/0.3.19 \ + crate://crates.io/ppv-lite86/0.2.10 \ + crate://crates.io/primal-bit/0.3.0 \ + crate://crates.io/primal-check/0.3.1 \ + crate://crates.io/primal-estimate/0.3.1 \ + crate://crates.io/primal-sieve/0.3.1 \ + crate://crates.io/primal/0.3.0 \ + crate://crates.io/proc-macro-error-attr/1.0.4 \ + crate://crates.io/proc-macro-error/1.0.4 \ + crate://crates.io/proc-macro-hack/0.5.19 \ + crate://crates.io/proc-macro-nested/0.1.7 \ + crate://crates.io/proc-macro2/1.0.27 \ + crate://crates.io/prost-build/0.7.0 \ + crate://crates.io/prost-derive/0.6.1 \ + crate://crates.io/prost-derive/0.7.0 \ + crate://crates.io/prost-types/0.7.0 \ + crate://crates.io/prost/0.6.1 \ + crate://crates.io/prost/0.7.0 \ + crate://crates.io/protobuf-codegen/2.24.1 \ + crate://crates.io/protobuf/2.24.1 \ + crate://crates.io/protoc-grpcio/3.0.0 \ + crate://crates.io/protoc/2.24.1 \ + crate://crates.io/psa-crypto-sys/0.9.0 \ + crate://crates.io/psa-crypto/0.9.0 \ + crate://crates.io/quote/1.0.9 \ + crate://crates.io/radium/0.5.3 \ + crate://crates.io/rand/0.8.4 \ + crate://crates.io/rand_chacha/0.3.1 \ + crate://crates.io/rand_core/0.6.3 \ + crate://crates.io/rand_hc/0.3.1 \ + crate://crates.io/redox_syscall/0.2.9 \ + crate://crates.io/regex-syntax/0.6.25 \ + crate://crates.io/regex/1.4.6 \ + crate://crates.io/remove_dir_all/0.5.3 \ + crate://crates.io/ring/0.16.20 \ + crate://crates.io/rust-cryptoauthlib/0.4.0 \ + crate://crates.io/rustc-demangle/0.1.20 \ + crate://crates.io/rustc-hash/1.1.0 \ + crate://crates.io/rustc_version/0.2.3 \ + crate://crates.io/rusticata-macros/3.0.1 \ + crate://crates.io/rustversion/1.0.5 \ + crate://crates.io/ryu/1.0.5 \ + crate://crates.io/same-file/1.0.6 \ + crate://crates.io/scopeguard/1.1.0 \ + crate://crates.io/sd-notify/0.2.0 \ + crate://crates.io/secrecy/0.7.0 \ + crate://crates.io/semver-parser/0.7.0 \ + crate://crates.io/semver/0.9.0 \ + crate://crates.io/serde/1.0.126 \ + crate://crates.io/serde_bytes/0.11.5 \ + crate://crates.io/serde_derive/1.0.126 \ + crate://crates.io/serde_json/1.0.64 \ + crate://crates.io/shlex/0.1.1 \ + crate://crates.io/signal-hook-registry/1.4.0 \ + crate://crates.io/signal-hook/0.3.9 \ + crate://crates.io/simple_asn1/0.4.1 \ + crate://crates.io/simple_asn1/0.5.3 \ + crate://crates.io/slab/0.4.3 \ + crate://crates.io/smallvec/1.6.1 \ + crate://crates.io/spiffe/0.1.1 \ + crate://crates.io/spin/0.5.2 \ + crate://crates.io/spki/0.4.0 \ + crate://crates.io/stable_deref_trait/1.2.0 \ + crate://crates.io/static_assertions/1.1.0 \ + crate://crates.io/strsim/0.8.0 \ + crate://crates.io/structopt-derive/0.4.14 \ + crate://crates.io/structopt/0.3.21 \ + crate://crates.io/strum_macros/0.19.4 \ + crate://crates.io/syn/1.0.73 \ + crate://crates.io/synstructure/0.12.4 \ + crate://crates.io/tap/1.0.1 \ + crate://crates.io/target-lexicon/0.12.0 \ + crate://crates.io/tempfile/3.2.0 \ + crate://crates.io/termcolor/1.1.2 \ + crate://crates.io/textwrap/0.11.0 \ + crate://crates.io/thiserror-impl/1.0.25 \ + crate://crates.io/thiserror/1.0.25 \ + crate://crates.io/threadpool/1.8.1 \ + crate://crates.io/time/0.1.44 \ + crate://crates.io/tinyvec/1.2.0 \ + crate://crates.io/tinyvec_macros/0.1.0 \ + crate://crates.io/toml/0.5.8 \ + crate://crates.io/tss-esapi-sys/0.2.0 \ + crate://crates.io/tss-esapi/7.0.0-alpha.1 \ + crate://crates.io/typenum/1.13.0 \ + crate://crates.io/unicode-bidi/0.3.5 \ + crate://crates.io/unicode-normalization/0.1.19 \ + crate://crates.io/unicode-segmentation/1.7.1 \ + crate://crates.io/unicode-width/0.1.8 \ + crate://crates.io/unicode-xid/0.2.2 \ + crate://crates.io/untrusted/0.7.1 \ + crate://crates.io/url/2.2.2 \ + crate://crates.io/users/0.11.0 \ + crate://crates.io/uuid/0.8.2 \ + crate://crates.io/vcpkg/0.2.15 \ + crate://crates.io/vec_map/0.8.2 \ + crate://crates.io/version/3.0.0 \ + crate://crates.io/version_check/0.9.3 \ + crate://crates.io/walkdir/2.3.2 \ + crate://crates.io/wasi/0.10.0+wasi-snapshot-preview1 \ + crate://crates.io/wasm-bindgen-backend/0.2.74 \ + crate://crates.io/wasm-bindgen-macro-support/0.2.74 \ + crate://crates.io/wasm-bindgen-macro/0.2.74 \ + crate://crates.io/wasm-bindgen-shared/0.2.74 \ + crate://crates.io/wasm-bindgen/0.2.74 \ + crate://crates.io/web-sys/0.3.51 \ + crate://crates.io/which/3.1.1 \ + crate://crates.io/which/4.1.0 \ + crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \ + crate://crates.io/winapi-util/0.1.5 \ + crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ + crate://crates.io/winapi/0.3.9 \ + crate://crates.io/wyz/0.2.0 \ + crate://crates.io/x509-parser/0.9.2 \ + crate://crates.io/yasna/0.3.2 \ + crate://crates.io/zeroize/1.3.0 \ + crate://crates.io/zeroize_derive/1.1.0 \ +" + +LIC_FILES_CHKSUM = " \ + file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \ +" diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.inc b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.inc deleted file mode 100644 index 9560dcff1..000000000 --- a/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.inc +++ /dev/null @@ -1,127 +0,0 @@ -# This file is created from parsec-tool repository Cargo.lock using cargo-bitbake tool - -SRC_URI += " \ - crate://crates.io/aho-corasick/0.7.15 \ - crate://crates.io/ansi_term/0.11.0 \ - crate://crates.io/ansi_term/0.12.1 \ - crate://crates.io/anyhow/1.0.38 \ - crate://crates.io/atty/0.2.14 \ - crate://crates.io/autocfg/1.0.1 \ - crate://crates.io/base64/0.13.0 \ - crate://crates.io/bincode/1.3.1 \ - crate://crates.io/bitflags/1.2.1 \ - crate://crates.io/block-buffer/0.9.0 \ - crate://crates.io/byteorder/1.4.2 \ - crate://crates.io/bytes/0.5.6 \ - crate://crates.io/cc/1.0.66 \ - crate://crates.io/cfg-if/1.0.0 \ - crate://crates.io/clap/2.33.3 \ - crate://crates.io/clap/3.0.0-beta.2 \ - crate://crates.io/clap_derive/3.0.0-beta.2 \ - crate://crates.io/cmake/0.1.45 \ - crate://crates.io/cpuid-bool/0.1.2 \ - crate://crates.io/derivative/2.2.0 \ - crate://crates.io/digest/0.9.0 \ - crate://crates.io/either/1.6.1 \ - crate://crates.io/env_logger/0.8.3 \ - crate://crates.io/fixedbitset/0.2.0 \ - crate://crates.io/form_urlencoded/1.0.0 \ - crate://crates.io/generic-array/0.14.4 \ - crate://crates.io/getrandom/0.2.2 \ - crate://crates.io/hashbrown/0.9.1 \ - crate://crates.io/heck/0.3.2 \ - crate://crates.io/hermit-abi/0.1.18 \ - crate://crates.io/humantime/2.1.0 \ - crate://crates.io/idna/0.2.1 \ - crate://crates.io/indexmap/1.6.1 \ - crate://crates.io/itertools/0.8.2 \ - crate://crates.io/lazy_static/1.4.0 \ - crate://crates.io/libc/0.2.86 \ - crate://crates.io/log/0.4.14 \ - crate://crates.io/matches/0.1.8 \ - crate://crates.io/memchr/2.3.4 \ - crate://crates.io/multimap/0.8.2 \ - crate://crates.io/num-bigint/0.3.1 \ - crate://crates.io/num-complex/0.3.1 \ - crate://crates.io/num-derive/0.3.3 \ - crate://crates.io/num-integer/0.1.44 \ - crate://crates.io/num-iter/0.1.42 \ - crate://crates.io/num-rational/0.3.2 \ - crate://crates.io/num-traits/0.2.14 \ - crate://crates.io/num/0.3.1 \ - crate://crates.io/oid/0.1.1 \ - crate://crates.io/once_cell/1.5.2 \ - crate://crates.io/opaque-debug/0.3.0 \ - crate://crates.io/os_str_bytes/2.4.0 \ - crate://crates.io/parsec-client/0.12.0 \ - crate://crates.io/parsec-interface/0.24.0 \ - crate://crates.io/pem/0.8.3 \ - crate://crates.io/percent-encoding/2.1.0 \ - crate://crates.io/petgraph/0.5.1 \ - crate://crates.io/picky-asn1-der/0.2.4 \ - crate://crates.io/picky-asn1/0.3.1 \ - crate://crates.io/ppv-lite86/0.2.10 \ - crate://crates.io/proc-macro-error-attr/1.0.4 \ - crate://crates.io/proc-macro-error/1.0.4 \ - crate://crates.io/proc-macro2/1.0.24 \ - crate://crates.io/prost-build/0.6.1 \ - crate://crates.io/prost-derive/0.6.1 \ - crate://crates.io/prost-types/0.6.1 \ - crate://crates.io/prost/0.6.1 \ - crate://crates.io/psa-crypto-sys/0.8.0 \ - crate://crates.io/psa-crypto/0.8.0 \ - crate://crates.io/quote/1.0.9 \ - crate://crates.io/rand/0.8.3 \ - crate://crates.io/rand_chacha/0.3.0 \ - crate://crates.io/rand_core/0.6.2 \ - crate://crates.io/rand_hc/0.3.0 \ - crate://crates.io/redox_syscall/0.2.5 \ - crate://crates.io/regex-syntax/0.6.22 \ - crate://crates.io/regex/1.4.3 \ - crate://crates.io/remove_dir_all/0.5.3 \ - crate://crates.io/same-file/1.0.6 \ - crate://crates.io/secrecy/0.7.0 \ - crate://crates.io/serde/1.0.123 \ - crate://crates.io/serde_bytes/0.11.5 \ - crate://crates.io/serde_derive/1.0.123 \ - crate://crates.io/sha2/0.9.3 \ - crate://crates.io/strsim/0.10.0 \ - crate://crates.io/strsim/0.8.0 \ - crate://crates.io/structopt-derive/0.4.14 \ - crate://crates.io/structopt/0.3.21 \ - crate://crates.io/syn/1.0.60 \ - crate://crates.io/synstructure/0.12.4 \ - crate://crates.io/tempfile/3.2.0 \ - crate://crates.io/termcolor/1.1.2 \ - crate://crates.io/textwrap/0.11.0 \ - crate://crates.io/textwrap/0.12.1 \ - crate://crates.io/thiserror-impl/1.0.23 \ - crate://crates.io/thiserror/1.0.23 \ - crate://crates.io/thread_local/1.1.3 \ - crate://crates.io/tinyvec/1.1.1 \ - crate://crates.io/tinyvec_macros/0.1.0 \ - crate://crates.io/typenum/1.12.0 \ - crate://crates.io/unicode-bidi/0.3.4 \ - crate://crates.io/unicode-normalization/0.1.17 \ - crate://crates.io/unicode-segmentation/1.7.1 \ - crate://crates.io/unicode-width/0.1.8 \ - crate://crates.io/unicode-xid/0.2.1 \ - crate://crates.io/url/2.2.0 \ - crate://crates.io/users/0.10.0 \ - crate://crates.io/uuid/0.8.2 \ - crate://crates.io/vec_map/0.8.2 \ - crate://crates.io/version_check/0.9.2 \ - crate://crates.io/walkdir/2.3.1 \ - crate://crates.io/wasi/0.10.2+wasi-snapshot-preview1 \ - crate://crates.io/which/3.1.1 \ - crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \ - crate://crates.io/winapi-util/0.1.5 \ - crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ - crate://crates.io/winapi/0.3.9 \ - crate://crates.io/zeroize/1.2.0 \ - crate://crates.io/zeroize_derive/1.0.1 \ -" - -LIC_FILES_CHKSUM = " \ - file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \ -" diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.bb b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.4.0.bb index 881f8d896..4b053b9ca 100644 --- a/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.bb +++ b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.4.0.bb @@ -7,9 +7,12 @@ inherit cargo SRC_URI += "crate://crates.io/parsec-tool/${PV} \ " +RDEPENDS:${PN} = "openssl-bin" + do_install() { install -d ${D}/${bindir} install -m 755 "${B}/target/${TARGET_SYS}/release/parsec-tool" "${D}${bindir}/parsec-tool" + install -m 755 "${S}/tests/parsec-cli-tests.sh" "${D}${bindir}/parsec-cli-tests.sh" } require parsec-tool_${PV}.inc diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.4.0.inc b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.4.0.inc new file mode 100644 index 000000000..e70611255 --- /dev/null +++ b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.4.0.inc @@ -0,0 +1,216 @@ +# This file is created from parsec-tool repository Cargo.lock using cargo-bitbake tool + +SRC_URI += " \ + crate://crates.io/addr2line/0.15.2 \ + crate://crates.io/adler/1.0.2 \ + crate://crates.io/aho-corasick/0.7.15 \ + crate://crates.io/ansi_term/0.11.0 \ + crate://crates.io/ansi_term/0.12.1 \ + crate://crates.io/anyhow/1.0.42 \ + crate://crates.io/arrayvec/0.5.2 \ + crate://crates.io/atty/0.2.14 \ + crate://crates.io/autocfg/1.0.1 \ + crate://crates.io/backtrace/0.3.59 \ + crate://crates.io/base64/0.12.3 \ + crate://crates.io/base64/0.13.0 \ + crate://crates.io/bincode/1.3.3 \ + crate://crates.io/bindgen/0.57.0 \ + crate://crates.io/bitflags/1.2.1 \ + crate://crates.io/bitvec/0.19.5 \ + crate://crates.io/block-buffer/0.9.0 \ + crate://crates.io/boringssl-src/0.3.0+688fc5c \ + crate://crates.io/bumpalo/3.7.0 \ + crate://crates.io/bytes/0.5.6 \ + crate://crates.io/cc/1.0.69 \ + crate://crates.io/cexpr/0.4.0 \ + crate://crates.io/cfg-if/1.0.0 \ + crate://crates.io/chrono/0.4.19 \ + crate://crates.io/clang-sys/1.2.0 \ + crate://crates.io/clap/2.33.3 \ + crate://crates.io/clap/3.0.0-beta.2 \ + crate://crates.io/clap_derive/3.0.0-beta.2 \ + crate://crates.io/cmake/0.1.45 \ + crate://crates.io/const-oid/0.6.0 \ + crate://crates.io/cpufeatures/0.1.5 \ + crate://crates.io/data-encoding/2.3.2 \ + crate://crates.io/der-oid-macro/0.4.0 \ + crate://crates.io/der-parser/5.1.2 \ + crate://crates.io/der/0.4.0 \ + crate://crates.io/derivative/2.2.0 \ + crate://crates.io/digest/0.9.0 \ + crate://crates.io/either/1.6.1 \ + crate://crates.io/env_logger/0.8.4 \ + crate://crates.io/failure/0.1.8 \ + crate://crates.io/failure_derive/0.1.8 \ + crate://crates.io/form_urlencoded/1.0.1 \ + crate://crates.io/funty/1.1.0 \ + crate://crates.io/futures-channel/0.3.16 \ + crate://crates.io/futures-core/0.3.16 \ + crate://crates.io/futures-executor/0.3.16 \ + crate://crates.io/futures-io/0.3.16 \ + crate://crates.io/futures-macro/0.3.16 \ + crate://crates.io/futures-sink/0.3.16 \ + crate://crates.io/futures-task/0.3.16 \ + crate://crates.io/futures-util/0.3.16 \ + crate://crates.io/futures/0.3.16 \ + crate://crates.io/generic-array/0.14.4 \ + crate://crates.io/getrandom/0.2.3 \ + crate://crates.io/gimli/0.24.0 \ + crate://crates.io/glob/0.3.0 \ + crate://crates.io/grpcio-compiler/0.7.0 \ + crate://crates.io/grpcio-sys/0.9.0+1.38.0 \ + crate://crates.io/grpcio/0.9.0 \ + crate://crates.io/hashbrown/0.11.2 \ + crate://crates.io/heck/0.3.3 \ + crate://crates.io/hermit-abi/0.1.19 \ + crate://crates.io/humantime/2.1.0 \ + crate://crates.io/idna/0.2.3 \ + crate://crates.io/indexmap/1.7.0 \ + crate://crates.io/instant/0.1.10 \ + crate://crates.io/itertools/0.8.2 \ + crate://crates.io/itoa/0.4.7 \ + crate://crates.io/js-sys/0.3.52 \ + crate://crates.io/jsonwebkey/0.3.2 \ + crate://crates.io/jsonwebtoken/7.2.0 \ + crate://crates.io/lazy_static/1.4.0 \ + crate://crates.io/lazycell/1.3.0 \ + crate://crates.io/lexical-core/0.7.6 \ + crate://crates.io/libc/0.2.102 \ + crate://crates.io/libloading/0.7.0 \ + crate://crates.io/libz-sys/1.1.3 \ + crate://crates.io/lock_api/0.4.4 \ + crate://crates.io/log/0.4.14 \ + crate://crates.io/matches/0.1.8 \ + crate://crates.io/memchr/2.3.4 \ + crate://crates.io/miniz_oxide/0.4.4 \ + crate://crates.io/nom/5.1.2 \ + crate://crates.io/nom/6.2.1 \ + crate://crates.io/num-bigint/0.2.6 \ + crate://crates.io/num-bigint/0.3.2 \ + crate://crates.io/num-bigint/0.4.0 \ + crate://crates.io/num-complex/0.3.1 \ + crate://crates.io/num-derive/0.3.3 \ + crate://crates.io/num-integer/0.1.44 \ + crate://crates.io/num-iter/0.1.42 \ + crate://crates.io/num-rational/0.3.2 \ + crate://crates.io/num-traits/0.2.14 \ + crate://crates.io/num/0.3.1 \ + crate://crates.io/object/0.24.0 \ + crate://crates.io/oid-registry/0.1.5 \ + crate://crates.io/oid/0.2.1 \ + crate://crates.io/once_cell/1.8.0 \ + crate://crates.io/opaque-debug/0.3.0 \ + crate://crates.io/os_str_bytes/2.4.0 \ + crate://crates.io/parking_lot/0.11.1 \ + crate://crates.io/parking_lot_core/0.8.3 \ + crate://crates.io/parsec-client/0.13.0 \ + crate://crates.io/parsec-interface/0.25.0 \ + crate://crates.io/peeking_take_while/0.1.2 \ + crate://crates.io/pem/0.8.3 \ + crate://crates.io/percent-encoding/2.1.0 \ + crate://crates.io/picky-asn1-der/0.2.5 \ + crate://crates.io/picky-asn1-x509/0.6.1 \ + crate://crates.io/picky-asn1/0.3.3 \ + crate://crates.io/pin-project-lite/0.2.7 \ + crate://crates.io/pin-utils/0.1.0 \ + crate://crates.io/pkcs8/0.7.5 \ + crate://crates.io/pkg-config/0.3.19 \ + crate://crates.io/ppv-lite86/0.2.10 \ + crate://crates.io/proc-macro-error-attr/1.0.4 \ + crate://crates.io/proc-macro-error/1.0.4 \ + crate://crates.io/proc-macro-hack/0.5.19 \ + crate://crates.io/proc-macro-nested/0.1.7 \ + crate://crates.io/proc-macro2/1.0.28 \ + crate://crates.io/prost-derive/0.6.1 \ + crate://crates.io/prost/0.6.1 \ + crate://crates.io/protobuf-codegen/2.24.1 \ + crate://crates.io/protobuf/2.24.1 \ + crate://crates.io/protoc-grpcio/3.0.0 \ + crate://crates.io/protoc/2.24.1 \ + crate://crates.io/psa-crypto-sys/0.9.0 \ + crate://crates.io/psa-crypto/0.9.0 \ + crate://crates.io/quote/1.0.9 \ + crate://crates.io/radium/0.5.3 \ + crate://crates.io/rand/0.8.4 \ + crate://crates.io/rand_chacha/0.3.1 \ + crate://crates.io/rand_core/0.6.3 \ + crate://crates.io/rand_hc/0.3.1 \ + crate://crates.io/redox_syscall/0.2.9 \ + crate://crates.io/regex-syntax/0.6.25 \ + crate://crates.io/regex/1.4.6 \ + crate://crates.io/remove_dir_all/0.5.3 \ + crate://crates.io/ring/0.16.20 \ + crate://crates.io/rustc-demangle/0.1.20 \ + crate://crates.io/rustc-hash/1.1.0 \ + crate://crates.io/rusticata-macros/3.1.0 \ + crate://crates.io/rustversion/1.0.5 \ + crate://crates.io/ryu/1.0.5 \ + crate://crates.io/same-file/1.0.6 \ + crate://crates.io/scopeguard/1.1.0 \ + crate://crates.io/secrecy/0.7.0 \ + crate://crates.io/serde/1.0.127 \ + crate://crates.io/serde_bytes/0.11.5 \ + crate://crates.io/serde_derive/1.0.127 \ + crate://crates.io/serde_json/1.0.66 \ + crate://crates.io/sha2/0.9.5 \ + crate://crates.io/shlex/0.1.1 \ + crate://crates.io/simple_asn1/0.4.1 \ + crate://crates.io/simple_asn1/0.5.4 \ + crate://crates.io/slab/0.4.3 \ + crate://crates.io/smallvec/1.6.1 \ + crate://crates.io/spiffe/0.1.1 \ + crate://crates.io/spin/0.5.2 \ + crate://crates.io/spki/0.4.0 \ + crate://crates.io/static_assertions/1.1.0 \ + crate://crates.io/strsim/0.10.0 \ + crate://crates.io/strsim/0.8.0 \ + crate://crates.io/structopt-derive/0.4.15 \ + crate://crates.io/structopt/0.3.22 \ + crate://crates.io/syn/1.0.74 \ + crate://crates.io/synstructure/0.12.5 \ + crate://crates.io/tap/1.0.1 \ + crate://crates.io/tempfile/3.2.0 \ + crate://crates.io/termcolor/1.1.2 \ + crate://crates.io/textwrap/0.11.0 \ + crate://crates.io/textwrap/0.12.1 \ + crate://crates.io/thiserror-impl/1.0.26 \ + crate://crates.io/thiserror/1.0.26 \ + crate://crates.io/time/0.1.44 \ + crate://crates.io/tinyvec/1.3.1 \ + crate://crates.io/tinyvec_macros/0.1.0 \ + crate://crates.io/typenum/1.13.0 \ + crate://crates.io/unicode-bidi/0.3.5 \ + crate://crates.io/unicode-normalization/0.1.19 \ + crate://crates.io/unicode-segmentation/1.8.0 \ + crate://crates.io/unicode-width/0.1.8 \ + crate://crates.io/unicode-xid/0.2.2 \ + crate://crates.io/untrusted/0.7.1 \ + crate://crates.io/url/2.2.2 \ + crate://crates.io/users/0.10.0 \ + crate://crates.io/uuid/0.8.2 \ + crate://crates.io/vcpkg/0.2.15 \ + crate://crates.io/vec_map/0.8.2 \ + crate://crates.io/version_check/0.9.3 \ + crate://crates.io/walkdir/2.3.2 \ + crate://crates.io/wasi/0.10.0+wasi-snapshot-preview1 \ + crate://crates.io/wasm-bindgen-backend/0.2.75 \ + crate://crates.io/wasm-bindgen-macro-support/0.2.75 \ + crate://crates.io/wasm-bindgen-macro/0.2.75 \ + crate://crates.io/wasm-bindgen-shared/0.2.75 \ + crate://crates.io/wasm-bindgen/0.2.75 \ + crate://crates.io/web-sys/0.3.52 \ + crate://crates.io/which/4.2.2 \ + crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \ + crate://crates.io/winapi-util/0.1.5 \ + crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ + crate://crates.io/winapi/0.3.9 \ + crate://crates.io/wyz/0.2.0 \ + crate://crates.io/x509-parser/0.9.2 \ + crate://crates.io/yasna/0.3.2 \ + crate://crates.io/zeroize/1.3.0 \ + crate://crates.io/zeroize_derive/1.1.0 \ +" + +LIC_FILES_CHKSUM = " \ + file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \ +" diff --git a/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.8.2.bb b/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.8.7.bb index 9784aa115..95ba5c59c 100644 --- a/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.8.2.bb +++ b/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.8.7.bb @@ -2,7 +2,7 @@ SUMMARY = "LIBPM - Software TPM Library" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=e73f0786a936da3814896df06ad225a9" -SRCREV = "f66a719eda0b492ea3ec7852421a9d98db0a0621" +SRCREV = "f6dd8f55eab4910131ec6a6a570dcd7951bd10e4" SRC_URI = "git://github.com/stefanberger/libtpms.git;branch=stable-0.8" PE = "1" diff --git a/meta-security/recipes-core/initrdscripts/initramfs-framework-dm/dmverity b/meta-security/recipes-core/initrdscripts/initramfs-framework-dm/dmverity index 888052ccd..c815940fb 100644 --- a/meta-security/recipes-core/initrdscripts/initramfs-framework-dm/dmverity +++ b/meta-security/recipes-core/initrdscripts/initramfs-framework-dm/dmverity @@ -6,6 +6,7 @@ dmverity_enabled() { dmverity_run() { DATA_SIZE="__not_set__" + DATA_BLOCK_SIZE="__not_set__" ROOT_HASH="__not_set__" . /usr/share/misc/dm-verity.env @@ -49,7 +50,7 @@ dmverity_run() { done veritysetup \ - --data-block-size=1024 \ + --data-block-size=${DATA_BLOCK_SIZE} \ --hash-offset=${DATA_SIZE} \ create rootfs \ ${RDEV} \ diff --git a/meta-security/recipes-scanners/clamav/clamav_0.104.0.bb b/meta-security/recipes-scanners/clamav/clamav_0.104.0.bb index 0d3a678e2..25123dce0 100644 --- a/meta-security/recipes-scanners/clamav/clamav_0.104.0.bb +++ b/meta-security/recipes-scanners/clamav/clamav_0.104.0.bb @@ -54,7 +54,7 @@ export OECMAKE_C_FLAGS += " -I${STAGING_INCDIR} -L ${RECIPE_SYSROOT}${nonarch_li do_install:append () { install -d ${D}/${sysconfdir} - install -d ${D}/${localstatedir}/lib/clamav + install -d -o ${CLAMAV_UID} -g ${CLAMAV_GID} ${D}/${localstatedir}/lib/clamav install -d ${D}${sysconfdir}/clamav ${D}${sysconfdir}/default/volatiles install -m 644 ${WORKDIR}/clamd.conf ${D}/${prefix}/${sysconfdir} @@ -83,7 +83,6 @@ pkg_postinst:${PN} () { elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then ${sysconfdir}/init.d/populate-volatile.sh update fi - chown -R ${CLAMAV_UID}:${CLAMAV_GID} ${localstatedir}/lib/clamav fi } @@ -149,5 +148,7 @@ SYSTEMD_PACKAGES = "${PN}-daemon ${PN}-freshclam" SYSTEMD_SERVICE:${PN}-daemon = "clamav-daemon.service" SYSTEMD_SERVICE:${PN}-freshclam = "clamav-freshclam.service" -RDEPENDS:${PN} = "openssl ncurses-libncurses libxml2 libbz2 ncurses-libtinfo curl libpcre2 clamav-freshclam clamav-libclamav" -RDEPENDS:${PN}-daemon = "clamav" +RDEPENDS:${PN} = "openssl ncurses-libncurses libxml2 libbz2 ncurses-libtinfo curl libpcre2 clamav-libclamav" +RRECOMMENDS:${PN} = "clamav-freshclam" +RDEPENDS:${PN}-freshclam = "clamav" +RDEPENDS:${PN}-daemon = "clamav clamav-freshclam" diff --git a/meta-security/recipes-scanners/rootkits/chkrootkit_0.53.bb b/meta-security/recipes-scanners/rootkits/chkrootkit_0.55.bb index 4536be393..20015a1cc 100644 --- a/meta-security/recipes-scanners/rootkits/chkrootkit_0.53.bb +++ b/meta-security/recipes-scanners/rootkits/chkrootkit_0.55.bb @@ -6,8 +6,7 @@ LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=fdbe53788f7081c63387d8087273f5ff" SRC_URI = "ftp://ftp.pangeia.com.br/pub/seg/pac/${BPN}.tar.gz" -SRC_URI[sha256sum] = "7262dae33b338976828b5d156b70d159e0043c0db43ada8dee66c97387cf45b5" - +SRC_URI[sha256sum] = "a81c0286ec449313f953701202a00e81b204fc2cf43e278585a11c12a5e0258b" inherit autotools-brokensep diff --git a/meta-security/recipes-security/fscrypt/fscrypt_1.0.0.bb b/meta-security/recipes-security/fscrypt/fscrypt_1.0.0.bb new file mode 100644 index 000000000..a70d310a5 --- /dev/null +++ b/meta-security/recipes-security/fscrypt/fscrypt_1.0.0.bb @@ -0,0 +1,49 @@ +SUMMARY = "fscrypt is a high-level tool for the management of Linux filesystem encryption" +DESCIPTION = "fscrypt manages metadata, key generation, key wrapping, PAM integration, \ +and provides a uniform interface for creating and modifying encrypted directories. For \ +a small, low-level tool that directly sets policies, see fscryptctl \ +(https://github.com/google/fscryptcl)." +HOMEPAGE = "https://github.com/google/fscrypt" +SECTION = "base" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +BBCLASSEXTEND = "native nativesdk" + +# fscrypt depends on go and libpam +DEPENDS += "go-dep-native libpam" + +SRCREV = "92b1e9a8670ccd3916a7d24a06cab1e4c9815bc4" +SRC_URI = "git://github.com/google/fscrypt.git" +GO_IMPORT = "import" + +S = "${WORKDIR}/git" + +inherit go +inherit goarch + +do_compile() { + export GOARCH=${TARGET_GOARCH} + export GOROOT="${STAGING_LIBDIR_NATIVE}/${TARGET_SYS}/go" + export GOPATH="${WORKDIR}/git" + + # Pass the needed cflags/ldflags so that cgo + # can find the needed headers files and libraries + export CGO_ENABLED="1" + export CGO_CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_TARGET}" + export CGO_LDFLAGS="${LDFLAGS} --sysroot=${STAGING_DIR_TARGET}" + + cd ${S}/src/${GO_IMPORT} + oe_runmake + + # Golang forces permissions to 0500 on directories and 0400 on files in + # the module cache which prevents us from easily cleaning up the build + # directory. Let's just fix the permissions here so we don't have to + # hack the clean tasks. + chmod -R u+w ${S}/pkg/mod +} + +do_install() { + install -d ${D}/${bindir} + install ${S}/src/${GO_IMPORT}/bin/fscrypt ${D}/${bindir}/fscrypt +} diff --git a/poky/bitbake/bin/bitbake-worker b/poky/bitbake/bin/bitbake-worker index 6ead2da6d..115bc1d09 100755 --- a/poky/bitbake/bin/bitbake-worker +++ b/poky/bitbake/bin/bitbake-worker @@ -17,6 +17,8 @@ import signal import pickle import traceback import queue +import shlex +import subprocess from multiprocessing import Lock from threading import Thread @@ -146,6 +148,7 @@ def fork_off_task(cfg, data, databuilder, workerdata, fn, task, taskname, taskha # a fork() or exec*() activates PSEUDO... envbackup = {} + fakeroot = False fakeenv = {} umask = None @@ -165,6 +168,7 @@ def fork_off_task(cfg, data, databuilder, workerdata, fn, task, taskname, taskha # We can't use the fakeroot environment in a dry run as it possibly hasn't been built if 'fakeroot' in taskdep and taskname in taskdep['fakeroot'] and not dry_run: + fakeroot = True envvars = (workerdata["fakerootenv"][fn] or "").split() for key, value in (var.split('=') for var in envvars): envbackup[key] = os.environ.get(key) @@ -283,7 +287,11 @@ def fork_off_task(cfg, data, databuilder, workerdata, fn, task, taskname, taskha try: if dry_run: return 0 - return bb.build.exec_task(fn, taskname, the_data, cfg.profile) + ret = bb.build.exec_task(fn, taskname, the_data, cfg.profile) + if fakeroot: + fakerootcmd = shlex.split(the_data.getVar("FAKEROOTCMD")) + subprocess.run(fakerootcmd + ['-S'], check=True, stdout=subprocess.PIPE) + return ret except: os._exit(1) if not profiling: diff --git a/poky/bitbake/lib/bb/command.py b/poky/bitbake/lib/bb/command.py index a81dcb136..ec8688522 100644 --- a/poky/bitbake/lib/bb/command.py +++ b/poky/bitbake/lib/bb/command.py @@ -667,6 +667,16 @@ class CommandsAsync: command.finishAsyncCommand() findFilesMatchingInDir.needcache = False + def testCookerCommandEvent(self, command, params): + """ + Dummy command used by OEQA selftest to test tinfoil without IO + """ + pattern = params[0] + + command.cooker.testCookerCommandEvent(pattern) + command.finishAsyncCommand() + testCookerCommandEvent.needcache = False + def findConfigFilePath(self, command, params): """ Find the path of the requested configuration file diff --git a/poky/bitbake/lib/bb/cooker.py b/poky/bitbake/lib/bb/cooker.py index 1f55d9ad7..af794b4c4 100644 --- a/poky/bitbake/lib/bb/cooker.py +++ b/poky/bitbake/lib/bb/cooker.py @@ -1068,6 +1068,11 @@ class BBCooker: if matches: bb.event.fire(bb.event.FilesMatchingFound(filepattern, matches), self.data) + def testCookerCommandEvent(self, filepattern): + # Dummy command used by OEQA selftest to test tinfoil without IO + matches = ["A", "B"] + bb.event.fire(bb.event.FilesMatchingFound(filepattern, matches), self.data) + def findProviders(self, mc=''): return bb.providers.findProviders(self.databuilder.mcdata[mc], self.recipecaches[mc], self.recipecaches[mc].pkg_pn) diff --git a/poky/bitbake/lib/bb/data.py b/poky/bitbake/lib/bb/data.py index 97022853c..9d18b1e2b 100644 --- a/poky/bitbake/lib/bb/data.py +++ b/poky/bitbake/lib/bb/data.py @@ -226,7 +226,7 @@ def emit_func(func, o=sys.__stdout__, d = init()): deps = newdeps seen |= deps newdeps = set() - for dep in deps: + for dep in sorted(deps): if d.getVarFlag(dep, "func", False) and not d.getVarFlag(dep, "python", False): emit_var(dep, o, d, False) and o.write('\n') newdeps |= bb.codeparser.ShellParser(dep, logger).parse_shell(d.getVar(dep)) diff --git a/poky/bitbake/lib/bb/siggen.py b/poky/bitbake/lib/bb/siggen.py index 3f9fe5064..625a9cf3b 100644 --- a/poky/bitbake/lib/bb/siggen.py +++ b/poky/bitbake/lib/bb/siggen.py @@ -864,21 +864,21 @@ def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False): changed, added, removed = dict_diff(a_data['gendeps'], b_data['gendeps'], a_data['basewhitelist'] & b_data['basewhitelist']) if changed: - for dep in changed: + for dep in sorted(changed): output.append(color_format("{color_title}List of dependencies for variable %s changed from '{color_default}%s{color_title}' to '{color_default}%s{color_title}'") % (dep, a_data['gendeps'][dep], b_data['gendeps'][dep])) if a_data['gendeps'][dep] and b_data['gendeps'][dep]: output.append("changed items: %s" % a_data['gendeps'][dep].symmetric_difference(b_data['gendeps'][dep])) if added: - for dep in added: + for dep in sorted(added): output.append(color_format("{color_title}Dependency on variable %s was added") % (dep)) if removed: - for dep in removed: + for dep in sorted(removed): output.append(color_format("{color_title}Dependency on Variable %s was removed") % (dep)) changed, added, removed = dict_diff(a_data['varvals'], b_data['varvals']) if changed: - for dep in changed: + for dep in sorted(changed): oldval = a_data['varvals'][dep] newval = b_data['varvals'][dep] if newval and oldval and ('\n' in oldval or '\n' in newval): @@ -948,7 +948,7 @@ def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False): b = b_data['runtaskhashes'] changed, added, removed = dict_diff(a, b) if added: - for dep in added: + for dep in sorted(added): bdep_found = False if removed: for bdep in removed: @@ -958,7 +958,7 @@ def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False): if not bdep_found: output.append(color_format("{color_title}Dependency on task %s was added{color_default} with hash %s") % (clean_basepath(dep), b[dep])) if removed: - for dep in removed: + for dep in sorted(removed): adep_found = False if added: for adep in added: @@ -968,7 +968,7 @@ def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False): if not adep_found: output.append(color_format("{color_title}Dependency on task %s was removed{color_default} with hash %s") % (clean_basepath(dep), a[dep])) if changed: - for dep in changed: + for dep in sorted(changed): if not collapsed: output.append(color_format("{color_title}Hash for dependent task %s changed{color_default} from %s to %s") % (clean_basepath(dep), a[dep], b[dep])) if callable(recursecb): diff --git a/poky/documentation/dev-manual/common-tasks.rst b/poky/documentation/dev-manual/common-tasks.rst index bd8bbecb3..b81f51bf8 100644 --- a/poky/documentation/dev-manual/common-tasks.rst +++ b/poky/documentation/dev-manual/common-tasks.rst @@ -3888,6 +3888,12 @@ Follow these steps to create an initramfs image: .. note:: + Bundling the initramfs with the kernel conflates the code in the initramfs + with the GPLv2 licensed Linux kernel binary. Thus only GPLv2 compatible + software may be part of a bundled initramfs. + + .. note:: + If you choose to not bundle the initramfs image with the kernel image, you are essentially using an `Initial RAM Disk (initrd) <https://en.wikipedia.org/wiki/Initrd>`__. diff --git a/poky/documentation/overview-manual/concepts.rst b/poky/documentation/overview-manual/concepts.rst index c8b89885e..301763752 100644 --- a/poky/documentation/overview-manual/concepts.rst +++ b/poky/documentation/overview-manual/concepts.rst @@ -1908,8 +1908,8 @@ Behind the scenes, the shared state code works by looking in shared state files. Here is an example:: SSTATE_MIRRORS ?= "\ - file://.\* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ - file://.\* file:///some/local/dir/sstate/PATH" + file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ + file://.* file:///some/local/dir/sstate/PATH" .. note:: diff --git a/poky/documentation/ref-manual/qa-checks.rst b/poky/documentation/ref-manual/qa-checks.rst index c3e40dba5..792c099d0 100644 --- a/poky/documentation/ref-manual/qa-checks.rst +++ b/poky/documentation/ref-manual/qa-checks.rst @@ -151,7 +151,7 @@ Errors and Warnings occur if you add a path which contains a ``.debug`` directory and do not explicitly add the ``.debug`` directory to the ``-dbg`` package. If this is the case, add the ``.debug`` directory explicitly to - ``FILES_${PN}-dbg``. See :term:`FILES` for additional + ``FILES:${PN}-dbg``. See :term:`FILES` for additional information on :term:`FILES`. @@ -435,7 +435,7 @@ Errors and Warnings (e.g. :term:`PN` happens to be the same as :term:`MACHINE` or :term:`DISTRO`), it can have unexpected consequences. For example, assignments such as - ``FILES_${PN} = "xyz"`` effectively turn into ``FILES = "xyz"``. + ``FILES:${PN} = "xyz"`` effectively turn into ``FILES = "xyz"``. Rename your recipe (or if :term:`PN` is being set explicitly, change the :term:`PN` value) so that the conflict does not occur. See :term:`FILES` for additional information. diff --git a/poky/documentation/ref-manual/variables.rst b/poky/documentation/ref-manual/variables.rst index dbe02ab27..5f6f91146 100644 --- a/poky/documentation/ref-manual/variables.rst +++ b/poky/documentation/ref-manual/variables.rst @@ -3589,6 +3589,12 @@ system and gives an overview of their function and contents. .. note:: + Bundling the initramfs with the kernel conflates the code in the + initramfs with the GPLv2 licensed Linux kernel binary. Thus only GPLv2 + compatible software may be part of a bundled initramfs. + + .. note:: + Using an extra compilation pass to bundle the initramfs avoids a circular dependency between the kernel recipe and the initramfs recipe should the initramfs include kernel modules. Should that be @@ -5064,33 +5070,44 @@ system and gives an overview of their function and contents. ":ref:`package.bbclass <ref-classes-package>`" section. :term:`PACKAGE_DEBUG_SPLIT_STYLE` - Determines how to split up the binary and debug information when - creating ``*-dbg`` packages to be used with the GNU Project Debugger - (GDB). - - With the :term:`PACKAGE_DEBUG_SPLIT_STYLE` variable, you can control - where debug information, which can include or exclude source files, - is stored: - - - ".debug": Debug symbol files are placed next to the binary in a - ``.debug`` directory on the target. For example, if a binary is - installed into ``/bin``, the corresponding debug symbol files are - installed in ``/bin/.debug``. Source files are placed in - ``/usr/src/debug``. - - - "debug-file-directory": Debug symbol files are placed under - ``/usr/lib/debug`` on the target, and separated by the path from - where the binary is installed. For example, if a binary is - installed in ``/bin``, the corresponding debug symbols are - installed in ``/usr/lib/debug/bin``. Source files are placed in - ``/usr/src/debug``. - - - "debug-without-src": The same behavior as ".debug" previously - described with the exception that no source files are installed. - - - "debug-with-srcpkg": The same behavior as ".debug" previously - described with the exception that all source files are placed in a - separate ``*-src`` pkg. This is the default behavior. + Determines how to split up and package debug and source information + when creating debugging packages to be used with the GNU Project + Debugger (GDB). In general, based on the value of this variable, + you can combine the source and debug info in a single package, + you can break out the source into a separate package that can be + installed independently, or you can choose to not have the source + packaged at all. + + The possible values of :term:`PACKAGE_DEBUG_SPLIT_STYLE` variable: + + - "``.debug``": All debugging and source info is placed in a single + ``*-dbg`` package; debug symbol files are placed next to the + binary in a ``.debug`` directory so that, if a binary is installed + into ``/bin``, the corresponding debug symbol file is installed + in ``/bin/.debug``. Source files are installed in the same ``*-dbg`` + package under ``/usr/src/debug``. + + - "``debug-file-directory``": As above, all debugging and source info + is placed in a single ``*-dbg`` package; debug symbol files are + placed entirely under the directory ``/usr/lib/debug`` and separated + by the path from where the binary is installed, so that if a binary + is installed in ``/bin``, the corresponding debug symbols are installed + in ``/usr/lib/debug/bin``, and so on. As above, source is installed + in the same package under ``/usr/src/debug``. + + - "``debug-with-srcpkg``": Debugging info is placed in the standard + ``*-dbg`` package as with the ``.debug`` value, while source is + placed in a separate ``*-src`` package, which can be installed + independently. This is the default setting for this variable, + as defined in Poky's ``bitbake.conf`` file. + + - "``debug-without-src``": The same behavior as with the ``.debug`` + setting, but no source is packaged at all. + + .. note:: + + Much of the above package splitting can be overridden via + use of the :term:`INHIBIT_PACKAGE_DEBUG_SPLIT` variable. You can find out more about debugging using GDB by reading the ":ref:`dev-manual/common-tasks:debugging with the gnu project debugger (gdb) remotely`" section diff --git a/poky/documentation/releases.rst b/poky/documentation/releases.rst index 436f20a29..bb881a2e2 100644 --- a/poky/documentation/releases.rst +++ b/poky/documentation/releases.rst @@ -38,6 +38,7 @@ Release Series 3.1 (dunfell) - :yocto_docs:`3.1.8 Documentation </3.1.8>` - :yocto_docs:`3.1.9 Documentation </3.1.9>` - :yocto_docs:`3.1.10 Documentation </3.1.10>` +- :yocto_docs:`3.1.11 Documentation </3.1.11>` ========================== Outdated Release Manuals diff --git a/poky/documentation/sphinx-static/switchers.js b/poky/documentation/sphinx-static/switchers.js index a693fefb0..1e37b625a 100644 --- a/poky/documentation/sphinx-static/switchers.js +++ b/poky/documentation/sphinx-static/switchers.js @@ -5,7 +5,7 @@ 'dev': 'dev (3.4)', '3.3.3': '3.3.3', '3.2.4': '3.2.4', - '3.1.10': '3.1.10', + '3.1.11': '3.1.11', '3.0.4': '3.0.4', '2.7.4': '2.7.4', }; diff --git a/poky/meta-selftest/wic/test_efi_plugin.wks b/poky/meta-selftest/wic/test_efi_plugin.wks new file mode 100644 index 000000000..1603d6c4b --- /dev/null +++ b/poky/meta-selftest/wic/test_efi_plugin.wks @@ -0,0 +1,6 @@ +# short-description: This file is used in oe-selftest wic module to test efi plugin + +part /boot --source bootimg-efi --sourceparams="loader=systemd-boot,create-unified-kernel-image=true,initrd=${INITRAMFS_IMAGE}-${MACHINE}.${INITRAMFS_FSTYPES}" --active --align 1024 --use-uuid +part / --source rootfs --fstype=ext4 --align 1024 --use-uuid + +bootloader --timeout=0 --append="console=ttyS0,115200n8" diff --git a/poky/meta-skeleton/recipes-kernel/hello-mod/files/hello.c b/poky/meta-skeleton/recipes-kernel/hello-mod/files/hello.c index b68b0c348..6b73a7952 100644 --- a/poky/meta-skeleton/recipes-kernel/hello-mod/files/hello.c +++ b/poky/meta-skeleton/recipes-kernel/hello-mod/files/hello.c @@ -21,13 +21,13 @@ static int __init hello_init(void) { - printk("Hello World!\n"); + pr_info("Hello World!\n"); return 0; } static void __exit hello_exit(void) { - printk("Goodbye Cruel World!\n"); + pr_info("Goodbye Cruel World!\n"); } module_init(hello_init); diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.13.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.13.bbappend deleted file mode 100644 index daf5fd2cd..000000000 --- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.13.bbappend +++ /dev/null @@ -1,23 +0,0 @@ -KBRANCH:genericx86 = "v5.13/standard/base" -KBRANCH:genericx86-64 = "v5.13/standard/base" -KBRANCH:edgerouter = "v5.13/standard/edgerouter" -KBRANCH:beaglebone-yocto = "v5.13/standard/beaglebone" - -KMACHINE:genericx86 ?= "common-pc" -KMACHINE:genericx86-64 ?= "common-pc-64" -KMACHINE:beaglebone-yocto ?= "beaglebone" - -SRCREV_machine:genericx86 ?= "7280c93f5599946db3add473eeb05b34c364938d" -SRCREV_machine:genericx86-64 ?= "7280c93f5599946db3add473eeb05b34c364938d" -SRCREV_machine:edgerouter ?= "a832a0390e96c4f014d7b2bf9f161ac9477140f7" -SRCREV_machine:beaglebone-yocto ?= "dbdc921374c057a75b2df92302124994e241ca51" - -COMPATIBLE_MACHINE:genericx86 = "genericx86" -COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64" -COMPATIBLE_MACHINE:edgerouter = "edgerouter" -COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto" - -LINUX_VERSION:genericx86 = "5.13.15" -LINUX_VERSION:genericx86-64 = "5.13.15" -LINUX_VERSION:edgerouter = "5.13.15" -LINUX_VERSION:beaglebone-yocto = "5.13.15" diff --git a/poky/meta/classes/autotools.bbclass b/poky/meta/classes/autotools.bbclass index bc0c2ea83..4ab246099 100644 --- a/poky/meta/classes/autotools.bbclass +++ b/poky/meta/classes/autotools.bbclass @@ -149,10 +149,7 @@ python autotools_aclocals () { d.setVar("CONFIG_SITE", " ".join(sitefiles)) } -python () { - sitefiles, searched = siteinfo_get_files(d, sysrootcache=False) - d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(searched)) -} +do_configure[file-checksums] += "${@' '.join(siteinfo_get_files(d, sysrootcache=False)[1])}" CONFIGURE_FILES = "${S}/configure.in ${S}/configure.ac ${S}/config.h.in ${S}/acinclude.m4 Makefile.am" diff --git a/poky/meta/classes/create-spdx.bbclass b/poky/meta/classes/create-spdx.bbclass index 3c73c21c0..739b46e9b 100644 --- a/poky/meta/classes/create-spdx.bbclass +++ b/poky/meta/classes/create-spdx.bbclass @@ -13,6 +13,9 @@ SPDXDIR ??= "${WORKDIR}/spdx" SPDXDEPLOY = "${SPDXDIR}/deploy" SPDXWORK = "${SPDXDIR}/work" +SPDX_TOOL_NAME ??= "oe-spdx-creator" +SPDX_TOOL_VERSION ??= "1.0" + SPDXRUNTIMEDEPLOY = "${SPDXDIR}/runtime-deploy" SPDX_INCLUDE_SOURCES ??= "0" @@ -32,6 +35,10 @@ def get_doc_namespace(d, doc): namespace_uuid = uuid.uuid5(uuid.NAMESPACE_DNS, d.getVar("SPDX_UUID_NAMESPACE")) return "%s/%s-%s" % (d.getVar("SPDX_NAMESPACE_PREFIX"), doc.name, str(uuid.uuid5(namespace_uuid, doc.name))) +def recipe_spdx_is_native(d, recipe): + return any(a.annotationType == "OTHER" and + a.annotator == "Tool: %s - %s" % (d.getVar("SPDX_TOOL_NAME"), d.getVar("SPDX_TOOL_VERSION")) and + a.comment == "isNative" for a in recipe.annotations) def is_work_shared(d): pn = d.getVar('PN') @@ -336,6 +343,10 @@ def collect_dep_sources(d, dep_recipes): sources = {} for dep in dep_recipes: + # Don't collect sources from native recipes as they + # match non-native sources also. + if recipe_spdx_is_native(d, dep.recipe): + continue recipe_files = set(dep.recipe.hasFiles) for spdx_file in dep.doc.files: @@ -382,7 +393,6 @@ python do_create_spdx() { include_sources = d.getVar("SPDX_INCLUDE_SOURCES") == "1" archive_sources = d.getVar("SPDX_ARCHIVE_SOURCES") == "1" archive_packaged = d.getVar("SPDX_ARCHIVE_PACKAGED") == "1" - is_native = bb.data.inherits_class("native", d) creation_time = datetime.now(tz=timezone.utc).strftime("%Y-%m-%dT%H:%M:%SZ") @@ -401,6 +411,13 @@ python do_create_spdx() { recipe.name = d.getVar("PN") recipe.versionInfo = d.getVar("PV") recipe.SPDXID = oe.sbom.get_recipe_spdxid(d) + if bb.data.inherits_class("native", d): + annotation = oe.spdx.SPDXAnnotation() + annotation.annotationDate = creation_time + annotation.annotationType = "OTHER" + annotation.annotator = "Tool: %s - %s" % (d.getVar("SPDX_TOOL_NAME"), d.getVar("SPDX_TOOL_VERSION")) + annotation.comment = "isNative" + recipe.annotations.append(annotation) for s in d.getVar('SRC_URI').split(): if not s.startswith("file://"): @@ -480,7 +497,7 @@ python do_create_spdx() { sources = collect_dep_sources(d, dep_recipes) found_licenses = {license.name:recipe_ref.externalDocumentId + ":" + license.licenseId for license in doc.hasExtractedLicensingInfos} - if not is_native: + if not recipe_spdx_is_native(d, recipe): bb.build.exec_func("read_subpackage_metadata", d) pkgdest = Path(d.getVar("PKGDEST")) diff --git a/poky/meta/classes/externalsrc.bbclass b/poky/meta/classes/externalsrc.bbclass index 7f1a760ee..ad93b2d2a 100644 --- a/poky/meta/classes/externalsrc.bbclass +++ b/poky/meta/classes/externalsrc.bbclass @@ -109,16 +109,15 @@ python () { if local_srcuri and task in fetch_tasks: continue bb.build.deltask(task, d) - - if bb.data.inherits_class('reproducible_build', d) and 'do_unpack' in d.getVar("SRCTREECOVEREDTASKS").split(): - # The reproducible_build's create_source_date_epoch_stamp function must - # be run after the source is available and before the - # do_deploy_source_date_epoch task. In the normal case, it's attached - # to do_unpack as a postfuncs, but since we removed do_unpack (above) - # we need to move the function elsewhere. The easiest thing to do is - # move it into the prefuncs of the do_deploy_source_date_epoch task. - # This is safe, as externalsrc runs with the source already unpacked. - d.prependVarFlag('do_deploy_source_date_epoch', 'prefuncs', 'create_source_date_epoch_stamp ') + if bb.data.inherits_class('reproducible_build', d) and task == 'do_unpack': + # The reproducible_build's create_source_date_epoch_stamp function must + # be run after the source is available and before the + # do_deploy_source_date_epoch task. In the normal case, it's attached + # to do_unpack as a postfuncs, but since we removed do_unpack (above) + # we need to move the function elsewhere. The easiest thing to do is + # move it into the prefuncs of the do_deploy_source_date_epoch task. + # This is safe, as externalsrc runs with the source already unpacked. + d.prependVarFlag('do_deploy_source_date_epoch', 'prefuncs', 'create_source_date_epoch_stamp ') d.prependVarFlag('do_compile', 'prefuncs', "externalsrc_compile_prefunc ") d.prependVarFlag('do_configure', 'prefuncs', "externalsrc_configure_prefunc ") diff --git a/poky/meta/classes/image-artifact-names.bbclass b/poky/meta/classes/image-artifact-names.bbclass index 3ac8dd731..67f04e816 100644 --- a/poky/meta/classes/image-artifact-names.bbclass +++ b/poky/meta/classes/image-artifact-names.bbclass @@ -4,7 +4,7 @@ IMAGE_BASENAME ?= "${PN}" IMAGE_VERSION_SUFFIX ?= "-${DATETIME}" -IMAGE_VERSION_SUFFIX[vardepsexclude] += "DATETIME" +IMAGE_VERSION_SUFFIX[vardepsexclude] += "DATETIME SOURCE_DATE_EPOCH" IMAGE_NAME ?= "${IMAGE_BASENAME}-${MACHINE}${IMAGE_VERSION_SUFFIX}" IMAGE_LINK_NAME ?= "${IMAGE_BASENAME}-${MACHINE}" @@ -13,3 +13,10 @@ IMAGE_LINK_NAME ?= "${IMAGE_BASENAME}-${MACHINE}" # by default) followed by additional suffices which describe the format (.ext4, # .ext4.xz, etc.). IMAGE_NAME_SUFFIX ??= ".rootfs" + +python () { + if bb.data.inherits_class('reproducible_build', d) and bb.data.inherits_class('deploy', d) and d.getVar("IMAGE_VERSION_SUFFIX") == "-${DATETIME}": + import datetime + d.setVar("IMAGE_VERSION_SUFFIX", "-" + datetime.datetime.fromtimestamp(int(d.getVar("SOURCE_DATE_EPOCH")), datetime.timezone.utc).strftime('%Y%m%d%H%M%S')) + d.setVarFlag("IMAGE_VERSION_SUFFIX", "vardepvalue", "") +} diff --git a/poky/meta/classes/image.bbclass b/poky/meta/classes/image.bbclass index 1d88ccd81..c2f323202 100644 --- a/poky/meta/classes/image.bbclass +++ b/poky/meta/classes/image.bbclass @@ -434,6 +434,7 @@ python () { localdata.delVar('DATETIME') localdata.delVar('DATE') localdata.delVar('TMPDIR') + localdata.delVar('IMAGE_VERSION_SUFFIX') vardepsexclude = (d.getVarFlag('IMAGE_CMD:' + realt, 'vardepsexclude', True) or '').split() for dep in vardepsexclude: localdata.delVar(dep) diff --git a/poky/meta/classes/image_types_wic.bbclass b/poky/meta/classes/image_types_wic.bbclass index d561fb263..e3863c88a 100644 --- a/poky/meta/classes/image_types_wic.bbclass +++ b/poky/meta/classes/image_types_wic.bbclass @@ -27,6 +27,7 @@ WICVARS ?= "\ ROOTFS_SIZE \ STAGING_DATADIR \ STAGING_DIR \ + STAGING_DIR_HOST \ STAGING_LIBDIR \ TARGET_SYS \ " @@ -84,8 +85,8 @@ do_image_wic[deptask] += "do_image_complete" WKS_FILE_DEPENDS_DEFAULT = '${@bb.utils.contains_any("BUILD_ARCH", [ 'x86_64', 'i686' ], "syslinux-native", "",d)}' WKS_FILE_DEPENDS_DEFAULT += "bmap-tools-native cdrtools-native btrfs-tools-native squashfs-tools-native e2fsprogs-native" WKS_FILE_DEPENDS_BOOTLOADERS = "" -WKS_FILE_DEPENDS_BOOTLOADERS:x86 = "syslinux grub-efi systemd-boot" -WKS_FILE_DEPENDS_BOOTLOADERS:x86-64 = "syslinux grub-efi systemd-boot" +WKS_FILE_DEPENDS_BOOTLOADERS:x86 = "syslinux grub-efi systemd-boot os-release" +WKS_FILE_DEPENDS_BOOTLOADERS:x86-64 = "syslinux grub-efi systemd-boot os-release" WKS_FILE_DEPENDS_BOOTLOADERS:x86-x32 = "syslinux grub-efi" WKS_FILE_DEPENDS ??= "${WKS_FILE_DEPENDS_DEFAULT} ${WKS_FILE_DEPENDS_BOOTLOADERS}" diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass index d13c38fb0..4acec1877 100644 --- a/poky/meta/classes/kernel.bbclass +++ b/poky/meta/classes/kernel.bbclass @@ -322,15 +322,6 @@ python do_devshell:prepend () { addtask bundle_initramfs after do_install before do_deploy -get_cc_option () { - # Check if KERNEL_CC supports the option "file-prefix-map". - # This option allows us to build images with __FILE__ values that do not - # contain the host build path. - if ${KERNEL_CC} -Q --help=joined | grep -q "\-ffile-prefix-map=<old=new>"; then - echo "-ffile-prefix-map=${S}=/kernel-source/" - fi -} - kernel_do_compile() { unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE if [ "${BUILD_REPRODUCIBLE_BINARIES}" = "1" ]; then @@ -361,9 +352,8 @@ kernel_do_compile() { copy_initramfs use_alternate_initrd=CONFIG_INITRAMFS_SOURCE=${B}/usr/${INITRAMFS_IMAGE_NAME}.cpio fi - cc_extra=$(get_cc_option) for typeformake in ${KERNEL_IMAGETYPE_FOR_MAKE} ; do - oe_runmake ${typeformake} CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} $use_alternate_initrd + oe_runmake ${typeformake} CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} $use_alternate_initrd done # vmlinux.gz is not built by kernel if (echo "${KERNEL_IMAGETYPES}" | grep -wq "vmlinux\.gz"); then @@ -390,8 +380,7 @@ do_compile_kernelmodules() { bbnote "KBUILD_BUILD_TIMESTAMP: $ts" fi if (grep -q -i -e '^CONFIG_MODULES=y$' ${B}/.config); then - cc_extra=$(get_cc_option) - oe_runmake -C ${B} ${PARALLEL_MAKE} modules CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} + oe_runmake -C ${B} ${PARALLEL_MAKE} modules CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} # Module.symvers gets updated during the # building of the kernel modules. We need to diff --git a/poky/meta/classes/libc-package.bbclass b/poky/meta/classes/libc-package.bbclass index 7a661d44b..13ef8cdc0 100644 --- a/poky/meta/classes/libc-package.bbclass +++ b/poky/meta/classes/libc-package.bbclass @@ -355,7 +355,7 @@ python package_do_split_gconvs () { m.write("\t@echo 'Progress %d/%d'\n" % (i, total)) m.write("\t" + makerecipe + "\n\n") d.setVar("EXTRA_OEMAKE", "-C %s ${PARALLEL_MAKE}" % (os.path.dirname(makefile))) - d.setVarFlag("oe_runmake", "progress", "outof:Progress\s(\d+)/(\d+)") + d.setVarFlag("oe_runmake", "progress", r"outof:Progress\s(\d+)/(\d+)") bb.note("Executing binary locale generation makefile") bb.build.exec_func("oe_runmake", d) bb.note("collecting binary locales from locale tree") diff --git a/poky/meta/classes/package.bbclass b/poky/meta/classes/package.bbclass index 460997ad5..985dfacd0 100644 --- a/poky/meta/classes/package.bbclass +++ b/poky/meta/classes/package.bbclass @@ -2112,12 +2112,12 @@ python package_do_pkgconfig () { for pkg in packages.split(): pkgconfig_provided[pkg] = [] pkgconfig_needed[pkg] = [] - for file in pkgfiles[pkg]: + for file in sorted(pkgfiles[pkg]): m = pc_re.match(file) if m: pd = bb.data.init() name = m.group(1) - pkgconfig_provided[pkg].append(name) + pkgconfig_provided[pkg].append(os.path.basename(name)) if not os.access(file, os.R_OK): continue with open(file, 'r') as f: @@ -2140,7 +2140,7 @@ python package_do_pkgconfig () { pkgs_file = os.path.join(shlibswork_dir, pkg + ".pclist") if pkgconfig_provided[pkg] != []: with open(pkgs_file, 'w') as f: - for p in pkgconfig_provided[pkg]: + for p in sorted(pkgconfig_provided[pkg]): f.write('%s\n' % p) # Go from least to most specific since the last one found wins diff --git a/poky/meta/classes/package_ipk.bbclass b/poky/meta/classes/package_ipk.bbclass index 4fcb25ca7..776fe8ed2 100644 --- a/poky/meta/classes/package_ipk.bbclass +++ b/poky/meta/classes/package_ipk.bbclass @@ -230,8 +230,8 @@ def ipk_write_pkg(pkg, d): shell=True) if d.getVar('IPK_SIGN_PACKAGES') == '1': - ipkver = "%s-%s" % (d.getVar('PKGV'), d.getVar('PKGR')) - ipk_to_sign = "%s/%s_%s_%s.ipk" % (pkgoutdir, pkgname, ipkver, d.getVar('PACKAGE_ARCH')) + ipkver = "%s-%s" % (localdata.getVar('PKGV'), localdata.getVar('PKGR')) + ipk_to_sign = "%s/%s_%s_%s.ipk" % (pkgoutdir, pkgname, ipkver, localdata.getVar('PACKAGE_ARCH')) sign_ipk(d, ipk_to_sign) finally: diff --git a/poky/meta/classes/reproducible_build.bbclass b/poky/meta/classes/reproducible_build.bbclass index 89f645b85..7571c116c 100644 --- a/poky/meta/classes/reproducible_build.bbclass +++ b/poky/meta/classes/reproducible_build.bbclass @@ -115,11 +115,14 @@ EPOCHTASK = "do_deploy_source_date_epoch" do_unpack[postfuncs] += "create_source_date_epoch_stamp" def get_source_date_epoch_value(d): - cached = d.getVar('__CACHED_SOURCE_DATE_EPOCH') - if cached: + epochfile = d.getVar('SDE_FILE') + cached, efile = d.getVar('__CACHED_SOURCE_DATE_EPOCH') or (None, None) + if cached and efile == epochfile: return cached - epochfile = d.getVar('SDE_FILE') + if cached and epochfile != efile: + bb.debug(1, "Epoch file changed from %s to %s" % (efile, epochfile)) + source_date_epoch = int(d.getVar('SOURCE_DATE_EPOCH_FALLBACK')) try: with open(epochfile, 'r') as f: @@ -137,7 +140,7 @@ def get_source_date_epoch_value(d): except FileNotFoundError: bb.debug(1, "Cannot find %s. SOURCE_DATE_EPOCH will default to %d" % (epochfile, source_date_epoch)) - d.setVar('__CACHED_SOURCE_DATE_EPOCH', str(source_date_epoch)) + d.setVar('__CACHED_SOURCE_DATE_EPOCH', (str(source_date_epoch), epochfile)) return str(source_date_epoch) export SOURCE_DATE_EPOCH ?= "${@get_source_date_epoch_value(d)}" diff --git a/poky/meta/classes/rm_work.bbclass b/poky/meta/classes/rm_work.bbclass index 07901d759..5f12d5aae 100644 --- a/poky/meta/classes/rm_work.bbclass +++ b/poky/meta/classes/rm_work.bbclass @@ -73,7 +73,7 @@ do_rm_work () { # sstate version since otherwise we'd need to leave 'plaindirs' around # such as 'packages' and 'packages-split' and these can be large. No end # of chain tasks depend directly on do_package anymore. - rm -f $i; + rm -f -- $i; ;; *_setscene*) # Skip stamps which are already setscene versions @@ -90,7 +90,7 @@ do_rm_work () { ;; esac done - rm -f $i + rm -f -- $i esac done @@ -100,9 +100,9 @@ do_rm_work () { # Retain only logs and other files in temp, safely ignore # failures of removing pseudo folers on NFS2/3 server. if [ $dir = 'pseudo' ]; then - rm -rf $dir 2> /dev/null || true + rm -rf -- $dir 2> /dev/null || true elif ! echo "$excludes" | grep -q -w "$dir"; then - rm -rf $dir + rm -rf -- $dir fi done } diff --git a/poky/meta/classes/sstate.bbclass b/poky/meta/classes/sstate.bbclass index 92a73114b..7f4b1f680 100644 --- a/poky/meta/classes/sstate.bbclass +++ b/poky/meta/classes/sstate.bbclass @@ -1,4 +1,4 @@ -SSTATE_VERSION = "3" +SSTATE_VERSION = "5" SSTATE_MANIFESTS ?= "${TMPDIR}/sstate-control" SSTATE_MANFILEPREFIX = "${SSTATE_MANIFESTS}/manifest-${SSTATE_MANMACH}-${PN}" @@ -67,6 +67,13 @@ SSTATE_DUPWHITELIST += "${DEPLOY_DIR_IMAGE}/microcode" SSTATE_SCAN_FILES ?= "*.la *-config *_config postinst-*" SSTATE_SCAN_CMD ??= 'find ${SSTATE_BUILDDIR} \( -name "${@"\" -o -name \"".join(d.getVar("SSTATE_SCAN_FILES").split())}" \) -type f' SSTATE_SCAN_CMD_NATIVE ??= 'grep -Irl -e ${RECIPE_SYSROOT} -e ${RECIPE_SYSROOT_NATIVE} -e ${HOSTTOOLS_DIR} ${SSTATE_BUILDDIR}' +SSTATE_HASHEQUIV_FILEMAP ?= " \ + populate_sysroot:*/postinst-useradd-*:${TMPDIR} \ + populate_sysroot:*/postinst-useradd-*:${COREBASE} \ + populate_sysroot:*/postinst-useradd-*:regex-\s(PATH|PSEUDO_IGNORE_PATHS|HOME|LOGNAME|OMP_NUM_THREADS|USER)=.*\s \ + populate_sysroot:*/crossscripts/*:${TMPDIR} \ + populate_sysroot:*/crossscripts/*:${COREBASE} \ + " BB_HASHFILENAME = "False ${SSTATE_PKGSPEC} ${SSTATE_SWSPEC}" diff --git a/poky/meta/conf/abi_version.conf b/poky/meta/conf/abi_version.conf index 35faef9a3..e84cad101 100644 --- a/poky/meta/conf/abi_version.conf +++ b/poky/meta/conf/abi_version.conf @@ -12,4 +12,4 @@ OELAYOUT_ABI = "14" # a reset of the equivalence, for example when reproducibility issues break the # existing match data. Distros can also append to this value for the same effect. # -HASHEQUIV_HASH_VERSION = "5" +HASHEQUIV_HASH_VERSION = "8" diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf index e25d632dc..f3ff5b776 100644 --- a/poky/meta/conf/bitbake.conf +++ b/poky/meta/conf/bitbake.conf @@ -604,6 +604,7 @@ LINKER_HASH_STYLE:mipsarch:libc-musl = "sysv" # Pass parallel make options to the compile task EXTRA_OEMAKE:prepend:task-compile = "${PARALLEL_MAKE} " PARALLEL_MAKEINST ??= "${PARALLEL_MAKE}" +PARALLEL_MAKEINST[vardepvalue] = "1" # Pass parallel make options to the install task EXTRA_OEMAKE:prepend:task-install = "${PARALLEL_MAKEINST} " diff --git a/poky/meta/files/spdx-licenses.json b/poky/meta/files/spdx-licenses.json index 582c73ca6..ef926164e 100644 --- a/poky/meta/files/spdx-licenses.json +++ b/poky/meta/files/spdx-licenses.json @@ -1,5 +1,5 @@ { - "licenseListVersion": "7bcf79d", + "licenseListVersion": "3.14", "licenses": [ { "reference": "https://spdx.org/licenses/GPL-1.0.html", @@ -14,10 +14,23 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/bzip2-1.0.6.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/bzip2-1.0.6.json", + "referenceNumber": 1, + "name": "bzip2 and libbzip2 License v1.0.6", + "licenseId": "bzip2-1.0.6", + "seeAlso": [ + "https://sourceware.org/git/?p\u003dbzip2.git;a\u003dblob;f\u003dLICENSE;hb\u003dbzip2-1.0.6", + "http://bzip.org/1.0.5/bzip2-manual-1.0.5.html" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/Intel-ACPI.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Intel-ACPI.json", - "referenceNumber": 1, + "referenceNumber": 2, "name": "Intel ACPI Software License Agreement", "licenseId": "Intel-ACPI", "seeAlso": [ @@ -29,7 +42,7 @@ "reference": "https://spdx.org/licenses/XSkat.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/XSkat.json", - "referenceNumber": 2, + "referenceNumber": 3, "name": "XSkat License", "licenseId": "XSkat", "seeAlso": [ @@ -41,7 +54,7 @@ "reference": "https://spdx.org/licenses/CC-BY-NC-SA-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-SA-2.0.json", - "referenceNumber": 3, + "referenceNumber": 4, "name": "Creative Commons Attribution Non Commercial Share Alike 2.0 Generic", "licenseId": "CC-BY-NC-SA-2.0", "seeAlso": [ @@ -50,15 +63,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/bzip2-1.0.6.html", + "reference": "https://spdx.org/licenses/Plexus.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/bzip2-1.0.6.json", - "referenceNumber": 4, - "name": "bzip2 and libbzip2 License v1.0.6", - "licenseId": "bzip2-1.0.6", + "detailsUrl": "https://spdx.org/licenses/Plexus.json", + "referenceNumber": 5, + "name": "Plexus Classworlds License", + "licenseId": "Plexus", "seeAlso": [ - "https://sourceware.org/git/?p\u003dbzip2.git;a\u003dblob;f\u003dLICENSE;hb\u003dbzip2-1.0.6", - "http://bzip.org/1.0.5/bzip2-manual-1.0.5.html" + "https://fedoraproject.org/wiki/Licensing/Plexus_Classworlds_License" ], "isOsiApproved": false }, @@ -66,7 +78,7 @@ "reference": "https://spdx.org/licenses/Giftware.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Giftware.json", - "referenceNumber": 5, + "referenceNumber": 6, "name": "Giftware License", "licenseId": "Giftware", "seeAlso": [ @@ -75,18 +87,6 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Plexus.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Plexus.json", - "referenceNumber": 6, - "name": "Plexus Classworlds License", - "licenseId": "Plexus", - "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Plexus_Classworlds_License" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/BitTorrent-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/BitTorrent-1.0.json", @@ -185,24 +185,10 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/W3C.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/W3C.json", - "referenceNumber": 15, - "name": "W3C Software Notice and License (2002-12-31)", - "licenseId": "W3C", - "seeAlso": [ - "http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231.html", - "https://opensource.org/licenses/W3C" - ], - "isOsiApproved": true, - "isFsfLibre": true - }, - { "reference": "https://spdx.org/licenses/JPNIC.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/JPNIC.json", - "referenceNumber": 16, + "referenceNumber": 15, "name": "Japan Network Information Center License", "licenseId": "JPNIC", "seeAlso": [ @@ -214,7 +200,7 @@ "reference": "https://spdx.org/licenses/SAX-PD.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/SAX-PD.json", - "referenceNumber": 17, + "referenceNumber": 16, "name": "Sax Public Domain Notice", "licenseId": "SAX-PD", "seeAlso": [ @@ -226,7 +212,7 @@ "reference": "https://spdx.org/licenses/CC-BY-ND-2.5.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-2.5.json", - "referenceNumber": 18, + "referenceNumber": 17, "name": "Creative Commons Attribution No Derivatives 2.5 Generic", "licenseId": "CC-BY-ND-2.5", "seeAlso": [ @@ -235,6 +221,19 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/eGenix.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/eGenix.json", + "referenceNumber": 18, + "name": "eGenix.com Public License 1.1.0", + "licenseId": "eGenix", + "seeAlso": [ + "http://www.egenix.com/products/eGenix.com-Public-License-1.1.0.pdf", + "https://fedoraproject.org/wiki/Licensing/eGenix.com_Public_License_1.1.0" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/LGPLLR.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/LGPLLR.json", @@ -247,27 +246,26 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/eGenix.html", + "reference": "https://spdx.org/licenses/OLDAP-2.2.2.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/eGenix.json", + "detailsUrl": "https://spdx.org/licenses/OLDAP-2.2.2.json", "referenceNumber": 20, - "name": "eGenix.com Public License 1.1.0", - "licenseId": "eGenix", + "name": "Open LDAP Public License 2.2.2", + "licenseId": "OLDAP-2.2.2", "seeAlso": [ - "http://www.egenix.com/products/eGenix.com-Public-License-1.1.0.pdf", - "https://fedoraproject.org/wiki/Licensing/eGenix.com_Public_License_1.1.0" + "http://www.openldap.org/devel/gitweb.cgi?p\u003dopenldap.git;a\u003dblob;f\u003dLICENSE;hb\u003ddf2cc1e21eb7c160695f5b7cffd6296c151ba188" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OLDAP-2.2.2.html", + "reference": "https://spdx.org/licenses/CC-BY-ND-3.0-DE.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OLDAP-2.2.2.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-3.0-DE.json", "referenceNumber": 21, - "name": "Open LDAP Public License 2.2.2", - "licenseId": "OLDAP-2.2.2", + "name": "Creative Commons Attribution No Derivatives 3.0 Germany", + "licenseId": "CC-BY-ND-3.0-DE", "seeAlso": [ - "http://www.openldap.org/devel/gitweb.cgi?p\u003dopenldap.git;a\u003dblob;f\u003dLICENSE;hb\u003ddf2cc1e21eb7c160695f5b7cffd6296c151ba188" + "https://creativecommons.org/licenses/by-nd/3.0/de/legalcode" ], "isOsiApproved": false }, @@ -285,22 +283,10 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CC-BY-ND-3.0-DE.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-3.0-DE.json", - "referenceNumber": 23, - "name": "Creative Commons Attribution No Derivatives 3.0 Germany", - "licenseId": "CC-BY-ND-3.0-DE", - "seeAlso": [ - "https://creativecommons.org/licenses/by-nd/3.0/de/legalcode" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/NCSA.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/NCSA.json", - "referenceNumber": 24, + "referenceNumber": 23, "name": "University of Illinois/NCSA Open Source License", "licenseId": "NCSA", "seeAlso": [ @@ -311,27 +297,28 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/PHP-3.01.html", + "reference": "https://spdx.org/licenses/W3C.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/PHP-3.01.json", - "referenceNumber": 25, - "name": "PHP License v3.01", - "licenseId": "PHP-3.01", + "detailsUrl": "https://spdx.org/licenses/W3C.json", + "referenceNumber": 24, + "name": "W3C Software Notice and License (2002-12-31)", + "licenseId": "W3C", "seeAlso": [ - "http://www.php.net/license/3_01.txt" + "http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231.html", + "https://opensource.org/licenses/W3C" ], "isOsiApproved": true, "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CC-PDDC.html", + "reference": "https://spdx.org/licenses/Adobe-2006.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-PDDC.json", - "referenceNumber": 26, - "name": "Creative Commons Public Domain Dedication and Certification", - "licenseId": "CC-PDDC", + "detailsUrl": "https://spdx.org/licenses/Adobe-2006.json", + "referenceNumber": 25, + "name": "Adobe Systems Incorporated Source Code License Agreement", + "licenseId": "Adobe-2006", "seeAlso": [ - "https://creativecommons.org/licenses/publicdomain/" + "https://fedoraproject.org/wiki/Licensing/AdobeLicense" ], "isOsiApproved": false }, @@ -339,7 +326,7 @@ "reference": "https://spdx.org/licenses/Net-SNMP.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Net-SNMP.json", - "referenceNumber": 27, + "referenceNumber": 26, "name": "Net-SNMP License", "licenseId": "Net-SNMP", "seeAlso": [ @@ -348,6 +335,19 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/CC-BY-SA-4.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-4.0.json", + "referenceNumber": 27, + "name": "Creative Commons Attribution Share Alike 4.0 International", + "licenseId": "CC-BY-SA-4.0", + "seeAlso": [ + "https://creativecommons.org/licenses/by-sa/4.0/legalcode" + ], + "isOsiApproved": false, + "isFsfLibre": true + }, + { "reference": "https://spdx.org/licenses/YPL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/YPL-1.0.json", @@ -360,22 +360,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Adobe-2006.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Adobe-2006.json", - "referenceNumber": 29, - "name": "Adobe Systems Incorporated Source Code License Agreement", - "licenseId": "Adobe-2006", - "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/AdobeLicense" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/Nunit.html", "isDeprecatedLicenseId": true, "detailsUrl": "https://spdx.org/licenses/Nunit.json", - "referenceNumber": 30, + "referenceNumber": 29, "name": "Nunit License", "licenseId": "Nunit", "seeAlso": [ @@ -387,7 +375,7 @@ "reference": "https://spdx.org/licenses/MITNFA.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/MITNFA.json", - "referenceNumber": 31, + "referenceNumber": 30, "name": "MIT +no-false-attribs license", "licenseId": "MITNFA", "seeAlso": [ @@ -396,6 +384,19 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/PHP-3.01.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/PHP-3.01.json", + "referenceNumber": 31, + "name": "PHP License v3.01", + "licenseId": "PHP-3.01", + "seeAlso": [ + "http://www.php.net/license/3_01.txt" + ], + "isOsiApproved": true, + "isFsfLibre": true + }, + { "reference": "https://spdx.org/licenses/BSD-Source-Code.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/BSD-Source-Code.json", @@ -420,18 +421,16 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OPUBL-1.0.html", + "reference": "https://spdx.org/licenses/Motosoto.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OPUBL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/Motosoto.json", "referenceNumber": 34, - "name": "Open Publication License v1.0", - "licenseId": "OPUBL-1.0", + "name": "Motosoto License", + "licenseId": "Motosoto", "seeAlso": [ - "http://opencontent.org/openpub/", - "https://www.debian.org/opl", - "https://www.ctan.org/license/opl" + "https://opensource.org/licenses/Motosoto" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/OSL-1.1.html", @@ -447,41 +446,40 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CC-BY-SA-4.0.html", + "reference": "https://spdx.org/licenses/NGPL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-4.0.json", + "detailsUrl": "https://spdx.org/licenses/NGPL.json", "referenceNumber": 36, - "name": "Creative Commons Attribution Share Alike 4.0 International", - "licenseId": "CC-BY-SA-4.0", + "name": "Nethack General Public License", + "licenseId": "NGPL", "seeAlso": [ - "https://creativecommons.org/licenses/by-sa/4.0/legalcode" + "https://opensource.org/licenses/NGPL" ], - "isOsiApproved": false, - "isFsfLibre": true + "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/Unicode-TOU.html", + "reference": "https://spdx.org/licenses/CC-BY-2.5-AU.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Unicode-TOU.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-2.5-AU.json", "referenceNumber": 37, - "name": "Unicode Terms of Use", - "licenseId": "Unicode-TOU", + "name": "Creative Commons Attribution 2.5 Australia", + "licenseId": "CC-BY-2.5-AU", "seeAlso": [ - "http://www.unicode.org/copyright.html" + "https://creativecommons.org/licenses/by/2.5/au/legalcode" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/NGPL.html", + "reference": "https://spdx.org/licenses/Unicode-TOU.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NGPL.json", + "detailsUrl": "https://spdx.org/licenses/Unicode-TOU.json", "referenceNumber": 38, - "name": "Nethack General Public License", - "licenseId": "NGPL", + "name": "Unicode Terms of Use", + "licenseId": "Unicode-TOU", "seeAlso": [ - "https://opensource.org/licenses/NGPL" + "http://www.unicode.org/copyright.html" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/BSD-3-Clause-No-Nuclear-License.html", @@ -496,16 +494,18 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Motosoto.html", + "reference": "https://spdx.org/licenses/OPUBL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Motosoto.json", + "detailsUrl": "https://spdx.org/licenses/OPUBL-1.0.json", "referenceNumber": 40, - "name": "Motosoto License", - "licenseId": "Motosoto", + "name": "Open Publication License v1.0", + "licenseId": "OPUBL-1.0", "seeAlso": [ - "https://opensource.org/licenses/Motosoto" + "http://opencontent.org/openpub/", + "https://www.debian.org/opl", + "https://www.ctan.org/license/opl" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/CC-BY-NC-SA-2.0-UK.html", @@ -520,47 +520,35 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/gnuplot.html", + "reference": "https://spdx.org/licenses/NLOD-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/gnuplot.json", + "detailsUrl": "https://spdx.org/licenses/NLOD-2.0.json", "referenceNumber": 42, - "name": "gnuplot License", - "licenseId": "gnuplot", - "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Gnuplot" - ], - "isOsiApproved": false, - "isFsfLibre": true - }, - { - "reference": "https://spdx.org/licenses/Eurosym.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Eurosym.json", - "referenceNumber": 43, - "name": "Eurosym License", - "licenseId": "Eurosym", + "name": "Norwegian Licence for Open Government Data (NLOD) 2.0", + "licenseId": "NLOD-2.0", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Eurosym" + "http://data.norge.no/nlod/en/2.0" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-2.5-AU.html", + "reference": "https://spdx.org/licenses/gnuplot.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-2.5-AU.json", - "referenceNumber": 44, - "name": "Creative Commons Attribution 2.5 Australia", - "licenseId": "CC-BY-2.5-AU", + "detailsUrl": "https://spdx.org/licenses/gnuplot.json", + "referenceNumber": 43, + "name": "gnuplot License", + "licenseId": "gnuplot", "seeAlso": [ - "https://creativecommons.org/licenses/by/2.5/au/legalcode" + "https://fedoraproject.org/wiki/Licensing/Gnuplot" ], - "isOsiApproved": false + "isOsiApproved": false, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/EPICS.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/EPICS.json", - "referenceNumber": 45, + "referenceNumber": 44, "name": "EPICS Open License", "licenseId": "EPICS", "seeAlso": [ @@ -572,7 +560,7 @@ "reference": "https://spdx.org/licenses/Info-ZIP.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Info-ZIP.json", - "referenceNumber": 46, + "referenceNumber": 45, "name": "Info-ZIP License", "licenseId": "Info-ZIP", "seeAlso": [ @@ -584,7 +572,7 @@ "reference": "https://spdx.org/licenses/OLDAP-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/OLDAP-2.0.json", - "referenceNumber": 47, + "referenceNumber": 46, "name": "Open LDAP Public License v2.0 (or possibly 2.0A and 2.0B)", "licenseId": "OLDAP-2.0", "seeAlso": [ @@ -593,6 +581,18 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/CERN-OHL-P-2.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/CERN-OHL-P-2.0.json", + "referenceNumber": 47, + "name": "CERN Open Hardware Licence Version 2 - Permissive", + "licenseId": "CERN-OHL-P-2.0", + "seeAlso": [ + "https://www.ohwr.org/project/cernohl/wikis/Documents/CERN-OHL-version-2" + ], + "isOsiApproved": true + }, + { "reference": "https://spdx.org/licenses/BSD-3-Clause-No-Nuclear-Warranty.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/BSD-3-Clause-No-Nuclear-Warranty.json", @@ -605,22 +605,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CERN-OHL-P-2.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CERN-OHL-P-2.0.json", - "referenceNumber": 49, - "name": "CERN Open Hardware Licence Version 2 - Permissive", - "licenseId": "CERN-OHL-P-2.0", - "seeAlso": [ - "https://www.ohwr.org/project/cernohl/wikis/Documents/CERN-OHL-version-2" - ], - "isOsiApproved": true - }, - { "reference": "https://spdx.org/licenses/AML.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/AML.json", - "referenceNumber": 50, + "referenceNumber": 49, "name": "Apple MIT License", "licenseId": "AML", "seeAlso": [ @@ -632,7 +620,7 @@ "reference": "https://spdx.org/licenses/MulanPSL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/MulanPSL-1.0.json", - "referenceNumber": 51, + "referenceNumber": 50, "name": "Mulan Permissive Software License, Version 1", "licenseId": "MulanPSL-1.0", "seeAlso": [ @@ -642,6 +630,18 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/Multics.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/Multics.json", + "referenceNumber": 51, + "name": "Multics License", + "licenseId": "Multics", + "seeAlso": [ + "https://opensource.org/licenses/Multics" + ], + "isOsiApproved": true + }, + { "reference": "https://spdx.org/licenses/VSL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/VSL-1.0.json", @@ -654,39 +654,38 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/NLOD-2.0.html", + "reference": "https://spdx.org/licenses/RSA-MD.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NLOD-2.0.json", + "detailsUrl": "https://spdx.org/licenses/RSA-MD.json", "referenceNumber": 53, - "name": "Norwegian Licence for Open Government Data (NLOD) 2.0", - "licenseId": "NLOD-2.0", + "name": "RSA Message-Digest License", + "licenseId": "RSA-MD", "seeAlso": [ - "http://data.norge.no/nlod/en/2.0" + "http://www.faqs.org/rfcs/rfc1321.html" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/RSA-MD.html", + "reference": "https://spdx.org/licenses/CC-PDDC.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/RSA-MD.json", + "detailsUrl": "https://spdx.org/licenses/CC-PDDC.json", "referenceNumber": 54, - "name": "RSA Message-Digest License", - "licenseId": "RSA-MD", + "name": "Creative Commons Public Domain Dedication and Certification", + "licenseId": "CC-PDDC", "seeAlso": [ - "http://www.faqs.org/rfcs/rfc1321.html" + "https://creativecommons.org/licenses/publicdomain/" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/O-UDA-1.0.html", + "reference": "https://spdx.org/licenses/CC-BY-SA-2.1-JP.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/O-UDA-1.0.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-2.1-JP.json", "referenceNumber": 55, - "name": "Open Use of Data Agreement v1.0", - "licenseId": "O-UDA-1.0", + "name": "Creative Commons Attribution Share Alike 2.1 Japan", + "licenseId": "CC-BY-SA-2.1-JP", "seeAlso": [ - "https://github.com/microsoft/Open-Use-of-Data-Agreement/blob/v1.0/O-UDA-1.0.md", - "https://cdla.dev/open-use-of-data-agreement-v1-0/" + "https://creativecommons.org/licenses/by-sa/2.1/jp/legalcode" ], "isOsiApproved": false }, @@ -704,22 +703,10 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CC-BY-SA-2.1-JP.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-2.1-JP.json", - "referenceNumber": 57, - "name": "Creative Commons Attribution Share Alike 2.1 Japan", - "licenseId": "CC-BY-SA-2.1-JP", - "seeAlso": [ - "https://creativecommons.org/licenses/by-sa/2.1/jp/legalcode" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/Spencer-94.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Spencer-94.json", - "referenceNumber": 58, + "referenceNumber": 57, "name": "Spencer License 94", "licenseId": "Spencer-94", "seeAlso": [ @@ -731,7 +718,7 @@ "reference": "https://spdx.org/licenses/OLDAP-1.2.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/OLDAP-1.2.json", - "referenceNumber": 59, + "referenceNumber": 58, "name": "Open LDAP Public License v1.2", "licenseId": "OLDAP-1.2", "seeAlso": [ @@ -740,6 +727,19 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/O-UDA-1.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/O-UDA-1.0.json", + "referenceNumber": 59, + "name": "Open Use of Data Agreement v1.0", + "licenseId": "O-UDA-1.0", + "seeAlso": [ + "https://github.com/microsoft/Open-Use-of-Data-Agreement/blob/v1.0/O-UDA-1.0.md", + "https://cdla.dev/open-use-of-data-agreement-v1-0/" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/OLDAP-2.7.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/OLDAP-2.7.json", @@ -802,22 +802,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/BSD-Protection.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BSD-Protection.json", - "referenceNumber": 65, - "name": "BSD Protection License", - "licenseId": "BSD-Protection", - "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/BSD_Protection_License" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/LiLiQ-R-1.1.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/LiLiQ-R-1.1.json", - "referenceNumber": 66, + "referenceNumber": 65, "name": "Licence Libre du Québec – Réciprocité version 1.1", "licenseId": "LiLiQ-R-1.1", "seeAlso": [ @@ -830,7 +818,7 @@ "reference": "https://spdx.org/licenses/Noweb.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Noweb.json", - "referenceNumber": 67, + "referenceNumber": 66, "name": "Noweb License", "licenseId": "Noweb", "seeAlso": [ @@ -839,22 +827,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GFDL-1.3-invariants-or-later.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-invariants-or-later.json", - "referenceNumber": 68, - "name": "GNU Free Documentation License v1.3 or later - invariants", - "licenseId": "GFDL-1.3-invariants-or-later", - "seeAlso": [ - "https://www.gnu.org/licenses/fdl-1.3.txt" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/CC0-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC0-1.0.json", - "referenceNumber": 69, + "referenceNumber": 67, "name": "Creative Commons Zero v1.0 Universal", "licenseId": "CC0-1.0", "seeAlso": [ @@ -864,10 +840,22 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/BSD-Protection.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/BSD-Protection.json", + "referenceNumber": 68, + "name": "BSD Protection License", + "licenseId": "BSD-Protection", + "seeAlso": [ + "https://fedoraproject.org/wiki/Licensing/BSD_Protection_License" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/CC-BY-NC-2.5.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-2.5.json", - "referenceNumber": 70, + "referenceNumber": 69, "name": "Creative Commons Attribution Non Commercial 2.5 Generic", "licenseId": "CC-BY-NC-2.5", "seeAlso": [ @@ -879,7 +867,7 @@ "reference": "https://spdx.org/licenses/Zlib.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Zlib.json", - "referenceNumber": 71, + "referenceNumber": 70, "name": "zlib License", "licenseId": "Zlib", "seeAlso": [ @@ -890,14 +878,14 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/GFDL-1.1-invariants-or-later.html", + "reference": "https://spdx.org/licenses/GFDL-1.3-invariants-or-later.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.1-invariants-or-later.json", - "referenceNumber": 72, - "name": "GNU Free Documentation License v1.1 or later - invariants", - "licenseId": "GFDL-1.1-invariants-or-later", + "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-invariants-or-later.json", + "referenceNumber": 71, + "name": "GNU Free Documentation License v1.3 or later - invariants", + "licenseId": "GFDL-1.3-invariants-or-later", "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/fdl-1.1.txt" + "https://www.gnu.org/licenses/fdl-1.3.txt" ], "isOsiApproved": false }, @@ -905,7 +893,7 @@ "reference": "https://spdx.org/licenses/CC-BY-3.0-AT.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-3.0-AT.json", - "referenceNumber": 73, + "referenceNumber": 72, "name": "Creative Commons Attribution 3.0 Austria", "licenseId": "CC-BY-3.0-AT", "seeAlso": [ @@ -917,7 +905,7 @@ "reference": "https://spdx.org/licenses/LPPL-1.3c.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/LPPL-1.3c.json", - "referenceNumber": 74, + "referenceNumber": 73, "name": "LaTeX Project Public License v1.3c", "licenseId": "LPPL-1.3c", "seeAlso": [ @@ -930,7 +918,7 @@ "reference": "https://spdx.org/licenses/EPL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/EPL-1.0.json", - "referenceNumber": 75, + "referenceNumber": 74, "name": "Eclipse Public License 1.0", "licenseId": "EPL-1.0", "seeAlso": [ @@ -941,6 +929,18 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/GFDL-1.1-invariants-or-later.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/GFDL-1.1-invariants-or-later.json", + "referenceNumber": 75, + "name": "GNU Free Documentation License v1.1 or later - invariants", + "licenseId": "GFDL-1.1-invariants-or-later", + "seeAlso": [ + "https://www.gnu.org/licenses/old-licenses/fdl-1.1.txt" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/ANTLR-PD-fallback.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/ANTLR-PD-fallback.json", @@ -965,22 +965,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Multics.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Multics.json", - "referenceNumber": 78, - "name": "Multics License", - "licenseId": "Multics", - "seeAlso": [ - "https://opensource.org/licenses/Multics" - ], - "isOsiApproved": true - }, - { "reference": "https://spdx.org/licenses/OLDAP-2.3.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/OLDAP-2.3.json", - "referenceNumber": 79, + "referenceNumber": 78, "name": "Open LDAP Public License v2.3", "licenseId": "OLDAP-2.3", "seeAlso": [ @@ -993,7 +981,7 @@ "reference": "https://spdx.org/licenses/ZPL-2.1.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/ZPL-2.1.json", - "referenceNumber": 80, + "referenceNumber": 79, "name": "Zope Public License 2.1", "licenseId": "ZPL-2.1", "seeAlso": [ @@ -1003,22 +991,24 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CC-BY-SA-3.0-DE.html", + "reference": "https://spdx.org/licenses/Apache-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-3.0-DE.json", - "referenceNumber": 81, - "name": "Creative Commons Attribution Share Alike 3.0 Germany", - "licenseId": "CC-BY-SA-3.0-DE", + "detailsUrl": "https://spdx.org/licenses/Apache-2.0.json", + "referenceNumber": 80, + "name": "Apache License 2.0", + "licenseId": "Apache-2.0", "seeAlso": [ - "https://creativecommons.org/licenses/by-sa/3.0/de/legalcode" + "https://www.apache.org/licenses/LICENSE-2.0", + "https://opensource.org/licenses/Apache-2.0" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/SGI-B-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/SGI-B-2.0.json", - "referenceNumber": 82, + "referenceNumber": 81, "name": "SGI Free Software License B v2.0", "licenseId": "SGI-B-2.0", "seeAlso": [ @@ -1028,24 +1018,10 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/Apache-2.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Apache-2.0.json", - "referenceNumber": 83, - "name": "Apache License 2.0", - "licenseId": "Apache-2.0", - "seeAlso": [ - "https://www.apache.org/licenses/LICENSE-2.0", - "https://opensource.org/licenses/Apache-2.0" - ], - "isOsiApproved": true, - "isFsfLibre": true - }, - { "reference": "https://spdx.org/licenses/Hippocratic-2.1.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Hippocratic-2.1.json", - "referenceNumber": 84, + "referenceNumber": 82, "name": "Hippocratic License 2.1", "licenseId": "Hippocratic-2.1", "seeAlso": [ @@ -1055,10 +1031,22 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/CC-BY-SA-3.0-DE.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-3.0-DE.json", + "referenceNumber": 83, + "name": "Creative Commons Attribution Share Alike 3.0 Germany", + "licenseId": "CC-BY-SA-3.0-DE", + "seeAlso": [ + "https://creativecommons.org/licenses/by-sa/3.0/de/legalcode" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/CC-BY-NC-SA-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-SA-1.0.json", - "referenceNumber": 85, + "referenceNumber": 84, "name": "Creative Commons Attribution Non Commercial Share Alike 1.0 Generic", "licenseId": "CC-BY-NC-SA-1.0", "seeAlso": [ @@ -1067,6 +1055,20 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/LGPL-2.1-or-later.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/LGPL-2.1-or-later.json", + "referenceNumber": 85, + "name": "GNU Lesser General Public License v2.1 or later", + "licenseId": "LGPL-2.1-or-later", + "seeAlso": [ + "https://www.gnu.org/licenses/old-licenses/lgpl-2.1-standalone.html", + "https://opensource.org/licenses/LGPL-2.1" + ], + "isOsiApproved": true, + "isFsfLibre": true + }, + { "reference": "https://spdx.org/licenses/CC-BY-3.0-US.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-3.0-US.json", @@ -1103,18 +1105,16 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/LGPL-2.1-or-later.html", + "reference": "https://spdx.org/licenses/Eurosym.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/LGPL-2.1-or-later.json", + "detailsUrl": "https://spdx.org/licenses/Eurosym.json", "referenceNumber": 89, - "name": "GNU Lesser General Public License v2.1 or later", - "licenseId": "LGPL-2.1-or-later", + "name": "Eurosym License", + "licenseId": "Eurosym", "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/lgpl-2.1-standalone.html", - "https://opensource.org/licenses/LGPL-2.1" + "https://fedoraproject.org/wiki/Licensing/Eurosym" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/GFDL-1.1.html", @@ -1178,14 +1178,14 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/Unicode-DFS-2015.html", + "reference": "https://spdx.org/licenses/libtiff.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Unicode-DFS-2015.json", + "detailsUrl": "https://spdx.org/licenses/libtiff.json", "referenceNumber": 95, - "name": "Unicode License Agreement - Data Files and Software (2015)", - "licenseId": "Unicode-DFS-2015", + "name": "libtiff License", + "licenseId": "libtiff", "seeAlso": [ - "https://web.archive.org/web/20151224134844/http://unicode.org/copyright.html" + "https://fedoraproject.org/wiki/Licensing/libtiff" ], "isOsiApproved": false }, @@ -1253,18 +1253,16 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/MPL-1.1.html", + "reference": "https://spdx.org/licenses/Unicode-DFS-2015.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/MPL-1.1.json", + "detailsUrl": "https://spdx.org/licenses/Unicode-DFS-2015.json", "referenceNumber": 101, - "name": "Mozilla Public License 1.1", - "licenseId": "MPL-1.1", + "name": "Unicode License Agreement - Data Files and Software (2015)", + "licenseId": "Unicode-DFS-2015", "seeAlso": [ - "http://www.mozilla.org/MPL/MPL-1.1.html", - "https://opensource.org/licenses/MPL-1.1" + "https://web.archive.org/web/20151224134844/http://unicode.org/copyright.html" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/GFDL-1.2-only.html", @@ -1280,34 +1278,24 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CNRI-Jython.html", + "reference": "https://spdx.org/licenses/MPL-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CNRI-Jython.json", + "detailsUrl": "https://spdx.org/licenses/MPL-1.1.json", "referenceNumber": 103, - "name": "CNRI Jython License", - "licenseId": "CNRI-Jython", - "seeAlso": [ - "http://www.jython.org/license.html" - ], - "isOsiApproved": false - }, - { - "reference": "https://spdx.org/licenses/ZPL-1.1.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/ZPL-1.1.json", - "referenceNumber": 104, - "name": "Zope Public License 1.1", - "licenseId": "ZPL-1.1", + "name": "Mozilla Public License 1.1", + "licenseId": "MPL-1.1", "seeAlso": [ - "http://old.zope.org/Resources/License/ZPL-1.1" + "http://www.mozilla.org/MPL/MPL-1.1.html", + "https://opensource.org/licenses/MPL-1.1" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/GPL-2.0-only.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/GPL-2.0-only.json", - "referenceNumber": 105, + "referenceNumber": 104, "name": "GNU General Public License v2.0 only", "licenseId": "GPL-2.0-only", "seeAlso": [ @@ -1318,6 +1306,18 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/CC-BY-NC-4.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-4.0.json", + "referenceNumber": 105, + "name": "Creative Commons Attribution Non Commercial 4.0 International", + "licenseId": "CC-BY-NC-4.0", + "seeAlso": [ + "https://creativecommons.org/licenses/by-nc/4.0/legalcode" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/FreeImage.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/FreeImage.json", @@ -1342,41 +1342,40 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-NC-4.0.html", + "reference": "https://spdx.org/licenses/CNRI-Jython.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-4.0.json", + "detailsUrl": "https://spdx.org/licenses/CNRI-Jython.json", "referenceNumber": 108, - "name": "Creative Commons Attribution Non Commercial 4.0 International", - "licenseId": "CC-BY-NC-4.0", + "name": "CNRI Jython License", + "licenseId": "CNRI-Jython", "seeAlso": [ - "https://creativecommons.org/licenses/by-nc/4.0/legalcode" + "http://www.jython.org/license.html" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Rdisc.html", + "reference": "https://spdx.org/licenses/ZPL-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Rdisc.json", + "detailsUrl": "https://spdx.org/licenses/ZPL-1.1.json", "referenceNumber": 109, - "name": "Rdisc License", - "licenseId": "Rdisc", + "name": "Zope Public License 1.1", + "licenseId": "ZPL-1.1", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Rdisc_License" + "http://old.zope.org/Resources/License/ZPL-1.1" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/MPL-2.0-no-copyleft-exception.html", + "reference": "https://spdx.org/licenses/Afmparse.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/MPL-2.0-no-copyleft-exception.json", + "detailsUrl": "https://spdx.org/licenses/Afmparse.json", "referenceNumber": 110, - "name": "Mozilla Public License 2.0 (no copyleft exception)", - "licenseId": "MPL-2.0-no-copyleft-exception", + "name": "Afmparse License", + "licenseId": "Afmparse", "seeAlso": [ - "http://www.mozilla.org/MPL/2.0/", - "https://opensource.org/licenses/MPL-2.0" + "https://fedoraproject.org/wiki/Licensing/Afmparse" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/OLDAP-2.1.html", @@ -1391,14 +1390,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/libtiff.html", + "reference": "https://spdx.org/licenses/Rdisc.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/libtiff.json", + "detailsUrl": "https://spdx.org/licenses/Rdisc.json", "referenceNumber": 112, - "name": "libtiff License", - "licenseId": "libtiff", + "name": "Rdisc License", + "licenseId": "Rdisc", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/libtiff" + "https://fedoraproject.org/wiki/Licensing/Rdisc_License" ], "isOsiApproved": false }, @@ -1429,16 +1428,17 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/AAL.html", + "reference": "https://spdx.org/licenses/Sendmail.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/AAL.json", + "detailsUrl": "https://spdx.org/licenses/Sendmail.json", "referenceNumber": 115, - "name": "Attribution Assurance License", - "licenseId": "AAL", + "name": "Sendmail License", + "licenseId": "Sendmail", "seeAlso": [ - "https://opensource.org/licenses/attribution" + "http://www.sendmail.com/pdfs/open_source/sendmail_license.pdf", + "https://web.archive.org/web/20160322142305/https://www.sendmail.com/pdfs/open_source/sendmail_license.pdf" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/CC-BY-2.5.html", @@ -1453,39 +1453,39 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/APSL-1.2.html", + "reference": "https://spdx.org/licenses/AAL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/APSL-1.2.json", + "detailsUrl": "https://spdx.org/licenses/AAL.json", "referenceNumber": 117, - "name": "Apple Public Source License 1.2", - "licenseId": "APSL-1.2", + "name": "Attribution Assurance License", + "licenseId": "AAL", "seeAlso": [ - "http://www.samurajdata.se/opensource/mirror/licenses/apsl.php" + "https://opensource.org/licenses/attribution" ], "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/OFL-1.0-no-RFN.html", + "reference": "https://spdx.org/licenses/MPL-2.0-no-copyleft-exception.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OFL-1.0-no-RFN.json", + "detailsUrl": "https://spdx.org/licenses/MPL-2.0-no-copyleft-exception.json", "referenceNumber": 118, - "name": "SIL Open Font License 1.0 with no Reserved Font Name", - "licenseId": "OFL-1.0-no-RFN", + "name": "Mozilla Public License 2.0 (no copyleft exception)", + "licenseId": "MPL-2.0-no-copyleft-exception", "seeAlso": [ - "http://scripts.sil.org/cms/scripts/page.php?item_id\u003dOFL10_web" + "http://www.mozilla.org/MPL/2.0/", + "https://opensource.org/licenses/MPL-2.0" ], - "isOsiApproved": false + "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/Sendmail.html", + "reference": "https://spdx.org/licenses/CC-BY-NC-ND-2.5.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Sendmail.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-ND-2.5.json", "referenceNumber": 119, - "name": "Sendmail License", - "licenseId": "Sendmail", + "name": "Creative Commons Attribution Non Commercial No Derivatives 2.5 Generic", + "licenseId": "CC-BY-NC-ND-2.5", "seeAlso": [ - "http://www.sendmail.com/pdfs/open_source/sendmail_license.pdf", - "https://web.archive.org/web/20160322142305/https://www.sendmail.com/pdfs/open_source/sendmail_license.pdf" + "https://creativecommons.org/licenses/by-nc-nd/2.5/legalcode" ], "isOsiApproved": false }, @@ -1502,16 +1502,18 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-NC-ND-2.5.html", + "reference": "https://spdx.org/licenses/LPL-1.02.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-ND-2.5.json", + "detailsUrl": "https://spdx.org/licenses/LPL-1.02.json", "referenceNumber": 121, - "name": "Creative Commons Attribution Non Commercial No Derivatives 2.5 Generic", - "licenseId": "CC-BY-NC-ND-2.5", + "name": "Lucent Public License v1.02", + "licenseId": "LPL-1.02", "seeAlso": [ - "https://creativecommons.org/licenses/by-nc-nd/2.5/legalcode" + "http://plan9.bell-labs.com/plan9/license.html", + "https://opensource.org/licenses/LPL-1.02" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/ECL-1.0.html", @@ -1526,14 +1528,14 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/Afmparse.html", + "reference": "https://spdx.org/licenses/OFL-1.0-no-RFN.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Afmparse.json", + "detailsUrl": "https://spdx.org/licenses/OFL-1.0-no-RFN.json", "referenceNumber": 123, - "name": "Afmparse License", - "licenseId": "Afmparse", + "name": "SIL Open Font License 1.0 with no Reserved Font Name", + "licenseId": "OFL-1.0-no-RFN", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Afmparse" + "http://scripts.sil.org/cms/scripts/page.php?item_id\u003dOFL10_web" ], "isOsiApproved": false }, @@ -1588,41 +1590,40 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/GFDL-1.3-or-later.html", + "reference": "https://spdx.org/licenses/APSL-1.2.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-or-later.json", + "detailsUrl": "https://spdx.org/licenses/APSL-1.2.json", "referenceNumber": 128, - "name": "GNU Free Documentation License v1.3 or later", - "licenseId": "GFDL-1.3-or-later", + "name": "Apple Public Source License 1.2", + "licenseId": "APSL-1.2", "seeAlso": [ - "https://www.gnu.org/licenses/fdl-1.3.txt" + "http://www.samurajdata.se/opensource/mirror/licenses/apsl.php" ], - "isOsiApproved": false, - "isFsfLibre": true + "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/LPL-1.02.html", + "reference": "https://spdx.org/licenses/GFDL-1.2-no-invariants-only.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/LPL-1.02.json", + "detailsUrl": "https://spdx.org/licenses/GFDL-1.2-no-invariants-only.json", "referenceNumber": 129, - "name": "Lucent Public License v1.02", - "licenseId": "LPL-1.02", + "name": "GNU Free Documentation License v1.2 only - no invariants", + "licenseId": "GFDL-1.2-no-invariants-only", "seeAlso": [ - "http://plan9.bell-labs.com/plan9/license.html", - "https://opensource.org/licenses/LPL-1.02" + "https://www.gnu.org/licenses/old-licenses/fdl-1.2.txt" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/AFL-2.0.html", + "reference": "https://spdx.org/licenses/Artistic-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/AFL-2.0.json", + "detailsUrl": "https://spdx.org/licenses/Artistic-2.0.json", "referenceNumber": 130, - "name": "Academic Free License v2.0", - "licenseId": "AFL-2.0", + "name": "Artistic License 2.0", + "licenseId": "Artistic-2.0", "seeAlso": [ - "http://wayback.archive.org/web/20060924134533/http://www.opensource.org/licenses/afl-2.0.txt" + "http://www.perlfoundation.org/artistic_license_2_0", + "https://www.perlfoundation.org/artistic-license-20.html", + "https://opensource.org/licenses/artistic-license-2.0" ], "isOsiApproved": true, "isFsfLibre": true @@ -1642,30 +1643,27 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/Artistic-2.0.html", + "reference": "https://spdx.org/licenses/RSCPL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Artistic-2.0.json", + "detailsUrl": "https://spdx.org/licenses/RSCPL.json", "referenceNumber": 132, - "name": "Artistic License 2.0", - "licenseId": "Artistic-2.0", + "name": "Ricoh Source Code Public License", + "licenseId": "RSCPL", "seeAlso": [ - "http://www.perlfoundation.org/artistic_license_2_0", - "https://www.perlfoundation.org/artistic-license-20.html", - "https://opensource.org/licenses/artistic-license-2.0" + "http://wayback.archive.org/web/20060715140826/http://www.risource.org/RPL/RPL-1.0A.shtml", + "https://opensource.org/licenses/RSCPL" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/MS-RL.html", + "reference": "https://spdx.org/licenses/Sleepycat.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/MS-RL.json", + "detailsUrl": "https://spdx.org/licenses/Sleepycat.json", "referenceNumber": 133, - "name": "Microsoft Reciprocal License", - "licenseId": "MS-RL", + "name": "Sleepycat License", + "licenseId": "Sleepycat", "seeAlso": [ - "http://www.microsoft.com/opensource/licenses.mspx", - "https://opensource.org/licenses/MS-RL" + "https://opensource.org/licenses/Sleepycat" ], "isOsiApproved": true, "isFsfLibre": true @@ -1683,14 +1681,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GFDL-1.2-no-invariants-only.html", + "reference": "https://spdx.org/licenses/CDLA-Sharing-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.2-no-invariants-only.json", + "detailsUrl": "https://spdx.org/licenses/CDLA-Sharing-1.0.json", "referenceNumber": 135, - "name": "GNU Free Documentation License v1.2 only - no invariants", - "licenseId": "GFDL-1.2-no-invariants-only", + "name": "Community Data License Agreement Sharing 1.0", + "licenseId": "CDLA-Sharing-1.0", "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/fdl-1.2.txt" + "https://cdla.io/sharing-1-0" ], "isOsiApproved": false }, @@ -1709,14 +1707,14 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/HaskellReport.html", + "reference": "https://spdx.org/licenses/AGPL-1.0-only.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/HaskellReport.json", + "detailsUrl": "https://spdx.org/licenses/AGPL-1.0-only.json", "referenceNumber": 137, - "name": "Haskell Language Report License", - "licenseId": "HaskellReport", + "name": "Affero General Public License v1.0 only", + "licenseId": "AGPL-1.0-only", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Haskell_Language_Report_License" + "http://www.affero.org/oagpl.html" ], "isOsiApproved": false }, @@ -1733,17 +1731,17 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/RSCPL.html", + "reference": "https://spdx.org/licenses/AFL-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/RSCPL.json", + "detailsUrl": "https://spdx.org/licenses/AFL-2.0.json", "referenceNumber": 139, - "name": "Ricoh Source Code Public License", - "licenseId": "RSCPL", + "name": "Academic Free License v2.0", + "licenseId": "AFL-2.0", "seeAlso": [ - "http://wayback.archive.org/web/20060715140826/http://www.risource.org/RPL/RPL-1.0A.shtml", - "https://opensource.org/licenses/RSCPL" + "http://wayback.archive.org/web/20060924134533/http://www.opensource.org/licenses/afl-2.0.txt" ], - "isOsiApproved": true + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/Intel.html", @@ -1810,28 +1808,28 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/HTMLTIDY.html", + "reference": "https://spdx.org/licenses/Naumen.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/HTMLTIDY.json", + "detailsUrl": "https://spdx.org/licenses/Naumen.json", "referenceNumber": 145, - "name": "HTML Tidy License", - "licenseId": "HTMLTIDY", + "name": "Naumen Public License", + "licenseId": "Naumen", "seeAlso": [ - "https://github.com/htacg/tidy-html5/blob/next/README/LICENSE.md" + "https://opensource.org/licenses/Naumen" ], - "isOsiApproved": false + "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/Naumen.html", + "reference": "https://spdx.org/licenses/HTMLTIDY.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Naumen.json", + "detailsUrl": "https://spdx.org/licenses/HTMLTIDY.json", "referenceNumber": 146, - "name": "Naumen Public License", - "licenseId": "Naumen", + "name": "HTML Tidy License", + "licenseId": "HTMLTIDY", "seeAlso": [ - "https://opensource.org/licenses/Naumen" + "https://github.com/htacg/tidy-html5/blob/next/README/LICENSE.md" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/OLDAP-2.8.html", @@ -1859,16 +1857,16 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/LGPL-2.0-or-later.html", + "reference": "https://spdx.org/licenses/CC-BY-ND-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/LGPL-2.0-or-later.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-2.0.json", "referenceNumber": 149, - "name": "GNU Library General Public License v2 or later", - "licenseId": "LGPL-2.0-or-later", + "name": "Creative Commons Attribution No Derivatives 2.0 Generic", + "licenseId": "CC-BY-ND-2.0", "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/lgpl-2.0-standalone.html" + "https://creativecommons.org/licenses/by-nd/2.0/legalcode" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/OGTSL.html", @@ -1884,16 +1882,16 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/CC-BY-ND-2.0.html", + "reference": "https://spdx.org/licenses/LGPL-2.0-or-later.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-2.0.json", + "detailsUrl": "https://spdx.org/licenses/LGPL-2.0-or-later.json", "referenceNumber": 151, - "name": "Creative Commons Attribution No Derivatives 2.0 Generic", - "licenseId": "CC-BY-ND-2.0", + "name": "GNU Library General Public License v2 or later", + "licenseId": "LGPL-2.0-or-later", "seeAlso": [ - "https://creativecommons.org/licenses/by-nd/2.0/legalcode" + "https://www.gnu.org/licenses/old-licenses/lgpl-2.0-standalone.html" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/Parity-7.0.0.html", @@ -1908,26 +1906,26 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-NC-SA-4.0.html", + "reference": "https://spdx.org/licenses/CC-BY-ND-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-SA-4.0.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-1.0.json", "referenceNumber": 153, - "name": "Creative Commons Attribution Non Commercial Share Alike 4.0 International", - "licenseId": "CC-BY-NC-SA-4.0", + "name": "Creative Commons Attribution No Derivatives 1.0 Generic", + "licenseId": "CC-BY-ND-1.0", "seeAlso": [ - "https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode" + "https://creativecommons.org/licenses/by-nd/1.0/legalcode" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-ND-1.0.html", + "reference": "https://spdx.org/licenses/dvipdfm.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-1.0.json", + "detailsUrl": "https://spdx.org/licenses/dvipdfm.json", "referenceNumber": 154, - "name": "Creative Commons Attribution No Derivatives 1.0 Generic", - "licenseId": "CC-BY-ND-1.0", + "name": "dvipdfm License", + "licenseId": "dvipdfm", "seeAlso": [ - "https://creativecommons.org/licenses/by-nd/1.0/legalcode" + "https://fedoraproject.org/wiki/Licensing/dvipdfm" ], "isOsiApproved": false }, @@ -1944,64 +1942,64 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/dvipdfm.html", + "reference": "https://spdx.org/licenses/BSD-4-Clause-UC.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/dvipdfm.json", + "detailsUrl": "https://spdx.org/licenses/BSD-4-Clause-UC.json", "referenceNumber": 156, - "name": "dvipdfm License", - "licenseId": "dvipdfm", + "name": "BSD-4-Clause (University of California-Specific)", + "licenseId": "BSD-4-Clause-UC", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/dvipdfm" + "http://www.freebsd.org/copyright/license.html" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/LGPL-3.0.html", - "isDeprecatedLicenseId": true, - "detailsUrl": "https://spdx.org/licenses/LGPL-3.0.json", + "reference": "https://spdx.org/licenses/NLOD-1.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/NLOD-1.0.json", "referenceNumber": 157, - "name": "GNU Lesser General Public License v3.0 only", - "licenseId": "LGPL-3.0", + "name": "Norwegian Licence for Open Government Data (NLOD) 1.0", + "licenseId": "NLOD-1.0", "seeAlso": [ - "https://www.gnu.org/licenses/lgpl-3.0-standalone.html", - "https://opensource.org/licenses/LGPL-3.0" + "http://data.norge.no/nlod/en/1.0" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OLDAP-2.5.html", + "reference": "https://spdx.org/licenses/MS-RL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OLDAP-2.5.json", + "detailsUrl": "https://spdx.org/licenses/MS-RL.json", "referenceNumber": 158, - "name": "Open LDAP Public License v2.5", - "licenseId": "OLDAP-2.5", + "name": "Microsoft Reciprocal License", + "licenseId": "MS-RL", "seeAlso": [ - "http://www.openldap.org/devel/gitweb.cgi?p\u003dopenldap.git;a\u003dblob;f\u003dLICENSE;hb\u003d6852b9d90022e8593c98205413380536b1b5a7cf" + "http://www.microsoft.com/opensource/licenses.mspx", + "https://opensource.org/licenses/MS-RL" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/NLOD-1.0.html", + "reference": "https://spdx.org/licenses/CC-BY-NC-SA-4.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NLOD-1.0.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-SA-4.0.json", "referenceNumber": 159, - "name": "Norwegian Licence for Open Government Data (NLOD) 1.0", - "licenseId": "NLOD-1.0", + "name": "Creative Commons Attribution Non Commercial Share Alike 4.0 International", + "licenseId": "CC-BY-NC-SA-4.0", "seeAlso": [ - "http://data.norge.no/nlod/en/1.0" + "https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/SMPPL.html", + "reference": "https://spdx.org/licenses/HaskellReport.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/SMPPL.json", + "detailsUrl": "https://spdx.org/licenses/HaskellReport.json", "referenceNumber": 160, - "name": "Secure Messaging Protocol Public License", - "licenseId": "SMPPL", + "name": "Haskell Language Report License", + "licenseId": "HaskellReport", "seeAlso": [ - "https://github.com/dcblake/SMP/blob/master/Documentation/License.txt" + "https://fedoraproject.org/wiki/Licensing/Haskell_Language_Report_License" ], "isOsiApproved": false }, @@ -2042,28 +2040,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/LGPL-2.1-only.html", + "reference": "https://spdx.org/licenses/SMPPL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/LGPL-2.1-only.json", + "detailsUrl": "https://spdx.org/licenses/SMPPL.json", "referenceNumber": 164, - "name": "GNU Lesser General Public License v2.1 only", - "licenseId": "LGPL-2.1-only", - "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/lgpl-2.1-standalone.html", - "https://opensource.org/licenses/LGPL-2.1" - ], - "isOsiApproved": true, - "isFsfLibre": true - }, - { - "reference": "https://spdx.org/licenses/GL2PS.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GL2PS.json", - "referenceNumber": 165, - "name": "GL2PS License", - "licenseId": "GL2PS", + "name": "Secure Messaging Protocol Public License", + "licenseId": "SMPPL", "seeAlso": [ - "http://www.geuz.org/gl2ps/COPYING.GL2PS" + "https://github.com/dcblake/SMP/blob/master/Documentation/License.txt" ], "isOsiApproved": false }, @@ -2071,7 +2055,7 @@ "reference": "https://spdx.org/licenses/PHP-3.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/PHP-3.0.json", - "referenceNumber": 166, + "referenceNumber": 165, "name": "PHP License v3.0", "licenseId": "PHP-3.0", "seeAlso": [ @@ -2081,15 +2065,26 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/NIST-PD-fallback.html", + "reference": "https://spdx.org/licenses/GL2PS.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NIST-PD-fallback.json", + "detailsUrl": "https://spdx.org/licenses/GL2PS.json", + "referenceNumber": 166, + "name": "GL2PS License", + "licenseId": "GL2PS", + "seeAlso": [ + "http://www.geuz.org/gl2ps/COPYING.GL2PS" + ], + "isOsiApproved": false + }, + { + "reference": "https://spdx.org/licenses/CrystalStacker.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/CrystalStacker.json", "referenceNumber": 167, - "name": "NIST Public Domain Notice with license fallback", - "licenseId": "NIST-PD-fallback", + "name": "CrystalStacker License", + "licenseId": "CrystalStacker", "seeAlso": [ - "https://github.com/usnistgov/jsip/blob/59700e6926cbe96c5cdae897d9a7d2656b42abe3/LICENSE", - "https://github.com/usnistgov/fipy/blob/86aaa5c2ba2c6f1be19593c5986071cf6568cc34/LICENSE.rst" + "https://fedoraproject.org/wiki/Licensing:CrystalStacker?rd\u003dLicensing/CrystalStacker" ], "isOsiApproved": false }, @@ -2106,17 +2101,17 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CPL-1.0.html", + "reference": "https://spdx.org/licenses/NIST-PD-fallback.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CPL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/NIST-PD-fallback.json", "referenceNumber": 169, - "name": "Common Public License 1.0", - "licenseId": "CPL-1.0", + "name": "NIST Public Domain Notice with license fallback", + "licenseId": "NIST-PD-fallback", "seeAlso": [ - "https://opensource.org/licenses/CPL-1.0" + "https://github.com/usnistgov/jsip/blob/59700e6926cbe96c5cdae897d9a7d2656b42abe3/LICENSE", + "https://github.com/usnistgov/fipy/blob/86aaa5c2ba2c6f1be19593c5986071cf6568cc34/LICENSE.rst" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/OGL-UK-1.0.html", @@ -2131,29 +2126,31 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CrystalStacker.html", + "reference": "https://spdx.org/licenses/CPL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CrystalStacker.json", + "detailsUrl": "https://spdx.org/licenses/CPL-1.0.json", "referenceNumber": 171, - "name": "CrystalStacker License", - "licenseId": "CrystalStacker", + "name": "Common Public License 1.0", + "licenseId": "CPL-1.0", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing:CrystalStacker?rd\u003dLicensing/CrystalStacker" + "https://opensource.org/licenses/CPL-1.0" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/TCL.html", + "reference": "https://spdx.org/licenses/LGPL-2.1-only.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/TCL.json", + "detailsUrl": "https://spdx.org/licenses/LGPL-2.1-only.json", "referenceNumber": 172, - "name": "TCL/TK License", - "licenseId": "TCL", + "name": "GNU Lesser General Public License v2.1 only", + "licenseId": "LGPL-2.1-only", "seeAlso": [ - "http://www.tcl.tk/software/tcltk/license.html", - "https://fedoraproject.org/wiki/Licensing/TCL" + "https://www.gnu.org/licenses/old-licenses/lgpl-2.1-standalone.html", + "https://opensource.org/licenses/LGPL-2.1" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/ZPL-2.0.html", @@ -2208,22 +2205,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/LGPL-2.0.html", - "isDeprecatedLicenseId": true, - "detailsUrl": "https://spdx.org/licenses/LGPL-2.0.json", - "referenceNumber": 177, - "name": "GNU Library General Public License v2 only", - "licenseId": "LGPL-2.0", - "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/lgpl-2.0-standalone.html" - ], - "isOsiApproved": true - }, - { "reference": "https://spdx.org/licenses/EFL-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/EFL-2.0.json", - "referenceNumber": 178, + "referenceNumber": 177, "name": "Eiffel Forum License v2.0", "licenseId": "EFL-2.0", "seeAlso": [ @@ -2234,6 +2219,18 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/Spencer-99.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/Spencer-99.json", + "referenceNumber": 178, + "name": "Spencer License 99", + "licenseId": "Spencer-99", + "seeAlso": [ + "http://www.opensource.apple.com/source/tcl/tcl-5/tcl/generic/regfronts.c" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/CAL-1.0-Combined-Work-Exception.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CAL-1.0-Combined-Work-Exception.json", @@ -2259,14 +2256,15 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/psutils.html", + "reference": "https://spdx.org/licenses/TCL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/psutils.json", + "detailsUrl": "https://spdx.org/licenses/TCL.json", "referenceNumber": 181, - "name": "psutils License", - "licenseId": "psutils", + "name": "TCL/TK License", + "licenseId": "TCL", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/psutils" + "http://www.tcl.tk/software/tcltk/license.html", + "https://fedoraproject.org/wiki/Licensing/TCL" ], "isOsiApproved": false }, @@ -2295,62 +2293,62 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CERN-OHL-W-2.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CERN-OHL-W-2.0.json", + "reference": "https://spdx.org/licenses/LGPL-2.0.html", + "isDeprecatedLicenseId": true, + "detailsUrl": "https://spdx.org/licenses/LGPL-2.0.json", "referenceNumber": 184, - "name": "CERN Open Hardware Licence Version 2 - Weakly Reciprocal", - "licenseId": "CERN-OHL-W-2.0", + "name": "GNU Library General Public License v2 only", + "licenseId": "LGPL-2.0", "seeAlso": [ - "https://www.ohwr.org/project/cernohl/wikis/Documents/CERN-OHL-version-2" + "https://www.gnu.org/licenses/old-licenses/lgpl-2.0-standalone.html" ], "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/NRL.html", + "reference": "https://spdx.org/licenses/CERN-OHL-W-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NRL.json", + "detailsUrl": "https://spdx.org/licenses/CERN-OHL-W-2.0.json", "referenceNumber": 185, - "name": "NRL License", - "licenseId": "NRL", + "name": "CERN Open Hardware Licence Version 2 - Weakly Reciprocal", + "licenseId": "CERN-OHL-W-2.0", "seeAlso": [ - "http://web.mit.edu/network/isakmp/nrllicense.html" + "https://www.ohwr.org/project/cernohl/wikis/Documents/CERN-OHL-version-2" ], - "isOsiApproved": false + "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/CECILL-2.1.html", + "reference": "https://spdx.org/licenses/Glide.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CECILL-2.1.json", + "detailsUrl": "https://spdx.org/licenses/Glide.json", "referenceNumber": 186, - "name": "CeCILL Free Software License Agreement v2.1", - "licenseId": "CECILL-2.1", + "name": "3dfx Glide License", + "licenseId": "Glide", "seeAlso": [ - "http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.html" + "http://www.users.on.net/~triforce/glidexp/COPYING.txt" ], - "isOsiApproved": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Glide.html", + "reference": "https://spdx.org/licenses/mpich2.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Glide.json", + "detailsUrl": "https://spdx.org/licenses/mpich2.json", "referenceNumber": 187, - "name": "3dfx Glide License", - "licenseId": "Glide", + "name": "mpich2 License", + "licenseId": "mpich2", "seeAlso": [ - "http://www.users.on.net/~triforce/glidexp/COPYING.txt" + "https://fedoraproject.org/wiki/Licensing/MIT" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/SCEA.html", + "reference": "https://spdx.org/licenses/psutils.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/SCEA.json", + "detailsUrl": "https://spdx.org/licenses/psutils.json", "referenceNumber": 188, - "name": "SCEA Shared Source License", - "licenseId": "SCEA", + "name": "psutils License", + "licenseId": "psutils", "seeAlso": [ - "http://research.scea.com/scea_shared_source_license.html" + "https://fedoraproject.org/wiki/Licensing/psutils" ], "isOsiApproved": false }, @@ -2394,52 +2392,52 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/SWL.html", + "reference": "https://spdx.org/licenses/FreeBSD-DOC.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/SWL.json", + "detailsUrl": "https://spdx.org/licenses/FreeBSD-DOC.json", "referenceNumber": 192, - "name": "Scheme Widget Library (SWL) Software License Agreement", - "licenseId": "SWL", + "name": "FreeBSD Documentation License", + "licenseId": "FreeBSD-DOC", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/SWL" + "https://www.freebsd.org/copyright/freebsd-doc-license/" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/mpich2.html", + "reference": "https://spdx.org/licenses/SCEA.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/mpich2.json", + "detailsUrl": "https://spdx.org/licenses/SCEA.json", "referenceNumber": 193, - "name": "mpich2 License", - "licenseId": "mpich2", + "name": "SCEA Shared Source License", + "licenseId": "SCEA", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/MIT" + "http://research.scea.com/scea_shared_source_license.html" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CERN-OHL-1.1.html", + "reference": "https://spdx.org/licenses/Latex2e.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CERN-OHL-1.1.json", + "detailsUrl": "https://spdx.org/licenses/Latex2e.json", "referenceNumber": 194, - "name": "CERN Open Hardware Licence v1.1", - "licenseId": "CERN-OHL-1.1", + "name": "Latex2e License", + "licenseId": "Latex2e", "seeAlso": [ - "https://www.ohwr.org/project/licenses/wikis/cern-ohl-v1.1" + "https://fedoraproject.org/wiki/Licensing/Latex2e" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Latex2e.html", + "reference": "https://spdx.org/licenses/Artistic-1.0-cl8.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Latex2e.json", + "detailsUrl": "https://spdx.org/licenses/Artistic-1.0-cl8.json", "referenceNumber": 195, - "name": "Latex2e License", - "licenseId": "Latex2e", + "name": "Artistic License 1.0 w/clause 8", + "licenseId": "Artistic-1.0-cl8", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Latex2e" + "https://opensource.org/licenses/Artistic-1.0" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/SGI-B-1.1.html", @@ -2454,28 +2452,28 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/FreeBSD-DOC.html", + "reference": "https://spdx.org/licenses/NRL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/FreeBSD-DOC.json", + "detailsUrl": "https://spdx.org/licenses/NRL.json", "referenceNumber": 197, - "name": "FreeBSD Documentation License", - "licenseId": "FreeBSD-DOC", + "name": "NRL License", + "licenseId": "NRL", "seeAlso": [ - "https://www.freebsd.org/copyright/freebsd-doc-license/" + "http://web.mit.edu/network/isakmp/nrllicense.html" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Artistic-1.0-cl8.html", + "reference": "https://spdx.org/licenses/SWL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Artistic-1.0-cl8.json", + "detailsUrl": "https://spdx.org/licenses/SWL.json", "referenceNumber": 198, - "name": "Artistic License 1.0 w/clause 8", - "licenseId": "Artistic-1.0-cl8", + "name": "Scheme Widget Library (SWL) Software License Agreement", + "licenseId": "SWL", "seeAlso": [ - "https://opensource.org/licenses/Artistic-1.0" + "https://fedoraproject.org/wiki/Licensing/SWL" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/Zed.html", @@ -2490,26 +2488,26 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/RHeCos-1.1.html", + "reference": "https://spdx.org/licenses/CERN-OHL-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/RHeCos-1.1.json", + "detailsUrl": "https://spdx.org/licenses/CERN-OHL-1.1.json", "referenceNumber": 200, - "name": "Red Hat eCos Public License v1.1", - "licenseId": "RHeCos-1.1", + "name": "CERN Open Hardware Licence v1.1", + "licenseId": "CERN-OHL-1.1", "seeAlso": [ - "http://ecos.sourceware.org/old-license.html" + "https://www.ohwr.org/project/licenses/wikis/cern-ohl-v1.1" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/SSPL-1.0.html", + "reference": "https://spdx.org/licenses/RHeCos-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/SSPL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/RHeCos-1.1.json", "referenceNumber": 201, - "name": "Server Side Public License, v 1", - "licenseId": "SSPL-1.0", + "name": "Red Hat eCos Public License v1.1", + "licenseId": "RHeCos-1.1", "seeAlso": [ - "https://www.mongodb.com/licensing/server-side-public-license" + "http://ecos.sourceware.org/old-license.html" ], "isOsiApproved": false }, @@ -2526,10 +2524,22 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/SSPL-1.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/SSPL-1.0.json", + "referenceNumber": 203, + "name": "Server Side Public License, v 1", + "licenseId": "SSPL-1.0", + "seeAlso": [ + "https://www.mongodb.com/licensing/server-side-public-license" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/GPL-2.0+.html", "isDeprecatedLicenseId": true, "detailsUrl": "https://spdx.org/licenses/GPL-2.0+.json", - "referenceNumber": 203, + "referenceNumber": 204, "name": "GNU General Public License v2.0 or later", "licenseId": "GPL-2.0+", "seeAlso": [ @@ -2542,7 +2552,7 @@ "reference": "https://spdx.org/licenses/OLDAP-1.4.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/OLDAP-1.4.json", - "referenceNumber": 204, + "referenceNumber": 205, "name": "Open LDAP Public License v1.4", "licenseId": "OLDAP-1.4", "seeAlso": [ @@ -2554,7 +2564,7 @@ "reference": "https://spdx.org/licenses/libpng-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/libpng-2.0.json", - "referenceNumber": 205, + "referenceNumber": 206, "name": "PNG Reference Library version 2", "licenseId": "libpng-2.0", "seeAlso": [ @@ -2566,7 +2576,7 @@ "reference": "https://spdx.org/licenses/CNRI-Python-GPL-Compatible.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CNRI-Python-GPL-Compatible.json", - "referenceNumber": 206, + "referenceNumber": 207, "name": "CNRI Python Open Source GPL Compatible License Agreement", "licenseId": "CNRI-Python-GPL-Compatible", "seeAlso": [ @@ -2575,18 +2585,6 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-2.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-2.0.json", - "referenceNumber": 207, - "name": "Creative Commons Attribution 2.0 Generic", - "licenseId": "CC-BY-2.0", - "seeAlso": [ - "https://creativecommons.org/licenses/by/2.0/legalcode" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/Aladdin.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Aladdin.json", @@ -2599,17 +2597,16 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Sleepycat.html", + "reference": "https://spdx.org/licenses/CECILL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Sleepycat.json", + "detailsUrl": "https://spdx.org/licenses/CECILL-1.0.json", "referenceNumber": 209, - "name": "Sleepycat License", - "licenseId": "Sleepycat", + "name": "CeCILL Free Software License Agreement v1.0", + "licenseId": "CECILL-1.0", "seeAlso": [ - "https://opensource.org/licenses/Sleepycat" + "http://www.cecill.info/licences/Licence_CeCILL_V1-fr.html" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/Ruby.html", @@ -2625,10 +2622,23 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/NPL-1.1.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/NPL-1.1.json", + "referenceNumber": 211, + "name": "Netscape Public License v1.1", + "licenseId": "NPL-1.1", + "seeAlso": [ + "http://www.mozilla.org/MPL/NPL/1.1/" + ], + "isOsiApproved": false, + "isFsfLibre": true + }, + { "reference": "https://spdx.org/licenses/ImageMagick.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/ImageMagick.json", - "referenceNumber": 211, + "referenceNumber": 212, "name": "ImageMagick License", "licenseId": "ImageMagick", "seeAlso": [ @@ -2637,14 +2647,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CECILL-1.0.html", + "reference": "https://spdx.org/licenses/Cube.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CECILL-1.0.json", - "referenceNumber": 212, - "name": "CeCILL Free Software License Agreement v1.0", - "licenseId": "CECILL-1.0", + "detailsUrl": "https://spdx.org/licenses/Cube.json", + "referenceNumber": 213, + "name": "Cube License", + "licenseId": "Cube", "seeAlso": [ - "http://www.cecill.info/licences/Licence_CeCILL_V1-fr.html" + "https://fedoraproject.org/wiki/Licensing/Cube" ], "isOsiApproved": false }, @@ -2652,7 +2662,7 @@ "reference": "https://spdx.org/licenses/GFDL-1.1-only.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/GFDL-1.1-only.json", - "referenceNumber": 213, + "referenceNumber": 214, "name": "GNU Free Documentation License v1.1 only", "licenseId": "GFDL-1.1-only", "seeAlso": [ @@ -2662,41 +2672,30 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/NPL-1.1.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NPL-1.1.json", - "referenceNumber": 214, - "name": "Netscape Public License v1.1", - "licenseId": "NPL-1.1", - "seeAlso": [ - "http://www.mozilla.org/MPL/NPL/1.1/" - ], - "isOsiApproved": false, - "isFsfLibre": true - }, - { - "reference": "https://spdx.org/licenses/TU-Berlin-2.0.html", + "reference": "https://spdx.org/licenses/CC-BY-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/TU-Berlin-2.0.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-2.0.json", "referenceNumber": 215, - "name": "Technische Universitaet Berlin License 2.0", - "licenseId": "TU-Berlin-2.0", + "name": "Creative Commons Attribution 2.0 Generic", + "licenseId": "CC-BY-2.0", "seeAlso": [ - "https://github.com/CorsixTH/deps/blob/fd339a9f526d1d9c9f01ccf39e438a015da50035/licences/libgsm.txt" + "https://creativecommons.org/licenses/by/2.0/legalcode" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Cube.html", + "reference": "https://spdx.org/licenses/AFL-1.2.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Cube.json", + "detailsUrl": "https://spdx.org/licenses/AFL-1.2.json", "referenceNumber": 216, - "name": "Cube License", - "licenseId": "Cube", + "name": "Academic Free License v1.2", + "licenseId": "AFL-1.2", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Cube" + "http://opensource.linux-mirror.org/licenses/afl-1.2.txt", + "http://wayback.archive.org/web/20021204204652/http://www.opensource.org/licenses/academic.php" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/CC-BY-SA-2.0.html", @@ -2711,22 +2710,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/MIT-advertising.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/MIT-advertising.json", - "referenceNumber": 218, - "name": "Enlightenment License (e16)", - "licenseId": "MIT-advertising", - "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/MIT_With_Advertising" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/CECILL-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CECILL-2.0.json", - "referenceNumber": 219, + "referenceNumber": 218, "name": "CeCILL Free Software License Agreement v2.0", "licenseId": "CECILL-2.0", "seeAlso": [ @@ -2736,6 +2723,18 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/MIT-advertising.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/MIT-advertising.json", + "referenceNumber": 219, + "name": "Enlightenment License (e16)", + "licenseId": "MIT-advertising", + "seeAlso": [ + "https://fedoraproject.org/wiki/Licensing/MIT_With_Advertising" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/CC-BY-NC-SA-2.5.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-SA-2.5.json", @@ -2760,15 +2759,15 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/AFL-1.2.html", + "reference": "https://spdx.org/licenses/OSL-3.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/AFL-1.2.json", + "detailsUrl": "https://spdx.org/licenses/OSL-3.0.json", "referenceNumber": 222, - "name": "Academic Free License v1.2", - "licenseId": "AFL-1.2", + "name": "Open Software License 3.0", + "licenseId": "OSL-3.0", "seeAlso": [ - "http://opensource.linux-mirror.org/licenses/afl-1.2.txt", - "http://wayback.archive.org/web/20021204204652/http://www.opensource.org/licenses/academic.php" + "https://web.archive.org/web/20120101081418/http://rosenlaw.com:80/OSL3.0.htm", + "https://opensource.org/licenses/OSL-3.0" ], "isOsiApproved": true, "isFsfLibre": true @@ -2811,24 +2810,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OSL-3.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OSL-3.0.json", - "referenceNumber": 226, - "name": "Open Software License 3.0", - "licenseId": "OSL-3.0", - "seeAlso": [ - "https://web.archive.org/web/20120101081418/http://rosenlaw.com:80/OSL3.0.htm", - "https://opensource.org/licenses/OSL-3.0" - ], - "isOsiApproved": true, - "isFsfLibre": true - }, - { "reference": "https://spdx.org/licenses/EUDatagrid.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/EUDatagrid.json", - "referenceNumber": 227, + "referenceNumber": 226, "name": "EU DataGrid Software License", "licenseId": "EUDatagrid", "seeAlso": [ @@ -2842,7 +2827,7 @@ "reference": "https://spdx.org/licenses/MTLL.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/MTLL.json", - "referenceNumber": 228, + "referenceNumber": 227, "name": "Matrix Template Library License", "licenseId": "MTLL", "seeAlso": [ @@ -2854,7 +2839,7 @@ "reference": "https://spdx.org/licenses/GFDL-1.2-invariants-only.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/GFDL-1.2-invariants-only.json", - "referenceNumber": 229, + "referenceNumber": 228, "name": "GNU Free Documentation License v1.2 only - invariants", "licenseId": "GFDL-1.2-invariants-only", "seeAlso": [ @@ -2863,6 +2848,18 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/GFDL-1.3-no-invariants-or-later.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-no-invariants-or-later.json", + "referenceNumber": 229, + "name": "GNU Free Documentation License v1.3 or later - no invariants", + "licenseId": "GFDL-1.3-no-invariants-or-later", + "seeAlso": [ + "https://www.gnu.org/licenses/fdl-1.3.txt" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/curl.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/curl.json", @@ -2875,14 +2872,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-3.0.html", + "reference": "https://spdx.org/licenses/LAL-1.3.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-3.0.json", + "detailsUrl": "https://spdx.org/licenses/LAL-1.3.json", "referenceNumber": 231, - "name": "Creative Commons Attribution 3.0 Unported", - "licenseId": "CC-BY-3.0", + "name": "Licence Art Libre 1.3", + "licenseId": "LAL-1.3", "seeAlso": [ - "https://creativecommons.org/licenses/by/3.0/legalcode" + "https://artlibre.org/" ], "isOsiApproved": false }, @@ -2899,26 +2896,26 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/LAL-1.3.html", + "reference": "https://spdx.org/licenses/CERN-OHL-1.2.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/LAL-1.3.json", + "detailsUrl": "https://spdx.org/licenses/CERN-OHL-1.2.json", "referenceNumber": 233, - "name": "Licence Art Libre 1.3", - "licenseId": "LAL-1.3", + "name": "CERN Open Hardware Licence v1.2", + "licenseId": "CERN-OHL-1.2", "seeAlso": [ - "https://artlibre.org/" + "https://www.ohwr.org/project/licenses/wikis/cern-ohl-v1.2" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CERN-OHL-1.2.html", + "reference": "https://spdx.org/licenses/TOSL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CERN-OHL-1.2.json", + "detailsUrl": "https://spdx.org/licenses/TOSL.json", "referenceNumber": 234, - "name": "CERN Open Hardware Licence v1.2", - "licenseId": "CERN-OHL-1.2", + "name": "Trusster Open Source License", + "licenseId": "TOSL", "seeAlso": [ - "https://www.ohwr.org/project/licenses/wikis/cern-ohl-v1.2" + "https://fedoraproject.org/wiki/Licensing/TOSL" ], "isOsiApproved": false }, @@ -2935,38 +2932,38 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/TOSL.html", + "reference": "https://spdx.org/licenses/CC-BY-3.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/TOSL.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-3.0.json", "referenceNumber": 236, - "name": "Trusster Open Source License", - "licenseId": "TOSL", + "name": "Creative Commons Attribution 3.0 Unported", + "licenseId": "CC-BY-3.0", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/TOSL" + "https://creativecommons.org/licenses/by/3.0/legalcode" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GFDL-1.3-no-invariants-only.html", + "reference": "https://spdx.org/licenses/Qhull.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-no-invariants-only.json", + "detailsUrl": "https://spdx.org/licenses/Qhull.json", "referenceNumber": 237, - "name": "GNU Free Documentation License v1.3 only - no invariants", - "licenseId": "GFDL-1.3-no-invariants-only", + "name": "Qhull License", + "licenseId": "Qhull", "seeAlso": [ - "https://www.gnu.org/licenses/fdl-1.3.txt" + "https://fedoraproject.org/wiki/Licensing/Qhull" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Qhull.html", + "reference": "https://spdx.org/licenses/GFDL-1.3-no-invariants-only.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Qhull.json", + "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-no-invariants-only.json", "referenceNumber": 238, - "name": "Qhull License", - "licenseId": "Qhull", + "name": "GNU Free Documentation License v1.3 only - no invariants", + "licenseId": "GFDL-1.3-no-invariants-only", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Qhull" + "https://www.gnu.org/licenses/fdl-1.3.txt" ], "isOsiApproved": false }, @@ -3073,28 +3070,29 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CDLA-Sharing-1.0.html", + "reference": "https://spdx.org/licenses/Xerox.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CDLA-Sharing-1.0.json", + "detailsUrl": "https://spdx.org/licenses/Xerox.json", "referenceNumber": 247, - "name": "Community Data License Agreement Sharing 1.0", - "licenseId": "CDLA-Sharing-1.0", + "name": "Xerox License", + "licenseId": "Xerox", "seeAlso": [ - "https://cdla.io/sharing-1-0" + "https://fedoraproject.org/wiki/Licensing/Xerox" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/AGPL-1.0-only.html", + "reference": "https://spdx.org/licenses/CDDL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/AGPL-1.0-only.json", + "detailsUrl": "https://spdx.org/licenses/CDDL-1.0.json", "referenceNumber": 248, - "name": "Affero General Public License v1.0 only", - "licenseId": "AGPL-1.0-only", + "name": "Common Development and Distribution License 1.0", + "licenseId": "CDDL-1.0", "seeAlso": [ - "http://www.affero.org/oagpl.html" + "https://opensource.org/licenses/cddl1" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/GFDL-1.3-invariants-only.html", @@ -3109,14 +3107,15 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/BSD-4-Clause-UC.html", + "reference": "https://spdx.org/licenses/etalab-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BSD-4-Clause-UC.json", + "detailsUrl": "https://spdx.org/licenses/etalab-2.0.json", "referenceNumber": 250, - "name": "BSD-4-Clause (University of California-Specific)", - "licenseId": "BSD-4-Clause-UC", + "name": "Etalab Open License 2.0", + "licenseId": "etalab-2.0", "seeAlso": [ - "http://www.freebsd.org/copyright/license.html" + "https://github.com/DISIC/politique-de-contribution-open-source/blob/master/LICENSE.pdf", + "https://raw.githubusercontent.com/DISIC/politique-de-contribution-open-source/master/LICENSE" ], "isOsiApproved": false }, @@ -3146,14 +3145,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Spencer-99.html", + "reference": "https://spdx.org/licenses/LPPL-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Spencer-99.json", + "detailsUrl": "https://spdx.org/licenses/LPPL-1.1.json", "referenceNumber": 253, - "name": "Spencer License 99", - "licenseId": "Spencer-99", + "name": "LaTeX Project Public License v1.1", + "licenseId": "LPPL-1.1", "seeAlso": [ - "http://www.opensource.apple.com/source/tcl/tcl-5/tcl/generic/regfronts.c" + "http://www.latex-project.org/lppl/lppl-1-1.txt" ], "isOsiApproved": false }, @@ -3170,53 +3169,39 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/GFDL-1.3-no-invariants-or-later.html", + "reference": "https://spdx.org/licenses/TU-Berlin-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-no-invariants-or-later.json", + "detailsUrl": "https://spdx.org/licenses/TU-Berlin-2.0.json", "referenceNumber": 255, - "name": "GNU Free Documentation License v1.3 or later - no invariants", - "licenseId": "GFDL-1.3-no-invariants-or-later", + "name": "Technische Universitaet Berlin License 2.0", + "licenseId": "TU-Berlin-2.0", "seeAlso": [ - "https://www.gnu.org/licenses/fdl-1.3.txt" + "https://github.com/CorsixTH/deps/blob/fd339a9f526d1d9c9f01ccf39e438a015da50035/licences/libgsm.txt" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/LPPL-1.1.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/LPPL-1.1.json", + "reference": "https://spdx.org/licenses/GFDL-1.3.html", + "isDeprecatedLicenseId": true, + "detailsUrl": "https://spdx.org/licenses/GFDL-1.3.json", "referenceNumber": 256, - "name": "LaTeX Project Public License v1.1", - "licenseId": "LPPL-1.1", - "seeAlso": [ - "http://www.latex-project.org/lppl/lppl-1-1.txt" - ], - "isOsiApproved": false - }, - { - "reference": "https://spdx.org/licenses/CDDL-1.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CDDL-1.0.json", - "referenceNumber": 257, - "name": "Common Development and Distribution License 1.0", - "licenseId": "CDDL-1.0", + "name": "GNU Free Documentation License v1.3", + "licenseId": "GFDL-1.3", "seeAlso": [ - "https://opensource.org/licenses/cddl1" + "https://www.gnu.org/licenses/fdl-1.3.txt" ], - "isOsiApproved": true, + "isOsiApproved": false, "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/FTL.html", + "reference": "https://spdx.org/licenses/GFDL-1.3-or-later.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/FTL.json", - "referenceNumber": 258, - "name": "Freetype Project License", - "licenseId": "FTL", + "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-or-later.json", + "referenceNumber": 257, + "name": "GNU Free Documentation License v1.3 or later", + "licenseId": "GFDL-1.3-or-later", "seeAlso": [ - "http://freetype.fis.uniroma2.it/FTL.TXT", - "http://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/docs/FTL.TXT", - "http://gitlab.freedesktop.org/freetype/freetype/-/raw/master/docs/FTL.TXT" + "https://www.gnu.org/licenses/fdl-1.3.txt" ], "isOsiApproved": false, "isFsfLibre": true @@ -3225,7 +3210,7 @@ "reference": "https://spdx.org/licenses/LAL-1.2.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/LAL-1.2.json", - "referenceNumber": 259, + "referenceNumber": 258, "name": "Licence Art Libre 1.2", "licenseId": "LAL-1.2", "seeAlso": [ @@ -3237,7 +3222,7 @@ "reference": "https://spdx.org/licenses/ICU.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/ICU.json", - "referenceNumber": 260, + "referenceNumber": 259, "name": "ICU License", "licenseId": "ICU", "seeAlso": [ @@ -3246,6 +3231,21 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/FTL.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/FTL.json", + "referenceNumber": 260, + "name": "Freetype Project License", + "licenseId": "FTL", + "seeAlso": [ + "http://freetype.fis.uniroma2.it/FTL.TXT", + "http://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/docs/FTL.TXT", + "http://gitlab.freedesktop.org/freetype/freetype/-/raw/master/docs/FTL.TXT" + ], + "isOsiApproved": false, + "isFsfLibre": true + }, + { "reference": "https://spdx.org/licenses/MirOS.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/MirOS.json", @@ -3282,16 +3282,17 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Xerox.html", + "reference": "https://spdx.org/licenses/OSET-PL-2.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Xerox.json", + "detailsUrl": "https://spdx.org/licenses/OSET-PL-2.1.json", "referenceNumber": 264, - "name": "Xerox License", - "licenseId": "Xerox", + "name": "OSET Public License version 2.1", + "licenseId": "OSET-PL-2.1", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Xerox" + "http://www.osetfoundation.org/public-license", + "https://opensource.org/licenses/OPL-2.1" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/CC-BY-NC-ND-2.0.html", @@ -3306,39 +3307,38 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OSET-PL-2.1.html", + "reference": "https://spdx.org/licenses/SISSL-1.2.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OSET-PL-2.1.json", + "detailsUrl": "https://spdx.org/licenses/SISSL-1.2.json", "referenceNumber": 266, - "name": "OSET Public License version 2.1", - "licenseId": "OSET-PL-2.1", + "name": "Sun Industry Standards Source License v1.2", + "licenseId": "SISSL-1.2", "seeAlso": [ - "http://www.osetfoundation.org/public-license", - "https://opensource.org/licenses/OPL-2.1" + "http://gridscheduler.sourceforge.net/Gridengine_SISSL_license.html" ], - "isOsiApproved": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/SISSL-1.2.html", + "reference": "https://spdx.org/licenses/Wsuipa.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/SISSL-1.2.json", + "detailsUrl": "https://spdx.org/licenses/Wsuipa.json", "referenceNumber": 267, - "name": "Sun Industry Standards Source License v1.2", - "licenseId": "SISSL-1.2", + "name": "Wsuipa License", + "licenseId": "Wsuipa", "seeAlso": [ - "http://gridscheduler.sourceforge.net/Gridengine_SISSL_license.html" + "https://fedoraproject.org/wiki/Licensing/Wsuipa" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Adobe-Glyph.html", + "reference": "https://spdx.org/licenses/Zimbra-1.4.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Adobe-Glyph.json", + "detailsUrl": "https://spdx.org/licenses/Zimbra-1.4.json", "referenceNumber": 268, - "name": "Adobe Glyph List License", - "licenseId": "Adobe-Glyph", + "name": "Zimbra Public License v1.4", + "licenseId": "Zimbra-1.4", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/MIT#AdobeGlyph" + "http://www.zimbra.com/legal/zimbra-public-license-1-4" ], "isOsiApproved": false }, @@ -3355,27 +3355,28 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/etalab-2.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/etalab-2.0.json", + "reference": "https://spdx.org/licenses/LGPL-3.0.html", + "isDeprecatedLicenseId": true, + "detailsUrl": "https://spdx.org/licenses/LGPL-3.0.json", "referenceNumber": 270, - "name": "Etalab Open License 2.0", - "licenseId": "etalab-2.0", + "name": "GNU Lesser General Public License v3.0 only", + "licenseId": "LGPL-3.0", "seeAlso": [ - "https://github.com/DISIC/politique-de-contribution-open-source/blob/master/LICENSE.pdf", - "https://raw.githubusercontent.com/DISIC/politique-de-contribution-open-source/master/LICENSE" + "https://www.gnu.org/licenses/lgpl-3.0-standalone.html", + "https://opensource.org/licenses/LGPL-3.0" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/Wsuipa.html", + "reference": "https://spdx.org/licenses/OLDAP-2.5.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Wsuipa.json", + "detailsUrl": "https://spdx.org/licenses/OLDAP-2.5.json", "referenceNumber": 271, - "name": "Wsuipa License", - "licenseId": "Wsuipa", + "name": "Open LDAP Public License v2.5", + "licenseId": "OLDAP-2.5", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Wsuipa" + "http://www.openldap.org/devel/gitweb.cgi?p\u003dopenldap.git;a\u003dblob;f\u003dLICENSE;hb\u003d6852b9d90022e8593c98205413380536b1b5a7cf" ], "isOsiApproved": false }, @@ -3416,10 +3417,22 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/Adobe-Glyph.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/Adobe-Glyph.json", + "referenceNumber": 275, + "name": "Adobe Glyph List License", + "licenseId": "Adobe-Glyph", + "seeAlso": [ + "https://fedoraproject.org/wiki/Licensing/MIT#AdobeGlyph" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/0BSD.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/0BSD.json", - "referenceNumber": 275, + "referenceNumber": 276, "name": "BSD Zero Clause License", "licenseId": "0BSD", "seeAlso": [ @@ -3431,7 +3444,7 @@ "reference": "https://spdx.org/licenses/W3C-19980720.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/W3C-19980720.json", - "referenceNumber": 276, + "referenceNumber": 277, "name": "W3C Software Notice and License (1998-07-20)", "licenseId": "W3C-19980720", "seeAlso": [ @@ -3440,18 +3453,6 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CC-BY-NC-SA-3.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-SA-3.0.json", - "referenceNumber": 277, - "name": "Creative Commons Attribution Non Commercial Share Alike 3.0 Unported", - "licenseId": "CC-BY-NC-SA-3.0", - "seeAlso": [ - "https://creativecommons.org/licenses/by-nc-sa/3.0/legalcode" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/FSFUL.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/FSFUL.json", @@ -3464,26 +3465,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/PolyForm-Noncommercial-1.0.0.html", + "reference": "https://spdx.org/licenses/CC-BY-NC-SA-3.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/PolyForm-Noncommercial-1.0.0.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-NC-SA-3.0.json", "referenceNumber": 279, - "name": "PolyForm Noncommercial License 1.0.0", - "licenseId": "PolyForm-Noncommercial-1.0.0", - "seeAlso": [ - "https://polyformproject.org/licenses/noncommercial/1.0.0" - ], - "isOsiApproved": false - }, - { - "reference": "https://spdx.org/licenses/Zimbra-1.4.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Zimbra-1.4.json", - "referenceNumber": 280, - "name": "Zimbra Public License v1.4", - "licenseId": "Zimbra-1.4", + "name": "Creative Commons Attribution Non Commercial Share Alike 3.0 Unported", + "licenseId": "CC-BY-NC-SA-3.0", "seeAlso": [ - "http://www.zimbra.com/legal/zimbra-public-license-1-4" + "https://creativecommons.org/licenses/by-nc-sa/3.0/legalcode" ], "isOsiApproved": false }, @@ -3491,7 +3480,7 @@ "reference": "https://spdx.org/licenses/DOC.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/DOC.json", - "referenceNumber": 281, + "referenceNumber": 280, "name": "DOC License", "licenseId": "DOC", "seeAlso": [ @@ -3504,7 +3493,7 @@ "reference": "https://spdx.org/licenses/TMate.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/TMate.json", - "referenceNumber": 282, + "referenceNumber": 281, "name": "TMate Open Source License", "licenseId": "TMate", "seeAlso": [ @@ -3513,6 +3502,21 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/MIT-open-group.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/MIT-open-group.json", + "referenceNumber": 282, + "name": "MIT Open Group variant", + "licenseId": "MIT-open-group", + "seeAlso": [ + "https://gitlab.freedesktop.org/xorg/app/iceauth/-/blob/master/COPYING", + "https://gitlab.freedesktop.org/xorg/app/xvinfo/-/blob/master/COPYING", + "https://gitlab.freedesktop.org/xorg/app/xsetroot/-/blob/master/COPYING", + "https://gitlab.freedesktop.org/xorg/app/xauth/-/blob/master/COPYING" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/AMDPLPA.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/AMDPLPA.json", @@ -3525,32 +3529,30 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/MIT-open-group.html", + "reference": "https://spdx.org/licenses/Condor-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/MIT-open-group.json", + "detailsUrl": "https://spdx.org/licenses/Condor-1.1.json", "referenceNumber": 284, - "name": "MIT Open Group variant", - "licenseId": "MIT-open-group", + "name": "Condor Public License v1.1", + "licenseId": "Condor-1.1", "seeAlso": [ - "https://gitlab.freedesktop.org/xorg/app/iceauth/-/blob/master/COPYING", - "https://gitlab.freedesktop.org/xorg/app/xvinfo/-/blob/master/COPYING", - "https://gitlab.freedesktop.org/xorg/app/xsetroot/-/blob/master/COPYING", - "https://gitlab.freedesktop.org/xorg/app/xauth/-/blob/master/COPYING" + "http://research.cs.wisc.edu/condor/license.html#condor", + "http://web.archive.org/web/20111123062036/http://research.cs.wisc.edu/condor/license.html#condor" ], - "isOsiApproved": false + "isOsiApproved": false, + "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CC-BY-4.0.html", + "reference": "https://spdx.org/licenses/PolyForm-Noncommercial-1.0.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-4.0.json", + "detailsUrl": "https://spdx.org/licenses/PolyForm-Noncommercial-1.0.0.json", "referenceNumber": 285, - "name": "Creative Commons Attribution 4.0 International", - "licenseId": "CC-BY-4.0", + "name": "PolyForm Noncommercial License 1.0.0", + "licenseId": "PolyForm-Noncommercial-1.0.0", "seeAlso": [ - "https://creativecommons.org/licenses/by/4.0/legalcode" + "https://polyformproject.org/licenses/noncommercial/1.0.0" ], - "isOsiApproved": false, - "isFsfLibre": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/BSD-3-Clause-No-Military-License.html", @@ -3566,15 +3568,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Condor-1.1.html", + "reference": "https://spdx.org/licenses/CC-BY-4.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Condor-1.1.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-4.0.json", "referenceNumber": 287, - "name": "Condor Public License v1.1", - "licenseId": "Condor-1.1", + "name": "Creative Commons Attribution 4.0 International", + "licenseId": "CC-BY-4.0", "seeAlso": [ - "http://research.cs.wisc.edu/condor/license.html#condor", - "http://web.archive.org/web/20111123062036/http://research.cs.wisc.edu/condor/license.html#condor" + "https://creativecommons.org/licenses/by/4.0/legalcode" ], "isOsiApproved": false, "isFsfLibre": true @@ -3641,23 +3642,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GFDL-1.3.html", - "isDeprecatedLicenseId": true, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.3.json", - "referenceNumber": 293, - "name": "GNU Free Documentation License v1.3", - "licenseId": "GFDL-1.3", - "seeAlso": [ - "https://www.gnu.org/licenses/fdl-1.3.txt" - ], - "isOsiApproved": false, - "isFsfLibre": true - }, - { "reference": "https://spdx.org/licenses/GPL-3.0-or-later.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/GPL-3.0-or-later.json", - "referenceNumber": 294, + "referenceNumber": 293, "name": "GNU General Public License v3.0 or later", "licenseId": "GPL-3.0-or-later", "seeAlso": [ @@ -3671,7 +3659,7 @@ "reference": "https://spdx.org/licenses/CDLA-Permissive-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CDLA-Permissive-2.0.json", - "referenceNumber": 295, + "referenceNumber": 294, "name": "Community Data License Agreement Permissive 2.0", "licenseId": "CDLA-Permissive-2.0", "seeAlso": [ @@ -3683,7 +3671,7 @@ "reference": "https://spdx.org/licenses/CC-BY-ND-3.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-ND-3.0.json", - "referenceNumber": 296, + "referenceNumber": 295, "name": "Creative Commons Attribution No Derivatives 3.0 Unported", "licenseId": "CC-BY-ND-3.0", "seeAlso": [ @@ -3695,7 +3683,7 @@ "reference": "https://spdx.org/licenses/C-UDA-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/C-UDA-1.0.json", - "referenceNumber": 297, + "referenceNumber": 296, "name": "Computational Use of Data Agreement v1.0", "licenseId": "C-UDA-1.0", "seeAlso": [ @@ -3705,6 +3693,18 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/Barr.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/Barr.json", + "referenceNumber": 297, + "name": "Barr License", + "licenseId": "Barr", + "seeAlso": [ + "https://fedoraproject.org/wiki/Licensing/Barr" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/Vim.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Vim.json", @@ -3730,34 +3730,23 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Barr.html", + "reference": "https://spdx.org/licenses/BitTorrent-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Barr.json", + "detailsUrl": "https://spdx.org/licenses/BitTorrent-1.1.json", "referenceNumber": 300, - "name": "Barr License", - "licenseId": "Barr", - "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Barr" - ], - "isOsiApproved": false - }, - { - "reference": "https://spdx.org/licenses/ADSL.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/ADSL.json", - "referenceNumber": 301, - "name": "Amazon Digital Services License", - "licenseId": "ADSL", + "name": "BitTorrent Open Source License v1.1", + "licenseId": "BitTorrent-1.1", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/AmazonDigitalServicesLicense" + "http://directory.fsf.org/wiki/License:BitTorrentOSL1.1" ], - "isOsiApproved": false + "isOsiApproved": false, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/CDL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CDL-1.0.json", - "referenceNumber": 302, + "referenceNumber": 301, "name": "Common Documentation License 1.0", "licenseId": "CDL-1.0", "seeAlso": [ @@ -3771,7 +3760,7 @@ "reference": "https://spdx.org/licenses/CC-BY-SA-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-1.0.json", - "referenceNumber": 303, + "referenceNumber": 302, "name": "Creative Commons Attribution Share Alike 1.0 Generic", "licenseId": "CC-BY-SA-1.0", "seeAlso": [ @@ -3780,10 +3769,35 @@ "isOsiApproved": false }, { + "reference": "https://spdx.org/licenses/ADSL.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/ADSL.json", + "referenceNumber": 303, + "name": "Amazon Digital Services License", + "licenseId": "ADSL", + "seeAlso": [ + "https://fedoraproject.org/wiki/Licensing/AmazonDigitalServicesLicense" + ], + "isOsiApproved": false + }, + { + "reference": "https://spdx.org/licenses/PostgreSQL.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/PostgreSQL.json", + "referenceNumber": 304, + "name": "PostgreSQL License", + "licenseId": "PostgreSQL", + "seeAlso": [ + "http://www.postgresql.org/about/licence", + "https://opensource.org/licenses/PostgreSQL" + ], + "isOsiApproved": true + }, + { "reference": "https://spdx.org/licenses/OFL-1.1.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/OFL-1.1.json", - "referenceNumber": 304, + "referenceNumber": 305, "name": "SIL Open Font License 1.1", "licenseId": "OFL-1.1", "seeAlso": [ @@ -3794,18 +3808,6 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/GLWTPL.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GLWTPL.json", - "referenceNumber": 305, - "name": "Good Luck With That Public License", - "licenseId": "GLWTPL", - "seeAlso": [ - "https://github.com/me-shaon/GLWTPL/commit/da5f6bc734095efbacb442c0b31e33a65b9d6e85" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/NPL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/NPL-1.0.json", @@ -3892,17 +3894,16 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/PostgreSQL.html", + "reference": "https://spdx.org/licenses/GLWTPL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/PostgreSQL.json", + "detailsUrl": "https://spdx.org/licenses/GLWTPL.json", "referenceNumber": 313, - "name": "PostgreSQL License", - "licenseId": "PostgreSQL", + "name": "Good Luck With That Public License", + "licenseId": "GLWTPL", "seeAlso": [ - "http://www.postgresql.org/about/licence", - "https://opensource.org/licenses/PostgreSQL" + "https://github.com/me-shaon/GLWTPL/commit/da5f6bc734095efbacb442c0b31e33a65b9d6e85" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/LGPL-3.0-only.html", @@ -3993,36 +3994,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/AGPL-1.0-or-later.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/AGPL-1.0-or-later.json", - "referenceNumber": 321, - "name": "Affero General Public License v1.0 or later", - "licenseId": "AGPL-1.0-or-later", - "seeAlso": [ - "http://www.affero.org/oagpl.html" - ], - "isOsiApproved": false - }, - { - "reference": "https://spdx.org/licenses/BSL-1.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BSL-1.0.json", - "referenceNumber": 322, - "name": "Boost Software License 1.0", - "licenseId": "BSL-1.0", - "seeAlso": [ - "http://www.boost.org/LICENSE_1_0.txt", - "https://opensource.org/licenses/BSL-1.0" - ], - "isOsiApproved": true, - "isFsfLibre": true - }, - { "reference": "https://spdx.org/licenses/IJG.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/IJG.json", - "referenceNumber": 323, + "referenceNumber": 321, "name": "Independent JPEG Group License", "licenseId": "IJG", "seeAlso": [ @@ -4032,10 +4007,22 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/AGPL-1.0-or-later.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/AGPL-1.0-or-later.json", + "referenceNumber": 322, + "name": "Affero General Public License v1.0 or later", + "licenseId": "AGPL-1.0-or-later", + "seeAlso": [ + "http://www.affero.org/oagpl.html" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/OFL-1.1-no-RFN.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/OFL-1.1-no-RFN.json", - "referenceNumber": 324, + "referenceNumber": 323, "name": "SIL Open Font License 1.1 with no Reserved Font Name", "licenseId": "OFL-1.1-no-RFN", "seeAlso": [ @@ -4045,6 +4032,20 @@ "isOsiApproved": true }, { + "reference": "https://spdx.org/licenses/BSL-1.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/BSL-1.0.json", + "referenceNumber": 324, + "name": "Boost Software License 1.0", + "licenseId": "BSL-1.0", + "seeAlso": [ + "http://www.boost.org/LICENSE_1_0.txt", + "https://opensource.org/licenses/BSL-1.0" + ], + "isOsiApproved": true, + "isFsfLibre": true + }, + { "reference": "https://spdx.org/licenses/Libpng.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Libpng.json", @@ -4193,28 +4194,28 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/libselinux-1.0.html", + "reference": "https://spdx.org/licenses/CECILL-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/libselinux-1.0.json", + "detailsUrl": "https://spdx.org/licenses/CECILL-1.1.json", "referenceNumber": 337, - "name": "libselinux public domain notice", - "licenseId": "libselinux-1.0", + "name": "CeCILL Free Software License Agreement v1.1", + "licenseId": "CECILL-1.1", "seeAlso": [ - "https://github.com/SELinuxProject/selinux/blob/master/libselinux/LICENSE" + "http://www.cecill.info/licences/Licence_CeCILL_V1.1-US.html" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CECILL-1.1.html", + "reference": "https://spdx.org/licenses/CECILL-2.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CECILL-1.1.json", + "detailsUrl": "https://spdx.org/licenses/CECILL-2.1.json", "referenceNumber": 338, - "name": "CeCILL Free Software License Agreement v1.1", - "licenseId": "CECILL-1.1", + "name": "CeCILL Free Software License Agreement v2.1", + "licenseId": "CECILL-2.1", "seeAlso": [ - "http://www.cecill.info/licences/Licence_CeCILL_V1.1-US.html" + "http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.html" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/OGDL-Taiwan-1.0.html", @@ -4229,39 +4230,26 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/BSD-1-Clause.html", + "reference": "https://spdx.org/licenses/Abstyles.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BSD-1-Clause.json", + "detailsUrl": "https://spdx.org/licenses/Abstyles.json", "referenceNumber": 340, - "name": "BSD 1-Clause License", - "licenseId": "BSD-1-Clause", + "name": "Abstyles License", + "licenseId": "Abstyles", "seeAlso": [ - "https://svnweb.freebsd.org/base/head/include/ifaddrs.h?revision\u003d326823" + "https://fedoraproject.org/wiki/Licensing/Abstyles" ], - "isOsiApproved": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/BitTorrent-1.1.html", + "reference": "https://spdx.org/licenses/libselinux-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BitTorrent-1.1.json", + "detailsUrl": "https://spdx.org/licenses/libselinux-1.0.json", "referenceNumber": 341, - "name": "BitTorrent Open Source License v1.1", - "licenseId": "BitTorrent-1.1", - "seeAlso": [ - "http://directory.fsf.org/wiki/License:BitTorrentOSL1.1" - ], - "isOsiApproved": false, - "isFsfLibre": true - }, - { - "reference": "https://spdx.org/licenses/MIT-enna.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/MIT-enna.json", - "referenceNumber": 342, - "name": "enna License", - "licenseId": "MIT-enna", + "name": "libselinux public domain notice", + "licenseId": "libselinux-1.0", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/MIT#enna" + "https://github.com/SELinuxProject/selinux/blob/master/libselinux/LICENSE" ], "isOsiApproved": false }, @@ -4269,7 +4257,7 @@ "reference": "https://spdx.org/licenses/ANTLR-PD.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/ANTLR-PD.json", - "referenceNumber": 343, + "referenceNumber": 342, "name": "ANTLR Software Rights Notice", "licenseId": "ANTLR-PD", "seeAlso": [ @@ -4281,7 +4269,7 @@ "reference": "https://spdx.org/licenses/GPL-2.0-or-later.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/GPL-2.0-or-later.json", - "referenceNumber": 344, + "referenceNumber": 343, "name": "GNU General Public License v2.0 or later", "licenseId": "GPL-2.0-or-later", "seeAlso": [ @@ -4292,14 +4280,27 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CC-BY-SA-3.0-AT.html", + "reference": "https://spdx.org/licenses/IPL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-3.0-AT.json", + "detailsUrl": "https://spdx.org/licenses/IPL-1.0.json", + "referenceNumber": 344, + "name": "IBM Public License v1.0", + "licenseId": "IPL-1.0", + "seeAlso": [ + "https://opensource.org/licenses/IPL-1.0" + ], + "isOsiApproved": true, + "isFsfLibre": true + }, + { + "reference": "https://spdx.org/licenses/MIT-enna.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/MIT-enna.json", "referenceNumber": 345, - "name": "Creative Commons Attribution Share Alike 3.0 Austria", - "licenseId": "CC-BY-SA-3.0-AT", + "name": "enna License", + "licenseId": "MIT-enna", "seeAlso": [ - "https://creativecommons.org/licenses/by-sa/3.0/at/legalcode" + "https://fedoraproject.org/wiki/Licensing/MIT#enna" ], "isOsiApproved": false }, @@ -4316,17 +4317,16 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OFL-1.1-RFN.html", + "reference": "https://spdx.org/licenses/CC-BY-SA-3.0-AT.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OFL-1.1-RFN.json", + "detailsUrl": "https://spdx.org/licenses/CC-BY-SA-3.0-AT.json", "referenceNumber": 347, - "name": "SIL Open Font License 1.1 with Reserved Font Name", - "licenseId": "OFL-1.1-RFN", + "name": "Creative Commons Attribution Share Alike 3.0 Austria", + "licenseId": "CC-BY-SA-3.0-AT", "seeAlso": [ - "http://scripts.sil.org/cms/scripts/page.php?item_id\u003dOFL_web", - "https://opensource.org/licenses/OFL-1.1" + "https://creativecommons.org/licenses/by-sa/3.0/at/legalcode" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/GPL-3.0-with-GCC-exception.html", @@ -4341,17 +4341,16 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/IPL-1.0.html", + "reference": "https://spdx.org/licenses/BSD-1-Clause.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/IPL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/BSD-1-Clause.json", "referenceNumber": 349, - "name": "IBM Public License v1.0", - "licenseId": "IPL-1.0", + "name": "BSD 1-Clause License", + "licenseId": "BSD-1-Clause", "seeAlso": [ - "https://opensource.org/licenses/IPL-1.0" + "https://svnweb.freebsd.org/base/head/include/ifaddrs.h?revision\u003d326823" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/NTP-0.html", @@ -4391,28 +4390,29 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/Watcom-1.0.html", + "reference": "https://spdx.org/licenses/OFL-1.1-RFN.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Watcom-1.0.json", + "detailsUrl": "https://spdx.org/licenses/OFL-1.1-RFN.json", "referenceNumber": 353, - "name": "Sybase Open Watcom Public License 1.0", - "licenseId": "Watcom-1.0", + "name": "SIL Open Font License 1.1 with Reserved Font Name", + "licenseId": "OFL-1.1-RFN", "seeAlso": [ - "https://opensource.org/licenses/Watcom-1.0" + "http://scripts.sil.org/cms/scripts/page.php?item_id\u003dOFL_web", + "https://opensource.org/licenses/OFL-1.1" ], "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/FSFULLR.html", + "reference": "https://spdx.org/licenses/Watcom-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/FSFULLR.json", + "detailsUrl": "https://spdx.org/licenses/Watcom-1.0.json", "referenceNumber": 354, - "name": "FSF Unlimited License (with License Retention)", - "licenseId": "FSFULLR", + "name": "Sybase Open Watcom Public License 1.0", + "licenseId": "Watcom-1.0", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/FSF_Unlimited_License#License_Retention_Variant" + "https://opensource.org/licenses/Watcom-1.0" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/CC-BY-NC-SA-2.0-FR.html", @@ -4427,26 +4427,28 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/BSD-2-Clause.html", + "reference": "https://spdx.org/licenses/ODbL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BSD-2-Clause.json", + "detailsUrl": "https://spdx.org/licenses/ODbL-1.0.json", "referenceNumber": 356, - "name": "BSD 2-Clause \"Simplified\" License", - "licenseId": "BSD-2-Clause", + "name": "Open Data Commons Open Database License v1.0", + "licenseId": "ODbL-1.0", "seeAlso": [ - "https://opensource.org/licenses/BSD-2-Clause" + "http://www.opendatacommons.org/licenses/odbl/1.0/", + "https://opendatacommons.org/licenses/odbl/1-0/" ], - "isOsiApproved": true + "isOsiApproved": false, + "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/SSH-OpenSSH.html", + "reference": "https://spdx.org/licenses/FSFULLR.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/SSH-OpenSSH.json", + "detailsUrl": "https://spdx.org/licenses/FSFULLR.json", "referenceNumber": 357, - "name": "SSH OpenSSH license", - "licenseId": "SSH-OpenSSH", + "name": "FSF Unlimited License (with License Retention)", + "licenseId": "FSFULLR", "seeAlso": [ - "https://github.com/openssh/openssh-portable/blob/1b11ea7c58cd5c59838b5fa574cd456d6047b2d4/LICENCE#L10" + "https://fedoraproject.org/wiki/Licensing/FSF_Unlimited_License#License_Retention_Variant" ], "isOsiApproved": false }, @@ -4463,31 +4465,28 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/ODbL-1.0.html", + "reference": "https://spdx.org/licenses/SSH-OpenSSH.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/ODbL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/SSH-OpenSSH.json", "referenceNumber": 359, - "name": "Open Data Commons Open Database License v1.0", - "licenseId": "ODbL-1.0", + "name": "SSH OpenSSH license", + "licenseId": "SSH-OpenSSH", "seeAlso": [ - "http://www.opendatacommons.org/licenses/odbl/1.0/", - "https://opendatacommons.org/licenses/odbl/1-0/" + "https://github.com/openssh/openssh-portable/blob/1b11ea7c58cd5c59838b5fa574cd456d6047b2d4/LICENCE#L10" ], - "isOsiApproved": false, - "isFsfLibre": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GFDL-1.3-only.html", + "reference": "https://spdx.org/licenses/BSD-2-Clause.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-only.json", + "detailsUrl": "https://spdx.org/licenses/BSD-2-Clause.json", "referenceNumber": 360, - "name": "GNU Free Documentation License v1.3 only", - "licenseId": "GFDL-1.3-only", + "name": "BSD 2-Clause \"Simplified\" License", + "licenseId": "BSD-2-Clause", "seeAlso": [ - "https://www.gnu.org/licenses/fdl-1.3.txt" + "https://opensource.org/licenses/BSD-2-Clause" ], - "isOsiApproved": false, - "isFsfLibre": true + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/HPND.html", @@ -4503,17 +4502,17 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/NASA-1.3.html", + "reference": "https://spdx.org/licenses/Zimbra-1.3.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NASA-1.3.json", + "detailsUrl": "https://spdx.org/licenses/Zimbra-1.3.json", "referenceNumber": 362, - "name": "NASA Open Source Agreement 1.3", - "licenseId": "NASA-1.3", + "name": "Zimbra Public License v1.3", + "licenseId": "Zimbra-1.3", "seeAlso": [ - "http://ti.arc.nasa.gov/opensource/nosa/", - "https://opensource.org/licenses/NASA-1.3" + "http://web.archive.org/web/20100302225219/http://www.zimbra.com/license/zimbra-public-license-1-3.html" ], - "isOsiApproved": true + "isOsiApproved": false, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/Borceux.html", @@ -4552,17 +4551,17 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CPAL-1.0.html", + "reference": "https://spdx.org/licenses/NASA-1.3.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CPAL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/NASA-1.3.json", "referenceNumber": 366, - "name": "Common Public Attribution License 1.0", - "licenseId": "CPAL-1.0", + "name": "NASA Open Source Agreement 1.3", + "licenseId": "NASA-1.3", "seeAlso": [ - "https://opensource.org/licenses/CPAL-1.0" + "http://ti.arc.nasa.gov/opensource/nosa/", + "https://opensource.org/licenses/NASA-1.3" ], - "isOsiApproved": true, - "isFsfLibre": true + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/VOSTROM.html", @@ -4577,16 +4576,18 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Abstyles.html", + "reference": "https://spdx.org/licenses/MIT-0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Abstyles.json", + "detailsUrl": "https://spdx.org/licenses/MIT-0.json", "referenceNumber": 368, - "name": "Abstyles License", - "licenseId": "Abstyles", + "name": "MIT No Attribution", + "licenseId": "MIT-0", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Abstyles" + "https://github.com/aws/mit-0", + "https://romanrm.net/mit-zero", + "https://github.com/awsdocs/aws-cloud9-user-guide/blob/master/LICENSE-SAMPLECODE" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/ISC.html", @@ -4641,18 +4642,17 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/MIT-0.html", + "reference": "https://spdx.org/licenses/NOSL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/MIT-0.json", + "detailsUrl": "https://spdx.org/licenses/NOSL.json", "referenceNumber": 373, - "name": "MIT No Attribution", - "licenseId": "MIT-0", + "name": "Netizen Open Source License", + "licenseId": "NOSL", "seeAlso": [ - "https://github.com/aws/mit-0", - "https://romanrm.net/mit-zero", - "https://github.com/awsdocs/aws-cloud9-user-guide/blob/master/LICENSE-SAMPLECODE" + "http://bits.netizen.com.au/licenses/NOSL/nosl.txt" ], - "isOsiApproved": true + "isOsiApproved": false, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/SMLNJ.html", @@ -4681,16 +4681,16 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/NOSL.html", + "reference": "https://spdx.org/licenses/CPAL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NOSL.json", + "detailsUrl": "https://spdx.org/licenses/CPAL-1.0.json", "referenceNumber": 376, - "name": "Netizen Open Source License", - "licenseId": "NOSL", + "name": "Common Public Attribution License 1.0", + "licenseId": "CPAL-1.0", "seeAlso": [ - "http://bits.netizen.com.au/licenses/NOSL/nosl.txt" + "https://opensource.org/licenses/CPAL-1.0" ], - "isOsiApproved": false, + "isOsiApproved": true, "isFsfLibre": true }, { @@ -4783,56 +4783,55 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CDDL-1.1.html", + "reference": "https://spdx.org/licenses/EUPL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CDDL-1.1.json", + "detailsUrl": "https://spdx.org/licenses/EUPL-1.0.json", "referenceNumber": 384, - "name": "Common Development and Distribution License 1.1", - "licenseId": "CDDL-1.1", + "name": "European Union Public License 1.0", + "licenseId": "EUPL-1.0", "seeAlso": [ - "http://glassfish.java.net/public/CDDL+GPL_1_1.html", - "https://javaee.github.io/glassfish/LICENSE" + "http://ec.europa.eu/idabc/en/document/7330.html", + "http://ec.europa.eu/idabc/servlets/Doc027f.pdf?id\u003d31096" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Zimbra-1.3.html", + "reference": "https://spdx.org/licenses/CDDL-1.1.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Zimbra-1.3.json", + "detailsUrl": "https://spdx.org/licenses/CDDL-1.1.json", "referenceNumber": 385, - "name": "Zimbra Public License v1.3", - "licenseId": "Zimbra-1.3", + "name": "Common Development and Distribution License 1.1", + "licenseId": "CDDL-1.1", "seeAlso": [ - "http://web.archive.org/web/20100302225219/http://www.zimbra.com/license/zimbra-public-license-1-3.html" + "http://glassfish.java.net/public/CDDL+GPL_1_1.html", + "https://javaee.github.io/glassfish/LICENSE" ], - "isOsiApproved": false, - "isFsfLibre": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/EUPL-1.0.html", + "reference": "https://spdx.org/licenses/GFDL-1.3-only.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/EUPL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/GFDL-1.3-only.json", "referenceNumber": 386, - "name": "European Union Public License 1.0", - "licenseId": "EUPL-1.0", + "name": "GNU Free Documentation License v1.3 only", + "licenseId": "GFDL-1.3-only", "seeAlso": [ - "http://ec.europa.eu/idabc/en/document/7330.html", - "http://ec.europa.eu/idabc/servlets/Doc027f.pdf?id\u003d31096" + "https://www.gnu.org/licenses/fdl-1.3.txt" ], - "isOsiApproved": false + "isOsiApproved": false, + "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/Fair.html", + "reference": "https://spdx.org/licenses/OLDAP-2.6.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Fair.json", + "detailsUrl": "https://spdx.org/licenses/OLDAP-2.6.json", "referenceNumber": 387, - "name": "Fair License", - "licenseId": "Fair", + "name": "Open LDAP Public License v2.6", + "licenseId": "OLDAP-2.6", "seeAlso": [ - "http://fairlicense.org/", - "https://opensource.org/licenses/Fair" + "http://www.openldap.org/devel/gitweb.cgi?p\u003dopenldap.git;a\u003dblob;f\u003dLICENSE;hb\u003d1cae062821881f41b73012ba816434897abf4205" ], - "isOsiApproved": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/JSON.html", @@ -4875,17 +4874,17 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/OPL-1.0.html", + "reference": "https://spdx.org/licenses/Fair.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OPL-1.0.json", + "detailsUrl": "https://spdx.org/licenses/Fair.json", "referenceNumber": 391, - "name": "Open Public License v1.0", - "licenseId": "OPL-1.0", + "name": "Fair License", + "licenseId": "Fair", "seeAlso": [ - "http://old.koalateam.com/jackaroo/OPL_1_0.TXT", - "https://fedoraproject.org/wiki/Licensing/Open_Public_License" + "http://fairlicense.org/", + "https://opensource.org/licenses/Fair" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/GPL-2.0-with-font-exception.html", @@ -4977,14 +4976,15 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/OLDAP-2.6.html", + "reference": "https://spdx.org/licenses/OPL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OLDAP-2.6.json", + "detailsUrl": "https://spdx.org/licenses/OPL-1.0.json", "referenceNumber": 399, - "name": "Open LDAP Public License v2.6", - "licenseId": "OLDAP-2.6", + "name": "Open Public License v1.0", + "licenseId": "OPL-1.0", "seeAlso": [ - "http://www.openldap.org/devel/gitweb.cgi?p\u003dopenldap.git;a\u003dblob;f\u003dLICENSE;hb\u003d1cae062821881f41b73012ba816434897abf4205" + "http://old.koalateam.com/jackaroo/OPL_1_0.TXT", + "https://fedoraproject.org/wiki/Licensing/Open_Public_License" ], "isOsiApproved": false }, @@ -5001,49 +5001,24 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/NCGL-UK-2.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NCGL-UK-2.0.json", - "referenceNumber": 401, - "name": "Non-Commercial Government Licence", - "licenseId": "NCGL-UK-2.0", - "seeAlso": [ - "http://www.nationalarchives.gov.uk/doc/non-commercial-government-licence/version/2/" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/QPL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/QPL-1.0.json", - "referenceNumber": 402, + "referenceNumber": 401, "name": "Q Public License 1.0", "licenseId": "QPL-1.0", "seeAlso": [ "http://doc.qt.nokia.com/3.3/license.html", - "https://opensource.org/licenses/QPL-1.0", - "https://doc.qt.io/archives/3.3/license.html" + "https://opensource.org/licenses/QPL-1.0" ], "isOsiApproved": true, "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/GFDL-1.2-no-invariants-or-later.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.2-no-invariants-or-later.json", - "referenceNumber": 403, - "name": "GNU Free Documentation License v1.2 or later - no invariants", - "licenseId": "GFDL-1.2-no-invariants-or-later", - "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/fdl-1.2.txt" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/EUPL-1.2.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/EUPL-1.2.json", - "referenceNumber": 404, + "referenceNumber": 402, "name": "European Union Public License 1.2", "licenseId": "EUPL-1.2", "seeAlso": [ @@ -5057,15 +5032,14 @@ "isOsiApproved": true }, { - "reference": "https://spdx.org/licenses/Beerware.html", + "reference": "https://spdx.org/licenses/GFDL-1.2-no-invariants-or-later.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Beerware.json", - "referenceNumber": 405, - "name": "Beerware License", - "licenseId": "Beerware", + "detailsUrl": "https://spdx.org/licenses/GFDL-1.2-no-invariants-or-later.json", + "referenceNumber": 403, + "name": "GNU Free Documentation License v1.2 or later - no invariants", + "licenseId": "GFDL-1.2-no-invariants-or-later", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Beerware", - "https://people.freebsd.org/~phk/" + "https://www.gnu.org/licenses/old-licenses/fdl-1.2.txt" ], "isOsiApproved": false }, @@ -5073,7 +5047,7 @@ "reference": "https://spdx.org/licenses/eCos-2.0.html", "isDeprecatedLicenseId": true, "detailsUrl": "https://spdx.org/licenses/eCos-2.0.json", - "referenceNumber": 406, + "referenceNumber": 404, "name": "eCos license version 2.0", "licenseId": "eCos-2.0", "seeAlso": [ @@ -5082,27 +5056,27 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CAL-1.0.html", + "reference": "https://spdx.org/licenses/NCGL-UK-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CAL-1.0.json", - "referenceNumber": 407, - "name": "Cryptographic Autonomy License 1.0", - "licenseId": "CAL-1.0", + "detailsUrl": "https://spdx.org/licenses/NCGL-UK-2.0.json", + "referenceNumber": 405, + "name": "Non-Commercial Government Licence", + "licenseId": "NCGL-UK-2.0", "seeAlso": [ - "http://cryptographicautonomylicense.com/license-text.html", - "https://opensource.org/licenses/CAL-1.0" + "http://www.nationalarchives.gov.uk/doc/non-commercial-government-licence/version/2/" ], - "isOsiApproved": true + "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GPL-2.0-with-bison-exception.html", - "isDeprecatedLicenseId": true, - "detailsUrl": "https://spdx.org/licenses/GPL-2.0-with-bison-exception.json", - "referenceNumber": 408, - "name": "GNU General Public License v2.0 w/Bison exception", - "licenseId": "GPL-2.0-with-bison-exception", + "reference": "https://spdx.org/licenses/Beerware.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/Beerware.json", + "referenceNumber": 406, + "name": "Beerware License", + "licenseId": "Beerware", "seeAlso": [ - "http://git.savannah.gnu.org/cgit/bison.git/tree/data/yacc.c?id\u003d193d7c7054ba7197b0789e14965b739162319b5e#n141" + "https://fedoraproject.org/wiki/Licensing/Beerware", + "https://people.freebsd.org/~phk/" ], "isOsiApproved": false }, @@ -5110,7 +5084,7 @@ "reference": "https://spdx.org/licenses/BSD-3-Clause-Open-MPI.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/BSD-3-Clause-Open-MPI.json", - "referenceNumber": 409, + "referenceNumber": 407, "name": "BSD 3-Clause Open MPI variant", "licenseId": "BSD-3-Clause-Open-MPI", "seeAlso": [ @@ -5120,14 +5094,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GPL-2.0-with-autoconf-exception.html", + "reference": "https://spdx.org/licenses/GPL-2.0-with-bison-exception.html", "isDeprecatedLicenseId": true, - "detailsUrl": "https://spdx.org/licenses/GPL-2.0-with-autoconf-exception.json", - "referenceNumber": 410, - "name": "GNU General Public License v2.0 w/Autoconf exception", - "licenseId": "GPL-2.0-with-autoconf-exception", + "detailsUrl": "https://spdx.org/licenses/GPL-2.0-with-bison-exception.json", + "referenceNumber": 408, + "name": "GNU General Public License v2.0 w/Bison exception", + "licenseId": "GPL-2.0-with-bison-exception", "seeAlso": [ - "http://ac-archive.sourceforge.net/doc/copyright.html" + "http://git.savannah.gnu.org/cgit/bison.git/tree/data/yacc.c?id\u003d193d7c7054ba7197b0789e14965b739162319b5e#n141" ], "isOsiApproved": false }, @@ -5135,7 +5109,7 @@ "reference": "https://spdx.org/licenses/CECILL-B.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/CECILL-B.json", - "referenceNumber": 411, + "referenceNumber": 409, "name": "CeCILL-B Free Software License Agreement", "licenseId": "CECILL-B", "seeAlso": [ @@ -5145,10 +5119,22 @@ "isFsfLibre": true }, { + "reference": "https://spdx.org/licenses/GPL-2.0-with-autoconf-exception.html", + "isDeprecatedLicenseId": true, + "detailsUrl": "https://spdx.org/licenses/GPL-2.0-with-autoconf-exception.json", + "referenceNumber": 410, + "name": "GNU General Public License v2.0 w/Autoconf exception", + "licenseId": "GPL-2.0-with-autoconf-exception", + "seeAlso": [ + "http://ac-archive.sourceforge.net/doc/copyright.html" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/EPL-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/EPL-2.0.json", - "referenceNumber": 412, + "referenceNumber": 411, "name": "Eclipse Public License 2.0", "licenseId": "EPL-2.0", "seeAlso": [ @@ -5162,7 +5148,7 @@ "reference": "https://spdx.org/licenses/MIT-feh.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/MIT-feh.json", - "referenceNumber": 413, + "referenceNumber": 412, "name": "feh License", "licenseId": "MIT-feh", "seeAlso": [ @@ -5174,7 +5160,7 @@ "reference": "https://spdx.org/licenses/RPL-1.1.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/RPL-1.1.json", - "referenceNumber": 414, + "referenceNumber": 413, "name": "Reciprocal Public License 1.1", "licenseId": "RPL-1.1", "seeAlso": [ @@ -5183,6 +5169,18 @@ "isOsiApproved": true }, { + "reference": "https://spdx.org/licenses/CDLA-Permissive-1.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/CDLA-Permissive-1.0.json", + "referenceNumber": 414, + "name": "Community Data License Agreement Permissive 1.0", + "licenseId": "CDLA-Permissive-1.0", + "seeAlso": [ + "https://cdla.io/permissive-1-0" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/Python-2.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Python-2.0.json", @@ -5196,22 +5194,10 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/CDLA-Permissive-1.0.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CDLA-Permissive-1.0.json", - "referenceNumber": 416, - "name": "Community Data License Agreement Permissive 1.0", - "licenseId": "CDLA-Permissive-1.0", - "seeAlso": [ - "https://cdla.io/permissive-1-0" - ], - "isOsiApproved": false - }, - { "reference": "https://spdx.org/licenses/MPL-1.0.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/MPL-1.0.json", - "referenceNumber": 417, + "referenceNumber": 416, "name": "Mozilla Public License 1.0", "licenseId": "MPL-1.0", "seeAlso": [ @@ -5221,6 +5207,19 @@ "isOsiApproved": true }, { + "reference": "https://spdx.org/licenses/GFDL-1.1-or-later.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/GFDL-1.1-or-later.json", + "referenceNumber": 417, + "name": "GNU Free Documentation License v1.1 or later", + "licenseId": "GFDL-1.1-or-later", + "seeAlso": [ + "https://www.gnu.org/licenses/old-licenses/fdl-1.1.txt" + ], + "isOsiApproved": false, + "isFsfLibre": true + }, + { "reference": "https://spdx.org/licenses/diffmark.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/diffmark.json", @@ -5245,14 +5244,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/GFDL-1.1-or-later.html", + "reference": "https://spdx.org/licenses/OpenSSL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/GFDL-1.1-or-later.json", + "detailsUrl": "https://spdx.org/licenses/OpenSSL.json", "referenceNumber": 420, - "name": "GNU Free Documentation License v1.1 or later", - "licenseId": "GFDL-1.1-or-later", + "name": "OpenSSL License", + "licenseId": "OpenSSL", "seeAlso": [ - "https://www.gnu.org/licenses/old-licenses/fdl-1.1.txt" + "http://www.openssl.org/source/license.html" ], "isOsiApproved": false, "isFsfLibre": true @@ -5283,14 +5282,14 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OpenSSL.html", - "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OpenSSL.json", + "reference": "https://spdx.org/licenses/AGPL-1.0.html", + "isDeprecatedLicenseId": true, + "detailsUrl": "https://spdx.org/licenses/AGPL-1.0.json", "referenceNumber": 423, - "name": "OpenSSL License", - "licenseId": "OpenSSL", + "name": "Affero General Public License v1.0", + "licenseId": "AGPL-1.0", "seeAlso": [ - "http://www.openssl.org/source/license.html" + "http://www.affero.org/oagpl.html" ], "isOsiApproved": false, "isFsfLibre": true @@ -5335,23 +5334,10 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/AGPL-1.0.html", - "isDeprecatedLicenseId": true, - "detailsUrl": "https://spdx.org/licenses/AGPL-1.0.json", - "referenceNumber": 427, - "name": "Affero General Public License v1.0", - "licenseId": "AGPL-1.0", - "seeAlso": [ - "http://www.affero.org/oagpl.html" - ], - "isOsiApproved": false, - "isFsfLibre": true - }, - { "reference": "https://spdx.org/licenses/Xnet.html", "isDeprecatedLicenseId": false, "detailsUrl": "https://spdx.org/licenses/Xnet.json", - "referenceNumber": 428, + "referenceNumber": 427, "name": "X.Net License", "licenseId": "Xnet", "seeAlso": [ @@ -5360,6 +5346,18 @@ "isOsiApproved": true }, { + "reference": "https://spdx.org/licenses/TU-Berlin-1.0.html", + "isDeprecatedLicenseId": false, + "detailsUrl": "https://spdx.org/licenses/TU-Berlin-1.0.json", + "referenceNumber": 428, + "name": "Technische Universitaet Berlin License 1.0", + "licenseId": "TU-Berlin-1.0", + "seeAlso": [ + "https://github.com/swh/ladspa/blob/7bf6f3799fdba70fda297c2d8fd9f526803d9680/gsm/COPYRIGHT" + ], + "isOsiApproved": false + }, + { "reference": "https://spdx.org/licenses/AGPL-3.0.html", "isDeprecatedLicenseId": true, "detailsUrl": "https://spdx.org/licenses/AGPL-3.0.json", @@ -5374,16 +5372,17 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/TU-Berlin-1.0.html", + "reference": "https://spdx.org/licenses/CAL-1.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/TU-Berlin-1.0.json", + "detailsUrl": "https://spdx.org/licenses/CAL-1.0.json", "referenceNumber": 430, - "name": "Technische Universitaet Berlin License 1.0", - "licenseId": "TU-Berlin-1.0", + "name": "Cryptographic Autonomy License 1.0", + "licenseId": "CAL-1.0", "seeAlso": [ - "https://github.com/swh/ladspa/blob/7bf6f3799fdba70fda297c2d8fd9f526803d9680/gsm/COPYRIGHT" + "http://cryptographicautonomylicense.com/license-text.html", + "https://opensource.org/licenses/CAL-1.0" ], - "isOsiApproved": false + "isOsiApproved": true }, { "reference": "https://spdx.org/licenses/AFL-3.0.html", @@ -5400,16 +5399,16 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/APSL-2.0.html", + "reference": "https://spdx.org/licenses/CECILL-C.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/APSL-2.0.json", + "detailsUrl": "https://spdx.org/licenses/CECILL-C.json", "referenceNumber": 432, - "name": "Apple Public Source License 2.0", - "licenseId": "APSL-2.0", + "name": "CeCILL-C Free Software License Agreement", + "licenseId": "CECILL-C", "seeAlso": [ - "http://www.opensource.apple.com/license/apsl/" + "http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html" ], - "isOsiApproved": true, + "isOsiApproved": false, "isFsfLibre": true }, { @@ -5425,30 +5424,29 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/CECILL-C.html", + "reference": "https://spdx.org/licenses/BSD-3-Clause-Clear.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/CECILL-C.json", + "detailsUrl": "https://spdx.org/licenses/BSD-3-Clause-Clear.json", "referenceNumber": 434, - "name": "CeCILL-C Free Software License Agreement", - "licenseId": "CECILL-C", + "name": "BSD 3-Clause Clear License", + "licenseId": "BSD-3-Clause-Clear", "seeAlso": [ - "http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html" + "http://labs.metacarta.com/license-explanation.html#license" ], "isOsiApproved": false, "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/BSD-3-Clause-Clear.html", + "reference": "https://spdx.org/licenses/BSD-3-Clause-Modification.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BSD-3-Clause-Clear.json", + "detailsUrl": "https://spdx.org/licenses/BSD-3-Clause-Modification.json", "referenceNumber": 435, - "name": "BSD 3-Clause Clear License", - "licenseId": "BSD-3-Clause-Clear", + "name": "BSD 3-Clause Modification", + "licenseId": "BSD-3-Clause-Modification", "seeAlso": [ - "http://labs.metacarta.com/license-explanation.html#license" + "https://fedoraproject.org/wiki/Licensing:BSD#Modification_Variant" ], - "isOsiApproved": false, - "isFsfLibre": true + "isOsiApproved": false }, { "reference": "https://spdx.org/licenses/CC-BY-SA-2.0-UK.html", @@ -5511,26 +5509,26 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/BSD-3-Clause-Modification.html", + "reference": "https://spdx.org/licenses/Spencer-86.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/BSD-3-Clause-Modification.json", + "detailsUrl": "https://spdx.org/licenses/Spencer-86.json", "referenceNumber": 441, - "name": "BSD 3-Clause Modification", - "licenseId": "BSD-3-Clause-Modification", + "name": "Spencer License 86", + "licenseId": "Spencer-86", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing:BSD#Modification_Variant" + "https://fedoraproject.org/wiki/Licensing/Henry_Spencer_Reg-Ex_Library_License" ], "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/Spencer-86.html", + "reference": "https://spdx.org/licenses/OCCT-PL.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/Spencer-86.json", + "detailsUrl": "https://spdx.org/licenses/OCCT-PL.json", "referenceNumber": 442, - "name": "Spencer License 86", - "licenseId": "Spencer-86", + "name": "Open CASCADE Technology Public License", + "licenseId": "OCCT-PL", "seeAlso": [ - "https://fedoraproject.org/wiki/Licensing/Henry_Spencer_Reg-Ex_Library_License" + "http://www.opencascade.com/content/occt-public-license" ], "isOsiApproved": false }, @@ -5572,14 +5570,15 @@ "isOsiApproved": false }, { - "reference": "https://spdx.org/licenses/OCCT-PL.html", + "reference": "https://spdx.org/licenses/NIST-PD.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/OCCT-PL.json", + "detailsUrl": "https://spdx.org/licenses/NIST-PD.json", "referenceNumber": 446, - "name": "Open CASCADE Technology Public License", - "licenseId": "OCCT-PL", + "name": "NIST Public Domain Notice", + "licenseId": "NIST-PD", "seeAlso": [ - "http://www.opencascade.com/content/occt-public-license" + "https://github.com/tcheneau/simpleRPL/blob/e645e69e38dd4e3ccfeceb2db8cba05b7c2e0cd3/LICENSE.txt", + "https://github.com/tcheneau/Routing/blob/f09f46fcfe636107f22f2c98348188a65a135d98/README.md" ], "isOsiApproved": false }, @@ -5597,17 +5596,17 @@ "isFsfLibre": true }, { - "reference": "https://spdx.org/licenses/NIST-PD.html", + "reference": "https://spdx.org/licenses/APSL-2.0.html", "isDeprecatedLicenseId": false, - "detailsUrl": "https://spdx.org/licenses/NIST-PD.json", + "detailsUrl": "https://spdx.org/licenses/APSL-2.0.json", "referenceNumber": 448, - "name": "NIST Public Domain Notice", - "licenseId": "NIST-PD", + "name": "Apple Public Source License 2.0", + "licenseId": "APSL-2.0", "seeAlso": [ - "https://github.com/tcheneau/simpleRPL/blob/e645e69e38dd4e3ccfeceb2db8cba05b7c2e0cd3/LICENSE.txt", - "https://github.com/tcheneau/Routing/blob/f09f46fcfe636107f22f2c98348188a65a135d98/README.md" + "http://www.opensource.apple.com/license/apsl/" ], - "isOsiApproved": false + "isOsiApproved": true, + "isFsfLibre": true }, { "reference": "https://spdx.org/licenses/Leptonica.html", @@ -5934,5 +5933,5 @@ "isOsiApproved": false } ], - "releaseDate": "2021-08-19" + "releaseDate": "2021-08-08" }
\ No newline at end of file diff --git a/poky/meta/lib/buildstats.py b/poky/meta/lib/buildstats.py index 8627ed3c3..c52b6c3b7 100644 --- a/poky/meta/lib/buildstats.py +++ b/poky/meta/lib/buildstats.py @@ -43,8 +43,8 @@ class SystemStats: # depends on the heartbeat event, which fires less often. self.min_seconds = 1 - self.meminfo_regex = re.compile(b'^(MemTotal|MemFree|Buffers|Cached|SwapTotal|SwapFree):\s*(\d+)') - self.diskstats_regex = re.compile(b'^([hsv]d.|mtdblock\d|mmcblk\d|cciss/c\d+d\d+.*)$') + self.meminfo_regex = re.compile(rb'^(MemTotal|MemFree|Buffers|Cached|SwapTotal|SwapFree):\s*(\d+)') + self.diskstats_regex = re.compile(rb'^([hsv]d.|mtdblock\d|mmcblk\d|cciss/c\d+d\d+.*)$') self.diskstats_ltime = None self.diskstats_data = None self.stat_ltimes = None diff --git a/poky/meta/lib/oe/spdx.py b/poky/meta/lib/oe/spdx.py index 9814fbfd6..4416194e0 100644 --- a/poky/meta/lib/oe/spdx.py +++ b/poky/meta/lib/oe/spdx.py @@ -2,6 +2,18 @@ # SPDX-License-Identifier: GPL-2.0-only # +# +# This library is intended to capture the JSON SPDX specification in a type +# safe manner. It is not intended to encode any particular OE specific +# behaviors, see the sbom.py for that. +# +# The documented SPDX spec document doesn't cover the JSON syntax for +# particular configuration, which can make it hard to determine what the JSON +# syntax should be. I've found it is actually much simpler to read the official +# SPDX JSON schema which can be found here: https://github.com/spdx/spdx-spec +# in schemas/spdx-schema.json +# + import hashlib import itertools import json @@ -9,7 +21,16 @@ import json SPDX_VERSION = "2.2" +# +# The following are the support classes that are used to implement SPDX object +# + class _Property(object): + """ + A generic SPDX object property. The different types will derive from this + class + """ + def __init__(self, *, default=None): self.default = default @@ -19,6 +40,10 @@ class _Property(object): class _String(_Property): + """ + A scalar string property for an SPDX object + """ + def __init__(self, **kwargs): super().__init__(**kwargs) @@ -39,6 +64,10 @@ class _String(_Property): class _Object(_Property): + """ + A scalar SPDX object property of a SPDX object + """ + def __init__(self, cls, **kwargs): super().__init__(**kwargs) self.cls = cls @@ -62,6 +91,10 @@ class _Object(_Property): class _ListProperty(_Property): + """ + A list of SPDX properties + """ + def __init__(self, prop, **kwargs): super().__init__(**kwargs) self.prop = prop @@ -82,16 +115,28 @@ class _ListProperty(_Property): class _StringList(_ListProperty): + """ + A list of strings as a property for an SPDX object + """ + def __init__(self, **kwargs): super().__init__(_String(), **kwargs) class _ObjectList(_ListProperty): + """ + A list of SPDX objects as a property for an SPDX object + """ + def __init__(self, cls, **kwargs): super().__init__(_Object(cls), **kwargs) class MetaSPDXObject(type): + """ + A metaclass that allows properties (anything derived from a _Property + class) to be defined for a SPDX object + """ def __new__(mcls, name, bases, attrs): attrs["_properties"] = {} @@ -105,6 +150,9 @@ class MetaSPDXObject(type): class SPDXObject(metaclass=MetaSPDXObject): + """ + The base SPDX object; all SPDX spec classes must derive from this class + """ def __init__(self, **d): self._spdx = {} @@ -122,6 +170,21 @@ class SPDXObject(metaclass=MetaSPDXObject): return raise KeyError("%r is not a valid SPDX property" % name) +# +# These are the SPDX objects implemented from the spec. The *only* properties +# that can be added to these objects are ones directly specified in the SPDX +# spec, however you may add helper functions to make operations easier. +# +# Defaults should *only* be specified if the SPDX spec says there is a certain +# required value for a field (e.g. dataLicense), or if the field is mandatory +# and has some sane "this field is unknown" (e.g. "NOASSERTION") +# + +class SPDXAnnotation(SPDXObject): + annotationDate = _String() + annotationType = _String() + annotator = _String() + comment = _String() class SPDXChecksum(SPDXObject): algorithm = _String() @@ -164,6 +227,7 @@ class SPDXPackage(SPDXObject): packageVerificationCode = _Object(SPDXPackageVerificationCode) hasFiles = _StringList() packageFileName = _String() + annotations = _ObjectList(SPDXAnnotation) class SPDXFile(SPDXObject): diff --git a/poky/meta/lib/oe/sstatesig.py b/poky/meta/lib/oe/sstatesig.py index dd6b9de7b..0c3b4589c 100644 --- a/poky/meta/lib/oe/sstatesig.py +++ b/poky/meta/lib/oe/sstatesig.py @@ -108,7 +108,6 @@ class SignatureGeneratorOEBasicHashMixIn(object): self.unlockedrecipes = (data.getVar("SIGGEN_UNLOCKED_RECIPES") or "").split() self.unlockedrecipes = { k: "" for k in self.unlockedrecipes } - self.buildarch = data.getVar('BUILD_ARCH') self._internal = False pass @@ -147,13 +146,6 @@ class SignatureGeneratorOEBasicHashMixIn(object): self.dump_lockedsigs(sigfile) return super(bb.siggen.SignatureGeneratorBasicHash, self).dump_sigs(dataCache, options) - def prep_taskhash(self, tid, deps, dataCaches): - super().prep_taskhash(tid, deps, dataCaches) - if hasattr(self, "extramethod"): - (mc, _, _, fn) = bb.runqueue.split_tid_mcfn(tid) - inherits = " ".join(dataCaches[mc].inherits[fn]) - if inherits.find("/native.bbclass") != -1 or inherits.find("/cross.bbclass") != -1: - self.extramethod[tid] = ":" + self.buildarch def get_taskhash(self, tid, deps, dataCaches): if tid in self.lockedhashes: @@ -478,6 +470,8 @@ def OEOuthashBasic(path, sigfile, task, d): import stat import pwd import grp + import re + import fnmatch def update_hash(s): s = s.encode('utf-8') @@ -487,6 +481,8 @@ def OEOuthashBasic(path, sigfile, task, d): h = hashlib.sha256() prev_dir = os.getcwd() + corebase = d.getVar("COREBASE") + tmpdir = d.getVar("TMPDIR") include_owners = os.environ.get('PSEUDO_DISABLED') == '0' if "package_write_" in task or task == "package_qa": include_owners = False @@ -497,8 +493,17 @@ def OEOuthashBasic(path, sigfile, task, d): include_root = False extra_content = d.getVar('HASHEQUIV_HASH_VERSION') + filemaps = {} + for m in (d.getVar('SSTATE_HASHEQUIV_FILEMAP') or '').split(): + entry = m.split(":") + if len(entry) != 3 or entry[0] != task: + continue + filemaps.setdefault(entry[1], []) + filemaps[entry[1]].append(entry[2]) + try: os.chdir(path) + basepath = os.path.normpath(path) update_hash("OEOuthashBasic\n") if extra_content: @@ -580,8 +585,13 @@ def OEOuthashBasic(path, sigfile, task, d): else: update_hash(" " * 9) + filterfile = False + for entry in filemaps: + if fnmatch.fnmatch(path, entry): + filterfile = True + update_hash(" ") - if stat.S_ISREG(s.st_mode): + if stat.S_ISREG(s.st_mode) and not filterfile: update_hash("%10d" % s.st_size) else: update_hash(" " * 10) @@ -590,9 +600,24 @@ def OEOuthashBasic(path, sigfile, task, d): fh = hashlib.sha256() if stat.S_ISREG(s.st_mode): # Hash file contents - with open(path, 'rb') as d: - for chunk in iter(lambda: d.read(4096), b""): + if filterfile: + # Need to ignore paths in crossscripts and postinst-useradd files. + with open(path, 'rb') as d: + chunk = d.read() + chunk = chunk.replace(bytes(basepath, encoding='utf8'), b'') + for entry in filemaps: + if not fnmatch.fnmatch(path, entry): + continue + for r in filemaps[entry]: + if r.startswith("regex-"): + chunk = re.sub(bytes(r[6:], encoding='utf8'), b'', chunk) + else: + chunk = chunk.replace(bytes(r, encoding='utf8'), b'') fh.update(chunk) + else: + with open(path, 'rb') as d: + for chunk in iter(lambda: d.read(4096), b""): + fh.update(chunk) update_hash(fh.hexdigest()) else: update_hash(" " * len(fh.hexdigest())) diff --git a/poky/meta/lib/oeqa/selftest/cases/bbtests.py b/poky/meta/lib/oeqa/selftest/cases/bbtests.py index 8831de606..656236407 100644 --- a/poky/meta/lib/oeqa/selftest/cases/bbtests.py +++ b/poky/meta/lib/oeqa/selftest/cases/bbtests.py @@ -83,8 +83,10 @@ class BitbakeTests(OESelftestTestCase): def test_force_task_1(self): # test 1 from bug 5875 + import uuid test_recipe = 'zlib' - test_data = "Microsoft Made No Profit From Anyone's Zunes Yo" + # Need to use uuid otherwise hash equivlance would change the workflow + test_data = "Microsoft Made No Profit From Anyone's Zunes Yo %s" % uuid.uuid1() bb_vars = get_bb_vars(['D', 'PKGDEST', 'mandir'], test_recipe) image_dir = bb_vars['D'] pkgsplit_dir = bb_vars['PKGDEST'] diff --git a/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py b/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py index 4fc3605f4..c809d7c9b 100644 --- a/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py +++ b/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py @@ -43,6 +43,12 @@ class oeGoToolchainSelfTest(OESelftestTestCase): @classmethod def tearDownClass(cls): + # Go creates file which are readonly + for dirpath, dirnames, filenames in os.walk(cls.tmpdir_SDKQA): + for filename in filenames + dirnames: + f = os.path.join(dirpath, filename) + if not os.path.islink(f): + os.chmod(f, 0o775) shutil.rmtree(cls.tmpdir_SDKQA, ignore_errors=True) super(oeGoToolchainSelfTest, cls).tearDownClass() diff --git a/poky/meta/lib/oeqa/selftest/cases/tinfoil.py b/poky/meta/lib/oeqa/selftest/cases/tinfoil.py index 51092805d..8fd48bb05 100644 --- a/poky/meta/lib/oeqa/selftest/cases/tinfoil.py +++ b/poky/meta/lib/oeqa/selftest/cases/tinfoil.py @@ -94,14 +94,13 @@ class TinfoilTests(OESelftestTestCase): pass pattern = 'conf' - res = tinfoil.run_command('findFilesMatchingInDir', pattern, 'conf/machine') + res = tinfoil.run_command('testCookerCommandEvent', pattern) self.assertTrue(res) eventreceived = False commandcomplete = False start = time.time() # Wait for maximum 60s in total so we'd detect spurious heartbeat events for example - # The test is IO load sensitive too while (not (eventreceived == True and commandcomplete == True) and (time.time() - start < 60)): # if we received both events (on let's say a good day), we are done @@ -111,7 +110,8 @@ class TinfoilTests(OESelftestTestCase): commandcomplete = True elif isinstance(event, bb.event.FilesMatchingFound): self.assertEqual(pattern, event._pattern) - self.assertIn('qemuarm.conf', event._matches) + self.assertIn('A', event._matches) + self.assertIn('B', event._matches) eventreceived = True elif isinstance(event, logging.LogRecord): continue diff --git a/poky/meta/lib/oeqa/selftest/cases/wic.py b/poky/meta/lib/oeqa/selftest/cases/wic.py index dc7b9e637..5fc8e6514 100644 --- a/poky/meta/lib/oeqa/selftest/cases/wic.py +++ b/poky/meta/lib/oeqa/selftest/cases/wic.py @@ -1158,6 +1158,35 @@ class Wic2(WicTestCase): out = glob(self.resultdir + "%s-*.direct" % wksname) self.assertEqual(1, len(out)) + @only_for_arch(['i586', 'i686', 'x86_64']) + def test_efi_plugin_unified_kernel_image_qemu(self): + """Test efi plugin's Unified Kernel Image feature in qemu""" + config = 'IMAGE_FSTYPES = "wic"\n'\ + 'INITRAMFS_IMAGE = "core-image-minimal-initramfs"\n'\ + 'WKS_FILE = "test_efi_plugin.wks"\n'\ + 'MACHINE_FEATURES:append = " efi"\n' + self.append_config(config) + self.assertEqual(0, bitbake('core-image-minimal core-image-minimal-initramfs ovmf').status) + self.remove_config(config) + + with runqemu('core-image-minimal', ssh=False, + runqemuparams='ovmf', image_fstype='wic') as qemu: + # Check that /boot has EFI bootx64.efi (required for EFI) + cmd = "ls /boot/EFI/BOOT/bootx64.efi | wc -l" + status, output = qemu.run_serial(cmd) + self.assertEqual(1, status, 'Failed to run command "%s": %s' % (cmd, output)) + self.assertEqual(output, '1') + # Check that /boot has EFI/Linux/linux.efi (required for Unified Kernel Images auto detection) + cmd = "ls /boot/EFI/Linux/linux.efi | wc -l" + status, output = qemu.run_serial(cmd) + self.assertEqual(1, status, 'Failed to run command "%s": %s' % (cmd, output)) + self.assertEqual(output, '1') + # Check that /boot doesn't have loader/entries/boot.conf (Unified Kernel Images are auto detected by the bootloader) + cmd = "ls /boot/loader/entries/boot.conf 2&>/dev/null | wc -l" + status, output = qemu.run_serial(cmd) + self.assertEqual(1, status, 'Failed to run command "%s": %s' % (cmd, output)) + self.assertEqual(output, '0') + def test_fs_types(self): """Test filesystem types for empty and not empty partitions""" img = 'core-image-minimal' diff --git a/poky/meta/lib/oeqa/utils/buildproject.py b/poky/meta/lib/oeqa/utils/buildproject.py index e6d80cc8d..dfb966186 100644 --- a/poky/meta/lib/oeqa/utils/buildproject.py +++ b/poky/meta/lib/oeqa/utils/buildproject.py @@ -18,6 +18,7 @@ class BuildProject(metaclass=ABCMeta): def __init__(self, uri, foldername=None, tmpdir=None, dl_dir=None): self.uri = uri self.archive = os.path.basename(uri) + self.tempdirobj = None if not tmpdir: self.tempdirobj = tempfile.TemporaryDirectory(prefix='buildproject-') tmpdir = self.tempdirobj.name @@ -57,6 +58,8 @@ class BuildProject(metaclass=ABCMeta): return self._run('cd %s; make install %s' % (self.targetdir, install_args)) def clean(self): + if self.tempdirobj: + self.tempdirobj.cleanup() if not self.needclean: return self._run('rm -rf %s' % self.targetdir) diff --git a/poky/meta/lib/oeqa/utils/qemurunner.py b/poky/meta/lib/oeqa/utils/qemurunner.py index d55248c49..d961a9a21 100644 --- a/poky/meta/lib/oeqa/utils/qemurunner.py +++ b/poky/meta/lib/oeqa/utils/qemurunner.py @@ -265,7 +265,7 @@ class QemuRunner: r = os.fdopen(r) x = r.read() os.killpg(os.getpgid(self.runqemu.pid), signal.SIGTERM) - sys.exit(0) + os._exit(0) self.logger.debug("runqemu started, pid is %s" % self.runqemu.pid) self.logger.debug("waiting at most %s seconds for qemu pid (%s)" % diff --git a/poky/meta/lib/oeqa/utils/targetbuild.py b/poky/meta/lib/oeqa/utils/targetbuild.py index 1055810ca..09738add1 100644 --- a/poky/meta/lib/oeqa/utils/targetbuild.py +++ b/poky/meta/lib/oeqa/utils/targetbuild.py @@ -19,6 +19,7 @@ class BuildProject(metaclass=ABCMeta): self.d = d self.uri = uri self.archive = os.path.basename(uri) + self.tempdirobj = None if not tmpdir: tmpdir = self.d.getVar('WORKDIR') if not tmpdir: @@ -71,9 +72,10 @@ class BuildProject(metaclass=ABCMeta): return self._run('cd %s; make install %s' % (self.targetdir, install_args)) def clean(self): + if self.tempdirobj: + self.tempdirobj.cleanup() self._run('rm -rf %s' % self.targetdir) subprocess.check_call('rm -f %s' % self.localarchive, shell=True) - pass class TargetBuildProject(BuildProject): diff --git a/poky/meta/recipes-connectivity/inetutils/inetutils/CVE-2021-40491.patch b/poky/meta/recipes-connectivity/inetutils/inetutils/CVE-2021-40491.patch new file mode 100644 index 000000000..202488f75 --- /dev/null +++ b/poky/meta/recipes-connectivity/inetutils/inetutils/CVE-2021-40491.patch @@ -0,0 +1,88 @@ +From 98ccabf68e5b3f0a177bd1925581753d10041448 Mon Sep 17 00:00:00 2001 +From: Simon Josefsson <simon@josefsson.org> +Date: Wed, 1 Sep 2021 09:09:50 +0200 +Subject: [PATCH] ftp: check that PASV/LSPV addresses match. + +* NEWS: Mention change. +* ftp/ftp.c (initconn): Validate returned addresses. + +CVE: CVE-2021-40491 + +Upstream-Status: Backport +[https://git.savannah.gnu.org/cgit/inetutils.git/commit/?id=58cb043b190fd04effdaea7c9403416b436e50dd] + +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> +--- + NEWS | 9 +++++++++ + ftp/ftp.c | 21 +++++++++++++++++++++ + 2 files changed, 30 insertions(+) + +diff --git a/NEWS b/NEWS +index 7c5e62c..bd9a4da 100644 +--- a/NEWS ++++ b/NEWS +@@ -4,6 +4,15 @@ GNU inetutils NEWS -- history of user-visible changes. + + ** ftp + ++The ftp client now validate addresses returned by PASV/LSPV responses, ++to make sure they match the server address. Reported by ZeddYu Lu in ++<https://lists.gnu.org/archive/html/bug-inetutils/2021-06/msg00002.html>. ++ ++Thanks to Luke Mewburn <lukem@netbsd.org> for discussion and fix to ++NetBSD code, we used a similar solution. ++ ++** ftp ++ + Disable use of readline when environment variable TERM is unset or set + to "dumb" (caused problems with Emacs AngeFTP on MacOS). Thanks to + Alex Bochannek for report, debugging and patch. +diff --git a/ftp/ftp.c b/ftp/ftp.c +index d21dbdd..7513539 100644 +--- a/ftp/ftp.c ++++ b/ftp/ftp.c +@@ -1365,6 +1365,13 @@ initconn (void) + uint32_t *pu32 = (uint32_t *) &data_addr_sa4->sin_addr.s_addr; + pu32[0] = htonl ( (h[0] << 24) | (h[1] << 16) | (h[2] << 8) | h[3]); + } ++ if (data_addr_sa4->sin_addr.s_addr ++ != ((struct sockaddr_in *) &hisctladdr)->sin_addr.s_addr) ++ { ++ printf ("Passive mode address mismatch.\n"); ++ (void) command ("ABOR"); /* Cancel any open connection. */ ++ goto bad; ++ } + } /* LPSV IPv4 */ + else /* IPv6 */ + { +@@ -1395,6 +1402,13 @@ initconn (void) + pu32[2] = htonl ( (h[8] << 24) | (h[9] << 16) | (h[10] << 8) | h[11]); + pu32[3] = htonl ( (h[12] << 24) | (h[13] << 16) | (h[14] << 8) | h[15]); + } ++ if (data_addr_sa6->sin6_addr.s6_addr ++ != ((struct sockaddr_in6 *) &hisctladdr)->sin6_addr.s6_addr) ++ { ++ printf ("Passive mode address mismatch.\n"); ++ (void) command ("ABOR"); /* Cancel any open connection. */ ++ goto bad; ++ } + } /* LPSV IPv6 */ + } + else /* !EPSV && !LPSV */ +@@ -1415,6 +1429,13 @@ initconn (void) + | ((a2 & 0xff) << 8) | (a3 & 0xff) ); + data_addr_sa4->sin_port = + htons (((p0 & 0xff) << 8) | (p1 & 0xff)); ++ if (data_addr_sa4->sin_addr.s_addr ++ != ((struct sockaddr_in *) &hisctladdr)->sin_addr.s_addr) ++ { ++ printf ("Passive mode address mismatch.\n"); ++ (void) command ("ABOR"); /* Cancel any open connection. */ ++ goto bad; ++ } + } /* PASV */ + else + { +-- +2.17.1 + diff --git a/poky/meta/recipes-connectivity/inetutils/inetutils_2.1.bb b/poky/meta/recipes-connectivity/inetutils/inetutils_2.1.bb index 0cf73cdb2..45b88b1d7 100644 --- a/poky/meta/recipes-connectivity/inetutils/inetutils_2.1.bb +++ b/poky/meta/recipes-connectivity/inetutils/inetutils_2.1.bb @@ -21,6 +21,7 @@ SRC_URI = "${GNU_MIRROR}/inetutils/inetutils-${PV}.tar.xz \ file://tftpd.xinetd.inetutils \ file://inetutils-1.9-PATH_PROCNET_DEV.patch \ file://inetutils-only-check-pam_appl.h-when-pam-enabled.patch \ + file://CVE-2021-40491.patch \ " inherit autotools gettext update-alternatives texinfo diff --git a/poky/meta/recipes-core/ovmf/ovmf_git.bb b/poky/meta/recipes-core/ovmf/ovmf_git.bb index 4caf258e3..5d54bad47 100644 --- a/poky/meta/recipes-core/ovmf/ovmf_git.bb +++ b/poky/meta/recipes-core/ovmf/ovmf_git.bb @@ -10,7 +10,10 @@ LIC_FILES_CHKSUM = "file://OvmfPkg/License.txt;md5=06357ddc23f46577c2aeaeaf7b776 # compiling OVMF twice, so it is disabled by default. Distros # may change that default. PACKAGECONFIG ??= "" +PACKAGECONFIG += "${@bb.utils.contains('MACHINE_FEATURES', 'tpm', 'tpm', '', d)}" +PACKAGECONFIG += "${@bb.utils.contains('MACHINE_FEATURES', 'tpm2', 'tpm', '', d)}" PACKAGECONFIG[secureboot] = ",,," +PACKAGECONFIG[tpm] = "-D TPM_ENABLE=TRUE,-D TPM_ENABLE=FALSE,," SRC_URI = "gitsm://github.com/tianocore/edk2.git;branch=master;protocol=https \ file://0001-ovmf-update-path-to-native-BaseTools.patch \ @@ -186,7 +189,7 @@ do_compile:class-target() { bbnote "Building without Secure Boot." rm -rf ${S}/Build/Ovmf$OVMF_DIR_SUFFIX - ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER} + ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER} ${PACKAGECONFIG_CONFARGS} ln ${build_dir}/FV/OVMF.fd ${WORKDIR}/ovmf/ovmf.fd ln ${build_dir}/FV/OVMF_CODE.fd ${WORKDIR}/ovmf/ovmf.code.fd ln ${build_dir}/FV/OVMF_VARS.fd ${WORKDIR}/ovmf/ovmf.vars.fd @@ -196,7 +199,7 @@ do_compile:class-target() { # Repeat build with the Secure Boot flags. bbnote "Building with Secure Boot." rm -rf ${S}/Build/Ovmf$OVMF_DIR_SUFFIX - ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER} ${OVMF_SECURE_BOOT_FLAGS} + ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER} ${PACKAGECONFIG_CONFARGS} ${OVMF_SECURE_BOOT_FLAGS} ln ${build_dir}/FV/OVMF.fd ${WORKDIR}/ovmf/ovmf.secboot.fd ln ${build_dir}/FV/OVMF_CODE.fd ${WORKDIR}/ovmf/ovmf.secboot.code.fd ln ${build_dir}/${OVMF_ARCH}/EnrollDefaultKeys.efi ${WORKDIR}/ovmf/ diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb index 663a9cd57..84eb46b9c 100644 --- a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb +++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb @@ -36,6 +36,7 @@ SYSTEMTAP = "systemtap" SYSTEMTAP:libc-musl = "" SYSTEMTAP:nios2 = "" SYSTEMTAP:riscv64 = "" +SYSTEMTAP:riscv32 = "" LTTNGTOOLS = "lttng-tools" LTTNGTOOLS:arc = "" diff --git a/poky/meta/recipes-core/util-linux/util-linux_2.37.2.bb b/poky/meta/recipes-core/util-linux/util-linux_2.37.2.bb index 6f2808cc4..d609c3006 100644 --- a/poky/meta/recipes-core/util-linux/util-linux_2.37.2.bb +++ b/poky/meta/recipes-core/util-linux/util-linux_2.37.2.bb @@ -37,12 +37,13 @@ python util_linux_binpackages () { continue pkg = os.path.basename(os.readlink(file)) - extras[pkg] = extras.get(pkg, '') + ' ' + file.replace(dvar, '', 1) + extras.setdefault(pkg, []) + extras[pkg].append(file.replace(dvar, '', 1)) pn = d.getVar('PN') for pkg, links in extras.items(): of = d.getVar('FILES:' + pn + '-' + pkg) - links = of + links + links = of + " " + " ".join(sorted(links)) d.setVar('FILES:' + pn + '-' + pkg, links) } diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb index 9ea4de8e4..f4769e363 100644 --- a/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb +++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb @@ -34,7 +34,6 @@ SRC_URI[sha256sum] = "dc8d3e74ab209465e7f568e1b3bb9a5a142f8656e2b57d10049a73da2a # remove at next version upgrade or when output changes PR = "r1" -HASHEQUIV_HASH_VERSION .= ".2" inherit autotools gettext ptest pkgconfig diff --git a/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc b/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc index 6748d7468..7104c98c2 100644 --- a/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc +++ b/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc @@ -24,6 +24,7 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \ file://0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch \ file://0001-Makefile.am-make-sure-autoheader-run-before-automake.patch \ file://lto-prefix.patch \ + file://debian-no_hostname.patch \ " SRC_URI[md5sum] = "addf44b646ddb4e3919805aa88fa7c5e" diff --git a/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb b/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb index 95bbc875f..fb40ce731 100644 --- a/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb +++ b/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb @@ -1,6 +1,6 @@ require libtool-${PV}.inc -SRC_URI += "file://multilib.patch file://debian-no_hostname.patch" +SRC_URI += "file://multilib.patch" RDEPENDS:${PN} += "bash" diff --git a/poky/meta/recipes-devtools/perl/perl_5.34.0.bb b/poky/meta/recipes-devtools/perl/perl_5.34.0.bb index 0e0fe7f98..175db4ee3 100644 --- a/poky/meta/recipes-devtools/perl/perl_5.34.0.bb +++ b/poky/meta/recipes-devtools/perl/perl_5.34.0.bb @@ -385,3 +385,10 @@ EOF chmod 0755 ${SYSROOT_DESTDIR}${bindir}/nativeperl cat ${SYSROOT_DESTDIR}${bindir}/nativeperl } + +SSTATE_HASHEQUIV_FILEMAP = " \ + populate_sysroot:*/lib*/perl5/*/*/Config_heavy.pl:${TMPDIR} \ + populate_sysroot:*/lib*/perl5/*/*/Config_heavy.pl:${COREBASE} \ + populate_sysroot:*/lib*/perl5/config.sh:${TMPDIR} \ + populate_sysroot:*/lib*/perl5/config.sh:${COREBASE} \ + " diff --git a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb index a9ea8b4ef..7acb1d64d 100644 --- a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb +++ b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb @@ -13,7 +13,7 @@ SRC_URI:append:class-nativesdk = " \ file://older-glibc-symbols.patch" SRC_URI[prebuilt.sha256sum] = "ed9f456856e9d86359f169f46a70ad7be4190d6040282b84c8d97b99072485aa" -SRCREV = "21ff2fb690efbe57e7dd867c39aff36ab72a6ac5" +SRCREV = "0cda3ba5f94aed8d50652a99ee9c502975aa2926" S = "${WORKDIR}/git" PV = "1.9.0+git${SRCPV}" diff --git a/poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py b/poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py index c4164313e..5e2b12879 100644 --- a/poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py +++ b/poky/meta/recipes-devtools/python/python3/reformat_sysconfig.py @@ -16,6 +16,6 @@ with open(sys.argv[1], 'r') as f: with open(sys.argv[1], 'w') as f: for k in sorted(l.keys()): f.write('%s = ' % k) - pprint.pprint(l[k], stream=f, width=sys.maxsize) + pprint.pprint(l[k], stream=f, width=1) f.write('\n') diff --git a/poky/meta/recipes-devtools/python/python3_3.9.6.bb b/poky/meta/recipes-devtools/python/python3_3.9.6.bb index f04bfc305..8a638b142 100644 --- a/poky/meta/recipes-devtools/python/python3_3.9.6.bb +++ b/poky/meta/recipes-devtools/python/python3_3.9.6.bb @@ -161,6 +161,11 @@ do_install:append:class-native() { } do_install:append() { + for c in ${D}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py; do + python3 ${WORKDIR}/reformat_sysconfig.py $c + done + rm ${D}${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata*.cpython* + mkdir -p ${D}${libdir}/python-sysconfigdata sysconfigfile=`find ${D} -name _sysconfig*.py` cp $sysconfigfile ${D}${libdir}/python-sysconfigdata/_sysconfigdata.py @@ -191,6 +196,14 @@ do_install:append:class-nativesdk () { } SSTATE_SCAN_FILES += "Makefile _sysconfigdata.py" +SSTATE_HASHEQUIV_FILEMAP = " \ + populate_sysroot:*/lib*/python3*/_sysconfigdata*.py:${TMPDIR} \ + populate_sysroot:*/lib*/python3*/_sysconfigdata*.py:${COREBASE} \ + populate_sysroot:*/lib*/python3*/config-*/Makefile:${TMPDIR} \ + populate_sysroot:*/lib*/python3*/config-*/Makefile:${COREBASE} \ + populate_sysroot:*/lib*/python-sysconfigdata/_sysconfigdata.py:${TMPDIR} \ + populate_sysroot:*/lib*/python-sysconfigdata/_sysconfigdata.py:${COREBASE} \ + " PACKAGE_PREPROCESS_FUNCS += "py_package_preprocess" py_package_preprocess () { diff --git a/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb b/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb index a0448a180..97b44ad2e 100644 --- a/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb +++ b/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb @@ -18,6 +18,7 @@ do_install () { cat >> ${D}${bindir_crossscripts}/${MLPREFIX}qemuwrapper << EOF #!/bin/sh +# Wrapper script to run binaries under qemu user-mode emulation set -x if [ ${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'True', 'False', d)} = False -a "${PN}" != "nativesdk-qemuwrapper-cross" ]; then diff --git a/poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch b/poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch new file mode 100644 index 000000000..79b168257 --- /dev/null +++ b/poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch @@ -0,0 +1,28 @@ +From 2d351c666f09cc1b9e368422653fb42ac8b86249 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex@linutronix.de> +Date: Tue, 31 Aug 2021 10:37:05 +0200 +Subject: [PATCH] build/pack.c: do not insert payloadflags into .rpm metadata + +The flags look like '19T56' where 19 is the compression level +(deterministic), and 56 is the amount of threads (varies from one +host to the next and breaks reproducibility for .rpm). + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin <alex@linutronix.de> +--- + build/pack.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build/pack.c b/build/pack.c +index 932cb213e..b45d0726f 100644 +--- a/build/pack.c ++++ b/build/pack.c +@@ -328,7 +328,7 @@ static char *getIOFlags(Package pkg) + headerPutString(pkg->header, RPMTAG_PAYLOADCOMPRESSOR, compr); + buf = xstrdup(rpmio_flags); + buf[s - rpmio_flags] = '\0'; +- headerPutString(pkg->header, RPMTAG_PAYLOADFLAGS, buf+1); ++ headerPutString(pkg->header, RPMTAG_PAYLOADFLAGS, ""); + free(buf); + } + exit: diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb b/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb index 189da9243..2ff9c2b11 100644 --- a/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb +++ b/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb @@ -40,6 +40,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.16.x \ file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \ file://0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch \ file://0001-tools-Add-error.h-for-non-glibc-case.patch \ + file://0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch \ " PE = "1" @@ -194,3 +195,8 @@ rpm_package_preprocess () { sed -i -e 's:--sysroot[^ ]*::g' \ ${PKGD}/${libdir}/rpm/macros } + +SSTATE_HASHEQUIV_FILEMAP = " \ + populate_sysroot:*/rpm/macros:${TMPDIR} \ + populate_sysroot:*/rpm/macros:${COREBASE} \ + " diff --git a/poky/meta/recipes-devtools/ruby/ruby/0003-rdoc-build-reproducible-documentation.patch b/poky/meta/recipes-devtools/ruby/ruby/0003-rdoc-build-reproducible-documentation.patch new file mode 100644 index 000000000..f92f0e1ba --- /dev/null +++ b/poky/meta/recipes-devtools/ruby/ruby/0003-rdoc-build-reproducible-documentation.patch @@ -0,0 +1,35 @@ +From: Christian Hofstaedtler <zeha@debian.org> +Date: Tue, 10 Oct 2017 15:04:34 -0300 +Subject: rdoc: build reproducible documentation + +- provide a fixed timestamp to the gzip compression + +Upstream-Status: Backport [debian] + +Signed-off-by: Antonio Terceiro <terceiro@debian.org> +Signed-off-by: Christian Hofstaedtler <zeha@debian.org> +--- + lib/rdoc/generator/json_index.rb | 4 ++-- + lib/rdoc/rdoc.rb | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +--- a/lib/rdoc/generator/json_index.rb ++++ b/lib/rdoc/generator/json_index.rb +@@ -178,7 +178,7 @@ + debug_msg "Writing gzipped search index to %s" % outfile + + Zlib::GzipWriter.open(outfile) do |gz| +- gz.mtime = File.mtime(search_index_file) ++ gz.mtime = -1 + gz.orig_name = search_index_file.basename.to_s + gz.write search_index + gz.close +@@ -196,7 +196,7 @@ + debug_msg "Writing gzipped file to %s" % outfile + + Zlib::GzipWriter.open(outfile) do |gz| +- gz.mtime = File.mtime(dest) ++ gz.mtime = -1 + gz.orig_name = dest.basename.to_s + gz.write data + gz.close diff --git a/poky/meta/recipes-devtools/ruby/ruby/0004-lib-mkmf.rb-sort-list-of-object-files-in-generated-M.patch b/poky/meta/recipes-devtools/ruby/ruby/0004-lib-mkmf.rb-sort-list-of-object-files-in-generated-M.patch new file mode 100644 index 000000000..e0aca0dcf --- /dev/null +++ b/poky/meta/recipes-devtools/ruby/ruby/0004-lib-mkmf.rb-sort-list-of-object-files-in-generated-M.patch @@ -0,0 +1,28 @@ +From: Reiner Herrmann <reiner@reiner-h.de> +Date: Tue, 10 Oct 2017 15:06:13 -0300 +Subject: lib/mkmf.rb: sort list of object files in generated Makefile + +Without sorting the list explicitly, its order is indeterministic, +because readdir() is also not deterministic. +When the list of object files varies between builds, they are linked +in a different order, which results in an unreproducible build. + +Upstream-Status: Backport [debian] + +Signed-off-by: Antonio Terceiro <terceiro@debian.org> +Signed-off-by: Reiner Herrmann <reiner@reiner-h.de> +--- + lib/mkmf.rb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/lib/mkmf.rb ++++ b/lib/mkmf.rb +@@ -2315,7 +2315,7 @@ + LIBS = #{$LIBRUBYARG} #{$libs} #{$LIBS} + ORIG_SRCS = #{orig_srcs.collect(&File.method(:basename)).join(' ')} + SRCS = $(ORIG_SRCS) #{(srcs - orig_srcs).collect(&File.method(:basename)).join(' ')} +-OBJS = #{$objs.join(" ")} ++OBJS = #{$objs.sort.join(" ")} + HDRS = #{hdrs.map{|h| '$(srcdir)/' + File.basename(h)}.join(' ')} + LOCAL_HDRS = #{$headers.join(' ')} + TARGET = #{target} diff --git a/poky/meta/recipes-devtools/ruby/ruby/0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch b/poky/meta/recipes-devtools/ruby/ruby/0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch new file mode 100644 index 000000000..b7faa5865 --- /dev/null +++ b/poky/meta/recipes-devtools/ruby/ruby/0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch @@ -0,0 +1,28 @@ +From: Christian Hofstaedtler <zeha@debian.org> +Date: Tue, 10 Oct 2017 15:07:11 -0300 +Subject: Mark Gemspec-reproducible change fixing #784225, too + +I think the UTC date change will fix the Multi-Arch not-same file issue, +too. + +Upstream-Status: Backport [debian] + +Signed-off-by: Antonio Terceiro <terceiro@debian.org> +Signed-off-by: Christian Hofstaedtler <zeha@debian.org> +--- + lib/rubygems/specification.rb | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- a/lib/rubygems/specification.rb ++++ b/lib/rubygems/specification.rb +@@ -1695,7 +1695,9 @@ + raise(Gem::InvalidSpecificationException, + "invalid date format in specification: #{date.inspect}") + end +- when Time, DateLike then ++ when Time then ++ Time.utc(date.utc.year, date.utc.month, date.utc.day) ++ when DateLike then + Time.utc(date.year, date.month, date.day) + else + TODAY diff --git a/poky/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch b/poky/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch new file mode 100644 index 000000000..504893b4b --- /dev/null +++ b/poky/meta/recipes-devtools/ruby/ruby/0006-Make-gemspecs-reproducible.patch @@ -0,0 +1,67 @@ +From: Lucas Kanashiro <kanashiro@debian.org> +Date: Fri, 1 Nov 2019 15:25:17 -0300 +Subject: Make gemspecs reproducible + +Without an explicit date, they will get the current date and make the +build unreproducible + +Upstream-Status: Backport [debian] + +--- + ext/bigdecimal/bigdecimal.gemspec | 1 + + ext/fiddle/fiddle.gemspec | 1 + + ext/io/console/io-console.gemspec | 2 +- + lib/ipaddr.gemspec | 1 + + lib/rdoc/rdoc.gemspec | 1 + + 5 files changed, 5 insertions(+), 1 deletion(-) + +--- a/ext/bigdecimal/bigdecimal.gemspec ++++ b/ext/bigdecimal/bigdecimal.gemspec +@@ -6,6 +6,7 @@ + s.name = "bigdecimal" + s.version = bigdecimal_version + s.authors = ["Kenta Murata", "Zachary Scott", "Shigeo Kobayashi"] ++ s.date = RUBY_RELEASE_DATE + s.email = ["mrkn@mrkn.jp"] + + s.summary = "Arbitrary-precision decimal floating-point number library." +--- a/ext/fiddle/fiddle.gemspec ++++ b/ext/fiddle/fiddle.gemspec +@@ -8,6 +8,7 @@ + Gem::Specification.new do |spec| + spec.name = "fiddle" + spec.version = version_module::Fiddle::VERSION ++ spec.date = RUBY_RELEASE_DATE + spec.authors = ["Aaron Patterson", "SHIBATA Hiroshi"] + spec.email = ["aaron@tenderlovemaking.com", "hsbt@ruby-lang.org"] + +--- a/ext/io/console/io-console.gemspec ++++ b/ext/io/console/io-console.gemspec +@@ -4,6 +4,7 @@ + Gem::Specification.new do |s| + s.name = "io-console" + s.version = _VERSION ++ s.date = RUBY_RELEASE_DATE + s.summary = "Console interface" + s.email = "nobu@ruby-lang.org" + s.description = "add console capabilities to IO instances." +--- a/lib/ipaddr.gemspec ++++ b/lib/ipaddr.gemspec +@@ -6,6 +6,7 @@ + Gem::Specification.new do |spec| + spec.name = "ipaddr" + spec.version = "1.2.2" ++ spec.date = RUBY_RELEASE_DATE + spec.authors = ["Akinori MUSHA", "Hajimu UMEMOTO"] + spec.email = ["knu@idaemons.org", "ume@mahoroba.org"] + +--- a/lib/rdoc/rdoc.gemspec ++++ b/lib/rdoc/rdoc.gemspec +@@ -7,6 +7,7 @@ + + Gem::Specification.new do |s| + s.name = "rdoc" ++ s.date = RUBY_RELEASE_DATE + s.version = RDoc::VERSION + + s.authors = [ diff --git a/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb b/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb index 38e594a59..2abf504d9 100644 --- a/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb +++ b/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb @@ -7,6 +7,10 @@ SRC_URI += " \ file://run-ptest \ file://0001-template-Makefile.in-do-not-write-host-cross-cc-item.patch \ file://0002-template-Makefile.in-filter-out-f-prefix-map.patch \ + file://0003-rdoc-build-reproducible-documentation.patch \ + file://0004-lib-mkmf.rb-sort-list-of-object-files-in-generated-M.patch \ + file://0005-Mark-Gemspec-reproducible-change-fixing-784225-too.patch \ + file://0006-Make-gemspecs-reproducible.patch \ " SRC_URI[sha256sum] = "5085dee0ad9f06996a8acec7ebea4a8735e6fac22f22e2d98c3f2bc3bef7e6f1" diff --git a/poky/meta/recipes-devtools/strace/strace_5.13.bb b/poky/meta/recipes-devtools/strace/strace_5.14.bb index 7d93f2da9..02a4843ed 100644 --- a/poky/meta/recipes-devtools/strace/strace_5.13.bb +++ b/poky/meta/recipes-devtools/strace/strace_5.14.bb @@ -15,7 +15,7 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \ file://uintptr_t.patch \ file://0001-strace-fix-reproducibilty-issues.patch \ " -SRC_URI[sha256sum] = "5acc34888b9d510ad6ac915d4a8df08f51cf1ae920ea24649f6a4bb984d0b656" +SRC_URI[sha256sum] = "901bee6db5e17debad4530dd9ffb4dc9a96c4a656edbe1c3141b7cb307b11e73" inherit autotools ptest diff --git a/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb b/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb index 0dd18d7a0..62aa1b0e8 100644 --- a/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb +++ b/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb @@ -28,7 +28,6 @@ SRC_URI[sha256sum] = "4441a5d593f85bb6e8d578cf6653fb4ec30f9e8f4a2315a3d8f2d0a8b3 # remove at next version upgrade or when output changes PR = "r1" -HASHEQUIV_HASH_VERSION .= ".1" RECIPE_NO_UPDATE_REASON = "6.04-pre3 is broken" UPSTREAM_CHECK_URI = "https://www.zytor.com/pub/syslinux/" diff --git a/poky/meta/recipes-extended/bzip2/bzip2/Makefile.am b/poky/meta/recipes-extended/bzip2/bzip2/Makefile.am index 7338df03e..d12d3a45e 100644 --- a/poky/meta/recipes-extended/bzip2/bzip2/Makefile.am +++ b/poky/meta/recipes-extended/bzip2/bzip2/Makefile.am @@ -1,6 +1,6 @@ lib_LTLIBRARIES = libbz2.la -libbz2_la_LDFLAGS = -version-info 1:6:0 +libbz2_la_LDFLAGS = -version-info 1:8:0 libbz2_la_SOURCES = blocksort.c \ huffman.c \ diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb index cf1349f83..b1d3d8abd 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb @@ -93,7 +93,7 @@ EOF # from the target sysroot. cat > ${B}/g-ir-scanner-wrapper << EOF #!/bin/sh -# This prevents g-ir-scanner from writing cache data to $HOME +# This prevents g-ir-scanner from writing cache data to user's HOME dir export GI_SCANNER_DISABLE_CACHE=1 g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 --add-include-path=${STAGING_LIBDIR}/gir-1.0 "\$@" diff --git a/poky/meta/recipes-graphics/glew/glew/notempdir.patch b/poky/meta/recipes-graphics/glew/glew/notempdir.patch new file mode 100644 index 000000000..8d79ce0cd --- /dev/null +++ b/poky/meta/recipes-graphics/glew/glew/notempdir.patch @@ -0,0 +1,19 @@ +We don't use the dist-* targets and hence DIST_DIR isn't used. The current code +creates a new temp directory in /tmp/ for every invocation of make. Lets +not do that. + +Upstream-Status: Pending [a revised version would be needed for upstream] +Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> + +Index: glew-2.2.0/Makefile +=================================================================== +--- glew-2.2.0.orig/Makefile ++++ glew-2.2.0/Makefile +@@ -56,7 +56,6 @@ DIST_SRC_ZIP ?= $(shell pwd)/$(DIST_NAME + DIST_SRC_TGZ ?= $(shell pwd)/$(DIST_NAME).tgz + DIST_WIN32 ?= $(shell pwd)/$(DIST_NAME)-win32.zip + +-DIST_DIR := $(shell mktemp -d /tmp/glew.XXXXXX)/$(DIST_NAME) + + # To disable stripping of linked binaries either: + # - use STRIP= on gmake command-line diff --git a/poky/meta/recipes-graphics/glew/glew_2.2.0.bb b/poky/meta/recipes-graphics/glew/glew_2.2.0.bb index 92b608364..d7a26a343 100644 --- a/poky/meta/recipes-graphics/glew/glew_2.2.0.bb +++ b/poky/meta/recipes-graphics/glew/glew_2.2.0.bb @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ac251558de685c6b9478d89be3149c2" SRC_URI = "${SOURCEFORGE_MIRROR}/project/glew/glew/${PV}/glew-${PV}.tgz \ file://0001-Fix-build-race-in-Makefile.patch \ + file://notempdir.patch \ file://no-strip.patch" SRC_URI[md5sum] = "3579164bccaef09e36c0af7f4fd5c7c7" diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc index 0a7a3ca7b..282671d30 100644 --- a/poky/meta/recipes-graphics/mesa/mesa.inc +++ b/poky/meta/recipes-graphics/mesa/mesa.inc @@ -257,7 +257,7 @@ python mesa_populate_packages() { import re dri_drivers_root = oe.path.join(d.getVar('PKGD'), d.getVar('libdir'), "dri") if os.path.isdir(dri_drivers_root): - dri_pkgs = os.listdir(dri_drivers_root) + dri_pkgs = sorted(os.listdir(dri_drivers_root)) lib_name = d.expand("${MLPREFIX}mesa-megadriver") for p in dri_pkgs: m = re.match(r'^(.*)_dri\.so$', p) diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb b/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb index 091178700..f58b5ab0b 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb @@ -30,7 +30,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto-dev.git;branch=${KBRANCH};name SRCREV_machine ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}' SRCREV_meta ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}' -LINUX_VERSION ?= "5.14+" +LINUX_VERSION ?= "5.15+" LINUX_VERSION_EXTENSION ?= "-yoctodev-${LINUX_KERNEL_TYPE}" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb deleted file mode 100644 index 0b534c3fb..000000000 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb +++ /dev/null @@ -1,45 +0,0 @@ -KBRANCH ?= "v5.13/standard/preempt-rt/base" - -require recipes-kernel/linux/linux-yocto.inc - -# Skip processing of this recipe if it is not explicitly specified as the -# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying -# to build multiple virtual/kernel providers, e.g. as dependency of -# core-image-rt-sdk, core-image-rt. -python () { - if d.getVar("KERNEL_PACKAGE_NAME") == "kernel" and d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-yocto-rt": - raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") -} - -SRCREV_machine ?= "eaf308f87d26c526da01d90bfb3581e2f40e32e7" -SRCREV_meta ?= "c38435a3cacf424fa686ecac9a95ef8349b83bb3" - -SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ - git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}" - -LINUX_VERSION ?= "5.13.15" - -LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" - -DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" -DEPENDS += "openssl-native util-linux-native" - -PV = "${LINUX_VERSION}+git${SRCPV}" - -KMETA = "kernel-meta" -KCONF_BSP_AUDIT_LEVEL = "1" - -LINUX_KERNEL_TYPE = "preempt-rt" - -COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)" - -KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb" - -# Functionality flags -KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc" -KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}" -KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" -KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" -KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" -KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" -KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb deleted file mode 100644 index 5b71d75ae..000000000 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb +++ /dev/null @@ -1,32 +0,0 @@ -KBRANCH ?= "v5.13/standard/tiny/base" -KBRANCH:qemuarm ?= "v5.13/standard/tiny/arm-versatile-926ejs" - -LINUX_KERNEL_TYPE = "tiny" -KCONFIG_MODE = "--allnoconfig" - -require recipes-kernel/linux/linux-yocto.inc - -LINUX_VERSION ?= "5.13.15" -LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" - -DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" -DEPENDS += "openssl-native util-linux-native" - -KMETA = "kernel-meta" -KCONF_BSP_AUDIT_LEVEL = "2" - -SRCREV_machine:qemuarm ?= "94f45ad50950df80adbf1a8e1bbc110abff5bbc4" -SRCREV_machine ?= "3bd6397a9acc2cd13228c09097d61c8d1aa3bbdf" -SRCREV_meta ?= "c38435a3cacf424fa686ecac9a95ef8349b83bb3" - -PV = "${LINUX_VERSION}+git${SRCPV}" - -SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ - git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}" - -COMPATIBLE_MACHINE = "qemux86|qemux86-64|qemuarm|qemuarmv5" - -# Functionality flags -KERNEL_FEATURES = "" - -KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.13.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.13.bb deleted file mode 100644 index a17bddf0f..000000000 --- a/poky/meta/recipes-kernel/linux/linux-yocto_5.13.bb +++ /dev/null @@ -1,68 +0,0 @@ -KBRANCH ?= "v5.13/standard/base" - -require recipes-kernel/linux/linux-yocto.inc - -# board specific branches -KBRANCH:qemuarm ?= "v5.13/standard/arm-versatile-926ejs" -KBRANCH:qemuarm64 ?= "v5.13/standard/qemuarm64" -KBRANCH:qemumips ?= "v5.13/standard/mti-malta32" -KBRANCH:qemuppc ?= "v5.13/standard/qemuppc" -KBRANCH:qemuriscv64 ?= "v5.13/standard/base" -KBRANCH:qemuriscv32 ?= "v5.13/standard/base" -KBRANCH:qemux86 ?= "v5.13/standard/base" -KBRANCH:qemux86-64 ?= "v5.13/standard/base" -KBRANCH:qemumips64 ?= "v5.13/standard/mti-malta64" - -SRCREV_machine:qemuarm ?= "482fd531f2e6ce11c2f2815b90e91452009f18ee" -SRCREV_machine:qemuarm64 ?= "c75650fdc9635f92e0b04c0da0336141f1f8fa54" -SRCREV_machine:qemumips ?= "f8be183487cb429e66e49a2cfd989847c9298a3e" -SRCREV_machine:qemuppc ?= "e55911fc5834f4d5aa527f885cab0ab2a0dbb4b9" -SRCREV_machine:qemuriscv64 ?= "7280c93f5599946db3add473eeb05b34c364938d" -SRCREV_machine:qemuriscv32 ?= "7280c93f5599946db3add473eeb05b34c364938d" -SRCREV_machine:qemux86 ?= "7280c93f5599946db3add473eeb05b34c364938d" -SRCREV_machine:qemux86-64 ?= "7280c93f5599946db3add473eeb05b34c364938d" -SRCREV_machine:qemumips64 ?= "07540093c1a8f876fc6f9410aecc3d7d417780ed" -SRCREV_machine ?= "7280c93f5599946db3add473eeb05b34c364938d" -SRCREV_meta ?= "c38435a3cacf424fa686ecac9a95ef8349b83bb3" - -# set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll -# get the <version>/base branch, which is pure upstream -stable, and the same -# meta SRCREV as the linux-yocto-standard builds. Select your version using the -# normal PREFERRED_VERSION settings. -BBCLASSEXTEND = "devupstream:target" -DEFAULT_PREFERENCE:class-devupstream = "-1" -SRCREV_machine:class-devupstream ?= "b8c3cc76091b35ad6a3d31cfe152870a6467611f" -PN:class-devupstream = "linux-yocto-upstream" -KBRANCH:class-devupstream = "v5.13/base" - -# remap qemuarm to qemuarma15 for the 5.8 kernel -# KMACHINE:qemuarm ?= "qemuarma15" - -SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \ - git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}" - -LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" -LINUX_VERSION ?= "5.13.15" - -DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" -DEPENDS += "openssl-native util-linux-native" -DEPENDS += "gmp-native" - -PV = "${LINUX_VERSION}+git${SRCPV}" - -KMETA = "kernel-meta" -KCONF_BSP_AUDIT_LEVEL = "1" - -KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb" - -COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qemumips|qemumips64|qemux86-64|qemuriscv64|qemuriscv32" - -# Functionality flags -KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" -KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}" -KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc" -KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" -KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" -KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}" -KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}" -KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}" diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0001-fix-cpu-hotplug-Remove-deprecated-CPU-hotplug-functi.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-fix-cpu-hotplug-Remove-deprecated-CPU-hotplug-functi.patch new file mode 100644 index 000000000..4e52e5f12 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-fix-cpu-hotplug-Remove-deprecated-CPU-hotplug-functi.patch @@ -0,0 +1,394 @@ +From 8be4c8a38ee1e297578e094a6e4c143ec5259aba Mon Sep 17 00:00:00 2001 +From: Michael Jeanson <mjeanson@efficios.com> +Date: Mon, 13 Sep 2021 12:00:38 -0400 +Subject: [PATCH 1/2] fix: cpu/hotplug: Remove deprecated CPU-hotplug + functions. (v5.15) + +The CPU-hotplug functions get|put_online_cpus() were deprecated in v4.13 +and removed in v5.15. + +See upstream commits : + +commit 8c854303ce0e38e5bbedd725ff39da7e235865d8 +Author: Sebastian Andrzej Siewior <bigeasy@linutronix.de> +Date: Tue Aug 3 16:16:21 2021 +0200 + + cpu/hotplug: Remove deprecated CPU-hotplug functions. + + No users in tree use the deprecated CPU-hotplug functions anymore. + + Remove them. + +Introduced in v4.13 : + + commit 8f553c498e1772cccb39a114da4a498d22992758 + Author: Thomas Gleixner <tglx@linutronix.de> + Date: Wed May 24 10:15:12 2017 +0200 + + cpu/hotplug: Provide cpus_read|write_[un]lock() + + The counting 'rwsem' hackery of get|put_online_cpus() is going to be + replaced by percpu rwsem. + + Rename the functions to make it clear that it's locking and not some + refcount style interface. These new functions will be used for the + preparatory patches which make the code ready for the percpu rwsem + conversion. + + Rename all instances in the cpu hotplug code while at it. + +Upstream-Status: backport [https://git.lttng.org/?p=lttng-modules.git;a=commit;h=ffcc873470121ef1ebb110df3d9038a38d9cb7cb] + +Change-Id: I5a37cf5afc075a402b7347989fac637dfa60a1ed +Signed-off-by: Michael Jeanson <mjeanson@efficios.com> +Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> +--- + include/wrapper/cpu.h | 44 +++++++++++++++++++++++ + src/lib/ringbuffer/ring_buffer_backend.c | 8 ++--- + src/lib/ringbuffer/ring_buffer_frontend.c | 17 ++++----- + src/lib/ringbuffer/ring_buffer_iterator.c | 15 ++++---- + src/lttng-context-perf-counters.c | 11 +++--- + src/lttng-statedump-impl.c | 6 ++-- + 6 files changed, 74 insertions(+), 27 deletions(-) + create mode 100644 include/wrapper/cpu.h + +diff --git a/include/wrapper/cpu.h b/include/wrapper/cpu.h +new file mode 100644 +index 00000000..cbee1962 +--- /dev/null ++++ b/include/wrapper/cpu.h +@@ -0,0 +1,44 @@ ++/* SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only) ++ * ++ * wrapper/cpu.h ++ * ++ * Copyright (C) 2021 Michael Jeanson <mjeanson@efficios.com> ++ */ ++ ++#ifndef _LTTNG_WRAPPER_CPU_H ++#define _LTTNG_WRAPPER_CPU_H ++ ++#include <linux/cpu.h> ++#include <lttng/kernel-version.h> ++ ++#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) ++ ++static inline ++void lttng_cpus_read_lock(void) ++{ ++ cpus_read_lock(); ++} ++ ++static inline ++void lttng_cpus_read_unlock(void) ++{ ++ cpus_read_unlock(); ++} ++ ++#else /* LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0) */ ++ ++static inline ++void lttng_cpus_read_lock(void) ++{ ++ get_online_cpus(); ++} ++ ++static inline ++void lttng_cpus_read_unlock(void) ++{ ++ put_online_cpus(); ++} ++ ++#endif /* LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0) */ ++ ++#endif /* _LTTNG_WRAPPER_CPU_H */ +diff --git a/src/lib/ringbuffer/ring_buffer_backend.c b/src/lib/ringbuffer/ring_buffer_backend.c +index 26efb2bc..9a339be0 100644 +--- a/src/lib/ringbuffer/ring_buffer_backend.c ++++ b/src/lib/ringbuffer/ring_buffer_backend.c +@@ -12,10 +12,10 @@ + #include <linux/delay.h> + #include <linux/errno.h> + #include <linux/slab.h> +-#include <linux/cpu.h> + #include <linux/mm.h> + #include <linux/vmalloc.h> + ++#include <wrapper/cpu.h> + #include <wrapper/mm.h> + #include <wrapper/vmalloc.h> /* for wrapper_vmalloc_sync_mappings() */ + #include <ringbuffer/config.h> +@@ -445,14 +445,14 @@ int channel_backend_init(struct channel_backend *chanb, + chanb->cpu_hp_notifier.priority = 5; + register_hotcpu_notifier(&chanb->cpu_hp_notifier); + +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_online_cpu(i) { + ret = lib_ring_buffer_create(per_cpu_ptr(chanb->buf, i), + chanb, i); + if (ret) + goto free_bufs; /* cpu hotplug locked */ + } +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + #else + for_each_possible_cpu(i) { + ret = lib_ring_buffer_create(per_cpu_ptr(chanb->buf, i), +@@ -485,7 +485,7 @@ free_bufs: + */ + #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,10,0)) */ + #ifdef CONFIG_HOTPLUG_CPU +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + unregister_hotcpu_notifier(&chanb->cpu_hp_notifier); + #endif + #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,10,0)) */ +diff --git a/src/lib/ringbuffer/ring_buffer_frontend.c b/src/lib/ringbuffer/ring_buffer_frontend.c +index e9056118..87a575d0 100644 +--- a/src/lib/ringbuffer/ring_buffer_frontend.c ++++ b/src/lib/ringbuffer/ring_buffer_frontend.c +@@ -48,6 +48,7 @@ + #include <ringbuffer/iterator.h> + #include <ringbuffer/nohz.h> + #include <wrapper/atomic.h> ++#include <wrapper/cpu.h> + #include <wrapper/kref.h> + #include <wrapper/percpu-defs.h> + #include <wrapper/timer.h> +@@ -724,7 +725,7 @@ static void channel_unregister_notifiers(struct lttng_kernel_ring_buffer_channel + int cpu; + + #ifdef CONFIG_HOTPLUG_CPU +- get_online_cpus(); ++ lttng_cpus_read_lock(); + chan->cpu_hp_enable = 0; + for_each_online_cpu(cpu) { + struct lttng_kernel_ring_buffer *buf = per_cpu_ptr(chan->backend.buf, +@@ -732,7 +733,7 @@ static void channel_unregister_notifiers(struct lttng_kernel_ring_buffer_channel + lib_ring_buffer_stop_switch_timer(buf); + lib_ring_buffer_stop_read_timer(buf); + } +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + unregister_cpu_notifier(&chan->cpu_hp_notifier); + #else + for_each_possible_cpu(cpu) { +@@ -772,14 +773,14 @@ void lib_ring_buffer_set_quiescent_channel(struct lttng_kernel_ring_buffer_chann + const struct lttng_kernel_ring_buffer_config *config = &chan->backend.config; + + if (config->alloc == RING_BUFFER_ALLOC_PER_CPU) { +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_channel_cpu(cpu, chan) { + struct lttng_kernel_ring_buffer *buf = per_cpu_ptr(chan->backend.buf, + cpu); + + lib_ring_buffer_set_quiescent(buf); + } +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + } else { + struct lttng_kernel_ring_buffer *buf = chan->backend.buf; + +@@ -794,14 +795,14 @@ void lib_ring_buffer_clear_quiescent_channel(struct lttng_kernel_ring_buffer_cha + const struct lttng_kernel_ring_buffer_config *config = &chan->backend.config; + + if (config->alloc == RING_BUFFER_ALLOC_PER_CPU) { +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_channel_cpu(cpu, chan) { + struct lttng_kernel_ring_buffer *buf = per_cpu_ptr(chan->backend.buf, + cpu); + + lib_ring_buffer_clear_quiescent(buf); + } +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + } else { + struct lttng_kernel_ring_buffer *buf = chan->backend.buf; + +@@ -899,7 +900,7 @@ struct lttng_kernel_ring_buffer_channel *channel_create(const struct lttng_kerne + chan->cpu_hp_notifier.priority = 6; + register_cpu_notifier(&chan->cpu_hp_notifier); + +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_online_cpu(cpu) { + struct lttng_kernel_ring_buffer *buf = per_cpu_ptr(chan->backend.buf, + cpu); +@@ -909,7 +910,7 @@ struct lttng_kernel_ring_buffer_channel *channel_create(const struct lttng_kerne + spin_unlock(&per_cpu(ring_buffer_nohz_lock, cpu)); + } + chan->cpu_hp_enable = 1; +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + #else + for_each_possible_cpu(cpu) { + struct lttng_kernel_ring_buffer *buf = per_cpu_ptr(chan->backend.buf, +diff --git a/src/lib/ringbuffer/ring_buffer_iterator.c b/src/lib/ringbuffer/ring_buffer_iterator.c +index 25839af6..60c95ca6 100644 +--- a/src/lib/ringbuffer/ring_buffer_iterator.c ++++ b/src/lib/ringbuffer/ring_buffer_iterator.c +@@ -10,6 +10,7 @@ + */ + + #include <ringbuffer/iterator.h> ++#include <wrapper/cpu.h> + #include <wrapper/file.h> + #include <wrapper/uaccess.h> + #include <linux/jiffies.h> +@@ -440,13 +441,13 @@ int channel_iterator_init(struct lttng_kernel_ring_buffer_channel *chan) + chan->hp_iter_notifier.priority = 10; + register_cpu_notifier(&chan->hp_iter_notifier); + +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_online_cpu(cpu) { + buf = per_cpu_ptr(chan->backend.buf, cpu); + lib_ring_buffer_iterator_init(chan, buf); + } + chan->hp_iter_enable = 1; +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + #else + for_each_possible_cpu(cpu) { + buf = per_cpu_ptr(chan->backend.buf, cpu); +@@ -519,7 +520,7 @@ int channel_iterator_open(struct lttng_kernel_ring_buffer_channel *chan) + CHAN_WARN_ON(chan, config->output != RING_BUFFER_ITERATOR); + + if (config->alloc == RING_BUFFER_ALLOC_PER_CPU) { +- get_online_cpus(); ++ lttng_cpus_read_lock(); + /* Allow CPU hotplug to keep track of opened reader */ + chan->iter.read_open = 1; + for_each_channel_cpu(cpu, chan) { +@@ -529,7 +530,7 @@ int channel_iterator_open(struct lttng_kernel_ring_buffer_channel *chan) + goto error; + buf->iter.read_open = 1; + } +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + } else { + buf = channel_get_ring_buffer(config, chan, 0); + ret = lib_ring_buffer_iterator_open(buf); +@@ -538,7 +539,7 @@ int channel_iterator_open(struct lttng_kernel_ring_buffer_channel *chan) + error: + /* Error should always happen on CPU 0, hence no close is required. */ + CHAN_WARN_ON(chan, cpu != 0); +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + return ret; + } + EXPORT_SYMBOL_GPL(channel_iterator_open); +@@ -550,7 +551,7 @@ void channel_iterator_release(struct lttng_kernel_ring_buffer_channel *chan) + int cpu; + + if (config->alloc == RING_BUFFER_ALLOC_PER_CPU) { +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_channel_cpu(cpu, chan) { + buf = channel_get_ring_buffer(config, chan, cpu); + if (buf->iter.read_open) { +@@ -559,7 +560,7 @@ void channel_iterator_release(struct lttng_kernel_ring_buffer_channel *chan) + } + } + chan->iter.read_open = 0; +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + } else { + buf = channel_get_ring_buffer(config, chan, 0); + lib_ring_buffer_iterator_release(buf); +diff --git a/src/lttng-context-perf-counters.c b/src/lttng-context-perf-counters.c +index b0227d47..372f05e0 100644 +--- a/src/lttng-context-perf-counters.c ++++ b/src/lttng-context-perf-counters.c +@@ -16,6 +16,7 @@ + #include <lttng/events.h> + #include <lttng/events-internal.h> + #include <ringbuffer/frontend_types.h> ++#include <wrapper/cpu.h> + #include <wrapper/vmalloc.h> + #include <wrapper/perf.h> + #include <lttng/tracer.h> +@@ -97,10 +98,10 @@ void lttng_destroy_perf_counter_ctx_field(void *priv) + { + int cpu; + +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_online_cpu(cpu) + perf_event_release_kernel(events[cpu]); +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + #ifdef CONFIG_HOTPLUG_CPU + unregister_cpu_notifier(&perf_field->nb); + #endif +@@ -304,7 +305,7 @@ int lttng_add_perf_counter_to_ctx(uint32_t type, + perf_field->nb.priority = 0; + register_cpu_notifier(&perf_field->nb); + #endif +- get_online_cpus(); ++ lttng_cpus_read_lock(); + for_each_online_cpu(cpu) { + events[cpu] = wrapper_perf_event_create_kernel_counter(attr, + cpu, NULL, overflow_callback); +@@ -317,7 +318,7 @@ int lttng_add_perf_counter_to_ctx(uint32_t type, + goto counter_busy; + } + } +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + perf_field->hp_enable = 1; + } + #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,10,0)) */ +@@ -351,7 +352,7 @@ counter_error: + if (events[cpu] && !IS_ERR(events[cpu])) + perf_event_release_kernel(events[cpu]); + } +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + #ifdef CONFIG_HOTPLUG_CPU + unregister_cpu_notifier(&perf_field->nb); + #endif +diff --git a/src/lttng-statedump-impl.c b/src/lttng-statedump-impl.c +index 4dfbca0b..2b42783a 100644 +--- a/src/lttng-statedump-impl.c ++++ b/src/lttng-statedump-impl.c +@@ -23,7 +23,6 @@ + #include <linux/file.h> + #include <linux/interrupt.h> + #include <linux/irqnr.h> +-#include <linux/cpu.h> + #include <linux/netdevice.h> + #include <linux/inetdevice.h> + #include <linux/mm.h> +@@ -34,6 +33,7 @@ + + #include <lttng/events.h> + #include <lttng/tracer.h> ++#include <wrapper/cpu.h> + #include <wrapper/irqdesc.h> + #include <wrapper/fdtable.h> + #include <wrapper/namespace.h> +@@ -770,7 +770,7 @@ int do_lttng_statedump(struct lttng_kernel_session *session) + * is to guarantee that each CPU has been in a state where is was in + * syscall mode (i.e. not in a trap, an IRQ or a soft IRQ). + */ +- get_online_cpus(); ++ lttng_cpus_read_lock(); + atomic_set(&kernel_threads_to_run, num_online_cpus()); + for_each_online_cpu(cpu) { + INIT_DELAYED_WORK(&cpu_work[cpu], lttng_statedump_work_func); +@@ -778,7 +778,7 @@ int do_lttng_statedump(struct lttng_kernel_session *session) + } + /* Wait for all threads to run */ + __wait_event(statedump_wq, (atomic_read(&kernel_threads_to_run) == 0)); +- put_online_cpus(); ++ lttng_cpus_read_unlock(); + /* Our work is done */ + trace_lttng_statedump_end(session); + return 0; +-- +2.19.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0002-fix-Revert-Makefile-Enable-Wimplicit-fallthrough-for.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-fix-Revert-Makefile-Enable-Wimplicit-fallthrough-for.patch new file mode 100644 index 000000000..5b5edc531 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-fix-Revert-Makefile-Enable-Wimplicit-fallthrough-for.patch @@ -0,0 +1,829 @@ +From c570be0da77e963d77bac099d468bc0cd5f1bd63 Mon Sep 17 00:00:00 2001 +From: Michael Jeanson <mjeanson@efficios.com> +Date: Mon, 13 Sep 2021 14:16:22 -0400 +Subject: [PATCH 2/2] fix: Revert "Makefile: Enable -Wimplicit-fallthrough for + Clang" (v5.15) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Starting with v5.15, "-Wimplicit-fallthrough=5" was added to the build +flags which requires the use of "__attribute__((__fallthrough__))" to +annotate fallthrough case statements. + +See upstream commit by the man himself: + + commit d936eb23874433caa3e3d841cfa16f5434b85dcf + Author: Linus Torvalds <torvalds@linux-foundation.org> + Date: Thu Jul 15 18:05:31 2021 -0700 + + Revert "Makefile: Enable -Wimplicit-fallthrough for Clang" + + This reverts commit b7eb335e26a9c7f258c96b3962c283c379d3ede0. + + It turns out that the problem with the clang -Wimplicit-fallthrough + warning is not about the kernel source code, but about clang itself, and + that the warning is unusable until clang fixes its broken ways. + + In particular, when you enable this warning for clang, you not only get + warnings about implicit fallthroughs. You also get this: + + warning: fallthrough annotation in unreachable code [-Wimplicit-fallthrough] + + which is completely broken becasue it + + (a) doesn't even tell you where the problem is (seriously: no line + numbers, no filename, no nothing). + + (b) is fundamentally broken anyway, because there are perfectly valid + reasons to have a fallthrough statement even if it turns out that + it can perhaps not be reached. + + In the kernel, an example of that second case is code in the scheduler: + + switch (state) { + case cpuset: + if (IS_ENABLED(CONFIG_CPUSETS)) { + cpuset_cpus_allowed_fallback(p); + state = possible; + break; + } + fallthrough; + case possible: + + where if CONFIG_CPUSETS is enabled you actually never hit the + fallthrough case at all. But that in no way makes the fallthrough + wrong. + + So the warning is completely broken, and enabling it for clang is a very + bad idea. + + In the meantime, we can keep the gcc option enabled, and make the gcc + build use + + -Wimplicit-fallthrough=5 + + which means that we will at least continue to require a proper + fallthrough statement, and that gcc won't silently accept the magic + comment versions. Because gcc does this all correctly, and while the odd + "=5" part is kind of obscure, it's documented in [1]: + + "-Wimplicit-fallthrough=5 doesn’t recognize any comments as + fallthrough comments, only attributes disable the warning" + + so if clang ever fixes its bad behavior we can try enabling it there again. + +Upstream-Status: backport [https://git.lttng.org/?p=lttng-modules.git;a=commit;h=c190d76e8c7b44d62b3651ab845b765c1b1f8104] + +Change-Id: Iea69849592fb69ac04fb9bb28efcd6b8dce8ba88 +Signed-off-by: Michael Jeanson <mjeanson@efficios.com> +Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> +--- + include/counter/counter-api.h | 4 +- + include/lttng/events-internal.h | 11 ++- + include/wrapper/compiler_attributes.h | 34 +++++++ + src/lib/counter/counter.c | 13 ++- + src/lttng-abi.c | 91 ++++++++++++------ + src/lttng-bytecode-interpreter.c | 4 +- + src/lttng-bytecode-specialize.c | 5 +- + src/lttng-events.c | 129 +++++++++++++++++--------- + src/lttng-string-utils.c | 3 +- + src/probes/lttng-kretprobes.c | 7 +- + 10 files changed, 215 insertions(+), 86 deletions(-) + create mode 100644 include/wrapper/compiler_attributes.h + +diff --git a/include/counter/counter-api.h b/include/counter/counter-api.h +index fbc65818..c9f2b141 100644 +--- a/include/counter/counter-api.h ++++ b/include/counter/counter-api.h +@@ -15,6 +15,7 @@ + #include <linux/bitops.h> + #include <counter/counter.h> + #include <counter/counter-internal.h> ++#include <wrapper/compiler_attributes.h> + #include <wrapper/limits.h> + + /* +@@ -256,7 +257,8 @@ static __always_inline int lttng_counter_add(const struct lib_counter_config *co + const size_t *dimension_indexes, int64_t v) + { + switch (config->alloc) { +- case COUNTER_ALLOC_PER_CPU: /* Fallthrough */ ++ case COUNTER_ALLOC_PER_CPU: ++ lttng_fallthrough; + case COUNTER_ALLOC_PER_CPU | COUNTER_ALLOC_GLOBAL: + return __lttng_counter_add_percpu(config, counter, dimension_indexes, v); + case COUNTER_ALLOC_GLOBAL: +diff --git a/include/lttng/events-internal.h b/include/lttng/events-internal.h +index cd560de8..ca2190c4 100644 +--- a/include/lttng/events-internal.h ++++ b/include/lttng/events-internal.h +@@ -8,6 +8,8 @@ + #ifndef _LTTNG_EVENTS_INTERNAL_H + #define _LTTNG_EVENTS_INTERNAL_H + ++#include <wrapper/compiler_attributes.h> ++ + #include <lttng/events.h> + + struct lttng_syscall_filter; +@@ -561,9 +563,12 @@ static inline bool lttng_kernel_type_is_bytewise_integer(const struct lttng_kern + if (!type_integer) + return false; + switch (type_integer->size) { +- case 8: /* Fall-through. */ +- case 16: /* Fall-through. */ +- case 32: /* Fall-through. */ ++ case 8: ++ lttng_fallthrough; ++ case 16: ++ lttng_fallthrough; ++ case 32: ++ lttng_fallthrough; + case 64: + break; + default: +diff --git a/include/wrapper/compiler_attributes.h b/include/wrapper/compiler_attributes.h +new file mode 100644 +index 00000000..c2c96e76 +--- /dev/null ++++ b/include/wrapper/compiler_attributes.h +@@ -0,0 +1,34 @@ ++/* SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only) ++ * ++ * wrapper/compiler_attributes.h ++ * ++ * Copyright (C) 2021 Michael Jeanson <mjeanson@efficios.com> ++ */ ++ ++#ifndef _LTTNG_WRAPPER_COMPILER_ATTRIBUTES_H ++#define _LTTNG_WRAPPER_COMPILER_ATTRIBUTES_H ++ ++#include <lttng/kernel-version.h> ++ ++#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0)) ++#include <linux/compiler_attributes.h> ++#endif ++ ++#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,4,0)) ++ ++/* ++ * Use the kernel provided fallthrough attribute macro. ++ */ ++#define lttng_fallthrough fallthrough ++ ++#else /* LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,4,0) */ ++ ++/* ++ * Fallback to the comment for kernels pre 5.15 that don't build with ++ * '-Wimplicit-fallthrough=5'. ++ */ ++#define lttng_fallthrough do {} while (0) /* fallthrough */ ++ ++#endif /* LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,4,0) */ ++ ++#endif /* _LTTNG_WRAPPER_COMPILER_ATTRIBUTES_H */ +diff --git a/src/lib/counter/counter.c b/src/lib/counter/counter.c +index a4500a0e..bf038aac 100644 +--- a/src/lib/counter/counter.c ++++ b/src/lib/counter/counter.c +@@ -11,6 +11,7 @@ + #include <linux/cpumask.h> + #include <counter/counter.h> + #include <counter/counter-internal.h> ++#include <wrapper/compiler_attributes.h> + #include <wrapper/vmalloc.h> + #include <wrapper/limits.h> + +@@ -324,7 +325,8 @@ int lttng_counter_aggregate(const struct lib_counter_config *config, + *underflow = false; + + switch (config->alloc) { +- case COUNTER_ALLOC_GLOBAL: /* Fallthrough */ ++ case COUNTER_ALLOC_GLOBAL: ++ lttng_fallthrough; + case COUNTER_ALLOC_PER_CPU | COUNTER_ALLOC_GLOBAL: + /* Read global counter. */ + ret = lttng_counter_read(config, counter, dimension_indexes, +@@ -342,7 +344,8 @@ int lttng_counter_aggregate(const struct lib_counter_config *config, + switch (config->alloc) { + case COUNTER_ALLOC_GLOBAL: + break; +- case COUNTER_ALLOC_PER_CPU | COUNTER_ALLOC_GLOBAL: /* Fallthrough */ ++ case COUNTER_ALLOC_PER_CPU | COUNTER_ALLOC_GLOBAL: ++ lttng_fallthrough; + case COUNTER_ALLOC_PER_CPU: + //TODO: integrate with CPU hotplug and online cpus + for (cpu = 0; cpu < num_possible_cpus(); cpu++) { +@@ -448,7 +451,8 @@ int lttng_counter_clear(const struct lib_counter_config *config, + int cpu, ret; + + switch (config->alloc) { +- case COUNTER_ALLOC_GLOBAL: /* Fallthrough */ ++ case COUNTER_ALLOC_GLOBAL: ++ lttng_fallthrough; + case COUNTER_ALLOC_PER_CPU | COUNTER_ALLOC_GLOBAL: + /* Clear global counter. */ + ret = lttng_counter_clear_cpu(config, counter, dimension_indexes, -1); +@@ -462,7 +466,8 @@ int lttng_counter_clear(const struct lib_counter_config *config, + switch (config->alloc) { + case COUNTER_ALLOC_GLOBAL: + break; +- case COUNTER_ALLOC_PER_CPU | COUNTER_ALLOC_GLOBAL: /* Fallthrough */ ++ case COUNTER_ALLOC_PER_CPU | COUNTER_ALLOC_GLOBAL: ++ lttng_fallthrough; + case COUNTER_ALLOC_PER_CPU: + //TODO: integrate with CPU hotplug and online cpus + for (cpu = 0; cpu < num_possible_cpus(); cpu++) { +diff --git a/src/lttng-abi.c b/src/lttng-abi.c +index cc453894..eac1afd1 100644 +--- a/src/lttng-abi.c ++++ b/src/lttng-abi.c +@@ -34,6 +34,7 @@ + #include <ringbuffer/vfs.h> + #include <ringbuffer/backend.h> + #include <ringbuffer/frontend.h> ++#include <wrapper/compiler_attributes.h> + #include <wrapper/poll.h> + #include <wrapper/file.h> + #include <wrapper/kref.h> +@@ -1332,7 +1333,8 @@ long lttng_metadata_ring_buffer_ioctl(struct file *filp, + */ + return -ENOSYS; + } +- case LTTNG_KERNEL_ABI_RING_BUFFER_FLUSH_EMPTY: /* Fall-through. */ ++ case LTTNG_KERNEL_ABI_RING_BUFFER_FLUSH_EMPTY: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_RING_BUFFER_FLUSH: + { + struct lttng_metadata_stream *stream = filp->private_data; +@@ -1441,7 +1443,8 @@ long lttng_metadata_ring_buffer_compat_ioctl(struct file *filp, + */ + return -ENOSYS; + } +- case LTTNG_KERNEL_ABI_RING_BUFFER_FLUSH_EMPTY: /* Fall-through. */ ++ case LTTNG_KERNEL_ABI_RING_BUFFER_FLUSH_EMPTY: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_RING_BUFFER_FLUSH: + { + struct lttng_metadata_stream *stream = filp->private_data; +@@ -1758,8 +1761,10 @@ int lttng_abi_validate_event_param(struct lttng_kernel_abi_event *event_param) + switch (event_param->instrumentation) { + case LTTNG_KERNEL_ABI_SYSCALL: + switch (event_param->u.syscall.entryexit) { +- case LTTNG_KERNEL_ABI_SYSCALL_ENTRY: /* Fall-through */ +- case LTTNG_KERNEL_ABI_SYSCALL_EXIT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_SYSCALL_ENTRY: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_SYSCALL_EXIT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL_ENTRYEXIT: + break; + default: +@@ -1783,20 +1788,26 @@ int lttng_abi_validate_event_param(struct lttng_kernel_abi_event *event_param) + switch (event_param->u.kretprobe.entryexit) { + case LTTNG_KERNEL_ABI_SYSCALL_ENTRYEXIT: + break; +- case LTTNG_KERNEL_ABI_SYSCALL_ENTRY: /* Fall-through */ +- case LTTNG_KERNEL_ABI_SYSCALL_EXIT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_SYSCALL_ENTRY: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_SYSCALL_EXIT: ++ lttng_fallthrough; + default: + return -EINVAL; + } + break; + +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + return -EINVAL; + } +@@ -1830,18 +1841,23 @@ int lttng_abi_create_event(struct file *channel_file, + } + + switch (event_param->instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + fops = <tng_event_recorder_enabler_fops; + break; +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + fops = <tng_event_recorder_event_fops; + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + return -EINVAL; + } +@@ -1867,7 +1883,8 @@ int lttng_abi_create_event(struct file *channel_file, + goto event_error; + + switch (event_param->instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + { + struct lttng_event_enabler *event_enabler; +@@ -1887,8 +1904,10 @@ int lttng_abi_create_event(struct file *channel_file, + break; + } + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + { + struct lttng_kernel_event_recorder *event; +@@ -1908,8 +1927,10 @@ int lttng_abi_create_event(struct file *channel_file, + break; + } + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + ret = -EINVAL; + goto event_error; +@@ -2043,18 +2064,23 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, + } + + switch (event_notifier_param->event.instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + fops = <tng_event_notifier_enabler_fops; + break; +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + fops = <tng_event_notifier_event_fops; + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + ret = -EINVAL; + goto inval_instr; +@@ -2086,7 +2112,8 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, + goto event_notifier_error; + + switch (event_notifier_param->event.instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + { + struct lttng_event_notifier_enabler *enabler; +@@ -2110,8 +2137,10 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, + break; + } + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + { + struct lttng_kernel_event_notifier *event_notifier; +@@ -2135,8 +2164,10 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, + break; + } + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + ret = -EINVAL; + goto event_notifier_error; +diff --git a/src/lttng-bytecode-interpreter.c b/src/lttng-bytecode-interpreter.c +index b46a23b7..a2a932c6 100644 +--- a/src/lttng-bytecode-interpreter.c ++++ b/src/lttng-bytecode-interpreter.c +@@ -7,6 +7,7 @@ + * Copyright (C) 2010-2016 Mathieu Desnoyers <mathieu.desnoyers@efficios.com> + */ + ++#include <wrapper/compiler_attributes.h> + #include <wrapper/uaccess.h> + #include <wrapper/objtool.h> + #include <wrapper/types.h> +@@ -421,7 +422,8 @@ static int dynamic_get_index(struct lttng_kernel_probe_ctx *lttng_probe_ctx, + } + break; + case LOAD_ROOT_CONTEXT: +- case LOAD_ROOT_APP_CONTEXT: /* Fall-through */ ++ lttng_fallthrough; ++ case LOAD_ROOT_APP_CONTEXT: + { + ret = context_get_index(lttng_probe_ctx, + &stack_top->u.ptr, +diff --git a/src/lttng-bytecode-specialize.c b/src/lttng-bytecode-specialize.c +index c4b9d04b..f8b5f19d 100644 +--- a/src/lttng-bytecode-specialize.c ++++ b/src/lttng-bytecode-specialize.c +@@ -8,6 +8,8 @@ + */ + + #include <linux/slab.h> ++#include <wrapper/compiler_attributes.h> ++ + #include <lttng/lttng-bytecode.h> + #include <lttng/align.h> + #include <lttng/events-internal.h> +@@ -271,7 +273,8 @@ static int specialize_get_index(struct bytecode_runtime *runtime, + } + case OBJECT_TYPE_STRUCT: + /* Only generated by the specialize phase. */ +- case OBJECT_TYPE_VARIANT: /* Fall-through */ ++ case OBJECT_TYPE_VARIANT: ++ lttng_fallthrough; + default: + printk(KERN_WARNING "LTTng: bytecode: Unexpected get index type %d", + (int) stack_top->load.object_type); +diff --git a/src/lttng-events.c b/src/lttng-events.c +index e785fe4d..230e3934 100644 +--- a/src/lttng-events.c ++++ b/src/lttng-events.c +@@ -28,6 +28,7 @@ + #include <linux/vmalloc.h> + #include <linux/dmi.h> + ++#include <wrapper/compiler_attributes.h> + #include <wrapper/uuid.h> + #include <wrapper/vmalloc.h> /* for wrapper_vmalloc_sync_mappings() */ + #include <wrapper/random.h> +@@ -659,12 +660,14 @@ int lttng_event_enable(struct lttng_kernel_event_common *event) + goto end; + } + switch (event->priv->instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + ret = -EINVAL; + break; + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + WRITE_ONCE(event->enabled, 1); + break; +@@ -673,8 +676,10 @@ int lttng_event_enable(struct lttng_kernel_event_common *event) + ret = lttng_kretprobes_event_enable_state(event, 1); + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + ret = -EINVAL; +@@ -719,12 +724,14 @@ int lttng_event_disable(struct lttng_kernel_event_common *event) + goto end; + } + switch (event->priv->instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + ret = -EINVAL; + break; + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + WRITE_ONCE(event->enabled, 0); + break; +@@ -733,8 +740,10 @@ int lttng_event_disable(struct lttng_kernel_event_common *event) + ret = lttng_kretprobes_event_enable_state(event, 0); + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + ret = -EINVAL; +@@ -873,15 +882,20 @@ struct lttng_kernel_event_recorder *_lttng_kernel_event_recorder_create(struct l + event_name = event_desc->event_name; + break; + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_UPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_UPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + event_name = event_param->name; + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + ret = -EINVAL; +@@ -1093,8 +1107,10 @@ struct lttng_kernel_event_recorder *_lttng_kernel_event_recorder_create(struct l + WARN_ON_ONCE(!ret); + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + ret = -EINVAL; +@@ -1141,15 +1157,20 @@ struct lttng_kernel_event_notifier *_lttng_event_notifier_create( + event_name = event_desc->event_name; + break; + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_UPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_UPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + event_name = event_notifier_param->event.name; + break; + +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + ret = -EINVAL; +@@ -1296,9 +1317,12 @@ struct lttng_kernel_event_notifier *_lttng_event_notifier_create( + WARN_ON_ONCE(!ret); + break; + +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + ret = -EINVAL; +@@ -1423,14 +1447,18 @@ void register_event(struct lttng_kernel_event_recorder *event_recorder) + ret = lttng_syscall_filter_enable_event(event_recorder->chan, event_recorder); + break; + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_UPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_UPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_KRETPROBE: + ret = 0; + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +@@ -1481,7 +1509,8 @@ int _lttng_event_unregister(struct lttng_kernel_event_recorder *event_recorder) + ret = 0; + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +@@ -1512,14 +1541,18 @@ void register_event_notifier(struct lttng_kernel_event_notifier *event_notifier) + ret = lttng_syscall_filter_enable_event_notifier(event_notifier); + break; + +- case LTTNG_KERNEL_ABI_KPROBE: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KPROBE: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_UPROBE: + ret = 0; + break; + +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +@@ -1559,9 +1592,12 @@ int _lttng_event_notifier_unregister( + ret = lttng_syscall_filter_disable_event_notifier(event_notifier); + break; + +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +@@ -1614,8 +1650,10 @@ void _lttng_event_destroy(struct lttng_kernel_event_common *event) + lttng_uprobes_destroy_event_private(event_recorder); + break; + +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +@@ -1647,9 +1685,12 @@ void _lttng_event_destroy(struct lttng_kernel_event_common *event) + lttng_uprobes_destroy_event_notifier_private(event_notifier); + break; + +- case LTTNG_KERNEL_ABI_KRETPROBE: /* Fall-through */ +- case LTTNG_KERNEL_ABI_FUNCTION: /* Fall-through */ +- case LTTNG_KERNEL_ABI_NOOP: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_KRETPROBE: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_FUNCTION: ++ lttng_fallthrough; ++ case LTTNG_KERNEL_ABI_NOOP: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +@@ -2713,7 +2754,8 @@ void lttng_session_sync_event_enablers(struct lttng_kernel_session *session) + int nr_filters = 0; + + switch (event_recorder_priv->parent.instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + /* Enable events */ + list_for_each_entry(enabler_ref, +@@ -2807,7 +2849,8 @@ void lttng_event_notifier_group_sync_enablers(struct lttng_event_notifier_group + int nr_filters = 0, nr_captures = 0; + + switch (event_notifier_priv->parent.instrumentation) { +- case LTTNG_KERNEL_ABI_TRACEPOINT: /* Fall-through */ ++ case LTTNG_KERNEL_ABI_TRACEPOINT: ++ lttng_fallthrough; + case LTTNG_KERNEL_ABI_SYSCALL: + /* Enable event_notifiers */ + list_for_each_entry(enabler_ref, +@@ -3877,7 +3920,7 @@ int print_escaped_ctf_string(struct lttng_kernel_session *session, const char *s + if (ret) + goto error; + /* We still print the current char */ +- /* Fallthrough */ ++ lttng_fallthrough; + default: + ret = lttng_metadata_printf(session, "%c", cur); + break; +diff --git a/src/lttng-string-utils.c b/src/lttng-string-utils.c +index d9447903..65946193 100644 +--- a/src/lttng-string-utils.c ++++ b/src/lttng-string-utils.c +@@ -4,6 +4,7 @@ + */ + + #include <linux/types.h> ++#include <wrapper/compiler_attributes.h> + + #include <lttng/string-utils.h> + +@@ -302,7 +303,7 @@ retry: + p = pattern_get_char_at_cb(p_at, + pattern_get_char_at_cb_data); + +- /* Fall-through. */ ++ lttng_fallthrough; + default: + /* + * Default case which will compare the escaped +diff --git a/src/probes/lttng-kretprobes.c b/src/probes/lttng-kretprobes.c +index 0fa6a1bf..1d0a5ecb 100644 +--- a/src/probes/lttng-kretprobes.c ++++ b/src/probes/lttng-kretprobes.c +@@ -14,6 +14,7 @@ + #include <lttng/events.h> + #include <lttng/events-internal.h> + #include <ringbuffer/frontend_types.h> ++#include <wrapper/compiler_attributes.h> + #include <wrapper/vmalloc.h> + #include <wrapper/irqflags.h> + #include <lttng/tracer.h> +@@ -61,7 +62,8 @@ int _lttng_kretprobes_handler(struct kretprobe_instance *krpi, + return 0; + break; + } +- case LTTNG_KERNEL_EVENT_TYPE_NOTIFIER: /* Fall-through. */ ++ case LTTNG_KERNEL_EVENT_TYPE_NOTIFIER: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +@@ -90,7 +92,8 @@ int _lttng_kretprobes_handler(struct kretprobe_instance *krpi, + chan->ops->event_commit(&ctx); + break; + } +- case LTTNG_KERNEL_EVENT_TYPE_NOTIFIER: /* Fall-through. */ ++ case LTTNG_KERNEL_EVENT_TYPE_NOTIFIER: ++ lttng_fallthrough; + default: + WARN_ON_ONCE(1); + } +-- +2.19.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.0.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.0.bb index 72d912eaf..6dfde8dca 100644 --- a/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.0.bb +++ b/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.0.bb @@ -9,7 +9,10 @@ inherit module include lttng-platforms.inc -SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2" +SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ + file://0001-fix-cpu-hotplug-Remove-deprecated-CPU-hotplug-functi.patch \ + file://0002-fix-Revert-Makefile-Enable-Wimplicit-fallthrough-for.patch \ + " # Use :append here so that the patch is applied also when using devupstream SRC_URI:append = " file://0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch" @@ -38,7 +41,7 @@ LIC_FILES_CHKSUM:class-devupstream = "file://LICENSE;md5=0464cff101a009c403cd2ed DEFAULT_PREFERENCE:class-devupstream = "-1" SRC_URI:class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.13" -SRCREV:class-devupstream = "f982b51a98a29cb4aaf607cb9bbf2b509d8e6933" -PV:class-devupstream = "2.13.0-rc2+git${SRCPV}" +SRCREV:class-devupstream = "c570be0da77e963d77bac099d468bc0cd5f1bd63" +PV:class-devupstream = "2.13.0+git${SRCPV}" S:class-devupstream = "${WORKDIR}/git" SRCREV_FORMAT ?= "lttng_git" diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2021-38171.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2021-38171.patch new file mode 100644 index 000000000..d82f3a4b6 --- /dev/null +++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2021-38171.patch @@ -0,0 +1,42 @@ +CVE: CVE-2021-38171 +Upstream-Status: Backport +Signed-off-by: Kiran Surendran <kiran.surendran@windriver.com> + +From fb993619d1035fa9646506925ea70fb122038999 Mon Sep 17 00:00:00 2001 +From: maryam ebrahimzadeh <me22bee@outlook.com> +Date: Wed, 4 Aug 2021 16:15:18 -0400 +Subject: [PATCH] avformat/adtsenc: return value check for init_get_bits in + adts_decode_extradata + +As the second argument for init_get_bits (buf) can be crafted, a return value check for this function call is necessary. +'buf' is part of 'AVPacket pkt'. +replace init_get_bits with init_get_bits8. + +Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> +(cherry picked from commit 9ffa49496d1aae4cbbb387aac28a9e061a6ab0a6) +Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> +--- + libavformat/adtsenc.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/libavformat/adtsenc.c b/libavformat/adtsenc.c +index 3595cb3bb2..c35a12a628 100644 +--- a/libavformat/adtsenc.c ++++ b/libavformat/adtsenc.c +@@ -51,9 +51,11 @@ static int adts_decode_extradata(AVFormatContext *s, ADTSContext *adts, const ui + GetBitContext gb; + PutBitContext pb; + MPEG4AudioConfig m4ac; +- int off; ++ int off, ret; + +- init_get_bits(&gb, buf, size * 8); ++ ret = init_get_bits8(&gb, buf, size); ++ if (ret < 0) ++ return ret; + off = avpriv_mpeg4audio_get_config2(&m4ac, buf, size, 1, s); + if (off < 0) + return off; +-- +2.31.1 + diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb index fc1834c00..0c6af6549 100644 --- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb +++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb @@ -31,7 +31,8 @@ SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \ file://fix-CVE-2020-22021.patch \ file://fix-CVE-2020-22033-CVE-2020-22019.patch \ file://fix-CVE-2021-33815.patch \ - " + file://fix-CVE-2021-38171.patch \ + " SRC_URI[sha256sum] = "06b10a183ce5371f915c6bb15b7b1fffbe046e8275099c96affc29e17645d909" # Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717 diff --git a/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0/shared_version_info.patch b/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0/shared_version_info.patch new file mode 100644 index 000000000..b42d564b4 --- /dev/null +++ b/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0/shared_version_info.patch @@ -0,0 +1,13 @@ +Index: libsamplerate-0.1.8/configure.ac +=================================================================== +--- libsamplerate-0.1.8.orig/configure.ac ++++ libsamplerate-0.1.8/configure.ac +@@ -53,7 +53,7 @@ AC_PROG_LN_S + # 6. If any interfaces have been removed since the last public release, then set age + # to 0. + +-SHARED_VERSION_INFO="1:8:1" ++SHARED_VERSION_INFO="1:9:1" + + + diff --git a/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.9.bb b/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.9.bb index 6dfc42b43..8345d6880 100644 --- a/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.9.bb +++ b/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.9.bb @@ -10,6 +10,7 @@ PR = "r1" SRC_URI = "http://www.mega-nerd.com/SRC/libsamplerate-${PV}.tar.gz \ file://0001-configure.ac-improve-alsa-handling.patch \ + file://shared_version_info.patch \ " SRC_URI[md5sum] = "2b78ae9fe63b36b9fbb6267fad93f259" diff --git a/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb b/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb index b8b0314d2..411ea9579 100644 --- a/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb +++ b/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb @@ -31,6 +31,7 @@ EXTRA_OECONF = "--disable-ldap \ --with-zlib=${STAGING_LIBDIR}/.. \ --with-bzip2=${STAGING_LIBDIR}/.. \ --with-readline=${STAGING_LIBDIR}/.. \ + --with-mailprog=${sbindir}/sendmail \ --enable-gpg-is-gpg2 \ " diff --git a/poky/meta/recipes-support/libevent/libevent/0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch b/poky/meta/recipes-support/libevent/libevent/0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch new file mode 100644 index 000000000..8a2c78983 --- /dev/null +++ b/poky/meta/recipes-support/libevent/libevent/0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch @@ -0,0 +1,28 @@ +From d01a57a998798da977c470f3b8d6a457c1adb144 Mon Sep 17 00:00:00 2001 +From: Azat Khuzhin <azat@libevent.org> +Date: Sun, 19 Sep 2021 00:57:31 +0300 +Subject: [PATCH] test: mark util/monotonic_prc_fallback as retriable + +Refs: #1193 + +Upstream-status: Backported +--- + test/regress_util.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/regress_util.c b/test/regress_util.c +index 45caa2700a40..a9e80db20149 100644 +--- a/test/regress_util.c ++++ b/test/regress_util.c +@@ -1672,7 +1672,7 @@ struct testcase_t util_testcases[] = { + { "monotonic_res_fallback", test_evutil_monotonic_res, TT_OFF_BY_DEFAULT, &basic_setup, (void*)"fallback" }, + { "monotonic_prc", test_evutil_monotonic_prc, 0, &basic_setup, (void*)"" }, + { "monotonic_prc_precise", test_evutil_monotonic_prc, TT_RETRIABLE, &basic_setup, (void*)"precise" }, +- { "monotonic_prc_fallback", test_evutil_monotonic_prc, 0, &basic_setup, (void*)"fallback" }, ++ { "monotonic_prc_fallback", test_evutil_monotonic_prc, TT_RETRIABLE, &basic_setup, (void*)"fallback" }, + { "date_rfc1123", test_evutil_date_rfc1123, 0, NULL, NULL }, + { "evutil_v4addr_is_local", test_evutil_v4addr_is_local, 0, NULL, NULL }, + { "evutil_v6addr_is_local", test_evutil_v6addr_is_local, 0, NULL, NULL }, +-- +2.31.1 + diff --git a/poky/meta/recipes-support/libevent/libevent/0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch b/poky/meta/recipes-support/libevent/libevent/0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch new file mode 100644 index 000000000..ae7db0b7a --- /dev/null +++ b/poky/meta/recipes-support/libevent/libevent/0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch @@ -0,0 +1,81 @@ +From 36ebd92fa53c0097f1e2f9ec5aa5b5c6ec1b411d Mon Sep 17 00:00:00 2001 +From: Thomas Perrot <thomas.perrot@bootlin.com> +Date: Wed, 29 Sep 2021 13:50:35 +0200 +Subject: [PATCH] test: retriable tests are marked failed only when all + attempts have failed + +Fixes: #1193 + +Upstream-status: Pending + +Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com> +--- + test/tinytest.c | 13 ++++++------- + test/tinytest.h | 2 +- + 2 files changed, 7 insertions(+), 8 deletions(-) + +diff --git a/test/tinytest.c b/test/tinytest.c +index 85dfe74a720e..bf2882418eb6 100644 +--- a/test/tinytest.c ++++ b/test/tinytest.c +@@ -310,7 +310,8 @@ testcase_run_forked_(const struct testgroup_t *group, + + int + testcase_run_one(const struct testgroup_t *group, +- const struct testcase_t *testcase) ++ const struct testcase_t *testcase, ++ const int test_attempts) + { + enum outcome outcome; + +@@ -348,7 +349,7 @@ testcase_run_one(const struct testgroup_t *group, + if (opt_verbosity>0 && !opt_forked) + puts("SKIPPED"); + } else { +- if (!opt_forked) ++ if (!opt_forked && (testcase->flags & TT_RETRIABLE) && !test_attempts) + printf("\n [%s FAILED]\n", testcase->name); + } + +@@ -525,22 +526,20 @@ tinytest_main(int c, const char **v, struct testgroup_t *groups) + struct testgroup_t *group = &groups[i]; + for (j = 0; group->cases[j].name; ++j) { + struct testcase_t *testcase = &group->cases[j]; +- int test_attempts = 3; ++ int test_attempts = (testcase->flags & TT_RETRIABLE) ? 3: 1; + int test_ret_err; + + if (!(testcase->flags & TT_ENABLED_)) + continue; + + for (;;) { +- test_ret_err = testcase_run_one(group, testcase); ++ test_ret_err = testcase_run_one(group, testcase, test_attempts); + + if (test_ret_err == OK) + break; +- if (!(testcase->flags & TT_RETRIABLE)) ++ if (!--test_attempts) + break; + printf("\n [RETRYING %s (%i)]\n", testcase->name, test_attempts); +- if (!test_attempts--) +- break; + } + + switch (test_ret_err) { +diff --git a/test/tinytest.h b/test/tinytest.h +index d321dd467542..c276b5339331 100644 +--- a/test/tinytest.h ++++ b/test/tinytest.h +@@ -92,7 +92,7 @@ char *tinytest_format_hex_(const void *, unsigned long); + tinytest_set_flag_(groups, named, 1, TT_SKIP) + + /** Run a single testcase in a single group. */ +-int testcase_run_one(const struct testgroup_t *,const struct testcase_t *); ++int testcase_run_one(const struct testgroup_t *,const struct testcase_t *, const int test_attempts); + + void tinytest_set_aliases(const struct testlist_alias_t *aliases); + +-- +2.31.1 + diff --git a/poky/meta/recipes-support/libevent/libevent/run-ptest b/poky/meta/recipes-support/libevent/libevent/run-ptest index d3b5e793c..ef4260d1c 100644 --- a/poky/meta/recipes-support/libevent/libevent/run-ptest +++ b/poky/meta/recipes-support/libevent/libevent/run-ptest @@ -1,14 +1,14 @@ #!/bin/sh # run-ptest - 'ptest' test infrastructure shell script that -# wraps the libevent test scripts +# wraps the libevent test scripts # # Trevor Gamblin <trevor.gamblin@windriver.com> ############################################################### LIBEVENTLIB=@libdir@/libevent LOG="${LIBEVENTLIB}/ptest/libevent_ptest_$(date +%Y%m%d-%H%M%S).log" -cd ${LIBEVENTLIB}/ptest +cd ${LIBEVENTLIB}/ptest # Run only the libevent "regress" test. All other test scripts in the # libevent "test" folder are related to performance, e.g. read/write @@ -16,9 +16,9 @@ cd ${LIBEVENTLIB}/ptest # in the ptest log. ./test/regress 2>&1| sed -e '/TESTS/d' -e '/tests/d' -e '/OK/ s/^/PASS: / ; /FAILED/ s/^/FAIL: / ; /SKIPPED/ s/^/SKIP: / ; /DISABLED/ s/^/SKIP: /' | cut -f1,2 -d ':' | tee -a ${LOG} -passed=`grep PASS ${LOG}|wc -l` -failed=`grep FAIL ${LOG}|wc -l` -skipped=`grep -E SKIP ${LOG}|wc -l` +passed=`grep PASS: ${LOG}|wc -l` +failed=`grep FAIL: ${LOG}|wc -l` +skipped=`grep -E SKIP: ${LOG}|wc -l` all=$((passed + failed + skipped)) ( echo "=== Test Summary ===" diff --git a/poky/meta/recipes-support/libevent/libevent_2.1.12.bb b/poky/meta/recipes-support/libevent/libevent_2.1.12.bb index 4b419eab2..e26e8a9b5 100644 --- a/poky/meta/recipes-support/libevent/libevent_2.1.12.bb +++ b/poky/meta/recipes-support/libevent/libevent_2.1.12.bb @@ -16,6 +16,8 @@ SRC_URI = "https://github.com/libevent/libevent/releases/download/release-${PV}- file://run-ptest \ file://0001-test-regress_dns.c-patch-out-tests-that-require-a-wo.patch \ file://0002-test-regress.h-Increase-default-timeval-tolerance-50.patch \ + file://0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch \ + file://0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch \ " SRC_URI[sha256sum] = "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb" @@ -56,7 +58,7 @@ do_install_ptest() { do install -m 0755 $file ${D}${PTEST_PATH}/test done - + # handle multilib sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest } diff --git a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.2.bb index c6a1ab178..1d3c24a17 100644 --- a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb +++ b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.2.bb @@ -7,7 +7,7 @@ HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe" -SRCREV = "cce0edb4282ee081d043030bfdf29f3e4052f86c" +SRCREV = "bcb82804daa8f725b6add259dcef2067e61a75aa" PV .= "+git${SRCPV}" SRC_URI = "git://git.yoctoproject.org/ptest-runner2 \ diff --git a/poky/meta/recipes-support/vim/files/CVE-2021-3778.patch b/poky/meta/recipes-support/vim/files/CVE-2021-3778.patch new file mode 100644 index 000000000..769a7a07a --- /dev/null +++ b/poky/meta/recipes-support/vim/files/CVE-2021-3778.patch @@ -0,0 +1,46 @@ +From eb41373c8c88b0789e5cf04669d6116f9a199264 Mon Sep 17 00:00:00 2001 +From: Minjae Kim <flowergom@gmail.com> +Date: Sun, 26 Sep 2021 23:48:00 +0000 +Subject: [PATCH] patch 8.2.3409: reading beyond end of line with invalid utf-8 + character + +Problem: Reading beyond end of line with invalid utf-8 character. +Solution: Check for NUL when advancing. + +Upstream-Status: Accepted [https://github.com/vim/vim/commit/65b605665997fad54ef39a93199e305af2fe4d7f] +CVE: CVE-2021-3778 +Signed-off-by: Minjae Kim <flowergom@gmail.com> +--- + src/regexp_nfa.c | 3 ++- + src/testdir/test_regexp_utf8.vim | 7 +++++++ + 2 files changed, 9 insertions(+), 1 deletion(-) + +Index: git/src/regexp_nfa.c +=================================================================== +--- git.orig/src/regexp_nfa.c ++++ git/src/regexp_nfa.c +@@ -5455,7 +5455,8 @@ find_match_text(colnr_T startcol, int re + match = FALSE; + break; + } +- len2 += MB_CHAR2LEN(c2); ++ len2 += enc_utf8 ? utf_ptr2len(rex.line + col + len2) ++ : MB_CHAR2LEN(c2); + } + if (match + // check that no composing char follows +Index: git/src/testdir/test_regexp_utf8.vim +=================================================================== +--- git.orig/src/testdir/test_regexp_utf8.vim ++++ git/src/testdir/test_regexp_utf8.vim +@@ -215,3 +215,10 @@ func Test_optmatch_toolong() + set re=0 + endfunc + ++func Test_match_invalid_byte() ++ call writefile(0z630a.765d30aa0a.2e0a.790a.4030, 'Xinvalid') ++ new ++ source Xinvalid ++ bwipe! ++ call delete('Xinvalid') ++endfunc diff --git a/poky/meta/recipes-support/vim/vim.inc b/poky/meta/recipes-support/vim/vim.inc index 7e9225fbc..db1e9caf4 100644 --- a/poky/meta/recipes-support/vim/vim.inc +++ b/poky/meta/recipes-support/vim/vim.inc @@ -18,6 +18,7 @@ SRC_URI = "git://github.com/vim/vim.git \ file://no-path-adjust.patch \ file://racefix.patch \ file://b7081e135a16091c93f6f5f7525a5c58fb7ca9f9.patch \ + file://CVE-2021-3778.patch \ " SRCREV = "98056533b96b6b5d8849641de93185dd7bcadc44" diff --git a/poky/scripts/lib/scriptutils.py b/poky/scripts/lib/scriptutils.py index f92255d8d..3164171eb 100644 --- a/poky/scripts/lib/scriptutils.py +++ b/poky/scripts/lib/scriptutils.py @@ -215,7 +215,8 @@ def fetch_url(tinfoil, srcuri, srcrev, destdir, logger, preserve_tmp=False, mirr pathvars = ['T', 'RECIPE_SYSROOT', 'RECIPE_SYSROOT_NATIVE'] for pathvar in pathvars: path = rd.getVar(pathvar) - shutil.rmtree(path) + if os.path.exists(path): + shutil.rmtree(path) finally: if fetchrecipe: try: diff --git a/poky/scripts/lib/wic/plugins/imager/direct.py b/poky/scripts/lib/wic/plugins/imager/direct.py index 9d10ec01d..495518fac 100644 --- a/poky/scripts/lib/wic/plugins/imager/direct.py +++ b/poky/scripts/lib/wic/plugins/imager/direct.py @@ -117,7 +117,7 @@ class DirectPlugin(ImagerPlugin): updated = False for part in self.parts: if not part.realnum or not part.mountpoint \ - or part.mountpoint == "/": + or part.mountpoint == "/" or not part.mountpoint.startswith('/'): continue if part.use_uuid: diff --git a/poky/scripts/lib/wic/plugins/source/bootimg-efi.py b/poky/scripts/lib/wic/plugins/source/bootimg-efi.py index cdc72543c..0391aebdc 100644 --- a/poky/scripts/lib/wic/plugins/source/bootimg-efi.py +++ b/poky/scripts/lib/wic/plugins/source/bootimg-efi.py @@ -12,6 +12,7 @@ import logging import os +import tempfile import shutil import re @@ -119,12 +120,13 @@ class BootimgEFIPlugin(SourcePlugin): bootloader = creator.ks.bootloader loader_conf = "" - loader_conf += "default boot\n" + if source_params.get('create-unified-kernel-image') != "true": + loader_conf += "default boot\n" loader_conf += "timeout %d\n" % bootloader.timeout initrd = source_params.get('initrd') - if initrd: + if initrd and source_params.get('create-unified-kernel-image') != "true": # obviously we need to have a common common deploy var bootimg_dir = get_bitbake_var("DEPLOY_DIR_IMAGE") if not bootimg_dir: @@ -183,11 +185,12 @@ class BootimgEFIPlugin(SourcePlugin): for rd in initrds: boot_conf += "initrd /%s\n" % rd - logger.debug("Writing systemd-boot config " - "%s/hdd/boot/loader/entries/boot.conf", cr_workdir) - cfg = open("%s/hdd/boot/loader/entries/boot.conf" % cr_workdir, "w") - cfg.write(boot_conf) - cfg.close() + if source_params.get('create-unified-kernel-image') != "true": + logger.debug("Writing systemd-boot config " + "%s/hdd/boot/loader/entries/boot.conf", cr_workdir) + cfg = open("%s/hdd/boot/loader/entries/boot.conf" % cr_workdir, "w") + cfg.write(boot_conf) + cfg.close() @classmethod @@ -288,9 +291,60 @@ class BootimgEFIPlugin(SourcePlugin): kernel = "%s-%s.bin" % \ (get_bitbake_var("KERNEL_IMAGETYPE"), get_bitbake_var("INITRAMFS_LINK_NAME")) - install_cmd = "install -m 0644 %s/%s %s/%s" % \ - (staging_kernel_dir, kernel, hdddir, kernel) - exec_cmd(install_cmd) + if source_params.get('create-unified-kernel-image') == "true": + initrd = source_params.get('initrd') + if not initrd: + raise WicError("initrd= must be specified when create-unified-kernel-image=true, exiting") + + deploy_dir = get_bitbake_var("DEPLOY_DIR_IMAGE") + efi_stub = glob("%s/%s" % (deploy_dir, "linux*.efi.stub")) + if len(efi_stub) == 0: + raise WicError("Unified Kernel Image EFI stub not found, exiting") + efi_stub = efi_stub[0] + + with tempfile.TemporaryDirectory() as tmp_dir: + label = source_params.get('label') + label_conf = "root=%s" % creator.rootdev + if label: + label_conf = "LABEL=%s" % label + + bootloader = creator.ks.bootloader + cmdline = open("%s/cmdline" % tmp_dir, "w") + cmdline.write("%s %s" % (label_conf, bootloader.append)) + cmdline.close() + + initrds = initrd.split(';') + initrd = open("%s/initrd" % tmp_dir, "wb") + for f in initrds: + with open("%s/%s" % (deploy_dir, f), 'rb') as in_file: + shutil.copyfileobj(in_file, initrd) + initrd.close() + + # Searched by systemd-boot: + # https://systemd.io/BOOT_LOADER_SPECIFICATION/#type-2-efi-unified-kernel-images + install_cmd = "install -d %s/EFI/Linux" % hdddir + exec_cmd(install_cmd) + + staging_dir_host = get_bitbake_var("STAGING_DIR_HOST") + + # https://www.freedesktop.org/software/systemd/man/systemd-stub.html + objcopy_cmd = "objcopy \ + --add-section .osrel=%s --change-section-vma .osrel=0x20000 \ + --add-section .cmdline=%s --change-section-vma .cmdline=0x30000 \ + --add-section .linux=%s --change-section-vma .linux=0x2000000 \ + --add-section .initrd=%s --change-section-vma .initrd=0x3000000 \ + %s %s" % \ + ("%s/usr/lib/os-release" % staging_dir_host, + cmdline.name, + "%s/%s" % (staging_kernel_dir, kernel), + initrd.name, + efi_stub, + "%s/EFI/Linux/linux.efi" % hdddir) + exec_cmd(objcopy_cmd) + else: + install_cmd = "install -m 0644 %s/%s %s/%s" % \ + (staging_kernel_dir, kernel, hdddir, kernel) + exec_cmd(install_cmd) if get_bitbake_var("IMAGE_EFI_BOOT_FILES"): for src_path, dst_path in cls.install_task: |