From 82c905dc58a36aeae40b1b273a12f63fb1973cf4 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Mon, 13 Apr 2020 13:39:40 -0500 Subject: meta-openembedded and poky: subtree updates Squash of the following due to dependencies among them and OpenBMC changes: meta-openembedded: subtree update:d0748372d2..9201611135 meta-openembedded: subtree update:9201611135..17fd382f34 poky: subtree update:9052e5b32a..2e11d97b6c poky: subtree update:2e11d97b6c..a8544811d7 The change log was too large for the jenkins plugin to handle therefore it has been removed. Here is the first and last commit of each subtree: meta-openembedded:d0748372d2 cppzmq: bump to version 4.6.0 meta-openembedded:17fd382f34 mpv: Remove X11 dependency poky:9052e5b32a package_ipk: Remove pointless comment to trigger rebuild poky:a8544811d7 pbzip2: Fix license warning Change-Id: If0fc6c37629642ee207a4ca2f7aa501a2c673cd6 Signed-off-by: Andrew Geissler --- poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb | 6 +- poky/meta/recipes-graphics/clutter/clutter-1.0.inc | 4 +- .../recipes-graphics/drm/libdrm/musl-ioctl.patch | 35 - poky/meta/recipes-graphics/drm/libdrm_2.4.100.bb | 60 - poky/meta/recipes-graphics/drm/libdrm_2.4.101.bb | 59 + .../recipes-graphics/freetype/freetype_2.10.1.bb | 2 +- ...ed-compilation-with-current-mesa-versions.patch | 73 - poky/meta/recipes-graphics/glew/glew_2.1.0.bb | 45 - poky/meta/recipes-graphics/glew/glew_2.2.0.bb | 44 + .../recipes-graphics/jpeg/libjpeg-turbo_2.0.3.bb | 57 - .../recipes-graphics/jpeg/libjpeg-turbo_2.0.4.bb | 59 + poky/meta/recipes-graphics/kmscube/kmscube_git.bb | 2 +- ...-dispatch_common.h-define-also-EGL_NO_X11.patch | 26 + .../recipes-graphics/libepoxy/libepoxy_1.5.3.bb | 42 - .../recipes-graphics/libepoxy/libepoxy_1.5.4.bb | 43 + ...538-validate-image-size-when-loading-BMP-.patch | 34 - ...heck-for-build-dir-when-building-version-.patch | 53 - ...797-SDL-fails-to-compile-with-Mesa-Master.patch | 41 - .../recipes-graphics/libsdl2/libsdl2_2.0.10.bb | 77 - .../recipes-graphics/libsdl2/libsdl2_2.0.12.bb | 81 + ...fcsample-only-when-X11-backend-is-enabled.patch | 35 - .../recipes-graphics/libva/libva-utils_2.5.0.bb | 35 - .../recipes-graphics/libva/libva-utils_2.6.0.bb | 32 + poky/meta/recipes-graphics/libva/libva_2.5.0.bb | 46 - poky/meta/recipes-graphics/libva/libva_2.6.1.bb | 43 + .../matchbox-wm/matchbox-wm_1.2.2.bb | 2 + .../menu-cache/menu-cache_1.1.0.bb | 2 + ...on-misdetects-64bit-atomics-on-mips-clang.patch | 27 + ...-check-for-all-linux-host_os-combinations.patch | 18 +- .../0002-meson.build-make-TLS-ELF-optional.patch | 18 +- ...0003-Allow-enable-DRI-without-DRI-drivers.patch | 10 +- ...-Enable-asm-unconditionally-now-that-gen_.patch | 10 +- ...max_t-for-formatted-output-of-timespec-me.patch | 53 + poky/meta/recipes-graphics/mesa/mesa-gl_19.2.4.bb | 10 - poky/meta/recipes-graphics/mesa/mesa-gl_20.0.2.bb | 15 + poky/meta/recipes-graphics/mesa/mesa.inc | 21 +- poky/meta/recipes-graphics/mesa/mesa_19.2.4.bb | 21 - poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb | 25 + .../pango/0001-Fix-build-reproducibility.patch | 31 + ...001-Skip-thai-break-tests-without-libthai.patch | 36 - poky/meta/recipes-graphics/pango/pango_1.44.6.bb | 45 - poky/meta/recipes-graphics/pango/pango_1.44.7.bb | 49 + poky/meta/recipes-graphics/piglit/piglit_git.bb | 7 +- ...son.build-use-python3-directly-for-python.patch | 27 + .../virglrenderer/virglrenderer_0.8.0.bb | 25 - .../virglrenderer/virglrenderer_0.8.2.bb | 26 + ...-ASSIMP_LIB_INSTALL_DIR-to-search-library.patch | 68 + ...s-github.com-assimp-assimp-issues-2733-up.patch | 1664 ++++++++++++++++++++ poky/meta/recipes-graphics/vulkan/assimp_4.1.0.bb | 20 - poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb | 23 + ...ild-demos-with-questionably-licensed-data.patch | 21 +- .../recipes-graphics/vulkan/vulkan-demos_git.bb | 10 +- .../vulkan/vulkan-headers_1.1.108.bb | 18 - .../vulkan/vulkan-headers_1.1.126.0.bb | 18 + .../vulkan/vulkan-loader_1.1.108.bb | 37 - .../vulkan/vulkan-loader_1.1.126.0.bb | 38 + .../vulkan/vulkan-tools_1.1.108.bb | 31 - .../vulkan/vulkan-tools_1.1.126.0.bb | 31 + poky/meta/recipes-graphics/waffle/waffle_1.6.0.bb | 2 + .../wayland/libinput/determinism.patch | 21 + .../recipes-graphics/wayland/libinput_1.14.3.bb | 37 - .../recipes-graphics/wayland/libinput_1.15.2.bb | 40 + poky/meta/recipes-graphics/wayland/mtdev_1.1.5.bb | 18 - poky/meta/recipes-graphics/wayland/mtdev_1.1.6.bb | 18 + .../wayland/wayland-protocols_1.18.bb | 22 - .../wayland/wayland-protocols_1.20.bb | 22 + ...0001-build-Fix-strndup-detection-on-MinGW.patch | 39 + ...-add-missing-dependencies-on-protocol-hea.patch | 115 ++ ...1-scanner-Add-configure-check-for-strndup.patch | 50 - ...-not-hardcode-the-path-to-wayland-scanner.patch | 26 + ...l_priv_signal-to-wayland-server-private.h.patch | 166 -- ...-find-the-native-wayland-scanner-directly.patch | 27 + .../wayland/wayland/fixpathinpcfiles.patch | 32 - .../recipes-graphics/wayland/wayland/run-ptest | 17 + .../recipes-graphics/wayland/wayland_1.17.0.bb | 46 - .../recipes-graphics/wayland/wayland_1.18.0.bb | 62 + poky/meta/recipes-graphics/wayland/weston-init.bb | 14 +- .../wayland/weston-init/qemuall/weston.ini | 2 + .../wayland/weston-init/qemux86-64/weston.ini | 2 - .../wayland/weston-init/qemux86/weston.ini | 2 - .../wayland/weston-init/weston.env | 0 .../wayland/weston-init/weston.ini | 3 +- .../wayland/weston-init/weston@.service | 34 +- ...ch-Provide-a-default-version-that-doesn-t.patch | 28 +- poky/meta/recipes-graphics/wayland/weston_7.0.0.bb | 111 -- poky/meta/recipes-graphics/wayland/weston_8.0.0.bb | 112 ++ .../x11-common/xserver-nodm-init/capability.conf | 2 + .../x11-common/xserver-nodm-init/xserver-nodm | 8 + .../x11-common/xserver-nodm-init_3.0.bb | 7 +- .../recipes-graphics/xorg-app/mkfontdir_1.0.7.bb | 22 - .../recipes-graphics/xorg-app/mkfontscale_1.1.3.bb | 18 - .../recipes-graphics/xorg-app/mkfontscale_1.2.1.bb | 21 + .../recipes-graphics/xorg-app/x11perf_1.6.1.bb | 4 + .../0001-Make-manpage-multilib-identical.patch | 28 + poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb | 2 + .../recipes-graphics/xorg-app/xkbcomp_1.4.2.bb | 17 - .../recipes-graphics/xorg-app/xkbcomp_1.4.3.bb | 19 + .../64bit_time_t_support.patch | 51 + .../xorg-driver/xf86-input-synaptics_1.9.1.bb | 2 + .../0001-Sync-i915_pciids-upto-8717c6b7414f.patch | 505 ++++++ .../xf86-video-intel/01_Fix-build-on-i686.patch | 55 - .../xorg-driver/xf86-video-intel_git.bb | 7 +- .../xorg-driver/xorg-driver-common.inc | 4 +- .../xorg-lib/files/libx11-whitespace.patch | 56 + .../xorg-lib/libx11-compose-data_1.6.8.bb | 3 +- .../meta/recipes-graphics/xorg-lib/libx11_1.6.9.bb | 3 +- .../xorg-lib/libxkbcommon_0.10.0.bb | 27 + .../xorg-lib/libxkbcommon_0.8.4.bb | 26 - .../recipes-graphics/xorg-lib/libxpm_3.5.12.bb | 27 - .../recipes-graphics/xorg-lib/libxpm_3.5.13.bb | 27 + .../recipes-graphics/xorg-lib/libxshmfence_1.3.bb | 2 + ...Check-for-FE_INVALID-definition-before-us.patch | 2 +- .../recipes-graphics/xorg-lib/pixman_0.38.4.bb | 40 +- .../xorg-lib/xkeyboard-config_2.27.bb | 31 - .../xorg-lib/xkeyboard-config_2.28.bb | 31 + .../xorg-proto/xorg-proto-common.inc | 26 - .../xorg-proto/xorgproto_2019.2.bb | 14 - .../xorg-proto/xorgproto_2020.1.bb | 27 + .../xserver-xf86-config/qemumips/xorg.conf | 39 - .../xserver-xf86-config/qemumips64/xorg.conf | 39 - .../recipes-graphics/xorg-xserver/xserver-xorg.inc | 2 + ...Do-not-include-sys-io.h-on-ARM-with-glibc.patch | 63 - ...rmmode_display.c-add-missing-mi.h-include.patch | 23 + .../xorg-xserver/xserver-xorg_1.20.5.bb | 32 - .../xorg-xserver/xserver-xorg_1.20.8.bb | 34 + 125 files changed, 4002 insertions(+), 1903 deletions(-) delete mode 100644 poky/meta/recipes-graphics/drm/libdrm/musl-ioctl.patch delete mode 100644 poky/meta/recipes-graphics/drm/libdrm_2.4.100.bb create mode 100644 poky/meta/recipes-graphics/drm/libdrm_2.4.101.bb delete mode 100644 poky/meta/recipes-graphics/glew/glew/0001-Fixed-compilation-with-current-mesa-versions.patch delete mode 100644 poky/meta/recipes-graphics/glew/glew_2.1.0.bb create mode 100644 poky/meta/recipes-graphics/glew/glew_2.2.0.bb delete mode 100644 poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.3.bb create mode 100644 poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.4.bb create mode 100644 poky/meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch delete mode 100644 poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.3.bb create mode 100644 poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb delete mode 100644 poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Fixed-bug-4538-validate-image-size-when-loading-BMP-.patch delete mode 100644 poky/meta/recipes-graphics/libsdl2/libsdl2/0001-configure-check-for-build-dir-when-building-version-.patch delete mode 100644 poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Fixed-bug-4797-SDL-fails-to-compile-with-Mesa-Master.patch delete mode 100644 poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.10.bb create mode 100644 poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva-utils/0001-Build-sfcsample-only-when-X11-backend-is-enabled.patch delete mode 100644 poky/meta/recipes-graphics/libva/libva-utils_2.5.0.bb create mode 100644 poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva_2.5.0.bb create mode 100644 poky/meta/recipes-graphics/libva/libva_2.6.1.bb create mode 100644 poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch create mode 100644 poky/meta/recipes-graphics/mesa/files/0005-vc4-use-intmax_t-for-formatted-output-of-timespec-me.patch delete mode 100644 poky/meta/recipes-graphics/mesa/mesa-gl_19.2.4.bb create mode 100644 poky/meta/recipes-graphics/mesa/mesa-gl_20.0.2.bb delete mode 100644 poky/meta/recipes-graphics/mesa/mesa_19.2.4.bb create mode 100644 poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb create mode 100644 poky/meta/recipes-graphics/pango/pango/0001-Fix-build-reproducibility.patch delete mode 100644 poky/meta/recipes-graphics/pango/pango/0001-Skip-thai-break-tests-without-libthai.patch delete mode 100644 poky/meta/recipes-graphics/pango/pango_1.44.6.bb create mode 100644 poky/meta/recipes-graphics/pango/pango_1.44.7.bb create mode 100644 poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch delete mode 100644 poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.0.bb create mode 100644 poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb create mode 100644 poky/meta/recipes-graphics/vulkan/assimp/0001-Use-ASSIMP_LIB_INSTALL_DIR-to-search-library.patch create mode 100644 poky/meta/recipes-graphics/vulkan/assimp/0001-closes-https-github.com-assimp-assimp-issues-2733-up.patch delete mode 100644 poky/meta/recipes-graphics/vulkan/assimp_4.1.0.bb create mode 100644 poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb delete mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.108.bb create mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb delete mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.108.bb create mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb delete mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb create mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb create mode 100644 poky/meta/recipes-graphics/wayland/libinput/determinism.patch delete mode 100644 poky/meta/recipes-graphics/wayland/libinput_1.14.3.bb create mode 100644 poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb delete mode 100644 poky/meta/recipes-graphics/wayland/mtdev_1.1.5.bb create mode 100644 poky/meta/recipes-graphics/wayland/mtdev_1.1.6.bb delete mode 100644 poky/meta/recipes-graphics/wayland/wayland-protocols_1.18.bb create mode 100644 poky/meta/recipes-graphics/wayland/wayland-protocols_1.20.bb create mode 100644 poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch create mode 100644 poky/meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch delete mode 100644 poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Add-configure-check-for-strndup.patch create mode 100644 poky/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch delete mode 100644 poky/meta/recipes-graphics/wayland/wayland/0002-Move-wl_priv_signal-to-wayland-server-private.h.patch create mode 100644 poky/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch delete mode 100644 poky/meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch create mode 100644 poky/meta/recipes-graphics/wayland/wayland/run-ptest delete mode 100644 poky/meta/recipes-graphics/wayland/wayland_1.17.0.bb create mode 100644 poky/meta/recipes-graphics/wayland/wayland_1.18.0.bb create mode 100644 poky/meta/recipes-graphics/wayland/weston-init/qemuall/weston.ini create mode 100644 poky/meta/recipes-graphics/wayland/weston-init/weston.env delete mode 100644 poky/meta/recipes-graphics/wayland/weston_7.0.0.bb create mode 100644 poky/meta/recipes-graphics/wayland/weston_8.0.0.bb create mode 100644 poky/meta/recipes-graphics/x11-common/xserver-nodm-init/capability.conf delete mode 100644 poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb delete mode 100644 poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.3.bb create mode 100644 poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb create mode 100644 poky/meta/recipes-graphics/xorg-app/xinit/0001-Make-manpage-multilib-identical.patch delete mode 100644 poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.2.bb create mode 100644 poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.3.bb create mode 100644 poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/64bit_time_t_support.patch create mode 100644 poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/0001-Sync-i915_pciids-upto-8717c6b7414f.patch delete mode 100644 poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/01_Fix-build-on-i686.patch create mode 100644 poky/meta/recipes-graphics/xorg-lib/files/libx11-whitespace.patch create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.10.0.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.27.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb delete mode 100644 poky/meta/recipes-graphics/xorg-proto/xorg-proto-common.inc delete mode 100644 poky/meta/recipes-graphics/xorg-proto/xorgproto_2019.2.bb create mode 100644 poky/meta/recipes-graphics/xorg-proto/xorgproto_2020.1.bb delete mode 100644 poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf delete mode 100644 poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf delete mode 100644 poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-compiler.h-Do-not-include-sys-io.h-on-ARM-with-glibc.patch create mode 100644 poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-drmmode_display.c-add-missing-mi.h-include.patch delete mode 100644 poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.5.bb create mode 100644 poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb (limited to 'poky/meta/recipes-graphics') diff --git a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb index e3de3f616..b772c2ece 100644 --- a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb +++ b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb @@ -40,7 +40,8 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)} \ + trace" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb" @@ -49,6 +50,7 @@ PACKAGECONFIG[valgrind] = "--enable-valgrind=yes,--disable-valgrind,valgrind" PACKAGECONFIG[egl] = "--enable-egl=yes,--disable-egl,virtual/egl" PACKAGECONFIG[glesv2] = "--enable-glesv2,--disable-glesv2,virtual/libgles2" PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl" +PACKAGECONFIG[trace] = "--enable-trace,--disable-trace" EXTRA_OECONF += " \ ${@bb.utils.contains('TARGET_FPU', 'soft', '--disable-some-floating-point', '', d)} \ @@ -66,6 +68,8 @@ do_install_append () { rm -rf ${D}${libdir}/cairo/cairo-sphinx* rm -rf ${D}${libdir}/cairo/.debug/cairo-fdr* rm -rf ${D}${libdir}/cairo/.debug/cairo-sphinx* + rmdir -p --ignore-fail-on-non-empty ${D}${bindir} + rmdir -p --ignore-fail-on-non-empty ${D}${libdir}/cairo } PACKAGES =+ "cairo-gobject cairo-script-interpreter cairo-perf-utils" diff --git a/poky/meta/recipes-graphics/clutter/clutter-1.0.inc b/poky/meta/recipes-graphics/clutter/clutter-1.0.inc index 5dc45ebf2..e0ac819e4 100644 --- a/poky/meta/recipes-graphics/clutter/clutter-1.0.inc +++ b/poky/meta/recipes-graphics/clutter/clutter-1.0.inc @@ -24,11 +24,11 @@ ERDEPENDS_EVDEV = "xkeyboard-config" # Disable pretty much everything, override in platform specific set up EXTRA_OECONF += "--disable-quartz-backend \ --disable-win32-backend \ - --disable-gdk-backend \ --disable-cex100-backend \ --disable-tslib-input \ " +PACKAGECONFIG[gdk] = "--enable-gdk-backend,--disable-gdk-backend,gtk+3" PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,${EDEPENDS_X11}" PACKAGECONFIG[glx] = ",,${EDEPENDS_X11} ${EDEPENDS_GLX}" PACKAGECONFIG[egl] = "--enable-egl-backend,--disable-egl-backend,${EDEPENDS_EGL}" @@ -37,7 +37,7 @@ PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,${E PACKAGECONFIG[wayland-compositor] = "--enable-wayland-compositor,--disable-wayland-compositor,wayland" # Default configuration, distros might want to override -PACKAGECONFIG ??= "egl \ +PACKAGECONFIG ??= "egl gdk \ ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11', '', d)}" diff --git a/poky/meta/recipes-graphics/drm/libdrm/musl-ioctl.patch b/poky/meta/recipes-graphics/drm/libdrm/musl-ioctl.patch deleted file mode 100644 index e3d6c5b85..000000000 --- a/poky/meta/recipes-graphics/drm/libdrm/musl-ioctl.patch +++ /dev/null @@ -1,35 +0,0 @@ -Upstream-Status: Submitted -Signed-off-by: Ross Burton - -From 46c0fd6c827a8cb4d04e067bf04fab579ac4712e Mon Sep 17 00:00:00 2001 -From: Ross Burton -Date: Mon, 18 Jun 2018 15:07:03 +0100 -Subject: [PATCH] tests/nouveau/threaded: adapt ioctl signature - -POSIX says ioctl() has the signature (int, int, ...) but glibc has decided to -use (int, unsigned long int, ...) instead. - -Use a #ifdef to adapt the replacement function as appropriate. ---- - tests/nouveau/threaded.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/tests/nouveau/threaded.c b/tests/nouveau/threaded.c -index 3669bcd3..e1c27c01 100644 ---- a/tests/nouveau/threaded.c -+++ b/tests/nouveau/threaded.c -@@ -36,7 +36,11 @@ static int failed; - - static int import_fd; - -+#ifdef __GLIBC__ - int ioctl(int fd, unsigned long request, ...) -+#else -+int ioctl(int fd, int request, ...) -+#endif - { - va_list va; - int ret; --- -2.11.0 - diff --git a/poky/meta/recipes-graphics/drm/libdrm_2.4.100.bb b/poky/meta/recipes-graphics/drm/libdrm_2.4.100.bb deleted file mode 100644 index 485942567..000000000 --- a/poky/meta/recipes-graphics/drm/libdrm_2.4.100.bb +++ /dev/null @@ -1,60 +0,0 @@ -SUMMARY = "Userspace interface to the kernel DRM services" -DESCRIPTION = "The runtime library for accessing the kernel DRM services. DRM \ -stands for \"Direct Rendering Manager\", which is the kernel portion of the \ -\"Direct Rendering Infrastructure\" (DRI). DRI is required for many hardware \ -accelerated OpenGL drivers." -HOMEPAGE = "http://dri.freedesktop.org" -SECTION = "x11/base" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71" -PROVIDES = "drm" -DEPENDS = "libpthread-stubs" - -SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.bz2 \ - file://musl-ioctl.patch" -SRC_URI[md5sum] = "f47bc87e28198ba527e6b44ffdd62f65" -SRC_URI[sha256sum] = "c77cc828186c9ceec3e56ae202b43ee99eb932b4a87255038a80e8a1060d0a5d" - -inherit meson pkgconfig manpages - -PACKAGECONFIG ??= "libkms intel radeon amdgpu nouveau vmwgfx omap freedreno vc4 etnaviv install-test-programs" -PACKAGECONFIG[libkms] = "-Dlibkms=true,-Dlibkms=false" -PACKAGECONFIG[intel] = "-Dintel=true,-Dintel=false,libpciaccess" -PACKAGECONFIG[radeon] = "-Dradeon=true,-Dradeon=false" -PACKAGECONFIG[amdgpu] = "-Damdgpu=true,-Damdgpu=false" -PACKAGECONFIG[nouveau] = "-Dnouveau=true,-Dnouveau=false" -PACKAGECONFIG[vmwgfx] = "-Dvmwgfx=true,-Dvmwgfx=false" -PACKAGECONFIG[omap] = "-Domap=true,-Domap=false" -PACKAGECONFIG[exynos] = "-Dexynos=true,-Dexynos=false" -PACKAGECONFIG[freedreno] = "-Dfreedreno=true,-Dfreedreno=false" -PACKAGECONFIG[tegra] = "-Dtegra=true,-Dtegra=false" -PACKAGECONFIG[vc4] = "-Dvc4=true,-Dvc4=false" -PACKAGECONFIG[etnaviv] = "-Detnaviv=true,-Detnaviv=false" -PACKAGECONFIG[freedreno-kgsl] = "-Dfreedreno-kgsl=true,-Dfreedreno-kgsl=false" -PACKAGECONFIG[valgrind] = "-Dvalgrind=true,-Dvalgrind=false,valgrind" -PACKAGECONFIG[install-test-programs] = "-Dinstall-test-programs=true,-Dinstall-test-programs=false" -PACKAGECONFIG[cairo-tests] = "-Dcairo-tests=true,-Dcairo-tests=false" -PACKAGECONFIG[udev] = "-Dudev=true,-Dudev=false,udev" -PACKAGECONFIG[manpages] = "-Dman-pages=true,-Dman-pages=false,libxslt-native xmlto-native" - -ALLOW_EMPTY_${PN}-drivers = "1" -PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \ - ${PN}-intel ${PN}-exynos ${PN}-kms ${PN}-freedreno ${PN}-amdgpu \ - ${PN}-etnaviv" - -RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \ - ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu \ - ${PN}-etnaviv" - -FILES_${PN}-tests = "${bindir}/*" -FILES_${PN}-radeon = "${libdir}/libdrm_radeon.so.*" -FILES_${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*" -FILES_${PN}-omap = "${libdir}/libdrm_omap.so.*" -FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*" -FILES_${PN}-exynos = "${libdir}/libdrm_exynos.so.*" -FILES_${PN}-kms = "${libdir}/libkms*.so.*" -FILES_${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*" -FILES_${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.* ${datadir}/${PN}/amdgpu.ids" -FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/drm/libdrm_2.4.101.bb b/poky/meta/recipes-graphics/drm/libdrm_2.4.101.bb new file mode 100644 index 000000000..8ec566faa --- /dev/null +++ b/poky/meta/recipes-graphics/drm/libdrm_2.4.101.bb @@ -0,0 +1,59 @@ +SUMMARY = "Userspace interface to the kernel DRM services" +DESCRIPTION = "The runtime library for accessing the kernel DRM services. DRM \ +stands for \"Direct Rendering Manager\", which is the kernel portion of the \ +\"Direct Rendering Infrastructure\" (DRI). DRI is required for many hardware \ +accelerated OpenGL drivers." +HOMEPAGE = "http://dri.freedesktop.org" +SECTION = "x11/base" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71" +PROVIDES = "drm" +DEPENDS = "libpthread-stubs" + +SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.xz" +SRC_URI[md5sum] = "e6a6f1b88963210b3d62acd7310a1cc7" +SRC_URI[sha256sum] = "ddf31baa8e49473624860bd166ce654dc349873f7a6c7b3305964249315c78a7" + +inherit meson pkgconfig manpages + +PACKAGECONFIG ??= "libkms intel radeon amdgpu nouveau vmwgfx omap freedreno vc4 etnaviv install-test-programs" +PACKAGECONFIG[libkms] = "-Dlibkms=true,-Dlibkms=false" +PACKAGECONFIG[intel] = "-Dintel=true,-Dintel=false,libpciaccess" +PACKAGECONFIG[radeon] = "-Dradeon=true,-Dradeon=false" +PACKAGECONFIG[amdgpu] = "-Damdgpu=true,-Damdgpu=false" +PACKAGECONFIG[nouveau] = "-Dnouveau=true,-Dnouveau=false" +PACKAGECONFIG[vmwgfx] = "-Dvmwgfx=true,-Dvmwgfx=false" +PACKAGECONFIG[omap] = "-Domap=true,-Domap=false" +PACKAGECONFIG[exynos] = "-Dexynos=true,-Dexynos=false" +PACKAGECONFIG[freedreno] = "-Dfreedreno=true,-Dfreedreno=false" +PACKAGECONFIG[tegra] = "-Dtegra=true,-Dtegra=false" +PACKAGECONFIG[vc4] = "-Dvc4=true,-Dvc4=false" +PACKAGECONFIG[etnaviv] = "-Detnaviv=true,-Detnaviv=false" +PACKAGECONFIG[freedreno-kgsl] = "-Dfreedreno-kgsl=true,-Dfreedreno-kgsl=false" +PACKAGECONFIG[valgrind] = "-Dvalgrind=true,-Dvalgrind=false,valgrind" +PACKAGECONFIG[install-test-programs] = "-Dinstall-test-programs=true,-Dinstall-test-programs=false" +PACKAGECONFIG[cairo-tests] = "-Dcairo-tests=true,-Dcairo-tests=false" +PACKAGECONFIG[udev] = "-Dudev=true,-Dudev=false,udev" +PACKAGECONFIG[manpages] = "-Dman-pages=true,-Dman-pages=false,libxslt-native xmlto-native" + +ALLOW_EMPTY_${PN}-drivers = "1" +PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \ + ${PN}-intel ${PN}-exynos ${PN}-kms ${PN}-freedreno ${PN}-amdgpu \ + ${PN}-etnaviv" + +RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \ + ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu \ + ${PN}-etnaviv" + +FILES_${PN}-tests = "${bindir}/*" +FILES_${PN}-radeon = "${libdir}/libdrm_radeon.so.*" +FILES_${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*" +FILES_${PN}-omap = "${libdir}/libdrm_omap.so.*" +FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*" +FILES_${PN}-exynos = "${libdir}/libdrm_exynos.so.*" +FILES_${PN}-kms = "${libdir}/libkms*.so.*" +FILES_${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*" +FILES_${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.* ${datadir}/${PN}/amdgpu.ids" +FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb b/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb index b179a0ed4..d1c093054 100644 --- a/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb +++ b/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb @@ -27,7 +27,7 @@ AUTOTOOLS_SCRIPT_PATH = "${S}/builds/unix" CONFIGURE_SCRIPT = "${S}/configure" EXTRA_AUTORECONF += "--exclude=autoheader --exclude=automake" -PACKAGECONFIG ??= "zlib" +PACKAGECONFIG ??= "zlib pixmap" PACKAGECONFIG[bzip2] = "--with-bzip2,--without-bzip2,bzip2" # harfbuzz results in a circular dependency so enabling is non-trivial diff --git a/poky/meta/recipes-graphics/glew/glew/0001-Fixed-compilation-with-current-mesa-versions.patch b/poky/meta/recipes-graphics/glew/glew/0001-Fixed-compilation-with-current-mesa-versions.patch deleted file mode 100644 index 64f3e2fd9..000000000 --- a/poky/meta/recipes-graphics/glew/glew/0001-Fixed-compilation-with-current-mesa-versions.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 7f65a36866f4e24dd1446fe1c9d21424f28bcabd Mon Sep 17 00:00:00 2001 -From: Deve -Date: Wed, 14 Nov 2018 21:07:29 +0100 -Subject: [PATCH] Fixed compilation with current mesa versions. - -As you can see in -https://cgit.freedesktop.org/mesa/mesa/tree/include/GL/glext.h -now the file uses __gl_glext_h_ instead of __glext_h_ -It's precisely caused by commit f7d42ee7d319256608ad60778f6787c140badada - -Backoprt notes: - -* The original patch adjusts auto/src/glew_head.h only -* include/GL/glew.h is not part of git repo and gets created on tarball - creation - -=> patch include/GL/glew.h either to cause the desired fix - -Upstream-Status: Backport [1] - -[1] https://github.com/nigels-com/glew/commit/7f65a36866f4e24dd1446fe1c9d21424f28bcabd - -Signed-off-by: Andreas Müller ---- - auto/src/glew_head.h | 3 ++- - include/GL/glew.h | 3 ++- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/auto/src/glew_head.h b/auto/src/glew_head.h -index c19cefb..8f313d9 100644 ---- a/auto/src/glew_head.h -+++ b/auto/src/glew_head.h -@@ -14,7 +14,7 @@ - #if defined(__REGAL_H__) - #error Regal.h included before glew.h - #endif --#if defined(__glext_h_) || defined(__GLEXT_H_) -+#if defined(__glext_h_) || defined(__GLEXT_H_) || defined(__gl_glext_h_) - #error glext.h included before glew.h - #endif - #if defined(__gl_ATI_h_) -@@ -30,6 +30,7 @@ - #define __X_GL_H - #define __glext_h_ - #define __GLEXT_H_ -+#define __gl_glext_h_ - #define __gl_ATI_h_ - - #if defined(_WIN32) -diff --git a/include/GL/glew.h b/include/GL/glew.h -index b5b6987..a9f9e4b 100644 ---- a/include/GL/glew.h -+++ b/include/GL/glew.h -@@ -93,7 +93,7 @@ - #if defined(__REGAL_H__) - #error Regal.h included before glew.h - #endif --#if defined(__glext_h_) || defined(__GLEXT_H_) -+#if defined(__glext_h_) || defined(__GLEXT_H_) || defined(__gl_glext_h_) - #error glext.h included before glew.h - #endif - #if defined(__gl_ATI_h_) -@@ -109,6 +109,7 @@ - #define __X_GL_H - #define __glext_h_ - #define __GLEXT_H_ -+#define __gl_glext_h_ - #define __gl_ATI_h_ - - #if defined(_WIN32) --- -2.20.1 - diff --git a/poky/meta/recipes-graphics/glew/glew_2.1.0.bb b/poky/meta/recipes-graphics/glew/glew_2.1.0.bb deleted file mode 100644 index f6f43406f..000000000 --- a/poky/meta/recipes-graphics/glew/glew_2.1.0.bb +++ /dev/null @@ -1,45 +0,0 @@ -SUMMARY = "OpenGL extension loading library" -DESCRIPTION = "The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library." -HOMEPAGE = "http://glew.sourceforge.net/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=67586" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ac251558de685c6b9478d89be3149c2" - -SRC_URI = "${SOURCEFORGE_MIRROR}/project/glew/glew/${PV}/glew-${PV}.tgz \ - file://no-strip.patch \ - file://0001-Fixed-compilation-with-current-mesa-versions.patch" - -SRC_URI[md5sum] = "b2ab12331033ddfaa50dc39345343980" -SRC_URI[sha256sum] = "04de91e7e6763039bc11940095cd9c7f880baba82196a7765f727ac05a993c95" - -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/glew/files/glew" -UPSTREAM_CHECK_REGEX = "/glew/(?P(\d+[\.\-_]*)+)/" - -inherit lib_package pkgconfig features_check - -REQUIRED_DISTRO_FEATURES = "opengl" - -PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl', 'egl-gles2', d)}" - -# The opengl and egl-XXX options are exclusive, enable only one. -PACKAGECONFIG[opengl] = "SYSTEM='linux',,virtual/libx11 virtual/libgl libglu libxext libxi libxmu" -PACKAGECONFIG[egl-gles2] = "SYSTEM='linux-egl' GLEW_NO_GLU='-DGLEW_NO_GLU' LDFLAGS.GL='-lEGL -lGLESv2',,virtual/egl virtual/libgles2" - -CFLAGS += "-D_GNU_SOURCE" -# Override SYSTEM (via PACKAGECONFIG_CONFARGS) to avoid calling config.guess, -# we're cross-compiling. Pass our CFLAGS via POPT as that's the optimisation -# variable and safely overwritten. -EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS} \ - CC='${CC}' LD='${CC}' STRIP='' \ - LDFLAGS.EXTRA='${LDFLAGS}' \ - POPT='${CFLAGS}' \ - GLEW_PREFIX='${prefix}' BINDIR='${bindir}' \ - LIBDIR='${libdir}' INCDIR='${includedir}/GL' PKGDIR='${libdir}/pkgconfig'" - -do_compile() { - oe_runmake -} - -do_install() { - oe_runmake 'DESTDIR=${D}' install.all -} diff --git a/poky/meta/recipes-graphics/glew/glew_2.2.0.bb b/poky/meta/recipes-graphics/glew/glew_2.2.0.bb new file mode 100644 index 000000000..8948444e0 --- /dev/null +++ b/poky/meta/recipes-graphics/glew/glew_2.2.0.bb @@ -0,0 +1,44 @@ +SUMMARY = "OpenGL extension loading library" +DESCRIPTION = "The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library." +HOMEPAGE = "http://glew.sourceforge.net/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=67586" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ac251558de685c6b9478d89be3149c2" + +SRC_URI = "${SOURCEFORGE_MIRROR}/project/glew/glew/${PV}/glew-${PV}.tgz \ + file://no-strip.patch" + +SRC_URI[md5sum] = "3579164bccaef09e36c0af7f4fd5c7c7" +SRC_URI[sha256sum] = "d4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1" + +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/glew/files/glew" +UPSTREAM_CHECK_REGEX = "/glew/(?P(\d+[\.\-_]*)+)/" + +inherit lib_package pkgconfig features_check + +REQUIRED_DISTRO_FEATURES = "opengl" + +PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl', 'egl-gles2', d)}" + +# The opengl and egl-XXX options are exclusive, enable only one. +PACKAGECONFIG[opengl] = "SYSTEM='linux',,virtual/libx11 virtual/libgl libglu libxext libxi libxmu,,,egl-gles2" +PACKAGECONFIG[egl-gles2] = "SYSTEM='linux-egl' GLEW_NO_GLU='-DGLEW_NO_GLU' LDFLAGS.GL='-lEGL -lGLESv2',,virtual/egl virtual/libgles2,,,opengl" + +CFLAGS += "-D_GNU_SOURCE" +# Override SYSTEM (via PACKAGECONFIG_CONFARGS) to avoid calling config.guess, +# we're cross-compiling. Pass our CFLAGS via POPT as that's the optimisation +# variable and safely overwritten. +EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS} \ + CC='${CC}' LD='${CC}' STRIP='' \ + LDFLAGS.EXTRA='${LDFLAGS}' \ + POPT='${CFLAGS}' \ + GLEW_PREFIX='${prefix}' BINDIR='${bindir}' \ + LIBDIR='${libdir}' INCDIR='${includedir}/GL' PKGDIR='${libdir}/pkgconfig'" + +do_compile() { + oe_runmake +} + +do_install() { + oe_runmake 'DESTDIR=${D}' install.all +} diff --git a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.3.bb b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.3.bb deleted file mode 100644 index 1cf854de6..000000000 --- a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.3.bb +++ /dev/null @@ -1,57 +0,0 @@ -SUMMARY = "Hardware accelerated JPEG compression/decompression library" -DESCRIPTION = "libjpeg-turbo is a derivative of libjpeg that uses SIMD instructions (MMX, SSE2, NEON) to accelerate baseline JPEG compression and decompression" -HOMEPAGE = "http://libjpeg-turbo.org/" - -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=13;md5=8184bcc7c4ac7b9edc6a7bc00f231d0b \ - file://jpeglib.h;endline=16;md5=7ea97dc83b0f59052ee837e61ef0e08f \ - file://djpeg.c;endline=11;md5=c59e19811c006cb38f82d6477134d314 \ -" -DEPENDS_append_x86-64_class-target = " nasm-native" -DEPENDS_append_x86_class-target = " nasm-native" - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \ - file://0001-libjpeg-turbo-fix-package_qa-error.patch \ - " - -SRC_URI[md5sum] = "bd07fddf26f9def7bab02739eb655116" -SRC_URI[sha256sum] = "4246de500544d4ee408ee57048aa4aadc6f165fc17f141da87669f20ed3241b7" -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/libjpeg-turbo/files/" -UPSTREAM_CHECK_REGEX = "/libjpeg-turbo/files/(?P(\d+[\.\-_]*)+)/" - -PE= "1" - -# Drop-in replacement for jpeg -PROVIDES = "jpeg" -RPROVIDES_${PN} += "jpeg" -RREPLACES_${PN} += "jpeg" -RCONFLICTS_${PN} += "jpeg" - -inherit cmake pkgconfig - -# Add nasm-native dependency consistently for all build arches is hard -EXTRA_OECMAKE_append_class-native = " -DWITH_SIMD=False" -EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_SIMD=False" - -# Work around missing x32 ABI support -EXTRA_OECMAKE_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "-DWITH_SIMD=False", "", d)}" - -# Work around missing non-floating point ABI support in MIPS -EXTRA_OECMAKE_append_class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "-DWITH_SIMD=False", "", d)}" - -# Provide a workaround if Altivec unit is not present in PPC -EXTRA_OECMAKE_append_class-target_powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" -EXTRA_OECMAKE_append_class-target_powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" - -DEBUG_OPTIMIZATION_append_armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" -DEBUG_OPTIMIZATION_append_armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" - -PACKAGES =+ "jpeg-tools libturbojpeg" - -DESCRIPTION_jpeg-tools = "The jpeg-tools package includes client programs to access libjpeg functionality. These tools allow for the compression, decompression, transformation and display of JPEG files and benchmarking of the libjpeg library." -FILES_jpeg-tools = "${bindir}/*" - -DESCRIPTION_libturbojpeg = "A SIMD-accelerated JPEG codec which provides only TurboJPEG APIs" -FILES_libturbojpeg = "${libdir}/libturbojpeg.so.*" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.4.bb b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.4.bb new file mode 100644 index 000000000..1f49fd3d3 --- /dev/null +++ b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.4.bb @@ -0,0 +1,59 @@ +SUMMARY = "Hardware accelerated JPEG compression/decompression library" +DESCRIPTION = "libjpeg-turbo is a derivative of libjpeg that uses SIMD instructions (MMX, SSE2, NEON) to accelerate baseline JPEG compression and decompression" +HOMEPAGE = "http://libjpeg-turbo.org/" + +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=13;md5=8184bcc7c4ac7b9edc6a7bc00f231d0b \ + file://jpeglib.h;endline=16;md5=7ea97dc83b0f59052ee837e61ef0e08f \ + file://djpeg.c;endline=11;md5=c59e19811c006cb38f82d6477134d314 \ +" +DEPENDS_append_x86-64_class-target = " nasm-native" +DEPENDS_append_x86_class-target = " nasm-native" + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \ + file://0001-libjpeg-turbo-fix-package_qa-error.patch \ + " + +SRC_URI[md5sum] = "d01d9e0c28c27bc0de9f4e2e8ff49855" +SRC_URI[sha256sum] = "33dd8547efd5543639e890efbf2ef52d5a21df81faf41bb940657af916a23406" +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/libjpeg-turbo/files/" +UPSTREAM_CHECK_REGEX = "/libjpeg-turbo/files/(?P(\d+[\.\-_]*)+)/" + +PE= "1" + +# Drop-in replacement for jpeg +PROVIDES = "jpeg" +RPROVIDES_${PN} += "jpeg" +RREPLACES_${PN} += "jpeg" +RCONFLICTS_${PN} += "jpeg" + +inherit cmake pkgconfig + +export NASMENV = "--debug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}" + +# Add nasm-native dependency consistently for all build arches is hard +EXTRA_OECMAKE_append_class-native = " -DWITH_SIMD=False" +EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_SIMD=False" + +# Work around missing x32 ABI support +EXTRA_OECMAKE_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "-DWITH_SIMD=False", "", d)}" + +# Work around missing non-floating point ABI support in MIPS +EXTRA_OECMAKE_append_class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "-DWITH_SIMD=False", "", d)}" + +# Provide a workaround if Altivec unit is not present in PPC +EXTRA_OECMAKE_append_class-target_powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" +EXTRA_OECMAKE_append_class-target_powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" + +DEBUG_OPTIMIZATION_append_armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" +DEBUG_OPTIMIZATION_append_armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" + +PACKAGES =+ "jpeg-tools libturbojpeg" + +DESCRIPTION_jpeg-tools = "The jpeg-tools package includes client programs to access libjpeg functionality. These tools allow for the compression, decompression, transformation and display of JPEG files and benchmarking of the libjpeg library." +FILES_jpeg-tools = "${bindir}/*" + +DESCRIPTION_libturbojpeg = "A SIMD-accelerated JPEG codec which provides only TurboJPEG APIs" +FILES_libturbojpeg = "${libdir}/libturbojpeg.so.*" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb index 82720045b..a1a295f66 100644 --- a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb +++ b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb @@ -6,7 +6,7 @@ DEPENDS = "virtual/libgles2 virtual/egl libdrm" LIC_FILES_CHKSUM = "file://kmscube.c;beginline=1;endline=23;md5=8b309d4ee67b7315ff7381270dd631fb" -SRCREV = "f632b23a528ed6b4e1fddd774db005c30ab65568" +SRCREV = "76bb57d539cb43d267e561024c34e031bf351e04" SRC_URI = "git://gitlab.freedesktop.org/mesa/kmscube;branch=master;protocol=https \ file://detect-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch" UPSTREAM_CHECK_COMMITS = "1" diff --git a/poky/meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch b/poky/meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch new file mode 100644 index 000000000..726294518 --- /dev/null +++ b/poky/meta/recipes-graphics/libepoxy/files/0001-dispatch_common.h-define-also-EGL_NO_X11.patch @@ -0,0 +1,26 @@ +From 6f15cc28d17cfdd86f5974f06ad97b8afedd5627 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Fri, 25 Oct 2019 11:09:34 +0000 +Subject: [PATCH] dispatch_common.h: define also EGL_NO_X11 + +MESA_EGL_NO_X11_HEADERS was renamed to EGL_NO_X11 in: +https://github.com/mesa3d/mesa/commit/6202a13b71e18dc31ba7e2f4ea915b67eacc1ddb + +Signed-off-by: Martin Jansa +Upstream-Status: Pending +--- + src/dispatch_common.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/dispatch_common.h b/src/dispatch_common.h +index dcb3a35..c206253 100644 +--- a/src/dispatch_common.h ++++ b/src/dispatch_common.h +@@ -52,6 +52,7 @@ + * should do the same + */ + # define MESA_EGL_NO_X11_HEADERS 1 ++# define EGL_NO_X11 1 + # endif + #include "epoxy/egl.h" + #endif diff --git a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.3.bb b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.3.bb deleted file mode 100644 index 71a2c9135..000000000 --- a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.3.bb +++ /dev/null @@ -1,42 +0,0 @@ -SUMMARY = "OpenGL function pointer management library" -DESCRIPTION = "It hides the complexity of dlopen(), dlsym(), \ -glXGetProcAddress(), eglGetProcAddress(), etc. from the app developer, with \ -very little knowledge needed on their part. They get to read GL specs and \ -write code using undecorated function names like glCompileShader()." -HOMEPAGE = "https://github.com/anholt/libepoxy/" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b" - -SRC_URI = "https://github.com/anholt/${BPN}/releases/download/${PV}/${BP}.tar.xz \ - " -SRC_URI[md5sum] = "e2845de8d2782b2d31c01ae8d7cd4cbb" -SRC_URI[sha256sum] = "002958c5528321edd53440235d3c44e71b5b1e09b9177e8daf677450b6c4433d" -UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases" - -inherit meson pkgconfig features_check - -REQUIRED_DISTRO_FEATURES = "opengl" -REQUIRED_DISTRO_FEATURES_class-native = "" -REQUIRED_DISTRO_FEATURES_class-nativesdk = "" - -PACKAGECONFIG[egl] = "-Degl=yes, -Degl=no, virtual/egl" -PACKAGECONFIG[x11] = "-Dglx=yes, -Dglx=no -Dx11=false, virtual/libx11 virtual/libgl" -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} egl" - -EXTRA_OEMESON += "-Dtests=false" - -PACKAGECONFIG_class-native = "egl x11" -PACKAGECONFIG_class-nativesdk = "egl x11" - -BBCLASSEXTEND = "native nativesdk" - -# This will ensure that dlopen will attempt only GL libraries provided by host -do_install_append_class-native() { - chrpath --delete ${D}${libdir}/*.so -} - -do_install_append_class-nativesdk() { - chrpath --delete ${D}${libdir}/*.so -} diff --git a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb new file mode 100644 index 000000000..af9867407 --- /dev/null +++ b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb @@ -0,0 +1,43 @@ +SUMMARY = "OpenGL function pointer management library" +DESCRIPTION = "It hides the complexity of dlopen(), dlsym(), \ +glXGetProcAddress(), eglGetProcAddress(), etc. from the app developer, with \ +very little knowledge needed on their part. They get to read GL specs and \ +write code using undecorated function names like glCompileShader()." +HOMEPAGE = "https://github.com/anholt/libepoxy/" +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b" + +SRC_URI = "https://github.com/anholt/${BPN}/releases/download/${PV}/${BP}.tar.xz \ + file://0001-dispatch_common.h-define-also-EGL_NO_X11.patch \ + " +SRC_URI[md5sum] = "00f47ad447321f9dc59f85bc1c9d0467" +SRC_URI[sha256sum] = "0bd2cc681dfeffdef739cb29913f8c3caa47a88a451fd2bc6e606c02997289d2" +UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases" + +inherit meson pkgconfig features_check + +REQUIRED_DISTRO_FEATURES = "opengl" +REQUIRED_DISTRO_FEATURES_class-native = "" +REQUIRED_DISTRO_FEATURES_class-nativesdk = "" + +PACKAGECONFIG[egl] = "-Degl=yes, -Degl=no, virtual/egl" +PACKAGECONFIG[x11] = "-Dglx=yes, -Dglx=no -Dx11=false, virtual/libx11 virtual/libgl" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} egl" + +EXTRA_OEMESON += "-Dtests=false" + +PACKAGECONFIG_class-native = "egl x11" +PACKAGECONFIG_class-nativesdk = "egl x11" + +BBCLASSEXTEND = "native nativesdk" + +# This will ensure that dlopen will attempt only GL libraries provided by host +do_install_append_class-native() { + chrpath --delete ${D}${libdir}/*.so +} + +do_install_append_class-nativesdk() { + chrpath --delete ${D}${libdir}/*.so +} diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Fixed-bug-4538-validate-image-size-when-loading-BMP-.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Fixed-bug-4538-validate-image-size-when-loading-BMP-.patch deleted file mode 100644 index 674decccb..000000000 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Fixed-bug-4538-validate-image-size-when-loading-BMP-.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 85138c1ec673e05263ae666baf61f79384daf7e0 Mon Sep 17 00:00:00 2001 -From: Sam Lantinga -Date: Tue, 30 Jul 2019 11:00:00 -0700 -Subject: [PATCH] Fixed bug 4538 - validate image size when loading BMP files - -Upstream-Status: Backport -[https://hg.libsdl.org/SDL/rev/e7ba650a643a] - -CVE: CVE-2019-13616 - -Signed-off-by: Yi Zhao ---- - src/video/SDL_bmp.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/video/SDL_bmp.c b/src/video/SDL_bmp.c -index 0b68918..a06b0c9 100644 ---- a/src/video/SDL_bmp.c -+++ b/src/video/SDL_bmp.c -@@ -226,6 +226,11 @@ SDL_LoadBMP_RW(SDL_RWops * src, int freesrc) - SDL_RWseek(src, (biSize - headerSize), RW_SEEK_CUR); - } - } -+ if (biWidth <= 0 || biHeight == 0) { -+ SDL_SetError("BMP file with bad dimensions (%dx%d)", biWidth, biHeight); -+ was_error = SDL_TRUE; -+ goto done; -+ } - if (biHeight < 0) { - topDown = SDL_TRUE; - biHeight = -biHeight; --- -2.7.4 - diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-configure-check-for-build-dir-when-building-version-.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-configure-check-for-build-dir-when-building-version-.patch deleted file mode 100644 index b383bd654..000000000 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-configure-check-for-build-dir-when-building-version-.patch +++ /dev/null @@ -1,53 +0,0 @@ -# HG changeset patch -# User Anuj Mittal -# Date 1573631462 -10800 -# Node ID 1fb1880d5edfc7c5a370846e13f90b260263627c -# Parent 007002587d5d34d781c2b628c05e992e0ac5f52d -configure: check for build dir when building version res (fix bug #4858) -Fixes a race where we try to build version res file in build directory -before it has even been created. Prevents errors like: - -/bin/bash ../SDL2-2.0.10/build-scripts/updaterev.sh -/bin/bash ../SDL2-2.0.10/build-scripts/mkinstalldirs build -mkdir -p -- build -x86_64-pokysdk-mingw32-windres --include-dir=/home/pokybuild/yocto-worker/meta-mingw/build/build/tmp/work/x86_64-nativesdk-mingw32-pokysdk-mingw32/nativesdk-libsdl2/2.0.10-r0/recipe-sysroot/opt/poky/3.0/sysroots/x86_64-pokysdk-mingw32/usr/include ../SDL2-2.0.10/src/main/windows/version.rc build/version.o -x86_64-pokysdk-mingw32-windres: build/version.o: No such file or directory -Makefile:692: recipe for target 'build/version.o' failed -make: *** [build/version.o] Error 1 -make: *** Waiting for unfinished jobs.... -touch build/.created -WARNING: exit code 1 from a shell command. - -Extension of fix: -https://hg.libsdl.org/SDL/rev/99d8b18acf8a - -Upstream-Status: Backport -Signed-off-by: Anuj Mittal ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff -r 007002587d5d -r 1fb1880d5edf configure ---- a/configure Tue Nov 12 17:24:37 2019 -0500 -+++ b/configure Wed Nov 13 10:51:02 2019 +0300 -@@ -25493,7 +25493,7 @@ - VERSION_DEPENDS=`echo $VERSION_SOURCES` - VERSION_OBJECTS=`echo "$VERSION_OBJECTS" | sed 's,[^ ]*/\([^ ]*\)\.rc,$(objects)/\1.o,g'` - VERSION_DEPENDS=`echo "$VERSION_DEPENDS" | sed "s,\\([^ ]*\\)/\\([^ ]*\\)\\.rc,\\\\ --\\$(objects)/\\2.o: \\1/\\2.rc\\\\ -+\\$(objects)/\\2.o: \\1/\\2.rc \\$(objects)/.created\\\\ - \\$(WINDRES) \\$< \\$@,g"` - - SDLMAIN_OBJECTS=`echo $SDLMAIN_SOURCES` -diff -r 007002587d5d -r 1fb1880d5edf configure.ac ---- a/configure.ac Tue Nov 12 17:24:37 2019 -0500 -+++ b/configure.ac Wed Nov 13 10:51:02 2019 +0300 -@@ -4177,7 +4177,7 @@ - VERSION_DEPENDS=`echo $VERSION_SOURCES` - VERSION_OBJECTS=`echo "$VERSION_OBJECTS" | sed 's,[[^ ]]*/\([[^ ]]*\)\.rc,$(objects)/\1.o,g'` - VERSION_DEPENDS=`echo "$VERSION_DEPENDS" | sed "s,\\([[^ ]]*\\)/\\([[^ ]]*\\)\\.rc,\\\\ --\\$(objects)/\\2.o: \\1/\\2.rc\\\\ -+\\$(objects)/\\2.o: \\1/\\2.rc \\$(objects)/.created\\\\ - \\$(WINDRES) \\$< \\$@,g"` - - SDLMAIN_OBJECTS=`echo $SDLMAIN_SOURCES` diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Fixed-bug-4797-SDL-fails-to-compile-with-Mesa-Master.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Fixed-bug-4797-SDL-fails-to-compile-with-Mesa-Master.patch deleted file mode 100644 index 8f5b6a0ce..000000000 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Fixed-bug-4797-SDL-fails-to-compile-with-Mesa-Master.patch +++ /dev/null @@ -1,41 +0,0 @@ -# HG changeset patch -# User Sylvain Becker -# Date 1570898876 -7200 -# Sat Oct 12 18:47:56 2019 +0200 -# Node ID 369b01006eb2f6fd563f7c315d29ae3fe503c432 -# Parent 4cbaffd0083b8cd17070dbd9d4ab1ce0fa9fca2d -Fixed bug 4797 - SDL fails to compile with Mesa Master (thanks Michael Olbrich!) - -fix building with Mesa 19.2 - -With Mesa 19.2 building fails with: - -/include/GLES/gl.h:63:25: error: conflicting types for 'GLsizeiptr' - -The same type is defined in include/SDL_opengl.h for OpenGL and the two -headers should not be included at the same time. -This was just never noticed because the same header guard '__gl_h_' was -used. This was changed in Mesa. The result is this error. - -Fix this the same way GLES2 already handles this: Don't include the GLES -header when the OpenGL header was already included. -(https://hg.libsdl.org/SDL/rev/a60b3c292f0f) - -Upstream-Status: Backport [https://hg.libsdl.org/SDL/rev/369b01006eb2] -Signed-off-by: Alistair Francis - -diff --git a/src/video/SDL_video.c b/src/video/SDL_video.c ---- a/src/video/SDL_video.c -+++ b/src/video/SDL_video.c -@@ -37,9 +37,9 @@ - #include "SDL_opengl.h" - #endif /* SDL_VIDEO_OPENGL */ - --#if SDL_VIDEO_OPENGL_ES -+#if SDL_VIDEO_OPENGL_ES && !SDL_VIDEO_OPENGL - #include "SDL_opengles.h" --#endif /* SDL_VIDEO_OPENGL_ES */ -+#endif /* SDL_VIDEO_OPENGL_ES && !SDL_VIDEO_OPENGL */ - - /* GL and GLES2 headers conflict on Linux 32 bits */ - #if SDL_VIDEO_OPENGL_ES2 && !SDL_VIDEO_OPENGL diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.10.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.10.bb deleted file mode 100644 index ac4a35604..000000000 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.10.bb +++ /dev/null @@ -1,77 +0,0 @@ -SUMMARY = "Simple DirectMedia Layer" -DESCRIPTION = "Simple DirectMedia Layer is a cross-platform multimedia \ -library designed to provide low level access to audio, keyboard, mouse, \ -joystick, 3D hardware via OpenGL, and 2D video framebuffer." -HOMEPAGE = "http://www.libsdl.org" -BUGTRACKER = "http://bugzilla.libsdl.org/" - -SECTION = "libs" - -LICENSE = "Zlib" -LIC_FILES_CHKSUM = "file://COPYING.txt;md5=504a9454ceb89fd75a2583473b11409e" - -PROVIDES = "virtual/libsdl2" - -SRC_URI = "http://www.libsdl.org/release/SDL2-${PV}.tar.gz \ - file://more-gen-depends.patch \ - file://0001-Fixed-bug-4538-validate-image-size-when-loading-BMP-.patch \ - file://0002-Fixed-bug-4797-SDL-fails-to-compile-with-Mesa-Master.patch \ - file://0001-configure-check-for-build-dir-when-building-version-.patch \ -" - -S = "${WORKDIR}/SDL2-${PV}" - -SRC_URI[md5sum] = "5a2114f2a6f348bdab5bf52b994811db" -SRC_URI[sha256sum] = "b4656c13a1f0d0023ae2f4a9cf08ec92fffb464e0f24238337784159b8b91d57" - -inherit autotools lib_package binconfig-disabled pkgconfig - -BINCONFIG = "${bindir}/sdl2-config" - -CVE_PRODUCT = "simple_directmedia_layer sdl" - -EXTRA_OECONF = "--disable-oss --disable-esd --disable-arts \ - --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \ - --disable-video-dummy \ - --enable-pthreads \ - --enable-sdl-dlopen \ - --disable-rpath \ - --disable-sndio \ - " - -# opengl packageconfig factored out to make it easy for distros -# and BSP layers to pick either (desktop) opengl, gles2, or no GL -PACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" - -PACKAGECONFIG_class-native = "x11" -PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" -PACKAGECONFIG ??= " \ - ${PACKAGECONFIG_GL} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland gles2', '', d)} \ -" -PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib," -PACKAGECONFIG[directfb] = "--enable-video-directfb,--disable-video-directfb,directfb" -PACKAGECONFIG[gles2] = "--enable-video-opengles,--disable-video-opengles,virtual/libgles2" -PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" -PACKAGECONFIG[kmsdrm] = "--enable-video-kmsdrm,--disable-video-kmsdrm,libdrm virtual/libgbm" -PACKAGECONFIG[opengl] = "--enable-video-opengl,--disable-video-opengl,virtual/libgl" -PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio" -PACKAGECONFIG[tslib] = "--enable-input-tslib,--disable-input-tslib,tslib" -PACKAGECONFIG[wayland] = "--enable-video-wayland,--disable-video-wayland,wayland-native wayland wayland-protocols libxkbcommon" -PACKAGECONFIG[x11] = "--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr libxrender" - -EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader" - -do_configure_prepend() { - # Remove old libtool macros. - MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4" - for i in ${MACROS}; do - rm -f ${S}/acinclude/$i - done - export SYSROOT=$PKG_CONFIG_SYSROOT_DIR -} - -FILES_${PN}-dev += "${libdir}/cmake" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb new file mode 100644 index 000000000..c1c941e45 --- /dev/null +++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb @@ -0,0 +1,81 @@ +SUMMARY = "Simple DirectMedia Layer" +DESCRIPTION = "Simple DirectMedia Layer is a cross-platform multimedia \ +library designed to provide low level access to audio, keyboard, mouse, \ +joystick, 3D hardware via OpenGL, and 2D video framebuffer." +HOMEPAGE = "http://www.libsdl.org" +BUGTRACKER = "http://bugzilla.libsdl.org/" + +SECTION = "libs" + +LICENSE = "Zlib" +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=2d4af6adb4d89aad0cdedbcc18c9a32f" + +# arm-neon adds MIT license +LICENSE_append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', '& MIT', '', d)}" +LIC_FILES_CHKSUM_append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', 'file://src/video/arm/pixman-arm-neon-asm.h;md5=9a9cc1e51abbf1da58f4d9528ec9d49b;beginline=1;endline=24', '', d)}" + +PROVIDES = "virtual/libsdl2" + +SRC_URI = "http://www.libsdl.org/release/SDL2-${PV}.tar.gz \ + file://more-gen-depends.patch \ +" + +S = "${WORKDIR}/SDL2-${PV}" + +SRC_URI[md5sum] = "783b6f2df8ff02b19bb5ce492b99c8ff" +SRC_URI[sha256sum] = "349268f695c02efbc9b9148a70b85e58cefbbf704abd3e91be654db7f1e2c863" + +inherit autotools lib_package binconfig-disabled pkgconfig + +BINCONFIG = "${bindir}/sdl2-config" + +CVE_PRODUCT = "simple_directmedia_layer sdl" + +EXTRA_OECONF = "--disable-oss --disable-esd --disable-arts \ + --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \ + --disable-video-dummy \ + --enable-pthreads \ + --enable-sdl-dlopen \ + --disable-rpath \ + --disable-sndio \ + --disable-fcitx --disable-ibus \ + " + +# opengl packageconfig factored out to make it easy for distros +# and BSP layers to pick either (desktop) opengl, gles2, or no GL +PACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" + +PACKAGECONFIG_class-native = "x11" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG ??= " \ + ${PACKAGECONFIG_GL} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland gles2', '', d)} \ + ${@bb.utils.contains("TUNE_FEATURES", "neon","arm-neon","",d)} \ +" +PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib," +PACKAGECONFIG[arm-neon] = "--enable-arm-neon,--disable-arm-neon" +PACKAGECONFIG[directfb] = "--enable-video-directfb,--disable-video-directfb,directfb" +PACKAGECONFIG[gles2] = "--enable-video-opengles,--disable-video-opengles,virtual/libgles2" +PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" +PACKAGECONFIG[kmsdrm] = "--enable-video-kmsdrm,--disable-video-kmsdrm,libdrm virtual/libgbm" +PACKAGECONFIG[opengl] = "--enable-video-opengl,--disable-video-opengl,virtual/libgl" +PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio" +PACKAGECONFIG[tslib] = "--enable-input-tslib,--disable-input-tslib,tslib" +PACKAGECONFIG[wayland] = "--enable-video-wayland,--disable-video-wayland,wayland-native wayland wayland-protocols libxkbcommon" +PACKAGECONFIG[x11] = "--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr libxrender" + +EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader" + +do_configure_prepend() { + # Remove old libtool macros. + MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4" + for i in ${MACROS}; do + rm -f ${S}/acinclude/$i + done + export SYSROOT=$PKG_CONFIG_SYSROOT_DIR +} + +FILES_${PN}-dev += "${libdir}/cmake" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/libva/libva-utils/0001-Build-sfcsample-only-when-X11-backend-is-enabled.patch b/poky/meta/recipes-graphics/libva/libva-utils/0001-Build-sfcsample-only-when-X11-backend-is-enabled.patch deleted file mode 100644 index 01fb71913..000000000 --- a/poky/meta/recipes-graphics/libva/libva-utils/0001-Build-sfcsample-only-when-X11-backend-is-enabled.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 8fc14e4bc81885b80c3072e549c2e6f59533d7ef Mon Sep 17 00:00:00 2001 -From: Anuj Mittal -Date: Fri, 8 Feb 2019 11:45:55 +0800 -Subject: [PATCH] Build sfcsample only when X11 backend is enabled - -See: https://github.com/intel/libva-utils/pull/149, and -https://github.com/intel/libva-utils/issues/150 - -Upstream-Status: Submitted - -Signed-off-by: Anuj Mittal ---- - Makefile.am | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index d28175a..e294e25 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -24,10 +24,11 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} - - AUTOMAKE_OPTIONS = foreign - --SUBDIRS = common decode encode vainfo videoprocess vendor/intel vendor/intel/sfcsample -+SUBDIRS = common decode encode vainfo videoprocess vendor/intel - - if USE_X11 - SUBDIRS += putsurface -+SUBDIRS += vendor/intel/sfcsample - else - if USE_WAYLAND - SUBDIRS += putsurface --- -2.17.1 - diff --git a/poky/meta/recipes-graphics/libva/libva-utils_2.5.0.bb b/poky/meta/recipes-graphics/libva/libva-utils_2.5.0.bb deleted file mode 100644 index f68d0cf8b..000000000 --- a/poky/meta/recipes-graphics/libva/libva-utils_2.5.0.bb +++ /dev/null @@ -1,35 +0,0 @@ -SUMMARY = "libva-utils is a collection of utilities from libva project" - -DESCRIPTION = "libva-utils is a collection of utilities \ -and examples to exercise VA-API in accordance with the libva \ -project.VA-API is an open-source library and API specification, \ -which provides access to graphics hardware acceleration capabilities \ -for video processing. It consists of a main library and driver-specific \ -acceleration backends for each supported hardware vendor" - -HOMEPAGE = "https://01.org/linuxmedia/vaapi" -BUGTRACKER = "https://github.com/intel/libva-utils/issues" - -SECTION = "x11" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" - -SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BP}.tar.bz2 \ - file://0001-Build-sfcsample-only-when-X11-backend-is-enabled.patch \ - " - -SRC_URI[md5sum] = "c1fada26c286654859eff33b2562cb79" -SRC_URI[sha256sum] = "9238c9d5110d60f935683390b8383fdac3507346384cd5f117a23c6db1d72a17" - -UPSTREAM_CHECK_URI = "https://github.com/intel/libva-utils/releases" - -DEPENDS = "libva" - -inherit autotools pkgconfig features_check - -# depends on libva which requires opengl -REQUIRED_DISTRO_FEATURES = "opengl" - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" -PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11 libxext libxfixes" -PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland" diff --git a/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb b/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb new file mode 100644 index 000000000..03b38027a --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb @@ -0,0 +1,32 @@ +SUMMARY = "libva-utils is a collection of utilities from libva project" + +DESCRIPTION = "libva-utils is a collection of utilities \ +and examples to exercise VA-API in accordance with the libva \ +project.VA-API is an open-source library and API specification, \ +which provides access to graphics hardware acceleration capabilities \ +for video processing. It consists of a main library and driver-specific \ +acceleration backends for each supported hardware vendor" + +HOMEPAGE = "https://01.org/linuxmedia/vaapi" +BUGTRACKER = "https://github.com/intel/libva-utils/issues" + +SECTION = "x11" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" + +SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.6-branch" +SRCREV = "8ea1eba433dcbceb0e5dcb54b8e3f984987f7a17" +S = "${WORKDIR}/git" + +UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))" + +DEPENDS = "libva" + +inherit meson pkgconfig features_check + +# depends on libva which requires opengl +REQUIRED_DISTRO_FEATURES = "opengl" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" +PACKAGECONFIG[x11] = "-Dx11=true, -Dx11=false,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[wayland] = "-Dwayland=true, -Dwayland=false,wayland-native wayland" diff --git a/poky/meta/recipes-graphics/libva/libva_2.5.0.bb b/poky/meta/recipes-graphics/libva/libva_2.5.0.bb deleted file mode 100644 index 73e2e01c3..000000000 --- a/poky/meta/recipes-graphics/libva/libva_2.5.0.bb +++ /dev/null @@ -1,46 +0,0 @@ -SUMMARY = "Video Acceleration (VA) API for Linux" -DESCRIPTION = "Video Acceleration API (VA API) is a library (libVA) \ -and API specification which enables and provides access to graphics \ -hardware (GPU) acceleration for video processing on Linux and UNIX \ -based operating systems. Accelerated processing includes video \ -decoding, video encoding, subpicture blending and rendering. The \ -specification was originally designed by Intel for its GMA (Graphics \ -Media Accelerator) series of GPU hardware, the API is however not \ -limited to GPUs or Intel specific hardware, as other hardware and \ -manufacturers can also freely use this API for hardware accelerated \ -video decoding." - -HOMEPAGE = "https://01.org/linuxmedia/vaapi" -BUGTRACKER = "https://github.com/intel/libva/issues" - -SECTION = "x11" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" - -SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BP}.tar.bz2" - -SRC_URI[md5sum] = "3688212fb7a87947070f3729e91ff7cf" -SRC_URI[sha256sum] = "3aa89cd369a506ac4dbe5de7c0ef5da4f3d220bf986403f02fa1f6f702af6878" - -UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases" - -DEPENDS = "libdrm virtual/mesa" - -inherit autotools pkgconfig features_check - -REQUIRED_DISTRO_FEATURES = "opengl" - -EXTRA_OECONF = "ac_cv_prog_WAYLAND_SCANNER=wayland-scanner" - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" -PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11 libxext libxfixes" -PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland" - -PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" - -RDEPENDS_${PN}-x11 =+ "${PN}" -RDEPENDS_${PN}-glx =+ "${PN}-x11" - -FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" -FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" -FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" diff --git a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb new file mode 100644 index 000000000..92cea83bc --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb @@ -0,0 +1,43 @@ +SUMMARY = "Video Acceleration (VA) API for Linux" +DESCRIPTION = "Video Acceleration API (VA API) is a library (libVA) \ +and API specification which enables and provides access to graphics \ +hardware (GPU) acceleration for video processing on Linux and UNIX \ +based operating systems. Accelerated processing includes video \ +decoding, video encoding, subpicture blending and rendering. The \ +specification was originally designed by Intel for its GMA (Graphics \ +Media Accelerator) series of GPU hardware, the API is however not \ +limited to GPUs or Intel specific hardware, as other hardware and \ +manufacturers can also freely use this API for hardware accelerated \ +video decoding." + +HOMEPAGE = "https://01.org/linuxmedia/vaapi" +BUGTRACKER = "https://github.com/intel/libva/issues" + +SECTION = "x11" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" + +SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BP}.tar.bz2" +SRC_URI[md5sum] = "aef13eb48e01a47d1416d97462a22a11" +SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e48629401eaea5" + +UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases" + +DEPENDS = "libdrm virtual/mesa" + +inherit meson pkgconfig features_check + +REQUIRED_DISTRO_FEATURES = "opengl" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" +PACKAGECONFIG[x11] = "-Dwith_x11=yes, -Dwith_x11=no,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[wayland] = "-Dwith_wayland=yes, -Dwith_wayland=no,wayland-native wayland" + +PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" + +RDEPENDS_${PN}-x11 =+ "${PN}" +RDEPENDS_${PN}-glx =+ "${PN}-x11" + +FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" +FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" +FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" diff --git a/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb index b9961c398..675ee40fa 100644 --- a/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb +++ b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb @@ -21,6 +21,8 @@ inherit autotools pkgconfig features_check # depends on virtual/libx11 REQUIRED_DISTRO_FEATURES = "x11" +CFLAGS += "-fcommon" + FILES_${PN} = "${bindir}/* \ ${datadir}/matchbox \ ${sysconfdir}/matchbox \ diff --git a/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb b/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb index ddbbd9406..7a11228ef 100644 --- a/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb +++ b/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb @@ -16,3 +16,5 @@ SRC_URI[sha256sum] = "ed02eb459dcb398f69b9fa5bf4dd813020405afc84331115469cdf7be9 UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/lxde/files/menu-cache/1.1/" inherit autotools gettext pkgconfig gtk-doc + +CFLAGS += "-fcommon" diff --git a/poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch b/poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch new file mode 100644 index 000000000..15485feb7 --- /dev/null +++ b/poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch @@ -0,0 +1,27 @@ +From bb2f0bea553d51d659a9bc46f7ae186885405151 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 13 Jan 2020 15:23:47 -0800 +Subject: [PATCH] meson misdetects 64bit atomics on mips/clang + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + src/util/u_atomic.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/util/u_atomic.c b/src/util/u_atomic.c +index e4bffa8..58e1ddd 100644 +--- a/src/util/u_atomic.c ++++ b/src/util/u_atomic.c +@@ -21,7 +21,7 @@ + * IN THE SOFTWARE. + */ + +-#if defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD) ++#if !defined(__clang__) && defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD) + + #include + #include +-- +2.24.1 + diff --git a/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch b/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch index 1869e1105..085254323 100644 --- a/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch +++ b/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch @@ -1,6 +1,6 @@ -From b6d9bc97cb0e8c540a45dba5440b036fb940ff95 Mon Sep 17 00:00:00 2001 -From: Alistair Francis -Date: Mon, 11 Nov 2019 09:38:15 -0800 +From 0d9ed002eff176b902da266d89829a9b0cb10946 Mon Sep 17 00:00:00 2001 +From: Alistair Francis +Date: Thu, 14 Nov 2019 13:04:49 -0800 Subject: [PATCH] meson.build: check for all linux host_os combinations Make sure that we are also looking for our host_os combinations like @@ -13,30 +13,30 @@ Upstream-Status: Pending Signed-off-by: Anuj Mittal Signed-off-by: Fabio Berton Signed-off-by: Otavio Salvador -Signed-off-by: Alistair Francis +Signed-off-by: Alistair Francis --- meson.build | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build -index d584152..a1f098c 100644 +index 898d025..09e3759 100644 --- a/meson.build +++ b/meson.build -@@ -117,7 +117,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2 +@@ -124,7 +124,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2 # Only build shared_glapi if at least one OpenGL API is enabled - with_shared_glapi = get_option('shared-glapi') and with_any_opengl + with_shared_glapi = with_shared_glapi and with_any_opengl -system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos'].contains(host_machine.system()) +system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'dragonfly'].contains(host_machine.system()) or host_machine.system().startswith('linux') dri_drivers = get_option('dri-drivers') if dri_drivers.contains('auto') -@@ -856,7 +856,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }', +@@ -884,7 +884,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }', endif # TODO: this is very incomplete --if ['linux', 'cygwin', 'gnu', 'gnu/kfreebsd'].contains(host_machine.system()) +-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd'].contains(host_machine.system()) +if ['cygwin', 'gnu', 'gnu/kfreebsd'].contains(host_machine.system()) or host_machine.system().startswith('linux') pre_args += '-D_GNU_SOURCE' elif host_machine.system() == 'sunos' diff --git a/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch b/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch index 199ed572d..cd35a1f85 100644 --- a/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch +++ b/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch @@ -1,13 +1,13 @@ -From af6923544de02ded648a736e07b9bd8b7c52dba9 Mon Sep 17 00:00:00 2001 -From: Alistair Francis -Date: Wed, 23 Oct 2019 09:46:28 -0700 +From df835389699b32bb6610b39972502e323f8e09e5 Mon Sep 17 00:00:00 2001 +From: Alistair Francis +Date: Thu, 14 Nov 2019 13:08:31 -0800 Subject: [PATCH] meson.build: make TLS ELF optional USE_ELF_TLS has replaced GLX_USE_TLS so this patch is the original "make TLS GLX optional again" patch updated to the latest mesa. Upstream-Status: Inappropriate [configuration] -Signed-off-by: Alistair Francis +Signed-off-by: Alistair Francis --- meson.build | 2 +- @@ -15,23 +15,23 @@ Signed-off-by: Alistair Francis 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build -index a1f098c..1e31eb4 100644 +index 09e3759..a954118 100644 --- a/meson.build +++ b/meson.build -@@ -378,7 +378,7 @@ if with_egl and not (with_platform_drm or with_platform_surfaceless or with_plat +@@ -387,7 +387,7 @@ if with_egl and not (with_platform_drm or with_platform_surfaceless or with_plat endif # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. --if not with_platform_android or get_option('platform-sdk-version') >= 29 +-if host_machine.system() != 'windows' and (not with_platform_android or get_option('platform-sdk-version') >= 29) +if (not with_platform_android or get_option('platform-sdk-version') >= 29) and get_option('elf-tls') pre_args += '-DUSE_ELF_TLS' endif diff --git a/meson_options.txt b/meson_options.txt -index b768c15..76cef24 100644 +index 626baf3..637ff14 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -333,6 +333,12 @@ option( +@@ -341,6 +341,12 @@ option( value : true, description : 'Enable direct rendering in GLX and EGL for DRI', ) diff --git a/poky/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch b/poky/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch index c20a1f7c5..a0536c87a 100644 --- a/poky/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch +++ b/poky/meta/recipes-graphics/mesa/files/0003-Allow-enable-DRI-without-DRI-drivers.patch @@ -1,4 +1,4 @@ -From 5ad6515238bc042cccf9959abad44fdee9aeb07f Mon Sep 17 00:00:00 2001 +From 7eaa21a79ce6d6e92f6bf98c28b68e3fcb4d7874 Mon Sep 17 00:00:00 2001 From: Fabio Berton Date: Wed, 12 Jun 2019 14:18:31 -0300 Subject: [PATCH] Allow enable DRI without DRI drivers @@ -15,10 +15,10 @@ Signed-off-by: Otavio Salvador 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build -index 1e31eb4..512eec6 100644 +index a954118..62864c6 100644 --- a/meson.build +++ b/meson.build -@@ -147,7 +147,7 @@ with_dri_r200 = dri_drivers.contains('r200') +@@ -154,7 +154,7 @@ with_dri_r200 = dri_drivers.contains('r200') with_dri_nouveau = dri_drivers.contains('nouveau') with_dri_swrast = dri_drivers.contains('swrast') @@ -28,10 +28,10 @@ index 1e31eb4..512eec6 100644 gallium_drivers = get_option('gallium-drivers') if gallium_drivers.contains('auto') diff --git a/meson_options.txt b/meson_options.txt -index 76cef24..a8abd04 100644 +index 637ff14..700c34c 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -34,6 +34,12 @@ option( +@@ -35,6 +35,12 @@ option( choices : ['auto', 'true', 'false'], description : 'enable support for dri3' ) diff --git a/poky/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch b/poky/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch index b5658d0c9..8d614e571 100644 --- a/poky/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch +++ b/poky/meta/recipes-graphics/mesa/files/0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch @@ -1,4 +1,4 @@ -From 1b1cb6e5ea25eaa98573328b9565728a08245997 Mon Sep 17 00:00:00 2001 +From 41cd8836d785c79381764e7de59319f87959a5cf Mon Sep 17 00:00:00 2001 From: Alistair Francis Date: Thu, 14 Nov 2019 09:06:02 -0800 Subject: [PATCH] Revert "mesa: Enable asm unconditionally, now that @@ -15,7 +15,7 @@ Signed-off-by: Alistair Francis 2 files changed, 67 insertions(+), 33 deletions(-) diff --git a/meson.build b/meson.build -index 512eec6..a2bcc3a 100644 +index 62864c6..b53be8d 100644 --- a/meson.build +++ b/meson.build @@ -49,6 +49,7 @@ with_vulkan_icd_dir = get_option('vulkan-icd-dir') @@ -26,7 +26,7 @@ index 512eec6..a2bcc3a 100644 with_glx_read_only_text = get_option('glx-read-only-text') with_glx_direct = get_option('glx-direct') with_osmesa = get_option('osmesa') -@@ -985,41 +986,68 @@ endif +@@ -1093,41 +1094,68 @@ dep_ws2_32 = cc.find_library('ws2_32', required : with_platform_windows) # TODO: shared/static? Is this even worth doing? @@ -129,10 +129,10 @@ index 512eec6..a2bcc3a 100644 endif diff --git a/meson_options.txt b/meson_options.txt -index a8abd04..0f4bd80 100644 +index 700c34c..62e8472 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -233,6 +233,12 @@ option( +@@ -241,6 +241,12 @@ option( value : false, description : 'Enable GLVND support.' ) diff --git a/poky/meta/recipes-graphics/mesa/files/0005-vc4-use-intmax_t-for-formatted-output-of-timespec-me.patch b/poky/meta/recipes-graphics/mesa/files/0005-vc4-use-intmax_t-for-formatted-output-of-timespec-me.patch new file mode 100644 index 000000000..901feca55 --- /dev/null +++ b/poky/meta/recipes-graphics/mesa/files/0005-vc4-use-intmax_t-for-formatted-output-of-timespec-me.patch @@ -0,0 +1,53 @@ +From 38a313474e127d61e749866423e708fc86ed9ec5 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 4 Dec 2019 14:15:28 -0800 +Subject: [PATCH] vc4: use intmax_t for formatted output of timespec members + +32bit architectures which have 64bit time_t does not fit the assumption +of time_t being same as system long int + +Fixes +error: format specifies type 'long' but the argument has type 'time_t' (aka 'long long') [-Werror,-Wformat] + time.tv_sec); + ^~~~~~~~~~~ + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2966] +Signed-off-by: Khem Raj +--- + src/gallium/drivers/v3d/v3d_bufmgr.c | 4 ++-- + src/gallium/drivers/vc4/vc4_bufmgr.c | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/gallium/drivers/v3d/v3d_bufmgr.c b/src/gallium/drivers/v3d/v3d_bufmgr.c +index b3e4d053cc0..c514bf00bf0 100644 +--- a/src/gallium/drivers/v3d/v3d_bufmgr.c ++++ b/src/gallium/drivers/v3d/v3d_bufmgr.c +@@ -80,8 +80,8 @@ v3d_bo_dump_stats(struct v3d_screen *screen) + + struct timespec time; + clock_gettime(CLOCK_MONOTONIC, &time); +- fprintf(stderr, " now: %ld\n", +- time.tv_sec); ++ fprintf(stderr, " now: %jd\n", ++ (intmax_t)time.tv_sec); + } + } + +diff --git a/src/gallium/drivers/vc4/vc4_bufmgr.c b/src/gallium/drivers/vc4/vc4_bufmgr.c +index 5ec360934c0..bf05f6cadd6 100644 +--- a/src/gallium/drivers/vc4/vc4_bufmgr.c ++++ b/src/gallium/drivers/vc4/vc4_bufmgr.c +@@ -107,8 +107,8 @@ vc4_bo_dump_stats(struct vc4_screen *screen) + + struct timespec time; + clock_gettime(CLOCK_MONOTONIC, &time); +- fprintf(stderr, " now: %ld\n", +- time.tv_sec); ++ fprintf(stderr, " now: %jd\n", ++ (intmax_t)time.tv_sec); + } + } + +-- +2.24.0 + diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_19.2.4.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_19.2.4.bb deleted file mode 100644 index d4b1c1c45..000000000 --- a/poky/meta/recipes-graphics/mesa/mesa-gl_19.2.4.bb +++ /dev/null @@ -1,10 +0,0 @@ -require mesa_${PV}.bb - -SUMMARY += " (OpenGL only, no EGL/GLES)" - -PROVIDES = "virtual/libgl virtual/mesa" - -S = "${WORKDIR}/mesa-${PV}" - -PACKAGECONFIG ??= "opengl dri ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" -PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_20.0.2.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_20.0.2.bb new file mode 100644 index 000000000..c7897cdaf --- /dev/null +++ b/poky/meta/recipes-graphics/mesa/mesa-gl_20.0.2.bb @@ -0,0 +1,15 @@ +require mesa_${PV}.bb + +SUMMARY += " (OpenGL only, no EGL/GLES)" + +PROVIDES = "virtual/libgl virtual/mesa" + +S = "${WORKDIR}/mesa-${PV}" + +# At least one DRI rendering engine is required to build mesa. +# When no X11 is available, use osmesa for the rendering engine. +PACKAGECONFIG ??= "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" +PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" + +# When NOT using X11, we need to make sure we have swrast available. +DRIDRIVERS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', ',swrast', d)}" diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc index 5838207e6..b7ef496fd 100644 --- a/poky/meta/recipes-graphics/mesa/mesa.inc +++ b/poky/meta/recipes-graphics/mesa/mesa.inc @@ -10,7 +10,7 @@ HOMEPAGE = "http://mesa3d.org" BUGTRACKER = "https://bugs.freedesktop.org" SECTION = "x11" LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://docs/license.html;md5=3a4999caf82cc503ac8b9e37c235782e" +LIC_FILES_CHKSUM = "file://docs/license.html;md5=c1843d93c460bbf778d6037ce324f9f7" PE = "2" @@ -46,6 +46,19 @@ export WANT_LLVM_RELEASE = "${MESA_LLVM_RELEASE}" MESA_LLVM_RELEASE ?= "${LLVMVERSION}" +# set the MESA_BUILD_TYPE to either 'release' (default) or 'debug' +# by default the upstream mesa sources build a debug release +# here we assume the user will want a release build by default +MESA_BUILD_TYPE ?= "release" +def check_buildtype(d): + _buildtype = d.getVar('MESA_BUILD_TYPE') + if _buildtype not in ['release', 'debug']: + bb.fatal("unknown build type (%s), please set MESA_BUILD_TYPE to either 'release' or 'debug'" % _buildtype) + if _buildtype == 'debug': + return 'debugoptimized' + return 'plain' +MESON_BUILDTYPE = "${@check_buildtype(d)}" + EXTRA_OEMESON = " \ -Dshared-glapi=true \ -Dgallium-opencl=disabled \ @@ -54,7 +67,7 @@ EXTRA_OEMESON = " \ " PACKAGECONFIG_class-target ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland vulkan', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl egl gles gbm dri gallium', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl egl gles gbm dri gallium virgl', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'x11 dri3', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11 vulkan', 'dri3', '', d)} \ elf-tls \ @@ -119,10 +132,11 @@ GALLIUMDRIVERS_LLVM33_ENABLED = "${@oe.utils.version_less_or_equal('MESA_LLVM_RE GALLIUMDRIVERS_LLVM = "r300,svga,nouveau${@',${GALLIUMDRIVERS_LLVM33}' if ${GALLIUMDRIVERS_LLVM33_ENABLED} else ''}" PACKAGECONFIG[r600] = "" +PACKAGECONFIG[virgl] = "" GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'gallium-llvm', ',${GALLIUMDRIVERS_LLVM}', '', d)}" GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'r600', ',r600', '', d)}" -GALLIUMDRIVERS_append = ",virgl" +GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'virgl', ',virgl', '', d)}" PACKAGECONFIG[gallium] = "-Dgallium-drivers=${GALLIUMDRIVERS}, -Dgallium-drivers=''" PACKAGECONFIG[gallium-llvm] = "-Dllvm=true -Dshared-llvm=true, -Dllvm=false, llvm${MESA_LLVM_RELEASE} llvm-native \ @@ -147,6 +161,7 @@ EXTRA_OEMESON_append = " -Dasm=false" FULL_OPTIMIZATION_append = " -fno-omit-frame-pointer" CFLAGS_append_armv5 = " -DMISSING_64BIT_ATOMICS" +CFLAGS_append_armv6 = " -DMISSING_64BIT_ATOMICS" # Remove the mesa dependency on mesa-dev, as mesa is empty RDEPENDS_${PN}-dev = "" diff --git a/poky/meta/recipes-graphics/mesa/mesa_19.2.4.bb b/poky/meta/recipes-graphics/mesa/mesa_19.2.4.bb deleted file mode 100644 index f4b33df22..000000000 --- a/poky/meta/recipes-graphics/mesa/mesa_19.2.4.bb +++ /dev/null @@ -1,21 +0,0 @@ -require ${BPN}.inc - -SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ - file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \ - file://0002-meson.build-make-TLS-ELF-optional.patch \ - file://0003-Allow-enable-DRI-without-DRI-drivers.patch \ - file://0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch \ - " - -SRC_URI[md5sum] = "5c047732b81651ddb341597528b4b096" -SRC_URI[sha256sum] = "09000a0f7dbbd82e193b81a8f1bf0c118eab7ca975c0329181968596e548e30f" - -UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P\d+(\.\d+)+)" - -#because we cannot rely on the fact that all apps will use pkgconfig, -#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER -do_install_append() { - if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then - sed -i -e 's/^#if defined(MESA_EGL_NO_X11_HEADERS)$/#if defined(MESA_EGL_NO_X11_HEADERS) || ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h - fi -} diff --git a/poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb b/poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb new file mode 100644 index 000000000..56ee28c87 --- /dev/null +++ b/poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb @@ -0,0 +1,25 @@ +require ${BPN}.inc + +SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ + file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \ + file://0002-meson.build-make-TLS-ELF-optional.patch \ + file://0003-Allow-enable-DRI-without-DRI-drivers.patch \ + file://0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch \ + file://0005-vc4-use-intmax_t-for-formatted-output-of-timespec-me.patch \ + file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \ + " + +SRC_URI[md5sum] = "31ca59cd92c38cb8e1a58b62b01c3e08" +SRC_URI[sha256sum] = "aa54f1cb669550606aab8ceb475105d15aeb814fca5a778ce70d0fd10e98e86f" + +UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P\d+(\.\d+)+)" + +CFLAGS += "-fcommon" + +#because we cannot rely on the fact that all apps will use pkgconfig, +#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER +do_install_append() { + if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then + sed -i -e 's/^#elif defined(__unix__) && defined(EGL_NO_X11)$/#elif defined(__unix__) \&\& defined(EGL_NO_X11) || ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h + fi +} diff --git a/poky/meta/recipes-graphics/pango/pango/0001-Fix-build-reproducibility.patch b/poky/meta/recipes-graphics/pango/pango/0001-Fix-build-reproducibility.patch new file mode 100644 index 000000000..03abf8763 --- /dev/null +++ b/poky/meta/recipes-graphics/pango/pango/0001-Fix-build-reproducibility.patch @@ -0,0 +1,31 @@ +From f8b32901981a06a8db4169b82a704dcf7e8b6560 Mon Sep 17 00:00:00 2001 +From: Joshua Watt +Date: Wed, 20 Nov 2019 15:43:57 -0600 +Subject: [PATCH] Fix build reproducibility + +Changes the comment in pango-enum-types.c to reference the file basename +instead of the full path. This ensures that the generated file is +reproducible when it is included in source packages meant for debugging. + +Upstream-Status: Pending [https://gitlab.gnome.org/GNOME/pango/merge_requests/159] +Signed-off-by: Joshua Watt +--- + pango/pango-enum-types.c.template | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pango/pango-enum-types.c.template b/pango/pango-enum-types.c.template +index d922c691..0d55ef74 100644 +--- a/pango/pango-enum-types.c.template ++++ b/pango/pango-enum-types.c.template +@@ -6,7 +6,7 @@ + /*** END file-header ***/ + + /*** BEGIN file-production ***/ +-/* enumerations from "@filename@" */ ++/* enumerations from "@basename@" */ + /*** END file-production ***/ + + /*** BEGIN value-header ***/ +-- +2.23.0 + diff --git a/poky/meta/recipes-graphics/pango/pango/0001-Skip-thai-break-tests-without-libthai.patch b/poky/meta/recipes-graphics/pango/pango/0001-Skip-thai-break-tests-without-libthai.patch deleted file mode 100644 index 3f9ebff33..000000000 --- a/poky/meta/recipes-graphics/pango/pango/0001-Skip-thai-break-tests-without-libthai.patch +++ /dev/null @@ -1,36 +0,0 @@ -Upstream-Status: Backport -Signed-off-by: Ross Burton - -From 12beb39925b5a4574a7cfd86073b59bceb49f791 Mon Sep 17 00:00:00 2001 -From: Matthias Clasen -Date: Wed, 4 Sep 2019 15:51:06 -0400 -Subject: [PATCH] Skip thai break tests without libthai - -If we don't have libthai, these tests fail. - -Closes: https://gitlab.gnome.org/GNOME/pango/issues/420 ---- - tests/meson.build | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/tests/meson.build b/tests/meson.build -index 4c22c12c..c617331f 100644 ---- a/tests/meson.build -+++ b/tests/meson.build -@@ -89,9 +89,12 @@ test_breaks_data = [ - 'breaks/one', - 'breaks/two', - 'breaks/three', -- 'breaks/four', - ] - -+if thai_dep.found() -+ test_breaks_data += [ 'breaks/four', ] -+endif -+ - test_items_data = [ - 'itemize/one', - ] --- -2.20.1 - diff --git a/poky/meta/recipes-graphics/pango/pango_1.44.6.bb b/poky/meta/recipes-graphics/pango/pango_1.44.6.bb deleted file mode 100644 index 8138ef72c..000000000 --- a/poky/meta/recipes-graphics/pango/pango_1.44.6.bb +++ /dev/null @@ -1,45 +0,0 @@ -SUMMARY = "Framework for layout and rendering of internationalized text" -DESCRIPTION = "Pango is a library for laying out and rendering of text, \ -with an emphasis on internationalization. Pango can be used anywhere \ -that text layout is needed, though most of the work on Pango so far has \ -been done in the context of the GTK+ widget toolkit. Pango forms the \ -core of text and font handling for GTK+-2.x." -HOMEPAGE = "http://www.pango.org/" -BUGTRACKER = "http://bugzilla.gnome.org" -SECTION = "libs" -LICENSE = "LGPLv2.0+" - -LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" - -GNOMEBASEBUILDCLASS = "meson" - -inherit gnomebase gtk-doc ptest-gnome upstream-version-is-even gobject-introspection - -SRC_URI += "file://run-ptest \ - file://0001-Skip-thai-break-tests-without-libthai.patch" -SRC_URI[archive.md5sum] = "db0a3243ba33e02aaa775412f8e5f412" -SRC_URI[archive.sha256sum] = "3e1e41ba838737e200611ff001e3b304c2ca4cdbba63d200a20db0b0ddc0f86c" - -DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi" - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} \ - ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}" - -PACKAGECONFIG[x11] = ",,virtual/libx11 libxft" -PACKAGECONFIG[tests] = "-Dinstall-tests=true, -Dinstall-tests=false" -PACKAGECONFIG[thai] = ",,libthai" - -GTKDOC_MESON_OPTION = "gtk_doc" -GIR_MESON_OPTION = 'introspection' - -LEAD_SONAME = "libpango-1.0*" - -FILES_${PN} = "${bindir}/* ${libdir}/libpango*${SOLIBS}" - -RDEPENDS_${PN}-ptest += "cantarell-fonts" -RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-en-us" - -RPROVIDES_${PN} += "pango-modules pango-module-indic-lang \ - pango-module-basic-fc pango-module-arabic-lang" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/pango/pango_1.44.7.bb b/poky/meta/recipes-graphics/pango/pango_1.44.7.bb new file mode 100644 index 000000000..0ee8abcc0 --- /dev/null +++ b/poky/meta/recipes-graphics/pango/pango_1.44.7.bb @@ -0,0 +1,49 @@ +SUMMARY = "Framework for layout and rendering of internationalized text" +DESCRIPTION = "Pango is a library for laying out and rendering of text, \ +with an emphasis on internationalization. Pango can be used anywhere \ +that text layout is needed, though most of the work on Pango so far has \ +been done in the context of the GTK+ widget toolkit. Pango forms the \ +core of text and font handling for GTK+-2.x." +HOMEPAGE = "http://www.pango.org/" +BUGTRACKER = "http://bugzilla.gnome.org" +SECTION = "libs" +LICENSE = "LGPLv2.0+" + +LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" + +GNOMEBASEBUILDCLASS = "meson" + +inherit gnomebase gtk-doc ptest-gnome upstream-version-is-even gobject-introspection + +SRC_URI += "file://run-ptest \ + file://0001-Fix-build-reproducibility.patch" +SRC_URI[archive.md5sum] = "c75cc5b833d934d98e83343832e20e5d" +SRC_URI[archive.sha256sum] = "66a5b6cc13db73efed67b8e933584509f8ddb7b10a8a40c3850ca4a985ea1b1f" + +DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} \ + ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}" + +PACKAGECONFIG[x11] = ",,virtual/libx11 libxft" +PACKAGECONFIG[tests] = "-Dinstall-tests=true, -Dinstall-tests=false" +PACKAGECONFIG[thai] = ",,libthai" + +GTKDOC_MESON_OPTION = "gtk_doc" +GIR_MESON_OPTION = 'introspection' + +do_configure_prepend_toolchain-clang() { + sed -i -e "/Werror=implicit-fallthrough/d" ${S}/meson.build +} + +LEAD_SONAME = "libpango-1.0*" + +FILES_${PN} = "${bindir}/* ${libdir}/libpango*${SOLIBS}" + +RDEPENDS_${PN}-ptest += "cantarell-fonts" +RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-en-us" + +RPROVIDES_${PN} += "pango-modules pango-module-indic-lang \ + pango-module-basic-fc pango-module-arabic-lang" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/piglit/piglit_git.bb b/poky/meta/recipes-graphics/piglit/piglit_git.bb index 696d438c5..58d10d6b9 100644 --- a/poky/meta/recipes-graphics/piglit/piglit_git.bb +++ b/poky/meta/recipes-graphics/piglit/piglit_git.bb @@ -10,7 +10,7 @@ SRC_URI = "git://gitlab.freedesktop.org/mesa/piglit.git;protocol=https \ " UPSTREAM_CHECK_COMMITS = "1" -SRCREV = "0d1a47a4c10d4dd7225bd6510f8191684b31235e" +SRCREV = "6126c2d4e476c7770d216ffa1932c10e2a5a7813" # (when PV goes above 1.0 remove the trailing r) PV = "1.0+gitr${SRCPV}" @@ -44,6 +44,7 @@ do_configure_prepend() { fi } +# Forcibly strip because Piglit is *huge* OECMAKE_TARGET_INSTALL = "install/strip" RDEPENDS_${PN} = "waffle waffle-bin python3 python3-mako python3-json \ @@ -55,5 +56,9 @@ RDEPENDS_${PN} = "waffle waffle-bin python3 python3-mako python3-json \ INSANE_SKIP_${PN} += "dev-so already-stripped" +# As nothing builds against Piglit we don't need to have anything in the +# sysroot, especially when this is ~2GB of test suite +SYSROOT_DIRS_remove = "${libdir}" + # Can't be built with ccache CCACHE_DISABLE = "1" diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch b/poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch new file mode 100644 index 000000000..0fd1d511d --- /dev/null +++ b/poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch @@ -0,0 +1,27 @@ +From 63788c63ed39a3ce9994f4315d8997e1a9300d4d Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Mon, 6 Jan 2020 12:44:42 +0100 +Subject: [PATCH] meson.build: use 'python3' directly for python + +This avoids a dependency on target python (due to meson probing +its configuration). + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 682d7c8..19d2eae 100644 +--- a/meson.build ++++ b/meson.build +@@ -60,7 +60,7 @@ foreach w : warnings + endif + endforeach + +-prog_python = import('python').find_installation('python3') ++prog_python = 'python3' + + libdrm_dep = dependency('libdrm', version : '>=2.4.50') + thread_dep = dependency('threads') diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.0.bb b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.0.bb deleted file mode 100644 index 4420d84ae..000000000 --- a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.0.bb +++ /dev/null @@ -1,25 +0,0 @@ -SUMMARY = "VirGL virtual OpenGL renderer" -DESCRIPTION = "Virgil is a research project to investigate the possibility of \ -creating a virtual 3D GPU for use inside qemu virtual machines, that allows \ -the guest operating system to use the capabilities of the host GPU to \ -accelerate 3D rendering." -HOMEPAGE = "https://virgil3d.github.io/" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=c81c08eeefd9418fca8f88309a76db10" - -DEPENDS = "libdrm mesa libepoxy" -SRCREV = "48cc96c9aebb9d0164830a157efc8916f08f00c0" -SRC_URI = "git://anongit.freedesktop.org/virglrenderer \ - file://0001-gallium-Expand-libc-check-to-be-platform-OS-check.patch \ - " - -S = "${WORKDIR}/git" - -inherit autotools pkgconfig features_check - -BBCLASSEXTEND = "native nativesdk" - -REQUIRED_DISTRO_FEATURES = "opengl" -REQUIRED_DISTRO_FEATURES_class-native = "" -REQUIRED_DISTRO_FEATURES_class-nativesdk = "" diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb new file mode 100644 index 000000000..1046b8504 --- /dev/null +++ b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb @@ -0,0 +1,26 @@ +SUMMARY = "VirGL virtual OpenGL renderer" +DESCRIPTION = "Virgil is a research project to investigate the possibility of \ +creating a virtual 3D GPU for use inside qemu virtual machines, that allows \ +the guest operating system to use the capabilities of the host GPU to \ +accelerate 3D rendering." +HOMEPAGE = "https://virgil3d.github.io/" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=c81c08eeefd9418fca8f88309a76db10" + +DEPENDS = "libdrm mesa libepoxy" +SRCREV = "7d204f3927be65fb3365dce01dbcd04d447a4985" +SRC_URI = "git://anongit.freedesktop.org/virglrenderer \ + file://0001-gallium-Expand-libc-check-to-be-platform-OS-check.patch \ + file://0001-meson.build-use-python3-directly-for-python.patch \ + " + +S = "${WORKDIR}/git" + +inherit meson pkgconfig features_check + +BBCLASSEXTEND = "native nativesdk" + +REQUIRED_DISTRO_FEATURES = "opengl" +REQUIRED_DISTRO_FEATURES_class-native = "" +REQUIRED_DISTRO_FEATURES_class-nativesdk = "" diff --git a/poky/meta/recipes-graphics/vulkan/assimp/0001-Use-ASSIMP_LIB_INSTALL_DIR-to-search-library.patch b/poky/meta/recipes-graphics/vulkan/assimp/0001-Use-ASSIMP_LIB_INSTALL_DIR-to-search-library.patch new file mode 100644 index 000000000..34c5bfa85 --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/assimp/0001-Use-ASSIMP_LIB_INSTALL_DIR-to-search-library.patch @@ -0,0 +1,68 @@ +From 58f576d6f240b08957a402960cdf06c74201ac7b Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Thu, 12 Dec 2019 22:16:15 -0800 +Subject: [PATCH] Use ASSIMP_LIB_INSTALL_DIR to search library + +Use ASSIMP_LIB_INSTALL_DIR rather than hardcoded /lib to search library + +Upstream-Status: Inappropriate [oe specific] + +Signed-off-by: Hongxu Jia + +--- + assimpTargets-release.cmake.in | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/assimpTargets-release.cmake.in b/assimpTargets-release.cmake.in +index f3db8f1..b8a066a 100644 +--- a/assimpTargets-release.cmake.in ++++ b/assimpTargets-release.cmake.in +@@ -42,11 +42,11 @@ if(MSVC) + # Import target "assimp::assimp" for configuration "Release" + set_property(TARGET assimp::assimp APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(assimp::assimp PROPERTIES +- IMPORTED_IMPLIB_RELEASE "${_IMPORT_PREFIX}/lib/${importLibraryName}" ++ IMPORTED_IMPLIB_RELEASE "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${importLibraryName}" + IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/bin/${sharedLibraryName}" + ) + list(APPEND _IMPORT_CHECK_TARGETS assimp::assimp ) +- list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/lib/${importLibraryName}") ++ list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${importLibraryName}") + list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/bin/${sharedLibraryName}" ) + else() + set(staticLibraryName "assimp${ASSIMP_LIBRARY_SUFFIX}@CMAKE_STATIC_LIBRARY_SUFFIX@") +@@ -54,10 +54,10 @@ if(MSVC) + # Import target "assimp::assimp" for configuration "Release" + set_property(TARGET assimp::assimp APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(assimp::assimp PROPERTIES +- IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/${staticLibraryName}" ++ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${staticLibraryName}" + ) + list(APPEND _IMPORT_CHECK_TARGETS assimp::assimp ) +- list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/lib/${staticLibraryName}") ++ list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${staticLibraryName}") + endif() + + else() +@@ -70,17 +70,17 @@ else() + endif() + set_target_properties(assimp::assimp PROPERTIES + IMPORTED_SONAME_RELEASE "${sharedLibraryName}" +- IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/${sharedLibraryName}" ++ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${sharedLibraryName}" + ) + list(APPEND _IMPORT_CHECK_TARGETS assimp::assimp ) +- list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/lib/${sharedLibraryName}" ) ++ list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${sharedLibraryName}" ) + else() + set(staticLibraryName "libassimp${ASSIMP_LIBRARY_SUFFIX}@CMAKE_STATIC_LIBRARY_SUFFIX@") + set_target_properties(assimp::assimp PROPERTIES +- IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/${staticLibraryName}" ++ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${staticLibraryName}" + ) + list(APPEND _IMPORT_CHECK_TARGETS assimp::assimp ) +- list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/lib/${staticLibraryName}" ) ++ list(APPEND _IMPORT_CHECK_FILES_FOR_assimp::assimp "${_IMPORT_PREFIX}/@ASSIMP_LIB_INSTALL_DIR@/${staticLibraryName}" ) + endif() + endif() + diff --git a/poky/meta/recipes-graphics/vulkan/assimp/0001-closes-https-github.com-assimp-assimp-issues-2733-up.patch b/poky/meta/recipes-graphics/vulkan/assimp/0001-closes-https-github.com-assimp-assimp-issues-2733-up.patch new file mode 100644 index 000000000..87a165871 --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/assimp/0001-closes-https-github.com-assimp-assimp-issues-2733-up.patch @@ -0,0 +1,1664 @@ +From 7fc220b2350d78942fb3935cad0b1564418ebe8f Mon Sep 17 00:00:00 2001 +From: Kim Kulling +Date: Tue, 19 Nov 2019 20:30:40 +0100 +Subject: [PATCH] closes https://github.com/assimp/assimp/issues/2733: update + of zlip to fix gcc build for v9.2.0 32 bit + +Upstream-Status: Backport [https://github.com/assimp/assimp/commit/f78446b14aff46db2ef27d062a275b6a01fd68b1] +Signed-off-by: Alexander Kanavin +--- + contrib/zip/.gitignore | 2 + + contrib/zip/CMakeLists.txt | 83 +++++- + contrib/zip/README.md | 12 +- + contrib/zip/appveyor.yml | 2 +- + contrib/zip/src/miniz.h | 457 ++++++++++++++++++++++++++++---- + contrib/zip/src/zip.c | 62 +++-- + contrib/zip/src/zip.h | 457 ++++++++++++++++---------------- + contrib/zip/test/CMakeLists.txt | 27 +- + contrib/zip/test/test.c | 38 ++- + contrib/zip/test/test_miniz.c | 25 +- + 10 files changed, 821 insertions(+), 344 deletions(-) + +diff --git a/contrib/zip/.gitignore b/contrib/zip/.gitignore +index a7904a1e..49b2cb2f 100644 +--- a/contrib/zip/.gitignore ++++ b/contrib/zip/.gitignore +@@ -1,6 +1,7 @@ + /build/ + /test/build/ + /xcodeproj/ ++.vscode/ + + # Object files + *.o +@@ -54,3 +55,4 @@ zip.dir/ + test/test.exe.vcxproj.filters + test/test.exe.vcxproj + test/test.exe.dir/ ++ +diff --git a/contrib/zip/CMakeLists.txt b/contrib/zip/CMakeLists.txt +index b46dbb1d..77916d2e 100644 +--- a/contrib/zip/CMakeLists.txt ++++ b/contrib/zip/CMakeLists.txt +@@ -1,10 +1,14 @@ +-cmake_minimum_required(VERSION 2.8) +-project(zip) +-enable_language(C) ++cmake_minimum_required(VERSION 3.0) ++ ++project(zip ++ LANGUAGES C ++ VERSION "0.1.15") + set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) + ++option(CMAKE_DISABLE_TESTING "Disable test creation" OFF) ++ + if (MSVC) +- # Use secure functions by defaualt and suppress warnings about "deprecated" functions ++ # Use secure functions by default and suppress warnings about "deprecated" functions + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES=1") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT=1") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_NONSTDC_NO_WARNINGS=1 /D _CRT_SECURE_NO_WARNINGS=1") +@@ -12,28 +16,80 @@ elseif ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU" OR + "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" OR + "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99 -Wall -Wextra -Werror -pedantic") ++ if(ENABLE_COVERAGE) ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage") ++ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage") ++ endif() + endif (MSVC) + + # zip + set(SRC src/miniz.h src/zip.h src/zip.c) + add_library(${PROJECT_NAME} ${SRC}) +-target_include_directories(${PROJECT_NAME} INTERFACE src) ++target_include_directories(${PROJECT_NAME} PUBLIC ++ $ ++ $ ++) + + # test + if (NOT CMAKE_DISABLE_TESTING) + enable_testing() + add_subdirectory(test) + find_package(Sanitizers) +- add_sanitizers(${PROJECT_NAME} test.exe) +- add_sanitizers(${PROJECT_NAME} test_miniz.exe) ++ add_sanitizers(${PROJECT_NAME} ${test_out} ${test_miniz_out}) + endif() + ++#### ++# Installation (https://github.com/forexample/package-example) { ++ ++set(CONFIG_INSTALL_DIR "lib/cmake/${PROJECT_NAME}") ++set(INCLUDE_INSTALL_DIR "include") ++ ++set(GENERATED_DIR "${CMAKE_CURRENT_BINARY_DIR}/generated") ++ ++# Configuration ++set(VERSION_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}ConfigVersion.cmake") ++set(PROJECT_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}Config.cmake") ++set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") ++set(NAMESPACE "${PROJECT_NAME}::") ++ ++# Include module with fuction 'write_basic_package_version_file' ++include(CMakePackageConfigHelpers) ++ ++# Note: PROJECT_VERSION is used as a VERSION ++write_basic_package_version_file( ++ "${VERSION_CONFIG}" COMPATIBILITY SameMajorVersion ++) ++ ++# Use variables: ++# * TARGETS_EXPORT_NAME ++# * PROJECT_NAME ++configure_package_config_file( ++ "cmake/Config.cmake.in" ++ "${PROJECT_CONFIG}" ++ INSTALL_DESTINATION "${CONFIG_INSTALL_DIR}" ++) ++ ++install( ++ FILES "${PROJECT_CONFIG}" "${VERSION_CONFIG}" ++ DESTINATION "${CONFIG_INSTALL_DIR}" ++) ++ ++install( ++ EXPORT "${TARGETS_EXPORT_NAME}" ++ NAMESPACE "${NAMESPACE}" ++ DESTINATION "${CONFIG_INSTALL_DIR}" ++) ++ ++# } ++ + install(TARGETS ${PROJECT_NAME} ++ EXPORT ${TARGETS_EXPORT_NAME} + RUNTIME DESTINATION bin + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib +- COMPONENT library) +-install(FILES ${PROJECT_SOURCE_DIR}/src/zip.h DESTINATION include) ++ INCLUDES DESTINATION ${INCLUDE_INSTALL_DIR} ++) ++install(FILES ${PROJECT_SOURCE_DIR}/src/zip.h DESTINATION ${INCLUDE_INSTALL_DIR}/zip) + + # uninstall target (https://gitlab.kitware.com/cmake/community/wikis/FAQ#can-i-do-make-uninstall-with-cmake) + if(NOT TARGET uninstall) +@@ -45,3 +101,12 @@ if(NOT TARGET uninstall) + add_custom_target(uninstall + COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake) + endif() ++ ++find_package(Doxygen) ++if(DOXYGEN_FOUND) ++ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY) ++ add_custom_target(doc ++ ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile ++ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} ++ COMMENT "Generating API documentation with Doxygen" VERBATIM) ++endif() +diff --git a/contrib/zip/README.md b/contrib/zip/README.md +index d5fb8cd2..14eb9a34 100644 +--- a/contrib/zip/README.md ++++ b/contrib/zip/README.md +@@ -71,7 +71,7 @@ int arg = 2; + zip_extract("foo.zip", "/tmp", on_extract_entry, &arg); + ``` + +-* Extract a zip entry into memory. ++* Extract a zip entry into memory. + ```c + void *buf = NULL; + size_t bufsize; +@@ -89,7 +89,7 @@ zip_close(zip); + free(buf); + ``` + +-* Extract a zip entry into memory (no internal allocation). ++* Extract a zip entry into memory (no internal allocation). + ```c + unsigned char *buf; + size_t bufsize; +@@ -110,7 +110,7 @@ zip_close(zip); + free(buf); + ``` + +-* Extract a zip entry into memory using callback. ++* Extract a zip entry into memory using callback. + ```c + struct buffer_t { + char *data; +@@ -144,7 +144,7 @@ free(buf.data); + ``` + + +-* Extract a zip entry into a file. ++* Extract a zip entry into a file. + ```c + struct zip_t *zip = zip_open("foo.zip", 0, 'r'); + { +@@ -157,7 +157,7 @@ struct zip_t *zip = zip_open("foo.zip", 0, 'r'); + zip_close(zip); + ``` + +-* List of all zip entries ++* List of all zip entries + ```c + struct zip_t *zip = zip_open("foo.zip", 0, 'r'); + int i, n = zip_total_entries(zip); +@@ -174,7 +174,7 @@ for (i = 0; i < n; ++i) { + zip_close(zip); + ``` + +-## Bindings ++# Bindings + Compile zip library as a dynamic library. + ```shell + $ mkdir build +diff --git a/contrib/zip/appveyor.yml b/contrib/zip/appveyor.yml +index 0be6373c..ea17f5de 100644 +--- a/contrib/zip/appveyor.yml ++++ b/contrib/zip/appveyor.yml +@@ -1,4 +1,4 @@ +-version: zip-0.1.9.{build} ++version: zip-0.1.15.{build} + build_script: + - cmd: >- + cd c:\projects\zip +diff --git a/contrib/zip/src/miniz.h b/contrib/zip/src/miniz.h +index 2c27a94d..c4fcfb83 100644 +--- a/contrib/zip/src/miniz.h ++++ b/contrib/zip/src/miniz.h +@@ -221,6 +221,7 @@ + #ifndef MINIZ_HEADER_INCLUDED + #define MINIZ_HEADER_INCLUDED + ++#include + #include + + // Defines to completely disable specific portions of miniz.c: +@@ -284,7 +285,8 @@ + /* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES only if not set */ + #if !defined(MINIZ_USE_UNALIGNED_LOADS_AND_STORES) + #if MINIZ_X86_OR_X64_CPU +-/* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES to 1 on CPU's that permit efficient integer loads and stores from unaligned addresses. */ ++/* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES to 1 on CPU's that permit efficient ++ * integer loads and stores from unaligned addresses. */ + #define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 1 + #define MINIZ_UNALIGNED_USE_MEMCPY + #else +@@ -354,6 +356,44 @@ enum { + MZ_FIXED = 4 + }; + ++/* miniz error codes. Be sure to update mz_zip_get_error_string() if you add or ++ * modify this enum. */ ++typedef enum { ++ MZ_ZIP_NO_ERROR = 0, ++ MZ_ZIP_UNDEFINED_ERROR, ++ MZ_ZIP_TOO_MANY_FILES, ++ MZ_ZIP_FILE_TOO_LARGE, ++ MZ_ZIP_UNSUPPORTED_METHOD, ++ MZ_ZIP_UNSUPPORTED_ENCRYPTION, ++ MZ_ZIP_UNSUPPORTED_FEATURE, ++ MZ_ZIP_FAILED_FINDING_CENTRAL_DIR, ++ MZ_ZIP_NOT_AN_ARCHIVE, ++ MZ_ZIP_INVALID_HEADER_OR_CORRUPTED, ++ MZ_ZIP_UNSUPPORTED_MULTIDISK, ++ MZ_ZIP_DECOMPRESSION_FAILED, ++ MZ_ZIP_COMPRESSION_FAILED, ++ MZ_ZIP_UNEXPECTED_DECOMPRESSED_SIZE, ++ MZ_ZIP_CRC_CHECK_FAILED, ++ MZ_ZIP_UNSUPPORTED_CDIR_SIZE, ++ MZ_ZIP_ALLOC_FAILED, ++ MZ_ZIP_FILE_OPEN_FAILED, ++ MZ_ZIP_FILE_CREATE_FAILED, ++ MZ_ZIP_FILE_WRITE_FAILED, ++ MZ_ZIP_FILE_READ_FAILED, ++ MZ_ZIP_FILE_CLOSE_FAILED, ++ MZ_ZIP_FILE_SEEK_FAILED, ++ MZ_ZIP_FILE_STAT_FAILED, ++ MZ_ZIP_INVALID_PARAMETER, ++ MZ_ZIP_INVALID_FILENAME, ++ MZ_ZIP_BUF_TOO_SMALL, ++ MZ_ZIP_INTERNAL_ERROR, ++ MZ_ZIP_FILE_NOT_FOUND, ++ MZ_ZIP_ARCHIVE_TOO_LARGE, ++ MZ_ZIP_VALIDATION_FAILED, ++ MZ_ZIP_WRITE_CALLBACK_FAILED, ++ MZ_ZIP_TOTAL_ERRORS ++} mz_zip_error; ++ + // Method + #define MZ_DEFLATED 8 + +@@ -696,6 +736,7 @@ typedef size_t (*mz_file_read_func)(void *pOpaque, mz_uint64 file_ofs, + void *pBuf, size_t n); + typedef size_t (*mz_file_write_func)(void *pOpaque, mz_uint64 file_ofs, + const void *pBuf, size_t n); ++typedef mz_bool (*mz_file_needs_keepalive)(void *pOpaque); + + struct mz_zip_internal_state_tag; + typedef struct mz_zip_internal_state_tag mz_zip_internal_state; +@@ -707,13 +748,27 @@ typedef enum { + MZ_ZIP_MODE_WRITING_HAS_BEEN_FINALIZED = 3 + } mz_zip_mode; + +-typedef struct mz_zip_archive_tag { ++typedef enum { ++ MZ_ZIP_TYPE_INVALID = 0, ++ MZ_ZIP_TYPE_USER, ++ MZ_ZIP_TYPE_MEMORY, ++ MZ_ZIP_TYPE_HEAP, ++ MZ_ZIP_TYPE_FILE, ++ MZ_ZIP_TYPE_CFILE, ++ MZ_ZIP_TOTAL_TYPES ++} mz_zip_type; ++ ++typedef struct { + mz_uint64 m_archive_size; + mz_uint64 m_central_directory_file_ofs; +- mz_uint m_total_files; ++ ++ /* We only support up to UINT32_MAX files in zip64 mode. */ ++ mz_uint32 m_total_files; + mz_zip_mode m_zip_mode; ++ mz_zip_type m_zip_type; ++ mz_zip_error m_last_error; + +- mz_uint m_file_offset_alignment; ++ mz_uint64 m_file_offset_alignment; + + mz_alloc_func m_pAlloc; + mz_free_func m_pFree; +@@ -722,6 +777,7 @@ typedef struct mz_zip_archive_tag { + + mz_file_read_func m_pRead; + mz_file_write_func m_pWrite; ++ mz_file_needs_keepalive m_pNeeds_keepalive; + void *m_pIO_opaque; + + mz_zip_internal_state *m_pState; +@@ -1263,6 +1319,9 @@ mz_uint tdefl_create_comp_flags_from_zip_params(int level, int window_bits, + int strategy); + #endif // #ifndef MINIZ_NO_ZLIB_APIS + ++#define MZ_UINT16_MAX (0xFFFFU) ++#define MZ_UINT32_MAX (0xFFFFFFFFU) ++ + #ifdef __cplusplus + } + #endif +@@ -1311,6 +1370,11 @@ typedef unsigned char mz_validate_uint64[sizeof(mz_uint64) == 8 ? 1 : -1]; + ((mz_uint32)(((const mz_uint8 *)(p))[3]) << 24U)) + #endif + ++#define MZ_READ_LE64(p) \ ++ (((mz_uint64)MZ_READ_LE32(p)) | \ ++ (((mz_uint64)MZ_READ_LE32((const mz_uint8 *)(p) + sizeof(mz_uint32))) \ ++ << 32U)) ++ + #ifdef _MSC_VER + #define MZ_FORCEINLINE __forceinline + #elif defined(__GNUC__) +@@ -4160,6 +4224,17 @@ enum { + MZ_ZIP_LOCAL_DIR_HEADER_SIZE = 30, + MZ_ZIP_CENTRAL_DIR_HEADER_SIZE = 46, + MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE = 22, ++ ++ /* ZIP64 archive identifier and record sizes */ ++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIG = 0x06064b50, ++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIG = 0x07064b50, ++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE = 56, ++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE = 20, ++ MZ_ZIP64_EXTENDED_INFORMATION_FIELD_HEADER_ID = 0x0001, ++ MZ_ZIP_DATA_DESCRIPTOR_ID = 0x08074b50, ++ MZ_ZIP_DATA_DESCRIPTER_SIZE64 = 24, ++ MZ_ZIP_DATA_DESCRIPTER_SIZE32 = 16, ++ + // Central directory header record offsets + MZ_ZIP_CDH_SIG_OFS = 0, + MZ_ZIP_CDH_VERSION_MADE_BY_OFS = 4, +@@ -4199,6 +4274,31 @@ enum { + MZ_ZIP_ECDH_CDIR_SIZE_OFS = 12, + MZ_ZIP_ECDH_CDIR_OFS_OFS = 16, + MZ_ZIP_ECDH_COMMENT_SIZE_OFS = 20, ++ ++ /* ZIP64 End of central directory locator offsets */ ++ MZ_ZIP64_ECDL_SIG_OFS = 0, /* 4 bytes */ ++ MZ_ZIP64_ECDL_NUM_DISK_CDIR_OFS = 4, /* 4 bytes */ ++ MZ_ZIP64_ECDL_REL_OFS_TO_ZIP64_ECDR_OFS = 8, /* 8 bytes */ ++ MZ_ZIP64_ECDL_TOTAL_NUMBER_OF_DISKS_OFS = 16, /* 4 bytes */ ++ ++ /* ZIP64 End of central directory header offsets */ ++ MZ_ZIP64_ECDH_SIG_OFS = 0, /* 4 bytes */ ++ MZ_ZIP64_ECDH_SIZE_OF_RECORD_OFS = 4, /* 8 bytes */ ++ MZ_ZIP64_ECDH_VERSION_MADE_BY_OFS = 12, /* 2 bytes */ ++ MZ_ZIP64_ECDH_VERSION_NEEDED_OFS = 14, /* 2 bytes */ ++ MZ_ZIP64_ECDH_NUM_THIS_DISK_OFS = 16, /* 4 bytes */ ++ MZ_ZIP64_ECDH_NUM_DISK_CDIR_OFS = 20, /* 4 bytes */ ++ MZ_ZIP64_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS = 24, /* 8 bytes */ ++ MZ_ZIP64_ECDH_CDIR_TOTAL_ENTRIES_OFS = 32, /* 8 bytes */ ++ MZ_ZIP64_ECDH_CDIR_SIZE_OFS = 40, /* 8 bytes */ ++ MZ_ZIP64_ECDH_CDIR_OFS_OFS = 48, /* 8 bytes */ ++ MZ_ZIP_VERSION_MADE_BY_DOS_FILESYSTEM_ID = 0, ++ MZ_ZIP_DOS_DIR_ATTRIBUTE_BITFLAG = 0x10, ++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_IS_ENCRYPTED = 1, ++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_COMPRESSED_PATCH_FLAG = 32, ++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_USES_STRONG_ENCRYPTION = 64, ++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_LOCAL_DIR_IS_MASKED = 8192, ++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_UTF8 = 1 << 11 + }; + + typedef struct { +@@ -4211,7 +4311,24 @@ struct mz_zip_internal_state_tag { + mz_zip_array m_central_dir; + mz_zip_array m_central_dir_offsets; + mz_zip_array m_sorted_central_dir_offsets; ++ ++ /* The flags passed in when the archive is initially opened. */ ++ uint32_t m_init_flags; ++ ++ /* MZ_TRUE if the archive has a zip64 end of central directory headers, etc. ++ */ ++ mz_bool m_zip64; ++ ++ /* MZ_TRUE if we found zip64 extended info in the central directory (m_zip64 ++ * will also be slammed to true too, even if we didn't find a zip64 end of ++ * central dir header, etc.) */ ++ mz_bool m_zip64_has_extended_info_fields; ++ ++ /* These fields are used by the file, FILE, memory, and memory/heap read/write ++ * helpers. */ + MZ_FILE *m_pFile; ++ mz_uint64 m_file_archive_start_ofs; ++ + void *m_pMem; + size_t m_mem_size; + size_t m_mem_capacity; +@@ -4363,6 +4480,13 @@ static mz_bool mz_zip_set_file_times(const char *pFilename, time_t access_time, + #endif /* #ifndef MINIZ_NO_STDIO */ + #endif /* #ifndef MINIZ_NO_TIME */ + ++static MZ_FORCEINLINE mz_bool mz_zip_set_error(mz_zip_archive *pZip, ++ mz_zip_error err_num) { ++ if (pZip) ++ pZip->m_last_error = err_num; ++ return MZ_FALSE; ++} ++ + static mz_bool mz_zip_reader_init_internal(mz_zip_archive *pZip, + mz_uint32 flags) { + (void)flags; +@@ -4480,127 +4604,346 @@ mz_zip_reader_sort_central_dir_offsets_by_filename(mz_zip_archive *pZip) { + } + } + +-static mz_bool mz_zip_reader_read_central_dir(mz_zip_archive *pZip, +- mz_uint32 flags) { +- mz_uint cdir_size, num_this_disk, cdir_disk_index; +- mz_uint64 cdir_ofs; ++static mz_bool mz_zip_reader_locate_header_sig(mz_zip_archive *pZip, ++ mz_uint32 record_sig, ++ mz_uint32 record_size, ++ mz_int64 *pOfs) { + mz_int64 cur_file_ofs; +- const mz_uint8 *p; + mz_uint32 buf_u32[4096 / sizeof(mz_uint32)]; + mz_uint8 *pBuf = (mz_uint8 *)buf_u32; +- mz_bool sort_central_dir = +- ((flags & MZ_ZIP_FLAG_DO_NOT_SORT_CENTRAL_DIRECTORY) == 0); +- // Basic sanity checks - reject files which are too small, and check the first +- // 4 bytes of the file to make sure a local header is there. +- if (pZip->m_archive_size < MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE) ++ ++ /* Basic sanity checks - reject files which are too small */ ++ if (pZip->m_archive_size < record_size) + return MZ_FALSE; +- // Find the end of central directory record by scanning the file from the end +- // towards the beginning. ++ ++ /* Find the record by scanning the file from the end towards the beginning. */ + cur_file_ofs = + MZ_MAX((mz_int64)pZip->m_archive_size - (mz_int64)sizeof(buf_u32), 0); + for (;;) { + int i, + n = (int)MZ_MIN(sizeof(buf_u32), pZip->m_archive_size - cur_file_ofs); ++ + if (pZip->m_pRead(pZip->m_pIO_opaque, cur_file_ofs, pBuf, n) != (mz_uint)n) + return MZ_FALSE; +- for (i = n - 4; i >= 0; --i) +- if (MZ_READ_LE32(pBuf + i) == MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG) +- break; ++ ++ for (i = n - 4; i >= 0; --i) { ++ mz_uint s = MZ_READ_LE32(pBuf + i); ++ if (s == record_sig) { ++ if ((pZip->m_archive_size - (cur_file_ofs + i)) >= record_size) ++ break; ++ } ++ } ++ + if (i >= 0) { + cur_file_ofs += i; + break; + } ++ ++ /* Give up if we've searched the entire file, or we've gone back "too far" ++ * (~64kb) */ + if ((!cur_file_ofs) || ((pZip->m_archive_size - cur_file_ofs) >= +- (0xFFFF + MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE))) ++ (MZ_UINT16_MAX + record_size))) + return MZ_FALSE; ++ + cur_file_ofs = MZ_MAX(cur_file_ofs - (sizeof(buf_u32) - 3), 0); + } +- // Read and verify the end of central directory record. ++ ++ *pOfs = cur_file_ofs; ++ return MZ_TRUE; ++} ++ ++static mz_bool mz_zip_reader_read_central_dir(mz_zip_archive *pZip, ++ mz_uint flags) { ++ mz_uint cdir_size = 0, cdir_entries_on_this_disk = 0, num_this_disk = 0, ++ cdir_disk_index = 0; ++ mz_uint64 cdir_ofs = 0; ++ mz_int64 cur_file_ofs = 0; ++ const mz_uint8 *p; ++ ++ mz_uint32 buf_u32[4096 / sizeof(mz_uint32)]; ++ mz_uint8 *pBuf = (mz_uint8 *)buf_u32; ++ mz_bool sort_central_dir = ++ ((flags & MZ_ZIP_FLAG_DO_NOT_SORT_CENTRAL_DIRECTORY) == 0); ++ mz_uint32 zip64_end_of_central_dir_locator_u32 ++ [(MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE + sizeof(mz_uint32) - 1) / ++ sizeof(mz_uint32)]; ++ mz_uint8 *pZip64_locator = (mz_uint8 *)zip64_end_of_central_dir_locator_u32; ++ ++ mz_uint32 zip64_end_of_central_dir_header_u32 ++ [(MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE + sizeof(mz_uint32) - 1) / ++ sizeof(mz_uint32)]; ++ mz_uint8 *pZip64_end_of_central_dir = ++ (mz_uint8 *)zip64_end_of_central_dir_header_u32; ++ ++ mz_uint64 zip64_end_of_central_dir_ofs = 0; ++ ++ /* Basic sanity checks - reject files which are too small, and check the first ++ * 4 bytes of the file to make sure a local header is there. */ ++ if (pZip->m_archive_size < MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE) ++ return mz_zip_set_error(pZip, MZ_ZIP_NOT_AN_ARCHIVE); ++ ++ if (!mz_zip_reader_locate_header_sig( ++ pZip, MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG, ++ MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE, &cur_file_ofs)) ++ return mz_zip_set_error(pZip, MZ_ZIP_FAILED_FINDING_CENTRAL_DIR); ++ ++ /* Read and verify the end of central directory record. */ + if (pZip->m_pRead(pZip->m_pIO_opaque, cur_file_ofs, pBuf, + MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE) != + MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE) +- return MZ_FALSE; +- if ((MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_SIG_OFS) != +- MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG) || +- ((pZip->m_total_files = +- MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_TOTAL_ENTRIES_OFS)) != +- MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS))) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_FILE_READ_FAILED); ++ ++ if (MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_SIG_OFS) != ++ MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG) ++ return mz_zip_set_error(pZip, MZ_ZIP_NOT_AN_ARCHIVE); ++ ++ if (cur_file_ofs >= (MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE + ++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE)) { ++ if (pZip->m_pRead(pZip->m_pIO_opaque, ++ cur_file_ofs - MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE, ++ pZip64_locator, ++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE) == ++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE) { ++ if (MZ_READ_LE32(pZip64_locator + MZ_ZIP64_ECDL_SIG_OFS) == ++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIG) { ++ zip64_end_of_central_dir_ofs = MZ_READ_LE64( ++ pZip64_locator + MZ_ZIP64_ECDL_REL_OFS_TO_ZIP64_ECDR_OFS); ++ if (zip64_end_of_central_dir_ofs > ++ (pZip->m_archive_size - MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE)) ++ return mz_zip_set_error(pZip, MZ_ZIP_NOT_AN_ARCHIVE); ++ ++ if (pZip->m_pRead(pZip->m_pIO_opaque, zip64_end_of_central_dir_ofs, ++ pZip64_end_of_central_dir, ++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE) == ++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE) { ++ if (MZ_READ_LE32(pZip64_end_of_central_dir + MZ_ZIP64_ECDH_SIG_OFS) == ++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIG) { ++ pZip->m_pState->m_zip64 = MZ_TRUE; ++ } ++ } ++ } ++ } ++ } + ++ pZip->m_total_files = MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_TOTAL_ENTRIES_OFS); ++ cdir_entries_on_this_disk = ++ MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS); + num_this_disk = MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_NUM_THIS_DISK_OFS); + cdir_disk_index = MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_NUM_DISK_CDIR_OFS); ++ cdir_size = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_SIZE_OFS); ++ cdir_ofs = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_OFS_OFS); ++ ++ if (pZip->m_pState->m_zip64) { ++ mz_uint32 zip64_total_num_of_disks = ++ MZ_READ_LE32(pZip64_locator + MZ_ZIP64_ECDL_TOTAL_NUMBER_OF_DISKS_OFS); ++ mz_uint64 zip64_cdir_total_entries = MZ_READ_LE64( ++ pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_TOTAL_ENTRIES_OFS); ++ mz_uint64 zip64_cdir_total_entries_on_this_disk = MZ_READ_LE64( ++ pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS); ++ mz_uint64 zip64_size_of_end_of_central_dir_record = MZ_READ_LE64( ++ pZip64_end_of_central_dir + MZ_ZIP64_ECDH_SIZE_OF_RECORD_OFS); ++ mz_uint64 zip64_size_of_central_directory = ++ MZ_READ_LE64(pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_SIZE_OFS); ++ ++ if (zip64_size_of_end_of_central_dir_record < ++ (MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE - 12)) ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); ++ ++ if (zip64_total_num_of_disks != 1U) ++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK); ++ ++ /* Check for miniz's practical limits */ ++ if (zip64_cdir_total_entries > MZ_UINT32_MAX) ++ return mz_zip_set_error(pZip, MZ_ZIP_TOO_MANY_FILES); ++ ++ pZip->m_total_files = (mz_uint32)zip64_cdir_total_entries; ++ ++ if (zip64_cdir_total_entries_on_this_disk > MZ_UINT32_MAX) ++ return mz_zip_set_error(pZip, MZ_ZIP_TOO_MANY_FILES); ++ ++ cdir_entries_on_this_disk = ++ (mz_uint32)zip64_cdir_total_entries_on_this_disk; ++ ++ /* Check for miniz's current practical limits (sorry, this should be enough ++ * for millions of files) */ ++ if (zip64_size_of_central_directory > MZ_UINT32_MAX) ++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_CDIR_SIZE); ++ ++ cdir_size = (mz_uint32)zip64_size_of_central_directory; ++ ++ num_this_disk = MZ_READ_LE32(pZip64_end_of_central_dir + ++ MZ_ZIP64_ECDH_NUM_THIS_DISK_OFS); ++ ++ cdir_disk_index = MZ_READ_LE32(pZip64_end_of_central_dir + ++ MZ_ZIP64_ECDH_NUM_DISK_CDIR_OFS); ++ ++ cdir_ofs = ++ MZ_READ_LE64(pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_OFS_OFS); ++ } ++ ++ if (pZip->m_total_files != cdir_entries_on_this_disk) ++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK); ++ + if (((num_this_disk | cdir_disk_index) != 0) && + ((num_this_disk != 1) || (cdir_disk_index != 1))) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK); + +- if ((cdir_size = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_SIZE_OFS)) < +- pZip->m_total_files * MZ_ZIP_CENTRAL_DIR_HEADER_SIZE) +- return MZ_FALSE; ++ if (cdir_size < pZip->m_total_files * MZ_ZIP_CENTRAL_DIR_HEADER_SIZE) ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); + +- cdir_ofs = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_OFS_OFS); + if ((cdir_ofs + (mz_uint64)cdir_size) > pZip->m_archive_size) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); + + pZip->m_central_directory_file_ofs = cdir_ofs; + + if (pZip->m_total_files) { + mz_uint i, n; +- +- // Read the entire central directory into a heap block, and allocate another +- // heap block to hold the unsorted central dir file record offsets, and +- // another to hold the sorted indices. ++ /* Read the entire central directory into a heap block, and allocate another ++ * heap block to hold the unsorted central dir file record offsets, and ++ * possibly another to hold the sorted indices. */ + if ((!mz_zip_array_resize(pZip, &pZip->m_pState->m_central_dir, cdir_size, + MZ_FALSE)) || + (!mz_zip_array_resize(pZip, &pZip->m_pState->m_central_dir_offsets, + pZip->m_total_files, MZ_FALSE))) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_ALLOC_FAILED); + + if (sort_central_dir) { + if (!mz_zip_array_resize(pZip, + &pZip->m_pState->m_sorted_central_dir_offsets, + pZip->m_total_files, MZ_FALSE)) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_ALLOC_FAILED); + } + + if (pZip->m_pRead(pZip->m_pIO_opaque, cdir_ofs, + pZip->m_pState->m_central_dir.m_p, + cdir_size) != cdir_size) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_FILE_READ_FAILED); + +- // Now create an index into the central directory file records, do some +- // basic sanity checking on each record, and check for zip64 entries (which +- // are not yet supported). ++ /* Now create an index into the central directory file records, do some ++ * basic sanity checking on each record */ + p = (const mz_uint8 *)pZip->m_pState->m_central_dir.m_p; + for (n = cdir_size, i = 0; i < pZip->m_total_files; ++i) { +- mz_uint total_header_size, comp_size, decomp_size, disk_index; ++ mz_uint total_header_size, disk_index, bit_flags, filename_size, ++ ext_data_size; ++ mz_uint64 comp_size, decomp_size, local_header_ofs; ++ + if ((n < MZ_ZIP_CENTRAL_DIR_HEADER_SIZE) || + (MZ_READ_LE32(p) != MZ_ZIP_CENTRAL_DIR_HEADER_SIG)) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); ++ + MZ_ZIP_ARRAY_ELEMENT(&pZip->m_pState->m_central_dir_offsets, mz_uint32, + i) = + (mz_uint32)(p - (const mz_uint8 *)pZip->m_pState->m_central_dir.m_p); ++ + if (sort_central_dir) + MZ_ZIP_ARRAY_ELEMENT(&pZip->m_pState->m_sorted_central_dir_offsets, + mz_uint32, i) = i; ++ + comp_size = MZ_READ_LE32(p + MZ_ZIP_CDH_COMPRESSED_SIZE_OFS); + decomp_size = MZ_READ_LE32(p + MZ_ZIP_CDH_DECOMPRESSED_SIZE_OFS); +- if (((!MZ_READ_LE32(p + MZ_ZIP_CDH_METHOD_OFS)) && +- (decomp_size != comp_size)) || +- (decomp_size && !comp_size) || (decomp_size == 0xFFFFFFFF) || +- (comp_size == 0xFFFFFFFF)) +- return MZ_FALSE; ++ local_header_ofs = MZ_READ_LE32(p + MZ_ZIP_CDH_LOCAL_HEADER_OFS); ++ filename_size = MZ_READ_LE16(p + MZ_ZIP_CDH_FILENAME_LEN_OFS); ++ ext_data_size = MZ_READ_LE16(p + MZ_ZIP_CDH_EXTRA_LEN_OFS); ++ ++ if ((!pZip->m_pState->m_zip64_has_extended_info_fields) && ++ (ext_data_size) && ++ (MZ_MAX(MZ_MAX(comp_size, decomp_size), local_header_ofs) == ++ MZ_UINT32_MAX)) { ++ /* Attempt to find zip64 extended information field in the entry's extra ++ * data */ ++ mz_uint32 extra_size_remaining = ext_data_size; ++ ++ if (extra_size_remaining) { ++ const mz_uint8 *pExtra_data; ++ void *buf = NULL; ++ ++ if (MZ_ZIP_CENTRAL_DIR_HEADER_SIZE + filename_size + ext_data_size > ++ n) { ++ buf = MZ_MALLOC(ext_data_size); ++ if (buf == NULL) ++ return mz_zip_set_error(pZip, MZ_ZIP_ALLOC_FAILED); ++ ++ if (pZip->m_pRead(pZip->m_pIO_opaque, ++ cdir_ofs + MZ_ZIP_CENTRAL_DIR_HEADER_SIZE + ++ filename_size, ++ buf, ext_data_size) != ext_data_size) { ++ MZ_FREE(buf); ++ return mz_zip_set_error(pZip, MZ_ZIP_FILE_READ_FAILED); ++ } ++ ++ pExtra_data = (mz_uint8 *)buf; ++ } else { ++ pExtra_data = p + MZ_ZIP_CENTRAL_DIR_HEADER_SIZE + filename_size; ++ } ++ ++ do { ++ mz_uint32 field_id; ++ mz_uint32 field_data_size; ++ ++ if (extra_size_remaining < (sizeof(mz_uint16) * 2)) { ++ MZ_FREE(buf); ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); ++ } ++ ++ field_id = MZ_READ_LE16(pExtra_data); ++ field_data_size = MZ_READ_LE16(pExtra_data + sizeof(mz_uint16)); ++ ++ if ((field_data_size + sizeof(mz_uint16) * 2) > ++ extra_size_remaining) { ++ MZ_FREE(buf); ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); ++ } ++ ++ if (field_id == MZ_ZIP64_EXTENDED_INFORMATION_FIELD_HEADER_ID) { ++ /* Ok, the archive didn't have any zip64 headers but it uses a ++ * zip64 extended information field so mark it as zip64 anyway ++ * (this can occur with infozip's zip util when it reads ++ * compresses files from stdin). */ ++ pZip->m_pState->m_zip64 = MZ_TRUE; ++ pZip->m_pState->m_zip64_has_extended_info_fields = MZ_TRUE; ++ break; ++ } ++ ++ pExtra_data += sizeof(mz_uint16) * 2 + field_data_size; ++ extra_size_remaining = ++ extra_size_remaining - sizeof(mz_uint16) * 2 - field_data_size; ++ } while (extra_size_remaining); ++ ++ MZ_FREE(buf); ++ } ++ } ++ ++ /* I've seen archives that aren't marked as zip64 that uses zip64 ext ++ * data, argh */ ++ if ((comp_size != MZ_UINT32_MAX) && (decomp_size != MZ_UINT32_MAX)) { ++ if (((!MZ_READ_LE32(p + MZ_ZIP_CDH_METHOD_OFS)) && ++ (decomp_size != comp_size)) || ++ (decomp_size && !comp_size)) ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); ++ } ++ + disk_index = MZ_READ_LE16(p + MZ_ZIP_CDH_DISK_START_OFS); +- if ((disk_index != num_this_disk) && (disk_index != 1)) +- return MZ_FALSE; +- if (((mz_uint64)MZ_READ_LE32(p + MZ_ZIP_CDH_LOCAL_HEADER_OFS) + +- MZ_ZIP_LOCAL_DIR_HEADER_SIZE + comp_size) > pZip->m_archive_size) +- return MZ_FALSE; ++ if ((disk_index == MZ_UINT16_MAX) || ++ ((disk_index != num_this_disk) && (disk_index != 1))) ++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK); ++ ++ if (comp_size != MZ_UINT32_MAX) { ++ if (((mz_uint64)MZ_READ_LE32(p + MZ_ZIP_CDH_LOCAL_HEADER_OFS) + ++ MZ_ZIP_LOCAL_DIR_HEADER_SIZE + comp_size) > pZip->m_archive_size) ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); ++ } ++ ++ bit_flags = MZ_READ_LE16(p + MZ_ZIP_CDH_BIT_FLAG_OFS); ++ if (bit_flags & MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_LOCAL_DIR_IS_MASKED) ++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_ENCRYPTION); ++ + if ((total_header_size = MZ_ZIP_CENTRAL_DIR_HEADER_SIZE + + MZ_READ_LE16(p + MZ_ZIP_CDH_FILENAME_LEN_OFS) + + MZ_READ_LE16(p + MZ_ZIP_CDH_EXTRA_LEN_OFS) + + MZ_READ_LE16(p + MZ_ZIP_CDH_COMMENT_LEN_OFS)) > + n) +- return MZ_FALSE; ++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED); ++ + n -= total_header_size; + p += total_header_size; + } +diff --git a/contrib/zip/src/zip.c b/contrib/zip/src/zip.c +index ff3a8fe1..1abcfd8f 100644 +--- a/contrib/zip/src/zip.c ++++ b/contrib/zip/src/zip.c +@@ -24,7 +24,6 @@ + ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) && \ + (P)[1] == ':') + #define FILESYSTEM_PREFIX_LEN(P) (HAS_DEVICE(P) ? 2 : 0) +-#define ISSLASH(C) ((C) == '/' || (C) == '\\') + + #else + +@@ -48,7 +47,7 @@ int symlink(const char *target, const char *linkpath); // needed on Linux + #endif + + #ifndef ISSLASH +-#define ISSLASH(C) ((C) == '/') ++#define ISSLASH(C) ((C) == '/' || (C) == '\\') + #endif + + #define CLEANUP(ptr) \ +@@ -78,26 +77,34 @@ static const char *base_name(const char *name) { + return base; + } + +-static int mkpath(const char *path) { +- char const *p; ++static int mkpath(char *path) { ++ char *p; + char npath[MAX_PATH + 1]; + int len = 0; + int has_device = HAS_DEVICE(path); + + memset(npath, 0, MAX_PATH + 1); +- +-#ifdef _WIN32 +- // only on windows fix the path +- npath[0] = path[0]; +- npath[1] = path[1]; +- len = 2; +-#endif // _WIN32 +- ++ if (has_device) { ++ // only on windows ++ npath[0] = path[0]; ++ npath[1] = path[1]; ++ len = 2; ++ } + for (p = path + len; *p && len < MAX_PATH; p++) { + if (ISSLASH(*p) && ((!has_device && len > 0) || (has_device && len > 2))) { +- if (MKDIR(npath) == -1) +- if (errno != EEXIST) ++#if defined(_WIN32) || defined(__WIN32__) || defined(_MSC_VER) || \ ++ defined(__MINGW32__) ++#else ++ if ('\\' == *p) { ++ *p = '/'; ++ } ++#endif ++ ++ if (MKDIR(npath) == -1) { ++ if (errno != EEXIST) { + return -1; ++ } ++ } + } + npath[len++] = *p; + } +@@ -279,7 +286,14 @@ int zip_entry_open(struct zip_t *zip, const char *entryname) { + zip->entry.header_offset = zip->archive.m_archive_size; + memset(zip->entry.header, 0, MZ_ZIP_LOCAL_DIR_HEADER_SIZE * sizeof(mz_uint8)); + zip->entry.method = 0; ++ ++ // UNIX or APPLE ++#if MZ_PLATFORM == 3 || MZ_PLATFORM == 19 ++ // regular file with rw-r--r-- persmissions ++ zip->entry.external_attr = (mz_uint32)(0100644) << 16; ++#else + zip->entry.external_attr = 0; ++#endif + + num_alignment_padding_bytes = + mz_zip_writer_compute_padding_needed_for_file_alignment(pzip); +@@ -660,7 +674,7 @@ ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, size_t bufsize) { + } + + if (!mz_zip_reader_extract_to_mem_no_alloc(pzip, (mz_uint)zip->entry.index, +- buf, bufsize, 0, NULL, 0)) { ++ buf, bufsize, 0, NULL, 0)) { + return -1; + } + +@@ -670,10 +684,7 @@ ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, size_t bufsize) { + int zip_entry_fread(struct zip_t *zip, const char *filename) { + mz_zip_archive *pzip = NULL; + mz_uint idx; +-#if defined(_MSC_VER) +-#else + mz_uint32 xattr = 0; +-#endif + mz_zip_archive_file_stat info; + + if (!zip) { +@@ -875,12 +886,19 @@ int zip_extract(const char *zipname, const char *dir, + goto out; + } + +- if ((((info.m_version_made_by >> 8) == 3) || ((info.m_version_made_by >> 8) == 19)) // if zip is produced on Unix or macOS (3 and 19 from section 4.4.2.2 of zip standard) +- && info.m_external_attr & (0x20 << 24)) { // and has sym link attribute (0x80 is file, 0x40 is directory) ++ if ((((info.m_version_made_by >> 8) == 3) || ++ ((info.m_version_made_by >> 8) == ++ 19)) // if zip is produced on Unix or macOS (3 and 19 from ++ // section 4.4.2.2 of zip standard) ++ && info.m_external_attr & ++ (0x20 << 24)) { // and has sym link attribute (0x80 is file, 0x40 ++ // is directory) + #if defined(_WIN32) || defined(__WIN32__) || defined(_MSC_VER) || \ + defined(__MINGW32__) +-#else +- if (info.m_uncomp_size > MAX_PATH || !mz_zip_reader_extract_to_mem_no_alloc(&zip_archive, i, symlink_to, MAX_PATH, 0, NULL, 0)) { ++#else ++ if (info.m_uncomp_size > MAX_PATH || ++ !mz_zip_reader_extract_to_mem_no_alloc(&zip_archive, i, symlink_to, ++ MAX_PATH, 0, NULL, 0)) { + goto out; + } + symlink_to[info.m_uncomp_size] = '\0'; +diff --git a/contrib/zip/src/zip.h b/contrib/zip/src/zip.h +index 5f39df50..a48d64d6 100644 +--- a/contrib/zip/src/zip.h ++++ b/contrib/zip/src/zip.h +@@ -20,241 +20,240 @@ extern "C" { + #endif + + #if !defined(_SSIZE_T_DEFINED) && !defined(_SSIZE_T_DEFINED_) && \ +- !defined(_SSIZE_T) && !defined(_SSIZE_T_) && !defined(__ssize_t_defined) +-#define _SSIZE_T ++ !defined(__DEFINED_ssize_t) && !defined(__ssize_t_defined) && \ ++ !defined(_SSIZE_T) && !defined(_SSIZE_T_) ++ + // 64-bit Windows is the only mainstream platform + // where sizeof(long) != sizeof(void*) + #ifdef _WIN64 +-typedef long long ssize_t; /* byte count or error */ ++typedef long long ssize_t; /* byte count or error */ + #else +-typedef long ssize_t; /* byte count or error */ ++typedef long ssize_t; /* byte count or error */ + #endif ++ ++#define _SSIZE_T_DEFINED ++#define _SSIZE_T_DEFINED_ ++#define __DEFINED_ssize_t ++#define __ssize_t_defined ++#define _SSIZE_T ++#define _SSIZE_T_ ++ + #endif + + #ifndef MAX_PATH + #define MAX_PATH 32767 /* # chars in a path name including NULL */ + #endif + ++/** ++ * @mainpage ++ * ++ * Documenation for @ref zip. ++ */ ++ ++/** ++ * @addtogroup zip ++ * @{ ++ */ ++ ++/** ++ * Default zip compression level. ++ */ ++ + #define ZIP_DEFAULT_COMPRESSION_LEVEL 6 + +-/* +- This data structure is used throughout the library to represent zip archive +- - forward declaration. +-*/ ++/** ++ * @struct zip_t ++ * ++ * This data structure is used throughout the library to represent zip archive - ++ * forward declaration. ++ */ + struct zip_t; + +-/* +- Opens zip archive with compression level using the given mode. +- +- Args: +- zipname: zip archive file name. +- level: compression level (0-9 are the standard zlib-style levels). +- mode: file access mode. +- 'r': opens a file for reading/extracting (the file must exists). +- 'w': creates an empty file for writing. +- 'a': appends to an existing archive. +- +- Returns: +- The zip archive handler or NULL on error +-*/ ++/** ++ * Opens zip archive with compression level using the given mode. ++ * ++ * @param zipname zip archive file name. ++ * @param level compression level (0-9 are the standard zlib-style levels). ++ * @param mode file access mode. ++ * - 'r': opens a file for reading/extracting (the file must exists). ++ * - 'w': creates an empty file for writing. ++ * - 'a': appends to an existing archive. ++ * ++ * @return the zip archive handler or NULL on error ++ */ + extern struct zip_t *zip_open(const char *zipname, int level, char mode); + +-/* +- Closes the zip archive, releases resources - always finalize. +- +- Args: +- zip: zip archive handler. +-*/ ++/** ++ * Closes the zip archive, releases resources - always finalize. ++ * ++ * @param zip zip archive handler. ++ */ + extern void zip_close(struct zip_t *zip); + +-/* +- Opens an entry by name in the zip archive. +- For zip archive opened in 'w' or 'a' mode the function will append +- a new entry. In readonly mode the function tries to locate the entry +- in global dictionary. +- +- Args: +- zip: zip archive handler. +- entryname: an entry name in local dictionary. +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Opens an entry by name in the zip archive. ++ * ++ * For zip archive opened in 'w' or 'a' mode the function will append ++ * a new entry. In readonly mode the function tries to locate the entry ++ * in global dictionary. ++ * ++ * @param zip zip archive handler. ++ * @param entryname an entry name in local dictionary. ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_entry_open(struct zip_t *zip, const char *entryname); + +-/* +- Opens a new entry by index in the zip archive. +- This function is only valid if zip archive was opened in 'r' (readonly) mode. +- +- Args: +- zip: zip archive handler. +- index: index in local dictionary. +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Opens a new entry by index in the zip archive. ++ * ++ * This function is only valid if zip archive was opened in 'r' (readonly) mode. ++ * ++ * @param zip zip archive handler. ++ * @param index index in local dictionary. ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_entry_openbyindex(struct zip_t *zip, int index); + +-/* +- Closes a zip entry, flushes buffer and releases resources. +- +- Args: +- zip: zip archive handler. +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Closes a zip entry, flushes buffer and releases resources. ++ * ++ * @param zip zip archive handler. ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_entry_close(struct zip_t *zip); + +-/* +- Returns a local name of the current zip entry. +- The main difference between user's entry name and local entry name +- is optional relative path. +- Following .ZIP File Format Specification - the path stored MUST not contain +- a drive or device letter, or a leading slash. +- All slashes MUST be forward slashes '/' as opposed to backwards slashes '\' +- for compatibility with Amiga and UNIX file systems etc. +- +- Args: +- zip: zip archive handler. +- +- Returns: +- The pointer to the current zip entry name, or NULL on error. +-*/ ++/** ++ * Returns a local name of the current zip entry. ++ * ++ * The main difference between user's entry name and local entry name ++ * is optional relative path. ++ * Following .ZIP File Format Specification - the path stored MUST not contain ++ * a drive or device letter, or a leading slash. ++ * All slashes MUST be forward slashes '/' as opposed to backwards slashes '\' ++ * for compatibility with Amiga and UNIX file systems etc. ++ * ++ * @param zip: zip archive handler. ++ * ++ * @return the pointer to the current zip entry name, or NULL on error. ++ */ + extern const char *zip_entry_name(struct zip_t *zip); + +-/* +- Returns an index of the current zip entry. +- +- Args: +- zip: zip archive handler. +- +- Returns: +- The index on success, negative number (< 0) on error. +-*/ ++/** ++ * Returns an index of the current zip entry. ++ * ++ * @param zip zip archive handler. ++ * ++ * @return the index on success, negative number (< 0) on error. ++ */ + extern int zip_entry_index(struct zip_t *zip); + +-/* +- Determines if the current zip entry is a directory entry. +- +- Args: +- zip: zip archive handler. +- +- Returns: +- The return code - 1 (true), 0 (false), negative number (< 0) on error. +-*/ ++/** ++ * Determines if the current zip entry is a directory entry. ++ * ++ * @param zip zip archive handler. ++ * ++ * @return the return code - 1 (true), 0 (false), negative number (< 0) on ++ * error. ++ */ + extern int zip_entry_isdir(struct zip_t *zip); + +-/* +- Returns an uncompressed size of the current zip entry. +- +- Args: +- zip: zip archive handler. +- +- Returns: +- The uncompressed size in bytes. +-*/ ++/** ++ * Returns an uncompressed size of the current zip entry. ++ * ++ * @param zip zip archive handler. ++ * ++ * @return the uncompressed size in bytes. ++ */ + extern unsigned long long zip_entry_size(struct zip_t *zip); + +-/* +- Returns CRC-32 checksum of the current zip entry. +- +- Args: +- zip: zip archive handler. +- +- Returns: +- The CRC-32 checksum. +-*/ ++/** ++ * Returns CRC-32 checksum of the current zip entry. ++ * ++ * @param zip zip archive handler. ++ * ++ * @return the CRC-32 checksum. ++ */ + extern unsigned int zip_entry_crc32(struct zip_t *zip); + +-/* +- Compresses an input buffer for the current zip entry. +- +- Args: +- zip: zip archive handler. +- buf: input buffer. +- bufsize: input buffer size (in bytes). +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Compresses an input buffer for the current zip entry. ++ * ++ * @param zip zip archive handler. ++ * @param buf input buffer. ++ * @param bufsize input buffer size (in bytes). ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_entry_write(struct zip_t *zip, const void *buf, size_t bufsize); + +-/* +- Compresses a file for the current zip entry. +- +- Args: +- zip: zip archive handler. +- filename: input file. +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Compresses a file for the current zip entry. ++ * ++ * @param zip zip archive handler. ++ * @param filename input file. ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_entry_fwrite(struct zip_t *zip, const char *filename); + +-/* +- Extracts the current zip entry into output buffer. +- The function allocates sufficient memory for a output buffer. +- +- Args: +- zip: zip archive handler. +- buf: output buffer. +- bufsize: output buffer size (in bytes). +- +- Note: +- - remember to release memory allocated for a output buffer. +- - for large entries, please take a look at zip_entry_extract function. +- +- Returns: +- The return code - the number of bytes actually read on success. +- Otherwise a -1 on error. +-*/ ++/** ++ * Extracts the current zip entry into output buffer. ++ * ++ * The function allocates sufficient memory for a output buffer. ++ * ++ * @param zip zip archive handler. ++ * @param buf output buffer. ++ * @param bufsize output buffer size (in bytes). ++ * ++ * @note remember to release memory allocated for a output buffer. ++ * for large entries, please take a look at zip_entry_extract function. ++ * ++ * @return the return code - the number of bytes actually read on success. ++ * Otherwise a -1 on error. ++ */ + extern ssize_t zip_entry_read(struct zip_t *zip, void **buf, size_t *bufsize); + +-/* +- Extracts the current zip entry into a memory buffer using no memory +- allocation. +- +- Args: +- zip: zip archive handler. +- buf: preallocated output buffer. +- bufsize: output buffer size (in bytes). +- +- Note: +- - ensure supplied output buffer is large enough. +- - zip_entry_size function (returns uncompressed size for the current entry) +- can be handy to estimate how big buffer is needed. +- - for large entries, please take a look at zip_entry_extract function. +- +- Returns: +- The return code - the number of bytes actually read on success. +- Otherwise a -1 on error (e.g. bufsize is not large enough). +-*/ +-extern ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, size_t bufsize); +- +-/* +- Extracts the current zip entry into output file. +- +- Args: +- zip: zip archive handler. +- filename: output file. +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Extracts the current zip entry into a memory buffer using no memory ++ * allocation. ++ * ++ * @param zip zip archive handler. ++ * @param buf preallocated output buffer. ++ * @param bufsize output buffer size (in bytes). ++ * ++ * @note ensure supplied output buffer is large enough. ++ * zip_entry_size function (returns uncompressed size for the current ++ * entry) can be handy to estimate how big buffer is needed. for large ++ * entries, please take a look at zip_entry_extract function. ++ * ++ * @return the return code - the number of bytes actually read on success. ++ * Otherwise a -1 on error (e.g. bufsize is not large enough). ++ */ ++extern ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, ++ size_t bufsize); ++ ++/** ++ * Extracts the current zip entry into output file. ++ * ++ * @param zip zip archive handler. ++ * @param filename output file. ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_entry_fread(struct zip_t *zip, const char *filename); + +-/* +- Extracts the current zip entry using a callback function (on_extract). +- +- Args: +- zip: zip archive handler. +- on_extract: callback function. +- arg: opaque pointer (optional argument, +- which you can pass to the on_extract callback) +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. ++/** ++ * Extracts the current zip entry using a callback function (on_extract). ++ * ++ * @param zip zip archive handler. ++ * @param on_extract callback function. ++ * @param arg opaque pointer (optional argument, which you can pass to the ++ * on_extract callback) ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. + */ + extern int + zip_entry_extract(struct zip_t *zip, +@@ -262,53 +261,49 @@ zip_entry_extract(struct zip_t *zip, + const void *data, size_t size), + void *arg); + +-/* +- Returns the number of all entries (files and directories) in the zip archive. +- +- Args: +- zip: zip archive handler. +- +- Returns: +- The return code - the number of entries on success, +- negative number (< 0) on error. +-*/ ++/** ++ * Returns the number of all entries (files and directories) in the zip archive. ++ * ++ * @param zip zip archive handler. ++ * ++ * @return the return code - the number of entries on success, negative number ++ * (< 0) on error. ++ */ + extern int zip_total_entries(struct zip_t *zip); + +-/* +- Creates a new archive and puts files into a single zip archive. +- +- Args: +- zipname: zip archive file. +- filenames: input files. +- len: number of input files. +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Creates a new archive and puts files into a single zip archive. ++ * ++ * @param zipname zip archive file. ++ * @param filenames input files. ++ * @param len: number of input files. ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_create(const char *zipname, const char *filenames[], size_t len); + +-/* +- Extracts a zip archive file into directory. +- +- If on_extract_entry is not NULL, the callback will be called after +- successfully extracted each zip entry. +- Returning a negative value from the callback will cause abort and return an +- error. The last argument (void *arg) is optional, which you can use to pass +- data to the on_extract_entry callback. +- +- Args: +- zipname: zip archive file. +- dir: output directory. +- on_extract_entry: on extract callback. +- arg: opaque pointer. +- +- Returns: +- The return code - 0 on success, negative number (< 0) on error. +-*/ ++/** ++ * Extracts a zip archive file into directory. ++ * ++ * If on_extract_entry is not NULL, the callback will be called after ++ * successfully extracted each zip entry. ++ * Returning a negative value from the callback will cause abort and return an ++ * error. The last argument (void *arg) is optional, which you can use to pass ++ * data to the on_extract_entry callback. ++ * ++ * @param zipname zip archive file. ++ * @param dir output directory. ++ * @param on_extract_entry on extract callback. ++ * @param arg opaque pointer. ++ * ++ * @return the return code - 0 on success, negative number (< 0) on error. ++ */ + extern int zip_extract(const char *zipname, const char *dir, + int (*on_extract_entry)(const char *filename, void *arg), + void *arg); + ++/** @} */ ++ + #ifdef __cplusplus + } + #endif +diff --git a/contrib/zip/test/CMakeLists.txt b/contrib/zip/test/CMakeLists.txt +index 9b2a8db1..cc060b00 100644 +--- a/contrib/zip/test/CMakeLists.txt ++++ b/contrib/zip/test/CMakeLists.txt +@@ -1,19 +1,16 @@ + cmake_minimum_required(VERSION 2.8) + +-if ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang") +- if(ENABLE_COVERAGE) +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g ") +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0") +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs") +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ftest-coverage") +- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage") +- endif() +-endif () +- + # test +-include_directories(../src) +-add_executable(test.exe test.c ../src/zip.c) +-add_executable(test_miniz.exe test_miniz.c) ++set(test_out test.out) ++set(test_miniz_out test_miniz.out) ++ ++add_executable(${test_out} test.c) ++target_link_libraries(${test_out} zip) ++add_executable(${test_miniz_out} test_miniz.c) ++target_link_libraries(${test_miniz_out} zip) ++ ++add_test(NAME ${test_out} COMMAND ${test_out}) ++add_test(NAME ${test_miniz_out} COMMAND ${test_miniz_out}) + +-add_test(NAME test COMMAND test.exe) +-add_test(NAME test_miniz COMMAND test_miniz.exe) ++set(test_out ${test_out} PARENT_SCOPE) ++set(test_miniz_out ${test_miniz_out} PARENT_SCOPE) +diff --git a/contrib/zip/test/test.c b/contrib/zip/test/test.c +index 45443053..a9b2ddab 100644 +--- a/contrib/zip/test/test.c ++++ b/contrib/zip/test/test.c +@@ -29,6 +29,8 @@ + #define XFILE "7.txt\0" + #define XMODE 0100777 + ++#define UNIXMODE 0100644 ++ + #define UNUSED(x) (void)x + + static int total_entries = 0; +@@ -102,7 +104,8 @@ static void test_read(void) { + assert(0 == zip_entry_close(zip)); + free(buf); + buf = NULL; +- ++ bufsize = 0; ++ + assert(0 == zip_entry_open(zip, "test/test-2.txt")); + assert(strlen(TESTDATA2) == zip_entry_size(zip)); + assert(CRC32DATA2 == zip_entry_crc32(zip)); +@@ -131,7 +134,8 @@ static void test_read(void) { + assert(0 == zip_entry_close(zip)); + free(buf); + buf = NULL; +- ++ bufsize = 0; ++ + buftmp = strlen(TESTDATA1); + buf = calloc(buftmp, sizeof(char)); + assert(0 == zip_entry_open(zip, "test/test-1.txt")); +@@ -433,6 +437,35 @@ static void test_mtime(void) { + remove(ZIPNAME); + } + ++static void test_unix_permissions(void) { ++#if defined(_WIN64) || defined(_WIN32) || defined(__WIN32__) ++#else ++ // UNIX or APPLE ++ struct MZ_FILE_STAT_STRUCT file_stats; ++ ++ remove(ZIPNAME); ++ ++ struct zip_t *zip = zip_open(ZIPNAME, ZIP_DEFAULT_COMPRESSION_LEVEL, 'w'); ++ assert(zip != NULL); ++ ++ assert(0 == zip_entry_open(zip, RFILE)); ++ assert(0 == zip_entry_write(zip, TESTDATA1, strlen(TESTDATA1))); ++ assert(0 == zip_entry_close(zip)); ++ ++ zip_close(zip); ++ ++ remove(RFILE); ++ ++ assert(0 == zip_extract(ZIPNAME, ".", NULL, NULL)); ++ ++ assert(0 == MZ_FILE_STAT(RFILE, &file_stats)); ++ assert(UNIXMODE == file_stats.st_mode); ++ ++ remove(RFILE); ++ remove(ZIPNAME); ++#endif ++} ++ + int main(int argc, char *argv[]) { + UNUSED(argc); + UNUSED(argv); +@@ -453,6 +486,7 @@ int main(int argc, char *argv[]) { + test_write_permissions(); + test_exe_permissions(); + test_mtime(); ++ test_unix_permissions(); + + remove(ZIPNAME); + return 0; +diff --git a/contrib/zip/test/test_miniz.c b/contrib/zip/test/test_miniz.c +index ebc0564d..babcaecd 100644 +--- a/contrib/zip/test/test_miniz.c ++++ b/contrib/zip/test/test_miniz.c +@@ -23,16 +23,39 @@ int main(int argc, char *argv[]) { + uint step = 0; + int cmp_status; + uLong src_len = (uLong)strlen(s_pStr); +- uLong cmp_len = compressBound(src_len); + uLong uncomp_len = src_len; ++ uLong cmp_len; + uint8 *pCmp, *pUncomp; ++ size_t sz; + uint total_succeeded = 0; + (void)argc, (void)argv; + + printf("miniz.c version: %s\n", MZ_VERSION); + + do { ++ pCmp = (uint8 *)tdefl_compress_mem_to_heap(s_pStr, src_len, &cmp_len, 0); ++ if (!pCmp) { ++ printf("tdefl_compress_mem_to_heap failed\n"); ++ return EXIT_FAILURE; ++ } ++ if (src_len <= cmp_len) { ++ printf("tdefl_compress_mem_to_heap failed: from %u to %u bytes\n", ++ (mz_uint32)uncomp_len, (mz_uint32)cmp_len); ++ free(pCmp); ++ return EXIT_FAILURE; ++ } ++ ++ sz = tdefl_compress_mem_to_mem(pCmp, cmp_len, s_pStr, src_len, 0); ++ if (sz != cmp_len) { ++ printf("tdefl_compress_mem_to_mem failed: expected %u, got %u\n", ++ (mz_uint32)cmp_len, (mz_uint32)sz); ++ free(pCmp); ++ return EXIT_FAILURE; ++ } ++ + // Allocate buffers to hold compressed and uncompressed data. ++ free(pCmp); ++ cmp_len = compressBound(src_len); + pCmp = (mz_uint8 *)malloc((size_t)cmp_len); + pUncomp = (mz_uint8 *)malloc((size_t)src_len); + if ((!pCmp) || (!pUncomp)) { diff --git a/poky/meta/recipes-graphics/vulkan/assimp_4.1.0.bb b/poky/meta/recipes-graphics/vulkan/assimp_4.1.0.bb deleted file mode 100644 index 194cbe33c..000000000 --- a/poky/meta/recipes-graphics/vulkan/assimp_4.1.0.bb +++ /dev/null @@ -1,20 +0,0 @@ -DESCRIPTION = "Open Asset Import Library is a portable Open Source library to import \ - various well-known 3D model formats in a uniform manner." -HOMEPAGE = "http://www.assimp.org/" -SECTION = "devel" - -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE;md5=2119edef0916b0bd511cb3c731076271" - -DEPENDS = "zlib" - -SRC_URI = "git://github.com/assimp/assimp.git" -UPSTREAM_CHECK_GITTAGREGEX = "v(?P(\d+(\.\d+)+))" - -SRCREV = "80799bdbf90ce626475635815ee18537718a05b1" - -S = "${WORKDIR}/git" - -inherit cmake - -EXTRA_OECMAKE = "-DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DASSIMP_BUILD_TESTS=OFF -DASSIMP_LIB_INSTALL_DIR=${baselib}" diff --git a/poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb b/poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb new file mode 100644 index 000000000..5a8c62e64 --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/assimp_5.0.1.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "Open Asset Import Library is a portable Open Source library to import \ + various well-known 3D model formats in a uniform manner." +HOMEPAGE = "http://www.assimp.org/" +SECTION = "devel" + +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=2119edef0916b0bd511cb3c731076271" + +DEPENDS = "zlib" + +SRC_URI = "git://github.com/assimp/assimp.git;branch=assimp_5.0_release \ + file://0001-closes-https-github.com-assimp-assimp-issues-2733-up.patch \ + file://0001-Use-ASSIMP_LIB_INSTALL_DIR-to-search-library.patch \ + " +UPSTREAM_CHECK_GITTAGREGEX = "v(?P(\d+(\.\d+)+))" + +SRCREV = "8f0c6b04b2257a520aaab38421b2e090204b69df" + +S = "${WORKDIR}/git" + +inherit cmake + +EXTRA_OECMAKE = "-DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DASSIMP_BUILD_TESTS=OFF -DASSIMP_LIB_INSTALL_DIR=${baselib}" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch b/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch index 93bcfbf85..76240610f 100644 --- a/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch +++ b/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch @@ -1,4 +1,4 @@ -From 0a27144d43b70121f57f6036514d069ca9d2b971 Mon Sep 17 00:00:00 2001 +From 0cbf9c9831f773e0da66209be9a6ff28d57c2321 Mon Sep 17 00:00:00 2001 From: "Maxin B. John" Date: Mon, 30 Jul 2018 17:23:29 +0300 Subject: [PATCH] Don't build demos with questionably licensed data @@ -33,16 +33,17 @@ Upstream-Status: Inappropriate [configuration] Signed-off-by: Jussi Kukkonen Signed-off-by: Maxin B. John + --- examples/CMakeLists.txt | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt -index 8eee3a4..698d3b3 100644 +index e07918c..08b6e23 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt -@@ -47,18 +47,12 @@ set(EXAMPLES - computeshader +@@ -55,18 +55,12 @@ set(EXAMPLES + conditionalrender conservativeraster debugmarker - deferred @@ -57,10 +58,10 @@ index 8eee3a4..698d3b3 100644 - hdr - imgui - indirectdraw + inlineuniformblocks inputattachments instancing - mesh -@@ -70,8 +64,6 @@ set(EXAMPLES +@@ -83,23 +77,16 @@ set(EXAMPLES parallaxmapping particlefire pbrbasic @@ -69,9 +70,8 @@ index 8eee3a4..698d3b3 100644 pipelines pipelinestatistics pushconstants -@@ -79,15 +71,10 @@ set(EXAMPLES + pushdescriptors radialblur - raytracing renderheadless - scenerendering screenshot @@ -85,7 +85,7 @@ index 8eee3a4..698d3b3 100644 stencilbuffer subpasses terraintessellation -@@ -101,7 +88,6 @@ set(EXAMPLES +@@ -113,7 +100,6 @@ set(EXAMPLES texturesparseresidency triangle viewportarray @@ -93,6 +93,3 @@ index 8eee3a4..698d3b3 100644 ) buildExamples() --- -2.4.0 - diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb b/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb index 74dc2ad67..c94e768b5 100644 --- a/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb +++ b/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb @@ -5,23 +5,23 @@ DEPENDS = "zlib" LIC_FILES_CHKSUM = "file://LICENSE.md;md5=dcf473723faabf17baa9b5f2207599d0 \ file://examples/triangle/triangle.cpp;endline=12;md5=bccd1bf9cadd9e10086cf7872157e4fa" -SRCREV_glm = "01f9ab5b6d21e5062ac0f6e0f205c7fa2ca9d769" -SRCREV_gli = "8e43030b3e12bb58a4663d85adc5c752f89099c0" +SRCREV_glm = "1ad55c5016339b83b7eec98c31007e0aee57d2bf" +SRCREV_gli = "7da5f50931225e9819a26d5cb323c5f42da50bcd" SRC_URI = "git://github.com/SaschaWillems/Vulkan.git \ git://github.com/g-truc/glm;destsuffix=git/external/glm;name=glm \ git://github.com/g-truc/gli;destsuffix=git/external/gli;name=gli \ file://0001-Don-t-build-demos-with-questionably-licensed-data.patch \ -" + " UPSTREAM_CHECK_COMMITS = "1" -SRCREV = "ae0b59c6e2e8630a2ae26f4a0b7a72cbe7547948" +SRCREV = "6d63dc32c320a49be0a56c365151c8f2f176bc59" UPSTREAM_CHECK_GITTAGREGEX = "These are not the releases you're looking for" S = "${WORKDIR}/git" REQUIRED_DISTRO_FEATURES = 'vulkan' inherit cmake features_check -DEPENDS = "vulkan-loader assimp" +DEPENDS = "vulkan-loader assimp wayland-protocols wayland-native" do_install_append () { # Remove assets that have uncertain licenses diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.108.bb b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.108.bb deleted file mode 100644 index 284c19d79..000000000 --- a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.108.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Vulkan Header files and API registry" -HOMEPAGE = "https://www.khronos.org/vulkan/" -BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers" -SECTION = "libs" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" -SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=sdk-${PV}" - -SRCREV = "097a1045098213919fd56442f52c716fc78eeb27" - -S = "${WORKDIR}/git" - -inherit cmake - -FILES_${PN} += "${datadir}/vulkan" - -UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb new file mode 100644 index 000000000..72c29a72a --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "Vulkan Header files and API registry" +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=sdk-1.1.126" + +SRCREV = "5bc459e2921304c32568b73edaac8d6df5f98b84" + +S = "${WORKDIR}/git" + +inherit cmake + +FILES_${PN} += "${datadir}/vulkan" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.108.bb b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.108.bb deleted file mode 100644 index a539c5a3c..000000000 --- a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.108.bb +++ /dev/null @@ -1,37 +0,0 @@ -SUMMARY = "3D graphics and compute API common loader" -DESCRIPTION = "Vulkan is a new generation graphics and compute API \ -that provides efficient access to modern GPUs. These packages \ -provide only the common vendor-agnostic library loader, headers and \ -the vulkaninfo utility." -HOMEPAGE = "https://www.khronos.org/vulkan/" -BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader" -SECTION = "libs" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac" -SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-${PV}" -SRCREV = "ecb0b1e69fb2f4d3cae262e6da24c170ce62ae13" - -S = "${WORKDIR}/git" - -REQUIRED_DISTRO_FEATURES = "vulkan" - -inherit cmake features_check -ANY_OF_DISTRO_FEATURES = "x11 wayland" - -DEPENDS += "vulkan-headers" - -EXTRA_OECMAKE = "\ - -DBUILD_TESTS=OFF \ - -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ - " - -# must choose x11 or wayland or both -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" - -PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" -PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" - -RRECOMMENDS_${PN} = "mesa-vulkan-drivers" - -UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb new file mode 100644 index 000000000..504cf85a2 --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb @@ -0,0 +1,38 @@ +SUMMARY = "3D graphics and compute API common loader" +DESCRIPTION = "Vulkan is a new generation graphics and compute API \ +that provides efficient access to modern GPUs. These packages \ +provide only the common vendor-agnostic library loader, headers and \ +the vulkaninfo utility." +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-1.1.126" +SRCREV = "4adad4ff705fa76f9edb2d37cb57e593decb60ed" + +S = "${WORKDIR}/git" + +REQUIRED_DISTRO_FEATURES = "vulkan" + +inherit cmake features_check +ANY_OF_DISTRO_FEATURES = "x11 wayland" + +DEPENDS += "vulkan-headers" + +EXTRA_OECMAKE = "\ + -DBUILD_TESTS=OFF \ + -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ + -DASSEMBLER_WORKS=FALSE \ + " + +# must choose x11 or wayland or both +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" + +PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" + +RRECOMMENDS_${PN} = "mesa-vulkan-drivers" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb deleted file mode 100644 index 4ac1bafd1..000000000 --- a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Vulkan Utilities and Tools" -HOMEPAGE = "https://www.khronos.org/vulkan/" -BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools" -SECTION = "libs" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" -SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-${PV}" -SRCREV = "3ccd7f6ebae3e1919adf837718c04feb6c2acc61" - -S = "${WORKDIR}/git" - -inherit cmake features_check -ANY_OF_DISTRO_FEATURES = "x11 wayland" -REQUIRED_DISTRO_FEATURES = "vulkan" - -DEPENDS += "vulkan-headers vulkan-loader" - -EXTRA_OECMAKE = "\ - -DBUILD_TESTS=OFF \ - -DBUILD_CUBE=OFF \ - -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ - " - -# must choose x11 or wayland or both -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" - -PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" -PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" - -UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb new file mode 100644 index 000000000..2fd61c989 --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb @@ -0,0 +1,31 @@ +SUMMARY = "Vulkan Utilities and Tools" +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-1.1.126" +SRCREV = "09695dfc5dbe54f869aeaff8db93bb7bb6a220e0" + +S = "${WORKDIR}/git" + +inherit cmake features_check +ANY_OF_DISTRO_FEATURES = "x11 wayland" +REQUIRED_DISTRO_FEATURES = "vulkan" + +DEPENDS += "vulkan-headers vulkan-loader" + +EXTRA_OECMAKE = "\ + -DBUILD_TESTS=OFF \ + -DBUILD_CUBE=OFF \ + -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ + " + +# must choose x11 or wayland or both +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" + +PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/waffle/waffle_1.6.0.bb b/poky/meta/recipes-graphics/waffle/waffle_1.6.0.bb index 52cb1df89..a62029597 100644 --- a/poky/meta/recipes-graphics/waffle/waffle_1.6.0.bb +++ b/poky/meta/recipes-graphics/waffle/waffle_1.6.0.bb @@ -11,6 +11,8 @@ UPSTREAM_CHECK_URI = "http://www.waffle-gl.org/releases.html" inherit meson features_check lib_package bash-completion +DEPENDS_append = " python3" + # This should be overridden per-machine to reflect the capabilities of the GL # stack. PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11-egl', '', d)} \ diff --git a/poky/meta/recipes-graphics/wayland/libinput/determinism.patch b/poky/meta/recipes-graphics/wayland/libinput/determinism.patch new file mode 100644 index 000000000..cb554030c --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/libinput/determinism.patch @@ -0,0 +1,21 @@ +This finds our outer git tree and that version information breaks +determinism of this recipe. Disable it. + +RP 2020/2/6 + +Upstream-Status: Pending +Signed-off-by: Richard Purdie + +Index: libinput-1.14.3/meson.build +=================================================================== +--- libinput-1.14.3.orig/meson.build ++++ libinput-1.14.3/meson.build +@@ -387,7 +387,7 @@ pkgconfig.generate( + libraries : lib_libinput + ) + +-git_version_h = vcs_tag(command : ['git', 'describe'], ++git_version_h = vcs_tag(command : ['false'], + fallback : 'unknown', + input : 'src/libinput-git-version.h.in', + output :'libinput-git-version.h') diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.14.3.bb b/poky/meta/recipes-graphics/wayland/libinput_1.14.3.bb deleted file mode 100644 index f06a8d28f..000000000 --- a/poky/meta/recipes-graphics/wayland/libinput_1.14.3.bb +++ /dev/null @@ -1,37 +0,0 @@ -SUMMARY = "Library to handle input devices in Wayland compositors" -DESCRIPTION = "libinput is a library to handle input devices in Wayland \ -compositors and to provide a generic X.Org input driver. It provides \ -device detection, device handling, input device event processing and \ -abstraction so minimize the amount of custom input code compositors need to \ -provide the common set of functionality that users expect." -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=1f2ea9ebff3a2c6d458faf58492efb63" - -DEPENDS = "libevdev udev mtdev" - -SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz" -SRC_URI[md5sum] = "d052faa64eb6d2e649e582cc0fcf6e32" -SRC_URI[sha256sum] = "0feb3a0589709cc1032893bfaf4c49150d5360bd9782bec888f9e4dd9044c5b7" - -UPSTREAM_CHECK_REGEX = "libinput-(?P\d+\.\d+\.(?!9\d+)\d+)" - -inherit meson pkgconfig lib_package - -PACKAGECONFIG ??= "" -PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom" -PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3" - -UDEVDIR = "`pkg-config --variable=udevdir udev`" - -EXTRA_OEMESON += "-Dudev-dir=${UDEVDIR} \ - -Ddocumentation=false \ - -Dtests=false \ - -Dzshcompletiondir=no" - -# package name changed in 1.8.1 upgrade: make sure package upgrades work -RPROVIDES_${PN} = "libinput" -RREPLACES_${PN} = "libinput" -RCONFLICTS_${PN} = "libinput" diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb b/poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb new file mode 100644 index 000000000..810532774 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb @@ -0,0 +1,40 @@ +SUMMARY = "Library to handle input devices in Wayland compositors" +DESCRIPTION = "libinput is a library to handle input devices in Wayland \ +compositors and to provide a generic X.Org input driver. It provides \ +device detection, device handling, input device event processing and \ +abstraction so minimize the amount of custom input code compositors need to \ +provide the common set of functionality that users expect." +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=1f2ea9ebff3a2c6d458faf58492efb63" + +DEPENDS = "libevdev udev mtdev" + +SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \ + file://determinism.patch \ + " +SRC_URI[md5sum] = "eb6bd2907ad33d53954d70dfb881a643" +SRC_URI[sha256sum] = "971c3fbfb624f95c911adeb2803c372e4e3647d1b98f278f660051f834597747" + +UPSTREAM_CHECK_REGEX = "libinput-(?P\d+\.\d+\.(?!9\d+)\d+)" + +inherit meson pkgconfig lib_package + +PACKAGECONFIG ??= "" +PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom" +PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3" + +UDEVDIR = "`pkg-config --variable=udevdir udev`" + +EXTRA_OEMESON += "-Dudev-dir=${UDEVDIR} \ + -Ddocumentation=false \ + -Dtests=false \ + -Dzshcompletiondir=no" + +# package name changed in 1.8.1 upgrade: make sure package upgrades work +RPROVIDES_${PN} = "libinput" +RREPLACES_${PN} = "libinput" +RCONFLICTS_${PN} = "libinput" + diff --git a/poky/meta/recipes-graphics/wayland/mtdev_1.1.5.bb b/poky/meta/recipes-graphics/wayland/mtdev_1.1.5.bb deleted file mode 100644 index ccd0ebbfc..000000000 --- a/poky/meta/recipes-graphics/wayland/mtdev_1.1.5.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Multitouch Protocol Translation Library" - -DESCRIPTION = "mtdev is a library which transforms all variants of kernel \ -multitouch events to the slotted type B protocol. The events put into mtdev may \ -be from any MT device, specifically type A without contact tracking, type A with \ -contact tracking, or type B with contact tracking" - -HOMEPAGE = "http://bitmath.org/code/mtdev/" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=ea6bd0268bb0fcd6b27698616ceee5d6" - -SRC_URI = "http://bitmath.org/code/${BPN}/${BP}.tar.bz2" -SRC_URI[md5sum] = "52c9610b6002f71d1642dc1a1cca5ec1" -SRC_URI[sha256sum] = "6677d5708a7948840de734d8b4675d5980d4561171c5a8e89e54adf7a13eba7f" - -inherit autotools pkgconfig diff --git a/poky/meta/recipes-graphics/wayland/mtdev_1.1.6.bb b/poky/meta/recipes-graphics/wayland/mtdev_1.1.6.bb new file mode 100644 index 000000000..7c1cb5e4e --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/mtdev_1.1.6.bb @@ -0,0 +1,18 @@ +SUMMARY = "Multitouch Protocol Translation Library" + +DESCRIPTION = "mtdev is a library which transforms all variants of kernel \ +multitouch events to the slotted type B protocol. The events put into mtdev may \ +be from any MT device, specifically type A without contact tracking, type A with \ +contact tracking, or type B with contact tracking" + +HOMEPAGE = "http://bitmath.org/code/mtdev/" +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=ea6bd0268bb0fcd6b27698616ceee5d6" + +SRC_URI = "http://bitmath.org/code/${BPN}/${BP}.tar.bz2" +SRC_URI[md5sum] = "bf8ef2482e84a00b5db8fbd3ce00e249" +SRC_URI[sha256sum] = "15d7b28da8ac71d8bc8c9287c2045fd174267bc740bec10cfda332dc1204e0e0" + +inherit autotools pkgconfig diff --git a/poky/meta/recipes-graphics/wayland/wayland-protocols_1.18.bb b/poky/meta/recipes-graphics/wayland/wayland-protocols_1.18.bb deleted file mode 100644 index c8bec66a4..000000000 --- a/poky/meta/recipes-graphics/wayland/wayland-protocols_1.18.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "Collection of additional Wayland protocols" -DESCRIPTION = "Wayland protocols that add functionality not \ -available in the Wayland core protocol. Such protocols either add \ -completely new functionality, or extend the functionality of some other \ -protocol either in Wayland core, or some other protocol in \ -wayland-protocols." -HOMEPAGE = "http://wayland.freedesktop.org" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \ - file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53" - -SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ - " -SRC_URI[md5sum] = "af38f22d8e233c2f2e00ddc8dcc94694" -SRC_URI[sha256sum] = "3d73b7e7661763dc09d7d9107678400101ecff2b5b1e531674abfa81e04874b3" - -UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" - -inherit allarch autotools pkgconfig - -PACKAGES = "${PN}" -FILES_${PN} += "${datadir}/pkgconfig/wayland-protocols.pc" diff --git a/poky/meta/recipes-graphics/wayland/wayland-protocols_1.20.bb b/poky/meta/recipes-graphics/wayland/wayland-protocols_1.20.bb new file mode 100644 index 000000000..3fb78f658 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/wayland-protocols_1.20.bb @@ -0,0 +1,22 @@ +SUMMARY = "Collection of additional Wayland protocols" +DESCRIPTION = "Wayland protocols that add functionality not \ +available in the Wayland core protocol. Such protocols either add \ +completely new functionality, or extend the functionality of some other \ +protocol either in Wayland core, or some other protocol in \ +wayland-protocols." +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \ + file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53" + +SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ + " +SRC_URI[md5sum] = "b0836533a3f2dc6585b1dae00341157f" +SRC_URI[sha256sum] = "9782b7a1a863d82d7c92478497d13c758f52e7da4f197aa16443f73de77e4de7" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit allarch autotools pkgconfig + +PACKAGES = "${PN}" +FILES_${PN} += "${datadir}/pkgconfig/wayland-protocols.pc" diff --git a/poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch b/poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch new file mode 100644 index 000000000..e44583875 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch @@ -0,0 +1,39 @@ +From e6783c99f051c6d8252db5f388d805cef0e16357 Mon Sep 17 00:00:00 2001 +From: Joshua Watt +Date: Thu, 20 Feb 2020 15:20:45 -0600 +Subject: [PATCH] build: Fix strndup detection on MinGW + +GCC and meson conspire together to incorrectly detect that strndup() +exists on MinGW as __builtin_strndup, when no such function exists. As a +work around, meson will skip looking for __builtin functions if an +'#include' is in the prefix, so add '#include ' when looking +for strndup(). + +See: https://github.com/mesonbuild/meson/issues/3672 + +Signed-off-by: Joshua Watt +Upstream-Status: Submitted [https://gitlab.freedesktop.org/wayland/wayland/merge_requests/63] +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 26b084f..c05d019 100644 +--- a/meson.build ++++ b/meson.build +@@ -36,11 +36,11 @@ have_funcs = [ + 'posix_fallocate', + 'prctl', + 'memfd_create', +- 'strndup', + ] + foreach f: have_funcs + config_h.set('HAVE_' + f.underscorify().to_upper(), cc.has_function(f)) + endforeach ++config_h.set('HAVE_STRNDUP', cc.has_function('strndup', prefix:'#include ')) + + if get_option('libraries') + ffi_dep = dependency('libffi') +-- +2.17.1 + diff --git a/poky/meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch b/poky/meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch new file mode 100644 index 000000000..61de0e04e --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch @@ -0,0 +1,115 @@ +From b2c74f6a3dbe0aee2413800837314136947a4985 Mon Sep 17 00:00:00 2001 +From: Jan Beich +Date: Sat, 15 Feb 2020 02:03:45 +0000 +Subject: [PATCH] meson/tests: add missing dependencies on protocol headers + +In file included from ../tests/connection-test.c:43: +In file included from ../tests/test-compositor.h:30: +../src/wayland-client.h:40:10: fatal error: 'wayland-client-protocol.h' file not found + #include "wayland-client-protocol.h" + ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../tests/display-test.c:45: +In file included from ../src/wayland-server.h:104: +src/wayland-server-protocol.h:4454:2: error: unterminated /* comment + /** + ^ +In file included from ../tests/cpp-compile-test.cpp:2: +In file included from src/wayland-server-protocol.h:8: +In file included from ../src/wayland-server.h:104: +src/wayland-server-protocol.h:3:2: error: unterminated conditional directive + #ifndef WAYLAND_SERVER_PROTOCOL_H + ^ +../tests/headers-protocol-test.c:33:2: error: including wayland-server-protocol.h did not include wayland-server.h! + #error including wayland-server-protocol.h did not include wayland-server.h! + ^ +In file included from ../tests/headers-protocol-test.c:26: +In file included from src/wayland-client-protocol.h:8: +In file included from ../src/wayland-client.h:40: +src/wayland-client-protocol.h:1358:2: error: unterminated conditional directive + #ifndef WL_SHM_FORMAT_ENUM + ^ +In file included from ../tests/protocol-logger-test.c:34: +In file included from ../src/wayland-client.h:40: +src/wayland-client-protocol.h:2613:1: error: unterminated /* comment +/** +^ +../tests/resources-test.c:49:36: error: use of undeclared identifier 'wl_seat_interface' + res = wl_resource_create(client, &wl_seat_interface, 4, 0); + ^ +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin +--- + tests/meson.build | 26 ++++++++++++++++++-------- + 1 file changed, 18 insertions(+), 8 deletions(-) + +diff --git a/tests/meson.build b/tests/meson.build +index c28a2a3..f1af7b4 100644 +--- a/tests/meson.build ++++ b/tests/meson.build +@@ -69,7 +69,7 @@ test( + executable( + 'cpp-compile-test', + 'cpp-compile-test.cpp', +- wayland_server_protocol_core_h, ++ wayland_server_protocol_h, + include_directories: src_inc + ) + ) +@@ -91,17 +91,25 @@ tests = { + 'array-test': [], + 'client-test': [ wayland_server_protocol_h ], + 'display-test': [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, + tests_server_protocol_h, + tests_client_protocol_c, + tests_protocol_c, + ], +- 'connection-test': [ wayland_server_protocol_h ], ++ 'connection-test': [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, ++ ], + 'event-loop-test': [ wayland_server_protocol_h ], + 'fixed-test': [], + 'interface-test': [ wayland_client_protocol_h ], + 'list-test': [], + 'map-test': [], +- 'sanity-test' : [ wayland_server_protocol_h ], ++ 'sanity-test' : [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, ++ ], + 'socket-test': [ + wayland_client_protocol_h, + wayland_server_protocol_h, +@@ -116,7 +124,7 @@ tests = { + files('../src/wayland-server.c'), + wayland_server_protocol_h, + ], +- 'resources-test': [ wayland_server_protocol_core_h ], ++ 'resources-test': [ wayland_server_protocol_h ], + 'message-test': [ + wayland_client_protocol_h, + wayland_server_protocol_h, +@@ -126,14 +134,16 @@ tests = { + wayland_server_protocol_h, + ], + 'protocol-logger-test': [ +- wayland_server_protocol_core_h, +- wayland_client_protocol_core_h, ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, + ], + 'headers-test': [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, + 'headers-protocol-test.c', +- 'headers-protocol-core-test.c', +- wayland_server_protocol_core_h, + wayland_client_protocol_core_h, ++ wayland_server_protocol_core_h, ++ 'headers-protocol-core-test.c', + ], + 'os-wrappers-test': [], + } diff --git a/poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Add-configure-check-for-strndup.patch b/poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Add-configure-check-for-strndup.patch deleted file mode 100644 index c4435875a..000000000 --- a/poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Add-configure-check-for-strndup.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 3c8b4467a1ca229e72fb5223787ed400a19c65c0 Mon Sep 17 00:00:00 2001 -From: Joshua Watt -Date: Fri, 25 Oct 2019 21:03:23 -0500 -Subject: [PATCH] scanner: Add configure check for strndup - -Some platforms may not have strndup() (e.g. MinGW), so provide a -equivalent implementation if it's not found. - -Upstream-Status: Accepted [4a1f348c20157db7bd7c759fdeb23fbe8729c571] -Signed-off-by: Joshua Watt ---- - configure.ac | 2 +- - src/scanner.c | 11 +++++++++++ - 2 files changed, 12 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 8d56f2b..1c99e21 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -63,7 +63,7 @@ fi - AC_SUBST(GCC_CFLAGS) - - AC_CHECK_HEADERS([sys/prctl.h]) --AC_CHECK_FUNCS([accept4 mkostemp posix_fallocate prctl]) -+AC_CHECK_FUNCS([accept4 mkostemp posix_fallocate prctl strndup]) - - AC_ARG_ENABLE([libraries], - [AC_HELP_STRING([--disable-libraries], -diff --git a/src/scanner.c b/src/scanner.c -index a94be5d..27004bc 100644 ---- a/src/scanner.c -+++ b/src/scanner.c -@@ -916,6 +916,17 @@ verify_arguments(struct parse_context *ctx, - - } - -+#ifndef HAVE_STRNDUP -+char * -+strndup(const char *s, size_t size) -+{ -+ char *r = malloc(size + 1); -+ strncpy(r, s, size); -+ r[size] = '\0'; -+ return r; -+} -+#endif -+ - static void - end_element(void *data, const XML_Char *name) - { diff --git a/poky/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch b/poky/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch new file mode 100644 index 000000000..2199548bd --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch @@ -0,0 +1,26 @@ +From cbb28635a1079d68e62dbaa1e21791a20dbbbaf4 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Mon, 17 Feb 2020 21:46:18 +0100 +Subject: [PATCH] Do not hardcode the path to wayland-scanner + +This results in host contamination during builds. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + src/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/meson.build b/src/meson.build +index 294aee0..7e410fa 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -49,7 +49,7 @@ pkgconfig.generate( + 'datarootdir=' + join_paths('${prefix}', get_option('datadir')), + 'pkgdatadir=' + join_paths('${datarootdir}', meson.project_name()), + 'bindir=' + join_paths('${prefix}', get_option('bindir')), +- 'wayland_scanner=${bindir}/wayland-scanner' ++ 'wayland_scanner=wayland-scanner' + ], + filebase: 'wayland-scanner' + ) diff --git a/poky/meta/recipes-graphics/wayland/wayland/0002-Move-wl_priv_signal-to-wayland-server-private.h.patch b/poky/meta/recipes-graphics/wayland/wayland/0002-Move-wl_priv_signal-to-wayland-server-private.h.patch deleted file mode 100644 index b05b875ab..000000000 --- a/poky/meta/recipes-graphics/wayland/wayland/0002-Move-wl_priv_signal-to-wayland-server-private.h.patch +++ /dev/null @@ -1,166 +0,0 @@ -From e746f3bf7c8bb2f5dcf9e93edffc23b56eff12d0 Mon Sep 17 00:00:00 2001 -From: Joshua Watt -Date: Tue, 5 Nov 2019 09:09:50 -0600 -Subject: [PATCH] Move wl_priv_signal to wayland-server-private.h - -Including wayland-server-core.h in wayland-private.h is problematic -because wayland-private.h is included by wayland-scanner which should be -able to build against non-POSIX platforms (e.g. MinGW). The only reason -that wayland-server-core.h was included in wayland-private.h was for the -wl_private_signal definitions, so move those to a -wayland-server-private.h file that can be included by both -wayland-server.c and the tests. - -Upstream-Status: Accepted [e7d88f35eb89cf0cc77cbddd834cacc63683a9cc] -Signed-off-by: Joshua Watt ---- - Makefile.am | 3 +- - src/wayland-private.h | 22 +-------------- - src/wayland-server-private.h | 53 ++++++++++++++++++++++++++++++++++++ - src/wayland-server.c | 1 + - tests/newsignal-test.c | 2 +- - 5 files changed, 58 insertions(+), 23 deletions(-) - create mode 100644 src/wayland-server-private.h - -diff --git a/Makefile.am b/Makefile.am -index f47d055..026d981 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -56,7 +56,8 @@ libwayland_private_la_SOURCES = \ - src/connection.c \ - src/wayland-os.c \ - src/wayland-os.h \ -- src/wayland-private.h -+ src/wayland-private.h \ -+ src/wayland-server-private.h - - include_HEADERS = \ - src/wayland-util.h \ -diff --git a/src/wayland-private.h b/src/wayland-private.h -index 29516ec..dc7d12f 100644 ---- a/src/wayland-private.h -+++ b/src/wayland-private.h -@@ -31,11 +31,11 @@ - #include - #include - #include -+#include - - #define WL_HIDE_DEPRECATED 1 - - #include "wayland-util.h" --#include "wayland-server-core.h" - - /* Invalid memory address */ - #define WL_ARRAY_POISON_PTR (void *) 4 -@@ -236,26 +236,6 @@ zalloc(size_t s) - return calloc(1, s); - } - --struct wl_priv_signal { -- struct wl_list listener_list; -- struct wl_list emit_list; --}; -- --void --wl_priv_signal_init(struct wl_priv_signal *signal); -- --void --wl_priv_signal_add(struct wl_priv_signal *signal, struct wl_listener *listener); -- --struct wl_listener * --wl_priv_signal_get(struct wl_priv_signal *signal, wl_notify_func_t notify); -- --void --wl_priv_signal_emit(struct wl_priv_signal *signal, void *data); -- --void --wl_priv_signal_final_emit(struct wl_priv_signal *signal, void *data); -- - void - wl_connection_close_fds_in(struct wl_connection *connection, int max); - -diff --git a/src/wayland-server-private.h b/src/wayland-server-private.h -new file mode 100644 -index 0000000..23fa458 ---- /dev/null -+++ b/src/wayland-server-private.h -@@ -0,0 +1,53 @@ -+/* -+ * Copyright © 2008-2011 Kristian Høgsberg -+ * Copyright © 2011 Intel Corporation -+ * Copyright © 2013 Jason Ekstrand -+ * -+ * Permission is hereby granted, free of charge, to any person obtaining -+ * a copy of this software and associated documentation files (the -+ * "Software"), to deal in the Software without restriction, including -+ * without limitation the rights to use, copy, modify, merge, publish, -+ * distribute, sublicense, and/or sell copies of the Software, and to -+ * permit persons to whom the Software is furnished to do so, subject to -+ * the following conditions: -+ * -+ * The above copyright notice and this permission notice (including the -+ * next paragraph) shall be included in all copies or substantial -+ * portions of the Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS -+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN -+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -+ * SOFTWARE. -+ */ -+ -+#ifndef WAYLAND_SERVER_PRIVATE_H -+#define WAYLAND_SERVER_PRIVATE_H -+ -+#include "wayland-server-core.h" -+ -+struct wl_priv_signal { -+ struct wl_list listener_list; -+ struct wl_list emit_list; -+}; -+ -+void -+wl_priv_signal_init(struct wl_priv_signal *signal); -+ -+void -+wl_priv_signal_add(struct wl_priv_signal *signal, struct wl_listener *listener); -+ -+struct wl_listener * -+wl_priv_signal_get(struct wl_priv_signal *signal, wl_notify_func_t notify); -+ -+void -+wl_priv_signal_emit(struct wl_priv_signal *signal, void *data); -+ -+void -+wl_priv_signal_final_emit(struct wl_priv_signal *signal, void *data); -+ -+#endif -diff --git a/src/wayland-server.c b/src/wayland-server.c -index 19f6a76..d6f0206 100644 ---- a/src/wayland-server.c -+++ b/src/wayland-server.c -@@ -45,6 +45,7 @@ - - #include "wayland-util.h" - #include "wayland-private.h" -+#include "wayland-server-private.h" - #include "wayland-server.h" - #include "wayland-os.h" - -diff --git a/tests/newsignal-test.c b/tests/newsignal-test.c -index 47c429b..f3a7bd9 100644 ---- a/tests/newsignal-test.c -+++ b/tests/newsignal-test.c -@@ -26,7 +26,7 @@ - #include - - #include "test-runner.h" --#include "wayland-private.h" -+#include "wayland-server-private.h" - - static void - signal_notify(struct wl_listener *listener, void *data) diff --git a/poky/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch b/poky/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch new file mode 100644 index 000000000..f98037a85 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch @@ -0,0 +1,27 @@ +From 2582d2653ba80917d7bc47088e1a5f49530fddaa Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Sun, 16 Feb 2020 16:29:53 +0100 +Subject: [PATCH] meson.build: find the native wayland-scanner directly in PATH + +Otherwise, meson attempts to use the target pkg-config and fails. + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- + src/meson.build | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/meson.build b/src/meson.build +index 3e8c9bf..294aee0 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -55,8 +55,7 @@ pkgconfig.generate( + ) + + if meson.is_cross_build() +- scanner_dep = dependency('wayland-scanner', native: true, version: '>=1.14.0') +- wayland_scanner_for_build = find_program(scanner_dep.get_pkgconfig_variable('wayland_scanner')) ++ wayland_scanner_for_build = find_program('wayland-scanner') + else + wayland_scanner_for_build = wayland_scanner + endif diff --git a/poky/meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch b/poky/meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch deleted file mode 100644 index ad3526d98..000000000 --- a/poky/meta/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch +++ /dev/null @@ -1,32 +0,0 @@ -Fix wayland-client and wayland-scanner pc files - -Upstream-Status: Pending - -Signed-off-by: Fabien Lahoudere - -Index: wayland-1.14.0/src/wayland-client.pc.in -=================================================================== ---- wayland-1.14.0.orig/src/wayland-client.pc.in -+++ wayland-1.14.0/src/wayland-client.pc.in -@@ -1,7 +1,7 @@ - prefix=@prefix@ - exec_prefix=@exec_prefix@ - datarootdir=@datarootdir@ --pkgdatadir=@datadir@/@PACKAGE@ -+pkgdatadir=${pc_sysrootdir}@datadir@/@PACKAGE@ - libdir=@libdir@ - includedir=@includedir@ - -Index: wayland-1.14.0/src/wayland-scanner.pc.in -=================================================================== ---- wayland-1.14.0.orig/src/wayland-scanner.pc.in -+++ wayland-1.14.0/src/wayland-scanner.pc.in -@@ -2,7 +2,7 @@ prefix=@prefix@ - exec_prefix=@exec_prefix@ - datarootdir=@datarootdir@ - pkgdatadir=@datadir@/@PACKAGE@ --wayland_scanner=@bindir@/wayland-scanner -+wayland_scanner=wayland-scanner - - Name: Wayland Scanner - Description: Wayland scanner diff --git a/poky/meta/recipes-graphics/wayland/wayland/run-ptest b/poky/meta/recipes-graphics/wayland/wayland/run-ptest new file mode 100644 index 000000000..7e8d9de04 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/wayland/run-ptest @@ -0,0 +1,17 @@ +#!/bin/sh + +export WAYLAND_SCANNER=wayland-scanner +export TEST_DATA_DIR=tests/data +export TEST_OUTPUT_DIR=tests/output +export SED=sed +export WAYLAND_EGL_LIB=/usr/lib/libwayland-egl.so.1 +export NM=nm + +for i in `ls tests/*-test tests/wayland-egl-symbols-check tests/scanner-test.sh`; do + $i + if [ $? -eq 0 ]; then + echo "PASS: $i" + else + echo "FAIL: $i" + fi +done diff --git a/poky/meta/recipes-graphics/wayland/wayland_1.17.0.bb b/poky/meta/recipes-graphics/wayland/wayland_1.17.0.bb deleted file mode 100644 index 2b5a8f945..000000000 --- a/poky/meta/recipes-graphics/wayland/wayland_1.17.0.bb +++ /dev/null @@ -1,46 +0,0 @@ -SUMMARY = "Wayland, a protocol between a compositor and clients" -DESCRIPTION = "Wayland is a protocol for a compositor to talk to its clients \ -as well as a C library implementation of that protocol. The compositor can be \ -a standalone display server running on Linux kernel modesetting and evdev \ -input devices, an X application, or a wayland client itself. The clients can \ -be traditional applications, X servers (rootless or fullscreen) or other \ -display servers." -HOMEPAGE = "http://wayland.freedesktop.org" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \ - file://src/wayland-server.c;endline=24;md5=b8e046164a766bb1ede8ba38e9dcd7ce" - -DEPENDS = "expat libxml2 libffi wayland-native" - -SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ - file://fixpathinpcfiles.patch \ - file://0001-scanner-Add-configure-check-for-strndup.patch \ - file://0002-Move-wl_priv_signal-to-wayland-server-private.h.patch \ - " -SRC_URI[md5sum] = "d91f970aea11fd549eae023d06f91af3" -SRC_URI[sha256sum] = "72aa11b8ac6e22f4777302c9251e8fec7655dc22f9d94ee676c6b276f95f91a4" - -UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-documentation --with-host-scanner" -EXTRA_OECONF_class-native = "--disable-documentation --disable-libraries" - -# Wayland installs a M4 macro for other projects to use, which uses the target -# pkg-config to find files. Replace pkg-config with pkg-config-native. -do_install_append_class-native() { - sed -e 's,PKG_CHECK_MODULES(.*),,g' \ - -e 's,$PKG_CONFIG,pkg-config-native,g' \ - -i ${D}/${datadir}/aclocal/wayland-scanner.m4 -} - -sysroot_stage_all_append_class-target () { - rm ${SYSROOT_DESTDIR}/${datadir}/aclocal/wayland-scanner.m4 - cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/ -} - -FILES_${PN} = "${libdir}/*${SOLIBS}" -FILES_${PN}-dev += "${bindir} ${datadir}/wayland" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/wayland/wayland_1.18.0.bb b/poky/meta/recipes-graphics/wayland/wayland_1.18.0.bb new file mode 100644 index 000000000..00be3aac2 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/wayland_1.18.0.bb @@ -0,0 +1,62 @@ +SUMMARY = "Wayland, a protocol between a compositor and clients" +DESCRIPTION = "Wayland is a protocol for a compositor to talk to its clients \ +as well as a C library implementation of that protocol. The compositor can be \ +a standalone display server running on Linux kernel modesetting and evdev \ +input devices, an X application, or a wayland client itself. The clients can \ +be traditional applications, X servers (rootless or fullscreen) or other \ +display servers." +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \ + file://src/wayland-server.c;endline=24;md5=b8e046164a766bb1ede8ba38e9dcd7ce" + +DEPENDS = "expat libffi wayland-native" + +SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ + file://run-ptest \ + file://0002-meson.build-find-the-native-wayland-scanner-directly.patch \ + file://0002-Do-not-hardcode-the-path-to-wayland-scanner.patch \ + file://0001-build-Fix-strndup-detection-on-MinGW.patch \ + file://0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch \ + " +SRC_URI[md5sum] = "23317697b6e3ff2e1ac8c5ba3ed57b65" +SRC_URI[sha256sum] = "4675a79f091020817a98fd0484e7208c8762242266967f55a67776936c2e294d" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit meson pkgconfig ptest + +PACKAGECONFIG ??= "dtd-validation" +PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,," + +EXTRA_OEMESON = "-Ddocumentation=false" +EXTRA_OEMESON_class-native = "-Ddocumentation=false -Dlibraries=false" + +# Wayland installs a M4 macro for other projects to use, which uses the target +# pkg-config to find files. Replace pkg-config with pkg-config-native. +do_install_append_class-native() { + sed -e 's,PKG_CHECK_MODULES(.*),,g' \ + -e 's,$PKG_CONFIG,pkg-config-native,g' \ + -i ${D}/${datadir}/aclocal/wayland-scanner.m4 +} + +do_install_ptest() { + mkdir -p ${D}${PTEST_PATH}/tests/data + cp -rf ${B}/tests/*-test ${B}/tests/*-checker ${D}${PTEST_PATH}/tests + cp -rf ${B}/tests/*-checker ${D}${PTEST_PATH} + cp -rf ${S}/tests/scanner-test.sh ${D}${PTEST_PATH}/tests + cp -rf ${S}/tests/data/* ${D}${PTEST_PATH}/tests/data/ + cp -rf ${S}/egl/wayland-egl-symbols-check ${D}${PTEST_PATH}/tests/ +} + +sysroot_stage_all_append_class-target () { + rm ${SYSROOT_DESTDIR}/${datadir}/aclocal/wayland-scanner.m4 + cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/ +} + +FILES_${PN} = "${libdir}/*${SOLIBS}" +FILES_${PN}-dev += "${bindir} ${datadir}/wayland" + +BBCLASSEXTEND = "native nativesdk" + +RDEPENDS_${PN}-ptest += "binutils sed" diff --git a/poky/meta/recipes-graphics/wayland/weston-init.bb b/poky/meta/recipes-graphics/wayland/weston-init.bb index e3e739e2b..40aa76295 100644 --- a/poky/meta/recipes-graphics/wayland/weston-init.bb +++ b/poky/meta/recipes-graphics/wayland/weston-init.bb @@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384 PACKAGE_ARCH = "${MACHINE_ARCH}" SRC_URI = "file://init \ + file://weston.env \ file://weston.ini \ file://weston@.service \ file://71-weston-drm.rules \ @@ -15,6 +16,7 @@ S = "${WORKDIR}" do_install() { install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston install -D -p -m0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini + install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston # Install Weston systemd service and accompanying udev rule install -D -p -m0644 ${WORKDIR}/weston@.service ${D}${systemd_system_unitdir}/weston@.service @@ -30,6 +32,14 @@ do_install() { sed -i 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${bindir}/weston-start } +do_install_append_libc-musl_qemux86() { + echo "WESTON_DISABLE_ATOMIC=Y" >> ${D}${sysconfdir}/default/weston +} + +do_install_append_libc-musl_qemux86-64() { + echo "WESTON_DISABLE_ATOMIC=Y" >> ${D}${sysconfdir}/default/weston +} + inherit update-rc.d features_check systemd # rdepends on weston which depends on virtual/egl @@ -40,9 +50,9 @@ RDEPENDS_${PN} = "weston kbd" INITSCRIPT_NAME = "weston" INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ." -FILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${systemd_system_unitdir}/weston@.service" +FILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${systemd_system_unitdir}/weston@.service ${sysconfdir}/default/weston" -CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini" +CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${sysconfdir}/default/weston" SYSTEMD_SERVICE_${PN} = "weston@%i.service" SYSTEMD_AUTO_ENABLE = "disable" diff --git a/poky/meta/recipes-graphics/wayland/weston-init/qemuall/weston.ini b/poky/meta/recipes-graphics/wayland/weston-init/qemuall/weston.ini new file mode 100644 index 000000000..17ebd7fda --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/weston-init/qemuall/weston.ini @@ -0,0 +1,2 @@ +[core] +backend=fbdev-backend.so diff --git a/poky/meta/recipes-graphics/wayland/weston-init/qemux86-64/weston.ini b/poky/meta/recipes-graphics/wayland/weston-init/qemux86-64/weston.ini index 17ebd7fda..e69de29bb 100644 --- a/poky/meta/recipes-graphics/wayland/weston-init/qemux86-64/weston.ini +++ b/poky/meta/recipes-graphics/wayland/weston-init/qemux86-64/weston.ini @@ -1,2 +0,0 @@ -[core] -backend=fbdev-backend.so diff --git a/poky/meta/recipes-graphics/wayland/weston-init/qemux86/weston.ini b/poky/meta/recipes-graphics/wayland/weston-init/qemux86/weston.ini index 17ebd7fda..e69de29bb 100644 --- a/poky/meta/recipes-graphics/wayland/weston-init/qemux86/weston.ini +++ b/poky/meta/recipes-graphics/wayland/weston-init/qemux86/weston.ini @@ -1,2 +0,0 @@ -[core] -backend=fbdev-backend.so diff --git a/poky/meta/recipes-graphics/wayland/weston-init/weston.env b/poky/meta/recipes-graphics/wayland/weston-init/weston.env new file mode 100644 index 000000000..e69de29bb diff --git a/poky/meta/recipes-graphics/wayland/weston-init/weston.ini b/poky/meta/recipes-graphics/wayland/weston-init/weston.ini index 1eecf48bc..1e6dff68f 100644 --- a/poky/meta/recipes-graphics/wayland/weston-init/weston.ini +++ b/poky/meta/recipes-graphics/wayland/weston-init/weston.ini @@ -1,9 +1,10 @@ # configuration file for Weston -#[core] +[core] #modules=xwayland.so,cms-colord.so #shell=desktop-shell.so #gbm-format=xrgb2101010 +require-input=false #[shell] #background-image=/usr/share/backgrounds/gnome/Aqua.jpg diff --git a/poky/meta/recipes-graphics/wayland/weston-init/weston@.service b/poky/meta/recipes-graphics/wayland/weston-init/weston@.service index 9ecf2ab06..39e193014 100644 --- a/poky/meta/recipes-graphics/wayland/weston-init/weston@.service +++ b/poky/meta/recipes-graphics/wayland/weston-init/weston@.service @@ -1,37 +1,15 @@ [Unit] -Description=Weston Wayland Compositor (on tty7) +Description=Weston Wayland Compositor RequiresMountsFor=/run -Conflicts=getty@tty7.service plymouth-quit.service -After=systemd-user-sessions.service getty@tty7.service plymouth-quit-wait.service +Conflicts=plymouth-quit.service +After=systemd-user-sessions.service plymouth-quit-wait.service [Service] User=%i -PermissionsStartOnly=true - -# Log us in via PAM so we get our XDG & co. environment and -# are treated as logged in so we can use the tty: PAMName=login - -# Grab tty7 -UtmpIdentifier=tty7 -TTYPath=/dev/tty7 -TTYReset=yes -TTYVHangup=yes -TTYVTDisallocate=yes - -# stderr to journal so our logging doesn't get thrown into /dev/null -StandardOutput=tty -StandardInput=tty -StandardError=journal - EnvironmentFile=-/etc/default/weston - -# Weston does not successfully change VT, nor does systemd place us on -# the VT it just activated for us. Switch manually: -ExecStartPre=/usr/bin/chvt 7 -ExecStart=/usr/bin/weston --log=${XDG_RUNTIME_DIR}/weston.log $OPTARGS - +StandardError=journal +PermissionsStartOnly=true IgnoreSIGPIPE=no -#[Install] -#Alias=multi-user.target.wants/weston.service +ExecStart=/usr/bin/weston-start -v -e -- $OPTARGS diff --git a/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch index e50845b17..62b864c13 100644 --- a/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch +++ b/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch @@ -1,4 +1,4 @@ -From 682b7d79a7b81ec8e38760381104b24ad549e8c0 Mon Sep 17 00:00:00 2001 +From 5f2d71998eb77068cbaee2d468cbb296a42d5739 Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Wed, 22 Feb 2017 15:53:30 +0200 Subject: [PATCH] weston-launch: Provide a default version that doesn't require @@ -16,6 +16,7 @@ Signed-off-by: Tom Hochstein Signed-off-by: Jussi Kukkonen Signed-off-by: Denys Dmytriyenko Signed-off-by: Ming Liu + --- libweston/meson.build | 16 ++++++++++++---- libweston/weston-launch.c | 21 +++++++++++++++++++++ @@ -23,10 +24,10 @@ Signed-off-by: Ming Liu 3 files changed, 40 insertions(+), 4 deletions(-) diff --git a/libweston/meson.build b/libweston/meson.build -index d8d3fc0..326683f 100644 +index 08d23ec..cb9fd3f 100644 --- a/libweston/meson.build +++ b/libweston/meson.build -@@ -199,16 +199,24 @@ dep_vertex_clipping = declare_dependency( +@@ -216,16 +216,24 @@ dep_vertex_clipping = declare_dependency( ) if get_option('weston-launch') @@ -52,11 +53,11 @@ index d8d3fc0..326683f 100644 'weston-launch.c', - dependencies: [dep_pam, systemd_dep, dep_libdrm], + dependencies: deps_weston_launch, - include_directories: include_directories('..'), + include_directories: common_inc, install: true ) diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c -index 4962bd6..fc531c5 100644 +index 8a711b4..54c567a 100644 --- a/libweston/weston-launch.c +++ b/libweston/weston-launch.c @@ -51,7 +51,9 @@ @@ -112,7 +113,7 @@ index 4962bd6..fc531c5 100644 if (ioctl(wl->tty, KDSKBMUTE, 0) && ioctl(wl->tty, KDSKBMODE, wl->kb_mode)) -@@ -660,6 +668,7 @@ setup_session(struct weston_launch *wl, char **child_argv) +@@ -666,6 +674,7 @@ setup_session(struct weston_launch *wl, char **child_argv) setenv("HOME", wl->pw->pw_dir, 1); setenv("SHELL", wl->pw->pw_shell, 1); @@ -120,7 +121,7 @@ index 4962bd6..fc531c5 100644 env = pam_getenvlist(wl->ph); if (env) { for (i = 0; env[i]; ++i) { -@@ -668,6 +677,7 @@ setup_session(struct weston_launch *wl, char **child_argv) +@@ -674,6 +683,7 @@ setup_session(struct weston_launch *wl, char **child_argv) } free(env); } @@ -128,7 +129,7 @@ index 4962bd6..fc531c5 100644 /* * We open a new session, so it makes sense -@@ -739,8 +749,10 @@ static void +@@ -745,8 +755,10 @@ static void help(const char *name) { fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name); @@ -139,7 +140,7 @@ index 4962bd6..fc531c5 100644 fprintf(stderr, " -t, --tty Start session on alternative tty,\n" " e.g. -t /dev/tty4, requires -u option.\n"); fprintf(stderr, " -v, --verbose Be verbose\n"); -@@ -754,7 +766,9 @@ main(int argc, char *argv[]) +@@ -760,7 +772,9 @@ main(int argc, char *argv[]) int i, c; char *tty = NULL; struct option opts[] = { @@ -149,7 +150,7 @@ index 4962bd6..fc531c5 100644 { "tty", required_argument, NULL, 't' }, { "verbose", no_argument, NULL, 'v' }, { "help", no_argument, NULL, 'h' }, -@@ -766,11 +780,16 @@ main(int argc, char *argv[]) +@@ -772,11 +786,16 @@ main(int argc, char *argv[]) while ((c = getopt_long(argc, argv, "u:t:vh", opts, &i)) != -1) { switch (c) { case 'u': @@ -166,7 +167,7 @@ index 4962bd6..fc531c5 100644 break; case 't': tty = optarg; -@@ -822,8 +841,10 @@ main(int argc, char *argv[]) +@@ -828,8 +847,10 @@ main(int argc, char *argv[]) if (setup_tty(&wl, tty) < 0) exit(EXIT_FAILURE); @@ -178,7 +179,7 @@ index 4962bd6..fc531c5 100644 if (setup_launcher_socket(&wl) < 0) exit(EXIT_FAILURE); diff --git a/meson_options.txt b/meson_options.txt -index d5bf1d5..254eb2b 100644 +index c862ecc..73ef2c3 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -73,6 +73,13 @@ option( @@ -195,6 +196,3 @@ index d5bf1d5..254eb2b 100644 'xwayland', type: 'boolean', value: true, --- -2.7.4 - diff --git a/poky/meta/recipes-graphics/wayland/weston_7.0.0.bb b/poky/meta/recipes-graphics/wayland/weston_7.0.0.bb deleted file mode 100644 index e6548d354..000000000 --- a/poky/meta/recipes-graphics/wayland/weston_7.0.0.bb +++ /dev/null @@ -1,111 +0,0 @@ -SUMMARY = "Weston, a Wayland compositor" -DESCRIPTION = "Weston is the reference implementation of a Wayland compositor" -HOMEPAGE = "http://wayland.freedesktop.org" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \ - file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a" - -SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ - file://weston.png \ - file://weston.desktop \ - file://xwayland.weston-start \ - file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ -" -SRC_URI[md5sum] = "cbfda483bc2501d0831af3f33c707850" -SRC_URI[sha256sum] = "a00a6d207b6a45f95f4401c604772a307c3767e5e2beecf3d879110c43909a64" - -UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" - -inherit meson pkgconfig useradd features_check -# depends on virtual/egl -REQUIRED_DISTRO_FEATURES = "opengl" - -DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg" -DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" - -WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" - -EXTRA_OEMESON += "-Dbackend-default=auto -Dbackend-rdp=false -Dpipewire=false" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \ - ${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \ - clients launch" -# -# Compositor choices -# -# Weston on KMS -PACKAGECONFIG[kms] = "-Dbackend-drm=true,-Dbackend-drm=false,drm udev virtual/egl virtual/libgles2 virtual/libgbm mtdev" -# Weston on Wayland (nested Weston) -PACKAGECONFIG[wayland] = "-Dbackend-wayland=true,-Dbackend-wayland=false,virtual/egl virtual/libgles2" -# Weston on X11 -PACKAGECONFIG[x11] = "-Dbackend-x11=true,-Dbackend-x11=false,virtual/libx11 libxcb libxcb libxcursor cairo" -# Headless Weston -PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false" -# Weston on framebuffer -PACKAGECONFIG[fbdev] = "-Dbackend-fbdev=true,-Dbackend-fbdev=false,udev mtdev" -# weston-launch -PACKAGECONFIG[launch] = "-Dweston-launch=true,-Dweston-launch=false,drm" -# VA-API desktop recorder -PACKAGECONFIG[vaapi] = "-Dbackend-drm-screencast-vaapi=true,-Dbackend-drm-screencast-vaapi=false,libva" -# Weston with EGL support -PACKAGECONFIG[egl] = "-Drenderer-gl=true,-Drenderer-gl=false,virtual/egl" -# Weston with lcms support -PACKAGECONFIG[lcms] = "-Dcolor-management-lcms=true,-Dcolor-management-lcms=false,lcms" -# Weston with webp support -PACKAGECONFIG[webp] = "-Dimage-webp=true,-Dimage-webp=false,libwebp" -# Weston with systemd-login support -PACKAGECONFIG[systemd] = "-Dsystemd=true -Dlauncher-logind=true,-Dsystemd=false -Dlauncher-logind=false,systemd dbus" -# Weston with Xwayland support (requires X11 and Wayland) -PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false" -# colord CMS support -PACKAGECONFIG[colord] = "-Dcolor-management-colord=true,-Dcolor-management-colord=false,colord" -# Clients support -PACKAGECONFIG[clients] = "-Dsimple-clients=all -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false" -# Virtual remote output with GStreamer on DRM backend -PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer-1.0" -# Weston with PAM support -PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam" - -do_install_append() { - # Weston doesn't need the .la files to load modules, so wipe them - rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la - - # If X11, ship a desktop file to launch it - if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then - install -d ${D}${datadir}/applications - install ${WORKDIR}/weston.desktop ${D}${datadir}/applications - - install -d ${D}${datadir}/icons/hicolor/48x48/apps - install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps - fi - - if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then - install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland - fi - - if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then - chmod u+s ${D}${bindir}/weston-launch - fi -} - -PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ - libweston-${WESTON_MAJOR_VERSION} ${PN}-examples" - -FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so ${datadir}" - -FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so" -SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'." - -FILES_${PN}-examples = "${bindir}/*" - -FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so" -RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" - -RDEPENDS_${PN} += "xkeyboard-config" -RRECOMMENDS_${PN} = "weston-init liberation-fonts" -RRECOMMENDS_${PN}-dev += "wayland-protocols" - -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "--system weston-launch" diff --git a/poky/meta/recipes-graphics/wayland/weston_8.0.0.bb b/poky/meta/recipes-graphics/wayland/weston_8.0.0.bb new file mode 100644 index 000000000..f8e9e15f8 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/weston_8.0.0.bb @@ -0,0 +1,112 @@ +SUMMARY = "Weston, a Wayland compositor" +DESCRIPTION = "Weston is the reference implementation of a Wayland compositor" +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \ + file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a" + +SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ + file://weston.png \ + file://weston.desktop \ + file://xwayland.weston-start \ + file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ +" +SRC_URI[md5sum] = "53e4810d852df0601d01fd986a5b22b3" +SRC_URI[sha256sum] = "7518b49b2eaa1c3091f24671bdcc124fd49fc8f1af51161927afa4329c027848" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit meson pkgconfig useradd features_check +# depends on virtual/egl +REQUIRED_DISTRO_FEATURES = "opengl" + +DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg" +DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" + +WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" + +EXTRA_OEMESON += "-Dbackend-default=auto -Dbackend-rdp=false -Dpipewire=false" + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl clients', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \ + ${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \ + launch" +# +# Compositor choices +# +# Weston on KMS +PACKAGECONFIG[kms] = "-Dbackend-drm=true,-Dbackend-drm=false,drm udev virtual/egl virtual/libgles2 virtual/libgbm mtdev" +# Weston on Wayland (nested Weston) +PACKAGECONFIG[wayland] = "-Dbackend-wayland=true,-Dbackend-wayland=false,virtual/egl virtual/libgles2" +# Weston on X11 +PACKAGECONFIG[x11] = "-Dbackend-x11=true,-Dbackend-x11=false,virtual/libx11 libxcb libxcb libxcursor cairo" +# Headless Weston +PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false" +# Weston on framebuffer +PACKAGECONFIG[fbdev] = "-Dbackend-fbdev=true,-Dbackend-fbdev=false,udev mtdev" +# weston-launch +PACKAGECONFIG[launch] = "-Dweston-launch=true,-Dweston-launch=false,drm" +# VA-API desktop recorder +PACKAGECONFIG[vaapi] = "-Dbackend-drm-screencast-vaapi=true,-Dbackend-drm-screencast-vaapi=false,libva" +# Weston with EGL support +PACKAGECONFIG[egl] = "-Drenderer-gl=true,-Drenderer-gl=false,virtual/egl" +# Weston with lcms support +PACKAGECONFIG[lcms] = "-Dcolor-management-lcms=true,-Dcolor-management-lcms=false,lcms" +# Weston with webp support +PACKAGECONFIG[webp] = "-Dimage-webp=true,-Dimage-webp=false,libwebp" +# Weston with systemd-login support +PACKAGECONFIG[systemd] = "-Dsystemd=true -Dlauncher-logind=true,-Dsystemd=false -Dlauncher-logind=false,systemd dbus" +# Weston with Xwayland support (requires X11 and Wayland) +PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false" +# colord CMS support +PACKAGECONFIG[colord] = "-Dcolor-management-colord=true,-Dcolor-management-colord=false,colord" +# Clients support +PACKAGECONFIG[clients] = "-Dsimple-clients=all -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false" +# Virtual remote output with GStreamer on DRM backend +PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer-1.0" +# Weston with PAM support +PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam" + +do_install_append() { + # Weston doesn't need the .la files to load modules, so wipe them + rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la + + # If X11, ship a desktop file to launch it + if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then + install -d ${D}${datadir}/applications + install ${WORKDIR}/weston.desktop ${D}${datadir}/applications + + install -d ${D}${datadir}/icons/hicolor/48x48/apps + install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps + fi + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then + install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland + fi + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then + chmod u+s ${D}${bindir}/weston-launch + fi +} + +PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ + libweston-${WESTON_MAJOR_VERSION} ${PN}-examples" + +FILES_${PN}-dev += "${libdir}/${BPN}/libexec_weston.so" +FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so* ${datadir}" + +FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so" +SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'." + +FILES_${PN}-examples = "${bindir}/*" + +FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so" +RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" + +RDEPENDS_${PN} += "xkeyboard-config" +RRECOMMENDS_${PN} = "weston-init liberation-fonts" +RRECOMMENDS_${PN}-dev += "wayland-protocols" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "--system weston-launch" diff --git a/poky/meta/recipes-graphics/x11-common/xserver-nodm-init/capability.conf b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init/capability.conf new file mode 100644 index 000000000..7ab746081 --- /dev/null +++ b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init/capability.conf @@ -0,0 +1,2 @@ +cap_sys_admin @USER@ +none * diff --git a/poky/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm index 6c548551b..116bb278b 100755 --- a/poky/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm +++ b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm @@ -38,6 +38,14 @@ case "$1" in if [ -e /dev/hidraw0 ]; then chmod o+rw /dev/hidraw* fi + # Make sure that the Xorg has the cap_sys_admin capability which is + # needed for setting the drm master + if ! grep -q "^auth.*pam_cap\.so" /etc/pam.d/su; then + echo "auth optional pam_cap.so" >>/etc/pam.d/su + fi + if ! /usr/sbin/getcap $XSERVER | grep -q cap_sys_admin; then + /usr/sbin/setcap cap_sys_admin+eip $XSERVER + fi fi # Using su rather than sudo as latest 1.8.1 cause failure [YOCTO #1211] diff --git a/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb index 385fea5e8..c2995f99f 100644 --- a/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb +++ b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb @@ -10,6 +10,7 @@ SRC_URI = "file://xserver-nodm \ file://gplv2-license.patch \ file://xserver-nodm.service.in \ file://xserver-nodm.conf.in \ + file://capability.conf \ " S = "${WORKDIR}" @@ -19,7 +20,7 @@ PACKAGE_ARCH = "${MACHINE_ARCH}" inherit update-rc.d systemd features_check -REQUIRED_DISTRO_FEATURES = "x11" +REQUIRED_DISTRO_FEATURES = "x11 ${@oe.utils.conditional('ROOTLESS_X', '1', 'pam', '', d)}" PACKAGECONFIG ??= "blank" # dpms and screen saver will be on only if 'blank' is in PACKAGECONFIG @@ -40,6 +41,8 @@ do_install() { if [ "${ROOTLESS_X}" = "1" ] ; then XUSER_HOME="/home/xuser" XUSER="xuser" + install -D capability.conf ${D}${sysconfdir}/security/capability.conf + sed -i "s:@USER@:${XUSER}:" ${D}${sysconfdir}/security/capability.conf else XUSER_HOME=${ROOT_HOME} XUSER="root" @@ -60,7 +63,7 @@ do_install() { fi } -RDEPENDS_${PN} = "xinit ${@oe.utils.conditional('ROOTLESS_X', '1', 'xuser-account', '', d)}" +RDEPENDS_${PN} = "xinit ${@oe.utils.conditional('ROOTLESS_X', '1', 'xuser-account libcap libcap-bin', '', d)}" INITSCRIPT_NAME = "xserver-nodm" INITSCRIPT_PARAMS = "start 9 5 . stop 20 0 1 2 3 6 ." diff --git a/poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb b/poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb deleted file mode 100644 index a453e2487..000000000 --- a/poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb +++ /dev/null @@ -1,22 +0,0 @@ -require xorg-app-common.inc - -SUMMARY = "A program to create an index of X font files in a directory" - -DESCRIPTION = "For each directory argument, mkfontdir reads all of the \ -font files in the directory. The font names and related data are written \ -out to the files \"fonts.dir\", \"fonts.scale\", and \"fonts.alias\". \ -The X server and font server use these files to find the available font \ -files." - -PE = "1" -PR = "${INC_PR}.0" - -RDEPENDS_${PN} += "mkfontscale" -RDEPENDS_${PN}_class-native += "mkfontscale-native" - -BBCLASSEXTEND = "native" - -LIC_FILES_CHKSUM = "file://COPYING;md5=b4fcf2b90cadbfc15009b9e124dc3a3f" - -SRC_URI[md5sum] = "18c429148c96c2079edda922a2b67632" -SRC_URI[sha256sum] = "56d52a482df130484e51fd066d1b6eda7c2c02ddbc91fe6e2be1b9c4e7306530" diff --git a/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.3.bb b/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.3.bb deleted file mode 100644 index 2a6bec164..000000000 --- a/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.3.bb +++ /dev/null @@ -1,18 +0,0 @@ -require xorg-app-common.inc - -SUMMARY = "A program to create an index of scalable font files for X" - -DESCRIPTION = "For each directory argument, mkfontscale reads all of the \ -scalable font files in the directory. For every font file found, an X11 \ -font name (XLFD) is generated, and is written together with the file \ -name to a file fonts.scale in the directory. The resulting fonts.scale \ -is used by the mkfontdir program." - -DEPENDS = "util-macros-native zlib libfontenc freetype xorgproto" - -BBCLASSEXTEND = "native" - -LIC_FILES_CHKSUM = "file://COPYING;md5=2e0d129d05305176d1a790e0ac1acb7f" - -SRC_URI[md5sum] = "987c438e79f5ddb84a9c5726a1610819" -SRC_URI[sha256sum] = "1e98df69ee5f4542d711e140e1d93e2c3f2775407ccbb7849110d52b91782a6a" diff --git a/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb b/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb new file mode 100644 index 000000000..a767ee847 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb @@ -0,0 +1,21 @@ +require xorg-app-common.inc + +SUMMARY = "A program to create an index of scalable font files for X" + +DESCRIPTION = "For each directory argument, mkfontscale reads all of the \ +scalable font files in the directory. For every font file found, an X11 \ +font name (XLFD) is generated, and is written together with the file \ +name to a file fonts.scale in the directory. The resulting fonts.scale \ +is used by the mkfontdir program." + +DEPENDS = "util-macros-native zlib libfontenc freetype xorgproto" + +PROVIDES += "mkfontdir" +RPROVIDES_${PN} += "mkfontdir" + +BBCLASSEXTEND = "native" + +LIC_FILES_CHKSUM = "file://COPYING;md5=99b1e1269aba5179139b9e4380fc0934" + +SRC_URI[md5sum] = "215940de158b1a3d8b3f8b442c606e2f" +SRC_URI[sha256sum] = "ca0495eb974a179dd742bfa6199d561bda1c8da4a0c5a667f21fd82aaab6bac7" diff --git a/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb b/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb index 33c0c8a95..c4d443bfb 100644 --- a/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb +++ b/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb @@ -13,6 +13,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=428ca4d67a41fcd4fc3283dce9bbda7e \ PE = "1" +inherit multilib_script + +MULTILIB_SCRIPTS = "${PN}:${bindir}/x11perfcomp" + do_install_append_class-target () { sed -i -e 's:${HOSTTOOLS_DIR}/::g' ${D}${bindir}/x11perfcomp } diff --git a/poky/meta/recipes-graphics/xorg-app/xinit/0001-Make-manpage-multilib-identical.patch b/poky/meta/recipes-graphics/xorg-app/xinit/0001-Make-manpage-multilib-identical.patch new file mode 100644 index 000000000..649905574 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-app/xinit/0001-Make-manpage-multilib-identical.patch @@ -0,0 +1,28 @@ +From d642e60d8963f1b90569cd0ab5c29ac2c9bfe939 Mon Sep 17 00:00:00 2001 +From: Jeremy Puhlman +Date: Fri, 6 Mar 2020 22:28:14 +0000 +Subject: [PATCH] Make manpage multilib identical + +Upstream-Status: Submitted + +Signed-off-by: Jeremy Puhlman +--- + man/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/man/Makefile.am b/man/Makefile.am +index 9c6569f..608e933 100644 +--- a/man/Makefile.am ++++ b/man/Makefile.am +@@ -12,7 +12,7 @@ MAN_SUBSTS+= -e 's|__XSERVERNAME__|$(XSERVERNAME)|g' \ + -e 's|__XCONFIGFILEMAN__|$(XCONFIGFILEMAN)|g' \ + -e 's|__xinitdir__|$(XINITDIR)|g' \ + -e 's|__bindir__|$(bindir)|g' \ +- -e 's|__libdir__|$(libdir)|g' \ ++ -e 's|__libdir__|$(prefix)/lib*|g' \ + -e 's|__configdir__|$(XINITDIR)|g' + + +-- +2.23.0 + diff --git a/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb b/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb index 5626ebbd5..c9e28d9bb 100644 --- a/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb +++ b/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb @@ -12,6 +12,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=18f01e7b39807bebe2b8df101a039b68" PE = "1" +SRC_URI += "file://0001-Make-manpage-multilib-identical.patch" + SRC_URI[md5sum] = "6d506ab2efc17a08e87778654e099d37" SRC_URI[sha256sum] = "de9b8f617b68a70f6caf87da01fcf0ebd2b75690cdcba9c921d0ef54fa54abb9" diff --git a/poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.2.bb b/poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.2.bb deleted file mode 100644 index eaf8eaaf7..000000000 --- a/poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.2.bb +++ /dev/null @@ -1,17 +0,0 @@ -require xorg-app-common.inc - -SUMMARY = "A program to compile XKB keyboard description" - -DESCRIPTION = "The xkbcomp keymap compiler converts a description of an \ -XKB keymap into one of several output formats. The most common use for \ -xkbcomp is to create a compiled keymap file (.xkm extension) which can \ -be read directly by XKB-capable X servers or utilities." - -LIC_FILES_CHKSUM = "file://COPYING;md5=08436e4f4476964e2e2dd7e7e41e076a" - -DEPENDS += "libxkbfile" - -BBCLASSEXTEND = "native" - -SRC_URI[md5sum] = "12610df19df2af3797f2c130ee2bce97" -SRC_URI[sha256sum] = "6dd8bcb9be7e85bd7294abe261b8c7b0539d2fc93e41b80fb8bd013767ce8424" diff --git a/poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.3.bb b/poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.3.bb new file mode 100644 index 000000000..2fa79c843 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-app/xkbcomp_1.4.3.bb @@ -0,0 +1,19 @@ +require xorg-app-common.inc + +SUMMARY = "A program to compile XKB keyboard description" + +DESCRIPTION = "The xkbcomp keymap compiler converts a description of an \ +XKB keymap into one of several output formats. The most common use for \ +xkbcomp is to create a compiled keymap file (.xkm extension) which can \ +be read directly by XKB-capable X servers or utilities." + +LIC_FILES_CHKSUM = "file://COPYING;md5=08436e4f4476964e2e2dd7e7e41e076a" + +DEPENDS += "libxkbfile" + +BBCLASSEXTEND = "native" + +EXTRA_OECONF += "--disable-selective-werror" + +SRC_URI[md5sum] = "6e4751d99373f85d459ab4dff28893f5" +SRC_URI[sha256sum] = "06242c169fc11caf601cac46d781d467748c6a330e15b36dce46520b8ac8d435" diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/64bit_time_t_support.patch b/poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/64bit_time_t_support.patch new file mode 100644 index 000000000..4bb7fb3e2 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/64bit_time_t_support.patch @@ -0,0 +1,51 @@ +This patch avoids using time field of input_event structure which is not available +on 32bit arches supporting 64bit time_t structs, Patch makes it compatible with new +and keeps old input.h implementation functional as well. + +See https://sourceware.org/glibc/wiki/Y2038ProofnessDesign + +Upstream-Status: Pending +Signed-off-by: Khem Raj + +--- a/src/eventcomm.c ++++ b/src/eventcomm.c +@@ -575,10 +575,12 @@ SynapticsReadEvent(InputInfoPtr pInfo, s + ev->type = EV_SYN; + ev->code = SYN_REPORT; + ev->value = 0; +- ev->time = last_event_time; +- } else if (ev->type == EV_SYN) +- last_event_time = ev->time; +- ++ ev->input_event_sec = last_event_time.tv_sec; ++ ev->input_event_usec = last_event_time.tv_usec; ++ } else if (ev->type == EV_SYN) { ++ last_event_time.tv_sec = ev->input_event_sec; ++ last_event_time.tv_usec = ev->input_event_usec; ++ } + return TRUE; + } + +@@ -725,7 +727,7 @@ EventReadHwState(InputInfoPtr pInfo, + case SYN_REPORT: + hw->numFingers = count_fingers(pInfo, comm); + if (proto_data->have_monotonic_clock) +- hw->millis = 1000 * ev.time.tv_sec + ev.time.tv_usec / 1000; ++ hw->millis = 1000 * ev.input_event_sec + ev.input_event_usec / 1000; + else + hw->millis = GetTimeInMillis(); + SynapticsCopyHwState(hwRet, hw); +--- a/src/eventcomm.h ++++ b/src/eventcomm.h +@@ -34,6 +34,11 @@ + #include + #include "synproto.h" + ++#ifndef input_event_sec ++#define input_event_sec time.tv_sec ++#define input_event_usec time.tv_usec ++#endif ++ + /* for auto-dev: */ + #define DEV_INPUT_EVENT "/dev/input" + #define EVENT_DEV_NAME "event" diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.1.bb b/poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.1.bb index dc31890f6..388350c96 100644 --- a/poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.1.bb +++ b/poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.1.bb @@ -10,6 +10,8 @@ advanced features of the touchpad to become available." LIC_FILES_CHKSUM = "file://COPYING;md5=55aacd3535a741824955c5eb8f061398" +SRC_URI += "file://64bit_time_t_support.patch" + SRC_URI[md5sum] = "cfb79d3c975151f9bbf30b727c260cb9" SRC_URI[sha256sum] = "7af83526eff1c76e8b9e1553b34245c203d029028d8044dd9dcf71eef1001576" diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/0001-Sync-i915_pciids-upto-8717c6b7414f.patch b/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/0001-Sync-i915_pciids-upto-8717c6b7414f.patch new file mode 100644 index 000000000..ef3b1afb1 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/0001-Sync-i915_pciids-upto-8717c6b7414f.patch @@ -0,0 +1,505 @@ +From 05909fea93f29b2b6e1d554dd64201551bd7a022 Mon Sep 17 00:00:00 2001 +From: Liwei Song +Date: Fri, 17 Apr 2020 16:11:59 +0800 +Subject: [PATCH] Sync i915_pciids upto 8717c6b7414f + +Import the kernel's i915_pciids.h, up to: + +commit 8717c6b7414ffb890672276dccc284c23078ac0e +Author: Lee Shawn C +Date: Tue Dec 10 23:04:15 2019 +0800 + + drm/i915/cml: Separate U series pci id from origianl list. + +Upstream-Status: Submitted [https://patchwork.kernel.org/patch/11494645/] + +Signed-off-by: Liwei Song +--- + src/i915_pciids.h | 265 ++++++++++++++++++++++++++++++++++----------- + src/intel_module.c | 2 +- + test/dri3-test.c | 2 +- + 3 files changed, 206 insertions(+), 63 deletions(-) + +diff --git a/src/i915_pciids.h b/src/i915_pciids.h +index fd965ffbb92e..1d2c12219f44 100644 +--- a/src/i915_pciids.h ++++ b/src/i915_pciids.h +@@ -108,8 +108,10 @@ + INTEL_VGA_DEVICE(0x2e42, info), /* B43_G */ \ + INTEL_VGA_DEVICE(0x2e92, info) /* B43_G.1 */ + +-#define INTEL_PINEVIEW_IDS(info) \ +- INTEL_VGA_DEVICE(0xa001, info), \ ++#define INTEL_PINEVIEW_G_IDS(info) \ ++ INTEL_VGA_DEVICE(0xa001, info) ++ ++#define INTEL_PINEVIEW_M_IDS(info) \ + INTEL_VGA_DEVICE(0xa011, info) + + #define INTEL_IRONLAKE_D_IDS(info) \ +@@ -166,7 +168,18 @@ + #define INTEL_IVB_Q_IDS(info) \ + INTEL_QUANTA_VGA_DEVICE(info) /* Quanta transcode */ + ++#define INTEL_HSW_ULT_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x0A02, info), /* ULT GT1 desktop */ \ ++ INTEL_VGA_DEVICE(0x0A0A, info), /* ULT GT1 server */ \ ++ INTEL_VGA_DEVICE(0x0A0B, info), /* ULT GT1 reserved */ \ ++ INTEL_VGA_DEVICE(0x0A06, info) /* ULT GT1 mobile */ ++ ++#define INTEL_HSW_ULX_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x0A0E, info) /* ULX GT1 mobile */ ++ + #define INTEL_HSW_GT1_IDS(info) \ ++ INTEL_HSW_ULT_GT1_IDS(info), \ ++ INTEL_HSW_ULX_GT1_IDS(info), \ + INTEL_VGA_DEVICE(0x0402, info), /* GT1 desktop */ \ + INTEL_VGA_DEVICE(0x040a, info), /* GT1 server */ \ + INTEL_VGA_DEVICE(0x040B, info), /* GT1 reserved */ \ +@@ -175,20 +188,26 @@ + INTEL_VGA_DEVICE(0x0C0A, info), /* SDV GT1 server */ \ + INTEL_VGA_DEVICE(0x0C0B, info), /* SDV GT1 reserved */ \ + INTEL_VGA_DEVICE(0x0C0E, info), /* SDV GT1 reserved */ \ +- INTEL_VGA_DEVICE(0x0A02, info), /* ULT GT1 desktop */ \ +- INTEL_VGA_DEVICE(0x0A0A, info), /* ULT GT1 server */ \ +- INTEL_VGA_DEVICE(0x0A0B, info), /* ULT GT1 reserved */ \ + INTEL_VGA_DEVICE(0x0D02, info), /* CRW GT1 desktop */ \ + INTEL_VGA_DEVICE(0x0D0A, info), /* CRW GT1 server */ \ + INTEL_VGA_DEVICE(0x0D0B, info), /* CRW GT1 reserved */ \ + INTEL_VGA_DEVICE(0x0D0E, info), /* CRW GT1 reserved */ \ + INTEL_VGA_DEVICE(0x0406, info), /* GT1 mobile */ \ + INTEL_VGA_DEVICE(0x0C06, info), /* SDV GT1 mobile */ \ +- INTEL_VGA_DEVICE(0x0A06, info), /* ULT GT1 mobile */ \ +- INTEL_VGA_DEVICE(0x0A0E, info), /* ULX GT1 mobile */ \ + INTEL_VGA_DEVICE(0x0D06, info) /* CRW GT1 mobile */ + ++#define INTEL_HSW_ULT_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x0A12, info), /* ULT GT2 desktop */ \ ++ INTEL_VGA_DEVICE(0x0A1A, info), /* ULT GT2 server */ \ ++ INTEL_VGA_DEVICE(0x0A1B, info), /* ULT GT2 reserved */ \ ++ INTEL_VGA_DEVICE(0x0A16, info) /* ULT GT2 mobile */ ++ ++#define INTEL_HSW_ULX_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x0A1E, info) /* ULX GT2 mobile */ \ ++ + #define INTEL_HSW_GT2_IDS(info) \ ++ INTEL_HSW_ULT_GT2_IDS(info), \ ++ INTEL_HSW_ULX_GT2_IDS(info), \ + INTEL_VGA_DEVICE(0x0412, info), /* GT2 desktop */ \ + INTEL_VGA_DEVICE(0x041a, info), /* GT2 server */ \ + INTEL_VGA_DEVICE(0x041B, info), /* GT2 reserved */ \ +@@ -197,9 +216,6 @@ + INTEL_VGA_DEVICE(0x0C1A, info), /* SDV GT2 server */ \ + INTEL_VGA_DEVICE(0x0C1B, info), /* SDV GT2 reserved */ \ + INTEL_VGA_DEVICE(0x0C1E, info), /* SDV GT2 reserved */ \ +- INTEL_VGA_DEVICE(0x0A12, info), /* ULT GT2 desktop */ \ +- INTEL_VGA_DEVICE(0x0A1A, info), /* ULT GT2 server */ \ +- INTEL_VGA_DEVICE(0x0A1B, info), /* ULT GT2 reserved */ \ + INTEL_VGA_DEVICE(0x0D12, info), /* CRW GT2 desktop */ \ + INTEL_VGA_DEVICE(0x0D1A, info), /* CRW GT2 server */ \ + INTEL_VGA_DEVICE(0x0D1B, info), /* CRW GT2 reserved */ \ +@@ -207,11 +223,17 @@ + INTEL_VGA_DEVICE(0x0416, info), /* GT2 mobile */ \ + INTEL_VGA_DEVICE(0x0426, info), /* GT2 mobile */ \ + INTEL_VGA_DEVICE(0x0C16, info), /* SDV GT2 mobile */ \ +- INTEL_VGA_DEVICE(0x0A16, info), /* ULT GT2 mobile */ \ +- INTEL_VGA_DEVICE(0x0A1E, info), /* ULX GT2 mobile */ \ + INTEL_VGA_DEVICE(0x0D16, info) /* CRW GT2 mobile */ + ++#define INTEL_HSW_ULT_GT3_IDS(info) \ ++ INTEL_VGA_DEVICE(0x0A22, info), /* ULT GT3 desktop */ \ ++ INTEL_VGA_DEVICE(0x0A2A, info), /* ULT GT3 server */ \ ++ INTEL_VGA_DEVICE(0x0A2B, info), /* ULT GT3 reserved */ \ ++ INTEL_VGA_DEVICE(0x0A26, info), /* ULT GT3 mobile */ \ ++ INTEL_VGA_DEVICE(0x0A2E, info) /* ULT GT3 reserved */ ++ + #define INTEL_HSW_GT3_IDS(info) \ ++ INTEL_HSW_ULT_GT3_IDS(info), \ + INTEL_VGA_DEVICE(0x0422, info), /* GT3 desktop */ \ + INTEL_VGA_DEVICE(0x042a, info), /* GT3 server */ \ + INTEL_VGA_DEVICE(0x042B, info), /* GT3 reserved */ \ +@@ -220,16 +242,11 @@ + INTEL_VGA_DEVICE(0x0C2A, info), /* SDV GT3 server */ \ + INTEL_VGA_DEVICE(0x0C2B, info), /* SDV GT3 reserved */ \ + INTEL_VGA_DEVICE(0x0C2E, info), /* SDV GT3 reserved */ \ +- INTEL_VGA_DEVICE(0x0A22, info), /* ULT GT3 desktop */ \ +- INTEL_VGA_DEVICE(0x0A2A, info), /* ULT GT3 server */ \ +- INTEL_VGA_DEVICE(0x0A2B, info), /* ULT GT3 reserved */ \ + INTEL_VGA_DEVICE(0x0D22, info), /* CRW GT3 desktop */ \ + INTEL_VGA_DEVICE(0x0D2A, info), /* CRW GT3 server */ \ + INTEL_VGA_DEVICE(0x0D2B, info), /* CRW GT3 reserved */ \ + INTEL_VGA_DEVICE(0x0D2E, info), /* CRW GT3 reserved */ \ + INTEL_VGA_DEVICE(0x0C26, info), /* SDV GT3 mobile */ \ +- INTEL_VGA_DEVICE(0x0A26, info), /* ULT GT3 mobile */ \ +- INTEL_VGA_DEVICE(0x0A2E, info), /* ULT GT3 reserved */ \ + INTEL_VGA_DEVICE(0x0D26, info) /* CRW GT3 mobile */ + + #define INTEL_HSW_IDS(info) \ +@@ -245,35 +262,59 @@ + INTEL_VGA_DEVICE(0x0157, info), \ + INTEL_VGA_DEVICE(0x0155, info) + +-#define INTEL_BDW_GT1_IDS(info) \ +- INTEL_VGA_DEVICE(0x1602, info), /* GT1 ULT */ \ ++#define INTEL_BDW_ULT_GT1_IDS(info) \ + INTEL_VGA_DEVICE(0x1606, info), /* GT1 ULT */ \ +- INTEL_VGA_DEVICE(0x160B, info), /* GT1 Iris */ \ +- INTEL_VGA_DEVICE(0x160E, info), /* GT1 ULX */ \ ++ INTEL_VGA_DEVICE(0x160B, info) /* GT1 Iris */ ++ ++#define INTEL_BDW_ULX_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x160E, info) /* GT1 ULX */ ++ ++#define INTEL_BDW_GT1_IDS(info) \ ++ INTEL_BDW_ULT_GT1_IDS(info), \ ++ INTEL_BDW_ULX_GT1_IDS(info), \ ++ INTEL_VGA_DEVICE(0x1602, info), /* GT1 ULT */ \ + INTEL_VGA_DEVICE(0x160A, info), /* GT1 Server */ \ + INTEL_VGA_DEVICE(0x160D, info) /* GT1 Workstation */ + +-#define INTEL_BDW_GT2_IDS(info) \ +- INTEL_VGA_DEVICE(0x1612, info), /* GT2 Halo */ \ ++#define INTEL_BDW_ULT_GT2_IDS(info) \ + INTEL_VGA_DEVICE(0x1616, info), /* GT2 ULT */ \ +- INTEL_VGA_DEVICE(0x161B, info), /* GT2 ULT */ \ +- INTEL_VGA_DEVICE(0x161E, info), /* GT2 ULX */ \ ++ INTEL_VGA_DEVICE(0x161B, info) /* GT2 ULT */ ++ ++#define INTEL_BDW_ULX_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x161E, info) /* GT2 ULX */ ++ ++#define INTEL_BDW_GT2_IDS(info) \ ++ INTEL_BDW_ULT_GT2_IDS(info), \ ++ INTEL_BDW_ULX_GT2_IDS(info), \ ++ INTEL_VGA_DEVICE(0x1612, info), /* GT2 Halo */ \ + INTEL_VGA_DEVICE(0x161A, info), /* GT2 Server */ \ + INTEL_VGA_DEVICE(0x161D, info) /* GT2 Workstation */ + ++#define INTEL_BDW_ULT_GT3_IDS(info) \ ++ INTEL_VGA_DEVICE(0x1626, info), /* ULT */ \ ++ INTEL_VGA_DEVICE(0x162B, info) /* Iris */ \ ++ ++#define INTEL_BDW_ULX_GT3_IDS(info) \ ++ INTEL_VGA_DEVICE(0x162E, info) /* ULX */ ++ + #define INTEL_BDW_GT3_IDS(info) \ ++ INTEL_BDW_ULT_GT3_IDS(info), \ ++ INTEL_BDW_ULX_GT3_IDS(info), \ + INTEL_VGA_DEVICE(0x1622, info), /* ULT */ \ +- INTEL_VGA_DEVICE(0x1626, info), /* ULT */ \ +- INTEL_VGA_DEVICE(0x162B, info), /* Iris */ \ +- INTEL_VGA_DEVICE(0x162E, info), /* ULX */\ + INTEL_VGA_DEVICE(0x162A, info), /* Server */ \ + INTEL_VGA_DEVICE(0x162D, info) /* Workstation */ + ++#define INTEL_BDW_ULT_RSVD_IDS(info) \ ++ INTEL_VGA_DEVICE(0x1636, info), /* ULT */ \ ++ INTEL_VGA_DEVICE(0x163B, info) /* Iris */ ++ ++#define INTEL_BDW_ULX_RSVD_IDS(info) \ ++ INTEL_VGA_DEVICE(0x163E, info) /* ULX */ ++ + #define INTEL_BDW_RSVD_IDS(info) \ ++ INTEL_BDW_ULT_RSVD_IDS(info), \ ++ INTEL_BDW_ULX_RSVD_IDS(info), \ + INTEL_VGA_DEVICE(0x1632, info), /* ULT */ \ +- INTEL_VGA_DEVICE(0x1636, info), /* ULT */ \ +- INTEL_VGA_DEVICE(0x163B, info), /* Iris */ \ +- INTEL_VGA_DEVICE(0x163E, info), /* ULX */ \ + INTEL_VGA_DEVICE(0x163A, info), /* Server */ \ + INTEL_VGA_DEVICE(0x163D, info) /* Workstation */ + +@@ -289,25 +330,40 @@ + INTEL_VGA_DEVICE(0x22b2, info), \ + INTEL_VGA_DEVICE(0x22b3, info) + ++#define INTEL_SKL_ULT_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x1906, info) /* ULT GT1 */ ++ ++#define INTEL_SKL_ULX_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x190E, info) /* ULX GT1 */ ++ + #define INTEL_SKL_GT1_IDS(info) \ +- INTEL_VGA_DEVICE(0x1906, info), /* ULT GT1 */ \ +- INTEL_VGA_DEVICE(0x190E, info), /* ULX GT1 */ \ ++ INTEL_SKL_ULT_GT1_IDS(info), \ ++ INTEL_SKL_ULX_GT1_IDS(info), \ + INTEL_VGA_DEVICE(0x1902, info), /* DT GT1 */ \ + INTEL_VGA_DEVICE(0x190B, info), /* Halo GT1 */ \ + INTEL_VGA_DEVICE(0x190A, info) /* SRV GT1 */ + +-#define INTEL_SKL_GT2_IDS(info) \ ++#define INTEL_SKL_ULT_GT2_IDS(info) \ + INTEL_VGA_DEVICE(0x1916, info), /* ULT GT2 */ \ +- INTEL_VGA_DEVICE(0x1921, info), /* ULT GT2F */ \ +- INTEL_VGA_DEVICE(0x191E, info), /* ULX GT2 */ \ ++ INTEL_VGA_DEVICE(0x1921, info) /* ULT GT2F */ ++ ++#define INTEL_SKL_ULX_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x191E, info) /* ULX GT2 */ ++ ++#define INTEL_SKL_GT2_IDS(info) \ ++ INTEL_SKL_ULT_GT2_IDS(info), \ ++ INTEL_SKL_ULX_GT2_IDS(info), \ + INTEL_VGA_DEVICE(0x1912, info), /* DT GT2 */ \ + INTEL_VGA_DEVICE(0x191B, info), /* Halo GT2 */ \ + INTEL_VGA_DEVICE(0x191A, info), /* SRV GT2 */ \ + INTEL_VGA_DEVICE(0x191D, info) /* WKS GT2 */ + ++#define INTEL_SKL_ULT_GT3_IDS(info) \ ++ INTEL_VGA_DEVICE(0x1926, info) /* ULT GT3 */ ++ + #define INTEL_SKL_GT3_IDS(info) \ ++ INTEL_SKL_ULT_GT3_IDS(info), \ + INTEL_VGA_DEVICE(0x1923, info), /* ULT GT3 */ \ +- INTEL_VGA_DEVICE(0x1926, info), /* ULT GT3 */ \ + INTEL_VGA_DEVICE(0x1927, info), /* ULT GT3 */ \ + INTEL_VGA_DEVICE(0x192B, info), /* Halo GT3 */ \ + INTEL_VGA_DEVICE(0x192D, info) /* SRV GT3 */ +@@ -336,45 +392,91 @@ + INTEL_VGA_DEVICE(0x3184, info), \ + INTEL_VGA_DEVICE(0x3185, info) + +-#define INTEL_KBL_GT1_IDS(info) \ +- INTEL_VGA_DEVICE(0x5913, info), /* ULT GT1.5 */ \ +- INTEL_VGA_DEVICE(0x5915, info), /* ULX GT1.5 */ \ ++#define INTEL_KBL_ULT_GT1_IDS(info) \ + INTEL_VGA_DEVICE(0x5906, info), /* ULT GT1 */ \ ++ INTEL_VGA_DEVICE(0x5913, info) /* ULT GT1.5 */ ++ ++#define INTEL_KBL_ULX_GT1_IDS(info) \ + INTEL_VGA_DEVICE(0x590E, info), /* ULX GT1 */ \ ++ INTEL_VGA_DEVICE(0x5915, info) /* ULX GT1.5 */ ++ ++#define INTEL_KBL_GT1_IDS(info) \ ++ INTEL_KBL_ULT_GT1_IDS(info), \ ++ INTEL_KBL_ULX_GT1_IDS(info), \ + INTEL_VGA_DEVICE(0x5902, info), /* DT GT1 */ \ + INTEL_VGA_DEVICE(0x5908, info), /* Halo GT1 */ \ + INTEL_VGA_DEVICE(0x590B, info), /* Halo GT1 */ \ + INTEL_VGA_DEVICE(0x590A, info) /* SRV GT1 */ + +-#define INTEL_KBL_GT2_IDS(info) \ ++#define INTEL_KBL_ULT_GT2_IDS(info) \ + INTEL_VGA_DEVICE(0x5916, info), /* ULT GT2 */ \ ++ INTEL_VGA_DEVICE(0x5921, info) /* ULT GT2F */ ++ ++#define INTEL_KBL_ULX_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x591E, info) /* ULX GT2 */ ++ ++#define INTEL_KBL_GT2_IDS(info) \ ++ INTEL_KBL_ULT_GT2_IDS(info), \ ++ INTEL_KBL_ULX_GT2_IDS(info), \ + INTEL_VGA_DEVICE(0x5917, info), /* Mobile GT2 */ \ +- INTEL_VGA_DEVICE(0x5921, info), /* ULT GT2F */ \ +- INTEL_VGA_DEVICE(0x591E, info), /* ULX GT2 */ \ + INTEL_VGA_DEVICE(0x5912, info), /* DT GT2 */ \ + INTEL_VGA_DEVICE(0x591B, info), /* Halo GT2 */ \ + INTEL_VGA_DEVICE(0x591A, info), /* SRV GT2 */ \ + INTEL_VGA_DEVICE(0x591D, info) /* WKS GT2 */ + ++#define INTEL_KBL_ULT_GT3_IDS(info) \ ++ INTEL_VGA_DEVICE(0x5926, info) /* ULT GT3 */ ++ + #define INTEL_KBL_GT3_IDS(info) \ ++ INTEL_KBL_ULT_GT3_IDS(info), \ + INTEL_VGA_DEVICE(0x5923, info), /* ULT GT3 */ \ +- INTEL_VGA_DEVICE(0x5926, info), /* ULT GT3 */ \ + INTEL_VGA_DEVICE(0x5927, info) /* ULT GT3 */ + + #define INTEL_KBL_GT4_IDS(info) \ + INTEL_VGA_DEVICE(0x593B, info) /* Halo GT4 */ + + /* AML/KBL Y GT2 */ +-#define INTEL_AML_GT2_IDS(info) \ ++#define INTEL_AML_KBL_GT2_IDS(info) \ + INTEL_VGA_DEVICE(0x591C, info), /* ULX GT2 */ \ + INTEL_VGA_DEVICE(0x87C0, info) /* ULX GT2 */ + ++/* AML/CFL Y GT2 */ ++#define INTEL_AML_CFL_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x87CA, info) ++ ++/* CML GT1 */ ++#define INTEL_CML_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x9BA5, info), \ ++ INTEL_VGA_DEVICE(0x9BA8, info), \ ++ INTEL_VGA_DEVICE(0x9BA4, info), \ ++ INTEL_VGA_DEVICE(0x9BA2, info) ++ ++#define INTEL_CML_U_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x9B21, info), \ ++ INTEL_VGA_DEVICE(0x9BAA, info), \ ++ INTEL_VGA_DEVICE(0x9BAC, info) ++ ++/* CML GT2 */ ++#define INTEL_CML_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x9BC5, info), \ ++ INTEL_VGA_DEVICE(0x9BC8, info), \ ++ INTEL_VGA_DEVICE(0x9BC4, info), \ ++ INTEL_VGA_DEVICE(0x9BC2, info), \ ++ INTEL_VGA_DEVICE(0x9BC6, info), \ ++ INTEL_VGA_DEVICE(0x9BE6, info), \ ++ INTEL_VGA_DEVICE(0x9BF6, info) ++ ++#define INTEL_CML_U_GT2_IDS(info) \ ++ INTEL_VGA_DEVICE(0x9B41, info), \ ++ INTEL_VGA_DEVICE(0x9BCA, info), \ ++ INTEL_VGA_DEVICE(0x9BCC, info) ++ + #define INTEL_KBL_IDS(info) \ + INTEL_KBL_GT1_IDS(info), \ + INTEL_KBL_GT2_IDS(info), \ + INTEL_KBL_GT3_IDS(info), \ + INTEL_KBL_GT4_IDS(info), \ +- INTEL_AML_GT2_IDS(info) ++ INTEL_AML_KBL_GT2_IDS(info) + + /* CFL S */ + #define INTEL_CFL_S_GT1_IDS(info) \ +@@ -390,6 +492,9 @@ + INTEL_VGA_DEVICE(0x3E9A, info) /* SRV GT2 */ + + /* CFL H */ ++#define INTEL_CFL_H_GT1_IDS(info) \ ++ INTEL_VGA_DEVICE(0x3E9C, info) ++ + #define INTEL_CFL_H_GT2_IDS(info) \ + INTEL_VGA_DEVICE(0x3E9B, info), /* Halo GT2 */ \ + INTEL_VGA_DEVICE(0x3E94, info) /* Halo GT2 */ +@@ -407,30 +512,43 @@ + + /* WHL/CFL U GT1 */ + #define INTEL_WHL_U_GT1_IDS(info) \ +- INTEL_VGA_DEVICE(0x3EA1, info) ++ INTEL_VGA_DEVICE(0x3EA1, info), \ ++ INTEL_VGA_DEVICE(0x3EA4, info) + + /* WHL/CFL U GT2 */ + #define INTEL_WHL_U_GT2_IDS(info) \ +- INTEL_VGA_DEVICE(0x3EA0, info) ++ INTEL_VGA_DEVICE(0x3EA0, info), \ ++ INTEL_VGA_DEVICE(0x3EA3, info) + + /* WHL/CFL U GT3 */ + #define INTEL_WHL_U_GT3_IDS(info) \ +- INTEL_VGA_DEVICE(0x3EA2, info), \ +- INTEL_VGA_DEVICE(0x3EA3, info), \ +- INTEL_VGA_DEVICE(0x3EA4, info) ++ INTEL_VGA_DEVICE(0x3EA2, info) + + #define INTEL_CFL_IDS(info) \ + INTEL_CFL_S_GT1_IDS(info), \ + INTEL_CFL_S_GT2_IDS(info), \ ++ INTEL_CFL_H_GT1_IDS(info), \ + INTEL_CFL_H_GT2_IDS(info), \ + INTEL_CFL_U_GT2_IDS(info), \ + INTEL_CFL_U_GT3_IDS(info), \ + INTEL_WHL_U_GT1_IDS(info), \ + INTEL_WHL_U_GT2_IDS(info), \ +- INTEL_WHL_U_GT3_IDS(info) ++ INTEL_WHL_U_GT3_IDS(info), \ ++ INTEL_AML_CFL_GT2_IDS(info), \ ++ INTEL_CML_GT1_IDS(info), \ ++ INTEL_CML_GT2_IDS(info), \ ++ INTEL_CML_U_GT1_IDS(info), \ ++ INTEL_CML_U_GT2_IDS(info) + + /* CNL */ ++#define INTEL_CNL_PORT_F_IDS(info) \ ++ INTEL_VGA_DEVICE(0x5A54, info), \ ++ INTEL_VGA_DEVICE(0x5A5C, info), \ ++ INTEL_VGA_DEVICE(0x5A44, info), \ ++ INTEL_VGA_DEVICE(0x5A4C, info) ++ + #define INTEL_CNL_IDS(info) \ ++ INTEL_CNL_PORT_F_IDS(info), \ + INTEL_VGA_DEVICE(0x5A51, info), \ + INTEL_VGA_DEVICE(0x5A59, info), \ + INTEL_VGA_DEVICE(0x5A41, info), \ +@@ -440,22 +558,47 @@ + INTEL_VGA_DEVICE(0x5A42, info), \ + INTEL_VGA_DEVICE(0x5A4A, info), \ + INTEL_VGA_DEVICE(0x5A50, info), \ +- INTEL_VGA_DEVICE(0x5A40, info), \ +- INTEL_VGA_DEVICE(0x5A54, info), \ +- INTEL_VGA_DEVICE(0x5A5C, info), \ +- INTEL_VGA_DEVICE(0x5A44, info), \ +- INTEL_VGA_DEVICE(0x5A4C, info) ++ INTEL_VGA_DEVICE(0x5A40, info) + + /* ICL */ +-#define INTEL_ICL_11_IDS(info) \ ++#define INTEL_ICL_PORT_F_IDS(info) \ + INTEL_VGA_DEVICE(0x8A50, info), \ +- INTEL_VGA_DEVICE(0x8A51, info), \ + INTEL_VGA_DEVICE(0x8A5C, info), \ +- INTEL_VGA_DEVICE(0x8A5D, info), \ ++ INTEL_VGA_DEVICE(0x8A59, info), \ ++ INTEL_VGA_DEVICE(0x8A58, info), \ + INTEL_VGA_DEVICE(0x8A52, info), \ + INTEL_VGA_DEVICE(0x8A5A, info), \ + INTEL_VGA_DEVICE(0x8A5B, info), \ ++ INTEL_VGA_DEVICE(0x8A57, info), \ ++ INTEL_VGA_DEVICE(0x8A56, info), \ + INTEL_VGA_DEVICE(0x8A71, info), \ +- INTEL_VGA_DEVICE(0x8A70, info) ++ INTEL_VGA_DEVICE(0x8A70, info), \ ++ INTEL_VGA_DEVICE(0x8A53, info), \ ++ INTEL_VGA_DEVICE(0x8A54, info) ++ ++#define INTEL_ICL_11_IDS(info) \ ++ INTEL_ICL_PORT_F_IDS(info), \ ++ INTEL_VGA_DEVICE(0x8A51, info), \ ++ INTEL_VGA_DEVICE(0x8A5D, info) ++ ++/* EHL/JSL */ ++#define INTEL_EHL_IDS(info) \ ++ INTEL_VGA_DEVICE(0x4500, info), \ ++ INTEL_VGA_DEVICE(0x4571, info), \ ++ INTEL_VGA_DEVICE(0x4551, info), \ ++ INTEL_VGA_DEVICE(0x4541, info), \ ++ INTEL_VGA_DEVICE(0x4E71, info), \ ++ INTEL_VGA_DEVICE(0x4E61, info), \ ++ INTEL_VGA_DEVICE(0x4E51, info) ++ ++/* TGL */ ++#define INTEL_TGL_12_IDS(info) \ ++ INTEL_VGA_DEVICE(0x9A49, info), \ ++ INTEL_VGA_DEVICE(0x9A40, info), \ ++ INTEL_VGA_DEVICE(0x9A59, info), \ ++ INTEL_VGA_DEVICE(0x9A60, info), \ ++ INTEL_VGA_DEVICE(0x9A68, info), \ ++ INTEL_VGA_DEVICE(0x9A70, info), \ ++ INTEL_VGA_DEVICE(0x9A78, info) + + #endif /* _I915_PCIIDS_H */ +diff --git a/src/intel_module.c b/src/intel_module.c +index a71c2e40b774..e0b94c190254 100644 +--- a/src/intel_module.c ++++ b/src/intel_module.c +@@ -357,7 +357,7 @@ static const struct pci_id_match intel_device_match[] = { + INTEL_I945GM_IDS(&intel_i945_info), + + INTEL_G33_IDS(&intel_g33_info), +- INTEL_PINEVIEW_IDS(&intel_g33_info), ++ INTEL_PINEVIEW_G_IDS(&intel_g33_info), + + INTEL_I965G_IDS(&intel_i965_info), + INTEL_I965GM_IDS(&intel_i965_info), +diff --git a/test/dri3-test.c b/test/dri3-test.c +index 78e105a8b64a..5265a30cea1b 100644 +--- a/test/dri3-test.c ++++ b/test/dri3-test.c +@@ -76,7 +76,7 @@ static const struct pci_id_match ids[] = { + INTEL_I945GM_IDS(031), + + INTEL_G33_IDS(033), +- INTEL_PINEVIEW_IDS(033), ++ INTEL_PINEVIEW_G_IDS(033), + + INTEL_I965G_IDS(040), + INTEL_I965GM_IDS(040), +-- +2.17.1 + diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/01_Fix-build-on-i686.patch b/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/01_Fix-build-on-i686.patch deleted file mode 100644 index 52916f8b4..000000000 --- a/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel/01_Fix-build-on-i686.patch +++ /dev/null @@ -1,55 +0,0 @@ -From a414d4e24461da1cb4cef8ee910bc57bab360ceb Mon Sep 17 00:00:00 2001 -From: Adam Jackson -Date: Tue, 6 Mar 2018 12:07:46 -0500 -Subject: [PATCH] Fix build on i686 - -Presumably this only matters for i686 because amd64 implies sse2, but: - -BUILDSTDERR: In file included from gen4_vertex.c:34: -BUILDSTDERR: gen4_vertex.c: In function 'emit_vertex': -BUILDSTDERR: sna_render_inline.h:40:26: error: inlining failed in call to always_inline 'vertex_emit_2s': target specific option mismatch -BUILDSTDERR: static force_inline void vertex_emit_2s(struct sna *sna, int16_t x, int16_t y) -BUILDSTDERR: ^~~~~~~~~~~~~~ -BUILDSTDERR: gen4_vertex.c:308:25: note: called from here -BUILDSTDERR: #define OUT_VERTEX(x,y) vertex_emit_2s(sna, x,y) /* XXX assert(!too_large(x, y)); */ -BUILDSTDERR: ^~~~~~~~~~~~~~~~~~~~~~~~ -BUILDSTDERR: gen4_vertex.c:360:2: note: in expansion of macro 'OUT_VERTEX' -BUILDSTDERR: OUT_VERTEX(dstX, dstY); -BUILDSTDERR: ^~~~~~~~~~ - -The bug here appears to be that emit_vertex() is declared 'sse2' but -vertex_emit_2s is merely always_inline. gcc8 decides that since you said -always_inline you need to have explicitly cloned it for every -permutation of targets. Merely saying inline seems to do the job of -cloning vertex_emit_2s as much as necessary. - -So to reiterate: if you say always-inline, it won't, but if you just say -maybe inline, it will. Thanks gcc, that's helpful. - -- ajax - -Patch taken from Fedora. - -Upstream-Status: Pending -Signed-off-by: Anuj Mittal - ---- - src/sna/compiler.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/sna/compiler.h b/src/sna/compiler.h -index 3c176a16..bc447c7a 100644 ---- a/src/sna/compiler.h -+++ b/src/sna/compiler.h -@@ -32,7 +32,7 @@ - #define likely(expr) (__builtin_expect (!!(expr), 1)) - #define unlikely(expr) (__builtin_expect (!!(expr), 0)) - #define noinline __attribute__((noinline)) --#define force_inline inline __attribute__((always_inline)) -+#define force_inline inline - #define fastcall __attribute__((regparm(3))) - #define must_check __attribute__((warn_unused_result)) - #define constant __attribute__((const)) --- -2.16.2 - diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb b/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb index bf9009bda..7ab223623 100644 --- a/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb +++ b/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb @@ -9,14 +9,13 @@ Infrastructure (DRI)." LIC_FILES_CHKSUM = "file://COPYING;md5=8730ad58d11c7bbad9a7066d69f7808e" -SRCREV = "33ee0c3b21ea279e08d0863fcb2e874f0974b00e" +SRCREV = "f66d39544bb8339130c96d282a80f87ca1606caf" PV = "2.99.917+git${SRCPV}" S = "${WORKDIR}/git" SRC_URI = "git://anongit.freedesktop.org/xorg/driver/xf86-video-intel \ - " - -SRC_URI_append_qemux86 = "file://01_Fix-build-on-i686.patch" + file://0001-Sync-i915_pciids-upto-8717c6b7414f.patch \ +" UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc index 54f04b11e..e30f04472 100644 --- a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc +++ b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc @@ -13,7 +13,9 @@ SRC_URI = "${XORG_MIRROR}/individual/driver/${BPN}-${PV}.tar.bz2" FILES_${PN} += " ${libdir}/xorg/modules/drivers/*.so" -inherit autotools pkgconfig features_check +XORGBUILDCLASS ??= "autotools" +inherit ${XORGBUILDCLASS} pkgconfig features_check + # depends on virtual/xserver REQUIRED_DISTRO_FEATURES = "x11" diff --git a/poky/meta/recipes-graphics/xorg-lib/files/libx11-whitespace.patch b/poky/meta/recipes-graphics/xorg-lib/files/libx11-whitespace.patch new file mode 100644 index 000000000..3f9714308 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/files/libx11-whitespace.patch @@ -0,0 +1,56 @@ +Upstream-Status: Submitted [https://gitlab.freedesktop.org/xorg/lib/libx11/merge_requests/33] +Signed-off-by: Ross Burton + +From b41469c5f08b1f3365667ff3c430b104c9b8e25f Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Wed, 22 Jan 2020 17:11:23 +0000 +Subject: [PATCH libX11] cpprules.in: squash whitespace in generated files + +CPP is used to generate files, but as cpp reads files from the build host the +output has a number of blank lines at the beginning which varies depending on +what GCC and friends is used. + +Pathalogical example: + + $ cpp -undef -traditional /dev/null + # 1 "/dev/null" + # 1 "" + # 1 "" + # 31 "" + # 1 "/usr/include/stdc-predef.h" 1 3 4 + + # 17 "/usr/include/stdc-predef.h" 3 4 + + [ 40 blank line ] + + # 32 "" 2 + # 1 "/dev/null" + +So depending on the content of stdc-predef.h and what other headers CPP will +load, the amount of whitespace in the generates files varies. This can result in +differences in reproducible environments, and file conflicts in multilib +environments. + +As whitespace is irrelevant to these machine-readable files, extend the sed to +just delete blank lines. +--- + cpprules.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/cpprules.in b/cpprules.in +index 03d6701e..ce6b3c98 100644 +--- a/cpprules.in ++++ b/cpprules.in +@@ -23,7 +23,8 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ + -e '/^[ ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/\#/' \ + -e '/^[ ]*XHASH/s/XHASH/\#/' \ + -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ +- -e '/\@\@$$/s/\@\@$$/\\/' ++ -e '/\@\@$$/s/\@\@$$/\\/' \ ++ -e '/^$$/d' + + .pre: + @$(MKDIR_P) $(@D) +-- +2.20.1 + diff --git a/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb b/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb index cabb84e68..3d97ad78d 100644 --- a/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb +++ b/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb @@ -14,7 +14,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=172255dee66bb0151435b2d5d709fcf7" SRC_URI[md5sum] = "c5fa5a86a20e3591bed6c046498d4b8f" SRC_URI[sha256sum] = "b289a845c189e251e0e884cc0f9269bbe97c238df3741e854ec4c17c21e473d5" -SRC_URI += "file://0001-Drop-x11-dependencies.patch" +SRC_URI += "file://0001-Drop-x11-dependencies.patch \ + file://libx11-whitespace.patch" XORG_PN = "libX11" diff --git a/poky/meta/recipes-graphics/xorg-lib/libx11_1.6.9.bb b/poky/meta/recipes-graphics/xorg-lib/libx11_1.6.9.bb index 8c2a57c67..ff60a4240 100644 --- a/poky/meta/recipes-graphics/xorg-lib/libx11_1.6.9.bb +++ b/poky/meta/recipes-graphics/xorg-lib/libx11_1.6.9.bb @@ -11,7 +11,8 @@ FILESEXTRAPATHS =. "${FILE_DIRNAME}/libx11:" PE = "1" SRC_URI += "file://Fix-hanging-issue-in-_XReply.patch \ - file://disable_tests.patch" + file://disable_tests.patch \ + file://libx11-whitespace.patch" SRC_URI[md5sum] = "55adbfb6d4370ecac5e70598c4e7eed2" SRC_URI[sha256sum] = "9cc7e8d000d6193fa5af580d50d689380b8287052270f5bb26a5fb6b58b2bed1" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.10.0.bb b/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.10.0.bb new file mode 100644 index 000000000..16d9c36ea --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.10.0.bb @@ -0,0 +1,27 @@ +SUMMARY = "Generic XKB keymap library" +DESCRIPTION = "libxkbcommon is a keymap compiler and support library which \ +processes a reduced subset of keymaps as defined by the XKB specification." +HOMEPAGE = "http://www.xkbcommon.org" +LIC_FILES_CHKSUM = "file://LICENSE;md5=e525ed9809e1f8a07cf4bce8b09e8b87" +LICENSE = "MIT & MIT-style" + +DEPENDS = "util-macros flex-native bison-native" + +SRC_URI = "http://xkbcommon.org/download/${BPN}-${PV}.tar.xz" + +SRC_URI[md5sum] = "2d9ad3a46b317138b5e72a91cf105451" +SRC_URI[sha256sum] = "57c3630cdc38fb4734cd57fa349e92244f5ae3862813e533cedbd86721a0b6f2" + +UPSTREAM_CHECK_URI = "http://xkbcommon.org/" + +inherit meson pkgconfig + +EXTRA_OEMESON = "-Denable-docs=false" + +PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)}" +PACKAGECONFIG[x11] = "-Denable-x11=true,-Denable-x11=false,libxcb xkeyboard-config," +PACKAGECONFIG[wayland] = "-Denable-wayland=true,-Denable-wayland=false,wayland-native wayland wayland-protocols," + +# Fix a following runtime error: +# xkbcommon: ERROR: couldn't find a Compose file for locale "C" +RDEPENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11-locale', 'libx11-compose-data', d)}" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb b/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb deleted file mode 100644 index 0608fd5af..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.8.4.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "Generic XKB keymap library" -DESCRIPTION = "libxkbcommon is a keymap compiler and support library which \ -processes a reduced subset of keymaps as defined by the XKB specification." -HOMEPAGE = "http://www.xkbcommon.org" -LIC_FILES_CHKSUM = "file://LICENSE;md5=e525ed9809e1f8a07cf4bce8b09e8b87" -LICENSE = "MIT & MIT-style" - -DEPENDS = "util-macros flex-native bison-native" - -SRC_URI = "http://xkbcommon.org/download/${BPN}-${PV}.tar.xz" - -SRC_URI[md5sum] = "3c4409058dfd203f641a563358e0187d" -SRC_URI[sha256sum] = "60ddcff932b7fd352752d51a5c4f04f3d0403230a584df9a2e0d5ed87c486c8b" - -UPSTREAM_CHECK_URI = "http://xkbcommon.org/" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-docs" - -PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" -PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxcb xkeyboard-config," - -# Fix a following runtime error: -# xkbcommon: ERROR: couldn't find a Compose file for locale "C" -RDEPENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11-locale', 'libx11-compose-data', d)}" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.bb b/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.bb deleted file mode 100644 index 64d829b31..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.bb +++ /dev/null @@ -1,27 +0,0 @@ -require xorg-lib-common.inc - -# libxpm requires xgettext to build -inherit gettext - -SUMMARY = "Xpm: X Pixmap extension library" - -DESCRIPTION = "libXpm provides support and common operation for the XPM \ -pixmap format, which is commonly used in legacy X applications. XPM is \ -an extension of the monochrome XBM bitmap specificied in the X \ -protocol." - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=51f4270b012ecd4ab1a164f5f4ed6cf7" -DEPENDS += "libxext libsm libxt gettext-native" -PE = "1" - -XORG_PN = "libXpm" - -PACKAGES =+ "sxpm cxpm" -FILES_cxpm = "${bindir}/cxpm" -FILES_sxpm = "${bindir}/sxpm" - -SRC_URI[md5sum] = "20f4627672edb2bd06a749f11aa97302" -SRC_URI[sha256sum] = "fd6a6de3da48de8d1bb738ab6be4ad67f7cb0986c39bd3f7d51dd24f7854bdec" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb b/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb new file mode 100644 index 000000000..fda8e32d2 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb @@ -0,0 +1,27 @@ +require xorg-lib-common.inc + +# libxpm requires xgettext to build +inherit gettext + +SUMMARY = "Xpm: X Pixmap extension library" + +DESCRIPTION = "libXpm provides support and common operation for the XPM \ +pixmap format, which is commonly used in legacy X applications. XPM is \ +an extension of the monochrome XBM bitmap specificied in the X \ +protocol." + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=51f4270b012ecd4ab1a164f5f4ed6cf7" +DEPENDS += "libxext libsm libxt gettext-native" +PE = "1" + +XORG_PN = "libXpm" + +PACKAGES =+ "sxpm cxpm" +FILES_cxpm = "${bindir}/cxpm" +FILES_sxpm = "${bindir}/sxpm" + +SRC_URI[md5sum] = "6f0ecf8d103d528cfc803aa475137afa" +SRC_URI[sha256sum] = "9cd1da57588b6cb71450eff2273ef6b657537a9ac4d02d0014228845b935ac25" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb index 85a48e4c5..cc4569653 100644 --- a/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb +++ b/poky/meta/recipes-graphics/xorg-lib/libxshmfence_1.3.bb @@ -11,6 +11,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=47e508ca280fde97906eacb77892c3ac" DEPENDS += "virtual/libx11" +EXTRA_OECONF += "--with-shared-memory-dir=/dev/shm" + BBCLASSEXTEND = "native nativesdk" SRC_URI[md5sum] = "42dda8016943dc12aff2c03a036e0937" diff --git a/poky/meta/recipes-graphics/xorg-lib/pixman/0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch b/poky/meta/recipes-graphics/xorg-lib/pixman/0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch index 782c1db02..23cbf53a4 100644 --- a/poky/meta/recipes-graphics/xorg-lib/pixman/0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch +++ b/poky/meta/recipes-graphics/xorg-lib/pixman/0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch @@ -7,7 +7,7 @@ Some architectures e.g. nios2 do not support all exceptions Signed-off-by: Khem Raj --- -Upstream-Status: Submitted +Upstream-Status: Submitted [https://gitlab.freedesktop.org/pixman/pixman/merge_requests/24] test/utils.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb b/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb index 82c2e73e5..22e19ba06 100644 --- a/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb +++ b/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb @@ -1,40 +1,36 @@ SUMMARY = "Pixman: Pixel Manipulation library" - DESCRIPTION = "Pixman provides a library for manipulating pixel regions \ -- a set of Y-X banded rectangles, image compositing using the \ Porter/Duff model and implicit mask generation for geometric primitives \ including trapezoids, triangles, and rectangles." +HOMEPAGE = "http://www.pixman.org" +SECTION = "x11/libs" +DEPENDS = "zlib" -require xorg-lib-common.inc +SRC_URI = "https://www.cairographics.org/releases/${BP}.tar.gz \ + file://0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch \ + file://0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch \ + " +SRC_URI[md5sum] = "267a7af290f93f643a1bc74490d9fdd1" +SRC_URI[sha256sum] = "da66d6fd6e40aee70f7bd02e4f8f76fc3f006ec879d346bae6a723025cfbdde7" # see http://cairographics.org/releases/ - only even minor versions are stable UPSTREAM_CHECK_REGEX = "pixman-(?P\d+\.(\d*[02468])+(\.\d+)+)" +PE = "1" + LICENSE = "MIT & MIT-style & PD" LIC_FILES_CHKSUM = "file://COPYING;md5=14096c769ae0cbb5fcb94ec468be11b3 \ file://pixman/pixman-matrix.c;endline=21;md5=4a018dff3e4e25302724c88ff95c2456 \ file://pixman/pixman-arm-neon-asm.h;endline=24;md5=9a9cc1e51abbf1da58f4d9528ec9d49b \ " -DEPENDS += "zlib libpng" -BBCLASSEXTEND = "native nativesdk" -PE = "1" +inherit meson pkgconfig -IWMMXT = "--disable-arm-iwmmxt" -LOONGSON_MMI = "--disable-loongson-mmi" -# If target supports neon then disable the 'simd' (ie VFPv2) fallback, otherwise disable neon. -NEON = "${@bb.utils.contains("TUNE_FEATURES", "neon", "--disable-arm-simd", "--disable-arm-neon" ,d)}" +# These are for the tests and demos, which we don't install +EXTRA_OEMESON = "-Dgtk=disabled -Dlibpng=disabled" +# ld: pixman/libpixman-mmx.a(pixman-mmx.c.o): +# linking mips:loongson_2f module with previous mips:isa64 modules +EXTRA_OEMESON += "-Dloongson-mmi=disabled" -EXTRA_OECONF = "--disable-gtk ${IWMMXT} ${LOONGSON_MMI} ${NEON}" -EXTRA_OECONF_class-native = "--disable-gtk" -EXTRA_OECONF_class-nativesdk = "--disable-gtk" - -SRC_URI += "\ - file://0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch \ - file://0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch \ -" - -SRC_URI[md5sum] = "16a350a8a40116ddf67632a1d2623711" -SRC_URI[sha256sum] = "84abb7fa2541af24d9c3b34bf75d6ac60cc94ac4410061bbb295b66a29221550" - -REQUIRED_DISTRO_FEATURES = "" +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.27.bb b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.27.bb deleted file mode 100644 index 02156ad75..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.27.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Keyboard configuration database for X Window" - -DESCRIPTION = "The non-arch keyboard configuration database for X \ -Window. The goal is to provide the consistent, well-structured, \ -frequently released open source of X keyboard configuration data for X \ -Window System implementations. The project is targeted to XKB-based \ -systems." - -HOMEPAGE = "http://freedesktop.org/wiki/Software/XKeyboardConfig" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xkeyboard-config" - -LICENSE = "MIT & MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=0e7f21ca7db975c63467d2e7624a12f9" - -SRC_URI = "${XORG_MIRROR}/individual/data/xkeyboard-config/${BPN}-${PV}.tar.bz2" -SRC_URI[md5sum] = "316753e35d3906d042c74230612eab9f" -SRC_URI[sha256sum] = "690daec8fea63526c07620c90e6f3f10aae34e94b6db6e30906173480721901f" - -SECTION = "x11/libs" -DEPENDS = "util-macros libxslt-native" - -EXTRA_OECONF = "--with-xkb-rules-symlink=xorg --disable-runtime-deps" - -FILES_${PN} += "${datadir}/X11/xkb" - -inherit autotools pkgconfig gettext - -do_install_append () { - install -d ${D}${datadir}/X11/xkb/compiled - cd ${D}${datadir}/X11/xkb/rules && ln -sf base xorg -} diff --git a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb new file mode 100644 index 000000000..7a3d694bd --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb @@ -0,0 +1,31 @@ +SUMMARY = "Keyboard configuration database for X Window" + +DESCRIPTION = "The non-arch keyboard configuration database for X \ +Window. The goal is to provide the consistent, well-structured, \ +frequently released open source of X keyboard configuration data for X \ +Window System implementations. The project is targeted to XKB-based \ +systems." + +HOMEPAGE = "http://freedesktop.org/wiki/Software/XKeyboardConfig" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xkeyboard-config" + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=0e7f21ca7db975c63467d2e7624a12f9" + +SRC_URI = "${XORG_MIRROR}/individual/data/xkeyboard-config/${BPN}-${PV}.tar.bz2" +SRC_URI[md5sum] = "5a968ab77846ff85a04242410b2a61de" +SRC_URI[sha256sum] = "69adb25b0fc64e4075f8ec0eab8d869892419f474f91fb69db1713de2062bdce" + +SECTION = "x11/libs" +DEPENDS = "util-macros libxslt-native" + +EXTRA_OECONF = "--with-xkb-rules-symlink=xorg --disable-runtime-deps" + +FILES_${PN} += "${datadir}/X11/xkb" + +inherit autotools pkgconfig gettext + +do_install_append () { + install -d ${D}${datadir}/X11/xkb/compiled + cd ${D}${datadir}/X11/xkb/rules && ln -sf base xorg +} diff --git a/poky/meta/recipes-graphics/xorg-proto/xorg-proto-common.inc b/poky/meta/recipes-graphics/xorg-proto/xorg-proto-common.inc deleted file mode 100644 index 7a417c974..000000000 --- a/poky/meta/recipes-graphics/xorg-proto/xorg-proto-common.inc +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "X protocol headers: ${XORG_PN}" -HOMEPAGE = "http://www.x.org" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg" - -SECTION = "x11/libs" -LICENSE = "MIT-X" - -XORG_PN = "${BPN}" - -SRC_URI = "${XORG_MIRROR}/individual/proto/${XORG_PN}-${PV}.tar.bz2" - -S = "${WORKDIR}/${XORG_PN}-${PV}" - -DEPENDS = "util-macros" - -inherit autotools pkgconfig -EXTRA_OECONF = "--without-fop" - -UNKNOWN_CONFIGURE_WHITELIST += "--without-fop --without-xmlto --with-xmlto" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[xmlto] = "--with-xmlto, --without-xmlto, xmlto-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native" - -# ${PN} is empty so we need to tweak -dev and -dbg package dependencies -RDEPENDS_${PN}-dev = "" -RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" diff --git a/poky/meta/recipes-graphics/xorg-proto/xorgproto_2019.2.bb b/poky/meta/recipes-graphics/xorg-proto/xorgproto_2019.2.bb deleted file mode 100644 index 8acbe895a..000000000 --- a/poky/meta/recipes-graphics/xorg-proto/xorgproto_2019.2.bb +++ /dev/null @@ -1,14 +0,0 @@ -require xorg-proto-common.inc - -SUMMARY = "X Window System unified protocol definitions" - -DESCRIPTION = "This package provides the headers and specification documents defining \ -the core protocol and (many) extensions for the X Window System" - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING-x11proto;md5=b9e051107d5628966739a0b2e9b32676" - -SRC_URI[md5sum] = "a02dcaff48b4141b949ac99dfc344d86" -SRC_URI[sha256sum] = "46ecd0156c561d41e8aa87ce79340910cdf38373b759e737fcbba5df508e7b8e" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/xorg-proto/xorgproto_2020.1.bb b/poky/meta/recipes-graphics/xorg-proto/xorgproto_2020.1.bb new file mode 100644 index 000000000..c71bc9038 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-proto/xorgproto_2020.1.bb @@ -0,0 +1,27 @@ + +SUMMARY = "X Window System unified protocol definitions" +DESCRIPTION = "This package provides the headers and specification documents defining \ +the core protocol and (many) extensions for the X Window System" +HOMEPAGE = "http://www.x.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg" + +SECTION = "x11/libs" +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING-x11proto;md5=b9e051107d5628966739a0b2e9b32676" + +SRC_URI = "${XORG_MIRROR}/individual/proto/${BP}.tar.bz2" +SRC_URI[md5sum] = "c29f4fa78f53b52b3efdc71ebd9506b6" +SRC_URI[sha256sum] = "54a153f139035a376c075845dd058049177212da94d7a9707cf9468367b699d2" + +inherit meson + +PACKAGECONFIG ??= "" +PACKAGECONFIG[legacy] = "-Dlegacy=true,-Dlegacy=false" + +# Datadir only used to install pc files, $datadir/pkgconfig +datadir="${libdir}" +# ${PN} is empty so we need to tweak -dev and -dbg package dependencies +RDEPENDS_${PN}-dev = "" +RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf b/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf deleted file mode 100644 index 1d3c64f62..000000000 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf +++ /dev/null @@ -1,39 +0,0 @@ - -Section "Files" -EndSection - -Section "Device" - Identifier "Graphics Controller" - Driver "fbdev" -EndSection - -Section "Monitor" - Identifier "Generic Monitor" - Option "DPMS" - # 1024x600 59.85 Hz (CVT) hsync: 37.35 kHz; pclk: 49.00 MHz - Modeline "1024x600_60.00" 49.00 1024 1072 1168 1312 600 603 613 624 -hsync +vsync - # 640x480 @ 60Hz (Industry standard) hsync: 31.5kHz - ModeLine "640x480" 25.2 640 656 752 800 480 490 492 525 -hsync -vsync - # 640x480 @ 72Hz (VESA) hsync: 37.9kHz - ModeLine "640x480" 31.5 640 664 704 832 480 489 491 520 -hsync -vsync - # 640x480 @ 75Hz (VESA) hsync: 37.5kHz - ModeLine "640x480" 31.5 640 656 720 840 480 481 484 500 -hsync -vsync - # 640x480 @ 85Hz (VESA) hsync: 43.3kHz - ModeLine "640x480" 36.0 640 696 752 832 480 481 484 509 -hsync -vsync -EndSection - -Section "Screen" - Identifier "Default Screen" - Device "Graphics Controller" - Monitor "Generic Monitor" - DefaultDepth 16 - SubSection "Display" - Modes "640x480" - EndSubSection -EndSection - -Section "ServerLayout" - Identifier "Default Layout" - Screen "Default Screen" - Option "AllowEmptyInput" "no" -EndSection diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf b/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf deleted file mode 100644 index 03b94dc3a..000000000 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf +++ /dev/null @@ -1,39 +0,0 @@ - -Section "Files" -EndSection - -Section "Device" - Identifier "Graphics Controller" - Driver "fbdev" -EndSection - -Section "Monitor" - Identifier "Generic Monitor" - Option "DPMS" - # 1024x600 59.85 Hz (CVT) hsync: 37.35 kHz; pclk: 49.00 MHz - Modeline "1024x600_60.00" 49.00 1024 1072 1168 1312 600 603 613 624 -hsync +vsync - # 640x480 @ 60Hz (Industry standard) hsync: 31.5kHz - ModeLine "640x480" 25.2 640 656 752 800 480 490 492 525 -hsync -vsync - # 640x480 @ 72Hz (VESA) hsync: 37.9kHz - ModeLine "640x480" 31.5 640 664 704 832 480 489 491 520 -hsync -vsync - # 640x480 @ 75Hz (VESA) hsync: 37.5kHz - ModeLine "640x480" 31.5 640 656 720 840 480 481 484 500 -hsync -vsync - # 640x480 @ 85Hz (VESA) hsync: 43.3kHz - ModeLine "640x480" 36.0 640 696 752 832 480 481 484 509 -hsync -vsync -EndSection - -Section "Screen" - Identifier "Default Screen" - Device "Graphics Controller" - Monitor "Generic Monitor" - DefaultDepth 16 - SubSection "Display" - Modes "640x480" - EndSubSection -EndSection - -Section "ServerLayout" - Identifier "Default Layout" - Screen "Default Screen" - Option "AllowEmptyInput" "no" -EndSection diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc index a0ae65c78..b4f076017 100644 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc @@ -117,6 +117,7 @@ EXTRA_OECONF += "--with-fop=no \ --sysconfdir=/etc/X11 \ --localstatedir=/var \ --with-xkb-output=/var/lib/xkb \ + --with-os-name=Linux \ " OPENGL_PKGCONFIGS = "dri glx glamor dri3 xshmfence" @@ -151,6 +152,7 @@ PACKAGECONFIG[gcrypt] = "--with-sha1=libgcrypt,,libgcrypt" do_install_append () { # Its assumed base-files creates this for us rmdir ${D}${localstatedir}/log/ + sed -i -e 's,${libdir}/xorg/modules,${prefix}/lib*/xorg/modules,' ${D}${mandir}/man5/xorg.conf.5 } # Add runtime provides for the ABI versions of the video and input subsystems, diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-compiler.h-Do-not-include-sys-io.h-on-ARM-with-glibc.patch b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-compiler.h-Do-not-include-sys-io.h-on-ARM-with-glibc.patch deleted file mode 100644 index da9a4f2b2..000000000 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-compiler.h-Do-not-include-sys-io.h-on-ARM-with-glibc.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 2ba9510721b7a76cb7fe507449fa0ac997a4cce3 Mon Sep 17 00:00:00 2001 -From: Olivier Fourdan -Date: Mon, 1 Jul 2019 13:20:39 +0200 -Subject: [PATCH] compiler.h: Do not include sys/io.h on ARM with glibc - - on ARM hasn't worked for a long, long time, so it was removed -it from glibc upstream. - -Remove the include to avoid a compilation failure on ARM with glibc. - -Signed-off-by: Olivier Fourdan -Closes: https://gitlab.freedesktop.org/xorg/xserver/issues/840 -Signed-off-by: Khem Raj - -Upstream-Status: Backport [https://gitlab.freedesktop.org/xorg/xserver/commit/fe4cd0e7f5c58fa94db36326aadc1bd4e6d73eba] ---- - hw/xfree86/common/compiler.h | 30 ------------------------------ - 1 file changed, 30 deletions(-) - -diff --git a/hw/xfree86/common/compiler.h b/hw/xfree86/common/compiler.h -index 7144c6a..2b2008b 100644 ---- a/hw/xfree86/common/compiler.h -+++ b/hw/xfree86/common/compiler.h -@@ -758,36 +758,6 @@ inl(unsigned short port) - return xf86ReadMmio32Le((void *) ioBase, port); - } - --#elif defined(__arm__) && defined(__linux__) -- --/* for Linux on ARM, we use the LIBC inx/outx routines */ --/* note that the appropriate setup via "ioperm" needs to be done */ --/* *before* any inx/outx is done. */ -- --#include -- --static __inline__ void --xf_outb(unsigned short port, unsigned char val) --{ -- outb(val, port); --} -- --static __inline__ void --xf_outw(unsigned short port, unsigned short val) --{ -- outw(val, port); --} -- --static __inline__ void --xf_outl(unsigned short port, unsigned int val) --{ -- outl(val, port); --} -- --#define outb xf_outb --#define outw xf_outw --#define outl xf_outl -- - #elif defined(__nds32__) - - /* --- -2.22.0 - diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-drmmode_display.c-add-missing-mi.h-include.patch b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-drmmode_display.c-add-missing-mi.h-include.patch new file mode 100644 index 000000000..4b8e43f1e --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-drmmode_display.c-add-missing-mi.h-include.patch @@ -0,0 +1,23 @@ +From 84338444179cab7ede1252a11b66e3b8f657e6a4 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Fri, 7 Feb 2020 20:36:45 +0100 +Subject: [PATCH] drmmode_display.c: add missing mi.h include + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- + hw/xfree86/drivers/modesetting/drmmode_display.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c +index e18cc37..3445cce 100644 +--- a/hw/xfree86/drivers/modesetting/drmmode_display.c ++++ b/hw/xfree86/drivers/modesetting/drmmode_display.c +@@ -46,6 +46,7 @@ + #include "xf86Crtc.h" + #include "drmmode_display.h" + #include "present.h" ++#include "mi.h" + + #include + diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.5.bb b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.5.bb deleted file mode 100644 index 3de6d22e5..000000000 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.5.bb +++ /dev/null @@ -1,32 +0,0 @@ -require xserver-xorg.inc - -SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch \ - file://pkgconfig.patch \ - file://0001-test-xtest-Initialize-array-with-braces.patch \ - file://0001-compiler.h-Do-not-include-sys-io.h-on-ARM-with-glibc.patch \ - file://sdksyms-no-build-path.patch \ - " -SRC_URI[md5sum] = "c9fc7e21e11286dbedd22c00df652130" -SRC_URI[sha256sum] = "a81d8243f37e75a03d4f8c55f96d0bc25802be6ec45c3bfa5cb614c6d01bac9d" - -# These extensions are now integrated into the server, so declare the migration -# path for in-place upgrades. - -RREPLACES_${PN} = "${PN}-extension-dri \ - ${PN}-extension-dri2 \ - ${PN}-extension-record \ - ${PN}-extension-extmod \ - ${PN}-extension-dbe \ - " -RPROVIDES_${PN} = "${PN}-extension-dri \ - ${PN}-extension-dri2 \ - ${PN}-extension-record \ - ${PN}-extension-extmod \ - ${PN}-extension-dbe \ - " -RCONFLICTS_${PN} = "${PN}-extension-dri \ - ${PN}-extension-dri2 \ - ${PN}-extension-record \ - ${PN}-extension-extmod \ - ${PN}-extension-dbe \ - " diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb new file mode 100644 index 000000000..3f7fbe85b --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb @@ -0,0 +1,34 @@ +require xserver-xorg.inc + +SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch \ + file://pkgconfig.patch \ + file://0001-test-xtest-Initialize-array-with-braces.patch \ + file://sdksyms-no-build-path.patch \ + file://0001-drmmode_display.c-add-missing-mi.h-include.patch \ + " +SRC_URI[md5sum] = "a770aec600116444a953ff632f51f839" +SRC_URI[sha256sum] = "d17b646bee4ba0fb7850c1cc55b18e3e8513ed5c02bdf38da7e107f84e2d0146" + +CFLAGS += "-fcommon" + +# These extensions are now integrated into the server, so declare the migration +# path for in-place upgrades. + +RREPLACES_${PN} = "${PN}-extension-dri \ + ${PN}-extension-dri2 \ + ${PN}-extension-record \ + ${PN}-extension-extmod \ + ${PN}-extension-dbe \ + " +RPROVIDES_${PN} = "${PN}-extension-dri \ + ${PN}-extension-dri2 \ + ${PN}-extension-record \ + ${PN}-extension-extmod \ + ${PN}-extension-dbe \ + " +RCONFLICTS_${PN} = "${PN}-extension-dri \ + ${PN}-extension-dri2 \ + ${PN}-extension-record \ + ${PN}-extension-extmod \ + ${PN}-extension-dbe \ + " -- cgit v1.2.3 From 4b740dc9fdbca604749cf15f7ea0e6ead345b5a0 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Tue, 5 May 2020 08:54:39 -0500 Subject: poky: subtree update:a8544811d7..b5763b2f48 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Alexander Kanavin (29): rpm: upgrade to 4.15.1 libmodulemd: move from 1.x to 2.x version libdnf: upgrade 0.28.1 -> 0.47.0 dnf: upgrade 4.2.2 -> 4.2.21 dnf: add a patch for base-files installation failures logrotate: update to 3.16.0 rt-tests: further exclusion of development versions kmscube: update to latest commit xcb-proto: update to 1.14 libxcb: update to 1.14 ghostscript: do not hardcode version in SRC_URI ghostscript: update 9.50 -> 9.52 webkitgtk: update to 2.28.2 python3-gitdb: update to 4.0.4 libevdev: update to 1.9.0 python3-dbusmock: add recipe from meta-oe mc: update to 4.8.24 coreutils: update to 8.32 glib-2.0: update 2.62.4 -> 2.64.2 glib-networking: update to 2.64.2 gptfdisk: update to 1.0.5 clutter-1.0: update to 1.26.4 diffoscope: update to 143 wpe: update to 1.6.0 vte: update to 0.60.2 libnotify: update to 0.7.9 connman: update to 1.38 xkeyboard-config: update to 2.29 gcr: update to 3.36.0 Andreas M?ller (1): libsecret: upgrade 0.20.1 -> 0.20.3 / port to meson Anibal Limon (2): ptest-runner: Bump to 2.4.0 oeqa/runtime: Use libdir to run ptest-runner Bartłomiej Burdukiewicz (2): libva: add PACKAGECONFIG and additonal rules for glx. libva: removed opengl from REQUIRED_DISTRO_FEATURES. Benjamin Fair (1): util-linux: fix build error in kill Bruce Ashfield (4): linux-yocto/5.4: update to v5.4.28 linux-yocto/5.4: update to v5.4.32 linux-yocto-dev: bump to v5.7-rc linux-yocto/5.4: update to v5.4.34 Frazer Clews (2): bitbake: lib/toaster: fixup codebase so pydocstyle can parse bitbake: lib/bs4/testing.py: fix bs4 testing Jan Luebbe (1): openssl: upgrade 1.1.1f -> 1.1.1g Joshua Watt (1): jquery: Upgrade 3.4.1 -> 3.5.0 Khem Raj (2): dpkg: Add riscv32 CPU support musl: Remove spurious unused patch Mingli Yu (1): iputils: Initialize libgcrypt Peter Kjellerstedt (1): libdnf: Use single-quotes around string literals used in SQL statements Pierre-Jean Texier (3): timezone: upgrade 2019c -> 2020a curl: upgrade 7.69.1 -> 7.70.0 curl: support mqtt in PACKAGECONFIG Richard Purdie (6): sanity: Require gcc 6 or later gcc-target: Ensure buildtools-extended-tarball doesn't use arch=native abi_version/staging: Bump versions to force rebuild after sstate corruption bitbake: bitdoc: Remove it utils: Drop FILESPATHPKG usage utils: Drop is_machine_specific()/machine_paths() Robert P. J. Day (5): ref-manual: fix excessive command indentation ref-manual: IMAGE_TYPES, add tar.zst, delete elf ref-manual: typo "SSTATE_MIRROR" -> "SSTATE_MIRRORS" ref-manual: Remove long-dead PACKAGE_GROUP variable bitbake: docs: delete reference to obsolete recipe-depends.dot Sakib Sajal (1): sqlite: backport CVE fixes Tim Orling (2): atk: upgrade 2.34.1 -> 2.36.0 at-spi2-core: upgrade 2.34.0 -> 2.36.0 Vyacheslav Yurkov (1): os-release: sanitize required fields Wang Mingyu (1): icu: CVE-2020-10531 Change-Id: Iae5641be5ca6424275d2e0d63ba3a7a5ba90cde2 Signed-off-by: Andrew Geissler --- poky/bitbake/bin/bitdoc | 519 --------------------- .../bitbake-user-manual-intro.xml | 7 +- poky/bitbake/lib/bs4/testing.py | 6 +- .../toaster/orm/management/commands/lsupdates.py | 2 +- .../toastermain/management/commands/perf.py | 68 +-- poky/documentation/ref-manual/migration.xml | 6 +- .../ref-manual/ref-system-requirements.xml | 4 +- poky/documentation/ref-manual/ref-variables.xml | 26 +- poky/meta/classes/sanity.bbclass | 6 +- poky/meta/classes/staging.bbclass | 1 + poky/meta/classes/utils.bbclass | 19 - poky/meta/conf/abi_version.conf | 2 +- poky/meta/conf/distro/include/maintainers.inc | 3 +- poky/meta/lib/oeqa/runtime/cases/ptest.py | 6 +- poky/meta/recipes-connectivity/connman/connman.inc | 1 + .../0001-gweb-fix-segfault-with-musl-v1.1.21.patch | 34 -- ...resolve-musl-does-not-implement-res_ninit.patch | 20 +- .../recipes-connectivity/connman/connman_1.37.bb | 17 - .../recipes-connectivity/connman/connman_1.38.bb | 16 + .../recipes-connectivity/openssl/openssl_1.1.1f.bb | 211 --------- .../recipes-connectivity/openssl/openssl_1.1.1g.bb | 211 +++++++++ ...tore-8.31-behavior-on-removed-directories.patch | 99 ++++ .../coreutils/coreutils/fix-selinux-flask.patch | 13 +- .../coreutils/remove-usr-local-lib-from-m4.patch | 23 +- .../coreutils/strtod_fix_clash_with_strtold.patch | 56 --- poky/meta/recipes-core/coreutils/coreutils_8.31.bb | 190 -------- poky/meta/recipes-core/coreutils/coreutils_8.32.bb | 190 ++++++++ .../0001-Do-not-ignore-return-value-of-write.patch | 6 +- ...Do-not-write-bindir-into-pkg-config-files.patch | 10 +- .../0001-Fix-DATADIRNAME-on-uclibc-Linux.patch | 7 +- ...stall-gio-querymodules-as-libexec_PROGRAM.patch | 6 +- ...warning-about-deprecated-paths-in-schemas.patch | 11 +- ...chine-correctly-when-building-with-mingw3.patch | 22 +- ...esources.c-comment-out-a-build-host-only-.patch | 3 +- ...1-meson-Run-atomics-test-on-clang-as-well.patch | 10 +- ...t-hardcode-python-path-into-various-tools.patch | 14 +- ...t-Fix-GSource-iterator-if-iteration-can-m.patch | 43 -- ...t-Fix-memory-leaks-and-memory-corruption-.patch | 109 ----- ...t-Move-mutex-unlocking-in-destructor-righ.patch | 36 -- .../Enable-more-tests-while-cross-compiling.patch | 32 +- .../glib-2.0/glib-2.0/relocate-modules.patch | 10 +- poky/meta/recipes-core/glib-2.0/glib-2.0_2.62.4.bb | 53 --- poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb | 50 ++ poky/meta/recipes-core/glib-2.0/glib.inc | 6 +- .../glib-networking/glib-networking_2.62.3.bb | 34 -- .../glib-networking/glib-networking_2.64.2.bb | 34 ++ ...01-Remove-using-.end-directive-with-clang.patch | 36 -- poky/meta/recipes-core/os-release/os-release.bb | 14 +- .../0001-include-cleanup-pidfd-inckudes.patch | 42 ++ ...e-sys-types.h-before-checking-SYS_pidfd_s.patch | 64 +++ .../recipes-core/util-linux/util-linux_2.35.1.bb | 2 + .../dnf/0001-dnf-write-the-log-lock-to-root.patch | 29 ++ .../dnf/dnf/Fix-SyntaxWarning.patch | 34 -- poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb | 90 ---- poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb | 90 ++++ .../dpkg/0001-Add-support-for-riscv32-CPU.patch | 39 ++ poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb | 1 + ...0001-gptcurses-correctly-include-curses.h.patch | 27 ++ poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb | 33 -- poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.5.bb | 35 ++ poky/meta/recipes-devtools/gcc/gcc-target.inc | 10 +- poky/meta/recipes-devtools/jquery/jquery_3.4.1.bb | 31 -- poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb | 31 ++ .../libdnf/libdnf/0001-Add-WITH_TESTS-option.patch | 12 +- ...inx-only-if-documentation-is-actually-ena.patch | 42 ++ ...quotes-around-string-literals-used-in-SQL.patch | 36 ++ .../0001-include-stdexcept-for-runtime_error.patch | 65 --- .../libdnf/libdnf/fix-deprecation-warning.patch | 71 --- poky/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb | 32 -- poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb | 34 ++ ...01-spec_tmpl.sh-use-bin-sh-not-usr-bin-sh.patch | 22 - .../libmodulemd/libmodulemd-v1_git.bb | 25 - ...nerate-the-manpage-only-if-the-feature-is.patch | 28 ++ ...n.build-do-not-install-python-gi-bindings.patch | 23 + .../libmodulemd/libmodulemd_git.bb | 25 + poky/meta/recipes-devtools/python/python-gitdb.inc | 5 +- .../python/python3-dbusmock_0.19.bb | 16 + .../recipes-devtools/python/python3-gitdb_2.0.6.bb | 3 - .../recipes-devtools/python/python3-gitdb_4.0.4.bb | 3 + ...an-unsatisfiable-dependency-when-building.patch | 28 +- ...code-lib-rpm-as-the-installation-path-for.patch | 14 +- ...y-package-building-into-a-separate-functi.patch | 84 ---- ...rovides-requires-do-not-use-monodis-from-.patch | 58 --- ...o-not-run-file-classification-in-parallel.patch | 65 +++ ...-binary-package-creation-via-thread-pools.patch | 127 ----- ...c-make-operations-over-string-pools-threa.patch | 207 -------- ...c-remove-static-local-variables-from-buil.patch | 336 ------------- poky/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb | 155 ------ poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb | 149 ++++++ .../files/do-not-check-local-libpng-source.patch | 37 +- .../ghostscript/CVE-2019-14869-0001.patch | 70 --- .../ghostscript/ghostscript/aarch64/objarch.h | 40 -- .../ghostscript/ghostscript/arm/objarch.h | 40 -- .../ghostscript/ghostscript/armeb/objarch.h | 40 -- .../ghostscript/ghostscript-9.02-genarch.patch | 38 -- .../ghostscript/ghostscript/i586/objarch.h | 41 -- .../ghostscript/ghostscript/microblaze/objarch.h | 40 -- .../ghostscript/ghostscript/microblazeel/objarch.h | 40 -- .../ghostscript/mipsarchn32eb/objarch.h | 40 -- .../ghostscript/mipsarchn32el/objarch.h | 40 -- .../ghostscript/mipsarchn64eb/objarch.h | 40 -- .../ghostscript/mipsarchn64el/objarch.h | 40 -- .../ghostscript/mipsarcho32eb/objarch.h | 40 -- .../ghostscript/mipsarcho32el/objarch.h | 40 -- .../ghostscript/ghostscript/nios2/objarch.h | 40 -- .../ghostscript/ghostscript/powerpc/objarch.h | 40 -- .../ghostscript/ghostscript/powerpc64/objarch.h | 40 -- .../ghostscript/ghostscript/powerpc64le/objarch.h | 40 -- .../ghostscript/ghostscript/x86-64/objarch.h | 40 -- .../ghostscript/ghostscript_9.50.bb | 129 ----- .../ghostscript/ghostscript_9.52.bb | 122 +++++ .../0001-iputils-Initialize-libgcrypt.patch | 55 +++ .../recipes-extended/iputils/iputils_s20190709.bb | 1 + .../logrotate/0001-Update-the-manual.patch | 39 ++ .../logrotate/act-as-mv-when-rotate.patch | 25 +- .../disable-check-different-filesystems.patch | 14 +- .../logrotate/logrotate/update-the-manual.patch | 38 -- .../recipes-extended/logrotate/logrotate_3.15.1.bb | 99 ---- .../recipes-extended/logrotate/logrotate_3.16.0.bb | 99 ++++ ...0001-Add-option-to-control-configure-args.patch | 99 ---- ...et-3629-configure.ac-drop-bundled-gettext.patch | 110 ----- ...-misc-Makefile.am-install-mc.lib-only-onc.patch | 59 +++ poky/meta/recipes-extended/mc/mc_4.8.23.bb | 56 --- poky/meta/recipes-extended/mc/mc_4.8.24.bb | 55 +++ poky/meta/recipes-extended/timezone/timezone.inc | 10 +- poky/meta/recipes-gnome/gcr/gcr_3.34.0.bb | 35 -- poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb | 31 ++ .../recipes-gnome/libnotify/libnotify_0.7.8.bb | 22 - .../recipes-gnome/libnotify/libnotify_0.7.9.bb | 28 ++ .../recipes-gnome/libsecret/libsecret_0.20.1.bb | 27 -- .../recipes-gnome/libsecret/libsecret_0.20.3.bb | 30 ++ poky/meta/recipes-graphics/clutter/clutter-1.0.inc | 2 +- .../run-installed-tests-with-tap-output.patch | 16 +- .../recipes-graphics/clutter/clutter-1.0_1.26.2.bb | 10 - .../recipes-graphics/clutter/clutter-1.0_1.26.4.bb | 10 + ...-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch | 117 ----- poky/meta/recipes-graphics/kmscube/kmscube_git.bb | 5 +- poky/meta/recipes-graphics/libva/libva_2.6.1.bb | 14 +- .../xorg-lib/libxcb/xcbincludedir.patch | 28 -- .../recipes-graphics/xorg-lib/libxcb_1.13.1.bb | 37 -- poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb | 35 ++ .../0001-fix-python3-support.patch | 34 ++ .../xorg-lib/xkeyboard-config_2.28.bb | 31 -- .../xorg-lib/xkeyboard-config_2.29.bb | 33 ++ .../recipes-graphics/xorg-proto/xcb-proto_1.13.bb | 29 -- .../recipes-graphics/xorg-proto/xcb-proto_1.14.bb | 28 ++ poky/meta/recipes-kernel/linux/linux-yocto-dev.bb | 2 +- .../recipes-kernel/linux/linux-yocto-rt_5.4.bb | 6 +- .../recipes-kernel/linux/linux-yocto-tiny_5.4.bb | 8 +- poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb | 22 +- poky/meta/recipes-rt/rt-tests/rt-tests.inc | 4 +- poky/meta/recipes-sato/webkit/libwpe_1.4.0.1.bb | 17 - poky/meta/recipes-sato/webkit/libwpe_1.6.0.bb | 18 + .../webkitgtk/0001-Fix-build-with-musl.patch | 30 +- ...c-settings-so-that-gtkdoc-generation-work.patch | 8 +- .../webkit/webkitgtk/x32_support.patch | 30 -- poky/meta/recipes-sato/webkit/webkitgtk_2.26.4.bb | 133 ------ poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb | 132 ++++++ .../recipes-sato/webkit/wpebackend-fdo_1.4.1.bb | 17 - .../recipes-sato/webkit/wpebackend-fdo_1.6.0.bb | 18 + .../0001-Fix-source-reproducibility.patch | 32 -- .../recipes-support/atk/at-spi2-core_2.34.0.bb | 37 -- .../recipes-support/atk/at-spi2-core_2.36.0.bb | 36 ++ poky/meta/recipes-support/atk/atk_2.34.1.bb | 21 - poky/meta/recipes-support/atk/atk_2.36.0.bb | 21 + poky/meta/recipes-support/curl/curl_7.69.1.bb | 80 ---- poky/meta/recipes-support/curl/curl_7.70.0.bb | 81 ++++ .../recipes-support/diffoscope/diffoscope_136.bb | 18 - .../recipes-support/diffoscope/diffoscope_143.bb | 18 + .../recipes-support/icu/icu/CVE-2020-10531.patch | 128 +++++ poky/meta/recipes-support/icu/icu_66.1.bb | 1 + .../libevdev/libevdev/determinism.patch | 53 ++- .../recipes-support/libevdev/libevdev_1.8.0.bb | 16 - .../recipes-support/libevdev/libevdev_1.9.0.bb | 16 + .../ptest-runner/ptest-runner_2.3.2.bb | 28 -- .../ptest-runner/ptest-runner_2.4.0.bb | 28 ++ .../sqlite/files/CVE-2020-11655.patch | 32 ++ .../sqlite/files/CVE-2020-11656.patch | 70 +++ poky/meta/recipes-support/sqlite/sqlite3_3.31.1.bb | 2 + poky/meta/recipes-support/vte/vte_0.58.3.bb | 56 --- poky/meta/recipes-support/vte/vte_0.60.2.bb | 57 +++ 181 files changed, 3023 insertions(+), 5216 deletions(-) delete mode 100755 poky/bitbake/bin/bitdoc delete mode 100644 poky/meta/recipes-connectivity/connman/connman/0001-gweb-fix-segfault-with-musl-v1.1.21.patch delete mode 100644 poky/meta/recipes-connectivity/connman/connman_1.37.bb create mode 100644 poky/meta/recipes-connectivity/connman/connman_1.38.bb delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb create mode 100644 poky/meta/recipes-connectivity/openssl/openssl_1.1.1g.bb create mode 100644 poky/meta/recipes-core/coreutils/coreutils/0001-ls-restore-8.31-behavior-on-removed-directories.patch delete mode 100644 poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch delete mode 100644 poky/meta/recipes-core/coreutils/coreutils_8.31.bb create mode 100644 poky/meta/recipes-core/coreutils/coreutils_8.32.bb delete mode 100644 poky/meta/recipes-core/glib-2.0/glib-2.0/0011-GMainContext-Fix-GSource-iterator-if-iteration-can-m.patch delete mode 100644 poky/meta/recipes-core/glib-2.0/glib-2.0/0012-GMainContext-Fix-memory-leaks-and-memory-corruption-.patch delete mode 100644 poky/meta/recipes-core/glib-2.0/glib-2.0/0013-GMainContext-Move-mutex-unlocking-in-destructor-righ.patch delete mode 100644 poky/meta/recipes-core/glib-2.0/glib-2.0_2.62.4.bb create mode 100644 poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb delete mode 100644 poky/meta/recipes-core/glib-networking/glib-networking_2.62.3.bb create mode 100644 poky/meta/recipes-core/glib-networking/glib-networking_2.64.2.bb delete mode 100644 poky/meta/recipes-core/musl/0001-Remove-using-.end-directive-with-clang.patch create mode 100644 poky/meta/recipes-core/util-linux/util-linux/0001-include-cleanup-pidfd-inckudes.patch create mode 100644 poky/meta/recipes-core/util-linux/util-linux/0001-kill-include-sys-types.h-before-checking-SYS_pidfd_s.patch create mode 100644 poky/meta/recipes-devtools/dnf/dnf/0001-dnf-write-the-log-lock-to-root.patch delete mode 100644 poky/meta/recipes-devtools/dnf/dnf/Fix-SyntaxWarning.patch delete mode 100644 poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb create mode 100644 poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb create mode 100644 poky/meta/recipes-devtools/dpkg/dpkg/0001-Add-support-for-riscv32-CPU.patch create mode 100644 poky/meta/recipes-devtools/fdisk/gptfdisk/0001-gptcurses-correctly-include-curses.h.patch delete mode 100644 poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb create mode 100644 poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.5.bb delete mode 100644 poky/meta/recipes-devtools/jquery/jquery_3.4.1.bb create mode 100644 poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb create mode 100644 poky/meta/recipes-devtools/libdnf/libdnf/0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch create mode 100644 poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch delete mode 100644 poky/meta/recipes-devtools/libdnf/libdnf/0001-include-stdexcept-for-runtime_error.patch delete mode 100644 poky/meta/recipes-devtools/libdnf/libdnf/fix-deprecation-warning.patch delete mode 100644 poky/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb create mode 100644 poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb delete mode 100644 poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1/0001-spec_tmpl.sh-use-bin-sh-not-usr-bin-sh.patch delete mode 100644 poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1_git.bb create mode 100644 poky/meta/recipes-devtools/libmodulemd/libmodulemd/0001-modulemd-generate-the-manpage-only-if-the-feature-is.patch create mode 100644 poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch create mode 100644 poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb create mode 100644 poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-gitdb_2.0.6.bb create mode 100644 poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb delete mode 100644 poky/meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch delete mode 100644 poky/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch create mode 100644 poky/meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch delete mode 100644 poky/meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch delete mode 100644 poky/meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch delete mode 100644 poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch delete mode 100644 poky/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb create mode 100644 poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-14869-0001.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/aarch64/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/arm/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/armeb/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/i586/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/microblaze/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/microblazeel/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32eb/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32el/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64eb/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64el/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32eb/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32el/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/nios2/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/powerpc/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64le/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/x86-64/objarch.h delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript_9.50.bb create mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript_9.52.bb create mode 100644 poky/meta/recipes-extended/iputils/iputils/0001-iputils-Initialize-libgcrypt.patch create mode 100644 poky/meta/recipes-extended/logrotate/logrotate/0001-Update-the-manual.patch delete mode 100644 poky/meta/recipes-extended/logrotate/logrotate/update-the-manual.patch delete mode 100644 poky/meta/recipes-extended/logrotate/logrotate_3.15.1.bb create mode 100644 poky/meta/recipes-extended/logrotate/logrotate_3.16.0.bb delete mode 100644 poky/meta/recipes-extended/mc/files/0001-Add-option-to-control-configure-args.patch delete mode 100644 poky/meta/recipes-extended/mc/files/0001-Ticket-3629-configure.ac-drop-bundled-gettext.patch create mode 100644 poky/meta/recipes-extended/mc/files/0001-Ticket-4070-misc-Makefile.am-install-mc.lib-only-onc.patch delete mode 100644 poky/meta/recipes-extended/mc/mc_4.8.23.bb create mode 100644 poky/meta/recipes-extended/mc/mc_4.8.24.bb delete mode 100644 poky/meta/recipes-gnome/gcr/gcr_3.34.0.bb create mode 100644 poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb delete mode 100644 poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb create mode 100644 poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb delete mode 100644 poky/meta/recipes-gnome/libsecret/libsecret_0.20.1.bb create mode 100644 poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb delete mode 100644 poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.2.bb create mode 100644 poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.4.bb delete mode 100644 poky/meta/recipes-graphics/kmscube/kmscube/detect-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxcb/xcbincludedir.patch delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/xkeyboard-config/0001-fix-python3-support.patch delete mode 100644 poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.29.bb delete mode 100644 poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.13.bb create mode 100644 poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.bb delete mode 100644 poky/meta/recipes-sato/webkit/libwpe_1.4.0.1.bb create mode 100644 poky/meta/recipes-sato/webkit/libwpe_1.6.0.bb delete mode 100644 poky/meta/recipes-sato/webkit/webkitgtk/x32_support.patch delete mode 100644 poky/meta/recipes-sato/webkit/webkitgtk_2.26.4.bb create mode 100644 poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb delete mode 100644 poky/meta/recipes-sato/webkit/wpebackend-fdo_1.4.1.bb create mode 100644 poky/meta/recipes-sato/webkit/wpebackend-fdo_1.6.0.bb delete mode 100644 poky/meta/recipes-support/atk/at-spi2-core/0001-Fix-source-reproducibility.patch delete mode 100644 poky/meta/recipes-support/atk/at-spi2-core_2.34.0.bb create mode 100644 poky/meta/recipes-support/atk/at-spi2-core_2.36.0.bb delete mode 100644 poky/meta/recipes-support/atk/atk_2.34.1.bb create mode 100644 poky/meta/recipes-support/atk/atk_2.36.0.bb delete mode 100644 poky/meta/recipes-support/curl/curl_7.69.1.bb create mode 100644 poky/meta/recipes-support/curl/curl_7.70.0.bb delete mode 100644 poky/meta/recipes-support/diffoscope/diffoscope_136.bb create mode 100644 poky/meta/recipes-support/diffoscope/diffoscope_143.bb create mode 100644 poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch delete mode 100644 poky/meta/recipes-support/libevdev/libevdev_1.8.0.bb create mode 100644 poky/meta/recipes-support/libevdev/libevdev_1.9.0.bb delete mode 100644 poky/meta/recipes-support/ptest-runner/ptest-runner_2.3.2.bb create mode 100644 poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb create mode 100644 poky/meta/recipes-support/sqlite/files/CVE-2020-11655.patch create mode 100644 poky/meta/recipes-support/sqlite/files/CVE-2020-11656.patch delete mode 100644 poky/meta/recipes-support/vte/vte_0.58.3.bb create mode 100644 poky/meta/recipes-support/vte/vte_0.60.2.bb (limited to 'poky/meta/recipes-graphics') diff --git a/poky/bitbake/bin/bitdoc b/poky/bitbake/bin/bitdoc deleted file mode 100755 index 9bd02be69..000000000 --- a/poky/bitbake/bin/bitdoc +++ /dev/null @@ -1,519 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (C) 2005 Holger Hans Peter Freyther -# -# SPDX-License-Identifier: GPL-2.0-only -# - -import optparse, os, sys - -# bitbake -sys.path.append(os.path.join(os.path.dirname(os.path.dirname(__file__), 'lib')) -import bb -import bb.parse -from string import split, join - -__version__ = "0.0.2" - -class HTMLFormatter: - """ - Simple class to help to generate some sort of HTML files. It is - quite inferior solution compared to docbook, gtkdoc, doxygen but it - should work for now. - We've a global introduction site (index.html) and then one site for - the list of keys (alphabetical sorted) and one for the list of groups, - one site for each key with links to the relations and groups. - - index.html - all_keys.html - all_groups.html - groupNAME.html - keyNAME.html - """ - - def replace(self, text, *pairs): - """ - From pydoc... almost identical at least - """ - while pairs: - (a, b) = pairs[0] - text = join(split(text, a), b) - pairs = pairs[1:] - return text - def escape(self, text): - """ - Escape string to be conform HTML - """ - return self.replace(text, - ('&', '&'), - ('<', '<' ), - ('>', '>' ) ) - def createNavigator(self): - """ - Create the navgiator - """ - return """ - - - - - -""" - - def relatedKeys(self, item): - """ - Create HTML to link to foreign keys - """ - - if len(item.related()) == 0: - return "" - - txt = "

See also:
" - txts = [] - for it in item.related(): - txts.append("""%(it)s""" % vars() ) - - return txt + ",".join(txts) - - def groups(self, item): - """ - Create HTML to link to related groups - """ - - if len(item.groups()) == 0: - return "" - - - txt = "

See also:
" - txts = [] - for group in item.groups(): - txts.append( """%s """ % (group, group) ) - - return txt + ",".join(txts) - - - def createKeySite(self, item): - """ - Create a site for a key. It contains the header/navigator, a heading, - the description, links to related keys and to the groups. - """ - - return """ -Key %s - - -%s -

%s

- -
-

Synopsis

-

-%s -

-
- -
-

Related Keys

-

-%s -

-
- -
-

Groups

-

-%s -

-
- - - -""" % (item.name(), self.createNavigator(), item.name(), - self.escape(item.description()), self.relatedKeys(item), self.groups(item)) - - def createGroupsSite(self, doc): - """ - Create the Group Overview site - """ - - groups = "" - sorted_groups = sorted(doc.groups()) - for group in sorted_groups: - groups += """%s
""" % (group, group) - - return """ -Group overview - - -%s -

Available Groups

-%s - -""" % (self.createNavigator(), groups) - - def createIndex(self): - """ - Create the index file - """ - - return """ -Bitbake Documentation - - -%s -

Documentation Entrance

-All available groups
-All available keys
- -""" % self.createNavigator() - - def createKeysSite(self, doc): - """ - Create Overview of all avilable keys - """ - keys = "" - sorted_keys = sorted(doc.doc_keys()) - for key in sorted_keys: - keys += """%s
""" % (key, key) - - return """ -Key overview - - -%s -

Available Keys

-%s - -""" % (self.createNavigator(), keys) - - def createGroupSite(self, gr, items, _description = None): - """ - Create a site for a group: - Group the name of the group, items contain the name of the keys - inside this group - """ - groups = "" - description = "" - - # create a section with the group descriptions - if _description: - description += "

" % gr - description += _description - - items.sort(lambda x, y:cmp(x.name(), y.name())) - for group in items: - groups += """%s
""" % (group.name(), group.name()) - - return """ -Group %s - - -%s -%s -
-

Keys in Group %s

-
-%s
-
-
- -""" % (gr, self.createNavigator(), description, gr, groups) - - - - def createCSS(self): - """ - Create the CSS file - """ - return """.synopsis, .classsynopsis -{ - background: #eeeeee; - border: solid 1px #aaaaaa; - padding: 0.5em; -} -.programlisting -{ - background: #eeeeff; - border: solid 1px #aaaaff; - padding: 0.5em; -} -.variablelist -{ - padding: 4px; - margin-left: 3em; -} -.variablelist td:first-child -{ - vertical-align: top; -} -table.navigation -{ - background: #ffeeee; - border: solid 1px #ffaaaa; - margin-top: 0.5em; - margin-bottom: 0.5em; -} -.navigation a -{ - color: #770000; -} -.navigation a:visited -{ - color: #550000; -} -.navigation .title -{ - font-size: 200%; -} -div.refnamediv -{ - margin-top: 2em; -} -div.gallery-float -{ - float: left; - padding: 10px; -} -div.gallery-float img -{ - border-style: none; -} -div.gallery-spacer -{ - clear: both; -} -a -{ - text-decoration: none; -} -a:hover -{ - text-decoration: underline; - color: #FF0000; -} -""" - - - -class DocumentationItem: - """ - A class to hold information about a configuration - item. It contains the key name, description, a list of related names, - and the group this item is contained in. - """ - - def __init__(self): - self._groups = [] - self._related = [] - self._name = "" - self._desc = "" - - def groups(self): - return self._groups - - def name(self): - return self._name - - def description(self): - return self._desc - - def related(self): - return self._related - - def setName(self, name): - self._name = name - - def setDescription(self, desc): - self._desc = desc - - def addGroup(self, group): - self._groups.append(group) - - def addRelation(self, relation): - self._related.append(relation) - - def sort(self): - self._related.sort() - self._groups.sort() - - -class Documentation: - """ - Holds the documentation... with mappings from key to items... - """ - - def __init__(self): - self.__keys = {} - self.__groups = {} - - def insert_doc_item(self, item): - """ - Insert the Doc Item into the internal list - of representation - """ - item.sort() - self.__keys[item.name()] = item - - for group in item.groups(): - if not group in self.__groups: - self.__groups[group] = [] - self.__groups[group].append(item) - self.__groups[group].sort() - - - def doc_item(self, key): - """ - Return the DocumentationInstance describing the key - """ - try: - return self.__keys[key] - except KeyError: - return None - - def doc_keys(self): - """ - Return the documented KEYS (names) - """ - return self.__keys.keys() - - def groups(self): - """ - Return the names of available groups - """ - return self.__groups.keys() - - def group_content(self, group_name): - """ - Return a list of keys/names that are in a specefic - group or the empty list - """ - try: - return self.__groups[group_name] - except KeyError: - return [] - - -def parse_cmdline(args): - """ - Parse the CMD line and return the result as a n-tuple - """ - - parser = optparse.OptionParser( version = "Bitbake Documentation Tool Core version %s, %%prog version %s" % (bb.__version__, __version__)) - usage = """%prog [options] - -Create a set of html pages (documentation) for a bitbake.conf.... -""" - - # Add the needed options - parser.add_option( "-c", "--config", help = "Use the specified configuration file as source", - action = "store", dest = "config", default = os.path.join("conf", "documentation.conf") ) - - parser.add_option( "-o", "--output", help = "Output directory for html files", - action = "store", dest = "output", default = "html/" ) - - parser.add_option( "-D", "--debug", help = "Increase the debug level", - action = "count", dest = "debug", default = 0 ) - - parser.add_option( "-v", "--verbose", help = "output more chit-char to the terminal", - action = "store_true", dest = "verbose", default = False ) - - options, args = parser.parse_args( sys.argv ) - - bb.msg.init_msgconfig(options.verbose, options.debug) - - return options.config, options.output - -def main(): - """ - The main Method - """ - - (config_file, output_dir) = parse_cmdline( sys.argv ) - - # right to let us load the file now - try: - documentation = bb.parse.handle( config_file, bb.data.init() ) - except IOError: - bb.fatal( "Unable to open %s" % config_file ) - except bb.parse.ParseError: - bb.fatal( "Unable to parse %s" % config_file ) - - if isinstance(documentation, dict): - documentation = documentation[""] - - # Assuming we've the file loaded now, we will initialize the 'tree' - doc = Documentation() - - # defined states - state_begin = 0 - state_see = 1 - state_group = 2 - - for key in bb.data.keys(documentation): - data = documentation.getVarFlag(key, "doc", False) - if not data: - continue - - # The Documentation now starts - doc_ins = DocumentationItem() - doc_ins.setName(key) - - - tokens = data.split(' ') - state = state_begin - string= "" - for token in tokens: - token = token.strip(',') - - if not state == state_see and token == "@see": - state = state_see - continue - elif not state == state_group and token == "@group": - state = state_group - continue - - if state == state_begin: - string += " %s" % token - elif state == state_see: - doc_ins.addRelation(token) - elif state == state_group: - doc_ins.addGroup(token) - - # set the description - doc_ins.setDescription(string) - doc.insert_doc_item(doc_ins) - - # let us create the HTML now - bb.utils.mkdirhier(output_dir) - os.chdir(output_dir) - - # Let us create the sites now. We do it in the following order - # Start with the index.html. It will point to sites explaining all - # keys and groups - html_slave = HTMLFormatter() - - f = file('style.css', 'w') - print >> f, html_slave.createCSS() - - f = file('index.html', 'w') - print >> f, html_slave.createIndex() - - f = file('all_groups.html', 'w') - print >> f, html_slave.createGroupsSite(doc) - - f = file('all_keys.html', 'w') - print >> f, html_slave.createKeysSite(doc) - - # now for each group create the site - for group in doc.groups(): - f = file('group%s.html' % group, 'w') - print >> f, html_slave.createGroupSite(group, doc.group_content(group)) - - # now for the keys - for key in doc.doc_keys(): - f = file('key%s.html' % doc.doc_item(key).name(), 'w') - print >> f, html_slave.createKeySite(doc.doc_item(key)) - - -if __name__ == "__main__": - main() diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.xml index f5526c053..995c2fa7b 100644 --- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.xml +++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.xml @@ -694,14 +694,9 @@ - When you generate a dependency graph, BitBake writes three files + When you generate a dependency graph, BitBake writes two files to the current working directory: - - recipe-depends.dot: - Shows dependencies between recipes (i.e. a collapsed version of - task-depends.dot). - task-depends.dot: Shows dependencies between tasks. diff --git a/poky/bitbake/lib/bs4/testing.py b/poky/bitbake/lib/bs4/testing.py index 953bca8e9..6584ecf30 100644 --- a/poky/bitbake/lib/bs4/testing.py +++ b/poky/bitbake/lib/bs4/testing.py @@ -15,7 +15,7 @@ from bs4.element import ( SoupStrainer, ) -from bs4.builder import HTMLParserTreeBuilder +from bs4.builder._htmlparser import HTMLParserTreeBuilder default_builder = HTMLParserTreeBuilder @@ -56,7 +56,7 @@ class SoupTest(unittest.TestCase): self.assertEqual(earlier, e.previous_element) earlier = e -class HTMLTreeBuilderSmokeTest(object): +class HTMLTreeBuilderSmokeTest(SoupTest): """A basic test of a treebuilder's competence. @@ -541,7 +541,7 @@ Hello, world! data.a['foo'] = 'bar' self.assertEqual('text', data.a.decode()) -class XMLTreeBuilderSmokeTest(object): +class XMLTreeBuilderSmokeTest(SoupTest): def test_pickle_and_unpickle_identity(self): # Pickling a tree, then unpickling it, yields a tree identical diff --git a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py index a4dbcaa76..2fbd7be3d 100644 --- a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py +++ b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py @@ -68,7 +68,7 @@ class Command(BaseCommand): (what, pec)) sys.stdout.flush() - if int(pec) is 100: + if int(pec) == 100: sys.stdout.write("\n") sys.stdout.flush() diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py b/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py index 7d629fb37..5c41c5b2f 100644 --- a/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py +++ b/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py @@ -17,46 +17,46 @@ class Command(BaseCommand): help = "Test the response time for all toaster urls" def handle(self, *args, **options): - root_urlconf = __import__(settings.ROOT_URLCONF) - patterns = root_urlconf.urls.urlpatterns - global full_url - for pat in patterns: - if pat.__class__.__name__ == 'RegexURLResolver': - url_root_res = str(pat).split('^')[1].replace('>', '') - if 'gui' in url_root_res: - for url_patt in pat.url_patterns: - full_url = self.get_full_url(url_patt, url_root_res) - info = self.url_info(full_url) - status_code = info[0] - load_time = info[1] - print('Trying \'' + full_url + '\', ' + str(status_code) + ', ' + str(load_time)) + root_urlconf = __import__(settings.ROOT_URLCONF) + patterns = root_urlconf.urls.urlpatterns + global full_url + for pat in patterns: + if pat.__class__.__name__ == 'RegexURLResolver': + url_root_res = str(pat).split('^')[1].replace('>', '') + if 'gui' in url_root_res: + for url_patt in pat.url_patterns: + full_url = self.get_full_url(url_patt, url_root_res) + info = self.url_info(full_url) + status_code = info[0] + load_time = info[1] + print('Trying \'' + full_url + '\', ' + str(status_code) + ', ' + str(load_time)) def get_full_url(self, url_patt, url_root_res): - full_url = str(url_patt).split('^')[1].replace('$>', '').replace('(?P(?:/[', '/bin/busybox').replace('.*', '') - full_url = str(url_root_res + full_url) - full_url = re.sub('\(\?P<.*?>\\\d\+\)', '1', full_url) - full_url = 'http://localhost:8000/' + full_url - return full_url + full_url = str(url_patt).split('^')[1].replace('$>', '').replace('(?P(?:/[', '/bin/busybox').replace('.*', '') + full_url = str(url_root_res + full_url) + full_url = re.sub('\(\?P<.*?>\\\d\+\)', '1', full_url) + full_url = 'http://localhost:8000/' + full_url + return full_url def url_info(self, full_url): - client = Client() - info = [] - try: - resp = client.get(full_url, follow = True) - except Exception as e_status_code: + client = Client() + info = [] + try: + resp = client.get(full_url, follow = True) + except Exception as e_status_code: self.error('Url: %s, error: %s' % (full_url, e_status_code)) resp = type('object', (), {'status_code':0, 'content': str(e_status_code)}) - status_code = resp.status_code - info.append(status_code) - try: - req = requests.get(full_url) - except Exception as e_load_time: + status_code = resp.status_code + info.append(status_code) + try: + req = requests.get(full_url) + except Exception as e_load_time: self.error('Url: %s, error: %s' % (full_url, e_load_time)) - load_time = req.elapsed - info.append(load_time) - return info + load_time = req.elapsed + info.append(load_time) + return info def error(self, *args): - for arg in args: - print(arg, end=' ', file=sys.stderr) - print(file=sys.stderr) + for arg in args: + print(arg, end=' ', file=sys.stderr) + print(file=sys.stderr) diff --git a/poky/documentation/ref-manual/migration.xml b/poky/documentation/ref-manual/migration.xml index 9422b5a27..affc8b90a 100644 --- a/poky/documentation/ref-manual/migration.xml +++ b/poky/documentation/ref-manual/migration.xml @@ -875,8 +875,7 @@ not work. This change is intended to catch those kinds of situations. Valid IMAGE_FEATURES are drawn from - PACKAGE_GROUP - definitions, + PACKAGE_GROUP definitions, COMPLEMENTARY_GLOB and a new "validitems" varflag on IMAGE_FEATURES. @@ -1404,8 +1403,7 @@ The - PACKAGE_GROUP - variable has been renamed to + PACKAGE_GROUP variable has been renamed to FEATURE_PACKAGES to more accurately reflect its purpose. You can still use PACKAGE_GROUP but diff --git a/poky/documentation/ref-manual/ref-system-requirements.xml b/poky/documentation/ref-manual/ref-system-requirements.xml index 7d3c71998..7a11ec2cf 100644 --- a/poky/documentation/ref-manual/ref-system-requirements.xml +++ b/poky/documentation/ref-manual/ref-system-requirements.xml @@ -503,7 +503,7 @@ or run the BitBake command to build the extended tarball: - $ bitbake buildtools-extended-tarball + $ bitbake buildtools-extended-tarball The @@ -535,7 +535,7 @@ Here is an example for the extended installer: - $ sh ~/Downloads/x86_64-buildtools-extended-nativesdk-standalone-&DISTRO;.sh + $ sh ~/Downloads/x86_64-buildtools-extended-nativesdk-standalone-&DISTRO;.sh During execution, a prompt appears that allows you to choose the installation directory. diff --git a/poky/documentation/ref-manual/ref-variables.xml b/poky/documentation/ref-manual/ref-variables.xml index b44fdcb73..9ebe72cbd 100644 --- a/poky/documentation/ref-manual/ref-variables.xml +++ b/poky/documentation/ref-manual/ref-variables.xml @@ -6638,7 +6638,6 @@ cpio.lzma cpio.xz cramfs - elf ext2 ext2.bz2 ext2.gz @@ -6662,6 +6661,7 @@ tar.gz tar.lz4 tar.xz + tar.zst ubi ubifs wic @@ -10292,28 +10292,6 @@ - PACKAGE_GROUP - - PACKAGE_GROUP[doc] = "Defines one or more packages to include in an image when a specific item is included in IMAGE_FEATURES." - - - - - The PACKAGE_GROUP variable has been - renamed to - FEATURE_PACKAGES. - See the variable description for - FEATURE_PACKAGES for information. - - - - If if you use the PACKAGE_GROUP - variable, the OpenEmbedded build system issues a warning - message. - - - - PACKAGE_INSTALL PACKAGE_INSTALL[doc] = "List of the packages to be installed into the image. The variable is generally not user-defined and uses IMAGE_INSTALL as part of the list." @@ -14033,7 +14011,7 @@ When pointing to sstate build artifacts on another machine that uses a different GCC version for native builds, - you must configure SSTATE_MIRROR + you must configure SSTATE_MIRRORS with a regular expression that maps local search paths to server paths. The paths need to take into account diff --git a/poky/meta/classes/sanity.bbclass b/poky/meta/classes/sanity.bbclass index 9e8710173..292c5591d 100644 --- a/poky/meta/classes/sanity.bbclass +++ b/poky/meta/classes/sanity.bbclass @@ -527,7 +527,7 @@ def check_wsl(d): bb.warn("You are running bitbake under WSLv2, this works properly but you should optimize your VHDX file eventually to avoid running out of storage space") return None -# Require at least gcc version 5.0. +# Require at least gcc version 6.0. # # This can be fixed on CentOS-7 with devtoolset-6+ # https://www.softwarecollections.org/en/scls/rhscl/devtoolset-6/ @@ -541,8 +541,8 @@ def check_gcc_version(sanity_data): build_cc, version = oe.utils.get_host_compiler_version(sanity_data) if build_cc.strip() == "gcc": - if LooseVersion(version) < LooseVersion("5.0"): - return "Your version of gcc is older than 5.0 and will break builds. Please install a newer version of gcc (you could use the project's buildtools-extended-tarball or use scripts/install-buildtools).\n" + if LooseVersion(version) < LooseVersion("6.0"): + return "Your version of gcc is older than 6.0 and will break builds. Please install a newer version of gcc (you could use the project's buildtools-extended-tarball or use scripts/install-buildtools).\n" return None # Tar version 1.24 and onwards handle overwriting symlinks correctly diff --git a/poky/meta/classes/staging.bbclass b/poky/meta/classes/staging.bbclass index 5b04f88b2..de3a19815 100644 --- a/poky/meta/classes/staging.bbclass +++ b/poky/meta/classes/staging.bbclass @@ -93,6 +93,7 @@ SYSROOT_PREPROCESS_FUNCS ?= "" SYSROOT_DESTDIR = "${WORKDIR}/sysroot-destdir" python do_populate_sysroot () { + # SYSROOT 'version' 2 bb.build.exec_func("sysroot_stage_all", d) bb.build.exec_func("sysroot_strip", d) for f in (d.getVar('SYSROOT_PREPROCESS_FUNCS') or '').split(): diff --git a/poky/meta/classes/utils.bbclass b/poky/meta/classes/utils.bbclass index cd3d05709..120bcc64a 100644 --- a/poky/meta/classes/utils.bbclass +++ b/poky/meta/classes/utils.bbclass @@ -1,22 +1,3 @@ -def machine_paths(d): - """List any existing machine specific filespath directories""" - machine = d.getVar("MACHINE") - filespathpkg = d.getVar("FILESPATHPKG").split(":") - for basepath in d.getVar("FILESPATHBASE").split(":"): - for pkgpath in filespathpkg: - machinepath = os.path.join(basepath, pkgpath, machine) - if os.path.isdir(machinepath): - yield machinepath - -def is_machine_specific(d): - """Determine whether the current recipe is machine specific""" - machinepaths = set(machine_paths(d)) - srcuri = d.getVar("SRC_URI").split() - for url in srcuri: - fetcher = bb.fetch2.Fetch([srcuri], d) - if url.startswith("file://"): - if any(fetcher.localpath(url).startswith(mp + "/") for mp in machinepaths): - return True oe_soinstall() { # Purpose: Install shared library file and diff --git a/poky/meta/conf/abi_version.conf b/poky/meta/conf/abi_version.conf index 2bdc55695..e04343b47 100644 --- a/poky/meta/conf/abi_version.conf +++ b/poky/meta/conf/abi_version.conf @@ -12,4 +12,4 @@ OELAYOUT_ABI = "12" # 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 = "1" +HASHEQUIV_HASH_VERSION = "3" diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc index 1508ad1f1..340cda330 100644 --- a/poky/meta/conf/distro/include/maintainers.inc +++ b/poky/meta/conf/distro/include/maintainers.inc @@ -349,7 +349,7 @@ RECIPE_MAINTAINER_pn-libmatchbox = "Ross Burton " RECIPE_MAINTAINER_pn-libmnl = "Khem Raj " RECIPE_MAINTAINER_pn-libmpc = "Khem Raj " RECIPE_MAINTAINER_pn-libmodule-build-perl = "Tim Orling " -RECIPE_MAINTAINER_pn-libmodulemd-v1 = "Alexander Kanavin " +RECIPE_MAINTAINER_pn-libmodulemd = "Alexander Kanavin " RECIPE_MAINTAINER_pn-libnewt = "Hongxu Jia " RECIPE_MAINTAINER_pn-libnl = "Alexander Kanavin " RECIPE_MAINTAINER_pn-libnotify = "Anuj Mittal " @@ -576,6 +576,7 @@ RECIPE_MAINTAINER_pn-python3 = "Oleksandr Kravchuk -Date: Thu, 23 May 2019 07:55:25 +0100 -Subject: [PATCH] gweb: fix segfault with musl v1.1.21 - -In musl > v1.1.21 freeaddrinfo() implementation changed and -was causing a segmentation fault on recent Yocto using musl. - -See this commit: - - https://git.musl-libc.org/cgit/musl/commit/src/network/freeaddrinfo.c?id=d1395c43c019aec6b855cf3c656bf47c8a719e7f - -Upstream-Status: Submitted ---- - gweb/gweb.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/gweb/gweb.c b/gweb/gweb.c -index 393afe0a..12fcb1d8 100644 ---- a/gweb/gweb.c -+++ b/gweb/gweb.c -@@ -1274,7 +1274,8 @@ static bool is_ip_address(const char *host) - addr = NULL; - - result = getaddrinfo(host, NULL, &hints, &addr); -- freeaddrinfo(addr); -+ if(!result) -+ freeaddrinfo(addr); - - return result == 0; - } --- -2.19.1 - diff --git a/poky/meta/recipes-connectivity/connman/connman/0002-resolve-musl-does-not-implement-res_ninit.patch b/poky/meta/recipes-connectivity/connman/connman/0002-resolve-musl-does-not-implement-res_ninit.patch index 639ccfa2a..942b9c97b 100644 --- a/poky/meta/recipes-connectivity/connman/connman/0002-resolve-musl-does-not-implement-res_ninit.patch +++ b/poky/meta/recipes-connectivity/connman/connman/0002-resolve-musl-does-not-implement-res_ninit.patch @@ -1,7 +1,7 @@ -From 10b0d16d04b811b1ccd1f9b0cfe757bce8d876a1 Mon Sep 17 00:00:00 2001 +From c7734e1547db967eccf242fe4b9e8a30b9ff141c Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Mon, 6 Apr 2015 23:02:21 -0700 -Subject: [PATCH 2/3] resolve: musl does not implement res_ninit +Subject: [PATCH] resolve: musl does not implement res_ninit ported from http://git.alpinelinux.org/cgit/aports/plain/testing/connman/libresolv.patch @@ -9,12 +9,13 @@ http://git.alpinelinux.org/cgit/aports/plain/testing/connman/libresolv.patch Upstream-Status: Pending Signed-off-by: Khem Raj + --- - gweb/gresolv.c | 33 ++++++++++++--------------------- - 1 file changed, 12 insertions(+), 21 deletions(-) + gweb/gresolv.c | 34 +++++++++++++--------------------- + 1 file changed, 13 insertions(+), 21 deletions(-) diff --git a/gweb/gresolv.c b/gweb/gresolv.c -index 5cf7a9a..3ad8e70 100644 +index 38a554e..a9e8740 100644 --- a/gweb/gresolv.c +++ b/gweb/gresolv.c @@ -36,6 +36,7 @@ @@ -25,7 +26,7 @@ index 5cf7a9a..3ad8e70 100644 #include "gresolv.h" -@@ -875,8 +875,6 @@ GResolv *g_resolv_new(int index) +@@ -877,8 +878,6 @@ GResolv *g_resolv_new(int index) resolv->index = index; resolv->nameserver_list = NULL; @@ -34,7 +35,7 @@ index 5cf7a9a..3ad8e70 100644 return resolv; } -@@ -916,8 +914,6 @@ void g_resolv_unref(GResolv *resolv) +@@ -918,8 +917,6 @@ void g_resolv_unref(GResolv *resolv) flush_nameservers(resolv); @@ -43,7 +44,7 @@ index 5cf7a9a..3ad8e70 100644 g_free(resolv); } -@@ -1020,24 +1016,19 @@ guint g_resolv_lookup_hostname(GResolv *resolv, const char *hostname, +@@ -1022,24 +1019,19 @@ guint g_resolv_lookup_hostname(GResolv *resolv, const char *hostname, debug(resolv, "hostname %s", hostname); if (!resolv->nameserver_list) { @@ -80,6 +81,3 @@ index 5cf7a9a..3ad8e70 100644 } if (!resolv->nameserver_list) --- -2.5.1 - diff --git a/poky/meta/recipes-connectivity/connman/connman_1.37.bb b/poky/meta/recipes-connectivity/connman/connman_1.37.bb deleted file mode 100644 index 00852bf0d..000000000 --- a/poky/meta/recipes-connectivity/connman/connman_1.37.bb +++ /dev/null @@ -1,17 +0,0 @@ -require connman.inc - -SRC_URI = "${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \ - file://0001-plugin.h-Change-visibility-to-default-for-debug-symb.patch \ - file://0001-connman.service-stop-systemd-resolved-when-we-use-co.patch \ - file://0001-gweb-fix-segfault-with-musl-v1.1.21.patch \ - file://connman \ - file://no-version-scripts.patch \ -" - -SRC_URI_append_libc-musl = " file://0002-resolve-musl-does-not-implement-res_ninit.patch" - -SRC_URI[md5sum] = "75012084f14fb63a84b116e66c6e94fb" -SRC_URI[sha256sum] = "6ce29b3eb0bb16a7387bc609c39455fd13064bdcde5a4d185fab3a0c71946e16" - -RRECOMMENDS_${PN} = "connman-conf" -RCONFLICTS_${PN} = "networkmanager" diff --git a/poky/meta/recipes-connectivity/connman/connman_1.38.bb b/poky/meta/recipes-connectivity/connman/connman_1.38.bb new file mode 100644 index 000000000..027c41e9a --- /dev/null +++ b/poky/meta/recipes-connectivity/connman/connman_1.38.bb @@ -0,0 +1,16 @@ +require connman.inc + +SRC_URI = "${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \ + file://0001-plugin.h-Change-visibility-to-default-for-debug-symb.patch \ + file://0001-connman.service-stop-systemd-resolved-when-we-use-co.patch \ + file://connman \ + file://no-version-scripts.patch \ + " + +SRC_URI_append_libc-musl = " file://0002-resolve-musl-does-not-implement-res_ninit.patch" + +SRC_URI[md5sum] = "1ed8745354c7254bdfd4def54833ee94" +SRC_URI[sha256sum] = "cb30aca97c2f79ccaed8802aa2909ac5100a3969de74c0af8a9d73b85fc4932b" + +RRECOMMENDS_${PN} = "connman-conf" +RCONFLICTS_${PN} = "networkmanager" diff --git a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb deleted file mode 100644 index 3fa2b41fb..000000000 --- a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1f.bb +++ /dev/null @@ -1,211 +0,0 @@ -SUMMARY = "Secure Socket Layer" -DESCRIPTION = "Secure Socket Layer (SSL) binary and related cryptographic tools." -HOMEPAGE = "http://www.openssl.org/" -BUGTRACKER = "http://www.openssl.org/news/vulnerabilities.html" -SECTION = "libs/network" - -# "openssl" here actually means both OpenSSL and SSLeay licenses apply -# (see meta/files/common-licenses/OpenSSL to which "openssl" is SPDXLICENSEMAPped) -LICENSE = "openssl" -LIC_FILES_CHKSUM = "file://LICENSE;md5=d343e62fc9c833710bbbed25f27364c8" - -DEPENDS = "hostperl-runtime-native" - -SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \ - file://run-ptest \ - file://0001-skip-test_symbol_presence.patch \ - file://0001-buildinfo-strip-sysroot-and-debug-prefix-map-from-co.patch \ - file://afalg.patch \ - file://reproducible.patch \ - " - -SRC_URI_append_class-nativesdk = " \ - file://environment.d-openssl.sh \ - " - -SRC_URI[sha256sum] = "186c6bfe6ecfba7a5b48c47f8a1673d0f3b0e5ba2e25602dd23b629975da3f35" - -inherit lib_package multilib_header multilib_script ptest -MULTILIB_SCRIPTS = "${PN}-bin:${bindir}/c_rehash" - -PACKAGECONFIG ?= "" -PACKAGECONFIG_class-native = "" -PACKAGECONFIG_class-nativesdk = "" - -PACKAGECONFIG[cryptodev-linux] = "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux,,cryptodev-module" - -B = "${WORKDIR}/build" -do_configure[cleandirs] = "${B}" - -#| ./libcrypto.so: undefined reference to `getcontext' -#| ./libcrypto.so: undefined reference to `setcontext' -#| ./libcrypto.so: undefined reference to `makecontext' -EXTRA_OECONF_append_libc-musl = " no-async" -EXTRA_OECONF_append_libc-musl_powerpc64 = " no-asm" - -# adding devrandom prevents openssl from using getrandom() which is not available on older glibc versions -# (native versions can be built with newer glibc, but then relocated onto a system with older glibc) -EXTRA_OECONF_class-native = "--with-rand-seed=os,devrandom" -EXTRA_OECONF_class-nativesdk = "--with-rand-seed=os,devrandom" - -# Relying on hardcoded built-in paths causes openssl-native to not be relocateable from sstate. -CFLAGS_append_class-native = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin" -CFLAGS_append_class-nativesdk = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin" - -do_configure () { - os=${HOST_OS} - case $os in - linux-gnueabi |\ - linux-gnuspe |\ - linux-musleabi |\ - linux-muslspe |\ - linux-musl ) - os=linux - ;; - *) - ;; - esac - target="$os-${HOST_ARCH}" - case $target in - linux-arm*) - target=linux-armv4 - ;; - linux-aarch64*) - target=linux-aarch64 - ;; - linux-i?86 | linux-viac3) - target=linux-x86 - ;; - linux-gnux32-x86_64 | linux-muslx32-x86_64 ) - target=linux-x32 - ;; - linux-gnu64-x86_64) - target=linux-x86_64 - ;; - linux-mips | linux-mipsel) - # specifying TARGET_CC_ARCH prevents openssl from (incorrectly) adding target architecture flags - target="linux-mips32 ${TARGET_CC_ARCH}" - ;; - linux-gnun32-mips*) - target=linux-mips64 - ;; - linux-*-mips64 | linux-mips64 | linux-*-mips64el | linux-mips64el) - target=linux64-mips64 - ;; - linux-microblaze* | linux-nios2* | linux-sh3 | linux-sh4 | linux-arc*) - target=linux-generic32 - ;; - linux-powerpc) - target=linux-ppc - ;; - linux-powerpc64) - target=linux-ppc64 - ;; - linux-powerpc64le) - target=linux-ppc64le - ;; - linux-riscv32) - target=linux-generic32 - ;; - linux-riscv64) - target=linux-generic64 - ;; - linux-sparc | linux-supersparc) - target=linux-sparcv9 - ;; - esac - - useprefix=${prefix} - if [ "x$useprefix" = "x" ]; then - useprefix=/ - fi - # WARNING: do not set compiler/linker flags (-I/-D etc.) in EXTRA_OECONF, as they will fully replace the - # environment variables set by bitbake. Adjust the environment variables instead. - HASHBANGPERL="/usr/bin/env perl" PERL=perl PERL5LIB="${S}/external/perl/Text-Template-1.46/lib/" \ - perl ${S}/Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} --prefix=$useprefix --openssldir=${libdir}/ssl-1.1 --libdir=${libdir} $target - perl ${B}/configdata.pm --dump -} - -do_install () { - oe_runmake DESTDIR="${D}" MANDIR="${mandir}" MANSUFFIX=ssl install - - oe_multilib_header openssl/opensslconf.h - - # Create SSL structure for packages such as ca-certificates which - # contain hard-coded paths to /etc/ssl. Debian does the same. - install -d ${D}${sysconfdir}/ssl - mv ${D}${libdir}/ssl-1.1/certs \ - ${D}${libdir}/ssl-1.1/private \ - ${D}${libdir}/ssl-1.1/openssl.cnf \ - ${D}${sysconfdir}/ssl/ - - # Although absolute symlinks would be OK for the target, they become - # invalid if native or nativesdk are relocated from sstate. - ln -sf ${@oe.path.relative('${libdir}/ssl-1.1', '${sysconfdir}/ssl/certs')} ${D}${libdir}/ssl-1.1/certs - ln -sf ${@oe.path.relative('${libdir}/ssl-1.1', '${sysconfdir}/ssl/private')} ${D}${libdir}/ssl-1.1/private - ln -sf ${@oe.path.relative('${libdir}/ssl-1.1', '${sysconfdir}/ssl/openssl.cnf')} ${D}${libdir}/ssl-1.1/openssl.cnf -} - -do_install_append_class-native () { - create_wrapper ${D}${bindir}/openssl \ - OPENSSL_CONF=${libdir}/ssl-1.1/openssl.cnf \ - SSL_CERT_DIR=${libdir}/ssl-1.1/certs \ - SSL_CERT_FILE=${libdir}/ssl-1.1/cert.pem \ - OPENSSL_ENGINES=${libdir}/engines-1.1 -} - -do_install_append_class-nativesdk () { - mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d - install -m 644 ${WORKDIR}/environment.d-openssl.sh ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh - sed 's|/usr/lib/ssl/|/usr/lib/ssl-1.1/|g' -i ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh -} - -PTEST_BUILD_HOST_FILES += "configdata.pm" -PTEST_BUILD_HOST_PATTERN = "perl_version =" -do_install_ptest () { - # Prune the build tree - rm -f ${B}/fuzz/*.* ${B}/test/*.* - - cp ${S}/Configure ${B}/configdata.pm ${D}${PTEST_PATH} - cp -r ${S}/external ${B}/test ${S}/test ${B}/fuzz ${S}/util ${B}/util ${D}${PTEST_PATH} - - # For test_shlibload - ln -s ${libdir}/libcrypto.so.1.1 ${D}${PTEST_PATH}/ - ln -s ${libdir}/libssl.so.1.1 ${D}${PTEST_PATH}/ - - install -d ${D}${PTEST_PATH}/apps - ln -s ${bindir}/openssl ${D}${PTEST_PATH}/apps - install -m644 ${S}/apps/*.pem ${S}/apps/*.srl ${S}/apps/openssl.cnf ${D}${PTEST_PATH}/apps - install -m755 ${B}/apps/CA.pl ${D}${PTEST_PATH}/apps - - install -d ${D}${PTEST_PATH}/engines - install -m755 ${B}/engines/ossltest.so ${D}${PTEST_PATH}/engines -} - -# Add the openssl.cnf file to the openssl-conf package. Make the libcrypto -# package RRECOMMENDS on this package. This will enable the configuration -# file to be installed for both the openssl-bin package and the libcrypto -# package since the openssl-bin package depends on the libcrypto package. - -PACKAGES =+ "libcrypto libssl openssl-conf ${PN}-engines ${PN}-misc" - -FILES_libcrypto = "${libdir}/libcrypto${SOLIBS}" -FILES_libssl = "${libdir}/libssl${SOLIBS}" -FILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf" -FILES_${PN}-engines = "${libdir}/engines-1.1" -FILES_${PN}-misc = "${libdir}/ssl-1.1/misc" -FILES_${PN} =+ "${libdir}/ssl-1.1/*" -FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/openssl.sh" - -CONFFILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf" - -RRECOMMENDS_libcrypto += "openssl-conf" -RDEPENDS_${PN}-ptest += "openssl-bin perl perl-modules bash" - -BBCLASSEXTEND = "native nativesdk" - -CVE_PRODUCT = "openssl:openssl" - -# Only affects OpenSSL >= 1.1.1 in combination with Apache < 2.4.37 -# Apache in meta-webserver is already recent enough -CVE_CHECK_WHITELIST += "CVE-2019-0190" diff --git a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1g.bb b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1g.bb new file mode 100644 index 000000000..66fa8f7d0 --- /dev/null +++ b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1g.bb @@ -0,0 +1,211 @@ +SUMMARY = "Secure Socket Layer" +DESCRIPTION = "Secure Socket Layer (SSL) binary and related cryptographic tools." +HOMEPAGE = "http://www.openssl.org/" +BUGTRACKER = "http://www.openssl.org/news/vulnerabilities.html" +SECTION = "libs/network" + +# "openssl" here actually means both OpenSSL and SSLeay licenses apply +# (see meta/files/common-licenses/OpenSSL to which "openssl" is SPDXLICENSEMAPped) +LICENSE = "openssl" +LIC_FILES_CHKSUM = "file://LICENSE;md5=d343e62fc9c833710bbbed25f27364c8" + +DEPENDS = "hostperl-runtime-native" + +SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \ + file://run-ptest \ + file://0001-skip-test_symbol_presence.patch \ + file://0001-buildinfo-strip-sysroot-and-debug-prefix-map-from-co.patch \ + file://afalg.patch \ + file://reproducible.patch \ + " + +SRC_URI_append_class-nativesdk = " \ + file://environment.d-openssl.sh \ + " + +SRC_URI[sha256sum] = "ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46" + +inherit lib_package multilib_header multilib_script ptest +MULTILIB_SCRIPTS = "${PN}-bin:${bindir}/c_rehash" + +PACKAGECONFIG ?= "" +PACKAGECONFIG_class-native = "" +PACKAGECONFIG_class-nativesdk = "" + +PACKAGECONFIG[cryptodev-linux] = "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux,,cryptodev-module" + +B = "${WORKDIR}/build" +do_configure[cleandirs] = "${B}" + +#| ./libcrypto.so: undefined reference to `getcontext' +#| ./libcrypto.so: undefined reference to `setcontext' +#| ./libcrypto.so: undefined reference to `makecontext' +EXTRA_OECONF_append_libc-musl = " no-async" +EXTRA_OECONF_append_libc-musl_powerpc64 = " no-asm" + +# adding devrandom prevents openssl from using getrandom() which is not available on older glibc versions +# (native versions can be built with newer glibc, but then relocated onto a system with older glibc) +EXTRA_OECONF_class-native = "--with-rand-seed=os,devrandom" +EXTRA_OECONF_class-nativesdk = "--with-rand-seed=os,devrandom" + +# Relying on hardcoded built-in paths causes openssl-native to not be relocateable from sstate. +CFLAGS_append_class-native = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin" +CFLAGS_append_class-nativesdk = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin" + +do_configure () { + os=${HOST_OS} + case $os in + linux-gnueabi |\ + linux-gnuspe |\ + linux-musleabi |\ + linux-muslspe |\ + linux-musl ) + os=linux + ;; + *) + ;; + esac + target="$os-${HOST_ARCH}" + case $target in + linux-arm*) + target=linux-armv4 + ;; + linux-aarch64*) + target=linux-aarch64 + ;; + linux-i?86 | linux-viac3) + target=linux-x86 + ;; + linux-gnux32-x86_64 | linux-muslx32-x86_64 ) + target=linux-x32 + ;; + linux-gnu64-x86_64) + target=linux-x86_64 + ;; + linux-mips | linux-mipsel) + # specifying TARGET_CC_ARCH prevents openssl from (incorrectly) adding target architecture flags + target="linux-mips32 ${TARGET_CC_ARCH}" + ;; + linux-gnun32-mips*) + target=linux-mips64 + ;; + linux-*-mips64 | linux-mips64 | linux-*-mips64el | linux-mips64el) + target=linux64-mips64 + ;; + linux-microblaze* | linux-nios2* | linux-sh3 | linux-sh4 | linux-arc*) + target=linux-generic32 + ;; + linux-powerpc) + target=linux-ppc + ;; + linux-powerpc64) + target=linux-ppc64 + ;; + linux-powerpc64le) + target=linux-ppc64le + ;; + linux-riscv32) + target=linux-generic32 + ;; + linux-riscv64) + target=linux-generic64 + ;; + linux-sparc | linux-supersparc) + target=linux-sparcv9 + ;; + esac + + useprefix=${prefix} + if [ "x$useprefix" = "x" ]; then + useprefix=/ + fi + # WARNING: do not set compiler/linker flags (-I/-D etc.) in EXTRA_OECONF, as they will fully replace the + # environment variables set by bitbake. Adjust the environment variables instead. + HASHBANGPERL="/usr/bin/env perl" PERL=perl PERL5LIB="${S}/external/perl/Text-Template-1.46/lib/" \ + perl ${S}/Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} --prefix=$useprefix --openssldir=${libdir}/ssl-1.1 --libdir=${libdir} $target + perl ${B}/configdata.pm --dump +} + +do_install () { + oe_runmake DESTDIR="${D}" MANDIR="${mandir}" MANSUFFIX=ssl install + + oe_multilib_header openssl/opensslconf.h + + # Create SSL structure for packages such as ca-certificates which + # contain hard-coded paths to /etc/ssl. Debian does the same. + install -d ${D}${sysconfdir}/ssl + mv ${D}${libdir}/ssl-1.1/certs \ + ${D}${libdir}/ssl-1.1/private \ + ${D}${libdir}/ssl-1.1/openssl.cnf \ + ${D}${sysconfdir}/ssl/ + + # Although absolute symlinks would be OK for the target, they become + # invalid if native or nativesdk are relocated from sstate. + ln -sf ${@oe.path.relative('${libdir}/ssl-1.1', '${sysconfdir}/ssl/certs')} ${D}${libdir}/ssl-1.1/certs + ln -sf ${@oe.path.relative('${libdir}/ssl-1.1', '${sysconfdir}/ssl/private')} ${D}${libdir}/ssl-1.1/private + ln -sf ${@oe.path.relative('${libdir}/ssl-1.1', '${sysconfdir}/ssl/openssl.cnf')} ${D}${libdir}/ssl-1.1/openssl.cnf +} + +do_install_append_class-native () { + create_wrapper ${D}${bindir}/openssl \ + OPENSSL_CONF=${libdir}/ssl-1.1/openssl.cnf \ + SSL_CERT_DIR=${libdir}/ssl-1.1/certs \ + SSL_CERT_FILE=${libdir}/ssl-1.1/cert.pem \ + OPENSSL_ENGINES=${libdir}/engines-1.1 +} + +do_install_append_class-nativesdk () { + mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d + install -m 644 ${WORKDIR}/environment.d-openssl.sh ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh + sed 's|/usr/lib/ssl/|/usr/lib/ssl-1.1/|g' -i ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh +} + +PTEST_BUILD_HOST_FILES += "configdata.pm" +PTEST_BUILD_HOST_PATTERN = "perl_version =" +do_install_ptest () { + # Prune the build tree + rm -f ${B}/fuzz/*.* ${B}/test/*.* + + cp ${S}/Configure ${B}/configdata.pm ${D}${PTEST_PATH} + cp -r ${S}/external ${B}/test ${S}/test ${B}/fuzz ${S}/util ${B}/util ${D}${PTEST_PATH} + + # For test_shlibload + ln -s ${libdir}/libcrypto.so.1.1 ${D}${PTEST_PATH}/ + ln -s ${libdir}/libssl.so.1.1 ${D}${PTEST_PATH}/ + + install -d ${D}${PTEST_PATH}/apps + ln -s ${bindir}/openssl ${D}${PTEST_PATH}/apps + install -m644 ${S}/apps/*.pem ${S}/apps/*.srl ${S}/apps/openssl.cnf ${D}${PTEST_PATH}/apps + install -m755 ${B}/apps/CA.pl ${D}${PTEST_PATH}/apps + + install -d ${D}${PTEST_PATH}/engines + install -m755 ${B}/engines/ossltest.so ${D}${PTEST_PATH}/engines +} + +# Add the openssl.cnf file to the openssl-conf package. Make the libcrypto +# package RRECOMMENDS on this package. This will enable the configuration +# file to be installed for both the openssl-bin package and the libcrypto +# package since the openssl-bin package depends on the libcrypto package. + +PACKAGES =+ "libcrypto libssl openssl-conf ${PN}-engines ${PN}-misc" + +FILES_libcrypto = "${libdir}/libcrypto${SOLIBS}" +FILES_libssl = "${libdir}/libssl${SOLIBS}" +FILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf" +FILES_${PN}-engines = "${libdir}/engines-1.1" +FILES_${PN}-misc = "${libdir}/ssl-1.1/misc" +FILES_${PN} =+ "${libdir}/ssl-1.1/*" +FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/openssl.sh" + +CONFFILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf" + +RRECOMMENDS_libcrypto += "openssl-conf" +RDEPENDS_${PN}-ptest += "openssl-bin perl perl-modules bash" + +BBCLASSEXTEND = "native nativesdk" + +CVE_PRODUCT = "openssl:openssl" + +# Only affects OpenSSL >= 1.1.1 in combination with Apache < 2.4.37 +# Apache in meta-webserver is already recent enough +CVE_CHECK_WHITELIST += "CVE-2019-0190" diff --git a/poky/meta/recipes-core/coreutils/coreutils/0001-ls-restore-8.31-behavior-on-removed-directories.patch b/poky/meta/recipes-core/coreutils/coreutils/0001-ls-restore-8.31-behavior-on-removed-directories.patch new file mode 100644 index 000000000..fa900e3a7 --- /dev/null +++ b/poky/meta/recipes-core/coreutils/coreutils/0001-ls-restore-8.31-behavior-on-removed-directories.patch @@ -0,0 +1,99 @@ +From 7c273e5c6041f8c70f73f5b280fbb8f27d9b5a36 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Thu, 5 Mar 2020 17:25:29 -0800 +Subject: [PATCH] ls: restore 8.31 behavior on removed directories + +* NEWS: Mention this. +* src/ls.c: Do not include +(print_dir): Don't worry about whether the directory is removed. +* tests/ls/removed-directory.sh: Adjust to match new (i.e., old) +behavior. + +Upstream-Status: Backport [https://github.com/coreutils/coreutils/commit/10fcb97bd728f09d4a027eddf8ad2900f0819b0a] +Signed-off-by: Alexander Kanavin +--- + src/ls.c | 22 ---------------------- + tests/ls/removed-directory.sh | 10 ++-------- + 2 files changed, 2 insertions(+), 30 deletions(-) + +diff --git a/src/ls.c b/src/ls.c +index 637fe7a..0111f49 100644 +--- a/src/ls.c ++++ b/src/ls.c +@@ -49,10 +49,6 @@ + # include + #endif + +-#ifdef __linux__ +-# include +-#endif +- + #include + #include + #include +@@ -2895,7 +2891,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg) + struct dirent *next; + uintmax_t total_blocks = 0; + static bool first = true; +- bool found_any_entries = false; + + errno = 0; + dirp = opendir (name); +@@ -2971,7 +2966,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg) + next = readdir (dirp); + if (next) + { +- found_any_entries = true; + if (! file_ignored (next->d_name)) + { + enum filetype type = unknown; +@@ -3017,22 +3011,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg) + if (errno != EOVERFLOW) + break; + } +-#ifdef __linux__ +- else if (! found_any_entries) +- { +- /* If readdir finds no directory entries at all, not even "." or +- "..", then double check that the directory exists. */ +- if (syscall (SYS_getdents, dirfd (dirp), NULL, 0) == -1 +- && errno != EINVAL) +- { +- /* We exclude EINVAL as that pertains to buffer handling, +- and we've passed NULL as the buffer for simplicity. +- ENOENT is returned if appropriate before buffer handling. */ +- file_failure (command_line_arg, _("reading directory %s"), name); +- } +- break; +- } +-#endif + else + break; + +diff --git a/tests/ls/removed-directory.sh b/tests/ls/removed-directory.sh +index e8c835d..fe8f929 100755 +--- a/tests/ls/removed-directory.sh ++++ b/tests/ls/removed-directory.sh +@@ -26,20 +26,14 @@ case $host_triplet in + *) skip_ 'non linux kernel' ;; + esac + +-LS_FAILURE=2 +- +-cat <<\EOF >exp-err || framework_failure_ +-ls: reading directory '.': No such file or directory +-EOF +- + cwd=$(pwd) + mkdir d || framework_failure_ + cd d || framework_failure_ + rmdir ../d || framework_failure_ + +-returns_ $LS_FAILURE ls >../out 2>../err || fail=1 ++ls >../out 2>../err || fail=1 + cd "$cwd" || framework_failure_ + compare /dev/null out || fail=1 +-compare exp-err err || fail=1 ++compare /dev/null err || fail=1 + + Exit $fail diff --git a/poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch b/poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch index 9d1ae55d4..173a57925 100644 --- a/poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch +++ b/poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch @@ -1,4 +1,4 @@ -From a1d360509fa3a4aff57eedcd528cc0347a87531d Mon Sep 17 00:00:00 2001 +From 7e20a7242ba2657f73311bbf5278093da67f0721 Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Tue, 16 Sep 2014 01:59:08 -0700 Subject: [PATCH] gnulib-comp.m4: selinux/flask.h should respect to @@ -13,20 +13,20 @@ compilation terminated. Upstream-Status: Pending Signed-off-by: Robert Yang + --- - m4/gnulib-comp.m4 | 2 +- + m4/gnulib-comp.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4 -index 472d3a0..5f09734 100644 +index dead90e..0abf0bd 100644 --- a/m4/gnulib-comp.m4 +++ b/m4/gnulib-comp.m4 -@@ -1730,11 +1730,11 @@ AC_DEFUN([gl_INIT], +@@ -1860,10 +1860,10 @@ AC_DEFUN([gl_INIT], AC_LIBOBJ([select]) fi gl_SYS_SELECT_MODULE_INDICATOR([select]) - AC_CHECK_HEADERS([selinux/flask.h]) - AC_LIBOBJ([selinux-at]) gl_HEADERS_SELINUX_SELINUX_H gl_HEADERS_SELINUX_CONTEXT_H if test "$with_selinux" != no && test "$ac_cv_header_selinux_selinux_h" = yes; then @@ -34,6 +34,3 @@ index 472d3a0..5f09734 100644 AC_LIBOBJ([getfilecon]) fi gl_SERVENT --- -1.7.9.5 - diff --git a/poky/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch b/poky/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch index 2ef8a548a..1a8a9b998 100644 --- a/poky/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch +++ b/poky/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch @@ -1,3 +1,8 @@ +From a26530083a29eeee910bfd606ecc621acecd547a Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 3 Aug 2011 14:12:30 -0700 +Subject: [PATCH] coreutils: Fix build on uclibc + We have problem using hardcoded directories like /usr/local here which will be checked for cross builds. This is a special case which is valid for AIX only. We do not have AIX as one of our supported @@ -8,11 +13,15 @@ Signed-off-by: Khem Raj Upstream-Status: Inappropriate [Upstream does care for AIX while we may not] -Index: coreutils-8.14/m4/getloadavg.m4 -=================================================================== ---- coreutils-8.14.orig/m4/getloadavg.m4 2011-09-19 08:09:24.000000000 -0700 -+++ coreutils-8.14/m4/getloadavg.m4 2011-10-19 21:42:00.385533357 -0700 -@@ -41,16 +41,6 @@ +--- + m4/getloadavg.m4 | 12 ------------ + 1 file changed, 12 deletions(-) + +diff --git a/m4/getloadavg.m4 b/m4/getloadavg.m4 +index 8e96965..63782a2 100644 +--- a/m4/getloadavg.m4 ++++ b/m4/getloadavg.m4 +@@ -41,18 +41,6 @@ AC_CHECK_FUNC([getloadavg], [], [LIBS="-lutil $LIBS" gl_func_getloadavg_done=yes]) fi @@ -20,7 +29,9 @@ Index: coreutils-8.14/m4/getloadavg.m4 - # There is a commonly available library for RS/6000 AIX. - # Since it is not a standard part of AIX, it might be installed locally. - gl_getloadavg_LIBS=$LIBS -- LIBS="-L/usr/local/lib $LIBS" +- if test $cross_compiling != yes; then +- LIBS="-L/usr/local/lib $LIBS" +- fi - AC_CHECK_LIB([getloadavg], [getloadavg], - [LIBS="-lgetloadavg $LIBS" gl_func_getloadavg_done=yes], - [LIBS=$gl_getloadavg_LIBS]) diff --git a/poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch b/poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch deleted file mode 100644 index 77770093c..000000000 --- a/poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 0562b040fa17f1722ba2b3096067b45d0582ca53 Mon Sep 17 00:00:00 2001 -From: Paul Eggert -Date: Mon, 11 Mar 2019 16:40:29 -0700 -Subject: [PATCH] strtod: fix clash with strtold - -Problem reported for RHEL 5 by Jesse Caldwell (Bug#34817). -* lib/strtod.c (compute_minus_zero, minus_zero): -Simplify by remving the macro / external variable, -and having just a function. User changed. This avoids -the need for an external variable that might clash. - -Upstream-Status: Backport [rhel5] - -Signed-off-by: Oleksandr Kravchuk - ---- - ChangeLog | 9 +++++++++ - lib/strtod.c | 11 +++++------ - 2 files changed, 14 insertions(+), 6 deletions(-) - -diff --git a/lib/strtod.c b/lib/strtod.c -index b9eaa51b4..69b1564e1 100644 ---- a/lib/strtod.c -+++ b/lib/strtod.c -@@ -294,16 +294,15 @@ parse_number (const char *nptr, - ICC 10.0 has a bug when optimizing the expression -zero. - The expression -MIN * MIN does not work when cross-compiling - to PowerPC on Mac OS X 10.5. */ --#if defined __hpux || defined __sgi || defined __ICC - static DOUBLE --compute_minus_zero (void) -+minus_zero (void) - { -+#if defined __hpux || defined __sgi || defined __ICC - return -MIN * MIN; --} --# define minus_zero compute_minus_zero () - #else --DOUBLE minus_zero = -0.0; -+ return -0.0; - #endif -+} - - /* Convert NPTR to a DOUBLE. If ENDPTR is not NULL, a pointer to the - character after the last one used in the number is put in *ENDPTR. */ -@@ -479,6 +478,6 @@ STRTOD (const char *nptr, char **endptr) - /* Special case -0.0, since at least ICC miscompiles negation. We - can't use copysign(), as that drags in -lm on some platforms. */ - if (!num && negative) -- return minus_zero; -+ return minus_zero (); - return negative ? -num : num; - } --- -2.20.1 - diff --git a/poky/meta/recipes-core/coreutils/coreutils_8.31.bb b/poky/meta/recipes-core/coreutils/coreutils_8.31.bb deleted file mode 100644 index 2b196b751..000000000 --- a/poky/meta/recipes-core/coreutils/coreutils_8.31.bb +++ /dev/null @@ -1,190 +0,0 @@ -SUMMARY = "The basic file, shell and text manipulation utilities" -DESCRIPTION = "The GNU Core Utilities provide the basic file, shell and text \ -manipulation utilities. These are the core utilities which are expected to exist on \ -every system." -HOMEPAGE = "http://www.gnu.org/software/coreutils/" -BUGTRACKER = "http://debbugs.gnu.org/coreutils" -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\ - file://src/ls.c;beginline=1;endline=15;md5=c456f9896277a0543e3866777ccc0255" -DEPENDS = "gmp libcap" -DEPENDS_class-native = "" - -inherit autotools gettext texinfo - -SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \ - file://remove-usr-local-lib-from-m4.patch \ - file://fix-selinux-flask.patch \ - file://0001-uname-report-processor-and-hardware-correctly.patch \ - file://disable-ls-output-quoting.patch \ - file://0001-local.mk-fix-cross-compiling-problem.patch \ - file://run-ptest \ - " - -SRC_URI_append_libc-musl = "file://strtod_fix_clash_with_strtold.patch" - -SRC_URI[md5sum] = "0009a224d8e288e8ec406ef0161f9293" -SRC_URI[sha256sum] = "ff7a9c918edce6b4f4b2725e3f9b37b0c4d193531cac49a48b56c4d0d3a9e9fd" - -EXTRA_OECONF_class-native = "--without-gmp" -EXTRA_OECONF_class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}" -EXTRA_OECONF_class-nativesdk = "--enable-install-program=arch,hostname" - -# acl and xattr are not default features -# -PACKAGECONFIG_class-target ??= "\ - ${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)} \ -" - -# The lib/oe/path.py requires xattr -PACKAGECONFIG_class-native ??= "xattr" - -# with, without, depends, rdepends -# -PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl," -PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr," -PACKAGECONFIG[single-binary] = "--enable-single-binary,--disable-single-binary,," - -# [ df mktemp nice printenv base64 gets a special treatment and is not included in this -bindir_progs = "arch basename chcon cksum comm csplit cut dir dircolors dirname du \ - env expand expr factor fmt fold groups head hostid id install \ - join link logname md5sum mkfifo nl nohup nproc od paste pathchk \ - pinky pr printf ptx readlink realpath runcon seq sha1sum sha224sum sha256sum \ - sha384sum sha512sum shred shuf sort split sum tac tail tee test timeout \ - tr truncate tsort tty unexpand uniq unlink uptime users vdir wc who whoami yes" - -# hostname gets a special treatment and is not included in this -base_bindir_progs = "cat chgrp chmod chown cp date dd echo false hostname kill ln ls mkdir \ - mknod mv pwd rm rmdir sleep stty sync touch true uname stat" - -sbindir_progs= "chroot" - -PACKAGE_BEFORE_PN_class-target += "coreutils-stdbuf" -FILES_coreutils-stdbuf = "${bindir}/stdbuf ${libdir}/coreutils/libstdbuf.so" -RDEPENDS_coreutils_class-target += "coreutils-stdbuf" - -# Let aclocal use the relative path for the m4 file rather than the -# absolute since coreutils has a lot of m4 files, otherwise there might -# be an "Argument list too long" error when it is built in a long/deep -# directory. -acpaths = "-I ./m4" - -# Deal with a separate builddir failure if src doesn't exist when creating version.c/version.h -do_compile_prepend () { - mkdir -p ${B}/src -} - -do_install_class-native() { - autotools_do_install - # remove groups to fix conflict with shadow-native - rm -f ${D}${STAGING_BINDIR_NATIVE}/groups - # The return is a must since native doesn't need the - # do_install_append() in the below. - return -} - -do_install_append() { - for i in df mktemp nice printenv base64; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${BPN}; done - - install -d ${D}${base_bindir} - [ "${base_bindir}" != "${bindir}" ] && for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${BPN}; done - - install -d ${D}${sbindir} - [ "${sbindir}" != "${bindir}" ] && for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${BPN}; done - - # [ requires special handling because [.coreutils will cause the sed stuff - # in update-alternatives to fail, therefore use lbracket - the name used - # for the actual source file. - mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${BPN} -} - -inherit update-alternatives - -ALTERNATIVE_PRIORITY = "100" -# Make hostname's priority higher than busybox but lower than net-tools -ALTERNATIVE_PRIORITY[hostname] = "90" -ALTERNATIVE_${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base64 nice printenv mktemp df" -ALTERNATIVE_${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1" - -ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1" - -ALTERNATIVE_LINK_NAME[base64] = "${base_bindir}/base64" -ALTERNATIVE_TARGET[base64] = "${bindir}/base64.${BPN}" -ALTERNATIVE_LINK_NAME[base64.1] = "${mandir}/man1/base64.1" - -ALTERNATIVE_LINK_NAME[mktemp] = "${base_bindir}/mktemp" -ALTERNATIVE_TARGET[mktemp] = "${bindir}/mktemp.${BPN}" -ALTERNATIVE_LINK_NAME[mktemp.1] = "${mandir}/man1/mktemp.1" - -ALTERNATIVE_LINK_NAME[df] = "${base_bindir}/df" -ALTERNATIVE_TARGET[df] = "${bindir}/df.${BPN}" -ALTERNATIVE_LINK_NAME[df.1] = "${mandir}/man1/df.1" - -ALTERNATIVE_LINK_NAME[nice] = "${base_bindir}/nice" -ALTERNATIVE_TARGET[nice] = "${bindir}/nice.${BPN}" -ALTERNATIVE_LINK_NAME[nice.1] = "${mandir}/man1/nice.1" - -ALTERNATIVE_LINK_NAME[printenv] = "${base_bindir}/printenv" -ALTERNATIVE_TARGET[printenv] = "${bindir}/printenv.${BPN}" - -ALTERNATIVE_LINK_NAME[lbracket] = "${bindir}/[" -ALTERNATIVE_TARGET[lbracket] = "${bindir}/lbracket.${BPN}" - -ALTERNATIVE_LINK_NAME[groups.1] = "${mandir}/man1/groups.1" -ALTERNATIVE_LINK_NAME[uptime.1] = "${mandir}/man1/uptime.1" -ALTERNATIVE_LINK_NAME[kill.1] = "${mandir}/man1/kill.1" -ALTERNATIVE_LINK_NAME[stat.1] = "${mandir}/man1/stat.1" - -python __anonymous() { - for prog in d.getVar('base_bindir_progs').split(): - d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_bindir'), prog)) - - for prog in d.getVar('sbindir_progs').split(): - d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('sbindir'), prog)) -} - -BBCLASSEXTEND = "native nativesdk" - -inherit ptest - -RDEPENDS_${PN}-ptest += "bash findutils gawk liberror-perl libmodule-build-perl make perl perl-module-file-stat python3-core sed shadow" - -# -dev automatic dependencies fails as we don't want libmodule-build-perl-dev, its too heavy -# may need tweaking if DEPENDS changes -RRECOMMENDS_coreutils-dev[nodeprrecs] = "1" -RRECOMMENDS_coreutils-dev = "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev" - -do_install_ptest () { - install -d ${D}${PTEST_PATH}/tests - cp -r ${S}/tests/* ${D}${PTEST_PATH}/tests - sed -i 's/ginstall/install/g' `grep -R ginstall ${D}${PTEST_PATH}/tests | awk -F: '{print $1}' | uniq` - install -d ${D}${PTEST_PATH}/build-aux - install ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/ - cp ${B}/Makefile ${D}${PTEST_PATH}/ - cp ${S}/init.cfg ${D}${PTEST_PATH}/ - cp -r ${B}/src ${D}${PTEST_PATH}/ - cp -r ${S}/src/*.c ${D}${PTEST_PATH}/src - sed -i '/^VPATH/s/= .*$/= ./g' ${D}${PTEST_PATH}/Makefile - sed -i '/^PROGRAMS/s/^/#/g' ${D}${PTEST_PATH}/Makefile - sed -i '/^Makefile: /s/^.*$/Makefile:/g' ${D}${PTEST_PATH}/Makefile - sed -i '/^abs_srcdir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile - sed -i '/^abs_top_builddir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile - sed -i '/^abs_top_srcdir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile - sed -i '/^built_programs/s/ginstall/install/g' ${D}${PTEST_PATH}/Makefile - chmod -R 777 ${D}${PTEST_PATH} - - # Disable subcase stty-pairs.sh, it will cause test framework hang - sed -i '/stty-pairs.sh/d' ${D}${PTEST_PATH}/Makefile - - # Disable subcase tail-2/assert.sh as it has issues on 32-bit systems - sed -i '/assert.sh/d' ${D}${PTEST_PATH}/Makefile - - # Tweak test d_type-check to use python3 instead of python - sed -i "1s@.*@#!/usr/bin/python3@" ${D}${PTEST_PATH}/tests/d_type-check - install ${B}/src/getlimits ${D}/${bindir} - - # handle multilib - sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest -} - -FILES_${PN}-ptest += "${bindir}/getlimits" diff --git a/poky/meta/recipes-core/coreutils/coreutils_8.32.bb b/poky/meta/recipes-core/coreutils/coreutils_8.32.bb new file mode 100644 index 000000000..2422f8634 --- /dev/null +++ b/poky/meta/recipes-core/coreutils/coreutils_8.32.bb @@ -0,0 +1,190 @@ +SUMMARY = "The basic file, shell and text manipulation utilities" +DESCRIPTION = "The GNU Core Utilities provide the basic file, shell and text \ +manipulation utilities. These are the core utilities which are expected to exist on \ +every system." +HOMEPAGE = "http://www.gnu.org/software/coreutils/" +BUGTRACKER = "http://debbugs.gnu.org/coreutils" +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ + file://src/ls.c;beginline=1;endline=15;md5=b7d80abf5b279320fb0e4b1007ed108b \ + " +DEPENDS = "gmp libcap" +DEPENDS_class-native = "" + +inherit autotools gettext texinfo + +SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \ + file://remove-usr-local-lib-from-m4.patch \ + file://fix-selinux-flask.patch \ + file://0001-uname-report-processor-and-hardware-correctly.patch \ + file://disable-ls-output-quoting.patch \ + file://0001-local.mk-fix-cross-compiling-problem.patch \ + file://run-ptest \ + file://0001-ls-restore-8.31-behavior-on-removed-directories.patch \ + " + +SRC_URI[md5sum] = "022042695b7d5bcf1a93559a9735e668" +SRC_URI[sha256sum] = "4458d8de7849df44ccab15e16b1548b285224dbba5f08fac070c1c0e0bcc4cfa" + +EXTRA_OECONF_class-native = "--without-gmp" +EXTRA_OECONF_class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}" +EXTRA_OECONF_class-nativesdk = "--enable-install-program=arch,hostname" + +# acl and xattr are not default features +# +PACKAGECONFIG_class-target ??= "\ + ${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)} \ +" + +# The lib/oe/path.py requires xattr +PACKAGECONFIG_class-native ??= "xattr" + +# with, without, depends, rdepends +# +PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl," +PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr," +PACKAGECONFIG[single-binary] = "--enable-single-binary,--disable-single-binary,," + +# [ df mktemp nice printenv base64 gets a special treatment and is not included in this +bindir_progs = "arch basename chcon cksum comm csplit cut dir dircolors dirname du \ + env expand expr factor fmt fold groups head hostid id install \ + join link logname md5sum mkfifo nl nohup nproc od paste pathchk \ + pinky pr printf ptx readlink realpath runcon seq sha1sum sha224sum sha256sum \ + sha384sum sha512sum shred shuf sort split sum tac tail tee test timeout \ + tr truncate tsort tty unexpand uniq unlink uptime users vdir wc who whoami yes" + +# hostname gets a special treatment and is not included in this +base_bindir_progs = "cat chgrp chmod chown cp date dd echo false hostname kill ln ls mkdir \ + mknod mv pwd rm rmdir sleep stty sync touch true uname stat" + +sbindir_progs= "chroot" + +PACKAGE_BEFORE_PN_class-target += "coreutils-stdbuf" +FILES_coreutils-stdbuf = "${bindir}/stdbuf ${libdir}/coreutils/libstdbuf.so" +RDEPENDS_coreutils_class-target += "coreutils-stdbuf" + +# Let aclocal use the relative path for the m4 file rather than the +# absolute since coreutils has a lot of m4 files, otherwise there might +# be an "Argument list too long" error when it is built in a long/deep +# directory. +acpaths = "-I ./m4" + +# Deal with a separate builddir failure if src doesn't exist when creating version.c/version.h +do_compile_prepend () { + mkdir -p ${B}/src +} + +do_install_class-native() { + autotools_do_install + # remove groups to fix conflict with shadow-native + rm -f ${D}${STAGING_BINDIR_NATIVE}/groups + # The return is a must since native doesn't need the + # do_install_append() in the below. + return +} + +do_install_append() { + for i in df mktemp nice printenv base64; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${BPN}; done + + install -d ${D}${base_bindir} + [ "${base_bindir}" != "${bindir}" ] && for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${BPN}; done + + install -d ${D}${sbindir} + [ "${sbindir}" != "${bindir}" ] && for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${BPN}; done + + # [ requires special handling because [.coreutils will cause the sed stuff + # in update-alternatives to fail, therefore use lbracket - the name used + # for the actual source file. + mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${BPN} +} + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" +# Make hostname's priority higher than busybox but lower than net-tools +ALTERNATIVE_PRIORITY[hostname] = "90" +ALTERNATIVE_${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base64 nice printenv mktemp df" +ALTERNATIVE_${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1" + +ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1" + +ALTERNATIVE_LINK_NAME[base64] = "${base_bindir}/base64" +ALTERNATIVE_TARGET[base64] = "${bindir}/base64.${BPN}" +ALTERNATIVE_LINK_NAME[base64.1] = "${mandir}/man1/base64.1" + +ALTERNATIVE_LINK_NAME[mktemp] = "${base_bindir}/mktemp" +ALTERNATIVE_TARGET[mktemp] = "${bindir}/mktemp.${BPN}" +ALTERNATIVE_LINK_NAME[mktemp.1] = "${mandir}/man1/mktemp.1" + +ALTERNATIVE_LINK_NAME[df] = "${base_bindir}/df" +ALTERNATIVE_TARGET[df] = "${bindir}/df.${BPN}" +ALTERNATIVE_LINK_NAME[df.1] = "${mandir}/man1/df.1" + +ALTERNATIVE_LINK_NAME[nice] = "${base_bindir}/nice" +ALTERNATIVE_TARGET[nice] = "${bindir}/nice.${BPN}" +ALTERNATIVE_LINK_NAME[nice.1] = "${mandir}/man1/nice.1" + +ALTERNATIVE_LINK_NAME[printenv] = "${base_bindir}/printenv" +ALTERNATIVE_TARGET[printenv] = "${bindir}/printenv.${BPN}" + +ALTERNATIVE_LINK_NAME[lbracket] = "${bindir}/[" +ALTERNATIVE_TARGET[lbracket] = "${bindir}/lbracket.${BPN}" + +ALTERNATIVE_LINK_NAME[groups.1] = "${mandir}/man1/groups.1" +ALTERNATIVE_LINK_NAME[uptime.1] = "${mandir}/man1/uptime.1" +ALTERNATIVE_LINK_NAME[kill.1] = "${mandir}/man1/kill.1" +ALTERNATIVE_LINK_NAME[stat.1] = "${mandir}/man1/stat.1" + +python __anonymous() { + for prog in d.getVar('base_bindir_progs').split(): + d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_bindir'), prog)) + + for prog in d.getVar('sbindir_progs').split(): + d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('sbindir'), prog)) +} + +BBCLASSEXTEND = "native nativesdk" + +inherit ptest + +RDEPENDS_${PN}-ptest += "bash findutils gawk liberror-perl libmodule-build-perl make perl perl-module-file-stat python3-core sed shadow" + +# -dev automatic dependencies fails as we don't want libmodule-build-perl-dev, its too heavy +# may need tweaking if DEPENDS changes +RRECOMMENDS_coreutils-dev[nodeprrecs] = "1" +RRECOMMENDS_coreutils-dev = "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev" + +do_install_ptest () { + install -d ${D}${PTEST_PATH}/tests + cp -r ${S}/tests/* ${D}${PTEST_PATH}/tests + sed -i 's/ginstall/install/g' `grep -R ginstall ${D}${PTEST_PATH}/tests | awk -F: '{print $1}' | uniq` + install -d ${D}${PTEST_PATH}/build-aux + install ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/ + cp ${B}/Makefile ${D}${PTEST_PATH}/ + cp ${S}/init.cfg ${D}${PTEST_PATH}/ + cp -r ${B}/src ${D}${PTEST_PATH}/ + cp -r ${S}/src/*.c ${D}${PTEST_PATH}/src + sed -i '/^VPATH/s/= .*$/= ./g' ${D}${PTEST_PATH}/Makefile + sed -i '/^PROGRAMS/s/^/#/g' ${D}${PTEST_PATH}/Makefile + sed -i '/^Makefile: /s/^.*$/Makefile:/g' ${D}${PTEST_PATH}/Makefile + sed -i '/^abs_srcdir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile + sed -i '/^abs_top_builddir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile + sed -i '/^abs_top_srcdir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile + sed -i '/^built_programs/s/ginstall/install/g' ${D}${PTEST_PATH}/Makefile + chmod -R 777 ${D}${PTEST_PATH} + + # Disable subcase stty-pairs.sh, it will cause test framework hang + sed -i '/stty-pairs.sh/d' ${D}${PTEST_PATH}/Makefile + + # Disable subcase tail-2/assert.sh as it has issues on 32-bit systems + sed -i '/assert.sh/d' ${D}${PTEST_PATH}/Makefile + + # Tweak test d_type-check to use python3 instead of python + sed -i "1s@.*@#!/usr/bin/python3@" ${D}${PTEST_PATH}/tests/d_type-check + install ${B}/src/getlimits ${D}/${bindir} + + # handle multilib + sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest +} + +FILES_${PN}-ptest += "${bindir}/getlimits" diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-ignore-return-value-of-write.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-ignore-return-value-of-write.patch index 0ebf138d6..f3a006963 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-ignore-return-value-of-write.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-ignore-return-value-of-write.patch @@ -1,4 +1,4 @@ -From d250652782b65b071b7cc8f01f2db833df104e0e Mon Sep 17 00:00:00 2001 +From 658c034d92027dc8af5f784cae852123fac79b19 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 16 Apr 2016 13:28:59 -0700 Subject: [PATCH] Do not ignore return value of write() @@ -16,10 +16,10 @@ Signed-off-by: Khem Raj 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/glib/tests/unix.c b/glib/tests/unix.c -index 9d55a6c..a07f945 100644 +index 7639d06..f941141 100644 --- a/glib/tests/unix.c +++ b/glib/tests/unix.c -@@ -32,14 +32,15 @@ test_pipe (void) +@@ -33,14 +33,15 @@ test_pipe (void) GError *error = NULL; int pipefd[2]; char buf[1024]; diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch index edac4c9f7..5fe3aa898 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch @@ -1,4 +1,4 @@ -From 60b36289ac314ad972cf81c1acd19f6f2e58ff25 Mon Sep 17 00:00:00 2001 +From 0797a40627a4cb5439a24b872edc65356dceaaf0 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 15 Feb 2019 11:17:27 +0100 Subject: [PATCH] Do not write $bindir into pkg-config files @@ -16,13 +16,13 @@ Signed-off-by: Alexander Kanavin 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/gio/meson.build b/gio/meson.build -index 71e88c4..8ce3987 100644 +index 532b086..98468a3 100644 --- a/gio/meson.build +++ b/gio/meson.build -@@ -831,14 +831,14 @@ pkg.generate(libgio, +@@ -820,14 +820,14 @@ pkg.generate(libgio, 'schemasdir=' + join_paths('${datadir}', schemas_subdir), 'bindir=' + join_paths('${prefix}', get_option('bindir')), - 'giomoduledir=' + giomodulesdir, + 'giomoduledir=' + pkgconfig_giomodulesdir, - 'gio=' + join_paths('${bindir}', 'gio'), - 'gio_querymodules=' + join_paths('${bindir}', 'gio-querymodules'), - 'glib_compile_schemas=' + join_paths('${bindir}', 'glib-compile-schemas'), @@ -43,7 +43,7 @@ index 71e88c4..8ce3987 100644 install_dir : glib_pkgconfigreldir, filebase : 'gio-2.0', diff --git a/glib/meson.build b/glib/meson.build -index 91a48f1..978fb73 100644 +index aaf5f00..1e0992b 100644 --- a/glib/meson.build +++ b/glib/meson.build @@ -375,9 +375,9 @@ pkg.generate(libglib, diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch index d8cf269bb..16f2d3149 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch @@ -1,4 +1,4 @@ -From 15f807481de53942525b48952c5b6bbb9fb66542 Mon Sep 17 00:00:00 2001 +From c94e669de98a3892c699bd8d0d2b5164b2de747e Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 15 Mar 2014 22:42:29 -0700 Subject: [PATCH] Fix DATADIRNAME on uclibc/Linux @@ -9,7 +9,7 @@ based systems therefore lets set DATADIRNAME to "share". Signed-off-by: Khem Raj Upstream-Status: Pending -%% original patch: uclibc_musl_translation.patch + --- m4macros/glib-gettext.m4 | 4 ++++ 1 file changed, 4 insertions(+) @@ -29,6 +29,3 @@ index df6fbf0..47db864 100644 *) CATOBJEXT=.mo DATADIRNAME=lib --- -2.17.1 - diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch index a3d71f2b7..597864d9a 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch @@ -1,4 +1,4 @@ -From d29dfba67b1808eea6d428085f95b6e42cf2d1e4 Mon Sep 17 00:00:00 2001 +From 0015db45cd1bfefc04959dffab5dabeead93136f Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Tue, 22 Mar 2016 15:14:58 +0200 Subject: [PATCH] Install gio-querymodules as libexec_PROGRAM @@ -14,10 +14,10 @@ Upstream-Status: Inappropriate [OE specific] 1 file changed, 1 insertion(+) diff --git a/gio/meson.build b/gio/meson.build -index 4e5e021..90a741a 100644 +index 2ef60ed..532b086 100644 --- a/gio/meson.build +++ b/gio/meson.build -@@ -940,6 +940,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu +@@ -936,6 +936,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu c_args : gio_c_args, # intl.lib is not compatible with SAFESEH link_args : noseh_link_args, diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch index 67ca6240b..6fd93526c 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch @@ -1,7 +1,7 @@ -From 2acf40361eecd17c6981743dabd06e25a9934258 Mon Sep 17 00:00:00 2001 +From 4f47b8a8d650d185aa61aec2f56a283522a723c4 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 12 Jun 2015 17:08:46 +0300 -Subject: [PATCH 05/10] Remove the warning about deprecated paths in schemas +Subject: [PATCH] Remove the warning about deprecated paths in schemas Some schemas in gsettings-desktop-schemas (such as proxy and locale) are still using deprecated paths, as of 3.16.1. This causes warning @@ -15,10 +15,10 @@ Signed-off-by: Alexander Kanavin 1 file changed, 13 deletions(-) diff --git a/gio/glib-compile-schemas.c b/gio/glib-compile-schemas.c -index b8de090..130f89b 100644 +index 7888120..7acbd5b 100644 --- a/gio/glib-compile-schemas.c +++ b/gio/glib-compile-schemas.c -@@ -1219,19 +1219,6 @@ parse_state_start_schema (ParseState *state, +@@ -1232,19 +1232,6 @@ parse_state_start_schema (ParseState *state, return; } @@ -38,6 +38,3 @@ index b8de090..130f89b 100644 state->schema_state = schema_state_new (path, gettext_domain, extends, extends_name, list_of); --- -2.14.1 - diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch index b02169e09..d075cd3f2 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch @@ -1,4 +1,4 @@ -From cfff734af6bff6a30a649f784ecf698658c01884 Mon Sep 17 00:00:00 2001 +From d3334e83ae0da9ca184eb9c8daf0854544ece023 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 13 Feb 2019 15:32:05 +0100 Subject: [PATCH] Set host_machine correctly when building with mingw32 @@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/gio/tests/meson.build b/gio/tests/meson.build -index 95aafc1..9025eb2 100644 +index dab65d2..e8bb2ee 100644 --- a/gio/tests/meson.build +++ b/gio/tests/meson.build -@@ -13,7 +13,7 @@ test_c_args = [ +@@ -12,7 +12,7 @@ test_c_args = [ '-UG_DISABLE_ASSERT', ] @@ -26,7 +26,7 @@ index 95aafc1..9025eb2 100644 common_gio_tests_deps += [iphlpapi_dep, winsock2, cc.find_library ('secur32')] endif -@@ -120,7 +120,7 @@ if dbus1_dep.found() +@@ -132,7 +132,7 @@ else endif # Test programs buildable on UNIX only @@ -35,7 +35,7 @@ index 95aafc1..9025eb2 100644 gio_tests += { 'file' : {}, 'gdbus-peer' : { -@@ -332,7 +332,7 @@ if host_machine.system() != 'windows' +@@ -384,7 +384,7 @@ if host_machine.system() != 'windows' endif # unix # Test programs buildable on Windows only @@ -44,7 +44,7 @@ index 95aafc1..9025eb2 100644 gio_tests += {'win32-streams' : {}} endif -@@ -397,7 +397,7 @@ if cc.get_id() != 'msvc' and cc.get_id() != 'clang-cl' +@@ -454,7 +454,7 @@ if cc.get_id() != 'msvc' and cc.get_id() != 'clang-cl' } endif @@ -54,10 +54,10 @@ index 95aafc1..9025eb2 100644 'gdbus-example-unix-fd-client' : { 'install' : false, diff --git a/glib/tests/meson.build b/glib/tests/meson.build -index c47133f..cad975f 100644 +index 3dedafc..94605e6 100644 --- a/glib/tests/meson.build +++ b/glib/tests/meson.build -@@ -132,7 +132,7 @@ if glib_conf.has('HAVE_EVENTFD') +@@ -134,7 +134,7 @@ if glib_conf.has('HAVE_EVENTFD') } endif @@ -67,7 +67,7 @@ index c47133f..cad975f 100644 glib_tests += { 'gpoll' : { diff --git a/meson.build b/meson.build -index 717d1bc..2a3beb8 100644 +index e1b4b79..afb6eaa 100644 --- a/meson.build +++ b/meson.build @@ -32,6 +32,9 @@ else @@ -81,10 +81,10 @@ index 717d1bc..2a3beb8 100644 glib_version = meson.project_version() glib_api_version = '2.0' diff --git a/tests/meson.build b/tests/meson.build -index ce30442..5710f2c 100644 +index 6741f8f..12fdc90 100644 --- a/tests/meson.build +++ b/tests/meson.build -@@ -66,7 +66,7 @@ test_extra_programs = { +@@ -73,7 +73,7 @@ test_extra_programs = { 'unicode-collate' : {}, } diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch index 3dfef176f..d33fdd4d8 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch @@ -1,4 +1,4 @@ -From 730803f2bc3f2f1a74f4db809a224066e7eae114 Mon Sep 17 00:00:00 2001 +From 92de6c7eb30b961b24a2dce812d5276487b7d23d Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 8 Jan 2020 18:22:46 +0100 Subject: [PATCH] gio/tests/resources.c: comment out a build host-only test @@ -8,6 +8,7 @@ not cross-compatible (hardcodes ld and objcopy). Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Alexander Kanavin + --- gio/tests/resources.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch index 833ad2540..44482dd2b 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch @@ -1,4 +1,4 @@ -From cce617bec254e327ed7bcad60f58208024c6dc42 Mon Sep 17 00:00:00 2001 +From 4b97f457b7b44117e27d2a218c4b68e7fe3fe4ce Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 12 Oct 2019 17:46:26 -0700 Subject: [PATCH] meson: Run atomics test on clang as well @@ -9,15 +9,16 @@ Fixes Upstream-Status: Pending Signed-off-by: Khem Raj + --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meson.build b/meson.build -index 9731de4..c678931 100644 +index afb6eaa..6aa70f5 100644 --- a/meson.build +++ b/meson.build -@@ -1634,7 +1634,7 @@ atomicdefine = ''' +@@ -1692,7 +1692,7 @@ atomicdefine = ''' # We know that we can always use real ("lock free") atomic operations with MSVC if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl' or cc.links(atomictest, name : 'atomic ops') have_atomic_lock_free = true @@ -26,6 +27,3 @@ index 9731de4..c678931 100644 # Old gcc release may provide # __sync_bool_compare_and_swap but doesn't define # __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 --- -2.23.0 - diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch index 872340df9..1c645f3a9 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch @@ -1,10 +1,11 @@ -From b9160d951b9af647b97766c57295ca4f45cf9521 Mon Sep 17 00:00:00 2001 +From 79ce7e545dd3a93f77d2146d50b6fa061fbceed9 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Tue, 3 Oct 2017 10:45:55 +0300 -Subject: [PATCH 10/10] Do not hardcode python path into various tools +Subject: [PATCH] Do not hardcode python path into various tools Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Alexander Kanavin + --- gio/gdbus-2.0/codegen/gdbus-codegen.in | 2 +- gobject/glib-genmarshal.in | 2 +- @@ -12,7 +13,7 @@ Signed-off-by: Alexander Kanavin 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gio/gdbus-2.0/codegen/gdbus-codegen.in b/gio/gdbus-2.0/codegen/gdbus-codegen.in -index 8050981..e693ef3 100755 +index 67d3675..4e92a7a 100755 --- a/gio/gdbus-2.0/codegen/gdbus-codegen.in +++ b/gio/gdbus-2.0/codegen/gdbus-codegen.in @@ -1,4 +1,4 @@ @@ -22,7 +23,7 @@ index 8050981..e693ef3 100755 # GDBus - GLib D-Bus Library # diff --git a/gobject/glib-genmarshal.in b/gobject/glib-genmarshal.in -index 09e8408..b2f9d99 100755 +index 7380f24..c8abeaa 100755 --- a/gobject/glib-genmarshal.in +++ b/gobject/glib-genmarshal.in @@ -1,4 +1,4 @@ @@ -32,7 +33,7 @@ index 09e8408..b2f9d99 100755 # pylint: disable=too-many-lines, missing-docstring, invalid-name diff --git a/gobject/glib-mkenums.in b/gobject/glib-mkenums.in -index d4bfd11..051fce4 100755 +index 91ad779..3ebef62 100755 --- a/gobject/glib-mkenums.in +++ b/gobject/glib-mkenums.in @@ -1,4 +1,4 @@ @@ -41,6 +42,3 @@ index d4bfd11..051fce4 100755 # If the code below looks horrible and unpythonic, do not panic. # --- -2.14.1 - diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0011-GMainContext-Fix-GSource-iterator-if-iteration-can-m.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0011-GMainContext-Fix-GSource-iterator-if-iteration-can-m.patch deleted file mode 100644 index 37b77d567..000000000 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0011-GMainContext-Fix-GSource-iterator-if-iteration-can-m.patch +++ /dev/null @@ -1,43 +0,0 @@ -From ef2be42998e3fc10299055a5a01f7c791538174c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= -Date: Mon, 3 Feb 2020 15:38:28 +0200 -Subject: [PATCH] GMainContext - Fix GSource iterator if iteration can modify - the list - -We first have to ref the next source and then unref the previous one. -This might be the last reference to the previous source, and freeing the -previous source might unref and free the next one which would then leave -use with a dangling pointer here. - -Fixes https://gitlab.gnome.org/GNOME/glib/issues/2031 - -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/b06c48de7554607ff3fb58d6c0510cfa5088e909] - ---- - glib/gmain.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/glib/gmain.c b/glib/gmain.c -index af979c8..a9a287d 100644 ---- a/glib/gmain.c -+++ b/glib/gmain.c -@@ -969,13 +969,17 @@ g_source_iter_next (GSourceIter *iter, GSource **source) - * GSourceList to be removed from source_lists (if iter->source is - * the only source in its list, and it is destroyed), so we have to - * keep it reffed until after we advance iter->current_list, above. -+ * -+ * Also we first have to ref the next source before unreffing the -+ * previous one as unreffing the previous source can potentially -+ * free the next one. - */ -+ if (next_source && iter->may_modify) -+ g_source_ref (next_source); - - if (iter->source && iter->may_modify) - g_source_unref_internal (iter->source, iter->context, TRUE); - iter->source = next_source; -- if (iter->source && iter->may_modify) -- g_source_ref (iter->source); - - *source = iter->source; - return *source != NULL; diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0012-GMainContext-Fix-memory-leaks-and-memory-corruption-.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0012-GMainContext-Fix-memory-leaks-and-memory-corruption-.patch deleted file mode 100644 index cf97d9d3d..000000000 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0012-GMainContext-Fix-memory-leaks-and-memory-corruption-.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 611430a32a46d0dc806a829161e2dccf9c0196a8 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= -Date: Mon, 3 Feb 2020 15:35:51 +0200 -Subject: [PATCH] GMainContext - Fix memory leaks and memory corruption when - freeing sources while freeing a context - -Instead of destroying sources directly while freeing the context, and -potentially freeing them if this was the last reference to them, collect -new references of all sources in a separate list before and at the same -time invalidate their context so that they can't access it anymore. Only -once all sources have their context invalidated, destroy them while -still keeping a reference to them. Once all sources are destroyed we get -rid of the additional references and free them if nothing else keeps a -reference to them anymore. - -This fixes a regression introduced by 26056558be in 2012. - -The previous code that invalidated the context of each source and then -destroyed it before going to the next source without keeping an -additional reference caused memory leaks or memory corruption depending -on the order of the sources in the sources lists. - -If a source was destroyed it might happen that this was the last -reference to this source, and it would then be freed. This would cause -the finalize function to be called, which might destroy and unref -another source and potentially free it. This other source would then -either -- go through the normal free logic and change the intern linked list - between the sources, while other sources that are unreffed as part of - the main context freeing would not. As such the list would be in an - inconsistent state and we might dereference freed memory. -- go through the normal destroy and free logic but because the context - pointer was already invalidated it would simply mark the source as - destroyed without actually removing it from the context. This would - then cause a memory leak because the reference owned by the context is - not freed. - -Fixes https://github.com/gtk-rs/glib/issues/583 while still keeping -https://bugzilla.gnome.org/show_bug.cgi?id=661767 fixes. - -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/aa20167d419c649f34fed06a9463890b41b1eba0] - ---- - glib/gmain.c | 35 ++++++++++++++++++++++++++++++++++- - 1 file changed, 34 insertions(+), 1 deletion(-) - -diff --git a/glib/gmain.c b/glib/gmain.c -index a9a287d..10ba2f8 100644 ---- a/glib/gmain.c -+++ b/glib/gmain.c -@@ -538,6 +538,7 @@ g_main_context_unref (GMainContext *context) - GSourceIter iter; - GSource *source; - GList *sl_iter; -+ GSList *s_iter, *remaining_sources = NULL; - GSourceList *list; - guint i; - -@@ -557,10 +558,30 @@ g_main_context_unref (GMainContext *context) - - /* g_source_iter_next() assumes the context is locked. */ - LOCK_CONTEXT (context); -- g_source_iter_init (&iter, context, TRUE); -+ -+ /* First collect all remaining sources from the sources lists and store a -+ * new reference in a separate list. Also set the context of the sources -+ * to NULL so that they can't access a partially destroyed context anymore. -+ * -+ * We have to do this first so that we have a strong reference to all -+ * sources and destroying them below does not also free them, and so that -+ * none of the sources can access the context from their finalize/dispose -+ * functions. */ -+ g_source_iter_init (&iter, context, FALSE); - while (g_source_iter_next (&iter, &source)) - { - source->context = NULL; -+ remaining_sources = g_slist_prepend (remaining_sources, g_source_ref (source)); -+ } -+ g_source_iter_clear (&iter); -+ -+ /* Next destroy all sources. As we still hold a reference to all of them, -+ * this won't cause any of them to be freed yet and especially prevents any -+ * source that unrefs another source from its finalize function to be freed. -+ */ -+ for (s_iter = remaining_sources; s_iter; s_iter = s_iter->next) -+ { -+ source = s_iter->data; - g_source_destroy_internal (source, context, TRUE); - } - UNLOCK_CONTEXT (context); -@@ -585,6 +606,18 @@ g_main_context_unref (GMainContext *context) - g_cond_clear (&context->cond); - - g_free (context); -+ -+ /* And now finally get rid of our references to the sources. This will cause -+ * them to be freed unless something else still has a reference to them. Due -+ * to setting the context pointers in the sources to NULL above, this won't -+ * ever access the context or the internal linked list inside the GSource. -+ * We already removed the sources completely from the context above. */ -+ for (s_iter = remaining_sources; s_iter; s_iter = s_iter->next) -+ { -+ source = s_iter->data; -+ g_source_unref_internal (source, NULL, FALSE); -+ } -+ g_slist_free (remaining_sources); - } - - /* Helper function used by mainloop/overflow test. diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0013-GMainContext-Move-mutex-unlocking-in-destructor-righ.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0013-GMainContext-Move-mutex-unlocking-in-destructor-righ.patch deleted file mode 100644 index 4c9e9f518..000000000 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/0013-GMainContext-Move-mutex-unlocking-in-destructor-righ.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 3e9d85f1b75e2b1096d9643563d7d17380752fc7 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= -Date: Tue, 11 Feb 2020 09:34:38 +0200 -Subject: [PATCH] GMainContext - Move mutex unlocking in destructor right - before freeing the mutex - -This does not have any behaviour changes but is cleaner. The mutex is -only unlocked now after all operations on the context are done and right -before freeing the mutex and the context itself. - -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/730a75fc8e8271c38fbd5363d1f77a00876b9ddc] - ---- - glib/gmain.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/glib/gmain.c b/glib/gmain.c -index 10ba2f8..b1df470 100644 ---- a/glib/gmain.c -+++ b/glib/gmain.c -@@ -584,7 +584,6 @@ g_main_context_unref (GMainContext *context) - source = s_iter->data; - g_source_destroy_internal (source, context, TRUE); - } -- UNLOCK_CONTEXT (context); - - for (sl_iter = context->source_lists; sl_iter; sl_iter = sl_iter->next) - { -@@ -595,6 +594,7 @@ g_main_context_unref (GMainContext *context) - - g_hash_table_destroy (context->sources); - -+ UNLOCK_CONTEXT (context); - g_mutex_clear (&context->mutex); - - g_ptr_array_free (context->pending_dispatches, TRUE); diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch index 48899ce85..41ecfa1df 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch @@ -1,4 +1,4 @@ -From 0061d66057dfd7e7267772df60b36474fb180eed Mon Sep 17 00:00:00 2001 +From 7cde170afe6854d674b50e32b4c1d3b511be9abe Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Mon, 9 Nov 2015 11:07:27 +0200 Subject: [PATCH] Enable more tests while cross-compiling @@ -15,10 +15,10 @@ Signed-off-by: Jussi Kukkonen 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gio/tests/meson.build b/gio/tests/meson.build -index 382dfcc..c171717 100644 +index 788cf97..dab65d2 100644 --- a/gio/tests/meson.build +++ b/gio/tests/meson.build -@@ -191,7 +191,7 @@ if host_machine.system() != 'windows' +@@ -203,7 +203,7 @@ if host_machine.system() != 'windows' # Test programs that need to bring up a session bus (requires dbus-daemon) have_dbus_daemon = find_program('dbus-daemon', required : false).found() @@ -27,8 +27,8 @@ index 382dfcc..c171717 100644 annotate_args = [ '--annotate', 'org.project.Bar', 'Key1', 'Value1', '--annotate', 'org.project.Bar', 'org.gtk.GDBus.Internal', 'Value2', -@@ -465,12 +465,12 @@ if installed_tests_enabled - install_data('static-link.py', install_dir : installed_tests_execdir) +@@ -548,12 +548,12 @@ if installed_tests_enabled + endforeach endif -if not meson.is_cross_build() or meson.has_exe_wrapper() @@ -42,7 +42,7 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate-source', -@@ -494,7 +494,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() +@@ -577,7 +577,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_gresource = custom_target('test.gresource', input : 'test.gresource.xml', output : 'test.gresource', @@ -51,7 +51,7 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--sourcedir=' + meson.current_build_dir(), -@@ -505,7 +505,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() +@@ -588,7 +588,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_resources2_c = custom_target('test_resources2.c', input : 'test3.gresource.xml', output : 'test_resources2.c', @@ -60,7 +60,7 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate', -@@ -516,7 +516,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() +@@ -599,7 +599,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_resources2_h = custom_target('test_resources2.h', input : 'test3.gresource.xml', output : 'test_resources2.h', @@ -69,7 +69,7 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate', -@@ -528,7 +528,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() +@@ -611,7 +611,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() input : 'test2.gresource.xml', depends : big_test_resource, output : 'test_resources.c', @@ -78,7 +78,7 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--sourcedir=' + meson.current_build_dir(), -@@ -539,7 +539,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() +@@ -622,7 +622,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() digit_test_resources_c = custom_target('digit_test_resources.c', input : '111_digit_test.gresource.xml', output : 'digit_test_resources.c', @@ -87,7 +87,7 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--sourcedir=' + meson.current_build_dir(), -@@ -550,7 +550,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() +@@ -633,7 +633,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() digit_test_resources_h = custom_target('digit_test_resources.h', input : '111_digit_test.gresource.xml', output : 'digit_test_resources.h', @@ -96,11 +96,11 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate', -@@ -579,11 +579,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() - # LLVM once that support is in a stable release. - objcopy = find_program('objcopy', required : false) +@@ -668,11 +668,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() -- if build_machine.system() == 'linux' and cc.get_id() == 'gcc' and objcopy.found() + ld = find_program('ld', required : false) + +- if build_machine.system() == 'linux' and cc.get_id() == 'gcc' and objcopy.found() and objcopy_supports_add_symbol and ld.found() + if not meson.is_cross_build() test_gresource_binary = custom_target('test5.gresource', input : 'test5.gresource.xml', @@ -110,7 +110,7 @@ index 382dfcc..c171717 100644 '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--sourcedir=' + meson.current_build_dir(), -@@ -595,7 +595,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() +@@ -684,7 +684,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_resources_binary_c = custom_target('test_resources_binary.c', input : 'test5.gresource.xml', output : 'test_resources_binary.c', diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch index fc320dcab..fe87482ae 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch @@ -1,4 +1,4 @@ -From 8c623acdbea3ecc2812bbaafcfc892758fa978da Mon Sep 17 00:00:00 2001 +From 2a715765c6ceb2e8b4cc42e060aee75016111d1a Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 11 Mar 2016 15:35:55 +0000 Subject: [PATCH] glib-2.0: relocate the GIO module directory for native builds @@ -19,11 +19,11 @@ Signed-off-by: Jussi Kukkonen 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gio/giomodule.c b/gio/giomodule.c -index 1007abd..5380982 100644 +index c420260..a023745 100644 --- a/gio/giomodule.c +++ b/gio/giomodule.c -@@ -44,6 +44,8 @@ - #include "gnetworkmonitor.h" +@@ -47,6 +47,8 @@ + #include "gmemorymonitordbus.h" #ifdef G_OS_WIN32 #include "gregistrysettingsbackend.h" +#else @@ -32,7 +32,7 @@ index 1007abd..5380982 100644 #include @@ -1158,7 +1160,15 @@ get_gio_module_dir (void) - #endif + NULL); g_free (install_dir); #else - module_dir = g_strdup (GIO_MODULE_DIR); diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.62.4.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.62.4.bb deleted file mode 100644 index d49623500..000000000 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.62.4.bb +++ /dev/null @@ -1,53 +0,0 @@ -require glib.inc - -PE = "1" - -SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}" - -SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ - file://run-ptest \ - file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \ - file://Enable-more-tests-while-cross-compiling.patch \ - file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \ - file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \ - file://0001-Do-not-ignore-return-value-of-write.patch \ - file://0010-Do-not-hardcode-python-path-into-various-tools.patch \ - file://0001-Set-host_machine-correctly-when-building-with-mingw3.patch \ - file://0001-Do-not-write-bindir-into-pkg-config-files.patch \ - file://0001-meson-Run-atomics-test-on-clang-as-well.patch \ - file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \ - file://0011-GMainContext-Fix-GSource-iterator-if-iteration-can-m.patch \ - file://0012-GMainContext-Fix-memory-leaks-and-memory-corruption-.patch \ - file://0013-GMainContext-Move-mutex-unlocking-in-destructor-righ.patch \ - " - -SRC_URI_append_class-native = " file://relocate-modules.patch" - -SRC_URI[md5sum] = "d52234ecba128932bed90bbc3553bfe5" -SRC_URI[sha256sum] = "4c84030d77fa9712135dfa8036ad663925655ae95b1d19399b6200e869925bbc" - -# Find any meson cross files in FILESPATH that are relevant for the current -# build (using siteinfo) and add them to EXTRA_OEMESON. -inherit siteinfo -def find_meson_cross_files(d): - if bb.data.inherits_class('native', d): - return "" - - corebase = d.getVar("COREBASE") - import collections - sitedata = siteinfo_data(d) - # filename -> found - files = collections.OrderedDict() - for path in d.getVar("FILESPATH").split(":"): - for element in sitedata: - filename = os.path.normpath(os.path.join(path, "meson.cross.d", element)) - files[filename.replace(corebase, "${COREBASE}")] = os.path.exists(filename) - - items = ["--cross-file=" + k for k,v in files.items() if v] - d.appendVar("EXTRA_OEMESON", " " + " ".join(items)) - items = ["%s:%s" % (k, "True" if v else "False") for k,v in files.items()] - d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(items)) - -python () { - find_meson_cross_files(d) -} diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb new file mode 100644 index 000000000..1a8e9d659 --- /dev/null +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb @@ -0,0 +1,50 @@ +require glib.inc + +PE = "1" + +SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ + file://run-ptest \ + file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \ + file://Enable-more-tests-while-cross-compiling.patch \ + file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \ + file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \ + file://0001-Do-not-ignore-return-value-of-write.patch \ + file://0010-Do-not-hardcode-python-path-into-various-tools.patch \ + file://0001-Set-host_machine-correctly-when-building-with-mingw3.patch \ + file://0001-Do-not-write-bindir-into-pkg-config-files.patch \ + file://0001-meson-Run-atomics-test-on-clang-as-well.patch \ + file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \ + " + +SRC_URI_append_class-native = " file://relocate-modules.patch" + +SRC_URI[md5sum] = "78b6bda8664763a09bd12d864c0ba46c" +SRC_URI[sha256sum] = "9a2f21ed8f13b9303399de13a0252b7cbcede593d26971378ec6cb90e87f2277" + +# Find any meson cross files in FILESPATH that are relevant for the current +# build (using siteinfo) and add them to EXTRA_OEMESON. +inherit siteinfo +def find_meson_cross_files(d): + if bb.data.inherits_class('native', d): + return "" + + corebase = d.getVar("COREBASE") + import collections + sitedata = siteinfo_data(d) + # filename -> found + files = collections.OrderedDict() + for path in d.getVar("FILESPATH").split(":"): + for element in sitedata: + filename = os.path.normpath(os.path.join(path, "meson.cross.d", element)) + files[filename.replace(corebase, "${COREBASE}")] = os.path.exists(filename) + + items = ["--cross-file=" + k for k,v in files.items() if v] + d.appendVar("EXTRA_OEMESON", " " + " ".join(items)) + items = ["%s:%s" % (k, "True" if v else "False") for k,v in files.items()] + d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(items)) + +python () { + find_meson_cross_files(d) +} diff --git a/poky/meta/recipes-core/glib-2.0/glib.inc b/poky/meta/recipes-core/glib-2.0/glib.inc index 7ebed0e5f..fb84db83c 100644 --- a/poky/meta/recipes-core/glib-2.0/glib.inc +++ b/poky/meta/recipes-core/glib-2.0/glib.inc @@ -30,6 +30,8 @@ LEAD_SONAME = "libglib-2.0.*" inherit meson gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages features_check +DEPENDS_append_class-target = "${@' gtk-doc' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}" + GTKDOC_MESON_OPTION = "gtk_doc" # This avoids the need to depend on target python3, which in case of mingw is not even possible. @@ -42,7 +44,7 @@ PACKAGECONFIG ??= "system-pcre libmount \ ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}" # To use the system pcre it must be configured with --enable-unicode-properties PACKAGECONFIG[system-pcre] = "-Dinternal_pcre=false,-Dinternal_pcre=true,libpcre" -PACKAGECONFIG[libmount] = "-Dlibmount=true,-Dlibmount=false,util-linux" +PACKAGECONFIG[libmount] = "-Dlibmount=enabled,-Dlibmount=disabled,util-linux" PACKAGECONFIG[manpages] = "-Dman=true, -Dman=false, libxslt-native xmlto-native" # libelf is auto-detected without a configuration option PACKAGECONFIG[libelf] = ",,elfutils" @@ -168,6 +170,8 @@ RDEPENDS_${PN}-ptest += "\ ${PN}-locale-th \ python3-core \ python3-modules \ + python3-dbusmock \ + ${PN}-codegen \ " RDEPENDS_${PN}-ptest_append_libc-glibc = "\ diff --git a/poky/meta/recipes-core/glib-networking/glib-networking_2.62.3.bb b/poky/meta/recipes-core/glib-networking/glib-networking_2.62.3.bb deleted file mode 100644 index e9596ce1a..000000000 --- a/poky/meta/recipes-core/glib-networking/glib-networking_2.62.3.bb +++ /dev/null @@ -1,34 +0,0 @@ -SUMMARY = "GLib networking extensions" -DESCRIPTION = "glib-networking contains the implementations of certain GLib networking features that cannot be implemented directly in GLib itself because of their dependencies." -HOMEPAGE = "https://gitlab.gnome.org/GNOME/glib-networking/" -BUGTRACKER = "http://bugzilla.gnome.org" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -SECTION = "libs" -DEPENDS = "glib-2.0" - -SRC_URI[archive.md5sum] = "a758ca62bd54982a798b39c744cbf783" -SRC_URI[archive.sha256sum] = "8ca1f86f23a76b5c7640624f7d5490705c78e81375e1741c9a1c41ce7f8f7ff7" - -PACKAGECONFIG ??= "gnutls" - -PACKAGECONFIG[gnutls] = "-Dgnutls=enabled,-Dgnutls=disabled,gnutls" -PACKAGECONFIG[openssl] = "-Dopenssl=enabled,-Dopenssl=disabled,openssl" -PACKAGECONFIG[libproxy] = "-Dlibproxy=enabled,-Dlibproxy=disabled,libproxy" - -EXTRA_OEMESON = "-Dgnome_proxy=disabled" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gettext upstream-version-is-even gio-module-cache - -FILES_${PN} += "\ - ${libdir}/gio/modules/libgio*.so \ - ${datadir}/dbus-1/services/ \ - ${systemd_user_unitdir} \ - " -FILES_${PN}-dev += "${libdir}/gio/modules/libgio*.la" -FILES_${PN}-staticdev += "${libdir}/gio/modules/libgio*.a" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-core/glib-networking/glib-networking_2.64.2.bb b/poky/meta/recipes-core/glib-networking/glib-networking_2.64.2.bb new file mode 100644 index 000000000..8300d20e0 --- /dev/null +++ b/poky/meta/recipes-core/glib-networking/glib-networking_2.64.2.bb @@ -0,0 +1,34 @@ +SUMMARY = "GLib networking extensions" +DESCRIPTION = "glib-networking contains the implementations of certain GLib networking features that cannot be implemented directly in GLib itself because of their dependencies." +HOMEPAGE = "https://gitlab.gnome.org/GNOME/glib-networking/" +BUGTRACKER = "http://bugzilla.gnome.org" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SECTION = "libs" +DEPENDS = "glib-2.0" + +SRC_URI[archive.md5sum] = "7f8c7ffe2616be4ef4232f2574353dab" +SRC_URI[archive.sha256sum] = "45def0715c551f9b0b41a4e4f730ac95f3d5d4f3de8162260fbf9421cff695a7" + +PACKAGECONFIG ??= "gnutls" + +PACKAGECONFIG[gnutls] = "-Dgnutls=enabled,-Dgnutls=disabled,gnutls" +PACKAGECONFIG[openssl] = "-Dopenssl=enabled,-Dopenssl=disabled,openssl" +PACKAGECONFIG[libproxy] = "-Dlibproxy=enabled,-Dlibproxy=disabled,libproxy" + +EXTRA_OEMESON = "-Dgnome_proxy=disabled" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase gettext upstream-version-is-even gio-module-cache + +FILES_${PN} += "\ + ${libdir}/gio/modules/libgio*.so \ + ${datadir}/dbus-1/services/ \ + ${systemd_user_unitdir} \ + " +FILES_${PN}-dev += "${libdir}/gio/modules/libgio*.la" +FILES_${PN}-staticdev += "${libdir}/gio/modules/libgio*.a" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-core/musl/0001-Remove-using-.end-directive-with-clang.patch b/poky/meta/recipes-core/musl/0001-Remove-using-.end-directive-with-clang.patch deleted file mode 100644 index be79cb53f..000000000 --- a/poky/meta/recipes-core/musl/0001-Remove-using-.end-directive-with-clang.patch +++ /dev/null @@ -1,36 +0,0 @@ -From b6732f68848ecc8ff01054bf7aea70a241c37116 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 10 Apr 2020 11:23:39 -0700 -Subject: [PATCH] Remove using .end directive with clang - -Clang does not support this asm directive -Fixes Issue #19 - -Upstream-Status: Submitted [https://github.com/kaniini/libucontext/pull/20] -Signed-off-by: Khem Raj ---- - arch/common/common-defs.h | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/arch/common/common-defs.h b/arch/common/common-defs.h -index bf2fb8c..618116b 100644 ---- a/arch/common/common-defs.h -+++ b/arch/common/common-defs.h -@@ -28,10 +28,13 @@ - ENT(__proc) \ - __proc: \ - SETUP_FRAME(__proc) -- -+#ifdef __clang__ -+#define END(__proc) -+#else - #define END(__proc) \ - .end __proc; \ - .size __proc,.-__proc; -+#endif - - #define ALIAS(__alias, __real) \ - .weak __alias; \ --- -2.26.0 - diff --git a/poky/meta/recipes-core/os-release/os-release.bb b/poky/meta/recipes-core/os-release/os-release.bb index d5793c6fe..a29d67812 100644 --- a/poky/meta/recipes-core/os-release/os-release.bb +++ b/poky/meta/recipes-core/os-release/os-release.bb @@ -13,6 +13,7 @@ do_configure[noexec] = "1" # Other valid fields: BUILD_ID ID_LIKE ANSI_COLOR CPE_NAME # HOME_URL SUPPORT_URL BUG_REPORT_URL OS_RELEASE_FIELDS = "ID ID_LIKE NAME VERSION VERSION_ID PRETTY_NAME" +OS_RELEASE_UNQUOTED_FIELDS = "ID VERSION_ID VARIANT_ID" ID = "${DISTRO}" NAME = "${DISTRO_NAME}" @@ -22,8 +23,8 @@ PRETTY_NAME = "${DISTRO_NAME} ${VERSION}" BUILD_ID ?= "${DATETIME}" BUILD_ID[vardepsexclude] = "DATETIME" -def sanitise_version(ver): - # VERSION_ID should be (from os-release(5)): +def sanitise_value(ver): + # unquoted fields like VERSION_ID should be (from os-release(5)): # lower-case string (mostly numeric, no spaces or other characters # outside of 0-9, a-z, ".", "_" and "-") ret = ver.replace('+', '-').replace(' ','_') @@ -32,11 +33,14 @@ def sanitise_version(ver): python do_compile () { with open(d.expand('${B}/os-release'), 'w') as f: for field in d.getVar('OS_RELEASE_FIELDS').split(): + unquotedFields = d.getVar('OS_RELEASE_UNQUOTED_FIELDS').split() value = d.getVar(field) - if value and field == 'VERSION_ID': - value = sanitise_version(value) if value: - f.write('{0}="{1}"\n'.format(field, value)) + if field in unquotedFields: + value = sanitise_value(value) + f.write('{0}={1}\n'.format(field, value)) + else: + f.write('{0}="{1}"\n'.format(field, value)) } do_compile[vardeps] += "${OS_RELEASE_FIELDS}" diff --git a/poky/meta/recipes-core/util-linux/util-linux/0001-include-cleanup-pidfd-inckudes.patch b/poky/meta/recipes-core/util-linux/util-linux/0001-include-cleanup-pidfd-inckudes.patch new file mode 100644 index 000000000..0ef6fb4ec --- /dev/null +++ b/poky/meta/recipes-core/util-linux/util-linux/0001-include-cleanup-pidfd-inckudes.patch @@ -0,0 +1,42 @@ +From 0a4035ff2e4fd5b5ae0cf8f8665696c2aff53b75 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Tue, 10 Mar 2020 11:43:16 +0100 +Subject: [PATCH] include: cleanup pidfd inckudes + +Upstream-Status: Backport [https://github.com/karelzak/util-linux/commit/0a4035ff2e4fd5b5ae0cf8f8665696c2aff53b75] + +Signed-off-by: Karel Zak +Signed-off-by: Benjamin Fair +--- + include/pidfd-utils.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h +index 0baedd2c9..4a6c3a604 100644 +--- a/include/pidfd-utils.h ++++ b/include/pidfd-utils.h +@@ -3,10 +3,10 @@ + + #if defined(__linux__) + # include +-# if defined(SYS_pidfd_send_signal) ++# if defined(SYS_pidfd_send_signal) && defined(SYS_pidfd_open) + # include + +-# ifndef HAVE_PIDFD_OPEN ++# ifndef HAVE_PIDFD_SEND_SIGNAL + static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info, + unsigned int flags) + { +@@ -14,7 +14,7 @@ static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info, + } + # endif + +-# ifndef HAVE_PIDFD_SEND_SIGNAL ++# ifndef HAVE_PIDFD_OPEN + static inline int pidfd_open(pid_t pid, unsigned int flags) + { + return syscall(SYS_pidfd_open, pid, flags); +-- +2.26.1.301.g55bc3eb7cb9-goog + diff --git a/poky/meta/recipes-core/util-linux/util-linux/0001-kill-include-sys-types.h-before-checking-SYS_pidfd_s.patch b/poky/meta/recipes-core/util-linux/util-linux/0001-kill-include-sys-types.h-before-checking-SYS_pidfd_s.patch new file mode 100644 index 000000000..e43e12873 --- /dev/null +++ b/poky/meta/recipes-core/util-linux/util-linux/0001-kill-include-sys-types.h-before-checking-SYS_pidfd_s.patch @@ -0,0 +1,64 @@ +From 3cfde0370d3a8949df0c5bcf447cec6692910ed2 Mon Sep 17 00:00:00 2001 +From: Sami Kerola +Date: Sat, 15 Feb 2020 21:12:50 +0000 +Subject: [PATCH] kill: include sys/types.h before checking + SYS_pidfd_send_signal + +Including sys/types.h must happen before SYS_pidfd_send_signal is checked, +because that header defines variable in normal conditions. When sys/types.h +does not have SYS_pidfd_send_signal then fallback is defined in config.h +that is included by default, and has therefore worked fine before and after +this change. + +Upstream-Status: Backport [https://github.com/karelzak/util-linux/commit/3cfde0370d3a8949df0c5bcf447cec6692910ed2] + +Signed-off-by: Sami Kerola +Signed-off-by: Benjamin Fair +--- + include/pidfd-utils.h | 18 ++++++++++-------- + 1 file changed, 10 insertions(+), 8 deletions(-) + +diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h +index 593346576..0baedd2c9 100644 +--- a/include/pidfd-utils.h ++++ b/include/pidfd-utils.h +@@ -1,26 +1,28 @@ + #ifndef UTIL_LINUX_PIDFD_UTILS + #define UTIL_LINUX_PIDFD_UTILS + +-#if defined(__linux__) && defined(SYS_pidfd_send_signal) +-# include ++#if defined(__linux__) + # include ++# if defined(SYS_pidfd_send_signal) ++# include + +-# ifndef HAVE_PIDFD_OPEN ++# ifndef HAVE_PIDFD_OPEN + static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info, + unsigned int flags) + { + return syscall(SYS_pidfd_send_signal, pidfd, sig, info, flags); + } +-# endif ++# endif + +-# ifndef HAVE_PIDFD_SEND_SIGNAL ++# ifndef HAVE_PIDFD_SEND_SIGNAL + static inline int pidfd_open(pid_t pid, unsigned int flags) + { + return syscall(SYS_pidfd_open, pid, flags); + } +-# endif ++# endif + +-# define UL_HAVE_PIDFD 1 ++# define UL_HAVE_PIDFD 1 + +-#endif /* __linux__ && SYS_pidfd_send_signal */ ++# endif /* SYS_pidfd_send_signal */ ++#endif /* __linux__ */ + #endif /* UTIL_LINUX_PIDFD_UTILS */ +-- +2.26.1.301.g55bc3eb7cb9-goog + diff --git a/poky/meta/recipes-core/util-linux/util-linux_2.35.1.bb b/poky/meta/recipes-core/util-linux/util-linux_2.35.1.bb index 51964c912..516b78388 100644 --- a/poky/meta/recipes-core/util-linux/util-linux_2.35.1.bb +++ b/poky/meta/recipes-core/util-linux/util-linux_2.35.1.bb @@ -9,6 +9,8 @@ SRC_URI += "file://configure-sbindir.patch \ file://avoid_parallel_tests.patch \ file://0001-hwclock-fix-for-glibc-2.31-settimeofday.patch \ file://0001-libfdisk-script-accept-sector-size-ignore-unknown-he.patch \ + file://0001-kill-include-sys-types.h-before-checking-SYS_pidfd_s.patch \ + file://0001-include-cleanup-pidfd-inckudes.patch \ " SRC_URI[md5sum] = "7f64882f631225f0295ca05080cee1bf" SRC_URI[sha256sum] = "d9de3edd287366cd908e77677514b9387b22bc7b88f45b83e1922c3597f1d7f9" diff --git a/poky/meta/recipes-devtools/dnf/dnf/0001-dnf-write-the-log-lock-to-root.patch b/poky/meta/recipes-devtools/dnf/dnf/0001-dnf-write-the-log-lock-to-root.patch new file mode 100644 index 000000000..21b50dee0 --- /dev/null +++ b/poky/meta/recipes-devtools/dnf/dnf/0001-dnf-write-the-log-lock-to-root.patch @@ -0,0 +1,29 @@ +From 5e07c16a506b19cbb107d5e99fca41d679b23b9a Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Tue, 28 Apr 2020 15:55:00 +0200 +Subject: [PATCH] dnf: write the log lock to root + +Writing it to /var/log appears to be racing with installation +of base-files, and if lock is created first, base-files +will refuse to install (due to the target directory +already existing, and base-files creating it as a symlink). + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + dnf/logging.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/dnf/logging.py b/dnf/logging.py +index bd660470..a9d808b1 100644 +--- a/dnf/logging.py ++++ b/dnf/logging.py +@@ -94,7 +94,7 @@ class MultiprocessRotatingFileHandler(logging.handlers.RotatingFileHandler): + def __init__(self, filename, mode='a', maxBytes=0, backupCount=0, encoding=None, delay=False): + super(MultiprocessRotatingFileHandler, self).__init__( + filename, mode, maxBytes, backupCount, encoding, delay) +- self.rotate_lock = dnf.lock.build_log_lock("/var/log/", True) ++ self.rotate_lock = dnf.lock.build_log_lock("/", True) + + def emit(self, record): + while True: diff --git a/poky/meta/recipes-devtools/dnf/dnf/Fix-SyntaxWarning.patch b/poky/meta/recipes-devtools/dnf/dnf/Fix-SyntaxWarning.patch deleted file mode 100644 index 1bd8b0959..000000000 --- a/poky/meta/recipes-devtools/dnf/dnf/Fix-SyntaxWarning.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 23c5b15efe42e5e6ee695e54798bac248532d8d6 Mon Sep 17 00:00:00 2001 - -Date: Tue, 28 May 2019 13:14:51 +0200 -Subject: [oe-core][PATCH 1/1] Fix SyntaxWarning: "is" with a literal. Did you - mean "=="? - ---- - dnf/cli/commands/repoquery.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) ---- - -Unchanged. Appears in version 4.2.7. - -Upstream-Status: Backport [git://github.com/rpm-software-management/dnf.git] - -Signed-off-by: Joe Slater - - -diff --git a/dnf/cli/commands/repoquery.py b/dnf/cli/commands/repoquery.py -index 941a470..63fc668 100644 ---- a/dnf/cli/commands/repoquery.py -+++ b/dnf/cli/commands/repoquery.py -@@ -611,7 +611,7 @@ class RepoQueryCommand(commands.Command): - - def tree_seed(self, query, aquery, opts, level=-1, usedpkgs=None): - for pkg in sorted(set(query.run()), key=lambda p: p.name): -- usedpkgs = set() if usedpkgs is None or level is -1 else usedpkgs -+ usedpkgs = set() if usedpkgs is None or level == -1 else usedpkgs - if pkg.name.startswith("rpmlib") or pkg.name.startswith("solvable"): - return - self.grow_tree(level, pkg, opts) --- -2.7.4 - diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb b/poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb deleted file mode 100644 index a046ffc05..000000000 --- a/poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb +++ /dev/null @@ -1,90 +0,0 @@ -SUMMARY = "Package manager forked from Yum, using libsolv as a dependency resolver" -DESCRIPTION = "Software package manager that installs, updates, and removes \ -packages on RPM-based Linux distributions. It automatically computes \ -dependencies and determines the actions required to install packages." -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://PACKAGE-LICENSING;md5=4a0548e303dbc77f067335b4d688e745 \ - " - -SRC_URI = "git://github.com/rpm-software-management/dnf.git \ - file://0001-Corretly-install-tmpfiles.d-configuration.patch \ - file://0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch \ - file://0005-Do-not-prepend-installroot-to-logdir.patch \ - file://0029-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ - file://0030-Run-python-scripts-using-env.patch \ - file://Fix-SyntaxWarning.patch \ - file://0001-set-python-path-for-completion_helper.patch \ - " - -SRCREV = "9947306a55271b8b7c9e2b6e3b7d582885b6045d" -UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" - -S = "${WORKDIR}/git" - -inherit cmake gettext bash-completion distutils3-base systemd - -DEPENDS += "libdnf librepo libcomps python3-iniparse" - -# manpages generation requires http://www.sphinx-doc.org/ -EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3" - -BBCLASSEXTEND = "native nativesdk" - -RDEPENDS_${PN} += " \ - python3-core \ - python3-codecs \ - python3-netclient \ - python3-email \ - python3-threading \ - python3-distutils \ - python3-logging \ - python3-fcntl \ - librepo \ - python3-shell \ - libcomps \ - libdnf \ - python3-sqlite3 \ - python3-compression \ - python3-rpm \ - python3-iniparse \ - python3-json \ - python3-curses \ - python3-misc \ - python3-gpg \ - " - -RDEPENDS_${PN}_class-native = "" - -RRECOMMENDS_${PN}_class-target += "gnupg" - -# Create a symlink called 'dnf' as 'make install' does not do it, but -# .spec file in dnf source tree does (and then Fedora and dnf documentation -# says that dnf binary is plain 'dnf'). -do_install_append() { - lnr ${D}/${bindir}/dnf-3 ${D}/${bindir}/dnf - lnr ${D}/${bindir}/dnf-automatic-3 ${D}/${bindir}/dnf-automatic -} - -# Direct dnf-native to read rpm configuration from our sysroot, not the one it was compiled in -do_install_append_class-native() { - create_wrapper ${D}/${bindir}/dnf \ - RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \ - RPM_NO_CHROOT_FOR_SCRIPTS=1 -} - -do_install_append_class-nativesdk() { - create_wrapper ${D}/${bindir}/dnf \ - RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm \ - RPM_NO_CHROOT_FOR_SCRIPTS=1 -} - -SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \ - dnf-automatic.service dnf-automatic.timer \ - dnf-automatic-download.service dnf-automatic-download.timer \ - dnf-automatic-install.service dnf-automatic-install.timer \ - dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \ -" -SYSTEMD_AUTO_ENABLE ?= "disable" - -PNBLACKLIST[dnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'does not build without package_rpm in PACKAGE_CLASSES due disabled rpm support in libsolv', d)}" diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb b/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb new file mode 100644 index 000000000..44dab1d8a --- /dev/null +++ b/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb @@ -0,0 +1,90 @@ +SUMMARY = "Package manager forked from Yum, using libsolv as a dependency resolver" +DESCRIPTION = "Software package manager that installs, updates, and removes \ +packages on RPM-based Linux distributions. It automatically computes \ +dependencies and determines the actions required to install packages." +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://PACKAGE-LICENSING;md5=4a0548e303dbc77f067335b4d688e745 \ + " + +SRC_URI = "git://github.com/rpm-software-management/dnf.git \ + file://0001-Corretly-install-tmpfiles.d-configuration.patch \ + file://0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch \ + file://0005-Do-not-prepend-installroot-to-logdir.patch \ + file://0029-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ + file://0030-Run-python-scripts-using-env.patch \ + file://0001-set-python-path-for-completion_helper.patch \ + file://0001-dnf-write-the-log-lock-to-root.patch \ + " + +SRCREV = "864c381baabf024c299dca75abfda96139b8f583" +UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" + +S = "${WORKDIR}/git" + +inherit cmake gettext bash-completion distutils3-base systemd + +DEPENDS += "libdnf librepo libcomps python3-iniparse" + +# manpages generation requires http://www.sphinx-doc.org/ +EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3" + +BBCLASSEXTEND = "native nativesdk" + +RDEPENDS_${PN} += " \ + python3-core \ + python3-codecs \ + python3-netclient \ + python3-email \ + python3-threading \ + python3-distutils \ + python3-logging \ + python3-fcntl \ + librepo \ + python3-shell \ + libcomps \ + libdnf \ + python3-sqlite3 \ + python3-compression \ + python3-rpm \ + python3-iniparse \ + python3-json \ + python3-curses \ + python3-misc \ + python3-gpg \ + " + +RDEPENDS_${PN}_class-native = "" + +RRECOMMENDS_${PN}_class-target += "gnupg" + +# Create a symlink called 'dnf' as 'make install' does not do it, but +# .spec file in dnf source tree does (and then Fedora and dnf documentation +# says that dnf binary is plain 'dnf'). +do_install_append() { + lnr ${D}/${bindir}/dnf-3 ${D}/${bindir}/dnf + lnr ${D}/${bindir}/dnf-automatic-3 ${D}/${bindir}/dnf-automatic +} + +# Direct dnf-native to read rpm configuration from our sysroot, not the one it was compiled in +do_install_append_class-native() { + create_wrapper ${D}/${bindir}/dnf \ + RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \ + RPM_NO_CHROOT_FOR_SCRIPTS=1 +} + +do_install_append_class-nativesdk() { + create_wrapper ${D}/${bindir}/dnf \ + RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm \ + RPM_NO_CHROOT_FOR_SCRIPTS=1 +} + +SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \ + dnf-automatic.service dnf-automatic.timer \ + dnf-automatic-download.service dnf-automatic-download.timer \ + dnf-automatic-install.service dnf-automatic-install.timer \ + dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \ +" +SYSTEMD_AUTO_ENABLE ?= "disable" + +PNBLACKLIST[dnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'does not build without package_rpm in PACKAGE_CLASSES due disabled rpm support in libsolv', d)}" diff --git a/poky/meta/recipes-devtools/dpkg/dpkg/0001-Add-support-for-riscv32-CPU.patch b/poky/meta/recipes-devtools/dpkg/dpkg/0001-Add-support-for-riscv32-CPU.patch new file mode 100644 index 000000000..52e85705f --- /dev/null +++ b/poky/meta/recipes-devtools/dpkg/dpkg/0001-Add-support-for-riscv32-CPU.patch @@ -0,0 +1,39 @@ +From 279e4c274f5f295823cf9fa95d3ba131f6d711db Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 29 Apr 2020 22:02:23 -0700 +Subject: [PATCH] Add support for riscv32 CPU + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + data/cputable | 1 + + scripts/Dpkg/Vendor/Debian.pm | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/data/cputable b/data/cputable +index 9f2a8e0..1d935b1 100644 +--- a/data/cputable ++++ b/data/cputable +@@ -41,6 +41,7 @@ powerpc powerpc (powerpc|ppc) 32 big + powerpcel powerpcle powerpcle 32 little + ppc64 powerpc64 (powerpc|ppc)64 64 big + ppc64el powerpc64le powerpc64le 64 little ++riscv32 riscv32 riscv32 32 little + riscv64 riscv64 riscv64 64 little + s390 s390 s390 32 big + s390x s390x s390x 64 big +diff --git a/scripts/Dpkg/Vendor/Debian.pm b/scripts/Dpkg/Vendor/Debian.pm +index a352bbd..fa1d90b 100644 +--- a/scripts/Dpkg/Vendor/Debian.pm ++++ b/scripts/Dpkg/Vendor/Debian.pm +@@ -306,6 +306,7 @@ sub _add_build_flags { + powerpc + ppc64 + ppc64el ++ riscv32 + riscv64 + s390x + sparc +-- +2.26.2 + diff --git a/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb b/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb index e9dec337b..50fe54dee 100644 --- a/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb +++ b/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb @@ -13,6 +13,7 @@ SRC_URI = "${DEBIAN_MIRROR}/main/d/${BPN}/${BPN}_${PV}.tar.xz \ file://0007-dpkg-deb-build.c-Remove-usage-of-clamp-mtime-in-tar.patch \ file://0001-dpkg-Support-muslx32-build.patch \ file://pager.patch \ + file://0001-Add-support-for-riscv32-CPU.patch \ " SRC_URI_append_class-native = " \ file://tweak-options-require-tar-1.27.patch \ diff --git a/poky/meta/recipes-devtools/fdisk/gptfdisk/0001-gptcurses-correctly-include-curses.h.patch b/poky/meta/recipes-devtools/fdisk/gptfdisk/0001-gptcurses-correctly-include-curses.h.patch new file mode 100644 index 000000000..67689e838 --- /dev/null +++ b/poky/meta/recipes-devtools/fdisk/gptfdisk/0001-gptcurses-correctly-include-curses.h.patch @@ -0,0 +1,27 @@ +From 607b0bed5e8a5f5c3754cd6ffcf499d8134c37f9 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Mon, 30 Mar 2020 17:11:19 +0200 +Subject: [PATCH] gptcurses: correctly include curses.h + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + gptcurses.cc | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/gptcurses.cc b/gptcurses.cc +index 1b18cf2..4ebfde1 100644 +--- a/gptcurses.cc ++++ b/gptcurses.cc +@@ -23,11 +23,7 @@ + #include + #include + #include +-#ifdef __APPLE__ + #include +-#else +-#include +-#endif + #include "gptcurses.h" + #include "support.h" + diff --git a/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb b/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb deleted file mode 100644 index b043c9654..000000000 --- a/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb +++ /dev/null @@ -1,33 +0,0 @@ -SUMMARY = "Utility for modifying GPT disk partitioning" -DESCRIPTION = "GPT fdisk is a disk partitioning tool loosely modeled on Linux fdisk, but used for modifying GUID Partition Table (GPT) disks. The related FixParts utility fixes some common problems on Master Boot Record (MBR) disks." - -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" - -DEPENDS = "util-linux" - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${PV}/${BP}.tar.gz" -SRC_URI[md5sum] = "5ecc3c44913bb6b53d3708d1ac7ac295" -SRC_URI[sha256sum] = "b663391a6876f19a3cd901d862423a16e2b5ceaa2f4a3b9bb681e64b9c7ba78d" - -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/gptfdisk/files/gptfdisk/" -UPSTREAM_CHECK_REGEX = "/gptfdisk/(?P(\d+[\.\-_]*)+)/" - -EXTRA_OEMAKE = "'CC=${CC}' 'CXX=${CXX}' gdisk fixparts ${PACKAGECONFIG_CONFARGS}" - -PACKAGECONFIG ??= "ncurses popt" -PACKAGECONFIG[ncurses] = "cgdisk,,ncurses" -PACKAGECONFIG[popt] = "sgdisk,,popt" - -do_install() { - install -d ${D}${sbindir} - for f in cgdisk sgdisk; do - if [ -x $f ]; then - install -m 0755 $f ${D}${sbindir} - fi - done - install -m 0755 gdisk ${D}${sbindir} - install -m 0755 fixparts ${D}${sbindir} -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.5.bb b/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.5.bb new file mode 100644 index 000000000..c7850f03c --- /dev/null +++ b/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.5.bb @@ -0,0 +1,35 @@ +SUMMARY = "Utility for modifying GPT disk partitioning" +DESCRIPTION = "GPT fdisk is a disk partitioning tool loosely modeled on Linux fdisk, but used for modifying GUID Partition Table (GPT) disks. The related FixParts utility fixes some common problems on Master Boot Record (MBR) disks." + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" + +DEPENDS = "util-linux" + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${PV}/${BP}.tar.gz \ + file://0001-gptcurses-correctly-include-curses.h.patch \ + " +SRC_URI[md5sum] = "58dac67c85e46ca87b587231549aefe6" +SRC_URI[sha256sum] = "0e7d3987cd0488ecaf4b48761bc97f40b1dc089e5ff53c4b37abe30bc67dcb2f" + +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/gptfdisk/files/gptfdisk/" +UPSTREAM_CHECK_REGEX = "/gptfdisk/(?P(\d+[\.\-_]*)+)/" + +EXTRA_OEMAKE = "'CC=${CC}' 'CXX=${CXX}' gdisk fixparts ${PACKAGECONFIG_CONFARGS}" + +PACKAGECONFIG ??= "ncurses popt" +PACKAGECONFIG[ncurses] = "cgdisk,,ncurses" +PACKAGECONFIG[popt] = "sgdisk,,popt" + +do_install() { + install -d ${D}${sbindir} + for f in cgdisk sgdisk; do + if [ -x $f ]; then + install -m 0755 $f ${D}${sbindir} + fi + done + install -m 0755 gdisk ${D}${sbindir} + install -m 0755 fixparts ${D}${sbindir} +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/gcc/gcc-target.inc b/poky/meta/recipes-devtools/gcc/gcc-target.inc index 8cb432780..6263e8149 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-target.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-target.inc @@ -15,11 +15,11 @@ EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu" ARMFPARCHEXT ?= "" -EXTRA_OECONF_append_armv6 = " --with-arch=armv6${ARMFPARCHEXT}" -EXTRA_OECONF_append_armv7a = " --with-arch=armv7-a${ARMFPARCHEXT}" -EXTRA_OECONF_append_armv7ve = " --with-arch=armv7ve${ARMFPARCHEXT}" -EXTRA_OECONF_append_arc = " --with-cpu=${TUNE_PKGARCH}" -EXTRA_OECONF_append_x86-64 = " --with-arch=native" +EXTRA_OECONF_append_armv6_class-target = " --with-arch=armv6${ARMFPARCHEXT}" +EXTRA_OECONF_append_armv7a_class-target = " --with-arch=armv7-a${ARMFPARCHEXT}" +EXTRA_OECONF_append_armv7ve_class-target = " --with-arch=armv7ve${ARMFPARCHEXT}" +EXTRA_OECONF_append_arc_class-target = " --with-cpu=${TUNE_PKGARCH}" +EXTRA_OECONF_append_x86-64_class-target = " --with-arch=native" # libcc1 requres gcc_cv_objdump when cross build, but gcc_cv_objdump is # set in subdir gcc, so subdir libcc1 can't use it, export it here to diff --git a/poky/meta/recipes-devtools/jquery/jquery_3.4.1.bb b/poky/meta/recipes-devtools/jquery/jquery_3.4.1.bb deleted file mode 100644 index 1bf6ef5c9..000000000 --- a/poky/meta/recipes-devtools/jquery/jquery_3.4.1.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "jQuery is a fast, small, and feature-rich JavaScript library" -HOMEPAGE = "https://jquery.com/" -LICENSE = "MIT" -SECTION = "devel" -LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}.js;startline=8;endline=10;md5=cdb86f5bda90caec023592d2e768357c" - -SRC_URI = "\ - https://code.jquery.com/${BP}.js;name=js \ - https://code.jquery.com/${BP}.min.js;name=min \ - https://code.jquery.com/${BP}.min.map;name=map \ - " - -SRC_URI[js.sha256sum] = "5a93a88493aa32aab228bf4571c01207d3b42b0002409a454d404b4d8395bd55" -SRC_URI[min.sha256sum] = "0925e8ad7bd971391a8b1e98be8e87a6971919eb5b60c196485941c3c1df089a" -SRC_URI[map.sha256sum] = "8da74aec0fcdd7678a2663b3cc9bafbaf009e6d6929b28bb3dd95bced18206f6" - -UPSTREAM_CHECK_REGEX = "jquery-(?P\d+(\.\d+)+)\.js" - -inherit allarch - -do_install() { - install -d ${D}${datadir}/javascript/${BPN}/ - install -m 644 ${WORKDIR}/${BP}.js ${D}${datadir}/javascript/${BPN}/${BPN}.js - install -m 644 ${WORKDIR}/${BP}.min.js ${D}${datadir}/javascript/${BPN}/${BPN}.min.js - install -m 644 ${WORKDIR}/${BP}.min.map ${D}${datadir}/javascript/${BPN}/${BPN}.min.map -} - -PACKAGES = "${PN}" -FILES_${PN} = "${datadir}" - -BBCLASSEXTEND += "native nativesdk" diff --git a/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb b/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb new file mode 100644 index 000000000..5c6f9cddb --- /dev/null +++ b/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb @@ -0,0 +1,31 @@ +SUMMARY = "jQuery is a fast, small, and feature-rich JavaScript library" +HOMEPAGE = "https://jquery.com/" +LICENSE = "MIT" +SECTION = "devel" +LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}.js;startline=8;endline=10;md5=b1e67ece919e852643f1541a54492d65" + +SRC_URI = "\ + https://code.jquery.com/${BP}.js;name=js \ + https://code.jquery.com/${BP}.min.js;name=min \ + https://code.jquery.com/${BP}.min.map;name=map \ + " + +SRC_URI[js.sha256sum] = "aff01a147aeccc9b70a5efad1f2362fd709f3316296ec460d94aa7d31decdb37" +SRC_URI[min.sha256sum] = "c4dccdd9ae25b64078e0c73f273de94f8894d5c99e4741645ece29aeefc9c5a4" +SRC_URI[map.sha256sum] = "3149351c8cbc3fb230bbf6188617c7ffda77d9e14333f4f5f0aa1aae379df892" + +UPSTREAM_CHECK_REGEX = "jquery-(?P\d+(\.\d+)+)\.js" + +inherit allarch + +do_install() { + install -d ${D}${datadir}/javascript/${BPN}/ + install -m 644 ${WORKDIR}/${BP}.js ${D}${datadir}/javascript/${BPN}/${BPN}.js + install -m 644 ${WORKDIR}/${BP}.min.js ${D}${datadir}/javascript/${BPN}/${BPN}.min.js + install -m 644 ${WORKDIR}/${BP}.min.map ${D}${datadir}/javascript/${BPN}/${BPN}.min.map +} + +PACKAGES = "${PN}" +FILES_${PN} = "${datadir}" + +BBCLASSEXTEND += "native nativesdk" diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch index 3c87d4d8b..ac9400c48 100644 --- a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch +++ b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch @@ -1,4 +1,4 @@ -From e5a50db749b2b02e9e0cff9f7b639020e8ac76da Mon Sep 17 00:00:00 2001 +From 56fa2bbdbd29377a6ef0d0b7aadbac8b5ea8c95b Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Tue, 6 Nov 2018 13:54:43 +0100 Subject: [PATCH] Add WITH_TESTS option @@ -14,18 +14,18 @@ Signed-off-by: Alexander Kanavin 2 files changed, 5 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index ce88b9e3..7a99320a 100644 +index 881152a..965c992 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -32,6 +32,7 @@ option(WITH_HTML "Enables hawkey HTML generation" ON) - option(WITH_MAN "Enables hawkey man page generation" ON) +@@ -33,6 +33,7 @@ option(WITH_MAN "Enables hawkey man page generation" ON) + option(WITH_ZCHUNK "Build with zchunk support" ON) option(ENABLE_RHSM_SUPPORT "Build with Red Hat Subscription Manager support?" OFF) option(ENABLE_SOLV_URPMREORDER "Build with support for URPM-like solution reordering?" OFF) +option(WITH_TESTS "Enables unit tests" ON) # load pkg-config first; it's required by other modules -@@ -158,8 +159,10 @@ endif() +@@ -165,8 +166,10 @@ endif() # build tests @@ -37,7 +37,7 @@ index ce88b9e3..7a99320a 100644 add_subdirectory(python/hawkey) endif() diff --git a/python/hawkey/CMakeLists.txt b/python/hawkey/CMakeLists.txt -index d9645346..84d17204 100644 +index d964534..84d1720 100644 --- a/python/hawkey/CMakeLists.txt +++ b/python/hawkey/CMakeLists.txt @@ -50,4 +50,6 @@ target_link_libraries(_hawkeymodule ${PYTHON_LIBRARY}) diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch new file mode 100644 index 000000000..6dd7c71aa --- /dev/null +++ b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch @@ -0,0 +1,42 @@ +From b570c7f8bd089deec7da2b108aa789a27025a473 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Tue, 19 Nov 2019 13:46:09 +0100 +Subject: [PATCH] Look fo sphinx only if documentation is actually enabled + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- + docs/hawkey/CMakeLists.txt | 20 +++++++++++--------- + 1 file changed, 11 insertions(+), 9 deletions(-) + +diff --git a/docs/hawkey/CMakeLists.txt b/docs/hawkey/CMakeLists.txt +index 52cc35c6..63c7672f 100644 +--- a/docs/hawkey/CMakeLists.txt ++++ b/docs/hawkey/CMakeLists.txt +@@ -2,15 +2,17 @@ + # tell sphinx-build to do them both in one go: + + +-find_program(SPHINX_PROGRAM NAMES "sphinx-build-${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}") +-if(NOT EXISTS ${SPHINX_PROGRAM}) +- find_program(SPHINX_PROGRAM NAMES sphinx-build-${PYTHON_VERSION_MAJOR}) +-endif() +-if(NOT EXISTS ${SPHINX_PROGRAM}) +- find_program(SPHINX_PROGRAM NAMES sphinx-build) +-endif() +-if(NOT EXISTS ${SPHINX_PROGRAM}) +- message(FATAL_ERROR "Sphinx program not found." ) ++if (WITH_HTML OR WITH_MAN) ++ find_program(SPHINX_PROGRAM NAMES "sphinx-build-${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}") ++ if(NOT EXISTS ${SPHINX_PROGRAM}) ++ find_program(SPHINX_PROGRAM NAMES sphinx-build-${PYTHON_VERSION_MAJOR}) ++ endif() ++ if(NOT EXISTS ${SPHINX_PROGRAM}) ++ find_program(SPHINX_PROGRAM NAMES sphinx-build) ++ endif() ++ if(NOT EXISTS ${SPHINX_PROGRAM}) ++ message(FATAL_ERROR "Sphinx program not found." ) ++ endif() + endif() + + if(WITH_HTML) diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch new file mode 100644 index 000000000..6be484fea --- /dev/null +++ b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch @@ -0,0 +1,36 @@ +From 96ca7d0049461df2293dd0000edcbc69b64255e0 Mon Sep 17 00:00:00 2001 +From: Peter Kjellerstedt +Date: Sun, 3 May 2020 22:40:39 +0200 +Subject: [PATCH] Use single-quotes around string literals used in SQL + statements + +If sqlite is built with -DSQLITE_DQS=0 in accordance with +https://sqlite.org/quirks.html#dblquote, migration to version 1.2 of the +history database would fail with: + + History database cannot be created: /var/lib/dnf/history.sqlite. + Error: SQLite error on ":memory:": Executing an SQL statement failed: + no such column: 1.2 + +Upstream-Status: Submitted [https://github.com/rpm-software-management/libdnf/pull/951] +Signed-off-by: Peter Kjellerstedt +--- + libdnf/transaction/sql/migrate_tables_1_2.sql | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libdnf/transaction/sql/migrate_tables_1_2.sql b/libdnf/transaction/sql/migrate_tables_1_2.sql +index 49b75315..f80ad1c4 100644 +--- a/libdnf/transaction/sql/migrate_tables_1_2.sql ++++ b/libdnf/transaction/sql/migrate_tables_1_2.sql +@@ -1,9 +1,9 @@ + R"**( + BEGIN TRANSACTION; + ALTER TABLE trans +- ADD comment TEXT DEFAULT ""; ++ ADD comment TEXT DEFAULT ''; + UPDATE config +- SET value = "1.2" ++ SET value = '1.2' + WHERE key = 'version'; + COMMIT; + )**" diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0001-include-stdexcept-for-runtime_error.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0001-include-stdexcept-for-runtime_error.patch deleted file mode 100644 index cedf53924..000000000 --- a/poky/meta/recipes-devtools/libdnf/libdnf/0001-include-stdexcept-for-runtime_error.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 5f8eee5040d7074710cd542fc50f7a40918321fc Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 23 Dec 2019 14:30:22 -0800 -Subject: [PATCH] include for runtime_error - -Fixes - -error: class 'libdnf::ModulePackageContainer::Exception' does not have any field named 'runtime_error' - explicit Exception(const std::string &what) : runtime_error(what) {} - ^~~~~~~~~~~~~ - -Upstream-Status: Submitted [https://github.com/rpm-software-management/libdnf/pull/867] -Signed-off-by: Khem Raj ---- - libdnf/goal/Goal.hpp | 1 + - libdnf/module/ModulePackageContainer.hpp | 1 + - libdnf/repo/solvable/Dependency.cpp | 3 ++- - 3 files changed, 4 insertions(+), 1 deletion(-) - -diff --git a/libdnf/goal/Goal.hpp b/libdnf/goal/Goal.hpp -index f33dfa24..7b8d822c 100644 ---- a/libdnf/goal/Goal.hpp -+++ b/libdnf/goal/Goal.hpp -@@ -22,6 +22,7 @@ - #define __GOAL_HPP - - #include -+#include - - #include "../dnf-types.h" - #include "../hy-goal.h" -diff --git a/libdnf/module/ModulePackageContainer.hpp b/libdnf/module/ModulePackageContainer.hpp -index 1f815fda..37a8832d 100644 ---- a/libdnf/module/ModulePackageContainer.hpp -+++ b/libdnf/module/ModulePackageContainer.hpp -@@ -30,6 +30,7 @@ - #include - #include - #include -+#include - - //class ModulePackageContainer; - //typedef std::shared_ptr ModulePackageContainerPtr; -diff --git a/libdnf/repo/solvable/Dependency.cpp b/libdnf/repo/solvable/Dependency.cpp -index 6682b729..0fc8b5cd 100644 ---- a/libdnf/repo/solvable/Dependency.cpp -+++ b/libdnf/repo/solvable/Dependency.cpp -@@ -18,6 +18,7 @@ - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -+#include - #include "Dependency.hpp" - #include "libdnf/utils/utils.hpp" - #include "libdnf/repo/DependencySplitter.hpp" -@@ -106,4 +107,4 @@ Dependency::getReldepId(DnfSack *sack, const char * reldepStr) - } - } - --} -\ No newline at end of file -+} --- -2.24.1 - diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/fix-deprecation-warning.patch b/poky/meta/recipes-devtools/libdnf/libdnf/fix-deprecation-warning.patch deleted file mode 100644 index 3a3e02f35..000000000 --- a/poky/meta/recipes-devtools/libdnf/libdnf/fix-deprecation-warning.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 66d9b2ba3fbc7b04f2b5ad9d0e5371340c037b5f Mon Sep 17 00:00:00 2001 -From: Marek Blaha -Date: Wed, 10 Jul 2019 10:11:01 +0200 -Subject: [oe-core][PATCH 1/1] Fix Python 3.8 deprecation warning - (RhBug:1724244) - -This deprecation warning was introduced in Python 3.8 by -https://bugs.python.org/issue36381: - -/usr/lib/python3.8/site-packages/dnf/package.py:57: DeprecationWarning: PY_SSIZE_T_CLEAN will be required for '#' formats - return super(Package, self).chksum - -https://bugzilla.redhat.com/show_bug.cgi?id=1724244 ---- - python/hawkey/package-py.cpp | 3 ++- - python/hawkey/packagedelta-py.cpp | 3 ++- - 2 files changed, 4 insertions(+), 2 deletions(-) ---- - -Unchanged. Appears in version 0.35.2. - -Upstream-Status: Backport [git://github.com/rpm-software-management/libdnf.git] - -Signed-off-by: Joe Slater - - -diff --git a/python/hawkey/package-py.cpp b/python/hawkey/package-py.cpp -index 5102bba..68e03cb 100644 ---- a/python/hawkey/package-py.cpp -+++ b/python/hawkey/package-py.cpp -@@ -18,6 +18,7 @@ - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -+#define PY_SSIZE_T_CLEAN - #include - #include - -@@ -251,7 +252,7 @@ get_chksum(_PackageObject *self, void *closure) - #if PY_MAJOR_VERSION < 3 - res = Py_BuildValue("is#", type, cs, checksum_length); - #else -- res = Py_BuildValue("iy#", type, cs, checksum_length); -+ res = Py_BuildValue("iy#", type, cs, (Py_ssize_t)checksum_length); - #endif - - return res; -diff --git a/python/hawkey/packagedelta-py.cpp b/python/hawkey/packagedelta-py.cpp -index ca1cb7d..1a64836 100644 ---- a/python/hawkey/packagedelta-py.cpp -+++ b/python/hawkey/packagedelta-py.cpp -@@ -18,6 +18,7 @@ - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -+#define PY_SSIZE_T_CLEAN - #include - - // hawkey -@@ -92,7 +93,7 @@ get_chksum(_PackageDeltaObject *self, void *closure) - #if PY_MAJOR_VERSION < 3 - res = Py_BuildValue("is#", type, cs, checksum_length); - #else -- res = Py_BuildValue("iy#", type, cs, checksum_length); -+ res = Py_BuildValue("iy#", type, cs, (Py_ssize_t)checksum_length); - #endif - - return res; --- -2.7.4 - diff --git a/poky/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb b/poky/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb deleted file mode 100644 index cc2ceb881..000000000 --- a/poky/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "Library providing simplified C and Python API to libsolv" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -SRC_URI = "git://github.com/rpm-software-management/libdnf \ - file://0001-FindGtkDoc.cmake-drop-the-requirement-for-GTKDOC_SCA.patch \ - file://0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch \ - file://0001-Get-parameters-for-both-libsolv-and-libsolvext-libdn.patch \ - file://0001-Add-WITH_TESTS-option.patch \ - file://0001-include-stdexcept-for-runtime_error.patch \ - file://fix-deprecation-warning.patch \ - " - -SRCREV = "751f89045b80d58c0d05800f74357cf78cdf7e77" -UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" - -S = "${WORKDIR}/git" - -DEPENDS = "glib-2.0 libsolv libcheck librepo rpm gtk-doc libmodulemd-v1 json-c swig-native" - -inherit gtk-doc gobject-introspection cmake pkgconfig distutils3-base - -EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DWITH_MAN=OFF -DPYTHON_DESIRED=3 \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DWITH_GIR=ON', '-DWITH_GIR=OFF', d)} \ - -DWITH_TESTS=OFF \ - " -EXTRA_OECMAKE_append_class-native = " -DWITH_GIR=OFF" -EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_GIR=OFF" - -BBCLASSEXTEND = "native nativesdk" -PNBLACKLIST[libdnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'Does not build without package_rpm in PACKAGE_CLASSES due disabled rpm support in libsolv', d)}" - diff --git a/poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb b/poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb new file mode 100644 index 000000000..1b06d66b1 --- /dev/null +++ b/poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb @@ -0,0 +1,34 @@ +SUMMARY = "Library providing simplified C and Python API to libsolv" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = "git://github.com/rpm-software-management/libdnf;branch=dnf-4-master \ + file://0001-FindGtkDoc.cmake-drop-the-requirement-for-GTKDOC_SCA.patch \ + file://0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch \ + file://0001-Get-parameters-for-both-libsolv-and-libsolvext-libdn.patch \ + file://0001-Add-WITH_TESTS-option.patch \ + file://0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch \ + file://0001-Use-single-quotes-around-string-literals-used-in-SQL.patch \ + " + +SRCREV = "8330eea6985c4e4b53796f858de5b6b38b1ddf5c" +UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" + +S = "${WORKDIR}/git" + +DEPENDS = "glib-2.0 libsolv libcheck librepo rpm gtk-doc libmodulemd json-c swig-native" + +inherit gtk-doc gobject-introspection cmake pkgconfig distutils3-base + +EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DWITH_MAN=OFF -DPYTHON_DESIRED=3 \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DWITH_GIR=ON', '-DWITH_GIR=OFF', d)} \ + -DWITH_TESTS=OFF \ + -DWITH_ZCHUNK=OFF \ + -DWITH_HTML=OFF \ + " +EXTRA_OECMAKE_append_class-native = " -DWITH_GIR=OFF" +EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_GIR=OFF" + +BBCLASSEXTEND = "native nativesdk" +PNBLACKLIST[libdnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'Does not build without package_rpm in PACKAGE_CLASSES due disabled rpm support in libsolv', d)}" + diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1/0001-spec_tmpl.sh-use-bin-sh-not-usr-bin-sh.patch b/poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1/0001-spec_tmpl.sh-use-bin-sh-not-usr-bin-sh.patch deleted file mode 100644 index 847b5f700..000000000 --- a/poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1/0001-spec_tmpl.sh-use-bin-sh-not-usr-bin-sh.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 4e67f6049b3f822fe6f5af46790a51ace581bf82 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Tue, 6 Nov 2018 13:41:29 +0100 -Subject: [PATCH] spec_tmpl.sh: use /bin/sh, not /usr/bin/sh - -Upstream-Status: Pending -Signed-off-by: Alexander Kanavin - ---- - spec_tmpl.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/spec_tmpl.sh b/spec_tmpl.sh -index 0238087..126853c 100755 ---- a/spec_tmpl.sh -+++ b/spec_tmpl.sh -@@ -1,4 +1,4 @@ --#!/usr/bin/sh -+#!/bin/sh - - version=$1 - template=$2 diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1_git.bb b/poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1_git.bb deleted file mode 100644 index 5409051d7..000000000 --- a/poky/meta/recipes-devtools/libmodulemd/libmodulemd-v1_git.bb +++ /dev/null @@ -1,25 +0,0 @@ -SUMMARY = "C Library for manipulating module metadata files" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=25a3927bff3ee4f5b21bcb0ed3fcd6bb" - -SRC_URI = "git://github.com/fedora-modularity/libmodulemd;protocol=https;branch=1.x-maint \ - file://0001-spec_tmpl.sh-use-bin-sh-not-usr-bin-sh.patch \ - " - -PV = "1.8.16" -SRCREV = "d0dcf7b373b3cf85cd39eb3bc23d31e06195a75a" -UPSTREAM_CHECK_GITTAGREGEX = "libmodulemd-(?P1.*\d)" - -S = "${WORKDIR}/git" - -inherit meson gobject-introspection - -EXTRA_OEMESON = "-Ddeveloper_build=false -Dwith_docs=false" - -DEPENDS += "glib-2.0 libyaml glib-2.0-native python3" - -BBCLASSEXTEND = "native nativesdk" - -GIR_MESON_OPTION = 'skip_introspection' -GIR_MESON_ENABLE_FLAG = 'false' -GIR_MESON_DISABLE_FLAG = 'true' diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0001-modulemd-generate-the-manpage-only-if-the-feature-is.patch b/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0001-modulemd-generate-the-manpage-only-if-the-feature-is.patch new file mode 100644 index 000000000..d5c87a115 --- /dev/null +++ b/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0001-modulemd-generate-the-manpage-only-if-the-feature-is.patch @@ -0,0 +1,28 @@ +From a04fd2c8ac9e0f7a6fc17f02b2a95227b3d0aae4 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Tue, 31 Mar 2020 16:06:39 +0200 +Subject: [PATCH] modulemd: generate the manpage only if the feature is enabled + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- + modulemd/meson.build | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/modulemd/meson.build b/modulemd/meson.build +index 9ef1902..9f71e72 100644 +--- a/modulemd/meson.build ++++ b/modulemd/meson.build +@@ -494,6 +494,7 @@ if with_docs + ) + endif + ++if with_manpages == 'enabled' + help2man_opts = [ + '--no-info', + '--section=1', +@@ -506,3 +507,4 @@ custom_target( + ], + install: true, + install_dir: join_paths(get_option('mandir'), 'man1')) ++endif diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch b/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch new file mode 100644 index 000000000..a97fb7390 --- /dev/null +++ b/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch @@ -0,0 +1,23 @@ +From d7eeac90fe02ccf5c5e4334e41ec75fc33803643 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Tue, 31 Mar 2020 16:12:28 +0200 +Subject: [PATCH] meson.build: do not install python gi bindings + +These are unnecessary for oe-core, and the install location +is incorrectly determined using native python. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + meson.build | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/meson.build b/meson.build +index a8b02b4..8ff737b 100644 +--- a/meson.build ++++ b/meson.build +@@ -171,4 +171,3 @@ configure_file( + ) + + subdir('modulemd') +-subdir('bindings/python') diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb b/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb new file mode 100644 index 000000000..d440e60ee --- /dev/null +++ b/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb @@ -0,0 +1,25 @@ +SUMMARY = "C Library for manipulating module metadata files" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=25a3927bff3ee4f5b21bcb0ed3fcd6bb" + +SRC_URI = "git://github.com/fedora-modularity/libmodulemd;protocol=https \ + file://0001-modulemd-generate-the-manpage-only-if-the-feature-is.patch \ + file://0002-meson.build-do-not-install-python-gi-bindings.patch \ + " + +PV = "2.9.2" +SRCREV = "780750eab8a0587b20d033f335301f16d00ab9c9" + +S = "${WORKDIR}/git" + +inherit meson gobject-introspection + +EXTRA_OEMESON = "-Ddeveloper_build=false -Dwith_docs=false -Drpmio=disabled -Dlibmagic=disabled -Dwith_manpages=disabled" + +DEPENDS += "glib-2.0 libyaml glib-2.0-native python3" + +BBCLASSEXTEND = "native nativesdk" + +GIR_MESON_OPTION = 'skip_introspection' +GIR_MESON_ENABLE_FLAG = 'false' +GIR_MESON_DISABLE_FLAG = 'true' diff --git a/poky/meta/recipes-devtools/python/python-gitdb.inc b/poky/meta/recipes-devtools/python/python-gitdb.inc index 23ec2986b..a91bb32c3 100644 --- a/poky/meta/recipes-devtools/python/python-gitdb.inc +++ b/poky/meta/recipes-devtools/python/python-gitdb.inc @@ -6,10 +6,9 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=59e5ecb13339a936eedf83282eaf4528" inherit pypi -PYPI_PACKAGE = "gitdb2" +PYPI_PACKAGE = "gitdb" -SRC_URI[md5sum] = "1a7ea3362e405f8a5634f7ee53636094" -SRC_URI[sha256sum] = "1b6df1433567a51a4a9c1a5a0de977aa351a405cc56d7d35f3388bad1f630350" +SRC_URI[sha256sum] = "6f0ecd46f99bb4874e5678d628c3a198e2b4ef38daea2756a2bfd8df7dd5c1a5" DEPENDS = "${PYTHON_PN}-async ${PYTHON_PN}-setuptools-native ${PYTHON_PN}-smmap" diff --git a/poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb b/poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb new file mode 100644 index 000000000..5389e4897 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb @@ -0,0 +1,16 @@ +SUMMARY = "With this program/Python library you can easily create mock objects on D-Bus" + +LICENSE = "GPL-3.0" +LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02" + +SRC_URI[sha256sum] = "497f30eed2fcd5deaa2633b9622e4e99af4bdfba4e972b350ba630bac6fc86c2" + +PYPI_PACKAGE = "python-dbusmock" + +inherit pypi setuptools3 + +RDEPENDS_${PN} += "\ + ${PYTHON_PN}-dbus \ + ${PYTHON_PN}-pygobject \ + ${PYTHON_PN}-xml \ + " diff --git a/poky/meta/recipes-devtools/python/python3-gitdb_2.0.6.bb b/poky/meta/recipes-devtools/python/python3-gitdb_2.0.6.bb deleted file mode 100644 index 2dcd9c8af..000000000 --- a/poky/meta/recipes-devtools/python/python3-gitdb_2.0.6.bb +++ /dev/null @@ -1,3 +0,0 @@ -inherit setuptools3 -require python-gitdb.inc - diff --git a/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb new file mode 100644 index 000000000..2dcd9c8af --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb @@ -0,0 +1,3 @@ +inherit setuptools3 +require python-gitdb.inc + diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch index 80e2f0fad..4029233fb 100644 --- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch +++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch @@ -1,4 +1,4 @@ -From 87cfc0db1ed6fe381a5ed5f0016d8c3344a31a11 Mon Sep 17 00:00:00 2001 +From f39c28eb52f12ae6e82db360ffd5a903ac8faca5 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Mon, 9 Jan 2017 18:52:11 +0200 Subject: [PATCH] Do not add an unsatisfiable dependency when building rpms in @@ -9,25 +9,23 @@ hand produces rpms that way by design. Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Alexander Kanavin + --- build/pack.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/build/pack.c b/build/pack.c -index 1261cdbba..bb2d6f4f6 100644 +index e6cec1816..810cd7351 100644 --- a/build/pack.c +++ b/build/pack.c -@@ -595,10 +595,6 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) - headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16); - } +@@ -724,10 +724,6 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch + headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16); + } + +- if (cheating) { +- (void) rpmlibNeedsFeature(pkg, "ShortCircuited", "4.9.0-1"); +- } +- + if ((rc = getPkgFilename(pkg->header, filename))) + return rc; -- if (cheating) { -- (void) rpmlibNeedsFeature(pkg, "ShortCircuited", "4.9.0-1"); -- } -- - { char *binFormat = rpmGetPath("%{_rpmfilename}", NULL); - char *binRpm, *binDir; - binRpm = headerFormat(pkg->header, binFormat, &errorString); --- -2.11.0 - diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch index 82e732875..52440d681 100644 --- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch +++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch @@ -1,4 +1,4 @@ -From bd08eb0ae1312f347f49949481daa7c923752df2 Mon Sep 17 00:00:00 2001 +From 2f3d1619b6510bc131c4375827caf912559f0fa2 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Mon, 27 Feb 2017 09:43:30 +0200 Subject: [PATCH] Do not hardcode "lib/rpm" as the installation path for @@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac -index 09af7c4..9bd6903 100644 +index d3aeab86e..1a1f3f91f 100644 --- a/configure.ac +++ b/configure.ac -@@ -1055,7 +1055,7 @@ else +@@ -1086,7 +1086,7 @@ else usrprefix=$prefix fi @@ -27,10 +27,10 @@ index 09af7c4..9bd6903 100644 AC_SUBST(OBJDUMP) diff --git a/macros.in b/macros.in -index a3aa7a9..62cee5c 100644 +index fe9803aad..d128675bf 100644 --- a/macros.in +++ b/macros.in -@@ -970,7 +970,7 @@ package or when debugging this package.\ +@@ -985,7 +985,7 @@ package or when debugging this package.\ %_sharedstatedir %{_prefix}/com %_localstatedir %{_prefix}/var %_lib lib @@ -40,7 +40,7 @@ index a3aa7a9..62cee5c 100644 %_infodir %{_datadir}/info %_mandir %{_datadir}/man diff --git a/rpm.am b/rpm.am -index 82c2d7c..6341b51 100644 +index 40b4ec55f..3139ce8f6 100644 --- a/rpm.am +++ b/rpm.am @@ -1,10 +1,10 @@ @@ -55,4 +55,4 @@ index 82c2d7c..6341b51 100644 +rpmconfigdir = $(libdir)/rpm # Libtool version (current-revision-age) for all our libraries - rpm_version_info = 9:0:1 + rpm_version_info = 9:1:0 diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch b/poky/meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch deleted file mode 100644 index 6e44f0b7f..000000000 --- a/poky/meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 721a660a507d6d062e7aecafad886c643970a5d5 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Thu, 25 May 2017 18:15:27 +0300 -Subject: [PATCH 1/4] Split binary package building into a separate function - -So that it can be run as a thread pool task. - -Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226] -Signed-off-by: Alexander Kanavin - ---- - build/pack.c | 33 +++++++++++++++++++++------------ - 1 file changed, 21 insertions(+), 12 deletions(-) - -diff --git a/build/pack.c b/build/pack.c -index 518f4e92a..ccfd614cc 100644 ---- a/build/pack.c -+++ b/build/pack.c -@@ -546,18 +546,13 @@ static rpmRC checkPackages(char *pkgcheck) - return RPMRC_OK; - } - --rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) -+static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int cheating, char** filename) - { -- rpmRC rc; -- const char *errorString; -- Package pkg; -- char *pkglist = NULL; -- -- for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) { -- char *fn; -+ const char *errorString; -+ rpmRC rc = RPMRC_OK; - - if (pkg->fileList == NULL) -- continue; -+ return rc; - - if ((rc = processScriptFiles(spec, pkg))) - return rc; -@@ -587,7 +582,7 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) - headerGetString(pkg->header, RPMTAG_NAME), errorString); - return RPMRC_FAIL; - } -- fn = rpmGetPath("%{_rpmdir}/", binRpm, NULL); -+ *filename = rpmGetPath("%{_rpmdir}/", binRpm, NULL); - if ((binDir = strchr(binRpm, '/')) != NULL) { - struct stat st; - char *dn; -@@ -609,14 +604,28 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) - free(binRpm); - } - -- rc = writeRPM(pkg, NULL, fn, NULL); -+ rc = writeRPM(pkg, NULL, *filename, NULL); - if (rc == RPMRC_OK) { - /* Do check each written package if enabled */ -- char *pkgcheck = rpmExpand("%{?_build_pkgcheck} ", fn, NULL); -+ char *pkgcheck = rpmExpand("%{?_build_pkgcheck} ", *filename, NULL); - if (pkgcheck[0] != ' ') { - rc = checkPackages(pkgcheck); - } - free(pkgcheck); -+ } -+ return rc; -+} -+ -+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) -+{ -+ rpmRC rc; -+ Package pkg; -+ char *pkglist = NULL; -+ -+ for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) { -+ char *fn = NULL; -+ rc = packageBinary(spec, pkg, cookie, cheating, &fn); -+ if (rc == RPMRC_OK) { - rstrcat(&pkglist, fn); - rstrcat(&pkglist, " "); - } --- -2.11.0 - diff --git a/poky/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch b/poky/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch deleted file mode 100644 index 24aa4c7ff..000000000 --- a/poky/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 43fbc3f53302a395463e8450ac81c53f623eec3f Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Tue, 27 Aug 2019 17:42:34 +0200 -Subject: [PATCH] mono-find-provides/requires: do not use monodis from the host - -There was a host contamination issue here: if monodis was installed -on the host, do_package would use that to resolve dependencies -of mono libraries (and often fail in that). Without monodis, -no dependencies are resolved, which is seemingly how things -are supposed to work. - -Upstream-Status: Inappropriate [oe-core specific] -Signed-off-by: Alexander Kanavin ---- - scripts/mono-find-provides | 8 ++++---- - scripts/mono-find-requires | 8 ++++---- - 2 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/scripts/mono-find-provides b/scripts/mono-find-provides -index 9348457d3..b28872ffb 100644 ---- a/scripts/mono-find-provides -+++ b/scripts/mono-find-provides -@@ -18,11 +18,11 @@ monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$")) - build_bindir="$2/usr/bin" - build_libdir="$2$3" - --if [ -x $build_bindir/monodis ]; then -- monodis="$build_bindir/monodis" -+if [ -x $build_bindir/monodis.bogus ]; then -+ monodis="$build_bindir/monodis.bogus" - export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} --elif [ -x /usr/bin/monodis ]; then -- monodis="/usr/bin/monodis" -+elif [ -x /usr/bin/monodis.bogus ]; then -+ monodis="/usr/bin/monodis.bogus" - else - exit 0; - fi -diff --git a/scripts/mono-find-requires b/scripts/mono-find-requires -index ea58cae48..d270169e1 100644 ---- a/scripts/mono-find-requires -+++ b/scripts/mono-find-requires -@@ -18,11 +18,11 @@ monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$")) - build_bindir="$2/usr/bin" - build_libdir="$2$3" - --if [ -x $build_bindir/monodis ]; then -- monodis="$build_bindir/monodis" -+if [ -x $build_bindir/monodis.bogus ]; then -+ monodis="$build_bindir/monodis.bogus" - export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} --elif [ -x /usr/bin/monodis ]; then -- monodis="/usr/bin/monodis" -+elif [ -x /usr/bin/monodis.bogus ]; then -+ monodis="/usr/bin/monodis.bogus" - else - exit 0; - fi diff --git a/poky/meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch b/poky/meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch new file mode 100644 index 000000000..d8d338792 --- /dev/null +++ b/poky/meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch @@ -0,0 +1,65 @@ +From 93c3c7f043f62e96941274e957c4ad9432032af1 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Mon, 18 Nov 2019 16:22:56 +0100 +Subject: [PATCH] rpmfc.c: do not run file classification in parallel + +This is causing freezes with libmagic when the file in question is compressed: +https://github.com/rpm-software-management/rpm/issues/756 + +Upstream-Status: Inappropriate [upstream wants a proper fix] +Signed-off-by: Alexander Kanavin +--- + build/rpmfc.c | 8 -------- + 1 file changed, 8 deletions(-) + +diff --git a/build/rpmfc.c b/build/rpmfc.c +index 3db7a9352..17afdd57a 100644 +--- a/build/rpmfc.c ++++ b/build/rpmfc.c +@@ -680,7 +680,6 @@ static void rpmfcAttributes(rpmfc fc, int ix, const char *ftype, const char *ful + /* Add attributes on libmagic type & path pattern matches */ + if (matches(&(*attr)->incl, ftype, path, is_executable)) { + argvAddTokens(&fc->fattrs[ix], (*attr)->name); +- #pragma omp critical(fahash) + fattrHashAddEntry(fc->fahash, attr-fc->atypes, ix); + } + } +@@ -1105,7 +1104,6 @@ rpmRC rpmfcClassify(rpmfc fc, ARGV_t argv, rpm_mode_t * fmode) + /* Build (sorted) file class dictionary. */ + fc->cdict = rpmstrPoolCreate(); + +- #pragma omp parallel + { + /* libmagic is not thread-safe, each thread needs to a private handle */ + magic_t ms = magic_open(msflags); +@@ -1113,15 +1111,12 @@ rpmRC rpmfcClassify(rpmfc fc, ARGV_t argv, rpm_mode_t * fmode) + if (ms == NULL) { + rpmlog(RPMLOG_ERR, _("magic_open(0x%x) failed: %s\n"), + msflags, strerror(errno)); +- #pragma omp cancel parallel + } + + if (magic_load(ms, NULL) == -1) { + rpmlog(RPMLOG_ERR, _("magic_load failed: %s\n"), magic_error(ms)); +- #pragma omp cancel parallel + } + +- #pragma omp for ordered reduction(+:nerrors) + for (int ix = 0; ix < fc->nfiles; ix++) { + rpmsid ftypeId; + const char * ftype; +@@ -1185,14 +1180,11 @@ rpmRC rpmfcClassify(rpmfc fc, ARGV_t argv, rpm_mode_t * fmode) + fc->fcolor[ix] = fcolor; + + /* Add to file class dictionary and index array */ +- #pragma omp ordered + if (fcolor != RPMFC_WHITE && (fcolor & RPMFC_INCLUDE)) { + ftypeId = rpmstrPoolId(fc->cdict, ftype, 1); +- #pragma omp atomic + fc->fknown++; + } else { + ftypeId = rpmstrPoolId(fc->cdict, "", 1); +- #pragma omp atomic + fc->fwhite++; + } + /* Pool id's start from 1, for headers we want it from 0 */ diff --git a/poky/meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch b/poky/meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch deleted file mode 100644 index d10041c2e..000000000 --- a/poky/meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch +++ /dev/null @@ -1,127 +0,0 @@ -From 513200cf76758de4668312c628d6362bdabfaf4b Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Thu, 25 May 2017 19:30:20 +0300 -Subject: [PATCH 1/3] Run binary package creation via thread pools. - -Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226] -Signed-off-by: Alexander Kanavin - ---- - build/pack.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++----------- - configure.ac | 3 +++ - 2 files changed, 70 insertions(+), 14 deletions(-) - -diff --git a/build/pack.c b/build/pack.c -index ccfd614cc..ed5b9ab4e 100644 ---- a/build/pack.c -+++ b/build/pack.c -@@ -616,25 +616,78 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch - return rc; - } - --rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) -+struct binaryPackageTaskData - { -- rpmRC rc; - Package pkg; -+ char *filename; -+ rpmRC result; -+ struct binaryPackageTaskData *next; -+}; -+ -+static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const char *cookie, int cheating) -+{ -+ struct binaryPackageTaskData *tasks = NULL; -+ struct binaryPackageTaskData *task = NULL; -+ struct binaryPackageTaskData *prev = NULL; -+ -+ for (Package pkg = spec->packages; pkg != NULL; pkg = pkg->next) { -+ task = rcalloc(1, sizeof(*task)); -+ task->pkg = pkg; -+ if (pkg == spec->packages) { -+ // the first package needs to be processed ahead of others, as they copy -+ // changelog data from it, and so otherwise data races would happen -+ task->result = packageBinary(spec, pkg, cookie, cheating, &(task->filename)); -+ rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename); -+ tasks = task; -+ } -+ if (prev != NULL) { -+ prev->next = task; -+ } -+ prev = task; -+ } -+ -+ #pragma omp parallel -+ #pragma omp single -+ // re-declaring task variable is necessary, or older gcc versions will produce code that segfaults -+ for (struct binaryPackageTaskData *task = tasks; task != NULL; task = task->next) { -+ if (task != tasks) -+ #pragma omp task -+ { -+ task->result = packageBinary(spec, task->pkg, cookie, cheating, &(task->filename)); -+ rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename); -+ } -+ } -+ -+ return tasks; -+} -+ -+static void freeBinaryPackageTasks(struct binaryPackageTaskData* tasks) -+{ -+ while (tasks != NULL) { -+ struct binaryPackageTaskData* next = tasks->next; -+ rfree(tasks->filename); -+ rfree(tasks); -+ tasks = next; -+ } -+} -+ -+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) -+{ - char *pkglist = NULL; - -- for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) { -- char *fn = NULL; -- rc = packageBinary(spec, pkg, cookie, cheating, &fn); -- if (rc == RPMRC_OK) { -- rstrcat(&pkglist, fn); -- rstrcat(&pkglist, " "); -- } -- free(fn); -- if (rc != RPMRC_OK) { -- pkglist = _free(pkglist); -- return rc; -- } -+ struct binaryPackageTaskData *tasks = runBinaryPackageTasks(spec, cookie, cheating); -+ -+ for (struct binaryPackageTaskData *task = tasks; task != NULL; task = task->next) { -+ if (task->result == RPMRC_OK) { -+ rstrcat(&pkglist, task->filename); -+ rstrcat(&pkglist, " "); -+ } else { -+ _free(pkglist); -+ freeBinaryPackageTasks(tasks); -+ return RPMRC_FAIL; -+ } - } -+ freeBinaryPackageTasks(tasks); - - /* Now check the package set if enabled */ - if (pkglist != NULL) { -diff --git a/configure.ac b/configure.ac -index a506ec819..59fa0acaf 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -17,6 +17,9 @@ AC_DISABLE_STATIC - - PKG_PROG_PKG_CONFIG - -+AC_OPENMP -+RPMCFLAGS="$OPENMP_CFLAGS $RPMCFLAGS" -+ - dnl Checks for programs. - AC_PROG_CXX - AC_PROG_AWK --- -2.11.0 - diff --git a/poky/meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch b/poky/meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch deleted file mode 100644 index c348ae533..000000000 --- a/poky/meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch +++ /dev/null @@ -1,207 +0,0 @@ -From c80892f17e44331206c8318d53b63bb6a99554d0 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Tue, 30 May 2017 13:58:30 +0300 -Subject: [PATCH 3/4] rpmstrpool.c: make operations over string pools - thread-safe - -Otherwise multithreaded rpm building explodes in various ways due -to data races. - -Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226] -Signed-off-by: Alexander Kanavin - ---- - rpmio/rpmstrpool.c | 56 +++++++++++++++++++++++++++++++++++++++++++++--------- - 1 file changed, 47 insertions(+), 9 deletions(-) - -diff --git a/rpmio/rpmstrpool.c b/rpmio/rpmstrpool.c -index 30a57eb10..58ba95a02 100644 ---- a/rpmio/rpmstrpool.c -+++ b/rpmio/rpmstrpool.c -@@ -113,6 +113,8 @@ static poolHash poolHashCreate(int numBuckets) - return ht; - } - -+static const char * rpmstrPoolStrNoLock(rpmstrPool pool, rpmsid sid); -+ - static void poolHashResize(rpmstrPool pool, int numBuckets) - { - poolHash ht = pool->hash; -@@ -120,7 +122,7 @@ static void poolHashResize(rpmstrPool pool, int numBuckets) - - for (int i=0; inumBuckets; i++) { - if (!ht->buckets[i].keyid) continue; -- unsigned int keyHash = rstrhash(rpmstrPoolStr(pool, ht->buckets[i].keyid)); -+ unsigned int keyHash = rstrhash(rpmstrPoolStrNoLock(pool, ht->buckets[i].keyid)); - for (unsigned int j=0;;j++) { - unsigned int hash = hashbucket(keyHash, j) % numBuckets; - if (!buckets[hash].keyid) { -@@ -149,7 +151,7 @@ static void poolHashAddHEntry(rpmstrPool pool, const char * key, unsigned int ke - ht->buckets[hash].keyid = keyid; - ht->keyCount++; - break; -- } else if (!strcmp(rpmstrPoolStr(pool, ht->buckets[hash].keyid), key)) { -+ } else if (!strcmp(rpmstrPoolStrNoLock(pool, ht->buckets[hash].keyid), key)) { - return; - } - } -@@ -191,7 +193,7 @@ static void poolHashPrintStats(rpmstrPool pool) - int maxcollisions = 0; - - for (i=0; inumBuckets; i++) { -- unsigned int keyHash = rstrhash(rpmstrPoolStr(pool, ht->buckets[i].keyid)); -+ unsigned int keyHash = rstrhash(rpmstrPoolStrNoLock(pool, ht->buckets[i].keyid)); - for (unsigned int j=0;;j++) { - unsigned int hash = hashbucket(keyHash, i) % ht->numBuckets; - if (hash==i) { -@@ -221,7 +223,7 @@ static void rpmstrPoolRehash(rpmstrPool pool) - - pool->hash = poolHashCreate(sizehint); - for (int i = 1; i <= pool->offs_size; i++) -- poolHashAddEntry(pool, rpmstrPoolStr(pool, i), i); -+ poolHashAddEntry(pool, rpmstrPoolStrNoLock(pool, i), i); - } - - rpmstrPool rpmstrPoolCreate(void) -@@ -245,6 +247,8 @@ rpmstrPool rpmstrPoolCreate(void) - - rpmstrPool rpmstrPoolFree(rpmstrPool pool) - { -+ #pragma omp critical(rpmstrpool) -+ { - if (pool) { - if (pool->nrefs > 1) { - pool->nrefs--; -@@ -260,18 +264,24 @@ rpmstrPool rpmstrPoolFree(rpmstrPool pool) - free(pool); - } - } -+ } - return NULL; - } - - rpmstrPool rpmstrPoolLink(rpmstrPool pool) - { -+ #pragma omp critical(rpmstrpool) -+ { - if (pool) - pool->nrefs++; -+ } - return pool; - } - - void rpmstrPoolFreeze(rpmstrPool pool, int keephash) - { -+ #pragma omp critical(rpmstrpool) -+ { - if (pool && !pool->frozen) { - if (!keephash) { - pool->hash = poolHashFree(pool->hash); -@@ -281,16 +291,20 @@ void rpmstrPoolFreeze(rpmstrPool pool, int keephash) - pool->offs_alloced * sizeof(*pool->offs)); - pool->frozen = 1; - } -+ } - } - - void rpmstrPoolUnfreeze(rpmstrPool pool) - { -+ #pragma omp critical(rpmstrpool) -+ { - if (pool) { - if (pool->hash == NULL) { - rpmstrPoolRehash(pool); - } - pool->frozen = 0; - } -+ } - } - - static rpmsid rpmstrPoolPut(rpmstrPool pool, const char *s, size_t slen, unsigned int hash) -@@ -350,7 +364,7 @@ static rpmsid rpmstrPoolGet(rpmstrPool pool, const char * key, size_t keylen, - return 0; - } - -- s = rpmstrPoolStr(pool, ht->buckets[hash].keyid); -+ s = rpmstrPoolStrNoLock(pool, ht->buckets[hash].keyid); - /* pool string could be longer than keylen, require exact matche */ - if (strncmp(s, key, keylen) == 0 && s[keylen] == '\0') - return ht->buckets[hash].keyid; -@@ -373,27 +387,31 @@ static inline rpmsid strn2id(rpmstrPool pool, const char *s, size_t slen, - rpmsid rpmstrPoolIdn(rpmstrPool pool, const char *s, size_t slen, int create) - { - rpmsid sid = 0; -- -+ #pragma omp critical(rpmstrpool) -+ { - if (s != NULL) { - unsigned int hash = rstrnhash(s, slen); - sid = strn2id(pool, s, slen, hash, create); - } -+ } - return sid; - } - - rpmsid rpmstrPoolId(rpmstrPool pool, const char *s, int create) - { - rpmsid sid = 0; -- -+ #pragma omp critical(rpmstrpool) -+ { - if (s != NULL) { - size_t slen; - unsigned int hash = rstrlenhash(s, &slen); - sid = strn2id(pool, s, slen, hash, create); - } -+ } - return sid; - } - --const char * rpmstrPoolStr(rpmstrPool pool, rpmsid sid) -+static const char * rpmstrPoolStrNoLock(rpmstrPool pool, rpmsid sid) - { - const char *s = NULL; - if (pool && sid > 0 && sid <= pool->offs_size) -@@ -401,12 +419,25 @@ const char * rpmstrPoolStr(rpmstrPool pool, rpmsid sid) - return s; - } - -+const char * rpmstrPoolStr(rpmstrPool pool, rpmsid sid) -+{ -+ const char *s = NULL; -+ #pragma omp critical(rpmstrpool) -+ { -+ s = rpmstrPoolStrNoLock(pool, sid); -+ } -+ return s; -+} -+ - size_t rpmstrPoolStrlen(rpmstrPool pool, rpmsid sid) - { - size_t slen = 0; -+ #pragma omp critical(rpmstrpool) -+ { - if (pool && sid > 0 && sid <= pool->offs_size) { - slen = strlen(pool->offs[sid]); - } -+ } - return slen; - } - -@@ -421,5 +452,12 @@ int rpmstrPoolStreq(rpmstrPool poolA, rpmsid sidA, - - rpmsid rpmstrPoolNumStr(rpmstrPool pool) - { -- return (pool != NULL) ? pool->offs_size : 0; -+ rpmsid id = 0; -+ #pragma omp critical(rpmstrpool) -+ { -+ if (pool) { -+ id = pool->offs_size; -+ } -+ } -+ return id; - } --- -2.11.0 - diff --git a/poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch b/poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch deleted file mode 100644 index 652e30b3e..000000000 --- a/poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch +++ /dev/null @@ -1,336 +0,0 @@ -From 792693bb90768cfde4898e8dd31ee1b5de803d2f Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Thu, 8 Jun 2017 17:08:09 +0300 -Subject: [PATCH] build/pack.c: remove static local variables from buildHost() - and getBuildTime() - -Their use is causing difficult to diagnoze data races when building multiple -packages in parallel, and is a bad idea in general, as it also makes it more -difficult to reason about code. - -Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226] -Signed-off-by: Alexander Kanavin - -Signed-off-by: Alexander Kanavin - ---- - build/build.c | 54 ++++++++++++++++++++++++++++-- - build/pack.c | 84 +++++++++-------------------------------------- - build/rpmbuild_internal.h | 8 +++-- - 3 files changed, 74 insertions(+), 72 deletions(-) - -diff --git a/build/build.c b/build/build.c -index 13c3df2..b154f08 100644 ---- a/build/build.c -+++ b/build/build.c -@@ -6,6 +6,8 @@ - #include "system.h" - - #include -+#include -+#include - #include - - #include -@@ -16,6 +18,50 @@ - - #include "debug.h" - -+static rpm_time_t getBuildTime(void) -+{ -+ rpm_time_t buildTime = 0; -+ char *srcdate; -+ time_t epoch; -+ char *endptr; -+ -+ srcdate = getenv("SOURCE_DATE_EPOCH"); -+ if (srcdate) { -+ errno = 0; -+ epoch = strtol(srcdate, &endptr, 10); -+ if (srcdate == endptr || *endptr || errno != 0) -+ rpmlog(RPMLOG_ERR, _("unable to parse SOURCE_DATE_EPOCH\n")); -+ else -+ buildTime = (int32_t) epoch; -+ } else -+ buildTime = (int32_t) time(NULL); -+ -+ return buildTime; -+} -+ -+static char * buildHost(void) -+{ -+ char* hostname; -+ struct hostent *hbn; -+ char *bhMacro; -+ -+ bhMacro = rpmExpand("%{?_buildhost}", NULL); -+ if (strcmp(bhMacro, "") != 0) { -+ rasprintf(&hostname, "%s", bhMacro); -+ } else { -+ hostname = rcalloc(1024, sizeof(*hostname)); -+ (void) gethostname(hostname, 1024); -+ hbn = gethostbyname(hostname); -+ if (hbn) -+ strcpy(hostname, hbn->h_name); -+ else -+ rpmlog(RPMLOG_WARNING, -+ _("Could not canonicalize hostname: %s\n"), hostname); -+ } -+ free(bhMacro); -+ return(hostname); -+} -+ - /** - */ - static rpmRC doRmSource(rpmSpec spec) -@@ -201,6 +247,9 @@ static rpmRC buildSpec(BTA_t buildArgs, rpmSpec spec, int what) - rpmRC rc = RPMRC_OK; - int test = (what & RPMBUILD_NOBUILD); - char *cookie = buildArgs->cookie ? xstrdup(buildArgs->cookie) : NULL; -+ const char* host = buildHost(); -+ rpm_time_t buildTime = getBuildTime(); -+ - - if (rpmExpandNumeric("%{?source_date_epoch_from_changelog}") && - getenv("SOURCE_DATE_EPOCH") == NULL) { -@@ -269,11 +318,11 @@ static rpmRC buildSpec(BTA_t buildArgs, rpmSpec spec, int what) - goto exit; - - if (((what & RPMBUILD_PACKAGESOURCE) && !test) && -- (rc = packageSources(spec, &cookie))) -+ (rc = packageSources(spec, &cookie, buildTime, host))) - goto exit; - - if (((what & RPMBUILD_PACKAGEBINARY) && !test) && -- (rc = packageBinaries(spec, cookie, (didBuild == 0)))) -+ (rc = packageBinaries(spec, cookie, (didBuild == 0), buildTime, host))) - goto exit; - - if ((what & RPMBUILD_CLEAN) && -@@ -293,6 +342,7 @@ static rpmRC buildSpec(BTA_t buildArgs, rpmSpec spec, int what) - (void) unlink(spec->specFile); - - exit: -+ free(host); - free(cookie); - spec->rootDir = NULL; - if (rc != RPMRC_OK && rpmlogGetNrecs() > 0) { -diff --git a/build/pack.c b/build/pack.c -index df15876..17a4b09 100644 ---- a/build/pack.c -+++ b/build/pack.c -@@ -6,8 +6,6 @@ - #include "system.h" - - #include --#include --#include - #include - - #include /* RPMSIGTAG*, rpmReadPackageFile */ -@@ -152,57 +150,6 @@ exit: - return rc; - } - --static rpm_time_t * getBuildTime(void) --{ -- static rpm_time_t buildTime[1]; -- char *srcdate; -- time_t epoch; -- char *endptr; -- -- if (buildTime[0] == 0) { -- srcdate = getenv("SOURCE_DATE_EPOCH"); -- if (srcdate) { -- errno = 0; -- epoch = strtol(srcdate, &endptr, 10); -- if (srcdate == endptr || *endptr || errno != 0) -- rpmlog(RPMLOG_ERR, _("unable to parse SOURCE_DATE_EPOCH\n")); -- else -- buildTime[0] = (int32_t) epoch; -- } else -- buildTime[0] = (int32_t) time(NULL); -- } -- -- return buildTime; --} -- --static const char * buildHost(void) --{ -- static char hostname[1024]; -- static int oneshot = 0; -- struct hostent *hbn; -- char *bhMacro; -- -- if (! oneshot) { -- bhMacro = rpmExpand("%{?_buildhost}", NULL); -- if (strcmp(bhMacro, "") != 0 && strlen(bhMacro) < 1024) { -- strcpy(hostname, bhMacro); -- } else { -- if (strcmp(bhMacro, "") != 0) -- rpmlog(RPMLOG_WARNING, _("The _buildhost macro is too long\n")); -- (void) gethostname(hostname, sizeof(hostname)); -- hbn = gethostbyname(hostname); -- if (hbn) -- strcpy(hostname, hbn->h_name); -- else -- rpmlog(RPMLOG_WARNING, -- _("Could not canonicalize hostname: %s\n"), hostname); -- } -- free(bhMacro); -- oneshot = 1; -- } -- return(hostname); --} -- - static rpmRC processScriptFiles(rpmSpec spec, Package pkg) - { - struct TriggerFileEntry *p; -@@ -476,7 +423,8 @@ exit: - * order to how the RPM format is laid on disk. - */ - static rpmRC writeRPM(Package pkg, unsigned char ** pkgidp, -- const char *fileName, char **cookie) -+ const char *fileName, char **cookie, -+ rpm_time_t buildTime, const char* buildHost) - { - FD_t fd = NULL; - char * rpmio_flags = NULL; -@@ -500,7 +448,7 @@ static rpmRC writeRPM(Package pkg, unsigned char ** pkgidp, - - /* Create and add the cookie */ - if (cookie) { -- rasprintf(cookie, "%s %d", buildHost(), (int) (*getBuildTime())); -+ rasprintf(cookie, "%s %d", buildHost, buildTime); - headerPutString(pkg->header, RPMTAG_COOKIE, *cookie); - } - -@@ -641,7 +589,7 @@ static rpmRC checkPackages(char *pkgcheck) - return RPMRC_OK; - } - --static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int cheating, char** filename) -+static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int cheating, char** filename, rpm_time_t buildTime, const char* buildHost) - { - const char *errorString; - rpmRC rc = RPMRC_OK; -@@ -660,8 +608,8 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch - headerCopyTags(spec->packages->header, pkg->header, copyTags); - - headerPutString(pkg->header, RPMTAG_RPMVERSION, VERSION); -- headerPutString(pkg->header, RPMTAG_BUILDHOST, buildHost()); -- headerPutUint32(pkg->header, RPMTAG_BUILDTIME, getBuildTime(), 1); -+ headerPutString(pkg->header, RPMTAG_BUILDHOST, buildHost); -+ headerPutUint32(pkg->header, RPMTAG_BUILDTIME, &buildTime, 1); - - if (spec->sourcePkgId != NULL) { - headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16); -@@ -699,7 +647,7 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch - free(binRpm); - } - -- rc = writeRPM(pkg, NULL, *filename, NULL); -+ rc = writeRPM(pkg, NULL, *filename, NULL, buildTime, buildHost); - if (rc == RPMRC_OK) { - /* Do check each written package if enabled */ - char *pkgcheck = rpmExpand("%{?_build_pkgcheck} ", *filename, NULL); -@@ -719,7 +667,7 @@ struct binaryPackageTaskData - struct binaryPackageTaskData *next; - }; - --static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const char *cookie, int cheating) -+static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const char *cookie, int cheating, rpm_time_t buildTime, char* buildHost) - { - struct binaryPackageTaskData *tasks = NULL; - struct binaryPackageTaskData *task = NULL; -@@ -731,7 +679,7 @@ static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const c - if (pkg == spec->packages) { - // the first package needs to be processed ahead of others, as they copy - // changelog data from it, and so otherwise data races would happen -- task->result = packageBinary(spec, pkg, cookie, cheating, &(task->filename)); -+ task->result = packageBinary(spec, pkg, cookie, cheating, &(task->filename), buildTime, buildHost); - rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename); - tasks = task; - } -@@ -748,7 +696,7 @@ static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const c - if (task != tasks) - #pragma omp task - { -- task->result = packageBinary(spec, task->pkg, cookie, cheating, &(task->filename)); -+ task->result = packageBinary(spec, task->pkg, cookie, cheating, &(task->filename), buildTime, buildHost); - rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename); - } - } -@@ -766,11 +714,11 @@ static void freeBinaryPackageTasks(struct binaryPackageTaskData* tasks) - } - } - --rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) -+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating, rpm_time_t buildTime, char* buildHost) - { - char *pkglist = NULL; - -- struct binaryPackageTaskData *tasks = runBinaryPackageTasks(spec, cookie, cheating); -+ struct binaryPackageTaskData *tasks = runBinaryPackageTasks(spec, cookie, cheating, buildTime, buildHost); - - for (struct binaryPackageTaskData *task = tasks; task != NULL; task = task->next) { - if (task->result == RPMRC_OK) { -@@ -797,7 +745,7 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) - return RPMRC_OK; - } - --rpmRC packageSources(rpmSpec spec, char **cookie) -+rpmRC packageSources(rpmSpec spec, char **cookie, rpm_time_t buildTime, char* buildHost) - { - Package sourcePkg = spec->sourcePackage; - rpmRC rc; -@@ -805,8 +753,8 @@ rpmRC packageSources(rpmSpec spec, char **cookie) - - /* Add some cruft */ - headerPutString(sourcePkg->header, RPMTAG_RPMVERSION, VERSION); -- headerPutString(sourcePkg->header, RPMTAG_BUILDHOST, buildHost()); -- headerPutUint32(sourcePkg->header, RPMTAG_BUILDTIME, getBuildTime(), 1); -+ headerPutString(sourcePkg->header, RPMTAG_BUILDHOST, buildHost); -+ headerPutUint32(sourcePkg->header, RPMTAG_BUILDTIME, &buildTime, 1); - headerPutUint32(sourcePkg->header, RPMTAG_SOURCEPACKAGE, &one, 1); - - /* XXX this should be %_srpmdir */ -@@ -814,7 +762,7 @@ rpmRC packageSources(rpmSpec spec, char **cookie) - char *pkgcheck = rpmExpand("%{?_build_pkgcheck_srpm} ", fn, NULL); - - spec->sourcePkgId = NULL; -- rc = writeRPM(sourcePkg, &spec->sourcePkgId, fn, cookie); -+ rc = writeRPM(sourcePkg, &spec->sourcePkgId, fn, cookie, buildTime, buildHost); - - /* Do check SRPM package if enabled */ - if (rc == RPMRC_OK && pkgcheck[0] != ' ') { -diff --git a/build/rpmbuild_internal.h b/build/rpmbuild_internal.h -index 439b7d3..07e8338 100644 ---- a/build/rpmbuild_internal.h -+++ b/build/rpmbuild_internal.h -@@ -427,19 +427,23 @@ rpmRC processSourceFiles(rpmSpec spec, rpmBuildPkgFlags pkgFlags); - * @param spec spec file control structure - * @param cookie build identifier "cookie" or NULL - * @param cheating was build shortcircuited? -+ * @param buildTime the build timestamp that goes into packages -+ * @param buildHost the hostname where the build is happening - * @return RPMRC_OK on success - */ - RPM_GNUC_INTERNAL --rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating); -+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating, rpm_time_t buildTime, char* buildHost); - - /** \ingroup rpmbuild - * Generate source package. - * @param spec spec file control structure - * @retval cookie build identifier "cookie" or NULL -+ * @param buildTime the build timestamp that goes into packages -+ * @param buildHost the hostname where the build is happening - * @return RPMRC_OK on success - */ - RPM_GNUC_INTERNAL --rpmRC packageSources(rpmSpec spec, char **cookie); -+rpmRC packageSources(rpmSpec spec, char **cookie, rpm_time_t buildTime, char* buildHost); - - RPM_GNUC_INTERNAL - int addLangTag(rpmSpec spec, Header h, rpmTagVal tag, diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb b/poky/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb deleted file mode 100644 index 17255dc87..000000000 --- a/poky/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb +++ /dev/null @@ -1,155 +0,0 @@ -SUMMARY = "The RPM package management system" -DESCRIPTION = "The RPM Package Manager (RPM) is a powerful command line driven \ -package management system capable of installing, uninstalling, \ -verifying, querying, and updating software packages. Each software \ -package consists of an archive of files along with information about \ -the package like its version, a description, etc." - -SUMMARY_${PN}-dev = "Development files for manipulating RPM packages" -DESCRIPTION_${PN}-dev = "This package contains the RPM C library and header files. These \ -development files will simplify the process of writing programs that \ -manipulate RPM packages and databases. These files are intended to \ -simplify the process of creating graphical package managers or any \ -other tools that need an intimate knowledge of RPM packages in order \ -to function." - -SUMMARY_python3-rpm = "Python bindings for apps which will manupulate RPM packages" -DESCRIPTION_python3-rpm = "The python3-rpm package contains a module that permits applications \ -written in the Python programming language to use the interface \ -supplied by the RPM Package Manager libraries." - -HOMEPAGE = "http://www.rpm.org" - -# libraries are also LGPL - how to express this? -LICENSE = "GPL-2.0" -LIC_FILES_CHKSUM = "file://COPYING;md5=c0bf017c0fd1920e6158a333acabfd4a" - -SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.14.x \ - file://0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch \ - file://0001-Do-not-read-config-files-from-HOME.patch \ - file://0001-When-cross-installing-execute-package-scriptlets-wit.patch \ - file://0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch \ - file://0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch \ - file://0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch \ - file://0001-Fix-build-with-musl-C-library.patch \ - file://0001-Add-a-color-setting-for-mips64_n32-binaries.patch \ - file://0011-Do-not-require-that-ELF-binaries-are-executable-to-b.patch \ - file://0001-Split-binary-package-building-into-a-separate-functi.patch \ - file://0002-Run-binary-package-creation-via-thread-pools.patch \ - file://0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch \ - file://0004-build-pack.c-remove-static-local-variables-from-buil.patch \ - file://0001-perl-disable-auto-reqs.patch \ - file://0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch \ - file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \ - file://0001-mono-find-provides-requires-do-not-use-monodis-from-.patch \ - file://0001-Rip-out-partial-support-for-unused-MD2-and-RIPEMD160.patch \ - file://0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch \ - " - -PE = "1" -SRCREV = "4a9440006398646583f0d9ae1837dad2875013aa" - -S = "${WORKDIR}/git" - -DEPENDS = "openssl libarchive db file popt xz bzip2 dbus elfutils python3" -DEPENDS_append_class-native = " file-replacement-native bzip2-replacement-native" - -inherit autotools gettext pkgconfig python3native -export PYTHON_ABI - -# OE-core patches autoreconf to additionally run gnu-configize, which fails with this recipe -EXTRA_AUTORECONF_append = " --exclude=gnu-configize" - -EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl" -EXTRA_OECONF_append_libc-musl = " --disable-nls" - -# --sysconfdir prevents rpm from attempting to access machine-specific configuration in sysroot/etc; we need to have it in rootfs -# -# --localstatedir prevents rpm from writing its database to native sysroot when building images -# -# Disable dbus for native, so that rpm doesn't attempt to inhibit shutdown via session dbus even when plugins support is enabled. -# Also disable plugins by default for native. -EXTRA_OECONF_append_class-native = " --sysconfdir=/etc --localstatedir=/var --disable-plugins" -EXTRA_OECONF_append_class-nativesdk = " --sysconfdir=/etc --localstatedir=/var --disable-plugins" - -BBCLASSEXTEND = "native nativesdk" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[imaevm] = "--with-imaevm,,ima-evm-utils" - -ASNEEDED = "" - -# Direct rpm-native to read configuration from our sysroot, not the one it was compiled in -# libmagic also has sysroot path contamination, so override it - -WRAPPER_TOOLS = " \ - ${bindir}/rpm \ - ${bindir}/rpm2archive \ - ${bindir}/rpm2cpio \ - ${bindir}/rpmbuild \ - ${bindir}/rpmdb \ - ${bindir}/rpmgraph \ - ${bindir}/rpmkeys \ - ${bindir}/rpmsign \ - ${bindir}/rpmspec \ - ${libdir}/rpm/rpmdeps \ -" - -do_install_append_class-native() { - for tool in ${WRAPPER_TOOLS}; do - create_wrapper ${D}$tool \ - RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \ - RPM_ETCCONFIGDIR=${STAGING_DIR_NATIVE} \ - MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc \ - RPM_NO_CHROOT_FOR_SCRIPTS=1 - done -} - -do_install_append_class-nativesdk() { - for tool in ${WRAPPER_TOOLS}; do - create_wrapper ${D}$tool \ - RPM_CONFIGDIR='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir'), d.getVar('bindir'))}/rpm \ - RPM_ETCCONFIGDIR='$'{RPM_ETCCONFIGDIR-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir'), d.getVar('bindir'))}/..} \ - MAGIC='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir'), d.getVar('bindir'))}/misc/magic.mgc \ - RPM_NO_CHROOT_FOR_SCRIPTS=1 - done - - rm -rf ${D}/var -} - -# Rpm's make install creates var/tmp which clashes with base-files packaging -do_install_append_class-target() { - rm -rf ${D}/var -} - -do_install_append () { - sed -i -e 's:${HOSTTOOLS_DIR}/::g' \ - ${D}/${libdir}/rpm/macros - - sed -i -e 's|/usr/bin/python|${USRBINPATH}/env ${PYTHON_PN}|' \ - ${D}${libdir}/rpm/pythondistdeps.py \ - ${D}${libdir}/rpm/python-macro-helper -} - -FILES_${PN} += "${libdir}/rpm-plugins/*.so \ - " - -FILES_${PN}-dev += "${libdir}/rpm-plugins/*.la \ - " - -PACKAGES += "python3-rpm" -PROVIDES += "python3-rpm" -FILES_python3-rpm = "${PYTHON_SITEPACKAGES_DIR}/rpm/*" - -# rpm 5.x was packaging the rpm build tools separately -RPROVIDES_${PN} += "rpm-build" - -RDEPENDS_${PN} = "bash perl python3-core" - -PACKAGE_PREPROCESS_FUNCS += "rpm_package_preprocess" - -# Do not specify a sysroot when compiling on a target. -rpm_package_preprocess () { - sed -i -e 's:--sysroot[^ ]*::g' \ - ${PKGD}/${libdir}/rpm/macros -} diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb new file mode 100644 index 000000000..5c1190a3d --- /dev/null +++ b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb @@ -0,0 +1,149 @@ +SUMMARY = "The RPM package management system" +DESCRIPTION = "The RPM Package Manager (RPM) is a powerful command line driven \ +package management system capable of installing, uninstalling, \ +verifying, querying, and updating software packages. Each software \ +package consists of an archive of files along with information about \ +the package like its version, a description, etc." + +SUMMARY_${PN}-dev = "Development files for manipulating RPM packages" +DESCRIPTION_${PN}-dev = "This package contains the RPM C library and header files. These \ +development files will simplify the process of writing programs that \ +manipulate RPM packages and databases. These files are intended to \ +simplify the process of creating graphical package managers or any \ +other tools that need an intimate knowledge of RPM packages in order \ +to function." + +SUMMARY_python3-rpm = "Python bindings for apps which will manupulate RPM packages" +DESCRIPTION_python3-rpm = "The python3-rpm package contains a module that permits applications \ +written in the Python programming language to use the interface \ +supplied by the RPM Package Manager libraries." + +HOMEPAGE = "http://www.rpm.org" + +# libraries are also LGPL - how to express this? +LICENSE = "GPL-2.0" +LIC_FILES_CHKSUM = "file://COPYING;md5=c0bf017c0fd1920e6158a333acabfd4a" + +SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.15.x \ + file://0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch \ + file://0001-Do-not-read-config-files-from-HOME.patch \ + file://0001-When-cross-installing-execute-package-scriptlets-wit.patch \ + file://0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch \ + file://0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch \ + file://0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch \ + file://0001-Fix-build-with-musl-C-library.patch \ + file://0001-Add-a-color-setting-for-mips64_n32-binaries.patch \ + file://0011-Do-not-require-that-ELF-binaries-are-executable-to-b.patch \ + file://0001-perl-disable-auto-reqs.patch \ + file://0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch \ + file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \ + file://0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch \ + file://0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch \ + " + +PE = "1" +SRCREV = "ab2179452c5be276a6b96c591afded485c7e58c3" + +S = "${WORKDIR}/git" + +DEPENDS = "openssl libarchive db file popt xz bzip2 dbus elfutils python3" +DEPENDS_append_class-native = " file-replacement-native bzip2-replacement-native" + +inherit autotools gettext pkgconfig python3native +export PYTHON_ABI + +# OE-core patches autoreconf to additionally run gnu-configize, which fails with this recipe +EXTRA_AUTORECONF_append = " --exclude=gnu-configize" + +EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl" +EXTRA_OECONF_append_libc-musl = " --disable-nls --disable-openmp" + +# --sysconfdir prevents rpm from attempting to access machine-specific configuration in sysroot/etc; we need to have it in rootfs +# +# --localstatedir prevents rpm from writing its database to native sysroot when building images +# +# Disable dbus for native, so that rpm doesn't attempt to inhibit shutdown via session dbus even when plugins support is enabled. +# Also disable plugins by default for native. +EXTRA_OECONF_append_class-native = " --sysconfdir=/etc --localstatedir=/var --disable-plugins" +EXTRA_OECONF_append_class-nativesdk = " --sysconfdir=/etc --localstatedir=/var --disable-plugins" + +BBCLASSEXTEND = "native nativesdk" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[imaevm] = "--with-imaevm,,ima-evm-utils" + +ASNEEDED = "" + +# Direct rpm-native to read configuration from our sysroot, not the one it was compiled in +# libmagic also has sysroot path contamination, so override it + +WRAPPER_TOOLS = " \ + ${bindir}/rpm \ + ${bindir}/rpm2archive \ + ${bindir}/rpm2cpio \ + ${bindir}/rpmbuild \ + ${bindir}/rpmdb \ + ${bindir}/rpmgraph \ + ${bindir}/rpmkeys \ + ${bindir}/rpmsign \ + ${bindir}/rpmspec \ + ${libdir}/rpm/rpmdeps \ +" + +do_install_append_class-native() { + for tool in ${WRAPPER_TOOLS}; do + create_wrapper ${D}$tool \ + RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \ + RPM_ETCCONFIGDIR=${STAGING_DIR_NATIVE} \ + MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc \ + RPM_NO_CHROOT_FOR_SCRIPTS=1 + done +} + +do_install_append_class-nativesdk() { + for tool in ${WRAPPER_TOOLS}; do + create_wrapper ${D}$tool \ + RPM_CONFIGDIR='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir'), d.getVar('bindir'))}/rpm \ + RPM_ETCCONFIGDIR='$'{RPM_ETCCONFIGDIR-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir'), d.getVar('bindir'))}/..} \ + MAGIC='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir'), d.getVar('bindir'))}/misc/magic.mgc \ + RPM_NO_CHROOT_FOR_SCRIPTS=1 + done + + rm -rf ${D}/var +} + +# Rpm's make install creates var/tmp which clashes with base-files packaging +do_install_append_class-target() { + rm -rf ${D}/var +} + +do_install_append () { + sed -i -e 's:${HOSTTOOLS_DIR}/::g' \ + ${D}/${libdir}/rpm/macros + + sed -i -e 's|/usr/bin/python|${USRBINPATH}/env ${PYTHON_PN}|' \ + ${D}${libdir}/rpm/pythondistdeps.py +} + +FILES_${PN} += "${libdir}/rpm-plugins/*.so \ + " + +FILES_${PN}-dev += "${libdir}/rpm-plugins/*.la \ + " + +PACKAGES += "python3-rpm" +PROVIDES += "python3-rpm" +FILES_python3-rpm = "${PYTHON_SITEPACKAGES_DIR}/rpm/*" + +# rpm 5.x was packaging the rpm build tools separately +RPROVIDES_${PN} += "rpm-build" + +RDEPENDS_${PN} = "bash perl python3-core" + +PACKAGE_PREPROCESS_FUNCS += "rpm_package_preprocess" + +# Do not specify a sysroot when compiling on a target. +rpm_package_preprocess () { + sed -i -e 's:--sysroot[^ ]*::g' \ + ${PKGD}/${libdir}/rpm/macros +} diff --git a/poky/meta/recipes-extended/ghostscript/files/do-not-check-local-libpng-source.patch b/poky/meta/recipes-extended/ghostscript/files/do-not-check-local-libpng-source.patch index 5834ffaf9..a9afb9948 100644 --- a/poky/meta/recipes-extended/ghostscript/files/do-not-check-local-libpng-source.patch +++ b/poky/meta/recipes-extended/ghostscript/files/do-not-check-local-libpng-source.patch @@ -1,7 +1,7 @@ -From a954bf29a5f906b3151dffbecb5856e02e1565da Mon Sep 17 00:00:00 2001 +From 2adaa7366064a8f18af864eda74e52877a89620c Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Mon, 18 Jan 2016 01:00:30 -0500 -Subject: [PATCH 03/10] configure.ac: do not check local png source +Subject: [PATCH] configure.ac: do not check local png source In oe-core, it did not need to compile local libpng source in ghostscript, so do not check local png @@ -11,28 +11,21 @@ libpng library. Upstream-Status: Inappropriate [OE-Core specific] Signed-off-by: Hongxu Jia + --- - configure.ac | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac -index 9341930..80a60b1 100644 +index 698abd3..e65ac8b 100644 --- a/configure.ac +++ b/configure.ac -@@ -1114,11 +1114,11 @@ AC_SUBST(ZLIBDIR) - AC_SUBST(FT_SYS_ZLIB) - - dnl png for the png output device; it also requires zlib --LIBPNGDIR=src -+LIBPNGDIR=$srcdir/libpng - PNGDEVS='' - PNGDEVS_ALL='png48 png16m pnggray pngmono pngmonod png256 png16 pngalpha' - AC_MSG_CHECKING([for local png library source]) --if test -f $srcdir/libpng/pngread.c; then -+if false; then - AC_MSG_RESULT([yes]) - SHARE_LIBPNG=0 - LIBPNGDIR=$srcdir/libpng --- -1.8.3.1 - +@@ -1241,7 +1241,7 @@ else + PNGDEVS='' + PNGDEVS_ALL='png48 png16m pnggray pngmono pngmonod png256 png16 pngalpha' + AC_MSG_CHECKING([for local png library source]) +- if test -f $srcdir/libpng/pngread.c; then ++ if false; then + AC_MSG_RESULT([yes]) + SHARE_LIBPNG=0 + LIBPNGDIR=$srcdir/libpng diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-14869-0001.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-14869-0001.patch deleted file mode 100644 index 715ec1c45..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-14869-0001.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 485904772c5f0aa1140032746e5a0abfc40f4cef Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Tue, 5 Nov 2019 09:45:27 +0000 -Subject: [PATCH] Bug 701841: remove .forceput from /.charkeys - -When loading Type 1 or Truetype fonts from disk, we attempt to extend the glyph -name table to include all identifiable glyph names from the Adobe Glyph List. - -In the case of Type 1 fonts, the font itself (almost always) marks the -CharStrings dictionary as read-only, hence we have to use .forceput for that -case. - -But for Truetype fonts, the CharStrings dictionary is created internally and is -not read-only until *after* we have fully populated it (including the extended -glyph names from the AGL), hence there is no need for .forceput, and no need to -carry the security risk of using it. - -Replace with regular put. - -CVE: CVE-2019-14869 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Stefan Ghinea ---- - Resource/Init/gs_ttf.ps | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/Resource/Init/gs_ttf.ps b/Resource/Init/gs_ttf.ps -index e34967d..5354ff0 100644 ---- a/Resource/Init/gs_ttf.ps -+++ b/Resource/Init/gs_ttf.ps -@@ -1301,7 +1301,7 @@ currentdict /.pickcmap_with_no_xlatmap .undef - TTFDEBUG { (\n1 setting alias: ) print dup ==only - ( to be the same as ) print 2 index //== exec } if - -- 7 index 2 index 3 -1 roll exch .forceput -+ 7 index 2 index 3 -1 roll exch put - } forall - pop pop pop - } -@@ -1319,7 +1319,7 @@ currentdict /.pickcmap_with_no_xlatmap .undef - exch pop - TTFDEBUG { (\n2 setting alias: ) print 1 index ==only - ( to use glyph index: ) print dup //== exec } if -- 5 index 3 1 roll .forceput -+ 5 index 3 1 roll put - //false - } - { -@@ -1336,7 +1336,7 @@ currentdict /.pickcmap_with_no_xlatmap .undef - { % CharStrings(dict) isunicode(boolean) cmap(dict) RAGL(dict) gname(name) codep(integer) gindex(integer) - TTFDEBUG { (\3 nsetting alias: ) print 1 index ==only - ( to be index: ) print dup //== exec } if -- exch pop 5 index 3 1 roll .forceput -+ exch pop 5 index 3 1 roll put - } - { - pop pop -@@ -1366,7 +1366,7 @@ currentdict /.pickcmap_with_no_xlatmap .undef - } ifelse - ] - TTFDEBUG { (Encoding: ) print dup === flush } if --} .bind executeonly odef % hides .forceput -+} .bind odef - - % ---------------- CIDFontType 2 font loading ---------------- % - --- -2.20.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/aarch64/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/aarch64/objarch.h deleted file mode 100644 index a05de29de..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/aarch64/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/arm/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/arm/objarch.h deleted file mode 100644 index e8772cd95..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/arm/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/armeb/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/armeb/objarch.h deleted file mode 100644 index 359097f35..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/armeb/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 1 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch deleted file mode 100644 index 7b70bb8e2..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch +++ /dev/null @@ -1,38 +0,0 @@ -From c076d0fc970f190f723018258790c79b59daba2e Mon Sep 17 00:00:00 2001 -From: Hongxu Jia -Date: Sat, 11 May 2019 21:20:27 +0800 -Subject: [PATCH] not generate objarch.h at compile time - -Import patch from windriver linux for cross compilation, and split -patches into oe way under different directories such as i586, powerpc etc -according to Richard's opinion. - -Upstream-Status: Pending - -Signed-off-by: Kang Kai -Signed-off-by: Wenzong Fan - -Rebase to 9.27 -Signed-off-by: Hongxu Jia ---- - base/lib.mak | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/base/lib.mak b/base/lib.mak -index 3ed088a..5af2b43 100644 ---- a/base/lib.mak -+++ b/base/lib.mak -@@ -87,8 +87,8 @@ arch_h=$(GLGEN)arch.h - stdpre_h=$(GLSRC)stdpre.h - stdint__h=$(GLSRC)stdint_.h - --$(GLGEN)arch.h : $(GENARCH_XE) -- $(EXP)$(GENARCH_XE) $(GLGEN)arch.h $(TARGET_ARCH_FILE) -+##$(GLGEN)arch.h : $(GENARCH_XE) -+## $(EXP)$(GENARCH_XE) $(GLGEN)arch.h $(TARGET_ARCH_FILE) - - # Platform interfaces - --- -2.7.4 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/i586/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/i586/objarch.h deleted file mode 100644 index 5817b7a6d..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/i586/objarch.h +++ /dev/null @@ -1,41 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 4 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/microblaze/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/microblaze/objarch.h deleted file mode 100644 index 63232fdfa..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/microblaze/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 4 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 1 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/microblazeel/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/microblazeel/objarch.h deleted file mode 100644 index 3ec810168..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/microblazeel/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 4 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32eb/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32eb/objarch.h deleted file mode 100644 index 0d0a16bfa..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32eb/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 1 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32el/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32el/objarch.h deleted file mode 100644 index a05de29de..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn32el/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64eb/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64eb/objarch.h deleted file mode 100644 index 0d0a16bfa..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64eb/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 1 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64el/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64el/objarch.h deleted file mode 100644 index a05de29de..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarchn64el/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32eb/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32eb/objarch.h deleted file mode 100644 index b8b637cca..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32eb/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 4 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 1 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32el/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32el/objarch.h deleted file mode 100644 index 29f90ddf8..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/mipsarcho32el/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 4 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/nios2/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/nios2/objarch.h deleted file mode 100644 index 3ec810168..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/nios2/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 4 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc/objarch.h deleted file mode 100644 index 359097f35..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 4 -#define ARCH_ALIGN_PTR_MOD 4 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 2 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 4 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 1 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64/objarch.h deleted file mode 100644 index 0d0a16bfa..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 1 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64le/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64le/objarch.h deleted file mode 100644 index a05de29de..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/powerpc64le/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/x86-64/objarch.h b/poky/meta/recipes-extended/ghostscript/ghostscript/x86-64/objarch.h deleted file mode 100644 index a05de29de..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/x86-64/objarch.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Parameters derived from machine and compiler architecture. */ -/* This file is generated mechanically by genarch.c. */ - - /* ---------------- Scalar alignments ---------------- */ - -#define ARCH_ALIGN_SHORT_MOD 2 -#define ARCH_ALIGN_INT_MOD 4 -#define ARCH_ALIGN_LONG_MOD 8 -#define ARCH_ALIGN_PTR_MOD 8 -#define ARCH_ALIGN_FLOAT_MOD 4 -#define ARCH_ALIGN_DOUBLE_MOD 8 - - /* ---------------- Scalar sizes ---------------- */ - -#define ARCH_LOG2_SIZEOF_CHAR 0 -#define ARCH_LOG2_SIZEOF_SHORT 1 -#define ARCH_LOG2_SIZEOF_INT 2 -#define ARCH_LOG2_SIZEOF_LONG 3 -#define ARCH_LOG2_SIZEOF_LONG_LONG 3 -#define ARCH_SIZEOF_GX_COLOR_INDEX 8 -#define ARCH_SIZEOF_PTR 8 -#define ARCH_SIZEOF_FLOAT 4 -#define ARCH_SIZEOF_DOUBLE 8 -#define ARCH_FLOAT_MANTISSA_BITS 24 -#define ARCH_DOUBLE_MANTISSA_BITS 53 - - /* ---------------- Unsigned max values ---------------- */ - -#define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) -#define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) -#define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) -#define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) - - /* ---------------- Miscellaneous ---------------- */ - -#define ARCH_IS_BIG_ENDIAN 0 -#define ARCH_PTRS_ARE_SIGNED 0 -#define ARCH_FLOATS_ARE_IEEE 1 -#define ARCH_ARITH_RSHIFT 2 -#define ARCH_DIV_NEG_POS_TRUNCATES 1 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript_9.50.bb b/poky/meta/recipes-extended/ghostscript/ghostscript_9.50.bb deleted file mode 100644 index 39c32644d..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript_9.50.bb +++ /dev/null @@ -1,129 +0,0 @@ -SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter" -DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \ -a back-end to a program such as ghostview, it can display PostScript and PDF \ -documents in an X11 environment. \ -\ -Furthermore, it can render PostScript and PDF files as graphics to be printed \ -on non-PostScript printers. Supported printers include common \ -dot-matrix, inkjet and laser models. \ -" -HOMEPAGE = "http://www.ghostscript.com" -SECTION = "console/utils" - -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://LICENSE;md5=70dc2bac4d0ce4448da873cd86b123fc" - -DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng" -DEPENDS_class-native = "libpng-native" - -UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases" -UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)\.tar" - -SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs950/${BPN}-${PV}.tar.gz \ - file://ghostscript-9.15-parallel-make.patch \ - file://ghostscript-9.16-Werror-return-type.patch \ - file://do-not-check-local-libpng-source.patch \ - file://avoid-host-contamination.patch \ - file://mkdir-p.patch \ - file://CVE-2019-14869-0001.patch \ -" - -SRC_URI = "${SRC_URI_BASE} \ - file://ghostscript-9.21-prevent_recompiling.patch \ - file://ghostscript-9.02-genarch.patch \ - file://objarch.h \ - file://cups-no-gcrypt.patch \ - " - -SRC_URI_class-native = "${SRC_URI_BASE} \ - file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \ - file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \ - " - -SRC_URI[md5sum] = "00970cf622bd5b46f68eec9383753870" -SRC_URI[sha256sum] = "0f53e89fd647815828fc5171613e860e8535b68f7afbc91bf89aee886769ce89" - -# Put something like -# -# PACKAGECONFIG_append_pn-ghostscript = " x11" -# -# in local.conf to enable building with X11. Be careful. The order -# of the overrides matters! -# -#PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" -PACKAGECONFIG_class-native = "" - -PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \ - --without-x, virtual/libx11 libxext libxt gtk+3\ - " - -EXTRA_OECONF = "--without-libpaper --with-system-libtiff --without-jbig2dec \ - --with-fontpath=${datadir}/fonts \ - --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \ - --with-cups-datadir=${datadir}/cups \ - CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \ - " - -EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0" - -# Explicity disable libtiff, fontconfig, -# freetype, cups for ghostscript-native -EXTRA_OECONF_class-native = "--without-x --with-system-libtiff=no \ - --without-jbig2dec --without-libpaper \ - --with-fontpath=${datadir}/fonts \ - --without-libidn --disable-fontconfig \ - --disable-freetype --disable-cups" - -# This has been fixed upstream but for now we need to subvert the check for time.h -# http://bugs.ghostscript.com/show_bug.cgi?id=692443 -# http://bugs.ghostscript.com/show_bug.cgi?id=692426 -CFLAGS += "-DHAVE_SYS_TIME_H=1" -BUILD_CFLAGS += "-DHAVE_SYS_TIME_H=1" - -inherit autotools - -do_configure_prepend () { - mkdir -p obj - mkdir -p soobj - if [ -e ${WORKDIR}/objarch.h ]; then - cp ${WORKDIR}/objarch.h obj/arch.h - fi -} - -do_configure_append () { - # copy tools from the native ghostscript build - if [ "${PN}" != "ghostscript-native" ]; then - mkdir -p obj/aux soobj - for i in genarch genconf mkromfs echogs gendev genht packps; do - cp ${STAGING_BINDIR_NATIVE}/ghostscript-${PV}/$i obj/aux/$i - done - fi -} - -do_install_append () { - mkdir -p ${D}${datadir}/ghostscript/${PV}/ - cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/ - cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/ -} - -do_compile_class-native () { - mkdir -p obj - for i in genarch genconf mkromfs echogs gendev genht packps; do - oe_runmake obj/aux/$i - done -} - -do_install_class-native () { - install -d ${D}${bindir}/ghostscript-${PV} - for i in genarch genconf mkromfs echogs gendev genht packps; do - install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i - done -} - -BBCLASSEXTEND = "native" - -# ghostscript does not supports "arc" -COMPATIBLE_HOST = "^(?!arc).*" - -# some entries in NVD uses gpl_ghostscript -CVE_PRODUCT = "ghostscript gpl_ghostscript" diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript_9.52.bb b/poky/meta/recipes-extended/ghostscript/ghostscript_9.52.bb new file mode 100644 index 000000000..4cdb6e00d --- /dev/null +++ b/poky/meta/recipes-extended/ghostscript/ghostscript_9.52.bb @@ -0,0 +1,122 @@ +SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter" +DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \ +a back-end to a program such as ghostview, it can display PostScript and PDF \ +documents in an X11 environment. \ +\ +Furthermore, it can render PostScript and PDF files as graphics to be printed \ +on non-PostScript printers. Supported printers include common \ +dot-matrix, inkjet and laser models. \ +" +HOMEPAGE = "http://www.ghostscript.com" +SECTION = "console/utils" + +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://LICENSE;md5=70dc2bac4d0ce4448da873cd86b123fc" + +DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng" +DEPENDS_class-native = "libpng-native" + +UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases" +UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)\.tar" + +def gs_verdir(v): + return "".join(v.split(".")) + + +SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${@gs_verdir("${PV}")}/${BPN}-${PV}.tar.gz \ + file://ghostscript-9.15-parallel-make.patch \ + file://ghostscript-9.16-Werror-return-type.patch \ + file://do-not-check-local-libpng-source.patch \ + file://avoid-host-contamination.patch \ + file://mkdir-p.patch \ +" + +SRC_URI = "${SRC_URI_BASE} \ + file://ghostscript-9.21-prevent_recompiling.patch \ + file://cups-no-gcrypt.patch \ + " + +SRC_URI_class-native = "${SRC_URI_BASE} \ + file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \ + file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \ + " + +SRC_URI[md5sum] = "0f6964ab9b83a63b7e373f136243f901" +SRC_URI[sha256sum] = "c2501d8e8e0814c4a5aa7e443e230e73d7af7f70287546f7b697e5ef49e32176" + +# Put something like +# +# PACKAGECONFIG_append_pn-ghostscript = " x11" +# +# in local.conf to enable building with X11. Be careful. The order +# of the overrides matters! +# +#PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" +PACKAGECONFIG_class-native = "" + +PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \ + --without-x, virtual/libx11 libxext libxt gtk+3\ + " + +EXTRA_OECONF = "--without-libpaper --with-system-libtiff --without-jbig2dec \ + --with-fontpath=${datadir}/fonts \ + --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \ + --with-cups-datadir=${datadir}/cups \ + CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \ + " + +EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0" + +# Explicity disable libtiff, fontconfig, +# freetype, cups for ghostscript-native +EXTRA_OECONF_class-native = "--without-x --with-system-libtiff=no \ + --without-jbig2dec --without-libpaper \ + --with-fontpath=${datadir}/fonts \ + --without-libidn --disable-fontconfig \ + --enable-freetype --disable-cups " + +# This has been fixed upstream but for now we need to subvert the check for time.h +# http://bugs.ghostscript.com/show_bug.cgi?id=692443 +# http://bugs.ghostscript.com/show_bug.cgi?id=692426 +CFLAGS += "-DHAVE_SYS_TIME_H=1" +BUILD_CFLAGS += "-DHAVE_SYS_TIME_H=1" + +inherit autotools-brokensep + +do_configure_append () { + # copy tools from the native ghostscript build + if [ "${PN}" != "ghostscript-native" ]; then + mkdir -p obj/aux soobj + for i in genarch genconf mkromfs echogs gendev genht packps; do + cp ${STAGING_BINDIR_NATIVE}/ghostscript-${PV}/$i obj/aux/$i + done + fi +} + +do_install_append () { + mkdir -p ${D}${datadir}/ghostscript/${PV}/ + cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/ + cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/ +} + +do_compile_class-native () { + mkdir -p obj + for i in genarch genconf mkromfs echogs gendev genht packps; do + oe_runmake obj/aux/$i + done +} + +do_install_class-native () { + install -d ${D}${bindir}/ghostscript-${PV} + for i in genarch genconf mkromfs echogs gendev genht packps; do + install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i + done +} + +BBCLASSEXTEND = "native" + +# ghostscript does not supports "arc" +COMPATIBLE_HOST = "^(?!arc).*" + +# some entries in NVD uses gpl_ghostscript +CVE_PRODUCT = "ghostscript gpl_ghostscript" diff --git a/poky/meta/recipes-extended/iputils/iputils/0001-iputils-Initialize-libgcrypt.patch b/poky/meta/recipes-extended/iputils/iputils/0001-iputils-Initialize-libgcrypt.patch new file mode 100644 index 000000000..b56804ceb --- /dev/null +++ b/poky/meta/recipes-extended/iputils/iputils/0001-iputils-Initialize-libgcrypt.patch @@ -0,0 +1,55 @@ +From 8576e0c218634e6f7ed1b6ff02fa164fb0c75f86 Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Wed, 29 Apr 2020 03:50:32 +0000 +Subject: [PATCH] iputils_md5dig.h: Initialize libgcrypt + +Initialize libgcrypt on first use otherwise +there comes below warning when check the status +of the ninfod.service. + # systemctl status ninfod.service + * ninfod.service - Respond to IPv6 Node Information Queries + Loaded: loaded (/lib/systemd/system/ninfod.service; enabled; vendor preset: enabled) + Active: active (running) since Wed 2020-04-29 05:18:21 UTC; 36s ago + Docs: man:ninfod(8) + Main PID: 347 (ninfod) + Tasks: 1 (limit: 9382) + Memory: 1.2M + CGroup: /system.slice/ninfod.service + `-347 /sbin/ninfod -d + + Apr 29 05:18:21 intel-x86-64 systemd[1]: Started Respond to IPv6 Node Information Queries. + Apr 29 05:18:24 intel-x86-64 ninfod[347]: Libgcrypt warning: missing initialization - please fix the application + +Upstream-Status: Inappropriate [the upstream avoids linking to crypto libraries in + commit 214ed83 common: copy md5 implementation to iputils project] + +Signed-off-by: Mingli Yu +--- + iputils_md5dig.h | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/iputils_md5dig.h b/iputils_md5dig.h +index bfa7f02..3cc3fbf 100644 +--- a/iputils_md5dig.h ++++ b/iputils_md5dig.h +@@ -24,8 +24,17 @@ typedef struct { + gcry_md_hd_t dig; + } iputils_md5dig_ctx; + ++void maybeInit() ++{ ++ if (!gcry_control(GCRYCTL_INITIALIZATION_FINISHED_P)) ++ { ++ gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0); ++ } ++} ++ + static void iputils_md5dig_init(iputils_md5dig_ctx *ctx) + { ++ maybeInit(); + if (gcry_md_open(&ctx->dig, GCRY_MD_MD5, 0) != GPG_ERR_NO_ERROR) + abort(); + return; +-- +2.24.1 + diff --git a/poky/meta/recipes-extended/iputils/iputils_s20190709.bb b/poky/meta/recipes-extended/iputils/iputils_s20190709.bb index 2aed6b56c..545f3d5e8 100644 --- a/poky/meta/recipes-extended/iputils/iputils_s20190709.bb +++ b/poky/meta/recipes-extended/iputils/iputils_s20190709.bb @@ -14,6 +14,7 @@ SRC_URI = "git://github.com/iputils/iputils \ file://0001-ninfod-change-variable-name-to-avoid-colliding-with-.patch \ file://0001-ninfod-fix-systemd-Documentation-url-error.patch \ file://0001-rarpd-rdisc-Drop-PrivateUsers.patch \ + file://0001-iputils-Initialize-libgcrypt.patch \ " SRCREV = "13e00847176aa23683d68fce1d17ffb523510946" diff --git a/poky/meta/recipes-extended/logrotate/logrotate/0001-Update-the-manual.patch b/poky/meta/recipes-extended/logrotate/logrotate/0001-Update-the-manual.patch new file mode 100644 index 000000000..50a385207 --- /dev/null +++ b/poky/meta/recipes-extended/logrotate/logrotate/0001-Update-the-manual.patch @@ -0,0 +1,39 @@ +From 3e2cfa88b6538bb0fee3d9a6e99622055d05ac4a Mon Sep 17 00:00:00 2001 +From: Robert Yang +Date: Tue, 17 Feb 2015 21:14:37 -0800 +Subject: [PATCH] Update the manual + +Update the manual for rotating on different filesystems. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang + +--- + logrotate.8.in | 10 ++++------ + 1 file changed, 4 insertions(+), 6 deletions(-) + +diff --git a/logrotate.8.in b/logrotate.8.in +index 98fea91..70b4c44 100644 +--- a/logrotate.8.in ++++ b/logrotate.8.in +@@ -202,12 +202,10 @@ at all (use with caution, may waste performance and disk space). Default is 0. + + .TP + \fBolddir \fIdirectory\fR +-Logs are moved into \fIdirectory\fR for rotation. The \fIdirectory\fR must be +-on the same physical device as the log file being rotated, unless \fBcopy\fR, +-\fBcopytruncate\fR or \fBrenamecopy\fR option is used. The \fIdirectory\fR +-is assumed to be relative to the directory holding the log file +-unless an absolute path name is specified. When this option is used all +-old versions of the log end up in \fIdirectory\fR. This option may be ++Logs are moved into \fIdirectory\fR for rotation. The \fIdirectory\fR ++is assumed to be relative to the directory holding the log file unless ++an absolute path name is specified. When this option is used all old ++versions of the log end up in \fIdirectory\fR. This option may be + overridden by the \fBnoolddir\fR option. + + .TP +-- +2.24.0 + diff --git a/poky/meta/recipes-extended/logrotate/logrotate/act-as-mv-when-rotate.patch b/poky/meta/recipes-extended/logrotate/logrotate/act-as-mv-when-rotate.patch index 79805b514..acef5ccbe 100644 --- a/poky/meta/recipes-extended/logrotate/logrotate/act-as-mv-when-rotate.patch +++ b/poky/meta/recipes-extended/logrotate/logrotate/act-as-mv-when-rotate.patch @@ -1,4 +1,4 @@ -From c637948ebab5aff5641700c5cf613321ca0a6e6b Mon Sep 17 00:00:00 2001 +From ef1ea905831c5bcd63e04149571c10d75ff8f028 Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Tue, 17 Feb 2015 21:08:07 -0800 Subject: [PATCH] Act as the "mv" command when rotate log @@ -9,15 +9,16 @@ read and write. Upstream-Status: Pending Signed-off-by: Robert Yang + --- logrotate.c | 71 ++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 59 insertions(+), 12 deletions(-) diff --git a/logrotate.c b/logrotate.c -index 54dac90..bf3ec23 100644 +index 25902bc..afa1a90 100644 --- a/logrotate.c +++ b/logrotate.c -@@ -1360,6 +1360,53 @@ static int findNeedRotating(struct logInfo *log, int logNum, int force) +@@ -1434,6 +1434,53 @@ static int findNeedRotating(struct logInfo *log, int logNum, int force) return 0; } @@ -71,7 +72,7 @@ index 54dac90..bf3ec23 100644 /* find the rotated file with the highest index */ static int findLastRotated(const struct logNames *rotNames, const char *fileext, const char *compext) -@@ -1800,15 +1847,15 @@ static int prerotateSingleLog(struct logInfo *log, int logNum, +@@ -1911,15 +1958,15 @@ static int prerotateSingleLog(struct logInfo *log, int logNum, } message(MESS_DEBUG, @@ -90,7 +91,7 @@ index 54dac90..bf3ec23 100644 oldName, newName, strerror(errno)); hasErrors = 1; } -@@ -1891,21 +1938,21 @@ static int rotateSingleLog(struct logInfo *log, int logNum, +@@ -2002,10 +2049,10 @@ static int rotateSingleLog(struct logInfo *log, int logNum, return 1; } @@ -104,7 +105,8 @@ index 54dac90..bf3ec23 100644 log->files[logNum], tmpFilename, strerror(errno)); hasErrors = 1; - } +@@ -2014,11 +2061,11 @@ static int rotateSingleLog(struct logInfo *log, int logNum, + free(tmpFilename); } else { - message(MESS_DEBUG, "renaming %s to %s\n", log->files[logNum], @@ -118,7 +120,7 @@ index 54dac90..bf3ec23 100644 log->files[logNum], rotNames->finalName, strerror(errno)); hasErrors = 1; -@@ -2297,7 +2344,7 @@ static int rotateLogSet(struct logInfo *log, int force) +@@ -2424,7 +2471,7 @@ static int rotateLogSet(struct logInfo *log, int force) return hasErrors; } @@ -127,7 +129,7 @@ index 54dac90..bf3ec23 100644 { struct logState *p; FILE *f; -@@ -2460,7 +2507,7 @@ static int writeState(const char *stateFilename) +@@ -2629,7 +2676,7 @@ static int writeState(const char *stateFilename) fclose(f); if (error == 0) { @@ -135,8 +137,8 @@ index 54dac90..bf3ec23 100644 + if (mvFile(tmpFilename, stateFilename, log, prev_acl)) { unlink(tmpFilename); error = 1; - message(MESS_ERROR, "error renaming temp state file %s\n", -@@ -2805,7 +2852,7 @@ int main(int argc, const char **argv) + message(MESS_ERROR, "error renaming temp state file %s to %s\n", +@@ -2987,7 +3034,7 @@ int main(int argc, const char **argv) rc |= rotateLogSet(log, force); if (!debug) @@ -145,6 +147,3 @@ index 54dac90..bf3ec23 100644 return (rc != 0); } --- -2.18.1 - diff --git a/poky/meta/recipes-extended/logrotate/logrotate/disable-check-different-filesystems.patch b/poky/meta/recipes-extended/logrotate/logrotate/disable-check-different-filesystems.patch index 96ff098a3..9ba531f81 100644 --- a/poky/meta/recipes-extended/logrotate/logrotate/disable-check-different-filesystems.patch +++ b/poky/meta/recipes-extended/logrotate/logrotate/disable-check-different-filesystems.patch @@ -1,4 +1,4 @@ -From e47796c8e8270a3d14f0b06af8a9e916c2225514 Mon Sep 17 00:00:00 2001 +From a3fdf3dbdd6ecc0f2550a765dcb9bb274bce8ea8 Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Tue, 8 Jan 2019 06:27:06 +0000 Subject: [PATCH] Disable the check for different filesystems @@ -9,18 +9,19 @@ disable the check for different filesystems. Upstream-Status: Pending Signed-off-by: Robert Yang + --- config.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/config.c b/config.c -index 633b843..99a4a3b 100644 +index f027c7e..026136c 100644 --- a/config.c +++ b/config.c -@@ -1765,15 +1765,6 @@ duperror: - goto error; - } +@@ -1873,15 +1873,6 @@ duperror: } + + free(ld); - - if (sb.st_dev != sb2.st_dev - && !(newlog->flags & (LOG_FLAG_COPYTRUNCATE | LOG_FLAG_COPY | LOG_FLAG_TMPFILENAME))) { @@ -33,6 +34,3 @@ index 633b843..99a4a3b 100644 } } --- -2.18.1 - diff --git a/poky/meta/recipes-extended/logrotate/logrotate/update-the-manual.patch b/poky/meta/recipes-extended/logrotate/logrotate/update-the-manual.patch deleted file mode 100644 index 725567e0c..000000000 --- a/poky/meta/recipes-extended/logrotate/logrotate/update-the-manual.patch +++ /dev/null @@ -1,38 +0,0 @@ -From bf22e8805df69344f6f20cea390e829a22fa741b Mon Sep 17 00:00:00 2001 -From: Robert Yang -Date: Tue, 17 Feb 2015 21:14:37 -0800 -Subject: [PATCH] Update the manual - -Update the manual for rotating on different filesystems. - -Upstream-Status: Pending - -Signed-off-by: Robert Yang ---- - logrotate.8.in | 10 ++++------ - 1 file changed, 4 insertions(+), 6 deletions(-) - -diff --git a/logrotate.8.in b/logrotate.8.in -index 951e406..581bf48 100644 ---- a/logrotate.8.in -+++ b/logrotate.8.in -@@ -445,12 +445,10 @@ Do not rotate the log if it is empty (this overrides the \fBifempty\fR option). - - .TP - \fBolddir \fIdirectory\fR --Logs are moved into \fIdirectory\fR for rotation. The \fIdirectory\fR must be --on the same physical device as the log file being rotated, unless \fBcopy\fR, --\fBcopytruncate\fR or \fBrenamecopy\fR option is used. The \fIdirectory\fR --is assumed to be relative to the directory holding the log file --unless an absolute path name is specified. When this option is used all --old versions of the log end up in \fIdirectory\fR. This option may be -+Logs are moved into \fIdirectory\fR for rotation. The \fIdirectory\fR -+is assumed to be relative to the directory holding the log file unless -+an absolute path name is specified. When this option is used all old -+versions of the log end up in \fIdirectory\fR. This option may be - overridden by the \fBnoolddir\fR option. - - .TP --- -1.8.3.1 - diff --git a/poky/meta/recipes-extended/logrotate/logrotate_3.15.1.bb b/poky/meta/recipes-extended/logrotate/logrotate_3.15.1.bb deleted file mode 100644 index 7c7d51b39..000000000 --- a/poky/meta/recipes-extended/logrotate/logrotate_3.15.1.bb +++ /dev/null @@ -1,99 +0,0 @@ -SUMMARY = "Rotates, compresses, removes and mails system log files" -SECTION = "console/utils" -HOMEPAGE = "https://github.com/logrotate/logrotate/issues" -LICENSE = "GPLv2" - -# TODO: Document coreutils dependency. Why not RDEPENDS? Why not busybox? - -DEPENDS="coreutils popt" - -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -# When updating logrotate to latest upstream, SRC_URI should point to -# a proper release tarball from https://github.com/logrotate/logrotate/releases -# and we have to take the snapshot for now because there is no such -# tarball available for 3.9.1. - -S = "${WORKDIR}/${BPN}-${PV}" - -UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases" -UPSTREAM_CHECK_REGEX = "logrotate-(?P\d+(\.\d+)+).tar" - -SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz \ - file://act-as-mv-when-rotate.patch \ - file://update-the-manual.patch \ - file://disable-check-different-filesystems.patch \ - " - -SRC_URI[md5sum] = "afe109afea749c306ff489203fde6beb" -SRC_URI[sha256sum] = "491fec9e89f1372f02a0ab66579aa2e9d63cac5178dfa672c204c88e693a908b" - -PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)}" - -PACKAGECONFIG[acl] = ",,acl" -PACKAGECONFIG[selinux] = ",,libselinux" - -CONFFILES_${PN} += "${localstatedir}/lib/logrotate.status \ - ${sysconfdir}/logrotate.conf \ - ${sysconfdir}/logrotate.d/btmp \ - ${sysconfdir}/logrotate.d/wtmp" - -# If RPM_OPT_FLAGS is unset, it adds -g itself rather than obeying our -# optimization variables, so use it rather than EXTRA_CFLAGS. -EXTRA_OEMAKE = "\ - LFS= \ - OS_NAME='${OS_NAME}' \ - 'CC=${CC}' \ - 'RPM_OPT_FLAGS=${CFLAGS}' \ - 'EXTRA_LDFLAGS=${LDFLAGS}' \ - ${@bb.utils.contains('PACKAGECONFIG', 'acl', 'WITH_ACL=yes', '', d)} \ - ${@bb.utils.contains('PACKAGECONFIG', 'selinux', 'WITH_SELINUX=yes', '', d)} \ -" - -# OS_NAME in the makefile defaults to `uname -s`. The behavior for -# freebsd/netbsd is questionable, so leave it as Linux, which only sets -# INSTALL=install and BASEDIR=/usr. -OS_NAME = "Linux" - -inherit autotools systemd - -SYSTEMD_SERVICE_${PN} = "\ - ${BPN}.service \ - ${BPN}.timer \ -" - -LOGROTATE_OPTIONS ?= "" - -LOGROTATE_SYSTEMD_TIMER_BASIS ?= "daily" -LOGROTATE_SYSTEMD_TIMER_ACCURACY ?= "12h" -LOGROTATE_SYSTEMD_TIMER_PERSISTENT ?= "true" - -do_install(){ - oe_runmake install DESTDIR=${D} PREFIX=${D} MANDIR=${mandir} - mkdir -p ${D}${sysconfdir}/logrotate.d - mkdir -p ${D}${localstatedir}/lib - install -p -m 644 ${S}/examples/logrotate.conf ${D}${sysconfdir}/logrotate.conf - install -p -m 644 ${S}/examples/btmp ${D}${sysconfdir}/logrotate.d/btmp - install -p -m 644 ${S}/examples/wtmp ${D}${sysconfdir}/logrotate.d/wtmp - touch ${D}${localstatedir}/lib/logrotate.status - - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${S}/examples/logrotate.service ${D}${systemd_system_unitdir}/logrotate.service - install -m 0644 ${S}/examples/logrotate.timer ${D}${systemd_system_unitdir}/logrotate.timer - [ -z "${LOGROTATE_OPTIONS}" ] || - sed -ri \ - -e 's|(ExecStart=.*/logrotate.*)$|\1 ${LOGROTATE_OPTIONS}|g' \ - ${D}${systemd_system_unitdir}/logrotate.service - sed -ri \ - -e 's|(OnCalendar=).*$|\1${LOGROTATE_SYSTEMD_TIMER_BASIS}|g' \ - -e 's|(AccuracySec=).*$|\1${LOGROTATE_SYSTEMD_TIMER_ACCURACY}|g' \ - -e 's|(Persistent=).*$|\1${LOGROTATE_SYSTEMD_TIMER_PERSISTENT}|g' \ - ${D}${systemd_system_unitdir}/logrotate.timer - fi - - if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then - mkdir -p ${D}${sysconfdir}/cron.daily - install -p -m 0755 ${S}/examples/logrotate.cron ${D}${sysconfdir}/cron.daily/logrotate - fi -} diff --git a/poky/meta/recipes-extended/logrotate/logrotate_3.16.0.bb b/poky/meta/recipes-extended/logrotate/logrotate_3.16.0.bb new file mode 100644 index 000000000..2b6ee0a19 --- /dev/null +++ b/poky/meta/recipes-extended/logrotate/logrotate_3.16.0.bb @@ -0,0 +1,99 @@ +SUMMARY = "Rotates, compresses, removes and mails system log files" +SECTION = "console/utils" +HOMEPAGE = "https://github.com/logrotate/logrotate/issues" +LICENSE = "GPLv2" + +# TODO: Document coreutils dependency. Why not RDEPENDS? Why not busybox? + +DEPENDS="coreutils popt" + +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +# When updating logrotate to latest upstream, SRC_URI should point to +# a proper release tarball from https://github.com/logrotate/logrotate/releases +# and we have to take the snapshot for now because there is no such +# tarball available for 3.9.1. + +S = "${WORKDIR}/${BPN}-${PV}" + +UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases" +UPSTREAM_CHECK_REGEX = "logrotate-(?P\d+(\.\d+)+).tar" + +SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz \ + file://act-as-mv-when-rotate.patch \ + file://0001-Update-the-manual.patch \ + file://disable-check-different-filesystems.patch \ + " + +SRC_URI[md5sum] = "faf729e0e24bfaafaa677bc6deb46ed8" +SRC_URI[sha256sum] = "442f6fdf61c349eeae5f76799878b88fe45a11c8863a38b618bac6988f4a7ce5" + +PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)}" + +PACKAGECONFIG[acl] = ",,acl" +PACKAGECONFIG[selinux] = ",,libselinux" + +CONFFILES_${PN} += "${localstatedir}/lib/logrotate.status \ + ${sysconfdir}/logrotate.conf \ + ${sysconfdir}/logrotate.d/btmp \ + ${sysconfdir}/logrotate.d/wtmp" + +# If RPM_OPT_FLAGS is unset, it adds -g itself rather than obeying our +# optimization variables, so use it rather than EXTRA_CFLAGS. +EXTRA_OEMAKE = "\ + LFS= \ + OS_NAME='${OS_NAME}' \ + 'CC=${CC}' \ + 'RPM_OPT_FLAGS=${CFLAGS}' \ + 'EXTRA_LDFLAGS=${LDFLAGS}' \ + ${@bb.utils.contains('PACKAGECONFIG', 'acl', 'WITH_ACL=yes', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'selinux', 'WITH_SELINUX=yes', '', d)} \ +" + +# OS_NAME in the makefile defaults to `uname -s`. The behavior for +# freebsd/netbsd is questionable, so leave it as Linux, which only sets +# INSTALL=install and BASEDIR=/usr. +OS_NAME = "Linux" + +inherit autotools systemd + +SYSTEMD_SERVICE_${PN} = "\ + ${BPN}.service \ + ${BPN}.timer \ +" + +LOGROTATE_OPTIONS ?= "" + +LOGROTATE_SYSTEMD_TIMER_BASIS ?= "daily" +LOGROTATE_SYSTEMD_TIMER_ACCURACY ?= "12h" +LOGROTATE_SYSTEMD_TIMER_PERSISTENT ?= "true" + +do_install(){ + oe_runmake install DESTDIR=${D} PREFIX=${D} MANDIR=${mandir} + mkdir -p ${D}${sysconfdir}/logrotate.d + mkdir -p ${D}${localstatedir}/lib + install -p -m 644 ${S}/examples/logrotate.conf ${D}${sysconfdir}/logrotate.conf + install -p -m 644 ${S}/examples/btmp ${D}${sysconfdir}/logrotate.d/btmp + install -p -m 644 ${S}/examples/wtmp ${D}${sysconfdir}/logrotate.d/wtmp + touch ${D}${localstatedir}/lib/logrotate.status + + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${S}/examples/logrotate.service ${D}${systemd_system_unitdir}/logrotate.service + install -m 0644 ${S}/examples/logrotate.timer ${D}${systemd_system_unitdir}/logrotate.timer + [ -z "${LOGROTATE_OPTIONS}" ] || + sed -ri \ + -e 's|(ExecStart=.*/logrotate.*)$|\1 ${LOGROTATE_OPTIONS}|g' \ + ${D}${systemd_system_unitdir}/logrotate.service + sed -ri \ + -e 's|(OnCalendar=).*$|\1${LOGROTATE_SYSTEMD_TIMER_BASIS}|g' \ + -e 's|(AccuracySec=).*$|\1${LOGROTATE_SYSTEMD_TIMER_ACCURACY}|g' \ + -e 's|(Persistent=).*$|\1${LOGROTATE_SYSTEMD_TIMER_PERSISTENT}|g' \ + ${D}${systemd_system_unitdir}/logrotate.timer + fi + + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + mkdir -p ${D}${sysconfdir}/cron.daily + install -p -m 0755 ${S}/examples/logrotate.cron ${D}${sysconfdir}/cron.daily/logrotate + fi +} diff --git a/poky/meta/recipes-extended/mc/files/0001-Add-option-to-control-configure-args.patch b/poky/meta/recipes-extended/mc/files/0001-Add-option-to-control-configure-args.patch deleted file mode 100644 index e76aac816..000000000 --- a/poky/meta/recipes-extended/mc/files/0001-Add-option-to-control-configure-args.patch +++ /dev/null @@ -1,99 +0,0 @@ -From a54501d3c9541bc8600225aa2d42531f93c6def7 Mon Sep 17 00:00:00 2001 -From: Joshua Watt -Date: Sat, 9 Nov 2019 20:01:48 -0600 -Subject: [PATCH] Add option to control configure args - -Embedding the configure time options into the executable can lead to -non-reproducible builds, since configure options often have embedded -paths. Add a configure time option to control if the configure args are -embedded so this can be disabled. - -Upstream-Status: Submitted [https://midnight-commander.org/ticket/4031] -Signed-off-by: Joshua Watt ---- - configure.ac | 6 ++++++ - src/args.c | 6 ++++++ - src/textconf.c | 2 ++ - 3 files changed, 14 insertions(+) - -diff --git a/configure.ac b/configure.ac -index 19d1a76be..a1948f6b9 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -544,6 +544,12 @@ dnl Clarify do we really need GModule - AM_CONDITIONAL([HAVE_GMODULE], [test -n "$g_module_supported" && \ - test x"$textmode_x11_support" = x"yes" -o x"$enable_aspell" = x"yes"]) - -+AC_ARG_ENABLE([configure-args], -+ AS_HELP_STRING([--enable-configure-args], [Handle all compiler warnings as errors])) -+if test "x$enable_configure_args" != xno; then -+ AC_DEFINE([ENABLE_CONFIGURE_ARGS], 1, [Define to enable showing configure arguments in help]) -+fi -+ - AC_DEFINE_UNQUOTED([MC_CONFIGURE_ARGS], ["$ac_configure_args"], [MC configure arguments]) - - AC_CONFIG_FILES( -diff --git a/src/args.c b/src/args.c -index baef1a1c8..f8dc24020 100644 ---- a/src/args.c -+++ b/src/args.c -@@ -95,7 +95,9 @@ static gboolean mc_args__nouse_subshell = FALSE; - #endif /* ENABLE_SUBSHELL */ - static gboolean mc_args__show_datadirs = FALSE; - static gboolean mc_args__show_datadirs_extended = FALSE; -+#ifdef ENABLE_CONFIGURE_ARGS - static gboolean mc_args__show_configure_opts = FALSE; -+#endif - - static GOptionGroup *main_group; - -@@ -125,6 +127,7 @@ static const GOptionEntry argument_main_table[] = { - NULL - }, - -+#ifdef ENABLE_CONFIGURE_ARGS - /* show configure options */ - { - "configure-options", '\0', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, -@@ -132,6 +135,7 @@ static const GOptionEntry argument_main_table[] = { - N_("Print configure options"), - NULL - }, -+#endif - - { - "printwd", 'P', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_STRING, -@@ -758,11 +762,13 @@ mc_args_show_info (void) - return FALSE; - } - -+#ifdef ENABLE_CONFIGURE_ARGS - if (mc_args__show_configure_opts) - { - show_configure_options (); - return FALSE; - } -+#endif - - return TRUE; - } -diff --git a/src/textconf.c b/src/textconf.c -index 1e0613e58..f39b9e028 100644 ---- a/src/textconf.c -+++ b/src/textconf.c -@@ -232,10 +232,12 @@ show_datadirs_extended (void) - - /* --------------------------------------------------------------------------------------------- */ - -+#ifdef ENABLE_CONFIGURE_ARGS - void - show_configure_options (void) - { - (void) printf ("%s\n", MC_CONFIGURE_ARGS); - } -+#endif - - /* --------------------------------------------------------------------------------------------- */ --- -2.23.0 - diff --git a/poky/meta/recipes-extended/mc/files/0001-Ticket-3629-configure.ac-drop-bundled-gettext.patch b/poky/meta/recipes-extended/mc/files/0001-Ticket-3629-configure.ac-drop-bundled-gettext.patch deleted file mode 100644 index 8f357378d..000000000 --- a/poky/meta/recipes-extended/mc/files/0001-Ticket-3629-configure.ac-drop-bundled-gettext.patch +++ /dev/null @@ -1,110 +0,0 @@ -From 0d677a014a87b968d79eea2353ac4e342b0fd4ca Mon Sep 17 00:00:00 2001 -From: Sergei Trofimovich -Date: Wed, 11 Sep 2019 22:58:18 +0100 -Subject: [PATCH] Ticket #3629: configure.ac: drop bundled gettext - -Bundled libintl did not support linking to internal static -libraries (libmc in our case): directly specified static -libraries are not pulled by libtool and are not usable for -dynamic libraries as PIC-related flags are not passed for -compilation. - -This renders bundled libintl library unusable. - -The change drops libintl bundling support and always relies -on external libintl (or falls back to disabled NLS). - -On a related note gettext-0.20 drops support for bundling -or libintl and this change will ease migration to newer version. - -The change is tested on x86_64-gentoo-linux-musl: mc builds -and links all tests successfully. A few tests fail for lack -of NLS support. - -Upstream-Status: Backport [https://github.com/MidnightCommander/mc/commit/f30e6ff283f4bc86177e4360de94dad794678395] -Signed-off-by: Sergei Trofimovich -Signed-off-by: Andrew Borodin -Signed-off-by: Alexander Kanavin ---- - Makefile.am | 2 +- - configure.ac | 5 +++-- - doc/doxygen.cfg | 2 +- - lib/Makefile.am | 2 +- - m4.include/mc-i18n.m4 | 5 ----- - 5 files changed, 6 insertions(+), 10 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index ac05a83..f86f6ed 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -1,7 +1,7 @@ - ## Process this file with automake to create Makefile.in. - AUTOMAKE_OPTIONS = 1.5 - --SUBDIRS = intl po lib src doc contrib misc -+SUBDIRS = po lib src doc contrib misc - - if HAVE_TESTS - SUBDIRS += tests -diff --git a/configure.ac b/configure.ac -index a1948f6..bbc9e71 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -272,7 +272,9 @@ dnl ############################################################################ - dnl Internationalization - dnl ############################################################################ - --AM_GNU_GETTEXT([no-libtool], [need-ngettext]) -+AC_CHECK_FUNCS([setlocale]) -+ -+AM_GNU_GETTEXT([external], [need-ngettext]) - AM_GNU_GETTEXT_VERSION([0.18.1]) - - mc_I18N -@@ -680,7 +682,6 @@ doc/hlp/pl/Makefile - doc/hlp/ru/Makefile - doc/hlp/sr/Makefile - --intl/Makefile - po/Makefile.in - ]) - -diff --git a/doc/doxygen.cfg b/doc/doxygen.cfg -index 07bc973..1118062 100644 ---- a/doc/doxygen.cfg -+++ b/doc/doxygen.cfg -@@ -91,7 +91,7 @@ FILE_PATTERNS = *.c \ - RECURSIVE = YES - EXCLUDE = - EXCLUDE_SYMLINKS = NO --EXCLUDE_PATTERNS = */intl/* */tests/* */.git/* -+EXCLUDE_PATTERNS = */tests/* */.git/* - EXCLUDE_SYMBOLS = - EXAMPLE_PATH = $(SRCDIR) - EXAMPLE_PATTERNS = -diff --git a/lib/Makefile.am b/lib/Makefile.am -index c448e2d..455f9dd 100644 ---- a/lib/Makefile.am -+++ b/lib/Makefile.am -@@ -74,4 +74,4 @@ else - libmc_la_LIBADD += $(GLIB_LIBS) - endif - --libmc_la_LIBADD += $(PCRE_LIBS) $(LIBICONV) $(LIBINTL) -+libmc_la_LIBADD += $(PCRE_LIBS) -diff --git a/m4.include/mc-i18n.m4 b/m4.include/mc-i18n.m4 -index dd10d00..ec08324 100644 ---- a/m4.include/mc-i18n.m4 -+++ b/m4.include/mc-i18n.m4 -@@ -8,11 +8,6 @@ dnl @license GPL - dnl @copyright Free Software Foundation, Inc. - - AC_DEFUN([mc_I18N],[ -- -- if test "x$USE_INCLUDED_LIBINTL" = xyes; then -- CPPFLAGS="$CPPFLAGS -I\$(top_builddir)/intl -I\$(top_srcdir)/intl" -- fi -- - dnl User visible support for charset conversion. - AC_ARG_ENABLE([charset], - AS_HELP_STRING([--enable-charset], [Support for charset selection and conversion @<:@yes@:>@])) diff --git a/poky/meta/recipes-extended/mc/files/0001-Ticket-4070-misc-Makefile.am-install-mc.lib-only-onc.patch b/poky/meta/recipes-extended/mc/files/0001-Ticket-4070-misc-Makefile.am-install-mc.lib-only-onc.patch new file mode 100644 index 000000000..824c12f8d --- /dev/null +++ b/poky/meta/recipes-extended/mc/files/0001-Ticket-4070-misc-Makefile.am-install-mc.lib-only-onc.patch @@ -0,0 +1,59 @@ +From 58dd59637ac5c6340ddfe96ad8b76883e4da20ef Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Tue, 3 Mar 2020 09:26:12 +0000 +Subject: [PATCH] Ticket #4070: misc/Makefile.am: install mc.lib only once. + +Before the change mc.lib was installed twice due to being +in two _DATA variables: + +dist_pkgdata_DATA = \ + mc.lib + +pkgdata_DATA = \ + $(dist_pkgdata_DATA) \ + $(PKGDATA_OUT) + +This causes occasional install failures when two parallel +`/usr/bin/install` calls race in installing the file: + +$ make -j20 DESTDIR=/var/tmp/portage/app-misc/mc-4.8.24/image install +... + /usr/lib/portage/python3.6/ebuild-helpers/xattr/install \ + -c -m 644 mc.lib '/var/tmp/portage/app-misc/mc-4.8.24/image/usr/share/mc' + /usr/lib/portage/python3.6/ebuild-helpers/xattr/install \ + -c -m 644 mc.lib mc.charsets '/var/tmp/portage/app-misc/mc-4.8.24/image/usr/share/mc' +... + /usr/bin/install: cannot create regular file + '/var/tmp/portage/app-misc/mc-4.8.24/image/usr/share/mc/mc.lib': File exists + +After the change mc.lib is present only in dist_pkgdata_DATA. + +Upstream-Status: Backport [https://github.com/MidnightCommander/mc/commit/afb09f7cd7024484845ade25e15b8b93d6cf2d2c] + +Signed-off-by: Sergei Trofimovich +Signed-off-by: Andrew Borodin +Signed-off-by: Alexander Kanavin +--- + misc/Makefile.am | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/misc/Makefile.am b/misc/Makefile.am +index 8ed1826..24f4a0e 100644 +--- a/misc/Makefile.am ++++ b/misc/Makefile.am +@@ -17,7 +17,6 @@ dist_pkgdata_DATA = \ + mc.lib + + pkgdata_DATA = \ +- $(dist_pkgdata_DATA) \ + $(PKGDATA_OUT) + + SCRIPTS_IN = \ +@@ -54,7 +53,6 @@ EXTRA_DIST = \ + $(LIBFILES_SCRIPT) \ + $(SCRIPTS_IN) \ + $(noinst_DATA) \ +- $(dist_pkgdata_DATA) \ + $(PKGDATA_IN) + + install-data-hook: diff --git a/poky/meta/recipes-extended/mc/mc_4.8.23.bb b/poky/meta/recipes-extended/mc/mc_4.8.23.bb deleted file mode 100644 index ead348b92..000000000 --- a/poky/meta/recipes-extended/mc/mc_4.8.23.bb +++ /dev/null @@ -1,56 +0,0 @@ -SUMMARY = "Midnight Commander is an ncurses based file manager" -HOMEPAGE = "http://www.midnight-commander.org/" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=270bbafe360e73f9840bd7981621f9c2" -SECTION = "console/utils" -DEPENDS = "ncurses glib-2.0 util-linux" -RDEPENDS_${PN} = "ncurses-terminfo-base" -RRECOMMENDS_${PN} = "ncurses-terminfo" - -SRC_URI = "http://www.midnight-commander.org/downloads/${BPN}-${PV}.tar.bz2 \ - file://0001-mc-replace-perl-w-with-use-warnings.patch \ - file://0001-Add-option-to-control-configure-args.patch \ - file://0001-Ticket-3629-configure.ac-drop-bundled-gettext.patch \ - file://nomandate.patch \ - " -SRC_URI[md5sum] = "152927ac29cf0e61d7d019f261bb7d89" -SRC_URI[sha256sum] = "238c4552545dcf3065359bd50753abbb150c1b22ec5a36eaa02c82808293267d" - -inherit autotools gettext pkgconfig - -# -# Both Samba (smb) and sftp require package delivered from meta-openembedded -# -PACKAGECONFIG ??= "" -PACKAGECONFIG[smb] = "--enable-vfs-smb,--disable-vfs-smb,samba," -PACKAGECONFIG[sftp] = "--enable-vfs-sftp,--disable-vfs-sftp,libssh2," - -EXTRA_OECONF = "--with-screen=ncurses --without-gpm-mouse --without-x --disable-configure-args" - -CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" -CACHED_CONFIGUREVARS += "ac_cv_path_PYTHON='/usr/bin/env python'" -CACHED_CONFIGUREVARS += "ac_cv_path_GREP='/usr/bin/env grep'" -CACHED_CONFIGUREVARS += "mc_cv_have_zipinfo=yes" - -do_install_append () { - sed -i -e '1s,#!.*perl,#!${bindir}/env perl,' ${D}${libexecdir}/mc/extfs.d/* - - rm ${D}${libexecdir}/mc/extfs.d/s3+ ${D}${libexecdir}/mc/extfs.d/uc1541 -} - -PACKAGES =+ "${BPN}-helpers-perl ${BPN}-helpers ${BPN}-fish" - -SUMMARY_${BPN}-helpers-perl = "Midnight Commander Perl-based helper scripts" -FILES_${BPN}-helpers-perl = "${libexecdir}/mc/extfs.d/a+ ${libexecdir}/mc/extfs.d/apt+ \ - ${libexecdir}/mc/extfs.d/deb ${libexecdir}/mc/extfs.d/deba \ - ${libexecdir}/mc/extfs.d/debd ${libexecdir}/mc/extfs.d/dpkg+ \ - ${libexecdir}/mc/extfs.d/mailfs ${libexecdir}/mc/extfs.d/patchfs \ - ${libexecdir}/mc/extfs.d/rpms+ ${libexecdir}/mc/extfs.d/ulib \ - ${libexecdir}/mc/extfs.d/uzip" -RDEPENDS_${BPN}-helpers-perl = "perl" - -SUMMARY_${BPN}-helpers = "Midnight Commander shell helper scripts" -FILES_${BPN}-helpers = "${libexecdir}/mc/extfs.d/* ${libexecdir}/mc/ext.d/*" - -SUMMARY_${BPN}-fish = "Midnight Commander Fish scripts" -FILES_${BPN}-fish = "${libexecdir}/mc/fish" diff --git a/poky/meta/recipes-extended/mc/mc_4.8.24.bb b/poky/meta/recipes-extended/mc/mc_4.8.24.bb new file mode 100644 index 000000000..034df2a42 --- /dev/null +++ b/poky/meta/recipes-extended/mc/mc_4.8.24.bb @@ -0,0 +1,55 @@ +SUMMARY = "Midnight Commander is an ncurses based file manager" +HOMEPAGE = "http://www.midnight-commander.org/" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=270bbafe360e73f9840bd7981621f9c2" +SECTION = "console/utils" +DEPENDS = "ncurses glib-2.0 util-linux" +RDEPENDS_${PN} = "ncurses-terminfo-base" +RRECOMMENDS_${PN} = "ncurses-terminfo" + +SRC_URI = "http://www.midnight-commander.org/downloads/${BPN}-${PV}.tar.bz2 \ + file://0001-mc-replace-perl-w-with-use-warnings.patch \ + file://nomandate.patch \ + file://0001-Ticket-4070-misc-Makefile.am-install-mc.lib-only-onc.patch \ + " +SRC_URI[md5sum] = "2621de1fa9058a9c41a4248becc969f9" +SRC_URI[sha256sum] = "cfcc4d0546d0c3a88645a8bf71612ed36647ea3264d973b1f28183a0c84bae34" + +inherit autotools gettext pkgconfig + +# +# Both Samba (smb) and sftp require package delivered from meta-openembedded +# +PACKAGECONFIG ??= "" +PACKAGECONFIG[smb] = "--enable-vfs-smb,--disable-vfs-smb,samba," +PACKAGECONFIG[sftp] = "--enable-vfs-sftp,--disable-vfs-sftp,libssh2," + +EXTRA_OECONF = "--with-screen=ncurses --without-gpm-mouse --without-x --disable-configure-args" + +CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" +CACHED_CONFIGUREVARS += "ac_cv_path_PYTHON='/usr/bin/env python'" +CACHED_CONFIGUREVARS += "ac_cv_path_GREP='/usr/bin/env grep'" +CACHED_CONFIGUREVARS += "mc_cv_have_zipinfo=yes" + +do_install_append () { + sed -i -e '1s,#!.*perl,#!${bindir}/env perl,' ${D}${libexecdir}/mc/extfs.d/* + + rm ${D}${libexecdir}/mc/extfs.d/s3+ ${D}${libexecdir}/mc/extfs.d/uc1541 +} + +PACKAGES =+ "${BPN}-helpers-perl ${BPN}-helpers ${BPN}-fish" + +SUMMARY_${BPN}-helpers-perl = "Midnight Commander Perl-based helper scripts" +FILES_${BPN}-helpers-perl = "${libexecdir}/mc/extfs.d/a+ ${libexecdir}/mc/extfs.d/apt+ \ + ${libexecdir}/mc/extfs.d/deb ${libexecdir}/mc/extfs.d/deba \ + ${libexecdir}/mc/extfs.d/debd ${libexecdir}/mc/extfs.d/dpkg+ \ + ${libexecdir}/mc/extfs.d/mailfs ${libexecdir}/mc/extfs.d/patchfs \ + ${libexecdir}/mc/extfs.d/rpms+ ${libexecdir}/mc/extfs.d/ulib \ + ${libexecdir}/mc/extfs.d/uzip" +RDEPENDS_${BPN}-helpers-perl = "perl" + +SUMMARY_${BPN}-helpers = "Midnight Commander shell helper scripts" +FILES_${BPN}-helpers = "${libexecdir}/mc/extfs.d/* ${libexecdir}/mc/ext.d/*" + +SUMMARY_${BPN}-fish = "Midnight Commander Fish scripts" +FILES_${BPN}-fish = "${libexecdir}/mc/fish" diff --git a/poky/meta/recipes-extended/timezone/timezone.inc b/poky/meta/recipes-extended/timezone/timezone.inc index 91a5cb332..32723f3de 100644 --- a/poky/meta/recipes-extended/timezone/timezone.inc +++ b/poky/meta/recipes-extended/timezone/timezone.inc @@ -6,7 +6,7 @@ SECTION = "base" LICENSE = "PD & BSD & BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=c679c9d6b02bc2757b3eaf8f53c43fba" -PV = "2019c" +PV = "2020a" SRC_URI =" http://www.iana.org/time-zones/repository/releases/tzcode${PV}.tar.gz;name=tzcode \ http://www.iana.org/time-zones/repository/releases/tzdata${PV}.tar.gz;name=tzdata \ @@ -14,7 +14,7 @@ SRC_URI =" http://www.iana.org/time-zones/repository/releases/tzcode${PV}.tar.gz UPSTREAM_CHECK_URI = "http://www.iana.org/time-zones" -SRC_URI[tzcode.md5sum] = "195a17454c5db05cab96595380650391" -SRC_URI[tzcode.sha256sum] = "f6ebd3668e02d5ed223d3b7b1947561bf2d2da2f4bd1db61efefd9e06c167ed4" -SRC_URI[tzdata.md5sum] = "f6987e6dfdb2eb83a1b5076a50b80894" -SRC_URI[tzdata.sha256sum] = "79c7806dab09072308da0e3d22c37d3b245015a591891ea147d3b133b60ffc7c" +SRC_URI[tzcode.md5sum] = "f87c3477e85a5c4b00df0def6c6a0055" +SRC_URI[tzcode.sha256sum] = "7d2af7120ee03df71fbca24031ccaf42404752e639196fe93c79a41b38a6d669" +SRC_URI[tzdata.md5sum] = "96a985bb8eeab535fb8aa2132296763a" +SRC_URI[tzdata.sha256sum] = "547161eca24d344e0b5f96aff6a76b454da295dc14ed4ca50c2355043fb899a2" diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.34.0.bb b/poky/meta/recipes-gnome/gcr/gcr_3.34.0.bb deleted file mode 100644 index 9853b3f41..000000000 --- a/poky/meta/recipes-gnome/gcr/gcr_3.34.0.bb +++ /dev/null @@ -1,35 +0,0 @@ -SUMMARY = "A library for bits of crypto UI and parsing etc" -DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \ -accessing key stores. It also provides the viewer for crypto files on the \ -GNOME desktop." -HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues" - -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" - -DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}" - -inherit gnomebase gtk-icon-cache gtk-doc features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg -# depends on gtk+3, but also x11 through gtk+-x11 -REQUIRED_DISTRO_FEATURES = "x11" - -SRC_URI[archive.md5sum] = "4af28919fb1dd36d93603e8230283b6f" -SRC_URI[archive.sha256sum] = "29df50974a90987af694c0fb8926a6b366e68cacd8abd813817cfe1eb5d54524" - -FILES_${PN} += " \ - ${datadir}/dbus-1 \ - ${datadir}/gcr-3 \ -" - -# http://errors.yoctoproject.org/Errors/Details/20229/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" - -# These files may be out of date or missing our fixes -# libgcrypt.m4 in particular is calling into libgcrypt-config -do_configure_prepend() { - rm -f ${S}/build/m4/* -} diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb new file mode 100644 index 000000000..4fe3b2fff --- /dev/null +++ b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb @@ -0,0 +1,31 @@ +SUMMARY = "A library for bits of crypto UI and parsing etc" +DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \ +accessing key stores. It also provides the viewer for crypto files on the \ +GNOME desktop." +HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" + +DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}" + +GNOMEBASEBUILDCLASS = "meson" +GTKDOC_MESON_OPTION = "gtk_doc" +inherit gnomebase gtk-icon-cache gtk-doc features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg +# depends on gtk+3, but also x11 through gtk+-x11 +REQUIRED_DISTRO_FEATURES = "x11" + +SRC_URI[archive.md5sum] = "adc65563b6b458507b9a578a8b68fb61" +SRC_URI[archive.sha256sum] = "aaf9bed017a2263c6145c89a1a84178f9f40f238426463e4ae486694ef5f6601" + +FILES_${PN} += " \ + ${datadir}/dbus-1 \ + ${datadir}/gcr-3 \ +" + +# http://errors.yoctoproject.org/Errors/Details/20229/ +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" +ARM_INSTRUCTION_SET_armv6 = "arm" diff --git a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb deleted file mode 100644 index 0306b04f4..000000000 --- a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "Library for sending desktop notifications to a notification daemon" -HOMEPAGE = "https://gitlab.gnome.org/GNOME/libnotify" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/libnotify/issues" -SECTION = "libs" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" - -DEPENDS = "dbus gtk+3 glib-2.0" - -inherit gnomebase gtk-doc features_check gobject-introspection -# depends on gtk+3 -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -SRC_URI[archive.md5sum] = "babb4b07b5f21bef42a386d3d7019599" -SRC_URI[archive.sha256sum] = "69209e0b663776a00c7b6c0e560302a8dbf66b2551d55616304f240bba66e18c" - -# there were times, we had two versions of libnotify (oe-core libnotify:0.6.x / -# meta-gnome libnotify3: 0.7.x) -PROVIDES += "libnotify3" -RPROVIDES_${PN} += "libnotify3" -RCONFLICTS_${PN} += "libnotify3" -RREPLACES_${PN} += "libnotify3" diff --git a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb new file mode 100644 index 000000000..29a28272e --- /dev/null +++ b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb @@ -0,0 +1,28 @@ +SUMMARY = "Library for sending desktop notifications to a notification daemon" +HOMEPAGE = "https://gitlab.gnome.org/GNOME/libnotify" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/libnotify/issues" +SECTION = "libs" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" + +DEPENDS = "dbus gtk+3 glib-2.0" + +GNOMEBASEBUILDCLASS = "meson" +GTKDOC_MESON_OPTION = "gtk_doc" +GIR_MESON_ENABLE_FLAG = "enabled" +GIR_MESON_DISABLE_FLAG = "disabled" +inherit gnomebase gtk-doc features_check gobject-introspection +# depends on gtk+3 +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +SRC_URI[archive.md5sum] = "ccd9c53364174cc8d13e18a1988faa76" +SRC_URI[archive.sha256sum] = "66c0517ed16df7af258e83208faaf5069727dfd66995c4bbc51c16954d674761" + +EXTRA_OEMESON = "-Dman=false" + +# there were times, we had two versions of libnotify (oe-core libnotify:0.6.x / +# meta-gnome libnotify3: 0.7.x) +PROVIDES += "libnotify3" +RPROVIDES_${PN} += "libnotify3" +RCONFLICTS_${PN} += "libnotify3" +RREPLACES_${PN} += "libnotify3" diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.1.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.1.bb deleted file mode 100644 index 72511af02..000000000 --- a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.1.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "libsecret is a library for storing and retrieving passwords and other secrets" -DESCRIPTION = "A GObject-based library for accessing the Secret Service API of \ -the freedesktop.org project, a cross-desktop effort to access passwords, \ -tokens and other types of secrets. libsecret provides a convenient wrapper \ -for these methods so consumers do not have to call the low-level DBus methods." -LICENSE = "LGPLv2.1" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/libsecret/issues" -LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6" - -inherit gnomebase gtk-doc vala gobject-introspection manpages - -DEPENDS += "glib-2.0 libgcrypt gettext-native" - -PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, libxslt-native xmlto-native" - -SRC_URI[archive.md5sum] = "d2dd660a8d502099317bc8af9f30302e" -SRC_URI[archive.sha256sum] = "57f73e94ec6263a17a077fb809cf8cf424637a897a7f15b4eec42ce4aef52447" - -# http://errors.yoctoproject.org/Errors/Details/20228/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" - -# vapigen.m4 bundled with the tarball does not yet have our cross-compilation fixes -do_configure_prepend() { - rm -f ${S}/build/m4/vapigen.m4 -} diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb new file mode 100644 index 000000000..d3a0c2ff5 --- /dev/null +++ b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb @@ -0,0 +1,30 @@ +SUMMARY = "libsecret is a library for storing and retrieving passwords and other secrets" +DESCRIPTION = "A GObject-based library for accessing the Secret Service API of \ +the freedesktop.org project, a cross-desktop effort to access passwords, \ +tokens and other types of secrets. libsecret provides a convenient wrapper \ +for these methods so consumers do not have to call the low-level DBus methods." +LICENSE = "LGPLv2.1" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/libsecret/issues" +LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6" + +GNOMEBASEBUILDCLASS = "meson" + +inherit gnomebase gtk-doc vala gobject-introspection manpages + +DEPENDS += "glib-2.0 libgcrypt gettext-native" + +SRC_URI[archive.md5sum] = "47c3fdfeb111a87b509ad271e4a6f496" +SRC_URI[archive.sha256sum] = "4fcb3c56f8ac4ab9c75b66901fb0104ec7f22aa9a012315a14c0d6dffa5290e4" + +GTKDOC_MESON_OPTION = 'gtk_doc' + +# gobject-introspection is mandatory and cannot be configured +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" +UNKNOWN_CONFIGURE_WHITELIST_append = " introspection" + +PACKAGECONFIG[manpages] = "-Dmanpage=true,-Dmanpage=false,libxslt-native xmlto-native" + +# http://errors.yoctoproject.org/Errors/Details/20228/ +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" +ARM_INSTRUCTION_SET_armv6 = "arm" diff --git a/poky/meta/recipes-graphics/clutter/clutter-1.0.inc b/poky/meta/recipes-graphics/clutter/clutter-1.0.inc index e0ac819e4..80472178b 100644 --- a/poky/meta/recipes-graphics/clutter/clutter-1.0.inc +++ b/poky/meta/recipes-graphics/clutter/clutter-1.0.inc @@ -11,7 +11,7 @@ REQUIRED_DISTRO_FEATURES ?= "opengl" DEPENDS = "pango glib-2.0 json-glib atk udev cogl-1.0" PACKAGE_BEFORE_PN += "${PN}-examples" -AUTOTOOLS_AUXDIR = "${S}/build" +AUTOTOOLS_AUXDIR = "${S}/build-aux" EDEPENDS_X11 = "virtual/libx11 libxi libxfixes" EDEPENDS_GLX = "virtual/libgl" diff --git a/poky/meta/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch b/poky/meta/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch index f5c18c582..fef82eaf9 100644 --- a/poky/meta/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch +++ b/poky/meta/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch @@ -1,4 +1,4 @@ -From 668e1d14af13249384ab324c7d79ec4147f07e48 Mon Sep 17 00:00:00 2001 +From d6ceb5a44b28e0e50ede22b84984d8516897de4b Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Mon, 27 Apr 2015 20:12:33 +0300 Subject: [PATCH] Run installed tests with tap output @@ -9,14 +9,15 @@ gnome-desktop-testing-runner properly interprets the results. Upstream-Status: Pending Signed-off-by: Tim Orling + --- - build/autotools/glib-tap.mk | 3 ++- + build-aux/autotools/glib-tap.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -diff --git a/build/autotools/glib-tap.mk b/build/autotools/glib-tap.mk -index 7c5f82b..844e17e 100644 ---- a/build/autotools/glib-tap.mk -+++ b/build/autotools/glib-tap.mk +diff --git a/build-aux/autotools/glib-tap.mk b/build-aux/autotools/glib-tap.mk +index a4f0dad..51cfa31 100644 +--- a/build-aux/autotools/glib-tap.mk ++++ b/build-aux/autotools/glib-tap.mk @@ -127,7 +127,8 @@ installed_test_meta_DATA = $(installed_testcases:=.test) %.test: %$(EXEEXT) Makefile $(AM_V_GEN) (echo '[Test]' > $@.tmp; \ @@ -27,6 +28,3 @@ index 7c5f82b..844e17e 100644 mv $@.tmp $@) CLEANFILES += $(installed_test_meta_DATA) --- -2.1.4 - diff --git a/poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.2.bb b/poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.2.bb deleted file mode 100644 index 48b050198..000000000 --- a/poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.2.bb +++ /dev/null @@ -1,10 +0,0 @@ -require clutter-1.0.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -SRC_URI[archive.md5sum] = "a03482cbacf735eca8c996f210a21ee5" -SRC_URI[archive.sha256sum] = "e7233314983055e9018f94f56882e29e7fc34d8d35de030789fdcd9b2d0e2e56" -SRC_URI += "file://install-examples.patch \ - file://run-installed-tests-with-tap-output.patch \ - file://0001-Remove-clutter.types-as-it-is-build-configuration-sp.patch \ - file://run-ptest" diff --git a/poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.4.bb b/poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.4.bb new file mode 100644 index 000000000..ee549fbdd --- /dev/null +++ b/poky/meta/recipes-graphics/clutter/clutter-1.0_1.26.4.bb @@ -0,0 +1,10 @@ +require clutter-1.0.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI[archive.md5sum] = "624dd776a5159de0267587b1df6b97b2" +SRC_URI[archive.sha256sum] = "8b48fac159843f556d0a6be3dbfc6b083fc6d9c58a20a49a6b4919ab4263c4e6" +SRC_URI += "file://install-examples.patch \ + file://run-installed-tests-with-tap-output.patch \ + file://0001-Remove-clutter.types-as-it-is-build-configuration-sp.patch \ + file://run-ptest" diff --git a/poky/meta/recipes-graphics/kmscube/kmscube/detect-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch b/poky/meta/recipes-graphics/kmscube/kmscube/detect-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch deleted file mode 100644 index a7a08f14e..000000000 --- a/poky/meta/recipes-graphics/kmscube/kmscube/detect-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch +++ /dev/null @@ -1,117 +0,0 @@ -From a91c588b5a4122506e7fe949c37d530621bdd997 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20D=C3=ADaz?= -Date: Tue, 11 Jul 2017 14:50:37 -0500 -Subject: [PATCH] Detect gst_bo_map/_unmap and use it (or avoid it) -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Those functions are not available on libMali, thus breaking -builds and creating havoc. - -Removing the specific parts of the code that deal with -gbm_bo_map() and gbm_bo_unmap() renders the kmscube utility -a little less useful, but still valuable. - -Signed-off-by: Daniel Díaz -Cc: Rob Clark -Reviewed-by: Eric Engestrom - -Upstream-Status: Submitted [https://lists.freedesktop.org/archives/mesa-dev/2017-July/163020.html] -Signed-off-by: Zoltan Kuscsik ---- - Makefile.am | 5 ++++- - configure.ac | 3 +++ - gst-decoder.c | 7 ++++++- - kmscube.c | 4 ++++ - 4 files changed, 17 insertions(+), 2 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index ba064e4..3a0a50b 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -43,7 +43,6 @@ kmscube_SOURCES = \ - common.c \ - common.h \ - cube-smooth.c \ -- cube-tex.c \ - drm-atomic.c \ - drm-common.c \ - drm-common.h \ -@@ -68,3 +67,7 @@ texturator_SOURCES = \ - drm-common.c \ - drm-legacy.c \ - texturator.c -+ -+if ENABLE_GBM_MAP -+kmscube_SOURCES += cube-tex.c -+endif -diff --git a/configure.ac b/configure.ac -index 6be6541..3d20121 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -49,5 +49,8 @@ if test "x$HAVE_GST" = "xyes"; then - fi - AM_CONDITIONAL(ENABLE_GST, [test "x$HAVE_GST" = "xyes"]) - -+AC_CHECK_LIB([gbm], [gbm_bo_map], [HAVE_GBM_BO_MAP=yes], []) -+AM_CONDITIONAL(ENABLE_GBM_MAP, [test "x$HAVE_GBM_BO_MAP" = "xyes"]) -+ - AC_CONFIG_FILES([Makefile]) - AC_OUTPUT -diff --git a/gst-decoder.c b/gst-decoder.c -index 5431014..0aa7a55 100644 ---- a/gst-decoder.c -+++ b/gst-decoder.c -@@ -332,6 +332,7 @@ set_last_frame(struct decoder *dec, EGLImage frame, GstSample *samp) - dec->last_samp = samp; - } - -+#if HAVE_GBM_BO_MAP - // TODO this could probably be a helper re-used by cube-tex: - static int - buf_to_fd(const struct gbm *gbm, int size, void *ptr) -@@ -357,6 +358,7 @@ buf_to_fd(const struct gbm *gbm, int size, void *ptr) - - return fd; - } -+#endif - - static EGLImage - buffer_to_image(struct decoder *dec, GstBuffer *buf) -@@ -410,12 +412,15 @@ buffer_to_image(struct decoder *dec, GstBuffer *buf) - - if (is_dmabuf_mem) { - dmabuf_fd = dup(gst_dmabuf_memory_get_fd(mem)); -- } else { -+ } -+#if HAVE_GBM_BO_MAP -+ else { - GstMapInfo map_info; - gst_buffer_map(buf, &map_info, GST_MAP_READ); - dmabuf_fd = buf_to_fd(dec->gbm, map_info.size, map_info.data); - gst_buffer_unmap(buf, &map_info); - } -+#endif - - if (dmabuf_fd < 0) { - GST_ERROR("could not obtain DMABUF FD"); -diff --git a/kmscube.c b/kmscube.c -index 81803be..e93da67 100644 ---- a/kmscube.c -+++ b/kmscube.c -@@ -166,7 +166,11 @@ int main(int argc, char *argv[]) - else if (mode == VIDEO) - egl = init_cube_video(gbm, video, samples); - else -+#if HAVE_GBM_BO_MAP - egl = init_cube_tex(gbm, mode, samples); -+#else -+ printf("gbm_bo_map() support missing\n"); -+#endif - - if (!egl) { - printf("failed to initialize EGL\n"); --- -2.22.0 - diff --git a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb index a1a295f66..c72fbc61a 100644 --- a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb +++ b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb @@ -6,9 +6,8 @@ DEPENDS = "virtual/libgles2 virtual/egl libdrm" LIC_FILES_CHKSUM = "file://kmscube.c;beginline=1;endline=23;md5=8b309d4ee67b7315ff7381270dd631fb" -SRCREV = "76bb57d539cb43d267e561024c34e031bf351e04" -SRC_URI = "git://gitlab.freedesktop.org/mesa/kmscube;branch=master;protocol=https \ - file://detect-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch" +SRCREV = "4660a7dca6512b6e658759d00cff7d4ad2a2059d" +SRC_URI = "git://gitlab.freedesktop.org/mesa/kmscube;branch=master;protocol=https" UPSTREAM_CHECK_COMMITS = "1" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb index 92cea83bc..071be345d 100644 --- a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb +++ b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb @@ -23,15 +23,19 @@ SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e4862940 UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases" -DEPENDS = "libdrm virtual/mesa" +DEPENDS = "libdrm" inherit meson pkgconfig features_check -REQUIRED_DISTRO_FEATURES = "opengl" +PACKAGECONFIG ??= " \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \ +" -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" -PACKAGECONFIG[x11] = "-Dwith_x11=yes, -Dwith_x11=no,virtual/libx11 libxext libxfixes" -PACKAGECONFIG[wayland] = "-Dwith_wayland=yes, -Dwith_wayland=no,wayland-native wayland" +PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa" + +PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland" PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb/xcbincludedir.patch b/poky/meta/recipes-graphics/xorg-lib/libxcb/xcbincludedir.patch deleted file mode 100644 index 46297c33c..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxcb/xcbincludedir.patch +++ /dev/null @@ -1,28 +0,0 @@ -As pkg-config --variable doesn't respect the sysroot, add the pkg-config sysroot -to the beginning of variables that are used later on the host. - -Upstream-Status: Pending -Signed-off-by: Ross Burton - -diff --git a/configure.ac b/configure.ac -index 94da4f7..d29cd6a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -64,7 +64,7 @@ AC_SUBST(NEEDED) - - # Find the xcb-proto protocol descriptions - AC_MSG_CHECKING(XCBPROTO_XCBINCLUDEDIR) --XCBPROTO_XCBINCLUDEDIR=`$PKG_CONFIG --variable=xcbincludedir xcb-proto` -+XCBPROTO_XCBINCLUDEDIR=$PKG_CONFIG_SYSROOT_DIR/`$PKG_CONFIG --variable=xcbincludedir xcb-proto` - AC_MSG_RESULT($XCBPROTO_XCBINCLUDEDIR) - AC_SUBST(XCBPROTO_XCBINCLUDEDIR) - -@@ -74,7 +74,7 @@ AC_SUBST(XCBPROTO_VERSION) - - # Find the xcbgen Python package - AC_MSG_CHECKING(XCBPROTO_XCBPYTHONDIR) --XCBPROTO_XCBPYTHONDIR=`$PKG_CONFIG --variable=pythondir xcb-proto` -+XCBPROTO_XCBPYTHONDIR=$PKG_CONFIG_SYSROOT_DIR/`$PKG_CONFIG --variable=pythondir xcb-proto` - AC_MSG_RESULT($XCBPROTO_XCBPYTHONDIR) - AC_SUBST(XCBPROTO_XCBPYTHONDIR) - diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb deleted file mode 100644 index 9befc51b5..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb +++ /dev/null @@ -1,37 +0,0 @@ -SUMMARY = "XCB: The X protocol C binding library" -DESCRIPTION = "The X protocol C-language Binding (XCB) is a replacement \ -for Xlib featuring a small footprint, latency hiding, direct access to \ -the protocol, improved threading support, and extensibility." -HOMEPAGE = "http://xcb.freedesktop.org" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" -SECTION = "x11/libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7" - -SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.bz2 \ - file://xcbincludedir.patch \ - file://disable-check.patch \ - " - -SRC_URI[md5sum] = "f33cdfc67346f7217a9326c0d8679975" -SRC_URI[sha256sum] = "a89fb7af7a11f43d2ce84a844a4b38df688c092bf4b67683aef179cdf2a647c4" - -BBCLASSEXTEND = "native nativesdk" - -DEPENDS = "xcb-proto xorgproto libxau libpthread-stubs libxdmcp" - -PACKAGES_DYNAMIC = "^libxcb-.*" - -FILES_${PN} = "${libdir}/libxcb.so.*" - -inherit autotools pkgconfig features_check - -# The libxau and others requires x11 in DISTRO_FEATURES -REQUIRED_DISTRO_FEATURES = "x11" - -export PYTHON = "python3" - -python populate_packages_prepend () { - do_split_packages(d, '${libdir}', r'^libxcb-(.*)\.so\..*$', 'libxcb-%s', 'XCB library module for %s', allow_links=True) -} diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb new file mode 100644 index 000000000..f27c5daa6 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb @@ -0,0 +1,35 @@ +SUMMARY = "XCB: The X protocol C binding library" +DESCRIPTION = "The X protocol C-language Binding (XCB) is a replacement \ +for Xlib featuring a small footprint, latency hiding, direct access to \ +the protocol, improved threading support, and extensibility." +HOMEPAGE = "http://xcb.freedesktop.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" +SECTION = "x11/libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7" + +SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.xz \ + file://disable-check.patch \ + " + +SRC_URI[sha256sum] = "a55ed6db98d43469801262d81dc2572ed124edc3db31059d4e9916eb9f844c34" + +BBCLASSEXTEND = "native nativesdk" + +DEPENDS = "xcb-proto xorgproto libxau libpthread-stubs libxdmcp" + +PACKAGES_DYNAMIC = "^libxcb-.*" + +FILES_${PN} = "${libdir}/libxcb.so.*" + +inherit autotools pkgconfig features_check + +# The libxau and others requires x11 in DISTRO_FEATURES +REQUIRED_DISTRO_FEATURES = "x11" + +export PYTHON = "python3" + +python populate_packages_prepend () { + do_split_packages(d, '${libdir}', r'^libxcb-(.*)\.so\..*$', 'libxcb-%s', 'XCB library module for %s', allow_links=True) +} diff --git a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config/0001-fix-python3-support.patch b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config/0001-fix-python3-support.patch new file mode 100644 index 000000000..f723f7033 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config/0001-fix-python3-support.patch @@ -0,0 +1,34 @@ +From 168ac446cdd9a1b59d6b708360a9556515ba56b9 Mon Sep 17 00:00:00 2001 +From: MilhouseVH +Date: Sun, 16 Feb 2020 09:41:43 +0000 +Subject: [PATCH] fix python3 support + +https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/issues/197 + +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin +--- + rules/compat/map-variants.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/rules/compat/map-variants.py b/rules/compat/map-variants.py +index ebbfec9..979ba43 100755 +--- a/rules/compat/map-variants.py ++++ b/rules/compat/map-variants.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/env python3 + + import argparse + import re +@@ -12,8 +12,8 @@ class Layout(object): + assert variant is None + # parse a layout(variant) string + match = re.match(r'([^(]+)\(([^)]+)\)', layout) +- self.layout = match[1] +- self.variant = match[2] ++ self.layout = match.groups()[0] ++ self.variant = match.groups()[1] + + def __str__(self): + if self.variant: diff --git a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb deleted file mode 100644 index 7a3d694bd..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.28.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Keyboard configuration database for X Window" - -DESCRIPTION = "The non-arch keyboard configuration database for X \ -Window. The goal is to provide the consistent, well-structured, \ -frequently released open source of X keyboard configuration data for X \ -Window System implementations. The project is targeted to XKB-based \ -systems." - -HOMEPAGE = "http://freedesktop.org/wiki/Software/XKeyboardConfig" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xkeyboard-config" - -LICENSE = "MIT & MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=0e7f21ca7db975c63467d2e7624a12f9" - -SRC_URI = "${XORG_MIRROR}/individual/data/xkeyboard-config/${BPN}-${PV}.tar.bz2" -SRC_URI[md5sum] = "5a968ab77846ff85a04242410b2a61de" -SRC_URI[sha256sum] = "69adb25b0fc64e4075f8ec0eab8d869892419f474f91fb69db1713de2062bdce" - -SECTION = "x11/libs" -DEPENDS = "util-macros libxslt-native" - -EXTRA_OECONF = "--with-xkb-rules-symlink=xorg --disable-runtime-deps" - -FILES_${PN} += "${datadir}/X11/xkb" - -inherit autotools pkgconfig gettext - -do_install_append () { - install -d ${D}${datadir}/X11/xkb/compiled - cd ${D}${datadir}/X11/xkb/rules && ln -sf base xorg -} diff --git a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.29.bb b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.29.bb new file mode 100644 index 000000000..598b58478 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.29.bb @@ -0,0 +1,33 @@ +SUMMARY = "Keyboard configuration database for X Window" + +DESCRIPTION = "The non-arch keyboard configuration database for X \ +Window. The goal is to provide the consistent, well-structured, \ +frequently released open source of X keyboard configuration data for X \ +Window System implementations. The project is targeted to XKB-based \ +systems." + +HOMEPAGE = "http://freedesktop.org/wiki/Software/XKeyboardConfig" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xkeyboard-config" + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=0e7f21ca7db975c63467d2e7624a12f9" + +SRC_URI = "${XORG_MIRROR}/individual/data/xkeyboard-config/${BPN}-${PV}.tar.bz2 \ + file://0001-fix-python3-support.patch \ + " +SRC_URI[md5sum] = "b5980bdc6c7d79f6dcccba8c76bb6c5d" +SRC_URI[sha256sum] = "1d4175278bf06000683656763a8b1d3282c61a314b6db41260c8efe92d621802" + +SECTION = "x11/libs" +DEPENDS = "util-macros libxslt-native" + +EXTRA_OECONF = "--with-xkb-rules-symlink=xorg --disable-runtime-deps" + +FILES_${PN} += "${datadir}/X11/xkb" + +inherit autotools pkgconfig gettext + +do_install_append () { + install -d ${D}${datadir}/X11/xkb/compiled + cd ${D}${datadir}/X11/xkb/rules && ln -sf base xorg +} diff --git a/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.13.bb b/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.13.bb deleted file mode 100644 index 746709092..000000000 --- a/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.13.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "XCB: The X protocol C binding headers" -DESCRIPTION = "Function prototypes for the X protocol C-language Binding \ -(XCB). XCB is a replacement for Xlib featuring a small footprint, \ -latency hiding, direct access to the protocol, improved threading \ -support, and extensibility." -HOMEPAGE = "http://xcb.freedesktop.org" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" - -SECTION = "x11/libs" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7 \ - file://src/dri2.xml;beginline=2;endline=28;md5=f8763b13ff432e8597e0d610cf598e65" - -SRC_URI = "http://xcb.freedesktop.org/dist/${BP}.tar.bz2" -SRC_URI[md5sum] = "abe9aa4886138150bbc04ae4f29b90e3" -SRC_URI[sha256sum] = "7b98721e669be80284e9bbfeab02d2d0d54cd11172b72271e47a2fe875e2bde1" - -inherit autotools pkgconfig python3native - -PACKAGES += "python-xcbgen" - -FILES_${PN} = "" -FILES_${PN}-dev += "${datadir}/xcb/*.xml ${datadir}/xcb/*.xsd" -FILES_python-xcbgen = "${PYTHON_SITEPACKAGES_DIR}" - -RDEPENDS_${PN}-dev = "" -RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.bb b/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.bb new file mode 100644 index 000000000..6de30098d --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.bb @@ -0,0 +1,28 @@ +SUMMARY = "XCB: The X protocol C binding headers" +DESCRIPTION = "Function prototypes for the X protocol C-language Binding \ +(XCB). XCB is a replacement for Xlib featuring a small footprint, \ +latency hiding, direct access to the protocol, improved threading \ +support, and extensibility." +HOMEPAGE = "http://xcb.freedesktop.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" + +SECTION = "x11/libs" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7 \ + file://src/dri2.xml;beginline=2;endline=28;md5=f8763b13ff432e8597e0d610cf598e65" + +SRC_URI = "http://xcb.freedesktop.org/dist/${BP}.tar.xz" +SRC_URI[sha256sum] = "186a3ceb26f9b4a015f5a44dcc814c93033a5fc39684f36f1ecc79834416a605" + +inherit autotools pkgconfig python3native + +PACKAGES += "python-xcbgen" + +FILES_${PN} = "" +FILES_${PN}-dev += "${datadir}/xcb/*.xml ${datadir}/xcb/*.xsd" +FILES_python-xcbgen = "${PYTHON_SITEPACKAGES_DIR}" + +RDEPENDS_${PN}-dev = "" +RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb b/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb index 06a9108fa..8a61b2276 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.6-rc+" +LINUX_VERSION ?= "5.7-rc+" LINUX_VERSION_EXTENSION ?= "-yoctodev-${LINUX_KERNEL_TYPE}" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb index 9e74ec17a..d550bf537 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb @@ -11,13 +11,13 @@ python () { raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "79037ae58e6b0dfd0c63d4a0e131f1bd5efe7e53" -SRCREV_meta ?= "bee554e595e49c963900d1c78c01ab2d041382e7" +SRCREV_machine ?= "c7609ad17612bd59c1cadb53faf23be8fd7250ef" +SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" 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.4;destsuffix=${KMETA}" -LINUX_VERSION ?= "5.4.27" +LINUX_VERSION ?= "5.4.34" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb index ba5e668d7..078a15cec 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb @@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig" require recipes-kernel/linux/linux-yocto.inc -LINUX_VERSION ?= "5.4.27" +LINUX_VERSION ?= "5.4.34" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" @@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine_qemuarm ?= "5c2d35eeb4be0e8bae4cf5ee0733e41ff1262ff3" -SRCREV_machine ?= "03142acba06e8b33888410a518358a626dceb720" -SRCREV_meta ?= "bee554e595e49c963900d1c78c01ab2d041382e7" +SRCREV_machine_qemuarm ?= "ba0b1e26460cb764005af5758334fc1777760dfd" +SRCREV_machine ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" +SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb index 25e933d68..e22509469 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb @@ -12,16 +12,16 @@ KBRANCH_qemux86 ?= "v5.4/standard/base" KBRANCH_qemux86-64 ?= "v5.4/standard/base" KBRANCH_qemumips64 ?= "v5.4/standard/mti-malta64" -SRCREV_machine_qemuarm ?= "ab849248b45403c7d6f1fb8e8f57840cc2880618" -SRCREV_machine_qemuarm64 ?= "03142acba06e8b33888410a518358a626dceb720" -SRCREV_machine_qemumips ?= "967a1708cbbfe1b524dc28f04fa5e0d79a270bf5" -SRCREV_machine_qemuppc ?= "03142acba06e8b33888410a518358a626dceb720" -SRCREV_machine_qemuriscv64 ?= "03142acba06e8b33888410a518358a626dceb720" -SRCREV_machine_qemux86 ?= "03142acba06e8b33888410a518358a626dceb720" -SRCREV_machine_qemux86-64 ?= "03142acba06e8b33888410a518358a626dceb720" -SRCREV_machine_qemumips64 ?= "d3e850da830241c424d557a6a072527e09e784ab" -SRCREV_machine ?= "03142acba06e8b33888410a518358a626dceb720" -SRCREV_meta ?= "bee554e595e49c963900d1c78c01ab2d041382e7" +SRCREV_machine_qemuarm ?= "440e41f2f471ba2bb5e3c801ffc140523bdd59b1" +SRCREV_machine_qemuarm64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" +SRCREV_machine_qemumips ?= "941c329c8810e946840bd2f4ab983a94651e563f" +SRCREV_machine_qemuppc ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" +SRCREV_machine_qemuriscv64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" +SRCREV_machine_qemux86 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" +SRCREV_machine_qemux86-64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" +SRCREV_machine_qemumips64 ?= "b73834a11da2d4327cc3cb9f33fa3540f24d56aa" +SRCREV_machine ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" +SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" # remap qemuarm to qemuarma15 for the 5.4 kernel # KMACHINE_qemuarm ?= "qemuarma15" @@ -30,7 +30,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" -LINUX_VERSION ?= "5.4.27" +LINUX_VERSION ?= "5.4.34" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" diff --git a/poky/meta/recipes-rt/rt-tests/rt-tests.inc b/poky/meta/recipes-rt/rt-tests/rt-tests.inc index 3ac39d90c..6e3afafce 100644 --- a/poky/meta/recipes-rt/rt-tests/rt-tests.inc +++ b/poky/meta/recipes-rt/rt-tests/rt-tests.inc @@ -3,8 +3,8 @@ SRCREV = "dff174f994f547a5785d32454865f140daacb0f5" PE = "1" SRC_URI = "git://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git" -# 1.2 to 1.5 seem to be development versions -UPSTREAM_CHECK_GITTAGREGEX = "v(?P(?!1\.[2-6])(\d+(\.\d+)+))" +# 1.2 and up seem to be development versions +UPSTREAM_CHECK_GITTAGREGEX = "v(?P(?!1\.[2-8])(\d+(\.\d+)+))" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-sato/webkit/libwpe_1.4.0.1.bb b/poky/meta/recipes-sato/webkit/libwpe_1.4.0.1.bb deleted file mode 100644 index 12499ff28..000000000 --- a/poky/meta/recipes-sato/webkit/libwpe_1.4.0.1.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "General-purpose library specifically developed for the WPE-flavored port of WebKit." -HOMEPAGE = "https://github.com/WebPlatformForEmbedded/libwpe" -BUGTRACKER = "https://github.com/WebPlatformForEmbedded/libwpe/issues" - -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=371a616eb4903c6cb79e9893a5f615cc" -DEPENDS = "virtual/egl libxkbcommon" - -# Workaround build issue with RPi userland EGL libraries. -CFLAGS_append_rpi = " ${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', '-D_GNU_SOURCE', d)}" - -inherit cmake features_check - -REQUIRED_DISTRO_FEATURES = "opengl" - -SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz" -SRC_URI[sha256sum] = "09849dfb34877354f34f318e138971cf22e677b2179e1f0a8ea00ab0b7bd8e9b" diff --git a/poky/meta/recipes-sato/webkit/libwpe_1.6.0.bb b/poky/meta/recipes-sato/webkit/libwpe_1.6.0.bb new file mode 100644 index 000000000..09c74089c --- /dev/null +++ b/poky/meta/recipes-sato/webkit/libwpe_1.6.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "General-purpose library specifically developed for the WPE-flavored port of WebKit." +HOMEPAGE = "https://github.com/WebPlatformForEmbedded/libwpe" +BUGTRACKER = "https://github.com/WebPlatformForEmbedded/libwpe/issues" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=371a616eb4903c6cb79e9893a5f615cc" +DEPENDS = "virtual/egl libxkbcommon" + +# Workaround build issue with RPi userland EGL libraries. +CFLAGS_append_rpi = " ${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', '-D_GNU_SOURCE', d)}" + +inherit cmake features_check + +REQUIRED_DISTRO_FEATURES = "opengl" + +SRC_URI[md5sum] = "6e8a2c279dcc3617db5ec7ac4c03d628" +SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz" +SRC_URI[sha256sum] = "3587c6b8a807f4bb76b268ba74ca82c6b395b90235db41ad8252224456193c90" diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch index 0c145c7eb..6dcb52956 100644 --- a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch +++ b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch @@ -1,4 +1,4 @@ -From c4d4d9f1aa74addefdad40294cf16d9e0b3dd6ec Mon Sep 17 00:00:00 2001 +From 828a500d5be62ba6fc94bd4fac3fe4bf1b1d4f6d Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 6 Oct 2017 17:00:08 +0300 Subject: [PATCH] Fix build with musl @@ -8,14 +8,14 @@ Signed-off-by: Alexander Kanavin --- Source/JavaScriptCore/runtime/MachineContext.h | 10 +++++----- - Source/WTF/wtf/Platform.h | 2 +- + Source/WTF/wtf/PlatformHave.h | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Source/JavaScriptCore/runtime/MachineContext.h b/Source/JavaScriptCore/runtime/MachineContext.h -index 823964c2..00841146 100644 +index c5052527..95ef98b5 100644 --- a/Source/JavaScriptCore/runtime/MachineContext.h +++ b/Source/JavaScriptCore/runtime/MachineContext.h -@@ -188,7 +188,7 @@ static inline void*& stackPointerImpl(mcontext_t& machineContext) +@@ -196,7 +196,7 @@ static inline void*& stackPointerImpl(mcontext_t& machineContext) #error Unknown Architecture #endif @@ -24,7 +24,7 @@ index 823964c2..00841146 100644 #if CPU(X86) return reinterpret_cast((uintptr_t&) machineContext.gregs[REG_ESP]); -@@ -335,7 +335,7 @@ static inline void*& framePointerImpl(mcontext_t& machineContext) +@@ -347,7 +347,7 @@ static inline void*& framePointerImpl(mcontext_t& machineContext) #error Unknown Architecture #endif @@ -33,7 +33,7 @@ index 823964c2..00841146 100644 // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) -@@ -482,7 +482,7 @@ static inline void*& instructionPointerImpl(mcontext_t& machineContext) +@@ -498,7 +498,7 @@ static inline void*& instructionPointerImpl(mcontext_t& machineContext) #error Unknown Architecture #endif @@ -42,7 +42,7 @@ index 823964c2..00841146 100644 // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) -@@ -639,7 +639,7 @@ inline void*& argumentPointer<1>(mcontext_t& machineContext) +@@ -656,7 +656,7 @@ inline void*& argumentPointer<1>(mcontext_t& machineContext) #error Unknown Architecture #endif @@ -51,7 +51,7 @@ index 823964c2..00841146 100644 // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) -@@ -756,7 +756,7 @@ inline void*& llintInstructionPointer(mcontext_t& machineContext) +@@ -773,7 +773,7 @@ inline void*& llintInstructionPointer(mcontext_t& machineContext) #error Unknown Architecture #endif @@ -60,13 +60,13 @@ index 823964c2..00841146 100644 // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) -diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h -index 34f7cb14..32ad9150 100644 ---- a/Source/WTF/wtf/Platform.h -+++ b/Source/WTF/wtf/Platform.h -@@ -714,7 +714,7 @@ - - #endif /* OS(DARWIN) */ +diff --git a/Source/WTF/wtf/PlatformHave.h b/Source/WTF/wtf/PlatformHave.h +index daca20fe..53eae6ba 100644 +--- a/Source/WTF/wtf/PlatformHave.h ++++ b/Source/WTF/wtf/PlatformHave.h +@@ -222,7 +222,7 @@ + #define HAVE_HOSTED_CORE_ANIMATION 1 + #endif -#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || defined(__GLIBC__) || defined(__BIONIC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) +#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || defined(__linux__) || defined(__BIONIC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch index e7c668c04..866e9d9d0 100644 --- a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch +++ b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch @@ -1,4 +1,4 @@ -From 4b5e02212a31b82fc9b3becad90542274816fc29 Mon Sep 17 00:00:00 2001 +From 1c7e7a385387d7febf633bbb6d2b99ece523e719 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Thu, 11 Aug 2016 17:13:51 +0300 Subject: [PATCH] Tweak gtkdoc settings so that gtkdoc generation works under @@ -17,15 +17,15 @@ Signed-off-by: Alexander Kanavin 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Source/cmake/GtkDoc.cmake b/Source/cmake/GtkDoc.cmake -index b0fb31ca..6cb6313d 100644 +index 18e86448..102c873a 100644 --- a/Source/cmake/GtkDoc.cmake +++ b/Source/cmake/GtkDoc.cmake @@ -4,7 +4,7 @@ macro(ADD_GTKDOC_GENERATOR _stamp_name _extra_args) add_custom_command( OUTPUT "${CMAKE_BINARY_DIR}/${_stamp_name}" DEPENDS ${DocumentationDependencies} -- COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" "LDFLAGS=${CMAKE_EXE_LINKER_FLAGS}" ${CMAKE_SOURCE_DIR}/Tools/gtkdoc/generate-gtkdoc ${_extra_args} -+ COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" "LD=${CMAKE_C_COMPILER}" "LDFLAGS=${CMAKE_C_LINK_FLAGS}" "RUN=${CMAKE_BINARY_DIR}/gtkdoc-qemuwrapper" ${CMAKE_SOURCE_DIR}/Tools/gtkdoc/generate-gtkdoc ${_extra_args} +- COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" "LDFLAGS=${CMAKE_EXE_LINKER_FLAGS}" ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Tools/gtkdoc/generate-gtkdoc ${_extra_args} ++ COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" "LD=${CMAKE_C_COMPILER}" "LDFLAGS=${CMAKE_C_LINK_FLAGS}" "RUN=${CMAKE_BINARY_DIR}/gtkdoc-qemuwrapper" ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Tools/gtkdoc/generate-gtkdoc ${_extra_args} COMMAND touch ${_stamp_name} WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" VERBATIM diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/x32_support.patch b/poky/meta/recipes-sato/webkit/webkitgtk/x32_support.patch deleted file mode 100644 index 85d281e7f..000000000 --- a/poky/meta/recipes-sato/webkit/webkitgtk/x32_support.patch +++ /dev/null @@ -1,30 +0,0 @@ -Signed-off-by: Christopher Larson -Upstream-Status: Pending - -From 897563a0397266d8ceb058f172e16b06419b2593 Mon Sep 17 00:00:00 2001 -From: Daniel Schepler -Date: Mon, 26 Mar 2018 17:48:34 +0300 -Subject: [PATCH] Fix FTBFS in x32 - -=================================================================== - ---- - Source/WTF/wtf/Platform.h | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h -index 850e298..551c047 100644 ---- a/Source/WTF/wtf/Platform.h -+++ b/Source/WTF/wtf/Platform.h -@@ -132,7 +132,11 @@ - /* CPU(X86_64) - AMD64 / Intel64 / x86_64 64-bit */ - #if defined(__x86_64__) \ - || defined(_M_X64) -+#ifdef __ILP32__ -+#define WTF_CPU_X86_64_32 1 -+#else - #define WTF_CPU_X86_64 1 -+#endif - #define WTF_CPU_X86_SSE2 1 - #define WTF_CPU_KNOWN 1 - #endif diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.26.4.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.26.4.bb deleted file mode 100644 index e4197d1a0..000000000 --- a/poky/meta/recipes-sato/webkit/webkitgtk_2.26.4.bb +++ /dev/null @@ -1,133 +0,0 @@ -SUMMARY = "WebKit web rendering engine for the GTK+ platform" -HOMEPAGE = "https://www.webkitgtk.org/" -BUGTRACKER = "https://bugs.webkit.org/" - -LICENSE = "BSD & LGPLv2+" -LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \ - file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \ - file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \ - file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \ - " - -SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ - file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \ - file://0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch \ - file://0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch \ - file://0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch \ - file://0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch \ - file://0001-Enable-THREADS_PREFER_PTHREAD_FLAG.patch \ - file://x32_support.patch \ - file://cross-compile.patch \ - file://0001-Fix-build-with-musl.patch \ - file://include_array.patch \ - " -SRC_URI[md5sum] = "60f881729f3b71244b7f6e58790073e0" -SRC_URI[sha256sum] = "4386900713dfadf9741177210b32623cab22562a79ffd0d446b66569934b113f" - -inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gtk-doc - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" -REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'opengl', '', d)}" - -CVE_PRODUCT = "webkitgtk webkitgtk\+" - -DEPENDS = "zlib libsoup-2.4 curl libxml2 cairo libxslt libgcrypt \ - gtk+3 gstreamer1.0 gstreamer1.0-plugins-base flex-native gperf-native sqlite3 \ - pango icu bison-native gawk intltool-native libwebp \ - atk udev harfbuzz jpeg libpng librsvg libtheora libvorbis \ - ruby-native libnotify gstreamer1.0-plugins-bad \ - gettext-native glib-2.0 glib-2.0-native libtasn1 \ - " - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '' ,d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2' ,d)} \ - enchant \ - libsecret \ - " - -PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland libwpe wpebackend-fdo wayland-native" -PACKAGECONFIG[x11] = "-DENABLE_X11_TARGET=ON,-DENABLE_X11_TARGET=OFF,virtual/libx11 libxcomposite libxdamage libxrender libxt" -PACKAGECONFIG[geoclue] = "-DENABLE_GEOLOCATION=ON,-DENABLE_GEOLOCATION=OFF,geoclue" -PACKAGECONFIG[enchant] = "-DENABLE_SPELLCHECK=ON,-DENABLE_SPELLCHECK=OFF,enchant2" -PACKAGECONFIG[gles2] = "-DENABLE_GLES2=ON,-DENABLE_GLES2=OFF,virtual/libgles2" -PACKAGECONFIG[webgl] = "-DENABLE_WEBGL=ON,-DENABLE_WEBGL=OFF,virtual/libgl" -PACKAGECONFIG[opengl] = "-DENABLE_OPENGL=ON,-DENABLE_OPENGL=OFF,virtual/libgl" -PACKAGECONFIG[libsecret] = "-DUSE_LIBSECRET=ON,-DUSE_LIBSECRET=OFF,libsecret" -PACKAGECONFIG[libhyphen] = "-DUSE_LIBHYPHEN=ON,-DUSE_LIBHYPHEN=OFF,libhyphen" -PACKAGECONFIG[woff2] = "-DUSE_WOFF2=ON,-DUSE_WOFF2=OFF,woff2" -PACKAGECONFIG[openjpeg] = "-DUSE_OPENJPEG=ON,-DUSE_OPENJPEG=OFF,openjpeg" - -# webkitgtk is full of /usr/bin/env python, particular for generating docs -do_configure[postfuncs] += "setup_python_link" -setup_python_link() { - if [ ! -e ${STAGING_BINDIR_NATIVE}/python ]; then - ln -s `which python3` ${STAGING_BINDIR_NATIVE}/python - fi -} - -EXTRA_OECMAKE = " \ - -DPORT=GTK \ - -DCMAKE_BUILD_TYPE=Release \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ - ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '-DENABLE_GTKDOC=ON', '-DENABLE_GTKDOC=OFF', d)} \ - -DENABLE_MINIBROWSER=ON \ - -DPYTHON_EXECUTABLE=`which python3` \ - -DENABLE_BUBBLEWRAP_SANDBOX=OFF \ - " - -# Javascript JIT is not supported on ARC -EXTRA_OECMAKE_append_arc = " -DENABLE_JIT=OFF " -# By default 25-bit "medium" calls are used on ARC -# which is not enough for binaries larger than 32 MiB -CFLAGS_append_arc = " -mlong-calls" -CXXFLAGS_append_arc = " -mlong-calls" - -# Javascript JIT is not supported on powerpc -EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF " -EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF " - -# ARM JIT code does not build on ARMv4/5/6 anymore -EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF " -EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF " -EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF " - -EXTRA_OECMAKE_append_mipsarch = " -DUSE_LD_GOLD=OFF " -EXTRA_OECMAKE_append_powerpc = " -DUSE_LD_GOLD=OFF " - -# JIT not supported on MIPS either -EXTRA_OECMAKE_append_mipsarch = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON " - -# JIT not supported on X32 -# An attempt was made to upstream JIT support for x32 in -# https://bugs.webkit.org/show_bug.cgi?id=100450, but this was closed as -# unresolved due to limited X32 adoption. -EXTRA_OECMAKE_append_x86-x32 = " -DENABLE_JIT=OFF " - -SECURITY_CFLAGS_remove_aarch64 = "-fpie" -SECURITY_CFLAGS_append_aarch64 = " -fPIE" - -FILES_${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so" - -RRECOMMENDS_${PN} += "ca-certificates shared-mime-info" - -# http://errors.yoctoproject.org/Errors/Details/20370/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" - -# https://bugzilla.yoctoproject.org/show_bug.cgi?id=9474 -# https://bugs.webkit.org/show_bug.cgi?id=159880 -# JSC JIT can build on ARMv7 with -marm, but doesn't work on runtime. -# Upstream only tests regularly the JSC JIT on ARMv7 with Thumb2 (-mthumb). -ARM_INSTRUCTION_SET_armv7a = "thumb" -ARM_INSTRUCTION_SET_armv7r = "thumb" -ARM_INSTRUCTION_SET_armv7ve = "thumb" - -# introspection inside qemu-arm hangs forever on musl/arm builds -# therefore disable GI_DATA -GI_DATA_ENABLED_libc-musl_armv7a = "False" -GI_DATA_ENABLED_libc-musl_armv7ve = "False" - -# Can't be built with ccache -CCACHE_DISABLE = "1" diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb new file mode 100644 index 000000000..288c715cc --- /dev/null +++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb @@ -0,0 +1,132 @@ +SUMMARY = "WebKit web rendering engine for the GTK+ platform" +HOMEPAGE = "https://www.webkitgtk.org/" +BUGTRACKER = "https://bugs.webkit.org/" + +LICENSE = "BSD & LGPLv2+" +LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \ + file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \ + file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \ + file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \ + " + +SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ + file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \ + file://0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch \ + file://0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch \ + file://0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch \ + file://0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch \ + file://0001-Enable-THREADS_PREFER_PTHREAD_FLAG.patch \ + file://cross-compile.patch \ + file://0001-Fix-build-with-musl.patch \ + file://include_array.patch \ + " +SRC_URI[md5sum] = "ec0ef870ca37e3a5ebbead2f268a28ec" +SRC_URI[sha256sum] = "b9d23525cfd8d22c37b5d964a9fe9a8ce7583042a2f8d3922e71e6bbc68c30bd" + +inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gtk-doc + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" +REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'opengl', '', d)}" + +CVE_PRODUCT = "webkitgtk webkitgtk\+" + +DEPENDS = "zlib libsoup-2.4 curl libxml2 cairo libxslt libgcrypt \ + gtk+3 gstreamer1.0 gstreamer1.0-plugins-base flex-native gperf-native sqlite3 \ + pango icu bison-native gawk intltool-native libwebp \ + atk udev harfbuzz jpeg libpng librsvg libtheora libvorbis \ + ruby-native libnotify gstreamer1.0-plugins-bad \ + gettext-native glib-2.0 glib-2.0-native libtasn1 \ + " + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '' ,d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2' ,d)} \ + enchant \ + libsecret \ + " + +PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland libwpe wpebackend-fdo wayland-native" +PACKAGECONFIG[x11] = "-DENABLE_X11_TARGET=ON,-DENABLE_X11_TARGET=OFF,virtual/libx11 libxcomposite libxdamage libxrender libxt" +PACKAGECONFIG[geoclue] = "-DENABLE_GEOLOCATION=ON,-DENABLE_GEOLOCATION=OFF,geoclue" +PACKAGECONFIG[enchant] = "-DENABLE_SPELLCHECK=ON,-DENABLE_SPELLCHECK=OFF,enchant2" +PACKAGECONFIG[gles2] = "-DENABLE_GLES2=ON,-DENABLE_GLES2=OFF,virtual/libgles2" +PACKAGECONFIG[webgl] = "-DENABLE_WEBGL=ON,-DENABLE_WEBGL=OFF,virtual/libgl" +PACKAGECONFIG[opengl] = "-DENABLE_OPENGL=ON,-DENABLE_OPENGL=OFF,virtual/libgl" +PACKAGECONFIG[libsecret] = "-DUSE_LIBSECRET=ON,-DUSE_LIBSECRET=OFF,libsecret" +PACKAGECONFIG[libhyphen] = "-DUSE_LIBHYPHEN=ON,-DUSE_LIBHYPHEN=OFF,libhyphen" +PACKAGECONFIG[woff2] = "-DUSE_WOFF2=ON,-DUSE_WOFF2=OFF,woff2" +PACKAGECONFIG[openjpeg] = "-DUSE_OPENJPEG=ON,-DUSE_OPENJPEG=OFF,openjpeg" + +# webkitgtk is full of /usr/bin/env python, particular for generating docs +do_configure[postfuncs] += "setup_python_link" +setup_python_link() { + if [ ! -e ${STAGING_BINDIR_NATIVE}/python ]; then + ln -s `which python3` ${STAGING_BINDIR_NATIVE}/python + fi +} + +EXTRA_OECMAKE = " \ + -DPORT=GTK \ + -DCMAKE_BUILD_TYPE=Release \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ + ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '-DENABLE_GTKDOC=ON', '-DENABLE_GTKDOC=OFF', d)} \ + -DENABLE_MINIBROWSER=ON \ + -DPYTHON_EXECUTABLE=`which python3` \ + -DENABLE_BUBBLEWRAP_SANDBOX=OFF \ + " + +# Javascript JIT is not supported on ARC +EXTRA_OECMAKE_append_arc = " -DENABLE_JIT=OFF " +# By default 25-bit "medium" calls are used on ARC +# which is not enough for binaries larger than 32 MiB +CFLAGS_append_arc = " -mlong-calls" +CXXFLAGS_append_arc = " -mlong-calls" + +# Javascript JIT is not supported on powerpc +EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF " +EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF " + +# ARM JIT code does not build on ARMv4/5/6 anymore +EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF " +EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF " +EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF " + +EXTRA_OECMAKE_append_mipsarch = " -DUSE_LD_GOLD=OFF " +EXTRA_OECMAKE_append_powerpc = " -DUSE_LD_GOLD=OFF " + +# JIT not supported on MIPS either +EXTRA_OECMAKE_append_mipsarch = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON " + +# JIT not supported on X32 +# An attempt was made to upstream JIT support for x32 in +# https://bugs.webkit.org/show_bug.cgi?id=100450, but this was closed as +# unresolved due to limited X32 adoption. +EXTRA_OECMAKE_append_x86-x32 = " -DENABLE_JIT=OFF " + +SECURITY_CFLAGS_remove_aarch64 = "-fpie" +SECURITY_CFLAGS_append_aarch64 = " -fPIE" + +FILES_${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so" + +RRECOMMENDS_${PN} += "ca-certificates shared-mime-info" + +# http://errors.yoctoproject.org/Errors/Details/20370/ +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" +ARM_INSTRUCTION_SET_armv6 = "arm" + +# https://bugzilla.yoctoproject.org/show_bug.cgi?id=9474 +# https://bugs.webkit.org/show_bug.cgi?id=159880 +# JSC JIT can build on ARMv7 with -marm, but doesn't work on runtime. +# Upstream only tests regularly the JSC JIT on ARMv7 with Thumb2 (-mthumb). +ARM_INSTRUCTION_SET_armv7a = "thumb" +ARM_INSTRUCTION_SET_armv7r = "thumb" +ARM_INSTRUCTION_SET_armv7ve = "thumb" + +# introspection inside qemu-arm hangs forever on musl/arm builds +# therefore disable GI_DATA +GI_DATA_ENABLED_libc-musl_armv7a = "False" +GI_DATA_ENABLED_libc-musl_armv7ve = "False" + +# Can't be built with ccache +CCACHE_DISABLE = "1" diff --git a/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.4.1.bb b/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.4.1.bb deleted file mode 100644 index cd2f7fabd..000000000 --- a/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.4.1.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "WPE's backend based on a freedesktop.org stack." -HOMEPAGE = "https://github.com/Igalia/WPEBackend-fdo" -BUGTRACKER = "https://github.com/Igalia/WPEBackend-fdo/issues" - -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=1f62cef2e3645e3e74eb05fd389d7a66" -DEPENDS = "glib-2.0 libxkbcommon wayland virtual/egl libwpe" - -DEPENDS_append_class-target = " wayland-native" - -inherit cmake features_check - -REQUIRED_DISTRO_FEATURES = "opengl" - -SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz" -SRC_URI[sha256sum] = "6249a0b7cbfa662206a8d2fa24e2c574e75c681ad0e93468091f1dc68ddb299d" - diff --git a/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.6.0.bb b/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.6.0.bb new file mode 100644 index 000000000..3b1dbf1e0 --- /dev/null +++ b/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.6.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "WPE's backend based on a freedesktop.org stack." +HOMEPAGE = "https://github.com/Igalia/WPEBackend-fdo" +BUGTRACKER = "https://github.com/Igalia/WPEBackend-fdo/issues" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=1f62cef2e3645e3e74eb05fd389d7a66" +DEPENDS = "glib-2.0 libxkbcommon wayland virtual/egl libwpe" + +DEPENDS_append_class-target = " wayland-native" + +inherit cmake features_check + +REQUIRED_DISTRO_FEATURES = "opengl" + +SRC_URI[md5sum] = "456afeed22f6749f7b2a97c11660835d" +SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz" +SRC_URI[sha256sum] = "7f5bd7b9d8f97b1655f4dcd39fad92719d0fb3985b251da5802df13aaa09f567" + diff --git a/poky/meta/recipes-support/atk/at-spi2-core/0001-Fix-source-reproducibility.patch b/poky/meta/recipes-support/atk/at-spi2-core/0001-Fix-source-reproducibility.patch deleted file mode 100644 index 7631969cd..000000000 --- a/poky/meta/recipes-support/atk/at-spi2-core/0001-Fix-source-reproducibility.patch +++ /dev/null @@ -1,32 +0,0 @@ -From b7fa0aa00b07e03e338dd02af564431bf2f2b185 Mon Sep 17 00:00:00 2001 -From: Joshua Watt -Date: Wed, 20 Nov 2019 15:24:02 -0600 -Subject: [PATCH] Fix source reproducibility - -The generated enum type files can be included in source packages meant -for debugging, and thus need to be reproducible. Replace the absolute -include of the header with the basename. This is sufficient because the -target include files are always in the include path anyway. - -Upstream-Status: Accepted [https://gitlab.gnome.org/GNOME/at-spi2-core/merge_requests/25] -Signed-off-by: Joshua Watt ---- - atspi/atspi-enum-types.c.template | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/atspi/atspi-enum-types.c.template b/atspi/atspi-enum-types.c.template -index 385d0ee..92e4937 100644 ---- a/atspi/atspi-enum-types.c.template -+++ b/atspi/atspi-enum-types.c.template -@@ -5,7 +5,7 @@ - - /*** BEGIN file-production ***/ - /* enumerations from "@basename@" */ --#include "@filename@" -+#include "@basename@" - - /*** END file-production ***/ - --- -2.23.0 - diff --git a/poky/meta/recipes-support/atk/at-spi2-core_2.34.0.bb b/poky/meta/recipes-support/atk/at-spi2-core_2.34.0.bb deleted file mode 100644 index 84e05e77f..000000000 --- a/poky/meta/recipes-support/atk/at-spi2-core_2.34.0.bb +++ /dev/null @@ -1,37 +0,0 @@ -SUMMARY = "Assistive Technology Service Provider Interface (dbus core)" -HOMEPAGE = "https://wiki.linuxfoundation.org/accessibility/d-bus" -LICENSE = "LGPL-2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" - -SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ - file://0001-Fix-source-reproducibility.patch" - -SRC_URI[md5sum] = "53c21565507105fb68031cd9c21a559b" -SRC_URI[sha256sum] = "d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6" - -X11DEPENDS = "virtual/libx11 libxi libxtst" - -DEPENDS = "dbus glib-2.0" -DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d)}" - -inherit meson gtk-doc gettext systemd pkgconfig upstream-version-is-even gobject-introspection - -EXTRA_OEMESON = " -Dsystemd_user_dir=${systemd_user_unitdir} \ - -Ddbus_daemon=${bindir}/dbus-daemon \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '-Dx11=yes', '-Dx11=no', d)} \ -" - -GTKDOC_MESON_OPTION = "docs" - -GIR_MESON_OPTION = 'introspection' -GIR_MESON_ENABLE_FLAG = 'yes' -GIR_MESON_DISABLE_FLAG = 'no' - -FILES_${PN} += "${datadir}/dbus-1/services/*.service \ - ${datadir}/dbus-1/accessibility-services/*.service \ - ${datadir}/defaults/at-spi2 \ - ${systemd_user_unitdir}/at-spi-dbus-bus.service \ - " -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/atk/at-spi2-core_2.36.0.bb b/poky/meta/recipes-support/atk/at-spi2-core_2.36.0.bb new file mode 100644 index 000000000..c5d01c929 --- /dev/null +++ b/poky/meta/recipes-support/atk/at-spi2-core_2.36.0.bb @@ -0,0 +1,36 @@ +SUMMARY = "Assistive Technology Service Provider Interface (dbus core)" +HOMEPAGE = "https://wiki.linuxfoundation.org/accessibility/d-bus" +LICENSE = "LGPL-2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz" + +SRC_URI[md5sum] = "f101d111b06293d15738afc904c1d931" +SRC_URI[sha256sum] = "88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a" + +X11DEPENDS = "virtual/libx11 libxi libxtst" + +DEPENDS = "dbus glib-2.0" +DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d)}" + +inherit meson gtk-doc gettext systemd pkgconfig upstream-version-is-even gobject-introspection + +EXTRA_OEMESON = " -Dsystemd_user_dir=${systemd_user_unitdir} \ + -Ddbus_daemon=${bindir}/dbus-daemon \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '-Dx11=yes', '-Dx11=no', d)} \ +" + +GTKDOC_MESON_OPTION = "docs" + +GIR_MESON_OPTION = 'introspection' +GIR_MESON_ENABLE_FLAG = 'yes' +GIR_MESON_DISABLE_FLAG = 'no' + +FILES_${PN} += "${datadir}/dbus-1/services/*.service \ + ${datadir}/dbus-1/accessibility-services/*.service \ + ${datadir}/defaults/at-spi2 \ + ${systemd_user_unitdir}/at-spi-dbus-bus.service \ + " +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/atk/atk_2.34.1.bb b/poky/meta/recipes-support/atk/atk_2.34.1.bb deleted file mode 100644 index 277397c69..000000000 --- a/poky/meta/recipes-support/atk/atk_2.34.1.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "Accessibility toolkit for GNOME" -HOMEPAGE = "http://live.gnome.org/GAP/" -BUGTRACKER = "https://bugzilla.gnome.org/" -SECTION = "x11/libs" - -LICENSE = "GPLv2+ & LGPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ - file://atk/atkutil.c;endline=18;md5=6fd31cd2fdc9b30f619ca8d819bc12d3 \ - file://atk/atk.h;endline=18;md5=fcd7710187e0eae485e356c30d1b0c3b" - -# Need gettext-native as Meson can't turn off i18n -DEPENDS = "gettext-native glib-2.0" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gtk-doc gettext upstream-version-is-even gobject-introspection - -SRC_URI[archive.md5sum] = "f60bbaf8bdd08b93d98736b54b2fc8e9" -SRC_URI[archive.sha256sum] = "d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb" - -BBCLASSEXTEND = "native nativesdk" - diff --git a/poky/meta/recipes-support/atk/atk_2.36.0.bb b/poky/meta/recipes-support/atk/atk_2.36.0.bb new file mode 100644 index 000000000..0786eeebe --- /dev/null +++ b/poky/meta/recipes-support/atk/atk_2.36.0.bb @@ -0,0 +1,21 @@ +SUMMARY = "Accessibility toolkit for GNOME" +HOMEPAGE = "http://live.gnome.org/GAP/" +BUGTRACKER = "https://bugzilla.gnome.org/" +SECTION = "x11/libs" + +LICENSE = "GPLv2+ & LGPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ + file://atk/atkutil.c;endline=18;md5=6fd31cd2fdc9b30f619ca8d819bc12d3 \ + file://atk/atk.h;endline=18;md5=fcd7710187e0eae485e356c30d1b0c3b" + +# Need gettext-native as Meson can't turn off i18n +DEPENDS = "gettext-native glib-2.0" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase gtk-doc gettext upstream-version-is-even gobject-introspection + +SRC_URI[archive.md5sum] = "01aa5ec5138f5f8c9b3a4e3196ed2900" +SRC_URI[archive.sha256sum] = "fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788" + +BBCLASSEXTEND = "native nativesdk" + diff --git a/poky/meta/recipes-support/curl/curl_7.69.1.bb b/poky/meta/recipes-support/curl/curl_7.69.1.bb deleted file mode 100644 index e854e8d4b..000000000 --- a/poky/meta/recipes-support/curl/curl_7.69.1.bb +++ /dev/null @@ -1,80 +0,0 @@ -SUMMARY = "Command line tool and library for client-side URL transfers" -HOMEPAGE = "http://curl.haxx.se/" -BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker" -SECTION = "console/network" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=2e9fb35867314fe31c6a4977ef7dd531" - -SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ - file://0001-replace-krb5-config-with-pkg-config.patch \ -" - -SRC_URI[md5sum] = "ec5fc263f898a3dfef08e805f1ecca42" -SRC_URI[sha256sum] = "2ff5e5bd507adf6aa88ff4bbafd4c7af464867ffb688be93b9930717a56c4de8" - -CVE_PRODUCT = "curl libcurl" -inherit autotools pkgconfig binconfig multilib_header - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} gnutls libidn proxy threaded-resolver verbose zlib" -PACKAGECONFIG_class-native = "ipv6 proxy ssl threaded-resolver verbose zlib" -PACKAGECONFIG_class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib" - -# 'ares' and 'threaded-resolver' are mutually exclusive -PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares,,,threaded-resolver" -PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli" -PACKAGECONFIG[builtinmanual] = "--enable-manual,--disable-manual" -PACKAGECONFIG[dict] = "--enable-dict,--disable-dict," -PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" -PACKAGECONFIG[gopher] = "--enable-gopher,--disable-gopher," -PACKAGECONFIG[imap] = "--enable-imap,--disable-imap," -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," -PACKAGECONFIG[krb5] = "--with-gssapi,--without-gssapi,krb5" -PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap," -PACKAGECONFIG[ldaps] = "--enable-ldaps,--disable-ldaps," -PACKAGECONFIG[libidn] = "--with-libidn2,--without-libidn2,libidn2" -PACKAGECONFIG[libssh2] = "--with-libssh2,--without-libssh2,libssh2" -PACKAGECONFIG[mbedtls] = "--with-mbedtls=${STAGING_DIR_TARGET},--without-mbedtls,mbedtls" -PACKAGECONFIG[nghttp2] = "--with-nghttp2,--without-nghttp2,nghttp2" -PACKAGECONFIG[pop3] = "--enable-pop3,--disable-pop3," -PACKAGECONFIG[proxy] = "--enable-proxy,--disable-proxy," -PACKAGECONFIG[rtmpdump] = "--with-librtmp,--without-librtmp,rtmpdump" -PACKAGECONFIG[rtsp] = "--enable-rtsp,--disable-rtsp," -PACKAGECONFIG[smb] = "--enable-smb,--disable-smb," -PACKAGECONFIG[smtp] = "--enable-smtp,--disable-smtp," -PACKAGECONFIG[ssl] = "--with-ssl --with-random=/dev/urandom,--without-ssl,openssl" -PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss" -PACKAGECONFIG[telnet] = "--enable-telnet,--disable-telnet," -PACKAGECONFIG[tftp] = "--enable-tftp,--disable-tftp," -PACKAGECONFIG[threaded-resolver] = "--enable-threaded-resolver,--disable-threaded-resolver,,,,ares" -PACKAGECONFIG[verbose] = "--enable-verbose,--disable-verbose" -PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_LIBDIR}/../,--without-zlib,zlib" - -EXTRA_OECONF = " \ - --disable-libcurl-option \ - --disable-ntlm-wb \ - --enable-crypto-auth \ - --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \ - --without-libmetalink \ - --without-libpsl \ -" - -do_install_append_class-target() { - # cleanup buildpaths from curl-config - sed -i \ - -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ - -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \ - -e 's|${DEBUG_PREFIX_MAP}||g' \ - ${D}${bindir}/curl-config -} - -PACKAGES =+ "lib${BPN}" - -FILES_lib${BPN} = "${libdir}/lib*.so.*" -RRECOMMENDS_lib${BPN} += "ca-certificates" - -FILES_${PN} += "${datadir}/zsh" - -inherit multilib_script -MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/curl/curl_7.70.0.bb b/poky/meta/recipes-support/curl/curl_7.70.0.bb new file mode 100644 index 000000000..baf72f8e7 --- /dev/null +++ b/poky/meta/recipes-support/curl/curl_7.70.0.bb @@ -0,0 +1,81 @@ +SUMMARY = "Command line tool and library for client-side URL transfers" +HOMEPAGE = "http://curl.haxx.se/" +BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker" +SECTION = "console/network" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2e9fb35867314fe31c6a4977ef7dd531" + +SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ + file://0001-replace-krb5-config-with-pkg-config.patch \ +" + +SRC_URI[md5sum] = "db69aa37476dfdf9abaa2fb01b8bbf1a" +SRC_URI[sha256sum] = "a50bfe62ad67a24f8b12dd7fd655ac43a0f0299f86ec45b11354f25fbb5829d0" + +CVE_PRODUCT = "curl libcurl" +inherit autotools pkgconfig binconfig multilib_header + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} gnutls libidn proxy threaded-resolver verbose zlib" +PACKAGECONFIG_class-native = "ipv6 proxy ssl threaded-resolver verbose zlib" +PACKAGECONFIG_class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib" + +# 'ares' and 'threaded-resolver' are mutually exclusive +PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares,,,threaded-resolver" +PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli" +PACKAGECONFIG[builtinmanual] = "--enable-manual,--disable-manual" +PACKAGECONFIG[dict] = "--enable-dict,--disable-dict," +PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" +PACKAGECONFIG[gopher] = "--enable-gopher,--disable-gopher," +PACKAGECONFIG[imap] = "--enable-imap,--disable-imap," +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," +PACKAGECONFIG[krb5] = "--with-gssapi,--without-gssapi,krb5" +PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap," +PACKAGECONFIG[ldaps] = "--enable-ldaps,--disable-ldaps," +PACKAGECONFIG[libidn] = "--with-libidn2,--without-libidn2,libidn2" +PACKAGECONFIG[libssh2] = "--with-libssh2,--without-libssh2,libssh2" +PACKAGECONFIG[mbedtls] = "--with-mbedtls=${STAGING_DIR_TARGET},--without-mbedtls,mbedtls" +PACKAGECONFIG[mqtt] = "--enable-mqtt,--disable-mqtt," +PACKAGECONFIG[nghttp2] = "--with-nghttp2,--without-nghttp2,nghttp2" +PACKAGECONFIG[pop3] = "--enable-pop3,--disable-pop3," +PACKAGECONFIG[proxy] = "--enable-proxy,--disable-proxy," +PACKAGECONFIG[rtmpdump] = "--with-librtmp,--without-librtmp,rtmpdump" +PACKAGECONFIG[rtsp] = "--enable-rtsp,--disable-rtsp," +PACKAGECONFIG[smb] = "--enable-smb,--disable-smb," +PACKAGECONFIG[smtp] = "--enable-smtp,--disable-smtp," +PACKAGECONFIG[ssl] = "--with-ssl --with-random=/dev/urandom,--without-ssl,openssl" +PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss" +PACKAGECONFIG[telnet] = "--enable-telnet,--disable-telnet," +PACKAGECONFIG[tftp] = "--enable-tftp,--disable-tftp," +PACKAGECONFIG[threaded-resolver] = "--enable-threaded-resolver,--disable-threaded-resolver,,,,ares" +PACKAGECONFIG[verbose] = "--enable-verbose,--disable-verbose" +PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_LIBDIR}/../,--without-zlib,zlib" + +EXTRA_OECONF = " \ + --disable-libcurl-option \ + --disable-ntlm-wb \ + --enable-crypto-auth \ + --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \ + --without-libmetalink \ + --without-libpsl \ +" + +do_install_append_class-target() { + # cleanup buildpaths from curl-config + sed -i \ + -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ + -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \ + -e 's|${DEBUG_PREFIX_MAP}||g' \ + ${D}${bindir}/curl-config +} + +PACKAGES =+ "lib${BPN}" + +FILES_lib${BPN} = "${libdir}/lib*.so.*" +RRECOMMENDS_lib${BPN} += "ca-certificates" + +FILES_${PN} += "${datadir}/zsh" + +inherit multilib_script +MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_136.bb b/poky/meta/recipes-support/diffoscope/diffoscope_136.bb deleted file mode 100644 index 3e3e1dfc0..000000000 --- a/poky/meta/recipes-support/diffoscope/diffoscope_136.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "in-depth comparison of files, archives, and directories" -HOMEPAGE = "https://diffoscope.org/" -LICENSE = "GPL-3.0+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -PYPI_PACKAGE = "diffoscope" - -inherit pypi setuptools3 - -SRC_URI[md5sum] = "c84d8d308a40176ba2f5dc4abdbf6f73" -SRC_URI[sha256sum] = "0d6486d6eb6e0445ba21fee2e8bdd3a366ce786bfac98e00e5a95038b7815f15" - -RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic" - -# Dependencies don't build for musl -COMPATIBLE_HOST_libc-musl = 'null' - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_143.bb b/poky/meta/recipes-support/diffoscope/diffoscope_143.bb new file mode 100644 index 000000000..4ba3832d1 --- /dev/null +++ b/poky/meta/recipes-support/diffoscope/diffoscope_143.bb @@ -0,0 +1,18 @@ +SUMMARY = "in-depth comparison of files, archives, and directories" +HOMEPAGE = "https://diffoscope.org/" +LICENSE = "GPL-3.0+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +PYPI_PACKAGE = "diffoscope" + +inherit pypi setuptools3 + +SRC_URI[md5sum] = "a86cf8467a5dec99832d5c082928f937" +SRC_URI[sha256sum] = "a1fb4dd97af92bb8ce275d1caf465971726919e28efe5f043bd3ea9afb50574a" + +RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic" + +# Dependencies don't build for musl +COMPATIBLE_HOST_libc-musl = 'null' + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch b/poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch new file mode 100644 index 000000000..6697b27dc --- /dev/null +++ b/poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch @@ -0,0 +1,128 @@ +From b7d08bc04a4296982fcef8b6b8a354a9e4e7afca Mon Sep 17 00:00:00 2001 +From: Frank Tang +Date: Sat, 1 Feb 2020 02:39:04 +0000 +Subject: [PATCH] ICU-20958 Prevent SEGV_MAPERR in append + +See #971 + +Upstream-Status: Accepted +CVE: CVE-2020-10531 + +Reference to upstream patch: +https://github.com/unicode-org/icu/commit/b7d08bc04a4296982fcef8b6b8a354a9e4e7afca + +--- + common/unistr.cpp | 6 ++- + test/intltest/ustrtest.cpp | 62 +++++++++++++++++++++++++++++++ + test/intltest/ustrtest.h | 1 + + 3 files changed, 68 insertions(+), 1 deletion(-) + +diff --git a/common/unistr.cpp b/common/unistr.cpp +index 901bb33..6ea0915 100644 +--- a/common/unistr.cpp ++++ b/common/unistr.cpp +@@ -1563,7 +1563,11 @@ UnicodeString::doAppend(const UChar *srcChars, int32_t srcStart, int32_t srcLeng + } + + int32_t oldLength = length(); +- int32_t newLength = oldLength + srcLength; ++ int32_t newLength; ++ if (uprv_add32_overflow(oldLength, srcLength, &newLength)) { ++ setToBogus(); ++ return *this; ++ } + + // Check for append onto ourself + const UChar* oldArray = getArrayStart(); +diff --git a/test/intltest/ustrtest.cpp b/test/intltest/ustrtest.cpp +index b6515ea..ad38bdf 100644 +--- a/test/intltest/ustrtest.cpp ++++ b/test/intltest/ustrtest.cpp +@@ -67,6 +67,7 @@ void UnicodeStringTest::runIndexedTest( int32_t index, UBool exec, const char* & + TESTCASE_AUTO(TestWCharPointers); + TESTCASE_AUTO(TestNullPointers); + TESTCASE_AUTO(TestUnicodeStringInsertAppendToSelf); ++ TESTCASE_AUTO(TestLargeAppend); + TESTCASE_AUTO_END; + } + +@@ -2310,3 +2311,64 @@ void UnicodeStringTest::TestUnicodeStringInsertAppendToSelf() { + str.insert(2, sub); + assertEquals("", u"abbcdcde", str); + } ++ ++void UnicodeStringTest::TestLargeAppend() { ++ if(quick) return; ++ ++ IcuTestErrorCode status(*this, "TestLargeAppend"); ++ // Make a large UnicodeString ++ int32_t len = 0xAFFFFFF; ++ UnicodeString str; ++ char16_t *buf = str.getBuffer(len); ++ // A fast way to set buffer to valid Unicode. ++ // 4E4E is a valid unicode character ++ uprv_memset(buf, 0x4e, len * 2); ++ str.releaseBuffer(len); ++ UnicodeString dest; ++ // Append it 16 times ++ // 0xAFFFFFF times 16 is 0xA4FFFFF1, ++ // which is greater than INT32_MAX, which is 0x7FFFFFFF. ++ int64_t total = 0; ++ for (int32_t i = 0; i < 16; i++) { ++ dest.append(str); ++ total += len; ++ if (total <= INT32_MAX) { ++ assertFalse("dest is not bogus", dest.isBogus()); ++ } else { ++ assertTrue("dest should be bogus", dest.isBogus()); ++ } ++ } ++ dest.remove(); ++ total = 0; ++ for (int32_t i = 0; i < 16; i++) { ++ dest.append(str); ++ total += len; ++ if (total + len <= INT32_MAX) { ++ assertFalse("dest is not bogus", dest.isBogus()); ++ } else if (total <= INT32_MAX) { ++ // Check that a string of exactly the maximum size works ++ UnicodeString str2; ++ int32_t remain = INT32_MAX - total; ++ char16_t *buf2 = str2.getBuffer(remain); ++ if (buf2 == nullptr) { ++ // if somehow memory allocation fail, return the test ++ return; ++ } ++ uprv_memset(buf2, 0x4e, remain * 2); ++ str2.releaseBuffer(remain); ++ dest.append(str2); ++ total += remain; ++ assertEquals("When a string of exactly the maximum size works", (int64_t)INT32_MAX, total); ++ assertEquals("When a string of exactly the maximum size works", INT32_MAX, dest.length()); ++ assertFalse("dest is not bogus", dest.isBogus()); ++ ++ // Check that a string size+1 goes bogus ++ str2.truncate(1); ++ dest.append(str2); ++ total++; ++ assertTrue("dest should be bogus", dest.isBogus()); ++ } else { ++ assertTrue("dest should be bogus", dest.isBogus()); ++ } ++ } ++} +diff --git a/test/intltest/ustrtest.h b/test/intltest/ustrtest.h +index 218befd..4a356a9 100644 +--- a/test/intltest/ustrtest.h ++++ b/test/intltest/ustrtest.h +@@ -97,6 +97,7 @@ public: + void TestWCharPointers(); + void TestNullPointers(); + void TestUnicodeStringInsertAppendToSelf(); ++ void TestLargeAppend(); + }; + + #endif +-- +2.17.1 + diff --git a/poky/meta/recipes-support/icu/icu_66.1.bb b/poky/meta/recipes-support/icu/icu_66.1.bb index f2bb344e3..a8096c184 100644 --- a/poky/meta/recipes-support/icu/icu_66.1.bb +++ b/poky/meta/recipes-support/icu/icu_66.1.bb @@ -26,6 +26,7 @@ SRC_URI = "${BASE_SRC_URI};name=code \ file://fix-install-manx.patch \ file://0001-Fix-big-endian-build.patch;apply=no \ file://0001-icu-Added-armeb-support.patch \ + file://CVE-2020-10531.patch \ " SRC_URI_append_class-target = "\ diff --git a/poky/meta/recipes-support/libevdev/libevdev/determinism.patch b/poky/meta/recipes-support/libevdev/libevdev/determinism.patch index 33a6076b7..f6b7fc82d 100644 --- a/poky/meta/recipes-support/libevdev/libevdev/determinism.patch +++ b/poky/meta/recipes-support/libevdev/libevdev/determinism.patch @@ -1,3 +1,8 @@ +From 4f196323aba5b0f49979826533c65633b8a9b6a2 Mon Sep 17 00:00:00 2001 +From: Richard Purdie +Date: Fri, 7 Feb 2020 12:29:56 +0000 +Subject: [PATCH] libevdev: Fix determinism issue + The order of dict values is not deterministic leading to differing header file generation. Sort to remove this inconsistency. @@ -6,29 +11,33 @@ RP 2020/2/7 Signed-off-by: Richard Purdie Upstream-Status: Pending -Index: a/libevdev/make-event-names.py -=================================================================== +--- + libevdev/make-event-names.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/libevdev/make-event-names.py b/libevdev/make-event-names.py +index 88addd7..c973e2a 100755 --- a/libevdev/make-event-names.py +++ b/libevdev/make-event-names.py -@@ -67,10 +67,10 @@ def print_bits(bits, prefix): - if not hasattr(bits, prefix): - return - print("static const char * const %s_map[%s_MAX + 1] = {" % (prefix, prefix.upper())) -- for val, name in list(getattr(bits, prefix).items()): -+ for val, name in sorted(list(getattr(bits, prefix).items())): - print(" [%s] = \"%s\"," % (name, name)) - if prefix == "key": -- for val, name in list(getattr(bits, "btn").items()): -+ for val, name in sorted(list(getattr(bits, "btn").items())): - print(" [%s] = \"%s\"," % (name, name)) - print("};") - print("") -@@ -111,7 +111,7 @@ def print_lookup(bits, prefix): - if not hasattr(bits, prefix): - return +@@ -70,10 +70,10 @@ def print_bits(bits, prefix): + if not hasattr(bits, prefix): + return + print("static const char * const %s_map[%s_MAX + 1] = {" % (prefix, prefix.upper())) +- for val, name in list(getattr(bits, prefix).items()): ++ for val, name in sorted(list(getattr(bits, prefix).items())): + print(" [%s] = \"%s\"," % (name, name)) + if prefix == "key": +- for val, name in list(getattr(bits, "btn").items()): ++ for val, name in sorted(list(getattr(bits, "btn").items())): + print(" [%s] = \"%s\"," % (name, name)) + print("};") + print("") +@@ -118,7 +118,7 @@ def print_lookup(bits, prefix): + if not hasattr(bits, prefix): + return -- names = list(getattr(bits, prefix).items()) -+ names = sorted(list(getattr(bits, prefix).items())) - if prefix == "btn": - names = names + btn_additional; +- names = list(getattr(bits, prefix).items()) ++ names = sorted(list(getattr(bits, prefix).items())) + if prefix == "btn": + names = names + btn_additional diff --git a/poky/meta/recipes-support/libevdev/libevdev_1.8.0.bb b/poky/meta/recipes-support/libevdev/libevdev_1.8.0.bb deleted file mode 100644 index 3523dc096..000000000 --- a/poky/meta/recipes-support/libevdev/libevdev_1.8.0.bb +++ /dev/null @@ -1,16 +0,0 @@ -SUMMARY = "Wrapper library for evdev devices" -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libevdev/" -SECTION = "libs" - -LICENSE = "MIT-X" -LIC_FILES_CHKSUM = "file://COPYING;md5=75aae0d38feea6fda97ca381cb9132eb \ - file://libevdev/libevdev.h;endline=21;md5=7ff4f0b5113252c2f1a828e0bbad98d1" - -SRC_URI = "http://www.freedesktop.org/software/libevdev/${BP}.tar.xz \ - file://determinism.patch" -SRC_URI[md5sum] = "879631080be18526737e33b63d848039" -SRC_URI[sha256sum] = "20d3cae4efd277f485abdf8f2a7c46588e539998b5a08c2c4d368218379d4211" - -inherit autotools pkgconfig - -UPSTREAM_CHECK_REGEX = "libevdev-(?P(\d+\.)+(?!90\d+)\d+)" diff --git a/poky/meta/recipes-support/libevdev/libevdev_1.9.0.bb b/poky/meta/recipes-support/libevdev/libevdev_1.9.0.bb new file mode 100644 index 000000000..a2116a492 --- /dev/null +++ b/poky/meta/recipes-support/libevdev/libevdev_1.9.0.bb @@ -0,0 +1,16 @@ +SUMMARY = "Wrapper library for evdev devices" +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libevdev/" +SECTION = "libs" + +LICENSE = "MIT-X" +LIC_FILES_CHKSUM = "file://COPYING;md5=75aae0d38feea6fda97ca381cb9132eb \ + file://libevdev/libevdev.h;endline=21;md5=7ff4f0b5113252c2f1a828e0bbad98d1" + +SRC_URI = "http://www.freedesktop.org/software/libevdev/${BP}.tar.xz \ + file://determinism.patch" +SRC_URI[md5sum] = "13c3f0911f9326d4b9fa103365f84421" +SRC_URI[sha256sum] = "e7e18a64264f2dea19b6c50a481f8c062529d42919ccda0bc861495bce28eb9e" + +inherit autotools pkgconfig + +UPSTREAM_CHECK_REGEX = "libevdev-(?P(\d+\.)+(?!90\d+)\d+)" diff --git a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.3.2.bb b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.3.2.bb deleted file mode 100644 index 187f22df0..000000000 --- a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.3.2.bb +++ /dev/null @@ -1,28 +0,0 @@ -SUMMARY = "A C program to run all installed ptests" -DESCRIPTION = "The ptest-runner2 package installs a ptest-runner \ -program which loops through all installed ptest test suites and \ -runs them in sequence." -HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/" - -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe" - -SRCREV = "7015e9199ce748c0717addeebe7a8c47448bab03" -PV = "2.3.2+git${SRCPV}" - -SRC_URI = "git://git.yoctoproject.org/ptest-runner2 \ -" - -S = "${WORKDIR}/git" - -FILES_${PN} = "${bindir}/ptest-runner" - -EXTRA_OEMAKE = "-e MAKEFLAGS= CFLAGS="${CFLAGS} -DDEFAULT_DIRECTORY=\\\"${libdir}\\\""" - -do_compile () { - oe_runmake -} - -do_install () { - install -D -m 0755 ${S}/ptest-runner ${D}${bindir}/ptest-runner -} diff --git a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb new file mode 100644 index 000000000..09fabdeeb --- /dev/null +++ b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb @@ -0,0 +1,28 @@ +SUMMARY = "A C program to run all installed ptests" +DESCRIPTION = "The ptest-runner2 package installs a ptest-runner \ +program which loops through all installed ptest test suites and \ +runs them in sequence." +HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe" + +SRCREV = "1e9a84585909b970cc8850d3ea02a7215dcfa5a3" +PV = "2.4.0+git${SRCPV}" + +SRC_URI = "git://git.yoctoproject.org/ptest-runner2 \ +" + +S = "${WORKDIR}/git" + +FILES_${PN} = "${bindir}/ptest-runner" + +EXTRA_OEMAKE = "-e MAKEFLAGS= CFLAGS="${CFLAGS} -DDEFAULT_DIRECTORY=\\\"${libdir}\\\""" + +do_compile () { + oe_runmake +} + +do_install () { + install -D -m 0755 ${S}/ptest-runner ${D}${bindir}/ptest-runner +} diff --git a/poky/meta/recipes-support/sqlite/files/CVE-2020-11655.patch b/poky/meta/recipes-support/sqlite/files/CVE-2020-11655.patch new file mode 100644 index 000000000..e30c482bb --- /dev/null +++ b/poky/meta/recipes-support/sqlite/files/CVE-2020-11655.patch @@ -0,0 +1,32 @@ +From a4601326d61bf1a11151ac6b78b50804bfd03b4d Mon Sep 17 00:00:00 2001 +From: Sakib Sajal +Date: Thu, 30 Apr 2020 10:46:16 -0700 +Subject: [PATCH 2/2] In the event of a semantic error in an aggregate query, + early-out the resetAccumulator() function to prevent problems due to + incomplete or incorrect initialization of the AggInfo object. Fix for ticket + [af4556bb5c285c08]. + +FossilOrigin-Name: 4a302b42c7bf5e11ddb5522ca999f74aba397d3a7eb91b1844bb02852f772441 +Upstream Status: Backport [c415d91007e1680e4eb17def583b202c3c83c718] + +CVE: CVE-2020-11655 +Signed-off-by: Sakib Sajal +--- + sqlite3.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sqlite3.c b/sqlite3.c +index 1df6633..726adf7 100644 +--- a/sqlite3.c ++++ b/sqlite3.c +@@ -133242,6 +133242,7 @@ static void resetAccumulator(Parse *pParse, AggInfo *pAggInfo){ + struct AggInfo_func *pFunc; + int nReg = pAggInfo->nFunc + pAggInfo->nColumn; + if( nReg==0 ) return; ++ if( pParse->nErr ) return; + #ifdef SQLITE_DEBUG + /* Verify that all AggInfo registers are within the range specified by + ** AggInfo.mnReg..AggInfo.mxReg */ +-- +2.17.1 + diff --git a/poky/meta/recipes-support/sqlite/files/CVE-2020-11656.patch b/poky/meta/recipes-support/sqlite/files/CVE-2020-11656.patch new file mode 100644 index 000000000..b88a724e8 --- /dev/null +++ b/poky/meta/recipes-support/sqlite/files/CVE-2020-11656.patch @@ -0,0 +1,70 @@ +From 2d69a520d027eb73eb6da9f2653d23e33b10e8bb Mon Sep 17 00:00:00 2001 +From: Sakib Sajal +Date: Thu, 30 Apr 2020 10:14:36 -0700 +Subject: [PATCH 1/2] Fix a case when a pointer might be used after + being freed in the ALTER TABLE code. Fix for [4722bdab08cb1]. + +FossilOrigin-Name: d09f8c3621d5f7f8c6d99d7d82bcaa8421855b3f470bea2b26c858106382b906 +Upstream Status: Backport [fb99e388ec7f30fe43e4878236e3695ff24ae58d] + +[PATCH 2/2] Do not suppress errors when resolving references in an ORDER + BY clause belonging to a compound SELECT within a view or trigger within + ALTER TABLE. Fix for ticket [a10a14e9b4ba2]. + +FossilOrigin-Name: 684293882c302600e112cf52553c19d84fdb31663d96e5dd7f8ac17dda00a026 +Upstream Status: Backport [4db7ab53f9c30e2e22731ace93ab6b18eef6c4ae] + +The two patches were converted to amalgamation format. + +CVE: CVE-2020-11656 +Signed-off-by: Sakib Sajal +--- + sqlite3.c | 18 +++++++++++++++++- + 1 file changed, 17 insertions(+), 1 deletion(-) + +diff --git a/sqlite3.c b/sqlite3.c +index 64fae04..1df6633 100644 +--- a/sqlite3.c ++++ b/sqlite3.c +@@ -97945,7 +97945,7 @@ static int resolveOrderByTermToExprList( + nc.nErr = 0; + db = pParse->db; + savedSuppErr = db->suppressErr; +- db->suppressErr = 1; ++ if( IN_RENAME_OBJECT==0 ) db->suppressErr = 1; + rc = sqlite3ResolveExprNames(&nc, pE); + db->suppressErr = savedSuppErr; + if( rc ) return 0; +@@ -105383,6 +105383,21 @@ static void renameWalkWith(Walker *pWalker, Select *pSelect){ + } + } + ++/* ++** Unmap all tokens in the IdList object passed as the second argument. ++*/ ++static void unmapColumnIdlistNames( ++ Parse *pParse, ++ IdList *pIdList ++){ ++ if( pIdList ){ ++ int ii; ++ for(ii=0; iinId; ii++){ ++ sqlite3RenameTokenRemap(pParse, 0, (void*)pIdList->a[ii].zName); ++ } ++ } ++} ++ + /* + ** Walker callback used by sqlite3RenameExprUnmap(). + */ +@@ -105404,6 +105419,7 @@ static int renameUnmapSelectCb(Walker *pWalker, Select *p){ + for(i=0; inSrc; i++){ + sqlite3RenameTokenRemap(pParse, 0, (void*)pSrc->a[i].zName); + if( sqlite3WalkExpr(pWalker, pSrc->a[i].pOn) ) return WRC_Abort; ++ unmapColumnIdlistNames(pParse, pSrc->a[i].pUsing); + } + } + +-- +2.17.1 + diff --git a/poky/meta/recipes-support/sqlite/sqlite3_3.31.1.bb b/poky/meta/recipes-support/sqlite/sqlite3_3.31.1.bb index de564e269..57a791385 100644 --- a/poky/meta/recipes-support/sqlite/sqlite3_3.31.1.bb +++ b/poky/meta/recipes-support/sqlite/sqlite3_3.31.1.bb @@ -5,6 +5,8 @@ LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed0 SRC_URI = "http://www.sqlite.org/2020/sqlite-autoconf-${SQLITE_PV}.tar.gz \ file://CVE-2020-9327.patch \ + file://CVE-2020-11656.patch \ + file://CVE-2020-11655.patch \ " SRC_URI[md5sum] = "2d0a553534c521504e3ac3ad3b90f125" SRC_URI[sha256sum] = "62284efebc05a76f909c580ffa5c008a7d22a1287285d68b7825a2b6b51949ae" diff --git a/poky/meta/recipes-support/vte/vte_0.58.3.bb b/poky/meta/recipes-support/vte/vte_0.58.3.bb deleted file mode 100644 index 41dc2e77c..000000000 --- a/poky/meta/recipes-support/vte/vte_0.58.3.bb +++ /dev/null @@ -1,56 +0,0 @@ -SUMMARY = "Virtual terminal emulator GTK+ widget library" -BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte" -LICENSE = "GPLv3 & LGPLv3+ & LGPLv2.1+" -LICENSE_libvte = "LGPLv3+" - -LIC_FILES_CHKSUM = " \ - file://COPYING.GPL3;md5=2f31b266d3440dd7ee50f92cf67d8e6c \ - file://COPYING.LGPL2;md5=4fbd65380cdd255951079008b364516c \ - file://COPYING.LGPL3;md5=b52f2d57d10c4f7ee67a7eb9615d5d24 \ -" - -DEPENDS = "glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native" - -GNOMEBASEBUILDCLASS = "meson" -GIR_MESON_OPTION = 'gir' - -inherit gnomebase gtk-doc features_check upstream-version-is-even gobject-introspection - -# vapigen.m4 is required when vala is not present (but the one from vala should be used normally) -SRC_URI += "file://0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch \ - file://0002-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \ - " -SRC_URI[archive.md5sum] = "f59eb0784a361c0939c03d4566255916" -SRC_URI[archive.sha256sum] = "22dcb54ac2ad1a56ab0a745e16ccfeb383f0b5860b5bfa1784561216f98d4975" - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -# Instead of "inherit vala" we do the relevant settings here so we can -# set DEPENDS based on PACKAGECONFIG. - -# Our patched version of Vala looks in STAGING_DATADIR for .vapi files -export STAGING_DATADIR -# Upstream Vala >= 0.11 looks in XDG_DATA_DIRS for .vapi files -export XDG_DATA_DIRS = "${STAGING_DATADIR}" - -# Help g-ir-scanner find the .so for linking -do_compile_prepend() { - export GIR_EXTRA_LIBS_PATH="${B}/src/.libs" -} - -# Package additional files -FILES_${PN}-dev += "${datadir}/vala/vapi/*" - -PACKAGECONFIG ??= "gnutls" -PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false,vala-native vala" -PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls" -# vala requires gir -PACKAGECONFIG_remove_class-native = "vala" - -CFLAGS += "-D_GNU_SOURCE" - -PACKAGES =+ "libvte ${PN}-prompt" -FILES_libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*" -FILES_${PN}-prompt = "${sysconfdir}/profile.d" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/vte/vte_0.60.2.bb b/poky/meta/recipes-support/vte/vte_0.60.2.bb new file mode 100644 index 000000000..3891ff816 --- /dev/null +++ b/poky/meta/recipes-support/vte/vte_0.60.2.bb @@ -0,0 +1,57 @@ +SUMMARY = "Virtual terminal emulator GTK+ widget library" +BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte" +LICENSE = "GPLv3 & LGPLv3+ & LGPLv2.1+" +LICENSE_libvte = "LGPLv3+" + +LIC_FILES_CHKSUM = " \ + file://COPYING.GPL3;md5=2f31b266d3440dd7ee50f92cf67d8e6c \ + file://COPYING.LGPL2;md5=4fbd65380cdd255951079008b364516c \ + file://COPYING.LGPL3;md5=b52f2d57d10c4f7ee67a7eb9615d5d24 \ +" + +DEPENDS = "glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native" + +GNOMEBASEBUILDCLASS = "meson" +GIR_MESON_OPTION = 'gir' + +inherit gnomebase gtk-doc features_check upstream-version-is-even gobject-introspection + +# vapigen.m4 is required when vala is not present (but the one from vala should be used normally) +SRC_URI += "file://0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch \ + file://0002-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \ + " +SRC_URI[archive.md5sum] = "1a0b5395915d2f3c88484511b38cc584" +SRC_URI[archive.sha256sum] = "35a0280e3f12feeb3096da05699191373c47a4a20c55cb7081e828e6015f8ca5" + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +# Instead of "inherit vala" we do the relevant settings here so we can +# set DEPENDS based on PACKAGECONFIG. + +# Our patched version of Vala looks in STAGING_DATADIR for .vapi files +export STAGING_DATADIR +# Upstream Vala >= 0.11 looks in XDG_DATA_DIRS for .vapi files +export XDG_DATA_DIRS = "${STAGING_DATADIR}" + +# Help g-ir-scanner find the .so for linking +do_compile_prepend() { + export GIR_EXTRA_LIBS_PATH="${B}/src/.libs" +} + +# Package additional files +FILES_${PN}-dev += "${datadir}/vala/vapi/*" + +PACKAGECONFIG ??= "gnutls" +PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false,vala-native vala" +PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls" +PACKAGECONFIG[systemd] = "-D_systemd=true,-D_systemd=false,systemd" +# vala requires gir +PACKAGECONFIG_remove_class-native = "vala" + +CFLAGS += "-D_GNU_SOURCE" + +PACKAGES =+ "libvte ${PN}-prompt" +FILES_libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*" +FILES_${PN}-prompt = "${sysconfdir}/profile.d" + +BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3 From c182c62dd929fe69b57a12bc04099fcd09b5d436 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 15 May 2020 14:13:32 -0500 Subject: poky: subtree update:b5763b2f48..f468a73523 Adrian Bunk (13): iproute2: Remove -fcommon libxcrypt2: Remove -fcommon xorg-xserver: Remove -fcommon mesa: Remove -fcommon at-spi2-atk: Remove -fcommon menu-cache: Replace -fcommon with fix matchbox-wm: Replace -fcommon with fix llvm: Remove -fcommon vte: Remove workaround for gcc 4.8 python-numpy: Remove workaround for host gcc < 5 libtasn1: Remove workaround for host gcc < 5 nettle: Remove workaround for gcc < 5 wireless-regdb: Upgrade 2019.06.03 -> 2020.04.29 Alejandro Hernandez (1): connman: Include vpn-script in FILES Alexander Kanavin (30): libinput: add ptest libinput: update 1.15.2 -> 1.15.5 avahi: merge avahi-ui into the main recipe avahi: update to 0.8 testsdkext/devtool: initialize the test component's git repo git: update to 2.26.2 libcap: update to 2.33 libhandy: add a recipe from meta-oe libdazzle: update to 3.36.0 epiphany: update to 3.36.1 patchelf: switch to git powertop: switch to Arjan's git meson: fix upstream version check rpcsvc-proto: update to 1.4.1 vulkan-headers: upgrade 1.1.126.0 -> 1.2.135.0 vulkan-loader: upgrade 1.1.126.0 -> 1.2.135.0 vulkan-tools: upgrade 1.1.126.0 -> 1.2.135.0 vulkan-demos: upgrade to latest revision e2fsprogs: update to 1.45.6 build-compare: update to latest revision ovmf: update to 202002 cdrtools-native: fix upstream version check re2c: correct upstream location vte: add icu dependency mesa: enable x11 for native/nativesdk runqemu: set host DRI driver path for all instances of virgl usage libepoxy: do not strip RUNPATH from native/nativesdk virgl: skip test on Debian 9 runqemu: force software x11 renderer for SDL when GL is not in use gcr: correct a build race between vapi files Andrej Valek (1): icu: upgrade 66.1 -> 67.1 Anton Eliasson (1): meson.bbclass: Close the log file after reading Bartosz Golaszewski (1): busybox: disable i2ctransfer Changqing Li (2): rpm: fix file conflicts for MIPS64 N32 lib/oe/package_manager: update default rpm config %_prefer_color Jacob Kroon (1): pseudo: Fix enum typedef Joe Slater (1): wget: improve reproducible build Joshua Watt (3): libnewt: Backport patch to fix reproducibility bitbake.conf: Prevent git from detecting parent repo in recipe classes/kernel: Generate reproducible kernel module tarball Kai Kang (1): python3-git: 3.0.5 -> 3.1.2 Khem Raj (9): avahi: Cover gtk packageconfig with x11/wayland distro features tunes: Add new tune files for cortexa55 and cortexa73-cortexa53 gcc-runtime: Avoid march conflicts with newer cortex-a55 CPUs gcc10: Update to GCC 10.1 Release glibc: Update to latest on 2.31 branch gcc10: Default back to -fcommon gcc10: Revert using __getauxval in libgcc glib-2.0: Fix stpcpy detection for mingw wayland: fix condition for strndup detection Konrad Weihmann (2): pypi.bbclass: mind package suffix on version check file: add PACKAGECONFIG for auto options Mingli Yu (1): python3-setuptools: add the missing rdepends Peter Kjellerstedt (2): sstate.bbclass: Do not fail if files cannot be touched file: Remove unneccessary override of PACKAGECONFIG for native Pierre-Jean Texier (1): sysklogd: upgrade 2.1.1 -> 2.1.2 Richard Leitner (6): gdbm: add patch to fix link failure against gcc 10 dtc: update to 1.6.0 libtirpc: remove extra "-fcommon" from CFLAGS libcomps: update to 0.1.15 binutils: add patch to fix issues with gcc 10 cpio: add patch to fix issues with gcc 10 Richard Purdie (4): recipes: Remove remaining INC_PR variables insane: Promote warnings into errors poky: We now match OE-Core's error/warning config so simplify poky.conf: Post release version bump Robert P. J. Day (1): documentation.conf: Add variables supported by features_check.bbclass Tim Orling (1): pypi.bbclass: use new pypi UPSTREAM_CHECK_URI Wang Mingyu (1): nettle: upgrade 3.5.1 -> 3.6 Yeoh Ee Peng (1): selftest/imagefeatures: Enable sanity test for IMAGE_GEN_DEBUGFS Yi Zhao (1): opkg-keyrings: check if opkg-key exists before run postinst Zoltan Boszormenyi (4): libva: Factor out base parts into an include file libva-initial: New bootstrap recipe mesa: Add PACKAGECONFIG knob to enable VAAPI mesa: Add PACKAGECONFIG knob to enable VDPAU state tracker and drivers jan (1): scripts/tiny/ksize: Fix for more recent kernels wenlin.kang@windriver.com (1): populate_sdk_base.bbclass: fix warning: name not matched Change-Id: Icd73153270a6cb7ab63257211350aa564867c2db Signed-off-by: Andrew Geissler --- poky/meta-poky/conf/distro/poky.conf | 13 +- poky/meta/classes/insane.bbclass | 11 +- poky/meta/classes/kernel.bbclass | 8 +- poky/meta/classes/meson.bbclass | 3 +- poky/meta/classes/populate_sdk_base.bbclass | 2 +- poky/meta/classes/pypi.bbclass | 4 +- poky/meta/classes/sstate.bbclass | 15 +- poky/meta/conf/bitbake.conf | 6 +- poky/meta/conf/distro/include/maintainers.inc | 5 +- .../conf/distro/include/ptest-packagelists.inc | 1 + poky/meta/conf/distro/include/tcmode-default.inc | 2 +- poky/meta/conf/documentation.conf | 11 +- poky/meta/conf/machine/include/tune-cortexa55.inc | 17 + .../machine/include/tune-cortexa73-cortexa53.inc | 23 ++ poky/meta/lib/oe/package_manager.py | 2 - poky/meta/lib/oeqa/sdkext/cases/devtool.py | 6 + poky/meta/lib/oeqa/selftest/cases/imagefeatures.py | 32 ++ poky/meta/lib/oeqa/selftest/cases/runtime_test.py | 2 + .../recipes-connectivity/avahi/avahi-ui_0.7.bb | 54 ---- poky/meta/recipes-connectivity/avahi/avahi.inc | 86 ----- poky/meta/recipes-connectivity/avahi/avahi_0.7.bb | 91 ------ poky/meta/recipes-connectivity/avahi/avahi_0.8.bb | 181 +++++++++++ .../avahi/files/fix-CVE-2017-6519.patch | 48 --- poky/meta/recipes-connectivity/connman/connman.inc | 5 +- .../iproute2/iproute2_5.5.0.bb | 2 +- poky/meta/recipes-core/busybox/busybox/defconfig | 1 + ...-misdetect-stpcpy-on-windows-platforms-on.patch | 53 ++++ poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb | 1 + poky/meta/recipes-core/glibc/glibc-version.inc | 2 +- .../glibc/0030-Improve-IFUNC-check-BZ-25506.patch | 47 --- ...build-with-GCC-10-when-long-double-double.patch | 170 ---------- .../recipes-core/glibc/glibc/CVE-2020-10029.patch | 128 -------- poky/meta/recipes-core/glibc/glibc_2.31.bb | 3 - poky/meta/recipes-core/libxcrypt/libxcrypt.inc | 2 - .../ovmf/ovmf/0001-ovmf-Update-to-latest.patch | 46 +++ .../ovmf/ovmf/0004-ovmf-Update-to-latest.patch | 46 --- poky/meta/recipes-core/ovmf/ovmf_git.bb | 8 +- .../recipes-devtools/binutils/binutils-2.34.inc | 1 + ...op-redundant-program_name-definition-fno-.patch | 61 ++++ .../build-compare/build-compare_git.bb | 8 +- .../files/Ignore-DWARF-sections.patch | 37 --- .../cdrtools/cdrtools-native_3.01.bb | 1 - ...k-don-t-try-to-rehash-a-deleted-directory.patch | 49 --- ...c-create_inode.c-set-dir-s-mode-correctly.patch | 41 --- .../e2fsprogs/e2fsprogs/CVE-2019-5188.patch | 57 ---- ...fsck-fix-use-after-free-in-calculate_tree.patch | 76 ----- ...s-fix-missing-check-for-permission-denied.patch | 2 +- .../e2fsprogs/e2fsprogs/quiet-debugfs.patch | 2 +- .../recipes-devtools/e2fsprogs/e2fsprogs_1.45.4.bb | 144 --------- .../recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb | 140 +++++++++ poky/meta/recipes-devtools/file/file_5.38.bb | 9 +- poky/meta/recipes-devtools/gcc/gcc-10.1.inc | 119 +++++++ .../0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch | 39 +++ .../0002-gcc-poison-system-directories.patch | 200 ++++++++++++ .../0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch | 70 +++++ .../gcc/gcc-10.1/0004-64-bit-multilib-hack.patch | 116 +++++++ .../gcc/gcc-10.1/0005-optional-libstdc.patch | 122 ++++++++ .../gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch | 35 +++ ...efaults.h-in-B-instead-of-S-and-t-oe-in-B.patch | 92 ++++++ .../gcc-10.1/0008-fortran-cross-compile-hack.patch | 43 +++ .../gcc/gcc-10.1/0009-cpp-honor-sysroot.patch | 51 +++ .../gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch | 54 ++++ ...C_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch | 243 +++++++++++++++ ...0012-gcc-Fix-argument-list-too-long-error.patch | 37 +++ .../gcc/gcc-10.1/0013-Disable-sdt.patch | 110 +++++++ .../gcc/gcc-10.1/0014-libtool.patch | 39 +++ ...4-pass-fix-v4bx-to-linker-to-support-EABI.patch | 40 +++ ...tilib-config-files-from-B-instead-of-usin.patch | 99 ++++++ ...-libdir-from-.la-which-usually-points-to-.patch | 28 ++ .../gcc/gcc-10.1/0018-export-CPP.patch | 50 +++ ...Ensure-target-gcc-headers-can-be-included.patch | 57 ++++ ...h-host-directory-during-relink-if-inst_pr.patch | 35 +++ ...IBS_DIR-replacement-instead-of-hardcoding.patch | 26 ++ .../0022-aarch64-Add-support-for-musl-ldso.patch | 25 ++ ...ibcc1-fix-libcc1-s-install-path-and-rpath.patch | 51 +++ ...-handle-sysroot-support-for-nativesdk-gcc.patch | 346 +++++++++++++++++++++ ...et-sysroot-gcc-version-specific-dirs-with.patch | 99 ++++++ ...-various-_FOR_BUILD-and-related-variables.patch | 134 ++++++++ .../0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch | 25 ++ ...shared-to-link-commandline-for-musl-targe.patch | 84 +++++ ...bgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch | 26 ++ .../0030-sync-gcc-stddef.h-with-musl.patch | 88 ++++++ ...ation-fault-in-precompiled-header-generat.patch | 57 ++++ .../gcc-10.1/0032-Fix-for-testsuite-failure.patch | 255 +++++++++++++++ ...0033-Re-introduce-spe-commandline-options.patch | 38 +++ ...e-alias-for-__cpu_indicator_init-instead-.patch | 83 +++++ ...nmodes-Do-not-use-__LINE__-for-maintainin.patch | 182 +++++++++++ ...-Enable-CET-in-cross-compiler-if-possible.patch | 150 +++++++++ ...37-mingw32-Enable-operation_not_supported.patch | 26 ++ ...h64-Use-__getauxval-instead-of-getauxval-.patch | 47 +++ poky/meta/recipes-devtools/gcc/gcc-9.3.inc | 119 ------- .../0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch | 42 --- .../0002-gcc-poison-system-directories.patch | 203 ------------ .../0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch | 73 ----- .../gcc/gcc-9.3/0004-64-bit-multilib-hack.patch | 119 ------- .../gcc/gcc-9.3/0005-optional-libstdc.patch | 125 -------- .../gcc/gcc-9.3/0006-COLLECT_GCC_OPTIONS.patch | 38 --- ...efaults.h-in-B-instead-of-S-and-t-oe-in-B.patch | 96 ------ .../gcc-9.3/0008-fortran-cross-compile-hack.patch | 46 --- .../gcc/gcc-9.3/0009-cpp-honor-sysroot.patch | 54 ---- .../gcc-9.3/0010-MIPS64-Default-to-N64-ABI.patch | 57 ---- ...C_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch | 246 --------------- ...0012-gcc-Fix-argument-list-too-long-error.patch | 40 --- .../gcc/gcc-9.3/0013-Disable-sdt.patch | 113 ------- .../gcc/gcc-9.3/0014-libtool.patch | 42 --- ...4-pass-fix-v4bx-to-linker-to-support-EABI.patch | 43 --- ...tilib-config-files-from-B-instead-of-usin.patch | 102 ------ ...-libdir-from-.la-which-usually-points-to-.patch | 31 -- .../gcc/gcc-9.3/0018-export-CPP.patch | 53 ---- ...Ensure-target-gcc-headers-can-be-included.patch | 60 ---- ...-t-build-with-disable-dependency-tracking.patch | 54 ---- ...h-host-directory-during-relink-if-inst_pr.patch | 38 --- ...IBS_DIR-replacement-instead-of-hardcoding.patch | 29 -- .../0023-aarch64-Add-support-for-musl-ldso.patch | 28 -- ...ibcc1-fix-libcc1-s-install-path-and-rpath.patch | 54 ---- ...-handle-sysroot-support-for-nativesdk-gcc.patch | 346 --------------------- ...et-sysroot-gcc-version-specific-dirs-with.patch | 102 ------ ...-various-_FOR_BUILD-and-related-variables.patch | 137 -------- .../0028-nios2-Define-MUSL_DYNAMIC_LINKER.patch | 28 -- ...shared-to-link-commandline-for-musl-targe.patch | 87 ------ .../gcc/gcc-9.3/0030-ldbl128-config.patch | 79 ----- ...bgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch | 29 -- ...e-alias-for-__cpu_indicator_init-instead-.patch | 86 ----- .../gcc-9.3/0033-sync-gcc-stddef.h-with-musl.patch | 91 ------ ...ation-fault-in-precompiled-header-generat.patch | 60 ---- .../gcc-9.3/0035-Fix-for-testsuite-failure.patch | 258 --------------- ...0036-Re-introduce-spe-commandline-options.patch | 41 --- ...250-Check-zero-value-in-simple_object_elf.patch | 48 --- ...nmodes-Do-not-use-__LINE__-for-maintainin.patch | 185 ----------- ..._operands-Don-t-match-user-defined-regs-o.patch | 100 ------ .../recipes-devtools/gcc/gcc-configure-common.inc | 1 + .../gcc/gcc-cross-canadian_10.1.bb | 5 + .../recipes-devtools/gcc/gcc-cross-canadian_9.3.bb | 5 - poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb | 3 + poky/meta/recipes-devtools/gcc/gcc-cross_9.3.bb | 3 - .../meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb | 2 + poky/meta/recipes-devtools/gcc/gcc-crosssdk_9.3.bb | 2 - poky/meta/recipes-devtools/gcc/gcc-runtime.inc | 5 + poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb | 2 + poky/meta/recipes-devtools/gcc/gcc-runtime_9.3.bb | 2 - .../recipes-devtools/gcc/gcc-sanitizers_10.1.bb | 7 + .../recipes-devtools/gcc/gcc-sanitizers_9.3.bb | 7 - poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb | 4 + poky/meta/recipes-devtools/gcc/gcc-source_9.3.bb | 4 - poky/meta/recipes-devtools/gcc/gcc-target.inc | 1 + poky/meta/recipes-devtools/gcc/gcc_10.1.bb | 14 + poky/meta/recipes-devtools/gcc/gcc_9.3.bb | 14 - .../recipes-devtools/gcc/libgcc-initial_10.1.bb | 5 + .../recipes-devtools/gcc/libgcc-initial_9.3.bb | 5 - poky/meta/recipes-devtools/gcc/libgcc_10.1.bb | 5 + poky/meta/recipes-devtools/gcc/libgcc_9.3.bb | 5 - poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb | 3 + poky/meta/recipes-devtools/gcc/libgfortran_9.3.bb | 3 - poky/meta/recipes-devtools/git/git.inc | 1 + poky/meta/recipes-devtools/git/git_2.24.1.bb | 11 - poky/meta/recipes-devtools/git/git_2.26.2.bb | 10 + .../0001-Add-crc32.c-to-sources-list.patch | 9 +- ...-set-PYTHON_INSTALL_DIR-by-running-python.patch | 25 -- ...-Make-__comps_objmrtree_all-static-inline.patch | 35 --- ...-set-PYTHON_INSTALL_DIR-by-running-python.patch | 27 ++ .../recipes-devtools/libcomps/libcomps_0.1.15.bb | 22 ++ .../meta/recipes-devtools/libcomps/libcomps_git.bb | 24 -- poky/meta/recipes-devtools/llvm/llvm_git.bb | 2 - poky/meta/recipes-devtools/meson/meson.inc | 1 + .../recipes-devtools/opkg/opkg-keyrings_1.0.bb | 5 +- .../recipes-devtools/patchelf/patchelf_0.10.bb | 7 +- .../files/0001-pseudo_ipc.h-Fix-enum-typedef.patch | 31 ++ poky/meta/recipes-devtools/pseudo/pseudo_git.bb | 1 + .../recipes-devtools/python-numpy/python-numpy.inc | 3 - .../recipes-devtools/python/python-setuptools.inc | 1 + .../recipes-devtools/python/python3-git_3.0.5.bb | 33 -- .../recipes-devtools/python/python3-git_3.1.2.bb | 33 ++ ...ction.c-fix-file-conflicts-for-MIPS64-N32.patch | 60 ++++ poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb | 1 + ...c-Remove-superfluous-declaration-of-progr.patch | 28 ++ poky/meta/recipes-extended/cpio/cpio_2.13.bb | 1 + .../recipes-extended/libtirpc/libtirpc_1.2.6.bb | 2 - ...2-don-t-ignore-CFLAGS-when-building-snack.patch | 29 ++ .../recipes-extended/newt/files/pie-flags.patch | 41 --- poky/meta/recipes-extended/newt/libnewt_0.52.21.bb | 4 +- .../recipes-extended/rpcsvc-proto/rpcsvc-proto.bb | 10 +- ...-rarely-reproduced-parallel-build-problem.patch | 40 --- poky/meta/recipes-extended/sysklogd/sysklogd.inc | 1 - .../recipes-extended/sysklogd/sysklogd_2.1.1.bb | 3 - .../recipes-extended/sysklogd/sysklogd_2.1.2.bb | 3 + .../wget/wget/0002-improve-reproducibility.patch | 9 +- .../meta/recipes-gnome/epiphany/epiphany_3.34.4.bb | 21 -- .../meta/recipes-gnome/epiphany/epiphany_3.36.1.bb | 21 ++ ...-correctly-set-internal-vapi-dependencies.patch | 45 +++ poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb | 1 + .../recipes-gnome/libdazzle/libdazzle_3.34.1.bb | 20 -- .../recipes-gnome/libdazzle/libdazzle_3.36.0.bb | 20 ++ poky/meta/recipes-gnome/libhandy/libhandy_git.bb | 21 ++ .../recipes-graphics/libepoxy/libepoxy_1.5.4.bb | 8 - .../recipes-graphics/libva/libva-initial_2.6.1.bb | 9 + poky/meta/recipes-graphics/libva/libva.inc | 27 ++ poky/meta/recipes-graphics/libva/libva_2.6.1.bb | 25 +- .../matchbox-wm/0001-Fix-build-with-gcc-10.patch | 41 +++ .../matchbox-wm/matchbox-wm_1.2.2.bb | 3 +- .../files/0001-Support-gcc10-compilation.patch | 111 +++++++ .../menu-cache/menu-cache_1.1.0.bb | 6 +- poky/meta/recipes-graphics/mesa/mesa.inc | 11 +- poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb | 2 - ...ild-demos-with-questionably-licensed-data.patch | 13 +- .../recipes-graphics/vulkan/vulkan-demos_git.bb | 6 +- .../vulkan/vulkan-headers_1.1.126.0.bb | 18 -- .../vulkan/vulkan-headers_1.2.135.0.bb | 18 ++ .../vulkan/vulkan-loader_1.1.126.0.bb | 38 --- .../vulkan/vulkan-loader_1.2.135.0.bb | 38 +++ .../vulkan/vulkan-tools_1.1.126.0.bb | 31 -- .../vulkan/vulkan-tools_1.2.135.0.bb | 31 ++ .../recipes-graphics/wayland/libinput/run-ptest | 9 + .../recipes-graphics/wayland/libinput_1.15.2.bb | 40 --- .../recipes-graphics/wayland/libinput_1.15.5.bb | 50 +++ ...0001-build-Fix-strndup-detection-on-MinGW.patch | 7 +- .../recipes-graphics/xorg-app/xorg-app-common.inc | 2 - .../meta/recipes-graphics/xorg-app/xrandr_1.5.1.bb | 2 + .../xorg-driver/xorg-driver-common.inc | 1 - .../recipes-graphics/xorg-font/encodings_1.0.5.bb | 2 +- .../recipes-graphics/xorg-font/font-alias_1.0.3.bb | 2 +- .../xorg-font/xorg-font-common.inc | 2 - .../recipes-graphics/xorg-lib/libxxf86vm_1.1.4.bb | 2 + .../recipes-graphics/xorg-xserver/xserver-xorg.inc | 1 - .../xorg-xserver/xserver-xorg_1.20.8.bb | 2 - poky/meta/recipes-kernel/dtc/dtc_1.5.1.bb | 10 - poky/meta/recipes-kernel/dtc/dtc_1.6.0.bb | 10 + poky/meta/recipes-kernel/linux/linux-yocto.inc | 2 - poky/meta/recipes-kernel/powertop/powertop_2.10.bb | 13 +- .../wireless-regdb/wireless-regdb_2019.06.03.bb | 44 --- .../wireless-regdb/wireless-regdb_2020.04.29.bb | 43 +++ .../meta/recipes-support/atk/at-spi2-atk_2.34.2.bb | 2 - .../gdbm-fix-link-failure-against-gcc-10.patch | 47 +++ poky/meta/recipes-support/gdbm/gdbm_1.18.1.bb | 3 +- .../meta/recipes-support/gnutls/libtasn1_4.16.0.bb | 2 - .../icu/icu/0001-Fix-big-endian-build.patch | 28 -- .../icu/icu/0001-icu-Added-armeb-support.patch | 6 +- .../recipes-support/icu/icu/CVE-2020-10531.patch | 128 -------- .../icu/icu/icu-pkgdata-large-cmd.patch | 49 --- poky/meta/recipes-support/icu/icu_66.1.bb | 67 ---- poky/meta/recipes-support/icu/icu_67.1.bb | 63 ++++ .../0001-tests-do-not-statically-link-a-test.patch | 32 +- ...ce-pthread_yield-with-standard-sched_yiel.patch | 24 ++ poky/meta/recipes-support/libcap/libcap_2.32.bb | 77 ----- poky/meta/recipes-support/libcap/libcap_2.33.bb | 78 +++++ ...d-target-to-only-build-tests-not-run-them.patch | 38 --- ...k-header-files-of-openssl-only-if-enable_.patch | 36 --- .../nettle/nettle-3.5.1/dlopen-test.patch | 21 -- .../recipes-support/nettle/nettle-3.5.1/run-ptest | 36 --- ...d-target-to-only-build-tests-not-run-them.patch | 45 +++ ...k-header-files-of-openssl-only-if-enable_.patch | 36 +++ .../nettle/nettle-3.6/dlopen-test.patch | 29 ++ .../recipes-support/nettle/nettle-3.6/run-ptest | 36 +++ poky/meta/recipes-support/nettle/nettle_3.5.1.bb | 55 ---- poky/meta/recipes-support/nettle/nettle_3.6.bb | 54 ++++ poky/meta/recipes-support/re2c/re2c_1.0.1.bb | 3 +- ...old-school-asignment-to-avoid-gcc-4.8-err.patch | 27 -- poky/meta/recipes-support/vte/vte_0.60.2.bb | 4 +- poky/scripts/runqemu | 40 ++- poky/scripts/tiny/ksize.py | 6 +- 259 files changed, 5400 insertions(+), 5889 deletions(-) create mode 100644 poky/meta/conf/machine/include/tune-cortexa55.inc create mode 100644 poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc delete mode 100644 poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb delete mode 100644 poky/meta/recipes-connectivity/avahi/avahi.inc delete mode 100644 poky/meta/recipes-connectivity/avahi/avahi_0.7.bb create mode 100644 poky/meta/recipes-connectivity/avahi/avahi_0.8.bb delete mode 100644 poky/meta/recipes-connectivity/avahi/files/fix-CVE-2017-6519.patch create mode 100644 poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Don-t-misdetect-stpcpy-on-windows-platforms-on.patch delete mode 100644 poky/meta/recipes-core/glibc/glibc/0030-Improve-IFUNC-check-BZ-25506.patch delete mode 100644 poky/meta/recipes-core/glibc/glibc/0031-Fix-build-with-GCC-10-when-long-double-double.patch delete mode 100644 poky/meta/recipes-core/glibc/glibc/CVE-2020-10029.patch create mode 100644 poky/meta/recipes-core/ovmf/ovmf/0001-ovmf-Update-to-latest.patch delete mode 100644 poky/meta/recipes-core/ovmf/ovmf/0004-ovmf-Update-to-latest.patch create mode 100644 poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch delete mode 100644 poky/meta/recipes-devtools/build-compare/files/Ignore-DWARF-sections.patch delete mode 100644 poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-don-t-try-to-rehash-a-deleted-directory.patch delete mode 100644 poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-misc-create_inode.c-set-dir-s-mode-correctly.patch delete mode 100644 poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/CVE-2019-5188.patch delete mode 100644 poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsck-fix-use-after-free-in-calculate_tree.patch delete mode 100644 poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.4.bb create mode 100644 poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1.inc create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0002-gcc-poison-system-directories.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0004-64-bit-multilib-hack.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0005-optional-libstdc.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0008-fortran-cross-compile-hack.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0009-cpp-honor-sysroot.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0012-gcc-Fix-argument-list-too-long-error.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0013-Disable-sdt.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0014-libtool.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0018-export-CPP.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0019-Ensure-target-gcc-headers-can-be-included.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0022-aarch64-Add-support-for-musl-ldso.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0024-handle-sysroot-support-for-nativesdk-gcc.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0026-Fix-various-_FOR_BUILD-and-related-variables.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0030-sync-gcc-stddef.h-with-musl.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0031-fix-segmentation-fault-in-precompiled-header-generat.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0032-Fix-for-testsuite-failure.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0033-Re-introduce-spe-commandline-options.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0037-mingw32-Enable-operation_not_supported.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3.inc delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0002-gcc-poison-system-directories.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0004-64-bit-multilib-hack.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0005-optional-libstdc.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0006-COLLECT_GCC_OPTIONS.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0008-fortran-cross-compile-hack.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0009-cpp-honor-sysroot.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0010-MIPS64-Default-to-N64-ABI.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0012-gcc-Fix-argument-list-too-long-error.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0013-Disable-sdt.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0014-libtool.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0018-export-CPP.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0019-Ensure-target-gcc-headers-can-be-included.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0020-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0021-Don-t-search-host-directory-during-relink-if-inst_pr.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0022-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0023-aarch64-Add-support-for-musl-ldso.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0024-libcc1-fix-libcc1-s-install-path-and-rpath.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0025-handle-sysroot-support-for-nativesdk-gcc.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0027-Fix-various-_FOR_BUILD-and-related-variables.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0028-nios2-Define-MUSL_DYNAMIC_LINKER.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0029-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0030-ldbl128-config.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0031-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0032-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0033-sync-gcc-stddef.h-with-musl.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0034-fix-segmentation-fault-in-precompiled-header-generat.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0035-Fix-for-testsuite-failure.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0036-Re-introduce-spe-commandline-options.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.3/0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-cross-canadian_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-cross_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-crosssdk_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-runtime_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-sanitizers_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-source_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/gcc_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/libgcc-initial_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/libgcc-initial_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/libgcc_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/libgcc_9.3.bb create mode 100644 poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb delete mode 100644 poky/meta/recipes-devtools/gcc/libgfortran_9.3.bb delete mode 100644 poky/meta/recipes-devtools/git/git_2.24.1.bb create mode 100644 poky/meta/recipes-devtools/git/git_2.26.2.bb delete mode 100644 poky/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch delete mode 100644 poky/meta/recipes-devtools/libcomps/libcomps/0001-Make-__comps_objmrtree_all-static-inline.patch create mode 100644 poky/meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch create mode 100644 poky/meta/recipes-devtools/libcomps/libcomps_0.1.15.bb delete mode 100644 poky/meta/recipes-devtools/libcomps/libcomps_git.bb create mode 100644 poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch delete mode 100644 poky/meta/recipes-devtools/python/python3-git_3.0.5.bb create mode 100644 poky/meta/recipes-devtools/python/python3-git_3.1.2.bb create mode 100644 poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch create mode 100644 poky/meta/recipes-extended/cpio/cpio-2.13/0002-src-global.c-Remove-superfluous-declaration-of-progr.patch create mode 100644 poky/meta/recipes-extended/newt/files/0002-don-t-ignore-CFLAGS-when-building-snack.patch delete mode 100644 poky/meta/recipes-extended/newt/files/pie-flags.patch delete mode 100644 poky/meta/recipes-extended/sysklogd/files/0001-fix-one-rarely-reproduced-parallel-build-problem.patch delete mode 100644 poky/meta/recipes-extended/sysklogd/sysklogd_2.1.1.bb create mode 100644 poky/meta/recipes-extended/sysklogd/sysklogd_2.1.2.bb delete mode 100644 poky/meta/recipes-gnome/epiphany/epiphany_3.34.4.bb create mode 100644 poky/meta/recipes-gnome/epiphany/epiphany_3.36.1.bb create mode 100644 poky/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-set-internal-vapi-dependencies.patch delete mode 100644 poky/meta/recipes-gnome/libdazzle/libdazzle_3.34.1.bb create mode 100644 poky/meta/recipes-gnome/libdazzle/libdazzle_3.36.0.bb create mode 100644 poky/meta/recipes-gnome/libhandy/libhandy_git.bb create mode 100644 poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb create mode 100644 poky/meta/recipes-graphics/libva/libva.inc create mode 100644 poky/meta/recipes-graphics/matchbox-wm/matchbox-wm/0001-Fix-build-with-gcc-10.patch create mode 100644 poky/meta/recipes-graphics/menu-cache/files/0001-Support-gcc10-compilation.patch delete mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb create mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.135.0.bb delete mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb create mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.135.0.bb delete mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb create mode 100644 poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.135.0.bb create mode 100644 poky/meta/recipes-graphics/wayland/libinput/run-ptest delete mode 100644 poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb create mode 100644 poky/meta/recipes-graphics/wayland/libinput_1.15.5.bb delete mode 100644 poky/meta/recipes-kernel/dtc/dtc_1.5.1.bb create mode 100644 poky/meta/recipes-kernel/dtc/dtc_1.6.0.bb delete mode 100644 poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2019.06.03.bb create mode 100644 poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2020.04.29.bb create mode 100644 poky/meta/recipes-support/gdbm/files/gdbm-fix-link-failure-against-gcc-10.patch delete mode 100644 poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch delete mode 100644 poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch delete mode 100644 poky/meta/recipes-support/icu/icu/icu-pkgdata-large-cmd.patch delete mode 100644 poky/meta/recipes-support/icu/icu_66.1.bb create mode 100644 poky/meta/recipes-support/icu/icu_67.1.bb create mode 100644 poky/meta/recipes-support/libcap/files/0004-psx.c-replace-pthread_yield-with-standard-sched_yiel.patch delete mode 100644 poky/meta/recipes-support/libcap/libcap_2.32.bb create mode 100644 poky/meta/recipes-support/libcap/libcap_2.33.bb delete mode 100644 poky/meta/recipes-support/nettle/nettle-3.5.1/Add-target-to-only-build-tests-not-run-them.patch delete mode 100644 poky/meta/recipes-support/nettle/nettle-3.5.1/check-header-files-of-openssl-only-if-enable_.patch delete mode 100644 poky/meta/recipes-support/nettle/nettle-3.5.1/dlopen-test.patch delete mode 100644 poky/meta/recipes-support/nettle/nettle-3.5.1/run-ptest create mode 100644 poky/meta/recipes-support/nettle/nettle-3.6/Add-target-to-only-build-tests-not-run-them.patch create mode 100644 poky/meta/recipes-support/nettle/nettle-3.6/check-header-files-of-openssl-only-if-enable_.patch create mode 100644 poky/meta/recipes-support/nettle/nettle-3.6/dlopen-test.patch create mode 100644 poky/meta/recipes-support/nettle/nettle-3.6/run-ptest delete mode 100644 poky/meta/recipes-support/nettle/nettle_3.5.1.bb create mode 100644 poky/meta/recipes-support/nettle/nettle_3.6.bb delete mode 100644 poky/meta/recipes-support/vte/vte/0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch (limited to 'poky/meta/recipes-graphics') diff --git a/poky/meta-poky/conf/distro/poky.conf b/poky/meta-poky/conf/distro/poky.conf index 91779e4e4..37493ed36 100644 --- a/poky/meta-poky/conf/distro/poky.conf +++ b/poky/meta-poky/conf/distro/poky.conf @@ -1,7 +1,7 @@ DISTRO = "poky" DISTRO_NAME = "Poky (Yocto Project Reference Distro)" -DISTRO_VERSION = "3.1" -DISTRO_CODENAME = "dunfell" +DISTRO_VERSION = "3.1+snapshot-${DATE}" +DISTRO_CODENAME = "master" SDK_VENDOR = "-pokysdk" SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${DATE}', 'snapshot')}" @@ -77,11 +77,10 @@ OELAYOUT_ABI = "12" INHERIT += "poky-sanity" # QA check settings - a little stricter than the OE-Core defaults -WARN_TO_ERROR_QA = "already-stripped compile-host-path install-host-path \ - installed-vs-shipped ldflags pn-overrides rpaths staticdev \ - unknown-configure-option useless-rpaths" -WARN_QA_remove = "${WARN_TO_ERROR_QA}" -ERROR_QA_append = " ${WARN_TO_ERROR_QA}" +# (none currently necessary as we now match OE-Core) +#WARN_TO_ERROR_QA = "X" +#WARN_QA_remove = "${WARN_TO_ERROR_QA}" +#ERROR_QA_append = " ${WARN_TO_ERROR_QA}" require conf/distro/include/poky-world-exclude.inc require conf/distro/include/no-static-libs.inc diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass index 7fc8f33a9..8b19f445f 100644 --- a/poky/meta/classes/insane.bbclass +++ b/poky/meta/classes/insane.bbclass @@ -22,11 +22,9 @@ QA_SANE = "True" # Elect whether a given type of error is a warning or error, they may # have been set by other files. -WARN_QA ?= "ldflags useless-rpaths rpaths staticdev libdir xorg-driver-abi \ - textrel already-stripped incompatible-license files-invalid \ - installed-vs-shipped compile-host-path install-host-path \ - pn-overrides infodir build-deps src-uri-bad \ - unknown-configure-option symlink-to-sysroot multilib \ +WARN_QA ?= " libdir xorg-driver-abi \ + textrel incompatible-license files-invalid \ + infodir build-deps src-uri-bad symlink-to-sysroot multilib \ invalid-packageconfig host-user-contaminated uppercase-pn patch-fuzz \ mime mime-xdg \ " @@ -36,6 +34,9 @@ ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ version-going-backwards expanded-d invalid-chars \ license-checksum dev-elf file-rdeps configure-unsafe \ configure-gettext perllocalpod shebang-size \ + already-stripped installed-vs-shipped ldflags compile-host-path \ + install-host-path pn-overrides unknown-configure-option \ + useless-rpaths rpaths staticdev \ " # Add usrmerge QA check based on distro feature ERROR_QA_append = "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', ' usrmerge', '', d)}" diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass index a72464546..6846d6040 100644 --- a/poky/meta/classes/kernel.bbclass +++ b/poky/meta/classes/kernel.bbclass @@ -691,7 +691,13 @@ kernel_do_deploy() { if [ ${MODULE_TARBALL_DEPLOY} = "1" ] && (grep -q -i -e '^CONFIG_MODULES=y$' .config); then mkdir -p ${D}${root_prefix}/lib - tar -cvzf $deployDir/modules-${MODULE_TARBALL_NAME}.tgz -C ${D}${root_prefix} lib + if [ -n "${SOURCE_DATE_EPOCH}" ]; then + TAR_ARGS="--sort=name --clamp-mtime --mtime=@${SOURCE_DATE_EPOCH}" + else + TAR_ARGS="" + fi + tar $TAR_ARGS -cv -C ${D}${root_prefix} lib | gzip -9n > $deployDir/modules-${MODULE_TARBALL_NAME}.tgz + ln -sf modules-${MODULE_TARBALL_NAME}.tgz $deployDir/modules-${MODULE_TARBALL_LINK_NAME}.tgz fi diff --git a/poky/meta/classes/meson.bbclass b/poky/meta/classes/meson.bbclass index 06034e8b4..e9628033c 100644 --- a/poky/meta/classes/meson.bbclass +++ b/poky/meta/classes/meson.bbclass @@ -164,7 +164,8 @@ meson_do_configure_prepend_class-native() { python meson_do_qa_configure() { import re warn_re = re.compile(r"^WARNING: Cross property (.+) is using default value (.+)$", re.MULTILINE) - log = open(d.expand("${B}/meson-logs/meson-log.txt")).read() + with open(d.expand("${B}/meson-logs/meson-log.txt")) as logfile: + log = logfile.read() for (prop, value) in warn_re.findall(log): bb.warn("Meson cross property %s used without explicit assignment, defaulting to %s" % (prop, value)) } diff --git a/poky/meta/classes/populate_sdk_base.bbclass b/poky/meta/classes/populate_sdk_base.bbclass index f85c3b9f6..990505e89 100644 --- a/poky/meta/classes/populate_sdk_base.bbclass +++ b/poky/meta/classes/populate_sdk_base.bbclass @@ -58,7 +58,7 @@ python () { d.setVar('SDK_ARCHIVE_DEPENDS', 'zip-native') # SDK_ARCHIVE_CMD used to generate archived sdk ${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE} from input dir ${SDK_OUTPUT}/${SDKPATH} to output dir ${SDKDEPLOYDIR} # recommand to cd into input dir first to avoid archive with buildpath - d.setVar('SDK_ARCHIVE_CMD', 'cd ${SDK_OUTPUT}/${SDKPATH}; zip -r ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE} .') + d.setVar('SDK_ARCHIVE_CMD', 'cd ${SDK_OUTPUT}/${SDKPATH}; zip -r -y ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE} .') else: d.setVar('SDK_ARCHIVE_DEPENDS', 'xz-native') d.setVar('SDK_ARCHIVE_CMD', 'cd ${SDK_OUTPUT}/${SDKPATH}; tar ${SDKTAROPTS} -cf - . | xz ${SDK_XZ_OPTIONS} > ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE}') diff --git a/poky/meta/classes/pypi.bbclass b/poky/meta/classes/pypi.bbclass index e5d7ab3ce..87b4c85fc 100644 --- a/poky/meta/classes/pypi.bbclass +++ b/poky/meta/classes/pypi.bbclass @@ -22,5 +22,5 @@ SECTION = "devel/python" SRC_URI += "${PYPI_SRC_URI}" S = "${WORKDIR}/${PYPI_PACKAGE}-${PV}" -UPSTREAM_CHECK_URI ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/" -UPSTREAM_CHECK_REGEX ?= "/${PYPI_PACKAGE}/(?P(\d+[\.\-_]*)+)" +UPSTREAM_CHECK_URI ?= "https://pypi.org/project/${PYPI_PACKAGE}/" +UPSTREAM_CHECK_REGEX ?= "/${PYPI_PACKAGE}/(?P(\d+[\.\-_]*)+)/" diff --git a/poky/meta/classes/sstate.bbclass b/poky/meta/classes/sstate.bbclass index c73c3b42a..aa9c30b4e 100644 --- a/poky/meta/classes/sstate.bbclass +++ b/poky/meta/classes/sstate.bbclass @@ -690,7 +690,10 @@ def sstate_package(ss, d): if not os.path.exists(siginfo): bb.siggen.dump_this_task(siginfo, d) else: - os.utime(siginfo, None) + try: + os.utime(siginfo, None) + except PermissionError: + pass return @@ -776,7 +779,7 @@ sstate_task_postfunc[dirs] = "${WORKDIR}" sstate_create_package () { # Exit early if it already exists if [ -e ${SSTATE_PKG} ]; then - touch ${SSTATE_PKG} + [ ! -w ${SSTATE_PKG} ] || touch ${SSTATE_PKG} return fi @@ -810,7 +813,7 @@ sstate_create_package () { else rm $TFILE fi - touch ${SSTATE_PKG} + [ ! -w ${SSTATE_PKG} ] || touch ${SSTATE_PKG} } python sstate_sign_package () { @@ -1122,7 +1125,11 @@ python sstate_eventhandler() { if not os.path.exists(siginfo): bb.siggen.dump_this_task(siginfo, d) else: - os.utime(siginfo, None) + try: + os.utime(siginfo, None) + except PermissionError: + pass + } SSTATE_PRUNE_OBSOLETEWORKDIR ?= "1" diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf index 4b544a22c..bdade79ab 100644 --- a/poky/meta/conf/bitbake.conf +++ b/poky/meta/conf/bitbake.conf @@ -718,6 +718,10 @@ export PKG_CONFIG_DISABLE_UNINSTALLED = "yes" export PKG_CONFIG_SYSTEM_LIBRARY_PATH = "${base_libdir}:${libdir}" export PKG_CONFIG_SYSTEM_INCLUDE_PATH = "${includedir}" +# Don't allow git to chdir up past WORKDIR so that it doesn't detect the OE +# repository when building a recipe +export GIT_CEILING_DIRECTORIES = "${WORKDIR}" + ### ### Config file processing ### @@ -878,7 +882,7 @@ BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH BBSERVER DL_DI WARN_QA ERROR_QA WORKDIR STAMPCLEAN PKGDATA_DIR BUILD_ARCH SSTATE_PKGARCH \ BB_WORKERCONTEXT BB_LIMITEDDEPS BB_UNIHASH extend_recipe_sysroot DEPLOY_DIR \ SSTATE_HASHEQUIV_METHOD SSTATE_HASHEQUIV_REPORT_TASKDATA \ - SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE" + SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE GIT_CEILING_DIRECTORIES" BB_HASHCONFIG_WHITELIST ?= "${BB_HASHBASE_WHITELIST} DATE TIME SSH_AGENT_PID \ SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \ PARALLEL_MAKE BB_NUMBER_THREADS BB_ORIGENV BB_INVALIDCONF BBINCLUDED \ diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc index 340cda330..256666c0e 100644 --- a/poky/meta/conf/distro/include/maintainers.inc +++ b/poky/meta/conf/distro/include/maintainers.inc @@ -57,7 +57,6 @@ RECIPE_MAINTAINER_pn-autoconf = "Robert Yang " RECIPE_MAINTAINER_pn-autoconf-archive = "Robert Yang " RECIPE_MAINTAINER_pn-automake = "Robert Yang " RECIPE_MAINTAINER_pn-avahi = "Yi Zhao " -RECIPE_MAINTAINER_pn-avahi-ui = "Yi Zhao " RECIPE_MAINTAINER_pn-babeltrace = "Alexander Kanavin " RECIPE_MAINTAINER_pn-babeltrace2 = "Alexander Kanavin " RECIPE_MAINTAINER_pn-base-files = "Anuj Mittal " @@ -194,7 +193,7 @@ RECIPE_MAINTAINER_pn-gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj " RECIPE_MAINTAINER_pn-libubootenv = "Stefano Babic " RECIPE_MAINTAINER_pn-libva = "Anuj Mittal " +RECIPE_MAINTAINER_pn-libva-initial = "Anuj Mittal " RECIPE_MAINTAINER_pn-libva-utils = "Anuj Mittal " RECIPE_MAINTAINER_pn-libvorbis = "Tanu Kaskinen " RECIPE_MAINTAINER_pn-libwebp = "Alexander Kanavin " diff --git a/poky/meta/conf/distro/include/ptest-packagelists.inc b/poky/meta/conf/distro/include/ptest-packagelists.inc index c13ff724b..ab44757a1 100644 --- a/poky/meta/conf/distro/include/ptest-packagelists.inc +++ b/poky/meta/conf/distro/include/ptest-packagelists.inc @@ -72,6 +72,7 @@ PTESTS_SLOW = "\ glib-2.0-ptest \ gstreamer1.0-ptest \ libevent-ptest \ + libinput-ptest \ lttng-tools-ptest \ openssh-ptest \ openssl-ptest \ diff --git a/poky/meta/conf/distro/include/tcmode-default.inc b/poky/meta/conf/distro/include/tcmode-default.inc index 849bcf690..ab4333144 100644 --- a/poky/meta/conf/distro/include/tcmode-default.inc +++ b/poky/meta/conf/distro/include/tcmode-default.inc @@ -16,7 +16,7 @@ PREFERRED_PROVIDER_virtual/${SDK_PREFIX}compilerlibs = "nativesdk-gcc-runtime" # Default libc config PREFERRED_PROVIDER_virtual/gettext ??= "gettext" -GCCVERSION ?= "9.%" +GCCVERSION ?= "10.%" SDKGCCVERSION ?= "${GCCVERSION}" BINUVERSION ?= "2.34%" GDBVERSION ?= "9.%" diff --git a/poky/meta/conf/documentation.conf b/poky/meta/conf/documentation.conf index c6544b969..eee3c43ff 100644 --- a/poky/meta/conf/documentation.conf +++ b/poky/meta/conf/documentation.conf @@ -64,6 +64,9 @@ ALTERNATIVE[doc] = "Lists commands in a package that need an alternative binary ALTERNATIVE_LINK_NAME[doc] = "Used by the alternatives system to map duplicated commands to actual locations." ALTERNATIVE_PRIORITY[doc] = "Used by the alternatives system to create default priorities for duplicated commands." ALTERNATIVE_TARGET[doc] = "Used by the alternatives system to create default link locations for duplicated commands." +ANY_OF_COMBINED_FEATURES[doc] = "When a recipe inherits the features_check class, at least one item in this variable must be included in COMBINED_FEATURES." +ANY_OF_DISTRO_FEATURES[doc] = "When a recipe inherits the features_check class, at least one item in this variable must be included in DISTRO_FEATURES." +ANY_OF_MACHINE_FEATURES[doc] = "When a recipe inherits the features_check class, at least one item in this variable must be included in MACHINE_FEATURES." ASSUME_PROVIDED[doc] = "List of packages (recipes actually) that are assumed to be implicitly available. BitBake does not build these packages." ASSUME_SHLIBS[doc] = "List of shlib:package[_version] mappings. Useful for lib packages in ASSUME_PROVIDED, for which automatic shlib dependency tracking does not work." AUTHOR[doc] = "Email address used to contact the original author(s) in order to send patches and forward bugs." @@ -114,7 +117,9 @@ COMPATIBLE_MACHINE[doc] = "A regular expression that resolves to one or more tar COMPLEMENTARY_GLOB[doc] = "Defines wildcards to match when installing a list of complementary packages for all the packages installed in an image." CONFFILES[doc] = "Identifies editable or configurable files that are part of a package." CONFIG_SITE[doc] = "A list of files that contains autoconf test results relevant to the current build. This variable is used by the Autotools utilities when running configure." -CONFLICT_DISTRO_FEATURES[doc] = "When a recipe inherits the features_check class, this variable identifies distribution features that would be in conflict should the recipe be built." +CONFLICT_COMBINED_FEATURES[doc] = "When a recipe inherits the features_check class, no item in this variable can be included in COMBINED_FEATURES." +CONFLICT_DISTRO_FEATURES[doc] = "When a recipe inherits the features_check class, no item in this variable can be included in DISTRO_FEATURES." +CONFLICT_MACHINE_FEATURES[doc] = "When a recipe inherits the features_check class, no item in this variable can be included in MACHINE_FEATURES." CORE_IMAGE_EXTRA_INSTALL[doc] = "Specifies the list of packages to be added to the image. You should only set this variable in the conf/local.conf file in the Build Directory." COREBASE[doc] = "Specifies the parent directory of the OpenEmbedded Core Metadata layer (i.e. meta)." CONF_VERSION[doc] = "Tracks the version of local.conf. Increased each time build/conf/ changes incompatibly." @@ -344,7 +349,9 @@ QMAKE_PROFILES[doc] = "Specifies your own subset of .pro files to be built for u RCONFLICTS[doc] = "The list of packages that conflict with another package. Note that the package will not be installed if the conflicting packages are not first removed." RDEPENDS[doc] = "Lists a package's runtime dependencies (i.e. other packages) that must be installed for the package to be built. They must be the names of other packages as listed in the PACKAGES variable, not recipe names (PN)." -REQUIRED_DISTRO_FEATURES[doc] = "When a recipe inherits the features_check class, this variable identifies distribution features that must exist in the current configuration in order for the OpenEmbedded build system to build the recipe." +REQUIRED_COMBINED_FEATURES[doc] = "When a recipe inherits the features_check class, all items in this variable must be included in COMBINED_FEATURES." +REQUIRED_DISTRO_FEATURES[doc] = "When a recipe inherits the features_check class, all items in this variable must be included in DISTRO_FEATURES." +REQUIRED_MACHINE_FEATURES[doc] = "When a recipe inherits the features_check class, all items in this variable must be included in MACHINE_FEATURES." RM_WORK_EXCLUDE[doc] = "With rm_work enabled, this variable specifies a list of packages whose work directories should not be removed." ROOTFS[doc] = "Indicates a filesystem image to include as the root filesystem." ROOTFS_POSTPROCESS_COMMAND[doc] = "Added by classes to run post processing commands once the OpenEmbedded build system has created the root filesystem." diff --git a/poky/meta/conf/machine/include/tune-cortexa55.inc b/poky/meta/conf/machine/include/tune-cortexa55.inc new file mode 100644 index 000000000..8242cc9ce --- /dev/null +++ b/poky/meta/conf/machine/include/tune-cortexa55.inc @@ -0,0 +1,17 @@ +DEFAULTTUNE ?= "cortexa55" + +TUNEVALID[cortexa55] = "Enable Cortex-A55 specific processor optimizations" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa55', ' -mcpu=cortex-a55', '', d)}" + +require conf/machine/include/arm/arch-armv8a.inc + +# Little Endian base configs +AVAILTUNES += "cortexa55 cortexa55-crypto" +ARMPKGARCH_tune-cortexa55 = "cortexa55" +ARMPKGARCH_tune-cortexa55-crypto = "cortexa55" +TUNE_FEATURES_tune-cortexa55 = "aarch64 cortexa55 crc" +TUNE_FEATURES_tune-cortexa55-crypto = "aarch64 cortexa55 crc crypto" +PACKAGE_EXTRA_ARCHS_tune-cortexa55 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa55" +PACKAGE_EXTRA_ARCHS_tune-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa55 cortexa55-crypto" +BASE_LIB_tune-cortexa55 = "lib64" +BASE_LIB_tune-cortexa55-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc new file mode 100644 index 000000000..8df418227 --- /dev/null +++ b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc @@ -0,0 +1,23 @@ +DEFAULTTUNE ?= "cortexa73-cortexa53" + +require conf/machine/include/arm/arch-armv8a.inc + +TUNEVALID[cortexa73-cortexa53] = "Enable big.LITTLE Cortex-A73.Cortex-A53 specific processor optimizations" + +TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" + +MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", "cortexa73-cortexa53:", "" ,d)}" + +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", " -mtune=cortex-a73.cortex-a53", "", d)}" + +# cortexa73.cortexa53 implies crc support +AVAILTUNES += "cortexa73-cortexa53 cortexa73-cortexa53-crypto" +ARMPKGARCH_tune-cortexa73-cortexa53 = "cortexa73-cortexa53" +ARMPKGARCH_tune-cortexa73-cortexa53-crypto = "cortexa73-cortexa53" +TUNE_FEATURES_tune-cortexa73-cortexa53 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa73-cortexa53" +TUNE_FEATURES_tune-cortexa73-cortexa53-crypto = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa73-cortexa53" +PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa73-cortexa53" +PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73-cortexa53 cortexa73-cortexa53-crypto" +BASE_LIB_tune-cortexa73-cortexa53 = "lib64" +BASE_LIB_tune-cortexa73-cortexa53-crypto = "lib64" + diff --git a/poky/meta/lib/oe/package_manager.py b/poky/meta/lib/oe/package_manager.py index b0660411e..c055d2b0f 100644 --- a/poky/meta/lib/oe/package_manager.py +++ b/poky/meta/lib/oe/package_manager.py @@ -805,8 +805,6 @@ class RpmPM(PackageManager): open(platformconfdir + "macros", 'w').write("%_transaction_color 7\n") if self.d.getVar('RPM_PREFER_ELF_ARCH'): open(platformconfdir + "macros", 'a').write("%%_prefer_color %s" % (self.d.getVar('RPM_PREFER_ELF_ARCH'))) - else: - open(platformconfdir + "macros", 'a').write("%_prefer_color 7") if self.d.getVar('RPM_SIGN_PACKAGES') == '1': signer = get_signer(self.d, self.d.getVar('RPM_GPG_BACKEND')) diff --git a/poky/meta/lib/oeqa/sdkext/cases/devtool.py b/poky/meta/lib/oeqa/sdkext/cases/devtool.py index 8e92bf806..a5c6a76e0 100644 --- a/poky/meta/lib/oeqa/sdkext/cases/devtool.py +++ b/poky/meta/lib/oeqa/sdkext/cases/devtool.py @@ -20,10 +20,16 @@ class DevtoolTest(OESDKExtTestCase): myapp_src = os.path.join(cls.tc.esdk_files_dir, "myapp") cls.myapp_dst = os.path.join(cls.tc.sdk_dir, "myapp") shutil.copytree(myapp_src, cls.myapp_dst) + subprocess.check_output(['git', 'init', '.'], cwd=cls.myapp_dst) + subprocess.check_output(['git', 'add', '.'], cwd=cls.myapp_dst) + subprocess.check_output(['git', 'commit', '-m', "'test commit'"], cwd=cls.myapp_dst) myapp_cmake_src = os.path.join(cls.tc.esdk_files_dir, "myapp_cmake") cls.myapp_cmake_dst = os.path.join(cls.tc.sdk_dir, "myapp_cmake") shutil.copytree(myapp_cmake_src, cls.myapp_cmake_dst) + subprocess.check_output(['git', 'init', '.'], cwd=cls.myapp_cmake_dst) + subprocess.check_output(['git', 'add', '.'], cwd=cls.myapp_cmake_dst) + subprocess.check_output(['git', 'commit', '-m', "'test commit'"], cwd=cls.myapp_cmake_dst) @classmethod def tearDownClass(cls): diff --git a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py index 5c519ac3d..2b9c4998f 100644 --- a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py +++ b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py @@ -262,3 +262,35 @@ PNBLACKLIST[busybox] = "Don't build this" self.write_config(config) bitbake("--graphviz core-image-sato") + + def test_image_gen_debugfs(self): + """ + Summary: Check debugfs generation + Expected: 1. core-image-minimal can be build with IMAGE_GEN_DEBUGFS variable set + 2. debug filesystem is created when variable set + 3. debug symbols available + Product: oe-core + Author: Humberto Ibarra + Yeoh Ee Peng + """ + import glob + image_name = 'core-image-minimal' + features = 'IMAGE_GEN_DEBUGFS = "1"\n' + features += 'IMAGE_FSTYPES_DEBUGFS = "tar.bz2"\n' + features += 'MACHINE = "genericx86-64"\n' + self.write_config(features) + + bitbake(image_name) + deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE') + dbg_tar_file = os.path.join(deploy_dir_image, "*-dbg.rootfs.tar.bz2") + debug_files = glob.glob(dbg_tar_file) + self.assertNotEqual(len(debug_files), 0, 'debug filesystem not generated at %s' % dbg_tar_file) + result = runCmd('cd %s; tar xvf %s' % (deploy_dir_image, dbg_tar_file)) + self.assertEqual(result.status, 0, msg='Failed to extract %s: %s' % (dbg_tar_file, result.output)) + result = runCmd('find %s -name %s' % (deploy_dir_image, "udevadm")) + self.assertTrue("udevadm" in result.output, msg='Failed to find udevadm: %s' % result.output) + dbg_symbols_targets = result.output.splitlines() + self.assertTrue(dbg_symbols_targets, msg='Failed to split udevadm: %s' % dbg_symbols_targets) + for t in dbg_symbols_targets: + result = runCmd('objdump --syms %s | grep debug' % t) + self.assertTrue("debug" in result.output, msg='Failed to find debug symbol: %s' % result.output) diff --git a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py index 60cb2e01a..09d3de7ae 100644 --- a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py +++ b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py @@ -180,6 +180,8 @@ class TestImage(OESelftestTestCase): distro = oe.lsb.distro_identifier() if distro and distro == 'debian-8': self.skipTest('virgl isn\'t working with Debian 8') + if distro and distro == 'debian-9': + self.skipTest('virgl isn\'t working with Debian 9') if distro and distro == 'centos-7': self.skipTest('virgl isn\'t working with Centos 7') if distro and distro == 'opensuseleap-15.0': diff --git a/poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb b/poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb deleted file mode 100644 index 1510a0ef4..000000000 --- a/poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb +++ /dev/null @@ -1,54 +0,0 @@ -require avahi.inc - -inherit features_check -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -DEPENDS += "avahi" - -AVAHI_GTK = "gtk3" - -S = "${WORKDIR}/avahi-${PV}" - -PACKAGES += "${PN}-utils avahi-discover" - -FILES_${PN} = "${libdir}/libavahi-ui*.so.*" -FILES_${PN}-utils = "${bindir}/b* ${datadir}/applications/b*" -FILES_avahi-discover = "${datadir}/applications/avahi-discover.desktop \ - ${datadir}/avahi/interfaces/avahi-discover.ui \ - ${bindir}/avahi-discover-standalone \ - " - -do_install_append () { - rm ${D}${sysconfdir} -rf - if ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','true','false',d)}; then - if [ "${nonarch_base_libdir}" != "${base_libdir}" ];then - rm ${D}${nonarch_base_libdir} -rf - fi - else - rm ${D}${base_libdir} -rf - fi - rm ${D}${systemd_unitdir} -rf - # The ${systemd_unitdir} is /lib/systemd, so we need rmdir /lib, - # but not ${base_libdir} here. And the /lib may not exist - # whithout systemd. - [ ! -d ${D}/lib ] || rmdir ${D}/lib --ignore-fail-on-non-empty - rm ${D}${bindir}/avahi-b* - rm ${D}${bindir}/avahi-p* - rm ${D}${bindir}/avahi-r* - rm ${D}${bindir}/avahi-s* - rm ${D}${includedir}/avahi-c* -rf - rm ${D}${includedir}/avahi-g* -rf - rm ${D}${libdir}/libavahi-c* - rm ${D}${libdir}/libavahi-g* - rm ${D}${libdir}/pkgconfig/avahi-c* - rm ${D}${libdir}/pkgconfig/avahi-g* - rm ${D}${sbindir} -rf - rm ${D}${datadir}/avahi/a* - rm ${D}${datadir}/locale/ -rf - rm ${D}${datadir}/dbus* -rf - rm ${D}${mandir}/man1/a* - rm ${D}${mandir}/man5 -rf - rm ${D}${mandir}/man8 -rf - rm ${D}${libdir}/girepository-1.0/ -rf - rm ${D}${datadir}/gir-1.0/ -rf -} diff --git a/poky/meta/recipes-connectivity/avahi/avahi.inc b/poky/meta/recipes-connectivity/avahi/avahi.inc deleted file mode 100644 index 94fe6a16b..000000000 --- a/poky/meta/recipes-connectivity/avahi/avahi.inc +++ /dev/null @@ -1,86 +0,0 @@ -SUMMARY = "Avahi IPv4LL network address configuration daemon" -DESCRIPTION = 'Avahi is a fully LGPL framework for Multicast DNS Service Discovery. It \ -allows programs to publish and discover services and hosts running on a local network \ -with no specific configuration. This tool implements IPv4LL, "Dynamic Configuration of \ -IPv4 Link-Local Addresses" (IETF RFC3927), a protocol for automatic IP address \ -configuration from the link-local 169.254.0.0/16 range without the need for a central \ -server.' -AUTHOR = "Lennart Poettering " -HOMEPAGE = "http://avahi.org" -BUGTRACKER = "https://github.com/lathiat/avahi/issues" -SECTION = "network" - -# major part is under LGPLv2.1+, but several .dtd, .xsl, initscripts and -# python scripts are under GPLv2+ -LICENSE = "GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://avahi-common/address.h;endline=25;md5=b1d1d2cda1c07eb848ea7d6215712d9d \ - file://avahi-core/dns.h;endline=23;md5=6fe82590b81aa0ddea5095b548e2fdcb \ - file://avahi-daemon/main.c;endline=21;md5=9ee77368c5407af77caaef1b07285969 \ - file://avahi-client/client.h;endline=23;md5=f4ac741a25c4f434039ba3e18c8674cf" - -SRC_URI = "https://github.com/lathiat/avahi/releases/download/v${PV}/avahi-${PV}.tar.gz \ - file://fix-CVE-2017-6519.patch \ - " - -UPSTREAM_CHECK_URI = "https://github.com/lathiat/avahi/releases/" -SRC_URI[md5sum] = "d76c59d0882ac6c256d70a2a585362a6" -SRC_URI[sha256sum] = "57a99b5dfe7fdae794e3d1ee7a62973a368e91e414bd0dfa5d84434de5b14804" - -DEPENDS = "expat libcap libdaemon glib-2.0 intltool-native" - -# For gtk related PACKAGECONFIGs: gtk, gtk3 -AVAHI_GTK ?= "" - -PACKAGECONFIG ??= "dbus ${AVAHI_GTK}" -PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus" -PACKAGECONFIG[gtk] = "--enable-gtk,--disable-gtk,gtk+" -PACKAGECONFIG[gtk3] = "--enable-gtk3,--disable-gtk3,gtk+3" -PACKAGECONFIG[libdns_sd] = "--enable-compat-libdns_sd --enable-dbus,,dbus" - -inherit autotools pkgconfig gettext gobject-introspection - -EXTRA_OECONF = "--with-avahi-priv-access-group=adm \ - --disable-stack-protector \ - --disable-gdbm \ - --disable-mono \ - --disable-monodoc \ - --disable-qt3 \ - --disable-qt4 \ - --disable-python \ - --disable-doxygen-doc \ - --enable-manpages \ - ${EXTRA_OECONF_SYSVINIT} \ - ${EXTRA_OECONF_SYSTEMD} \ - " - -# The distro choice determines what init scripts are installed -EXTRA_OECONF_SYSVINIT = "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','--with-distro=debian','--with-distro=none',d)}" -EXTRA_OECONF_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES','systemd','--with-systemdsystemunitdir=${systemd_unitdir}/system/','--without-systemdsystemunitdir',d)}" - -do_configure_prepend() { - sed 's:AM_CHECK_PYMOD:echo "no pymod" #AM_CHECK_PYMOD:g' -i ${S}/configure.ac - - # This m4 file will get in the way of our introspection.m4 with special cross-compilation fixes - rm "${S}/common/introspection.m4" || true -} - -do_compile_prepend() { - export GIR_EXTRA_LIBS_PATH="${B}/avahi-gobject/.libs:${B}/avahi-common/.libs:${B}/avahi-client/.libs:${B}/avahi-glib/.libs" -} - -RRECOMMENDS_${PN}_append_libc-glibc = " libnss-mdns" - -do_install() { - autotools_do_install - rm -rf ${D}/run - rm -rf ${D}${datadir}/dbus-1/interfaces - test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 - rm -rf ${D}${libdir}/avahi -} - -PACKAGES =+ "${@bb.utils.contains("PACKAGECONFIG", "libdns_sd", "libavahi-compat-libdnssd", "", d)}" - -FILES_libavahi-compat-libdnssd = "${libdir}/libdns_sd.so.*" - -RPROVIDES_libavahi-compat-libdnssd = "libdns-sd" diff --git a/poky/meta/recipes-connectivity/avahi/avahi_0.7.bb b/poky/meta/recipes-connectivity/avahi/avahi_0.7.bb deleted file mode 100644 index 24523c7f8..000000000 --- a/poky/meta/recipes-connectivity/avahi/avahi_0.7.bb +++ /dev/null @@ -1,91 +0,0 @@ -require avahi.inc - -SRC_URI += "file://00avahi-autoipd \ - file://99avahi-autoipd \ - file://initscript.patch \ - file://0001-Fix-opening-etc-resolv.conf-error.patch \ - " - -inherit update-rc.d systemd useradd - -PACKAGES =+ "libavahi-gobject avahi-daemon libavahi-common libavahi-core libavahi-client avahi-dnsconfd libavahi-glib avahi-autoipd avahi-utils" - -LICENSE_libavahi-gobject = "LGPLv2.1+" -LICENSE_avahi-daemon = "LGPLv2.1+" -LICENSE_libavahi-common = "LGPLv2.1+" -LICENSE_libavahi-core = "LGPLv2.1+" -LICENSE_avahi-client = "LGPLv2.1+" -LICENSE_avahi-dnsconfd = "LGPLv2.1+" -LICENSE_libavahi-glib = "LGPLv2.1+" -LICENSE_avahi-autoipd = "LGPLv2.1+" -LICENSE_avahi-utils = "LGPLv2.1+" - -# As avahi doesn't put any files into PN, clear the files list to avoid problems -# if extra libraries appear. -FILES_${PN} = "" -FILES_avahi-autoipd = "${sbindir}/avahi-autoipd \ - ${sysconfdir}/avahi/avahi-autoipd.action \ - ${sysconfdir}/dhcp/*/avahi-autoipd \ - ${sysconfdir}/udhcpc.d/00avahi-autoipd \ - ${sysconfdir}/udhcpc.d/99avahi-autoipd" -FILES_libavahi-common = "${libdir}/libavahi-common.so.*" -FILES_libavahi-core = "${libdir}/libavahi-core.so.* ${libdir}/girepository-1.0/AvahiCore*.typelib" -FILES_avahi-daemon = "${sbindir}/avahi-daemon \ - ${sysconfdir}/avahi/avahi-daemon.conf \ - ${sysconfdir}/avahi/hosts \ - ${sysconfdir}/avahi/services \ - ${sysconfdir}/dbus-1 \ - ${sysconfdir}/init.d/avahi-daemon \ - ${datadir}/avahi/introspection/*.introspect \ - ${datadir}/avahi/avahi-service.dtd \ - ${datadir}/avahi/service-types \ - ${datadir}/dbus-1/system-services" -FILES_libavahi-client = "${libdir}/libavahi-client.so.*" -FILES_avahi-dnsconfd = "${sbindir}/avahi-dnsconfd \ - ${sysconfdir}/avahi/avahi-dnsconfd.action \ - ${sysconfdir}/init.d/avahi-dnsconfd" -FILES_libavahi-glib = "${libdir}/libavahi-glib.so.*" -FILES_libavahi-gobject = "${libdir}/libavahi-gobject.so.* ${libdir}/girepository-1.0/Avahi*.typelib" -FILES_avahi-utils = "${bindir}/avahi-*" - -RDEPENDS_${PN}-dev = "avahi-daemon (= ${EXTENDPKGV}) libavahi-core (= ${EXTENDPKGV})" -RDEPENDS_${PN}-dev += "${@["", " libavahi-client (= ${EXTENDPKGV})"][bb.utils.contains('PACKAGECONFIG', 'dbus', 1, 0, d)]}" - -RRECOMMENDS_avahi-daemon_append_libc-glibc = " libnss-mdns" - -CONFFILES_avahi-daemon = "${sysconfdir}/avahi/avahi-daemon.conf" - -USERADD_PACKAGES = "avahi-daemon avahi-autoipd" -USERADD_PARAM_avahi-daemon = "--system --home /run/avahi-daemon \ - --no-create-home --shell /bin/false \ - --user-group avahi" - -USERADD_PARAM_avahi-autoipd = "--system --home /run/avahi-autoipd \ - --no-create-home --shell /bin/false \ - --user-group \ - -c \"Avahi autoip daemon\" \ - avahi-autoipd" - -INITSCRIPT_PACKAGES = "avahi-daemon avahi-dnsconfd" -INITSCRIPT_NAME_avahi-daemon = "avahi-daemon" -INITSCRIPT_PARAMS_avahi-daemon = "defaults 21 19" -INITSCRIPT_NAME_avahi-dnsconfd = "avahi-dnsconfd" -INITSCRIPT_PARAMS_avahi-dnsconfd = "defaults 22 19" - -SYSTEMD_PACKAGES = "${PN}-daemon ${PN}-dnsconfd" -SYSTEMD_SERVICE_${PN}-daemon = "avahi-daemon.service" -SYSTEMD_SERVICE_${PN}-dnsconfd = "avahi-dnsconfd.service" - -do_install_append() { - install -d ${D}${sysconfdir}/udhcpc.d - install ${WORKDIR}/00avahi-autoipd ${D}${sysconfdir}/udhcpc.d - install ${WORKDIR}/99avahi-autoipd ${D}${sysconfdir}/udhcpc.d -} - -# At the time the postinst runs, dbus might not be setup so only restart if running -# Don't exit early, because update-rc.d needs to run subsequently. -pkg_postinst_avahi-daemon () { -if [ -z "$D" ]; then - killall -q -HUP dbus-daemon || true -fi -} diff --git a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb new file mode 100644 index 000000000..3a2c24f9f --- /dev/null +++ b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb @@ -0,0 +1,181 @@ +SUMMARY = "Avahi IPv4LL network address configuration daemon" +DESCRIPTION = 'Avahi is a fully LGPL framework for Multicast DNS Service Discovery. It \ +allows programs to publish and discover services and hosts running on a local network \ +with no specific configuration. This tool implements IPv4LL, "Dynamic Configuration of \ +IPv4 Link-Local Addresses" (IETF RFC3927), a protocol for automatic IP address \ +configuration from the link-local 169.254.0.0/16 range without the need for a central \ +server.' +AUTHOR = "Lennart Poettering " +HOMEPAGE = "http://avahi.org" +BUGTRACKER = "https://github.com/lathiat/avahi/issues" +SECTION = "network" + +# major part is under LGPLv2.1+, but several .dtd, .xsl, initscripts and +# python scripts are under GPLv2+ +LICENSE = "GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://avahi-common/address.h;endline=25;md5=b1d1d2cda1c07eb848ea7d6215712d9d \ + file://avahi-core/dns.h;endline=23;md5=6fe82590b81aa0ddea5095b548e2fdcb \ + file://avahi-daemon/main.c;endline=21;md5=9ee77368c5407af77caaef1b07285969 \ + file://avahi-client/client.h;endline=23;md5=f4ac741a25c4f434039ba3e18c8674cf" + +SRC_URI = "https://github.com/lathiat/avahi/releases/download/v${PV}/avahi-${PV}.tar.gz \ + file://00avahi-autoipd \ + file://99avahi-autoipd \ + file://initscript.patch \ + file://0001-Fix-opening-etc-resolv.conf-error.patch \ + " + +UPSTREAM_CHECK_URI = "https://github.com/lathiat/avahi/releases/" +SRC_URI[md5sum] = "229c6aa30674fc43c202b22c5f8c2be7" +SRC_URI[sha256sum] = "060309d7a333d38d951bc27598c677af1796934dbd98e1024e7ad8de798fedda" + +DEPENDS = "expat libcap libdaemon glib-2.0 intltool-native" + +# For gtk related PACKAGECONFIGs: gtk, gtk3 +AVAHI_GTK ?= "gtk3" + +PACKAGECONFIG ??= "dbus ${@bb.utils.contains_any('DISTRO_FEATURES','x11 wayland','${AVAHI_GTK}','',d)}" +PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus" +PACKAGECONFIG[gtk] = "--enable-gtk,--disable-gtk,gtk+" +PACKAGECONFIG[gtk3] = "--enable-gtk3,--disable-gtk3,gtk+3" +PACKAGECONFIG[libdns_sd] = "--enable-compat-libdns_sd --enable-dbus,,dbus" +PACKAGECONFIG[libevent] = "--enable-libevent,--disable-libevent,libevent" +PACKAGECONFIG[qt5] = "--enable-qt5,--disable-qt5,qtbase" + +inherit autotools pkgconfig gettext gobject-introspection + +EXTRA_OECONF = "--with-avahi-priv-access-group=adm \ + --disable-stack-protector \ + --disable-gdbm \ + --disable-dbm \ + --disable-mono \ + --disable-monodoc \ + --disable-qt3 \ + --disable-qt4 \ + --disable-python \ + --disable-doxygen-doc \ + --enable-manpages \ + ${EXTRA_OECONF_SYSVINIT} \ + ${EXTRA_OECONF_SYSTEMD} \ + " + +# The distro choice determines what init scripts are installed +EXTRA_OECONF_SYSVINIT = "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','--with-distro=debian','--with-distro=none',d)}" +EXTRA_OECONF_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES','systemd','--with-systemdsystemunitdir=${systemd_unitdir}/system/','--without-systemdsystemunitdir',d)}" + +do_configure_prepend() { + # This m4 file will get in the way of our introspection.m4 with special cross-compilation fixes + rm "${S}/common/introspection.m4" || true +} + +do_compile_prepend() { + export GIR_EXTRA_LIBS_PATH="${B}/avahi-gobject/.libs:${B}/avahi-common/.libs:${B}/avahi-client/.libs:${B}/avahi-glib/.libs" +} + +RRECOMMENDS_${PN}_append_libc-glibc = " libnss-mdns" + +do_install() { + autotools_do_install + rm -rf ${D}/run + rm -rf ${D}${datadir}/dbus-1/interfaces + test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 + rm -rf ${D}${libdir}/avahi +} + +PACKAGES =+ "${@bb.utils.contains("PACKAGECONFIG", "libdns_sd", "libavahi-compat-libdnssd", "", d)}" + +FILES_libavahi-compat-libdnssd = "${libdir}/libdns_sd.so.*" + +RPROVIDES_libavahi-compat-libdnssd = "libdns-sd" + +inherit update-rc.d systemd useradd + +PACKAGES =+ "libavahi-gobject avahi-daemon libavahi-common libavahi-core libavahi-client avahi-dnsconfd libavahi-glib avahi-autoipd avahi-utils avahi-discover avahi-ui" + +FILES_avahi-ui = "${libdir}/libavahi-ui*.so.*" +FILES_avahi-discover = "${datadir}/applications/avahi-discover.desktop \ + ${datadir}/avahi/interfaces/avahi-discover.ui \ + ${bindir}/avahi-discover-standalone \ + " + +LICENSE_libavahi-gobject = "LGPLv2.1+" +LICENSE_avahi-daemon = "LGPLv2.1+" +LICENSE_libavahi-common = "LGPLv2.1+" +LICENSE_libavahi-core = "LGPLv2.1+" +LICENSE_avahi-client = "LGPLv2.1+" +LICENSE_avahi-dnsconfd = "LGPLv2.1+" +LICENSE_libavahi-glib = "LGPLv2.1+" +LICENSE_avahi-autoipd = "LGPLv2.1+" +LICENSE_avahi-utils = "LGPLv2.1+" + +# As avahi doesn't put any files into PN, clear the files list to avoid problems +# if extra libraries appear. +FILES_${PN} = "" +FILES_avahi-autoipd = "${sbindir}/avahi-autoipd \ + ${sysconfdir}/avahi/avahi-autoipd.action \ + ${sysconfdir}/dhcp/*/avahi-autoipd \ + ${sysconfdir}/udhcpc.d/00avahi-autoipd \ + ${sysconfdir}/udhcpc.d/99avahi-autoipd" +FILES_libavahi-common = "${libdir}/libavahi-common.so.*" +FILES_libavahi-core = "${libdir}/libavahi-core.so.* ${libdir}/girepository-1.0/AvahiCore*.typelib" +FILES_avahi-daemon = "${sbindir}/avahi-daemon \ + ${sysconfdir}/avahi/avahi-daemon.conf \ + ${sysconfdir}/avahi/hosts \ + ${sysconfdir}/avahi/services \ + ${sysconfdir}/dbus-1 \ + ${sysconfdir}/init.d/avahi-daemon \ + ${datadir}/avahi/introspection/*.introspect \ + ${datadir}/avahi/avahi-service.dtd \ + ${datadir}/avahi/service-types \ + ${datadir}/dbus-1/system-services" +FILES_libavahi-client = "${libdir}/libavahi-client.so.*" +FILES_avahi-dnsconfd = "${sbindir}/avahi-dnsconfd \ + ${sysconfdir}/avahi/avahi-dnsconfd.action \ + ${sysconfdir}/init.d/avahi-dnsconfd" +FILES_libavahi-glib = "${libdir}/libavahi-glib.so.*" +FILES_libavahi-gobject = "${libdir}/libavahi-gobject.so.* ${libdir}/girepository-1.0/Avahi*.typelib" +FILES_avahi-utils = "${bindir}/avahi-* ${bindir}/b* ${datadir}/applications/b*" + +RDEPENDS_${PN}-dev = "avahi-daemon (= ${EXTENDPKGV}) libavahi-core (= ${EXTENDPKGV})" +RDEPENDS_${PN}-dev += "${@["", " libavahi-client (= ${EXTENDPKGV})"][bb.utils.contains('PACKAGECONFIG', 'dbus', 1, 0, d)]}" + +RRECOMMENDS_avahi-daemon_append_libc-glibc = " libnss-mdns" + +CONFFILES_avahi-daemon = "${sysconfdir}/avahi/avahi-daemon.conf" + +USERADD_PACKAGES = "avahi-daemon avahi-autoipd" +USERADD_PARAM_avahi-daemon = "--system --home /run/avahi-daemon \ + --no-create-home --shell /bin/false \ + --user-group avahi" + +USERADD_PARAM_avahi-autoipd = "--system --home /run/avahi-autoipd \ + --no-create-home --shell /bin/false \ + --user-group \ + -c \"Avahi autoip daemon\" \ + avahi-autoipd" + +INITSCRIPT_PACKAGES = "avahi-daemon avahi-dnsconfd" +INITSCRIPT_NAME_avahi-daemon = "avahi-daemon" +INITSCRIPT_PARAMS_avahi-daemon = "defaults 21 19" +INITSCRIPT_NAME_avahi-dnsconfd = "avahi-dnsconfd" +INITSCRIPT_PARAMS_avahi-dnsconfd = "defaults 22 19" + +SYSTEMD_PACKAGES = "${PN}-daemon ${PN}-dnsconfd" +SYSTEMD_SERVICE_${PN}-daemon = "avahi-daemon.service" +SYSTEMD_SERVICE_${PN}-dnsconfd = "avahi-dnsconfd.service" + +do_install_append() { + install -d ${D}${sysconfdir}/udhcpc.d + install ${WORKDIR}/00avahi-autoipd ${D}${sysconfdir}/udhcpc.d + install ${WORKDIR}/99avahi-autoipd ${D}${sysconfdir}/udhcpc.d +} + +# At the time the postinst runs, dbus might not be setup so only restart if running +# Don't exit early, because update-rc.d needs to run subsequently. +pkg_postinst_avahi-daemon () { +if [ -z "$D" ]; then + killall -q -HUP dbus-daemon || true +fi +} + diff --git a/poky/meta/recipes-connectivity/avahi/files/fix-CVE-2017-6519.patch b/poky/meta/recipes-connectivity/avahi/files/fix-CVE-2017-6519.patch deleted file mode 100644 index 7461fe193..000000000 --- a/poky/meta/recipes-connectivity/avahi/files/fix-CVE-2017-6519.patch +++ /dev/null @@ -1,48 +0,0 @@ -Upstream-Status: Backport [https://github.com/lathiat/avahi/commit/e111def] - -CVE: CVE-2017-6519 - -Signed-off-by: Kai Kang - -From e111def44a7df4624a4aa3f85fe98054bffb6b4f Mon Sep 17 00:00:00 2001 -From: Trent Lloyd -Date: Sat, 22 Dec 2018 09:06:07 +0800 -Subject: [PATCH] Drop legacy unicast queries from address not on local link - -When handling legacy unicast queries, ensure that the source IP is -inside a subnet on the local link, otherwise drop the packet. - -Fixes #145 -Fixes #203 -CVE-2017-6519 -CVE-2018-1000845 ---- - avahi-core/server.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/avahi-core/server.c b/avahi-core/server.c -index a2cb19a8..a2580e38 100644 ---- a/avahi-core/server.c -+++ b/avahi-core/server.c -@@ -930,6 +930,7 @@ static void dispatch_packet(AvahiServer *s, AvahiDnsPacket *p, const AvahiAddres - - if (avahi_dns_packet_is_query(p)) { - int legacy_unicast = 0; -+ char t[AVAHI_ADDRESS_STR_MAX]; - - /* For queries EDNS0 might allow ARCOUNT != 0. We ignore the - * AR section completely here, so far. Until the day we add -@@ -947,6 +948,13 @@ static void dispatch_packet(AvahiServer *s, AvahiDnsPacket *p, const AvahiAddres - legacy_unicast = 1; - } - -+ if (!is_mdns_mcast_address(dst_address) && -+ !avahi_interface_address_on_link(i, src_address)) { -+ -+ avahi_log_debug("Received non-local unicast query from host %s on interface '%s.%i'.", avahi_address_snprint(t, sizeof(t), src_address), i->hardware->name, i->protocol); -+ return; -+ } -+ - if (legacy_unicast) - reflect_legacy_unicast_query_packet(s, p, i, src_address, port); - diff --git a/poky/meta/recipes-connectivity/connman/connman.inc b/poky/meta/recipes-connectivity/connman/connman.inc index b60178cef..776bbfbff 100644 --- a/poky/meta/recipes-connectivity/connman/connman.inc +++ b/poky/meta/recipes-connectivity/connman/connman.inc @@ -17,8 +17,6 @@ inherit autotools pkgconfig systemd update-rc.d update-alternatives DEPENDS = "dbus glib-2.0 ppp" -INC_PR = "r20" - EXTRA_OECONF += "\ ac_cv_path_WPASUPPLICANT=${sbindir}/wpa_supplicant \ ac_cv_path_PPPD=${sbindir}/pppd \ @@ -195,7 +193,8 @@ SUMMARY_${PN}-plugin-vpn-vpnc = "A vpnc plugin for ConnMan VPN" DESCRIPTION_${PN}-plugin-vpn-vpnc = "The ConnMan vpnc plugin uses vpnc client \ to create a VPN connection to Cisco3000 VPN Concentrator." FILES_${PN}-plugin-vpn-vpnc += "${libdir}/connman/scripts/openconnect-script \ - ${libdir}/connman/plugins-vpn/vpnc.so" + ${libdir}/connman/plugins-vpn/vpnc.so \ + ${libdir}/connman/scripts/vpn-script" RDEPENDS_${PN}-plugin-vpn-vpnc += "${PN}-vpn" RRECOMMENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG','vpnc','${PN}-plugin-vpn-vpnc', '', d)}" diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb index ad0ab13c9..7ad4b8eee 100644 --- a/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb +++ b/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb @@ -9,4 +9,4 @@ SRC_URI[sha256sum] = "bac543435cac208a11db44c9cc8e35aa902befef8750594654ee71941c # CFLAGS are computed in Makefile and reference CCOPTS # -EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS} -fcommon'" +EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'" diff --git a/poky/meta/recipes-core/busybox/busybox/defconfig b/poky/meta/recipes-core/busybox/busybox/defconfig index 0b27fcd4b..4334a9d73 100644 --- a/poky/meta/recipes-core/busybox/busybox/defconfig +++ b/poky/meta/recipes-core/busybox/busybox/defconfig @@ -785,6 +785,7 @@ CONFIG_FEATURE_CROND_DIR="" # CONFIG_I2CSET is not set # CONFIG_I2CDUMP is not set # CONFIG_I2CDETECT is not set +# CONFIG_I2CTRANSFER is not set # CONFIG_INOTIFYD is not set CONFIG_LESS=y CONFIG_FEATURE_LESS_MAXLINES=9999999 diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Don-t-misdetect-stpcpy-on-windows-platforms-on.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Don-t-misdetect-stpcpy-on-windows-platforms-on.patch new file mode 100644 index 000000000..855bdfc0d --- /dev/null +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Don-t-misdetect-stpcpy-on-windows-platforms-on.patch @@ -0,0 +1,53 @@ +From d4b1fd9cdb7ae07fa6be941ac95f97ece175fe55 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Martin=20Storsj=C3=B6?= +Date: Tue, 31 Mar 2020 23:54:17 +0300 +Subject: [PATCH] meson: Don't misdetect stpcpy on windows platforms on clang + +See https://github.com/mesonbuild/meson/issues/3672 and +https://github.com/mesonbuild/meson/issues/5628 for explanations +of cases where meson misdetects functions due to clang builtins (that +always are available, regardless of whether the platform actually +provides them). + +The same also happens on GCC 10, which added support for __has_builtin. + +Upstream-Status: Backport [https://github.com/GNOME/glib/commit/1b94bfbd72dbbfb696fa68f3742f40998096b438] +Signed-off-by: Khem Raj +--- + meson.build | 16 +++++++++++++--- + 1 file changed, 13 insertions(+), 3 deletions(-) + +diff --git a/meson.build b/meson.build +index 72ca194..bbdac1c 100644 +--- a/meson.build ++++ b/meson.build +@@ -533,13 +533,23 @@ foreach f : functions + endif + endforeach + +-# Check that stpcpy() is usable; must use header +-if cc.has_function('stpcpy', prefix : '#include ') ++# Check that stpcpy() is usable; must use header. ++# cc.has_function() in some cases (clang, gcc 10+) assumes that if the ++# compiler provides a builtin of the same name that the function exists, while ++# it's in fact not provided by any header or library. This is true for ++# stpcpy() on Windows using clang and gcc as well as posix_memalign() using ++# gcc on Windows. Skip these checks on Windows for now to avoid false ++# positives. See https://github.com/mesonbuild/meson/pull/7116, ++# https://github.com/mesonbuild/meson/issues/3672 and ++# https://github.com/mesonbuild/meson/issues/5628. ++# FIXME: Once meson no longer returns success for stpcpy() and ++# posix_memalign() on Windows using GCC and clang we can remove this. ++if host_system != 'windows' and cc.has_function('stpcpy', prefix : '#include ') + glib_conf.set('HAVE_STPCPY', 1) + endif + + # Check that posix_memalign() is usable; must use header +-if cc.has_function('posix_memalign', prefix : '#include ') ++if host_system != 'windows' and cc.has_function('posix_memalign', prefix : '#include ') + glib_conf.set('HAVE_POSIX_MEMALIGN', 1) + endif + +-- +2.26.2 + diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb index 1a8e9d659..d6207b5b1 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.64.2.bb @@ -16,6 +16,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ file://0001-Do-not-write-bindir-into-pkg-config-files.patch \ file://0001-meson-Run-atomics-test-on-clang-as-well.patch \ file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \ + file://0001-meson-Don-t-misdetect-stpcpy-on-windows-platforms-on.patch \ " SRC_URI_append_class-native = " file://relocate-modules.patch" diff --git a/poky/meta/recipes-core/glibc/glibc-version.inc b/poky/meta/recipes-core/glibc/glibc-version.inc index 4c72eedf4..c2d68979e 100644 --- a/poky/meta/recipes-core/glibc/glibc-version.inc +++ b/poky/meta/recipes-core/glibc/glibc-version.inc @@ -1,6 +1,6 @@ SRCBRANCH ?= "release/2.31/master" PV = "2.31+git${SRCPV}" -SRCREV_glibc ?= "71f2b249a28e17eac0e47c53af44d5c5b65101aa" +SRCREV_glibc ?= "109474122400ca7d60782b131dc867a5c1f2fe55" SRCREV_localedef ?= "cd9f958c4c94a638fa7b2b4e21627364f1a1a655" GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git" diff --git a/poky/meta/recipes-core/glibc/glibc/0030-Improve-IFUNC-check-BZ-25506.patch b/poky/meta/recipes-core/glibc/glibc/0030-Improve-IFUNC-check-BZ-25506.patch deleted file mode 100644 index 1cb398d2b..000000000 --- a/poky/meta/recipes-core/glibc/glibc/0030-Improve-IFUNC-check-BZ-25506.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 87a698a21646b7ee620923ef5ffa9735471a8ddd Mon Sep 17 00:00:00 2001 -From: Fangrui Song -Date: Tue, 4 Feb 2020 21:55:44 -0800 -Subject: [PATCH] Improve IFUNC check [BZ #25506] - -GNU ld's RISCV port does not support IFUNC. ld -no-pie produces no -relocation and the test passed incorrectly. Be more rigid by testing -IRELATIVE explicitly. - -Upstream-Status: Backport [https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=87a698a21646b7ee620923ef5ffa9735471a8ddd] -Tested-by: Aurelien Jarno -Reviewed-by: Adhemerval Zanella -Signed-off-by: Khem Raj ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index b959d2d988..3b98ec312f 100755 ---- a/configure -+++ b/configure -@@ -4035,7 +4035,7 @@ if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \ - -o conftest conftest.S 1>&5 2>&5; then - # Do a link to see if the backend supports IFUNC relocs. - $READELF -r conftest 1>&5 -- LC_ALL=C $READELF -r conftest | grep 'no relocations' >/dev/null || { -+ LC_ALL=C $READELF -Wr conftest | grep -q 'IRELATIVE\|R_SPARC_JMP_IREL' && { - libc_cv_ld_gnu_indirect_function=yes - } - fi -diff --git a/configure.ac b/configure.ac -index 49b900c1ed..e20034f301 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -649,7 +649,7 @@ if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \ - -o conftest conftest.S 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then - # Do a link to see if the backend supports IFUNC relocs. - $READELF -r conftest 1>&AS_MESSAGE_LOG_FD -- LC_ALL=C $READELF -r conftest | grep 'no relocations' >/dev/null || { -+ LC_ALL=C $READELF -Wr conftest | grep -q 'IRELATIVE\|R_SPARC_JMP_IREL' && { - libc_cv_ld_gnu_indirect_function=yes - } - fi --- -2.25.1 - diff --git a/poky/meta/recipes-core/glibc/glibc/0031-Fix-build-with-GCC-10-when-long-double-double.patch b/poky/meta/recipes-core/glibc/glibc/0031-Fix-build-with-GCC-10-when-long-double-double.patch deleted file mode 100644 index 72622961a..000000000 --- a/poky/meta/recipes-core/glibc/glibc/0031-Fix-build-with-GCC-10-when-long-double-double.patch +++ /dev/null @@ -1,170 +0,0 @@ -From 49348beafe9ba150c9bd48595b3f372299bddbb0 Mon Sep 17 00:00:00 2001 -From: Joseph Myers -Date: Tue, 17 Mar 2020 22:57:42 +0000 -Subject: [PATCH] Fix build with GCC 10 when long double = double. - -On platforms where long double has the same ABI as double, glibc -defines long double functions as aliases for the corresponding double -functions. The declarations of those functions in are -disabled to avoid problems with aliases having incompatible types, but -GCC 10 now gives errors for incompatible types when the long double -function is known to GCC as a built-in function, not just when there -is an incompatible header declaration. - -This patch fixes those errors by using appropriate --fno-builtin- options to compile the double functions. The -list of CFLAGS-* settings is an appropriately adapted version of that -in sysdeps/ieee754/ldbl-opt/Makefile used there for building nldbl-*.c -files; in particular, the options are used even if GCC does not -currently have a built-in function of a given function, so that adding -such a built-in function in future will not break the glibc build. -Thus, various of the CFLAGS-* settings are only for future-proofing -and may not currently be needed (and it's possible some could be -irrelevant for other reasons). - -Tested with build-many-glibcs.py for arm-linux-gnueabi (compilers and -glibcs builds), where it fixes the build that previously failed. - -Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=49348beafe9ba150c9bd48595b3f372299bddbb0] -Signed-off-by: Khem Raj - ---- - math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 122 insertions(+) - -diff --git a/math/Makefile b/math/Makefile -index 84a8b94c74..0a5a40430e 100644 ---- a/math/Makefile -+++ b/math/Makefile -@@ -650,6 +650,128 @@ ifneq ($(long-double-fcts),yes) - # We won't compile the `long double' code at all. Tell the `double' code - # to define aliases for the `FUNCl' names. - math-CPPFLAGS += -DNO_LONG_DOUBLE -+# GCC 10 diagnoses aliases with types conflicting with built-in -+# functions. -+CFLAGS-w_acos.c += -fno-builtin-acosl -+CFLAGS-w_acosh.c += -fno-builtin-acoshl -+CFLAGS-w_asin.c += -fno-builtin-asinl -+CFLAGS-s_asinh.c += -fno-builtin-asinhl -+CFLAGS-s_atan.c += -fno-builtin-atanl -+CFLAGS-w_atan2.c += -fno-builtin-atan2l -+CFLAGS-w_atanh.c += -fno-builtin-atanhl -+CFLAGS-s_cabs.c += -fno-builtin-cabsl -+CFLAGS-s_cacos.c += -fno-builtin-cacosl -+CFLAGS-s_cacosh.c += -fno-builtin-cacoshl -+CFLAGS-s_canonicalize.c += -fno-builtin-canonicalizel -+CFLAGS-s_carg.c += -fno-builtin-cargl -+CFLAGS-s_casin.c += -fno-builtin-casinl -+CFLAGS-s_casinh.c += -fno-builtin-casinhl -+CFLAGS-s_catan.c += -fno-builtin-catanl -+CFLAGS-s_catanh.c += -fno-builtin-catanhl -+CFLAGS-s_cbrt.c += -fno-builtin-cbrtl -+CFLAGS-s_ccos.c += -fno-builtin-ccosl -+CFLAGS-s_ccosh.c += -fno-builtin-ccoshl -+CFLAGS-s_ceil.c += -fno-builtin-ceill -+CFLAGS-s_cexp.c += -fno-builtin-cexpl -+CFLAGS-s_cimag.c += -fno-builtin-cimagl -+CFLAGS-s_clog.c += -fno-builtin-clogl -+CFLAGS-s_clog10.c += -fno-builtin-clog10l -+CFLAGS-s_conj.c += -fno-builtin-conjl -+CFLAGS-s_copysign.c += -fno-builtin-copysignl -+CFLAGS-s_cos.c += -fno-builtin-cosl -+CFLAGS-w_cosh.c += -fno-builtin-coshl -+CFLAGS-s_cpow.c += -fno-builtin-cpowl -+CFLAGS-s_cproj.c += -fno-builtin-cprojl -+CFLAGS-s_creal.c += -fno-builtin-creall -+CFLAGS-s_csin.c += -fno-builtin-csinl -+CFLAGS-s_csinh.c += -fno-builtin-csinhl -+CFLAGS-s_csqrt.c += -fno-builtin-csqrtl -+CFLAGS-s_ctan.c += -fno-builtin-ctanl -+CFLAGS-s_ctanh.c += -fno-builtin-ctanhl -+CFLAGS-s_dadd.c += -fno-builtin-daddl -+CFLAGS-s_ddiv.c += -fno-builtin-ddivl -+CFLAGS-s_dmul.c += -fno-builtin-dmull -+CFLAGS-s_dsub.c += -fno-builtin-dsubl -+CFLAGS-s_erf.c += -fno-builtin-erfl -+CFLAGS-s_erfc.c += -fno-builtin-erfcl -+CFLAGS-e_exp.c += -fno-builtin-expl -+CFLAGS-w_exp10.c += -fno-builtin-exp10l -+CFLAGS-e_exp2.c += -fno-builtin-exp2l -+CFLAGS-s_expm1.c += -fno-builtin-expm1l -+CFLAGS-s_fabs.c += -fno-builtin-fabsl -+CFLAGS-s_fadd.c += -fno-builtin-faddl -+CFLAGS-s_fdim.c += -fno-builtin-fdiml -+CFLAGS-s_fdiv.c += -fno-builtin-fdivl -+CFLAGS-s_finite.c += -fno-builtin-finitel -+CFLAGS-s_floor.c += -fno-builtin-floorl -+CFLAGS-s_fma.c += -fno-builtin-fmal -+CFLAGS-s_fmax.c += -fno-builtin-fmaxl -+CFLAGS-s_fmaxmag.c += -fno-builtin-fmaxmagl -+CFLAGS-s_fmin.c += -fno-builtin-fminl -+CFLAGS-s_fminmag.c += -fno-builtin-fminmagl -+CFLAGS-w_fmod.c += -fno-builtin-fmodl -+CFLAGS-s_fmul.c += -fno-builtin-fmull -+CFLAGS-s_frexp.c += -fno-builtin-frexpl -+CFLAGS-s_fromfp.c += -fno-builtin-fromfpl -+CFLAGS-s_fromfpx.c += -fno-builtin-fromfpxl -+CFLAGS-s_fsub.c += -fno-builtin-fsubl -+CFLAGS-s_gamma.c += -fno-builtin-gammal -+CFLAGS-s_getpayload.c += -fno-builtin-getpayloadl -+CFLAGS-w_hypot.c += -fno-builtin-hypotl -+CFLAGS-w_ilogb.c += -fno-builtin-ilogbl -+CFLAGS-s_isinf.c += -fno-builtin-isinfl -+CFLAGS-s_isnan.c += -fno-builtin-isnanl -+CFLAGS-w_j0.c += -fno-builtin-j0l -+CFLAGS-w_j1.c += -fno-builtin-j1l -+CFLAGS-w_jn.c += -fno-builtin-jnl -+CFLAGS-s_ldexp.c += -fno-builtin-ldexpl -+CFLAGS-w_lgamma.c += -fno-builtin-lgammal -+CFLAGS-w_lgamma_r.c += -fno-builtin-lgammal_r -+CFLAGS-w_llogb.c += -fno-builtin-llogbl -+CFLAGS-s_llrint.c += -fno-builtin-llrintl -+CFLAGS-s_llround.c += -fno-builtin-llroundl -+CFLAGS-e_log.c += -fno-builtin-logl -+CFLAGS-w_log10.c += -fno-builtin-log10l -+CFLAGS-w_log1p.c += -fno-builtin-log1pl -+CFLAGS-e_log2.c += -fno-builtin-log2l -+CFLAGS-s_logb.c += -fno-builtin-logbl -+CFLAGS-s_lrint.c += -fno-builtin-lrintl -+CFLAGS-s_lround.c += -fno-builtin-lroundl -+CFLAGS-s_modf.c += -fno-builtin-modfl -+CFLAGS-s_nan.c += -fno-builtin-nanl -+CFLAGS-s_nearbyint.c += -fno-builtin-nearbyintl -+CFLAGS-s_nextafter.c += -fno-builtin-nextafterl -+CFLAGS-s_nextdown.c += -fno-builtin-nextdownl -+CFLAGS-s_nexttoward.c += -fno-builtin-nexttoward -fno-builtin-nexttowardl -+CFLAGS-s_nexttowardf.c += -fno-builtin-nexttowardf -+CFLAGS-s_nextup.c += -fno-builtin-nextupl -+CFLAGS-e_pow.c += -fno-builtin-powl -+CFLAGS-w_remainder.c += -fno-builtin-remainderl -fno-builtin-dreml -+CFLAGS-s_remquo.c += -fno-builtin-remquol -+CFLAGS-s_rint.c += -fno-builtin-rintl -+CFLAGS-s_round.c += -fno-builtin-roundl -+CFLAGS-s_roundeven.c += -fno-builtin-roundevenl -+CFLAGS-w_scalb.c += -fno-builtin-scalbl -+CFLAGS-w_scalbln.c += -fno-builtin-scalblnl -+CFLAGS-s_scalbn.c += -fno-builtin-scalbnl -+CFLAGS-s_setpayload.c += -fno-builtin-setpayloadl -+CFLAGS-s_setpayloadsig.c += -fno-builtin-setpayloadsigl -+CFLAGS-s_significand.c += -fno-builtin-significandl -+CFLAGS-s_sin.c += -fno-builtin-sinl -+CFLAGS-s_sincos.c += -fno-builtin-sincosl -+CFLAGS-w_sinh.c += -fno-builtin-sinhl -+CFLAGS-w_sqrt.c += -fno-builtin-sqrtl -+CFLAGS-s_tan.c += -fno-builtin-tanl -+CFLAGS-s_tanh.c += -fno-builtin-tanhl -+CFLAGS-w_tgamma.c += -fno-builtin-tgammal -+CFLAGS-s_totalorder.c += -fno-builtin-totalorderl -+CFLAGS-s_totalordermag.c += -fno-builtin-totalordermagl -+CFLAGS-s_trunc.c += -fno-builtin-truncl -+CFLAGS-s_ufromfp.c += -fno-builtin-ufromfpl -+CFLAGS-s_ufromfpx.c += -fno-builtin-ufromfpxl -+CFLAGS-s_y0.c += -fno-builtin-y0l -+CFLAGS-s_y1.c += -fno-builtin-y1l -+CFLAGS-s_yn.c += -fno-builtin-ynl - endif - - # These files quiet sNaNs in a way that is optimized away without --- -2.26.0 - diff --git a/poky/meta/recipes-core/glibc/glibc/CVE-2020-10029.patch b/poky/meta/recipes-core/glibc/glibc/CVE-2020-10029.patch deleted file mode 100644 index 22a15f5fd..000000000 --- a/poky/meta/recipes-core/glibc/glibc/CVE-2020-10029.patch +++ /dev/null @@ -1,128 +0,0 @@ -From ce265ec5bc25ec35fba53807abac1b0c8469895e Mon Sep 17 00:00:00 2001 -From: Joseph Myers -Date: Wed, 12 Feb 2020 23:31:56 +0000 -Subject: [PATCH] Avoid ldbl-96 stack corruption from range reduction of - - pseudo-zero (bug 25487). - -Bug 25487 reports stack corruption in ldbl-96 sinl on a pseudo-zero -argument (an representation where all the significand bits, including -the explicit high bit, are zero, but the exponent is not zero, which -is not a valid representation for the long double type). - -Although this is not a valid long double representation, existing -practice in this area (see bug 4586, originally marked invalid but -subsequently fixed) is that we still seek to avoid invalid memory -accesses as a result, in case of programs that treat arbitrary binary -data as long double representations, although the invalid -representations of the ldbl-96 format do not need to be consistently -handled the same as any particular valid representation. - -This patch makes the range reduction detect pseudo-zero and unnormal -representations that would otherwise go to __kernel_rem_pio2, and -returns a NaN for them instead of continuing with the range reduction -process. (Pseudo-zero and unnormal representations whose unbiased -exponent is less than -1 have already been safely returned from the -function before this point without going through the rest of range -reduction.) Pseudo-zero representations would previously result in -the value passed to __kernel_rem_pio2 being all-zero, which is -definitely unsafe; unnormal representations would previously result in -a value passed whose high bit is zero, which might well be unsafe -since that is not a form of input expected by __kernel_rem_pio2. - -Tested for x86_64. - -CVE: CVE-2020-10029 -Upstream-Status: Backport [https://sourceware.org/git/gitweb.cgi?p=glibc.git; -a=patch;h=9333498794cde1d5cca518badf79533a24114b6f] -Signed-off-by: Zhixiong Chi - ---- - sysdeps/ieee754/ldbl-96/Makefile | 3 ++- - sysdeps/ieee754/ldbl-96/e_rem_pio2l.c | 12 +++++++++ - sysdeps/ieee754/ldbl-96/test-sinl-pseudo.c | 41 ++++++++++++++++++++++++++++++ - 3 files changed, 55 insertions(+), 1 deletion(-) - create mode 100644 sysdeps/ieee754/ldbl-96/test-sinl-pseudo.c - -diff --git a/sysdeps/ieee754/ldbl-96/Makefile b/sysdeps/ieee754/ldbl-96/Makefile -index b103254..052c1c7 100644 ---- a/sysdeps/ieee754/ldbl-96/Makefile -+++ b/sysdeps/ieee754/ldbl-96/Makefile -@@ -17,5 +17,6 @@ - # . - - ifeq ($(subdir),math) --tests += test-canonical-ldbl-96 test-totalorderl-ldbl-96 -+tests += test-canonical-ldbl-96 test-totalorderl-ldbl-96 test-sinl-pseudo -+CFLAGS-test-sinl-pseudo.c += -fstack-protector-all - endif -diff --git a/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c b/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c -index 805de22..1aeccb4 100644 ---- a/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c -+++ b/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c -@@ -210,6 +210,18 @@ __ieee754_rem_pio2l (long double x, long double *y) - return 0; - } - -+ if ((i0 & 0x80000000) == 0) -+ { -+ /* Pseudo-zero and unnormal representations are not valid -+ representations of long double. We need to avoid stack -+ corruption in __kernel_rem_pio2, which expects input in a -+ particular normal form, but those representations do not need -+ to be consistently handled like any particular floating-point -+ value. */ -+ y[1] = y[0] = __builtin_nanl (""); -+ return 0; -+ } -+ - /* Split the 64 bits of the mantissa into three 24-bit integers - stored in a double array. */ - exp = j0 - 23; -diff --git a/sysdeps/ieee754/ldbl-96/test-sinl-pseudo.c b/sysdeps/ieee754/ldbl-96/test-sinl-pseudo.c -new file mode 100644 -index 0000000..f59b977 ---- /dev/null -+++ b/sysdeps/ieee754/ldbl-96/test-sinl-pseudo.c -@@ -0,0 +1,41 @@ -+/* Test sinl for pseudo-zeros and unnormals for ldbl-96 (bug 25487). -+ Copyright (C) 2020 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+ -+static int -+do_test (void) -+{ -+ for (int i = 0; i < 64; i++) -+ { -+ uint64_t sig = i == 63 ? 0 : 1ULL << i; -+ long double ld; -+ SET_LDOUBLE_WORDS (ld, 0x4141, -+ sig >> 32, sig & 0xffffffffULL); -+ /* The requirement is that no stack overflow occurs when the -+ pseudo-zero or unnormal goes through range reduction. */ -+ volatile long double ldr; -+ ldr = sinl (ld); -+ (void) ldr; -+ } -+ return 0; -+} -+ -+#include diff --git a/poky/meta/recipes-core/glibc/glibc_2.31.bb b/poky/meta/recipes-core/glibc/glibc_2.31.bb index 6605fd396..2032311b2 100644 --- a/poky/meta/recipes-core/glibc/glibc_2.31.bb +++ b/poky/meta/recipes-core/glibc/glibc_2.31.bb @@ -40,9 +40,6 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0027-intl-Emit-no-lines-in-bison-generated-files.patch \ file://0028-inject-file-assembly-directives.patch \ file://0029-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch \ - file://CVE-2020-10029.patch \ - file://0030-Improve-IFUNC-check-BZ-25506.patch \ - file://0031-Fix-build-with-GCC-10-when-long-double-double.patch \ " S = "${WORKDIR}/git" B = "${WORKDIR}/build-${TARGET_SYS}" diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc index bee1367c9..2d2a0b03e 100644 --- a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc +++ b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc @@ -27,8 +27,6 @@ BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir} -Wno-error" CPPFLAGS_append_class-nativesdk = " -Wno-error" -CFLAGS += "-fcommon" - API = "--disable-obsolete-api" EXTRA_OECONF += "${API}" diff --git a/poky/meta/recipes-core/ovmf/ovmf/0001-ovmf-Update-to-latest.patch b/poky/meta/recipes-core/ovmf/ovmf/0001-ovmf-Update-to-latest.patch new file mode 100644 index 000000000..1d4273cdc --- /dev/null +++ b/poky/meta/recipes-core/ovmf/ovmf/0001-ovmf-Update-to-latest.patch @@ -0,0 +1,46 @@ +From 640a634936ba8eca4778470fb14c6eb9cfd19953 Mon Sep 17 00:00:00 2001 +From: Steve Langasek +Date: Sat, 10 Jun 2017 01:39:36 -0700 +Subject: [PATCH 1/2] ovmf: Update to latest + +Description: pass -fno-stack-protector to all GCC toolchains + The upstream build rules inexplicably pass -fno-stack-protector only + when building for i386 and amd64. Add this essential argument to the + generic rules for gcc 4.4 and later. +Last-Updated: 2016-04-12 +Upstream-Status: Pending + +--- + BaseTools/Conf/tools_def.template | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template +index 2b17d3b297..4cd2567c2a 100755 +--- a/BaseTools/Conf/tools_def.template ++++ b/BaseTools/Conf/tools_def.template +@@ -1950,10 +1950,10 @@ DEFINE GCC_AARCH64_RC_FLAGS = -I binary -O elf64-littleaarch64 -B aarch64 + # GCC Build Flag for included header file list generation + DEFINE GCC_DEPS_FLAGS = -MMD -MF $@.deps + +-DEFINE GCC48_ALL_CC_FLAGS = -g -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings ++DEFINE GCC48_ALL_CC_FLAGS = -g -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -fno-stack-protector -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings + DEFINE GCC48_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x20 +-DEFINE GCC48_IA32_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m32 -march=i586 -malign-double -fno-stack-protector -D EFI32 -fno-asynchronous-unwind-tables -Wno-address +-DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 -fno-stack-protector "-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables -Wno-address ++DEFINE GCC48_IA32_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m32 -march=i586 -malign-double -D EFI32 -fno-asynchronous-unwind-tables -Wno-address ++DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables -Wno-address + DEFINE GCC48_IA32_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable + DEFINE GCC48_IA32_X64_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive + DEFINE GCC48_IA32_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(GCC_DLINK2_FLAGS_COMMON) +@@ -1962,7 +1962,7 @@ DEFINE GCC48_X64_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF + DEFINE GCC48_ASM_FLAGS = DEF(GCC_ASM_FLAGS) + DEFINE GCC48_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian + DEFINE GCC48_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian +-DEFINE GCC48_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -fstack-protector -mword-relocations ++DEFINE GCC48_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -mword-relocations + DEFINE GCC48_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS) + DEFINE GCC48_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -mcmodel=large DEF(GCC_AARCH64_CC_FLAGS) + DEFINE GCC48_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS) +-- +2.24.0 + diff --git a/poky/meta/recipes-core/ovmf/ovmf/0004-ovmf-Update-to-latest.patch b/poky/meta/recipes-core/ovmf/ovmf/0004-ovmf-Update-to-latest.patch deleted file mode 100644 index c10a39d95..000000000 --- a/poky/meta/recipes-core/ovmf/ovmf/0004-ovmf-Update-to-latest.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 94eff316b31b4d0348af28c77be5c00bc09fe8e7 Mon Sep 17 00:00:00 2001 -From: Steve Langasek -Date: Sat, 10 Jun 2017 01:39:36 -0700 -Subject: [PATCH 4/5] ovmf: Update to latest - -Description: pass -fno-stack-protector to all GCC toolchains - The upstream build rules inexplicably pass -fno-stack-protector only - when building for i386 and amd64. Add this essential argument to the - generic rules for gcc 4.4 and later. -Last-Updated: 2016-04-12 -Upstream-Status: Pending - ---- - BaseTools/Conf/tools_def.template | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template -index ca0b122dbb..b0066c2ab8 100755 ---- a/BaseTools/Conf/tools_def.template -+++ b/BaseTools/Conf/tools_def.template -@@ -1941,10 +1941,10 @@ DEFINE GCC_X64_RC_FLAGS = -I binary -O elf64-x86-64 -B i386 - DEFINE GCC_ARM_RC_FLAGS = -I binary -O elf32-littlearm -B arm --rename-section .data=.hii - DEFINE GCC_AARCH64_RC_FLAGS = -I binary -O elf64-littleaarch64 -B aarch64 --rename-section .data=.hii - --DEFINE GCC48_ALL_CC_FLAGS = -g -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings -+DEFINE GCC48_ALL_CC_FLAGS = -g -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -fno-stack-protector -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings - DEFINE GCC48_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x20 --DEFINE GCC48_IA32_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m32 -march=i586 -malign-double -fno-stack-protector -D EFI32 -fno-asynchronous-unwind-tables -Wno-address --DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 -fno-stack-protector "-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables -Wno-address -+DEFINE GCC48_IA32_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m32 -march=i586 -malign-double -D EFI32 -fno-asynchronous-unwind-tables -Wno-address -+DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables -Wno-address - DEFINE GCC48_IA32_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable - DEFINE GCC48_IA32_X64_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive - DEFINE GCC48_IA32_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(GCC_DLINK2_FLAGS_COMMON) -@@ -1953,7 +1953,7 @@ DEFINE GCC48_X64_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF - DEFINE GCC48_ASM_FLAGS = DEF(GCC_ASM_FLAGS) - DEFINE GCC48_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian - DEFINE GCC48_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian --DEFINE GCC48_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -fstack-protector -mword-relocations -+DEFINE GCC48_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -mword-relocations - DEFINE GCC48_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS) - DEFINE GCC48_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -mcmodel=large DEF(GCC_AARCH64_CC_FLAGS) - DEFINE GCC48_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS) --- -2.17.1 - diff --git a/poky/meta/recipes-core/ovmf/ovmf_git.bb b/poky/meta/recipes-core/ovmf/ovmf_git.bb index 9667fa0c8..c08962782 100644 --- a/poky/meta/recipes-core/ovmf/ovmf_git.bb +++ b/poky/meta/recipes-core/ovmf/ovmf_git.bb @@ -12,15 +12,15 @@ LIC_FILES_CHKSUM = "file://OvmfPkg/License.txt;md5=06357ddc23f46577c2aeaeaf7b776 PACKAGECONFIG ??= "" PACKAGECONFIG[secureboot] = ",,," -SRC_URI = "gitsm://github.com/tianocore/edk2.git;branch=master;protocol=git \ +SRC_URI = "gitsm://github.com/tianocore/edk2.git;branch=master;protocol=https \ file://0001-ovmf-update-path-to-native-BaseTools.patch \ file://0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch \ file://0003-ovmf-enable-long-path-file.patch \ - file://0004-ovmf-Update-to-latest.patch \ + file://0001-ovmf-Update-to-latest.patch \ " -PV = "edk2-stable201911" -SRCREV = "bd85bf54c268204c7a698a96f3ccd96cd77952cd" +PV = "edk2-stable202002" +SRCREV = "4c0f6e349d32cf27a7104ddd3e729d6ebc88ea70" UPSTREAM_CHECK_GITTAGREGEX = "(?Pedk2-stable.*)" inherit deploy diff --git a/poky/meta/recipes-devtools/binutils/binutils-2.34.inc b/poky/meta/recipes-devtools/binutils/binutils-2.34.inc index 66a3850ef..f65fdb732 100644 --- a/poky/meta/recipes-devtools/binutils/binutils-2.34.inc +++ b/poky/meta/recipes-devtools/binutils/binutils-2.34.inc @@ -41,6 +41,7 @@ SRC_URI = "\ file://0014-Detect-64-bit-MIPS-targets.patch \ file://0015-sync-with-OE-libtool-changes.patch \ file://0016-Check-for-clang-before-checking-gcc-version.patch \ + file://0017-binutils-drop-redundant-program_name-definition-fno-.patch \ file://CVE-2020-0551.patch \ " S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch b/poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch new file mode 100644 index 000000000..55af9abc1 --- /dev/null +++ b/poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch @@ -0,0 +1,61 @@ +From 57a3e055605b28a9449b1b27eda7125737c42b00 Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Sat, 1 Feb 2020 23:16:11 +0000 +Subject: [PATCH] binutils: drop redundant 'program_name' definition + (-fno-common) + + * coffdump.c (program_name): Drop redundant definition. + * srconv.c (program_name): Likewise + * sysdump.c (program_name): Likewise + +Upstream-Status: Accepted (commit 0b398d69ac) +Signed-off-by: Sergei Trofimovich +Signed-off-by: Richard Leitner +--- + binutils/coffdump.c | 2 -- + binutils/srconv.c | 2 -- + binutils/sysdump.c | 2 -- + 3 files changed, 6 deletions(-) + +diff --git a/binutils/coffdump.c b/binutils/coffdump.c +index 531a4e46c3..336da57ca2 100644 +--- a/binutils/coffdump.c ++++ b/binutils/coffdump.c +@@ -456,8 +456,6 @@ coff_dump (struct coff_ofile *ptr) + dump_coff_section (ptr->sections + i); + } + +-char * program_name; +- + static void + show_usage (FILE *file, int status) + { +diff --git a/binutils/srconv.c b/binutils/srconv.c +index 5742b16759..f071794f0a 100644 +--- a/binutils/srconv.c ++++ b/binutils/srconv.c +@@ -1687,8 +1687,6 @@ prescan (struct coff_ofile *otree) + } + } + +-char *program_name; +- + ATTRIBUTE_NORETURN static void + show_usage (FILE *ffile, int status) + { +diff --git a/binutils/sysdump.c b/binutils/sysdump.c +index d433e71ed9..7eebbd61d3 100644 +--- a/binutils/sysdump.c ++++ b/binutils/sysdump.c +@@ -633,8 +633,6 @@ module (void) + } + } + +-char *program_name; +- + ATTRIBUTE_NORETURN static void + show_usage (FILE *ffile, int status) + { +-- +2.26.2 + diff --git a/poky/meta/recipes-devtools/build-compare/build-compare_git.bb b/poky/meta/recipes-devtools/build-compare/build-compare_git.bb index b0560cc27..d2a4b5444 100644 --- a/poky/meta/recipes-devtools/build-compare/build-compare_git.bb +++ b/poky/meta/recipes-devtools/build-compare/build-compare_git.bb @@ -5,15 +5,13 @@ HOMEPAGE = "https://github.com/openSUSE/build-compare" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" -SRC_URI = "git://github.com/openSUSE/build-compare.git \ - file://Ignore-DWARF-sections.patch;striplevel=1 \ - " +SRC_URI = "git://github.com/openSUSE/build-compare.git" # Date matches entry in build-compare.changes and date of SRCREV. # -SRCREV = "4dfa207660776cae120afa4353aec7f1f2a998d2" +SRCREV = "28bf642fcfdab94adb9b847329338005be6f73c7" PE = "1" -PV = "2019.08.14+git${SRCPV}" +PV = "2020.03.31+git${SRCPV}" UPSTREAM_CHECK_COMMITS = "1" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-devtools/build-compare/files/Ignore-DWARF-sections.patch b/poky/meta/recipes-devtools/build-compare/files/Ignore-DWARF-sections.patch deleted file mode 100644 index 2fb62ae8c..000000000 --- a/poky/meta/recipes-devtools/build-compare/files/Ignore-DWARF-sections.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 015715694eadd714b903f30ade876e0738d44974 Mon Sep 17 00:00:00 2001 -From: Randy Witt -Date: Mon, 5 Jan 2015 15:09:20 -0800 -Subject: [PATCH] Ignore DWARF sections. - -Assume for now that we don't care about the DWARF sections due to path -differences. However, in the case the tool is ran on a "debug" package -it will most likely falsely say the packages have no differences. - -Upstream-Status: Inappropriate [other] - -The package difference tool is correctly labelling the packages as different -when the DWARF sections don't match due to paths. The paths in the debug info -should actually be made to be the same using compile flags or some other -mechanism. - -However, to make the tool more useful to Yocto until the work can be done -to ensure identical paths in debug sections, this patch is being applied. - -Signed-off-by: Randy Witt ---- - pkg-diff.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/pkg-diff.sh b/pkg-diff.sh -index 9c2125e..b0d77c8 100755 ---- a/pkg-diff.sh -+++ b/pkg-diff.sh -@@ -851,7 +851,7 @@ check_single_file() - echo "" >$file1 - echo "" >$file2 - # Don't compare .build-id, .gnu_debuglink and .gnu_debugdata sections -- sections="$($OBJDUMP -s new/$file | grep "Contents of section .*:" | sed -r "s,.* (.*):,\1,g" | grep -v -e "\.build-id" -e "\.gnu_debuglink" -e "\.gnu_debugdata" | tr "\n" " ")" -+ sections="$($OBJDUMP -s new/$file | grep "Contents of section .*:" | sed -r "s,.* (.*):,\1,g" | grep -v -e "\.build-id" -e "\.gnu_debuglink" -e "\.gnu_debugdata" -e "\.debug_abbrev" -e "\.debug_aranges" -e "\.debug_frame" -e "\.debug_info" -e "\.debug_line" -e "\.debug_loc" -e "\.debug_macinfo" -e "\.debug_pubnames" -e "\.debug_pubtypes" -e "\.debug_ranges" -e "\.debug_str" | tr "\n" " ")" - for section in $sections; do - $OBJDUMP -s -j $section old/$file | sed "s,^old/,," > $file1 - $OBJDUMP -s -j $section new/$file | sed "s,^new/,," > $file2 diff --git a/poky/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb b/poky/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb index b568bb39f..c08da6cdc 100644 --- a/poky/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb +++ b/poky/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb @@ -11,7 +11,6 @@ SRC_URI = " \ ${SOURCEFORGE_MIRROR}/project/cdrtools/cdrtools-${PV}.tar.bz2 \ file://0001-Don-t-set-uid-gid-during-install.patch \ " -UPSTREAM_VERSION_UNKNOWN = "1" SRC_URI[md5sum] = "7d45c5b7e1f78d85d1583b361aee6e8b" SRC_URI[sha256sum] = "ed282eb6276c4154ce6a0b5dee0bdb81940d0cbbfc7d03f769c4735ef5f5860f" diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-don-t-try-to-rehash-a-deleted-directory.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-don-t-try-to-rehash-a-deleted-directory.patch deleted file mode 100644 index ba4e3a3c9..000000000 --- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-don-t-try-to-rehash-a-deleted-directory.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 71ba13755337e19c9a826dfc874562a36e1b24d3 Mon Sep 17 00:00:00 2001 -From: Theodore Ts'o -Date: Thu, 19 Dec 2019 19:45:06 -0500 -Subject: [PATCH] e2fsck: don't try to rehash a deleted directory - -If directory has been deleted in pass1[bcd] processing, then we -shouldn't try to rehash the directory in pass 3a when we try to -rehash/reoptimize directories. - -Signed-off-by: Theodore Ts'o - -Upstream-Status: Backport [https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?id=71ba13755337e19c9a826dfc874562a36e1b24d3] -Signed-off-by: Anuj Mittal ---- - e2fsck/pass1b.c | 4 ++++ - e2fsck/rehash.c | 2 ++ - 2 files changed, 6 insertions(+) - -diff --git a/e2fsck/pass1b.c b/e2fsck/pass1b.c -index 5693b9cf..bca701ca 100644 ---- a/e2fsck/pass1b.c -+++ b/e2fsck/pass1b.c -@@ -705,6 +705,10 @@ static void delete_file(e2fsck_t ctx, ext2_ino_t ino, - fix_problem(ctx, PR_1B_BLOCK_ITERATE, &pctx); - if (ctx->inode_bad_map) - ext2fs_unmark_inode_bitmap2(ctx->inode_bad_map, ino); -+ if (ctx->inode_reg_map) -+ ext2fs_unmark_inode_bitmap2(ctx->inode_reg_map, ino); -+ ext2fs_unmark_inode_bitmap2(ctx->inode_dir_map, ino); -+ ext2fs_unmark_inode_bitmap2(ctx->inode_used_map, ino); - ext2fs_inode_alloc_stats2(fs, ino, -1, LINUX_S_ISDIR(dp->inode.i_mode)); - quota_data_sub(ctx->qctx, &dp->inode, ino, - pb.dup_blocks * fs->blocksize); -diff --git a/e2fsck/rehash.c b/e2fsck/rehash.c -index 3dd1e941..2c908be0 100644 ---- a/e2fsck/rehash.c -+++ b/e2fsck/rehash.c -@@ -1028,6 +1028,8 @@ void e2fsck_rehash_directories(e2fsck_t ctx) - if (!ext2fs_u32_list_iterate(iter, &ino)) - break; - } -+ if (!ext2fs_test_inode_bitmap2(ctx->inode_dir_map, ino)) -+ continue; - - pctx.dir = ino; - if (first) { --- -2.24.1 - diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-misc-create_inode.c-set-dir-s-mode-correctly.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-misc-create_inode.c-set-dir-s-mode-correctly.patch deleted file mode 100644 index fc4a54098..000000000 --- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-misc-create_inode.c-set-dir-s-mode-correctly.patch +++ /dev/null @@ -1,41 +0,0 @@ -From f6d188580c2c9599319076fee22f2424652c711c Mon Sep 17 00:00:00 2001 -From: Robert Yang -Date: Wed, 13 Sep 2017 19:55:35 -0700 -Subject: [PATCH] misc/create_inode.c: set dir's mode correctly - -The dir's mode has been set by ext2fs_mkdir() with umask, so -reset it to the source's mode in set_inode_extra(). - -Fixed when source dir's mode is 521, but tarball would be 721, this was -incorrect. - -Upstream-Status: Submitted - -Signed-off-by: Robert Yang ---- - misc/create_inode.c | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/misc/create_inode.c b/misc/create_inode.c -index 8ce3faf..50fbaa8 100644 ---- a/misc/create_inode.c -+++ b/misc/create_inode.c -@@ -116,7 +116,14 @@ static errcode_t set_inode_extra(ext2_filsys fs, ext2_ino_t ino, - - inode.i_uid = st->st_uid; - inode.i_gid = st->st_gid; -- inode.i_mode |= st->st_mode; -+ /* -+ * The dir's mode has been set by ext2fs_mkdir() with umask, so -+ * reset it to the source's mode -+ */ -+ if S_ISDIR(st->st_mode) -+ inode.i_mode = LINUX_S_IFDIR | st->st_mode; -+ else -+ inode.i_mode |= st->st_mode; - inode.i_atime = st->st_atime; - inode.i_mtime = st->st_mtime; - inode.i_ctime = st->st_ctime; --- -2.10.2 - diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/CVE-2019-5188.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/CVE-2019-5188.patch deleted file mode 100644 index de4bce003..000000000 --- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/CVE-2019-5188.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 8dd73c149f418238f19791f9d666089ef9734dff Mon Sep 17 00:00:00 2001 -From: Theodore Ts'o -Date: Thu, 19 Dec 2019 19:37:34 -0500 -Subject: [PATCH] e2fsck: abort if there is a corrupted directory block when - rehashing - -In e2fsck pass 3a, when we are rehashing directories, at least in -theory, all of the directories should have had corruptions with -respect to directory entry structure fixed. However, it's possible -(for example, if the user declined a fix) that we can reach this stage -of processing with a corrupted directory entries. - -So check for that case and don't try to process a corrupted directory -block so we don't run into trouble in mutate_name() if there is a -zero-length file name. - -Addresses: TALOS-2019-0973 -Addresses: CVE-2019-5188 -Signed-off-by: Theodore Ts'o - -CVE: CVE-2019-5188 -Signed-off-by: Anuj Mittal -Upstream-Status: Backport [https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?id=8dd73c149f418238f19791f9d666089ef9734dff] ---- - e2fsck/rehash.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/e2fsck/rehash.c b/e2fsck/rehash.c -index a5fc1be1..3dd1e941 100644 ---- a/e2fsck/rehash.c -+++ b/e2fsck/rehash.c -@@ -160,6 +160,10 @@ static int fill_dir_block(ext2_filsys fs, - dir_offset += rec_len; - if (dirent->inode == 0) - continue; -+ if ((name_len) == 0) { -+ fd->err = EXT2_ET_DIR_CORRUPTED; -+ return BLOCK_ABORT; -+ } - if (!fd->compress && (name_len == 1) && - (dirent->name[0] == '.')) - continue; -@@ -401,6 +405,11 @@ static int duplicate_search_and_fix(e2fsck_t ctx, ext2_filsys fs, - continue; - } - new_len = ext2fs_dirent_name_len(ent->dir); -+ if (new_len == 0) { -+ /* should never happen */ -+ ext2fs_unmark_valid(fs); -+ continue; -+ } - memcpy(new_name, ent->dir->name, new_len); - mutate_name(new_name, &new_len); - for (j=0; j < fd->num_array; j++) { --- -2.24.1 - diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsck-fix-use-after-free-in-calculate_tree.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsck-fix-use-after-free-in-calculate_tree.patch deleted file mode 100644 index 342a2b855..000000000 --- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsck-fix-use-after-free-in-calculate_tree.patch +++ /dev/null @@ -1,76 +0,0 @@ -From: Wang Shilong -Date: Mon, 30 Dec 2019 19:52:39 -0500 -Subject: e2fsck: fix use after free in calculate_tree() - -The problem is alloc_blocks() will call get_next_block() which might -reallocate outdir->buf, and memory address could be changed after -this. To fix this, pointers that point into outdir->buf, such as -int_limit and root need to be recaulated based on the new starting -address of outdir->buf. - -[ Changed to correctly recalculate int_limit, and to optimize how we - reallocate outdir->buf. -TYT ] - -Addresses-Debian-Bug: 948517 -Signed-off-by: Wang Shilong -Signed-off-by: Theodore Ts'o -(cherry picked from commit 101e73e99ccafa0403fcb27dd7413033b587ca01) - -Signed-off-by: Anuj Mittal -Upstream-Status: Backport [https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?id=101e73e99ccafa0403fcb27dd7413033b587ca01] ---- - e2fsck/rehash.c | 17 ++++++++++++++++- - 1 file changed, 16 insertions(+), 1 deletion(-) - -diff --git a/e2fsck/rehash.c b/e2fsck/rehash.c -index 0a5888a9..2574e151 100644 ---- a/e2fsck/rehash.c -+++ b/e2fsck/rehash.c -@@ -295,7 +295,11 @@ static errcode_t get_next_block(ext2_filsys fs, struct out_dir *outdir, - errcode_t retval; - - if (outdir->num >= outdir->max) { -- retval = alloc_size_dir(fs, outdir, outdir->max + 50); -+ int increment = outdir->max / 10; -+ -+ if (increment < 50) -+ increment = 50; -+ retval = alloc_size_dir(fs, outdir, outdir->max + increment); - if (retval) - return retval; - } -@@ -637,6 +641,9 @@ static int alloc_blocks(ext2_filsys fs, - if (retval) - return retval; - -+ /* outdir->buf might be reallocated */ -+ *prev_ent = (struct ext2_dx_entry *) (outdir->buf + *prev_offset); -+ - *next_ent = set_int_node(fs, block_start); - *limit = (struct ext2_dx_countlimit *)(*next_ent); - if (next_offset) -@@ -726,6 +733,9 @@ static errcode_t calculate_tree(ext2_filsys fs, - return retval; - } - if (c3 == 0) { -+ int delta1 = (char *)int_limit - outdir->buf; -+ int delta2 = (char *)root - outdir->buf; -+ - retval = alloc_blocks(fs, &limit, &int_ent, - &dx_ent, &int_offset, - NULL, outdir, i, &c2, -@@ -733,6 +743,11 @@ static errcode_t calculate_tree(ext2_filsys fs, - if (retval) - return retval; - -+ /* outdir->buf might be reallocated */ -+ int_limit = (struct ext2_dx_countlimit *) -+ (outdir->buf + delta1); -+ root = (struct ext2_dx_entry *) -+ (outdir->buf + delta2); - } - dx_ent->block = ext2fs_cpu_to_le32(i); - if (c3 != limit->limit) --- -2.24.1 - diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch index 4d335af4c..284ac9019 100644 --- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch +++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch @@ -1,4 +1,4 @@ -From e8331a76983e839a3d193446ab8ae9c1b09daa07 Mon Sep 17 00:00:00 2001 +From b55dfb4b62e507ae4f0814aec7597b56f9d6292a Mon Sep 17 00:00:00 2001 From: Jackie Huang Date: Wed, 10 Aug 2016 11:19:44 +0800 Subject: [PATCH] Fix missing check for permission denied. diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch index 95e6a7a2d..aac88eed9 100644 --- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch +++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch @@ -1,4 +1,4 @@ -From de6d6f0dd010f5b9d917553acb9430278f448f23 Mon Sep 17 00:00:00 2001 +From 9aa68ad81b97847dda3493145f4b0a7cc580c551 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Mon, 23 Dec 2013 13:38:34 +0000 Subject: [PATCH] e2fsprogs: silence debugfs diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.4.bb b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.4.bb deleted file mode 100644 index 4f7cafeac..000000000 --- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.4.bb +++ /dev/null @@ -1,144 +0,0 @@ -require e2fsprogs.inc - -SRC_URI += "file://remove.ldconfig.call.patch \ - file://run-ptest \ - file://ptest.patch \ - file://mkdir_p.patch \ - file://0001-misc-create_inode.c-set-dir-s-mode-correctly.patch \ - file://0001-configure.ac-correct-AM_GNU_GETTEXT.patch \ - file://0001-intl-do-not-try-to-use-gettext-defines-that-no-longe.patch \ - file://CVE-2019-5188.patch \ - file://0001-e2fsck-don-t-try-to-rehash-a-deleted-directory.patch \ - file://e2fsck-fix-use-after-free-in-calculate_tree.patch \ - " - -SRC_URI_append_class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch \ - file://quiet-debugfs.patch \ -" - -SRCREV = "984ff8d6a0a1d5dc300505f67b38ed5047d51dac" -UPSTREAM_CHECK_GITTAGREGEX = "v(?P\d+\.\d+(\.\d+)*)$" - -EXTRA_OECONF += "--libdir=${base_libdir} --sbindir=${base_sbindir} \ - --enable-elf-shlibs --disable-libuuid --disable-uuidd \ - --disable-libblkid --enable-verbose-makecmds \ - --with-crond-dir=no" - -EXTRA_OECONF_darwin = "--libdir=${base_libdir} --sbindir=${base_sbindir} --enable-bsd-shlibs" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[fuse] = '--enable-fuse2fs,--disable-fuse2fs,fuse' - -# make locale rules sometimes fire, sometimes don't as git doesn't preserve -# file mktime. Touch the files introducing non-determinism to the build -do_compile_prepend (){ - find ${S}/po -type f -name "*.po" -exec touch {} + -} - -do_install () { - oe_runmake 'DESTDIR=${D}' install - oe_runmake 'DESTDIR=${D}' install-libs - # We use blkid from util-linux now so remove from here - rm -f ${D}${base_libdir}/libblkid* - rm -rf ${D}${includedir}/blkid - rm -f ${D}${base_libdir}/pkgconfig/blkid.pc - rm -f ${D}${base_sbindir}/blkid - rm -f ${D}${base_sbindir}/fsck - rm -f ${D}${base_sbindir}/findfs - - # e2initrd_helper and the pkgconfig files belong in libdir - if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then - install -d ${D}${libdir} - mv ${D}${base_libdir}/e2initrd_helper ${D}${libdir} - mv ${D}${base_libdir}/pkgconfig ${D}${libdir} - fi - - oe_multilib_header ext2fs/ext2_types.h - install -d ${D}${base_bindir} - mv ${D}${bindir}/chattr ${D}${base_bindir}/chattr.e2fsprogs - - install -v -m 755 ${S}/contrib/populate-extfs.sh ${D}${base_sbindir}/ - - # Clean host path (build directory) in compile_et, mk_cmds - sed -i -e "s,\(ET_DIR=.*\)${S}/lib/et\(.*\),\1${datadir}/et\2,g" ${D}${bindir}/compile_et - sed -i -e "s,\(SS_DIR=.*\)${S}/lib/ss\(.*\),\1${datadir}/ss\2,g" ${D}${bindir}/mk_cmds -} - -# Need to find the right mke2fs.conf file -e2fsprogs_conf_fixup () { - for i in mke2fs mkfs.ext2 mkfs.ext3 mkfs.ext4; do - create_wrapper ${D}${base_sbindir}/$i MKE2FS_CONFIG=${sysconfdir}/mke2fs.conf - done -} - -do_install_append_class-native() { - e2fsprogs_conf_fixup -} - -do_install_append_class-nativesdk() { - e2fsprogs_conf_fixup -} - -do_install_append_class-target() { - mv ${D}${base_sbindir}/mke2fs ${D}${base_sbindir}/mke2fs.e2fsprogs - mv ${D}${base_sbindir}/mkfs.ext2 ${D}${base_sbindir}/mkfs.ext2.e2fsprogs - mv ${D}${base_sbindir}/tune2fs ${D}${base_sbindir}/tune2fs.e2fsprogs -} - -RDEPENDS_e2fsprogs = "e2fsprogs-badblocks e2fsprogs-dumpe2fs" -RRECOMMENDS_e2fsprogs = "e2fsprogs-mke2fs e2fsprogs-e2fsck" - -PACKAGES =+ "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-e2scrub e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs" -PACKAGES =+ "libcomerr libss libe2p libext2fs" - -FILES_e2fsprogs-dumpe2fs = "${base_sbindir}/dumpe2fs" -FILES_e2fsprogs-resize2fs = "${base_sbindir}/resize2fs*" -FILES_e2fsprogs-e2fsck = "${base_sbindir}/e2fsck ${base_sbindir}/fsck.ext*" -FILES_e2fsprogs-e2scrub = "${base_sbindir}/e2scrub*" -FILES_e2fsprogs-mke2fs = "${base_sbindir}/mke2fs.e2fsprogs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf" -FILES_e2fsprogs-tune2fs = "${base_sbindir}/tune2fs.e2fsprogs ${base_sbindir}/e2label" -FILES_e2fsprogs-badblocks = "${base_sbindir}/badblocks" -FILES_libcomerr = "${base_libdir}/libcom_err.so.*" -FILES_libss = "${base_libdir}/libss.so.*" -FILES_libe2p = "${base_libdir}/libe2p.so.*" -FILES_libext2fs = "${libdir}/e2initrd_helper ${base_libdir}/libext2fs.so.*" -FILES_${PN}-dev += "${datadir}/*/*.awk ${datadir}/*/*.sed ${base_libdir}/*.so ${bindir}/compile_et ${bindir}/mk_cmds" - -ALTERNATIVE_${PN} = "chattr" -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_LINK_NAME[chattr] = "${base_bindir}/chattr" -ALTERNATIVE_TARGET[chattr] = "${base_bindir}/chattr.e2fsprogs" - -ALTERNATIVE_${PN}-doc = "fsck.8" -ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8" - -ALTERNATIVE_${PN}-mke2fs = "mke2fs mkfs.ext2" -ALTERNATIVE_LINK_NAME[mke2fs] = "${base_sbindir}/mke2fs" -ALTERNATIVE_LINK_NAME[mkfs.ext2] = "${base_sbindir}/mkfs.ext2" - -ALTERNATIVE_${PN}-tune2fs = "tune2fs" -ALTERNATIVE_LINK_NAME[tune2fs] = "${base_sbindir}/tune2fs" - -RDEPENDS_e2fsprogs-e2scrub = "bash" -RDEPENDS_${PN}-ptest += "coreutils procps bash bzip2 diffutils perl sed" -RDEPENDS_${PN}-ptest += "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs" - -do_compile_ptest() { - oe_runmake -C ${B}/tests -} - -do_install_ptest() { - cp -R --no-dereference --preserve=mode,links -v ${B}/tests ${D}${PTEST_PATH}/test - cp -R --no-dereference --preserve=mode,links -v ${S}/tests/* ${D}${PTEST_PATH}/test - sed -e 's!../e2fsck/e2fsck!e2fsck!g' \ - -e 's!../misc/tune2fs!tune2fs!g' -i ${D}${PTEST_PATH}/test/*/expect* - sed -e 's!../e2fsck/e2fsck!${base_sbindir}/e2fsck!g' -i ${D}${PTEST_PATH}/test/*/script - - # Remove various files - find "${D}${PTEST_PATH}" -type f \ - \( -name 'Makefile' -o -name 'Makefile.in' -o -name '*.o' -o -name '*.c' -o -name '*.h' \)\ - -exec rm -f {} + - - install -d ${D}${PTEST_PATH}/lib - install -m 0644 ${B}/lib/config.h ${D}${PTEST_PATH}/lib/ -} diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb new file mode 100644 index 000000000..4ad5b03ca --- /dev/null +++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb @@ -0,0 +1,140 @@ +require e2fsprogs.inc + +SRC_URI += "file://remove.ldconfig.call.patch \ + file://run-ptest \ + file://ptest.patch \ + file://mkdir_p.patch \ + file://0001-configure.ac-correct-AM_GNU_GETTEXT.patch \ + file://0001-intl-do-not-try-to-use-gettext-defines-that-no-longe.patch \ + " + +SRC_URI_append_class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch \ + file://quiet-debugfs.patch \ +" + +SRCREV = "506d96fe640f76ab04276e0a7c578aa108ce19f8" +UPSTREAM_CHECK_GITTAGREGEX = "v(?P\d+\.\d+(\.\d+)*)$" + +EXTRA_OECONF += "--libdir=${base_libdir} --sbindir=${base_sbindir} \ + --enable-elf-shlibs --disable-libuuid --disable-uuidd \ + --disable-libblkid --enable-verbose-makecmds \ + --with-crond-dir=no" + +EXTRA_OECONF_darwin = "--libdir=${base_libdir} --sbindir=${base_sbindir} --enable-bsd-shlibs" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[fuse] = '--enable-fuse2fs,--disable-fuse2fs,fuse' + +# make locale rules sometimes fire, sometimes don't as git doesn't preserve +# file mktime. Touch the files introducing non-determinism to the build +do_compile_prepend (){ + find ${S}/po -type f -name "*.po" -exec touch {} + +} + +do_install () { + oe_runmake 'DESTDIR=${D}' install + oe_runmake 'DESTDIR=${D}' install-libs + # We use blkid from util-linux now so remove from here + rm -f ${D}${base_libdir}/libblkid* + rm -rf ${D}${includedir}/blkid + rm -f ${D}${base_libdir}/pkgconfig/blkid.pc + rm -f ${D}${base_sbindir}/blkid + rm -f ${D}${base_sbindir}/fsck + rm -f ${D}${base_sbindir}/findfs + + # e2initrd_helper and the pkgconfig files belong in libdir + if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then + install -d ${D}${libdir} + mv ${D}${base_libdir}/e2initrd_helper ${D}${libdir} + mv ${D}${base_libdir}/pkgconfig ${D}${libdir} + fi + + oe_multilib_header ext2fs/ext2_types.h + install -d ${D}${base_bindir} + mv ${D}${bindir}/chattr ${D}${base_bindir}/chattr.e2fsprogs + + install -v -m 755 ${S}/contrib/populate-extfs.sh ${D}${base_sbindir}/ + + # Clean host path (build directory) in compile_et, mk_cmds + sed -i -e "s,\(ET_DIR=.*\)${S}/lib/et\(.*\),\1${datadir}/et\2,g" ${D}${bindir}/compile_et + sed -i -e "s,\(SS_DIR=.*\)${S}/lib/ss\(.*\),\1${datadir}/ss\2,g" ${D}${bindir}/mk_cmds +} + +# Need to find the right mke2fs.conf file +e2fsprogs_conf_fixup () { + for i in mke2fs mkfs.ext2 mkfs.ext3 mkfs.ext4; do + create_wrapper ${D}${base_sbindir}/$i MKE2FS_CONFIG=${sysconfdir}/mke2fs.conf + done +} + +do_install_append_class-native() { + e2fsprogs_conf_fixup +} + +do_install_append_class-nativesdk() { + e2fsprogs_conf_fixup +} + +do_install_append_class-target() { + mv ${D}${base_sbindir}/mke2fs ${D}${base_sbindir}/mke2fs.e2fsprogs + mv ${D}${base_sbindir}/mkfs.ext2 ${D}${base_sbindir}/mkfs.ext2.e2fsprogs + mv ${D}${base_sbindir}/tune2fs ${D}${base_sbindir}/tune2fs.e2fsprogs +} + +RDEPENDS_e2fsprogs = "e2fsprogs-badblocks e2fsprogs-dumpe2fs" +RRECOMMENDS_e2fsprogs = "e2fsprogs-mke2fs e2fsprogs-e2fsck" + +PACKAGES =+ "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-e2scrub e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs" +PACKAGES =+ "libcomerr libss libe2p libext2fs" + +FILES_e2fsprogs-dumpe2fs = "${base_sbindir}/dumpe2fs" +FILES_e2fsprogs-resize2fs = "${base_sbindir}/resize2fs*" +FILES_e2fsprogs-e2fsck = "${base_sbindir}/e2fsck ${base_sbindir}/fsck.ext*" +FILES_e2fsprogs-e2scrub = "${base_sbindir}/e2scrub*" +FILES_e2fsprogs-mke2fs = "${base_sbindir}/mke2fs.e2fsprogs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf" +FILES_e2fsprogs-tune2fs = "${base_sbindir}/tune2fs.e2fsprogs ${base_sbindir}/e2label" +FILES_e2fsprogs-badblocks = "${base_sbindir}/badblocks" +FILES_libcomerr = "${base_libdir}/libcom_err.so.*" +FILES_libss = "${base_libdir}/libss.so.*" +FILES_libe2p = "${base_libdir}/libe2p.so.*" +FILES_libext2fs = "${libdir}/e2initrd_helper ${base_libdir}/libext2fs.so.*" +FILES_${PN}-dev += "${datadir}/*/*.awk ${datadir}/*/*.sed ${base_libdir}/*.so ${bindir}/compile_et ${bindir}/mk_cmds" + +ALTERNATIVE_${PN} = "chattr" +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_LINK_NAME[chattr] = "${base_bindir}/chattr" +ALTERNATIVE_TARGET[chattr] = "${base_bindir}/chattr.e2fsprogs" + +ALTERNATIVE_${PN}-doc = "fsck.8" +ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8" + +ALTERNATIVE_${PN}-mke2fs = "mke2fs mkfs.ext2" +ALTERNATIVE_LINK_NAME[mke2fs] = "${base_sbindir}/mke2fs" +ALTERNATIVE_LINK_NAME[mkfs.ext2] = "${base_sbindir}/mkfs.ext2" + +ALTERNATIVE_${PN}-tune2fs = "tune2fs" +ALTERNATIVE_LINK_NAME[tune2fs] = "${base_sbindir}/tune2fs" + +RDEPENDS_e2fsprogs-e2scrub = "bash" +RDEPENDS_${PN}-ptest += "coreutils procps bash bzip2 diffutils perl sed" +RDEPENDS_${PN}-ptest += "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs" + +do_compile_ptest() { + oe_runmake -C ${B}/tests +} + +do_install_ptest() { + cp -R --no-dereference --preserve=mode,links -v ${B}/tests ${D}${PTEST_PATH}/test + cp -R --no-dereference --preserve=mode,links -v ${S}/tests/* ${D}${PTEST_PATH}/test + sed -e 's!../e2fsck/e2fsck!e2fsck!g' \ + -e 's!../misc/tune2fs!tune2fs!g' -i ${D}${PTEST_PATH}/test/*/expect* + sed -e 's!../e2fsck/e2fsck!${base_sbindir}/e2fsck!g' -i ${D}${PTEST_PATH}/test/*/script + + # Remove various files + find "${D}${PTEST_PATH}" -type f \ + \( -name 'Makefile' -o -name 'Makefile.in' -o -name '*.o' -o -name '*.c' -o -name '*.h' \)\ + -exec rm -f {} + + + install -d ${D}${PTEST_PATH}/lib + install -m 0644 ${B}/lib/config.h ${D}${PTEST_PATH}/lib/ +} diff --git a/poky/meta/recipes-devtools/file/file_5.38.bb b/poky/meta/recipes-devtools/file/file_5.38.bb index b8f09107e..007db4790 100644 --- a/poky/meta/recipes-devtools/file/file_5.38.bb +++ b/poky/meta/recipes-devtools/file/file_5.38.bb @@ -8,8 +8,8 @@ SECTION = "console/utils" LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYING;beginline=2;md5=0251eaec1188b20d9a72c502ecfdda1b" -DEPENDS = "zlib file-replacement-native" -DEPENDS_class-native = "zlib-native" +DEPENDS = "file-replacement-native" +DEPENDS_class-native = "" SRC_URI = "git://github.com/file/file.git" @@ -18,6 +18,11 @@ S = "${WORKDIR}/git" inherit autotools update-alternatives +PACKAGECONFIG ??= "zlib" +PACKAGECONFIG[bz2] = "--enable-bzlib, --disable-bzlib, bzip2" +PACKAGECONFIG[lzma] = "--enable-xzlib, --disable-xzlib, xz" +PACKAGECONFIG[zlib] = "--enable-zlib, --disable-zlib, zlib" + EXTRA_OECONF += "--disable-libseccomp" ALTERNATIVE_${PN} = "file" diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1.inc b/poky/meta/recipes-devtools/gcc/gcc-10.1.inc new file mode 100644 index 000000000..245f0a6fd --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1.inc @@ -0,0 +1,119 @@ +require gcc-common.inc + +# Third digit in PV should be incremented after a minor release + +PV = "10.1.0" + +# BINV should be incremented to a revision after a minor gcc release + +BINV = "10.1.0" + +FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-10.1:${FILE_DIRNAME}/gcc-10.1/backport:" + +DEPENDS =+ "mpfr gmp libmpc zlib flex-native" +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-native" + +LICENSE = "GPL-3.0-with-GCC-exception & GPLv3" + +LIC_FILES_CHKSUM = "\ + file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \ + file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8 \ +" + +BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz" +#RELEASE ?= "93a49d2d2292893b9b7f38132df949c70942838c" +#BASEURI ?= "https://github.com/gcc-mirror/gcc/archive/${RELEASE}.zip;downloadfilename=gcc-${PV}-${RELEASE}.zip" +SRC_URI = "\ + ${BASEURI} \ + file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \ + file://0002-gcc-poison-system-directories.patch \ + file://0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \ + file://0004-64-bit-multilib-hack.patch \ + file://0005-optional-libstdc.patch \ + file://0006-COLLECT_GCC_OPTIONS.patch \ + file://0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch \ + file://0008-fortran-cross-compile-hack.patch \ + file://0009-cpp-honor-sysroot.patch \ + file://0010-MIPS64-Default-to-N64-ABI.patch \ + file://0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch \ + file://0012-gcc-Fix-argument-list-too-long-error.patch \ + file://0013-Disable-sdt.patch \ + file://0014-libtool.patch \ + file://0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch \ + file://0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch \ + file://0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch \ + file://0018-export-CPP.patch \ + file://0019-Ensure-target-gcc-headers-can-be-included.patch \ + file://0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch \ + file://0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch \ + file://0022-aarch64-Add-support-for-musl-ldso.patch \ + file://0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch \ + file://0024-handle-sysroot-support-for-nativesdk-gcc.patch \ + file://0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch \ + file://0026-Fix-various-_FOR_BUILD-and-related-variables.patch \ + file://0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch \ + file://0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \ + file://0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \ + file://0030-sync-gcc-stddef.h-with-musl.patch \ + file://0031-fix-segmentation-fault-in-precompiled-header-generat.patch \ + file://0032-Fix-for-testsuite-failure.patch \ + file://0033-Re-introduce-spe-commandline-options.patch \ + file://0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \ + file://0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ + file://0036-Enable-CET-in-cross-compiler-if-possible.patch \ + file://0037-mingw32-Enable-operation_not_supported.patch \ + file://0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch \ +" +SRC_URI[sha256sum] = "b6898a23844b656f1b68691c5c012036c2e694ac4b53a8918d4712ad876e7ea2" + +S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}" +# For dev release snapshotting +#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${RELEASE}" +#B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}" + +# Language Overrides +FORTRAN = "" +JAVA = "" + +LTO = "--enable-lto" +SSP ?= "--disable-libssp" +SSP_mingw32 = "--enable-libssp" + +EXTRA_OECONF_BASE = "\ + ${LTO} \ + ${SSP} \ + --enable-libitm \ + --disable-bootstrap \ + --disable-libmudflap \ + --with-system-zlib \ + ${@'--with-linker-hash-style=${LINKER_HASH_STYLE}' if '${LINKER_HASH_STYLE}' else ''} \ + --enable-linker-build-id \ + --with-ppl=no \ + --with-cloog=no \ + --enable-checking=release \ + --enable-cheaders=c_global \ + --without-isl \ +" + +EXTRA_OECONF_INITIAL = "\ + --disable-libmudflap \ + --disable-libgomp \ + --disable-libitm \ + --disable-libquadmath \ + --with-system-zlib \ + --disable-lto \ + --disable-plugin \ + --enable-linker-build-id \ + --enable-decimal-float=no \ + --without-isl \ + --disable-libssp \ +" + +EXTRA_OECONF_PATHS = "\ + --with-gxx-include-dir=/not/exist{target_includedir}/c++/${BINV} \ + --with-sysroot=/not/exist \ + --with-build-sysroot=${STAGING_DIR_TARGET} \ +" diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch new file mode 100644 index 000000000..82ae9f8d1 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch @@ -0,0 +1,39 @@ +From f2a5dc3bc7e5727d6bf77e1c6e8a31a6f000883d Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 08:37:11 +0400 +Subject: [PATCH] gcc-4.3.1: ARCH_FLAGS_FOR_TARGET + +Signed-off-by: Khem Raj + +Upstream-Status: Inappropriate [embedded specific] +--- + configure | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 4cc938ebb7d..226a64939d1 100755 +--- a/configure ++++ b/configure +@@ -7722,7 +7722,7 @@ fi + # for target_alias and gcc doesn't manage it consistently. + target_configargs="--cache-file=./config.cache ${target_configargs}" + +-FLAGS_FOR_TARGET= ++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET" + case " $target_configdirs " in + *" newlib "*) + case " $target_configargs " in +diff --git a/configure.ac b/configure.ac +index c78d9cbea62..f024f4bac9b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -3227,7 +3227,7 @@ fi + # for target_alias and gcc doesn't manage it consistently. + target_configargs="--cache-file=./config.cache ${target_configargs}" + +-FLAGS_FOR_TARGET= ++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET" + case " $target_configdirs " in + *" newlib "*) + case " $target_configargs " in diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0002-gcc-poison-system-directories.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0002-gcc-poison-system-directories.patch new file mode 100644 index 000000000..30a848601 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0002-gcc-poison-system-directories.patch @@ -0,0 +1,200 @@ +From 74cc21f474402cf3578e37e1d7a1a22bbd070f6a Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 08:59:00 +0400 +Subject: [PATCH] gcc: poison-system-directories + +Add /sw/include and /opt/include based on the original +zecke-no-host-includes.patch patch. The original patch checked for +/usr/include, /sw/include and /opt/include and then triggered a failure and +aborted. + +Instead, we add the two missing items to the current scan. If the user +wants this to be a failure, they can add "-Werror=poison-system-directories". + +Signed-off-by: Mark Hatle +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + gcc/common.opt | 4 ++++ + gcc/config.in | 6 ++++++ + gcc/configure | 16 ++++++++++++++++ + gcc/configure.ac | 10 ++++++++++ + gcc/doc/invoke.texi | 9 +++++++++ + gcc/gcc.c | 2 ++ + gcc/incpath.c | 21 +++++++++++++++++++++ + 7 files changed, 68 insertions(+) + +diff --git a/gcc/common.opt b/gcc/common.opt +index 65a82410abc..415f38fa1f4 100644 +--- a/gcc/common.opt ++++ b/gcc/common.opt +@@ -682,6 +682,10 @@ Wreturn-local-addr + Common Var(warn_return_local_addr) Init(1) Warning + Warn about returning a pointer/reference to a local or temporary variable. + ++Wpoison-system-directories ++Common Var(flag_poison_system_directories) Init(1) Warning ++Warn for -I and -L options using system directories if cross compiling ++ + Wshadow + Common Var(warn_shadow) Warning + Warn when one variable shadows another. Same as -Wshadow=global. +diff --git a/gcc/config.in b/gcc/config.in +index 809e7b26823..5adeaeed36b 100644 +--- a/gcc/config.in ++++ b/gcc/config.in +@@ -224,6 +224,12 @@ + #endif + + ++/* Define to warn for use of native system header directories */ ++#ifndef USED_FOR_TARGET ++#undef ENABLE_POISON_SYSTEM_DIRECTORIES ++#endif ++ ++ + /* Define if you want all operations on RTL (the basic data structure of the + optimizer and back end) to be checked for dynamic type safety at runtime. + This is quite expensive. */ +diff --git a/gcc/configure b/gcc/configure +index cd3d9516fce..8de766a942c 100755 +--- a/gcc/configure ++++ b/gcc/configure +@@ -1010,6 +1010,7 @@ with_system_zlib + enable_maintainer_mode + enable_link_mutex + enable_version_specific_runtime_libs ++enable_poison_system_directories + enable_plugin + enable_host_shared + enable_libquadmath_support +@@ -1766,6 +1767,8 @@ Optional Features: + --enable-version-specific-runtime-libs + specify that runtime libraries should be installed + in a compiler-specific directory ++ --enable-poison-system-directories ++ warn for use of native system header directories + --enable-plugin enable plugin support + --enable-host-shared build host code as shared libraries + --disable-libquadmath-support +@@ -30235,6 +30238,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then : + fi + + ++# Check whether --enable-poison-system-directories was given. ++if test "${enable_poison_system_directories+set}" = set; then : ++ enableval=$enable_poison_system_directories; ++else ++ enable_poison_system_directories=no ++fi ++ ++if test "x${enable_poison_system_directories}" = "xyes"; then ++ ++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h ++ ++fi ++ + # Substitute configuration variables + + +diff --git a/gcc/configure.ac b/gcc/configure.ac +index 0de3b4bf97b..8bfd6feb780 100644 +--- a/gcc/configure.ac ++++ b/gcc/configure.ac +@@ -6595,6 +6595,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs, + [specify that runtime libraries should be + installed in a compiler-specific directory])]) + ++AC_ARG_ENABLE([poison-system-directories], ++ AS_HELP_STRING([--enable-poison-system-directories], ++ [warn for use of native system header directories]),, ++ [enable_poison_system_directories=no]) ++if test "x${enable_poison_system_directories}" = "xyes"; then ++ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], ++ [1], ++ [Define to warn for use of native system header directories]) ++fi ++ + # Substitute configuration variables + AC_SUBST(subdirs) + AC_SUBST(srcdir) +diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi +index f98161391a0..f12d8d12150 100644 +--- a/gcc/doc/invoke.texi ++++ b/gcc/doc/invoke.texi +@@ -348,6 +348,7 @@ Objective-C and Objective-C++ Dialects}. + -Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded @gol + -Wparentheses -Wno-pedantic-ms-format @gol + -Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast @gol ++-Wno-poison-system-directories @gol + -Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol + -Wrestrict -Wno-return-local-addr -Wreturn-type @gol + -Wno-scalar-storage-order -Wsequence-point @gol +@@ -6924,6 +6925,14 @@ made up of data only and thus requires no special treatment. But, for + most targets, it is made up of code and thus requires the stack to be + made executable in order for the program to work properly. + ++@item -Wno-poison-system-directories ++@opindex Wno-poison-system-directories ++Do not warn for @option{-I} or @option{-L} options using system ++directories such as @file{/usr/include} when cross compiling. This ++option is intended for use in chroot environments when such ++directories contain the correct headers and libraries for the target ++system rather than the host. ++ + @item -Wfloat-equal + @opindex Wfloat-equal + @opindex Wno-float-equal +diff --git a/gcc/gcc.c b/gcc/gcc.c +index 9f790db0daf..b2200c5185a 100644 +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -1041,6 +1041,8 @@ proper position among the other output files. */ + "%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \ + "%X %{o*} %{e*} %{N} %{n} %{r}\ + %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \ ++ %{Wno-poison-system-directories:--no-poison-system-directories} \ ++ %{Werror=poison-system-directories:--error-poison-system-directories} \ + %{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \ + VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \ + %{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\ +diff --git a/gcc/incpath.c b/gcc/incpath.c +index 8a2bda00f80..9098ab044ab 100644 +--- a/gcc/incpath.c ++++ b/gcc/incpath.c +@@ -26,6 +26,7 @@ + #include "intl.h" + #include "incpath.h" + #include "cppdefault.h" ++#include "diagnostic-core.h" + + /* Microsoft Windows does not natively support inodes. + VMS has non-numeric inodes. */ +@@ -393,6 +394,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose) + } + fprintf (stderr, _("End of search list.\n")); + } ++ ++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES ++ if (flag_poison_system_directories) ++ { ++ struct cpp_dir *p; ++ ++ for (p = heads[INC_QUOTE]; p; p = p->next) ++ { ++ if ((!strncmp (p->name, "/usr/include", 12)) ++ || (!strncmp (p->name, "/usr/local/include", 18)) ++ || (!strncmp (p->name, "/usr/X11R6/include", 18)) ++ || (!strncmp (p->name, "/sw/include", 11)) ++ || (!strncmp (p->name, "/opt/include", 12))) ++ warning (OPT_Wpoison_system_directories, ++ "include location \"%s\" is unsafe for " ++ "cross-compilation", ++ p->name); ++ } ++ } ++#endif + } + + /* Use given -I paths for #include "..." but not #include <...>, and diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch new file mode 100644 index 000000000..27237feb5 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch @@ -0,0 +1,70 @@ +From 6e3395c0bc933bdc3242d1dead4896d0aa4e11a8 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:08:31 +0400 +Subject: [PATCH] gcc-4.3.3: SYSROOT_CFLAGS_FOR_TARGET + +Before committing, I noticed that PR/32161 was marked as a dup of PR/32009, but my previous patch did not fix it. + +This alternative patch is better because it lets you just use CFLAGS_FOR_TARGET to set the compilation flags for libgcc. Since bootstrapped target libraries are never compiled with the native compiler, it makes little sense to use different flags for stage1 and later stages. And it also makes little sense to use a different variable than CFLAGS_FOR_TARGET. + +Other changes I had to do include: + +- moving the creation of default CFLAGS_FOR_TARGET from Makefile.am to configure.ac, because otherwise the BOOT_CFLAGS are substituted into CFLAGS_FOR_TARGET (which is "-O2 -g $(CFLAGS)") via $(CFLAGS). It is also cleaner this way though. + +- passing the right CFLAGS to configure scripts as exported environment variables + +I also stopped passing LIBCFLAGS to configure scripts since they are unused in the whole src tree. And I updated the documentation as H-P reminded me to do. + +Bootstrapped/regtested i686-pc-linux-gnu, will commit to 4.4 shortly. Ok for 4.3? + +Signed-off-by: Paolo Bonzini +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + configure | 32 ++++++++++++++++++++++++++++++++ + 1 file changed, 32 insertions(+) + +diff --git a/configure b/configure +index 226a64939d1..b31dc137fc9 100755 +--- a/configure ++++ b/configure +@@ -6971,6 +6971,38 @@ fi + + + ++# During gcc bootstrap, if we use some random cc for stage1 then CFLAGS ++# might be empty or "-g". We don't require a C++ compiler, so CXXFLAGS ++# might also be empty (or "-g", if a non-GCC C++ compiler is in the path). ++# We want to ensure that TARGET libraries (which we know are built with ++# gcc) are built with "-O2 -g", so include those options when setting ++# CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET. ++if test "x$CFLAGS_FOR_TARGET" = x; then ++ CFLAGS_FOR_TARGET=$CFLAGS ++ case " $CFLAGS " in ++ *" -O2 "*) ;; ++ *) CFLAGS_FOR_TARGET="-O2 $CFLAGS" ;; ++ esac ++ case " $CFLAGS " in ++ *" -g "* | *" -g3 "*) ;; ++ *) CFLAGS_FOR_TARGET="-g $CFLAGS" ;; ++ esac ++fi ++ ++ ++if test "x$CXXFLAGS_FOR_TARGET" = x; then ++ CXXFLAGS_FOR_TARGET=$CXXFLAGS ++ case " $CXXFLAGS " in ++ *" -O2 "*) ;; ++ *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS" ;; ++ esac ++ case " $CXXFLAGS " in ++ *" -g "* | *" -g3 "*) ;; ++ *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS" ;; ++ esac ++fi ++ ++ + # Handle --with-headers=XXX. If the value is not "yes", the contents of + # the named directory are copied to $(tooldir)/sys-include. + if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0004-64-bit-multilib-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0004-64-bit-multilib-hack.patch new file mode 100644 index 000000000..7c751bef6 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0004-64-bit-multilib-hack.patch @@ -0,0 +1,116 @@ +From 85a7c5aeb82ed61e6ef6d8e061b9da9e6a4a652c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:10:06 +0400 +Subject: [PATCH] 64-bit multilib hack. + +GCC has internal multilib handling code but it assumes a very specific rigid directory +layout. The build system implementation of multilib layout is very generic and allows +complete customisation of the library directories. + +This patch is a partial solution to allow any custom directories to be passed into gcc +and handled correctly. It forces gcc to use the base_libdir (which is the current +directory, "."). We need to do this for each multilib that is configured as we don't +know which compiler options may be being passed into the compiler. Since we have a compiler +per mulitlib at this point that isn't an issue. + +The one problem is the target compiler is only going to work for the default multlilib at +this point. Ideally we'd figure out which multilibs were being enabled with which paths +and be able to patch these entries with a complete set of correct paths but this we +don't have such code at this point. This is something the target gcc recipe should do +and override these platform defaults in its build config. + +Do same for riscv64 and aarch64 + +RP 15/8/11 + +Upstream-Status: Inappropriate[OE-Specific] + +Signed-off-by: Khem Raj +Signed-off-by: Elvis Dowson +Signed-off-by: Mark Hatle +--- + gcc/config/aarch64/t-aarch64-linux | 8 ++++---- + gcc/config/i386/t-linux64 | 6 ++---- + gcc/config/mips/t-linux64 | 10 +++------- + gcc/config/riscv/t-linux | 6 ++++-- + gcc/config/rs6000/t-linux64 | 5 ++--- + 5 files changed, 15 insertions(+), 20 deletions(-) + +diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux +index 83e59e33b85..b1356be1fb4 100644 +--- a/gcc/config/aarch64/t-aarch64-linux ++++ b/gcc/config/aarch64/t-aarch64-linux +@@ -21,8 +21,8 @@ + LIB1ASMSRC = aarch64/lib1funcs.asm + LIB1ASMFUNCS = _aarch64_sync_cache_range + +-AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be) +-MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu) +-MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu) ++#AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be) ++#MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu) ++#MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu) + +-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32) ++#MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32) +diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64 +index 1171e218578..5e057b7e5db 100644 +--- a/gcc/config/i386/t-linux64 ++++ b/gcc/config/i386/t-linux64 +@@ -32,7 +32,5 @@ + # + comma=, + MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) +-MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) +-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu) +-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu) +-MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32) ++MULTILIB_DIRNAMES = . . ++MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) +diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64 +index ceb58d3b5f3..43fe2bf28ab 100644 +--- a/gcc/config/mips/t-linux64 ++++ b/gcc/config/mips/t-linux64 +@@ -17,10 +17,6 @@ + # . + + MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64 +-MULTILIB_DIRNAMES = n32 32 64 +-MIPS_EL = $(if $(filter %el, $(firstword $(subst -, ,$(target)))),el) +-MIPS_SOFT = $(if $(strip $(filter MASK_SOFT_FLOAT_ABI, $(target_cpu_default)) $(filter soft, $(with_float))),soft) +-MULTILIB_OSDIRNAMES = \ +- ../lib32$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \ +- ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \ +- ../lib64$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT)) ++MULTILIB_DIRNAMES = . . . ++MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ++ +diff --git a/gcc/config/riscv/t-linux b/gcc/config/riscv/t-linux +index 216d2776a18..e4d817621fc 100644 +--- a/gcc/config/riscv/t-linux ++++ b/gcc/config/riscv/t-linux +@@ -1,3 +1,5 @@ + # Only XLEN and ABI affect Linux multilib dir names, e.g. /lib32/ilp32d/ +-MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES))) +-MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES)) ++#MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES))) ++MULTILIB_DIRNAMES := . . ++#MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES)) ++MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) +diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64 +index 264a7e27524..dc9d440f66b 100644 +--- a/gcc/config/rs6000/t-linux64 ++++ b/gcc/config/rs6000/t-linux64 +@@ -26,10 +26,9 @@ + # MULTILIB_OSDIRNAMES according to what is found on the target. + + MULTILIB_OPTIONS := m64/m32 +-MULTILIB_DIRNAMES := 64 32 ++MULTILIB_DIRNAMES := . . + MULTILIB_EXTRA_OPTS := +-MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu) +-MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu) ++MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) + + rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c + $(COMPILE) $< diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0005-optional-libstdc.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0005-optional-libstdc.patch new file mode 100644 index 000000000..4020c9e3c --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0005-optional-libstdc.patch @@ -0,0 +1,122 @@ +From 6ddfb0bfcd1eea71acd37ab06f7a4510b9f1d12b Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:12:56 +0400 +Subject: [PATCH] optional libstdc + +gcc-runtime builds libstdc++ separately from gcc-cross-*. Its configure tests using g++ +will not run correctly since by default the linker will try to link against libstdc++ +which shouldn't exist yet. We need an option to disable -lstdc++ +option whilst leaving -lc, -lgcc and other automatic library dependencies added by gcc +driver. This patch adds such an option which only disables the -lstdc++. + +A "standard" gcc build uses xgcc and hence avoids this. We should ask upstream how to +do this officially, the likely answer is don't build libstdc++ separately. + +RP 29/6/10 + +Signed-off-by: Khem Raj + +Upstream-Status: Inappropriate [embedded specific] +--- + gcc/c-family/c.opt | 4 ++++ + gcc/cp/g++spec.c | 1 + + gcc/doc/invoke.texi | 32 +++++++++++++++++++++++++++++++- + gcc/gcc.c | 1 + + 4 files changed, 37 insertions(+), 1 deletion(-) + +diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt +index c49da99d395..35f712e2c84 100644 +--- a/gcc/c-family/c.opt ++++ b/gcc/c-family/c.opt +@@ -2025,6 +2025,10 @@ nostdinc++ + C++ ObjC++ + Do not search standard system include directories for C++. + ++nostdlib++ ++Driver ++Do not link standard C++ runtime library ++ + o + C ObjC C++ ObjC++ Joined Separate + ; Documented in common.opt +diff --git a/gcc/cp/g++spec.c b/gcc/cp/g++spec.c +index 0ab63bcd211..7b081e9e4f0 100644 +--- a/gcc/cp/g++spec.c ++++ b/gcc/cp/g++spec.c +@@ -137,6 +137,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options, + switch (decoded_options[i].opt_index) + { + case OPT_nostdlib: ++ case OPT_nostdlib__: + case OPT_nodefaultlibs: + library = -1; + break; +diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi +index f12d8d12150..cf6cb428e7d 100644 +--- a/gcc/doc/invoke.texi ++++ b/gcc/doc/invoke.texi +@@ -230,6 +230,9 @@ in the following sections. + -fno-weak -nostdinc++ @gol + -fvisibility-inlines-hidden @gol + -fvisibility-ms-compat @gol ++-fvtable-verify=@r{[}std@r{|}preinit@r{|}none@r{]} @gol ++-fvtv-counts -fvtv-debug @gol ++-nostdlib++ @gol + -fext-numeric-literals @gol + -Wabi-tag -Wcatch-value -Wcatch-value=@var{n} @gol + -Wno-class-conversion -Wclass-memaccess @gol +@@ -599,7 +602,7 @@ Objective-C and Objective-C++ Dialects}. + -pie -pthread -r -rdynamic @gol + -s -static -static-pie -static-libgcc -static-libstdc++ @gol + -static-libasan -static-libtsan -static-liblsan -static-libubsan @gol +--shared -shared-libgcc -symbolic @gol ++-shared -shared-libgcc -symbolic -nostdlib++ @gol + -T @var{script} -Wl,@var{option} -Xlinker @var{option} @gol + -u @var{symbol} -z @var{keyword}} + +@@ -14407,6 +14410,33 @@ Specify that the program entry point is @var{entry}. The argument is + interpreted by the linker; the GNU linker accepts either a symbol name + or an address. + ++@item -nostdlib++ ++@opindex nostdlib++ ++Do not use the standard system C++ runtime libraries when linking. ++Only the libraries you specify will be passed to the linker. ++ ++@cindex @option{-lgcc}, use with @option{-nostdlib} ++@cindex @option{-nostdlib} and unresolved references ++@cindex unresolved references and @option{-nostdlib} ++@cindex @option{-lgcc}, use with @option{-nodefaultlibs} ++@cindex @option{-nodefaultlibs} and unresolved references ++@cindex unresolved references and @option{-nodefaultlibs} ++One of the standard libraries bypassed by @option{-nostdlib} and ++@option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines ++which GCC uses to overcome shortcomings of particular machines, or special ++needs for some languages. ++(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler ++Collection (GCC) Internals}, ++for more discussion of @file{libgcc.a}.) ++In most cases, you need @file{libgcc.a} even when you want to avoid ++other standard libraries. In other words, when you specify @option{-nostdlib} ++or @option{-nodefaultlibs} you should usually specify @option{-lgcc} as well. ++This ensures that you have no unresolved references to internal GCC ++library subroutines. ++(An example of such an internal subroutine is @code{__main}, used to ensure C++ ++constructors are called; @pxref{Collect2,,@code{collect2}, gccint, ++GNU Compiler Collection (GCC) Internals}.) ++ + @item -pie + @opindex pie + Produce a dynamically linked position independent executable on targets +diff --git a/gcc/gcc.c b/gcc/gcc.c +index b2200c5185a..f8be58ce0a6 100644 +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -1051,6 +1051,7 @@ proper position among the other output files. */ + %(mflib) " STACK_SPLIT_SPEC "\ + %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} " SANITIZER_SPEC " \ + %{!nostdlib:%{!r:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}}}\ ++ %{!nostdlib++:}\ + %{!nostdlib:%{!r:%{!nostartfiles:%E}}} %{T*} \n%(post_link) }}}}}}" + #endif + diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch new file mode 100644 index 000000000..9fbbe8070 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch @@ -0,0 +1,35 @@ +From a6c90d3a9c5010b4aa7cc30467cf81ca7e0f430e Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:16:28 +0400 +Subject: [PATCH] COLLECT_GCC_OPTIONS + +This patch adds --sysroot into COLLECT_GCC_OPTIONS which is used to +invoke collect2. + +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + gcc/gcc.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/gcc/gcc.c b/gcc/gcc.c +index f8be58ce0a6..48b0f9dde81 100644 +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -4806,6 +4806,15 @@ set_collect_gcc_options (void) + sizeof ("COLLECT_GCC_OPTIONS=") - 1); + + first_time = TRUE; ++#ifdef HAVE_LD_SYSROOT ++ if (target_system_root_changed && target_system_root) ++ { ++ obstack_grow (&collect_obstack, "'--sysroot=", sizeof("'--sysroot=")-1); ++ obstack_grow (&collect_obstack, target_system_root,strlen(target_system_root)); ++ obstack_grow (&collect_obstack, "'", 1); ++ first_time = FALSE; ++ } ++#endif + for (i = 0; (int) i < n_switches; i++) + { + const char *const *args; diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch new file mode 100644 index 000000000..a764bdd0f --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch @@ -0,0 +1,92 @@ +From 5670d4489f119d2da661734895ac0be99b606d1b Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:17:25 +0400 +Subject: [PATCH] Use the defaults.h in ${B} instead of ${S}, and t-oe in ${B} + +Use the defaults.h in ${B} instead of ${S}, and t-oe in ${B}, so that +the source can be shared between gcc-cross-initial, +gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build. + +Signed-off-by: Khem Raj + +Upstream-Status: Pending + +While compiling gcc-crosssdk-initial-x86_64 on some host, there is +occasionally failure that test the existance of default.h doesn't +work, the reason is tm_include_list='** defaults.h' rather than +tm_include_list='** ./defaults.h' + +So we add the test condition for this situation. +Signed-off-by: Hongxu Jia +--- + gcc/Makefile.in | 2 +- + gcc/configure | 4 ++-- + gcc/configure.ac | 4 ++-- + gcc/mkconfig.sh | 4 ++-- + 4 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index 543b477ff18..a67d2cc18d6 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -540,7 +540,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@ + TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@ + + xmake_file=@xmake_file@ +-tmake_file=@tmake_file@ ++tmake_file=@tmake_file@ ./t-oe + TM_ENDIAN_CONFIG=@TM_ENDIAN_CONFIG@ + TM_MULTILIB_CONFIG=@TM_MULTILIB_CONFIG@ + TM_MULTILIB_EXCEPTIONS_CONFIG=@TM_MULTILIB_EXCEPTIONS_CONFIG@ +diff --git a/gcc/configure b/gcc/configure +index 8de766a942c..b26e8fc7fee 100755 +--- a/gcc/configure ++++ b/gcc/configure +@@ -12705,8 +12705,8 @@ for f in $tm_file; do + tm_include_list="${tm_include_list} $f" + ;; + defaults.h ) +- tm_file_list="${tm_file_list} \$(srcdir)/$f" +- tm_include_list="${tm_include_list} $f" ++ tm_file_list="${tm_file_list} ./$f" ++ tm_include_list="${tm_include_list} ./$f" + ;; + * ) + tm_file_list="${tm_file_list} \$(srcdir)/config/$f" +diff --git a/gcc/configure.ac b/gcc/configure.ac +index 8bfd6feb780..26fa46802c7 100644 +--- a/gcc/configure.ac ++++ b/gcc/configure.ac +@@ -2138,8 +2138,8 @@ for f in $tm_file; do + tm_include_list="${tm_include_list} $f" + ;; + defaults.h ) +- tm_file_list="${tm_file_list} \$(srcdir)/$f" +- tm_include_list="${tm_include_list} $f" ++ tm_file_list="${tm_file_list} ./$f" ++ tm_include_list="${tm_include_list} ./$f" + ;; + * ) + tm_file_list="${tm_file_list} \$(srcdir)/config/$f" +diff --git a/gcc/mkconfig.sh b/gcc/mkconfig.sh +index d2c677a4a42..d03852481cb 100644 +--- a/gcc/mkconfig.sh ++++ b/gcc/mkconfig.sh +@@ -77,7 +77,7 @@ if [ -n "$HEADERS" ]; then + if [ $# -ge 1 ]; then + echo '#ifdef IN_GCC' >> ${output}T + for file in "$@"; do +- if test x"$file" = x"defaults.h"; then ++ if test x"$file" = x"./defaults.h" -o x"$file" = x"defaults.h"; then + postpone_defaults_h="yes" + else + echo "# include \"$file\"" >> ${output}T +@@ -106,7 +106,7 @@ esac + + # If we postponed including defaults.h, add the #include now. + if test x"$postpone_defaults_h" = x"yes"; then +- echo "# include \"defaults.h\"" >> ${output}T ++ echo "# include \"./defaults.h\"" >> ${output}T + fi + + # Add multiple inclusion protection guard, part two. diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0008-fortran-cross-compile-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0008-fortran-cross-compile-hack.patch new file mode 100644 index 000000000..714db3bef --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0008-fortran-cross-compile-hack.patch @@ -0,0 +1,43 @@ +From f05062625e7a4751be723595a2f7a4b7fbeff311 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:20:01 +0400 +Subject: [PATCH] fortran cross-compile hack. + +* Fortran would have searched for arm-angstrom-gnueabi-gfortran but would have used +used gfortan. For gcc_4.2.2.bb we want to use the gfortran compiler from our cross +directory. + +Signed-off-by: Khem Raj + +Upstream-Status: Inappropriate [embedded specific] +--- + libgfortran/configure | 2 +- + libgfortran/configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libgfortran/configure b/libgfortran/configure +index b4cf854ddb3..e8e0ac3b1cf 100755 +--- a/libgfortran/configure ++++ b/libgfortran/configure +@@ -13090,7 +13090,7 @@ esac + + # We need gfortran to compile parts of the library + #AC_PROG_FC(gfortran) +-FC="$GFORTRAN" ++#FC="$GFORTRAN" + ac_ext=${ac_fc_srcext-f} + ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' + ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' +diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac +index 711dc60ff78..3c9bbfbf47d 100644 +--- a/libgfortran/configure.ac ++++ b/libgfortran/configure.ac +@@ -258,7 +258,7 @@ AC_SUBST(enable_static) + + # We need gfortran to compile parts of the library + #AC_PROG_FC(gfortran) +-FC="$GFORTRAN" ++#FC="$GFORTRAN" + AC_PROG_FC(gfortran) + + # extra LD Flags which are required for targets diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0009-cpp-honor-sysroot.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0009-cpp-honor-sysroot.patch new file mode 100644 index 000000000..8ad6853d8 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0009-cpp-honor-sysroot.patch @@ -0,0 +1,51 @@ +From 1d76de7f1f5c99f1fa1a4b14aedad3d702e4e136 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:22:00 +0400 +Subject: [PATCH] cpp: honor sysroot. + +Currently, if the gcc toolchain is relocated and installed from sstate, then you try and compile +preprocessed source (.i or .ii files), the compiler will try and access the builtin sysroot location +rather than the --sysroot option specified on the commandline. If access to that directory is +permission denied (unreadable), gcc will error. + +This happens when ccache is in use due to the fact it uses preprocessed source files. + +The fix below adds %I to the cpp-output spec macro so the default substitutions for -iprefix, +-isystem, -isysroot happen and the correct sysroot is used. + +[YOCTO #2074] + +RP 2012/04/13 + +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + gcc/cp/lang-specs.h | 2 +- + gcc/gcc.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/gcc/cp/lang-specs.h b/gcc/cp/lang-specs.h +index 0ad4a33b93e..16c744f4f90 100644 +--- a/gcc/cp/lang-specs.h ++++ b/gcc/cp/lang-specs.h +@@ -66,5 +66,5 @@ along with GCC; see the file COPYING3. If not see + {".ii", "@c++-cpp-output", 0, 0, 0}, + {"@c++-cpp-output", + "%{!E:%{!M:%{!MM:" +- " cc1plus -fpreprocessed %i %(cc1_options) %2" ++ " cc1plus -fpreprocessed %i %I %(cc1_options) %2" + " %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, +diff --git a/gcc/gcc.c b/gcc/gcc.c +index 48b0f9dde81..c87f603955f 100644 +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -1348,7 +1348,7 @@ static const struct compiler default_compilers[] = + %W{o*:--output-pch=%*}}%V}}}}}}}", 0, 0, 0}, + {".i", "@cpp-output", 0, 0, 0}, + {"@cpp-output", +- "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, ++ "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %I %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, + {".s", "@assembler", 0, 0, 0}, + {"@assembler", + "%{!M:%{!MM:%{!E:%{!S:as %(asm_debug) %(asm_options) %i %A }}}}", 0, 0, 0}, diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch new file mode 100644 index 000000000..625e2d870 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch @@ -0,0 +1,54 @@ +From 4fad4433c96bc9d0d9d124f9674fb3389f6f426e Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:23:08 +0400 +Subject: [PATCH] MIPS64: Default to N64 ABI + +MIPS64 defaults to n32 ABI, this patch makes it +so that it defaults to N64 ABI + +Signed-off-by: Khem Raj + +Upstream-Status: Inappropriate [OE config specific] +--- + gcc/config.gcc | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/gcc/config.gcc b/gcc/config.gcc +index cf1a87e2efd..37c4221a39f 100644 +--- a/gcc/config.gcc ++++ b/gcc/config.gcc +@@ -2511,29 +2511,29 @@ mips*-*-linux*) # Linux MIPS, either endian. + default_mips_arch=mips32 + ;; + mips64el-st-linux-gnu) +- default_mips_abi=n32 ++ default_mips_abi=64 + tm_file="${tm_file} mips/st.h" + tmake_file="${tmake_file} mips/t-st" + enable_mips_multilibs="yes" + ;; + mips64octeon*-*-linux*) +- default_mips_abi=n32 ++ default_mips_abi=64 + tm_defines="${tm_defines} MIPS_CPU_STRING_DEFAULT=\\\"octeon\\\"" + target_cpu_default=MASK_SOFT_FLOAT_ABI + enable_mips_multilibs="yes" + ;; + mipsisa64r6*-*-linux*) +- default_mips_abi=n32 ++ default_mips_abi=64 + default_mips_arch=mips64r6 + enable_mips_multilibs="yes" + ;; + mipsisa64r2*-*-linux*) +- default_mips_abi=n32 ++ default_mips_abi=64 + default_mips_arch=mips64r2 + enable_mips_multilibs="yes" + ;; + mips64*-*-linux* | mipsisa64*-*-linux*) +- default_mips_abi=n32 ++ default_mips_abi=64 + enable_mips_multilibs="yes" + ;; + esac diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch new file mode 100644 index 000000000..e35797633 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch @@ -0,0 +1,243 @@ +From 8fc016a53c22c19feccbfa13ebdf19090dc67058 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:24:50 +0400 +Subject: [PATCH] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER + relative to SYSTEMLIBS_DIR + +This patch defines GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER +relative to SYSTEMLIBS_DIR which can be set in generated headers +This breaks the assumption of hardcoded multilib in gcc +Change is only for the supported architectures in OE including +SH, sparc, alpha for possible future support (if any) + +Removes the do_headerfix task in metadata + +Signed-off-by: Khem Raj + +Upstream-Status: Inappropriate [OE configuration] +--- + gcc/config/alpha/linux-elf.h | 4 ++-- + gcc/config/arm/linux-eabi.h | 4 ++-- + gcc/config/arm/linux-elf.h | 2 +- + gcc/config/i386/linux.h | 2 +- + gcc/config/i386/linux64.h | 6 +++--- + gcc/config/linux.h | 8 ++++---- + gcc/config/mips/linux.h | 12 ++++++------ + gcc/config/riscv/linux.h | 2 +- + gcc/config/rs6000/linux64.h | 15 +++++---------- + gcc/config/sh/linux.h | 2 +- + gcc/config/sparc/linux.h | 2 +- + gcc/config/sparc/linux64.h | 4 ++-- + 12 files changed, 29 insertions(+), 34 deletions(-) + +diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h +index e25fcac3c59..01aca0c6542 100644 +--- a/gcc/config/alpha/linux-elf.h ++++ b/gcc/config/alpha/linux-elf.h +@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see + #define EXTRA_SPECS \ + { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" +-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" ++#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0" + #if DEFAULT_LIBC == LIBC_UCLIBC + #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" + #elif DEFAULT_LIBC == LIBC_GLIBC +diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h +index 5bdcfa0c5d3..0c0332f317f 100644 +--- a/gcc/config/arm/linux-eabi.h ++++ b/gcc/config/arm/linux-eabi.h +@@ -65,8 +65,8 @@ + GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */ + + #undef GLIBC_DYNAMIC_LINKER +-#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3" +-#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3" ++#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT SYSTEMLIBS_DIR "ld-linux.so.3" ++#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT SYSTEMLIBS_DIR "ld-linux-armhf.so.3" + #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT + + #define GLIBC_DYNAMIC_LINKER \ +diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h +index 0ec3aa53189..abfa9566d74 100644 +--- a/gcc/config/arm/linux-elf.h ++++ b/gcc/config/arm/linux-elf.h +@@ -60,7 +60,7 @@ + + #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" + + #define LINUX_TARGET_LINK_SPEC "%{h*} \ + %{static:-Bstatic} \ +diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h +index 9f823f125ed..e0390b7d5e3 100644 +--- a/gcc/config/i386/linux.h ++++ b/gcc/config/i386/linux.h +@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see + . */ + + #define GNU_USER_LINK_EMULATION "elf_i386" +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" + + #undef MUSL_DYNAMIC_LINKER + #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1" +diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h +index 6cb68d1ccfa..7de09ec857c 100644 +--- a/gcc/config/i386/linux64.h ++++ b/gcc/config/i386/linux64.h +@@ -27,9 +27,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + #define GNU_USER_LINK_EMULATION64 "elf_x86_64" + #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" +-#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" ++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2" ++#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2" + + #undef MUSL_DYNAMIC_LINKER32 + #define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1" +diff --git a/gcc/config/linux.h b/gcc/config/linux.h +index 95654bcdb5a..0c1a8118a26 100644 +--- a/gcc/config/linux.h ++++ b/gcc/config/linux.h +@@ -94,10 +94,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + GLIBC_DYNAMIC_LINKER must be defined for each target using them, or + GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets + supporting both 32-bit and 64-bit compilation. */ +-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" +-#define UCLIBC_DYNAMIC_LINKERX32 "/lib/ldx32-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64-uClibc.so.0" ++#define UCLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ldx32-uClibc.so.0" + #define BIONIC_DYNAMIC_LINKER "/system/bin/linker" + #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker" + #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" +diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h +index 54446e58e5f..4786ee304c1 100644 +--- a/gcc/config/mips/linux.h ++++ b/gcc/config/mips/linux.h +@@ -22,20 +22,20 @@ along with GCC; see the file COPYING3. If not see + #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" + + #define GLIBC_DYNAMIC_LINKER32 \ +- "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}" ++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}" + #define GLIBC_DYNAMIC_LINKER64 \ +- "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}" ++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}" + #define GLIBC_DYNAMIC_LINKERN32 \ +- "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}" ++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}" + + #undef UCLIBC_DYNAMIC_LINKER32 + #define UCLIBC_DYNAMIC_LINKER32 \ +- "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}" ++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}" + #undef UCLIBC_DYNAMIC_LINKER64 + #define UCLIBC_DYNAMIC_LINKER64 \ +- "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}" ++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld64-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld64-uClibc.so.0}" + #define UCLIBC_DYNAMIC_LINKERN32 \ +- "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" ++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}" + + #undef MUSL_DYNAMIC_LINKER32 + #define MUSL_DYNAMIC_LINKER32 \ +diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h +index 4afef7c228c..01997330741 100644 +--- a/gcc/config/riscv/linux.h ++++ b/gcc/config/riscv/linux.h +@@ -22,7 +22,7 @@ along with GCC; see the file COPYING3. If not see + GNU_USER_TARGET_OS_CPP_BUILTINS(); \ + } while (0) + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1" ++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1" + + #define MUSL_ABI_SUFFIX \ + "%{mabi=ilp32:-sf}" \ +diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h +index 34776c8421e..967c1c43c63 100644 +--- a/gcc/config/rs6000/linux64.h ++++ b/gcc/config/rs6000/linux64.h +@@ -419,24 +419,19 @@ extern int dot_symbols; + #undef LINK_OS_DEFAULT_SPEC + #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" + +-#define GLIBC_DYNAMIC_LINKER32 "%(dynamic_linker_prefix)/lib/ld.so.1" +- ++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1" + #ifdef LINUX64_DEFAULT_ABI_ELFv2 +-#define GLIBC_DYNAMIC_LINKER64 \ +-"%{mabi=elfv1:%(dynamic_linker_prefix)/lib64/ld64.so.1;" \ +-":%(dynamic_linker_prefix)/lib64/ld64.so.2}" ++#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:" SYSTEMLIBS_DIR "ld64.so.1;:" SYSTEMLIBS_DIR "ld64.so.2}" + #else +-#define GLIBC_DYNAMIC_LINKER64 \ +-"%{mabi=elfv2:%(dynamic_linker_prefix)/lib64/ld64.so.2;" \ +-":%(dynamic_linker_prefix)/lib64/ld64.so.1}" ++#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:" SYSTEMLIBS_DIR "ld64.so.2;:" SYSTEMLIBS_DIR "ld64.so.1}" + #endif + + #undef MUSL_DYNAMIC_LINKER32 + #define MUSL_DYNAMIC_LINKER32 \ +- "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" ++ SYSTEMLIBS_DIR "ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" + #undef MUSL_DYNAMIC_LINKER64 + #define MUSL_DYNAMIC_LINKER64 \ +- "/lib/ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" ++ SYSTEMLIBS_DIR "ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" + + #undef DEFAULT_ASM_ENDIAN + #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN) +diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h +index c1d0441d488..81373eb8336 100644 +--- a/gcc/config/sh/linux.h ++++ b/gcc/config/sh/linux.h +@@ -64,7 +64,7 @@ along with GCC; see the file COPYING3. If not see + "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \ + "%{mfdpic:-fdpic}.so.1" + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" + + #undef SUBTARGET_LINK_EMUL_SUFFIX + #define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}" +diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h +index 81201e67a2f..8b6fc577594 100644 +--- a/gcc/config/sparc/linux.h ++++ b/gcc/config/sparc/linux.h +@@ -84,7 +84,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); + When the -shared link option is used a final link is not being + done. */ + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" + + #undef LINK_SPEC + #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \ +diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h +index a1a0efd8f28..85d1084afc2 100644 +--- a/gcc/config/sparc/linux64.h ++++ b/gcc/config/sparc/linux64.h +@@ -84,8 +84,8 @@ along with GCC; see the file COPYING3. If not see + When the -shared link option is used a final link is not being + done. */ + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux.so.2" + + #ifdef SPARC_BI_ARCH + diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0012-gcc-Fix-argument-list-too-long-error.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0012-gcc-Fix-argument-list-too-long-error.patch new file mode 100644 index 000000000..acbd75f13 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0012-gcc-Fix-argument-list-too-long-error.patch @@ -0,0 +1,37 @@ +From a22d1264049d29b90663cf5667049ae6f9b7a5ce Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:26:37 +0400 +Subject: [PATCH] gcc: Fix argument list too long error. + +There would be an "Argument list too long" error when the +build directory is longer than 200, this is caused by: + +headers=`echo $(PLUGIN_HEADERS) | tr ' ' '\012' | sort -u` + +The PLUGIN_HEADERS is too long before sort, so the "echo" can't handle +it, use the $(sort list) of GNU make which can handle the too long list +would fix the problem, the header would be short enough after sorted. +The "tr ' ' '\012'" was used for translating the space to "\n", the +$(sort list) doesn't need this. + +Signed-off-by: Robert Yang +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + gcc/Makefile.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index a67d2cc18d6..480c9366418 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -3606,7 +3606,7 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype + # We keep the directory structure for files in config or c-family and .def + # files. All other files are flattened to a single directory. + $(mkinstalldirs) $(DESTDIR)$(plugin_includedir) +- headers=`echo $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \ ++ headers="$(sort $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def))"; \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`; \ + for file in $$headers; do \ + if [ -f $$file ] ; then \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0013-Disable-sdt.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0013-Disable-sdt.patch new file mode 100644 index 000000000..207cdb57a --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0013-Disable-sdt.patch @@ -0,0 +1,110 @@ +From fa47586935a18ecfc2ad5586802e326e21741b7b Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:28:10 +0400 +Subject: [PATCH] Disable sdt. + +We don't list dtrace in DEPENDS so we shouldn't be depending on this header. +It may or may not exist from preivous builds though. To be determinstic, disable +sdt.h usage always. This avoids build failures if the header is removed after configure +but before libgcc is compiled for example. + +RP 2012/8/7 + +Signed-off-by: Khem Raj + +Disable sdt for libstdc++-v3. + +Signed-off-by: Robert Yang + +Upstream-Status: Inappropriate [hack] +--- + gcc/configure | 12 ++++++------ + gcc/configure.ac | 18 +++++++++--------- + libstdc++-v3/configure | 6 +++--- + libstdc++-v3/configure.ac | 2 +- + 4 files changed, 19 insertions(+), 19 deletions(-) + +diff --git a/gcc/configure b/gcc/configure +index b26e8fc7fee..6080f86145e 100755 +--- a/gcc/configure ++++ b/gcc/configure +@@ -29789,12 +29789,12 @@ fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking sys/sdt.h in the target C library" >&5 + $as_echo_n "checking sys/sdt.h in the target C library... " >&6; } + have_sys_sdt_h=no +-if test -f $target_header_dir/sys/sdt.h; then +- have_sys_sdt_h=yes +- +-$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h +- +-fi ++#if test -f $target_header_dir/sys/sdt.h; then ++# have_sys_sdt_h=yes ++# ++#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h ++# ++#fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_sys_sdt_h" >&5 + $as_echo "$have_sys_sdt_h" >&6; } + +diff --git a/gcc/configure.ac b/gcc/configure.ac +index 26fa46802c7..42be5252778 100644 +--- a/gcc/configure.ac ++++ b/gcc/configure.ac +@@ -6190,15 +6190,15 @@ fi + AC_SUBST([enable_default_ssp]) + + # Test for on the target. +-GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H]) +-AC_MSG_CHECKING(sys/sdt.h in the target C library) +-have_sys_sdt_h=no +-if test -f $target_header_dir/sys/sdt.h; then +- have_sys_sdt_h=yes +- AC_DEFINE(HAVE_SYS_SDT_H, 1, +- [Define if your target C library provides sys/sdt.h]) +-fi +-AC_MSG_RESULT($have_sys_sdt_h) ++#GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H]) ++#AC_MSG_CHECKING(sys/sdt.h in the target C library) ++#have_sys_sdt_h=no ++#if test -f $target_header_dir/sys/sdt.h; then ++# have_sys_sdt_h=yes ++# AC_DEFINE(HAVE_SYS_SDT_H, 1, ++# [Define if your target C library provides sys/sdt.h]) ++#fi ++#AC_MSG_RESULT($have_sys_sdt_h) + + # Check if TFmode long double should be used by default or not. + # Some glibc targets used DFmode long double, but with glibc 2.4 +diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure +index 9f9c5a2419a..71ed13b815b 100755 +--- a/libstdc++-v3/configure ++++ b/libstdc++-v3/configure +@@ -22615,11 +22615,11 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' + ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' + ac_compiler_gnu=$ac_cv_c_compiler_gnu + +- if test $glibcxx_cv_sys_sdt_h = yes; then ++# if test $glibcxx_cv_sys_sdt_h = yes; then + +-$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h ++#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h + +- fi ++# fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $glibcxx_cv_sys_sdt_h" >&5 + $as_echo "$glibcxx_cv_sys_sdt_h" >&6; } + +diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac +index 699e55fd829..5c7a7bda439 100644 +--- a/libstdc++-v3/configure.ac ++++ b/libstdc++-v3/configure.ac +@@ -241,7 +241,7 @@ GLIBCXX_CHECK_SC_NPROCESSORS_ONLN + GLIBCXX_CHECK_SC_NPROC_ONLN + GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP + GLIBCXX_CHECK_SYSCTL_HW_NCPU +-GLIBCXX_CHECK_SDT_H ++#GLIBCXX_CHECK_SDT_H + + # Check for available headers. + AC_CHECK_HEADERS([endian.h execinfo.h float.h fp.h ieeefp.h inttypes.h \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0014-libtool.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0014-libtool.patch new file mode 100644 index 000000000..f4e70c3b1 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0014-libtool.patch @@ -0,0 +1,39 @@ +From 6ecd478881468934444ff85611fd43f7033b1e81 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:29:11 +0400 +Subject: [PATCH] libtool + +libstdc++ from gcc-runtime gets created with -rpath=/usr/lib/../lib for qemux86-64 +when running on am x86_64 build host. + +This patch stops this speading to libdir in the libstdc++.la file within libtool. +Arguably, it shouldn't be passing this into libtool in the first place but +for now this resolves the nastiest problems this causes. + +func_normal_abspath would resolve an empty path to `pwd` so we need +to filter the zero case. + +RP 2012/8/24 + +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + ltmain.sh | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/ltmain.sh b/ltmain.sh +index 70990740b6c..ee938056bef 100644 +--- a/ltmain.sh ++++ b/ltmain.sh +@@ -6359,6 +6359,10 @@ func_mode_link () + func_warning "ignoring multiple \`-rpath's for a libtool library" + + install_libdir="$1" ++ if test -n "$install_libdir"; then ++ func_normal_abspath "$install_libdir" ++ install_libdir=$func_normal_abspath_result ++ fi + + oldlibs= + if test -z "$rpath"; then diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch new file mode 100644 index 000000000..bc2674abc --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch @@ -0,0 +1,40 @@ +From de4427fa49c07dc651ee6ceaf5c5078700ca3b08 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:30:32 +0400 +Subject: [PATCH] gcc: armv4: pass fix-v4bx to linker to support EABI. + +The LINK_SPEC for linux gets overwritten by linux-eabi.h which +means the value of TARGET_FIX_V4BX_SPEC gets lost and as a result +the option is not passed to linker when chosing march=armv4 +This patch redefines this in linux-eabi.h and reinserts it +for eabi defaulting toolchains. + +We might want to send it upstream. + +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + gcc/config/arm/linux-eabi.h | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h +index 0c0332f317f..7b3769e8459 100644 +--- a/gcc/config/arm/linux-eabi.h ++++ b/gcc/config/arm/linux-eabi.h +@@ -91,10 +91,14 @@ + #define MUSL_DYNAMIC_LINKER \ + "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1" + ++/* For armv4 we pass --fix-v4bx to linker to support EABI */ ++#undef TARGET_FIX_V4BX_SPEC ++#define TARGET_FIX_V4BX_SPEC "%{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4: --fix-v4bx}" ++ + /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to + use the GNU/Linux version, not the generic BPABI version. */ + #undef LINK_SPEC +-#define LINK_SPEC EABI_LINK_SPEC \ ++#define LINK_SPEC TARGET_FIX_V4BX_SPEC EABI_LINK_SPEC \ + LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \ + LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC) + diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch new file mode 100644 index 000000000..1dc4bb859 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch @@ -0,0 +1,99 @@ +From 6b363c2c1c089ee900efa6013aefba1003840a37 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 29 Mar 2013 09:33:04 +0400 +Subject: [PATCH] Use the multilib config files from ${B} instead of using the + ones from ${S} + +Use the multilib config files from ${B} instead of using the ones from ${S} +so that the source can be shared between gcc-cross-initial, +gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build. + +Signed-off-by: Khem Raj +Signed-off-by: Constantin Musca + +Upstream-Status: Inappropriate [configuration] +--- + gcc/configure | 22 ++++++++++++++++++---- + gcc/configure.ac | 22 ++++++++++++++++++---- + 2 files changed, 36 insertions(+), 8 deletions(-) + +diff --git a/gcc/configure b/gcc/configure +index 6080f86145e..825a9652329 100755 +--- a/gcc/configure ++++ b/gcc/configure +@@ -12685,10 +12685,20 @@ done + tmake_file_= + for f in ${tmake_file} + do +- if test -f ${srcdir}/config/$f +- then +- tmake_file_="${tmake_file_} \$(srcdir)/config/$f" +- fi ++ case $f in ++ */t-linux64 ) ++ if test -f ./config/$f ++ then ++ tmake_file_="${tmake_file_} ./config/$f" ++ fi ++ ;; ++ * ) ++ if test -f ${srcdir}/config/$f ++ then ++ tmake_file_="${tmake_file_} \$(srcdir)/config/$f" ++ fi ++ ;; ++ esac + done + tmake_file="${tmake_file_}${omp_device_property_tmake_file}" + +@@ -12699,6 +12709,10 @@ tm_file_list="options.h" + tm_include_list="options.h insn-constants.h" + for f in $tm_file; do + case $f in ++ */linux64.h ) ++ tm_file_list="${tm_file_list} ./config/$f" ++ tm_include_list="${tm_include_list} ./config/$f" ++ ;; + ./* ) + f=`echo $f | sed 's/^..//'` + tm_file_list="${tm_file_list} $f" +diff --git a/gcc/configure.ac b/gcc/configure.ac +index 42be5252778..6099eb3251f 100644 +--- a/gcc/configure.ac ++++ b/gcc/configure.ac +@@ -2118,10 +2118,20 @@ done + tmake_file_= + for f in ${tmake_file} + do +- if test -f ${srcdir}/config/$f +- then +- tmake_file_="${tmake_file_} \$(srcdir)/config/$f" +- fi ++ case $f in ++ */t-linux64 ) ++ if test -f ./config/$f ++ then ++ tmake_file_="${tmake_file_} ./config/$f" ++ fi ++ ;; ++ * ) ++ if test -f ${srcdir}/config/$f ++ then ++ tmake_file_="${tmake_file_} \$(srcdir)/config/$f" ++ fi ++ ;; ++ esac + done + tmake_file="${tmake_file_}${omp_device_property_tmake_file}" + +@@ -2132,6 +2142,10 @@ tm_file_list="options.h" + tm_include_list="options.h insn-constants.h" + for f in $tm_file; do + case $f in ++ */linux64.h ) ++ tm_file_list="${tm_file_list} ./config/$f" ++ tm_include_list="${tm_include_list} ./config/$f" ++ ;; + ./* ) + f=`echo $f | sed 's/^..//'` + tm_file_list="${tm_file_list} $f" diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch new file mode 100644 index 000000000..05f12847e --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch @@ -0,0 +1,28 @@ +From 08752c2f1d21553301bee5757c453c6a36cbe03c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 20 Feb 2015 09:39:38 +0000 +Subject: [PATCH] Avoid using libdir from .la which usually points to a host + path + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jonathan Liu +Signed-off-by: Khem Raj +--- + ltmain.sh | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/ltmain.sh b/ltmain.sh +index ee938056bef..9ebc7e3d1e0 100644 +--- a/ltmain.sh ++++ b/ltmain.sh +@@ -5628,6 +5628,9 @@ func_mode_link () + absdir="$abs_ladir" + libdir="$abs_ladir" + else ++ # Instead of using libdir from .la which usually points to a host path, ++ # use the path the .la is contained in. ++ libdir="$abs_ladir" + dir="$libdir" + absdir="$libdir" + fi diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0018-export-CPP.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0018-export-CPP.patch new file mode 100644 index 000000000..886a1221d --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0018-export-CPP.patch @@ -0,0 +1,50 @@ +From 5c3d66378c7ff60ca11a875aa4aa6f8a8529d43a Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 20 Feb 2015 09:40:59 +0000 +Subject: [PATCH] export CPP + +The OE environment sets and exports CPP as being the target gcc. When +building gcc-cross-canadian for a mingw targetted sdk, the following can be found +in build.x86_64-pokysdk-mingw32.i586-poky-linux/build-x86_64-linux/libiberty/config.log: + +configure:3641: checking for _FILE_OFFSET_BITS value needed for large files +configure:3666: gcc -c -isystem/media/build1/poky/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe conftest.c >&5 +configure:3666: $? = 0 +configure:3698: result: no +configure:3786: checking how to run the C preprocessor +configure:3856: result: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32 +configure:3876: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32 conftest.c +configure:3876: $? = 0 + +Note this is a *build* target (in build-x86_64-linux) so it should be +using the host "gcc", not x86_64-pokysdk-mingw32-gcc. Since the mingw32 +headers are very different, using the wrong cpp is a real problem. It is leaking +into configure through the CPP variable. Ultimately this leads to build +failures related to not being able to include a process.h file for pem-unix.c. + +The fix is to ensure we export a sane CPP value into the build +environment when using build targets. We could define a CPP_FOR_BUILD value which may be +the version which needs to be upstreamed but for now, this fix is good enough to +avoid the problem. + +RP 22/08/2013 + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + Makefile.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile.in b/Makefile.in +index 36e369df6e7..c717903bb13 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -149,6 +149,7 @@ BUILD_EXPORTS = \ + AR="$(AR_FOR_BUILD)"; export AR; \ + AS="$(AS_FOR_BUILD)"; export AS; \ + CC="$(CC_FOR_BUILD)"; export CC; \ ++ CPP="$(CC_FOR_BUILD) -E"; export CPP; \ + CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0019-Ensure-target-gcc-headers-can-be-included.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0019-Ensure-target-gcc-headers-can-be-included.patch new file mode 100644 index 000000000..2797b2c22 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0019-Ensure-target-gcc-headers-can-be-included.patch @@ -0,0 +1,57 @@ +From 378b752c5d9a3dba4e58cdadf8b4b4f34ea99a76 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 20 Feb 2015 10:25:11 +0000 +Subject: [PATCH] Ensure target gcc headers can be included + +There are a few headers installed as part of the OpenEmbedded +gcc-runtime target (omp.h, ssp/*.h). Being installed from a recipe +built for the target architecture, these are within the target +sysroot and not cross/nativesdk; thus they weren't able to be +found by gcc with the existing search paths. Add support for +picking up these headers under the sysroot supplied on the gcc +command line in order to resolve this. + +Upstream-Status: Pending + +Signed-off-by: Paul Eggleton +Signed-off-by: Khem Raj +--- + gcc/Makefile.in | 2 ++ + gcc/cppdefault.c | 4 ++++ + 2 files changed, 6 insertions(+) + +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index 480c9366418..011c7ac2db6 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -618,6 +618,7 @@ libexecdir = @libexecdir@ + + # Directory in which the compiler finds libraries etc. + libsubdir = $(libdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix) ++libsubdir_target = $(target_noncanonical)/$(version) + # Directory in which the compiler finds executables + libexecsubdir = $(libexecdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix) + # Directory in which all plugin resources are installed +@@ -2946,6 +2947,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\" + + PREPROCESSOR_DEFINES = \ + -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \ ++ -DGCC_INCLUDE_SUBDIR_TARGET=\"$(libsubdir_target)/include\" \ + -DFIXED_INCLUDE_DIR=\"$(libsubdir)/include-fixed\" \ + -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \ + -DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \ +diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c +index af38cc494ea..2f43b88a0c3 100644 +--- a/gcc/cppdefault.c ++++ b/gcc/cppdefault.c +@@ -59,6 +59,10 @@ const struct default_include cpp_include_defaults[] + /* This is the dir for gcc's private headers. */ + { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, + #endif ++#ifdef GCC_INCLUDE_SUBDIR_TARGET ++ /* This is the dir for gcc's private headers under the specified sysroot. */ ++ { STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET, "GCC", 0, 0, 1, 0 }, ++#endif + #ifdef LOCAL_INCLUDE_DIR + /* /usr/local/include comes before the fixincluded header files. */ + { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 }, diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch new file mode 100644 index 000000000..c3baf8b45 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch @@ -0,0 +1,35 @@ +From 870e805d705d99d9b9d7dbd09727f9c1d2ad9c1d Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 3 Mar 2015 08:21:19 +0000 +Subject: [PATCH] Don't search host directory during "relink" if $inst_prefix + is provided + +http://lists.gnu.org/archive/html/libtool-patches/2011-01/msg00026.html + +Upstream-Status: Submitted + +Signed-off-by: Khem Raj +--- + ltmain.sh | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/ltmain.sh b/ltmain.sh +index 9ebc7e3d1e0..7ea79fa8be6 100644 +--- a/ltmain.sh ++++ b/ltmain.sh +@@ -6004,12 +6004,13 @@ func_mode_link () + fi + else + # We cannot seem to hardcode it, guess we'll fake it. ++ # Default if $libdir is not relative to the prefix: + add_dir="-L$libdir" +- # Try looking first in the location we're being installed to. ++ + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) +- add_dir="$add_dir -L$inst_prefix_dir$libdir" ++ add_dir="-L$inst_prefix_dir$libdir" + ;; + esac + fi diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch new file mode 100644 index 000000000..abee48669 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch @@ -0,0 +1,26 @@ +From aba42de763a619355471efd1573561b0cbf51162 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 28 Apr 2015 23:15:27 -0700 +Subject: [PATCH] Use SYSTEMLIBS_DIR replacement instead of hardcoding + base_libdir + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + gcc/config/aarch64/aarch64-linux.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h +index e587e2e9ad6..ddc62895693 100644 +--- a/gcc/config/aarch64/aarch64-linux.h ++++ b/gcc/config/aarch64/aarch64-linux.h +@@ -21,7 +21,7 @@ + #ifndef GCC_AARCH64_LINUX_H + #define GCC_AARCH64_LINUX_H + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" ++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" + + #undef MUSL_DYNAMIC_LINKER + #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0022-aarch64-Add-support-for-musl-ldso.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0022-aarch64-Add-support-for-musl-ldso.patch new file mode 100644 index 000000000..c55b66d4b --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0022-aarch64-Add-support-for-musl-ldso.patch @@ -0,0 +1,25 @@ +From d63820a78d92f302410358293546f01c7ad17bd8 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 28 Apr 2015 23:18:39 -0700 +Subject: [PATCH] aarch64: Add support for musl ldso + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + gcc/config/aarch64/aarch64-linux.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h +index ddc62895693..b301825313a 100644 +--- a/gcc/config/aarch64/aarch64-linux.h ++++ b/gcc/config/aarch64/aarch64-linux.h +@@ -24,7 +24,7 @@ + #define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" + + #undef MUSL_DYNAMIC_LINKER +-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" ++#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" + + #undef ASAN_CC1_SPEC + #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}" diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch new file mode 100644 index 000000000..80c4d2292 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch @@ -0,0 +1,51 @@ +From 3474e16ad4ea8cf4e0e330568e3bc9039e723dce Mon Sep 17 00:00:00 2001 +From: Robert Yang +Date: Sun, 5 Jul 2015 20:25:18 -0700 +Subject: [PATCH] libcc1: fix libcc1's install path and rpath + +* Install libcc1.so and libcc1plugin.so into + $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version), as what we + had done to lto-plugin. +* Fix bad RPATH iussue: + gcc-5.2.0: package gcc-plugins contains bad RPATH /patht/to/tmp/sysroots/qemux86-64/usr/lib64/../lib64 in file + /path/to/gcc/5.2.0-r0/packages-split/gcc-plugins/usr/lib64/gcc/x86_64-poky-linux/5.2.0/plugin/libcc1plugin.so.0.0.0 + [rpaths] + +Upstream-Status: Inappropriate [OE configuration] + +Signed-off-by: Robert Yang +--- + libcc1/Makefile.am | 4 ++-- + libcc1/Makefile.in | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/libcc1/Makefile.am b/libcc1/Makefile.am +index c005b0dad4a..ec31d35b7b9 100644 +--- a/libcc1/Makefile.am ++++ b/libcc1/Makefile.am +@@ -37,8 +37,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \ + $(Wc)$(libiberty_normal))) + libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty)) + +-plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin +-cc1libdir = $(libdir)/$(libsuffix) ++cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version) ++plugindir = $(cc1libdir) + + if ENABLE_PLUGIN + plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la +diff --git a/libcc1/Makefile.in b/libcc1/Makefile.in +index 7104b649026..2103c477468 100644 +--- a/libcc1/Makefile.in ++++ b/libcc1/Makefile.in +@@ -393,8 +393,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \ + $(Wc)$(libiberty_normal))) + + libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty)) +-plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin +-cc1libdir = $(libdir)/$(libsuffix) ++cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version) ++plugindir = $(cc1libdir) + @ENABLE_PLUGIN_TRUE@plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la + @ENABLE_PLUGIN_TRUE@cc1lib_LTLIBRARIES = libcc1.la + shared_source = callbacks.cc callbacks.hh connection.cc connection.hh \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0024-handle-sysroot-support-for-nativesdk-gcc.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0024-handle-sysroot-support-for-nativesdk-gcc.patch new file mode 100644 index 000000000..1a65ece7b --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0024-handle-sysroot-support-for-nativesdk-gcc.patch @@ -0,0 +1,346 @@ +From bb1f359e34649516e61305e9748534cce7e0ee70 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 7 Dec 2015 23:39:54 +0000 +Subject: [PATCH] handle sysroot support for nativesdk-gcc + +Being able to build a nativesdk gcc is useful, particularly in cases +where the host compiler may be of an incompatible version (or a 32 +bit compiler is needed). + +Sadly, building nativesdk-gcc is not straight forward. We install +nativesdk-gcc into a relocatable location and this means that its +library locations can change. "Normal" sysroot support doesn't help +in this case since the values of paths like "libdir" change, not just +base root directory of the system. + +In order to handle this we do two things: + +a) Add %r into spec file markup which can be used for injected paths + such as SYSTEMLIBS_DIR (see gcc_multilib_setup()). +b) Add other paths which need relocation into a .gccrelocprefix section + which the relocation code will notice and adjust automatically. + +Upstream-Status: Inappropriate +RP 2015/7/28 + +Signed-off-by: Khem Raj + +Added PREFIXVAR and EXEC_PREFIXVAR to support runtime relocation. Without +these as part of the gccrelocprefix the system can't do runtime relocation +if the executable is moved. (These paths were missed in the original +implementation.) + +Signed-off-by: Mark Hatle +--- + gcc/c-family/c-opts.c | 4 +-- + gcc/cppdefault.c | 63 ++++++++++++++++++++++++++----------------- + gcc/cppdefault.h | 13 ++++----- + gcc/gcc.c | 20 +++++++++----- + gcc/incpath.c | 12 ++++----- + gcc/prefix.c | 6 +++-- + 6 files changed, 70 insertions(+), 48 deletions(-) + +diff --git a/gcc/c-family/c-opts.c b/gcc/c-family/c-opts.c +index 58ba0948e79..806bbcfb7a5 100644 +--- a/gcc/c-family/c-opts.c ++++ b/gcc/c-family/c-opts.c +@@ -1409,8 +1409,8 @@ add_prefixed_path (const char *suffix, incpath_kind chain) + size_t prefix_len, suffix_len; + + suffix_len = strlen (suffix); +- prefix = iprefix ? iprefix : cpp_GCC_INCLUDE_DIR; +- prefix_len = iprefix ? strlen (iprefix) : cpp_GCC_INCLUDE_DIR_len; ++ prefix = iprefix ? iprefix : GCC_INCLUDE_DIRVAR; ++ prefix_len = iprefix ? strlen (iprefix) : strlen(GCC_INCLUDE_DIRVAR) - 7; + + path = (char *) xmalloc (prefix_len + suffix_len + 1); + memcpy (path, prefix, prefix_len); +diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c +index 2f43b88a0c3..6b6be04686c 100644 +--- a/gcc/cppdefault.c ++++ b/gcc/cppdefault.c +@@ -35,6 +35,30 @@ + # undef CROSS_INCLUDE_DIR + #endif + ++static char GPLUSPLUS_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_INCLUDE_DIR; ++char GCC_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GCC_INCLUDE_DIR; ++static char GPLUSPLUS_TOOL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_TOOL_INCLUDE_DIR; ++static char GPLUSPLUS_BACKWARD_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_BACKWARD_INCLUDE_DIR; ++static char STANDARD_STARTFILE_PREFIX_2VAR[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET; ++#ifdef LOCAL_INCLUDE_DIR ++static char LOCAL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = LOCAL_INCLUDE_DIR; ++#endif ++#ifdef PREFIX_INCLUDE_DIR ++static char PREFIX_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = PREFIX_INCLUDE_DIR; ++#endif ++#ifdef FIXED_INCLUDE_DIR ++static char FIXED_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = FIXED_INCLUDE_DIR; ++#endif ++#ifdef CROSS_INCLUDE_DIR ++static char CROSS_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = CROSS_INCLUDE_DIR; ++#endif ++#ifdef TOOL_INCLUDE_DIR ++static char TOOL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = TOOL_INCLUDE_DIR; ++#endif ++#ifdef NATIVE_SYSTEM_HEADER_DIR ++static char NATIVE_SYSTEM_HEADER_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = NATIVE_SYSTEM_HEADER_DIR; ++#endif ++ + const struct default_include cpp_include_defaults[] + #ifdef INCLUDE_DEFAULTS + = INCLUDE_DEFAULTS; +@@ -42,38 +66,38 @@ const struct default_include cpp_include_defaults[] + = { + #ifdef GPLUSPLUS_INCLUDE_DIR + /* Pick up GNU C++ generic include files. */ +- { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, ++ { GPLUSPLUS_INCLUDE_DIRVAR, "G++", 1, 1, + GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, + #endif + #ifdef GPLUSPLUS_TOOL_INCLUDE_DIR + /* Pick up GNU C++ target-dependent include files. */ +- { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, ++ { GPLUSPLUS_TOOL_INCLUDE_DIRVAR, "G++", 1, 1, + GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 1 }, + #endif + #ifdef GPLUSPLUS_BACKWARD_INCLUDE_DIR + /* Pick up GNU C++ backward and deprecated include files. */ +- { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, ++ { GPLUSPLUS_BACKWARD_INCLUDE_DIRVAR, "G++", 1, 1, + GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, + #endif + #ifdef GCC_INCLUDE_DIR + /* This is the dir for gcc's private headers. */ +- { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, ++ { GCC_INCLUDE_DIRVAR, "GCC", 0, 0, 0, 0 }, + #endif + #ifdef GCC_INCLUDE_SUBDIR_TARGET + /* This is the dir for gcc's private headers under the specified sysroot. */ +- { STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET, "GCC", 0, 0, 1, 0 }, ++ { STANDARD_STARTFILE_PREFIX_2VAR, "GCC", 0, 0, 1, 0 }, + #endif + #ifdef LOCAL_INCLUDE_DIR + /* /usr/local/include comes before the fixincluded header files. */ +- { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 }, +- { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 0 }, ++ { LOCAL_INCLUDE_DIRVAR, 0, 0, 1, 1, 2 }, ++ { LOCAL_INCLUDE_DIRVAR, 0, 0, 1, 1, 0 }, + #endif + #ifdef PREFIX_INCLUDE_DIR +- { PREFIX_INCLUDE_DIR, 0, 0, 1, 0, 0 }, ++ { PREFIX_INCLUDE_DIRVAR, 0, 0, 1, 0, 0 }, + #endif + #ifdef FIXED_INCLUDE_DIR + /* This is the dir for fixincludes. */ +- { FIXED_INCLUDE_DIR, "GCC", 0, 0, 0, ++ { FIXED_INCLUDE_DIRVAR, "GCC", 0, 0, 0, + /* A multilib suffix needs adding if different multilibs use + different headers. */ + #ifdef SYSROOT_HEADERS_SUFFIX_SPEC +@@ -85,33 +109,24 @@ const struct default_include cpp_include_defaults[] + #endif + #ifdef CROSS_INCLUDE_DIR + /* One place the target system's headers might be. */ +- { CROSS_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, ++ { CROSS_INCLUDE_DIRVAR, "GCC", 0, 0, 0, 0 }, + #endif + #ifdef TOOL_INCLUDE_DIR + /* Another place the target system's headers might be. */ +- { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1, 0, 0 }, ++ { TOOL_INCLUDE_DIRVAR, "BINUTILS", 0, 1, 0, 0 }, + #endif + #ifdef NATIVE_SYSTEM_HEADER_DIR + /* /usr/include comes dead last. */ +- { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 2 }, +- { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 0 }, ++ { NATIVE_SYSTEM_HEADER_DIRVAR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 2 }, ++ { NATIVE_SYSTEM_HEADER_DIRVAR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 0 }, + #endif + { 0, 0, 0, 0, 0, 0 } + }; + #endif /* no INCLUDE_DEFAULTS */ + +-#ifdef GCC_INCLUDE_DIR +-const char cpp_GCC_INCLUDE_DIR[] = GCC_INCLUDE_DIR; +-const size_t cpp_GCC_INCLUDE_DIR_len = sizeof GCC_INCLUDE_DIR - 8; +-#else +-const char cpp_GCC_INCLUDE_DIR[] = ""; +-const size_t cpp_GCC_INCLUDE_DIR_len = 0; +-#endif +- + /* The configured prefix. */ +-const char cpp_PREFIX[] = PREFIX; +-const size_t cpp_PREFIX_len = sizeof PREFIX - 1; +-const char cpp_EXEC_PREFIX[] = STANDARD_EXEC_PREFIX; ++char PREFIXVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = PREFIX; ++char EXEC_PREFIXVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_EXEC_PREFIX; + + /* This value is set by cpp_relocated at runtime */ + const char *gcc_exec_prefix; +diff --git a/gcc/cppdefault.h b/gcc/cppdefault.h +index a681264f75e..5e10a2fa140 100644 +--- a/gcc/cppdefault.h ++++ b/gcc/cppdefault.h +@@ -33,7 +33,8 @@ + + struct default_include + { +- const char *const fname; /* The name of the directory. */ ++ const char *fname; /* The name of the directory. */ ++ + const char *const component; /* The component containing the directory + (see update_path in prefix.c) */ + const char cplusplus; /* Only look here if we're compiling C++. */ +@@ -50,17 +51,13 @@ struct default_include + }; + + extern const struct default_include cpp_include_defaults[]; +-extern const char cpp_GCC_INCLUDE_DIR[]; +-extern const size_t cpp_GCC_INCLUDE_DIR_len; ++extern char GCC_INCLUDE_DIRVAR[] __attribute__ ((section (".gccrelocprefix"))); + + /* The configure-time prefix, i.e., the value supplied as the argument + to --prefix=. */ +-extern const char cpp_PREFIX[]; ++extern char PREFIXVAR[] __attribute__ ((section (".gccrelocprefix"))); + /* The length of the configure-time prefix. */ +-extern const size_t cpp_PREFIX_len; +-/* The configure-time execution prefix. This is typically the lib/gcc +- subdirectory of cpp_PREFIX. */ +-extern const char cpp_EXEC_PREFIX[]; ++extern char EXEC_PREFIXVAR[] __attribute__ ((section (".gccrelocprefix"))); + /* The run-time execution prefix. This is typically the lib/gcc + subdirectory of the actual installation. */ + extern const char *gcc_exec_prefix; +diff --git a/gcc/gcc.c b/gcc/gcc.c +index c87f603955f..535d5c3bb65 100644 +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -252,6 +252,8 @@ FILE *report_times_to_file = NULL; + #endif + static const char *target_system_root = DEFAULT_TARGET_SYSTEM_ROOT; + ++static char target_relocatable_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = SYSTEMLIBS_DIR; ++ + /* Nonzero means pass the updated target_system_root to the compiler. */ + + static int target_system_root_changed; +@@ -526,6 +528,7 @@ or with constant text in a single argument. + %G process LIBGCC_SPEC as a spec. + %R Output the concatenation of target_system_root and + target_sysroot_suffix. ++ %r Output the base path target_relocatable_prefix + %S process STARTFILE_SPEC as a spec. A capital S is actually used here. + %E process ENDFILE_SPEC as a spec. A capital E is actually used here. + %C process CPP_SPEC as a spec. +@@ -1499,10 +1502,10 @@ static const char *gcc_libexec_prefix; + gcc_exec_prefix is set because, in that case, we know where the + compiler has been installed, and use paths relative to that + location instead. */ +-static const char *const standard_exec_prefix = STANDARD_EXEC_PREFIX; +-static const char *const standard_libexec_prefix = STANDARD_LIBEXEC_PREFIX; +-static const char *const standard_bindir_prefix = STANDARD_BINDIR_PREFIX; +-static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX; ++static char standard_exec_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_EXEC_PREFIX; ++static char standard_libexec_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_LIBEXEC_PREFIX; ++static char standard_bindir_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_BINDIR_PREFIX; ++static char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX; + + /* For native compilers, these are well-known paths containing + components that may be provided by the system. For cross +@@ -1510,9 +1513,9 @@ static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX; + static const char *md_exec_prefix = MD_EXEC_PREFIX; + static const char *md_startfile_prefix = MD_STARTFILE_PREFIX; + static const char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1; +-static const char *const standard_startfile_prefix_1 ++static char standard_startfile_prefix_1[4096] __attribute__ ((section (".gccrelocprefix"))) + = STANDARD_STARTFILE_PREFIX_1; +-static const char *const standard_startfile_prefix_2 ++static char standard_startfile_prefix_2[4096] __attribute__ ((section (".gccrelocprefix"))) + = STANDARD_STARTFILE_PREFIX_2; + + /* A relative path to be used in finding the location of tools +@@ -5952,6 +5955,11 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part) + } + break; + ++ case 'r': ++ obstack_grow (&obstack, target_relocatable_prefix, ++ strlen (target_relocatable_prefix)); ++ break; ++ + case 'S': + value = do_spec_1 (startfile_spec, 0, NULL); + if (value != 0) +diff --git a/gcc/incpath.c b/gcc/incpath.c +index 9098ab044ab..bfad4ebe382 100644 +--- a/gcc/incpath.c ++++ b/gcc/incpath.c +@@ -131,7 +131,7 @@ add_standard_paths (const char *sysroot, const char *iprefix, + int relocated = cpp_relocated (); + size_t len; + +- if (iprefix && (len = cpp_GCC_INCLUDE_DIR_len) != 0) ++ if (iprefix && (len = strlen(GCC_INCLUDE_DIRVAR) - 7) != 0) + { + /* Look for directories that start with the standard prefix. + "Translate" them, i.e. replace /usr/local/lib/gcc... with +@@ -145,7 +145,7 @@ add_standard_paths (const char *sysroot, const char *iprefix, + now. */ + if (sysroot && p->add_sysroot) + continue; +- if (!filename_ncmp (p->fname, cpp_GCC_INCLUDE_DIR, len)) ++ if (!filename_ncmp (p->fname, GCC_INCLUDE_DIRVAR, len)) + { + char *str = concat (iprefix, p->fname + len, NULL); + if (p->multilib == 1 && imultilib) +@@ -185,7 +185,7 @@ add_standard_paths (const char *sysroot, const char *iprefix, + free (sysroot_no_trailing_dir_separator); + } + else if (!p->add_sysroot && relocated +- && !filename_ncmp (p->fname, cpp_PREFIX, cpp_PREFIX_len)) ++ && !filename_ncmp (p->fname, PREFIXVAR, strlen(PREFIXVAR))) + { + static const char *relocated_prefix; + char *ostr; +@@ -202,12 +202,12 @@ add_standard_paths (const char *sysroot, const char *iprefix, + dummy = concat (gcc_exec_prefix, "dummy", NULL); + relocated_prefix + = make_relative_prefix (dummy, +- cpp_EXEC_PREFIX, +- cpp_PREFIX); ++ EXEC_PREFIXVAR, ++ PREFIXVAR); + free (dummy); + } + ostr = concat (relocated_prefix, +- p->fname + cpp_PREFIX_len, ++ p->fname + strlen(PREFIXVAR), + NULL); + str = update_path (ostr, p->component); + free (ostr); +diff --git a/gcc/prefix.c b/gcc/prefix.c +index 1a403e535bd..3257ed3cd3e 100644 +--- a/gcc/prefix.c ++++ b/gcc/prefix.c +@@ -72,7 +72,9 @@ License along with GCC; see the file COPYING3. If not see + #include "prefix.h" + #include "common/common-target.h" + +-static const char *std_prefix = PREFIX; ++static const char PREFIXVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = PREFIX; ++ ++static const char *std_prefix = PREFIXVAR; + + static const char *get_key_value (char *); + static char *translate_name (char *); +@@ -212,7 +214,7 @@ translate_name (char *name) + prefix = getenv (key); + + if (prefix == 0) +- prefix = PREFIX; ++ prefix = PREFIXVAR; + + /* We used to strip trailing DIR_SEPARATORs here, but that can + sometimes yield a result with no separator when one was coded diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch new file mode 100644 index 000000000..abf1f8491 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch @@ -0,0 +1,99 @@ +From 9c0c73ee48dbee2aad57f4dcdad1b7b74e77b944 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 7 Dec 2015 23:41:45 +0000 +Subject: [PATCH] Search target sysroot gcc version specific dirs with + multilib. + +We install the gcc libraries (such as crtbegin.p) into +//5.2.0/ +which is a default search path for GCC (aka multi_suffix in the +code below). is 'machine' in gcc's terminology. We use +these directories so that multiple gcc versions could in theory +co-exist on target. + +We only want to build one gcc-cross-canadian per arch and have this work +for all multilibs. can be handled by mapping the multilib + to the one used by gcc-cross-canadian, e.g. +mips64-polkmllib32-linux +is symlinked to by mips64-poky-linux. + +The default gcc search path in the target sysroot for a "lib64" mutlilib +is: + +/lib32/mips64-poky-linux/5.2.0/ +/lib32/../lib64/ +/usr/lib32/mips64-poky-linux/5.2.0/ +/usr/lib32/../lib64/ +/lib32/ +/usr/lib32/ + +which means that the lib32 crtbegin.o will be found and the lib64 ones +will not which leads to compiler failures. + +This patch injects a multilib version of that path first so the lib64 +binaries can be found first. With this change the search path becomes: + +/lib32/../lib64/mips64-poky-linux/5.2.0/ +/lib32/mips64-poky-linux/5.2.0/ +/lib32/../lib64/ +/usr/lib32/../lib64/mips64-poky-linux/5.2.0/ +/usr/lib32/mips64-poky-linux/5.2.0/ +/usr/lib32/../lib64/ +/lib32/ +/usr/lib32/ + +Upstream-Status: Pending +RP 2015/7/31 + +Signed-off-by: Khem Raj +--- + gcc/gcc.c | 29 ++++++++++++++++++++++++++++- + 1 file changed, 28 insertions(+), 1 deletion(-) + +diff --git a/gcc/gcc.c b/gcc/gcc.c +index 535d5c3bb65..04647ae812d 100644 +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -2616,7 +2616,7 @@ for_each_path (const struct path_prefix *paths, + if (path == NULL) + { + len = paths->max_len + extra_space + 1; +- len += MAX (MAX (suffix_len, multi_os_dir_len), multiarch_len); ++ len += MAX ((suffix_len + multi_os_dir_len), multiarch_len); + path = XNEWVEC (char, len); + } + +@@ -2628,6 +2628,33 @@ for_each_path (const struct path_prefix *paths, + /* Look first in MACHINE/VERSION subdirectory. */ + if (!skip_multi_dir) + { ++ if (!(pl->os_multilib ? skip_multi_os_dir : skip_multi_dir)) ++ { ++ const char *this_multi; ++ size_t this_multi_len; ++ ++ if (pl->os_multilib) ++ { ++ this_multi = multi_os_dir; ++ this_multi_len = multi_os_dir_len; ++ } ++ else ++ { ++ this_multi = multi_dir; ++ this_multi_len = multi_dir_len; ++ } ++ ++ /* Look in multilib MACHINE/VERSION subdirectory first */ ++ if (this_multi_len) ++ { ++ memcpy (path + len, this_multi, this_multi_len + 1); ++ memcpy (path + len + this_multi_len, multi_suffix, suffix_len + 1); ++ ret = callback (path, callback_info); ++ if (ret) ++ break; ++ } ++ } ++ + memcpy (path + len, multi_suffix, suffix_len + 1); + ret = callback (path, callback_info); + if (ret) diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0026-Fix-various-_FOR_BUILD-and-related-variables.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0026-Fix-various-_FOR_BUILD-and-related-variables.patch new file mode 100644 index 000000000..97bf2f3a7 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0026-Fix-various-_FOR_BUILD-and-related-variables.patch @@ -0,0 +1,134 @@ +From 3a003af8804dda90fdf4862eca5f66cb12faaf02 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 7 Dec 2015 23:42:45 +0000 +Subject: [PATCH] Fix various _FOR_BUILD and related variables + +When doing a FOR_BUILD thing, you have to override CFLAGS with +CFLAGS_FOR_BUILD. And if you use C++, you also have to override +CXXFLAGS with CXXFLAGS_FOR_BUILD. +Without this, when building for mingw, you end up trying to use +the mingw headers for a host build. + +The same goes for other variables as well, such as CPPFLAGS, +CPP, and GMPINC. + +Upstream-Status: Pending + +Signed-off-by: Peter Seebach +Signed-off-by: Mark Hatle +Signed-off-by: Khem Raj +--- + Makefile.in | 6 ++++++ + Makefile.tpl | 5 +++++ + gcc/Makefile.in | 2 +- + gcc/configure | 2 +- + gcc/configure.ac | 2 +- + 5 files changed, 14 insertions(+), 3 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index c717903bb13..5abc649868d 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -152,6 +152,7 @@ BUILD_EXPORTS = \ + CPP="$(CC_FOR_BUILD) -E"; export CPP; \ + CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ ++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ + GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ +@@ -171,6 +172,9 @@ BUILD_EXPORTS = \ + # built for the build system to override those in BASE_FLAGS_TO_PASS. + EXTRA_BUILD_FLAGS = \ + CFLAGS="$(CFLAGS_FOR_BUILD)" \ ++ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \ ++ CPP="$(CC_FOR_BUILD) -E" \ ++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \ + LDFLAGS="$(LDFLAGS_FOR_BUILD)" + + # This is the list of directories to built for the host system. +@@ -188,6 +192,7 @@ HOST_SUBDIR = @host_subdir@ + HOST_EXPORTS = \ + $(BASE_EXPORTS) \ + CC="$(CC)"; export CC; \ ++ CPP="$(CC) -E"; export CPP; \ + ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \ + CFLAGS="$(CFLAGS)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ +@@ -776,6 +781,7 @@ BASE_FLAGS_TO_PASS = \ + "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ + "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ + "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \ ++ "CXXFLAGS_FOR_BUILD=$(CXXFLAGS_FOR_BUILD)" \ + "EXPECT=$(EXPECT)" \ + "FLEX=$(FLEX)" \ + "INSTALL=$(INSTALL)" \ +diff --git a/Makefile.tpl b/Makefile.tpl +index efed1511750..778beb705b4 100644 +--- a/Makefile.tpl ++++ b/Makefile.tpl +@@ -154,6 +154,7 @@ BUILD_EXPORTS = \ + CC="$(CC_FOR_BUILD)"; export CC; \ + CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ ++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ + GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ +@@ -173,6 +174,9 @@ BUILD_EXPORTS = \ + # built for the build system to override those in BASE_FLAGS_TO_PASS. + EXTRA_BUILD_FLAGS = \ + CFLAGS="$(CFLAGS_FOR_BUILD)" \ ++ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \ ++ CPP="$(CC_FOR_BUILD) -E" \ ++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \ + LDFLAGS="$(LDFLAGS_FOR_BUILD)" + + # This is the list of directories to built for the host system. +@@ -190,6 +194,7 @@ HOST_SUBDIR = @host_subdir@ + HOST_EXPORTS = \ + $(BASE_EXPORTS) \ + CC="$(CC)"; export CC; \ ++ CPP="$(CC) -E"; export CPP; \ + ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \ + CFLAGS="$(CFLAGS)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index 011c7ac2db6..2f1165f7b5e 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -805,7 +805,7 @@ BUILD_LDFLAGS=@BUILD_LDFLAGS@ + BUILD_NO_PIE_FLAG = @BUILD_NO_PIE_FLAG@ + BUILD_LDFLAGS += $(BUILD_NO_PIE_FLAG) + BUILD_CPPFLAGS= -I. -I$(@D) -I$(srcdir) -I$(srcdir)/$(@D) \ +- -I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS) ++ -I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS_FOR_BUILD) + + # Actual name to use when installing a native compiler. + GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)') +diff --git a/gcc/configure b/gcc/configure +index 825a9652329..ff46cf58960 100755 +--- a/gcc/configure ++++ b/gcc/configure +@@ -12314,7 +12314,7 @@ else + CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \ + CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \ + LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \ +- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \ ++ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \ + ${realsrcdir}/configure \ + --enable-languages=${enable_languages-all} \ + ${enable_obsolete+--enable-obsolete="$enable_obsolete"} \ +diff --git a/gcc/configure.ac b/gcc/configure.ac +index 6099eb3251f..b3c345b61dc 100644 +--- a/gcc/configure.ac ++++ b/gcc/configure.ac +@@ -1898,7 +1898,7 @@ else + CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \ + CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \ + LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \ +- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \ ++ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \ + ${realsrcdir}/configure \ + --enable-languages=${enable_languages-all} \ + ${enable_obsolete+--enable-obsolete="$enable_obsolete"} \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch new file mode 100644 index 000000000..3cd75b718 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch @@ -0,0 +1,25 @@ +From 4e53d0ae70af85af0e112a48a3e4dfe4c39f4a8d Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 2 Feb 2016 10:26:10 -0800 +Subject: [PATCH] nios2: Define MUSL_DYNAMIC_LINKER + +Upstream-Status: Pending + +Signed-off-by: Marek Vasut +Signed-off-by: Khem Raj +--- + gcc/config/nios2/linux.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gcc/config/nios2/linux.h b/gcc/config/nios2/linux.h +index 4bdcdcca1f0..e7943a9d640 100644 +--- a/gcc/config/nios2/linux.h ++++ b/gcc/config/nios2/linux.h +@@ -30,6 +30,7 @@ + #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" + + #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1" ++#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-nios2.so.1" + + #undef LINK_SPEC + #define LINK_SPEC LINK_SPEC_ENDIAN \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch new file mode 100644 index 000000000..2a6769a82 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch @@ -0,0 +1,84 @@ +From 5db0404eb770ac477fd99d444226bcf021067584 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 27 Jun 2017 18:10:54 -0700 +Subject: [PATCH] Add ssp_nonshared to link commandline for musl targets + +when -fstack-protector options are enabled we need to +link with ssp_shared on musl since it does not provide +the __stack_chk_fail_local() so essentially it provides +libssp but not libssp_nonshared something like +TARGET_LIBC_PROVIDES_SSP_BUT_NOT_SSP_NONSHARED + where-as for glibc the needed symbols +are already present in libc_nonshared library therefore +we do not need any library helper on glibc based systems +but musl needs the libssp_noshared from gcc + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + gcc/config/linux.h | 7 +++++++ + gcc/config/rs6000/linux.h | 10 ++++++++++ + gcc/config/rs6000/linux64.h | 10 ++++++++++ + 3 files changed, 27 insertions(+) + +diff --git a/gcc/config/linux.h b/gcc/config/linux.h +index 0c1a8118a26..bdc2a2d0659 100644 +--- a/gcc/config/linux.h ++++ b/gcc/config/linux.h +@@ -195,6 +195,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + { GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \ + { 0, 0, 0, 0, 0, 0 } \ + } ++#ifdef TARGET_LIBC_PROVIDES_SSP ++#undef LINK_SSP_SPEC ++#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ ++ "|fstack-protector-strong|fstack-protector-explicit" \ ++ ":-lssp_nonshared}" ++#endif ++ + #endif + + #if (DEFAULT_LIBC == LIBC_UCLIBC) && defined (SINGLE_LIBC) /* uClinux */ +diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h +index b7026fcbee7..dd54d6c393e 100644 +--- a/gcc/config/rs6000/linux.h ++++ b/gcc/config/rs6000/linux.h +@@ -94,6 +94,16 @@ + " -m elf32ppclinux") + #endif + ++/* link libssp_nonshared.a with musl */ ++#if DEFAULT_LIBC == LIBC_MUSL ++#ifdef TARGET_LIBC_PROVIDES_SSP ++#undef LINK_SSP_SPEC ++#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ ++ "|fstack-protector-strong|fstack-protector-explicit" \ ++ ":-lssp_nonshared}" ++#endif ++#endif ++ + #undef LINK_OS_LINUX_SPEC + #define LINK_OS_LINUX_SPEC LINK_OS_LINUX_EMUL " %{!shared: %{!static: \ + %{!static-pie: \ +diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h +index 967c1c43c63..dc5e4d97975 100644 +--- a/gcc/config/rs6000/linux64.h ++++ b/gcc/config/rs6000/linux64.h +@@ -452,6 +452,16 @@ extern int dot_symbols; + " -m elf64ppc") + #endif + ++/* link libssp_nonshared.a with musl */ ++#if DEFAULT_LIBC == LIBC_MUSL ++#ifdef TARGET_LIBC_PROVIDES_SSP ++#undef LINK_SSP_SPEC ++#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ ++ "|fstack-protector-strong|fstack-protector-explicit" \ ++ ":-lssp_nonshared}" ++#endif ++#endif ++ + #define LINK_OS_LINUX_SPEC32 LINK_OS_LINUX_EMUL32 " %{!shared: %{!static: \ + %{!static-pie: \ + %{rdynamic:-export-dynamic} \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch new file mode 100644 index 000000000..767cba038 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch @@ -0,0 +1,26 @@ +From fbc926dbf6a47fa623b9c94cd9b09a0e90448fdc Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 4 May 2016 21:11:34 -0700 +Subject: [PATCH] Link libgcc using LDFLAGS, not just SHLIB_LDFLAGS + +Upstream-Status: Pending + +Signed-off-by: Christopher Larson +Signed-off-by: Khem Raj +--- + libgcc/config/t-slibgcc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libgcc/config/t-slibgcc b/libgcc/config/t-slibgcc +index c997553447c..330352c2c81 100644 +--- a/libgcc/config/t-slibgcc ++++ b/libgcc/config/t-slibgcc +@@ -32,7 +32,7 @@ SHLIB_INSTALL_SOLINK = $(LN_S) $(SHLIB_SONAME) \ + $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK) + + SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \ +- $(SHLIB_LDFLAGS) \ ++ $(LDFLAGS) $(SHLIB_LDFLAGS) \ + -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \ + $(SHLIB_OBJS) $(SHLIB_LC) && \ + rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0030-sync-gcc-stddef.h-with-musl.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0030-sync-gcc-stddef.h-with-musl.patch new file mode 100644 index 000000000..4f18907a1 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0030-sync-gcc-stddef.h-with-musl.patch @@ -0,0 +1,88 @@ +From 24dc04dc8d69e3bf61322615b3ef18e02ccd311e Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 3 Feb 2017 12:56:00 -0800 +Subject: [PATCH] sync gcc stddef.h with musl + +musl defines ptrdiff_t size_t and wchar_t +so dont define them here if musl is definining them + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + gcc/ginclude/stddef.h | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/gcc/ginclude/stddef.h b/gcc/ginclude/stddef.h +index 9d67eac4947..6cb5edbedb4 100644 +--- a/gcc/ginclude/stddef.h ++++ b/gcc/ginclude/stddef.h +@@ -128,6 +128,7 @@ _TYPE_wchar_t; + #ifndef ___int_ptrdiff_t_h + #ifndef _GCC_PTRDIFF_T + #ifndef _PTRDIFF_T_DECLARED /* DragonFly */ ++#ifndef __DEFINED_ptrdiff_t /* musl */ + #define _PTRDIFF_T + #define _T_PTRDIFF_ + #define _T_PTRDIFF +@@ -137,10 +138,12 @@ _TYPE_wchar_t; + #define ___int_ptrdiff_t_h + #define _GCC_PTRDIFF_T + #define _PTRDIFF_T_DECLARED ++#define __DEFINED_ptrdiff_t /* musl */ + #ifndef __PTRDIFF_TYPE__ + #define __PTRDIFF_TYPE__ long int + #endif + typedef __PTRDIFF_TYPE__ ptrdiff_t; ++#endif /* __DEFINED_ptrdiff_t */ + #endif /* _PTRDIFF_T_DECLARED */ + #endif /* _GCC_PTRDIFF_T */ + #endif /* ___int_ptrdiff_t_h */ +@@ -178,6 +181,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; + #ifndef _GCC_SIZE_T + #ifndef _SIZET_ + #ifndef __size_t ++#ifndef __DEFINED_size_t /* musl */ + #define __size_t__ /* BeOS */ + #define __SIZE_T__ /* Cray Unicos/Mk */ + #define _SIZE_T +@@ -194,6 +198,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; + #define ___int_size_t_h + #define _GCC_SIZE_T + #define _SIZET_ ++#define __DEFINED_size_t /* musl */ + #if defined (__FreeBSD__) \ + || defined(__DragonFly__) \ + || defined(__FreeBSD_kernel__) \ +@@ -228,6 +233,7 @@ typedef long ssize_t; + #endif /* _SIZE_T */ + #endif /* __SIZE_T__ */ + #endif /* __size_t__ */ ++#endif /* __DEFINED_size_t */ + #undef __need_size_t + #endif /* _STDDEF_H or __need_size_t. */ + +@@ -257,6 +263,7 @@ typedef long ssize_t; + #ifndef ___int_wchar_t_h + #ifndef __INT_WCHAR_T_H + #ifndef _GCC_WCHAR_T ++#ifndef __DEFINED_wchar_t /* musl */ + #define __wchar_t__ /* BeOS */ + #define __WCHAR_T__ /* Cray Unicos/Mk */ + #define _WCHAR_T +@@ -272,6 +279,7 @@ typedef long ssize_t; + #define __INT_WCHAR_T_H + #define _GCC_WCHAR_T + #define _WCHAR_T_DECLARED ++#define __DEFINED_wchar_t /* musl */ + + /* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_ + instead of _WCHAR_T_, and _BSD_RUNE_T_ (which, unlike the other +@@ -337,6 +345,7 @@ typedef __WCHAR_TYPE__ wchar_t; + #endif + #endif /* __WCHAR_T__ */ + #endif /* __wchar_t__ */ ++#endif /* __DEFINED_wchar_t musl */ + #undef __need_wchar_t + #endif /* _STDDEF_H or __need_wchar_t. */ + diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0031-fix-segmentation-fault-in-precompiled-header-generat.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0031-fix-segmentation-fault-in-precompiled-header-generat.patch new file mode 100644 index 000000000..702279af0 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0031-fix-segmentation-fault-in-precompiled-header-generat.patch @@ -0,0 +1,57 @@ +From 27b8ba5555ada2dab076988529bfb84d00a4b901 Mon Sep 17 00:00:00 2001 +From: Juro Bystricky +Date: Mon, 19 Mar 2018 22:31:20 -0700 +Subject: [PATCH] fix segmentation fault in precompiled header generation + +Prevent a segmentation fault which occurs when using incorrect +structure trying to access name of some named operators, such as +CPP_NOT, CPP_AND etc. "token->val.node.spelling" cannot be used in +those cases, as is may not be initialized at all. + +[YOCTO #11738] + +Upstream-Status: Pending + +Signed-off-by: Juro Bystricky +Signed-off-by: Khem Raj +--- + libcpp/lex.c | 26 +++++++++++++++++++++----- + 1 file changed, 21 insertions(+), 5 deletions(-) + +diff --git a/libcpp/lex.c b/libcpp/lex.c +index 56ac3a1dd73..73a951148b3 100644 +--- a/libcpp/lex.c ++++ b/libcpp/lex.c +@@ -3311,11 +3311,27 @@ cpp_spell_token (cpp_reader *pfile, const cpp_token *token, + spell_ident: + case SPELL_IDENT: + if (forstring) +- { +- memcpy (buffer, NODE_NAME (token->val.node.spelling), +- NODE_LEN (token->val.node.spelling)); +- buffer += NODE_LEN (token->val.node.spelling); +- } ++ { ++ if (token->type == CPP_NAME) ++ { ++ memcpy (buffer, NODE_NAME (token->val.node.spelling), ++ NODE_LEN (token->val.node.spelling)); ++ buffer += NODE_LEN (token->val.node.spelling); ++ break; ++ } ++ /* NAMED_OP, cannot use node.spelling */ ++ if (token->flags & NAMED_OP) ++ { ++ const char *str = cpp_named_operator2name (token->type); ++ if (str) ++ { ++ size_t len = strlen(str); ++ memcpy(buffer, str, len); ++ buffer += len; ++ } ++ break; ++ } ++ } + else + buffer = _cpp_spell_ident_ucns (buffer, token->val.node.node); + break; diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0032-Fix-for-testsuite-failure.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0032-Fix-for-testsuite-failure.patch new file mode 100644 index 000000000..0a0767b44 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0032-Fix-for-testsuite-failure.patch @@ -0,0 +1,255 @@ +From 2512aacf023c679d86d8f40caff4f6ff412b32ff Mon Sep 17 00:00:00 2001 +From: RAGHUNATH LOLUR +Date: Wed, 6 Dec 2017 22:52:26 -0800 +Subject: [PATCH] Fix for testsuite failure + +2017-11-16 Raghunath Lolur + + * gcc.dg/pr56275.c: If SSE is disabled, ensure that + "-mfpmath" is not set to use SSE. Set "-mfpmath=387". + * gcc.dg/pr68306.c: Likewise + * gcc.dg/pr68306-2.c: Likewise + * gcc.dg/pr68306-3.c: Likewise + * gcc.dg/pr69634.c: Likewise + * gcc.target/i386/amd64-abi-1.c: Likewise + * gcc.target/i386/funcspec-6.c: Likewise + * gcc.target/i386/interrupt-387-err-1.c: Likewise + * gcc.target/i386/isa-14.c: Likewise + * gcc.target/i386/pr44948-2b.c: Likewise + * gcc.target/i386/pr53425-1.c: Likewise + * gcc.target/i386/pr53425-2.c: Likewise + * gcc.target/i386/pr55247.c: Likewise + * gcc.target/i386/pr59644.c: Likewise + * gcc.target/i386/pr62120.c: Likewise + * gcc.target/i386/pr70467-1.c: Likewise + * gcc.target/i386/warn-vect-op-1.c: Likewise + +If -Wall, -Werror are used during compilation various test cases fail +to compile. + +If SSE is disabled, be sure to -mfpmath=387 to resolve this. + +This patch removes the changes to Changelog from the original patch. +This will help us avoid conflicts. + +Upstream-Status: Pending + +Signed-off-by: Mark Hatle +--- + gcc/testsuite/gcc.dg/pr56275.c | 2 +- + gcc/testsuite/gcc.dg/pr68306-2.c | 2 +- + gcc/testsuite/gcc.dg/pr68306-3.c | 2 +- + gcc/testsuite/gcc.dg/pr68306.c | 2 +- + gcc/testsuite/gcc.dg/pr69634.c | 2 +- + gcc/testsuite/gcc.target/i386/amd64-abi-1.c | 2 +- + gcc/testsuite/gcc.target/i386/funcspec-6.c | 1 + + gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c | 2 +- + gcc/testsuite/gcc.target/i386/isa-14.c | 2 +- + gcc/testsuite/gcc.target/i386/pr44948-2b.c | 2 +- + gcc/testsuite/gcc.target/i386/pr53425-1.c | 2 +- + gcc/testsuite/gcc.target/i386/pr53425-2.c | 2 +- + gcc/testsuite/gcc.target/i386/pr55247.c | 2 +- + gcc/testsuite/gcc.target/i386/pr59644.c | 2 +- + gcc/testsuite/gcc.target/i386/pr62120.c | 2 +- + gcc/testsuite/gcc.target/i386/pr70467-1.c | 2 +- + gcc/testsuite/gcc.target/i386/warn-vect-op-1.c | 2 +- + 17 files changed, 17 insertions(+), 16 deletions(-) + +diff --git a/gcc/testsuite/gcc.dg/pr56275.c b/gcc/testsuite/gcc.dg/pr56275.c +index b901bb2b199..a4f6c95e1a1 100644 +--- a/gcc/testsuite/gcc.dg/pr56275.c ++++ b/gcc/testsuite/gcc.dg/pr56275.c +@@ -1,6 +1,6 @@ + /* { dg-do compile } */ + /* { dg-options "-O2" } */ +-/* { dg-additional-options "-mno-sse" { target { i?86-*-* x86_64-*-* } } } */ ++/* { dg-additional-options "-mno-sse -mfpmath=387" { target { i?86-*-* x86_64-*-* } } } */ + + typedef long long v2tw __attribute__ ((vector_size (2 * sizeof (long long)))); + +diff --git a/gcc/testsuite/gcc.dg/pr68306-2.c b/gcc/testsuite/gcc.dg/pr68306-2.c +index 4672ebe7987..2a368c484b6 100644 +--- a/gcc/testsuite/gcc.dg/pr68306-2.c ++++ b/gcc/testsuite/gcc.dg/pr68306-2.c +@@ -1,6 +1,6 @@ + /* { dg-do compile } */ + /* { dg-options "-O3" } */ +-/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */ ++/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ + + struct { + int tz_minuteswest; +diff --git a/gcc/testsuite/gcc.dg/pr68306-3.c b/gcc/testsuite/gcc.dg/pr68306-3.c +index f5a8c102cf8..df3390c64c2 100644 +--- a/gcc/testsuite/gcc.dg/pr68306-3.c ++++ b/gcc/testsuite/gcc.dg/pr68306-3.c +@@ -1,6 +1,6 @@ + /* { dg-do compile } */ + /* { dg-options "-O3" } */ +-/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */ ++/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ + /* { dg-additional-options "-mno-altivec -mno-vsx" { target powerpc*-*-* } } */ + + extern void fn2(); +diff --git a/gcc/testsuite/gcc.dg/pr68306.c b/gcc/testsuite/gcc.dg/pr68306.c +index 54e5b40f221..0813389e2c1 100644 +--- a/gcc/testsuite/gcc.dg/pr68306.c ++++ b/gcc/testsuite/gcc.dg/pr68306.c +@@ -1,6 +1,6 @@ + /* { dg-do compile } */ + /* { dg-options "-O3" } */ +-/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */ ++/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ + + enum powerpc_pmc_type { PPC_PMC_IBM }; + struct { +diff --git a/gcc/testsuite/gcc.dg/pr69634.c b/gcc/testsuite/gcc.dg/pr69634.c +index 60a56149463..bcc23f9ccd6 100644 +--- a/gcc/testsuite/gcc.dg/pr69634.c ++++ b/gcc/testsuite/gcc.dg/pr69634.c +@@ -1,6 +1,6 @@ + /* { dg-do compile } */ + /* { dg-options "-O2 -fno-dce -fschedule-insns -fno-tree-vrp -fcompare-debug -Wno-psabi" } */ +-/* { dg-additional-options "-mno-sse" { target i?86-*-* x86_64-*-* } } */ ++/* { dg-additional-options "-mno-sse -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ + /* { dg-require-effective-target scheduling } */ + + typedef unsigned short u16; +diff --git a/gcc/testsuite/gcc.target/i386/amd64-abi-1.c b/gcc/testsuite/gcc.target/i386/amd64-abi-1.c +index 69fde57bf06..7f1f1c03edf 100644 +--- a/gcc/testsuite/gcc.target/i386/amd64-abi-1.c ++++ b/gcc/testsuite/gcc.target/i386/amd64-abi-1.c +@@ -1,5 +1,5 @@ + /* { dg-do compile { target { ! ia32 } } } */ +-/* { dg-options "-mno-sse" } */ ++/* { dg-options "-mno-sse -mfpmath=387" } */ + /* { dg-additional-options "-mabi=sysv" { target *-*-mingw* } } */ + + double foo(void) { return 0; } /* { dg-error "SSE disabled" } */ +diff --git a/gcc/testsuite/gcc.target/i386/funcspec-6.c b/gcc/testsuite/gcc.target/i386/funcspec-6.c +index ea896b7ebfd..bf15569b826 100644 +--- a/gcc/testsuite/gcc.target/i386/funcspec-6.c ++++ b/gcc/testsuite/gcc.target/i386/funcspec-6.c +@@ -1,6 +1,7 @@ + /* Test whether all of the 64-bit function specific options are accepted + without error. */ + /* { dg-do compile { target { ! ia32 } } } */ ++/* { dg-additional-options "-mfpmath=387" } */ + + #include "funcspec-56.inc" + +diff --git a/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c b/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c +index 8561a3c26d6..6377f814645 100644 +--- a/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c ++++ b/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c +@@ -1,5 +1,5 @@ + /* { dg-do compile } */ +-/* { dg-options "-O2 -mgeneral-regs-only -mno-cld -mno-iamcu -m80387" } */ ++/* { dg-options "-O2 -mgeneral-regs-only -mno-cld -mno-iamcu -m80387 -mfpmath=387" } */ + + typedef unsigned int uword_t __attribute__ ((mode (__word__))); + +diff --git a/gcc/testsuite/gcc.target/i386/isa-14.c b/gcc/testsuite/gcc.target/i386/isa-14.c +index 5d49e6e77fe..1de2db92bdd 100644 +--- a/gcc/testsuite/gcc.target/i386/isa-14.c ++++ b/gcc/testsuite/gcc.target/i386/isa-14.c +@@ -1,5 +1,5 @@ + /* { dg-do run } */ +-/* { dg-options "-march=x86-64 -msse4a -mfma4 -mno-sse" } */ ++/* { dg-options "-march=x86-64 -msse4a -mfma4 -mno-sse -mfpmath=387" } */ + + extern void abort (void); + +diff --git a/gcc/testsuite/gcc.target/i386/pr44948-2b.c b/gcc/testsuite/gcc.target/i386/pr44948-2b.c +index fa1769b62fb..f79fb12726f 100644 +--- a/gcc/testsuite/gcc.target/i386/pr44948-2b.c ++++ b/gcc/testsuite/gcc.target/i386/pr44948-2b.c +@@ -1,5 +1,5 @@ + /* { dg-do compile } */ +-/* { dg-options "-O -mno-sse -Wno-psabi -mtune=generic" } */ ++/* { dg-options "-O -mno-sse -Wno-psabi -mtune=generic -mfpmath=387" } */ + + struct A + { +diff --git a/gcc/testsuite/gcc.target/i386/pr53425-1.c b/gcc/testsuite/gcc.target/i386/pr53425-1.c +index 2e89ff7d81d..6339bf6b736 100644 +--- a/gcc/testsuite/gcc.target/i386/pr53425-1.c ++++ b/gcc/testsuite/gcc.target/i386/pr53425-1.c +@@ -1,6 +1,6 @@ + /* PR target/53425 */ + /* { dg-do compile { target { ! ia32 } } } */ +-/* { dg-options "-O2 -mno-sse" } */ ++/* { dg-options "-O2 -mno-sse -mfpmath=387" } */ + /* { dg-skip-if "no SSE vector" { x86_64-*-mingw* } } */ + + typedef double __v2df __attribute__ ((__vector_size__ (16))); +diff --git a/gcc/testsuite/gcc.target/i386/pr53425-2.c b/gcc/testsuite/gcc.target/i386/pr53425-2.c +index 61f6283dbe9..2c5a55f0ac3 100644 +--- a/gcc/testsuite/gcc.target/i386/pr53425-2.c ++++ b/gcc/testsuite/gcc.target/i386/pr53425-2.c +@@ -1,6 +1,6 @@ + /* PR target/53425 */ + /* { dg-do compile { target { ! ia32 } } } */ +-/* { dg-options "-O2 -mno-sse" } */ ++/* { dg-options "-O2 -mno-sse -mfpmath=387" } */ + /* { dg-skip-if "no SSE vector" { x86_64-*-mingw* } } */ + + typedef float __v2sf __attribute__ ((__vector_size__ (8))); +diff --git a/gcc/testsuite/gcc.target/i386/pr55247.c b/gcc/testsuite/gcc.target/i386/pr55247.c +index 23366d0909d..9810e3abb76 100644 +--- a/gcc/testsuite/gcc.target/i386/pr55247.c ++++ b/gcc/testsuite/gcc.target/i386/pr55247.c +@@ -1,6 +1,6 @@ + /* { dg-do compile { target { ! ia32 } } } */ + /* { dg-require-effective-target maybe_x32 } */ +-/* { dg-options "-O2 -mno-sse -mno-mmx -mx32 -maddress-mode=long" } */ ++/* { dg-options "-O2 -mno-sse -mno-mmx -mx32 -maddress-mode=long -mfpmath=387" } */ + + typedef unsigned int uint32_t; + typedef uint32_t Elf32_Word; +diff --git a/gcc/testsuite/gcc.target/i386/pr59644.c b/gcc/testsuite/gcc.target/i386/pr59644.c +index 96006b3e338..4287e4538bf 100644 +--- a/gcc/testsuite/gcc.target/i386/pr59644.c ++++ b/gcc/testsuite/gcc.target/i386/pr59644.c +@@ -1,6 +1,6 @@ + /* PR target/59644 */ + /* { dg-do run { target lp64 } } */ +-/* { dg-options "-O2 -ffreestanding -mno-sse -mpreferred-stack-boundary=3 -maccumulate-outgoing-args -mno-red-zone" } */ ++/* { dg-options "-O2 -ffreestanding -mno-sse -mpreferred-stack-boundary=3 -maccumulate-outgoing-args -mno-red-zone -mfpmath=387" } */ + + /* This test uses __builtin_trap () instead of e.g. abort, + because due to -mpreferred-stack-boundary=3 it should not call +diff --git a/gcc/testsuite/gcc.target/i386/pr62120.c b/gcc/testsuite/gcc.target/i386/pr62120.c +index 28d85d37712..c93266bd4bc 100644 +--- a/gcc/testsuite/gcc.target/i386/pr62120.c ++++ b/gcc/testsuite/gcc.target/i386/pr62120.c +@@ -1,5 +1,5 @@ + /* { dg-do compile } */ +-/* { dg-options "-mno-sse" } */ ++/* { dg-options "-mno-sse -mfpmath=387" } */ + + void foo () + { +diff --git a/gcc/testsuite/gcc.target/i386/pr70467-1.c b/gcc/testsuite/gcc.target/i386/pr70467-1.c +index 4e112c88d07..bcfb396a68d 100644 +--- a/gcc/testsuite/gcc.target/i386/pr70467-1.c ++++ b/gcc/testsuite/gcc.target/i386/pr70467-1.c +@@ -1,6 +1,6 @@ + /* PR rtl-optimization/70467 */ + /* { dg-do compile } */ +-/* { dg-options "-O2 -mno-sse" } */ ++/* { dg-options "-O2 -mno-sse -mfpmath=387" } */ + + void foo (unsigned long long *); + +diff --git a/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c b/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c +index 6cda1534311..26e37f5b8ba 100644 +--- a/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c ++++ b/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c +@@ -1,5 +1,5 @@ + /* { dg-do compile { target { ! ia32 } } } */ +-/* { dg-options "-mno-sse -Wvector-operation-performance" } */ ++/* { dg-options "-mno-sse -Wvector-operation-performance -mfpmath=387" } */ + #define vector(elcount, type) \ + __attribute__((vector_size((elcount)*sizeof(type)))) type + diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0033-Re-introduce-spe-commandline-options.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0033-Re-introduce-spe-commandline-options.patch new file mode 100644 index 000000000..ba7c2b8fd --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0033-Re-introduce-spe-commandline-options.patch @@ -0,0 +1,38 @@ +From 3fc06241ce37e2e4b3ed21ace28d347eb511448d Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 6 Jun 2018 12:10:22 -0700 +Subject: [PATCH] Re-introduce spe commandline options + +This should ensure that we keep accepting +spe options + +Upstream-Status: Inappropriate [SPE port is removed from rs600 port] + +Signed-off-by: Khem Raj +--- + gcc/config/rs6000/rs6000.opt | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt +index f95b8279270..0e52d51409d 100644 +--- a/gcc/config/rs6000/rs6000.opt ++++ b/gcc/config/rs6000/rs6000.opt +@@ -344,6 +344,18 @@ mdebug= + Target RejectNegative Joined + -mdebug= Enable debug output. + ++mspe ++Target Var(rs6000_spe) Save ++Generate SPE SIMD instructions on E500. ++ ++mabi=spe ++Target RejectNegative Var(rs6000_spe_abi) Save ++Use the SPE ABI extensions. ++ ++mabi=no-spe ++Target RejectNegative Var(rs6000_spe_abi, 0) ++Do not use the SPE ABI extensions. ++ + mabi=altivec + Target RejectNegative Var(rs6000_altivec_abi) Save + Use the AltiVec ABI extensions. diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch new file mode 100644 index 000000000..4ce9dc6de --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch @@ -0,0 +1,83 @@ +From b42ff59c3fe2967d37815c8db72a47b9b7f585b4 Mon Sep 17 00:00:00 2001 +From: Szabolcs Nagy +Date: Sat, 24 Oct 2015 20:09:53 +0000 +Subject: [PATCH] libgcc_s: Use alias for __cpu_indicator_init instead of + symver + +Adapter from + +https://gcc.gnu.org/ml/gcc-patches/2015-05/msg00899.html + +This fix was debated but hasnt been applied gcc upstream since +they expect musl to support '@' in symbol versioning which is +a sun/gnu versioning extention. This patch however avoids the +need for the '@' symbols at all + +libgcc/Changelog: + +2015-05-11 Szabolcs Nagy + + * config/i386/cpuinfo.c (__cpu_indicator_init_local): Add. + (__cpu_indicator_init@GCC_4.8.0, __cpu_model@GCC_4.8.0): Remove. + + * config/i386/t-linux (HOST_LIBGCC2_CFLAGS): Remove -DUSE_ELF_SYMVER. + +gcc/Changelog: + +2015-05-11 Szabolcs Nagy + + * config/i386/i386-expand.c (ix86_expand_builtin): Make __builtin_cpu_init + call __cpu_indicator_init_local instead of __cpu_indicator_init. + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + gcc/config/i386/i386-expand.c | 4 ++-- + libgcc/config/i386/cpuinfo.c | 6 +++--- + libgcc/config/i386/t-linux | 2 +- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/gcc/config/i386/i386-expand.c b/gcc/config/i386/i386-expand.c +index 48f00c5fcfc..468f5f71fac 100644 +--- a/gcc/config/i386/i386-expand.c ++++ b/gcc/config/i386/i386-expand.c +@@ -10941,10 +10941,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget, + { + case IX86_BUILTIN_CPU_INIT: + { +- /* Make it call __cpu_indicator_init in libgcc. */ ++ /* Make it call __cpu_indicator_init_local in libgcc.a. */ + tree call_expr, fndecl, type; + type = build_function_type_list (integer_type_node, NULL_TREE); +- fndecl = build_fn_decl ("__cpu_indicator_init", type); ++ fndecl = build_fn_decl ("__cpu_indicator_init_local", type); + call_expr = build_call_expr (fndecl, 0); + return expand_expr (call_expr, target, mode, EXPAND_NORMAL); + } +diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c +index 00322c58622..f42bbb8af98 100644 +--- a/libgcc/config/i386/cpuinfo.c ++++ b/libgcc/config/i386/cpuinfo.c +@@ -508,7 +508,7 @@ __cpu_indicator_init (void) + return 0; + } + +-#if defined SHARED && defined USE_ELF_SYMVER +-__asm__ (".symver __cpu_indicator_init, __cpu_indicator_init@GCC_4.8.0"); +-__asm__ (".symver __cpu_model, __cpu_model@GCC_4.8.0"); ++#ifndef SHARED ++int __cpu_indicator_init_local (void) ++ __attribute__ ((weak, alias ("__cpu_indicator_init"))); + #endif +diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux +index 8506a635790..564296f788e 100644 +--- a/libgcc/config/i386/t-linux ++++ b/libgcc/config/i386/t-linux +@@ -3,5 +3,5 @@ + # t-slibgcc-elf-ver and t-linux + SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver + +-HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER $(CET_FLAGS) ++HOST_LIBGCC2_CFLAGS += -mlong-double-80 $(CET_FLAGS) + CRTSTUFF_T_CFLAGS += $(CET_FLAGS) diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch new file mode 100644 index 000000000..dd1bf6ded --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch @@ -0,0 +1,182 @@ +From 0395060a7dcf98c5f5a65103f6aaa71d6b862259 Mon Sep 17 00:00:00 2001 +From: Richard Purdie +Date: Tue, 10 Mar 2020 08:26:53 -0700 +Subject: [PATCH] gentypes/genmodes: Do not use __LINE__ for maintaining + reproducibility + +Inserting line numbers into generated code means its not always reproducible wth +differing versions of host gcc. Void the issue by not adding these. + +Upstream-Status: Inappropriate [OE Reproducibility specific] + +Signed-off-by: Richard Purdie +Signed-off-by: Khem Raj +--- + gcc/gengtype.c | 6 +++--- + gcc/genmodes.c | 32 ++++++++++++++++---------------- + 2 files changed, 19 insertions(+), 19 deletions(-) + +diff --git a/gcc/gengtype.c b/gcc/gengtype.c +index 981577481af..d5700fff401 100644 +--- a/gcc/gengtype.c ++++ b/gcc/gengtype.c +@@ -991,7 +991,7 @@ create_field_at (pair_p next, type_p type, const char *name, options_p opt, + /* Create a fake field with the given type and name. NEXT is the next + field in the chain. */ + #define create_field(next,type,name) \ +- create_field_all (next,type,name, 0, this_file, __LINE__) ++ create_field_all (next,type,name, 0, this_file, 0) + + /* Like create_field, but the field is only valid when condition COND + is true. */ +@@ -1024,7 +1024,7 @@ create_optional_field_ (pair_p next, type_p type, const char *name, + } + + #define create_optional_field(next,type,name,cond) \ +- create_optional_field_(next,type,name,cond,__LINE__) ++ create_optional_field_(next,type,name,cond,0) + + /* Reverse a linked list of 'struct pair's in place. */ + pair_p +@@ -5187,7 +5187,7 @@ main (int argc, char **argv) + /* These types are set up with #define or else outside of where + we can see them. We should initialize them before calling + read_input_list. */ +-#define POS_HERE(Call) do { pos.file = this_file; pos.line = __LINE__; \ ++#define POS_HERE(Call) do { pos.file = this_file; pos.line = 0; \ + Call;} while (0) + POS_HERE (do_scalar_typedef ("CUMULATIVE_ARGS", &pos)); + POS_HERE (do_scalar_typedef ("REAL_VALUE_TYPE", &pos)); +diff --git a/gcc/genmodes.c b/gcc/genmodes.c +index bd78310ea24..dbd02c51a4c 100644 +--- a/gcc/genmodes.c ++++ b/gcc/genmodes.c +@@ -430,7 +430,7 @@ complete_all_modes (void) + } + + /* For each mode in class CLASS, construct a corresponding complex mode. */ +-#define COMPLEX_MODES(C) make_complex_modes (MODE_##C, __FILE__, __LINE__) ++#define COMPLEX_MODES(C) make_complex_modes (MODE_##C, __FILE__, 0) + static void + make_complex_modes (enum mode_class cl, + const char *file, unsigned int line) +@@ -489,7 +489,7 @@ make_complex_modes (enum mode_class cl, + having as many components as necessary. ORDER is the sorting order + of the mode, with smaller numbers indicating a higher priority. */ + #define VECTOR_MODES_WITH_PREFIX(PREFIX, C, W, ORDER) \ +- make_vector_modes (MODE_##C, #PREFIX, W, ORDER, __FILE__, __LINE__) ++ make_vector_modes (MODE_##C, #PREFIX, W, ORDER, __FILE__, 0) + #define VECTOR_MODES(C, W) VECTOR_MODES_WITH_PREFIX (V, C, W, 0) + static void ATTRIBUTE_UNUSED + make_vector_modes (enum mode_class cl, const char *prefix, unsigned int width, +@@ -541,7 +541,7 @@ make_vector_modes (enum mode_class cl, const char *prefix, unsigned int width, + /* Create a vector of booleans called NAME with COUNT elements and + BYTESIZE bytes in total. */ + #define VECTOR_BOOL_MODE(NAME, COUNT, BYTESIZE) \ +- make_vector_bool_mode (#NAME, COUNT, BYTESIZE, __FILE__, __LINE__) ++ make_vector_bool_mode (#NAME, COUNT, BYTESIZE, __FILE__, 0) + static void ATTRIBUTE_UNUSED + make_vector_bool_mode (const char *name, unsigned int count, + unsigned int bytesize, const char *file, +@@ -563,7 +563,7 @@ make_vector_bool_mode (const char *name, unsigned int count, + /* Input. */ + + #define _SPECIAL_MODE(C, N) \ +- make_special_mode (MODE_##C, #N, __FILE__, __LINE__) ++ make_special_mode (MODE_##C, #N, __FILE__, 0) + #define RANDOM_MODE(N) _SPECIAL_MODE (RANDOM, N) + #define CC_MODE(N) _SPECIAL_MODE (CC, N) + +@@ -576,7 +576,7 @@ make_special_mode (enum mode_class cl, const char *name, + + #define INT_MODE(N, Y) FRACTIONAL_INT_MODE (N, -1U, Y) + #define FRACTIONAL_INT_MODE(N, B, Y) \ +- make_int_mode (#N, B, Y, __FILE__, __LINE__) ++ make_int_mode (#N, B, Y, __FILE__, 0) + + static void + make_int_mode (const char *name, +@@ -589,16 +589,16 @@ make_int_mode (const char *name, + } + + #define FRACT_MODE(N, Y, F) \ +- make_fixed_point_mode (MODE_FRACT, #N, Y, 0, F, __FILE__, __LINE__) ++ make_fixed_point_mode (MODE_FRACT, #N, Y, 0, F, __FILE__, 0) + + #define UFRACT_MODE(N, Y, F) \ +- make_fixed_point_mode (MODE_UFRACT, #N, Y, 0, F, __FILE__, __LINE__) ++ make_fixed_point_mode (MODE_UFRACT, #N, Y, 0, F, __FILE__, 0) + + #define ACCUM_MODE(N, Y, I, F) \ +- make_fixed_point_mode (MODE_ACCUM, #N, Y, I, F, __FILE__, __LINE__) ++ make_fixed_point_mode (MODE_ACCUM, #N, Y, I, F, __FILE__, 0) + + #define UACCUM_MODE(N, Y, I, F) \ +- make_fixed_point_mode (MODE_UACCUM, #N, Y, I, F, __FILE__, __LINE__) ++ make_fixed_point_mode (MODE_UACCUM, #N, Y, I, F, __FILE__, 0) + + /* Create a fixed-point mode by setting CL, NAME, BYTESIZE, IBIT, FBIT, + FILE, and LINE. */ +@@ -619,7 +619,7 @@ make_fixed_point_mode (enum mode_class cl, + + #define FLOAT_MODE(N, Y, F) FRACTIONAL_FLOAT_MODE (N, -1U, Y, F) + #define FRACTIONAL_FLOAT_MODE(N, B, Y, F) \ +- make_float_mode (#N, B, Y, #F, __FILE__, __LINE__) ++ make_float_mode (#N, B, Y, #F, __FILE__, 0) + + static void + make_float_mode (const char *name, +@@ -636,7 +636,7 @@ make_float_mode (const char *name, + #define DECIMAL_FLOAT_MODE(N, Y, F) \ + FRACTIONAL_DECIMAL_FLOAT_MODE (N, -1U, Y, F) + #define FRACTIONAL_DECIMAL_FLOAT_MODE(N, B, Y, F) \ +- make_decimal_float_mode (#N, B, Y, #F, __FILE__, __LINE__) ++ make_decimal_float_mode (#N, B, Y, #F, __FILE__, 0) + + static void + make_decimal_float_mode (const char *name, +@@ -651,7 +651,7 @@ make_decimal_float_mode (const char *name, + } + + #define RESET_FLOAT_FORMAT(N, F) \ +- reset_float_format (#N, #F, __FILE__, __LINE__) ++ reset_float_format (#N, #F, __FILE__, 0) + static void ATTRIBUTE_UNUSED + reset_float_format (const char *name, const char *format, + const char *file, unsigned int line) +@@ -672,7 +672,7 @@ reset_float_format (const char *name, const char *format, + + /* __intN support. */ + #define INT_N(M,PREC) \ +- make_int_n (#M, PREC, __FILE__, __LINE__) ++ make_int_n (#M, PREC, __FILE__, 0) + static void ATTRIBUTE_UNUSED + make_int_n (const char *m, int bitsize, + const char *file, unsigned int line) +@@ -701,7 +701,7 @@ make_int_n (const char *m, int bitsize, + /* Partial integer modes are specified by relation to a full integer + mode. */ + #define PARTIAL_INT_MODE(M,PREC,NAME) \ +- make_partial_integer_mode (#M, #NAME, PREC, __FILE__, __LINE__) ++ make_partial_integer_mode (#M, #NAME, PREC, __FILE__, 0) + static void ATTRIBUTE_UNUSED + make_partial_integer_mode (const char *base, const char *name, + unsigned int precision, +@@ -728,7 +728,7 @@ make_partial_integer_mode (const char *base, const char *name, + /* A single vector mode can be specified by naming its component + mode and the number of components. */ + #define VECTOR_MODE(C, M, N) \ +- make_vector_mode (MODE_##C, #M, N, __FILE__, __LINE__); ++ make_vector_mode (MODE_##C, #M, N, __FILE__, 0); + static void ATTRIBUTE_UNUSED + make_vector_mode (enum mode_class bclass, + const char *base, +@@ -771,7 +771,7 @@ make_vector_mode (enum mode_class bclass, + + /* Adjustability. */ + #define _ADD_ADJUST(A, M, X, C1, C2) \ +- new_adjust (#M, &adj_##A, #A, #X, MODE_##C1, MODE_##C2, __FILE__, __LINE__) ++ new_adjust (#M, &adj_##A, #A, #X, MODE_##C1, MODE_##C2, __FILE__, 0) + + #define ADJUST_NUNITS(M, X) _ADD_ADJUST (nunits, M, X, RANDOM, RANDOM) + #define ADJUST_BYTESIZE(M, X) _ADD_ADJUST (bytesize, M, X, RANDOM, RANDOM) diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch new file mode 100644 index 000000000..af8064282 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch @@ -0,0 +1,150 @@ +From 87a5ace658f2294b025e0420ef03ade1f45d926c Mon Sep 17 00:00:00 2001 +From: "H.J. Lu" +Date: Fri, 8 May 2020 06:11:05 -0700 +Subject: [PATCH] Enable CET in cross compiler if possible + +Don't perform CET run-time check for host when cross compiling. Instead, +enable CET in cross compiler if possible so that it will run on both CET +and non-CET hosts. + +config/ + + PR bootstrap/94998 + * cet.m4 (GCC_CET_HOST_FLAGS): Enable CET in cross compiler if + possible. + +libiberty/ + + PR bootstrap/94998 + * configure: Regenerated. + +lto-plugin/ + + PR bootstrap/94998 + * configure: Regenerated. + +Upstream-Status: Submitted [https://patchwork.ozlabs.org/project/gcc/patch/20200508131105.170077-1-hjl.tools@gmail.com/] +Signed-off-by: Khem Raj +--- + config/cet.m4 | 18 ++++++++++++------ + libiberty/configure | 12 +++++++++--- + lto-plugin/configure | 16 +++++++++++----- + 3 files changed, 32 insertions(+), 14 deletions(-) + +diff --git a/config/cet.m4 b/config/cet.m4 +index ea616b728a9..d9608699cd5 100644 +--- a/config/cet.m4 ++++ b/config/cet.m4 +@@ -111,7 +111,8 @@ if test x$may_have_cet = xyes; then + fi + + if test x$may_have_cet = xyes; then +- AC_TRY_RUN([ ++ if test x$cross_compiling = xno; then ++ AC_TRY_RUN([ + static void + foo (void) + { +@@ -137,12 +138,17 @@ main () + bar (); + return 0; + } +- ], +- [have_cet=no], +- [have_cet=yes]) +- if test x$enable_cet = xno -a x$have_cet = xyes; then +- AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host]) ++ ], ++ [have_cet=no], ++ [have_cet=yes]) ++ if test x$enable_cet = xno -a x$have_cet = xyes; then ++ AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host]) ++ fi + fi ++else ++ # Enable CET in cross compiler if possible so that it will run on both ++ # CET and non-CET hosts. ++ have_cet=yes + fi + if test x$enable_cet = xyes; then + $1="-fcf-protection" +diff --git a/libiberty/configure b/libiberty/configure +index bb76cf1b823..3f82c5bb865 100755 +--- a/libiberty/configure ++++ b/libiberty/configure +@@ -5375,7 +5375,8 @@ rm -f core conftest.err conftest.$ac_objext \ + fi + + if test x$may_have_cet = xyes; then +- if test "$cross_compiling" = yes; then : ++ if test x$cross_compiling = xno; then ++ if test "$cross_compiling" = yes; then : + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 + $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + as_fn_error $? "cannot run test program while cross compiling +@@ -5420,9 +5421,14 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext + fi + +- if test x$enable_cet = xno -a x$have_cet = xyes; then +- as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5 ++ if test x$enable_cet = xno -a x$have_cet = xyes; then ++ as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5 ++ fi + fi ++else ++ # Enable CET in cross compiler if possible so that it will run on both ++ # CET and non-CET hosts. ++ have_cet=yes + fi + if test x$enable_cet = xyes; then + CET_HOST_FLAGS="-fcf-protection" +diff --git a/lto-plugin/configure b/lto-plugin/configure +index 1baf6cc70b8..36c6ecc5875 100755 +--- a/lto-plugin/configure ++++ b/lto-plugin/configure +@@ -5768,7 +5768,8 @@ rm -f core conftest.err conftest.$ac_objext \ + fi + + if test x$may_have_cet = xyes; then +- if test "$cross_compiling" = yes; then : ++ if test x$cross_compiling = xno; then ++ if test "$cross_compiling" = yes; then : + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 + $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + as_fn_error $? "cannot run test program while cross compiling +@@ -5813,9 +5814,14 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext + fi + +- if test x$enable_cet = xno -a x$have_cet = xyes; then +- as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5 ++ if test x$enable_cet = xno -a x$have_cet = xyes; then ++ as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5 ++ fi + fi ++else ++ # Enable CET in cross compiler if possible so that it will run on both ++ # CET and non-CET hosts. ++ have_cet=yes + fi + if test x$enable_cet = xyes; then + CET_HOST_FLAGS="-fcf-protection" +@@ -11941,7 +11947,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 11944 "configure" ++#line 11950 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -12047,7 +12053,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 12050 "configure" ++#line 12056 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0037-mingw32-Enable-operation_not_supported.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0037-mingw32-Enable-operation_not_supported.patch new file mode 100644 index 000000000..de82a3a53 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0037-mingw32-Enable-operation_not_supported.patch @@ -0,0 +1,26 @@ +From 6f87a095f0e696bec07a50df789c9db8bdbca43d Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 12 May 2020 10:39:09 -0700 +Subject: [PATCH] mingw32: Enable operation_not_supported + +Fixes nativesdk build errors on mingw32 gcc-runtime + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + libstdc++-v3/config/os/mingw32/error_constants.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libstdc++-v3/config/os/mingw32/error_constants.h b/libstdc++-v3/config/os/mingw32/error_constants.h +index 68ac72a78fb..71cd5815b81 100644 +--- a/libstdc++-v3/config/os/mingw32/error_constants.h ++++ b/libstdc++-v3/config/os/mingw32/error_constants.h +@@ -107,7 +107,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + #ifdef _GLIBCXX_HAVE_EPERM + operation_not_permitted = EPERM, + #endif +-// operation_not_supported = EOPNOTSUPP, ++ operation_not_supported = EOPNOTSUPP, + #ifdef _GLIBCXX_HAVE_EWOULDBLOCK + operation_would_block = EWOULDBLOCK, + #endif diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch new file mode 100644 index 000000000..fc9228277 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch @@ -0,0 +1,47 @@ +From 2101fb718935c7cf1cc2ad201bdeb1e635b54b0a Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 11 May 2020 11:03:41 -0700 +Subject: [PATCH] Revert "[AArch64] Use __getauxval instead of getauxval in LSE + detection code in libgcc" + +This reverts commit 5a57016dd2758cc63a544f191f77635342397a72. + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + libgcc/config/aarch64/lse-init.c | 17 ++++++++--------- + 1 file changed, 8 insertions(+), 9 deletions(-) + +diff --git a/libgcc/config/aarch64/lse-init.c b/libgcc/config/aarch64/lse-init.c +index 00e9ab8cd1c..74acef25cce 100644 +--- a/libgcc/config/aarch64/lse-init.c ++++ b/libgcc/config/aarch64/lse-init.c +@@ -29,20 +29,19 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + _Bool __aarch64_have_lse_atomics + __attribute__((visibility("hidden"), nocommon)); + +-/* Gate availability of __getauxval on glibc. All AArch64-supporting glibc +- versions support it. */ +-#ifdef __gnu_linux__ ++/* Disable initialization of __aarch64_have_lse_atomics during bootstrap. */ ++#if !defined(inhibit_libc) && defined(HAVE_SYS_AUXV_H) ++# include + +-# define AT_HWCAP 16 +-# define HWCAP_ATOMICS (1 << 8) +- +-unsigned long int __getauxval (unsigned long int); ++/* Disable initialization if the system headers are too old. */ ++# if defined(AT_HWCAP) && defined(HWCAP_ATOMICS) + + static void __attribute__((constructor)) + init_have_lse_atomics (void) + { +- unsigned long hwcap = __getauxval (AT_HWCAP); ++ unsigned long hwcap = getauxval (AT_HWCAP); + __aarch64_have_lse_atomics = (hwcap & HWCAP_ATOMICS) != 0; + } + +-#endif /* __gnu_linux__ */ ++# endif /* HWCAP */ ++#endif /* inhibit_libc */ diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3.inc b/poky/meta/recipes-devtools/gcc/gcc-9.3.inc deleted file mode 100644 index b0411078d..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3.inc +++ /dev/null @@ -1,119 +0,0 @@ -require gcc-common.inc - -# Third digit in PV should be incremented after a minor release - -PV = "9.3.0" - -# BINV should be incremented to a revision after a minor gcc release - -BINV = "9.3.0" - -FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-9.3:${FILE_DIRNAME}/gcc-9.3/backport:" - -DEPENDS =+ "mpfr gmp libmpc zlib flex-native" -NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-native" - -LICENSE = "GPL-3.0-with-GCC-exception & GPLv3" - -LIC_FILES_CHKSUM = "\ - file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ - file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \ - file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \ - file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8 \ -" - -BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz" -#RELEASE ?= "5a5ca2d" -#BASEURI ?= "https://repo.or.cz/official-gcc.git/snapshot/${RELEASE}.tar.gz;downloadfilename=gcc-${RELEASE}.tar.gz" -SRC_URI = "\ - ${BASEURI} \ - file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \ - file://0002-gcc-poison-system-directories.patch \ - file://0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \ - file://0004-64-bit-multilib-hack.patch \ - file://0005-optional-libstdc.patch \ - file://0006-COLLECT_GCC_OPTIONS.patch \ - file://0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch \ - file://0008-fortran-cross-compile-hack.patch \ - file://0009-cpp-honor-sysroot.patch \ - file://0010-MIPS64-Default-to-N64-ABI.patch \ - file://0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch \ - file://0012-gcc-Fix-argument-list-too-long-error.patch \ - file://0013-Disable-sdt.patch \ - file://0014-libtool.patch \ - file://0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch \ - file://0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch \ - file://0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch \ - file://0018-export-CPP.patch \ - file://0019-Ensure-target-gcc-headers-can-be-included.patch \ - file://0020-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch \ - file://0021-Don-t-search-host-directory-during-relink-if-inst_pr.patch \ - file://0022-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch \ - file://0023-aarch64-Add-support-for-musl-ldso.patch \ - file://0024-libcc1-fix-libcc1-s-install-path-and-rpath.patch \ - file://0025-handle-sysroot-support-for-nativesdk-gcc.patch \ - file://0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch \ - file://0027-Fix-various-_FOR_BUILD-and-related-variables.patch \ - file://0028-nios2-Define-MUSL_DYNAMIC_LINKER.patch \ - file://0029-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \ - file://0030-ldbl128-config.patch \ - file://0031-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \ - file://0032-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \ - file://0033-sync-gcc-stddef.h-with-musl.patch \ - file://0034-fix-segmentation-fault-in-precompiled-header-generat.patch \ - file://0035-Fix-for-testsuite-failure.patch \ - file://0036-Re-introduce-spe-commandline-options.patch \ - file://0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch \ - file://0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ - file://0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch \ -" -S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}" -SRC_URI[sha256sum] = "71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1" -# For dev release snapshotting -#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/official-gcc-${RELEASE}" -#B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}" - -# Language Overrides -FORTRAN = "" -JAVA = "" - -LTO = "--enable-lto" -SSP ?= "--disable-libssp" -SSP_mingw32 = "--enable-libssp" - -EXTRA_OECONF_BASE = "\ - ${LTO} \ - ${SSP} \ - --enable-libitm \ - --disable-bootstrap \ - --disable-libmudflap \ - --with-system-zlib \ - ${@'--with-linker-hash-style=${LINKER_HASH_STYLE}' if '${LINKER_HASH_STYLE}' else ''} \ - --enable-linker-build-id \ - --with-ppl=no \ - --with-cloog=no \ - --enable-checking=release \ - --enable-cheaders=c_global \ - --without-isl \ -" - -EXTRA_OECONF_INITIAL = "\ - --disable-libmudflap \ - --disable-libgomp \ - --disable-libitm \ - --disable-libquadmath \ - --with-system-zlib \ - --disable-lto \ - --disable-plugin \ - --enable-linker-build-id \ - --enable-decimal-float=no \ - --without-isl \ - --disable-libssp \ -" - -EXTRA_OECONF_PATHS = "\ - --with-gxx-include-dir=/not/exist{target_includedir}/c++/${BINV} \ - --with-sysroot=/not/exist \ - --with-build-sysroot=${STAGING_DIR_TARGET} \ -" diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch deleted file mode 100644 index 0d9222df1..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 02b1789dbbb184726782b5038a4dd96515ec790c Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 08:37:11 +0400 -Subject: [PATCH 01/39] gcc-4.3.1: ARCH_FLAGS_FOR_TARGET - -Signed-off-by: Khem Raj - -Upstream-Status: Inappropriate [embedded specific] ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index abd93a990a9..b121088d778 100755 ---- a/configure -+++ b/configure -@@ -7603,7 +7603,7 @@ fi - # for target_alias and gcc doesn't manage it consistently. - target_configargs="--cache-file=./config.cache ${target_configargs}" - --FLAGS_FOR_TARGET= -+FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET" - case " $target_configdirs " in - *" newlib "*) - case " $target_configargs " in -diff --git a/configure.ac b/configure.ac -index 9db4fd14aa2..aad93c4d183 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -3119,7 +3119,7 @@ fi - # for target_alias and gcc doesn't manage it consistently. - target_configargs="--cache-file=./config.cache ${target_configargs}" - --FLAGS_FOR_TARGET= -+FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET" - case " $target_configdirs " in - *" newlib "*) - case " $target_configargs " in --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0002-gcc-poison-system-directories.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0002-gcc-poison-system-directories.patch deleted file mode 100644 index f427ee67c..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0002-gcc-poison-system-directories.patch +++ /dev/null @@ -1,203 +0,0 @@ -From 5368cd0293ce50a69ced6e4b25ba6c8d8e014256 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 08:59:00 +0400 -Subject: [PATCH 02/39] gcc: poison-system-directories - -Add /sw/include and /opt/include based on the original -zecke-no-host-includes.patch patch. The original patch checked for -/usr/include, /sw/include and /opt/include and then triggered a failure and -aborted. - -Instead, we add the two missing items to the current scan. If the user -wants this to be a failure, they can add "-Werror=poison-system-directories". - -Signed-off-by: Mark Hatle -Signed-off-by: Khem Raj - -Upstream-Status: Pending ---- - gcc/common.opt | 4 ++++ - gcc/config.in | 6 ++++++ - gcc/configure | 16 ++++++++++++++++ - gcc/configure.ac | 10 ++++++++++ - gcc/doc/invoke.texi | 9 +++++++++ - gcc/gcc.c | 2 ++ - gcc/incpath.c | 21 +++++++++++++++++++++ - 7 files changed, 68 insertions(+) - -diff --git a/gcc/common.opt b/gcc/common.opt -index d342c4f3749..c64fd4a6c50 100644 ---- a/gcc/common.opt -+++ b/gcc/common.opt -@@ -684,6 +684,10 @@ Wreturn-local-addr - Common Var(warn_return_local_addr) Init(1) Warning - Warn about returning a pointer/reference to a local or temporary variable. - -+Wpoison-system-directories -+Common Var(flag_poison_system_directories) Init(1) Warning -+Warn for -I and -L options using system directories if cross compiling -+ - Wshadow - Common Var(warn_shadow) Warning - Warn when one variable shadows another. Same as -Wshadow=global. -diff --git a/gcc/config.in b/gcc/config.in -index a718ceaf3da..5713342efb1 100644 ---- a/gcc/config.in -+++ b/gcc/config.in -@@ -200,6 +200,12 @@ - #endif - - -+/* Define to warn for use of native system header directories */ -+#ifndef USED_FOR_TARGET -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+#endif -+ -+ - /* Define if you want all operations on RTL (the basic data structure of the - optimizer and back end) to be checked for dynamic type safety at runtime. - This is quite expensive. */ -diff --git a/gcc/configure b/gcc/configure -index a065ba23728..2e26dd33310 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -996,6 +996,7 @@ with_system_zlib - enable_maintainer_mode - enable_link_mutex - enable_version_specific_runtime_libs -+enable_poison_system_directories - enable_plugin - enable_host_shared - enable_libquadmath_support -@@ -1749,6 +1750,8 @@ Optional Features: - --enable-version-specific-runtime-libs - specify that runtime libraries should be installed - in a compiler-specific directory -+ --enable-poison-system-directories -+ warn for use of native system header directories - --enable-plugin enable plugin support - --enable-host-shared build host code as shared libraries - --disable-libquadmath-support -@@ -29753,6 +29756,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then : - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi -+ - # Substitute configuration variables - - -diff --git a/gcc/configure.ac b/gcc/configure.ac -index 3a7251102ef..12d1d04e645 100644 ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -6380,6 +6380,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs, - [specify that runtime libraries should be - installed in a compiler-specific directory])]) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system header directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system header directories]) -+fi -+ - # Substitute configuration variables - AC_SUBST(subdirs) - AC_SUBST(srcdir) -diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi -index 0ab6c9c6449..c3d3d51a28f 100644 ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -333,6 +333,7 @@ Objective-C and Objective-C++ Dialects}. - -Wpacked -Wpacked-bitfield-compat -Wpacked-not-aligned -Wpadded @gol - -Wparentheses -Wno-pedantic-ms-format @gol - -Wplacement-new -Wplacement-new=@var{n} @gol -+-Wno-poison-system-directories @gol - -Wpointer-arith -Wpointer-compare -Wno-pointer-to-int-cast @gol - -Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol - -Wrestrict -Wno-return-local-addr @gol -@@ -6290,6 +6291,14 @@ made up of data only and thus requires no special treatment. But, for - most targets, it is made up of code and thus requires the stack to be - made executable in order for the program to work properly. - -+@item -Wno-poison-system-directories -+@opindex Wno-poison-system-directories -+Do not warn for @option{-I} or @option{-L} options using system -+directories such as @file{/usr/include} when cross compiling. This -+option is intended for use in chroot environments when such -+directories contain the correct headers and libraries for the target -+system rather than the host. -+ - @item -Wfloat-equal - @opindex Wfloat-equal - @opindex Wno-float-equal -diff --git a/gcc/gcc.c b/gcc/gcc.c -index 4f57765b012..a2601a6bb06 100644 ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -1042,6 +1042,8 @@ proper position among the other output files. */ - "%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \ - "%X %{o*} %{e*} %{N} %{n} %{r}\ - %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \ -+ %{Wno-poison-system-directories:--no-poison-system-directories} \ -+ %{Werror=poison-system-directories:--error-poison-system-directories} \ - %{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \ - VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \ - %{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\ -diff --git a/gcc/incpath.c b/gcc/incpath.c -index bcbe2082905..5752298bbf2 100644 ---- a/gcc/incpath.c -+++ b/gcc/incpath.c -@@ -26,6 +26,7 @@ - #include "intl.h" - #include "incpath.h" - #include "cppdefault.h" -+#include "diagnostic-core.h" - - /* Microsoft Windows does not natively support inodes. - VMS has non-numeric inodes. */ -@@ -393,6 +394,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose) - } - fprintf (stderr, _("End of search list.\n")); - } -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (flag_poison_system_directories) -+ { -+ struct cpp_dir *p; -+ -+ for (p = heads[INC_QUOTE]; p; p = p->next) -+ { -+ if ((!strncmp (p->name, "/usr/include", 12)) -+ || (!strncmp (p->name, "/usr/local/include", 18)) -+ || (!strncmp (p->name, "/usr/X11R6/include", 18)) -+ || (!strncmp (p->name, "/sw/include", 11)) -+ || (!strncmp (p->name, "/opt/include", 12))) -+ warning (OPT_Wpoison_system_directories, -+ "include location \"%s\" is unsafe for " -+ "cross-compilation", -+ p->name); -+ } -+ } -+#endif - } - - /* Use given -I paths for #include "..." but not #include <...>, and --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch deleted file mode 100644 index 23ec5bce0..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch +++ /dev/null @@ -1,73 +0,0 @@ -From df90dbdba7a85c20bad95de71525f0f400a849d2 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:08:31 +0400 -Subject: [PATCH 03/39] gcc-4.3.3: SYSROOT_CFLAGS_FOR_TARGET - -Before committing, I noticed that PR/32161 was marked as a dup of PR/32009, but my previous patch did not fix it. - -This alternative patch is better because it lets you just use CFLAGS_FOR_TARGET to set the compilation flags for libgcc. Since bootstrapped target libraries are never compiled with the native compiler, it makes little sense to use different flags for stage1 and later stages. And it also makes little sense to use a different variable than CFLAGS_FOR_TARGET. - -Other changes I had to do include: - -- moving the creation of default CFLAGS_FOR_TARGET from Makefile.am to configure.ac, because otherwise the BOOT_CFLAGS are substituted into CFLAGS_FOR_TARGET (which is "-O2 -g $(CFLAGS)") via $(CFLAGS). It is also cleaner this way though. - -- passing the right CFLAGS to configure scripts as exported environment variables - -I also stopped passing LIBCFLAGS to configure scripts since they are unused in the whole src tree. And I updated the documentation as H-P reminded me to do. - -Bootstrapped/regtested i686-pc-linux-gnu, will commit to 4.4 shortly. Ok for 4.3? - -Signed-off-by: Paolo Bonzini -Signed-off-by: Khem Raj - -Upstream-Status: Pending ---- - configure | 32 ++++++++++++++++++++++++++++++++ - 1 file changed, 32 insertions(+) - -diff --git a/configure b/configure -index b121088d778..93aae5bb26f 100755 ---- a/configure -+++ b/configure -@@ -6864,6 +6864,38 @@ fi - - - -+# During gcc bootstrap, if we use some random cc for stage1 then CFLAGS -+# might be empty or "-g". We don't require a C++ compiler, so CXXFLAGS -+# might also be empty (or "-g", if a non-GCC C++ compiler is in the path). -+# We want to ensure that TARGET libraries (which we know are built with -+# gcc) are built with "-O2 -g", so include those options when setting -+# CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET. -+if test "x$CFLAGS_FOR_TARGET" = x; then -+ CFLAGS_FOR_TARGET=$CFLAGS -+ case " $CFLAGS " in -+ *" -O2 "*) ;; -+ *) CFLAGS_FOR_TARGET="-O2 $CFLAGS" ;; -+ esac -+ case " $CFLAGS " in -+ *" -g "* | *" -g3 "*) ;; -+ *) CFLAGS_FOR_TARGET="-g $CFLAGS" ;; -+ esac -+fi -+ -+ -+if test "x$CXXFLAGS_FOR_TARGET" = x; then -+ CXXFLAGS_FOR_TARGET=$CXXFLAGS -+ case " $CXXFLAGS " in -+ *" -O2 "*) ;; -+ *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS" ;; -+ esac -+ case " $CXXFLAGS " in -+ *" -g "* | *" -g3 "*) ;; -+ *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS" ;; -+ esac -+fi -+ -+ - # Handle --with-headers=XXX. If the value is not "yes", the contents of - # the named directory are copied to $(tooldir)/sys-include. - if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0004-64-bit-multilib-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0004-64-bit-multilib-hack.patch deleted file mode 100644 index 17ec8986c..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0004-64-bit-multilib-hack.patch +++ /dev/null @@ -1,119 +0,0 @@ -From 2e00d0a9a809153f693659e977c1e0550665e65c Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:10:06 +0400 -Subject: [PATCH 04/39] 64-bit multilib hack. - -GCC has internal multilib handling code but it assumes a very specific rigid directory -layout. The build system implementation of multilib layout is very generic and allows -complete customisation of the library directories. - -This patch is a partial solution to allow any custom directories to be passed into gcc -and handled correctly. It forces gcc to use the base_libdir (which is the current -directory, "."). We need to do this for each multilib that is configured as we don't -know which compiler options may be being passed into the compiler. Since we have a compiler -per mulitlib at this point that isn't an issue. - -The one problem is the target compiler is only going to work for the default multlilib at -this point. Ideally we'd figure out which multilibs were being enabled with which paths -and be able to patch these entries with a complete set of correct paths but this we -don't have such code at this point. This is something the target gcc recipe should do -and override these platform defaults in its build config. - -Do same for riscv64 and aarch64 - -RP 15/8/11 - -Upstream-Status: Inappropriate[OE-Specific] - -Signed-off-by: Khem Raj -Signed-off-by: Elvis Dowson -Signed-off-by: Mark Hatle ---- - gcc/config/aarch64/t-aarch64-linux | 8 ++++---- - gcc/config/i386/t-linux64 | 6 ++---- - gcc/config/mips/t-linux64 | 10 +++------- - gcc/config/riscv/t-linux | 6 ++++-- - gcc/config/rs6000/t-linux64 | 5 ++--- - 5 files changed, 15 insertions(+), 20 deletions(-) - -diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux -index 5ad670ba2ce..e26019e7157 100644 ---- a/gcc/config/aarch64/t-aarch64-linux -+++ b/gcc/config/aarch64/t-aarch64-linux -@@ -21,8 +21,8 @@ - LIB1ASMSRC = aarch64/lib1funcs.asm - LIB1ASMFUNCS = _aarch64_sync_cache_range - --AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be) --MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu) --MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu) -+#AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be) -+#MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu) -+#MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu) - --MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32) -+#MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32) -diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64 -index c686ab2f0d2..c82b60dadcd 100644 ---- a/gcc/config/i386/t-linux64 -+++ b/gcc/config/i386/t-linux64 -@@ -32,7 +32,5 @@ - # - comma=, - MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) --MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) --MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu) --MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu) --MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32) -+MULTILIB_DIRNAMES = . . -+MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) -diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64 -index 3a2ff700d7d..13ef19576b5 100644 ---- a/gcc/config/mips/t-linux64 -+++ b/gcc/config/mips/t-linux64 -@@ -17,10 +17,6 @@ - # . - - MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64 --MULTILIB_DIRNAMES = n32 32 64 --MIPS_EL = $(if $(filter %el, $(firstword $(subst -, ,$(target)))),el) --MIPS_SOFT = $(if $(strip $(filter MASK_SOFT_FLOAT_ABI, $(target_cpu_default)) $(filter soft, $(with_float))),soft) --MULTILIB_OSDIRNAMES = \ -- ../lib32$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \ -- ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \ -- ../lib64$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT)) -+MULTILIB_DIRNAMES = . . . -+MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) -+ -diff --git a/gcc/config/riscv/t-linux b/gcc/config/riscv/t-linux -index 216d2776a18..e4d817621fc 100644 ---- a/gcc/config/riscv/t-linux -+++ b/gcc/config/riscv/t-linux -@@ -1,3 +1,5 @@ - # Only XLEN and ABI affect Linux multilib dir names, e.g. /lib32/ilp32d/ --MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES))) --MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES)) -+#MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES))) -+MULTILIB_DIRNAMES := . . -+#MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES)) -+MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) -diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64 -index f3c6e2be1d9..bd0393155fa 100644 ---- a/gcc/config/rs6000/t-linux64 -+++ b/gcc/config/rs6000/t-linux64 -@@ -26,10 +26,9 @@ - # MULTILIB_OSDIRNAMES according to what is found on the target. - - MULTILIB_OPTIONS := m64/m32 --MULTILIB_DIRNAMES := 64 32 -+MULTILIB_DIRNAMES := . . - MULTILIB_EXTRA_OPTS := --MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu) --MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu) -+MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) - - rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c - $(COMPILE) $< --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0005-optional-libstdc.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0005-optional-libstdc.patch deleted file mode 100644 index 3c28aeac6..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0005-optional-libstdc.patch +++ /dev/null @@ -1,125 +0,0 @@ -From 435e45592e944018f33bff32f1202b0872a23141 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:12:56 +0400 -Subject: [PATCH 05/39] optional libstdc - -gcc-runtime builds libstdc++ separately from gcc-cross-*. Its configure tests using g++ -will not run correctly since by default the linker will try to link against libstdc++ -which shouldn't exist yet. We need an option to disable -lstdc++ -option whilst leaving -lc, -lgcc and other automatic library dependencies added by gcc -driver. This patch adds such an option which only disables the -lstdc++. - -A "standard" gcc build uses xgcc and hence avoids this. We should ask upstream how to -do this officially, the likely answer is don't build libstdc++ separately. - -RP 29/6/10 - -Signed-off-by: Khem Raj - -Upstream-Status: Inappropriate [embedded specific] ---- - gcc/c-family/c.opt | 4 ++++ - gcc/cp/g++spec.c | 1 + - gcc/doc/invoke.texi | 32 +++++++++++++++++++++++++++++++- - gcc/gcc.c | 1 + - 4 files changed, 37 insertions(+), 1 deletion(-) - -diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt -index 916cc67b453..41619fa591c 100644 ---- a/gcc/c-family/c.opt -+++ b/gcc/c-family/c.opt -@@ -1952,6 +1952,10 @@ nostdinc++ - C++ ObjC++ - Do not search standard system include directories for C++. - -+nostdlib++ -+Driver -+Do not link standard C++ runtime library -+ - o - C ObjC C++ ObjC++ Joined Separate - ; Documented in common.opt -diff --git a/gcc/cp/g++spec.c b/gcc/cp/g++spec.c -index 6c4574a837d..0e2657f00ee 100644 ---- a/gcc/cp/g++spec.c -+++ b/gcc/cp/g++spec.c -@@ -137,6 +137,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options, - switch (decoded_options[i].opt_index) - { - case OPT_nostdlib: -+ case OPT_nostdlib__: - case OPT_nodefaultlibs: - library = -1; - break; -diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi -index c3d3d51a28f..2f7ffe456c3 100644 ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -228,6 +228,9 @@ in the following sections. - -fno-weak -nostdinc++ @gol - -fvisibility-inlines-hidden @gol - -fvisibility-ms-compat @gol -+-fvtable-verify=@r{[}std@r{|}preinit@r{|}none@r{]} @gol -+-fvtv-counts -fvtv-debug @gol -+-nostdlib++ @gol - -fext-numeric-literals @gol - -Wabi=@var{n} -Wabi-tag -Wconversion-null -Wctor-dtor-privacy @gol - -Wdelete-non-virtual-dtor -Wdeprecated-copy -Wdeprecated-copy-dtor @gol -@@ -539,7 +542,7 @@ Objective-C and Objective-C++ Dialects}. - -pie -pthread -r -rdynamic @gol - -s -static -static-pie -static-libgcc -static-libstdc++ @gol - -static-libasan -static-libtsan -static-liblsan -static-libubsan @gol ---shared -shared-libgcc -symbolic @gol -+-shared -shared-libgcc -symbolic -nostdlib++ @gol - -T @var{script} -Wl,@var{option} -Xlinker @var{option} @gol - -u @var{symbol} -z @var{keyword}} - -@@ -13321,6 +13324,33 @@ Specify that the program entry point is @var{entry}. The argument is - interpreted by the linker; the GNU linker accepts either a symbol name - or an address. - -+@item -nostdlib++ -+@opindex nostdlib++ -+Do not use the standard system C++ runtime libraries when linking. -+Only the libraries you specify will be passed to the linker. -+ -+@cindex @option{-lgcc}, use with @option{-nostdlib} -+@cindex @option{-nostdlib} and unresolved references -+@cindex unresolved references and @option{-nostdlib} -+@cindex @option{-lgcc}, use with @option{-nodefaultlibs} -+@cindex @option{-nodefaultlibs} and unresolved references -+@cindex unresolved references and @option{-nodefaultlibs} -+One of the standard libraries bypassed by @option{-nostdlib} and -+@option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines -+which GCC uses to overcome shortcomings of particular machines, or special -+needs for some languages. -+(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler -+Collection (GCC) Internals}, -+for more discussion of @file{libgcc.a}.) -+In most cases, you need @file{libgcc.a} even when you want to avoid -+other standard libraries. In other words, when you specify @option{-nostdlib} -+or @option{-nodefaultlibs} you should usually specify @option{-lgcc} as well. -+This ensures that you have no unresolved references to internal GCC -+library subroutines. -+(An example of such an internal subroutine is @code{__main}, used to ensure C++ -+constructors are called; @pxref{Collect2,,@code{collect2}, gccint, -+GNU Compiler Collection (GCC) Internals}.) -+ - @item -pie - @opindex pie - Produce a dynamically linked position independent executable on targets -diff --git a/gcc/gcc.c b/gcc/gcc.c -index a2601a6bb06..cd6c6fc95db 100644 ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -1052,6 +1052,7 @@ proper position among the other output files. */ - %(mflib) " STACK_SPLIT_SPEC "\ - %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} " SANITIZER_SPEC " \ - %{!nostdlib:%{!r:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}}}\ -+ %{!nostdlib++:}\ - %{!nostdlib:%{!r:%{!nostartfiles:%E}}} %{T*} \n%(post_link) }}}}}}" - #endif - --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0006-COLLECT_GCC_OPTIONS.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0006-COLLECT_GCC_OPTIONS.patch deleted file mode 100644 index 906f3a731..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0006-COLLECT_GCC_OPTIONS.patch +++ /dev/null @@ -1,38 +0,0 @@ -From c99684477ec66f290ec74efe732acd3c24db7dcc Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:16:28 +0400 -Subject: [PATCH 06/39] COLLECT_GCC_OPTIONS - -This patch adds --sysroot into COLLECT_GCC_OPTIONS which is used to -invoke collect2. - -Signed-off-by: Khem Raj - -Upstream-Status: Pending ---- - gcc/gcc.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/gcc/gcc.c b/gcc/gcc.c -index cd6c6fc95db..7da9c5d457b 100644 ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -4804,6 +4804,15 @@ set_collect_gcc_options (void) - sizeof ("COLLECT_GCC_OPTIONS=") - 1); - - first_time = TRUE; -+#ifdef HAVE_LD_SYSROOT -+ if (target_system_root_changed && target_system_root) -+ { -+ obstack_grow (&collect_obstack, "'--sysroot=", sizeof("'--sysroot=")-1); -+ obstack_grow (&collect_obstack, target_system_root,strlen(target_system_root)); -+ obstack_grow (&collect_obstack, "'", 1); -+ first_time = FALSE; -+ } -+#endif - for (i = 0; (int) i < n_switches; i++) - { - const char *const *args; --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch deleted file mode 100644 index 68a876cb9..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch +++ /dev/null @@ -1,96 +0,0 @@ -From d6f4edaab0ad0e742fb1e3a6f76908a2ac9927d5 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:17:25 +0400 -Subject: [PATCH 07/39] Use the defaults.h in ${B} instead of ${S}, and t-oe in - ${B} - -Use the defaults.h in ${B} instead of ${S}, and t-oe in ${B}, so that -the source can be shared between gcc-cross-initial, -gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build. - -Signed-off-by: Khem Raj - -Upstream-Status: Pending - -While compiling gcc-crosssdk-initial-x86_64 on some host, there is -occasionally failure that test the existance of default.h doesn't -work, the reason is tm_include_list='** defaults.h' rather than -tm_include_list='** ./defaults.h' - -So we add the test condition for this situation. -Signed-off-by: Hongxu Jia ---- - gcc/Makefile.in | 2 +- - gcc/configure | 4 ++-- - gcc/configure.ac | 4 ++-- - gcc/mkconfig.sh | 4 ++-- - 4 files changed, 7 insertions(+), 7 deletions(-) - -diff --git a/gcc/Makefile.in b/gcc/Makefile.in -index abae872cd63..fef6c4c61e3 100644 ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -540,7 +540,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@ - TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@ - - xmake_file=@xmake_file@ --tmake_file=@tmake_file@ -+tmake_file=@tmake_file@ ./t-oe - TM_ENDIAN_CONFIG=@TM_ENDIAN_CONFIG@ - TM_MULTILIB_CONFIG=@TM_MULTILIB_CONFIG@ - TM_MULTILIB_EXCEPTIONS_CONFIG=@TM_MULTILIB_EXCEPTIONS_CONFIG@ -diff --git a/gcc/configure b/gcc/configure -index 2e26dd33310..ed7931daed3 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -12342,8 +12342,8 @@ for f in $tm_file; do - tm_include_list="${tm_include_list} $f" - ;; - defaults.h ) -- tm_file_list="${tm_file_list} \$(srcdir)/$f" -- tm_include_list="${tm_include_list} $f" -+ tm_file_list="${tm_file_list} ./$f" -+ tm_include_list="${tm_include_list} ./$f" - ;; - * ) - tm_file_list="${tm_file_list} \$(srcdir)/config/$f" -diff --git a/gcc/configure.ac b/gcc/configure.ac -index 12d1d04e645..e0500e30d50 100644 ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -1968,8 +1968,8 @@ for f in $tm_file; do - tm_include_list="${tm_include_list} $f" - ;; - defaults.h ) -- tm_file_list="${tm_file_list} \$(srcdir)/$f" -- tm_include_list="${tm_include_list} $f" -+ tm_file_list="${tm_file_list} ./$f" -+ tm_include_list="${tm_include_list} ./$f" - ;; - * ) - tm_file_list="${tm_file_list} \$(srcdir)/config/$f" -diff --git a/gcc/mkconfig.sh b/gcc/mkconfig.sh -index 308b87d0cc1..19068cbc24a 100644 ---- a/gcc/mkconfig.sh -+++ b/gcc/mkconfig.sh -@@ -77,7 +77,7 @@ if [ -n "$HEADERS" ]; then - if [ $# -ge 1 ]; then - echo '#ifdef IN_GCC' >> ${output}T - for file in "$@"; do -- if test x"$file" = x"defaults.h"; then -+ if test x"$file" = x"./defaults.h" -o x"$file" = x"defaults.h"; then - postpone_defaults_h="yes" - else - echo "# include \"$file\"" >> ${output}T -@@ -106,7 +106,7 @@ esac - - # If we postponed including defaults.h, add the #include now. - if test x"$postpone_defaults_h" = x"yes"; then -- echo "# include \"defaults.h\"" >> ${output}T -+ echo "# include \"./defaults.h\"" >> ${output}T - fi - - # Add multiple inclusion protection guard, part two. --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0008-fortran-cross-compile-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0008-fortran-cross-compile-hack.patch deleted file mode 100644 index 6acd2b0cf..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0008-fortran-cross-compile-hack.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 2c514ada36ffbf70177909f633e9f68811de61e0 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:20:01 +0400 -Subject: [PATCH 08/39] fortran cross-compile hack. - -* Fortran would have searched for arm-angstrom-gnueabi-gfortran but would have used -used gfortan. For gcc_4.2.2.bb we want to use the gfortran compiler from our cross -directory. - -Signed-off-by: Khem Raj - -Upstream-Status: Inappropriate [embedded specific] ---- - libgfortran/configure | 2 +- - libgfortran/configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libgfortran/configure b/libgfortran/configure -index 60867b93d0e..3fc9fca5b7b 100755 ---- a/libgfortran/configure -+++ b/libgfortran/configure -@@ -13071,7 +13071,7 @@ esac - - # We need gfortran to compile parts of the library - #AC_PROG_FC(gfortran) --FC="$GFORTRAN" -+#FC="$GFORTRAN" - ac_ext=${ac_fc_srcext-f} - ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' - ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac -index 7cfce28ab69..6cd515ee1a4 100644 ---- a/libgfortran/configure.ac -+++ b/libgfortran/configure.ac -@@ -250,7 +250,7 @@ AC_SUBST(enable_static) - - # We need gfortran to compile parts of the library - #AC_PROG_FC(gfortran) --FC="$GFORTRAN" -+#FC="$GFORTRAN" - AC_PROG_FC(gfortran) - - # extra LD Flags which are required for targets --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0009-cpp-honor-sysroot.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0009-cpp-honor-sysroot.patch deleted file mode 100644 index 5a9e52760..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0009-cpp-honor-sysroot.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 0a7c03a9cf925ba09a510a32e684f01ec5a50650 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:22:00 +0400 -Subject: [PATCH 09/39] cpp: honor sysroot. - -Currently, if the gcc toolchain is relocated and installed from sstate, then you try and compile -preprocessed source (.i or .ii files), the compiler will try and access the builtin sysroot location -rather than the --sysroot option specified on the commandline. If access to that directory is -permission denied (unreadable), gcc will error. - -This happens when ccache is in use due to the fact it uses preprocessed source files. - -The fix below adds %I to the cpp-output spec macro so the default substitutions for -iprefix, --isystem, -isysroot happen and the correct sysroot is used. - -[YOCTO #2074] - -RP 2012/04/13 - -Signed-off-by: Khem Raj - -Upstream-Status: Pending ---- - gcc/cp/lang-specs.h | 2 +- - gcc/gcc.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/gcc/cp/lang-specs.h b/gcc/cp/lang-specs.h -index c6e42eda283..e1ddf066467 100644 ---- a/gcc/cp/lang-specs.h -+++ b/gcc/cp/lang-specs.h -@@ -66,5 +66,5 @@ along with GCC; see the file COPYING3. If not see - {".ii", "@c++-cpp-output", 0, 0, 0}, - {"@c++-cpp-output", - "%{!E:%{!M:%{!MM:" -- " cc1plus -fpreprocessed %i %(cc1_options) %2" -+ " cc1plus -fpreprocessed %i %I %(cc1_options) %2" - " %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, -diff --git a/gcc/gcc.c b/gcc/gcc.c -index 7da9c5d457b..4e7c45b268c 100644 ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -1349,7 +1349,7 @@ static const struct compiler default_compilers[] = - %W{o*:--output-pch=%*}}%V}}}}}}}", 0, 0, 0}, - {".i", "@cpp-output", 0, 0, 0}, - {"@cpp-output", -- "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, -+ "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %I %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, - {".s", "@assembler", 0, 0, 0}, - {"@assembler", - "%{!M:%{!MM:%{!E:%{!S:as %(asm_debug) %(asm_options) %i %A }}}}", 0, 0, 0}, --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0010-MIPS64-Default-to-N64-ABI.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0010-MIPS64-Default-to-N64-ABI.patch deleted file mode 100644 index a8103b951..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0010-MIPS64-Default-to-N64-ABI.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 374aab6a88200fbd7343467d97f7ee6455bbce61 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:23:08 +0400 -Subject: [PATCH 10/39] MIPS64: Default to N64 ABI - -MIPS64 defaults to n32 ABI, this patch makes it -so that it defaults to N64 ABI - -Signed-off-by: Khem Raj - -Upstream-Status: Inappropriate [OE config specific] ---- - gcc/config.gcc | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/gcc/config.gcc b/gcc/config.gcc -index b2282ecdf0b..69c0e4a005b 100644 ---- a/gcc/config.gcc -+++ b/gcc/config.gcc -@@ -2282,29 +2282,29 @@ mips*-*-linux*) # Linux MIPS, either endian. - default_mips_arch=mips32 - ;; - mips64el-st-linux-gnu) -- default_mips_abi=n32 -+ default_mips_abi=64 - tm_file="${tm_file} mips/st.h" - tmake_file="${tmake_file} mips/t-st" - enable_mips_multilibs="yes" - ;; - mips64octeon*-*-linux*) -- default_mips_abi=n32 -+ default_mips_abi=64 - tm_defines="${tm_defines} MIPS_CPU_STRING_DEFAULT=\\\"octeon\\\"" - target_cpu_default=MASK_SOFT_FLOAT_ABI - enable_mips_multilibs="yes" - ;; - mipsisa64r6*-*-linux*) -- default_mips_abi=n32 -+ default_mips_abi=64 - default_mips_arch=mips64r6 - enable_mips_multilibs="yes" - ;; - mipsisa64r2*-*-linux*) -- default_mips_abi=n32 -+ default_mips_abi=64 - default_mips_arch=mips64r2 - enable_mips_multilibs="yes" - ;; - mips64*-*-linux* | mipsisa64*-*-linux*) -- default_mips_abi=n32 -+ default_mips_abi=64 - enable_mips_multilibs="yes" - ;; - esac --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch deleted file mode 100644 index d9d563d0f..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch +++ /dev/null @@ -1,246 +0,0 @@ -From dcd7891d6aea5327969132fea6ca4c199f14e985 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:24:50 +0400 -Subject: [PATCH 11/39] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER - relative to SYSTEMLIBS_DIR - -This patch defines GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER -relative to SYSTEMLIBS_DIR which can be set in generated headers -This breaks the assumption of hardcoded multilib in gcc -Change is only for the supported architectures in OE including -SH, sparc, alpha for possible future support (if any) - -Removes the do_headerfix task in metadata - -Signed-off-by: Khem Raj - -Upstream-Status: Inappropriate [OE configuration] ---- - gcc/config/alpha/linux-elf.h | 4 ++-- - gcc/config/arm/linux-eabi.h | 4 ++-- - gcc/config/arm/linux-elf.h | 2 +- - gcc/config/i386/linux.h | 2 +- - gcc/config/i386/linux64.h | 6 +++--- - gcc/config/linux.h | 8 ++++---- - gcc/config/mips/linux.h | 12 ++++++------ - gcc/config/riscv/linux.h | 2 +- - gcc/config/rs6000/linux64.h | 15 +++++---------- - gcc/config/sh/linux.h | 2 +- - gcc/config/sparc/linux.h | 2 +- - gcc/config/sparc/linux64.h | 4 ++-- - 12 files changed, 29 insertions(+), 34 deletions(-) - -diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h -index 824861befec..6afacce3292 100644 ---- a/gcc/config/alpha/linux-elf.h -+++ b/gcc/config/alpha/linux-elf.h -@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see - #define EXTRA_SPECS \ - { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" --#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" -+#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0" - #if DEFAULT_LIBC == LIBC_UCLIBC - #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" - #elif DEFAULT_LIBC == LIBC_GLIBC -diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h -index 66ec0ea3980..e4ade2e2ab0 100644 ---- a/gcc/config/arm/linux-eabi.h -+++ b/gcc/config/arm/linux-eabi.h -@@ -65,8 +65,8 @@ - GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */ - - #undef GLIBC_DYNAMIC_LINKER --#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3" --#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3" -+#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT SYSTEMLIBS_DIR "ld-linux.so.3" -+#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT SYSTEMLIBS_DIR "ld-linux-armhf.so.3" - #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT - - #define GLIBC_DYNAMIC_LINKER \ -diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h -index 9a360defd21..98f6e960b64 100644 ---- a/gcc/config/arm/linux-elf.h -+++ b/gcc/config/arm/linux-elf.h -@@ -60,7 +60,7 @@ - - #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" - - #define LINUX_TARGET_LINK_SPEC "%{h*} \ - %{static:-Bstatic} \ -diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h -index 9a6e2d99896..31efbb73016 100644 ---- a/gcc/config/i386/linux.h -+++ b/gcc/config/i386/linux.h -@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see - . */ - - #define GNU_USER_LINK_EMULATION "elf_i386" --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" - - #undef MUSL_DYNAMIC_LINKER - #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1" -diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h -index c08221c4210..dbb474d792b 100644 ---- a/gcc/config/i386/linux64.h -+++ b/gcc/config/i386/linux64.h -@@ -27,9 +27,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - #define GNU_USER_LINK_EMULATION64 "elf_x86_64" - #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" - --#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" --#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" --#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" -+#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2" -+#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2" - - #undef MUSL_DYNAMIC_LINKER32 - #define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1" -diff --git a/gcc/config/linux.h b/gcc/config/linux.h -index c3c4a219e67..4b05d8e93d1 100644 ---- a/gcc/config/linux.h -+++ b/gcc/config/linux.h -@@ -94,10 +94,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - GLIBC_DYNAMIC_LINKER must be defined for each target using them, or - GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets - supporting both 32-bit and 64-bit compilation. */ --#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" --#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" --#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" --#define UCLIBC_DYNAMIC_LINKERX32 "/lib/ldx32-uClibc.so.0" -+#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0" -+#define UCLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-uClibc.so.0" -+#define UCLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64-uClibc.so.0" -+#define UCLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ldx32-uClibc.so.0" - #define BIONIC_DYNAMIC_LINKER "/system/bin/linker" - #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker" - #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" -diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h -index 6f79ac9c01a..25de96f9561 100644 ---- a/gcc/config/mips/linux.h -+++ b/gcc/config/mips/linux.h -@@ -22,20 +22,20 @@ along with GCC; see the file COPYING3. If not see - #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" - - #define GLIBC_DYNAMIC_LINKER32 \ -- "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}" -+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}" - #define GLIBC_DYNAMIC_LINKER64 \ -- "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}" -+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}" - #define GLIBC_DYNAMIC_LINKERN32 \ -- "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}" -+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}" - - #undef UCLIBC_DYNAMIC_LINKER32 - #define UCLIBC_DYNAMIC_LINKER32 \ -- "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}" -+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}" - #undef UCLIBC_DYNAMIC_LINKER64 - #define UCLIBC_DYNAMIC_LINKER64 \ -- "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}" -+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld64-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld64-uClibc.so.0}" - #define UCLIBC_DYNAMIC_LINKERN32 \ -- "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" -+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}" - - #undef MUSL_DYNAMIC_LINKER32 - #define MUSL_DYNAMIC_LINKER32 \ -diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h -index 58dd18b89f3..112ba9cd764 100644 ---- a/gcc/config/riscv/linux.h -+++ b/gcc/config/riscv/linux.h -@@ -22,7 +22,7 @@ along with GCC; see the file COPYING3. If not see - GNU_USER_TARGET_OS_CPP_BUILTINS(); \ - } while (0) - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1" -+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1" - - #define MUSL_ABI_SUFFIX \ - "%{mabi=ilp32:-sf}" \ -diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h -index 9946d3fed94..45a9a7cae59 100644 ---- a/gcc/config/rs6000/linux64.h -+++ b/gcc/config/rs6000/linux64.h -@@ -423,24 +423,19 @@ extern int dot_symbols; - #undef LINK_OS_DEFAULT_SPEC - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" - --#define GLIBC_DYNAMIC_LINKER32 "%(dynamic_linker_prefix)/lib/ld.so.1" -- -+#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1" - #ifdef LINUX64_DEFAULT_ABI_ELFv2 --#define GLIBC_DYNAMIC_LINKER64 \ --"%{mabi=elfv1:%(dynamic_linker_prefix)/lib64/ld64.so.1;" \ --":%(dynamic_linker_prefix)/lib64/ld64.so.2}" -+#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:" SYSTEMLIBS_DIR "ld64.so.1;:" SYSTEMLIBS_DIR "ld64.so.2}" - #else --#define GLIBC_DYNAMIC_LINKER64 \ --"%{mabi=elfv2:%(dynamic_linker_prefix)/lib64/ld64.so.2;" \ --":%(dynamic_linker_prefix)/lib64/ld64.so.1}" -+#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:" SYSTEMLIBS_DIR "ld64.so.2;:" SYSTEMLIBS_DIR "ld64.so.1}" - #endif - - #undef MUSL_DYNAMIC_LINKER32 - #define MUSL_DYNAMIC_LINKER32 \ -- "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" -+ SYSTEMLIBS_DIR "ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" - #undef MUSL_DYNAMIC_LINKER64 - #define MUSL_DYNAMIC_LINKER64 \ -- "/lib/ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" -+ SYSTEMLIBS_DIR "ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" - - #undef DEFAULT_ASM_ENDIAN - #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN) -diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h -index c9897b7aca5..82f275319cc 100644 ---- a/gcc/config/sh/linux.h -+++ b/gcc/config/sh/linux.h -@@ -64,7 +64,7 @@ along with GCC; see the file COPYING3. If not see - "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \ - "%{mfdpic:-fdpic}.so.1" - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" - - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}" -diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h -index 08476f1d94d..80440e712ad 100644 ---- a/gcc/config/sparc/linux.h -+++ b/gcc/config/sparc/linux.h -@@ -84,7 +84,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); - When the -shared link option is used a final link is not being - done. */ - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" - - #undef LINK_SPEC - #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \ -diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h -index 789d1df4bd5..b920c680fb1 100644 ---- a/gcc/config/sparc/linux64.h -+++ b/gcc/config/sparc/linux64.h -@@ -84,8 +84,8 @@ along with GCC; see the file COPYING3. If not see - When the -shared link option is used a final link is not being - done. */ - --#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" --#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux.so.2" - - #ifdef SPARC_BI_ARCH - --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0012-gcc-Fix-argument-list-too-long-error.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0012-gcc-Fix-argument-list-too-long-error.patch deleted file mode 100644 index 9d9887809..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0012-gcc-Fix-argument-list-too-long-error.patch +++ /dev/null @@ -1,40 +0,0 @@ -From faa0f712a67005ef0260f95eebe7c7c57a6f8360 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:26:37 +0400 -Subject: [PATCH 12/39] gcc: Fix argument list too long error. - -There would be an "Argument list too long" error when the -build directory is longer than 200, this is caused by: - -headers=`echo $(PLUGIN_HEADERS) | tr ' ' '\012' | sort -u` - -The PLUGIN_HEADERS is too long before sort, so the "echo" can't handle -it, use the $(sort list) of GNU make which can handle the too long list -would fix the problem, the header would be short enough after sorted. -The "tr ' ' '\012'" was used for translating the space to "\n", the -$(sort list) doesn't need this. - -Signed-off-by: Robert Yang -Signed-off-by: Khem Raj - -Upstream-Status: Pending ---- - gcc/Makefile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gcc/Makefile.in b/gcc/Makefile.in -index fef6c4c61e3..57cf7804f0a 100644 ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -3538,7 +3538,7 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype - # We keep the directory structure for files in config or c-family and .def - # files. All other files are flattened to a single directory. - $(mkinstalldirs) $(DESTDIR)$(plugin_includedir) -- headers=`echo $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \ -+ headers="$(sort $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def))"; \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`; \ - for file in $$headers; do \ - if [ -f $$file ] ; then \ --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0013-Disable-sdt.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0013-Disable-sdt.patch deleted file mode 100644 index 455858354..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0013-Disable-sdt.patch +++ /dev/null @@ -1,113 +0,0 @@ -From 4df5a747265983092afd6fbc5329dd808cc1da3c Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:28:10 +0400 -Subject: [PATCH 13/39] Disable sdt. - -We don't list dtrace in DEPENDS so we shouldn't be depending on this header. -It may or may not exist from preivous builds though. To be determinstic, disable -sdt.h usage always. This avoids build failures if the header is removed after configure -but before libgcc is compiled for example. - -RP 2012/8/7 - -Signed-off-by: Khem Raj - -Disable sdt for libstdc++-v3. - -Signed-off-by: Robert Yang - -Upstream-Status: Inappropriate [hack] ---- - gcc/configure | 12 ++++++------ - gcc/configure.ac | 18 +++++++++--------- - libstdc++-v3/configure | 6 +++--- - libstdc++-v3/configure.ac | 2 +- - 4 files changed, 19 insertions(+), 19 deletions(-) - -diff --git a/gcc/configure b/gcc/configure -index ed7931daed3..52f52b0ec86 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -29333,12 +29333,12 @@ fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking sys/sdt.h in the target C library" >&5 - $as_echo_n "checking sys/sdt.h in the target C library... " >&6; } - have_sys_sdt_h=no --if test -f $target_header_dir/sys/sdt.h; then -- have_sys_sdt_h=yes -- --$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h -- --fi -+#if test -f $target_header_dir/sys/sdt.h; then -+# have_sys_sdt_h=yes -+# -+#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h -+# -+#fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_sys_sdt_h" >&5 - $as_echo "$have_sys_sdt_h" >&6; } - -diff --git a/gcc/configure.ac b/gcc/configure.ac -index e0500e30d50..242ad28ec83 100644 ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -5995,15 +5995,15 @@ fi - AC_SUBST([enable_default_ssp]) - - # Test for on the target. --GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H]) --AC_MSG_CHECKING(sys/sdt.h in the target C library) --have_sys_sdt_h=no --if test -f $target_header_dir/sys/sdt.h; then -- have_sys_sdt_h=yes -- AC_DEFINE(HAVE_SYS_SDT_H, 1, -- [Define if your target C library provides sys/sdt.h]) --fi --AC_MSG_RESULT($have_sys_sdt_h) -+#GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H]) -+#AC_MSG_CHECKING(sys/sdt.h in the target C library) -+#have_sys_sdt_h=no -+#if test -f $target_header_dir/sys/sdt.h; then -+# have_sys_sdt_h=yes -+# AC_DEFINE(HAVE_SYS_SDT_H, 1, -+# [Define if your target C library provides sys/sdt.h]) -+#fi -+#AC_MSG_RESULT($have_sys_sdt_h) - - # Check if TFmode long double should be used by default or not. - # Some glibc targets used DFmode long double, but with glibc 2.4 -diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure -index 1225edc596b..3b89b880fc8 100755 ---- a/libstdc++-v3/configure -+++ b/libstdc++-v3/configure -@@ -22325,11 +22325,11 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' - ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' - ac_compiler_gnu=$ac_cv_c_compiler_gnu - -- if test $glibcxx_cv_sys_sdt_h = yes; then -+# if test $glibcxx_cv_sys_sdt_h = yes; then - --$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h -+#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h - -- fi -+# fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $glibcxx_cv_sys_sdt_h" >&5 - $as_echo "$glibcxx_cv_sys_sdt_h" >&6; } - -diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac -index d8455e41574..844cf1acbce 100644 ---- a/libstdc++-v3/configure.ac -+++ b/libstdc++-v3/configure.ac -@@ -232,7 +232,7 @@ GLIBCXX_CHECK_SC_NPROCESSORS_ONLN - GLIBCXX_CHECK_SC_NPROC_ONLN - GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP - GLIBCXX_CHECK_SYSCTL_HW_NCPU --GLIBCXX_CHECK_SDT_H -+#GLIBCXX_CHECK_SDT_H - - # Check for available headers. - AC_CHECK_HEADERS([endian.h execinfo.h float.h fp.h ieeefp.h inttypes.h \ --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0014-libtool.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0014-libtool.patch deleted file mode 100644 index 295385923..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0014-libtool.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 34977d994666a90983c96a9240dfa3540562da35 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:29:11 +0400 -Subject: [PATCH 14/39] libtool - -libstdc++ from gcc-runtime gets created with -rpath=/usr/lib/../lib for qemux86-64 -when running on am x86_64 build host. - -This patch stops this speading to libdir in the libstdc++.la file within libtool. -Arguably, it shouldn't be passing this into libtool in the first place but -for now this resolves the nastiest problems this causes. - -func_normal_abspath would resolve an empty path to `pwd` so we need -to filter the zero case. - -RP 2012/8/24 - -Signed-off-by: Khem Raj - -Upstream-Status: Pending ---- - ltmain.sh | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/ltmain.sh b/ltmain.sh -index 79f9ba89af5..8e222f7c16b 100644 ---- a/ltmain.sh -+++ b/ltmain.sh -@@ -6359,6 +6359,10 @@ func_mode_link () - func_warning "ignoring multiple \`-rpath's for a libtool library" - - install_libdir="$1" -+ if test -n "$install_libdir"; then -+ func_normal_abspath "$install_libdir" -+ install_libdir=$func_normal_abspath_result -+ fi - - oldlibs= - if test -z "$rpath"; then --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch deleted file mode 100644 index d4445244e..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 4558ba7fa020c111f9a204021a418c0ce55d77f9 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:30:32 +0400 -Subject: [PATCH 15/39] gcc: armv4: pass fix-v4bx to linker to support EABI. - -The LINK_SPEC for linux gets overwritten by linux-eabi.h which -means the value of TARGET_FIX_V4BX_SPEC gets lost and as a result -the option is not passed to linker when chosing march=armv4 -This patch redefines this in linux-eabi.h and reinserts it -for eabi defaulting toolchains. - -We might want to send it upstream. - -Signed-off-by: Khem Raj - -Upstream-Status: Pending ---- - gcc/config/arm/linux-eabi.h | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h -index e4ade2e2ab0..108863f69d2 100644 ---- a/gcc/config/arm/linux-eabi.h -+++ b/gcc/config/arm/linux-eabi.h -@@ -91,10 +91,14 @@ - #define MUSL_DYNAMIC_LINKER \ - "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}.so.1" - -+/* For armv4 we pass --fix-v4bx to linker to support EABI */ -+#undef TARGET_FIX_V4BX_SPEC -+#define TARGET_FIX_V4BX_SPEC "%{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4: --fix-v4bx}" -+ - /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to - use the GNU/Linux version, not the generic BPABI version. */ - #undef LINK_SPEC --#define LINK_SPEC EABI_LINK_SPEC \ -+#define LINK_SPEC TARGET_FIX_V4BX_SPEC EABI_LINK_SPEC \ - LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \ - LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC) - --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch deleted file mode 100644 index 6f0833ccd..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 7effc632d65c2d72bf6fa32a219ec2f82fef9405 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 09:33:04 +0400 -Subject: [PATCH 16/39] Use the multilib config files from ${B} instead of - using the ones from ${S} - -Use the multilib config files from ${B} instead of using the ones from ${S} -so that the source can be shared between gcc-cross-initial, -gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build. - -Signed-off-by: Khem Raj -Signed-off-by: Constantin Musca - -Upstream-Status: Inappropriate [configuration] ---- - gcc/configure | 22 ++++++++++++++++++---- - gcc/configure.ac | 22 ++++++++++++++++++---- - 2 files changed, 36 insertions(+), 8 deletions(-) - -diff --git a/gcc/configure b/gcc/configure -index 52f52b0ec86..a5f208af7cf 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -12322,10 +12322,20 @@ done - tmake_file_= - for f in ${tmake_file} - do -- if test -f ${srcdir}/config/$f -- then -- tmake_file_="${tmake_file_} \$(srcdir)/config/$f" -- fi -+ case $f in -+ */t-linux64 ) -+ if test -f ./config/$f -+ then -+ tmake_file_="${tmake_file_} ./config/$f" -+ fi -+ ;; -+ * ) -+ if test -f ${srcdir}/config/$f -+ then -+ tmake_file_="${tmake_file_} \$(srcdir)/config/$f" -+ fi -+ ;; -+ esac - done - tmake_file="${tmake_file_}" - -@@ -12336,6 +12346,10 @@ tm_file_list="options.h" - tm_include_list="options.h insn-constants.h" - for f in $tm_file; do - case $f in -+ */linux64.h ) -+ tm_file_list="${tm_file_list} ./config/$f" -+ tm_include_list="${tm_include_list} ./config/$f" -+ ;; - ./* ) - f=`echo $f | sed 's/^..//'` - tm_file_list="${tm_file_list} $f" -diff --git a/gcc/configure.ac b/gcc/configure.ac -index 242ad28ec83..b7a7ead1c02 100644 ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -1948,10 +1948,20 @@ done - tmake_file_= - for f in ${tmake_file} - do -- if test -f ${srcdir}/config/$f -- then -- tmake_file_="${tmake_file_} \$(srcdir)/config/$f" -- fi -+ case $f in -+ */t-linux64 ) -+ if test -f ./config/$f -+ then -+ tmake_file_="${tmake_file_} ./config/$f" -+ fi -+ ;; -+ * ) -+ if test -f ${srcdir}/config/$f -+ then -+ tmake_file_="${tmake_file_} \$(srcdir)/config/$f" -+ fi -+ ;; -+ esac - done - tmake_file="${tmake_file_}" - -@@ -1962,6 +1972,10 @@ tm_file_list="options.h" - tm_include_list="options.h insn-constants.h" - for f in $tm_file; do - case $f in -+ */linux64.h ) -+ tm_file_list="${tm_file_list} ./config/$f" -+ tm_include_list="${tm_include_list} ./config/$f" -+ ;; - ./* ) - f=`echo $f | sed 's/^..//'` - tm_file_list="${tm_file_list} $f" --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch deleted file mode 100644 index 96da013bf..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch +++ /dev/null @@ -1,31 +0,0 @@ -From a2b2bf77621f344a849e55ab179ece8587d19234 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 20 Feb 2015 09:39:38 +0000 -Subject: [PATCH 17/39] Avoid using libdir from .la which usually points to a - host path - -Upstream-Status: Inappropriate [embedded specific] - -Signed-off-by: Jonathan Liu -Signed-off-by: Khem Raj ---- - ltmain.sh | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/ltmain.sh b/ltmain.sh -index 8e222f7c16b..0a93b4e5c3b 100644 ---- a/ltmain.sh -+++ b/ltmain.sh -@@ -5628,6 +5628,9 @@ func_mode_link () - absdir="$abs_ladir" - libdir="$abs_ladir" - else -+ # Instead of using libdir from .la which usually points to a host path, -+ # use the path the .la is contained in. -+ libdir="$abs_ladir" - dir="$libdir" - absdir="$libdir" - fi --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0018-export-CPP.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0018-export-CPP.patch deleted file mode 100644 index 2385099c2..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0018-export-CPP.patch +++ /dev/null @@ -1,53 +0,0 @@ -From cafb6a621c05c1f238679d52fc026446f38c8af5 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 20 Feb 2015 09:40:59 +0000 -Subject: [PATCH 18/39] export CPP - -The OE environment sets and exports CPP as being the target gcc. When -building gcc-cross-canadian for a mingw targetted sdk, the following can be found -in build.x86_64-pokysdk-mingw32.i586-poky-linux/build-x86_64-linux/libiberty/config.log: - -configure:3641: checking for _FILE_OFFSET_BITS value needed for large files -configure:3666: gcc -c -isystem/media/build1/poky/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe conftest.c >&5 -configure:3666: $? = 0 -configure:3698: result: no -configure:3786: checking how to run the C preprocessor -configure:3856: result: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32 -configure:3876: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32 conftest.c -configure:3876: $? = 0 - -Note this is a *build* target (in build-x86_64-linux) so it should be -using the host "gcc", not x86_64-pokysdk-mingw32-gcc. Since the mingw32 -headers are very different, using the wrong cpp is a real problem. It is leaking -into configure through the CPP variable. Ultimately this leads to build -failures related to not being able to include a process.h file for pem-unix.c. - -The fix is to ensure we export a sane CPP value into the build -environment when using build targets. We could define a CPP_FOR_BUILD value which may be -the version which needs to be upstreamed but for now, this fix is good enough to -avoid the problem. - -RP 22/08/2013 - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - Makefile.in | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/Makefile.in b/Makefile.in -index 64e091ba71d..255822e3f27 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -149,6 +149,7 @@ BUILD_EXPORTS = \ - AR="$(AR_FOR_BUILD)"; export AR; \ - AS="$(AS_FOR_BUILD)"; export AS; \ - CC="$(CC_FOR_BUILD)"; export CC; \ -+ CPP="$(CC_FOR_BUILD) -E"; export CPP; \ - CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX_FOR_BUILD)"; export CXX; \ --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0019-Ensure-target-gcc-headers-can-be-included.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0019-Ensure-target-gcc-headers-can-be-included.patch deleted file mode 100644 index e0129d1f9..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0019-Ensure-target-gcc-headers-can-be-included.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 182057b80891edc0e8d46835e2d8bfd28330a55a Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 20 Feb 2015 10:25:11 +0000 -Subject: [PATCH 19/39] Ensure target gcc headers can be included - -There are a few headers installed as part of the OpenEmbedded -gcc-runtime target (omp.h, ssp/*.h). Being installed from a recipe -built for the target architecture, these are within the target -sysroot and not cross/nativesdk; thus they weren't able to be -found by gcc with the existing search paths. Add support for -picking up these headers under the sysroot supplied on the gcc -command line in order to resolve this. - -Upstream-Status: Pending - -Signed-off-by: Paul Eggleton -Signed-off-by: Khem Raj ---- - gcc/Makefile.in | 2 ++ - gcc/cppdefault.c | 4 ++++ - 2 files changed, 6 insertions(+) - -diff --git a/gcc/Makefile.in b/gcc/Makefile.in -index 57cf7804f0a..7772342ad5e 100644 ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -618,6 +618,7 @@ libexecdir = @libexecdir@ - - # Directory in which the compiler finds libraries etc. - libsubdir = $(libdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix) -+libsubdir_target = $(target_noncanonical)/$(version) - # Directory in which the compiler finds executables - libexecsubdir = $(libexecdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix) - # Directory in which all plugin resources are installed -@@ -2867,6 +2868,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\" - - PREPROCESSOR_DEFINES = \ - -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \ -+ -DGCC_INCLUDE_SUBDIR_TARGET=\"$(libsubdir_target)/include\" \ - -DFIXED_INCLUDE_DIR=\"$(libsubdir)/include-fixed\" \ - -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \ - -DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \ -diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c -index c4796385643..980e2bd47a7 100644 ---- a/gcc/cppdefault.c -+++ b/gcc/cppdefault.c -@@ -59,6 +59,10 @@ const struct default_include cpp_include_defaults[] - /* This is the dir for gcc's private headers. */ - { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, - #endif -+#ifdef GCC_INCLUDE_SUBDIR_TARGET -+ /* This is the dir for gcc's private headers under the specified sysroot. */ -+ { STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET, "GCC", 0, 0, 1, 0 }, -+#endif - #ifdef LOCAL_INCLUDE_DIR - /* /usr/local/include comes before the fixincluded header files. */ - { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 }, --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0020-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0020-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch deleted file mode 100644 index 1d2182140..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0020-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch +++ /dev/null @@ -1,54 +0,0 @@ -From a4740f1290e6a602fbbfa27b863be2e3b2675685 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 20 Feb 2015 11:17:19 +0000 -Subject: [PATCH 20/39] gcc 4.8+ won't build with --disable-dependency-tracking - -since the *.Ppo files don't get created unless --enable-dependency-tracking is true. - -This patch ensures we only use those compiler options when its enabled. - -Upstream-Status: Submitted - -(Problem was already reported upstream, attached this patch there -http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55930) - -RP -2012/09/22 - -Signed-off-by: Khem Raj ---- - libatomic/Makefile.am | 3 ++- - libatomic/Makefile.in | 3 ++- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am -index c1b7c73934a..ef43d62c07a 100644 ---- a/libatomic/Makefile.am -+++ b/libatomic/Makefile.am -@@ -101,7 +101,8 @@ PAT_S = $(word 3,$(PAT_SPLIT)) - IFUNC_DEF = -DIFUNC_ALT=$(PAT_S) - IFUNC_OPT = $(word $(PAT_S),$(IFUNC_OPTIONS)) - --M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo -+@AMDEP_TRUE@M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo -+@AMDEP_FALSE@M_DEPS = - M_SIZE = -DN=$(PAT_N) - M_IFUNC = $(if $(PAT_S),$(IFUNC_DEF) $(IFUNC_OPT)) - M_FILE = $(PAT_BASE)_n.c -diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in -index 29324e3e0ac..d5cdb4259ef 100644 ---- a/libatomic/Makefile.in -+++ b/libatomic/Makefile.in -@@ -414,7 +414,8 @@ PAT_N = $(word 2,$(PAT_SPLIT)) - PAT_S = $(word 3,$(PAT_SPLIT)) - IFUNC_DEF = -DIFUNC_ALT=$(PAT_S) - IFUNC_OPT = $(word $(PAT_S),$(IFUNC_OPTIONS)) --M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo -+@AMDEP_TRUE@M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo -+@AMDEP_FALSE@M_DEPS = - M_SIZE = -DN=$(PAT_N) - M_IFUNC = $(if $(PAT_S),$(IFUNC_DEF) $(IFUNC_OPT)) - M_FILE = $(PAT_BASE)_n.c --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0021-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0021-Don-t-search-host-directory-during-relink-if-inst_pr.patch deleted file mode 100644 index e363c7d44..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0021-Don-t-search-host-directory-during-relink-if-inst_pr.patch +++ /dev/null @@ -1,38 +0,0 @@ -From f3edad81d80dde5d64bf77e6abafda54db10b824 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 3 Mar 2015 08:21:19 +0000 -Subject: [PATCH 21/39] Don't search host directory during "relink" if - $inst_prefix is provided - -http://lists.gnu.org/archive/html/libtool-patches/2011-01/msg00026.html - -Upstream-Status: Submitted - -Signed-off-by: Khem Raj ---- - ltmain.sh | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/ltmain.sh b/ltmain.sh -index 0a93b4e5c3b..6de6ed2f9a0 100644 ---- a/ltmain.sh -+++ b/ltmain.sh -@@ -6004,12 +6004,13 @@ func_mode_link () - fi - else - # We cannot seem to hardcode it, guess we'll fake it. -+ # Default if $libdir is not relative to the prefix: - add_dir="-L$libdir" -- # Try looking first in the location we're being installed to. -+ - if test -n "$inst_prefix_dir"; then - case $libdir in - [\\/]*) -- add_dir="$add_dir -L$inst_prefix_dir$libdir" -+ add_dir="-L$inst_prefix_dir$libdir" - ;; - esac - fi --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0022-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0022-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch deleted file mode 100644 index 846c0de5e..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0022-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch +++ /dev/null @@ -1,29 +0,0 @@ -From b8ea2c2c7d33376f5dd651646c7e822000e47749 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 28 Apr 2015 23:15:27 -0700 -Subject: [PATCH 22/39] Use SYSTEMLIBS_DIR replacement instead of hardcoding - base_libdir - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - gcc/config/aarch64/aarch64-linux.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h -index 5e8b34ded03..7e628bf661e 100644 ---- a/gcc/config/aarch64/aarch64-linux.h -+++ b/gcc/config/aarch64/aarch64-linux.h -@@ -21,7 +21,7 @@ - #ifndef GCC_AARCH64_LINUX_H - #define GCC_AARCH64_LINUX_H - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" -+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" - - #undef MUSL_DYNAMIC_LINKER - #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0023-aarch64-Add-support-for-musl-ldso.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0023-aarch64-Add-support-for-musl-ldso.patch deleted file mode 100644 index 102d6fc74..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0023-aarch64-Add-support-for-musl-ldso.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 8645b57e7c0dfd93afee5caeaa534c714f449ba1 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 28 Apr 2015 23:18:39 -0700 -Subject: [PATCH 23/39] aarch64: Add support for musl ldso - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - gcc/config/aarch64/aarch64-linux.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h -index 7e628bf661e..1717cbe5471 100644 ---- a/gcc/config/aarch64/aarch64-linux.h -+++ b/gcc/config/aarch64/aarch64-linux.h -@@ -24,7 +24,7 @@ - #define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" - - #undef MUSL_DYNAMIC_LINKER --#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" -+#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" - - #undef ASAN_CC1_SPEC - #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}" --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0024-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0024-libcc1-fix-libcc1-s-install-path-and-rpath.patch deleted file mode 100644 index 443e0a2ca..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0024-libcc1-fix-libcc1-s-install-path-and-rpath.patch +++ /dev/null @@ -1,54 +0,0 @@ -From b1666565e4e133ee41f32fa8032165bcb06afe9a Mon Sep 17 00:00:00 2001 -From: Robert Yang -Date: Sun, 5 Jul 2015 20:25:18 -0700 -Subject: [PATCH 24/39] libcc1: fix libcc1's install path and rpath - -* Install libcc1.so and libcc1plugin.so into - $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version), as what we - had done to lto-plugin. -* Fix bad RPATH iussue: - gcc-5.2.0: package gcc-plugins contains bad RPATH /patht/to/tmp/sysroots/qemux86-64/usr/lib64/../lib64 in file - /path/to/gcc/5.2.0-r0/packages-split/gcc-plugins/usr/lib64/gcc/x86_64-poky-linux/5.2.0/plugin/libcc1plugin.so.0.0.0 - [rpaths] - -Upstream-Status: Inappropriate [OE configuration] - -Signed-off-by: Robert Yang ---- - libcc1/Makefile.am | 4 ++-- - libcc1/Makefile.in | 4 ++-- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/libcc1/Makefile.am b/libcc1/Makefile.am -index 72c6aead475..42a87740b31 100644 ---- a/libcc1/Makefile.am -+++ b/libcc1/Makefile.am -@@ -37,8 +37,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \ - $(Wc)$(libiberty_normal))) - libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty)) - --plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin --cc1libdir = $(libdir)/$(libsuffix) -+cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version) -+plugindir = $(cc1libdir) - - if ENABLE_PLUGIN - plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la -diff --git a/libcc1/Makefile.in b/libcc1/Makefile.in -index 7104b649026..2103c477468 100644 ---- a/libcc1/Makefile.in -+++ b/libcc1/Makefile.in -@@ -393,8 +393,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \ - $(Wc)$(libiberty_normal))) - - libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty)) --plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin --cc1libdir = $(libdir)/$(libsuffix) -+cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version) -+plugindir = $(cc1libdir) - @ENABLE_PLUGIN_TRUE@plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la - @ENABLE_PLUGIN_TRUE@cc1lib_LTLIBRARIES = libcc1.la - shared_source = callbacks.cc callbacks.hh connection.cc connection.hh \ --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0025-handle-sysroot-support-for-nativesdk-gcc.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0025-handle-sysroot-support-for-nativesdk-gcc.patch deleted file mode 100644 index 59ac97eae..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0025-handle-sysroot-support-for-nativesdk-gcc.patch +++ /dev/null @@ -1,346 +0,0 @@ -From 7d614a84709d7dc4a2529c3d529e2da8541f9fd4 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 7 Dec 2015 23:39:54 +0000 -Subject: [PATCH 25/39] handle sysroot support for nativesdk-gcc - -Being able to build a nativesdk gcc is useful, particularly in cases -where the host compiler may be of an incompatible version (or a 32 -bit compiler is needed). - -Sadly, building nativesdk-gcc is not straight forward. We install -nativesdk-gcc into a relocatable location and this means that its -library locations can change. "Normal" sysroot support doesn't help -in this case since the values of paths like "libdir" change, not just -base root directory of the system. - -In order to handle this we do two things: - -a) Add %r into spec file markup which can be used for injected paths - such as SYSTEMLIBS_DIR (see gcc_multilib_setup()). -b) Add other paths which need relocation into a .gccrelocprefix section - which the relocation code will notice and adjust automatically. - -Upstream-Status: Inappropriate -RP 2015/7/28 - -Signed-off-by: Khem Raj - -Added PREFIXVAR and EXEC_PREFIXVAR to support runtime relocation. Without -these as part of the gccrelocprefix the system can't do runtime relocation -if the executable is moved. (These paths were missed in the original -implementation.) - -Signed-off-by: Mark Hatle ---- - c-family/c-opts.c | 4 +-- - cppdefault.c | 63 +++++++++++++++++++++++++++++++++--------------------- - cppdefault.h | 13 ++++------- - gcc.c | 20 ++++++++++++----- - incpath.c | 12 +++++----- - prefix.c | 4 +-- - 6 files changed, 68 insertions(+), 48 deletions(-) - -Index: gcc-9.3.0/gcc/cppdefault.c -=================================================================== ---- gcc-9.3.0.orig/gcc/cppdefault.c -+++ gcc-9.3.0/gcc/cppdefault.c -@@ -35,6 +35,30 @@ - # undef CROSS_INCLUDE_DIR - #endif - -+static char GPLUSPLUS_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_INCLUDE_DIR; -+char GCC_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GCC_INCLUDE_DIR; -+static char GPLUSPLUS_TOOL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_TOOL_INCLUDE_DIR; -+static char GPLUSPLUS_BACKWARD_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_BACKWARD_INCLUDE_DIR; -+static char STANDARD_STARTFILE_PREFIX_2VAR[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET; -+#ifdef LOCAL_INCLUDE_DIR -+static char LOCAL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = LOCAL_INCLUDE_DIR; -+#endif -+#ifdef PREFIX_INCLUDE_DIR -+static char PREFIX_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = PREFIX_INCLUDE_DIR; -+#endif -+#ifdef FIXED_INCLUDE_DIR -+static char FIXED_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = FIXED_INCLUDE_DIR; -+#endif -+#ifdef CROSS_INCLUDE_DIR -+static char CROSS_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = CROSS_INCLUDE_DIR; -+#endif -+#ifdef TOOL_INCLUDE_DIR -+static char TOOL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = TOOL_INCLUDE_DIR; -+#endif -+#ifdef NATIVE_SYSTEM_HEADER_DIR -+static char NATIVE_SYSTEM_HEADER_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = NATIVE_SYSTEM_HEADER_DIR; -+#endif -+ - const struct default_include cpp_include_defaults[] - #ifdef INCLUDE_DEFAULTS - = INCLUDE_DEFAULTS; -@@ -42,38 +66,38 @@ const struct default_include cpp_include - = { - #ifdef GPLUSPLUS_INCLUDE_DIR - /* Pick up GNU C++ generic include files. */ -- { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, -+ { GPLUSPLUS_INCLUDE_DIRVAR, "G++", 1, 1, - GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, - #endif - #ifdef GPLUSPLUS_TOOL_INCLUDE_DIR - /* Pick up GNU C++ target-dependent include files. */ -- { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, -+ { GPLUSPLUS_TOOL_INCLUDE_DIRVAR, "G++", 1, 1, - GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 1 }, - #endif - #ifdef GPLUSPLUS_BACKWARD_INCLUDE_DIR - /* Pick up GNU C++ backward and deprecated include files. */ -- { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, -+ { GPLUSPLUS_BACKWARD_INCLUDE_DIRVAR, "G++", 1, 1, - GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, - #endif - #ifdef GCC_INCLUDE_DIR - /* This is the dir for gcc's private headers. */ -- { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, -+ { GCC_INCLUDE_DIRVAR, "GCC", 0, 0, 0, 0 }, - #endif - #ifdef GCC_INCLUDE_SUBDIR_TARGET - /* This is the dir for gcc's private headers under the specified sysroot. */ -- { STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET, "GCC", 0, 0, 1, 0 }, -+ { STANDARD_STARTFILE_PREFIX_2VAR, "GCC", 0, 0, 1, 0 }, - #endif - #ifdef LOCAL_INCLUDE_DIR - /* /usr/local/include comes before the fixincluded header files. */ -- { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 }, -- { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 0 }, -+ { LOCAL_INCLUDE_DIRVAR, 0, 0, 1, 1, 2 }, -+ { LOCAL_INCLUDE_DIRVAR, 0, 0, 1, 1, 0 }, - #endif - #ifdef PREFIX_INCLUDE_DIR -- { PREFIX_INCLUDE_DIR, 0, 0, 1, 0, 0 }, -+ { PREFIX_INCLUDE_DIRVAR, 0, 0, 1, 0, 0 }, - #endif - #ifdef FIXED_INCLUDE_DIR - /* This is the dir for fixincludes. */ -- { FIXED_INCLUDE_DIR, "GCC", 0, 0, 0, -+ { FIXED_INCLUDE_DIRVAR, "GCC", 0, 0, 0, - /* A multilib suffix needs adding if different multilibs use - different headers. */ - #ifdef SYSROOT_HEADERS_SUFFIX_SPEC -@@ -85,33 +109,24 @@ const struct default_include cpp_include - #endif - #ifdef CROSS_INCLUDE_DIR - /* One place the target system's headers might be. */ -- { CROSS_INCLUDE_DIR, "GCC", 0, 0, 0, 0 }, -+ { CROSS_INCLUDE_DIRVAR, "GCC", 0, 0, 0, 0 }, - #endif - #ifdef TOOL_INCLUDE_DIR - /* Another place the target system's headers might be. */ -- { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1, 0, 0 }, -+ { TOOL_INCLUDE_DIRVAR, "BINUTILS", 0, 1, 0, 0 }, - #endif - #ifdef NATIVE_SYSTEM_HEADER_DIR - /* /usr/include comes dead last. */ -- { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 2 }, -- { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 0 }, -+ { NATIVE_SYSTEM_HEADER_DIRVAR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 2 }, -+ { NATIVE_SYSTEM_HEADER_DIRVAR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 0 }, - #endif - { 0, 0, 0, 0, 0, 0 } - }; - #endif /* no INCLUDE_DEFAULTS */ - --#ifdef GCC_INCLUDE_DIR --const char cpp_GCC_INCLUDE_DIR[] = GCC_INCLUDE_DIR; --const size_t cpp_GCC_INCLUDE_DIR_len = sizeof GCC_INCLUDE_DIR - 8; --#else --const char cpp_GCC_INCLUDE_DIR[] = ""; --const size_t cpp_GCC_INCLUDE_DIR_len = 0; --#endif -- - /* The configured prefix. */ --const char cpp_PREFIX[] = PREFIX; --const size_t cpp_PREFIX_len = sizeof PREFIX - 1; --const char cpp_EXEC_PREFIX[] = STANDARD_EXEC_PREFIX; -+char PREFIXVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = PREFIX; -+char EXEC_PREFIXVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_EXEC_PREFIX; - - /* This value is set by cpp_relocated at runtime */ - const char *gcc_exec_prefix; -Index: gcc-9.3.0/gcc/cppdefault.h -=================================================================== ---- gcc-9.3.0.orig/gcc/cppdefault.h -+++ gcc-9.3.0/gcc/cppdefault.h -@@ -33,7 +33,8 @@ - - struct default_include - { -- const char *const fname; /* The name of the directory. */ -+ const char *fname; /* The name of the directory. */ -+ - const char *const component; /* The component containing the directory - (see update_path in prefix.c) */ - const char cplusplus; /* Only look here if we're compiling C++. */ -@@ -50,17 +51,13 @@ struct default_include - }; - - extern const struct default_include cpp_include_defaults[]; --extern const char cpp_GCC_INCLUDE_DIR[]; --extern const size_t cpp_GCC_INCLUDE_DIR_len; -+extern char GCC_INCLUDE_DIRVAR[] __attribute__ ((section (".gccrelocprefix"))); - - /* The configure-time prefix, i.e., the value supplied as the argument - to --prefix=. */ --extern const char cpp_PREFIX[]; -+extern char PREFIXVAR[] __attribute__ ((section (".gccrelocprefix"))); - /* The length of the configure-time prefix. */ --extern const size_t cpp_PREFIX_len; --/* The configure-time execution prefix. This is typically the lib/gcc -- subdirectory of cpp_PREFIX. */ --extern const char cpp_EXEC_PREFIX[]; -+extern char EXEC_PREFIXVAR[] __attribute__ ((section (".gccrelocprefix"))); - /* The run-time execution prefix. This is typically the lib/gcc - subdirectory of the actual installation. */ - extern const char *gcc_exec_prefix; -Index: gcc-9.3.0/gcc/gcc.c -=================================================================== ---- gcc-9.3.0.orig/gcc/gcc.c -+++ gcc-9.3.0/gcc/gcc.c -@@ -253,6 +253,8 @@ FILE *report_times_to_file = NULL; - #endif - static const char *target_system_root = DEFAULT_TARGET_SYSTEM_ROOT; - -+static char target_relocatable_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = SYSTEMLIBS_DIR; -+ - /* Nonzero means pass the updated target_system_root to the compiler. */ - - static int target_system_root_changed; -@@ -527,6 +529,7 @@ or with constant text in a single argume - %G process LIBGCC_SPEC as a spec. - %R Output the concatenation of target_system_root and - target_sysroot_suffix. -+ %r Output the base path target_relocatable_prefix - %S process STARTFILE_SPEC as a spec. A capital S is actually used here. - %E process ENDFILE_SPEC as a spec. A capital E is actually used here. - %C process CPP_SPEC as a spec. -@@ -1500,10 +1503,10 @@ static const char *gcc_libexec_prefix; - gcc_exec_prefix is set because, in that case, we know where the - compiler has been installed, and use paths relative to that - location instead. */ --static const char *const standard_exec_prefix = STANDARD_EXEC_PREFIX; --static const char *const standard_libexec_prefix = STANDARD_LIBEXEC_PREFIX; --static const char *const standard_bindir_prefix = STANDARD_BINDIR_PREFIX; --static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX; -+static char standard_exec_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_EXEC_PREFIX; -+static char standard_libexec_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_LIBEXEC_PREFIX; -+static char standard_bindir_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_BINDIR_PREFIX; -+static char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX; - - /* For native compilers, these are well-known paths containing - components that may be provided by the system. For cross -@@ -1511,9 +1514,9 @@ static const char *const standard_startf - static const char *md_exec_prefix = MD_EXEC_PREFIX; - static const char *md_startfile_prefix = MD_STARTFILE_PREFIX; - static const char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1; --static const char *const standard_startfile_prefix_1 -+static char standard_startfile_prefix_1[4096] __attribute__ ((section (".gccrelocprefix"))) - = STANDARD_STARTFILE_PREFIX_1; --static const char *const standard_startfile_prefix_2 -+static char standard_startfile_prefix_2[4096] __attribute__ ((section (".gccrelocprefix"))) - = STANDARD_STARTFILE_PREFIX_2; - - /* A relative path to be used in finding the location of tools -@@ -5922,6 +5925,11 @@ do_spec_1 (const char *spec, int inswitc - } - break; - -+ case 'r': -+ obstack_grow (&obstack, target_relocatable_prefix, -+ strlen (target_relocatable_prefix)); -+ break; -+ - case 'S': - value = do_spec_1 (startfile_spec, 0, NULL); - if (value != 0) -Index: gcc-9.3.0/gcc/c-family/c-opts.c -=================================================================== ---- gcc-9.3.0.orig/gcc/c-family/c-opts.c -+++ gcc-9.3.0/gcc/c-family/c-opts.c -@@ -1382,8 +1382,8 @@ add_prefixed_path (const char *suffix, i - size_t prefix_len, suffix_len; - - suffix_len = strlen (suffix); -- prefix = iprefix ? iprefix : cpp_GCC_INCLUDE_DIR; -- prefix_len = iprefix ? strlen (iprefix) : cpp_GCC_INCLUDE_DIR_len; -+ prefix = iprefix ? iprefix : GCC_INCLUDE_DIRVAR; -+ prefix_len = iprefix ? strlen (iprefix) : strlen(GCC_INCLUDE_DIRVAR) - 7; - - path = (char *) xmalloc (prefix_len + suffix_len + 1); - memcpy (path, prefix, prefix_len); -Index: gcc-9.3.0/gcc/incpath.c -=================================================================== ---- gcc-9.3.0.orig/gcc/incpath.c -+++ gcc-9.3.0/gcc/incpath.c -@@ -131,7 +131,7 @@ add_standard_paths (const char *sysroot, - int relocated = cpp_relocated (); - size_t len; - -- if (iprefix && (len = cpp_GCC_INCLUDE_DIR_len) != 0) -+ if (iprefix && (len = strlen(GCC_INCLUDE_DIRVAR) - 7) != 0) - { - /* Look for directories that start with the standard prefix. - "Translate" them, i.e. replace /usr/local/lib/gcc... with -@@ -145,7 +145,7 @@ add_standard_paths (const char *sysroot, - now. */ - if (sysroot && p->add_sysroot) - continue; -- if (!filename_ncmp (p->fname, cpp_GCC_INCLUDE_DIR, len)) -+ if (!filename_ncmp (p->fname, GCC_INCLUDE_DIRVAR, len)) - { - char *str = concat (iprefix, p->fname + len, NULL); - if (p->multilib == 1 && imultilib) -@@ -185,7 +185,7 @@ add_standard_paths (const char *sysroot, - free (sysroot_no_trailing_dir_separator); - } - else if (!p->add_sysroot && relocated -- && !filename_ncmp (p->fname, cpp_PREFIX, cpp_PREFIX_len)) -+ && !filename_ncmp (p->fname, PREFIXVAR, strlen(PREFIXVAR))) - { - static const char *relocated_prefix; - char *ostr; -@@ -202,12 +202,12 @@ add_standard_paths (const char *sysroot, - dummy = concat (gcc_exec_prefix, "dummy", NULL); - relocated_prefix - = make_relative_prefix (dummy, -- cpp_EXEC_PREFIX, -- cpp_PREFIX); -+ EXEC_PREFIXVAR, -+ PREFIXVAR); - free (dummy); - } - ostr = concat (relocated_prefix, -- p->fname + cpp_PREFIX_len, -+ p->fname + strlen(PREFIXVAR), - NULL); - str = update_path (ostr, p->component); - free (ostr); -Index: gcc-9.3.0/gcc/prefix.c -=================================================================== ---- gcc-9.3.0.orig/gcc/prefix.c -+++ gcc-9.3.0/gcc/prefix.c -@@ -72,7 +72,9 @@ License along with GCC; see the file COP - #include "prefix.h" - #include "common/common-target.h" - --static const char *std_prefix = PREFIX; -+static const char PREFIXVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = PREFIX; -+ -+static const char *std_prefix = PREFIXVAR; - - static const char *get_key_value (char *); - static char *translate_name (char *); -@@ -212,7 +214,7 @@ translate_name (char *name) - prefix = getenv (key); - - if (prefix == 0) -- prefix = PREFIX; -+ prefix = PREFIXVAR; - - /* We used to strip trailing DIR_SEPARATORs here, but that can - sometimes yield a result with no separator when one was coded diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch deleted file mode 100644 index abfa7516d..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 6c39a22c3e85d20dee9e2fc2274e95da980de4d0 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 7 Dec 2015 23:41:45 +0000 -Subject: [PATCH 26/39] Search target sysroot gcc version specific dirs with - multilib. - -We install the gcc libraries (such as crtbegin.p) into -//5.2.0/ -which is a default search path for GCC (aka multi_suffix in the -code below). is 'machine' in gcc's terminology. We use -these directories so that multiple gcc versions could in theory -co-exist on target. - -We only want to build one gcc-cross-canadian per arch and have this work -for all multilibs. can be handled by mapping the multilib - to the one used by gcc-cross-canadian, e.g. -mips64-polkmllib32-linux -is symlinked to by mips64-poky-linux. - -The default gcc search path in the target sysroot for a "lib64" mutlilib -is: - -/lib32/mips64-poky-linux/5.2.0/ -/lib32/../lib64/ -/usr/lib32/mips64-poky-linux/5.2.0/ -/usr/lib32/../lib64/ -/lib32/ -/usr/lib32/ - -which means that the lib32 crtbegin.o will be found and the lib64 ones -will not which leads to compiler failures. - -This patch injects a multilib version of that path first so the lib64 -binaries can be found first. With this change the search path becomes: - -/lib32/../lib64/mips64-poky-linux/5.2.0/ -/lib32/mips64-poky-linux/5.2.0/ -/lib32/../lib64/ -/usr/lib32/../lib64/mips64-poky-linux/5.2.0/ -/usr/lib32/mips64-poky-linux/5.2.0/ -/usr/lib32/../lib64/ -/lib32/ -/usr/lib32/ - -Upstream-Status: Pending -RP 2015/7/31 - -Signed-off-by: Khem Raj ---- - gcc/gcc.c | 29 ++++++++++++++++++++++++++++- - 1 file changed, 28 insertions(+), 1 deletion(-) - -diff --git a/gcc/gcc.c b/gcc/gcc.c -index 59fb64f5fd5..3e79da4238c 100644 ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -2617,7 +2617,7 @@ for_each_path (const struct path_prefix *paths, - if (path == NULL) - { - len = paths->max_len + extra_space + 1; -- len += MAX (MAX (suffix_len, multi_os_dir_len), multiarch_len); -+ len += MAX ((suffix_len + multi_os_dir_len), multiarch_len); - path = XNEWVEC (char, len); - } - -@@ -2629,6 +2629,33 @@ for_each_path (const struct path_prefix *paths, - /* Look first in MACHINE/VERSION subdirectory. */ - if (!skip_multi_dir) - { -+ if (!(pl->os_multilib ? skip_multi_os_dir : skip_multi_dir)) -+ { -+ const char *this_multi; -+ size_t this_multi_len; -+ -+ if (pl->os_multilib) -+ { -+ this_multi = multi_os_dir; -+ this_multi_len = multi_os_dir_len; -+ } -+ else -+ { -+ this_multi = multi_dir; -+ this_multi_len = multi_dir_len; -+ } -+ -+ /* Look in multilib MACHINE/VERSION subdirectory first */ -+ if (this_multi_len) -+ { -+ memcpy (path + len, this_multi, this_multi_len + 1); -+ memcpy (path + len + this_multi_len, multi_suffix, suffix_len + 1); -+ ret = callback (path, callback_info); -+ if (ret) -+ break; -+ } -+ } -+ - memcpy (path + len, multi_suffix, suffix_len + 1); - ret = callback (path, callback_info); - if (ret) --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0027-Fix-various-_FOR_BUILD-and-related-variables.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0027-Fix-various-_FOR_BUILD-and-related-variables.patch deleted file mode 100644 index ae8acc7f1..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0027-Fix-various-_FOR_BUILD-and-related-variables.patch +++ /dev/null @@ -1,137 +0,0 @@ -From 07db34b16b6c8e3d948b417f2fc052500ffb77d3 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 7 Dec 2015 23:42:45 +0000 -Subject: [PATCH 27/39] Fix various _FOR_BUILD and related variables - -When doing a FOR_BUILD thing, you have to override CFLAGS with -CFLAGS_FOR_BUILD. And if you use C++, you also have to override -CXXFLAGS with CXXFLAGS_FOR_BUILD. -Without this, when building for mingw, you end up trying to use -the mingw headers for a host build. - -The same goes for other variables as well, such as CPPFLAGS, -CPP, and GMPINC. - -Upstream-Status: Pending - -Signed-off-by: Peter Seebach -Signed-off-by: Mark Hatle -Signed-off-by: Khem Raj ---- - Makefile.in | 6 ++++++ - Makefile.tpl | 5 +++++ - gcc/Makefile.in | 2 +- - gcc/configure | 2 +- - gcc/configure.ac | 2 +- - 5 files changed, 14 insertions(+), 3 deletions(-) - -diff --git a/Makefile.in b/Makefile.in -index 255822e3f27..9dc0dff0474 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -152,6 +152,7 @@ BUILD_EXPORTS = \ - CPP="$(CC_FOR_BUILD) -E"; export CPP; \ - CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ -+ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_BUILD)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ - GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ -@@ -171,6 +172,9 @@ BUILD_EXPORTS = \ - # built for the build system to override those in BASE_FLAGS_TO_PASS. - EXTRA_BUILD_FLAGS = \ - CFLAGS="$(CFLAGS_FOR_BUILD)" \ -+ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \ -+ CPP="$(CC_FOR_BUILD) -E" \ -+ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \ - LDFLAGS="$(LDFLAGS_FOR_BUILD)" - - # This is the list of directories to built for the host system. -@@ -188,6 +192,7 @@ HOST_SUBDIR = @host_subdir@ - HOST_EXPORTS = \ - $(BASE_EXPORTS) \ - CC="$(CC)"; export CC; \ -+ CPP="$(CC) -E"; export CPP; \ - ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ -@@ -775,6 +780,7 @@ BASE_FLAGS_TO_PASS = \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ - "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \ -+ "CXXFLAGS_FOR_BUILD=$(CXXFLAGS_FOR_BUILD)" \ - "EXPECT=$(EXPECT)" \ - "FLEX=$(FLEX)" \ - "INSTALL=$(INSTALL)" \ -diff --git a/Makefile.tpl b/Makefile.tpl -index 41cae58a267..d3f6b79acdc 100644 ---- a/Makefile.tpl -+++ b/Makefile.tpl -@@ -154,6 +154,7 @@ BUILD_EXPORTS = \ - CC="$(CC_FOR_BUILD)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ -+ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_BUILD)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ - GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ -@@ -173,6 +174,9 @@ BUILD_EXPORTS = \ - # built for the build system to override those in BASE_FLAGS_TO_PASS. - EXTRA_BUILD_FLAGS = \ - CFLAGS="$(CFLAGS_FOR_BUILD)" \ -+ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \ -+ CPP="$(CC_FOR_BUILD) -E" \ -+ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \ - LDFLAGS="$(LDFLAGS_FOR_BUILD)" - - # This is the list of directories to built for the host system. -@@ -190,6 +194,7 @@ HOST_SUBDIR = @host_subdir@ - HOST_EXPORTS = \ - $(BASE_EXPORTS) \ - CC="$(CC)"; export CC; \ -+ CPP="$(CC) -E"; export CPP; \ - ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ -diff --git a/gcc/Makefile.in b/gcc/Makefile.in -index 7772342ad5e..02fec881b6d 100644 ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -805,7 +805,7 @@ BUILD_LDFLAGS=@BUILD_LDFLAGS@ - BUILD_NO_PIE_FLAG = @BUILD_NO_PIE_FLAG@ - BUILD_LDFLAGS += $(BUILD_NO_PIE_FLAG) - BUILD_CPPFLAGS= -I. -I$(@D) -I$(srcdir) -I$(srcdir)/$(@D) \ -- -I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS) -+ -I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS_FOR_BUILD) - - # Actual name to use when installing a native compiler. - GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)') -diff --git a/gcc/configure b/gcc/configure -index a5f208af7cf..0788b7bf0b5 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -11966,7 +11966,7 @@ else - CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \ - CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \ - LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \ -- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \ -+ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \ - ${realsrcdir}/configure \ - --enable-languages=${enable_languages-all} \ - --target=$target_alias --host=$build_alias --build=$build_alias -diff --git a/gcc/configure.ac b/gcc/configure.ac -index b7a7ead1c02..5ab50fae0f3 100644 ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -1743,7 +1743,7 @@ else - CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \ - CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \ - LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \ -- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \ -+ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \ - ${realsrcdir}/configure \ - --enable-languages=${enable_languages-all} \ - --target=$target_alias --host=$build_alias --build=$build_alias --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0028-nios2-Define-MUSL_DYNAMIC_LINKER.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0028-nios2-Define-MUSL_DYNAMIC_LINKER.patch deleted file mode 100644 index 52a5d97ae..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0028-nios2-Define-MUSL_DYNAMIC_LINKER.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 59543e897eb35194fb47288f7762e40a18fff611 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 2 Feb 2016 10:26:10 -0800 -Subject: [PATCH 28/39] nios2: Define MUSL_DYNAMIC_LINKER - -Upstream-Status: Pending - -Signed-off-by: Marek Vasut -Signed-off-by: Khem Raj ---- - gcc/config/nios2/linux.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/gcc/config/nios2/linux.h b/gcc/config/nios2/linux.h -index 698734add35..eeee60ecfea 100644 ---- a/gcc/config/nios2/linux.h -+++ b/gcc/config/nios2/linux.h -@@ -30,6 +30,7 @@ - #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" - - #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1" -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-nios2.so.1" - - #undef LINK_SPEC - #define LINK_SPEC LINK_SPEC_ENDIAN \ --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0029-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0029-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch deleted file mode 100644 index bfa7e19dd..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0029-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch +++ /dev/null @@ -1,87 +0,0 @@ -From 8df99af0a65ef740bcf2b7dc9a109cc57f15c3aa Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 27 Jun 2017 18:10:54 -0700 -Subject: [PATCH 29/39] Add ssp_nonshared to link commandline for musl targets - -when -fstack-protector options are enabled we need to -link with ssp_shared on musl since it does not provide -the __stack_chk_fail_local() so essentially it provides -libssp but not libssp_nonshared something like -TARGET_LIBC_PROVIDES_SSP_BUT_NOT_SSP_NONSHARED - where-as for glibc the needed symbols -are already present in libc_nonshared library therefore -we do not need any library helper on glibc based systems -but musl needs the libssp_noshared from gcc - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - gcc/config/linux.h | 7 +++++++ - gcc/config/rs6000/linux.h | 10 ++++++++++ - gcc/config/rs6000/linux64.h | 10 ++++++++++ - 3 files changed, 27 insertions(+) - -diff --git a/gcc/config/linux.h b/gcc/config/linux.h -index 4b05d8e93d1..0ca117e2ed4 100644 ---- a/gcc/config/linux.h -+++ b/gcc/config/linux.h -@@ -195,6 +195,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - { GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \ - { 0, 0, 0, 0, 0, 0 } \ - } -+#ifdef TARGET_LIBC_PROVIDES_SSP -+#undef LINK_SSP_SPEC -+#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ -+ "|fstack-protector-strong|fstack-protector-explicit" \ -+ ":-lssp_nonshared}" -+#endif -+ - #endif - - #if (DEFAULT_LIBC == LIBC_UCLIBC) && defined (SINGLE_LIBC) /* uClinux */ -diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h -index ffceb32bf65..c82cb2ad05b 100644 ---- a/gcc/config/rs6000/linux.h -+++ b/gcc/config/rs6000/linux.h -@@ -94,6 +94,16 @@ - " -m elf32ppclinux") - #endif - -+/* link libssp_nonshared.a with musl */ -+#if DEFAULT_LIBC == LIBC_MUSL -+#ifdef TARGET_LIBC_PROVIDES_SSP -+#undef LINK_SSP_SPEC -+#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ -+ "|fstack-protector-strong|fstack-protector-explicit" \ -+ ":-lssp_nonshared}" -+#endif -+#endif -+ - #undef LINK_OS_LINUX_SPEC - #define LINK_OS_LINUX_SPEC LINK_OS_LINUX_EMUL " %{!shared: %{!static: \ - %{!static-pie: \ -diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h -index 45a9a7cae59..d1e88a40e82 100644 ---- a/gcc/config/rs6000/linux64.h -+++ b/gcc/config/rs6000/linux64.h -@@ -456,6 +456,16 @@ extern int dot_symbols; - " -m elf64ppc") - #endif - -+/* link libssp_nonshared.a with musl */ -+#if DEFAULT_LIBC == LIBC_MUSL -+#ifdef TARGET_LIBC_PROVIDES_SSP -+#undef LINK_SSP_SPEC -+#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ -+ "|fstack-protector-strong|fstack-protector-explicit" \ -+ ":-lssp_nonshared}" -+#endif -+#endif -+ - #define LINK_OS_LINUX_SPEC32 LINK_OS_LINUX_EMUL32 " %{!shared: %{!static: \ - %{!static-pie: \ - %{rdynamic:-export-dynamic} \ --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0030-ldbl128-config.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0030-ldbl128-config.patch deleted file mode 100644 index f8e8c07f6..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0030-ldbl128-config.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 1bfae624b27ea4a1f5c5a92050d741b511e7b3d5 Mon Sep 17 00:00:00 2001 -From: Szabolcs Nagy -Date: Wed, 28 Feb 2018 00:54:05 +0000 -Subject: [PATCH 30/39] ldbl128 config - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - gcc/configure | 13 +++++++++++++ - gcc/configure.ac | 16 ++++++++++++++-- - 2 files changed, 27 insertions(+), 2 deletions(-) - -diff --git a/gcc/configure b/gcc/configure -index 0788b7bf0b5..eb1a45bb263 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -29370,6 +29370,15 @@ if test "${with_long_double_128+set}" = set; then : - withval=$with_long_double_128; gcc_cv_target_ldbl128="$with_long_double_128" - else - -+ case "$target" in -+ s390*-*-linux-musl*) -+ gcc_cv_target_ldbl128=yes -+ ;; -+ powerpc*-*-linux-musl*) -+ gcc_cv_target_ldbl128=no -+ ;; -+ *) -+ - if test $glibc_version_major -gt 2 \ - || ( test $glibc_version_major -eq 2 && test $glibc_version_minor -ge 4 ); then : - gcc_cv_target_ldbl128=yes -@@ -29381,6 +29390,10 @@ else - && gcc_cv_target_ldbl128=yes - - fi -+ -+ ;; -+ esac -+ - fi - - ;; -diff --git a/gcc/configure.ac b/gcc/configure.ac -index 5ab50fae0f3..7ffe35ee1c3 100644 ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -6030,13 +6030,25 @@ case "$target" in - AC_ARG_WITH(long-double-128, - [AS_HELP_STRING([--with-long-double-128], - [use 128-bit long double by default])], -- gcc_cv_target_ldbl128="$with_long_double_128", -+ gcc_cv_target_ldbl128="$with_long_double_128", [ -+ case "$target" in -+ s390*-*-linux-musl*) -+ gcc_cv_target_ldbl128=yes -+ ;; -+ powerpc*-*-linux-musl*) -+ gcc_cv_target_ldbl128=no -+ ;; -+ *)] - [GCC_GLIBC_VERSION_GTE_IFELSE([2], [4], [gcc_cv_target_ldbl128=yes], [ - [gcc_cv_target_ldbl128=no - grep '^[ ]*#[ ]*define[ ][ ]*__LONG_DOUBLE_MATH_OPTIONAL' \ - $target_header_dir/bits/wordsize.h > /dev/null 2>&1 \ - && gcc_cv_target_ldbl128=yes -- ]])]) -+ ]])] -+ [ -+ ;; -+ esac -+ ]) - ;; - esac - if test x$gcc_cv_target_ldbl128 = xyes; then --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0031-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0031-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch deleted file mode 100644 index 60a29fc94..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0031-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 31d008f5573627c6192ce9fcf729f0be464a7cf5 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 4 May 2016 21:11:34 -0700 -Subject: [PATCH 31/39] Link libgcc using LDFLAGS, not just SHLIB_LDFLAGS - -Upstream-Status: Pending - -Signed-off-by: Christopher Larson -Signed-off-by: Khem Raj ---- - libgcc/config/t-slibgcc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libgcc/config/t-slibgcc b/libgcc/config/t-slibgcc -index 099bf23e62f..436b277a79f 100644 ---- a/libgcc/config/t-slibgcc -+++ b/libgcc/config/t-slibgcc -@@ -32,7 +32,7 @@ SHLIB_INSTALL_SOLINK = $(LN_S) $(SHLIB_SONAME) \ - $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK) - - SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \ -- $(SHLIB_LDFLAGS) \ -+ $(LDFLAGS) $(SHLIB_LDFLAGS) \ - -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \ - $(SHLIB_OBJS) $(SHLIB_LC) && \ - rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \ --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0032-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0032-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch deleted file mode 100644 index 6f048dab8..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0032-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 761fa6e3e37608cfd1b288e721a2ff89288cd6aa Mon Sep 17 00:00:00 2001 -From: Szabolcs Nagy -Date: Sat, 24 Oct 2015 20:09:53 +0000 -Subject: [PATCH 32/39] libgcc_s: Use alias for __cpu_indicator_init instead of - symver - -Adapter from - -https://gcc.gnu.org/ml/gcc-patches/2015-05/msg00899.html - -This fix was debated but hasnt been applied gcc upstream since -they expect musl to support '@' in symbol versioning which is -a sun/gnu versioning extention. This patch however avoids the -need for the '@' symbols at all - -libgcc/Changelog: - -2015-05-11 Szabolcs Nagy - - * config/i386/cpuinfo.c (__cpu_indicator_init_local): Add. - (__cpu_indicator_init@GCC_4.8.0, __cpu_model@GCC_4.8.0): Remove. - - * config/i386/t-linux (HOST_LIBGCC2_CFLAGS): Remove -DUSE_ELF_SYMVER. - -gcc/Changelog: - -2015-05-11 Szabolcs Nagy - - * config/i386/i386.c (ix86_expand_builtin): Make __builtin_cpu_init - call __cpu_indicator_init_local instead of __cpu_indicator_init. - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - gcc/config/i386/i386.c | 4 ++-- - libgcc/config/i386/cpuinfo.c | 6 +++--- - libgcc/config/i386/t-linux | 2 +- - 3 files changed, 6 insertions(+), 6 deletions(-) - -diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c -index 1bca5a7eea6..096c4bc8e25 100644 ---- a/gcc/config/i386/i386.c -+++ b/gcc/config/i386/i386.c -@@ -36685,10 +36685,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget, - { - case IX86_BUILTIN_CPU_INIT: - { -- /* Make it call __cpu_indicator_init in libgcc. */ -+ /* Make it call __cpu_indicator_init_local in libgcc.a. */ - tree call_expr, fndecl, type; - type = build_function_type_list (integer_type_node, NULL_TREE); -- fndecl = build_fn_decl ("__cpu_indicator_init", type); -+ fndecl = build_fn_decl ("__cpu_indicator_init_local", type); - call_expr = build_call_expr (fndecl, 0); - return expand_expr (call_expr, target, mode, EXPAND_NORMAL); - } -diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c -index d6cb2de6265..ce04ef78205 100644 ---- a/libgcc/config/i386/cpuinfo.c -+++ b/libgcc/config/i386/cpuinfo.c -@@ -504,7 +504,7 @@ __cpu_indicator_init (void) - return 0; - } - --#if defined SHARED && defined USE_ELF_SYMVER --__asm__ (".symver __cpu_indicator_init, __cpu_indicator_init@GCC_4.8.0"); --__asm__ (".symver __cpu_model, __cpu_model@GCC_4.8.0"); -+#ifndef SHARED -+int __cpu_indicator_init_local (void) -+ __attribute__ ((weak, alias ("__cpu_indicator_init"))); - #endif -diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux -index 8506a635790..564296f788e 100644 ---- a/libgcc/config/i386/t-linux -+++ b/libgcc/config/i386/t-linux -@@ -3,5 +3,5 @@ - # t-slibgcc-elf-ver and t-linux - SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver - --HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER $(CET_FLAGS) -+HOST_LIBGCC2_CFLAGS += -mlong-double-80 $(CET_FLAGS) - CRTSTUFF_T_CFLAGS += $(CET_FLAGS) --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0033-sync-gcc-stddef.h-with-musl.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0033-sync-gcc-stddef.h-with-musl.patch deleted file mode 100644 index f080b0596..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0033-sync-gcc-stddef.h-with-musl.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 126e342fb39d7af70c1e5a6df8ffafc8dfc3bf08 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 3 Feb 2017 12:56:00 -0800 -Subject: [PATCH 33/39] sync gcc stddef.h with musl - -musl defines ptrdiff_t size_t and wchar_t -so dont define them here if musl is definining them - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - gcc/ginclude/stddef.h | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/gcc/ginclude/stddef.h b/gcc/ginclude/stddef.h -index da692e1c01a..9a00c261adb 100644 ---- a/gcc/ginclude/stddef.h -+++ b/gcc/ginclude/stddef.h -@@ -128,6 +128,7 @@ _TYPE_wchar_t; - #ifndef ___int_ptrdiff_t_h - #ifndef _GCC_PTRDIFF_T - #ifndef _PTRDIFF_T_DECLARED /* DragonFly */ -+#ifndef __DEFINED_ptrdiff_t /* musl */ - #define _PTRDIFF_T - #define _T_PTRDIFF_ - #define _T_PTRDIFF -@@ -137,10 +138,12 @@ _TYPE_wchar_t; - #define ___int_ptrdiff_t_h - #define _GCC_PTRDIFF_T - #define _PTRDIFF_T_DECLARED -+#define __DEFINED_ptrdiff_t /* musl */ - #ifndef __PTRDIFF_TYPE__ - #define __PTRDIFF_TYPE__ long int - #endif - typedef __PTRDIFF_TYPE__ ptrdiff_t; -+#endif /* __DEFINED_ptrdiff_t */ - #endif /* _PTRDIFF_T_DECLARED */ - #endif /* _GCC_PTRDIFF_T */ - #endif /* ___int_ptrdiff_t_h */ -@@ -178,6 +181,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; - #ifndef _GCC_SIZE_T - #ifndef _SIZET_ - #ifndef __size_t -+#ifndef __DEFINED_size_t /* musl */ - #define __size_t__ /* BeOS */ - #define __SIZE_T__ /* Cray Unicos/Mk */ - #define _SIZE_T -@@ -194,6 +198,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; - #define ___int_size_t_h - #define _GCC_SIZE_T - #define _SIZET_ -+#define __DEFINED_size_t /* musl */ - #if defined (__FreeBSD__) \ - || defined(__DragonFly__) \ - || defined(__FreeBSD_kernel__) \ -@@ -228,6 +233,7 @@ typedef long ssize_t; - #endif /* _SIZE_T */ - #endif /* __SIZE_T__ */ - #endif /* __size_t__ */ -+#endif /* __DEFINED_size_t */ - #undef __need_size_t - #endif /* _STDDEF_H or __need_size_t. */ - -@@ -257,6 +263,7 @@ typedef long ssize_t; - #ifndef ___int_wchar_t_h - #ifndef __INT_WCHAR_T_H - #ifndef _GCC_WCHAR_T -+#ifndef __DEFINED_wchar_t /* musl */ - #define __wchar_t__ /* BeOS */ - #define __WCHAR_T__ /* Cray Unicos/Mk */ - #define _WCHAR_T -@@ -272,6 +279,7 @@ typedef long ssize_t; - #define __INT_WCHAR_T_H - #define _GCC_WCHAR_T - #define _WCHAR_T_DECLARED -+#define __DEFINED_wchar_t /* musl */ - - /* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_ - instead of _WCHAR_T_, and _BSD_RUNE_T_ (which, unlike the other -@@ -337,6 +345,7 @@ typedef __WCHAR_TYPE__ wchar_t; - #endif - #endif /* __WCHAR_T__ */ - #endif /* __wchar_t__ */ -+#endif /* __DEFINED_wchar_t musl */ - #undef __need_wchar_t - #endif /* _STDDEF_H or __need_wchar_t. */ - --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0034-fix-segmentation-fault-in-precompiled-header-generat.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0034-fix-segmentation-fault-in-precompiled-header-generat.patch deleted file mode 100644 index 3b7ccb3e3..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0034-fix-segmentation-fault-in-precompiled-header-generat.patch +++ /dev/null @@ -1,60 +0,0 @@ -From d26fa9ededccc7e1ec47ead7f18afc80971483a3 Mon Sep 17 00:00:00 2001 -From: Juro Bystricky -Date: Mon, 19 Mar 2018 22:31:20 -0700 -Subject: [PATCH 34/39] fix segmentation fault in precompiled header generation - -Prevent a segmentation fault which occurs when using incorrect -structure trying to access name of some named operators, such as -CPP_NOT, CPP_AND etc. "token->val.node.spelling" cannot be used in -those cases, as is may not be initialized at all. - -[YOCTO #11738] - -Upstream-Status: Pending - -Signed-off-by: Juro Bystricky -Signed-off-by: Khem Raj ---- - libcpp/lex.c | 26 +++++++++++++++++++++----- - 1 file changed, 21 insertions(+), 5 deletions(-) - -diff --git a/libcpp/lex.c b/libcpp/lex.c -index eedfcbb3146..15040a1b1f0 100644 ---- a/libcpp/lex.c -+++ b/libcpp/lex.c -@@ -3280,11 +3280,27 @@ cpp_spell_token (cpp_reader *pfile, const cpp_token *token, - spell_ident: - case SPELL_IDENT: - if (forstring) -- { -- memcpy (buffer, NODE_NAME (token->val.node.spelling), -- NODE_LEN (token->val.node.spelling)); -- buffer += NODE_LEN (token->val.node.spelling); -- } -+ { -+ if (token->type == CPP_NAME) -+ { -+ memcpy (buffer, NODE_NAME (token->val.node.spelling), -+ NODE_LEN (token->val.node.spelling)); -+ buffer += NODE_LEN (token->val.node.spelling); -+ break; -+ } -+ /* NAMED_OP, cannot use node.spelling */ -+ if (token->flags & NAMED_OP) -+ { -+ const char *str = cpp_named_operator2name (token->type); -+ if (str) -+ { -+ size_t len = strlen(str); -+ memcpy(buffer, str, len); -+ buffer += len; -+ } -+ break; -+ } -+ } - else - buffer = _cpp_spell_ident_ucns (buffer, token->val.node.node); - break; --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0035-Fix-for-testsuite-failure.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0035-Fix-for-testsuite-failure.patch deleted file mode 100644 index 5e199fbcf..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0035-Fix-for-testsuite-failure.patch +++ /dev/null @@ -1,258 +0,0 @@ -From fb5bdf8f8527228d587e8af9fc700e5164b3c18c Mon Sep 17 00:00:00 2001 -From: RAGHUNATH LOLUR -Date: Wed, 6 Dec 2017 22:52:26 -0800 -Subject: [PATCH 35/39] Fix for testsuite failure - -2017-11-16 Raghunath Lolur - - * gcc.dg/pr56275.c: If SSE is disabled, ensure that - "-mfpmath" is not set to use SSE. Set "-mfpmath=387". - * gcc.dg/pr68306.c: Likewise - * gcc.dg/pr68306-2.c: Likewise - * gcc.dg/pr68306-3.c: Likewise - * gcc.dg/pr69634.c: Likewise - * gcc.target/i386/amd64-abi-1.c: Likewise - * gcc.target/i386/funcspec-6.c: Likewise - * gcc.target/i386/interrupt-387-err-1.c: Likewise - * gcc.target/i386/isa-14.c: Likewise - * gcc.target/i386/pr44948-2b.c: Likewise - * gcc.target/i386/pr53425-1.c: Likewise - * gcc.target/i386/pr53425-2.c: Likewise - * gcc.target/i386/pr55247.c: Likewise - * gcc.target/i386/pr59644.c: Likewise - * gcc.target/i386/pr62120.c: Likewise - * gcc.target/i386/pr70467-1.c: Likewise - * gcc.target/i386/warn-vect-op-1.c: Likewise - -If -Wall, -Werror are used during compilation various test cases fail -to compile. - -If SSE is disabled, be sure to -mfpmath=387 to resolve this. - -This patch removes the changes to Changelog from the original patch. -This will help us avoid conflicts. - -Upstream-Status: Pending - -Signed-off-by: Mark Hatle ---- - gcc/testsuite/gcc.dg/pr56275.c | 2 +- - gcc/testsuite/gcc.dg/pr68306-2.c | 2 +- - gcc/testsuite/gcc.dg/pr68306-3.c | 2 +- - gcc/testsuite/gcc.dg/pr68306.c | 2 +- - gcc/testsuite/gcc.dg/pr69634.c | 2 +- - gcc/testsuite/gcc.target/i386/amd64-abi-1.c | 2 +- - gcc/testsuite/gcc.target/i386/funcspec-6.c | 1 + - gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c | 2 +- - gcc/testsuite/gcc.target/i386/isa-14.c | 2 +- - gcc/testsuite/gcc.target/i386/pr44948-2b.c | 2 +- - gcc/testsuite/gcc.target/i386/pr53425-1.c | 2 +- - gcc/testsuite/gcc.target/i386/pr53425-2.c | 2 +- - gcc/testsuite/gcc.target/i386/pr55247.c | 2 +- - gcc/testsuite/gcc.target/i386/pr59644.c | 2 +- - gcc/testsuite/gcc.target/i386/pr62120.c | 2 +- - gcc/testsuite/gcc.target/i386/pr70467-1.c | 2 +- - gcc/testsuite/gcc.target/i386/warn-vect-op-1.c | 2 +- - 17 files changed, 17 insertions(+), 16 deletions(-) - -diff --git a/gcc/testsuite/gcc.dg/pr56275.c b/gcc/testsuite/gcc.dg/pr56275.c -index b901bb2b199..a4f6c95e1a1 100644 ---- a/gcc/testsuite/gcc.dg/pr56275.c -+++ b/gcc/testsuite/gcc.dg/pr56275.c -@@ -1,6 +1,6 @@ - /* { dg-do compile } */ - /* { dg-options "-O2" } */ --/* { dg-additional-options "-mno-sse" { target { i?86-*-* x86_64-*-* } } } */ -+/* { dg-additional-options "-mno-sse -mfpmath=387" { target { i?86-*-* x86_64-*-* } } } */ - - typedef long long v2tw __attribute__ ((vector_size (2 * sizeof (long long)))); - -diff --git a/gcc/testsuite/gcc.dg/pr68306-2.c b/gcc/testsuite/gcc.dg/pr68306-2.c -index 4672ebe7987..2a368c484b6 100644 ---- a/gcc/testsuite/gcc.dg/pr68306-2.c -+++ b/gcc/testsuite/gcc.dg/pr68306-2.c -@@ -1,6 +1,6 @@ - /* { dg-do compile } */ - /* { dg-options "-O3" } */ --/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */ -+/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ - - struct { - int tz_minuteswest; -diff --git a/gcc/testsuite/gcc.dg/pr68306-3.c b/gcc/testsuite/gcc.dg/pr68306-3.c -index f5a8c102cf8..df3390c64c2 100644 ---- a/gcc/testsuite/gcc.dg/pr68306-3.c -+++ b/gcc/testsuite/gcc.dg/pr68306-3.c -@@ -1,6 +1,6 @@ - /* { dg-do compile } */ - /* { dg-options "-O3" } */ --/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */ -+/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ - /* { dg-additional-options "-mno-altivec -mno-vsx" { target powerpc*-*-* } } */ - - extern void fn2(); -diff --git a/gcc/testsuite/gcc.dg/pr68306.c b/gcc/testsuite/gcc.dg/pr68306.c -index 54e5b40f221..0813389e2c1 100644 ---- a/gcc/testsuite/gcc.dg/pr68306.c -+++ b/gcc/testsuite/gcc.dg/pr68306.c -@@ -1,6 +1,6 @@ - /* { dg-do compile } */ - /* { dg-options "-O3" } */ --/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */ -+/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ - - enum powerpc_pmc_type { PPC_PMC_IBM }; - struct { -diff --git a/gcc/testsuite/gcc.dg/pr69634.c b/gcc/testsuite/gcc.dg/pr69634.c -index 60a56149463..bcc23f9ccd6 100644 ---- a/gcc/testsuite/gcc.dg/pr69634.c -+++ b/gcc/testsuite/gcc.dg/pr69634.c -@@ -1,6 +1,6 @@ - /* { dg-do compile } */ - /* { dg-options "-O2 -fno-dce -fschedule-insns -fno-tree-vrp -fcompare-debug -Wno-psabi" } */ --/* { dg-additional-options "-mno-sse" { target i?86-*-* x86_64-*-* } } */ -+/* { dg-additional-options "-mno-sse -mfpmath=387" { target i?86-*-* x86_64-*-* } } */ - /* { dg-require-effective-target scheduling } */ - - typedef unsigned short u16; -diff --git a/gcc/testsuite/gcc.target/i386/amd64-abi-1.c b/gcc/testsuite/gcc.target/i386/amd64-abi-1.c -index 69fde57bf06..7f1f1c03edf 100644 ---- a/gcc/testsuite/gcc.target/i386/amd64-abi-1.c -+++ b/gcc/testsuite/gcc.target/i386/amd64-abi-1.c -@@ -1,5 +1,5 @@ - /* { dg-do compile { target { ! ia32 } } } */ --/* { dg-options "-mno-sse" } */ -+/* { dg-options "-mno-sse -mfpmath=387" } */ - /* { dg-additional-options "-mabi=sysv" { target *-*-mingw* } } */ - - double foo(void) { return 0; } /* { dg-error "SSE disabled" } */ -diff --git a/gcc/testsuite/gcc.target/i386/funcspec-6.c b/gcc/testsuite/gcc.target/i386/funcspec-6.c -index ea896b7ebfd..bf15569b826 100644 ---- a/gcc/testsuite/gcc.target/i386/funcspec-6.c -+++ b/gcc/testsuite/gcc.target/i386/funcspec-6.c -@@ -1,6 +1,7 @@ - /* Test whether all of the 64-bit function specific options are accepted - without error. */ - /* { dg-do compile { target { ! ia32 } } } */ -+/* { dg-additional-options "-mfpmath=387" } */ - - #include "funcspec-56.inc" - -diff --git a/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c b/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c -index 8561a3c26d6..6377f814645 100644 ---- a/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c -+++ b/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c -@@ -1,5 +1,5 @@ - /* { dg-do compile } */ --/* { dg-options "-O2 -mgeneral-regs-only -mno-cld -mno-iamcu -m80387" } */ -+/* { dg-options "-O2 -mgeneral-regs-only -mno-cld -mno-iamcu -m80387 -mfpmath=387" } */ - - typedef unsigned int uword_t __attribute__ ((mode (__word__))); - -diff --git a/gcc/testsuite/gcc.target/i386/isa-14.c b/gcc/testsuite/gcc.target/i386/isa-14.c -index 5d49e6e77fe..1de2db92bdd 100644 ---- a/gcc/testsuite/gcc.target/i386/isa-14.c -+++ b/gcc/testsuite/gcc.target/i386/isa-14.c -@@ -1,5 +1,5 @@ - /* { dg-do run } */ --/* { dg-options "-march=x86-64 -msse4a -mfma4 -mno-sse" } */ -+/* { dg-options "-march=x86-64 -msse4a -mfma4 -mno-sse -mfpmath=387" } */ - - extern void abort (void); - -diff --git a/gcc/testsuite/gcc.target/i386/pr44948-2b.c b/gcc/testsuite/gcc.target/i386/pr44948-2b.c -index fa1769b62fb..f79fb12726f 100644 ---- a/gcc/testsuite/gcc.target/i386/pr44948-2b.c -+++ b/gcc/testsuite/gcc.target/i386/pr44948-2b.c -@@ -1,5 +1,5 @@ - /* { dg-do compile } */ --/* { dg-options "-O -mno-sse -Wno-psabi -mtune=generic" } */ -+/* { dg-options "-O -mno-sse -Wno-psabi -mtune=generic -mfpmath=387" } */ - - struct A - { -diff --git a/gcc/testsuite/gcc.target/i386/pr53425-1.c b/gcc/testsuite/gcc.target/i386/pr53425-1.c -index 2e89ff7d81d..6339bf6b736 100644 ---- a/gcc/testsuite/gcc.target/i386/pr53425-1.c -+++ b/gcc/testsuite/gcc.target/i386/pr53425-1.c -@@ -1,6 +1,6 @@ - /* PR target/53425 */ - /* { dg-do compile { target { ! ia32 } } } */ --/* { dg-options "-O2 -mno-sse" } */ -+/* { dg-options "-O2 -mno-sse -mfpmath=387" } */ - /* { dg-skip-if "no SSE vector" { x86_64-*-mingw* } } */ - - typedef double __v2df __attribute__ ((__vector_size__ (16))); -diff --git a/gcc/testsuite/gcc.target/i386/pr53425-2.c b/gcc/testsuite/gcc.target/i386/pr53425-2.c -index 61f6283dbe9..2c5a55f0ac3 100644 ---- a/gcc/testsuite/gcc.target/i386/pr53425-2.c -+++ b/gcc/testsuite/gcc.target/i386/pr53425-2.c -@@ -1,6 +1,6 @@ - /* PR target/53425 */ - /* { dg-do compile { target { ! ia32 } } } */ --/* { dg-options "-O2 -mno-sse" } */ -+/* { dg-options "-O2 -mno-sse -mfpmath=387" } */ - /* { dg-skip-if "no SSE vector" { x86_64-*-mingw* } } */ - - typedef float __v2sf __attribute__ ((__vector_size__ (8))); -diff --git a/gcc/testsuite/gcc.target/i386/pr55247.c b/gcc/testsuite/gcc.target/i386/pr55247.c -index 23366d0909d..9810e3abb76 100644 ---- a/gcc/testsuite/gcc.target/i386/pr55247.c -+++ b/gcc/testsuite/gcc.target/i386/pr55247.c -@@ -1,6 +1,6 @@ - /* { dg-do compile { target { ! ia32 } } } */ - /* { dg-require-effective-target maybe_x32 } */ --/* { dg-options "-O2 -mno-sse -mno-mmx -mx32 -maddress-mode=long" } */ -+/* { dg-options "-O2 -mno-sse -mno-mmx -mx32 -maddress-mode=long -mfpmath=387" } */ - - typedef unsigned int uint32_t; - typedef uint32_t Elf32_Word; -diff --git a/gcc/testsuite/gcc.target/i386/pr59644.c b/gcc/testsuite/gcc.target/i386/pr59644.c -index 96006b3e338..4287e4538bf 100644 ---- a/gcc/testsuite/gcc.target/i386/pr59644.c -+++ b/gcc/testsuite/gcc.target/i386/pr59644.c -@@ -1,6 +1,6 @@ - /* PR target/59644 */ - /* { dg-do run { target lp64 } } */ --/* { dg-options "-O2 -ffreestanding -mno-sse -mpreferred-stack-boundary=3 -maccumulate-outgoing-args -mno-red-zone" } */ -+/* { dg-options "-O2 -ffreestanding -mno-sse -mpreferred-stack-boundary=3 -maccumulate-outgoing-args -mno-red-zone -mfpmath=387" } */ - - /* This test uses __builtin_trap () instead of e.g. abort, - because due to -mpreferred-stack-boundary=3 it should not call -diff --git a/gcc/testsuite/gcc.target/i386/pr62120.c b/gcc/testsuite/gcc.target/i386/pr62120.c -index bfb8c4703eb..ed04cf181f3 100644 ---- a/gcc/testsuite/gcc.target/i386/pr62120.c -+++ b/gcc/testsuite/gcc.target/i386/pr62120.c -@@ -1,5 +1,5 @@ - /* { dg-do compile } */ --/* { dg-options "-mno-sse" } */ -+/* { dg-options "-mno-sse -mfpmath=387" } */ - - void foo () - { -diff --git a/gcc/testsuite/gcc.target/i386/pr70467-1.c b/gcc/testsuite/gcc.target/i386/pr70467-1.c -index 4e112c88d07..bcfb396a68d 100644 ---- a/gcc/testsuite/gcc.target/i386/pr70467-1.c -+++ b/gcc/testsuite/gcc.target/i386/pr70467-1.c -@@ -1,6 +1,6 @@ - /* PR rtl-optimization/70467 */ - /* { dg-do compile } */ --/* { dg-options "-O2 -mno-sse" } */ -+/* { dg-options "-O2 -mno-sse -mfpmath=387" } */ - - void foo (unsigned long long *); - -diff --git a/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c b/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c -index 6cda1534311..26e37f5b8ba 100644 ---- a/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c -+++ b/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c -@@ -1,5 +1,5 @@ - /* { dg-do compile { target { ! ia32 } } } */ --/* { dg-options "-mno-sse -Wvector-operation-performance" } */ -+/* { dg-options "-mno-sse -Wvector-operation-performance -mfpmath=387" } */ - #define vector(elcount, type) \ - __attribute__((vector_size((elcount)*sizeof(type)))) type - --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0036-Re-introduce-spe-commandline-options.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0036-Re-introduce-spe-commandline-options.patch deleted file mode 100644 index 825e070aa..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0036-Re-introduce-spe-commandline-options.patch +++ /dev/null @@ -1,41 +0,0 @@ -From dc23cabac6a7b2ca85b02d2a58a8916c98f382e0 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 6 Jun 2018 12:10:22 -0700 -Subject: [PATCH 36/39] Re-introduce spe commandline options - -This should ensure that we keep accepting -spe options - -Upstream-Status: Inappropriate [SPE port is removed from rs600 port] - -Signed-off-by: Khem Raj ---- - gcc/config/rs6000/rs6000.opt | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt -index f4b5c91e11f..69869350fce 100644 ---- a/gcc/config/rs6000/rs6000.opt -+++ b/gcc/config/rs6000/rs6000.opt -@@ -345,6 +345,18 @@ mdebug= - Target RejectNegative Joined - -mdebug= Enable debug output. - -+mspe -+Target Var(rs6000_spe) Save -+Generate SPE SIMD instructions on E500. -+ -+mabi=spe -+Target RejectNegative Var(rs6000_spe_abi) Save -+Use the SPE ABI extensions. -+ -+mabi=no-spe -+Target RejectNegative Var(rs6000_spe_abi, 0) -+Do not use the SPE ABI extensions. -+ - mabi=altivec - Target RejectNegative Var(rs6000_altivec_abi) Save - Use the AltiVec ABI extensions. --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch deleted file mode 100644 index f268a4eb5..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch +++ /dev/null @@ -1,48 +0,0 @@ -From ac4af583bd59f6631671ad4abf985799ce4a53d9 Mon Sep 17 00:00:00 2001 -From: rguenth -Date: Thu, 25 Jul 2019 10:46:54 +0000 -Subject: [PATCH 37/39] CVE-2019-14250: Check zero value in - simple_object_elf_match - -2019-07-25 Richard Biener - - PR lto/90924 - Backport from mainline - 2019-07-12 Ren Kimura - - * simple-object-elf.c (simple_object_elf_match): Check zero value - shstrndx. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-9-branch@273793 138bc75d-0d04-0410-961f-82ee72b054a4 - -Upstream-Status: Backport -Affectes: < 9.2 -CVE: CVE-2019-14250 -Dropped changelog -Signed-off-by: Armin Kuster ---- - libiberty/simple-object-elf.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/libiberty/simple-object-elf.c b/libiberty/simple-object-elf.c -index 3d49f339631..c00cebdb6c7 100644 ---- a/libiberty/simple-object-elf.c -+++ b/libiberty/simple-object-elf.c -@@ -557,6 +557,14 @@ simple_object_elf_match (unsigned char header[SIMPLE_OBJECT_MATCH_HEADER_LEN], - return NULL; - } - -+ if (eor->shstrndx == 0) -+ { -+ *errmsg = "invalid ELF shstrndx == 0"; -+ *err = 0; -+ XDELETE (eor); -+ return NULL; -+ } -+ - return (void *) eor; - } - --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch deleted file mode 100644 index a79fc03d1..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch +++ /dev/null @@ -1,185 +0,0 @@ -From 075e0929e04913538391052c32178b6a14ef0ae3 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Thu, 12 Mar 2020 14:41:40 -0700 -Subject: [PATCH 38/39] gentypes/genmodes: Do not use __LINE__ for maintaining - reproducibility - -Inserting line numbers into generated code means its not always reproducible wth -differing versions of host gcc. Void the issue by not adding these. - -Upstream-Status: Inappropriate [OE Reproducibility specific] - -Signed-off-by: Richard Purdie -Signed-off-by: Khem Raj ---- - gcc/gengtype.c | 6 +++--- - gcc/genmodes.c | 32 ++++++++++++++++---------------- - 2 files changed, 19 insertions(+), 19 deletions(-) - -diff --git a/gcc/gengtype.c b/gcc/gengtype.c -index 53317337cf8..bbb26151671 100644 ---- a/gcc/gengtype.c -+++ b/gcc/gengtype.c -@@ -991,7 +991,7 @@ create_field_at (pair_p next, type_p type, const char *name, options_p opt, - /* Create a fake field with the given type and name. NEXT is the next - field in the chain. */ - #define create_field(next,type,name) \ -- create_field_all (next,type,name, 0, this_file, __LINE__) -+ create_field_all (next,type,name, 0, this_file, 0) - - /* Like create_field, but the field is only valid when condition COND - is true. */ -@@ -1024,7 +1024,7 @@ create_optional_field_ (pair_p next, type_p type, const char *name, - } - - #define create_optional_field(next,type,name,cond) \ -- create_optional_field_(next,type,name,cond,__LINE__) -+ create_optional_field_(next,type,name,cond,0) - - /* Reverse a linked list of 'struct pair's in place. */ - pair_p -@@ -5186,7 +5186,7 @@ main (int argc, char **argv) - /* These types are set up with #define or else outside of where - we can see them. We should initialize them before calling - read_input_list. */ --#define POS_HERE(Call) do { pos.file = this_file; pos.line = __LINE__; \ -+#define POS_HERE(Call) do { pos.file = this_file; pos.line = 0; \ - Call;} while (0) - POS_HERE (do_scalar_typedef ("CUMULATIVE_ARGS", &pos)); - POS_HERE (do_scalar_typedef ("REAL_VALUE_TYPE", &pos)); -diff --git a/gcc/genmodes.c b/gcc/genmodes.c -index f33eefa2494..07bef9eebe2 100644 ---- a/gcc/genmodes.c -+++ b/gcc/genmodes.c -@@ -429,7 +429,7 @@ complete_all_modes (void) - } - - /* For each mode in class CLASS, construct a corresponding complex mode. */ --#define COMPLEX_MODES(C) make_complex_modes (MODE_##C, __FILE__, __LINE__) -+#define COMPLEX_MODES(C) make_complex_modes (MODE_##C, __FILE__, 0) - static void - make_complex_modes (enum mode_class cl, - const char *file, unsigned int line) -@@ -487,7 +487,7 @@ make_complex_modes (enum mode_class cl, - /* For all modes in class CL, construct vector modes of width - WIDTH, having as many components as necessary. */ - #define VECTOR_MODES_WITH_PREFIX(PREFIX, C, W) \ -- make_vector_modes (MODE_##C, #PREFIX, W, __FILE__, __LINE__) -+ make_vector_modes (MODE_##C, #PREFIX, W, __FILE__, 0) - #define VECTOR_MODES(C, W) VECTOR_MODES_WITH_PREFIX (V, C, W) - static void ATTRIBUTE_UNUSED - make_vector_modes (enum mode_class cl, const char *prefix, unsigned int width, -@@ -538,7 +538,7 @@ make_vector_modes (enum mode_class cl, const char *prefix, unsigned int width, - /* Create a vector of booleans called NAME with COUNT elements and - BYTESIZE bytes in total. */ - #define VECTOR_BOOL_MODE(NAME, COUNT, BYTESIZE) \ -- make_vector_bool_mode (#NAME, COUNT, BYTESIZE, __FILE__, __LINE__) -+ make_vector_bool_mode (#NAME, COUNT, BYTESIZE, __FILE__, 0) - static void ATTRIBUTE_UNUSED - make_vector_bool_mode (const char *name, unsigned int count, - unsigned int bytesize, const char *file, -@@ -560,7 +560,7 @@ make_vector_bool_mode (const char *name, unsigned int count, - /* Input. */ - - #define _SPECIAL_MODE(C, N) \ -- make_special_mode (MODE_##C, #N, __FILE__, __LINE__) -+ make_special_mode (MODE_##C, #N, __FILE__, 0) - #define RANDOM_MODE(N) _SPECIAL_MODE (RANDOM, N) - #define CC_MODE(N) _SPECIAL_MODE (CC, N) - -@@ -573,7 +573,7 @@ make_special_mode (enum mode_class cl, const char *name, - - #define INT_MODE(N, Y) FRACTIONAL_INT_MODE (N, -1U, Y) - #define FRACTIONAL_INT_MODE(N, B, Y) \ -- make_int_mode (#N, B, Y, __FILE__, __LINE__) -+ make_int_mode (#N, B, Y, __FILE__, 0) - - static void - make_int_mode (const char *name, -@@ -586,16 +586,16 @@ make_int_mode (const char *name, - } - - #define FRACT_MODE(N, Y, F) \ -- make_fixed_point_mode (MODE_FRACT, #N, Y, 0, F, __FILE__, __LINE__) -+ make_fixed_point_mode (MODE_FRACT, #N, Y, 0, F, __FILE__, 0) - - #define UFRACT_MODE(N, Y, F) \ -- make_fixed_point_mode (MODE_UFRACT, #N, Y, 0, F, __FILE__, __LINE__) -+ make_fixed_point_mode (MODE_UFRACT, #N, Y, 0, F, __FILE__, 0) - - #define ACCUM_MODE(N, Y, I, F) \ -- make_fixed_point_mode (MODE_ACCUM, #N, Y, I, F, __FILE__, __LINE__) -+ make_fixed_point_mode (MODE_ACCUM, #N, Y, I, F, __FILE__, 0) - - #define UACCUM_MODE(N, Y, I, F) \ -- make_fixed_point_mode (MODE_UACCUM, #N, Y, I, F, __FILE__, __LINE__) -+ make_fixed_point_mode (MODE_UACCUM, #N, Y, I, F, __FILE__, 0) - - /* Create a fixed-point mode by setting CL, NAME, BYTESIZE, IBIT, FBIT, - FILE, and LINE. */ -@@ -616,7 +616,7 @@ make_fixed_point_mode (enum mode_class cl, - - #define FLOAT_MODE(N, Y, F) FRACTIONAL_FLOAT_MODE (N, -1U, Y, F) - #define FRACTIONAL_FLOAT_MODE(N, B, Y, F) \ -- make_float_mode (#N, B, Y, #F, __FILE__, __LINE__) -+ make_float_mode (#N, B, Y, #F, __FILE__, 0) - - static void - make_float_mode (const char *name, -@@ -633,7 +633,7 @@ make_float_mode (const char *name, - #define DECIMAL_FLOAT_MODE(N, Y, F) \ - FRACTIONAL_DECIMAL_FLOAT_MODE (N, -1U, Y, F) - #define FRACTIONAL_DECIMAL_FLOAT_MODE(N, B, Y, F) \ -- make_decimal_float_mode (#N, B, Y, #F, __FILE__, __LINE__) -+ make_decimal_float_mode (#N, B, Y, #F, __FILE__, 0) - - static void - make_decimal_float_mode (const char *name, -@@ -648,7 +648,7 @@ make_decimal_float_mode (const char *name, - } - - #define RESET_FLOAT_FORMAT(N, F) \ -- reset_float_format (#N, #F, __FILE__, __LINE__) -+ reset_float_format (#N, #F, __FILE__, 0) - static void ATTRIBUTE_UNUSED - reset_float_format (const char *name, const char *format, - const char *file, unsigned int line) -@@ -669,7 +669,7 @@ reset_float_format (const char *name, const char *format, - - /* __intN support. */ - #define INT_N(M,PREC) \ -- make_int_n (#M, PREC, __FILE__, __LINE__) -+ make_int_n (#M, PREC, __FILE__, 0) - static void ATTRIBUTE_UNUSED - make_int_n (const char *m, int bitsize, - const char *file, unsigned int line) -@@ -698,7 +698,7 @@ make_int_n (const char *m, int bitsize, - /* Partial integer modes are specified by relation to a full integer - mode. */ - #define PARTIAL_INT_MODE(M,PREC,NAME) \ -- make_partial_integer_mode (#M, #NAME, PREC, __FILE__, __LINE__) -+ make_partial_integer_mode (#M, #NAME, PREC, __FILE__, 0) - static void ATTRIBUTE_UNUSED - make_partial_integer_mode (const char *base, const char *name, - unsigned int precision, -@@ -725,7 +725,7 @@ make_partial_integer_mode (const char *base, const char *name, - /* A single vector mode can be specified by naming its component - mode and the number of components. */ - #define VECTOR_MODE(C, M, N) \ -- make_vector_mode (MODE_##C, #M, N, __FILE__, __LINE__); -+ make_vector_mode (MODE_##C, #M, N, __FILE__, 0); - static void ATTRIBUTE_UNUSED - make_vector_mode (enum mode_class bclass, - const char *base, -@@ -768,7 +768,7 @@ make_vector_mode (enum mode_class bclass, - - /* Adjustability. */ - #define _ADD_ADJUST(A, M, X, C1, C2) \ -- new_adjust (#M, &adj_##A, #A, #X, MODE_##C1, MODE_##C2, __FILE__, __LINE__) -+ new_adjust (#M, &adj_##A, #A, #X, MODE_##C1, MODE_##C2, __FILE__, 0) - - #define ADJUST_NUNITS(M, X) _ADD_ADJUST (nunits, M, X, RANDOM, RANDOM) - #define ADJUST_BYTESIZE(M, X) _ADD_ADJUST (bytesize, M, X, RANDOM, RANDOM) --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.3/0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch b/poky/meta/recipes-devtools/gcc/gcc-9.3/0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch deleted file mode 100644 index b69114d1e..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-9.3/0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch +++ /dev/null @@ -1,100 +0,0 @@ -From e75bcc2ec4f1e7e081ce18713f0a25913ba15340 Mon Sep 17 00:00:00 2001 -From: Vladimir Makarov -Date: Wed, 10 Jul 2019 16:07:10 +0000 -Subject: [PATCH 39/39] process_alt_operands: Don't match user defined regs - only if they are early clobbers - -PR target/91102 (aarch64 ICE on Linux kernel with -Os starting with r270266) - -2019-07-10 Vladimir Makarov - - PR target/91102 - * lra-constraints.c (process_alt_operands): Don't match user - defined regs only if they are early clobbers. - -2019-07-10 Vladimir Makarov - - PR target/91102 - * gcc.target/aarch64/pr91102.c: New test. - -From-SVN: r273357 -Upstream-Status: Backport [https://github.com/gcc-mirror/gcc/commit/613caed2feb9cfc8158308670b59df3d031ec629] -[takondra: dropped conflicting ChangeLog changes] -Signed-off-by: Taras Kondratiuk ---- - gcc/lra-constraints.c | 17 ++++++++++---- - gcc/testsuite/gcc.target/aarch64/pr91102.c | 26 ++++++++++++++++++++++ - 2 files changed, 39 insertions(+), 4 deletions(-) - create mode 100644 gcc/testsuite/gcc.target/aarch64/pr91102.c - -diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c -index cf33da8013e..6382dbf852b 100644 ---- a/gcc/lra-constraints.c -+++ b/gcc/lra-constraints.c -@@ -2172,8 +2172,9 @@ process_alt_operands (int only_alternative) - else - { - /* Operands don't match. If the operands are -- different user defined explicit hard registers, -- then we cannot make them match. */ -+ different user defined explicit hard -+ registers, then we cannot make them match -+ when one is early clobber operand. */ - if ((REG_P (*curr_id->operand_loc[nop]) - || SUBREG_P (*curr_id->operand_loc[nop])) - && (REG_P (*curr_id->operand_loc[m]) -@@ -2192,9 +2193,17 @@ process_alt_operands (int only_alternative) - && REG_P (m_reg) - && HARD_REGISTER_P (m_reg) - && REG_USERVAR_P (m_reg)) -- break; -+ { -+ int i; -+ -+ for (i = 0; i < early_clobbered_regs_num; i++) -+ if (m == early_clobbered_nops[i]) -+ break; -+ if (i < early_clobbered_regs_num -+ || early_clobber_p) -+ break; -+ } - } -- - /* Both operands must allow a reload register, - otherwise we cannot make them match. */ - if (curr_alt[m] == NO_REGS) -diff --git a/gcc/testsuite/gcc.target/aarch64/pr91102.c b/gcc/testsuite/gcc.target/aarch64/pr91102.c -new file mode 100644 -index 00000000000..70b99045a48 ---- /dev/null -+++ b/gcc/testsuite/gcc.target/aarch64/pr91102.c -@@ -0,0 +1,26 @@ -+/* PR target/91102 */ -+/* { dg-do compile } */ -+/* { dg-options "-O2" } */ -+ -+int -+foo (long d, long l) -+{ -+ register long e asm ("x1") = d; -+ register long f asm("x2") = l; -+ asm ("" : : "r" (e), "r" (f)); -+ return 3; -+} -+ -+struct T { int i; int j; }; -+union S { long h; struct T t; }; -+ -+void -+bar (union S b) -+{ -+ while (1) -+ { -+ union S c = b; -+ c.t.j++; -+ b.h = foo (b.h, c.h); -+ } -+} --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc index a64c4caf0..6cb40fcb7 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc @@ -34,6 +34,7 @@ EXTRA_OECONF = "\ --program-prefix=${TARGET_PREFIX} \ --without-local-prefix \ --disable-install-libiberty \ + --with-specs=%{!fno-common:%{!fcommon:-fcommon}} \ ${EXTRA_OECONF_BASE} \ ${EXTRA_OECONF_GCC_FLOAT} \ ${EXTRA_OECONF_PATHS} \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.1.bb new file mode 100644 index 000000000..bf53c5cd7 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.1.bb @@ -0,0 +1,5 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require gcc-cross-canadian.inc + + + diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_9.3.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_9.3.bb deleted file mode 100644 index bf53c5cd7..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_9.3.bb +++ /dev/null @@ -1,5 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require gcc-cross-canadian.inc - - - diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb new file mode 100644 index 000000000..b43cca0c5 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb @@ -0,0 +1,3 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require gcc-cross.inc + diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross_9.3.bb b/poky/meta/recipes-devtools/gcc/gcc-cross_9.3.bb deleted file mode 100644 index b43cca0c5..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-cross_9.3.bb +++ /dev/null @@ -1,3 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require gcc-cross.inc - diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb new file mode 100644 index 000000000..40a6c4fef --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb @@ -0,0 +1,2 @@ +require recipes-devtools/gcc/gcc-cross_${PV}.bb +require gcc-crosssdk.inc diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_9.3.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_9.3.bb deleted file mode 100644 index 40a6c4fef..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_9.3.bb +++ /dev/null @@ -1,2 +0,0 @@ -require recipes-devtools/gcc/gcc-cross_${PV}.bb -require gcc-crosssdk.inc diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc index ace706dbf..38c167287 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc @@ -18,6 +18,10 @@ EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu" EXTRA_OECONF_append = " --cache-file=${B}/config.cache" EXTRA_OECONF_append_libc-newlib = " --with-newlib" +# cortex-a55 is ARMv8.2-a based but libatomic explicitly asks for -march=armv8.1-a +# which caused -march conflicts in gcc +TUNE_CCARGS_remove = "-mcpu=cortex-a55+crc -mcpu=cortex-a55 -mcpu=cortex-a55+crc+crypto" + # Disable ifuncs for libatomic on arm conflicts -march/-mcpu EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no " EXTRA_OECONF_append_armeb = " libat_cv_have_ifunc=no " @@ -259,6 +263,7 @@ FILES_libgomp-dev = "\ ${libdir}/libgomp*${SOLIBSDEV} \ ${libdir}/libgomp*.la \ ${libdir}/libgomp.spec \ + ${libdir}/${TARGET_SYS}/${BINV}/include/acc_prof.h \ ${libdir}/${TARGET_SYS}/${BINV}/include/omp.h \ ${libdir}/${TARGET_SYS}/${BINV}/include/openacc.h \ " diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb new file mode 100644 index 000000000..dd430b57e --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb @@ -0,0 +1,2 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require gcc-runtime.inc diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime_9.3.bb b/poky/meta/recipes-devtools/gcc/gcc-runtime_9.3.bb deleted file mode 100644 index dd430b57e..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-runtime_9.3.bb +++ /dev/null @@ -1,2 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require gcc-runtime.inc diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.1.bb new file mode 100644 index 000000000..f3c705811 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.1.bb @@ -0,0 +1,7 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require gcc-sanitizers.inc + +# Building with thumb enabled on armv4t armv5t fails with +# sanitizer_linux.s:5749: Error: lo register required -- `ldr ip,[sp],#8' +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_9.3.bb b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_9.3.bb deleted file mode 100644 index f3c705811..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_9.3.bb +++ /dev/null @@ -1,7 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require gcc-sanitizers.inc - -# Building with thumb enabled on armv4t armv5t fails with -# sanitizer_linux.s:5749: Error: lo register required -- `ldr ip,[sp],#8' -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" diff --git a/poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb new file mode 100644 index 000000000..b890fa33e --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb @@ -0,0 +1,4 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require recipes-devtools/gcc/gcc-source.inc + +EXCLUDE_FROM_WORLD = "1" diff --git a/poky/meta/recipes-devtools/gcc/gcc-source_9.3.bb b/poky/meta/recipes-devtools/gcc/gcc-source_9.3.bb deleted file mode 100644 index b890fa33e..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-source_9.3.bb +++ /dev/null @@ -1,4 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require recipes-devtools/gcc/gcc-source.inc - -EXCLUDE_FROM_WORLD = "1" diff --git a/poky/meta/recipes-devtools/gcc/gcc-target.inc b/poky/meta/recipes-devtools/gcc/gcc-target.inc index 6263e8149..1e25dad86 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-target.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-target.inc @@ -42,6 +42,7 @@ PACKAGES = "\ FILES_${PN} = "\ ${bindir}/${TARGET_PREFIX}gcc* \ + ${bindir}/${TARGET_PREFIX}lto* \ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2* \ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus \ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/lto* \ diff --git a/poky/meta/recipes-devtools/gcc/gcc_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc_10.1.bb new file mode 100644 index 000000000..7d9359058 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc_10.1.bb @@ -0,0 +1,14 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require gcc-target.inc + +# Building with thumb enabled on armv4t armv5t fails with +# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7438:(.text.unlikely+0x2fa): relocation truncated to fit: R_ARM_THM_CALL against symbol `fancy_abort(char const*, int, char const*)' defined in .glue_7 section in linker stubs +# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" + +ARMFPARCHEXT_armv6 = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}" +ARMFPARCHEXT_armv7a = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}" +ARMFPARCHEXT_armv7ve = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}" + +BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-devtools/gcc/gcc_9.3.bb b/poky/meta/recipes-devtools/gcc/gcc_9.3.bb deleted file mode 100644 index 7d9359058..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc_9.3.bb +++ /dev/null @@ -1,14 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require gcc-target.inc - -# Building with thumb enabled on armv4t armv5t fails with -# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7438:(.text.unlikely+0x2fa): relocation truncated to fit: R_ARM_THM_CALL against symbol `fancy_abort(char const*, int, char const*)' defined in .glue_7 section in linker stubs -# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" - -ARMFPARCHEXT_armv6 = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}" -ARMFPARCHEXT_armv7a = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}" -ARMFPARCHEXT_armv7ve = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}" - -BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial_10.1.bb b/poky/meta/recipes-devtools/gcc/libgcc-initial_10.1.bb new file mode 100644 index 000000000..0c698c26e --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/libgcc-initial_10.1.bb @@ -0,0 +1,5 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require libgcc-initial.inc + +# Building with thumb enabled on armv6t fails +ARM_INSTRUCTION_SET_armv6 = "arm" diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial_9.3.bb b/poky/meta/recipes-devtools/gcc/libgcc-initial_9.3.bb deleted file mode 100644 index 0c698c26e..000000000 --- a/poky/meta/recipes-devtools/gcc/libgcc-initial_9.3.bb +++ /dev/null @@ -1,5 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require libgcc-initial.inc - -# Building with thumb enabled on armv6t fails -ARM_INSTRUCTION_SET_armv6 = "arm" diff --git a/poky/meta/recipes-devtools/gcc/libgcc_10.1.bb b/poky/meta/recipes-devtools/gcc/libgcc_10.1.bb new file mode 100644 index 000000000..ea210a113 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/libgcc_10.1.bb @@ -0,0 +1,5 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require libgcc.inc + +# Building with thumb enabled on armv6t fails +ARM_INSTRUCTION_SET_armv6 = "arm" diff --git a/poky/meta/recipes-devtools/gcc/libgcc_9.3.bb b/poky/meta/recipes-devtools/gcc/libgcc_9.3.bb deleted file mode 100644 index ea210a113..000000000 --- a/poky/meta/recipes-devtools/gcc/libgcc_9.3.bb +++ /dev/null @@ -1,5 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require libgcc.inc - -# Building with thumb enabled on armv6t fails -ARM_INSTRUCTION_SET_armv6 = "arm" diff --git a/poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb b/poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb new file mode 100644 index 000000000..71dd8b4bd --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb @@ -0,0 +1,3 @@ +require recipes-devtools/gcc/gcc-${PV}.inc +require libgfortran.inc + diff --git a/poky/meta/recipes-devtools/gcc/libgfortran_9.3.bb b/poky/meta/recipes-devtools/gcc/libgfortran_9.3.bb deleted file mode 100644 index 71dd8b4bd..000000000 --- a/poky/meta/recipes-devtools/gcc/libgfortran_9.3.bb +++ /dev/null @@ -1,3 +0,0 @@ -require recipes-devtools/gcc/gcc-${PV}.inc -require libgfortran.inc - diff --git a/poky/meta/recipes-devtools/git/git.inc b/poky/meta/recipes-devtools/git/git.inc index 4131c9897..544e23c84 100644 --- a/poky/meta/recipes-devtools/git/git.inc +++ b/poky/meta/recipes-devtools/git/git.inc @@ -21,6 +21,7 @@ PACKAGECONFIG[svn] = "" EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \ --without-tcltk \ + --without-iconv \ " EXTRA_OECONF_append_class-nativesdk = " --with-gitconfig=/etc/gitconfig " diff --git a/poky/meta/recipes-devtools/git/git_2.24.1.bb b/poky/meta/recipes-devtools/git/git_2.24.1.bb deleted file mode 100644 index daea31eab..000000000 --- a/poky/meta/recipes-devtools/git/git_2.24.1.bb +++ /dev/null @@ -1,11 +0,0 @@ -require git.inc - -EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \ - ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \ - " -EXTRA_OEMAKE += "NO_GETTEXT=1" - -SRC_URI[tarball.md5sum] = "166bde96adbbc11c8843d4f8f4f9811b" -SRC_URI[tarball.sha256sum] = "ad5334956301c86841eb1e5b1bb20884a6bad89a10a6762c958220c7cf64da02" -SRC_URI[manpages.md5sum] = "31c2272a8979022497ba3d4202df145d" -SRC_URI[manpages.sha256sum] = "9a7ae3a093bea39770eb96ca3e5b40bff7af0b9f6123f089d7821d0e5b8e1230" diff --git a/poky/meta/recipes-devtools/git/git_2.26.2.bb b/poky/meta/recipes-devtools/git/git_2.26.2.bb new file mode 100644 index 000000000..ae7aa267b --- /dev/null +++ b/poky/meta/recipes-devtools/git/git_2.26.2.bb @@ -0,0 +1,10 @@ +require git.inc + +EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \ + ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \ + " +EXTRA_OEMAKE += "NO_GETTEXT=1" + +SRC_URI[tarball.sha256sum] = "e1c17777528f55696815ef33587b1d20f5eec246669f3b839d15dbfffad9c121" +SRC_URI[manpages.sha256sum] = "b3c6cfc980f3c593d0cd0c63e0c97d6f1cafe7b72321fc3a94948758b9529c5b" + diff --git a/poky/meta/recipes-devtools/libcomps/libcomps/0001-Add-crc32.c-to-sources-list.patch b/poky/meta/recipes-devtools/libcomps/libcomps/0001-Add-crc32.c-to-sources-list.patch index ff90269a2..f4fb6d3b2 100644 --- a/poky/meta/recipes-devtools/libcomps/libcomps/0001-Add-crc32.c-to-sources-list.patch +++ b/poky/meta/recipes-devtools/libcomps/libcomps/0001-Add-crc32.c-to-sources-list.patch @@ -1,7 +1,7 @@ -From 83407aa50e06d967d0a1095a140bd7b0e5d51d27 Mon Sep 17 00:00:00 2001 +From 72065bb2b5881dc224299f302379391aebdfca3d Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 21 Nov 2018 13:09:05 +0100 -Subject: [PATCH] Add crc32.c to sources list +Subject: [PATCH 1/2] Add crc32.c to sources list Otherwise, there is a missing symbol runtime error under musl C library. @@ -13,7 +13,7 @@ Signed-off-by: Alexander Kanavin 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libcomps/src/python/src/CMakeLists.txt b/libcomps/src/python/src/CMakeLists.txt -index 6ed25bb..c15c8b2 100644 +index adabb31..b9b96ab 100644 --- a/libcomps/src/python/src/CMakeLists.txt +++ b/libcomps/src/python/src/CMakeLists.txt @@ -9,13 +9,13 @@ set (pycomps_SRCDIR ${CMAKE_CURRENT_SOURCE_DIR}) @@ -45,3 +45,6 @@ index d8f5e34..f266067 100644 static uint32_t crc32_tab[] = { 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, +-- +2.26.2 + diff --git a/poky/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch b/poky/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch deleted file mode 100644 index 59c09aa70..000000000 --- a/poky/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch +++ /dev/null @@ -1,25 +0,0 @@ -From b28859ea93110d52d8a87d7b5a6c8796d0d523ed Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Fri, 30 Dec 2016 18:22:09 +0200 -Subject: [PATCH] Do not set PYTHON_INSTALL_DIR by running python. - -Upstream-Status: Inappropriate [oe-core specific] -Signed-off-by: Alexander Kanavin - ---- - libcomps/src/python/src/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libcomps/src/python/src/CMakeLists.txt b/libcomps/src/python/src/CMakeLists.txt -index fa590ae..6913214 100644 ---- a/libcomps/src/python/src/CMakeLists.txt -+++ b/libcomps/src/python/src/CMakeLists.txt -@@ -117,7 +117,7 @@ IF (SKBUILD) - INSTALL(FILES libcomps/__init__.py DESTINATION libcomps/src/python/src/libcomps) - INSTALL(TARGETS pycomps LIBRARY DESTINATION libcomps/src/python/src/libcomps) - ELSE () -- EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) -+ #EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) - - INSTALL(FILES ${pycomps_SRCDIR}/libcomps/__init__.py DESTINATION ${PYTHON_INSTALL_DIR}/libcomps) - #INSTALL(FILES ${pycomps_SRCDIR}/tests/__test.py DESTINATION diff --git a/poky/meta/recipes-devtools/libcomps/libcomps/0001-Make-__comps_objmrtree_all-static-inline.patch b/poky/meta/recipes-devtools/libcomps/libcomps/0001-Make-__comps_objmrtree_all-static-inline.patch deleted file mode 100644 index 88469fb33..000000000 --- a/poky/meta/recipes-devtools/libcomps/libcomps/0001-Make-__comps_objmrtree_all-static-inline.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 91a324f8771818b81017fdf4daaad0c8c4b6987c Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 20 Mar 2017 11:38:54 -0700 -Subject: [PATCH] Make __comps_objmrtree_all() static inline - -This helps compilers to scope the symbol correctly -and apply the inlining optimizations, clang e.g. -emits the functions and calls in code which is -suboptimal, therefore give a little help to compiler -this function is not used anywhere else to have -a global scope. - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - libcomps/src/comps_objmradix.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libcomps/src/comps_objmradix.c b/libcomps/src/comps_objmradix.c -index 9be6648..55f7793 100644 ---- a/libcomps/src/comps_objmradix.c -+++ b/libcomps/src/comps_objmradix.c -@@ -604,7 +604,7 @@ inline void comps_objmrtree_pair_destroy_v(void * pair) { - free(pair); - } - --inline COMPS_HSList* __comps_objmrtree_all(COMPS_ObjMRTree * rt, char keyvalpair) { -+static inline COMPS_HSList* __comps_objmrtree_all(COMPS_ObjMRTree * rt, char keyvalpair) { - COMPS_HSList *to_process, *ret; - COMPS_HSListItem *hsit, *oldit; - size_t x; --- -2.12.0 - diff --git a/poky/meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch b/poky/meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch new file mode 100644 index 000000000..3e9102605 --- /dev/null +++ b/poky/meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch @@ -0,0 +1,27 @@ +From 32447a79e24f8e7e9e0150eb747f34116d63ef38 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Fri, 30 Dec 2016 18:22:09 +0200 +Subject: [PATCH 2/2] Do not set PYTHON_INSTALL_DIR by running python. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + libcomps/src/python/src/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libcomps/src/python/src/CMakeLists.txt b/libcomps/src/python/src/CMakeLists.txt +index b9b96ab..6d44567 100644 +--- a/libcomps/src/python/src/CMakeLists.txt ++++ b/libcomps/src/python/src/CMakeLists.txt +@@ -115,7 +115,7 @@ IF (SKBUILD) + INSTALL(FILES libcomps/__init__.py DESTINATION libcomps/src/python/src/libcomps) + INSTALL(TARGETS pycomps LIBRARY DESTINATION libcomps/src/python/src/libcomps) + ELSE () +- EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) ++ #EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from distutils import sysconfig; stdout.write(sysconfig.get_python_lib(True))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) + + INSTALL(FILES ${pycomps_SRCDIR}/libcomps/__init__.py DESTINATION ${PYTHON_INSTALL_DIR}/libcomps) + #INSTALL(FILES ${pycomps_SRCDIR}/tests/__test.py DESTINATION +-- +2.26.2 + diff --git a/poky/meta/recipes-devtools/libcomps/libcomps_0.1.15.bb b/poky/meta/recipes-devtools/libcomps/libcomps_0.1.15.bb new file mode 100644 index 000000000..98c55dca8 --- /dev/null +++ b/poky/meta/recipes-devtools/libcomps/libcomps_0.1.15.bb @@ -0,0 +1,22 @@ +SUMMARY = "Libcomps is alternative for yum.comps library (which is for managing rpm package groups)." +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +SRC_URI = "git://github.com/rpm-software-management/libcomps.git \ + file://0001-Add-crc32.c-to-sources-list.patch \ + file://0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ + " + +SRCREV = "b213f749405d84e989b25e183bcf28ce701696dd" + +S = "${WORKDIR}/git" + +inherit cmake distutils3-base + +DEPENDS += "libxml2 expat libcheck" + +EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3" +OECMAKE_SOURCEPATH = "${S}/libcomps" + +BBCLASSEXTEND = "native nativesdk" + diff --git a/poky/meta/recipes-devtools/libcomps/libcomps_git.bb b/poky/meta/recipes-devtools/libcomps/libcomps_git.bb deleted file mode 100644 index 40b60159b..000000000 --- a/poky/meta/recipes-devtools/libcomps/libcomps_git.bb +++ /dev/null @@ -1,24 +0,0 @@ -SUMMARY = "Libcomps is alternative for yum.comps library (which is for managing rpm package groups)." -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -SRC_URI = "git://github.com/rpm-software-management/libcomps.git \ - file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ - file://0001-Make-__comps_objmrtree_all-static-inline.patch \ - file://0001-Add-crc32.c-to-sources-list.patch \ - " - -PV = "0.1.14" -SRCREV = "5a0e04286f3462e3308f2a332eb0f90a66920218" - -S = "${WORKDIR}/git" - -inherit cmake distutils3-base - -DEPENDS += "libxml2 expat libcheck" - -EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3" -OECMAKE_SOURCEPATH = "${S}/libcomps" - -BBCLASSEXTEND = "native nativesdk" - diff --git a/poky/meta/recipes-devtools/llvm/llvm_git.bb b/poky/meta/recipes-devtools/llvm/llvm_git.bb index a8607f500..d24ed761b 100644 --- a/poky/meta/recipes-devtools/llvm/llvm_git.bb +++ b/poky/meta/recipes-devtools/llvm/llvm_git.bb @@ -92,8 +92,6 @@ EXTRA_OECMAKE_append_class-nativesdk = "\ -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \ " -CFLAGS += "-fcommon" - do_configure_prepend() { # Fix paths in llvm-config sed -i "s|sys::path::parent_path(CurrentPath))\.str()|sys::path::parent_path(sys::path::parent_path(CurrentPath))).str()|g" ${S}/tools/llvm-config/llvm-config.cpp diff --git a/poky/meta/recipes-devtools/meson/meson.inc b/poky/meta/recipes-devtools/meson/meson.inc index 50fb41ac9..0a58c971a 100644 --- a/poky/meta/recipes-devtools/meson/meson.inc +++ b/poky/meta/recipes-devtools/meson/meson.inc @@ -26,6 +26,7 @@ SRC_URI_append_class-native = " \ " UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases" +UPSTREAM_CHECK_REGEX = "meson-(?P\d+(\.\d+)+)\.tar" inherit setuptools3 diff --git a/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb b/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb index a20e316a3..07e240254 100644 --- a/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb +++ b/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb @@ -36,5 +36,8 @@ FILES_${PN} = "${datadir}/opkg/keyrings" RDEPENDS_${PN} = "opkg" pkg_postinst_ontarget_${PN} () { -opkg-key populate + if test -x ${bindir}/opkg-key + then + ${bindir}/opkg-key populate + fi } diff --git a/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb b/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb index cc983e033..d29e094ed 100644 --- a/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb +++ b/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb @@ -1,4 +1,4 @@ -SRC_URI = "https://nixos.org/releases/${BPN}/${BPN}-${PV}/${BPN}-${PV}.tar.bz2 \ +SRC_URI = "git://github.com/NixOS/patchelf;protocol=https \ file://handle-read-only-files.patch \ file://fix-adjusting-startPage.patch \ " @@ -6,8 +6,9 @@ SRC_URI = "https://nixos.org/releases/${BPN}/${BPN}-${PV}/${BPN}-${PV}.tar.bz2 \ LICENSE = "GPLv3" SUMMARY = "Tool to allow editing of RPATH and interpreter fields in ELF binaries" -SRC_URI[md5sum] = "6c3f3a06a95705870d129494a6880106" -SRC_URI[sha256sum] = "f670cd462ac7161588c28f45349bc20fb9bd842805e3f71387a320e7a9ddfcf3" +SRCREV = "e1e39f3639e39360ceebb2f7ed533cede4623070" + +S = "${WORKDIR}/git" LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" diff --git a/poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch b/poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch new file mode 100644 index 000000000..33d4ef3b2 --- /dev/null +++ b/poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch @@ -0,0 +1,31 @@ +From a491aececfedf7313d29b80d626e0964fb533548 Mon Sep 17 00:00:00 2001 +From: Jacob Kroon +Date: Sun, 3 May 2020 06:24:03 +0200 +Subject: [PATCH] pseudo_ipc.h: Fix enum typedef + +'pseudo_access_t' is a type, so use typedef. + +Fixes building pseudo with gcc 10 where -fno-common is the default. + +Signed-off-by: Jacob Kroon +Upstream-Status: Submitted [https://lists.openembedded.org/g/openembedded-core/message/137758] +--- + pseudo_ipc.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pseudo_ipc.h b/pseudo_ipc.h +index caeae5c..d945257 100644 +--- a/pseudo_ipc.h ++++ b/pseudo_ipc.h +@@ -29,7 +29,7 @@ typedef struct { + char path[]; + } pseudo_msg_t; + +-enum { ++typedef enum { + PSA_EXEC = 1, + PSA_WRITE = (PSA_EXEC << 1), + PSA_READ = (PSA_WRITE << 1), +-- +2.26.2 + diff --git a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb index a3049c5e6..324ae9071 100644 --- a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb +++ b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb @@ -12,6 +12,7 @@ SRC_URI = "git://git.yoctoproject.org/pseudo \ file://0006-xattr-adjust-for-attr-2.4.48-release.patch \ file://seccomp.patch \ file://0001-pseudo-On-a-DB-fixup-remove-files-that-do-not-exist-.patch \ + file://0001-pseudo_ipc.h-Fix-enum-typedef.patch \ " SRCREV = "060058bb29f70b244e685b3c704eb0641b736f73" diff --git a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc index 727755393..0bff979a6 100644 --- a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc +++ b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc @@ -15,9 +15,6 @@ SRC_URI[sha256sum] = "93ee59ec38f3bf8f9a42d5f4301f60e6825a4a6385a145f70badcd2bf2 UPSTREAM_CHECK_URI = "https://github.com/numpy/numpy/releases" UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)\.tar" -# Needed for building with gcc 4.x from centos 7 -CFLAGS_append_class-native = " -std=c99" - DEPENDS += "python3-cython-native" S = "${WORKDIR}/numpy-${PV}" diff --git a/poky/meta/recipes-devtools/python/python-setuptools.inc b/poky/meta/recipes-devtools/python/python-setuptools.inc index 07c2f8b21..6726e06be 100644 --- a/poky/meta/recipes-devtools/python/python-setuptools.inc +++ b/poky/meta/recipes-devtools/python/python-setuptools.inc @@ -24,6 +24,7 @@ RDEPENDS_${PN} = "\ ${PYTHON_PN}-distutils \ ${PYTHON_PN}-email \ ${PYTHON_PN}-html \ + ${PYTHON_PN}-json \ ${PYTHON_PN}-netserver \ ${PYTHON_PN}-numbers \ ${PYTHON_PN}-pkgutil \ diff --git a/poky/meta/recipes-devtools/python/python3-git_3.0.5.bb b/poky/meta/recipes-devtools/python/python3-git_3.0.5.bb deleted file mode 100644 index 36313ef8b..000000000 --- a/poky/meta/recipes-devtools/python/python3-git_3.0.5.bb +++ /dev/null @@ -1,33 +0,0 @@ -SUMMARY = "Python library used to interact with Git repositories" -DESCRIPTION = "GitPython provides object model read and write access to \ -a git repository. Access repository information conveniently, alter the \ -index directly, handle remotes, or go down to low-level object database \ -access with big-files support." -HOMEPAGE = "http://github.com/gitpython-developers/GitPython" -SECTION = "devel/python" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183" - -PYPI_PACKAGE = "GitPython" - -inherit pypi setuptools3 - -SRC_URI[md5sum] = "7555ad89a22f663c25cced5f623bdef0" -SRC_URI[sha256sum] = "9c2398ffc3dcb3c40b27324b316f08a4f93ad646d5a6328cafbb871aa79f5e42" - -DEPENDS += " ${PYTHON_PN}-gitdb" - -RDEPENDS_${PN} += " \ - ${PYTHON_PN}-datetime \ - ${PYTHON_PN}-gitdb \ - ${PYTHON_PN}-io \ - ${PYTHON_PN}-logging \ - ${PYTHON_PN}-math \ - ${PYTHON_PN}-netclient \ - ${PYTHON_PN}-stringold \ - ${PYTHON_PN}-unittest \ - ${PYTHON_PN}-unixadmin \ - git \ -" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-git_3.1.2.bb b/poky/meta/recipes-devtools/python/python3-git_3.1.2.bb new file mode 100644 index 000000000..72280ec30 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-git_3.1.2.bb @@ -0,0 +1,33 @@ +SUMMARY = "Python library used to interact with Git repositories" +DESCRIPTION = "GitPython provides object model read and write access to \ +a git repository. Access repository information conveniently, alter the \ +index directly, handle remotes, or go down to low-level object database \ +access with big-files support." +HOMEPAGE = "http://github.com/gitpython-developers/GitPython" +SECTION = "devel/python" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183" + +PYPI_PACKAGE = "GitPython" + +inherit pypi setuptools3 + +SRC_URI[md5sum] = "2397bea2d7c36ef9f874ab6355abae59" +SRC_URI[sha256sum] = "864a47472548f3ba716ca202e034c1900f197c0fb3a08f641c20c3cafd15ed94" + +DEPENDS += " ${PYTHON_PN}-gitdb" + +RDEPENDS_${PN} += " \ + ${PYTHON_PN}-datetime \ + ${PYTHON_PN}-gitdb \ + ${PYTHON_PN}-io \ + ${PYTHON_PN}-logging \ + ${PYTHON_PN}-math \ + ${PYTHON_PN}-netclient \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-unittest \ + ${PYTHON_PN}-unixadmin \ + git \ +" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch b/poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch new file mode 100644 index 000000000..6678c105c --- /dev/null +++ b/poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch @@ -0,0 +1,60 @@ +From 1ed066fc6fa7d7afffe3545c4e3ea937529e6c49 Mon Sep 17 00:00:00 2001 +From: Changqing Li +Date: Thu, 7 May 2020 17:40:58 +0800 +Subject: [PATCH] lib/transaction.c: fix file conflicts for MIPS64 N32 + +This patch is from: +https://github.com/rpm-software-management/rpm/issues/193 + +Error: Transaction check error: + file /sbin/ldconfig conflicts between attempted installs of +ldconfig-2.31+git0+71f2b249a2-r0.mips64_n32 and +lib32-ldconfig-2.31+git0+71f2b249a2-r0.mips32r2 +... + +This was because: +transactions_color = 001 (ELF32) & 010 (ELF64) & 100 (ELF32 N32 MIPS64) +FColor = Current file color (001) & transaction_color (111) +oFcolor = Previous file color (100) & transaction_color (111) + +In handleColorConflict, it only deal with conditons "new preferred" or +"old preferred". But not deal with the situation where neither is the +preferred type. so for tri-lib system, like mips64/mips64 n32/mips(32), +"Transaction check error" occurred. + +Fixed by performing a 'last-in-wins' resolution when "neither is preferred". + +Upstream-Status: Submitted + +Signed-off-by: Changqing Li +--- + lib/transaction.c | 13 ++++++++++++- + 1 file changed, 12 insertions(+), 1 deletion(-) + +diff --git a/lib/transaction.c b/lib/transaction.c +index 67b9db5..82386b8 100644 +--- a/lib/transaction.c ++++ b/lib/transaction.c +@@ -391,7 +391,18 @@ static int handleColorConflict(rpmts ts, + rpmfsSetAction(ofs, ofx, FA_CREATE); + rpmfsSetAction(fs, fx, FA_SKIPCOLOR); + rConflicts = 0; +- } ++ }else { ++ /* ++ * If neither is already skipped, we skip the old one, and ++ * install the new one (last in wins). ++ */ ++ if (ofs && !XFA_SKIPPING(rpmfsGetAction(ofs, ofx)) && ++ fs && !XFA_SKIPPING(rpmfsGetAction(fs, fx))) { ++ rpmfsSetAction(ofs, ofx, FA_SKIPCOLOR); ++ rpmfsSetAction(fs, fx, FA_CREATE); ++ } ++ rConflicts = 0; ++ } + } + } + +-- +2.7.4 + diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb index 5c1190a3d..8add14246 100644 --- a/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb +++ b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb @@ -39,6 +39,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.15.x \ file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \ file://0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch \ file://0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch \ + file://0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch \ " PE = "1" diff --git a/poky/meta/recipes-extended/cpio/cpio-2.13/0002-src-global.c-Remove-superfluous-declaration-of-progr.patch b/poky/meta/recipes-extended/cpio/cpio-2.13/0002-src-global.c-Remove-superfluous-declaration-of-progr.patch new file mode 100644 index 000000000..d48a3b0d1 --- /dev/null +++ b/poky/meta/recipes-extended/cpio/cpio-2.13/0002-src-global.c-Remove-superfluous-declaration-of-progr.patch @@ -0,0 +1,28 @@ +From 33e6cb5a28fab3d99bd6818f8c01e6f33805390f Mon Sep 17 00:00:00 2001 +From: Sergey Poznyakoff +Date: Mon, 20 Jan 2020 07:45:39 +0200 +Subject: [PATCH] src/global.c: Remove superfluous declaration of program_name + +Upstream-Status: Accepted (commit 641d3f4) +Signed-off-by: Richard Leitner +--- + src/global.c | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/src/global.c b/src/global.c +index fb3abe9..acf92bc 100644 +--- a/src/global.c ++++ b/src/global.c +@@ -184,9 +184,6 @@ unsigned int warn_option = 0; + /* Extract to standard output? */ + bool to_stdout_option = false; + +-/* The name this program was run with. */ +-char *program_name; +- + /* A pointer to either lstat or stat, depending on whether + dereferencing of symlinks is done for input files. */ + int (*xstat) (); +-- +2.26.2 + diff --git a/poky/meta/recipes-extended/cpio/cpio_2.13.bb b/poky/meta/recipes-extended/cpio/cpio_2.13.bb index ecea8c6d8..9e35a80f8 100644 --- a/poky/meta/recipes-extended/cpio/cpio_2.13.bb +++ b/poky/meta/recipes-extended/cpio/cpio_2.13.bb @@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949" SRC_URI = "${GNU_MIRROR}/cpio/cpio-${PV}.tar.gz \ file://0001-Unset-need_charset_alias-when-building-for-musl.patch \ + file://0002-src-global.c-Remove-superfluous-declaration-of-progr.patch \ " SRC_URI[md5sum] = "389c5452d667c23b5eceb206f5000810" diff --git a/poky/meta/recipes-extended/libtirpc/libtirpc_1.2.6.bb b/poky/meta/recipes-extended/libtirpc/libtirpc_1.2.6.bb index 6100d157e..10a324c3b 100644 --- a/poky/meta/recipes-extended/libtirpc/libtirpc_1.2.6.bb +++ b/poky/meta/recipes-extended/libtirpc/libtirpc_1.2.6.bb @@ -19,8 +19,6 @@ inherit autotools pkgconfig EXTRA_OECONF = "--disable-gssapi" -CFLAGS += "-fcommon" - do_install_append() { chown root:root ${D}${sysconfdir}/netconfig } diff --git a/poky/meta/recipes-extended/newt/files/0002-don-t-ignore-CFLAGS-when-building-snack.patch b/poky/meta/recipes-extended/newt/files/0002-don-t-ignore-CFLAGS-when-building-snack.patch new file mode 100644 index 000000000..ca235d510 --- /dev/null +++ b/poky/meta/recipes-extended/newt/files/0002-don-t-ignore-CFLAGS-when-building-snack.patch @@ -0,0 +1,29 @@ +From f60dc1063607ca1f201ba4cbda467d8af3f78f64 Mon Sep 17 00:00:00 2001 +From: Miroslav Lichvar +Date: Tue, 1 Oct 2019 16:37:55 +0200 +Subject: [PATCH] don't ignore CFLAGS when building snack + +In addition to the flags returned by python-config --cflags, use the +user-specified CFLAGS when building the snack object. + +Upstream-Status: Backport from master +Signed-off-by: Joshua Watt +--- + Makefile.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index be5f87b..6facd5e 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -96,8 +96,8 @@ _snack.$(SOEXT): snack.c $(LIBNEWTSH) + PIFLAGS=`$$pyconfig --includes`; \ + PLDFLAGS=`$$pyconfig --ldflags`; \ + PLFLAGS=`$$pyconfig --libs`; \ +- echo $(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ +- $(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ ++ echo $(CC) $(SHCFLAGS) $(CFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ ++ $(CC) $(SHCFLAGS) $(CFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ + echo $(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snack.$(SOEXT) $$ver/snack.o -L. -lnewt $(LIBS); \ + $(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snack.$(SOEXT) $$ver/snack.o -L. -lnewt $(LIBS); \ + done || : diff --git a/poky/meta/recipes-extended/newt/files/pie-flags.patch b/poky/meta/recipes-extended/newt/files/pie-flags.patch deleted file mode 100644 index 92f5b2503..000000000 --- a/poky/meta/recipes-extended/newt/files/pie-flags.patch +++ /dev/null @@ -1,41 +0,0 @@ -specify -fPIC after CFLAGS so it can override the CFLAGS containing -pie and -fpie this makes sure the objects that go into shared objects are compiled with -fPIC and not with -fpie. We can not use -fpie on objects which will go into .so files Fixes errors like - -| /mnt/oe/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/5.3.0/ld: shared/newt.o: relocation R_X86_64_PC32 against undefined symbol `SLtt_Screen_Rows@@SLANG2' can not be used when making a shared object; recompile with -fPIC -| /mnt/oe/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/5.3.0/ld: final link failed: Bad value -| collect2: error: ld returned 1 exit status -| make: *** [libnewt.so.0.52.18] Error 1 - -Signed-off-by: Khem Raj -Upstream-Status: Pending - ---- - Makefile.in | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/Makefile.in b/Makefile.in -index be5f87b..88ee0b7 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -96,8 +96,8 @@ _snack.$(SOEXT): snack.c $(LIBNEWTSH) - PIFLAGS=`$$pyconfig --includes`; \ - PLDFLAGS=`$$pyconfig --ldflags`; \ - PLFLAGS=`$$pyconfig --libs`; \ -- echo $(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ -- $(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ -+ echo $(CC) $(CPPFLAGS) $(SHCFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ -+ $(CC) $(CPPFLAGS) $(SHCFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \ - echo $(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snack.$(SOEXT) $$ver/snack.o -L. -lnewt $(LIBS); \ - $(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snack.$(SOEXT) $$ver/snack.o -L. -lnewt $(LIBS); \ - done || : -@@ -133,7 +133,7 @@ $(LIBNEWTSH): $(SHAREDOBJS) - - $(SHAREDDIR)/%.o : %.c - @mkdir -p $(SHAREDDIR) -- $(CC) $(SHCFLAGS) -c $(CFLAGS) $(CPPFLAGS) -o $@ $< -+ $(CC) -c $(CFLAGS) $(CPPFLAGS) $(SHCFLAGS) -o $@ $< - - install: $(LIBNEWT) install-sh whiptail - [ -d $(instroot)/$(bindir) ] || install -m 755 -d $(instroot)/$(bindir) --- -2.7.4 - diff --git a/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb b/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb index 09b61be61..88b4cf4a0 100644 --- a/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb +++ b/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb @@ -20,9 +20,9 @@ DEPENDS = "slang popt python3" SRC_URI = "https://releases.pagure.org/newt/newt-${PV}.tar.gz \ file://cross_ar.patch \ file://Makefile.in-Add-tinfo-library-to-the-linking-librari.patch \ - file://pie-flags.patch \ file://0001-detect-gold-as-GNU-linker-too.patch \ -" + file://0002-don-t-ignore-CFLAGS-when-building-snack.patch \ + " SRC_URI[md5sum] = "a0a5fd6b53bb167a65e15996b249ebb5" SRC_URI[sha256sum] = "265eb46b55d7eaeb887fca7a1d51fe115658882dfe148164b6c49fccac5abb31" diff --git a/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb b/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb index cb5b288c4..f2e9e3975 100644 --- a/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb +++ b/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb @@ -15,9 +15,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0daaf958d5531ab86169ec6e275e1517" SECTION = "libs" DEPENDS += "rpcsvc-proto-native" -PV = "1.4+git${SRCPV}" +PV = "1.4.1" -SRCREV = "9bc3b5b785723cfff459b0c01b39d87d4bed975c" +SRCREV = "e295c9a3b67752734995dfc057bfbf5313ed0d82" SRC_URI = "git://github.com/thkukuk/${BPN} \ file://0001-Use-cross-compiled-rpcgen.patch \ @@ -25,10 +25,14 @@ SRC_URI = "git://github.com/thkukuk/${BPN} \ S = "${WORKDIR}/git" -inherit autotools +inherit autotools gettext EXTRA_OEMAKE_class-native = " -C rpcgen" +do_configure_prepend() { + touch ${S}/ABOUT-NLS +} + do_install_append() { # They come from quota recipe rm -rf ${D}${includedir}/rpcsvc/rquota.[hx] diff --git a/poky/meta/recipes-extended/sysklogd/files/0001-fix-one-rarely-reproduced-parallel-build-problem.patch b/poky/meta/recipes-extended/sysklogd/files/0001-fix-one-rarely-reproduced-parallel-build-problem.patch deleted file mode 100644 index 97bf6ae50..000000000 --- a/poky/meta/recipes-extended/sysklogd/files/0001-fix-one-rarely-reproduced-parallel-build-problem.patch +++ /dev/null @@ -1,40 +0,0 @@ -From dcaa75391ff267c38e776d48c579cdb734b91af3 Mon Sep 17 00:00:00 2001 -From: Changqing Li -Date: Mon, 23 Mar 2020 15:52:32 +0800 -Subject: [PATCH] fix one rarely reproduced parallel build problem - -fix for this issue: -https://github.com/troglobit/sysklogd/issues/17 - -Signed-off-by: Robert Yang -Signed-off-by: Changqing Li - -Upstream-Status: Backport -[https://github.com/troglobit/sysklogd/commit/b88e21d1770a262f0e5d0f6b84f0abd4a5de55b7] - -Signed-off-by: Changqing Li ---- - src/Makefile.am | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/src/Makefile.am b/src/Makefile.am -index 993dbfd..06b706d 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -56,3 +56,13 @@ libsyslog_la_SOURCES = syslog.c syslog.h compat.h - libsyslog_la_CPPFLAGS = $(AM_CPPFLAGS) -D_XOPEN_SOURCE=600 - libsyslog_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 - libsyslog_la_LIBADD = $(LTLIBOBJS) -+ -+# Both libsyslog_la and syslogd/logger requires objects like lib/pidfile.o, for -+# libsyslog_la, the objects should be compiled with -fPIC, but for -+# syslogd/logger, it doesn't need -fPIC, so there is a race issue when the two -+# different lib/pidfile.o are compiled at the same time, which would cause errors like: -+# ld: syslogd-syslogd.o: in function `main': -+# syslogd.c:417: undefined reference to `__pidfile' -+# -+# Make LIBOBJS depend on LTLIBOBJS to fix the problem. -+$(LIBOBJS): $(LTLIBOBJS) --- -2.7.4 - diff --git a/poky/meta/recipes-extended/sysklogd/sysklogd.inc b/poky/meta/recipes-extended/sysklogd/sysklogd.inc index 8899daa1b..2e3d9831b 100644 --- a/poky/meta/recipes-extended/sysklogd/sysklogd.inc +++ b/poky/meta/recipes-extended/sysklogd/sysklogd.inc @@ -12,7 +12,6 @@ inherit update-rc.d update-alternatives systemd autotools SRC_URI = "git://github.com/troglobit/sysklogd.git;nobranch=1 \ file://sysklogd \ - file://0001-fix-one-rarely-reproduced-parallel-build-problem.patch \ " S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-extended/sysklogd/sysklogd_2.1.1.bb b/poky/meta/recipes-extended/sysklogd/sysklogd_2.1.1.bb deleted file mode 100644 index eb6b4effa..000000000 --- a/poky/meta/recipes-extended/sysklogd/sysklogd_2.1.1.bb +++ /dev/null @@ -1,3 +0,0 @@ -require sysklogd.inc - -SRCREV = "24dafe9a27ac959ebeb89acd3ebd3d62cca4b755" diff --git a/poky/meta/recipes-extended/sysklogd/sysklogd_2.1.2.bb b/poky/meta/recipes-extended/sysklogd/sysklogd_2.1.2.bb new file mode 100644 index 000000000..2917c2aae --- /dev/null +++ b/poky/meta/recipes-extended/sysklogd/sysklogd_2.1.2.bb @@ -0,0 +1,3 @@ +require sysklogd.inc + +SRCREV = "6d6010add698370fc7d9828f0aaa18613dd2397f" diff --git a/poky/meta/recipes-extended/wget/wget/0002-improve-reproducibility.patch b/poky/meta/recipes-extended/wget/wget/0002-improve-reproducibility.patch index 8781df21c..050fc2c7e 100644 --- a/poky/meta/recipes-extended/wget/wget/0002-improve-reproducibility.patch +++ b/poky/meta/recipes-extended/wget/wget/0002-improve-reproducibility.patch @@ -34,6 +34,11 @@ Link: gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Hongxu Jia + +sed use of DEBUG_PREFIX_MAP must treat whitespace the same as the +echo command building version.c or the expression match will fail. + +Signed-off-by: Joe Slater --- src/Makefile.am | 4 ++++ 1 file changed, 4 insertions(+) @@ -47,12 +52,12 @@ index 28c0be2..44084a3 100644 echo 'const char *version_string = "@VERSION@";' >> $@ echo 'const char *compilation_string = "'$(COMPILE)'";' \ + | sed -e "s,$(TOOLCHAIN_OPTIONS),,g" \ -+ -e "s,$(DEBUG_PREFIX_MAP),,g" \ ++ -e "s,$$(echo $(DEBUG_PREFIX_MAP)),,g" \ | $(ESCAPEQUOTE) >> $@ echo 'const char *link_string = "'$(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) $(LIBS) $(wget_LDADD)'";' \ + | sed -e "s,$(TOOLCHAIN_OPTIONS),,g" \ -+ -e "s,$(DEBUG_PREFIX_MAP),,g" \ ++ -e "s,$$(echo $(DEBUG_PREFIX_MAP)),,g" \ | $(ESCAPEQUOTE) >> $@ css.c: $(srcdir)/css.l diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_3.34.4.bb b/poky/meta/recipes-gnome/epiphany/epiphany_3.34.4.bb deleted file mode 100644 index ddb4c2794..000000000 --- a/poky/meta/recipes-gnome/epiphany/epiphany_3.34.4.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "WebKit based web browser for GNOME" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/epiphany" -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \ - gsettings-desktop-schemas libxml2-native \ - glib-2.0 glib-2.0-native json-glib libdazzle" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gsettings features_check upstream-version-is-even gettext mime-xdg -REQUIRED_DISTRO_FEATURES = "x11 opengl" - -SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \ - file://0002-help-meson.build-disable-the-use-of-yelp.patch \ - " -SRC_URI[archive.md5sum] = "a559f164bb7d6cbeceb348648076830b" -SRC_URI[archive.sha256sum] = "60e190fc07ec7e33472e60c7e633e04004f7e277a0ffc5e9cd413706881e598d" - -FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo" -RDEPENDS_${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas" diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_3.36.1.bb b/poky/meta/recipes-gnome/epiphany/epiphany_3.36.1.bb new file mode 100644 index 000000000..8146983ae --- /dev/null +++ b/poky/meta/recipes-gnome/epiphany/epiphany_3.36.1.bb @@ -0,0 +1,21 @@ +SUMMARY = "WebKit based web browser for GNOME" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/epiphany" +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \ + gsettings-desktop-schemas libxml2-native \ + glib-2.0 glib-2.0-native json-glib libdazzle libhandy" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase gsettings features_check upstream-version-is-even gettext mime-xdg +REQUIRED_DISTRO_FEATURES = "x11 opengl" + +SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \ + file://0002-help-meson.build-disable-the-use-of-yelp.patch \ + " +SRC_URI[archive.md5sum] = "d66416d0be97ec7789564473337bfe57" +SRC_URI[archive.sha256sum] = "f6f233fb43c6318476d4594707b3fdd5b4127b5e35263e73fbcad8895db8efb6" + +FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo" +RDEPENDS_${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas" diff --git a/poky/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-set-internal-vapi-dependencies.patch b/poky/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-set-internal-vapi-dependencies.patch new file mode 100644 index 000000000..b484a1b22 --- /dev/null +++ b/poky/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-set-internal-vapi-dependencies.patch @@ -0,0 +1,45 @@ +From ebb77dad4563b882b449cbc5e882f36ac8c2de71 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Mon, 11 May 2020 22:19:16 +0000 +Subject: [PATCH] meson.build: correctly set internal vapi dependencies + +If they are set as strings, meson will supply the right +arguments to vapigen, but will not set the ninja dependencies +to ensure they get built first, and so races will occur: +https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/1881/steps/8/logs/step1b + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/55] +Signed-off-by: Alexander Kanavin +--- + gcr/meson.build | 2 +- + ui/meson.build | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/gcr/meson.build b/gcr/meson.build +index 254a933..199452f 100644 +--- a/gcr/meson.build ++++ b/gcr/meson.build +@@ -203,7 +203,7 @@ if get_option('introspection') + + gcr_vapi = gnome.generate_vapi('gcr-@0@'.format(gcr_major_version), + sources: gcr_gir[0], +- packages: [ 'glib-2.0', 'gio-2.0', 'gck-@0@'.format(gck_major_version) ], ++ packages: [ 'glib-2.0', 'gio-2.0', gck_vapi ], + metadata_dirs: meson.current_source_dir(), + vapi_dirs: [ + build_root / 'gck', +diff --git a/ui/meson.build b/ui/meson.build +index 5ca3753..477412d 100644 +--- a/ui/meson.build ++++ b/ui/meson.build +@@ -174,8 +174,8 @@ if get_option('introspection') + packages: [ + 'glib-2.0', + 'gio-2.0', +- 'gck-@0@'.format(gck_major_version), +- 'gcr-@0@'.format(gcr_major_version), ++ gck_vapi, ++ gcr_vapi, + 'gtk+-3.0' + ], + metadata_dirs: meson.current_source_dir(), diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb index 4fe3b2fff..a3325b50b 100644 --- a/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb +++ b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb @@ -17,6 +17,7 @@ inherit gnomebase gtk-icon-cache gtk-doc features_check upstream-version-is-even # depends on gtk+3, but also x11 through gtk+-x11 REQUIRED_DISTRO_FEATURES = "x11" +SRC_URI += " file://0001-meson.build-correctly-set-internal-vapi-dependencies.patch" SRC_URI[archive.md5sum] = "adc65563b6b458507b9a578a8b68fb61" SRC_URI[archive.sha256sum] = "aaf9bed017a2263c6145c89a1a84178f9f40f238426463e4ae486694ef5f6601" diff --git a/poky/meta/recipes-gnome/libdazzle/libdazzle_3.34.1.bb b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.34.1.bb deleted file mode 100644 index 1c8b2c86e..000000000 --- a/poky/meta/recipes-gnome/libdazzle/libdazzle_3.34.1.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "The libdazzle library is a companion library to GObject and Gtk+." -DESCRIPTION = "A wide range of components from utilities for GIO, widgets for \ -GTK+, an animation framework, state machines, paneling and high-performance \ -counters are included." -LICENSE = "GPLv3+" -HOMEPAGE = "https://gitlab.gnome.org/GNOME/libdazzle" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/libdazzle/issues" -LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase upstream-version-is-even vala features_check gobject-introspection - -DEPENDS = "glib-2.0-native glib-2.0 gtk+3" - -SRC_URI[archive.md5sum] = "e796a92dd3f529616ed388c15208359b" -SRC_URI[archive.sha256sum] = "3d981cbb9d9bb87bfaff7bfd44d9847223b3ef81e69225e4d1f6ac725a669505" - -GIR_MESON_OPTION = 'with_introspection' - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" diff --git a/poky/meta/recipes-gnome/libdazzle/libdazzle_3.36.0.bb b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.36.0.bb new file mode 100644 index 000000000..25ccee2e2 --- /dev/null +++ b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.36.0.bb @@ -0,0 +1,20 @@ +SUMMARY = "The libdazzle library is a companion library to GObject and Gtk+." +DESCRIPTION = "A wide range of components from utilities for GIO, widgets for \ +GTK+, an animation framework, state machines, paneling and high-performance \ +counters are included." +LICENSE = "GPLv3+" +HOMEPAGE = "https://gitlab.gnome.org/GNOME/libdazzle" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/libdazzle/issues" +LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase upstream-version-is-even vala features_check gobject-introspection + +DEPENDS = "glib-2.0-native glib-2.0 gtk+3" + +SRC_URI[archive.md5sum] = "154be45a6aac020e7d59f477bd7cafcf" +SRC_URI[archive.sha256sum] = "82b31bbf550fc62970c78bf7f9d55e5fae5b8ea13b24fe2d13c8c6039409d958" + +GIR_MESON_OPTION = 'with_introspection' + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" diff --git a/poky/meta/recipes-gnome/libhandy/libhandy_git.bb b/poky/meta/recipes-gnome/libhandy/libhandy_git.bb new file mode 100644 index 000000000..64258941e --- /dev/null +++ b/poky/meta/recipes-gnome/libhandy/libhandy_git.bb @@ -0,0 +1,21 @@ +SUMMARY = "A library full of GTK+ widgets for mobile phones" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = "git://source.puri.sm/Librem5/${BPN}.git;protocol=https" +SRCREV = "7a193d7692c9c76a1a94f17c4d30b585f77d177c" +S = "${WORKDIR}/git" +PV = "0.0.13" + +GIR_MESON_ENABLE_FLAG = 'enabled' +GIR_MESON_DISABLE_FLAG = 'disabled' +GTKDOC_MESON_OPTION = 'gtk_doc' + +inherit meson gobject-introspection vala gettext gtk-doc features_check + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +DEPENDS += "gtk+3" + +PACKAGES =+ "${PN}-examples" +FILES_${PN}-examples = "${bindir}" diff --git a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb index af9867407..0782c6ce3 100644 --- a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb +++ b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb @@ -33,11 +33,3 @@ PACKAGECONFIG_class-nativesdk = "egl x11" BBCLASSEXTEND = "native nativesdk" -# This will ensure that dlopen will attempt only GL libraries provided by host -do_install_append_class-native() { - chrpath --delete ${D}${libdir}/*.so -} - -do_install_append_class-nativesdk() { - chrpath --delete ${D}${libdir}/*.so -} diff --git a/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb new file mode 100644 index 000000000..2c845238d --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb @@ -0,0 +1,9 @@ +require libva.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" +SRC_URI[md5sum] = "aef13eb48e01a47d1416d97462a22a11" +SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e48629401eaea5" + +do_install_append () { + rm -f ${D}${libdir}/*.so* +} diff --git a/poky/meta/recipes-graphics/libva/libva.inc b/poky/meta/recipes-graphics/libva/libva.inc new file mode 100644 index 000000000..ac39e92de --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva.inc @@ -0,0 +1,27 @@ +SUMMARY = "Video Acceleration (VA) API for Linux" +DESCRIPTION = "Video Acceleration API (VA API) is a library (libVA) \ +and API specification which enables and provides access to graphics \ +hardware (GPU) acceleration for video processing on Linux and UNIX \ +based operating systems. Accelerated processing includes video \ +decoding, video encoding, subpicture blending and rendering. The \ +specification was originally designed by Intel for its GMA (Graphics \ +Media Accelerator) series of GPU hardware, the API is however not \ +limited to GPUs or Intel specific hardware, as other hardware and \ +manufacturers can also freely use this API for hardware accelerated \ +video decoding." + +HOMEPAGE = "https://01.org/linuxmedia/vaapi" +BUGTRACKER = "https://github.com/intel/libva/issues" + +SECTION = "x11" +LICENSE = "MIT" + +SRC_URI = "https://github.com/intel/libva/releases/download/${PV}/libva-${PV}.tar.bz2" + +S = "${WORKDIR}/libva-${PV}" + +UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases" + +DEPENDS = "libdrm" + +inherit meson pkgconfig features_check diff --git a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb index 071be345d..e8cb8678b 100644 --- a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb +++ b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb @@ -1,32 +1,9 @@ -SUMMARY = "Video Acceleration (VA) API for Linux" -DESCRIPTION = "Video Acceleration API (VA API) is a library (libVA) \ -and API specification which enables and provides access to graphics \ -hardware (GPU) acceleration for video processing on Linux and UNIX \ -based operating systems. Accelerated processing includes video \ -decoding, video encoding, subpicture blending and rendering. The \ -specification was originally designed by Intel for its GMA (Graphics \ -Media Accelerator) series of GPU hardware, the API is however not \ -limited to GPUs or Intel specific hardware, as other hardware and \ -manufacturers can also freely use this API for hardware accelerated \ -video decoding." +require libva.inc -HOMEPAGE = "https://01.org/linuxmedia/vaapi" -BUGTRACKER = "https://github.com/intel/libva/issues" - -SECTION = "x11" -LICENSE = "MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" - -SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BP}.tar.bz2" SRC_URI[md5sum] = "aef13eb48e01a47d1416d97462a22a11" SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e48629401eaea5" -UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases" - -DEPENDS = "libdrm" - -inherit meson pkgconfig features_check - PACKAGECONFIG ??= " \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \ ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \ diff --git a/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm/0001-Fix-build-with-gcc-10.patch b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm/0001-Fix-build-with-gcc-10.patch new file mode 100644 index 000000000..541b5c9c8 --- /dev/null +++ b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm/0001-Fix-build-with-gcc-10.patch @@ -0,0 +1,41 @@ +From 8a8f8446e803cad04d7bbceaab78ee45d9778c3c Mon Sep 17 00:00:00 2001 +From: Adrian Bunk +Date: Tue, 12 May 2020 09:44:05 +0300 +Subject: Fix build with gcc 10 + +Upstream-Status: Pending +Signed-off-by: Adrian Bunk +--- + src/mbtheme.h | 2 +- + src/structs.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/mbtheme.h b/src/mbtheme.h +index aa9a7c5..ad03bde 100644 +--- a/src/mbtheme.h ++++ b/src/mbtheme.h +@@ -46,7 +46,7 @@ typedef struct _mb_theme_param + + } MBThemeParam; + +-enum { ++typedef enum { + LAYER_GRADIENT_HORIZ = 1, + LAYER_GRADIENT_VERT, + LAYER_LABEL, +diff --git a/src/structs.h b/src/structs.h +index 24985e7..8f53e72 100644 +--- a/src/structs.h ++++ b/src/structs.h +@@ -148,7 +148,7 @@ + + /* Atoms, if you change these check ewmh_init() first */ + +-enum { ++typedef enum { + WM_STATE = 0, + WM_CHANGE_STATE, + WM_PROTOCOLS, +-- +2.17.1 + diff --git a/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb index 675ee40fa..a08eb252c 100644 --- a/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb +++ b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb @@ -13,6 +13,7 @@ DEPENDS = "libmatchbox virtual/libx11 libxext libxrender startup-notification ex # SRCREV tagged 1.2.2 SRCREV = "27da947e7fbdf9659f7e5bd1e92af92af6c03970" SRC_URI = "git://git.yoctoproject.org/matchbox-window-manager \ + file://0001-Fix-build-with-gcc-10.patch \ file://kbdconfig" S = "${WORKDIR}/git" @@ -21,8 +22,6 @@ inherit autotools pkgconfig features_check # depends on virtual/libx11 REQUIRED_DISTRO_FEATURES = "x11" -CFLAGS += "-fcommon" - FILES_${PN} = "${bindir}/* \ ${datadir}/matchbox \ ${sysconfdir}/matchbox \ diff --git a/poky/meta/recipes-graphics/menu-cache/files/0001-Support-gcc10-compilation.patch b/poky/meta/recipes-graphics/menu-cache/files/0001-Support-gcc10-compilation.patch new file mode 100644 index 000000000..aeae864cd --- /dev/null +++ b/poky/meta/recipes-graphics/menu-cache/files/0001-Support-gcc10-compilation.patch @@ -0,0 +1,111 @@ +From 1ce739649b4d66339a03fc0ec9ee7a2f7c141780 Mon Sep 17 00:00:00 2001 +From: Mamoru TASAKA +Date: Fri, 24 Jan 2020 13:33:00 +0900 +Subject: Support gcc10 compilation + +gcc10 now defaults to -fno-common, and with gcc10 menu-cache compilation fails like + +/bin/ld: menu-merge.o:menu-cache-gen/menu-tags.h:167: multiple definition of `DirDirs'; main.o:menu-cache-gen/menu-tags.h:167: first defined here +/bin/ld: menu-merge.o:menu-cache-gen/menu-tags.h:164: multiple definition of `AppDirs'; main.o:menu-cache-gen/menu-tags.h:164: first defined here +/bin/ld: menu-merge.o:menu-cache-gen/menu-tags.h:52: multiple definition of `menuTag_Layout'; main.o:menu-cache-gen/menu-tags.h:52: first defined here +.... + +This patch fixes compilation with gcc10: properly declaring variables in header with "extern", and also removing some unneeded variables in header files. + +Upstream-Status: Submitted [https://github.com/lxde/menu-cache/pull/19] +Signed-off-by: Adrian Bunk +--- + menu-cache-gen/menu-tags.h | 55 ++++++++++++-------------------------- + 1 file changed, 17 insertions(+), 38 deletions(-) + +diff --git a/menu-cache-gen/menu-tags.h b/menu-cache-gen/menu-tags.h +index f3fd7d3..f71c0bc 100644 +--- a/menu-cache-gen/menu-tags.h ++++ b/menu-cache-gen/menu-tags.h +@@ -22,38 +22,17 @@ + #include + #include + +-FmXmlFileTag menuTag_Menu; +-FmXmlFileTag menuTag_AppDir; +-FmXmlFileTag menuTag_DefaultAppDirs; +-FmXmlFileTag menuTag_DirectoryDir; +-FmXmlFileTag menuTag_DefaultDirectoryDirs; +-FmXmlFileTag menuTag_Include; +-FmXmlFileTag menuTag_Exclude; +-FmXmlFileTag menuTag_Filename; +-FmXmlFileTag menuTag_Or; +-FmXmlFileTag menuTag_And; +-FmXmlFileTag menuTag_Not; +-FmXmlFileTag menuTag_Category; +-FmXmlFileTag menuTag_MergeFile; +-FmXmlFileTag menuTag_MergeDir; +-FmXmlFileTag menuTag_DefaultMergeDirs; +-FmXmlFileTag menuTag_Directory; +-FmXmlFileTag menuTag_Name; +-FmXmlFileTag menuTag_Deleted; +-FmXmlFileTag menuTag_NotDeleted; +-FmXmlFileTag menuTag_OnlyUnallocated; +-FmXmlFileTag menuTag_NotOnlyUnallocated; +-FmXmlFileTag menuTag_All; +-FmXmlFileTag menuTag_LegacyDir; +-FmXmlFileTag menuTag_KDELegacyDirs; +-FmXmlFileTag menuTag_Move; +-FmXmlFileTag menuTag_Old; +-FmXmlFileTag menuTag_New; +-FmXmlFileTag menuTag_Layout; +-FmXmlFileTag menuTag_DefaultLayout; +-FmXmlFileTag menuTag_Menuname; +-FmXmlFileTag menuTag_Separator; +-FmXmlFileTag menuTag_Merge; ++extern FmXmlFileTag menuTag_AppDir; ++extern FmXmlFileTag menuTag_DirectoryDir; ++extern FmXmlFileTag menuTag_Include; ++extern FmXmlFileTag menuTag_Exclude; ++extern FmXmlFileTag menuTag_Filename; ++extern FmXmlFileTag menuTag_Or; ++extern FmXmlFileTag menuTag_And; ++extern FmXmlFileTag menuTag_Not; ++extern FmXmlFileTag menuTag_Category; ++extern FmXmlFileTag menuTag_All; ++extern FmXmlFileTag menuTag_LegacyDir; + + typedef enum { + MERGE_NONE, /* starting value */ +@@ -152,19 +131,19 @@ typedef struct { + } MenuRule; + + /* requested language(s) */ +-char **languages; ++extern char **languages; + + /* list of menu files to monitor */ +-GSList *MenuFiles; ++extern GSList *MenuFiles; + + /* list of menu dirs to monitor */ +-GSList *MenuDirs; ++extern GSList *MenuDirs; + + /* list of available app dirs */ +-GSList *AppDirs; ++extern GSList *AppDirs; + + /* list of available dir dirs */ +-GSList *DirDirs; ++extern GSList *DirDirs; + + /* parse and merge menu files */ + MenuMenu *get_merged_menu(const char *file, FmXmlFile **xmlfile, GError **error); +@@ -177,7 +156,7 @@ gboolean save_menu_cache(MenuMenu *layout, const char *menuname, const char *fil + void _free_layout_items(GList *data); + + /* verbosity level */ +-gint verbose; ++extern gint verbose; + + #define DBG if (verbose) g_debug + #define VDBG if (verbose > 1) g_debug +-- +2.17.1 + diff --git a/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb b/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb index 7a11228ef..fc4e0a4d8 100644 --- a/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb +++ b/poky/meta/recipes-graphics/menu-cache/menu-cache_1.1.0.bb @@ -8,7 +8,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0964c689fcf4c21c6797ea87408416b6" SECTION = "x11/libs" DEPENDS = "glib-2.0 libfm-extra" -SRC_URI = "${SOURCEFORGE_MIRROR}/lxde/menu-cache-${PV}.tar.xz" +SRC_URI = "${SOURCEFORGE_MIRROR}/lxde/menu-cache-${PV}.tar.xz \ + file://0001-Support-gcc10-compilation.patch \ +" SRC_URI[md5sum] = "99999a0bca48b980105208760c8fd893" SRC_URI[sha256sum] = "ed02eb459dcb398f69b9fa5bf4dd813020405afc84331115469cdf7be9273ec7" @@ -16,5 +18,3 @@ SRC_URI[sha256sum] = "ed02eb459dcb398f69b9fa5bf4dd813020405afc84331115469cdf7be9 UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/lxde/files/menu-cache/1.1/" inherit autotools gettext pkgconfig gtk-doc - -CFLAGS += "-fcommon" diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc index b7ef496fd..fede691d6 100644 --- a/poky/meta/recipes-graphics/mesa/mesa.inc +++ b/poky/meta/recipes-graphics/mesa/mesa.inc @@ -72,8 +72,8 @@ PACKAGECONFIG_class-target ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland v ${@bb.utils.contains('DISTRO_FEATURES', 'x11 vulkan', 'dri3', '', d)} \ elf-tls \ " -PACKAGECONFIG_class-native ?= "gbm dri egl opengl elf-tls" -PACKAGECONFIG_class-nativesdk ?= "gbm dri egl opengl elf-tls" +PACKAGECONFIG_class-native ?= "gbm dri egl opengl elf-tls x11" +PACKAGECONFIG_class-nativesdk ?= "gbm dri egl opengl elf-tls x11" PACKAGECONFIG_remove_libc-musl = "elf-tls" @@ -142,6 +142,9 @@ PACKAGECONFIG[gallium] = "-Dgallium-drivers=${GALLIUMDRIVERS}, -Dgallium-drivers PACKAGECONFIG[gallium-llvm] = "-Dllvm=true -Dshared-llvm=true, -Dllvm=false, llvm${MESA_LLVM_RELEASE} llvm-native \ ${@'elfutils' if ${GALLIUMDRIVERS_LLVM33_ENABLED} else ''}" PACKAGECONFIG[xa] = "-Dgallium-xa=true, -Dgallium-xa=false" +PACKAGECONFIG[va] = "-Dgallium-va=true,-Dgallium-va=false,libva-initial" + +PACKAGECONFIG[vdpau] = "-Dgallium-vdpau=true,-Dgallium-vdpau=false,libvdpau" PACKAGECONFIG[lima] = "" GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'lima', ',lima', '', d)}" @@ -179,6 +182,7 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \ libgles3-mesa libgles3-mesa-dev \ libxatracker libxatracker-dev \ mesa-megadriver mesa-vulkan-drivers \ + mesa-vdpau-drivers \ " do_install_append () { @@ -256,6 +260,7 @@ PACKAGES_DYNAMIC += "^mesa-driver-.*" FILES_mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d/00-mesa-defaults.conf" FILES_mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan" +FILES_${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*" FILES_libegl-mesa = "${libdir}/libEGL.so.*" FILES_libgbm = "${libdir}/libgbm.so.*" FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*" @@ -265,7 +270,7 @@ FILES_libglapi = "${libdir}/libglapi.so.*" FILES_libosmesa = "${libdir}/libOSMesa.so.*" FILES_libxatracker = "${libdir}/libxatracker.so.*" -FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc ${includedir}/vulkan" +FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc ${includedir}/vulkan ${libdir}/vdpau/*.so" FILES_libegl-mesa-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc" FILES_libgbm-dev = "${libdir}/libgbm.* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" FILES_libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc" diff --git a/poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb b/poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb index 56ee28c87..ee0260e07 100644 --- a/poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb +++ b/poky/meta/recipes-graphics/mesa/mesa_20.0.2.bb @@ -14,8 +14,6 @@ SRC_URI[sha256sum] = "aa54f1cb669550606aab8ceb475105d15aeb814fca5a778ce70d0fd10e UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P\d+(\.\d+)+)" -CFLAGS += "-fcommon" - #because we cannot rely on the fact that all apps will use pkgconfig, #make eglplatform.h independent of MESA_EGL_NO_X11_HEADER do_install_append() { diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch b/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch index 76240610f..153e66273 100644 --- a/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch +++ b/poky/meta/recipes-graphics/vulkan/vulkan-demos/0001-Don-t-build-demos-with-questionably-licensed-data.patch @@ -1,4 +1,4 @@ -From 0cbf9c9831f773e0da66209be9a6ff28d57c2321 Mon Sep 17 00:00:00 2001 +From 663d51cd31fd98411e25f37aaf52b591d9639bf5 Mon Sep 17 00:00:00 2001 From: "Maxin B. John" Date: Mon, 30 Jul 2018 17:23:29 +0300 Subject: [PATCH] Don't build demos with questionably licensed data @@ -33,16 +33,15 @@ Upstream-Status: Inappropriate [configuration] Signed-off-by: Jussi Kukkonen Signed-off-by: Maxin B. John - --- examples/CMakeLists.txt | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt -index e07918c..08b6e23 100644 +index a53c834..71a12e7 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt -@@ -55,18 +55,12 @@ set(EXAMPLES +@@ -55,9 +55,6 @@ set(EXAMPLES conditionalrender conservativeraster debugmarker @@ -52,9 +51,10 @@ index e07918c..08b6e23 100644 descriptorsets displacement distancefieldfonts - dynamicuniformbuffer +@@ -65,9 +62,6 @@ set(EXAMPLES gears geometryshader + gltfscene - hdr - imgui - indirectdraw @@ -93,3 +93,6 @@ index e07918c..08b6e23 100644 ) buildExamples() +-- +2.17.1 + diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb b/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb index c94e768b5..9d7cb2b1e 100644 --- a/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb +++ b/poky/meta/recipes-graphics/vulkan/vulkan-demos_git.bb @@ -6,15 +6,15 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=dcf473723faabf17baa9b5f2207599d0 \ file://examples/triangle/triangle.cpp;endline=12;md5=bccd1bf9cadd9e10086cf7872157e4fa" SRCREV_glm = "1ad55c5016339b83b7eec98c31007e0aee57d2bf" -SRCREV_gli = "7da5f50931225e9819a26d5cb323c5f42da50bcd" +SRCREV_ktx = "726d14d02c95bb21ec9e43807751b491d295dd3c" SRC_URI = "git://github.com/SaschaWillems/Vulkan.git \ git://github.com/g-truc/glm;destsuffix=git/external/glm;name=glm \ - git://github.com/g-truc/gli;destsuffix=git/external/gli;name=gli \ + git://github.com/KhronosGroup/KTX-Software;destsuffix=git/external/ktx;name=ktx;lfs=0 \ file://0001-Don-t-build-demos-with-questionably-licensed-data.patch \ " UPSTREAM_CHECK_COMMITS = "1" -SRCREV = "6d63dc32c320a49be0a56c365151c8f2f176bc59" +SRCREV = "10a1ecaf7bbcbc316c83f7c52742baaba0ae2f45" UPSTREAM_CHECK_GITTAGREGEX = "These are not the releases you're looking for" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb deleted file mode 100644 index 72c29a72a..000000000 --- a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.1.126.0.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Vulkan Header files and API registry" -HOMEPAGE = "https://www.khronos.org/vulkan/" -BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers" -SECTION = "libs" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" -SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=sdk-1.1.126" - -SRCREV = "5bc459e2921304c32568b73edaac8d6df5f98b84" - -S = "${WORKDIR}/git" - -inherit cmake - -FILES_${PN} += "${datadir}/vulkan" - -UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.135.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.135.0.bb new file mode 100644 index 000000000..54cee96cc --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.135.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "Vulkan Header files and API registry" +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=sdk-1.2.135" + +SRCREV = "fb7f9c9bcd1d1544ea203a1f3d4253d0e90c5a90" + +S = "${WORKDIR}/git" + +inherit cmake + +FILES_${PN} += "${datadir}/vulkan" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb deleted file mode 100644 index 504cf85a2..000000000 --- a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.1.126.0.bb +++ /dev/null @@ -1,38 +0,0 @@ -SUMMARY = "3D graphics and compute API common loader" -DESCRIPTION = "Vulkan is a new generation graphics and compute API \ -that provides efficient access to modern GPUs. These packages \ -provide only the common vendor-agnostic library loader, headers and \ -the vulkaninfo utility." -HOMEPAGE = "https://www.khronos.org/vulkan/" -BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader" -SECTION = "libs" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac" -SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-1.1.126" -SRCREV = "4adad4ff705fa76f9edb2d37cb57e593decb60ed" - -S = "${WORKDIR}/git" - -REQUIRED_DISTRO_FEATURES = "vulkan" - -inherit cmake features_check -ANY_OF_DISTRO_FEATURES = "x11 wayland" - -DEPENDS += "vulkan-headers" - -EXTRA_OECMAKE = "\ - -DBUILD_TESTS=OFF \ - -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ - -DASSEMBLER_WORKS=FALSE \ - " - -# must choose x11 or wayland or both -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" - -PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" -PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" - -RRECOMMENDS_${PN} = "mesa-vulkan-drivers" - -UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.135.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.135.0.bb new file mode 100644 index 000000000..8bab58f0b --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.135.0.bb @@ -0,0 +1,38 @@ +SUMMARY = "3D graphics and compute API common loader" +DESCRIPTION = "Vulkan is a new generation graphics and compute API \ +that provides efficient access to modern GPUs. These packages \ +provide only the common vendor-agnostic library loader, headers and \ +the vulkaninfo utility." +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-1.2.135" +SRCREV = "86429d9e7f3542e88fb98ffa7d8a82c10c9828ac" + +S = "${WORKDIR}/git" + +REQUIRED_DISTRO_FEATURES = "vulkan" + +inherit cmake features_check +ANY_OF_DISTRO_FEATURES = "x11 wayland" + +DEPENDS += "vulkan-headers" + +EXTRA_OECMAKE = "\ + -DBUILD_TESTS=OFF \ + -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ + -DASSEMBLER_WORKS=FALSE \ + " + +# must choose x11 or wayland or both +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" + +PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" + +RRECOMMENDS_${PN} = "mesa-vulkan-drivers" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb deleted file mode 100644 index 2fd61c989..000000000 --- a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.1.126.0.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Vulkan Utilities and Tools" -HOMEPAGE = "https://www.khronos.org/vulkan/" -BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools" -SECTION = "libs" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" -SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-1.1.126" -SRCREV = "09695dfc5dbe54f869aeaff8db93bb7bb6a220e0" - -S = "${WORKDIR}/git" - -inherit cmake features_check -ANY_OF_DISTRO_FEATURES = "x11 wayland" -REQUIRED_DISTRO_FEATURES = "vulkan" - -DEPENDS += "vulkan-headers vulkan-loader" - -EXTRA_OECMAKE = "\ - -DBUILD_TESTS=OFF \ - -DBUILD_CUBE=OFF \ - -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ - " - -# must choose x11 or wayland or both -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" - -PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" -PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" - -UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.135.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.135.0.bb new file mode 100644 index 000000000..085c0e27e --- /dev/null +++ b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.135.0.bb @@ -0,0 +1,31 @@ +SUMMARY = "Vulkan Utilities and Tools" +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-1.2.135" +SRCREV = "6d8197fd6c91d352a601587ffdde28f4cd7bc399" + +S = "${WORKDIR}/git" + +inherit cmake features_check +ANY_OF_DISTRO_FEATURES = "x11 wayland" +REQUIRED_DISTRO_FEATURES = "vulkan" + +DEPENDS += "vulkan-headers vulkan-loader" + +EXTRA_OECMAKE = "\ + -DBUILD_TESTS=OFF \ + -DBUILD_CUBE=OFF \ + -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ + " + +# must choose x11 or wayland or both +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" + +PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" diff --git a/poky/meta/recipes-graphics/wayland/libinput/run-ptest b/poky/meta/recipes-graphics/wayland/libinput/run-ptest new file mode 100644 index 000000000..5a84c568b --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/libinput/run-ptest @@ -0,0 +1,9 @@ +#!/bin/sh + +/usr/libexec/libinput/libinput-test-suite +if [ $? -eq 0 ]; then + echo 'PASS: libinput-test-suite' +else + echo 'FAIL: libinput-test-suite' +fi + diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb b/poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb deleted file mode 100644 index 810532774..000000000 --- a/poky/meta/recipes-graphics/wayland/libinput_1.15.2.bb +++ /dev/null @@ -1,40 +0,0 @@ -SUMMARY = "Library to handle input devices in Wayland compositors" -DESCRIPTION = "libinput is a library to handle input devices in Wayland \ -compositors and to provide a generic X.Org input driver. It provides \ -device detection, device handling, input device event processing and \ -abstraction so minimize the amount of custom input code compositors need to \ -provide the common set of functionality that users expect." -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=1f2ea9ebff3a2c6d458faf58492efb63" - -DEPENDS = "libevdev udev mtdev" - -SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \ - file://determinism.patch \ - " -SRC_URI[md5sum] = "eb6bd2907ad33d53954d70dfb881a643" -SRC_URI[sha256sum] = "971c3fbfb624f95c911adeb2803c372e4e3647d1b98f278f660051f834597747" - -UPSTREAM_CHECK_REGEX = "libinput-(?P\d+\.\d+\.(?!9\d+)\d+)" - -inherit meson pkgconfig lib_package - -PACKAGECONFIG ??= "" -PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom" -PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3" - -UDEVDIR = "`pkg-config --variable=udevdir udev`" - -EXTRA_OEMESON += "-Dudev-dir=${UDEVDIR} \ - -Ddocumentation=false \ - -Dtests=false \ - -Dzshcompletiondir=no" - -# package name changed in 1.8.1 upgrade: make sure package upgrades work -RPROVIDES_${PN} = "libinput" -RREPLACES_${PN} = "libinput" -RCONFLICTS_${PN} = "libinput" - diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.15.5.bb b/poky/meta/recipes-graphics/wayland/libinput_1.15.5.bb new file mode 100644 index 000000000..e56f181bf --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/libinput_1.15.5.bb @@ -0,0 +1,50 @@ +SUMMARY = "Library to handle input devices in Wayland compositors" +DESCRIPTION = "libinput is a library to handle input devices in Wayland \ +compositors and to provide a generic X.Org input driver. It provides \ +device detection, device handling, input device event processing and \ +abstraction so minimize the amount of custom input code compositors need to \ +provide the common set of functionality that users expect." +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=1f2ea9ebff3a2c6d458faf58492efb63" + +DEPENDS = "libevdev udev mtdev libcheck" + +SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \ + file://run-ptest \ + file://determinism.patch \ + " +SRC_URI[md5sum] = "c9a1b15bb932eaf22f840efe4c3f84eb" +SRC_URI[sha256sum] = "a90efc8f423c3094f2f9f372fb92381b2f3aad62e8b5882a8abe333aa8249c97" + +UPSTREAM_CHECK_REGEX = "libinput-(?P\d+\.\d+\.(?!9\d+)\d+)" + +inherit meson pkgconfig lib_package ptest + +# Patch out build directory, otherwise it leaks into ptest binary +do_configure_append() { + sed -i -e "s,${WORKDIR},,g" config.h + if [ -e "litest-config.h" ]; then + sed -i -e "s,${WORKDIR},,g" litest-config.h + fi +} + +PACKAGECONFIG ??= "" +PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom" +PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3" + +UDEVDIR = "`pkg-config --variable=udevdir udev`" + +EXTRA_OEMESON += "-Dudev-dir=${UDEVDIR} \ + -Ddocumentation=false \ + ${@bb.utils.contains('PTEST_ENABLED', '1', '-Dtests=true -Dinstall-tests=true', '-Dtests=false -Dinstall-tests=false', d)} \ + -Dzshcompletiondir=no" + +# package name changed in 1.8.1 upgrade: make sure package upgrades work +RPROVIDES_${PN} = "libinput" +RREPLACES_${PN} = "libinput" +RCONFLICTS_${PN} = "libinput" + +FILES_${PN}-ptest += "${libexecdir}/libinput/libinput-test-suite" diff --git a/poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch b/poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch index e44583875..c2ceae4a4 100644 --- a/poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch +++ b/poky/meta/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch @@ -17,8 +17,6 @@ Upstream-Status: Submitted [https://gitlab.freedesktop.org/wayland/wayland/merge meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/meson.build b/meson.build -index 26b084f..c05d019 100644 --- a/meson.build +++ b/meson.build @@ -36,11 +36,11 @@ have_funcs = [ @@ -30,10 +28,7 @@ index 26b084f..c05d019 100644 foreach f: have_funcs config_h.set('HAVE_' + f.underscorify().to_upper(), cc.has_function(f)) endforeach -+config_h.set('HAVE_STRNDUP', cc.has_function('strndup', prefix:'#include ')) ++config_h.set('HAVE_STRNDUP', cc.has_function('strndup') and cc.has_header_symbol('string.h', 'strndup')) if get_option('libraries') ffi_dep = dependency('libffi') --- -2.17.1 - diff --git a/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc b/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc index 101b3dfff..cb8cf4f5f 100644 --- a/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc +++ b/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc @@ -8,8 +8,6 @@ DEPENDS = "util-macros-native virtual/libx11" # depends on virtual/libx11 REQUIRED_DISTRO_FEATURES = "x11" -INC_PR = "r8" - SRC_URI = "${XORG_MIRROR}/individual/app/${BPN}-${PV}.tar.bz2" inherit autotools pkgconfig features_check diff --git a/poky/meta/recipes-graphics/xorg-app/xrandr_1.5.1.bb b/poky/meta/recipes-graphics/xorg-app/xrandr_1.5.1.bb index 6583ea237..57b43ff28 100644 --- a/poky/meta/recipes-graphics/xorg-app/xrandr_1.5.1.bb +++ b/poky/meta/recipes-graphics/xorg-app/xrandr_1.5.1.bb @@ -15,3 +15,5 @@ SRC_URI = "${XORG_MIRROR}/individual/app/${BPN}-${PV}.tar.xz" SRC_URI[md5sum] = "fe40f7a4fd39dd3a02248d3e0b1972e4" SRC_URI[sha256sum] = "7bc76daf9d72f8aff885efad04ce06b90488a1a169d118dea8a2b661832e8762" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc index e30f04472..493b90a29 100644 --- a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc +++ b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc @@ -5,7 +5,6 @@ SECTION = "x11/drivers" LICENSE = "MIT-X" PE = "2" -INC_PR = "r21" DEPENDS = "virtual/xserver xorgproto util-macros" diff --git a/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb b/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb index a39609b5d..4d61aed18 100644 --- a/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb +++ b/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb @@ -7,7 +7,7 @@ require xorg-font-common.inc LICENSE = "PD" LIC_FILES_CHKSUM = "file://COPYING;md5=9da93f2daf2d5572faa2bfaf0dbd9e76" PE = "1" -PR = "${INC_PR}.1" +PR = "r3" DEPENDS = "mkfontscale-native mkfontdir-native font-util-native" RDEPENDS_${PN} = "" diff --git a/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.3.bb b/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.3.bb index 15e101596..c5990a9e4 100644 --- a/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.3.bb +++ b/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.3.bb @@ -18,7 +18,7 @@ RDEPENDS_${PN}_class-native = "font-util-native" inherit allarch PE = "1" -PR = "${INC_PR}.3" +PR = "r3" SRC_URI[md5sum] = "6d25f64796fef34b53b439c2e9efa562" SRC_URI[sha256sum] = "8b453b2aae1cfa8090009ca037037b8c5e333550651d5a158b7264ce1d472c9a" diff --git a/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc b/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc index f18c8aefc..7ca5c76a6 100644 --- a/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc +++ b/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc @@ -8,8 +8,6 @@ DEPENDS = " encodings font-alias font-util-native" RDEPENDS_${PN} = "encodings font-util font-alias" XORG_PN = "${BPN}" -INC_PR = "r2" - SRC_URI = "${XORG_MIRROR}/individual/font/${XORG_PN}-${PV}.tar.bz2" S = "${WORKDIR}/${XORG_PN}-${PV}" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxxf86vm_1.1.4.bb b/poky/meta/recipes-graphics/xorg-lib/libxxf86vm_1.1.4.bb index 95fc0b642..1612a50f1 100644 --- a/poky/meta/recipes-graphics/xorg-lib/libxxf86vm_1.1.4.bb +++ b/poky/meta/recipes-graphics/xorg-lib/libxxf86vm_1.1.4.bb @@ -18,3 +18,5 @@ XORG_PN = "libXxf86vm" SRC_URI[md5sum] = "298b8fff82df17304dfdb5fe4066fe3a" SRC_URI[sha256sum] = "afee27f93c5f31c0ad582852c0fb36d50e4de7cd585fcf655e278a633d85cd57" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc index b4f076017..b3e03744c 100644 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc @@ -13,7 +13,6 @@ PROVIDES = "virtual/xserver-xf86" PROVIDES += "virtual/xserver" PE = "2" -INC_PR = "r8" XORG_PN = "xorg-server" SRC_URI = "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${PV}.tar.bz2" diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb index 3f7fbe85b..26815feb3 100644 --- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb +++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb @@ -9,8 +9,6 @@ SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.pat SRC_URI[md5sum] = "a770aec600116444a953ff632f51f839" SRC_URI[sha256sum] = "d17b646bee4ba0fb7850c1cc55b18e3e8513ed5c02bdf38da7e107f84e2d0146" -CFLAGS += "-fcommon" - # These extensions are now integrated into the server, so declare the migration # path for in-place upgrades. diff --git a/poky/meta/recipes-kernel/dtc/dtc_1.5.1.bb b/poky/meta/recipes-kernel/dtc/dtc_1.5.1.bb deleted file mode 100644 index 9df8a06d4..000000000 --- a/poky/meta/recipes-kernel/dtc/dtc_1.5.1.bb +++ /dev/null @@ -1,10 +0,0 @@ -require dtc.inc - -LIC_FILES_CHKSUM = "file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://libfdt/libfdt.h;beginline=4;endline=7;md5=05bb357cfb75cae7d2b01d2ee8d76407" - -SRCREV = "60e0db3d65a1218b0d5a29474e769f28a18e3ca6" - -S = "${WORKDIR}/git" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-kernel/dtc/dtc_1.6.0.bb b/poky/meta/recipes-kernel/dtc/dtc_1.6.0.bb new file mode 100644 index 000000000..92df70d9f --- /dev/null +++ b/poky/meta/recipes-kernel/dtc/dtc_1.6.0.bb @@ -0,0 +1,10 @@ +require dtc.inc + +LIC_FILES_CHKSUM = "file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://libfdt/libfdt.h;beginline=4;endline=7;md5=05bb357cfb75cae7d2b01d2ee8d76407" + +SRCREV = "2525da3dba9beceb96651dc2986581871dbeca30" + +S = "${WORKDIR}/git" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto.inc b/poky/meta/recipes-kernel/linux/linux-yocto.inc index 91df9c1cd..f560dec58 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto.inc +++ b/poky/meta/recipes-kernel/linux/linux-yocto.inc @@ -6,8 +6,6 @@ LIC_FILES_CHKSUM ?= "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7" UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.\d+(\.\d+)*)" -INC_PR = "r4" - # Skip processing of this recipe if it is not explicitly specified as the # PREFERRED_PROVIDER for virtual/kernel. This avoids network access required # by the use of AUTOREV SRCREVs, which are the default for this recipe. diff --git a/poky/meta/recipes-kernel/powertop/powertop_2.10.bb b/poky/meta/recipes-kernel/powertop/powertop_2.10.bb index 7b7b3929b..f1b0e92b2 100644 --- a/poky/meta/recipes-kernel/powertop/powertop_2.10.bb +++ b/poky/meta/recipes-kernel/powertop/powertop_2.10.bb @@ -6,25 +6,22 @@ DEPENDS = "ncurses libnl pciutils" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e" -SRC_URI = "https://01.org/sites/default/files/downloads/powertop-v${PV}.tar.gz \ +SRC_URI = "git://github.com/fenrus75/powertop;protocol=https \ file://0001-wakeup_xxx.h-include-limits.h.patch \ " +SRCREV = "e8765b5475b22b7a2b6e9e8a031c68a268a0b0b3" -SRC_URI[md5sum] = "a69bd55901cf919cc564187402ea2c9c" -SRC_URI[sha256sum] = "d3b7459eaba7d01c8841dd33a3b4d369416c01e9bd8951b0d88234cf18fe4a75" - -UPSTREAM_CHECK_URI = "https://01.org/powertop/downloads" -UPSTREAM_CHECK_REGEX = "powertop-[v]?(?P\d+(\.\d+)+)\.tar" +S = "${WORKDIR}/git" inherit autotools gettext pkgconfig -S = "${WORKDIR}/${BPN}-v${PV}" - # we do not want libncursesw if we can do_configure_prepend() { # configure.ac checks for delwin() in "ncursesw ncurses" so let's drop first one sed -i -e "s/ncursesw//g" ${S}/configure.ac mkdir -p ${B}/src/tuning/ + echo "${PV}" > ${S}/version-long + echo "${PV}" > ${S}/version-short } inherit update-alternatives diff --git a/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2019.06.03.bb b/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2019.06.03.bb deleted file mode 100644 index 9076d9460..000000000 --- a/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2019.06.03.bb +++ /dev/null @@ -1,44 +0,0 @@ -SUMMARY = "Wireless Central Regulatory Domain Database" -HOMEPAGE = "http://wireless.kernel.org/en/developers/Regulatory/CRDA" -SECTION = "net" -LICENSE = "ISC" -LIC_FILES_CHKSUM = "file://LICENSE;md5=07c4f6dea3845b02a18dc00c8c87699c" - -SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz" -SRC_URI[md5sum] = "4b5ba3f089db7fdb7b9daae6a7c1f2cb" -SRC_URI[sha256sum] = "cd917ed86b63ce8d93947979f1f18948f03a4ac0ad89ec25227b36ac00dc54bf" - -inherit bin_package allarch - -do_install() { - install -d -m0755 ${D}${nonarch_libdir}/crda - install -d -m0755 ${D}${sysconfdir}/wireless-regdb/pubkeys - install -m 0644 regulatory.bin ${D}${nonarch_libdir}/crda/regulatory.bin - install -m 0644 sforshee.key.pub.pem ${D}${sysconfdir}/wireless-regdb/pubkeys/sforshee.key.pub.pem - - install -m 0644 -D regulatory.db ${D}${nonarch_base_libdir}/firmware/regulatory.db - install -m 0644 regulatory.db.p7s ${D}${nonarch_base_libdir}/firmware/regulatory.db.p7s -} - -# Install static regulatory DB in /lib/firmware for kernel to load. -# This requires Linux kernel >= v4.15. -# For kernel <= v4.14, inherit the kernel_wireless_regdb.bbclass -# (in meta-networking) in kernel's recipe. -PACKAGES = "${PN}-static ${PN}" -RCONFLICTS_${PN} = "${PN}-static" - -FILES_${PN}-static = " \ - ${nonarch_base_libdir}/firmware/regulatory.db \ - ${nonarch_base_libdir}/firmware/regulatory.db.p7s \ -" - -# Native users might want to use the source of regulatory DB. -# This is for example used by Linux kernel <= v4.14 and -# kernel_wireless_regdb.bbclass in meta-networking. -do_install_append_class-native() { - install -m 0644 -D db.txt ${D}${libdir}/crda/db.txt -} - -RSUGGESTS_${PN} = "crda" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2020.04.29.bb b/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2020.04.29.bb new file mode 100644 index 000000000..a5827b9ef --- /dev/null +++ b/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2020.04.29.bb @@ -0,0 +1,43 @@ +SUMMARY = "Wireless Central Regulatory Domain Database" +HOMEPAGE = "http://wireless.kernel.org/en/developers/Regulatory/CRDA" +SECTION = "net" +LICENSE = "ISC" +LIC_FILES_CHKSUM = "file://LICENSE;md5=07c4f6dea3845b02a18dc00c8c87699c" + +SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz" +SRC_URI[sha256sum] = "89fd031aed5977c219a71501e144375a10e7c90d1005d5d086ea7972886a2c7a" + +inherit bin_package allarch + +do_install() { + install -d -m0755 ${D}${nonarch_libdir}/crda + install -d -m0755 ${D}${sysconfdir}/wireless-regdb/pubkeys + install -m 0644 regulatory.bin ${D}${nonarch_libdir}/crda/regulatory.bin + install -m 0644 sforshee.key.pub.pem ${D}${sysconfdir}/wireless-regdb/pubkeys/sforshee.key.pub.pem + + install -m 0644 -D regulatory.db ${D}${nonarch_base_libdir}/firmware/regulatory.db + install -m 0644 regulatory.db.p7s ${D}${nonarch_base_libdir}/firmware/regulatory.db.p7s +} + +# Install static regulatory DB in /lib/firmware for kernel to load. +# This requires Linux kernel >= v4.15. +# For kernel <= v4.14, inherit the kernel_wireless_regdb.bbclass +# (in meta-networking) in kernel's recipe. +PACKAGES = "${PN}-static ${PN}" +RCONFLICTS_${PN} = "${PN}-static" + +FILES_${PN}-static = " \ + ${nonarch_base_libdir}/firmware/regulatory.db \ + ${nonarch_base_libdir}/firmware/regulatory.db.p7s \ +" + +# Native users might want to use the source of regulatory DB. +# This is for example used by Linux kernel <= v4.14 and +# kernel_wireless_regdb.bbclass in meta-networking. +do_install_append_class-native() { + install -m 0644 -D db.txt ${D}${libdir}/crda/db.txt +} + +RSUGGESTS_${PN} = "crda" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb b/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb index db62ae8fa..107d312d1 100644 --- a/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb +++ b/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb @@ -17,5 +17,3 @@ FILES_${PN}-gnome = "${libdir}/gnome-settings-daemon-3.0/gtk-modules" FILES_${PN}-gtk2 = "${libdir}/gtk-2.0/modules/libatk-bridge.*" BBCLASSEXTEND = "native nativesdk" - -CFLAGS += "-fcommon" diff --git a/poky/meta/recipes-support/gdbm/files/gdbm-fix-link-failure-against-gcc-10.patch b/poky/meta/recipes-support/gdbm/files/gdbm-fix-link-failure-against-gcc-10.patch new file mode 100644 index 000000000..c1580418d --- /dev/null +++ b/poky/meta/recipes-support/gdbm/files/gdbm-fix-link-failure-against-gcc-10.patch @@ -0,0 +1,47 @@ +From f993697af81c37df9c55e0ebedeb1b8b880506ae Mon Sep 17 00:00:00 2001 +From: Richard Leitner +Date: Tue, 5 May 2020 11:59:42 +0200 +Subject: [PATCH] gdbm: fix link failure against gcc-10 + +Copied from gentoo's solution at https://bugs.gentoo.org/show_bug.cgi?id=705898 +Original patch by Sergei Trofimovich + +Original description: + +Before the change on gcc-10 link failed as: +``` + CCLD gdbmtool +ld: ./libgdbmapp.a(parseopt.o):(.bss+0x8): multiple definition of `parseopt_program_args'; + gdbmtool.o:(.data.rel.local+0x260): first defined here +ld: ./libgdbmapp.a(parseopt.o):(.bss+0x10): multiple definition of `parseopt_program_doc'; + gdbmtool.o:(.data.rel.local+0x268): first defined here +``` + +gcc-10 will change the default from -fcommon to fno-common: + https://gcc.gnu.org/PR85678. + +The fix is to avoid multiple definition and rely on +declarations only. + +Upstream-Status: Pending +Signed-off-by: Richard Leitner +--- + src/parseopt.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/src/parseopt.c b/src/parseopt.c +index 268e080..a4c8576 100644 +--- a/src/parseopt.c ++++ b/src/parseopt.c +@@ -255,8 +255,6 @@ print_option_descr (const char *descr, size_t lmargin, size_t rmargin) + } + + char *parseopt_program_name; +-char *parseopt_program_doc; +-char *parseopt_program_args; + const char *program_bug_address = "<" PACKAGE_BUGREPORT ">"; + void (*parseopt_help_hook) (FILE *stream); + +-- +2.26.2 + diff --git a/poky/meta/recipes-support/gdbm/gdbm_1.18.1.bb b/poky/meta/recipes-support/gdbm/gdbm_1.18.1.bb index 5cb7c558b..fbb1fe72d 100644 --- a/poky/meta/recipes-support/gdbm/gdbm_1.18.1.bb +++ b/poky/meta/recipes-support/gdbm/gdbm_1.18.1.bb @@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=241da1b9fe42e642cbb2c24d5e0c4d24" SRC_URI = "${GNU_MIRROR}/gdbm/gdbm-${PV}.tar.gz \ file://run-ptest \ file://ptest.patch \ + file://gdbm-fix-link-failure-against-gcc-10.patch \ " SRC_URI[md5sum] = "988dc82182121c7570e0cb8b4fcd5415" @@ -23,8 +24,6 @@ CACHED_CONFIGUREVARS += "ac_cv_lib_ndbm_main=no ac_cv_lib_dbm_main=no" BBCLASSEXTEND = "native nativesdk" -CFLAGS += "-fcommon" - do_install_append () { # Create a symlink to ndbm.h and gdbm.h in include/gdbm to let other packages to find # these headers diff --git a/poky/meta/recipes-support/gnutls/libtasn1_4.16.0.bb b/poky/meta/recipes-support/gnutls/libtasn1_4.16.0.bb index 8337b7024..18dae6d0c 100644 --- a/poky/meta/recipes-support/gnutls/libtasn1_4.16.0.bb +++ b/poky/meta/recipes-support/gnutls/libtasn1_4.16.0.bb @@ -19,6 +19,4 @@ SRC_URI[sha256sum] = "0e0fb0903839117cb6e3b56e68222771bebf22ad7fc2295a0ed7d576e8 inherit autotools texinfo lib_package gtk-doc -CFLAGS_append_class-native = " -std=gnu99" - BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch b/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch deleted file mode 100644 index 91d68848c..000000000 --- a/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 9be0b489a94b57419202c552022f25cb95bfac51 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Wed, 17 Apr 2019 16:41:58 +0200 -Subject: [PATCH] Fix big-endian build - -Bug-report: https://unicode-org.atlassian.net/browse/ICU-20533 -Patch taken from: https://bugs.gentoo.org/682170 - -it is applied upstream and will be in version 67+ - -Upstream-Status: Backport [https://github.com/unicode-org/icu/commit/4a3a457b38cd828b7b3fa4fdbc6e2504a57275e9] -Signed-off-by: Alexander Kanavin ---- - data/Makefile.in | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/data/Makefile.in -+++ b/data/Makefile.in -@@ -148,7 +148,8 @@ ICUDATA_ARCHIVE = $(firstword $(wildcard - # and convert it to the current type. - ifneq ($(ICUDATA_ARCHIVE),) - ICUDATA_SOURCE_ARCHIVE = $(OUTDIR)/$(ICUDATA_PLATFORM_NAME).dat --$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR) -+$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) -+ $(MKINSTALLDIRS) $(OUTDIR) - $(INVOKE) $(TOOLBINDIR)/icupkg -t$(ICUDATA_CHAR) $(ICUDATA_ARCHIVE) $(ICUDATA_SOURCE_ARCHIVE) - endif - else diff --git a/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch b/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch index 299689d95..145efc0e0 100644 --- a/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch +++ b/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch @@ -13,10 +13,10 @@ Signed-off-by: Lei Maohui 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/double-conversion-utils.h b/i18n/double-conversion-utils.h -index 1e44fca..e4f2a8b 100644 +index 8c6a0e1..cf89907 100644 --- a/i18n/double-conversion-utils.h +++ b/i18n/double-conversion-utils.h -@@ -92,7 +92,7 @@ int main(int argc, char** argv) { +@@ -115,7 +115,7 @@ int main(int argc, char** argv) { // // If it prints "correct" then the architecture should be here, in the "correct" section. #if defined(_M_X64) || defined(__x86_64__) || \ @@ -24,7 +24,7 @@ index 1e44fca..e4f2a8b 100644 + defined(__arm__) || defined(__avr32__) || defined(_M_ARM) || defined(_M_ARM64) || \ defined(__hppa__) || defined(__ia64__) || \ defined(__mips__) || \ - defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \ + defined(__nios2__) || \ -- 2.7.4 diff --git a/poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch b/poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch deleted file mode 100644 index 6697b27dc..000000000 --- a/poky/meta/recipes-support/icu/icu/CVE-2020-10531.patch +++ /dev/null @@ -1,128 +0,0 @@ -From b7d08bc04a4296982fcef8b6b8a354a9e4e7afca Mon Sep 17 00:00:00 2001 -From: Frank Tang -Date: Sat, 1 Feb 2020 02:39:04 +0000 -Subject: [PATCH] ICU-20958 Prevent SEGV_MAPERR in append - -See #971 - -Upstream-Status: Accepted -CVE: CVE-2020-10531 - -Reference to upstream patch: -https://github.com/unicode-org/icu/commit/b7d08bc04a4296982fcef8b6b8a354a9e4e7afca - ---- - common/unistr.cpp | 6 ++- - test/intltest/ustrtest.cpp | 62 +++++++++++++++++++++++++++++++ - test/intltest/ustrtest.h | 1 + - 3 files changed, 68 insertions(+), 1 deletion(-) - -diff --git a/common/unistr.cpp b/common/unistr.cpp -index 901bb33..6ea0915 100644 ---- a/common/unistr.cpp -+++ b/common/unistr.cpp -@@ -1563,7 +1563,11 @@ UnicodeString::doAppend(const UChar *srcChars, int32_t srcStart, int32_t srcLeng - } - - int32_t oldLength = length(); -- int32_t newLength = oldLength + srcLength; -+ int32_t newLength; -+ if (uprv_add32_overflow(oldLength, srcLength, &newLength)) { -+ setToBogus(); -+ return *this; -+ } - - // Check for append onto ourself - const UChar* oldArray = getArrayStart(); -diff --git a/test/intltest/ustrtest.cpp b/test/intltest/ustrtest.cpp -index b6515ea..ad38bdf 100644 ---- a/test/intltest/ustrtest.cpp -+++ b/test/intltest/ustrtest.cpp -@@ -67,6 +67,7 @@ void UnicodeStringTest::runIndexedTest( int32_t index, UBool exec, const char* & - TESTCASE_AUTO(TestWCharPointers); - TESTCASE_AUTO(TestNullPointers); - TESTCASE_AUTO(TestUnicodeStringInsertAppendToSelf); -+ TESTCASE_AUTO(TestLargeAppend); - TESTCASE_AUTO_END; - } - -@@ -2310,3 +2311,64 @@ void UnicodeStringTest::TestUnicodeStringInsertAppendToSelf() { - str.insert(2, sub); - assertEquals("", u"abbcdcde", str); - } -+ -+void UnicodeStringTest::TestLargeAppend() { -+ if(quick) return; -+ -+ IcuTestErrorCode status(*this, "TestLargeAppend"); -+ // Make a large UnicodeString -+ int32_t len = 0xAFFFFFF; -+ UnicodeString str; -+ char16_t *buf = str.getBuffer(len); -+ // A fast way to set buffer to valid Unicode. -+ // 4E4E is a valid unicode character -+ uprv_memset(buf, 0x4e, len * 2); -+ str.releaseBuffer(len); -+ UnicodeString dest; -+ // Append it 16 times -+ // 0xAFFFFFF times 16 is 0xA4FFFFF1, -+ // which is greater than INT32_MAX, which is 0x7FFFFFFF. -+ int64_t total = 0; -+ for (int32_t i = 0; i < 16; i++) { -+ dest.append(str); -+ total += len; -+ if (total <= INT32_MAX) { -+ assertFalse("dest is not bogus", dest.isBogus()); -+ } else { -+ assertTrue("dest should be bogus", dest.isBogus()); -+ } -+ } -+ dest.remove(); -+ total = 0; -+ for (int32_t i = 0; i < 16; i++) { -+ dest.append(str); -+ total += len; -+ if (total + len <= INT32_MAX) { -+ assertFalse("dest is not bogus", dest.isBogus()); -+ } else if (total <= INT32_MAX) { -+ // Check that a string of exactly the maximum size works -+ UnicodeString str2; -+ int32_t remain = INT32_MAX - total; -+ char16_t *buf2 = str2.getBuffer(remain); -+ if (buf2 == nullptr) { -+ // if somehow memory allocation fail, return the test -+ return; -+ } -+ uprv_memset(buf2, 0x4e, remain * 2); -+ str2.releaseBuffer(remain); -+ dest.append(str2); -+ total += remain; -+ assertEquals("When a string of exactly the maximum size works", (int64_t)INT32_MAX, total); -+ assertEquals("When a string of exactly the maximum size works", INT32_MAX, dest.length()); -+ assertFalse("dest is not bogus", dest.isBogus()); -+ -+ // Check that a string size+1 goes bogus -+ str2.truncate(1); -+ dest.append(str2); -+ total++; -+ assertTrue("dest should be bogus", dest.isBogus()); -+ } else { -+ assertTrue("dest should be bogus", dest.isBogus()); -+ } -+ } -+} -diff --git a/test/intltest/ustrtest.h b/test/intltest/ustrtest.h -index 218befd..4a356a9 100644 ---- a/test/intltest/ustrtest.h -+++ b/test/intltest/ustrtest.h -@@ -97,6 +97,7 @@ public: - void TestWCharPointers(); - void TestNullPointers(); - void TestUnicodeStringInsertAppendToSelf(); -+ void TestLargeAppend(); - }; - - #endif --- -2.17.1 - diff --git a/poky/meta/recipes-support/icu/icu/icu-pkgdata-large-cmd.patch b/poky/meta/recipes-support/icu/icu/icu-pkgdata-large-cmd.patch deleted file mode 100644 index e758a623e..000000000 --- a/poky/meta/recipes-support/icu/icu/icu-pkgdata-large-cmd.patch +++ /dev/null @@ -1,49 +0,0 @@ -pkgdata.cpp: use LARGE_BUFFER_MAX_SIZE for cmd - -Use LARGE_BUFFER_MAX_SIZE for cmd rather than SMALL_BUFFER_MAX_SIZE, -otherwise there was a Segmentation fault error when the command line is -long, this should be a misplay since other cmd uses -LARGE_BUFFER_MAX_SIZE. - -Upstream-Status: Pending - -Signed-off-by: Robert Yang -Signed-off-by: Jackie Huang ---- - tools/pkgdata/pkgdata.cpp | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/tools/pkgdata/pkgdata.cpp b/tools/pkgdata/pkgdata.cpp -index 60167dd..506dd32 100644 ---- a/tools/pkgdata/pkgdata.cpp -+++ b/tools/pkgdata/pkgdata.cpp -@@ -1084,7 +1084,7 @@ normal_symlink_mode: - - static int32_t pkg_installLibrary(const char *installDir, const char *targetDir, UBool noVersion) { - int32_t result = 0; -- char cmd[SMALL_BUFFER_MAX_SIZE]; -+ char cmd[LARGE_BUFFER_MAX_SIZE]; - - sprintf(cmd, "cd %s && %s %s %s%s%s", - targetDir, -@@ -1152,7 +1152,7 @@ static int32_t pkg_installLibrary(const char *installDir, const char *targetDir, - - static int32_t pkg_installCommonMode(const char *installDir, const char *fileName) { - int32_t result = 0; -- char cmd[SMALL_BUFFER_MAX_SIZE] = ""; -+ char cmd[LARGE_BUFFER_MAX_SIZE] = ""; - - if (!T_FileStream_file_exists(installDir)) { - UErrorCode status = U_ZERO_ERROR; -@@ -1184,7 +1184,7 @@ static int32_t pkg_installCommonMode(const char *installDir, const char *fileNam - #endif - static int32_t pkg_installFileMode(const char *installDir, const char *srcDir, const char *fileListName) { - int32_t result = 0; -- char cmd[SMALL_BUFFER_MAX_SIZE] = ""; -+ char cmd[LARGE_BUFFER_MAX_SIZE] = ""; - - if (!T_FileStream_file_exists(installDir)) { - UErrorCode status = U_ZERO_ERROR; --- -1.9.1 - diff --git a/poky/meta/recipes-support/icu/icu_66.1.bb b/poky/meta/recipes-support/icu/icu_66.1.bb deleted file mode 100644 index a8096c184..000000000 --- a/poky/meta/recipes-support/icu/icu_66.1.bb +++ /dev/null @@ -1,67 +0,0 @@ -require icu.inc - -LIC_FILES_CHKSUM = "file://../LICENSE;md5=a3808a5b70071b07f87ff2205e4d75a0" - -def icu_download_version(d): - pvsplit = d.getVar('PV').split('.') - return pvsplit[0] + "_" + pvsplit[1] - -def icu_download_folder(d): - pvsplit = d.getVar('PV').split('.') - return pvsplit[0] + "-" + pvsplit[1] - -ICU_PV = "${@icu_download_version(d)}" -ICU_FOLDER = "${@icu_download_folder(d)}" - -# http://errors.yoctoproject.org/Errors/Details/20486/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" - -BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz" -DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip" -SRC_URI = "${BASE_SRC_URI};name=code \ - ${DATA_SRC_URI};name=data \ - file://filter.json \ - file://icu-pkgdata-large-cmd.patch \ - file://fix-install-manx.patch \ - file://0001-Fix-big-endian-build.patch;apply=no \ - file://0001-icu-Added-armeb-support.patch \ - file://CVE-2020-10531.patch \ - " - -SRC_URI_append_class-target = "\ - file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ - " -SRC_URI[code.sha256sum] = "52a3f2209ab95559c1cf0a14f24338001f389615bf00e2585ef3dbc43ecf0a2e" -SRC_URI[data.sha256sum] = "8be647f738891d2beb79d48f99077b3499948430eae6f1be112553b15ab0243e" - -UPSTREAM_CHECK_REGEX = "icu4c-(?P\d+(_\d+)+)-src" -UPSTREAM_CHECK_URI = "https://github.com/unicode-org/icu/releases" - -EXTRA_OECONF_append_libc-musl = " ac_cv_func_strtod_l=no" - -do_make_icudata_class-target () { - cd ${S} - rm -rf data - cp -a ${WORKDIR}/data . - patch -p1 < ${WORKDIR}/0001-Fix-big-endian-build.patch - AR='${BUILD_AR}' \ - CC='${BUILD_CC}' \ - CPP='${BUILD_CPP}' \ - CXX='${BUILD_CXX}' \ - RANLIB='${BUILD_RANLIB}' \ - CFLAGS='${BUILD_CFLAGS}' \ - CPPFLAGS='${BUILD_CPPFLAGS}' \ - CXXFLAGS='${BUILD_CXXFLAGS}' \ - LDFLAGS='${BUILD_LDFLAGS}' \ - ICU_DATA_FILTER_FILE=${WORKDIR}/filter.json \ - ./runConfigureICU Linux --with-data-packaging=archive - oe_runmake ${PARALLEL_MAKE} - install -Dm644 ${S}/data/out/icudt${ICU_MAJOR_VER}l.dat ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat -} - -do_make_icudata() { - : -} - -addtask make_icudata before do_configure after do_patch diff --git a/poky/meta/recipes-support/icu/icu_67.1.bb b/poky/meta/recipes-support/icu/icu_67.1.bb new file mode 100644 index 000000000..58638507c --- /dev/null +++ b/poky/meta/recipes-support/icu/icu_67.1.bb @@ -0,0 +1,63 @@ +require icu.inc + +LIC_FILES_CHKSUM = "file://../LICENSE;md5=a3808a5b70071b07f87ff2205e4d75a0" + +def icu_download_version(d): + pvsplit = d.getVar('PV').split('.') + return pvsplit[0] + "_" + pvsplit[1] + +def icu_download_folder(d): + pvsplit = d.getVar('PV').split('.') + return pvsplit[0] + "-" + pvsplit[1] + +ICU_PV = "${@icu_download_version(d)}" +ICU_FOLDER = "${@icu_download_folder(d)}" + +# http://errors.yoctoproject.org/Errors/Details/20486/ +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" + +BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz" +DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip" +SRC_URI = "${BASE_SRC_URI};name=code \ + ${DATA_SRC_URI};name=data \ + file://filter.json \ + file://fix-install-manx.patch \ + file://0001-icu-Added-armeb-support.patch \ + " + +SRC_URI_append_class-target = "\ + file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ + " +SRC_URI[code.sha256sum] = "94a80cd6f251a53bd2a997f6f1b5ac6653fe791dfab66e1eb0227740fb86d5dc" +SRC_URI[data.sha256sum] = "7c16a59cc8c06128b7ecc1dc4fc056b36b17349312829b17408b9e67b05c4a7e" + +UPSTREAM_CHECK_REGEX = "icu4c-(?P\d+(_\d+)+)-src" +UPSTREAM_CHECK_URI = "https://github.com/unicode-org/icu/releases" + +EXTRA_OECONF_append_libc-musl = " ac_cv_func_strtod_l=no" + +do_make_icudata_class-target () { + cd ${S} + rm -rf data + cp -a ${WORKDIR}/data . + AR='${BUILD_AR}' \ + CC='${BUILD_CC}' \ + CPP='${BUILD_CPP}' \ + CXX='${BUILD_CXX}' \ + RANLIB='${BUILD_RANLIB}' \ + CFLAGS='${BUILD_CFLAGS}' \ + CPPFLAGS='${BUILD_CPPFLAGS}' \ + CXXFLAGS='${BUILD_CXXFLAGS}' \ + LDFLAGS='${BUILD_LDFLAGS}' \ + ICU_DATA_FILTER_FILE=${WORKDIR}/filter.json \ + ./runConfigureICU Linux --with-data-packaging=archive + oe_runmake ${PARALLEL_MAKE} + install -Dm644 ${S}/data/out/icudt${ICU_MAJOR_VER}l.dat ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat +} + +do_make_icudata() { + : +} + +addtask make_icudata before do_configure after do_patch diff --git a/poky/meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch b/poky/meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch index e568cc47c..912f33f16 100644 --- a/poky/meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch +++ b/poky/meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch @@ -1,4 +1,4 @@ -From 1179b423cce8d119b42cebfb3daa77c540fdca43 Mon Sep 17 00:00:00 2001 +From 24d59c99bcba065f1f40f49f870a5f6483b4b078 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 15 Jan 2020 17:16:28 +0100 Subject: [PATCH] tests: do not statically link a test @@ -7,20 +7,40 @@ This fails on e.g. centos 7 Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Alexander Kanavin + --- - tests/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + tests/Makefile | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/Makefile b/tests/Makefile -index 7162cf0..6af47af 100644 +index f9cec56..aa0d09b 100644 --- a/tests/Makefile +++ b/tests/Makefile -@@ -29,7 +29,7 @@ psx_test_wrap: psx_test.c $(DEPS) +@@ -29,23 +29,23 @@ psx_test_wrap: psx_test.c $(DEPS) run_libcap_psx_test: libcap_psx_test libcap_psx_test: libcap_psx_test.c $(DEPS) - $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBCAPLIB) $(LIBPSXLIB) -Wl,-wrap,pthread_create --static + $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBCAPLIB) $(LIBPSXLIB) -Wl,-wrap,pthread_create + run_libcap_launch_test: libcap_launch_test libcap_psx_launch_test noop + sudo ./libcap_launch_test + sudo ./libcap_psx_launch_test + + libcap_launch_test: libcap_launch_test.c $(DEPS) +- $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBCAPLIB) --static ++ $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBCAPLIB) + + # this varies only slightly from the above insofar as it currently + # only links in the pthreads fork support. TODO() we need to change + # the source to do something interesting with pthreads. + libcap_psx_launch_test: libcap_launch_test.c $(DEPS) +- $(CC) $(CFLAGS) $(IPATH) -DWITH_PTHREADS $< -o $@ $(LIBCAPLIB) $(LIBPSXLIB) -Wl,-wrap,pthread_create --static ++ $(CC) $(CFLAGS) $(IPATH) -DWITH_PTHREADS $< -o $@ $(LIBCAPLIB) $(LIBPSXLIB) -Wl,-wrap,pthread_create + + noop: noop.c +- $(CC) $(CFLAGS) $< -o $@ --static ++ $(CC) $(CFLAGS) $< -o $@ + clean: - rm -f psx_test psx_test_wrap libcap_psx_test + rm -f psx_test psx_test_wrap libcap_psx_test libcap_launch_test *~ diff --git a/poky/meta/recipes-support/libcap/files/0004-psx.c-replace-pthread_yield-with-standard-sched_yiel.patch b/poky/meta/recipes-support/libcap/files/0004-psx.c-replace-pthread_yield-with-standard-sched_yiel.patch new file mode 100644 index 000000000..848ceb2c0 --- /dev/null +++ b/poky/meta/recipes-support/libcap/files/0004-psx.c-replace-pthread_yield-with-standard-sched_yiel.patch @@ -0,0 +1,24 @@ +From a2c4cdb05d0e382101b13944c09c4375e8d7de5f Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Tue, 31 Mar 2020 13:39:28 +0200 +Subject: [PATCH] psx.c: replace pthread_yield() with standard sched_yield() + +This was causing failures when building with musl C library in +particular. + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- +diff --git a/libcap/psx.c b/libcap/psx.c +index 04d250f..7e4ac10 100644 +--- a/libcap/psx.c ++++ b/libcap/psx.c +@@ -533,7 +533,7 @@ long int __psx_syscall(long int syscall_nr, ...) { + if (!waiting) { + break; + } +- pthread_yield(); ++ sched_yield(); + } + + errno = restore_errno; diff --git a/poky/meta/recipes-support/libcap/libcap_2.32.bb b/poky/meta/recipes-support/libcap/libcap_2.32.bb deleted file mode 100644 index d78a58f7d..000000000 --- a/poky/meta/recipes-support/libcap/libcap_2.32.bb +++ /dev/null @@ -1,77 +0,0 @@ -SUMMARY = "Library for getting/setting POSIX.1e capabilities" -HOMEPAGE = "http://sites.google.com/site/fullycapable/" - -# no specific GPL version required -LICENSE = "BSD | GPLv2" -LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1" - -DEPENDS = "hostperl-runtime-native gperf-native" - -SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \ - file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \ - file://0002-tests-do-not-run-target-executables.patch \ - file://0001-tests-do-not-statically-link-a-test.patch \ - " -SRC_URI[md5sum] = "7416119c9fdcfd0e8dd190a432c668e9" -SRC_URI[sha256sum] = "1005e3d227f2340ad1e3360ef8b69d15e3c72a29c09f4894d7aac038bd26e2be" - -UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/linux/libs/security/linux-privs/${BPN}2/" - -inherit lib_package - -# do NOT pass target cflags to host compilations -# -do_configure() { - # libcap uses := for compilers, fortunately, it gives us a hint - # on what should be replaced with ?= - sed -e 's,:=,?=,g' -i Make.Rules - sed -e 's,^BUILD_CFLAGS ?= $(.*CFLAGS),BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules -} - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" -PACKAGECONFIG_class-native ??= "" - -PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam" - -EXTRA_OEMAKE = " \ - INDENT= \ - lib='${baselib}' \ - RAISE_SETFCAP=no \ - DYNAMIC=yes \ - BUILD_GPERF=yes \ -" - -EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}" - -# these are present in the libcap defaults, so include in our CFLAGS too -CFLAGS += "-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" - -do_compile() { - oe_runmake ${PACKAGECONFIG_CONFARGS} -} - -do_install() { - oe_runmake install \ - ${PACKAGECONFIG_CONFARGS} \ - DESTDIR="${D}" \ - prefix="${prefix}" \ - SBINDIR="${sbindir}" -} - -do_install_append() { - # Move the library to base_libdir - install -d ${D}${base_libdir} - if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then - mv ${D}${libdir}/libcap* ${D}${base_libdir} - if [ -d ${D}${libdir}/security ]; then - mv ${D}${libdir}/security ${D}${base_libdir} - fi - fi -} - -FILES_${PN}-dev += "${base_libdir}/*.so" - -# pam files -FILES_${PN} += "${base_libdir}/security/*.so" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libcap/libcap_2.33.bb b/poky/meta/recipes-support/libcap/libcap_2.33.bb new file mode 100644 index 000000000..bec492ca5 --- /dev/null +++ b/poky/meta/recipes-support/libcap/libcap_2.33.bb @@ -0,0 +1,78 @@ +SUMMARY = "Library for getting/setting POSIX.1e capabilities" +HOMEPAGE = "http://sites.google.com/site/fullycapable/" + +# no specific GPL version required +LICENSE = "BSD | GPLv2" +LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1" + +DEPENDS = "hostperl-runtime-native gperf-native" + +SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \ + file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \ + file://0002-tests-do-not-run-target-executables.patch \ + file://0001-tests-do-not-statically-link-a-test.patch \ + file://0004-psx.c-replace-pthread_yield-with-standard-sched_yiel.patch \ + " +SRC_URI[md5sum] = "dcc6220b4a9bf260050b20c07edcddf4" +SRC_URI[sha256sum] = "08edeaba2757021aeec45c4eeec52566675e0e0f5d4f057284d729e04f2643d6" + +UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/linux/libs/security/linux-privs/${BPN}2/" + +inherit lib_package + +# do NOT pass target cflags to host compilations +# +do_configure() { + # libcap uses := for compilers, fortunately, it gives us a hint + # on what should be replaced with ?= + sed -e 's,:=,?=,g' -i Make.Rules + sed -e 's,^BUILD_CFLAGS ?= $(.*CFLAGS),BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules +} + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" +PACKAGECONFIG_class-native ??= "" + +PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam" + +EXTRA_OEMAKE = " \ + INDENT= \ + lib='${baselib}' \ + RAISE_SETFCAP=no \ + DYNAMIC=yes \ + BUILD_GPERF=yes \ +" + +EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}" + +# these are present in the libcap defaults, so include in our CFLAGS too +CFLAGS += "-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" + +do_compile() { + oe_runmake ${PACKAGECONFIG_CONFARGS} +} + +do_install() { + oe_runmake install \ + ${PACKAGECONFIG_CONFARGS} \ + DESTDIR="${D}" \ + prefix="${prefix}" \ + SBINDIR="${sbindir}" +} + +do_install_append() { + # Move the library to base_libdir + install -d ${D}${base_libdir} + if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then + mv ${D}${libdir}/libcap* ${D}${base_libdir} + if [ -d ${D}${libdir}/security ]; then + mv ${D}${libdir}/security ${D}${base_libdir} + fi + fi +} + +FILES_${PN}-dev += "${base_libdir}/*.so" + +# pam files +FILES_${PN} += "${base_libdir}/security/*.so" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/nettle/nettle-3.5.1/Add-target-to-only-build-tests-not-run-them.patch b/poky/meta/recipes-support/nettle/nettle-3.5.1/Add-target-to-only-build-tests-not-run-them.patch deleted file mode 100644 index c007060ee..000000000 --- a/poky/meta/recipes-support/nettle/nettle-3.5.1/Add-target-to-only-build-tests-not-run-them.patch +++ /dev/null @@ -1,38 +0,0 @@ -Add target to only build tests (not run them) - -Not sending upstream as this is only a start of a solution to -installable tests: It's useful for us already as is. - -Upstream-Status: Inappropriate [not a complete solution] - -Signed-off-by: Jussi Kukkonen -Refactored for 3.4 -Signed-off-by: Armin Kuster - -Index: nettle-3.4/Makefile.in -=================================================================== ---- nettle-3.4.orig/Makefile.in -+++ nettle-3.4/Makefile.in -@@ -55,6 +55,9 @@ clean distclean mostlyclean maintainer-c - echo "Making $@ in $$d" ; (cd $$d && $(MAKE) $@); done - $(MAKE) $@-here - -+buildtest: -+ echo "Making $@ in testsuite" ; (cd testsuite && $(MAKE) $@) -+ - check-here: - true - -Index: nettle-3.4/testsuite/Makefile.in -=================================================================== ---- nettle-3.4.orig/testsuite/Makefile.in -+++ nettle-3.4/testsuite/Makefile.in -@@ -131,6 +131,8 @@ $(TARGETS) $(EXTRA_TARGETS): testutils.$ - # data. - VALGRIND = valgrind --error-exitcode=1 --leak-check=full --show-reachable=yes @IF_ASM@ --partial-loads-ok=yes - -+buildtest: $(TS_ALL) -+ - # The PATH update is for windows dlls, DYLD_LIBRARY_PATH is for OSX. - check: $(TS_ALL) - LD_LIBRARY_PATH=../.lib PATH="../.lib:$$PATH" DYLD_LIBRARY_PATH=../.lib \ diff --git a/poky/meta/recipes-support/nettle/nettle-3.5.1/check-header-files-of-openssl-only-if-enable_.patch b/poky/meta/recipes-support/nettle/nettle-3.5.1/check-header-files-of-openssl-only-if-enable_.patch deleted file mode 100644 index d5f266681..000000000 --- a/poky/meta/recipes-support/nettle/nettle-3.5.1/check-header-files-of-openssl-only-if-enable_.patch +++ /dev/null @@ -1,36 +0,0 @@ -From ffee6b5f6204a0210f717968ec6ce514d70acca1 Mon Sep 17 00:00:00 2001 -From: Haiqing Bai -Date: Fri, 9 Dec 2016 15:23:17 +0800 -Subject: [PATCH] nettle: check header files of openssl only if - 'enable_openssl=yes'. - -The original configure script checks openssl header files to generate -config.h even if 'enable_openssl' is not set to yes, this made inconsistent -building for nettle. - -Upstream-Status: Pending -Signed-off-by: Haiqing Bai - -refactored for 3.4. pending not in as of 3.4 - -Signed-off-by: Armin Kuster - -Index: nettle-3.4/configure.ac -=================================================================== ---- nettle-3.4.orig/configure.ac -+++ nettle-3.4/configure.ac -@@ -185,9 +185,11 @@ AC_HEADER_TIME - AC_CHECK_SIZEOF(long) - AC_CHECK_SIZEOF(size_t) - --AC_CHECK_HEADERS([openssl/evp.h openssl/ecdsa.h],, --[enable_openssl=no -- break]) -+if test "x$enable_openssl" = "xyes"; then -+ AC_CHECK_HEADERS([openssl/evp.h openssl/ecdsa.h],, -+ [enable_openssl=no -+ break]) -+fi - - # For use by the testsuite - AC_CHECK_HEADERS([valgrind/memcheck.h]) diff --git a/poky/meta/recipes-support/nettle/nettle-3.5.1/dlopen-test.patch b/poky/meta/recipes-support/nettle/nettle-3.5.1/dlopen-test.patch deleted file mode 100644 index fea577420..000000000 --- a/poky/meta/recipes-support/nettle/nettle-3.5.1/dlopen-test.patch +++ /dev/null @@ -1,21 +0,0 @@ -Remove the relative path for libnettle.so so the test -program can find it. -Relative paths are not suitable, as the folder strucure for ptest -is different from the one expected by the nettle testsuite. - -Upstream-Status: Inappropriate [embedded specific] - -Signed-off-by: Juro Bystricky -Signed-off-by: Mingli Yu - ---- a/testsuite/dlopen-test.c 2016-10-01 00:28:38.000000000 -0700 -+++ b/testsuite/dlopen-test.c 2017-10-13 11:08:57.227572860 -0700 -@@ -9,7 +9,7 @@ - main (int argc UNUSED, char **argv UNUSED) - { - #if HAVE_LIBDL -- void *handle = dlopen ("../libnettle.so", RTLD_NOW); -+ void *handle = dlopen ("libnettle.so", RTLD_NOW); - int (*get_version)(void); - if (!handle) - { diff --git a/poky/meta/recipes-support/nettle/nettle-3.5.1/run-ptest b/poky/meta/recipes-support/nettle/nettle-3.5.1/run-ptest deleted file mode 100644 index b90bed66d..000000000 --- a/poky/meta/recipes-support/nettle/nettle-3.5.1/run-ptest +++ /dev/null @@ -1,36 +0,0 @@ -#! /bin/sh - -cd testsuite - -failed=0 -all=0 - -for f in *-test; do - if [ "$f" = "sha1-huge-test" ] ; then - echo "SKIP: $f (skipped for ludicrous run time)" - continue - fi - - "./$f" - case "$?" in - 0) - echo "PASS: $f" - all=$((all + 1)) - ;; - 77) - echo "SKIP: $f" - ;; - *) - echo "FAIL: $f" - failed=$((failed + 1)) - all=$((all + 1)) - ;; - esac -done - -if [ "$failed" -eq 0 ] ; then - echo "All $all tests passed" -else - echo "$failed of $all tests failed" -fi - diff --git a/poky/meta/recipes-support/nettle/nettle-3.6/Add-target-to-only-build-tests-not-run-them.patch b/poky/meta/recipes-support/nettle/nettle-3.6/Add-target-to-only-build-tests-not-run-them.patch new file mode 100644 index 000000000..e3f5c6de7 --- /dev/null +++ b/poky/meta/recipes-support/nettle/nettle-3.6/Add-target-to-only-build-tests-not-run-them.patch @@ -0,0 +1,45 @@ +Add target to only build tests (not run them) + +Not sending upstream as this is only a start of a solution to +installable tests: It's useful for us already as is. + +Upstream-Status: Inappropriate [not a complete solution] + +Signed-off-by: Jussi Kukkonen +Refactored for 3.4 +Signed-off-by: Armin Kuster +--- + Makefile.in | 3 +++ + testsuite/Makefile.in | 2 ++ + 2 files changed, 5 insertions(+) + +diff --git a/Makefile.in b/Makefile.in +index e5ccfc7..15c9275 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -52,6 +52,9 @@ clean distclean mostlyclean maintainer-clean tags: + echo "Making $@ in $$d" ; (cd $$d && $(MAKE) $@); done + $(MAKE) $@-here + ++buildtest: ++ echo "Making $@ in testsuite" ; (cd testsuite && $(MAKE) $@) ++ + check-here: + true + +diff --git a/testsuite/Makefile.in b/testsuite/Makefile.in +index 3f5e5f6..8fd68a3 100644 +--- a/testsuite/Makefile.in ++++ b/testsuite/Makefile.in +@@ -122,6 +122,8 @@ $(TARGETS) $(EXTRA_TARGETS): testutils.$(OBJEXT) ../nettle-internal.$(OBJEXT) \ + # data. + VALGRIND = valgrind --error-exitcode=1 --leak-check=full --show-reachable=yes @IF_ASM@ --partial-loads-ok=yes + ++buildtest: $(TS_ALL) ++ + check: $(TS_ALL) + TEST_SHLIB_DIR="$(TEST_SHLIB_DIR)" \ + srcdir="$(srcdir)" \ +-- +2.17.1 + diff --git a/poky/meta/recipes-support/nettle/nettle-3.6/check-header-files-of-openssl-only-if-enable_.patch b/poky/meta/recipes-support/nettle/nettle-3.6/check-header-files-of-openssl-only-if-enable_.patch new file mode 100644 index 000000000..d5f266681 --- /dev/null +++ b/poky/meta/recipes-support/nettle/nettle-3.6/check-header-files-of-openssl-only-if-enable_.patch @@ -0,0 +1,36 @@ +From ffee6b5f6204a0210f717968ec6ce514d70acca1 Mon Sep 17 00:00:00 2001 +From: Haiqing Bai +Date: Fri, 9 Dec 2016 15:23:17 +0800 +Subject: [PATCH] nettle: check header files of openssl only if + 'enable_openssl=yes'. + +The original configure script checks openssl header files to generate +config.h even if 'enable_openssl' is not set to yes, this made inconsistent +building for nettle. + +Upstream-Status: Pending +Signed-off-by: Haiqing Bai + +refactored for 3.4. pending not in as of 3.4 + +Signed-off-by: Armin Kuster + +Index: nettle-3.4/configure.ac +=================================================================== +--- nettle-3.4.orig/configure.ac ++++ nettle-3.4/configure.ac +@@ -185,9 +185,11 @@ AC_HEADER_TIME + AC_CHECK_SIZEOF(long) + AC_CHECK_SIZEOF(size_t) + +-AC_CHECK_HEADERS([openssl/evp.h openssl/ecdsa.h],, +-[enable_openssl=no +- break]) ++if test "x$enable_openssl" = "xyes"; then ++ AC_CHECK_HEADERS([openssl/evp.h openssl/ecdsa.h],, ++ [enable_openssl=no ++ break]) ++fi + + # For use by the testsuite + AC_CHECK_HEADERS([valgrind/memcheck.h]) diff --git a/poky/meta/recipes-support/nettle/nettle-3.6/dlopen-test.patch b/poky/meta/recipes-support/nettle/nettle-3.6/dlopen-test.patch new file mode 100644 index 000000000..ab9b91f88 --- /dev/null +++ b/poky/meta/recipes-support/nettle/nettle-3.6/dlopen-test.patch @@ -0,0 +1,29 @@ +Remove the relative path for libnettle.so so the test +program can find it. +Relative paths are not suitable, as the folder strucure for ptest +is different from the one expected by the nettle testsuite. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Juro Bystricky +Signed-off-by: Mingli Yu +--- + testsuite/dlopen-test.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/testsuite/dlopen-test.c b/testsuite/dlopen-test.c +index 4265bf7..1a25d17 100644 +--- a/testsuite/dlopen-test.c ++++ b/testsuite/dlopen-test.c +@@ -15,7 +15,7 @@ int + main (int argc UNUSED, char **argv UNUSED) + { + #if HAVE_LIBDL +- void *handle = dlopen ("../libnettle." SO_EXT, RTLD_NOW); ++ void *handle = dlopen ("libnettle.so", RTLD_NOW); + int (*get_version)(void); + if (!handle) + { +-- +2.17.1 + diff --git a/poky/meta/recipes-support/nettle/nettle-3.6/run-ptest b/poky/meta/recipes-support/nettle/nettle-3.6/run-ptest new file mode 100644 index 000000000..b90bed66d --- /dev/null +++ b/poky/meta/recipes-support/nettle/nettle-3.6/run-ptest @@ -0,0 +1,36 @@ +#! /bin/sh + +cd testsuite + +failed=0 +all=0 + +for f in *-test; do + if [ "$f" = "sha1-huge-test" ] ; then + echo "SKIP: $f (skipped for ludicrous run time)" + continue + fi + + "./$f" + case "$?" in + 0) + echo "PASS: $f" + all=$((all + 1)) + ;; + 77) + echo "SKIP: $f" + ;; + *) + echo "FAIL: $f" + failed=$((failed + 1)) + all=$((all + 1)) + ;; + esac +done + +if [ "$failed" -eq 0 ] ; then + echo "All $all tests passed" +else + echo "$failed of $all tests failed" +fi + diff --git a/poky/meta/recipes-support/nettle/nettle_3.5.1.bb b/poky/meta/recipes-support/nettle/nettle_3.5.1.bb deleted file mode 100644 index d92db0ef9..000000000 --- a/poky/meta/recipes-support/nettle/nettle_3.5.1.bb +++ /dev/null @@ -1,55 +0,0 @@ -SUMMARY = "A low level cryptographic library" -HOMEPAGE = "http://www.lysator.liu.se/~nisse/nettle/" -SECTION = "libs" -LICENSE = "LGPLv3+ | GPLv2+" - -LIC_FILES_CHKSUM = "file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \ - file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://serpent-decrypt.c;beginline=14;endline=36;md5=ca0d220bc413e1842ecc507690ce416e \ - file://serpent-set-key.c;beginline=14;endline=36;md5=ca0d220bc413e1842ecc507690ce416e" - -DEPENDS += "gmp" - -SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \ - file://Add-target-to-only-build-tests-not-run-them.patch \ - file://run-ptest \ - file://check-header-files-of-openssl-only-if-enable_.patch \ - " - -SRC_URI_append_class-target = "\ - file://dlopen-test.patch \ - " - -SRC_URI[md5sum] = "0e5707b418c3826768d41130fbe4ee86" -SRC_URI[sha256sum] = "75cca1998761b02e16f2db56da52992aef622bf55a3b45ec538bc2eedadc9419" - -UPSTREAM_CHECK_REGEX = "nettle-(?P\d+(\.\d+)+)\.tar" - -inherit autotools ptest multilib_header - -EXTRA_AUTORECONF += "--exclude=aclocal" - -EXTRA_OECONF = "--disable-openssl" -CFLAGS_append = " -std=gnu99" - -do_compile_ptest() { - oe_runmake buildtest -} - -do_install_append() { - oe_multilib_header nettle/version.h -} - -do_install_ptest() { - install -d ${D}${PTEST_PATH}/testsuite/ - install ${S}/testsuite/gold-bug.txt ${D}${PTEST_PATH}/testsuite/ - install ${S}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ - # tools can be found in PATH, not in ../tools/ - sed -i -e 's|../tools/||' ${D}${PTEST_PATH}/testsuite/*-test - install ${B}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ -} - -RDEPENDS_${PN}-ptest += "${PN}-dev" -INSANE_SKIP_${PN}-ptest += "dev-deps" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/nettle/nettle_3.6.bb b/poky/meta/recipes-support/nettle/nettle_3.6.bb new file mode 100644 index 000000000..90f8625ae --- /dev/null +++ b/poky/meta/recipes-support/nettle/nettle_3.6.bb @@ -0,0 +1,54 @@ +SUMMARY = "A low level cryptographic library" +HOMEPAGE = "http://www.lysator.liu.se/~nisse/nettle/" +SECTION = "libs" +LICENSE = "LGPLv3+ | GPLv2+" + +LIC_FILES_CHKSUM = "file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \ + file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://serpent-decrypt.c;beginline=14;endline=36;md5=ca0d220bc413e1842ecc507690ce416e \ + file://serpent-set-key.c;beginline=14;endline=36;md5=ca0d220bc413e1842ecc507690ce416e" + +DEPENDS += "gmp" + +SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \ + file://Add-target-to-only-build-tests-not-run-them.patch \ + file://run-ptest \ + file://check-header-files-of-openssl-only-if-enable_.patch \ + " + +SRC_URI_append_class-target = "\ + file://dlopen-test.patch \ + " + +SRC_URI[md5sum] = "c45ee24ed7361dcda152a035d396fe8a" +SRC_URI[sha256sum] = "d24c0d0f2abffbc8f4f34dcf114b0f131ec3774895f3555922fe2f40f3d5e3f1" + +UPSTREAM_CHECK_REGEX = "nettle-(?P\d+(\.\d+)+)\.tar" + +inherit autotools ptest multilib_header + +EXTRA_AUTORECONF += "--exclude=aclocal" + +EXTRA_OECONF = "--disable-openssl" + +do_compile_ptest() { + oe_runmake buildtest +} + +do_install_append() { + oe_multilib_header nettle/version.h +} + +do_install_ptest() { + install -d ${D}${PTEST_PATH}/testsuite/ + install ${S}/testsuite/gold-bug.txt ${D}${PTEST_PATH}/testsuite/ + install ${S}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ + # tools can be found in PATH, not in ../tools/ + sed -i -e 's|../tools/||' ${D}${PTEST_PATH}/testsuite/*-test + install ${B}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ +} + +RDEPENDS_${PN}-ptest += "${PN}-dev" +INSANE_SKIP_${PN}-ptest += "dev-deps" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/re2c/re2c_1.0.1.bb b/poky/meta/recipes-support/re2c/re2c_1.0.1.bb index 4ed8d257a..35200ecde 100644 --- a/poky/meta/recipes-support/re2c/re2c_1.0.1.bb +++ b/poky/meta/recipes-support/re2c/re2c_1.0.1.bb @@ -5,9 +5,10 @@ SECTION = "devel" LICENSE = "PD" LIC_FILES_CHKSUM = "file://README;beginline=146;md5=881056c9add17f8019ccd8c382ba963a" -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz" +SRC_URI = "https://github.com/skvadrik/re2c/releases/download/${PV}/${BPN}-${PV}.tar.gz" SRC_URI[md5sum] = "e2c6cf52fc6a21595f21bc82db5324f8" SRC_URI[sha256sum] = "605058d18a00e01bfc32aebf83af35ed5b13180b4e9f279c90843afab2c66c7c" +UPSTREAM_CHECK_URI = "https://github.com/skvadrik/re2c/releases" BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/vte/vte/0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch b/poky/meta/recipes-support/vte/vte/0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch deleted file mode 100644 index 9c3f98fa6..000000000 --- a/poky/meta/recipes-support/vte/vte/0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 442da9076b52003743ffc6fd7b9d647de6d7aa8f Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Thu, 17 Jan 2019 16:37:54 +0100 -Subject: [PATCH] app.cc: use old school asignment to avoid gcc 4.8 error - -This is needed to build vte-native on Centos 7, -and can be dropped once that OS is no longer supported. - -Upstream-Status: Inappropriate [ancient compiler fix] -Signed-off-by: Alexander Kanavin ---- - src/app/app.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/app/app.cc b/src/app/app.cc -index d424064..675d789 100644 ---- a/src/app/app.cc -+++ b/src/app/app.cc -@@ -306,7 +306,7 @@ public: - else - alpha = get_alpha(); - -- GdkRGBA color{bg_color}; -+ GdkRGBA color = bg_color; - color.alpha = alpha; - return color; - } diff --git a/poky/meta/recipes-support/vte/vte_0.60.2.bb b/poky/meta/recipes-support/vte/vte_0.60.2.bb index 3891ff816..4a33f6e4d 100644 --- a/poky/meta/recipes-support/vte/vte_0.60.2.bb +++ b/poky/meta/recipes-support/vte/vte_0.60.2.bb @@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = " \ file://COPYING.LGPL3;md5=b52f2d57d10c4f7ee67a7eb9615d5d24 \ " -DEPENDS = "glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native" +DEPENDS = "glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native icu" GNOMEBASEBUILDCLASS = "meson" GIR_MESON_OPTION = 'gir' @@ -17,7 +17,7 @@ GIR_MESON_OPTION = 'gir' inherit gnomebase gtk-doc features_check upstream-version-is-even gobject-introspection # vapigen.m4 is required when vala is not present (but the one from vala should be used normally) -SRC_URI += "file://0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch \ +SRC_URI += " \ file://0002-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \ " SRC_URI[archive.md5sum] = "1a0b5395915d2f3c88484511b38cc584" diff --git a/poky/scripts/runqemu b/poky/scripts/runqemu index 310d79fdc..21680b49d 100755 --- a/poky/scripts/runqemu +++ b/poky/scripts/runqemu @@ -420,6 +420,23 @@ class BaseConfig(object): logger.error("%s not a directory valid DEPLOY_DIR_IMAGE" % deploy_dir_image) self.set("MACHINE", arg) + def set_dri_path(self): + # As runqemu can be run within bitbake (when using testimage, for example), + # we need to ensure that we run host pkg-config, and that it does not + # get mis-directed to native build paths set by bitbake. + try: + del os.environ['PKG_CONFIG_PATH'] + del os.environ['PKG_CONFIG_DIR'] + del os.environ['PKG_CONFIG_LIBDIR'] + del os.environ['PKG_CONFIG_SYSROOT_DIR'] + except KeyError: + pass + try: + dripath = subprocess.check_output("PATH=/bin:/usr/bin:$PATH pkg-config --variable=dridriverdir dri", shell=True) + except subprocess.CalledProcessError as e: + raise RunQemuError("Could not determine the path to dri drivers on the host via pkg-config.\nPlease install Mesa development files (particularly, dri.pc) on the host machine.") + os.environ['LIBGL_DRIVERS_PATH'] = dripath.decode('utf-8').strip() + def check_args(self): for debug in ("-d", "--debug"): if debug in sys.argv: @@ -431,6 +448,9 @@ class BaseConfig(object): logger.setLevel(logging.ERROR) sys.argv.remove(quiet) + if 'gl' not in sys.argv[1:] and 'gl-es' not in sys.argv[1:]: + os.environ['SDL_RENDER_DRIVER'] = 'software' + unknown_arg = "" for arg in sys.argv[1:]: if arg in self.fstypes + self.vmtypes + self.wictypes: @@ -440,15 +460,19 @@ class BaseConfig(object): self.kernel_cmdline_script += ' console=ttyS0' elif arg == 'sdl': if 'gl' in sys.argv[1:]: + self.set_dri_path() self.qemu_opt_script += ' -vga virtio -display sdl,gl=on' elif 'gl-es' in sys.argv[1:]: + self.set_dri_path() self.qemu_opt_script += ' -vga virtio -display sdl,gl=es' else: self.qemu_opt_script += ' -display sdl' elif arg == 'gtk': if 'gl' in sys.argv[1:]: + self.set_dri_path() self.qemu_opt_script += ' -vga virtio -display gtk,gl=on' elif 'gl-es' in sys.argv[1:]: + self.set_dri_path() self.qemu_opt_script += ' -vga virtio -display gtk,gl=es' else: self.qemu_opt_script += ' -display gtk' @@ -456,22 +480,8 @@ class BaseConfig(object): # These args are handled inside sdl or gtk blocks above pass elif arg == 'egl-headless': + self.set_dri_path() self.qemu_opt_script += ' -vga virtio -display egl-headless' - # As runqemu can be run within bitbake (when using testimage, for example), - # we need to ensure that we run host pkg-config, and that it does not - # get mis-directed to native build paths set by bitbake. - try: - del os.environ['PKG_CONFIG_PATH'] - del os.environ['PKG_CONFIG_DIR'] - del os.environ['PKG_CONFIG_LIBDIR'] - del os.environ['PKG_CONFIG_SYSROOT_DIR'] - except KeyError: - pass - try: - dripath = subprocess.check_output("PATH=/bin:/usr/bin:$PATH pkg-config --variable=dridriverdir dri", shell=True) - except subprocess.CalledProcessError as e: - raise RunQemuError("Could not determine the path to dri drivers on the host via pkg-config.\nPlease install Mesa development files (particularly, dri.pc) on the host machine.") - os.environ['LIBGL_DRIVERS_PATH'] = dripath.decode('utf-8').strip() elif arg == 'serial': self.kernel_cmdline_script += ' console=ttyS0' self.serialconsole = True diff --git a/poky/scripts/tiny/ksize.py b/poky/scripts/tiny/ksize.py index 8316b85cb..db2b9ec39 100755 --- a/poky/scripts/tiny/ksize.py +++ b/poky/scripts/tiny/ksize.py @@ -4,7 +4,7 @@ # # SPDX-License-Identifier: GPL-2.0-or-later # -# Display details of the kernel build size, broken up by built-in.o. Sort +# Display details of the kernel build size, broken up by built-in.[o,a]. Sort # the objects by size. Run from the top level kernel build directory. # # Author: Darren Hart @@ -59,7 +59,7 @@ class Report: p = Popen("ls " + subglob, shell=True, stdout=PIPE, stderr=PIPE, universal_newlines=True) for f in p.communicate()[0].splitlines(): path = os.path.dirname(f) - r.parts.append(Report.create(f, path, str(path) + "/*/built-in.o")) + r.parts.append(Report.create(f, path, str(path) + "/*/built-in.[o,a]")) r.parts.sort(reverse=True) for b in r.parts: @@ -139,7 +139,7 @@ def main(): else: assert False, "unhandled option" - glob = "arch/*/built-in.o */built-in.o" + glob = "arch/*/built-in.[o,a] */built-in.[o,a]" vmlinux = Report.create("vmlinux", "Linux Kernel", glob) vmlinux.show() -- cgit v1.2.3 From 1e34c2d0324cbcebab11799af2abb18f6639a535 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 29 May 2020 16:02:59 -0500 Subject: poky: subtree update:f468a73523..a35bf0e5d3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adrian Bunk (3): apt: Remove workarounds for host gcc < 5 apt: The C.UTF-8 locale is not portable gcc: Remove mudflap remnants Alexander Kanavin (5): devtool: do not write md5sums into upgraded recipes testresults.json: add duration of the tests as well bitbake.conf: propagate 'opengl' DISTRO_FEATURE to native/nativesdk from target libsdl2: enable opengl option for native/nativesdk, subject to 'opengl' in DISTRO_FEATURES qemu: enable virglrenderer and glx options subject to 'opengl' DISTRO_FEATURE Anuj Mittal (3): mtools: upgrade 4.0.23 -> 4.0.24 gsettings-desktop-schemas: upgrade 3.36.0 -> 3.36.1 libsoup-2.4: upgrade 2.68.4 -> 2.70.0 Aníbal Limón (3): recipes-kernel/linux-firmware: Add wlanmdsp.mbn to qcom-modem package recipes-kernel/linux-firmware: Add adreno-a630 firmware package linux-firmware: Update to 20200122 -> 20200421 Bruce Ashfield (3): linux-yocto/5.4: update to v5.4.38 linux-yocto/5.4: update to v5.4.40 kernel/reproducibility: kernel modules need SOURCE_DATE_EPOCH export Daniel Díaz (1): ltp: Add net-tools as rdependency Denys Dmytriyenko (1): xz: upgrade 5.2.4 -> 5.2.5 Diego (2): image_types: declare support for wic.zst bmap-tools: update development snapshot revision Gregor Zatko (1): sanity.bbclass: Detect and fail if 'inherit' is used in conf file Jacob Kroon (2): squashfs-tools: Backport fix for compiling with gcc 10 bitbake: doc: Clarify how task dependencies relate to RDEPENDS Jan-Simon Moeller (1): file: add bzip2-replacement-native to DEPENDS to fix sstate issue Joe Slater (2): acpica: Upgrade 20200214 -> 20200430 for gcc-10 fixes terminal.py: do not stop searching for auto Joshua Watt (7): pycryptodome: Import from meta-python pyelftools: Import from meta-python python3-pycryptodome(x): Upgrade 3.9.4 -> 3.9.7 python3-pyelftools: Upgrade 0.25 -> 0.26 diffoscope: upgrade 143 -> 144 python3-magic: upgrade 0.4.15 -> 0.4.18 checklayer: Skip layers without a collection Kai Kang (3): gcr: depends on gnupg-native libsecret: add meson option introspection Revert "webkitgtk, pinentry: require gobject-introspection-data in DISTRO_FEATURES when libsecret PACKAGECONFIG is enabled" Khem Raj (20): tune-cortexa55.inc: crc and crypto extentions are default on cortex-a55 tune-cortexa57.inc: Add new tune file gcc: Do not set -march for arm64 for libatomic aarch64: Adjust big.LITTLE tune files to use -mcpu armv8/tunes: Define TUNE_PKGARCH valgrind: Do not use outline-atomics on aarch64 gcc: Drop reverting __getauxval patch qemuarm64.conf: Use cortext-a57 as default tune glibc: Unify wordsize.h for arm and aarch64 glibc: Do not synthesize wordsize.h for arm multilibs multilib_header_wrapper.h: Remove pragma once multilib_header: Fall back to worsize form libc for bpf target multilib_header_wrapper: Drop using __MHWORDSIZE syslinux: Fix build with gcc10 valgrind: Backport upstream patch to fix __getauxval needs re2c: Upgrade to 1.3 libxcrypt: Upgrade to 4.4.16 ltp: Fix format security warnings with gcc10 musl: Update to tip of master cve-check: Run it after do_fetch Konrad Weihmann (1): lib/oe/recipeutils.py: passthrough of FETCHCMD Lee Chee Yang (1): qemu: fix CVE-2020-11869 Li Wang (1): linux-modules.tgz: fix file permissions to root Marek Vasut (1): libubootenv: Depend on zlib Martin Jansa (2): libsecret: inherit features_check webkitgtk, pinentry: require gobject-introspection-data in DISTRO_FEATURES when libsecret PACKAGECONFIG is enabled Michael Ho (6): package_rpm.bbclass: respect package overrides for the main package package.bbclass: add PACKAGE_ADD_METADATA to sstate variables package_ipk.bbclass: add PACKAGE_ADD_METADATA_IPK to sstate variables package_deb.bbclass: add PACKAGE_ADD_METADATA_DEB to sstate variables package_rpm.bbclass: add PACKAGE_ADD_METADATA_RPM to sstate variables ref-manual: add PACKAGE_ADD_METADATA documentation Ming Liu (1): at-spi2-atk: dont inherit features_check Mingli Yu (2): bison: fix the parallel build python3-setuptools: add the missing rdepends Naveen Saini (2): libva: upgrade 2.6.1 -> 2.7.1 libva-utils: upgrade 2.6.0 -> 2.7.1 Otavio Salvador (4): go-mod.bbclass: Add class for `go mod` support glide: Avoid use of 'go mod' support go-dep: Avoid use of 'go mod' support go.bbclass: Add `-trimpath` to default build flags Ovidiu Panait (4): lttng-modules: upgrade to 2.12.0 lttng-ust: upgrade to 2.12.0 lttng-modules: Fix "LTTng: vmalloc_sync_all symbol lookup failed" warnings lttng-tools: upgrade to 2.12.0 Paul Barker (2): archiver.bbclass: Make do_deploy_archives a recursive dependency avahi: Don't advertise example services by default Petr Vorel (1): ltp: Update to 20200515 Quentin Schulz (2): base/insane: Check pkgs lics are subset of recipe lics only once ref-manual: document new unlisted-pkg-lics insane-skip qa check Ricardo Ribalda (1): classes/image_types_wic: Reorder do_flush_pseudodb Richard Purdie (10): ghostscript: Remove leftover file layer.conf: Move to gatesgarth naming meta-poky/meta-yocto-bsp layer.conf: Move to depend on gatesgarth release codename ltp: Add missing dependencies on coreutils, bc, e2fsprogs and gdb resulttool/report: Remove leftover debugging resulttool/log: Add ability to dump ltp logs as well as ptest ltp: Exclude the memcg_stress tests due to timeout problems bitbake: event/ast: Add RecipePostKeyExpansion event multilib/recipes: Use new RecipePostKeyExpansion event poky.conf: Add Fedora 32, remove Ubuntu 19.04 and poky-2.7 Robert P. J. Day (3): common-licenses: add "Unlicense" license file ref-manual: delete long-unused comments in variable glossary bitbake: user manual: properly tag content as Robert Yang (1): archiver.bbclass: Fix duplicated SRC_URIs for do_ar_original Steve Sakoman (2): oeqa/concurrencytest: don't delete build directory for failed tests poky: Add Ubuntu 20.04 as a supported distro Vyacheslav Yurkov (1): bitbake: fetch2/cvs: Fix CVS fetcher clean method Wang Mingyu (6): freetype: upgrade 2.10.1 -> 2.10.2 watchdog: upgrade 5.15 -> 5.16 gnu-efi: upgrade 3.0.11 -> 3.0.12 boost: upgrade 1.72.0 -> 1.73.0 iso-codes: upgrade 4.4 -> 4.5.0 iproute2: upgrade 5.5.0 -> 5.6.0 zhengruoqin (3): make-mod-scripts: Fix dependence error. ruby: upgrade 2.7.0 -> 2.7.1 sysstat: upgrade 12.2.1 -> 12.2.2 Change-Id: I47d6a587b6f57ffd2da338f45cee51dfba471365 Signed-off-by: Andrew Geissler --- .../bitbake-user-manual-execution.xml | 4 +- .../bitbake-user-manual-metadata.xml | 3 + poky/bitbake/lib/bb/event.py | 4 + poky/bitbake/lib/bb/fetch2/cvs.py | 20 +- poky/bitbake/lib/bb/parse/ast.py | 3 + .../dev-manual/dev-manual-common-tasks.xml | 58 ++ poky/documentation/ref-manual/ref-classes.xml | 6 + poky/documentation/ref-manual/ref-qa-checks.xml | 25 + poky/documentation/ref-manual/ref-variables.xml | 605 +------------ poky/meta-poky/conf/distro/poky.conf | 4 +- poky/meta-poky/conf/layer.conf | 2 +- poky/meta-selftest/conf/layer.conf | 2 +- .../devtool-upgrade-test1_1.5.3.bb.upgraded | 1 - poky/meta-skeleton/conf/layer.conf | 2 +- poky/meta-yocto-bsp/conf/layer.conf | 2 +- poky/meta/classes/archiver.bbclass | 12 +- poky/meta/classes/base.bbclass | 16 +- poky/meta/classes/cve-check.bbclass | 2 +- poky/meta/classes/fontcache.bbclass | 2 +- poky/meta/classes/go-mod.bbclass | 20 + poky/meta/classes/go.bbclass | 2 +- poky/meta/classes/image_types.bbclass | 2 +- poky/meta/classes/image_types_wic.bbclass | 2 +- poky/meta/classes/insane.bbclass | 21 +- poky/meta/classes/kernel.bbclass | 16 + poky/meta/classes/multilib.bbclass | 28 +- poky/meta/classes/package.bbclass | 4 +- poky/meta/classes/package_deb.bbclass | 5 +- poky/meta/classes/package_ipk.bbclass | 2 +- poky/meta/classes/package_rpm.bbclass | 26 +- poky/meta/classes/sanity.bbclass | 6 + poky/meta/conf/bitbake.conf | 4 +- poky/meta/conf/distro/include/maintainers.inc | 5 +- poky/meta/conf/layer.conf | 4 +- poky/meta/conf/machine/include/tune-cortexa53.inc | 4 + poky/meta/conf/machine/include/tune-cortexa55.inc | 11 +- .../machine/include/tune-cortexa57-cortexa53.inc | 10 +- poky/meta/conf/machine/include/tune-cortexa57.inc | 19 + .../machine/include/tune-cortexa72-cortexa53.inc | 13 +- poky/meta/conf/machine/include/tune-cortexa72.inc | 1 + .../machine/include/tune-cortexa73-cortexa53.inc | 13 +- poky/meta/conf/machine/qemuarm64.conf | 2 +- poky/meta/files/common-licenses/Unlicense | 24 + poky/meta/lib/oe/classextend.py | 35 +- poky/meta/lib/oe/recipeutils.py | 12 + poky/meta/lib/oe/terminal.py | 5 +- poky/meta/lib/oeqa/core/runner.py | 6 +- poky/meta/lib/oeqa/core/utils/concurrencytest.py | 10 +- poky/meta/lib/oeqa/selftest/cases/imagefeatures.py | 2 +- poky/meta/lib/oeqa/selftest/cases/runtime_test.py | 18 +- poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb | 71 -- poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb | 71 ++ poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb | 2 +- poky/meta/recipes-connectivity/avahi/avahi_0.8.bb | 5 + .../iproute2/iproute2_5.5.0.bb | 12 - .../iproute2/iproute2_5.6.0.bb | 12 + poky/meta/recipes-core/glibc/glibc-package.inc | 4 +- ...-Unify-the-header-between-arm-and-aarch64.patch | 67 ++ poky/meta/recipes-core/glibc/glibc_2.31.bb | 1 + .../libxcrypt/libxcrypt-compat_4.4.15.bb | 18 - .../libxcrypt/libxcrypt-compat_4.4.16.bb | 18 + poky/meta/recipes-core/libxcrypt/libxcrypt.inc | 2 +- .../recipes-core/libxcrypt/libxcrypt_4.4.15.bb | 2 - .../recipes-core/libxcrypt/libxcrypt_4.4.16.bb | 2 + poky/meta/recipes-core/musl/musl_git.bb | 2 +- .../packagegroups/packagegroup-base.bb | 8 +- poky/meta/recipes-core/psplash/psplash_git.bb | 5 +- .../meta/recipes-devtools/apt/apt-native_1.2.31.bb | 4 +- poky/meta/recipes-devtools/apt/apt.inc | 1 + ...-locale-is-not-portable-use-std-locale-cl.patch | 27 + ...d-changing-the-global-LC_TIME-for-Release.patch | 80 -- ...de-localed-std-put_time-instead-rolling-o.patch | 46 - ...kg-contrib-strutl.cc-Include-array-header.patch | 33 - .../bison/0001-bison-fix-the-parallel-build.patch | 63 ++ poky/meta/recipes-devtools/bison/bison_3.5.4.bb | 1 + poky/meta/recipes-devtools/file/file_5.38.bb | 2 +- poky/meta/recipes-devtools/gcc/gcc-10.1.inc | 4 +- ...h64-Use-__getauxval-instead-of-getauxval-.patch | 47 -- ...libatomic-Do-not-enforce-march-on-aarch64.patch | 42 + poky/meta/recipes-devtools/gcc/gcc-runtime.inc | 19 - poky/meta/recipes-devtools/glide/glide_0.13.3.bb | 4 + poky/meta/recipes-devtools/go/go-dep_0.5.4.bb | 4 + .../mtools/mtools/disable-hardcoded-configs.patch | 6 +- poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb | 51 -- poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb | 51 ++ poky/meta/recipes-devtools/perl/perl_5.30.2.bb | 2 +- .../python/python-pycryptodome.inc | 26 + .../recipes-devtools/python/python-setuptools.inc | 2 + .../python/python3-magic_0.4.15.bb | 19 - .../python/python3-magic_0.4.18.bb | 19 + .../python/python3-pycryptodome_3.9.7.bb | 5 + .../python/python3-pycryptodomex_3.9.7.bb | 9 + .../python/python3-pyelftools_0.26.bb | 14 + poky/meta/recipes-devtools/python/python3_3.8.2.bb | 14 +- .../qemu/qemu-system-native_4.2.0.bb | 4 +- poky/meta/recipes-devtools/qemu/qemu.inc | 1 + .../qemu/qemu/CVE-2020-11869.patch | 97 +++ poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb | 5 +- poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb | 92 -- poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb | 92 ++ ...fs-tools-fix-build-failure-against-gcc-10.patch | 45 + .../squashfs-tools/squashfs-tools_git.bb | 1 + ...ound-multiple-definition-of-symbol-errors.patch | 97 +++ .../syslinux/syslinux_6.04-pre2.bb | 1 + ...-build-needs-__getauxval-for-linking-with.patch | 144 ++++ .../recipes-devtools/valgrind/valgrind_3.15.0.bb | 1 + .../recipes-extended/acpica/acpica_20200214.bb | 49 -- .../recipes-extended/acpica/acpica_20200430.bb | 49 ++ .../recipes-extended/ghostscript/ghostscript/i686 | 1 - .../ltp/ltp/0001-Add-more-musl-exclusions.patch | 28 +- ...-Add-option-to-select-libc-implementation.patch | 47 +- .../0001-ptrace01-Fix-missing-format-string.patch | 33 + ...eck-for-time64-unsafe-syscalls-before-usi.patch | 122 --- ...__GLIBC_PREREQ-is-defined-before-using-it.patch | 55 -- .../ltp/0004-guard-mallocopt-with-__GLIBC__.patch | 4 +- ...etwork-nfsv4-acl-acl1.c-Security-fix-on-s.patch | 42 - poky/meta/recipes-extended/ltp/ltp_20200120.bb | 114 --- poky/meta/recipes-extended/ltp/ltp_20200515.bb | 121 +++ .../packagegroup-core-full-cmdline.bb | 10 +- .../recipes-extended/sysstat/sysstat_12.2.1.bb | 8 - .../recipes-extended/sysstat/sysstat_12.2.2.bb | 8 + ...inux-param.h-for-EXEC_PAGESIZE-definition.patch | 32 - .../recipes-extended/watchdog/watchdog_5.15.bb | 72 -- .../recipes-extended/watchdog/watchdog_5.16.bb | 71 ++ poky/meta/recipes-extended/xz/xz_5.2.4.bb | 43 - poky/meta/recipes-extended/xz/xz_5.2.5.bb | 43 + poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb | 2 +- .../gsettings-desktop-schemas_3.36.0.bb | 18 - .../gsettings-desktop-schemas_3.36.1.bb | 18 + poky/meta/recipes-gnome/gtk+/gtk+3.inc | 2 + .../0001-meson-add-option-introspection.patch | 137 +++ .../recipes-gnome/libsecret/libsecret_0.20.3.bb | 6 +- poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb | 2 + .../recipes-graphics/freetype/freetype_2.10.1.bb | 47 -- .../recipes-graphics/freetype/freetype_2.10.2.bb | 47 ++ .../recipes-graphics/libepoxy/libepoxy_1.5.4.bb | 2 - .../recipes-graphics/libsdl2/libsdl2_2.0.12.bb | 4 +- .../recipes-graphics/libva/libva-initial_2.6.1.bb | 9 - .../recipes-graphics/libva/libva-initial_2.7.1.bb | 8 + .../recipes-graphics/libva/libva-utils_2.6.0.bb | 32 - .../recipes-graphics/libva/libva-utils_2.7.1.bb | 32 + poky/meta/recipes-graphics/libva/libva_2.6.1.bb | 24 - poky/meta/recipes-graphics/libva/libva_2.7.1.bb | 23 + poky/meta/recipes-graphics/mesa/mesa.inc | 10 +- .../virglrenderer/virglrenderer_0.8.2.bb | 2 - .../linux-firmware/linux-firmware_20200122.bb | 936 -------------------- .../linux-firmware/linux-firmware_20200421.bb | 938 +++++++++++++++++++++ .../recipes-kernel/linux/linux-yocto-rt_5.4.bb | 6 +- .../recipes-kernel/linux/linux-yocto-tiny_5.4.bb | 8 +- poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb | 22 +- ...kernel-5.7-use-vmalloc_sync_mappings-on-k.patch | 853 +++++++++++++++++++ ...-wrapper-rename-to-wrapper_vmalloc_sync_m.patch | 32 + ...alloc_sync_mappings-on-kernel-5.6-as-well.patch | 88 ++ ...-vmalloc_sync_mappings-for-stable-kernels.patch | 67 ++ .../recipes-kernel/lttng/lttng-modules_2.11.2.bb | 43 - .../recipes-kernel/lttng/lttng-modules_2.12.0.bb | 47 ++ ...st-events-ns-tp.h-Fix-build-with-musl-lib.patch | 43 + .../recipes-kernel/lttng/lttng-tools/x32.patch | 36 - .../recipes-kernel/lttng/lttng-tools_2.11.2.bb | 166 ---- .../recipes-kernel/lttng/lttng-tools_2.12.0.bb | 166 ++++ poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb | 51 -- poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb | 51 ++ .../make-mod-scripts/make-mod-scripts_1.0.bb | 2 + .../recipes-multimedia/alsa/alsa-plugins_1.2.1.bb | 6 +- poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb | 4 +- .../meta/recipes-support/atk/at-spi2-atk_2.34.2.bb | 2 +- .../recipes-support/bmap-tools/bmap-tools_3.5.bb | 2 +- poky/meta/recipes-support/boost/boost.inc | 10 +- .../recipes-support/diffoscope/diffoscope_143.bb | 18 - .../recipes-support/diffoscope/diffoscope_144.bb | 18 + .../recipes-support/iso-codes/iso-codes_4.4.bb | 19 - .../recipes-support/iso-codes/iso-codes_4.5.0.bb | 19 + .../recipes-support/libsoup/libsoup-2.4_2.68.4.bb | 43 - .../recipes-support/libsoup/libsoup-2.4_2.70.0.bb | 43 + .../recipes-support/pinentry/pinentry_1.1.0.bb | 1 - poky/meta/recipes-support/re2c/re2c_1.0.1.bb | 15 - poky/meta/recipes-support/re2c/re2c_1.3.bb | 14 + poky/scripts/lib/checklayer/__init__.py | 3 + poky/scripts/lib/devtool/upgrade.py | 4 +- poky/scripts/lib/resulttool/log.py | 21 +- poky/scripts/lib/resulttool/report.py | 1 - poky/scripts/lib/resulttool/resultutils.py | 22 +- poky/scripts/multilib_header_wrapper.h | 21 +- 183 files changed, 4456 insertions(+), 3344 deletions(-) create mode 100644 poky/meta/classes/go-mod.bbclass create mode 100644 poky/meta/conf/machine/include/tune-cortexa57.inc create mode 100644 poky/meta/files/common-licenses/Unlicense delete mode 100644 poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb create mode 100644 poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb delete mode 100644 poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb create mode 100644 poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb create mode 100644 poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch delete mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb create mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb delete mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb create mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb create mode 100644 poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch delete mode 100644 poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch delete mode 100644 poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch delete mode 100644 poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch create mode 100644 poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch delete mode 100644 poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb create mode 100644 poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb create mode 100644 poky/meta/recipes-devtools/python/python-pycryptodome.inc delete mode 100644 poky/meta/recipes-devtools/python/python3-magic_0.4.15.bb create mode 100644 poky/meta/recipes-devtools/python/python3-magic_0.4.18.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.7.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.7.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pyelftools_0.26.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch delete mode 100644 poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb create mode 100644 poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb create mode 100644 poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch create mode 100644 poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch create mode 100644 poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch delete mode 100644 poky/meta/recipes-extended/acpica/acpica_20200214.bb create mode 100644 poky/meta/recipes-extended/acpica/acpica_20200430.bb delete mode 120000 poky/meta/recipes-extended/ghostscript/ghostscript/i686 create mode 100644 poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp_20200120.bb create mode 100644 poky/meta/recipes-extended/ltp/ltp_20200515.bb delete mode 100644 poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb create mode 100644 poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb delete mode 100644 poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch delete mode 100644 poky/meta/recipes-extended/watchdog/watchdog_5.15.bb create mode 100644 poky/meta/recipes-extended/watchdog/watchdog_5.16.bb delete mode 100644 poky/meta/recipes-extended/xz/xz_5.2.4.bb create mode 100644 poky/meta/recipes-extended/xz/xz_5.2.5.bb delete mode 100644 poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb create mode 100644 poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb create mode 100644 poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch delete mode 100644 poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb create mode 100644 poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb create mode 100644 poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb create mode 100644 poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva_2.6.1.bb create mode 100644 poky/meta/recipes-graphics/libva/libva_2.7.1.bb delete mode 100644 poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb create mode 100644 poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb delete mode 100644 poky/meta/recipes-support/diffoscope/diffoscope_143.bb create mode 100644 poky/meta/recipes-support/diffoscope/diffoscope_144.bb delete mode 100644 poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb create mode 100644 poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb delete mode 100644 poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb create mode 100644 poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb delete mode 100644 poky/meta/recipes-support/re2c/re2c_1.0.1.bb create mode 100644 poky/meta/recipes-support/re2c/re2c_1.3.bb (limited to 'poky/meta/recipes-graphics') diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml index 6c5234ed9..e4251dff5 100644 --- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml +++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml @@ -618,12 +618,12 @@ Tasks can be either a shell task or a Python task. For shell tasks, BitBake writes a shell script to - ${T}/run.do_taskname.pid + ${T}/run.do_taskname.pid and then executes the script. The generated shell script contains all the exported variables, and the shell functions with all variables expanded. Output from the shell script goes to the file - ${T}/log.do_taskname.pid. + ${T}/log.do_taskname.pid. Looking at the expanded shell functions in the run file and the output in the log files is a useful debugging technique. diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml index 10b588352..95a8b95b1 100644 --- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml +++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml @@ -2526,6 +2526,9 @@ In the previous example, the do_packagedata task of each item in RDEPENDS must have completed before do_package_qa can execute. + Although RDEPENDS contains entries from the + runtime dependency namespace, BitBake knows how to map them back + to the build-time dependency namespace, in which the tasks are defined. diff --git a/poky/bitbake/lib/bb/event.py b/poky/bitbake/lib/bb/event.py index d1359f010..0e6d9b296 100644 --- a/poky/bitbake/lib/bb/event.py +++ b/poky/bitbake/lib/bb/event.py @@ -389,6 +389,10 @@ class RecipeEvent(Event): class RecipePreFinalise(RecipeEvent): """ Recipe Parsing Complete but not yet finalised""" +class RecipePostKeyExpansion(RecipeEvent): + """ Recipe Parsing Complete but not yet finalised""" + + class RecipeTaskPreProcess(RecipeEvent): """ Recipe Tasks about to be finalised diff --git a/poky/bitbake/lib/bb/fetch2/cvs.py b/poky/bitbake/lib/bb/fetch2/cvs.py index 29123a483..22abdef79 100644 --- a/poky/bitbake/lib/bb/fetch2/cvs.py +++ b/poky/bitbake/lib/bb/fetch2/cvs.py @@ -51,6 +51,10 @@ class Cvs(FetchMethod): ud.localfile = d.expand('%s_%s_%s_%s%s%s.tar.gz' % (ud.module.replace('/', '.'), ud.host, ud.tag, ud.date, norecurse, fullpath)) + pkg = d.getVar('PN') + cvsdir = d.getVar("CVSDIR") or (d.getVar("DL_DIR") + "/cvs") + ud.pkgdir = os.path.join(cvsdir, pkg) + def need_update(self, ud, d): if (ud.date == "now"): return True @@ -106,10 +110,7 @@ class Cvs(FetchMethod): # create module directory logger.debug(2, "Fetch: checking for module directory") - pkg = d.getVar('PN') - cvsdir = d.getVar("CVSDIR") or (d.getVar("DL_DIR") + "/cvs") - pkgdir = os.path.join(cvsdir, pkg) - moddir = os.path.join(pkgdir, localdir) + moddir = os.path.join(ud.pkgdir, localdir) workdir = None if os.access(os.path.join(moddir, 'CVS'), os.R_OK): logger.info("Update " + ud.url) @@ -120,8 +121,8 @@ class Cvs(FetchMethod): else: logger.info("Fetch " + ud.url) # check out sources there - bb.utils.mkdirhier(pkgdir) - workdir = pkgdir + bb.utils.mkdirhier(ud.pkgdir) + workdir = ud.pkgdir logger.debug(1, "Running %s", cvscmd) bb.fetch2.check_network_access(d, cvscmd, ud.url) cmd = cvscmd @@ -140,7 +141,7 @@ class Cvs(FetchMethod): # tar them up to a defined filename workdir = None if 'fullpath' in ud.parm: - workdir = pkgdir + workdir = ud.pkgdir cmd = "tar %s -czf %s %s" % (tar_flags, ud.localpath, localdir) else: workdir = os.path.dirname(os.path.realpath(moddir)) @@ -151,9 +152,6 @@ class Cvs(FetchMethod): def clean(self, ud, d): """ Clean CVS Files and tarballs """ - pkg = d.getVar('PN') - pkgdir = os.path.join(d.getVar("CVSDIR"), pkg) - - bb.utils.remove(pkgdir, True) + bb.utils.remove(ud.pkgdir, True) bb.utils.remove(ud.localpath) diff --git a/poky/bitbake/lib/bb/parse/ast.py b/poky/bitbake/lib/bb/parse/ast.py index eb8cfa21b..785aa974e 100644 --- a/poky/bitbake/lib/bb/parse/ast.py +++ b/poky/bitbake/lib/bb/parse/ast.py @@ -338,6 +338,9 @@ def finalize(fn, d, variant = None): bb.event.fire(bb.event.RecipePreFinalise(fn), d) bb.data.expandKeys(d) + + bb.event.fire(bb.event.RecipePostKeyExpansion(fn), d) + runAnonFuncs(d) tasklist = d.getVar('__BBTASKS', False) or [] diff --git a/poky/documentation/dev-manual/dev-manual-common-tasks.xml b/poky/documentation/dev-manual/dev-manual-common-tasks.xml index e9ce182a5..605d1ad7e 100644 --- a/poky/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/poky/documentation/dev-manual/dev-manual-common-tasks.xml @@ -9057,6 +9057,9 @@ Creating node package manager (NPM) packages + + Adding custom metadata to packages + @@ -10761,6 +10764,61 @@ + +
+ Adding custom metadata to packages + + + The variable PACKAGE_ADD_METADATA + can be used to add additional metadata to packages. This is + reflected in the package control/spec file. To take the ipk + format for example, the CONTROL file stored inside would + contain the additional metadata as additional lines. + + + + The variable can be used in multiple ways, including using + suffixes to set it for a specific package type and/or package. + Note that the order of precedence is the same as this list: + + + PACKAGE_ADD_METADATA_<PKGTYPE>_<PN> + + + PACKAGE_ADD_METADATA_<PKGTYPE> + + + PACKAGE_ADD_METADATA_<PN> + + + PACKAGE_ADD_METADATA + + + <PKGTYPE> is a parameter and expected to be a + distinct name of specific package type: + + IPK for .ipk packages + DEB for .deb packages + RPM for .rpm packages + + <PN> is a parameter and expected to be a package name. + + + + The variable can contain multiple [one-line] metadata fields + separated by the literal sequence '\n'. The separator can be + redefined using the variable flag separator. + + + + The following is an example that adds two custom fields for + ipk packages: + + PACKAGE_ADD_METADATA_IPK = "Vendor: CustomIpk\nGroup: Applications/Spreadsheets" + + +
+
diff --git a/poky/documentation/ref-manual/ref-classes.xml b/poky/documentation/ref-manual/ref-classes.xml index f9bbddd72..f8920d8c1 100644 --- a/poky/documentation/ref-manual/ref-classes.xml +++ b/poky/documentation/ref-manual/ref-classes.xml @@ -1742,6 +1742,12 @@ This check was removed for YP 2.3 release --> + unlisted-pkg-lics: + Checks that all declared licenses applying for a package are also + declared on the recipe level (i.e. any license in + LICENSE_* should appear in + LICENSE). + useless-rpaths: Checks for dynamic library load paths (rpaths) in the binaries that by default on a standard system are searched by the linker (e.g. diff --git a/poky/documentation/ref-manual/ref-qa-checks.xml b/poky/documentation/ref-manual/ref-qa-checks.xml index 515106ae6..424a19c59 100644 --- a/poky/documentation/ref-manual/ref-qa-checks.xml +++ b/poky/documentation/ref-manual/ref-qa-checks.xml @@ -1170,6 +1170,31 @@ can be found then it should be implemented. I can't find one at the moment. + + + + + + + LICENSE_<packagename> includes licenses (<licenses>) that are not listed in LICENSE [unlisted-pkg-lics] + + + + + The LICENSE + of the recipe should be a superset of all the licenses of + all packages produced by this recipe. + In other words, any license in LICENSE_* + should also appear in + LICENSE. + + + +   + + + +
diff --git a/poky/documentation/ref-manual/ref-variables.xml b/poky/documentation/ref-manual/ref-variables.xml index 9ebe72cbd..657f6cf3d 100644 --- a/poky/documentation/ref-manual/ref-variables.xml +++ b/poky/documentation/ref-manual/ref-variables.xml @@ -52,7 +52,6 @@ - Extension to the Application Binary Interface (ABI) field of the GNU canonical architecture name (e.g. "eabi"). @@ -76,7 +75,6 @@ - Specifies whether to produce an output package even if it is empty. By default, BitBake does not produce empty packages. @@ -103,7 +101,6 @@ - Lists commands in a package that need an alternative binary naming scheme. Sometimes the same command is provided in multiple packages. @@ -134,7 +131,6 @@ - Used by the alternatives system to map duplicated commands to actual locations. For example, if the bracket command @@ -174,7 +170,6 @@ - Used by the alternatives system to create default priorities for duplicated commands. You can use the variable to create a single default @@ -203,7 +198,6 @@ - Used by the alternatives system to create default link locations for duplicated commands. You can use the variable to create a single default @@ -258,7 +252,6 @@ - An override list of append strings for each target specified with LABELS. @@ -278,7 +271,6 @@ - The minimal command and arguments used to run ar. @@ -291,7 +283,6 @@ - When used with the archiver class, determines the type of information used to create @@ -334,7 +325,6 @@ - Minimal command and arguments needed to run the assembler. @@ -347,7 +337,6 @@ - Lists recipe names (PN values) BitBake does not attempt to build. @@ -371,7 +360,6 @@ - Provides additional shlibs provider mapping information, which adds to or overwrites the information provided automatically by the system. @@ -406,7 +394,6 @@ - The email address used to contact the original author or authors in order to send patches and forward bugs. @@ -419,7 +406,6 @@ - When the debian class is inherited, which is the default behavior, @@ -442,7 +428,6 @@ - Enables creating an automatic menu for the syslinux bootloader. You must set this variable in your recipe. @@ -459,7 +444,6 @@ - When SRCREV is set to the value of this variable, it specifies to use @@ -501,7 +485,6 @@ - List of licenses found in the directories specified by COMMON_LICENSE_DIR @@ -525,7 +508,6 @@ - The list of defined CPU and Application Binary Interface (ABI) tunings (i.e. "tunes") available for use by the OpenEmbedded build system. @@ -560,7 +542,6 @@ - The directory within the Build Directory in which the OpenEmbedded build system places generated @@ -590,7 +571,6 @@ - Lists "recommended-only" packages to not install. Recommended-only packages are packages installed only through the @@ -645,7 +625,6 @@ - The library directory name for the CPU or Application Binary Interface (ABI) tune. The BASE_LIB applies only in the @@ -671,7 +650,6 @@ - Points to the base of the work directory for all recipes. The default value is "${TMPDIR}/work". @@ -751,7 +729,6 @@ - Defines how BitBake handles situations where an append file (.bbappend) has no corresponding recipe file (.bb). @@ -789,7 +766,6 @@ - Monitors disk space and available inodes during the build and allows you to control the build based on these parameters. @@ -887,7 +863,6 @@ - Defines the disk space and free inode warning intervals. To set these intervals, define the variable in your conf/local.conf file in the @@ -959,7 +934,6 @@ - Causes tarballs of the source control repositories (e.g. Git repositories), including metadata, to be placed in the @@ -994,7 +968,6 @@ - The maximum number of tasks BitBake should run in parallel at any one time. The OpenEmbedded build system automatically configures @@ -1030,7 +1003,6 @@ - Specifies the time (in seconds) after which to unload the BitBake server due to inactivity. Set BB_SERVER_TIMEOUT to determine how @@ -1056,7 +1028,6 @@ - Allows you to extend a recipe so that it builds variants of the software. Common variants for recipes exist such as "natives" like quilt-native, which is a copy of Quilt built to run on the build system; @@ -1107,7 +1078,6 @@ - Lists the names of configured layers. These names are used to find the other BBFILE_* variables. @@ -1123,7 +1093,6 @@ - Variable that expands to match files from BBFILES in a particular layer. @@ -1140,7 +1109,6 @@ - Assigns the priority for recipe files in each layer. @@ -1183,7 +1151,6 @@ - A space-separated list of recipe files BitBake uses to build software. @@ -1205,7 +1172,6 @@ - Activates content when identified layers are present. You identify the layers by the collections that the layers define. @@ -1252,7 +1218,6 @@ - Variable that controls how BitBake displays logs on build failure. @@ -1264,7 +1229,6 @@ - If BBINCLUDELOGS is set, specifies the maximum number of lines from the @@ -1281,7 +1245,6 @@ - Lists the layers to enable during the build. This variable is defined in the bblayers.conf configuration file in the @@ -1310,7 +1273,6 @@ - Prevents BitBake from processing recipes and recipe append files. @@ -1372,7 +1334,6 @@ - Specifies each additional separate configuration when you are building targets with multiple configurations. Use this variable in your @@ -1408,7 +1369,6 @@ - Used by BitBake to locate .bbclass and configuration files. This variable is analogous to the @@ -1437,7 +1397,6 @@ - If defined in the BitBake environment, BBSERVER points to the BitBake remote server. @@ -1466,7 +1425,6 @@ - When inheriting the binconfig-disabled class, this variable specifies binary configuration @@ -1494,7 +1452,6 @@ - When inheriting the binconfig class, this variable specifies a wildcard for @@ -1533,7 +1490,6 @@ - The base recipe name and version but without any special recipe name suffix (i.e. -native, lib64-, and so forth). @@ -1551,7 +1507,6 @@ - This variable is a version of the PN variable with common prefixes and suffixes @@ -1576,7 +1531,6 @@ - Specifies a URL for an upstream bug tracking website for a recipe. The OpenEmbedded build system does not use this variable. @@ -1592,7 +1546,6 @@ - Specifies the architecture of the build host (e.g. i686). The OpenEmbedded build system sets the value of @@ -1608,7 +1561,6 @@ - Specifies the architecture-specific assembler flags for the build host. By default, the value of BUILD_AS_ARCH is empty. @@ -1622,7 +1574,6 @@ - Specifies the architecture-specific C compiler flags for the build host. By default, the value of BUILD_CC_ARCH is empty. @@ -1636,7 +1587,6 @@ - Specifies the linker command to be used for the build host when the C compiler is being used as the linker. By default, BUILD_CCLD points to GCC and passes as @@ -1653,7 +1603,6 @@ - Specifies the flags to pass to the C compiler when building for the build host. When building in the -native context, @@ -1669,7 +1618,6 @@ - Specifies the flags to pass to the C preprocessor (i.e. to both the C and the C++ compilers) when building for the build host. @@ -1686,7 +1634,6 @@ - Specifies the flags to pass to the C++ compiler when building for the build host. When building in the -native context, @@ -1702,7 +1649,6 @@ - Specifies the Fortran compiler command for the build host. By default, BUILD_FC points to Gfortran and passes as arguments the value of @@ -1718,7 +1664,6 @@ - Specifies the linker command for the build host. By default, BUILD_LD points to the GNU linker (ld) and passes as arguments the value of @@ -1734,7 +1679,6 @@ - Specifies architecture-specific linker flags for the build host. By default, the value of BUILD_LD_ARCH is empty. @@ -1748,7 +1692,6 @@ - Specifies the flags to pass to the linker when building for the build host. When building in the -native context, @@ -1764,7 +1707,6 @@ - Specifies the optimization flags passed to the C compiler when building for the build host or the SDK. The flags are passed through the @@ -1788,7 +1730,6 @@ - Specifies the operating system in use on the build host (e.g. "linux"). The OpenEmbedded build system sets the value of @@ -1805,7 +1746,6 @@ - The toolchain binary prefix used for native recipes. The OpenEmbedded build system uses the BUILD_PREFIX value to set the @@ -1821,7 +1761,6 @@ - Specifies the command to be used to strip debugging symbols from binaries produced for the build host. By default, BUILD_STRIP points to @@ -1836,7 +1775,6 @@ - Specifies the system, including the architecture and the operating system, to use when building for the build host (i.e. when building native @@ -1862,7 +1800,6 @@ - Specifies the vendor name to use when building for the build host. The default value is an empty string (""). @@ -1876,7 +1813,6 @@ - Points to the location of the Build Directory. You can define this directory indirectly through the @@ -1896,7 +1832,6 @@ - When inheriting the buildhistory class, this variable specifies whether or not to commit the @@ -1928,7 +1863,6 @@ - When inheriting the buildhistory class, this variable specifies the author to use for each @@ -1963,7 +1897,6 @@ - When inheriting the buildhistory class, this variable specifies the directory in which @@ -1988,7 +1921,6 @@ - When inheriting the buildhistory class, this variable specifies the build history features @@ -2041,7 +1973,6 @@ - When inheriting the buildhistory class, this variable specifies a list of paths to files @@ -2074,7 +2005,6 @@ - When inheriting the buildhistory class, this variable optionally specifies a remote @@ -2109,7 +2039,6 @@ - Specifies the flags to pass to the C compiler when building for the SDK. When building in the nativesdk- @@ -2126,7 +2055,6 @@ - Specifies the flags to pass to the C pre-processor (i.e. to both the C and the C++ compilers) when building for the SDK. @@ -2144,7 +2072,6 @@ - Specifies the flags to pass to the C++ compiler when building for the SDK. When building in the nativesdk- @@ -2161,7 +2088,6 @@ - Specifies the flags to pass to the linker when building for the SDK. When building in the nativesdk- @@ -2178,7 +2104,6 @@ - Points to the location of the directory that holds build statistics when you use and enable the buildstats @@ -2196,7 +2121,6 @@ - For the BusyBox recipe, specifies whether to split the output executable file into two parts: one for features that require setuid root, and one for @@ -2224,7 +2148,6 @@ - Specifies the directory BitBake uses to store a cache of the Metadata @@ -2240,7 +2163,6 @@ - The minimal command and arguments used to run the C compiler. @@ -2253,7 +2175,6 @@ - Specifies the flags to pass to the C compiler. This variable is exported to an environment variable and thus made visible to the software being @@ -2289,7 +2210,6 @@ - An internal variable specifying the special class override that should currently apply (e.g. "class-target", "class-native", and so forth). @@ -2333,7 +2253,6 @@ - If set to "1" within a recipe, CLEANBROKEN specifies that the make clean command does @@ -2352,7 +2271,6 @@ - Provides a list of hardware features that are enabled in both MACHINE_FEATURES @@ -2375,7 +2293,6 @@ - Points to meta/files/common-licenses in the Source Directory, @@ -2390,7 +2307,6 @@ - A regular expression that resolves to one or more hosts (when the recipe is native) or one or more targets (when the recipe is non-native) with which a recipe is compatible. @@ -2413,7 +2329,6 @@ - A regular expression that resolves to one or more target machines with which a recipe is compatible. The regular expression is matched against @@ -2434,7 +2349,6 @@ - Defines wildcards to match when installing a list of complementary packages for all the packages explicitly (or implicitly) installed in an image. @@ -2473,7 +2387,6 @@ - Stores sysroot components for each recipe. The OpenEmbedded build system uses COMPONENTS_DIR when constructing @@ -2494,7 +2407,6 @@ - Tracks the version of the local configuration file (i.e. local.conf). The value for CONF_VERSION @@ -2510,7 +2422,6 @@ - Identifies editable or configurable files that are part of a package. If the Package Management System (PMS) is being used to update packages on the target system, it is possible that @@ -2564,7 +2475,6 @@ - Identifies the initial RAM filesystem (initramfs) source files. The OpenEmbedded build system receives and uses @@ -2607,7 +2517,6 @@ - A list of files that contains autoconf test results relevant to the current build. This variable is used by the Autotools utilities when running @@ -2622,7 +2531,6 @@ - The minimal arguments for GNU configure. @@ -2634,7 +2542,6 @@ - When inheriting the distro_features_check class, this @@ -2657,7 +2564,6 @@ - A space-separated list of licenses to exclude from the source archived by the archiver @@ -2689,7 +2595,6 @@ - A space-separated list of licenses to include in the source archived by the archiver @@ -2717,7 +2622,6 @@ - A list of recipes to exclude in the source archived by the archiver @@ -2749,7 +2653,6 @@ - A list of recipes to include in the source archived by the archiver @@ -2781,7 +2684,6 @@ - A space-separated list of recipe types to include in the source archived by the archiver @@ -2811,7 +2713,6 @@ - If set to "1" along with the COPY_LIC_MANIFEST variable, the OpenEmbedded build system copies @@ -2843,7 +2744,6 @@ - If set to "1", the OpenEmbedded build system copies the license manifest for the image to /usr/share/common-licenses/license.manifest @@ -2871,7 +2771,6 @@ - Specifies the list of packages to be added to the image. You should only set this variable in the local.conf configuration file found @@ -2891,7 +2790,6 @@ - Specifies the parent directory of the OpenEmbedded-Core Metadata layer (i.e. meta). @@ -2917,7 +2815,6 @@ - Lists files from the COREBASE directory that should be copied other than the layers @@ -2946,7 +2843,6 @@ - The minimal command and arguments used to run the C preprocessor. @@ -2959,7 +2855,6 @@ - Specifies the flags to pass to the C pre-processor (i.e. to both the C and the C++ compilers). This variable is exported to an environment @@ -2996,7 +2891,6 @@ - The toolchain binary prefix for the target tools. The CROSS_COMPILE variable is the same as the @@ -3018,7 +2912,6 @@ - The directory in which files checked out under the CVS system are stored. @@ -3031,7 +2924,6 @@ - The minimal command and arguments used to run the C++ compiler. @@ -3044,7 +2936,6 @@ - Specifies the flags to pass to the C++ compiler. This variable is exported to an environment variable and thus made visible to the software being @@ -3084,7 +2975,6 @@ - The destination directory. The location in the Build Directory @@ -3110,7 +3000,6 @@ - The date the build was started. Dates appear using the year, month, and day (YMD) format (e.g. "20150209" for February 9th, 2015). @@ -3124,7 +3013,6 @@ - The date and time on which the current build started. The format is suitable for timestamps. @@ -3137,7 +3025,6 @@ - When the debian class is inherited, which is the default behavior, @@ -3161,7 +3048,6 @@ - When the debian class is inherited, which is the default behavior, @@ -3185,7 +3071,6 @@ - Specifies to build packages with debugging information. This influences the value of the SELECTED_OPTIMIZATION @@ -3200,7 +3085,6 @@ - The options to pass in TARGET_CFLAGS and CFLAGS when compiling @@ -3216,7 +3100,6 @@ - Specifies a weak bias for recipe selection priority. @@ -3246,7 +3129,6 @@ - The default CPU and Application Binary Interface (ABI) tunings (i.e. the "tune") used by the OpenEmbedded build system. @@ -3271,7 +3153,6 @@ - Lists a recipe's build-time dependencies. These are dependencies on other recipes whose contents (e.g. headers and shared libraries) are needed @@ -3394,7 +3275,6 @@ - Points to the general area that the OpenEmbedded build system uses to place images, packages, SDKs, and other output files that are ready to be used outside of the build system. @@ -3426,7 +3306,6 @@ - Points to the area that the OpenEmbedded build system uses to place Debian packages that are ready to be used outside of the build system. @@ -3466,7 +3345,6 @@ - Points to the area that the OpenEmbedded build system uses to place images and other associated output files that are ready to be deployed onto the target machine. @@ -3499,7 +3377,6 @@ - Points to the area that the OpenEmbedded build system uses to place IPK packages that are ready to be used outside of the build system. @@ -3538,7 +3415,6 @@ - Points to the area that the OpenEmbedded build system uses to place RPM packages that are ready to be used outside of the build system. @@ -3577,7 +3453,6 @@ - Points to the area that the OpenEmbedded build system uses to place tarballs that are ready to be used outside of the build system. @@ -3616,7 +3491,6 @@ - When inheriting the deploy class, the DEPLOYDIR points to a @@ -3644,7 +3518,6 @@ - The package description used by package managers. If not set, DESCRIPTION takes the value of the @@ -3660,7 +3533,6 @@ - The short name of the distribution. For information on the long name of the distribution, see the @@ -3713,7 +3585,6 @@ - Specifies a codename for the distribution being built. @@ -3725,7 +3596,6 @@ - Specifies a list of distro-specific packages to add to all images. This variable takes affect through packagegroup-base so the @@ -3745,7 +3615,6 @@ - Specifies a list of distro-specific packages to add to all images if the packages exist. The packages might not exist or be empty (e.g. kernel modules). @@ -3761,7 +3630,6 @@ - The software support you want in your distribution for various features. You define your distribution features in the distribution @@ -3798,7 +3666,6 @@ - Features to be added to DISTRO_FEATURES if not also present in @@ -3822,7 +3689,6 @@ - Features from DISTRO_FEATURES_BACKFILL that should not be backfilled (i.e. added to @@ -3840,7 +3706,6 @@ - A convenience variable that gives you the default list of distro features with the exception of any features specific to the C library @@ -3868,7 +3733,6 @@ - Specifies a list of features that if present in the target DISTRO_FEATURES @@ -3889,7 +3753,6 @@ - Specifies a list of features that if present in the target DISTRO_FEATURES value should be included in @@ -3910,7 +3773,6 @@ - A convenience variable that specifies the list of distro features that are specific to the C library (libc). @@ -3928,7 +3790,6 @@ - Specifies a list of features that should be included in DISTRO_FEATURES when building native recipes. @@ -3946,7 +3807,6 @@ - Specifies a list of features that should be included in DISTRO_FEATURES when building nativesdk recipes. @@ -3964,7 +3824,6 @@ - The long name of the distribution. For information on the short name of the distribution, see the @@ -4016,7 +3875,6 @@ - The version of the distribution. @@ -4028,7 +3886,6 @@ - A colon-separated list of overrides specific to the current distribution. By default, this list includes the value of @@ -4056,7 +3913,6 @@ - The central download directory used by the build process to store downloads. By default, DL_DIR gets files @@ -4119,7 +3975,6 @@ - When inheriting the compress_doc class, this variable sets the compression policy used when @@ -4147,7 +4002,6 @@ - When building bootable images (i.e. where hddimg, iso, or wic.vmdk is in @@ -4174,7 +4028,6 @@ - Variable that controls which locales for glibc are generated during the build (useful if the target device has 64Mbytes @@ -4189,7 +4042,6 @@ - When used with the report-error class, specifies the path used for storing the debug files @@ -4218,7 +4070,6 @@ - Specifies the quality assurance checks whose failures are reported as errors by the OpenEmbedded build system. You set this variable in your distribution configuration @@ -4237,7 +4088,6 @@ - Triggers the OpenEmbedded build system's shared libraries resolver to exclude an entire package when scanning for shared libraries. @@ -4276,7 +4126,6 @@ - Directs BitBake to exclude a recipe from world builds (i.e. bitbake world). During world builds, BitBake locates, parses and builds all @@ -4306,7 +4155,6 @@ - Used with file and pathnames to create a prefix for a recipe's version based on the recipe's PE value. @@ -4328,7 +4176,6 @@ - The full package version specification as it appears on the final packages produced by a recipe. The variable's value is normally used to fix a runtime @@ -4353,7 +4200,6 @@ - When set, the EXTERNAL_KERNEL_TOOLS variable indicates that these tools are not in the source tree. @@ -4379,7 +4225,6 @@ - When inheriting the externalsrc class, this variable points to the source tree, which is @@ -4409,7 +4254,6 @@ - When inheriting the externalsrc class, this variable points to the directory in which the @@ -4440,7 +4284,6 @@ - For recipes inheriting the autotools class, you can use EXTRA_AUTORECONF to @@ -4463,7 +4306,6 @@ - A list of additional features to include in an image. When listing more than one feature, separate them with a space. @@ -4544,7 +4386,6 @@ - Specifies additional options for the image creation command that has been specified in IMAGE_CMD. @@ -4564,7 +4405,6 @@ - A list of recipes to build that do not provide packages for installing into the root filesystem. @@ -4592,7 +4432,6 @@ - A list of subdirectories of ${STAGING_BINDIR_NATIVE} added to the beginning of the environment variable @@ -4613,7 +4452,6 @@ - Additional CMake options. @@ -4630,7 +4468,6 @@ - Additional configure script options. See PACKAGECONFIG_CONFARGS @@ -4646,7 +4483,6 @@ - Additional GNU make options. @@ -4673,7 +4509,6 @@ - When inheriting the scons class, this variable specifies additional configuration @@ -4689,7 +4524,6 @@ - When inheriting the extrausers class, this variable provides image level user and group @@ -4731,7 +4565,6 @@ - Defines one or more packages to include in an image when a specific item is included in IMAGE_FEATURES. @@ -4766,7 +4599,6 @@ - Points to the base URL of the server and location within the document-root that provides the metadata and packages required by OPKG to support runtime package @@ -4797,7 +4629,6 @@ - The list of files and directories that are placed in a package. The @@ -4868,7 +4699,6 @@ - Defines the file specification to match SOLIBSDEV. In other words, FILES_SOLIBSDEV @@ -4892,7 +4722,6 @@ - Extends the search path the OpenEmbedded build system uses when looking for files and patches as it processes recipes and append files. @@ -4989,7 +4818,6 @@ - A subset of OVERRIDES used by the OpenEmbedded build system for creating FILESPATH. @@ -5029,7 +4857,6 @@ - The default set of directories the OpenEmbedded build system uses when searching for patches and files. @@ -5130,7 +4957,6 @@ - Allows you to define your own file permissions settings table as part of your configuration for the packaging process. For example, suppose you need a consistent set of custom permissions for @@ -5170,7 +4996,6 @@ - When inheriting the fontcache class, this variable specifies the runtime dependencies @@ -5187,7 +5012,6 @@ - When inheriting the fontcache class, this variable identifies packages containing font @@ -5207,7 +5031,6 @@ - Forces the removal of the packages listed in ROOTFS_RO_UNNEEDED during the generation of the root filesystem. @@ -5226,7 +5049,6 @@ - The options to pass in TARGET_CFLAGS and CFLAGS @@ -5246,7 +5068,6 @@ - Enables Position Independent Executables (PIE) within the GNU C Compiler (GCC). Enabling PIE in the GCC makes Return Oriented Programming @@ -5270,7 +5091,6 @@ - Specifies the default version of the GNU C Compiler (GCC) used for compilation. By default, GCCVERSION is set to @@ -5292,7 +5112,6 @@ - The minimal command and arguments to run the GNU Debugger. @@ -5304,7 +5123,6 @@ - The directory in which a local copy of a Git repository is stored when it is cloned. @@ -5317,7 +5135,6 @@ - Specifies the list of GLIBC locales to generate should you not wish to generate all LIBC locals, which can be time consuming. @@ -5346,7 +5163,6 @@ - When inheriting the useradd class, this variable @@ -5375,7 +5191,6 @@ - When inheriting the useradd class, this variable @@ -5399,7 +5214,6 @@ - Configures the GNU GRand Unified Bootloader (GRUB) to have graphics and serial in the boot menu. Set this variable to "1" in your @@ -5422,7 +5236,6 @@ - Additional options to add to the GNU GRand Unified Bootloader (GRUB) configuration. Use a semi-colon character (;) to @@ -5444,7 +5257,6 @@ - Specifies the timeout before executing the default LABEL in the GNU GRand Unified Bootloader (GRUB). @@ -5465,7 +5277,6 @@ - When inheriting the gtk-immodules-cache class, this variable specifies the packages that contain the @@ -5485,7 +5296,6 @@ - Website where more information about the software the recipe is building can be found. @@ -5499,7 +5309,6 @@ - The name of the target architecture, which is normally the same as TARGET_ARCH. @@ -5527,7 +5336,6 @@ - Specifies architecture-specific compiler flags that are passed to the C compiler. @@ -5561,7 +5369,6 @@ - Specifies the name of the target operating system, which is normally the same as the TARGET_OS. @@ -5579,7 +5386,6 @@ - Specifies the prefix for the cross-compile toolchain. HOST_PREFIX is normally the same as TARGET_PREFIX. @@ -5593,7 +5399,6 @@ - Specifies the system, including the architecture and the operating system, for which the build is occurring in the context of the current recipe. @@ -5634,7 +5439,6 @@ - A space-separated list (filter) of tools on the build host that should be allowed to be called from within build tasks. Using this filter helps reduce the possibility of host @@ -5658,7 +5462,6 @@ - A space-separated list (filter) of tools on the build host that should be allowed to be called from within build tasks. Using this filter helps reduce the possibility of host @@ -5681,7 +5484,6 @@ - Specifies the name of the vendor. HOST_VENDOR is normally the same as TARGET_VENDOR. @@ -5699,7 +5501,6 @@ - Disables or enables the icecc (Icecream) function. For more information on this function and best practices @@ -5728,7 +5529,6 @@ - Points to the icecc-create-env script that you provide. This variable is used by the @@ -5754,7 +5554,6 @@ - Extra options passed to the make command during the do_compile @@ -5800,7 +5599,6 @@ - The location of the icecc binary. You can set this variable in your local.conf file. @@ -5819,7 +5617,6 @@ - Identifies user classes that you do not want the Icecream distributed compile support to consider. This variable is used by the @@ -5845,7 +5642,6 @@ - Identifies user recipes that you do not want the Icecream distributed compile support to consider. This variable is used by the @@ -5871,7 +5667,6 @@ - Identifies user recipes that use an empty PARALLEL_MAKE variable that you want to force remote distributed @@ -5892,7 +5687,6 @@ - The base name of image output files. This variable defaults to the recipe name (${PN}). @@ -5906,7 +5700,6 @@ - A space-separated list of files installed into the boot partition when preparing an image using the Wic tool with the bootimg-partition source @@ -5963,7 +5756,6 @@ - A list of classes that all images should inherit. You typically use this variable to specify the list of classes that register the different types of images @@ -5992,7 +5784,6 @@ - Specifies the command to create the image file for a specific image type, which corresponds to the value set set in @@ -6026,7 +5817,6 @@ - Specifies one or more files that contain custom device tables that are passed to the makedevs command as part of creating @@ -6050,7 +5840,6 @@ - The primary list of features to include in an image. Typically, you configure this variable in an image recipe. Although you can use this variable from your @@ -6086,7 +5875,6 @@ - Specifies the formats the OpenEmbedded build system uses during the build when creating the root filesystem. For example, setting IMAGE_FSTYPES @@ -6134,7 +5922,6 @@ - Used by recipes to specify the packages to install into an image through the image @@ -6220,7 +6007,6 @@ - Specifies the list of locales to install into the image during the root filesystem construction process. The OpenEmbedded build system automatically splits locale @@ -6262,7 +6048,6 @@ - The manifest file for the image. This file lists all the installed packages that make up the image. @@ -6299,7 +6084,6 @@ - The name of the output image files minus the extension. This variable is derived using the IMAGE_BASENAME, @@ -6320,7 +6104,6 @@ - Defines a multiplier that the build system applies to the initial image size for cases when the multiplier times the returned disk usage value for the image is greater than the sum of @@ -6366,7 +6149,6 @@ - Defines the package type (i.e. DEB, RPM, IPK, or TAR) used by the OpenEmbedded build system. The variable is defined appropriately by the @@ -6418,7 +6200,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system creates the final image output files. @@ -6446,7 +6227,6 @@ - Specifies a list of functions to call before the OpenEmbedded build system creates the final image output files. @@ -6474,7 +6254,6 @@ - The location of the root filesystem while it is under construction (i.e. during the do_rootfs @@ -6491,7 +6270,6 @@ - Specifies the alignment for the output image file in Kbytes. If the size of the image is not a multiple of @@ -6511,7 +6289,6 @@ - Defines additional free disk space created in the image in Kbytes. By default, this variable is set to "0". This free disk space is added to the image after the build system determines @@ -6546,7 +6323,6 @@ - Defines the size in Kbytes for the generated image. The OpenEmbedded build system determines the final size for the generated image using an algorithm that takes into account the initial disk space used @@ -6596,7 +6372,6 @@ - Specifies a dependency from one image type on another. Here is an example from the image-live @@ -6626,7 +6401,6 @@ - Specifies the complete list of supported image types by default: @@ -6686,7 +6460,6 @@ - Helps define the recipe revision for recipes that share a common include file. You can think of this variable as part of the recipe revision @@ -6752,7 +6525,6 @@ - Specifies a space-separated list of license names (as they would appear in LICENSE) @@ -6802,7 +6574,6 @@ - Causes the named class or classes to be inherited globally. Anonymous functions in the class or classes are not executed for the @@ -6826,7 +6597,6 @@ - Lists classes that will be inherited at the distribution level. It is unlikely that you want to edit this variable. @@ -6849,7 +6619,6 @@ - Prevents the default dependencies, namely the C compiler and standard C library (libc), from being added to DEPENDS. @@ -6870,7 +6639,6 @@ - Prevents the OpenEmbedded build system from splitting out debug information during packaging. By default, the build system splits out debugging @@ -6901,7 +6669,6 @@ - If set to "1", causes the build to not strip binaries in resulting packages and prevents the -dbg package from containing the @@ -6925,7 +6692,6 @@ - If set to "1", causes the build to not strip binaries in the resulting sysroot. @@ -6963,7 +6729,6 @@ - Defines the format for the output image of an initial RAM filesystem (initramfs), which is used during boot. Supported formats are the same as those supported by the @@ -6992,7 +6757,6 @@ - Specifies the PROVIDES name of an image recipe that is used to build an initial @@ -7060,7 +6824,6 @@ - Controls whether or not the image recipe specified by INITRAMFS_IMAGE is run through an extra pass @@ -7126,7 +6889,6 @@ - The link name of the initial RAM filesystem image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7156,7 +6918,6 @@ - The base name of the initial RAM filesystem image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7181,7 +6942,6 @@ - Indicates list of filesystem images to concatenate and use as an initial RAM disk (initrd). @@ -7201,7 +6961,6 @@ - When building a "live" bootable image (i.e. when IMAGE_FSTYPES contains "live"), INITRD_IMAGE @@ -7224,7 +6983,6 @@ - The filename of the initialization script as installed to ${sysconfdir}/init.d. @@ -7242,7 +7000,6 @@ - A list of the packages that contain initscripts. If multiple packages are specified, you need to append the package name to the other INITSCRIPT_* as an override. @@ -7262,7 +7019,6 @@ - Specifies the options to pass to update-rc.d. Here is an example: @@ -7300,7 +7056,6 @@ - Specifies the QA checks to skip for a specific package within a recipe. For example, to skip the check for symbolic link @@ -7327,7 +7082,6 @@ - By default, the tzdata recipe packages an /etc/timezone file. Set the INSTALL_TIMEZONE_FILE @@ -7343,7 +7097,6 @@ - When the IPK backend is in use and package management is enabled on the target, you can use this variable to set up opkg in the target image @@ -7403,7 +7156,6 @@ - Defines the kernel architecture used when assembling the configuration. Architectures supported for this release are: @@ -7430,7 +7182,6 @@ - A regular expression used by the build process to explicitly identify the kernel branch that is validated, patched, and configured during a build. @@ -7485,7 +7236,6 @@ - When used with the kernel-yocto class, specifies an "in-tree" kernel configuration file @@ -7541,7 +7291,6 @@ - Specifies an alternate kernel image type for creation in addition to the kernel image type specified using the KERNEL_IMAGETYPE @@ -7556,7 +7305,6 @@ - Specifies the name of all of the build artifacts. You can change the name of the artifacts by changing the KERNEL_ARTIFACT_NAME variable. @@ -7595,7 +7343,6 @@ - A list of classes defining kernel image types that the kernel class should inherit. @@ -7616,7 +7363,6 @@ - Specifies the name of the generated Linux kernel device tree (i.e. the .dtb) file. @@ -7638,7 +7384,6 @@ - The link name of the kernel device tree binary (DTB). This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7668,7 +7413,6 @@ - The base name of the kernel device tree binary (DTB). This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7693,7 +7437,6 @@ - Specifies additional make command-line arguments the OpenEmbedded build system passes on when compiling the kernel. @@ -7707,7 +7450,6 @@ - Includes additional kernel metadata. In the OpenEmbedded build system, the default Board Support Packages (BSPs) @@ -7756,7 +7498,6 @@ - The link name of the kernel flattened image tree (FIT) image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7786,7 +7527,6 @@ - The base name of the kernel flattened image tree (FIT) image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7811,7 +7551,6 @@ - The link name for the kernel image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7841,7 +7580,6 @@ - Specifies the maximum size of the kernel image file in kilobytes. If KERNEL_IMAGE_MAXSIZE is set, @@ -7872,7 +7610,6 @@ - The base name of the kernel image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7897,7 +7634,6 @@ - The type of kernel to build for a device, usually set by the machine configuration files and defaults to "zImage". This variable is used @@ -7919,7 +7655,6 @@ - Lists kernel modules that need to be auto-loaded during boot. @@ -7973,7 +7708,6 @@ - Provides a list of modules for which the OpenEmbedded build system expects to find module_conf_modname @@ -7992,7 +7726,6 @@ - The location of the kernel sources. This variable is set to the value of the STAGING_KERNEL_DIR @@ -8024,7 +7757,6 @@ - The location of the kernel sources. This variable is set to the value of the STAGING_KERNEL_DIR @@ -8056,7 +7788,6 @@ - Specifies the version of the kernel as extracted from version.h or utsrelease.h within the kernel sources. @@ -8074,7 +7805,6 @@ - Specifies whether the data referenced through PKGDATA_DIR is needed or not. @@ -8096,7 +7826,6 @@ - Provides a short description of a configuration fragment. You use this variable in the .scc file that describes a configuration fragment file. @@ -8116,7 +7845,6 @@ - The machine as known by the kernel. Sometimes the machine name used by the kernel does not match the machine name used by the OpenEmbedded build @@ -8163,7 +7891,6 @@ - Defines the kernel type to be used in assembling the configuration. The linux-yocto recipes define "standard", "tiny", @@ -8193,7 +7920,6 @@ - Provides a list of targets for automatic configuration. @@ -8211,7 +7937,6 @@ - Lists the layers, separated by spaces, on which this recipe depends. Optionally, you can specify a specific layer version for a @@ -8242,7 +7967,6 @@ - When used inside the layer.conf configuration file, this variable provides the path of the current layer. This variable is not available outside of layer.conf @@ -8257,7 +7981,6 @@ - Lists the layers, separated by spaces, recommended for use with this layer. @@ -8290,7 +8013,6 @@ - Lists the versions of the OpenEmbedded-Core for which a layer is compatible. @@ -8337,7 +8059,6 @@ - Optionally specifies the version of a layer as a single number. You can use this within LAYERDEPENDS @@ -8356,7 +8077,6 @@ - The minimal command and arguments used to run the linker. @@ -8369,7 +8089,6 @@ - Specifies the flags to pass to the linker. This variable is exported to an environment variable and thus made visible to the software being @@ -8405,7 +8124,6 @@ - Specifies the lead (or primary) compiled library file (i.e. .so) that the debian @@ -8426,7 +8144,6 @@ - Checksums of the license text in the recipe source code. @@ -8455,7 +8172,6 @@ - The list of source licenses for the recipe. Follow these rules: @@ -8520,7 +8236,6 @@ - Setting LICENSE_CREATE_PACKAGE to "1" causes the OpenEmbedded build system to create an extra package (i.e. @@ -8563,7 +8278,6 @@ - Specifies additional flags for a recipe you must whitelist through LICENSE_FLAGS_WHITELIST @@ -8591,7 +8305,6 @@ - Lists license flags that when specified in LICENSE_FLAGS within a recipe should not prevent that recipe from being @@ -8611,7 +8324,6 @@ - Path to additional licenses used during the build. By default, the OpenEmbedded build system uses COMMON_LICENSE_DIR to define the directory that holds common license text used during the build. @@ -8630,7 +8342,6 @@ - Defines the kernel type to be used in assembling the configuration. The linux-yocto recipes define "standard", "tiny", and @@ -8663,7 +8374,6 @@ - The Linux version from kernel.org on which the Linux kernel image being built using the OpenEmbedded build system is based. @@ -8694,7 +8404,6 @@ - A string extension compiled into the version string of the Linux kernel built with the OpenEmbedded build system. @@ -8727,7 +8436,6 @@ - Specifies the directory to which the OpenEmbedded build system writes overall log files. The default directory is ${TMPDIR}/log. @@ -8751,7 +8459,6 @@ - Specifies the target device for which the image is built. You define MACHINE in the local.conf file found in the @@ -8806,7 +8513,6 @@ - Specifies the name of the machine-specific architecture. This variable is set automatically from MACHINE @@ -8824,7 +8530,6 @@ - A list of required machine-specific packages to install as part of the image being built. The build process depends on these packages being present. @@ -8861,7 +8566,6 @@ - A list of recommended machine-specific packages to install as part of the image being built. The build process does not depend on these packages being present. @@ -8925,7 +8629,6 @@ - A list of machine-specific packages to install as part of the image being built that are not essential for the machine to boot. However, the build process for more fully-featured images @@ -8971,7 +8674,6 @@ - A list of machine-specific packages to install as part of the image being built that are not essential for booting the machine. The image being built has no build dependency on this list of packages. @@ -9016,7 +8718,6 @@ - Specifies the list of hardware features the MACHINE is capable of supporting. @@ -9043,7 +8744,6 @@ - Features to be added to MACHINE_FEATURES if not also present in @@ -9067,7 +8767,6 @@ - Features from MACHINE_FEATURES_BACKFILL that should not be backfilled (i.e. added to @@ -9085,7 +8784,6 @@ - A colon-separated list of overrides that apply to the current machine. By default, this list includes the value of @@ -9126,7 +8824,6 @@ - The email address of the distribution maintainer. @@ -9138,7 +8835,6 @@ - Specifies additional paths from which the OpenEmbedded build system gets source code. When the build system searches for source code, it first @@ -9167,7 +8863,6 @@ - Specifies a prefix has been added to PN to create a special version of a recipe or package (i.e. a Multilib version). @@ -9219,7 +8914,6 @@ - This variable has been replaced by the KERNEL_MODULE_AUTOLOAD variable. You should replace all occurrences of @@ -9248,7 +8942,6 @@ - Specifies modprobe.d syntax lines for inclusion in the @@ -9309,7 +9002,6 @@ - Controls creation of the modules-*.tgz file. Set this variable to "0" to disable creation of this @@ -9325,7 +9017,6 @@ - The link name of the kernel module tarball. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -9355,7 +9046,6 @@ - The base name of the kernel module tarball. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -9382,7 +9072,6 @@ --> - Uniquely identifies the type of the target system for which packages are being built. This variable allows output for different types of target @@ -9448,7 +9136,6 @@ - A string identifying the host distribution. Strings consist of the host distributor ID followed by the release, as reported by the @@ -9478,7 +9165,6 @@ - The minimal command and arguments to run nm. @@ -9491,7 +9177,6 @@ - Avoids QA errors when you use a non-common, non-CLOSED license in a recipe. Packages exist, such as the linux-firmware package, with @@ -9525,7 +9210,6 @@ - Prevents installation of all "recommended-only" packages. Recommended-only packages are packages installed only through the @@ -9586,7 +9270,6 @@ - Disables auto package from splitting .debug files. If a recipe requires FILES_${PN}-dbg to be set manually, @@ -9612,7 +9295,6 @@ - The minimal command and arguments to run objcopy. @@ -9625,7 +9307,6 @@ - The minimal command and arguments to run objdump. @@ -9638,7 +9319,6 @@ - When inheriting the binconfig class, this variable @@ -9672,7 +9352,6 @@ - An internal variable used to tell the OpenEmbedded build system what Python modules to import for every Python function run by the system. @@ -9691,7 +9370,6 @@ - The name of the build environment setup script for the purposes of setting up the environment within the extensible SDK. @@ -9713,7 +9391,6 @@ - Controls how the OpenEmbedded build system spawns interactive terminals on the host development system (e.g. using the BitBake command with the @@ -9745,7 +9422,6 @@ - The directory from which the top-level build environment setup script is sourced. The Yocto Project provides a top-level build environment @@ -9769,7 +9445,6 @@ - Declares the oldest version of the Linux kernel that the produced binaries must support. This variable is passed into the build of the Embedded @@ -9792,7 +9467,6 @@ - A colon-separated list of overrides that currently apply. Overrides are a BitBake mechanism that allows variables to be selectively overridden at the end of parsing. @@ -9856,7 +9530,6 @@ - The recipe name and version. P is comprised of the following: @@ -9866,13 +9539,46 @@ + PACKAGE_ADD_METADATA + + PACKAGE_ADD_METADATA[doc] = "This variable defines additional metadata to add to packages." + + + + + This variable defines additional metdata to add to packages. + + + + You may find you need to inject additional metadata into + packages. This variable allows you to do that by setting + the injected data as the value. Multiple fields can be + added by splitting the content with the literal separator + "\n". + + + + The suffixes '_IPK', '_DEB', or '_RPM' can be applied to + the variable to do package type specific settings. It can + also be made package specific by using the package name as + a suffix. + + + + You can find out more about applying this variable in + the + "Adding custom metadata to packages" + section in the Yocto Project Development Tasks Manual. + + + + PACKAGE_ARCH PACKAGE_ARCH[doc] = "The architecture of the resulting package or packages." - The architecture of the resulting package or packages. @@ -9908,7 +9614,6 @@ - Specifies a list of architectures compatible with the target machine. This variable is set automatically and should not @@ -9928,7 +9633,6 @@ - Enables easily adding packages to PACKAGES before ${PN} @@ -9944,7 +9648,6 @@ - This variable, which is set in the local.conf configuration file found in the conf folder of the @@ -9994,7 +9697,6 @@ - Determines how to split up the binary and debug information when creating *-dbg packages to be used with the GNU Project Debugger (GDB). @@ -10059,7 +9761,6 @@ - Prevents specific packages from being installed when you are installing complementary packages. @@ -10085,7 +9786,6 @@ - Lists packages that should not be installed into an image. For example: @@ -10137,7 +9837,6 @@ - Specifies the list of architectures compatible with the device CPU. This variable is useful when you build for several different devices that use miscellaneous processors such as XScale and ARM926-EJS. @@ -10151,7 +9850,6 @@ - Optionally specifies the package architectures used as part of the package feed URIs during the build. When used, the PACKAGE_FEED_ARCHS @@ -10206,7 +9904,6 @@ - Specifies the base path used when constructing package feed URIs. The PACKAGE_FEED_BASE_PATHS variable @@ -10253,7 +9950,6 @@ - Specifies the front portion of the package feed URI used by the OpenEmbedded build system. Each final package feed URI is comprised of @@ -10298,7 +9994,6 @@ - The final list of packages passed to the package manager for installation into the image. @@ -10333,7 +10028,6 @@ - Specifies a list of packages the OpenEmbedded build system attempts to install when creating an image. If a listed package fails to install, the build system @@ -10349,7 +10043,6 @@ - Specifies a list of functions run to pre-process the PKGD directory prior to splitting the files out to individual @@ -10364,7 +10057,6 @@ - Specifies a list of dependencies for post-installation and pre-installation scripts on native/cross tools. If your post-installation or pre-installation script can @@ -10389,7 +10081,6 @@ - This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis. PACKAGECONFIG blocks are defined @@ -10528,7 +10219,6 @@ - A space-separated list of configuration options generated from the PACKAGECONFIG @@ -10559,7 +10249,6 @@ - For recipes inheriting the packagegroup class, setting @@ -10580,7 +10269,6 @@ - The list of packages the recipe creates. The default value is the following: @@ -10621,7 +10309,6 @@ - A promise that your recipe satisfies runtime dependencies for optional modules that are found in other recipes. PACKAGES_DYNAMIC @@ -10664,7 +10351,6 @@ - Specifies a list of functions run to perform additional splitting of files into individual packages. Recipes can either prepend to this variable or prepend @@ -10686,7 +10372,6 @@ - Extra options passed to the make command during the do_compile @@ -10743,7 +10428,6 @@ - Extra options passed to the make install command during the do_install @@ -10780,7 +10464,6 @@ - Determines the action to take when a patch fails. You can set this variable to one of two values: "noop" and "user". @@ -10808,7 +10491,6 @@ - Specifies the utility used to apply patches for a recipe during the do_patch @@ -10839,7 +10521,6 @@ - The epoch of the recipe. By default, this variable is unset. The variable is used to make upgrades possible when the @@ -10861,7 +10542,6 @@ - Specifies the recipe or package name and includes all version and revision numbers (i.e. glibc-2.13-r20+svnr15508/ and bash-4.2-r1/). @@ -10879,7 +10559,6 @@ - When inheriting the pixbufcache class, this variable identifies packages that contain @@ -10900,7 +10579,6 @@ - The name of the resulting package created by the OpenEmbedded build system. @@ -10924,7 +10602,6 @@ - The path to pkg-config files for the current build context. pkg-config reads this variable @@ -10939,7 +10616,6 @@ - Points to the destination directory for files to be packaged before they are split into individual packages. This directory defaults to the following: @@ -10960,7 +10636,6 @@ - Points to a shared, global-state directory that holds data generated during the packaging process. During the packaging process, the @@ -10991,7 +10666,6 @@ - Points to the parent directory for files to be packaged after they have been split into individual packages. This directory defaults to the following: @@ -11015,7 +10689,6 @@ - Points to a temporary work area where the do_package task saves package metadata. @@ -11044,7 +10717,6 @@ - The epoch of the package(s) built by the recipe. By default, PKGE is set to PE. @@ -11058,7 +10730,6 @@ - The revision of the package(s) built by the recipe. By default, PKGR is set to PR. @@ -11072,7 +10743,6 @@ - The version of the package(s) built by the recipe. By default, PKGV is set to @@ -11087,7 +10757,6 @@ - This variable can have two separate functions depending on the context: a recipe name or a resulting package name. @@ -11124,7 +10793,6 @@ - Lists recipes you do not want the OpenEmbedded build system to build. This variable works in conjunction with the @@ -11151,7 +10819,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system has created the host part of the SDK. @@ -11180,7 +10847,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system has created the target part of the SDK. @@ -11209,7 +10875,6 @@ - The revision of the recipe. The default value for this variable is "r0". Subsequent revisions of the recipe conventionally have the @@ -11265,7 +10930,6 @@ - If multiple recipes provide the same item, this variable determines which recipe is preferred and thus provides the item (i.e. the preferred provider). @@ -11315,7 +10979,6 @@ - If multiple versions of recipes exist, this variable determines which version is given preference. You must always suffix the variable with the @@ -11407,7 +11070,6 @@ - Specifies additional paths from which the OpenEmbedded build system gets source code. When the build system searches for source code, it first @@ -11456,7 +11118,6 @@ - Indicates the importance of a package. @@ -11482,7 +11143,6 @@ - Specifies libraries installed within a recipe that should be ignored by the OpenEmbedded build system's shared library resolver. @@ -11524,7 +11184,6 @@ - A list of aliases by which a particular recipe can be known. By default, a recipe's own @@ -11613,7 +11272,6 @@ - The network based PR service host and port. @@ -11643,7 +11301,6 @@ - Specifies whether or not Package Test (ptest) functionality is enabled when building a recipe. @@ -11662,7 +11319,6 @@ - The version of the recipe. The version is normally extracted from the recipe filename. For example, if the recipe is named @@ -11688,7 +11344,6 @@ - When used by recipes that inherit the distutils3, setuptools3, @@ -11724,7 +11379,6 @@ - When used by recipes that inherit the distutils3, setuptools3, @@ -11760,7 +11414,6 @@ - The minimal command and arguments to run ranlib. @@ -11773,7 +11426,6 @@ - The list of packages that conflict with packages. Note that packages will not be installed if conflicting packages are not first removed. @@ -11822,7 +11474,6 @@ - Lists runtime dependencies of a package. These dependencies are other packages that must be installed in order for the package to function correctly. @@ -11985,7 +11636,6 @@ - When inheriting the distro_features_check class, this @@ -12008,7 +11658,6 @@ - With rm_work enabled, this variable specifies a list of recipes whose work directories should not be removed. @@ -12024,7 +11673,6 @@ - Defines the root home directory. By default, this directory is set as follows in the BitBake configuration file: @@ -12061,7 +11709,6 @@ - Indicates a filesystem image to include as the root filesystem. @@ -12081,7 +11728,6 @@ - Specifies a list of functions to call after the OpenEmbedded build system has installed packages. You can specify functions separated by semicolons: @@ -12108,7 +11754,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system has created the root filesystem. You can specify functions separated by semicolons: @@ -12135,7 +11780,6 @@ - Specifies a list of functions to call after the OpenEmbedded build system has removed unnecessary packages. @@ -12168,7 +11812,6 @@ - Specifies a list of functions to call before the OpenEmbedded build system has created the root filesystem. You can specify functions separated by semicolons: @@ -12195,7 +11838,6 @@ - A list of package name aliases that a package also provides. These aliases are useful for satisfying runtime dependencies of other packages both during the build and on the target @@ -12224,7 +11866,6 @@ - A list of packages that extends the usability of a package being built. The package being built does not depend on this list of @@ -12317,7 +11958,6 @@ - A list of packages replaced by a package. The package manager uses this variable to determine which package should be installed to replace other package(s) @@ -12373,7 +12013,6 @@ - A list of additional packages that you can suggest for installation by the package manager at the time a package is installed. @@ -12402,7 +12041,6 @@ - The location in the Build Directory where unpacked recipe source code resides. @@ -12455,7 +12093,6 @@ - Specifies a list of command-line utilities that should be checked for during the initial sanity checking process when running BitBake. @@ -12471,7 +12108,6 @@ - A list of the host distribution identifiers that the build system has been tested against. Identifiers consist of the host distributor ID @@ -12496,7 +12132,6 @@ - The target architecture for the SDK. Typically, you do not directly set this variable. Instead, use @@ -12511,7 +12146,6 @@ - The directory set up and used by the populate_sdk_base class to which the SDK is deployed. @@ -12530,7 +12164,6 @@ - The parent directory used by the OpenEmbedded build system when creating SDK output. The @@ -12556,7 +12189,6 @@ - Controls whether or not shared state artifacts are copied into the extensible SDK. The default value of "full" copies all of the required @@ -12580,7 +12212,6 @@ - The manifest file for the host part of the SDK. This file lists all the installed packages that make up the host part of the SDK. @@ -12613,7 +12244,6 @@ - When set to "1", specifies to include the packagedata for all recipes in the "world" target in the extensible SDK. Including this data allows the @@ -12638,7 +12268,6 @@ - When set to "1", specifies to include the toolchain in the extensible SDK. Including the toolchain is useful particularly when @@ -12665,7 +12294,6 @@ - A list of classes to remove from the INHERIT value globally within the extensible SDK configuration. @@ -12699,7 +12327,6 @@ - A list of variables not allowed through from the OpenEmbedded build system configuration into the extensible SDK configuration. @@ -12743,7 +12370,6 @@ - A list of variables allowed through from the OpenEmbedded build system configuration into the extensible SDK configuration. @@ -12779,7 +12405,6 @@ - The base name for SDK output files. The name is derived from the DISTRO, @@ -12802,7 +12427,6 @@ - Specifies the operating system for which the SDK will be built. The default value is the value of @@ -12817,7 +12441,6 @@ - The location used by the OpenEmbedded build system when creating SDK output. The @@ -12847,7 +12470,6 @@ - Specifies a list of architectures compatible with the SDK machine. This variable is set automatically and should not @@ -12867,7 +12489,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system creates the SDK. You can specify functions separated by semicolons: @@ -12895,7 +12516,6 @@ - The toolchain binary prefix used for nativesdk recipes. The OpenEmbedded build system uses the @@ -12913,7 +12533,6 @@ - A list of shared state tasks added to the extensible SDK. By default, the following tasks are added: @@ -12940,7 +12559,6 @@ - Specifies the system, including the architecture and the operating system, for which the SDK will be built. @@ -12964,7 +12582,6 @@ - The manifest file for the target part of the SDK. This file lists all the installed packages that make up the target part of the SDK. @@ -12997,7 +12614,6 @@ - A list of targets to install from shared state as part of the standard or extensible SDK installation. The default value is "${PN}" (i.e. the image from which @@ -13017,7 +12633,6 @@ - The title to be printed when running the SDK installer. By default, this title is based on the DISTRO_NAME @@ -13050,7 +12665,6 @@ - An optional URL for an update server for the extensible SDK. If set, the value is used as the default update server when @@ -13066,7 +12680,6 @@ - Specifies the name of the SDK vendor. @@ -13078,7 +12691,6 @@ - Specifies the version of the SDK. The distribution configuration file (e.g. /meta-poky/conf/distro/poky.conf) @@ -13104,7 +12716,6 @@ - The default installation directory for the Extensible SDK. By default, this directory is based on the DISTRO @@ -13134,7 +12745,6 @@ - Equivalent to IMAGE_FEATURES. However, this variable applies to the SDK generated from an @@ -13152,7 +12762,6 @@ - The machine for which the SDK is built. In other words, the SDK is built such that it runs on the target you specify with the @@ -13184,7 +12793,6 @@ - Defines the path offered to the user for installation of the SDK that is generated by the OpenEmbedded build system. @@ -13202,7 +12810,6 @@ - The full path to the sysroot used for cross-compilation within an SDK as it will be when installed into the default @@ -13217,7 +12824,6 @@ - The section in which packages should be categorized. Package management utilities can make use of this variable. @@ -13230,7 +12836,6 @@ - Specifies the optimization flags passed to the C compiler when building for the target. The flags are passed through the default value of the @@ -13255,7 +12860,6 @@ - Defines a serial console (TTY) to enable using getty. Provide a value that specifies the baud rate followed by @@ -13281,7 +12885,6 @@ - Defines a serial console (TTY) to enable using getty. Provide a value that specifies the baud rate followed by @@ -13300,7 +12903,6 @@ - Specifies serial consoles, which must be listed in SERIAL_CONSOLES, to check against /proc/console @@ -13326,7 +12928,6 @@ - A list of recipe dependencies that should not be used to determine signatures of tasks from one recipe when they depend on tasks from another recipe. @@ -13378,7 +12979,6 @@ - A list of recipes that are completely stable and will never change. The ABI for the recipes in the list are presented by @@ -13402,7 +13002,6 @@ - Specifies the number of bits for the target system CPU. The value should be either "32" or "64". @@ -13415,7 +13014,6 @@ - Specifies the endian byte order of the target system. The value should be either "le" for little-endian or "be" for big-endian. @@ -13428,7 +13026,6 @@ - Enables removal of all files from the "Provides" section of an RPM package. Removal of these files is required for packages containing @@ -13455,7 +13052,6 @@ - Groups together machines based upon the same family of SOC (System On Chip). You typically set this variable in a common @@ -13477,7 +13073,6 @@ - Defines the suffix for shared libraries used on the target platform. By default, this suffix is ".so.*" for all Linux-based @@ -13499,7 +13094,6 @@ - Defines the suffix for the development symbolic link (symlink) for shared libraries on the target platform. By default, this suffix is ".so" for Linux-based @@ -13521,7 +13115,6 @@ - When you are fetching files to create a mirror of sources (i.e. creating a source mirror), setting SOURCE_MIRROR_FETCH to "1" in your @@ -13553,7 +13146,6 @@ - Defines your own PREMIRRORS from which to first fetch source before attempting to fetch @@ -13584,7 +13176,6 @@ - Maps commonly used license names to their SPDX counterparts found in meta/files/common-licenses/. For the default SPDXLICENSEMAP @@ -13606,7 +13197,6 @@ - A list of prefixes for PN used by the OpenEmbedded build system to create variants of recipes or packages. The list specifies the prefixes to strip off during certain circumstances @@ -13621,7 +13211,6 @@ - The file type for the Secondary Program Loader (SPL). Some devices use an SPL from which to boot (e.g. the BeagleBone development board). @@ -13663,7 +13252,6 @@ - The list of source files - local or remote. This variable tells the OpenEmbedded build system which bits to pull in for the build and how to pull them in. @@ -13855,7 +13443,6 @@ - By default, the OpenEmbedded build system automatically detects whether SRC_URI contains files that are machine-specific. @@ -13872,7 +13459,6 @@ - The date of the source code used to build the package. This variable applies only if the source was fetched from a Source Code Manager (SCM). @@ -13885,7 +13471,6 @@ - Returns the version string of the current package. This string is used to help define the value of PV. @@ -13923,7 +13508,6 @@ - The revision of the source code used to build the package. This variable applies to Subversion, Git, Mercurial, and Bazaar only. @@ -13953,7 +13537,6 @@ - The directory for the shared state cache. @@ -13965,7 +13548,6 @@ - If set to "1", allows fetches from mirrors that are specified in SSTATE_MIRRORS @@ -13988,7 +13570,6 @@ - Configures the OpenEmbedded build system to search other mirror locations for prebuilt cache data objects before building out the data. @@ -14049,7 +13630,6 @@ - Controls the list of files the OpenEmbedded build system scans for hardcoded installation paths. The variable uses a space-separated list of filenames (not paths) with standard @@ -14084,7 +13664,6 @@ - Specifies the path to the /lib subdirectory of the sysroot directory for the build host. @@ -14098,7 +13677,6 @@ - Specifies the path to the /lib subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14113,7 +13691,6 @@ - Specifies the path to the /usr/bin subdirectory of the sysroot directory for the target for which the current @@ -14129,7 +13706,6 @@ - Specifies the path to the directory containing binary configuration scripts. These scripts provide configuration information for @@ -14155,7 +13731,6 @@ - Specifies the path to the /usr/bin subdirectory of the sysroot directory for the build host. @@ -14169,7 +13744,6 @@ - Specifies the path to the /usr/share subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14184,7 +13758,6 @@ - Specifies the path to the /usr/share subdirectory of the sysroot directory for the build host. @@ -14197,7 +13770,6 @@ - Helps construct the recipe-sysroots directory, which is used during packaging. @@ -14236,7 +13808,6 @@ - Specifies the path to the sysroot directory for the system on which the component is built to run (the system that hosts the component). @@ -14307,7 +13878,6 @@ - Specifies the path to the sysroot directory used when building components that run on the build host itself. @@ -14320,7 +13890,6 @@ - Specifies the path to the sysroot used for the system for which the component generates code. For components that do not generate code, which is the @@ -14352,7 +13921,6 @@ - Specifies the path to the /etc subdirectory of the sysroot directory for the build host. @@ -14366,7 +13934,6 @@ - Specifies the path to the /usr subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14381,7 +13948,6 @@ - Specifies the path to the /usr/include subdirectory of the sysroot directory for the target for which the current @@ -14397,7 +13963,6 @@ - Specifies the path to the /usr/include subdirectory of the sysroot directory for the build host. @@ -14410,7 +13975,6 @@ - Points to the directory containing the kernel build artifacts. Recipes building software that needs to access kernel @@ -14429,7 +13993,6 @@ - The directory with kernel headers that are required to build out-of-tree modules. @@ -14442,7 +14005,6 @@ - Specifies the path to the /usr/lib subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14457,7 +14019,6 @@ - Specifies the path to the /usr/lib subdirectory of the sysroot directory for the build host. @@ -14470,7 +14031,6 @@ - Specifies the base path used to create recipe stamp files. The path to an actual stamp file is constructed by evaluating this string and then appending additional information. @@ -14507,7 +14067,6 @@ - Specifies the base directory in which the OpenEmbedded build system places stamps. The default directory is @@ -14522,7 +14081,6 @@ - The minimal command and arguments to run strip, which is used to strip symbols. @@ -14536,7 +14094,6 @@ - The short (72 characters or less) summary of the binary package for packaging systems such as opkg, rpm, or dpkg. @@ -14554,7 +14111,6 @@ - The directory in which files checked out of a Subversion system are stored. @@ -14567,7 +14123,6 @@ - Specifies the kernel boot default console. If you want to use a console other than the default, set this variable in your recipe as follows where "X" is @@ -14592,7 +14147,6 @@ - Lists additional options to add to the syslinux file. You need to set this variable in your recipe. If you want to list multiple options, separate the options @@ -14613,7 +14167,6 @@ - Specifies the alternate serial port or turns it off. To turn off serial, set this variable to an empty string in your recipe. @@ -14637,7 +14190,6 @@ - An .LSS file used as the background for the VGA boot menu when you use the boot menu. You need to set this variable in your recipe. @@ -14658,7 +14210,6 @@ - Specifies the alternate console=tty... kernel boot argument. The variable's default value is set in the syslinux @@ -14680,7 +14231,6 @@ - Points to the temporary directory under the work directory (default "${WORKDIR}/sysroot-destdir") @@ -14698,7 +14248,6 @@ - Directories that are staged into the sysroot by the do_populate_sysroot task. @@ -14722,7 +14271,6 @@ - Directories that are not staged into the sysroot by the do_populate_sysroot task. @@ -14752,7 +14300,6 @@ - Extra directories staged into the sysroot by the do_populate_sysroot task for -native recipes, in addition @@ -14787,7 +14334,6 @@ - A list of functions to execute after files are staged into the sysroot. These functions are usually used to apply additional @@ -14803,7 +14349,6 @@ - When inheriting the systemd class, this variable specifies whether the specified service @@ -14833,7 +14378,6 @@ - When EFI_PROVIDER is set to "systemd-boot", the @@ -14861,7 +14405,6 @@ - When EFI_PROVIDER is set to "systemd-boot", the @@ -14891,7 +14434,6 @@ - When EFI_PROVIDER is set to "systemd-boot", the @@ -14919,7 +14461,6 @@ - When inheriting the systemd class, this variable locates the systemd unit files when @@ -14949,7 +14490,6 @@ - When inheriting the systemd class, this variable specifies the systemd service name for @@ -14974,7 +14514,6 @@ - When using SysVinit, specifies a space-separated list of the virtual terminals @@ -15003,7 +14542,6 @@ - This variable points to a directory were BitBake places temporary files, which consist mostly of task logs and scripts, when building a particular recipe. @@ -15032,7 +14570,6 @@ - The target machine's architecture. The OpenEmbedded build system supports many architectures. @@ -15065,7 +14602,6 @@ - Specifies architecture-specific assembler flags for the target system. TARGET_AS_ARCH is initialized from @@ -15085,7 +14621,6 @@ - Specifies architecture-specific C compiler flags for the target system. TARGET_CC_ARCH is initialized from @@ -15109,7 +14644,6 @@ - This is a specific kernel compiler flag for a CPU or Application Binary Interface (ABI) tune. The flag is used rarely and only for cases where a @@ -15134,7 +14668,6 @@ - Specifies the flags to pass to the C compiler when building for the target. When building in the target context, @@ -15158,7 +14691,6 @@ - Specifies the flags to pass to the C pre-processor (i.e. to both the C and the C++ compilers) when building for the target. @@ -15183,7 +14715,6 @@ - Specifies the flags to pass to the C++ compiler when building for the target. When building in the target context, @@ -15207,7 +14738,6 @@ - Specifies the method for handling FPU code. For FPU-less targets, which include most ARM CPUs, the variable must be set to "soft". @@ -15222,7 +14752,6 @@ - Specifies architecture-specific linker flags for the target system. TARGET_LD_ARCH is initialized from @@ -15242,7 +14771,6 @@ - Specifies the flags to pass to the linker when building for the target. When building in the target context, @@ -15268,7 +14796,6 @@ - Specifies the target's operating system. The variable can be set to "linux" for glibc-based systems (GNU C Library) and to "linux-musl" for musl libc. @@ -15284,7 +14811,6 @@ - Specifies the prefix used for the toolchain binary target tools. @@ -15320,7 +14846,6 @@ - Specifies the system, including the architecture and the operating system, for which the build is occurring in the context of the current recipe. @@ -15363,7 +14888,6 @@ - Specifies the name of the target vendor. @@ -15375,7 +14899,6 @@ - Specifies the GNU standard C library (libc) variant to use during the build process. @@ -15395,7 +14918,6 @@ - Specifies a suffix to be appended onto the TMPDIR value. @@ -15426,7 +14948,6 @@ - Specifies the toolchain selector. TCMODE controls the characteristics of the generated packages and images by telling the @@ -15498,7 +15019,6 @@ - The location the OpenEmbedded build system uses to export tests when the TEST_EXPORT_ONLY @@ -15518,7 +15038,6 @@ - Specifies to export the tests only. Set this variable to "1" if you do not want to run the tests but you want them to be exported in a manner that @@ -15533,7 +15052,6 @@ - Holds the SSH log and the boot log for QEMU machines. The TEST_LOG_DIR variable defaults to "${WORKDIR}/testimage". @@ -15552,7 +15070,6 @@ - For automated hardware testing, specifies the command to use to control the power of the target machine under test. Typically, this command would point to a script that @@ -15572,7 +15089,6 @@ - For automated hardware testing, specifies additional arguments to pass through to the command specified in TEST_POWERCONTROL_CMD. @@ -15591,7 +15107,6 @@ - The time in seconds allowed for an image to boot before automated runtime tests begin to run against an image. @@ -15615,7 +15130,6 @@ - For automated hardware testing, specifies the command to use to connect to the serial console of the target machine under test. @@ -15641,7 +15155,6 @@ - For automated hardware testing, specifies additional arguments to pass through to the command specified in TEST_SERIALCONTROL_CMD. @@ -15660,7 +15173,6 @@ - The IP address of the build machine (host machine). This IP address is usually automatically detected. However, if detection fails, this variable needs to be set @@ -15683,7 +15195,6 @@ - Specifies the target controller to use when running tests against a test image. The default controller to use is "qemu": @@ -15744,7 +15255,6 @@ - The IP address of your hardware under test. The TEST_TARGET_IP variable has no effect when @@ -15774,7 +15284,6 @@ - An ordered list of tests (modules) to run against an image when performing automated runtime testing. @@ -15833,7 +15342,6 @@ - Automatically runs the series of automated tests for images when an image is successfully built. Setting TESTIMAGE_AUTO to "1" @@ -15874,7 +15382,6 @@ - The directory in which the file BitBake is currently parsing is located. Do not manually set this variable. @@ -15888,7 +15395,6 @@ - The time the build was started. Times appear using the hour, minute, and second (HMS) format (e.g. "140159" for one minute and fifty-nine @@ -15903,7 +15409,6 @@ - This variable is the base directory the OpenEmbedded build system uses for all build output and intermediate files (other than the shared state cache). @@ -15945,7 +15450,6 @@ - This variable lists packages the OpenEmbedded build system uses when building an SDK, which contains a cross-development environment. @@ -15987,7 +15491,6 @@ - This variable defines the name used for the toolchain output. The @@ -16013,7 +15516,6 @@ - This variable lists packages the OpenEmbedded build system uses when it creates the target part of an SDK (i.e. the part built for the target hardware), which @@ -16046,7 +15548,6 @@ - The top-level Build Directory. BitBake automatically sets this variable when you @@ -16062,7 +15563,6 @@ - A sanitized version of TARGET_ARCH. This variable is used where the architecture is needed in @@ -16084,7 +15584,6 @@ - The GNU canonical architecture for a specific architecture (i.e. arm, armeb, @@ -16143,7 +15642,6 @@ - Specifies architecture-specific assembler flags for the target system. The set of flags is based on the selected tune features. @@ -16174,7 +15672,6 @@ - Specifies architecture-specific C compiler flags for the target system. The set of flags is based on the selected tune features. @@ -16199,7 +15696,6 @@ - Specifies architecture-specific linker flags for the target system. The set of flags is based on the selected tune features. @@ -16230,7 +15726,6 @@ - Features used to "tune" a compiler for optimal use given a specific processor. The features are defined within the tune files and allow @@ -16264,7 +15759,6 @@ - The package architecture understood by the packaging system to define the architecture, ABI, and tuning of output packages. @@ -16295,7 +15789,6 @@ - An underlying Application Binary Interface (ABI) used by a particular tuning in a given toolchain layer. Providers that use prebuilt libraries can use the @@ -16323,7 +15816,6 @@ - If set, the OpenEmbedded system ignores the TUNEABI_WHITELIST variable. @@ -16350,7 +15842,6 @@ - A whitelist of permissible TUNEABI values. @@ -16378,7 +15869,6 @@ - Specifies CPU or Application Binary Interface (ABI) tuning features that conflict with feature. @@ -16404,7 +15894,6 @@ - Specifies a valid CPU or Application Binary Interface (ABI) tuning feature. The specified feature is stored as a flag. @@ -16434,7 +15923,6 @@ - Configures the UBOOT_MACHINE and can also define @@ -16477,7 +15965,6 @@ - Specifies the entry point for the U-Boot image. During U-Boot image creation, the UBOOT_ENTRYPOINT variable is passed @@ -16493,7 +15980,6 @@ - Specifies the load address for the U-Boot image. During U-Boot image creation, the UBOOT_LOADADDRESS variable is passed @@ -16509,7 +15995,6 @@ - Appends a string to the name of the local version of the U-Boot image. For example, assuming the version of the U-Boot image @@ -16529,7 +16014,6 @@ - Specifies the value passed on the make command line when building a U-Boot image. @@ -16553,7 +16037,6 @@ - Specifies the target called in the Makefile. The default target is "all". @@ -16567,7 +16050,6 @@ - Points to the generated U-Boot extension. For example, u-boot.sb has a .sb extension. @@ -16586,7 +16068,6 @@ - Specifies the target used for building U-Boot. The target is passed directly as part of the "make" command (e.g. SPL and AIS). @@ -16603,7 +16084,6 @@ - Specifies a list of options that, if reported by the configure script as being invalid, should not generate a warning during the @@ -16641,7 +16121,6 @@ - For recipes inheriting the update-rc.d class, UPDATERCPN specifies @@ -16664,7 +16143,6 @@ - You can perform a per-recipe check for what the latest upstream source code version is by calling bitbake -c checkpkg recipe. @@ -16693,7 +16171,6 @@ - Use the UPSTREAM_CHECK_REGEX variable to specify a different regular expression instead of the default one when the package checking system is parsing @@ -16712,7 +16189,6 @@ - You can perform a per-recipe check for what the latest upstream source code version is by calling bitbake -c checkpkg recipe. @@ -16736,7 +16212,6 @@ - Determines if devtmpfs is used for /dev population. The default value used for USE_DEVFS @@ -16761,7 +16236,6 @@ - When using SysVinit, determines whether or not to run a @@ -16787,7 +16261,6 @@ - A list of classes to globally inherit. These classes are used by the OpenEmbedded build system to enable extra features (e.g. @@ -16815,7 +16288,6 @@ - If set to error, forces the OpenEmbedded build system to produce an error if the user @@ -16875,7 +16347,6 @@ - Specifies a password file to use for obtaining static group identification (gid) values when the OpenEmbedded build system adds a group to the @@ -16911,7 +16382,6 @@ - When inheriting the useradd class, this variable @@ -16948,7 +16418,6 @@ - When inheriting the useradd class, this variable @@ -16979,7 +16448,6 @@ - Specifies a password file to use for obtaining static user identification (uid) values when the OpenEmbedded build system adds a user to the @@ -17015,7 +16483,6 @@ - When set to "useradd-staticids", causes the OpenEmbedded build system to base all user and group additions on a static @@ -17068,7 +16535,6 @@ - Specifies the persistence of the target's /var/log directory, which is used to house postinstall target log files. @@ -17093,7 +16559,6 @@ - Specifies the quality assurance checks whose failures are reported as warnings by the OpenEmbedded build system. You set this variable in your distribution configuration @@ -17177,7 +16642,6 @@ - The pathname of the work directory in which the OpenEmbedded build system builds a recipe. This directory is located within the @@ -17239,7 +16703,6 @@ - Specifies the packages that should be installed to provide an X server and drivers for the current machine, assuming your image directly includes diff --git a/poky/meta-poky/conf/distro/poky.conf b/poky/meta-poky/conf/distro/poky.conf index 37493ed36..f2ee0d187 100644 --- a/poky/meta-poky/conf/distro/poky.conf +++ b/poky/meta-poky/conf/distro/poky.conf @@ -50,14 +50,14 @@ p4://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \ svn://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n" SANITY_TESTED_DISTROS ?= " \ - poky-2.7 \n \ poky-3.0 \n \ poky-3.1 \n \ ubuntu-16.04 \n \ ubuntu-18.04 \n \ - ubuntu-19.04 \n \ + ubuntu-20.04 \n \ fedora-30 \n \ fedora-31 \n \ + fedora-32 \n \ centos-7 \n \ centos-8 \n \ debian-8 \n \ diff --git a/poky/meta-poky/conf/layer.conf b/poky/meta-poky/conf/layer.conf index 234be1321..7241af02e 100644 --- a/poky/meta-poky/conf/layer.conf +++ b/poky/meta-poky/conf/layer.conf @@ -9,7 +9,7 @@ BBFILE_COLLECTIONS += "yocto" BBFILE_PATTERN_yocto = "^${LAYERDIR}/" BBFILE_PRIORITY_yocto = "5" -LAYERSERIES_COMPAT_yocto = "dunfell" +LAYERSERIES_COMPAT_yocto = "gatesgarth" # This should only be incremented on significant changes that will # cause compatibility issues with other layers diff --git a/poky/meta-selftest/conf/layer.conf b/poky/meta-selftest/conf/layer.conf index a4bd461c3..37570aa83 100644 --- a/poky/meta-selftest/conf/layer.conf +++ b/poky/meta-selftest/conf/layer.conf @@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "selftest" BBFILE_PATTERN_selftest = "^${LAYERDIR}/" BBFILE_PRIORITY_selftest = "5" -LAYERSERIES_COMPAT_selftest = "dunfell" +LAYERSERIES_COMPAT_selftest = "gatesgarth" diff --git a/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded b/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded index 66e45c7e8..d75df0c8c 100644 --- a/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded +++ b/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded @@ -9,7 +9,6 @@ SRC_URI = "http://www.ivarch.com/programs/sources/pv-${PV}.tar.gz \ UPSTREAM_CHECK_URI = "http://www.ivarch.com/programs/pv.shtml" RECIPE_NO_UPDATE_REASON = "This recipe is used to test devtool upgrade feature" -SRC_URI[md5sum] = "062bca5ff33df1dd09472e7fc3bbe332" SRC_URI[sha256sum] = "9dd45391806b0ed215abee4c5ac1597d018c386fe9c1f5afd2f6bc3b07fd82c3" S = "${WORKDIR}/pv-${PV}" diff --git a/poky/meta-skeleton/conf/layer.conf b/poky/meta-skeleton/conf/layer.conf index 5e449a4e4..cea5c74f8 100644 --- a/poky/meta-skeleton/conf/layer.conf +++ b/poky/meta-skeleton/conf/layer.conf @@ -14,4 +14,4 @@ LAYERVERSION_skeleton = "1" LAYERDEPENDS_skeleton = "core" -LAYERSERIES_COMPAT_skeleton = "dunfell" +LAYERSERIES_COMPAT_skeleton = "gatesgarth" diff --git a/poky/meta-yocto-bsp/conf/layer.conf b/poky/meta-yocto-bsp/conf/layer.conf index 64b1248f5..bf0c1bfec 100644 --- a/poky/meta-yocto-bsp/conf/layer.conf +++ b/poky/meta-yocto-bsp/conf/layer.conf @@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "yoctobsp" BBFILE_PATTERN_yoctobsp = "^${LAYERDIR}/" BBFILE_PRIORITY_yoctobsp = "5" LAYERVERSION_yoctobsp = "4" -LAYERSERIES_COMPAT_yoctobsp = "dunfell" +LAYERSERIES_COMPAT_yoctobsp = "gatesgarth" diff --git a/poky/meta/classes/archiver.bbclass b/poky/meta/classes/archiver.bbclass index 48b4913a9..780c562b6 100644 --- a/poky/meta/classes/archiver.bbclass +++ b/poky/meta/classes/archiver.bbclass @@ -193,7 +193,13 @@ python do_ar_original() { del decoded[5][param] encoded = bb.fetch2.encodeurl(decoded) urls[i] = encoded - fetch = bb.fetch2.Fetch(urls, d) + + # Cleanup SRC_URI before call bb.fetch2.Fetch() since now SRC_URI is in the + # variable "urls", otherwise there might be errors like: + # The SRCREV_FORMAT variable must be set when multiple SCMs are used + ld = bb.data.createCopy(d) + ld.setVar('SRC_URI', '') + fetch = bb.fetch2.Fetch(urls, ld) tarball_suffix = {} for url in fetch.urls: local = fetch.localpath(url).rstrip("/"); @@ -583,7 +589,9 @@ addtask do_ar_configured after do_unpack_and_patch addtask do_ar_mirror after do_fetch addtask do_dumpdata addtask do_ar_recipe -addtask do_deploy_archives before do_build +addtask do_deploy_archives +do_build[recrdeptask] += "do_deploy_archives" +do_populate_sdk[recrdeptask] += "do_deploy_archives" python () { # Add tasks in the correct order, specifically for linux-yocto to avoid race condition. diff --git a/poky/meta/classes/base.bbclass b/poky/meta/classes/base.bbclass index 45f9435fd..4c681cc87 100644 --- a/poky/meta/classes/base.bbclass +++ b/poky/meta/classes/base.bbclass @@ -570,8 +570,7 @@ python () { if unskipped_pkgs: for pkg in skipped_pkgs: bb.debug(1, "Skipping the package %s at do_rootfs because of incompatible license(s): %s" % (pkg, ' '.join(skipped_pkgs[pkg]))) - mlprefix = d.getVar('MLPREFIX') - d.setVar('LICENSE_EXCLUSION-' + mlprefix + pkg, ' '.join(skipped_pkgs[pkg])) + d.setVar('LICENSE_EXCLUSION-' + pkg, ' '.join(skipped_pkgs[pkg])) for pkg in unskipped_pkgs: bb.debug(1, "Including the package %s" % pkg) else: @@ -584,19 +583,6 @@ python () { bb.debug(1, "Skipping recipe %s because of incompatible license(s): %s" % (pn, ' '.join(incompatible_lic))) raise bb.parse.SkipRecipe("it has incompatible license(s): %s" % ' '.join(incompatible_lic)) - # Try to verify per-package (LICENSE_) values. LICENSE should be a - # superset of all per-package licenses. We do not do advanced (pattern) - # matching of license expressions - just check that all license strings - # in LICENSE_ are found in LICENSE. - license_set = oe.license.list_licenses(license) - for pkg in d.getVar('PACKAGES').split(): - pkg_license = d.getVar('LICENSE_' + pkg) - if pkg_license: - unlisted = oe.license.list_licenses(pkg_license) - license_set - if unlisted: - bb.warn("LICENSE_%s includes licenses (%s) that are not " - "listed in LICENSE" % (pkg, ' '.join(unlisted))) - needsrcrev = False srcuri = d.getVar('SRC_URI') for uri in srcuri.split(): diff --git a/poky/meta/classes/cve-check.bbclass b/poky/meta/classes/cve-check.bbclass index 2a530a048..556ac6e67 100644 --- a/poky/meta/classes/cve-check.bbclass +++ b/poky/meta/classes/cve-check.bbclass @@ -65,7 +65,7 @@ python do_cve_check () { } -addtask cve_check before do_build +addtask cve_check before do_build after do_fetch do_cve_check[depends] = "cve-update-db-native:do_populate_cve_db" do_cve_check[nostamp] = "1" diff --git a/poky/meta/classes/fontcache.bbclass b/poky/meta/classes/fontcache.bbclass index 97e7f17f0..624a420a0 100644 --- a/poky/meta/classes/fontcache.bbclass +++ b/poky/meta/classes/fontcache.bbclass @@ -7,7 +7,7 @@ PACKAGE_WRITE_DEPS += "qemu-native" inherit qemu FONT_PACKAGES ??= "${PN}" -FONT_EXTRA_RDEPENDS ?= "fontconfig-utils" +FONT_EXTRA_RDEPENDS ?= "${MLPREFIX}fontconfig-utils" FONTCONFIG_CACHE_DIR ?= "${localstatedir}/cache/fontconfig" FONTCONFIG_CACHE_PARAMS ?= "-v" # You can change this to e.g. FC_DEBUG=16 to debug fc-cache issues, diff --git a/poky/meta/classes/go-mod.bbclass b/poky/meta/classes/go-mod.bbclass new file mode 100644 index 000000000..5871d0250 --- /dev/null +++ b/poky/meta/classes/go-mod.bbclass @@ -0,0 +1,20 @@ +# Handle Go Modules support +# +# When using Go Modules, the the current working directory MUST be at or below +# the location of the 'go.mod' file when the go tool is used, and there is no +# way to tell it to look elsewhere. It will automatically look upwards for the +# file, but not downwards. +# +# To support this use case, we provide the `GO_WORKDIR` variable, which defaults +# to `GO_IMPORT` but allows for easy override. +# +# Copyright 2020 (C) O.S. Systems Software LTDA. + +# The '-modcacherw' option ensures we have write access to the cached objects so +# we avoid errors during clean task as well as when removing the TMPDIR. +export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS} -modcacherw" + +inherit go + +GO_WORKDIR ?= "${GO_IMPORT}" +do_compile[dirs] += "${B}/src/${GO_WORKDIR}" diff --git a/poky/meta/classes/go.bbclass b/poky/meta/classes/go.bbclass index c99689ac5..a9e31b50e 100644 --- a/poky/meta/classes/go.bbclass +++ b/poky/meta/classes/go.bbclass @@ -41,7 +41,7 @@ GO_EXTLDFLAGS ?= "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${GO_RPATH_LINK} ${LDFLAGS GO_LINKMODE ?= "" GO_LINKMODE_class-nativesdk = "--linkmode=external" GO_LDFLAGS ?= '-ldflags="${GO_RPATH} ${GO_LINKMODE} -extldflags '${GO_EXTLDFLAGS}'"' -export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS}" +export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS} -trimpath" export GOPATH_OMIT_IN_ACTIONID ?= "1" export GOPTESTBUILDFLAGS ?= "${GOBUILDFLAGS} -c" export GOPTESTFLAGS ?= "" diff --git a/poky/meta/classes/image_types.bbclass b/poky/meta/classes/image_types.bbclass index f82f1d886..ab05cc90f 100644 --- a/poky/meta/classes/image_types.bbclass +++ b/poky/meta/classes/image_types.bbclass @@ -273,7 +273,7 @@ IMAGE_TYPES = " \ ubi ubifs multiubi \ tar tar.gz tar.bz2 tar.xz tar.lz4 tar.zst \ cpio cpio.gz cpio.xz cpio.lzma cpio.lz4 \ - wic wic.gz wic.bz2 wic.lzma \ + wic wic.gz wic.bz2 wic.lzma wic.zst \ container \ f2fs \ " diff --git a/poky/meta/classes/image_types_wic.bbclass b/poky/meta/classes/image_types_wic.bbclass index 96ed0473e..7b1db50a2 100644 --- a/poky/meta/classes/image_types_wic.bbclass +++ b/poky/meta/classes/image_types_wic.bbclass @@ -142,7 +142,7 @@ python do_rootfs_wicenv () { depdir = d.getVar('IMGDEPLOYDIR') bb.utils.copyfile(os.path.join(outdir, basename) + '.env', os.path.join(depdir, basename) + '.env') } -addtask do_flush_pseudodb after do_image before do_image_wic +addtask do_flush_pseudodb after do_rootfs before do_image do_image_qa addtask do_rootfs_wicenv after do_image before do_image_wic do_rootfs_wicenv[vardeps] += "${WICVARS}" do_rootfs_wicenv[prefuncs] = 'set_image_size' diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass index 8b19f445f..b7c613880 100644 --- a/poky/meta/classes/insane.bbclass +++ b/poky/meta/classes/insane.bbclass @@ -26,7 +26,7 @@ WARN_QA ?= " libdir xorg-driver-abi \ textrel incompatible-license files-invalid \ infodir build-deps src-uri-bad symlink-to-sysroot multilib \ invalid-packageconfig host-user-contaminated uppercase-pn patch-fuzz \ - mime mime-xdg \ + mime mime-xdg unlisted-pkg-lics \ " ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ perms dep-cmp pkgvarcheck perm-config perm-line perm-link \ @@ -898,6 +898,25 @@ def package_qa_check_expanded_d(package, d, messages): sane = False return sane +QAPKGTEST[unlisted-pkg-lics] = "package_qa_check_unlisted_pkg_lics" +def package_qa_check_unlisted_pkg_lics(package, d, messages): + """ + Check that all licenses for a package are among the licenses for the recipe. + """ + pkg_lics = d.getVar('LICENSE_' + package) + if not pkg_lics: + return True + + recipe_lics_set = oe.license.list_licenses(d.getVar('LICENSE')) + unlisted = oe.license.list_licenses(pkg_lics) - recipe_lics_set + if not unlisted: + return True + + package_qa_add_message(messages, "unlisted-pkg-lics", + "LICENSE_%s includes licenses (%s) that are not " + "listed in LICENSE" % (package, ' '.join(unlisted))) + return False + def package_qa_check_encoding(keys, encode, d): def check_encoding(key, enc): sane = True diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass index 6846d6040..20a0135fc 100644 --- a/poky/meta/classes/kernel.bbclass +++ b/poky/meta/classes/kernel.bbclass @@ -331,6 +331,21 @@ kernel_do_compile() { do_compile_kernelmodules() { unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE + if [ "${BUILD_REPRODUCIBLE_BINARIES}" = "1" ]; then + # kernel sources do not use do_unpack, so SOURCE_DATE_EPOCH may not + # be set.... + if [ "${SOURCE_DATE_EPOCH}" = "" -o "${SOURCE_DATE_EPOCH}" = "0" ]; then + # The source directory is not necessarily a git repository, so we + # specify the git-dir to ensure that git does not query a + # repository in any parent directory. + SOURCE_DATE_EPOCH=`git --git-dir="${S}/.git" log -1 --pretty=%ct 2>/dev/null || echo "${REPRODUCIBLE_TIMESTAMP_ROOTFS}"` + fi + + ts=`LC_ALL=C date -d @$SOURCE_DATE_EPOCH` + export KBUILD_BUILD_TIMESTAMP="$ts" + export KCONFIG_NOTIMESTAMP=1 + 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} @@ -696,6 +711,7 @@ kernel_do_deploy() { else TAR_ARGS="" fi + TAR_ARGS="$TAR_ARGS --owner=0 --group=0" tar $TAR_ARGS -cv -C ${D}${root_prefix} lib | gzip -9n > $deployDir/modules-${MODULE_TARBALL_NAME}.tgz ln -sf modules-${MODULE_TARBALL_NAME}.tgz $deployDir/modules-${MODULE_TARBALL_LINK_NAME}.tgz diff --git a/poky/meta/classes/multilib.bbclass b/poky/meta/classes/multilib.bbclass index ee677da1e..9f726e453 100644 --- a/poky/meta/classes/multilib.bbclass +++ b/poky/meta/classes/multilib.bbclass @@ -91,13 +91,12 @@ addhandler multilib_virtclass_handler multilib_virtclass_handler[eventmask] = "bb.event.RecipePreFinalise" python __anonymous () { - variant = d.getVar("BBEXTENDVARIANT") - - import oe.classextend + if bb.data.inherits_class('image', d): + variant = d.getVar("BBEXTENDVARIANT") + import oe.classextend - clsextend = oe.classextend.ClassExtender(variant, d) + clsextend = oe.classextend.ClassExtender(variant, d) - if bb.data.inherits_class('image', d): clsextend.map_depends_variable("PACKAGE_INSTALL") clsextend.map_depends_variable("LINGUAS_INSTALL") clsextend.map_depends_variable("RDEPENDS") @@ -109,6 +108,22 @@ python __anonymous () { bb.build.deltask('do_populate_sdk', d) bb.build.deltask('do_populate_sdk_ext', d) return +} + +python multilib_virtclass_handler_postkeyexp () { + cls = d.getVar("BBEXTENDCURR") + variant = d.getVar("BBEXTENDVARIANT") + if cls != "multilib" or not variant: + return + + variant = d.getVar("BBEXTENDVARIANT") + + import oe.classextend + + clsextend = oe.classextend.ClassExtender(variant, d) + + if bb.data.inherits_class('image', d): + return clsextend.map_depends_variable("DEPENDS") clsextend.map_variable("PROVIDES") @@ -129,6 +144,9 @@ python __anonymous () { reset_alternative_priority(d) } +addhandler multilib_virtclass_handler_postkeyexp +multilib_virtclass_handler_postkeyexp[eventmask] = "bb.event.RecipePostKeyExpansion" + def reset_alternative_priority(d): if not bb.data.inherits_class('update-alternatives', d): return diff --git a/poky/meta/classes/package.bbclass b/poky/meta/classes/package.bbclass index 0b5cf4774..0af5f6673 100644 --- a/poky/meta/classes/package.bbclass +++ b/poky/meta/classes/package.bbclass @@ -1508,7 +1508,7 @@ EXPORT_FUNCTIONS package_name_hook PKGDESTWORK = "${WORKDIR}/pkgdata" -PKGDATA_VARS = "PN PE PV PR PKGE PKGV PKGR LICENSE DESCRIPTION SUMMARY RDEPENDS RPROVIDES RRECOMMENDS RSUGGESTS RREPLACES RCONFLICTS SECTION PKG ALLOW_EMPTY FILES CONFFILES FILES_INFO pkg_postinst pkg_postrm pkg_preinst pkg_prerm" +PKGDATA_VARS = "PN PE PV PR PKGE PKGV PKGR LICENSE DESCRIPTION SUMMARY RDEPENDS RPROVIDES RRECOMMENDS RSUGGESTS RREPLACES RCONFLICTS SECTION PKG ALLOW_EMPTY FILES CONFFILES FILES_INFO PACKAGE_ADD_METADATA pkg_postinst pkg_postrm pkg_preinst pkg_prerm" python emit_pkgdata() { from glob import glob @@ -2263,7 +2263,7 @@ python package_depchains() { # Since bitbake can't determine which variables are accessed during package # iteration, we need to list them here: -PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS PKG ALLOW_EMPTY pkg_postinst pkg_postrm pkg_postinst_ontarget INITSCRIPT_NAME INITSCRIPT_PARAMS DEBIAN_NOAUTONAME ALTERNATIVE PKGE PKGV PKGR USERADD_PARAM GROUPADD_PARAM CONFFILES SYSTEMD_SERVICE LICENSE SECTION pkg_preinst pkg_prerm RREPLACES GROUPMEMS_PARAM SYSTEMD_AUTO_ENABLE SKIP_FILEDEPS PRIVATE_LIBS" +PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS PKG ALLOW_EMPTY pkg_postinst pkg_postrm pkg_postinst_ontarget INITSCRIPT_NAME INITSCRIPT_PARAMS DEBIAN_NOAUTONAME ALTERNATIVE PKGE PKGV PKGR USERADD_PARAM GROUPADD_PARAM CONFFILES SYSTEMD_SERVICE LICENSE SECTION pkg_preinst pkg_prerm RREPLACES GROUPMEMS_PARAM SYSTEMD_AUTO_ENABLE SKIP_FILEDEPS PRIVATE_LIBS PACKAGE_ADD_METADATA" def gen_packagevar(d, pkgvars="PACKAGEVARS"): ret = [] diff --git a/poky/meta/classes/package_deb.bbclass b/poky/meta/classes/package_deb.bbclass index 790b26aef..cb723fc1d 100644 --- a/poky/meta/classes/package_deb.bbclass +++ b/poky/meta/classes/package_deb.bbclass @@ -283,8 +283,9 @@ def deb_write_pkg(pkg, d): # Otherwise allarch packages may change depending on override configuration deb_write_pkg[vardepsexclude] = "OVERRIDES" -# Indirect references to these vars -do_package_write_deb[vardeps] += "PKGV PKGR PKGV DESCRIPTION SECTION PRIORITY MAINTAINER DPKG_ARCH PN HOMEPAGE" +# Have to list any variables referenced as X_ that aren't in pkgdata here +DEBEXTRAVARS = "PKGV PKGR PKGV DESCRIPTION SECTION PRIORITY MAINTAINER DPKG_ARCH PN HOMEPAGE PACKAGE_ADD_METADATA_DEB" +do_package_write_deb[vardeps] += "${@gen_packagevar(d, 'DEBEXTRAVARS')}" SSTATETASKS += "do_package_write_deb" do_package_write_deb[sstate-inputdirs] = "${PKGWRITEDIRDEB}" diff --git a/poky/meta/classes/package_ipk.bbclass b/poky/meta/classes/package_ipk.bbclass index c008559e4..79cb36c51 100644 --- a/poky/meta/classes/package_ipk.bbclass +++ b/poky/meta/classes/package_ipk.bbclass @@ -238,7 +238,7 @@ def ipk_write_pkg(pkg, d): bb.utils.unlockfile(lf) # Have to list any variables referenced as X_ that aren't in pkgdata here -IPKEXTRAVARS = "PRIORITY MAINTAINER PACKAGE_ARCH HOMEPAGE" +IPKEXTRAVARS = "PRIORITY MAINTAINER PACKAGE_ARCH HOMEPAGE PACKAGE_ADD_METADATA_IPK" ipk_write_pkg[vardeps] += "${@gen_packagevar(d, 'IPKEXTRAVARS')}" # Otherwise allarch packages may change depending on override configuration diff --git a/poky/meta/classes/package_rpm.bbclass b/poky/meta/classes/package_rpm.bbclass index 9145717f9..519c22be4 100644 --- a/poky/meta/classes/package_rpm.bbclass +++ b/poky/meta/classes/package_rpm.bbclass @@ -286,16 +286,18 @@ python write_specfile () { # Construct the SPEC file... srcname = d.getVar('PN') - srcsummary = (d.getVar('SUMMARY') or d.getVar('DESCRIPTION') or ".") - srcversion = d.getVar('PKGV').replace('-', '+') - srcrelease = d.getVar('PKGR') - srcepoch = (d.getVar('PKGE') or "") - srclicense = d.getVar('LICENSE') - srcsection = d.getVar('SECTION') - srcmaintainer = d.getVar('MAINTAINER') - srchomepage = d.getVar('HOMEPAGE') - srcdescription = d.getVar('DESCRIPTION') or "." - srccustomtagschunk = get_package_additional_metadata("rpm", d) + localdata = bb.data.createCopy(d) + localdata.setVar('OVERRIDES', d.getVar("OVERRIDES", False) + ":" + srcname) + srcsummary = (localdata.getVar('SUMMARY') or localdata.getVar('DESCRIPTION') or ".") + srcversion = localdata.getVar('PKGV').replace('-', '+') + srcrelease = localdata.getVar('PKGR') + srcepoch = (localdata.getVar('PKGE') or "") + srclicense = localdata.getVar('LICENSE') + srcsection = localdata.getVar('SECTION') + srcmaintainer = localdata.getVar('MAINTAINER') + srchomepage = localdata.getVar('HOMEPAGE') + srcdescription = localdata.getVar('DESCRIPTION') or "." + srccustomtagschunk = get_package_additional_metadata("rpm", localdata) srcdepends = d.getVar('DEPENDS') srcrdepends = [] @@ -621,6 +623,10 @@ python write_specfile () { # Otherwise allarch packages may change depending on override configuration write_specfile[vardepsexclude] = "OVERRIDES" +# Have to list any variables referenced as X_ that aren't in pkgdata here +RPMEXTRAVARS = "PACKAGE_ADD_METADATA_RPM" +write_specfile[vardeps] += "${@gen_packagevar(d, 'RPMEXTRAVARS')}" + python do_package_rpm () { workdir = d.getVar('WORKDIR') tmpdir = d.getVar('TMPDIR') diff --git a/poky/meta/classes/sanity.bbclass b/poky/meta/classes/sanity.bbclass index 292c5591d..e021b9d24 100644 --- a/poky/meta/classes/sanity.bbclass +++ b/poky/meta/classes/sanity.bbclass @@ -784,6 +784,12 @@ def check_sanity_everybuild(status, d): if "." in paths or "./" in paths or "" in paths: status.addresult("PATH contains '.', './' or '' (empty element), which will break the build, please remove this.\nParsed PATH is " + str(paths) + "\n") + # Check whether 'inherit' directive is found (used for a class to inherit) + # in conf file it's supposed to be uppercase INHERIT + inherit = d.getVar('inherit') + if inherit: + status.addresult("Please don't use inherit directive in your local.conf. The directive is supposed to be used in classes and recipes only to inherit of bbclasses. Here INHERIT should be used.\n") + # Check that the DISTRO is valid, if set # need to take into account DISTRO renaming DISTRO distro = d.getVar('DISTRO') diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf index bdade79ab..f7700f119 100644 --- a/poky/meta/conf/bitbake.conf +++ b/poky/meta/conf/bitbake.conf @@ -833,8 +833,8 @@ DISTRO_FEATURES_NATIVESDK ?= "x11" # Normally target distro features will not be applied to native builds: # Native distro features on this list will use the target feature value -DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation" -DISTRO_FEATURES_FILTER_NATIVESDK ?= "api-documentation" +DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation opengl" +DISTRO_FEATURES_FILTER_NATIVESDK ?= "api-documentation opengl" DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit gobject-introspection-data ldconfig" MACHINE_FEATURES_BACKFILL = "rtc qemu-usermode" diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc index 256666c0e..51e6da669 100644 --- a/poky/meta/conf/distro/include/maintainers.inc +++ b/poky/meta/conf/distro/include/maintainers.inc @@ -2,7 +2,7 @@ # # This file contains a list of recipe maintainers. # -# Please submit any patches against recipes in meta to the +# Please submit any patches against recipes in meta to the # OE-Core mail list (openembedded-core@lists.openembedded.org) # For recipes in meta-yocto please use the Poky list (poky@yoctoproject.org) # @@ -579,6 +579,8 @@ RECIPE_MAINTAINER_pn-python3-cython = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pip = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pycairo = "Oleksandr Kravchuk " +RECIPE_MAINTAINER_pn-python3-pyelftools = "Joshua Watt " RECIPE_MAINTAINER_pn-python3-pygments = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pygobject = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pyparsing = "Oleksandr Kravchuk " diff --git a/poky/meta/conf/layer.conf b/poky/meta/conf/layer.conf index f03eb485a..da93d64e0 100644 --- a/poky/meta/conf/layer.conf +++ b/poky/meta/conf/layer.conf @@ -7,12 +7,12 @@ BBFILE_COLLECTIONS += "core" BBFILE_PATTERN_core = "^${LAYERDIR}/" BBFILE_PRIORITY_core = "5" -LAYERSERIES_CORENAMES = "dunfell" +LAYERSERIES_CORENAMES = "dunfell gatesgarth" # This should only be incremented on significant changes that will # cause compatibility issues with other layers LAYERVERSION_core = "11" -LAYERSERIES_COMPAT_core = "dunfell" +LAYERSERIES_COMPAT_core = "gatesgarth" BBLAYERS_LAYERINDEX_NAME_core = "openembedded-core" diff --git a/poky/meta/conf/machine/include/tune-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa53.inc index 6c0b443ea..b7327d00c 100644 --- a/poky/meta/conf/machine/include/tune-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa53.inc @@ -13,5 +13,9 @@ TUNE_FEATURES_tune-cortexa53 = "aarch64 cortexa53 crc" TUNE_FEATURES_tune-cortexa53-crypto = "aarch64 cortexa53 crc crypto" PACKAGE_EXTRA_ARCHS_tune-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa53 cortexa53-crypto" + +TUNE_PKGARCH_tune-cortexa53 = "cortexa53" +TUNE_PKGARCH_tune-cortexa53-crypto = "cortexa53-crypto" + BASE_LIB_tune-cortexa53 = "lib64" BASE_LIB_tune-cortexa53-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa55.inc b/poky/meta/conf/machine/include/tune-cortexa55.inc index 8242cc9ce..274944819 100644 --- a/poky/meta/conf/machine/include/tune-cortexa55.inc +++ b/poky/meta/conf/machine/include/tune-cortexa55.inc @@ -6,12 +6,9 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa55', ' -mcpu=corte require conf/machine/include/arm/arch-armv8a.inc # Little Endian base configs -AVAILTUNES += "cortexa55 cortexa55-crypto" +AVAILTUNES += "cortexa55" ARMPKGARCH_tune-cortexa55 = "cortexa55" -ARMPKGARCH_tune-cortexa55-crypto = "cortexa55" -TUNE_FEATURES_tune-cortexa55 = "aarch64 cortexa55 crc" -TUNE_FEATURES_tune-cortexa55-crypto = "aarch64 cortexa55 crc crypto" -PACKAGE_EXTRA_ARCHS_tune-cortexa55 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa55" -PACKAGE_EXTRA_ARCHS_tune-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa55 cortexa55-crypto" +TUNE_FEATURES_tune-cortexa55 = "aarch64 cortexa55 crc crypto" +TUNE_PKGARCH_tune-cortexa55 = "cortexa55" +PACKAGE_EXTRA_ARCHS_tune-cortexa55 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa55" BASE_LIB_tune-cortexa55 = "lib64" -BASE_LIB_tune-cortexa55-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc index d05e93f51..b95d63e86 100644 --- a/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc @@ -1,18 +1,16 @@ DEFAULTTUNE ?= "cortexa57-cortexa53" -require conf/machine/include/arm/arch-armv8a.inc TUNEVALID[cortexa57-cortexa53] = "Enable big.LITTLE Cortex-A57.Cortex-A53 specific processor optimizations" TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" - -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "aarch64", " -march=armv8-a", "" ,d)}" - +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", " -mcpu=cortex-a57.cortex-a53", "", d)}" MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", "cortexa57-cortexa53:", "" ,d)}" -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", " -mtune=cortex-a57.cortex-a53", "", d)}" +require conf/machine/include/arm/arch-armv8a.inc # Little Endian base configs AVAILTUNES += "cortexa57-cortexa53" ARMPKGARCH_tune-cortexa57-cortexa53 = "cortexa57-cortexa53" -TUNE_FEATURES_tune-cortexa57-cortexa53 = "${TUNE_FEATURES_tune-aarch64} cortexa57-cortexa53" +TUNE_FEATURES_tune-cortexa57-cortexa53 = "aarch64 cortexa57-cortexa53" +TUNE_PKGARCH_tune-cortexa57-cortexa53 = "cortexa57-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa57-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-aarch64} cortexa57-cortexa53" BASE_LIB_tune-cortexa57-cortexa53 = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa57.inc b/poky/meta/conf/machine/include/tune-cortexa57.inc new file mode 100644 index 000000000..e8ddeb578 --- /dev/null +++ b/poky/meta/conf/machine/include/tune-cortexa57.inc @@ -0,0 +1,19 @@ +DEFAULTTUNE ?= "cortexa57" + +TUNEVALID[cortexa57] = "Enable Cortex-A57 specific processor optimizations" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa57', ' -mcpu=cortex-a57', '', d)}" + +require conf/machine/include/arm/arch-armv8a.inc + +# Little Endian base configs +AVAILTUNES += "cortexa57 cortexa57-crypto" +ARMPKGARCH_tune-cortexa57 = "cortexa57" +ARMPKGARCH_tune-cortexa57-crypto = "cortexa57" +TUNE_FEATURES_tune-cortexa57 = "aarch64 cortexa57 crc" +TUNE_FEATURES_tune-cortexa57-crypto = "aarch64 cortexa57 crc crypto" +PACKAGE_EXTRA_ARCHS_tune-cortexa57 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa57" +PACKAGE_EXTRA_ARCHS_tune-cortexa57-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa57 cortexa57-crypto" +TUNE_PKGARCH_tune-cortexa57 = "cortexa57" +TUNE_PKGARCH_tune-cortexa57-crypto = "cortexa57-crypto" +BASE_LIB_tune-cortexa57 = "lib64" +BASE_LIB_tune-cortexa57-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc index f208b98e3..fd1ffeb17 100644 --- a/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc @@ -1,23 +1,22 @@ DEFAULTTUNE ?= "cortexa72-cortexa53" -require conf/machine/include/arm/arch-armv8a.inc - TUNEVALID[cortexa72-cortexa53] = "Enable big.LITTLE Cortex-A72.Cortex-A53 specific processor optimizations" - TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" - +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", " -mcpu=cortex-a72.cortex-a53", "", d)}" MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", "cortexa72-cortexa53:", "" ,d)}" -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", " -mtune=cortex-a72.cortex-a53", "", d)}" +require conf/machine/include/arm/arch-armv8a.inc # cortexa72.cortexa53 implies crc support AVAILTUNES += "cortexa72-cortexa53 cortexa72-cortexa53-crypto" ARMPKGARCH_tune-cortexa72-cortexa53 = "cortexa72-cortexa53" ARMPKGARCH_tune-cortexa72-cortexa53-crypto = "cortexa72-cortexa53" -TUNE_FEATURES_tune-cortexa72-cortexa53 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa72-cortexa53" -TUNE_FEATURES_tune-cortexa72-cortexa53-crypto = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa72-cortexa53" +TUNE_FEATURES_tune-cortexa72-cortexa53 = "aarch64 crc cortexa72-cortexa53" +TUNE_FEATURES_tune-cortexa72-cortexa53-crypto = "aarch64 crc crypto cortexa72-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa72-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72-cortexa53 cortexa72-cortexa53-crypto" +TUNE_PKGARCH_tune-cortexa72-cortexa53 = "cortexa72-cortexa53" +TUNE_PKGARCH_tune-cortexa72-cortexa53-crypto = "cortexa72-cortexa53-crypto" BASE_LIB_tune-cortexa72-cortexa53 = "lib64" BASE_LIB_tune-cortexa72-cortexa53-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa72.inc b/poky/meta/conf/machine/include/tune-cortexa72.inc index 00f7745a2..23640d5c1 100644 --- a/poky/meta/conf/machine/include/tune-cortexa72.inc +++ b/poky/meta/conf/machine/include/tune-cortexa72.inc @@ -10,4 +10,5 @@ AVAILTUNES += "cortexa72" ARMPKGARCH_tune-cortexa72 = "cortexa72" TUNE_FEATURES_tune-cortexa72 = "aarch64 cortexa72 crc crypto" PACKAGE_EXTRA_ARCHS_tune-cortexa72 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72" +TUNE_PKGARCH_tune-cortexa72 = "cortexa72" BASE_LIB_tune-cortexa72 = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc index 8df418227..ab87c8874 100644 --- a/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc @@ -1,23 +1,22 @@ DEFAULTTUNE ?= "cortexa73-cortexa53" -require conf/machine/include/arm/arch-armv8a.inc - TUNEVALID[cortexa73-cortexa53] = "Enable big.LITTLE Cortex-A73.Cortex-A53 specific processor optimizations" - TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" - MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", "cortexa73-cortexa53:", "" ,d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", " -mcpu=cortex-a73.cortex-a53", "", d)}" -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", " -mtune=cortex-a73.cortex-a53", "", d)}" +require conf/machine/include/arm/arch-armv8a.inc # cortexa73.cortexa53 implies crc support AVAILTUNES += "cortexa73-cortexa53 cortexa73-cortexa53-crypto" ARMPKGARCH_tune-cortexa73-cortexa53 = "cortexa73-cortexa53" ARMPKGARCH_tune-cortexa73-cortexa53-crypto = "cortexa73-cortexa53" -TUNE_FEATURES_tune-cortexa73-cortexa53 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa73-cortexa53" -TUNE_FEATURES_tune-cortexa73-cortexa53-crypto = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa73-cortexa53" +TUNE_FEATURES_tune-cortexa73-cortexa53 = "aarch64 crc cortexa73-cortexa53" +TUNE_FEATURES_tune-cortexa73-cortexa53-crypto = "aarch64 crc crypto cortexa73-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa73-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73-cortexa53 cortexa73-cortexa53-crypto" +TUNE_PKGARCH_tune-cortexa73-cortexa53 = "cortexa73-cortexa53" +TUNE_PKGARCH_tune-cortexa73-cortexa53-crypto = "cortexa73-cortexa53-crypto" BASE_LIB_tune-cortexa73-cortexa53 = "lib64" BASE_LIB_tune-cortexa73-cortexa53-crypto = "lib64" diff --git a/poky/meta/conf/machine/qemuarm64.conf b/poky/meta/conf/machine/qemuarm64.conf index 1e2d4f018..7965fac71 100644 --- a/poky/meta/conf/machine/qemuarm64.conf +++ b/poky/meta/conf/machine/qemuarm64.conf @@ -2,7 +2,7 @@ #@NAME: QEMU ARMv8 machine #@DESCRIPTION: Machine configuration for running an ARMv8 system on QEMU -require conf/machine/include/arm/arch-armv8a.inc +require conf/machine/include/tune-cortexa57.inc require conf/machine/include/qemu.inc KERNEL_IMAGETYPE = "Image" diff --git a/poky/meta/files/common-licenses/Unlicense b/poky/meta/files/common-licenses/Unlicense new file mode 100644 index 000000000..68a49daad --- /dev/null +++ b/poky/meta/files/common-licenses/Unlicense @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to diff --git a/poky/meta/lib/oe/classextend.py b/poky/meta/lib/oe/classextend.py index f02fbe9fb..e1049ce3e 100644 --- a/poky/meta/lib/oe/classextend.py +++ b/poky/meta/lib/oe/classextend.py @@ -4,11 +4,21 @@ import collections +def get_packages(d): + pkgs = d.getVar("PACKAGES_NONML") + extcls = d.getVar("EXTENDERCLASS") + return extcls.rename_packages_internal(pkgs) + +def get_depends(varprefix, d): + extcls = d.getVar("EXTENDERCLASS") + return extcls.map_depends_variable(varprefix + "_NONML") + class ClassExtender(object): def __init__(self, extname, d): self.extname = extname self.d = d self.pkgs_mapping = [] + self.d.setVar("EXTENDERCLASS", self) def extend_name(self, name): if name.startswith("kernel-") or name == "virtual/kernel": @@ -24,7 +34,7 @@ class ClassExtender(object): if not subs.startswith(self.extname): return "virtual/" + self.extname + "-" + subs return name - if name.startswith("/"): + if name.startswith("/") or (name.startswith("${") and name.endswith("}")): return name if not name.startswith(self.extname): return self.extname + "-" + name @@ -89,8 +99,14 @@ class ClassExtender(object): for dep in deps: newdeps[self.map_depends(dep)] = deps[dep] - self.d.setVar(varname, bb.utils.join_deps(newdeps, False).replace("EXTENDPKGV", "${EXTENDPKGV}")) + if not varname.endswith("_NONML"): + #if varname == "DEPENDS": + self.d.renameVar(varname, varname + "_NONML") + self.d.setVar(varname, "${@oe.classextend.get_depends('%s', d)}" % varname) + self.d.appendVarFlag(varname, "vardeps", " " + varname + "_NONML") + ret = bb.utils.join_deps(newdeps, False).replace("EXTENDPKGV", "${EXTENDPKGV}") self.d.setVar("EXTENDPKGV", orig) + return ret def map_packagevars(self): for pkg in (self.d.getVar("PACKAGES").split() + [""]): @@ -109,10 +125,23 @@ class ClassExtender(object): continue self.pkgs_mapping.append([pkg, self.extend_name(pkg)]) - self.d.setVar("PACKAGES", " ".join([row[1] for row in self.pkgs_mapping])) + self.d.renameVar("PACKAGES", "PACKAGES_NONML") + self.d.setVar("PACKAGES", "${@oe.classextend.get_packages(d)}") + + def rename_packages_internal(self, pkgs): + self.pkgs_mapping = [] + for pkg in (self.d.expand(pkgs) or "").split(): + if pkg.startswith(self.extname): + self.pkgs_mapping.append([pkg.split(self.extname + "-")[1], pkg]) + continue + self.pkgs_mapping.append([pkg, self.extend_name(pkg)]) + + return " ".join([row[1] for row in self.pkgs_mapping]) def rename_package_variables(self, variables): for pkg_mapping in self.pkgs_mapping: + if pkg_mapping[0].startswith("${") and pkg_mapping[0].endswith("}"): + continue for subs in variables: self.d.renameVar("%s_%s" % (subs, pkg_mapping[0]), "%s_%s" % (subs, pkg_mapping[1])) diff --git a/poky/meta/lib/oe/recipeutils.py b/poky/meta/lib/oe/recipeutils.py index 732420e46..29473a988 100644 --- a/poky/meta/lib/oe/recipeutils.py +++ b/poky/meta/lib/oe/recipeutils.py @@ -1076,6 +1076,18 @@ def get_recipe_upgrade_status(recipes=None): 'RECIPE_UPSTREAM_VERSION', 'RECIPE_UPSTREAM_DATE', 'CHECK_DATE', + 'FETCHCMD_bzr', + 'FETCHCMD_ccrc', + 'FETCHCMD_cvs', + 'FETCHCMD_git', + 'FETCHCMD_hg', + 'FETCHCMD_npm', + 'FETCHCMD_osc', + 'FETCHCMD_p4', + 'FETCHCMD_repo', + 'FETCHCMD_s3', + 'FETCHCMD_svn', + 'FETCHCMD_wget', ) with bb.tinfoil.Tinfoil() as tinfoil: diff --git a/poky/meta/lib/oe/terminal.py b/poky/meta/lib/oe/terminal.py index a1daa2bed..eb10a6e33 100644 --- a/poky/meta/lib/oe/terminal.py +++ b/poky/meta/lib/oe/terminal.py @@ -207,7 +207,10 @@ def spawn_preferred(sh_cmd, title=None, env=None, d=None): spawn(terminal.name, sh_cmd, title, env, d) break except UnsupportedTerminal: - continue + pass + except: + bb.warn("Terminal %s is supported but did not start" % (terminal.name)) + # when we've run out of options else: raise NoSupportedTerminals(get_cmd_list()) diff --git a/poky/meta/lib/oeqa/core/runner.py b/poky/meta/lib/oeqa/core/runner.py index 1284295c3..00b7d0bb1 100644 --- a/poky/meta/lib/oeqa/core/runner.py +++ b/poky/meta/lib/oeqa/core/runner.py @@ -182,8 +182,10 @@ class OETestResult(_TestResult): (status, log) = self._getTestResultDetails(case) t = "" + duration = 0 if case.id() in self.starttime and case.id() in self.endtime: - t = " (" + "{0:.2f}".format(self.endtime[case.id()] - self.starttime[case.id()]) + "s)" + duration = self.endtime[case.id()] - self.starttime[case.id()] + t = " (" + "{0:.2f}".format(duration) + "s)" if status not in logs: logs[status] = [] @@ -191,6 +193,8 @@ class OETestResult(_TestResult): report = {'status': status} if log: report['log'] = log + if duration: + report['duration'] = duration if dump_streams and case.id() in self.logged_output: (stdout, stderr) = self.logged_output[case.id()] report['stdout'] = stdout diff --git a/poky/meta/lib/oeqa/core/utils/concurrencytest.py b/poky/meta/lib/oeqa/core/utils/concurrencytest.py index fac59f765..01c39830f 100644 --- a/poky/meta/lib/oeqa/core/utils/concurrencytest.py +++ b/poky/meta/lib/oeqa/core/utils/concurrencytest.py @@ -77,14 +77,17 @@ class ProxyTestResult: # a very basic TestResult proxy, in order to modify add* calls def __init__(self, target): self.result = target + self.failed_tests = 0 def _addResult(self, method, test, *args, exception = False, **kwargs): return method(test, *args, **kwargs) def addError(self, test, err = None, **kwargs): + self.failed_tests += 1 self._addResult(self.result.addError, test, err, exception = True, **kwargs) def addFailure(self, test, err = None, **kwargs): + self.failed_tests += 1 self._addResult(self.result.addFailure, test, err, exception = True, **kwargs) def addSuccess(self, test, **kwargs): @@ -96,6 +99,9 @@ class ProxyTestResult: def addUnexpectedSuccess(self, test, **kwargs): self._addResult(self.result.addUnexpectedSuccess, test, **kwargs) + def wasSuccessful(self): + return self.failed_tests == 0 + def __getattr__(self, attr): return getattr(self.result, attr) @@ -287,10 +293,10 @@ def fork_for_tests(concurrency_num, suite): # as per default in parent code subunit_client.buffer = True subunit_result = AutoTimingTestResultDecorator(subunit_client) - process_suite.run(ExtraResultsEncoderTestResult(subunit_result)) + unittest_result = process_suite.run(ExtraResultsEncoderTestResult(subunit_result)) if ourpid != os.getpid(): os._exit(0) - if newbuilddir: + if newbuilddir and unittest_result.wasSuccessful(): removebuilddir(newbuilddir) except: # Don't do anything with process children diff --git a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py index 2b9c4998f..dea519e6d 100644 --- a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py +++ b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py @@ -209,7 +209,7 @@ class ImageFeatures(OESelftestTestCase): image_name = 'core-image-minimal' all_image_types = set(get_bb_var("IMAGE_TYPES", image_name).split()) - blacklist = set(('container', 'elf', 'f2fs', 'multiubi', 'tar.zst')) + blacklist = set(('container', 'elf', 'f2fs', 'multiubi', 'tar.zst', 'wic.zst')) img_types = all_image_types - blacklist config = 'IMAGE_FSTYPES += "%s"\n'\ diff --git a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py index 09d3de7ae..793c98a33 100644 --- a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py +++ b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py @@ -188,18 +188,14 @@ class TestImage(OESelftestTestCase): self.skipTest('virgl isn\'t working with Opensuse 15.0') qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native') - sdl_packageconfig = get_bb_var('PACKAGECONFIG', 'libsdl2-native') + qemu_distrofeatures = get_bb_var('DISTRO_FEATURES', 'qemu-system-native') features = 'INHERIT += "testimage"\n' if 'gtk+' not in qemu_packageconfig: features += 'PACKAGECONFIG_append_pn-qemu-system-native = " gtk+"\n' if 'sdl' not in qemu_packageconfig: features += 'PACKAGECONFIG_append_pn-qemu-system-native = " sdl"\n' - if 'virglrenderer' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " virglrenderer"\n' - if 'glx' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " glx"\n' - if 'opengl' not in sdl_packageconfig: - features += 'PACKAGECONFIG_append_pn-libsdl2-native = " opengl"\n' + if 'opengl' not in qemu_distrofeatures: + features += 'DISTRO_FEATURES_append = " opengl"\n' features += 'TEST_SUITES = "ping ssh virgl"\n' features += 'IMAGE_FEATURES_append = " ssh-server-dropbear"\n' features += 'IMAGE_INSTALL_append = " kmscube"\n' @@ -231,12 +227,10 @@ class TestImage(OESelftestTestCase): dripath = subprocess.check_output("pkg-config --variable=dridriverdir dri", shell=True) except subprocess.CalledProcessError as e: self.skipTest("Could not determine the path to dri drivers on the host via pkg-config.\nPlease install Mesa development files (particularly, dri.pc) on the host machine.") - qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native') + qemu_distrofeatures = get_bb_var('DISTRO_FEATURES', 'qemu-system-native') features = 'INHERIT += "testimage"\n' - if 'virglrenderer' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " virglrenderer"\n' - if 'glx' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " glx"\n' + if 'opengl' not in qemu_distrofeatures: + features += 'DISTRO_FEATURES_append = " opengl"\n' features += 'TEST_SUITES = "ping ssh virgl"\n' features += 'IMAGE_FEATURES_append = " ssh-server-dropbear"\n' features += 'IMAGE_INSTALL_append = " kmscube"\n' diff --git a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb deleted file mode 100644 index 9954d7f57..000000000 --- a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb +++ /dev/null @@ -1,71 +0,0 @@ -SUMMARY = "Libraries for producing EFI binaries" -HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" -SECTION = "devel" -LICENSE = "GPLv2+ | BSD-2-Clause" -LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ - file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ - file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \ - file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \ - file://lib/arm/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/arm/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/aarch64/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/aarch64/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - " - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ - file://parallel-make-archives.patch \ - file://lib-Makefile-fix-parallel-issue.patch \ - file://gnu-efi-3.0.9-fix-clang-build.patch \ - " - -SRC_URI[md5sum] = "21148bbcccec385a9bfdf5f678959577" -SRC_URI[sha256sum] = "f28da792a2532e91e18e0101468811739a22cde9eee5eacfd0efb9bf3a61d6b9" - -COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux" -COMPATIBLE_HOST_armv4 = 'null' - -do_configure_linux-gnux32_prepend() { - cp ${STAGING_INCDIR}/gnu/stubs-x32.h ${STAGING_INCDIR}/gnu/stubs-64.h - cp ${STAGING_INCDIR}/bits/long-double-32.h ${STAGING_INCDIR}/bits/long-double-64.h -} - -def gnu_efi_arch(d): - import re - tarch = d.getVar("TARGET_ARCH") - if re.match("i[3456789]86", tarch): - return "ia32" - return tarch - -EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \ - 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \ - " - -# gnu-efi's Makefile treats prefix as toolchain prefix, so don't -# export it. -prefix[unexport] = "1" - -do_install() { - oe_runmake install INSTALLROOT="${D}" -} - -FILES_${PN} += "${libdir}/*.lds" - -# 64-bit binaries are expected for EFI when targeting X32 -INSANE_SKIP_${PN}-dev_append_linux-gnux32 = " arch" -INSANE_SKIP_${PN}-dev_append_linux-muslx32 = " arch" - -BBCLASSEXTEND = "native" - -# It doesn't support sse, its make.defaults sets: -# CFLAGS += -mno-mmx -mno-sse -# So also remove -mfpmath=sse from TUNE_CCARGS -TUNE_CCARGS_remove = "-mfpmath=sse" - -python () { - ccargs = d.getVar('TUNE_CCARGS').split() - if '-mx32' in ccargs: - # use x86_64 EFI ABI - ccargs.remove('-mx32') - ccargs.append('-m64') - d.setVar('TUNE_CCARGS', ' '.join(ccargs)) -} diff --git a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb new file mode 100644 index 000000000..7888aba0f --- /dev/null +++ b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb @@ -0,0 +1,71 @@ +SUMMARY = "Libraries for producing EFI binaries" +HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" +SECTION = "devel" +LICENSE = "GPLv2+ | BSD-2-Clause" +LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ + file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ + file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \ + file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \ + file://lib/arm/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/arm/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/aarch64/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/aarch64/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + " + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/files/${BP}.tar.bz2 \ + file://parallel-make-archives.patch \ + file://lib-Makefile-fix-parallel-issue.patch \ + file://gnu-efi-3.0.9-fix-clang-build.patch \ + " + +SRC_URI[md5sum] = "926763ff37bc9db3a9035cec41eb2f45" +SRC_URI[sha256sum] = "0196f2e1fd3c334b66e610a608a0e59233474c7a01bec7bc53989639aa327669" + +COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux" +COMPATIBLE_HOST_armv4 = 'null' + +do_configure_linux-gnux32_prepend() { + cp ${STAGING_INCDIR}/gnu/stubs-x32.h ${STAGING_INCDIR}/gnu/stubs-64.h + cp ${STAGING_INCDIR}/bits/long-double-32.h ${STAGING_INCDIR}/bits/long-double-64.h +} + +def gnu_efi_arch(d): + import re + tarch = d.getVar("TARGET_ARCH") + if re.match("i[3456789]86", tarch): + return "ia32" + return tarch + +EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \ + 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \ + " + +# gnu-efi's Makefile treats prefix as toolchain prefix, so don't +# export it. +prefix[unexport] = "1" + +do_install() { + oe_runmake install INSTALLROOT="${D}" +} + +FILES_${PN} += "${libdir}/*.lds" + +# 64-bit binaries are expected for EFI when targeting X32 +INSANE_SKIP_${PN}-dev_append_linux-gnux32 = " arch" +INSANE_SKIP_${PN}-dev_append_linux-muslx32 = " arch" + +BBCLASSEXTEND = "native" + +# It doesn't support sse, its make.defaults sets: +# CFLAGS += -mno-mmx -mno-sse +# So also remove -mfpmath=sse from TUNE_CCARGS +TUNE_CCARGS_remove = "-mfpmath=sse" + +python () { + ccargs = d.getVar('TUNE_CCARGS').split() + if '-mx32' in ccargs: + # use x86_64 EFI ABI + ccargs.remove('-mx32') + ccargs.append('-m64') + d.setVar('TUNE_CCARGS', ' '.join(ccargs)) +} diff --git a/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb b/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb index 3251d0f05..fa90a12bf 100644 --- a/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb +++ b/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb @@ -1,5 +1,5 @@ SUMMARY = "U-Boot libraries and tools to access environment" -DEPENDS += "mtd-utils" +DEPENDS += "mtd-utils zlib" DESCRIPTION = "This package contains tools and libraries to read \ and modify U-Boot environment. \ diff --git a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb index 3a2c24f9f..2b0c71159 100644 --- a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb +++ b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb @@ -81,6 +81,11 @@ do_install() { rm -rf ${D}${datadir}/dbus-1/interfaces test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 rm -rf ${D}${libdir}/avahi + + # Move example service files out of /etc/avahi/services so we don't + # advertise ssh & sftp-ssh by default + install -d ${D}${docdir}/avahi + mv ${D}${sysconfdir}/avahi/services/* ${D}${docdir}/avahi } PACKAGES =+ "${@bb.utils.contains("PACKAGECONFIG", "libdns_sd", "libavahi-compat-libdnssd", "", d)}" diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb deleted file mode 100644 index 7ad4b8eee..000000000 --- a/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb +++ /dev/null @@ -1,12 +0,0 @@ -require iproute2.inc - -SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \ - file://0001-libc-compat.h-add-musl-workaround.patch \ - " - -SRC_URI[md5sum] = "ee8e2cdb416d4a8ef39525d39ab7c2d0" -SRC_URI[sha256sum] = "bac543435cac208a11db44c9cc8e35aa902befef8750594654ee71941c388f7b" - -# CFLAGS are computed in Makefile and reference CCOPTS -# -EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'" diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb new file mode 100644 index 000000000..9ab905373 --- /dev/null +++ b/poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb @@ -0,0 +1,12 @@ +require iproute2.inc + +SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \ + file://0001-libc-compat.h-add-musl-workaround.patch \ + " + +SRC_URI[md5sum] = "9da0c352707c34b8b1fec3bf42fcfd09" +SRC_URI[sha256sum] = "1b5b0e25ce6e23da7526ea1da044e814ad85ba761b10dd29c2b027c056b04692" + +# CFLAGS are computed in Makefile and reference CCOPTS +# +EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'" diff --git a/poky/meta/recipes-core/glibc/glibc-package.inc b/poky/meta/recipes-core/glibc/glibc-package.inc index 285a9aa2f..ff25fd418 100644 --- a/poky/meta/recipes-core/glibc/glibc-package.inc +++ b/poky/meta/recipes-core/glibc/glibc-package.inc @@ -24,7 +24,7 @@ libc_baselibs_append = " ${@oe.utils.conditional('ARCH_DYNAMIC_LOADER', '', '', INSANE_SKIP_${PN}_append_aarch64 = " libdir" FILES_${PN} = "${libc_baselibs} ${libexecdir}/*" -RRECOMMENDS_${PN} = "${@bb.utils.filter('DISTRO_FEATURES', 'ldconfig', d)}" +RRECOMMENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)}" FILES_ldconfig = "${base_sbindir}/ldconfig ${sysconfdir}/ld.so.conf" FILES_ldd = "${bindir}/ldd" FILES_libsegfault = "${base_libdir}/libSegFault*" @@ -152,7 +152,7 @@ do_install_append_armeb () { } do_install_armmultilib () { - oe_multilib_header bits/endian.h bits/fcntl.h bits/fenv.h bits/fp-fast.h bits/hwcap.h bits/ipc.h bits/link.h bits/wordsize.h + oe_multilib_header bits/endian.h bits/fcntl.h bits/fenv.h bits/fp-fast.h bits/hwcap.h bits/ipc.h bits/link.h oe_multilib_header bits/local_lim.h bits/mman.h bits/msq.h bits/pthreadtypes.h bits/pthreadtypes-arch.h bits/sem.h bits/semaphore.h bits/setjmp.h oe_multilib_header bits/shm.h bits/sigstack.h bits/stat.h bits/statfs.h bits/typesizes.h oe_multilib_header bits/procfs-id.h bits/procfs.h bits/shmlba.h diff --git a/poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch b/poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch new file mode 100644 index 000000000..cbef2f283 --- /dev/null +++ b/poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch @@ -0,0 +1,67 @@ +From 9cb0a756b017f5961b70ac781d3eaec6c82513cb Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 15 May 2020 17:05:45 -0700 +Subject: [PATCH] wordsize.h: Unify the header between arm and aarch64 + +This helps OE multilibs to not sythesize this header which causes all +kind of recursions and other issues since wordsize is fundamental header +and ends up including itself in many case e.g. clang tidy, bpf etc. + +Upstream-Status: Inappropriate [ OE-Specific ] + +Signed-off-by: Khem Raj +--- + sysdeps/aarch64/bits/wordsize.h | 8 ++++++-- + sysdeps/{aarch64 => arm}/bits/wordsize.h | 8 ++++++-- + 2 files changed, 12 insertions(+), 4 deletions(-) + copy sysdeps/{aarch64 => arm}/bits/wordsize.h (85%) + +diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/aarch64/bits/wordsize.h +index ee01841773..34fcdef1f1 100644 +--- a/sysdeps/aarch64/bits/wordsize.h ++++ b/sysdeps/aarch64/bits/wordsize.h +@@ -17,12 +17,16 @@ + License along with the GNU C Library; if not, see + . */ + +-#ifdef __LP64__ ++#if defined (__aarch64__) && defined (__LP64__) + # define __WORDSIZE 64 +-#else ++#elif defined (__aarch64__) + # define __WORDSIZE 32 + # define __WORDSIZE32_SIZE_ULONG 1 + # define __WORDSIZE32_PTRDIFF_LONG 1 ++#else ++# define __WORDSIZE 32 ++# define __WORDSIZE32_SIZE_ULONG 0 ++# define __WORDSIZE32_PTRDIFF_LONG 0 + #endif + + #define __WORDSIZE_TIME64_COMPAT32 0 +diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h +similarity index 85% +copy from sysdeps/aarch64/bits/wordsize.h +copy to sysdeps/arm/bits/wordsize.h +index ee01841773..34fcdef1f1 100644 +--- a/sysdeps/aarch64/bits/wordsize.h ++++ b/sysdeps/arm/bits/wordsize.h +@@ -17,12 +17,16 @@ + License along with the GNU C Library; if not, see + . */ + +-#ifdef __LP64__ ++#if defined (__aarch64__) && defined (__LP64__) + # define __WORDSIZE 64 +-#else ++#elif defined (__aarch64__) + # define __WORDSIZE 32 + # define __WORDSIZE32_SIZE_ULONG 1 + # define __WORDSIZE32_PTRDIFF_LONG 1 ++#else ++# define __WORDSIZE 32 ++# define __WORDSIZE32_SIZE_ULONG 0 ++# define __WORDSIZE32_PTRDIFF_LONG 0 + #endif + + #define __WORDSIZE_TIME64_COMPAT32 0 diff --git a/poky/meta/recipes-core/glibc/glibc_2.31.bb b/poky/meta/recipes-core/glibc/glibc_2.31.bb index 2032311b2..61679e2c1 100644 --- a/poky/meta/recipes-core/glibc/glibc_2.31.bb +++ b/poky/meta/recipes-core/glibc/glibc_2.31.bb @@ -40,6 +40,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0027-intl-Emit-no-lines-in-bison-generated-files.patch \ file://0028-inject-file-assembly-directives.patch \ file://0029-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch \ + file://0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch \ " S = "${WORKDIR}/git" B = "${WORKDIR}/build-${TARGET_SYS}" diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb deleted file mode 100644 index ba74eb1f9..000000000 --- a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb +++ /dev/null @@ -1,18 +0,0 @@ -# -# This provides libcrypto.so.1 which contains obsolete APIs, needed for uninative in particular -# - -require libxcrypt.inc - -PROVIDES = "" -AUTO_LIBNAME_PKGS = "" -EXCLUDE_FROM_WORLD = "1" - -API = "--enable-obsolete-api" - -do_install_append () { - rm -rf ${D}${includedir} - rm -rf ${D}${libdir}/pkgconfig - rm -rf ${D}${datadir} -} - diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb new file mode 100644 index 000000000..ba74eb1f9 --- /dev/null +++ b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb @@ -0,0 +1,18 @@ +# +# This provides libcrypto.so.1 which contains obsolete APIs, needed for uninative in particular +# + +require libxcrypt.inc + +PROVIDES = "" +AUTO_LIBNAME_PKGS = "" +EXCLUDE_FROM_WORLD = "1" + +API = "--enable-obsolete-api" + +do_install_append () { + rm -rf ${D}${includedir} + rm -rf ${D}${libdir}/pkgconfig + rm -rf ${D}${datadir} +} + diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc index 2d2a0b03e..da7607aef 100644 --- a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc +++ b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc @@ -10,7 +10,7 @@ LIC_FILES_CHKSUM ?= "file://LICENSING;md5=3bb6614cf5880cbf1b9dbd9e3d145e2c \ inherit autotools pkgconfig SRC_URI = "git://github.com/besser82/libxcrypt.git;branch=${SRCBRANCH}" -SRCREV = "823437d015cd4ab4d100ed205f218681b03ae45c" +SRCREV = "4ffa4d38396c334a1e002427c22281b047a3d6a6" SRCBRANCH ?= "develop" PROVIDES = "virtual/crypt" diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb deleted file mode 100644 index 79dba2f6d..000000000 --- a/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb +++ /dev/null @@ -1,2 +0,0 @@ -require libxcrypt.inc - diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb new file mode 100644 index 000000000..79dba2f6d --- /dev/null +++ b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb @@ -0,0 +1,2 @@ +require libxcrypt.inc + diff --git a/poky/meta/recipes-core/musl/musl_git.bb b/poky/meta/recipes-core/musl/musl_git.bb index 82379fd1c..6aa69985d 100644 --- a/poky/meta/recipes-core/musl/musl_git.bb +++ b/poky/meta/recipes-core/musl/musl_git.bb @@ -4,7 +4,7 @@ require musl.inc inherit linuxloader -SRCREV = "040c1d16b468c50c04fc94edff521f1637708328" +SRCREV = "1b4e84c56df0f8ca30f6bc05962a860f869e71df" BASEVER = "1.2.0" diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb index 1f802da09..90b79adfd 100644 --- a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb +++ b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb @@ -110,16 +110,16 @@ python __anonymous () { machine_features= set(d.getVar("MACHINE_FEATURES").split()) if "bluetooth" in distro_features and not "bluetooth" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features): - d.setVar("ADD_BT", "packagegroup-base-bluetooth") + d.setVar("ADD_BT", "${MLPREFIX}packagegroup-base-bluetooth") if "wifi" in distro_features and not "wifi" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features): - d.setVar("ADD_WIFI", "packagegroup-base-wifi") + d.setVar("ADD_WIFI", "${MLPREFIX}packagegroup-base-wifi") if "3g" in distro_features and not "3g" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features): - d.setVar("ADD_3G", "packagegroup-base-3g") + d.setVar("ADD_3G", "${MLPREFIX}packagegroup-base-3g") if "nfc" in distro_features and not "nfc" in machine_features and ("usbhost" in machine_features): - d.setVar("ADD_NFC", "packagegroup-base-nfc") + d.setVar("ADD_NFC", "${MLPREFIX}packagegroup-base-nfc") } # diff --git a/poky/meta/recipes-core/psplash/psplash_git.bb b/poky/meta/recipes-core/psplash/psplash_git.bb index 22c71f099..44f0007da 100644 --- a/poky/meta/recipes-core/psplash/psplash_git.bb +++ b/poky/meta/recipes-core/psplash/psplash_git.bb @@ -22,6 +22,7 @@ SPLASH_IMAGES = "file://psplash-poky-img.h;outsuffix=default" python __anonymous() { oldpkgs = d.getVar("PACKAGES").split() splashfiles = d.getVar('SPLASH_IMAGES').split() + mlprefix = d.getVar('MLPREFIX') or '' pkgs = [] localpaths = [] for uri in splashfiles: @@ -46,9 +47,9 @@ python __anonymous() { # Set these so that we have less work to do in do_compile and do_install_append d.setVar("SPLASH_INSTALL", " ".join(pkgs)) d.setVar("SPLASH_LOCALPATHS", " ".join(localpaths)) + for p in pkgs: + d.prependVar("PACKAGES", "%s%s " % (mlprefix, p)) - d.prependVar("PACKAGES", "%s " % (" ".join(pkgs))) - mlprefix = d.getVar('MLPREFIX') or '' pn = d.getVar('PN') or '' for p in pkgs: ep = '%s%s' % (mlprefix, p) diff --git a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb b/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb index 5b16b503d..2952c2101 100644 --- a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb +++ b/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb @@ -2,6 +2,4 @@ require apt-native.inc SRC_URI += "file://noconfigure.patch \ file://no-curl.patch \ - file://gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch \ - file://gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch \ - file://gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch" +" diff --git a/poky/meta/recipes-devtools/apt/apt.inc b/poky/meta/recipes-devtools/apt/apt.inc index 13f5969f8..87d533782 100644 --- a/poky/meta/recipes-devtools/apt/apt.inc +++ b/poky/meta/recipes-devtools/apt/apt.inc @@ -17,6 +17,7 @@ SRC_URI = "https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/${BPN}/${P file://0001-environment.mak-musl-based-systems-can-generate-shar.patch \ file://0001-apt-1.2.12-Fix-musl-build.patch \ file://0001-Include-array.h-for-std-array.patch \ + file://0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch \ " SRC_URI[md5sum] = "d30eed9304e82ea8238c854b5c5a34d9" SRC_URI[sha256sum] = "03ded4f5e9b8d43ecec083704b2dcabf20c182ed382db9ac7251da0b0b038059" diff --git a/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch b/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch new file mode 100644 index 000000000..ce5c00508 --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch @@ -0,0 +1,27 @@ +From 7e8839731ae3fdf7502b91643aa6b252f6c5eaa6 Mon Sep 17 00:00:00 2001 +From: Adrian Bunk +Date: Thu, 14 May 2020 00:08:21 +0300 +Subject: The C.UTF-8 locale is not portable, use std::locale::classic() + +Upstream-Status: Inappropriate [Similar fix already in apt >= 1.3] +Signed-off-by: Adrian Bunk +--- + ftparchive/writer.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc +index 25963820a..6ad571d2a 100644 +--- a/ftparchive/writer.cc ++++ b/ftparchive/writer.cc +@@ -984,7 +984,7 @@ ReleaseWriter::ReleaseWriter(FileFd * const GivenOutput, string const &/*DB*/) : + AddPatterns(_config->FindVector("APT::FTPArchive::Release::Patterns")); + + time_t const now = time(NULL); +- auto const posix = std::locale("C.UTF-8"); ++ auto const posix = std::locale::classic(); + + // FIXME: use TimeRFC1123 here? But that uses GMT to satisfy HTTP/1.1 + std::ostringstream datestr; +-- +2.20.1 + diff --git a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch b/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch deleted file mode 100644 index 438de209a..000000000 --- a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 7ef2b2dba0e0bee450da3c8450ea782a3e7d6429 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= -Date: Tue, 22 Aug 2017 11:49:01 -0500 -Subject: [PATCH 3/3] Revert "avoid changing the global LC_TIME for Release - writing" - -This reverts commit 78e7b683c645e907db12658405a4b201a6243ea8. - -After we drop debian8 and centos7 that has gcc < 5 (std::put_time not available) -versions this patch can be remove. - -Signed-off-by: Anibal Limon - -Upstream-Status: Inappropriate [embedded specific] ---- - ftparchive/writer.cc | 29 +++++++++++++++++------------ - 1 file changed, 17 insertions(+), 12 deletions(-) - -diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc -index 2596382..e43a643 100644 ---- a/ftparchive/writer.cc -+++ b/ftparchive/writer.cc -@@ -37,7 +37,6 @@ - #include - #include - #include --#include - #include - #include - #include -@@ -984,29 +983,35 @@ ReleaseWriter::ReleaseWriter(FileFd * const GivenOutput, string const &/*DB*/) : - AddPatterns(_config->FindVector("APT::FTPArchive::Release::Patterns")); - - time_t const now = time(NULL); -- auto const posix = std::locale("C.UTF-8"); - -- // FIXME: use TimeRFC1123 here? But that uses GMT to satisfy HTTP/1.1 -- std::ostringstream datestr; -- datestr.imbue(posix); -- datestr << std::put_time(gmtime(&now), "%a, %d %b %Y %H:%M:%S UTC"); -+ setlocale(LC_TIME, "C"); -+ -+ char datestr[128]; -+ if (strftime(datestr, sizeof(datestr), "%a, %d %b %Y %H:%M:%S UTC", -+ gmtime(&now)) == 0) -+ { -+ datestr[0] = '\0'; -+ } - - time_t const validuntil = now + _config->FindI("APT::FTPArchive::Release::ValidTime", 0); -- std::ostringstream validstr; -- if (validuntil != now) -+ char validstr[128]; -+ if (now == validuntil || -+ strftime(validstr, sizeof(validstr), "%a, %d %b %Y %H:%M:%S UTC", -+ gmtime(&validuntil)) == 0) - { -- datestr.imbue(posix); -- validstr << std::put_time(gmtime(&validuntil), "%a, %d %b %Y %H:%M:%S UTC"); -+ validstr[0] = '\0'; - } - -+ setlocale(LC_TIME, ""); -+ - map Fields; - Fields["Origin"] = ""; - Fields["Label"] = ""; - Fields["Suite"] = ""; - Fields["Version"] = ""; - Fields["Codename"] = ""; -- Fields["Date"] = datestr.str(); -- Fields["Valid-Until"] = validstr.str(); -+ Fields["Date"] = datestr; -+ Fields["Valid-Until"] = validstr; - Fields["Architectures"] = ""; - Fields["Components"] = ""; - Fields["Description"] = ""; --- -2.1.4 - diff --git a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch b/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch deleted file mode 100644 index 088a66a3c..000000000 --- a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch +++ /dev/null @@ -1,46 +0,0 @@ -From c72ef9b6ae83a0a2fbbefd5c050335f65f0d2bc9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= -Date: Tue, 22 Aug 2017 11:48:46 -0500 -Subject: [PATCH 2/3] Revert "use de-localed std::put_time instead rolling our - own" - -This reverts commit 4ed2a17ab4334f019c00512aa54a162f0bf083c4. - -After we drop debian8 and centos7 that has gcc < 5 (std::put_time not available) -versions this patch can be remove. - -Signed-off-by: Anibal Limon - -Upstream-Status: Inappropriate [embedded specific] ---- - apt-pkg/contrib/strutl.cc | 14 +++++++++----- - 1 file changed, 9 insertions(+), 5 deletions(-) - -diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc -index c2ff01d..e9ef2be 100644 ---- a/apt-pkg/contrib/strutl.cc -+++ b/apt-pkg/contrib/strutl.cc -@@ -760,11 +760,15 @@ string TimeRFC1123(time_t Date) - if (gmtime_r(&Date, &Conv) == NULL) - return ""; - -- auto const posix = std::locale::classic(); -- std::ostringstream datestr; -- datestr.imbue(posix); -- datestr << std::put_time(&Conv, "%a, %d %b %Y %H:%M:%S GMT"); -- return datestr.str(); -+ char Buf[300]; -+ const char *Day[] = {"Sun","Mon","Tue","Wed","Thu","Fri","Sat"}; -+ const char *Month[] = {"Jan","Feb","Mar","Apr","May","Jun","Jul", -+ "Aug","Sep","Oct","Nov","Dec"}; -+ -+ snprintf(Buf, sizeof(Buf), "%s, %02i %s %i %02i:%02i:%02i GMT",Day[Conv.tm_wday], -+ Conv.tm_mday,Month[Conv.tm_mon],Conv.tm_year+1900,Conv.tm_hour, -+ Conv.tm_min,Conv.tm_sec); -+ return Buf; - } - /*}}}*/ - // ReadMessages - Read messages from the FD /*{{{*/ --- -2.1.4 - diff --git a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch b/poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch deleted file mode 100644 index cb3259187..000000000 --- a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch +++ /dev/null @@ -1,33 +0,0 @@ -From ff8562f7724c4db4b83635af9e627f3495222327 Mon Sep 17 00:00:00 2001 -From: Anibal Limon -Date: Tue, 22 Aug 2017 04:41:31 -0500 -Subject: [PATCH 1/3] apt-pkg/contrib/strutl.cc: Include array header - -If GCC version is less than 5 the array header needs to be included -to support std::array. - -After we drop debian8 and centos7 that has gcc < 5 versions this patch -can be remove. - -Signed-off-by: Anibal Limon - -Upstream-Status: Inappropriate [embedded specific] ---- - apt-pkg/contrib/strutl.cc | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc -index 60d0ca8..c2ff01d 100644 ---- a/apt-pkg/contrib/strutl.cc -+++ b/apt-pkg/contrib/strutl.cc -@@ -27,6 +27,7 @@ - #include - #include - #include -+#include - - #include - #include --- -2.1.4 - diff --git a/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch b/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch new file mode 100644 index 000000000..c3be91a10 --- /dev/null +++ b/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch @@ -0,0 +1,63 @@ +From e0dbcee6e25b3c0cb11a627bbfe3af45ef67ec30 Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Thu, 14 May 2020 15:23:16 +0800 +Subject: [PATCH] bison: fix the parallel build + +Explicitly make the BUILT_SOURCES which +are the generated headers such as stdio.h, +fcntl.h and etc to be the dependencies of +the gl_LIBOBJS such as libbison_a-sprintf.o, +libbison_a-printf.o and etc to guarantee the +BUILT_SOURCES is generated before begin to +compile EXTRA_lib_libbison_a_SOURCES such as +fprintf.c in parallel builid, otherwise there +may come below error: + | muscle-tab.c:(.text+0x77a): undefined reference to `rpl_sprintf' + +It does the same for src_bison_OBJECTS and +lib_libbison_a_OBJECTS to make sure BUILT_SOURCES +generated before begin to compile src_bison_SOURCES +which contains AnnotationList.c and etc. + +BTW, the MOSTLYCLEANFILES also contains the +generated header needs to be created early +in the build process, so add it also in to +avoid below error: + | ./lib/uniwidth/width.c:21:10: fatal error: uniwidth.h: No such file or directory + +Upstream-Status: Submitted [bison-patches@gnu.org maillist] + +Signed-off-by: Mingli Yu +--- + lib/gnulib.mk | 2 ++ + src/local.mk | 1 + + 2 files changed, 3 insertions(+) + +diff --git a/lib/gnulib.mk b/lib/gnulib.mk +index c21c656..27fb3dc 100644 +--- a/lib/gnulib.mk ++++ b/lib/gnulib.mk +@@ -120,6 +120,8 @@ lib_libbison_a_SOURCES = + lib_libbison_a_LIBADD = $(gl_LIBOBJS) + lib_libbison_a_DEPENDENCIES = $(gl_LIBOBJS) + EXTRA_lib_libbison_a_SOURCES = ++$(lib_libbison_a_OBJECTS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h) ++$(gl_LIBOBJS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h) + + lib_libbison_a_CPPFLAGS = $(AM_CPPFLAGS) -DDEFAULT_TEXT_DOMAIN=\"bison-gnulib\" + +diff --git a/src/local.mk b/src/local.mk +index 61dc573..b5b9079 100644 +--- a/src/local.mk ++++ b/src/local.mk +@@ -24,6 +24,7 @@ if RELOCATABLE_VIA_LD + src_bison_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)` + endif + ++$(src_bison_OBJECTS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h) + src_bison_CFLAGS = $(AM_CFLAGS) $(WERROR_CFLAGS) + src_bison_SOURCES = \ + src/AnnotationList.c \ +-- +2.17.1 + diff --git a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb b/poky/meta/recipes-devtools/bison/bison_3.5.4.bb index 59c34f729..124bc41d3 100644 --- a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb +++ b/poky/meta/recipes-devtools/bison/bison_3.5.4.bb @@ -12,6 +12,7 @@ DEPENDS = "bison-native flex-native" SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \ file://dont-depend-on-help2man.patch.patch \ file://add-with-bisonlocaledir.patch \ + file://0001-bison-fix-the-parallel-build.patch \ " SRC_URI[sha256sum] = "4c17e99881978fa32c05933c5262457fa5b2b611668454f8dc2a695cd6b3720c" diff --git a/poky/meta/recipes-devtools/file/file_5.38.bb b/poky/meta/recipes-devtools/file/file_5.38.bb index 007db4790..48cf8ab54 100644 --- a/poky/meta/recipes-devtools/file/file_5.38.bb +++ b/poky/meta/recipes-devtools/file/file_5.38.bb @@ -9,7 +9,7 @@ LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYING;beginline=2;md5=0251eaec1188b20d9a72c502ecfdda1b" DEPENDS = "file-replacement-native" -DEPENDS_class-native = "" +DEPENDS_class-native = "bzip2-replacement-native" SRC_URI = "git://github.com/file/file.git" diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1.inc b/poky/meta/recipes-devtools/gcc/gcc-10.1.inc index 245f0a6fd..a3de91a2c 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-10.1.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1.inc @@ -65,7 +65,7 @@ SRC_URI = "\ file://0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ file://0036-Enable-CET-in-cross-compiler-if-possible.patch \ file://0037-mingw32-Enable-operation_not_supported.patch \ - file://0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch \ + file://0038-libatomic-Do-not-enforce-march-on-aarch64.patch \ " SRC_URI[sha256sum] = "b6898a23844b656f1b68691c5c012036c2e694ac4b53a8918d4712ad876e7ea2" @@ -87,7 +87,6 @@ EXTRA_OECONF_BASE = "\ ${SSP} \ --enable-libitm \ --disable-bootstrap \ - --disable-libmudflap \ --with-system-zlib \ ${@'--with-linker-hash-style=${LINKER_HASH_STYLE}' if '${LINKER_HASH_STYLE}' else ''} \ --enable-linker-build-id \ @@ -99,7 +98,6 @@ EXTRA_OECONF_BASE = "\ " EXTRA_OECONF_INITIAL = "\ - --disable-libmudflap \ --disable-libgomp \ --disable-libitm \ --disable-libquadmath \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch deleted file mode 100644 index fc9228277..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 2101fb718935c7cf1cc2ad201bdeb1e635b54b0a Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 11 May 2020 11:03:41 -0700 -Subject: [PATCH] Revert "[AArch64] Use __getauxval instead of getauxval in LSE - detection code in libgcc" - -This reverts commit 5a57016dd2758cc63a544f191f77635342397a72. - -Upstream-Status: Pending -Signed-off-by: Khem Raj ---- - libgcc/config/aarch64/lse-init.c | 17 ++++++++--------- - 1 file changed, 8 insertions(+), 9 deletions(-) - -diff --git a/libgcc/config/aarch64/lse-init.c b/libgcc/config/aarch64/lse-init.c -index 00e9ab8cd1c..74acef25cce 100644 ---- a/libgcc/config/aarch64/lse-init.c -+++ b/libgcc/config/aarch64/lse-init.c -@@ -29,20 +29,19 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - _Bool __aarch64_have_lse_atomics - __attribute__((visibility("hidden"), nocommon)); - --/* Gate availability of __getauxval on glibc. All AArch64-supporting glibc -- versions support it. */ --#ifdef __gnu_linux__ -+/* Disable initialization of __aarch64_have_lse_atomics during bootstrap. */ -+#if !defined(inhibit_libc) && defined(HAVE_SYS_AUXV_H) -+# include - --# define AT_HWCAP 16 --# define HWCAP_ATOMICS (1 << 8) -- --unsigned long int __getauxval (unsigned long int); -+/* Disable initialization if the system headers are too old. */ -+# if defined(AT_HWCAP) && defined(HWCAP_ATOMICS) - - static void __attribute__((constructor)) - init_have_lse_atomics (void) - { -- unsigned long hwcap = __getauxval (AT_HWCAP); -+ unsigned long hwcap = getauxval (AT_HWCAP); - __aarch64_have_lse_atomics = (hwcap & HWCAP_ATOMICS) != 0; - } - --#endif /* __gnu_linux__ */ -+# endif /* HWCAP */ -+#endif /* inhibit_libc */ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch new file mode 100644 index 000000000..3946acea1 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch @@ -0,0 +1,42 @@ +From 38d262bfe7c0c894c364dc6e4dc7971e78a73974 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 13 May 2020 15:10:38 -0700 +Subject: [PATCH] libatomic: Do not enforce march on aarch64 + +OE passes the right options via gcc compiler cmdline via TUNE_CCARGS +this can conflict between -mcpu settings and -march setting here, since +-mcpu will translate into an appropriate -march, lets depend on that +instead of setting it explicitly + +Upstream-Status: Inappropriate [OE-Specific] + +Signed-off-by: Khem Raj +--- + libatomic/Makefile.am | 1 - + libatomic/Makefile.in | 1 - + 2 files changed, 2 deletions(-) + +diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am +index 133fbbca77e..ac1ca645876 100644 +--- a/libatomic/Makefile.am ++++ b/libatomic/Makefile.am +@@ -125,7 +125,6 @@ libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix _$(s)_.lo,$(SIZEOBJS))) + ## On a target-specific basis, include alternates to be selected by IFUNC. + if HAVE_IFUNC + if ARCH_AARCH64_LINUX +-IFUNC_OPTIONS = -march=armv8-a+lse + libatomic_la_LIBADD += $(foreach s,$(SIZES),$(addsuffix _$(s)_1_.lo,$(SIZEOBJS))) + endif + if ARCH_ARM_LINUX +diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in +index a51807e95c9..97df2d7ff03 100644 +--- a/libatomic/Makefile.in ++++ b/libatomic/Makefile.in +@@ -431,7 +431,6 @@ M_SRC = $(firstword $(filter %/$(M_FILE), $(all_c_files))) + libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix \ + _$(s)_.lo,$(SIZEOBJS))) $(am__append_1) $(am__append_2) \ + $(am__append_3) $(am__append_4) +-@ARCH_AARCH64_LINUX_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=armv8-a+lse + @ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=armv7-a+fp -DHAVE_KERNEL64 + @ARCH_I386_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=i586 + @ARCH_X86_64_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -mcx16 diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc index 38c167287..df1432e68 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc @@ -18,10 +18,6 @@ EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu" EXTRA_OECONF_append = " --cache-file=${B}/config.cache" EXTRA_OECONF_append_libc-newlib = " --with-newlib" -# cortex-a55 is ARMv8.2-a based but libatomic explicitly asks for -march=armv8.1-a -# which caused -march conflicts in gcc -TUNE_CCARGS_remove = "-mcpu=cortex-a55+crc -mcpu=cortex-a55 -mcpu=cortex-a55+crc+crypto" - # Disable ifuncs for libatomic on arm conflicts -march/-mcpu EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no " EXTRA_OECONF_append_armeb = " libat_cv_have_ifunc=no " @@ -51,7 +47,6 @@ RUNTIMETARGET = "${RUNTIMELIBSSP} libstdc++-v3 libgomp libatomic ${RUNTIMELIBITM RUNTIMETARGET_libc-newlib = "libstdc++-v3" # libiberty -# libmudflap # libgfortran needs separate recipe due to libquadmath dependency SLIB = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}" @@ -171,9 +166,6 @@ PACKAGES = "\ libssp \ libssp-dev \ libssp-staticdev \ - libmudflap \ - libmudflap-dev \ - libmudflap-staticdev \ libquadmath \ libquadmath-dev \ libquadmath-staticdev \ @@ -246,17 +238,6 @@ SUMMARY_libquadmath-dev = "GNU quad-precision math library - development files" FILES_libquadmath-staticdev = "${libdir}/libquadmath.a" SUMMARY_libquadmath-staticdev = "GNU quad-precision math library - static development files" -# NOTE: mudflap has been removed as of gcc 4.9 and has been superseded by the address sanitiser -FILES_libmudflap = "${libdir}/libmudflap*.so.*" -SUMMARY_libmudflap = "Pointer debugging library for gcc" -FILES_libmudflap-dev = "\ - ${libdir}/libmudflap*.so \ - ${libdir}/libmudflap.la \ -" -SUMMARY_libmudflap-dev = "Pointer debugging library for gcc - development files" -FILES_libmudflap-staticdev = "${libdir}/libmudflap.a" -SUMMARY_libmudflap-staticdev = "Pointer debugging library for gcc - static development files" - FILES_libgomp = "${libdir}/libgomp*${SOLIBS}" SUMMARY_libgomp = "GNU OpenMP parallel programming library" FILES_libgomp-dev = "\ diff --git a/poky/meta/recipes-devtools/glide/glide_0.13.3.bb b/poky/meta/recipes-devtools/glide/glide_0.13.3.bb index ebad0ec60..31295edf9 100644 --- a/poky/meta/recipes-devtools/glide/glide_0.13.3.bb +++ b/poky/meta/recipes-devtools/glide/glide_0.13.3.bb @@ -9,6 +9,10 @@ SRCREV = "8ed5b9292379d86c39592a7e6a58eb9c903877cf" inherit go +# New Go versions has Go modules support enabled by default and cause the Glide +# tool build to fail. +export GO111MODULE = "off" + RDEPENDS_${PN}-dev += "bash" RDEPENDS_${PN}-ptest += "bash" diff --git a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb b/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb index 615cb289e..496224a5c 100644 --- a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb +++ b/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb @@ -13,6 +13,10 @@ SRCREV = "1f7c19e5f52f49ffb9f956f64c010be14683468b" inherit go +# New Go versions has Go modules support enabled by default and cause the Glide +# tool build to fail. +export GO111MODULE = "off" + GO_INSTALL = "${GO_IMPORT}/cmd/dep" RDEPENDS_${PN}-dev += "bash" diff --git a/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch b/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch index 464ccc4ca..138ff9de7 100644 --- a/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch +++ b/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch @@ -1,4 +1,4 @@ -From 5c24356762bc4274d3ca4930b0bc7754f4ffd19b Mon Sep 17 00:00:00 2001 +From fa6ebd96c7f330edcd74abf61584592eabb9e726 Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Tue, 13 Jun 2017 14:55:52 +0300 Subject: [PATCH] Disabled reading host configs. @@ -12,10 +12,10 @@ Signed-off-by: Ed Bartosh 1 file changed, 8 deletions(-) diff --git a/config.c b/config.c -index f086883..1c3f9bd 100644 +index 265d494..15e64dd 100644 --- a/config.c +++ b/config.c -@@ -701,14 +701,6 @@ void read_config(void) +@@ -740,14 +740,6 @@ void read_config(void) memcpy(devices, const_devices, nr_const_devices*sizeof(struct device)); diff --git a/poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb b/poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb deleted file mode 100644 index 2093d80db..000000000 --- a/poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "Utilities to access MS-DOS disks without mounting them" -DESCRIPTION = "Mtools is a collection of utilities to access MS-DOS disks from GNU and Unix without mounting them." -HOMEPAGE = "http://www.gnu.org/software/mtools/" -SECTION = "optional" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -DEPENDS += "virtual/libiconv" - -RDEPENDS_${PN}_libc-glibc = "glibc-gconv-ibm850" -RRECOMMENDS_${PN}_libc-glibc = "\ - glibc-gconv-ibm437 \ - glibc-gconv-ibm737 \ - glibc-gconv-ibm775 \ - glibc-gconv-ibm851 \ - glibc-gconv-ibm852 \ - glibc-gconv-ibm855 \ - glibc-gconv-ibm857 \ - glibc-gconv-ibm860 \ - glibc-gconv-ibm861 \ - glibc-gconv-ibm862 \ - glibc-gconv-ibm863 \ - glibc-gconv-ibm865 \ - glibc-gconv-ibm866 \ - glibc-gconv-ibm869 \ - " -SRC_URI[md5sum] = "1d17b58c53a46b29c7f521d4a55ccef1" -SRC_URI[sha256sum] = "f188db26751aeb5692a79b2380b440ecc05fd1848a52f869d7ca1193f2ef8ee3" - -SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \ - file://mtools-makeinfo.patch \ - file://no-x11.gplv3.patch \ - file://clang_UNUSED.patch \ - " - -SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch" - -inherit autotools texinfo features_check - -EXTRA_OECONF = "--without-x" - -BBCLASSEXTEND = "native nativesdk" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[libbsd] = "ac_cv_lib_bsd_main=yes,ac_cv_lib_bsd_main=no,libbsd" - -do_install_prepend () { - # Create bindir to fix parallel installation issues - mkdir -p ${D}/${bindir} - mkdir -p ${D}/${datadir} -} diff --git a/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb b/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb new file mode 100644 index 000000000..d7cc72d17 --- /dev/null +++ b/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb @@ -0,0 +1,51 @@ +SUMMARY = "Utilities to access MS-DOS disks without mounting them" +DESCRIPTION = "Mtools is a collection of utilities to access MS-DOS disks from GNU and Unix without mounting them." +HOMEPAGE = "http://www.gnu.org/software/mtools/" +SECTION = "optional" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +DEPENDS += "virtual/libiconv" + +RDEPENDS_${PN}_libc-glibc = "glibc-gconv-ibm850" +RRECOMMENDS_${PN}_libc-glibc = "\ + glibc-gconv-ibm437 \ + glibc-gconv-ibm737 \ + glibc-gconv-ibm775 \ + glibc-gconv-ibm851 \ + glibc-gconv-ibm852 \ + glibc-gconv-ibm855 \ + glibc-gconv-ibm857 \ + glibc-gconv-ibm860 \ + glibc-gconv-ibm861 \ + glibc-gconv-ibm862 \ + glibc-gconv-ibm863 \ + glibc-gconv-ibm865 \ + glibc-gconv-ibm866 \ + glibc-gconv-ibm869 \ + " +SRC_URI[md5sum] = "aeaf34406e9d28922b7c09a35ca5955e" +SRC_URI[sha256sum] = "24f4a2da9219f98498eb1b340cd96db7ef9b684c067d1bdeb6e85efdd13b2fb9" + +SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \ + file://mtools-makeinfo.patch \ + file://no-x11.gplv3.patch \ + file://clang_UNUSED.patch \ + " + +SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch" + +inherit autotools texinfo features_check + +EXTRA_OECONF = "--without-x" + +BBCLASSEXTEND = "native nativesdk" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[libbsd] = "ac_cv_lib_bsd_main=yes,ac_cv_lib_bsd_main=no,libbsd" + +do_install_prepend () { + # Create bindir to fix parallel installation issues + mkdir -p ${D}/${bindir} + mkdir -p ${D}/${datadir} +} diff --git a/poky/meta/recipes-devtools/perl/perl_5.30.2.bb b/poky/meta/recipes-devtools/perl/perl_5.30.2.bb index 778c420b2..26138ea9e 100644 --- a/poky/meta/recipes-devtools/perl/perl_5.30.2.bb +++ b/poky/meta/recipes-devtools/perl/perl_5.30.2.bb @@ -328,7 +328,7 @@ python split_perl_packages () { python() { if d.getVar('CLASSOVERRIDE') == "class-target": - d.setVar("PACKAGES_DYNAMIC", "^perl-module-.*(?\d+(\.\d+)+)\.tar" diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch new file mode 100644 index 000000000..ca7ffed93 --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch @@ -0,0 +1,97 @@ +From ac2071c3791b67fc7af78b8ceb320c01ca1b5df7 Mon Sep 17 00:00:00 2001 +From: BALATON Zoltan +Date: Mon, 6 Apr 2020 22:34:26 +0200 +Subject: [PATCH] ati-vga: Fix checks in ati_2d_blt() to avoid crash + +In some corner cases (that never happen during normal operation but a +malicious guest could program wrong values) pixman functions were +called with parameters that result in a crash. Fix this and add more +checks to disallow such cases. + +Reported-by: Ziming Zhang +Signed-off-by: BALATON Zoltan +Message-id: 20200406204029.19559747D5D@zero.eik.bme.hu +Signed-off-by: Gerd Hoffmann + +Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=ac2071c3791b67fc7af78b8ceb320c01ca1b5df7] +CVE: CVE-2020-11869 +Signed-off-by: Lee Chee Yang +--- + hw/display/ati_2d.c | 37 ++++++++++++++++++++++++++----------- + 1 file changed, 26 insertions(+), 11 deletions(-) + +diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c +index 42e8231..23a8ae0 100644 +--- a/hw/display/ati_2d.c ++++ b/hw/display/ati_2d.c +@@ -53,12 +53,20 @@ void ati_2d_blt(ATIVGAState *s) + s->vga.vbe_start_addr, surface_data(ds), surface_stride(ds), + surface_bits_per_pixel(ds), + (s->regs.dp_mix & GMC_ROP3_MASK) >> 16); +- int dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? +- s->regs.dst_x : s->regs.dst_x + 1 - s->regs.dst_width); +- int dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? +- s->regs.dst_y : s->regs.dst_y + 1 - s->regs.dst_height); ++ unsigned dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? ++ s->regs.dst_x : s->regs.dst_x + 1 - s->regs.dst_width); ++ unsigned dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ s->regs.dst_y : s->regs.dst_y + 1 - s->regs.dst_height); + int bpp = ati_bpp_from_datatype(s); ++ if (!bpp) { ++ qemu_log_mask(LOG_GUEST_ERROR, "Invalid bpp\n"); ++ return; ++ } + int dst_stride = DEFAULT_CNTL ? s->regs.dst_pitch : s->regs.default_pitch; ++ if (!dst_stride) { ++ qemu_log_mask(LOG_GUEST_ERROR, "Zero dest pitch\n"); ++ return; ++ } + uint8_t *dst_bits = s->vga.vram_ptr + (DEFAULT_CNTL ? + s->regs.dst_offset : s->regs.default_offset); + +@@ -82,12 +90,16 @@ void ati_2d_blt(ATIVGAState *s) + switch (s->regs.dp_mix & GMC_ROP3_MASK) { + case ROP3_SRCCOPY: + { +- int src_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? +- s->regs.src_x : s->regs.src_x + 1 - s->regs.dst_width); +- int src_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? +- s->regs.src_y : s->regs.src_y + 1 - s->regs.dst_height); ++ unsigned src_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? ++ s->regs.src_x : s->regs.src_x + 1 - s->regs.dst_width); ++ unsigned src_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ s->regs.src_y : s->regs.src_y + 1 - s->regs.dst_height); + int src_stride = DEFAULT_CNTL ? + s->regs.src_pitch : s->regs.default_pitch; ++ if (!src_stride) { ++ qemu_log_mask(LOG_GUEST_ERROR, "Zero source pitch\n"); ++ return; ++ } + uint8_t *src_bits = s->vga.vram_ptr + (DEFAULT_CNTL ? + s->regs.src_offset : s->regs.default_offset); + +@@ -137,8 +149,10 @@ void ati_2d_blt(ATIVGAState *s) + dst_y * surface_stride(ds), + s->regs.dst_height * surface_stride(ds)); + } +- s->regs.dst_x += s->regs.dst_width; +- s->regs.dst_y += s->regs.dst_height; ++ s->regs.dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? ++ dst_x + s->regs.dst_width : dst_x); ++ s->regs.dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ dst_y + s->regs.dst_height : dst_y); + break; + } + case ROP3_PATCOPY: +@@ -179,7 +193,8 @@ void ati_2d_blt(ATIVGAState *s) + dst_y * surface_stride(ds), + s->regs.dst_height * surface_stride(ds)); + } +- s->regs.dst_y += s->regs.dst_height; ++ s->regs.dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ dst_y + s->regs.dst_height : dst_y); + break; + } + default: +-- +1.8.3.1 diff --git a/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb index f0c1daabe..a4018cc44 100644 --- a/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb +++ b/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb @@ -21,5 +21,8 @@ do_install_append_class-nativesdk() { PACKAGECONFIG ??= " \ fdt sdl kvm \ ${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '' ,d)} \ +" +PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '' ,d)} \ " -PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm" diff --git a/poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb b/poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb deleted file mode 100644 index 7f0708049..000000000 --- a/poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb +++ /dev/null @@ -1,92 +0,0 @@ -require ruby.inc - -DEPENDS_append_libc-musl = " libucontext" - -SRC_URI += " \ - file://remove_has_include_macros.patch \ - file://run-ptest \ - file://0001-Modify-shebang-of-libexec-y2racc-and-libexec-racc2y.patch \ - " - -SRC_URI[md5sum] = "bf4a54e8231176e109a42c546b4725a9" -SRC_URI[sha256sum] = "8c99aa93b5e2f1bc8437d1bbbefd27b13e7694025331f77245d0c068ef1f8cbe" - -PACKAGECONFIG ??= "" -PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" - -PACKAGECONFIG[valgrind] = "--with-valgrind=yes, --with-valgrind=no, valgrind" -PACKAGECONFIG[gmp] = "--with-gmp=yes, --with-gmp=no, gmp" -PACKAGECONFIG[ipv6] = "--enable-ipv6, --disable-ipv6," - -EXTRA_OECONF = "\ - --disable-versioned-paths \ - --disable-rpath \ - --disable-dtrace \ - --enable-shared \ - --enable-load-relative \ - --with-pkg-config=pkg-config \ -" - -EXTRA_OECONF_append_libc-musl = "\ - LIBS='-lucontext' \ - ac_cv_func_isnan=yes \ - ac_cv_func_isinf=yes \ -" - -do_install() { - oe_runmake 'DESTDIR=${D}' install -} - -do_install_append_class-target () { - # Find out rbconfig.rb from .installed.list - rbconfig_rb=`grep rbconfig.rb ${B}/.installed.list` - # Remove build host directories - sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' \ - -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \ - -e 's|${DEBUG_PREFIX_MAP}||g' \ - -e 's:${HOSTTOOLS_DIR}/::g' \ - -e 's:${RECIPE_SYSROOT_NATIVE}::g' \ - -e 's:${RECIPE_SYSROOT}::g' \ - -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ - ${D}$rbconfig_rb -} - -do_install_ptest () { - cp -rf ${S}/test ${D}${PTEST_PATH}/ - - install -D ${S}/tool/test/runner.rb ${D}${PTEST_PATH}/tool/test/runner.rb - cp -r ${S}/tool/lib ${D}${PTEST_PATH}/tool/ - mkdir -p ${D}${PTEST_PATH}/lib - cp -r ${S}/lib/did_you_mean ${S}/lib/rdoc ${D}${PTEST_PATH}/lib - - # install test-binaries - find $(find ./.ext -path '*/-test-') -name '*.so' -print0 \ - | tar --no-recursion --null -T - --no-same-owner --preserve-permissions -cf - \ - | tar -C ${D}${libdir}/ruby/${SHRT_VER}.0/ --no-same-owner --preserve-permissions --strip-components=2 -xf - - # adjust path to not assume build directory layout - sed -e 's|File.expand_path(.*\.\./bin/erb[^)]*|File.expand_path("${bindir}/erb"|g' \ - -i ${D}${PTEST_PATH}/test/erb/test_erb_command.rb - - cp -r ${S}/include ${D}/${libdir}/ruby/ - test_case_rb=`grep rubygems/test_case.rb ${B}/.installed.list` - sed -i -e 's:../../../test/:../../../ptest/test/:g' ${D}/$test_case_rb -} - -PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc" - -SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library" -RDEPENDS_${PN}-ri-docs = "${PN}" -FILES_${PN}-ri-docs += "${datadir}/ri" - -SUMMARY_${PN}-rdoc = "RDoc documentation generator from Ruby source" -RDEPENDS_${PN}-rdoc = "${PN}" -FILES_${PN}-rdoc += "${libdir}/ruby/*/rdoc ${bindir}/rdoc" - -FILES_${PN} += "${datadir}/rubygems" - -FILES_${PN}-ptest_append_class-target = "\ - ${libdir}/ruby/include \ - ${libdir}/ruby/${SHRT_VER}.0/*/-test- \ -" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb b/poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb new file mode 100644 index 000000000..3dd9fb0a6 --- /dev/null +++ b/poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb @@ -0,0 +1,92 @@ +require ruby.inc + +DEPENDS_append_libc-musl = " libucontext" + +SRC_URI += " \ + file://remove_has_include_macros.patch \ + file://run-ptest \ + file://0001-Modify-shebang-of-libexec-y2racc-and-libexec-racc2y.patch \ + " + +SRC_URI[md5sum] = "debb9c325bf65021214451660f46e909" +SRC_URI[sha256sum] = "d418483bdd0000576c1370571121a6eb24582116db0b7bb2005e90e250eae418" + +PACKAGECONFIG ??= "" +PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" + +PACKAGECONFIG[valgrind] = "--with-valgrind=yes, --with-valgrind=no, valgrind" +PACKAGECONFIG[gmp] = "--with-gmp=yes, --with-gmp=no, gmp" +PACKAGECONFIG[ipv6] = "--enable-ipv6, --disable-ipv6," + +EXTRA_OECONF = "\ + --disable-versioned-paths \ + --disable-rpath \ + --disable-dtrace \ + --enable-shared \ + --enable-load-relative \ + --with-pkg-config=pkg-config \ +" + +EXTRA_OECONF_append_libc-musl = "\ + LIBS='-lucontext' \ + ac_cv_func_isnan=yes \ + ac_cv_func_isinf=yes \ +" + +do_install() { + oe_runmake 'DESTDIR=${D}' install +} + +do_install_append_class-target () { + # Find out rbconfig.rb from .installed.list + rbconfig_rb=`grep rbconfig.rb ${B}/.installed.list` + # Remove build host directories + sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' \ + -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \ + -e 's|${DEBUG_PREFIX_MAP}||g' \ + -e 's:${HOSTTOOLS_DIR}/::g' \ + -e 's:${RECIPE_SYSROOT_NATIVE}::g' \ + -e 's:${RECIPE_SYSROOT}::g' \ + -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ + ${D}$rbconfig_rb +} + +do_install_ptest () { + cp -rf ${S}/test ${D}${PTEST_PATH}/ + + install -D ${S}/tool/test/runner.rb ${D}${PTEST_PATH}/tool/test/runner.rb + cp -r ${S}/tool/lib ${D}${PTEST_PATH}/tool/ + mkdir -p ${D}${PTEST_PATH}/lib + cp -r ${S}/lib/did_you_mean ${S}/lib/rdoc ${D}${PTEST_PATH}/lib + + # install test-binaries + find $(find ./.ext -path '*/-test-') -name '*.so' -print0 \ + | tar --no-recursion --null -T - --no-same-owner --preserve-permissions -cf - \ + | tar -C ${D}${libdir}/ruby/${SHRT_VER}.0/ --no-same-owner --preserve-permissions --strip-components=2 -xf - + # adjust path to not assume build directory layout + sed -e 's|File.expand_path(.*\.\./bin/erb[^)]*|File.expand_path("${bindir}/erb"|g' \ + -i ${D}${PTEST_PATH}/test/erb/test_erb_command.rb + + cp -r ${S}/include ${D}/${libdir}/ruby/ + test_case_rb=`grep rubygems/test_case.rb ${B}/.installed.list` + sed -i -e 's:../../../test/:../../../ptest/test/:g' ${D}/$test_case_rb +} + +PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc" + +SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library" +RDEPENDS_${PN}-ri-docs = "${PN}" +FILES_${PN}-ri-docs += "${datadir}/ri" + +SUMMARY_${PN}-rdoc = "RDoc documentation generator from Ruby source" +RDEPENDS_${PN}-rdoc = "${PN}" +FILES_${PN}-rdoc += "${libdir}/ruby/*/rdoc ${bindir}/rdoc" + +FILES_${PN} += "${datadir}/rubygems" + +FILES_${PN}-ptest_append_class-target = "\ + ${libdir}/ruby/include \ + ${libdir}/ruby/${SHRT_VER}.0/*/-test- \ +" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch b/poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch new file mode 100644 index 000000000..fc881862e --- /dev/null +++ b/poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch @@ -0,0 +1,45 @@ +From 94e1911ca24726b7cb3efe2f8b9eb7a784757e18 Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Sun, 26 Jan 2020 18:35:13 +0000 +Subject: [PATCH] squashfs-tools: fix build failure against gcc-10 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +On gcc-10 (and gcc-9 -fno-common) build fails as: + +``` +cc ... -o mksquashfs +ld: read_fs.o:(.bss+0x0): + multiple definition of `fwriter_buffer'; mksquashfs.o:(.bss+0x400c90): first defined here +ld: read_fs.o:(.bss+0x8): + multiple definition of `bwriter_buffer'; mksquashfs.o:(.bss+0x400c98): first defined here +``` + +gcc-10 will change the default from -fcommon to fno-common: +https://gcc.gnu.org/PR85678. + +The error also happens if CFLAGS=-fno-common passed explicitly. + +Reported-by: Toralf Förster +Bug: https://bugs.gentoo.org/706456 +Signed-off-by: Sergei Trofimovich +Signed-off-by: Jacob Kroon +Upstream-Status: Backport [https://github.com/plougher/squashfs-tools/commit/fe2f5da4b0f8994169c53e84b7cb8a0feefc97b5] +--- + squashfs-tools/mksquashfs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/squashfs-tools/mksquashfs.h b/squashfs-tools/mksquashfs.h +index 1beefef..b650306 100644 +--- a/squashfs-tools/mksquashfs.h ++++ b/squashfs-tools/mksquashfs.h +@@ -143,7 +143,7 @@ struct append_file { + #endif + + extern struct cache *reader_buffer, *fragment_buffer, *reserve_cache; +-struct cache *bwriter_buffer, *fwriter_buffer; ++extern struct cache *bwriter_buffer, *fwriter_buffer; + extern struct queue *to_reader, *to_deflate, *to_writer, *from_writer, + *to_frag, *locked_fragment, *to_process_frag; + extern struct append_file **file_mapping; diff --git a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb index 9bcf026ce..b06951df3 100644 --- a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb +++ b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb @@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://../COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" PV = "4.4" SRCREV = "52eb4c279cd283ed9802dd1ceb686560b22ffb67" SRC_URI = "git://github.com/plougher/squashfs-tools.git;protocol=https \ + file://0001-squashfs-tools-fix-build-failure-against-gcc-10.patch;striplevel=2 \ " S = "${WORKDIR}/git/squashfs-tools" diff --git a/poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch b/poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch new file mode 100644 index 000000000..44cb15327 --- /dev/null +++ b/poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch @@ -0,0 +1,97 @@ +From 951928f2cad5682c2844e6bd0f7201236c5d9b66 Mon Sep 17 00:00:00 2001 +From: Merlin Mathesius +Date: Wed, 13 May 2020 08:02:27 -0500 +Subject: [PATCH] Workaround multiple definition of symbol errors + +Lifted from Fedora https://src.fedoraproject.org/rpms/syslinux/blob/master/f/0005-Workaround-multiple-definition-of-symbol-errors.patch + +Upstream-Status: Pending +Signed-off-by: Khem Raj + +--- + com32/cmenu/Makefile | 2 +- + com32/elflink/ldlinux/Makefile | 2 +- + com32/gpllib/Makefile | 2 +- + com32/hdt/Makefile | 2 +- + core/Makefile | 2 +- + dos/Makefile | 2 +- + efi/Makefile | 2 +- + 7 files changed, 7 insertions(+), 7 deletions(-) + +--- a/com32/cmenu/Makefile ++++ b/com32/cmenu/Makefile +@@ -49,7 +49,7 @@ makeoutputdirs: + @mkdir -p $(OBJ)/libmenu + + libmenu/libmenu.elf: $(LIBMENU) +- $(LD) -shared $(LDFLAGS) -soname $(patsubst %.elf,%.c32,$(@F)) \ ++ $(LD) -shared $(LDFLAGS) -z muldefs -soname $(patsubst %.elf,%.c32,$(@F)) \ + -o $@ $^ + + tidy dist: +--- a/com32/elflink/ldlinux/Makefile ++++ b/com32/elflink/ldlinux/Makefile +@@ -33,7 +33,7 @@ endif + all: $(BTARGET) ldlinux_lnx.a + + ldlinux.elf : $(OBJS) +- $(LD) $(LDFLAGS) -soname $(SONAME) -o $@ $^ $(LIBS) ++ $(LD) $(LDFLAGS) -z muldefs -soname $(SONAME) -o $@ $^ $(LIBS) + + LNXCFLAGS += -D__export='__attribute__((visibility("default")))' + LNXLIBOBJS = get_key.lo +--- a/com32/gpllib/Makefile ++++ b/com32/gpllib/Makefile +@@ -24,7 +24,7 @@ makeoutputdirs: + $(addprefix $(OBJ),$(sort $(dir $(LIBOBJS)))),$(b)) + + libgpl.elf : $(LIBOBJS) +- $(LD) -shared $(LDFLAGS) -soname $(patsubst %.elf,%.c32,$(@F)) -o $@ $^ ++ $(LD) -shared $(LDFLAGS) -z muldefs -soname $(patsubst %.elf,%.c32,$(@F)) -o $@ $^ + + tidy dist clean: + find . \( -name \*.o -o -name .\*.d -o -name \*.tmp \) -print0 | \ +--- a/com32/hdt/Makefile ++++ b/com32/hdt/Makefile +@@ -52,7 +52,7 @@ QEMU ?= qemu-kvm + all: $(MODULES) $(TESTFILES) + + hdt.elf : $(OBJS) $(LIBS) $(C_LIBS) +- $(LD) $(LDFLAGS) -o $@ $^ ++ $(LD) $(LDFLAGS) -z muldefs -o $@ $^ + + memtest: + -[ ! -f $(FLOPPY_DIR)/$(MEMTEST) ] && $(WGET) $(MEMTEST_URL) -O $(FLOPPY_DIR)/$(MEMTEST) +--- a/core/Makefile ++++ b/core/Makefile +@@ -156,7 +156,7 @@ LDSCRIPT = $(SRC)/$(ARCH)/syslinux.ld + NASM_ELF = elf + + %.elf: %.o $(LIBDEP) $(LDSCRIPT) $(AUXLIBS) +- $(LD) $(LDFLAGS) -pie -Bsymbolic \ ++ $(LD) $(LDFLAGS) -z muldefs -pie -Bsymbolic \ + -T $(LDSCRIPT) \ + --unresolved-symbols=report-all \ + -E --hash-style=gnu -M -o $@ $< \ +--- a/dos/Makefile ++++ b/dos/Makefile +@@ -19,7 +19,7 @@ include $(MAKEDIR)/embedded.mk + CFLAGS += -D__MSDOS__ -mregparm=3 -DREGPARM=3 + # CFLAGS += -DDEBUG + +-LDFLAGS = -T $(SRC)/dosexe.ld ++LDFLAGS = -T $(SRC)/dosexe.ld -z muldefs + OPTFLAGS = -g + INCLUDES = -include code16.h -nostdinc -iwithprefix include \ + -I$(SRC) -I$(SRC)/.. -I$(SRC)/../libfat \ +--- a/efi/Makefile ++++ b/efi/Makefile +@@ -71,7 +71,7 @@ $(OBJS): | $(OBJ)/$(ARCH) + BTARGET = syslinux.efi + + syslinux.so: $(OBJS) $(CORE_OBJS) $(LIB_OBJS) +- $(LD) $(LDFLAGS) --strip-debug -o $@ $^ -lgnuefi -lefi ++ $(LD) $(LDFLAGS) -z muldefs --strip-debug -o $@ $^ -lgnuefi -lefi + + # We need to rename the .hash section because the EFI firmware + # linker really doesn't like it. 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 e9dbefb93..3e7eef3a7 100644 --- a/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb +++ b/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb @@ -20,6 +20,7 @@ SRC_URI = "https://www.zytor.com/pub/syslinux/Testing/6.04/syslinux-${PV}.tar.xz file://0007-linux-syslinux-implement-ext_construct_sectmap_fs.patch \ file://0008-libinstaller-syslinuxext-implement-syslinux_patch_bo.patch \ file://0009-linux-syslinux-implement-install_bootblock.patch \ + file://0010-Workaround-multiple-definition-of-symbol-errors.patch \ file://0001-install-don-t-install-obsolete-file-com32.ld.patch \ " diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch new file mode 100644 index 000000000..9afa7f6a5 --- /dev/null +++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch @@ -0,0 +1,144 @@ +From abbc0761fa0349d49b10dc8c0f10af6bc0578c40 Mon Sep 17 00:00:00 2001 +From: Mark Wielaard +Date: Tue, 12 May 2020 16:58:36 +0200 +Subject: [PATCH 1/2] gcc10 arm64 build needs __getauxval for linking with + libgcc + +Provide a new library libgcc-sup-.a that contains symbols +needed by libgcc. This needs to be linked after -lgcc to provide +any symbols missing which would normally be provided by glibc. +At the moment this only provides __getauxval on arm64 linux. + +https://bugs.kde.org/show_bug.cgi?id=421321 + +Signed-off-by: Khem Raj +Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=abbc0761fa0349d49b10dc8c0f10af6bc0578c40] + +--- + Makefile.tool.am | 3 +- + coregrind/Makefile.am | 26 +++++++++++++++++ + coregrind/m_libgcc_sup.c | 61 ++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 89 insertions(+), 1 deletion(-) + create mode 100644 coregrind/m_libgcc_sup.c + +diff --git a/Makefile.tool.am b/Makefile.tool.am +index cc2fa0ee6..2bf90de5d 100644 +--- a/Makefile.tool.am ++++ b/Makefile.tool.am +@@ -17,7 +17,8 @@ TOOL_DEPENDENCIES_@VGCONF_PLATFORM_SEC_CAPS@ = \ + endif + + +-TOOL_LDADD_COMMON = -lgcc ++TOOL_LDADD_COMMON = -lgcc \ ++ $(top_builddir)/coregrind/libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a + TOOL_LDADD_@VGCONF_PLATFORM_PRI_CAPS@ = \ + $(TOOL_DEPENDENCIES_@VGCONF_PLATFORM_PRI_CAPS@) $(TOOL_LDADD_COMMON) + if VGCONF_HAVE_PLATFORM_SEC +diff --git a/coregrind/Makefile.am b/coregrind/Makefile.am +index 6a1a925fb..1753fb633 100644 +--- a/coregrind/Makefile.am ++++ b/coregrind/Makefile.am +@@ -542,6 +542,32 @@ libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_DEPENDENCIES = \ + libnolto_coregrind-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a + endif + ++#---------------------------------------------------------------------------- ++# libgcc-sup-.a ++# Special supplemental library for functions normally supplied by glibc ++# used by libgcc. ++#---------------------------------------------------------------------------- ++ ++pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a ++if VGCONF_HAVE_PLATFORM_SEC ++pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a ++endif ++ ++libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES = \ ++ m_libgcc_sup.c ++libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CPPFLAGS = \ ++ $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) ++libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS = \ ++ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_PRI_CAPS@) ++if VGCONF_HAVE_PLATFORM_SEC ++libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \ ++ m_libgcc_sup.c ++libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CPPFLAGS = \ ++ $(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) ++libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS = \ ++ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_SEC_CAPS@) ++endif ++ + #---------------------------------------------------------------------------- + # libreplacemalloc_toolpreload-.a + #---------------------------------------------------------------------------- +diff --git a/coregrind/m_libgcc_sup.c b/coregrind/m_libgcc_sup.c +new file mode 100644 +index 000000000..e29325459 +--- /dev/null ++++ b/coregrind/m_libgcc_sup.c +@@ -0,0 +1,61 @@ ++/* -*- mode: C; c-basic-offset: 3; -*- */ ++ ++/*--------------------------------------------------------------------*/ ++/*--- Supplemental functions for libgcc normally provided by glibc ---*/ ++/*--------------------------------------------------------------------*/ ++ ++/* ++ This file is part of Valgrind, a dynamic binary instrumentation ++ framework. ++ ++ Copyright (C) 2020 Mark Wielaard ++ mark@klomp.org ++ ++ This program is free software; you can redistribute it and/or ++ modify it under the terms of the GNU General Public License as ++ published by the Free Software Foundation; either version 2 of the ++ License, or (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, but ++ WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, see . ++ ++ The GNU General Public License is contained in the file COPYING. ++*/ ++ ++#include "config.h" ++#include "pub_core_basics.h" ++#include "pub_core_clientstate.h" ++ ++/*====================================================================*/ ++/*=== arm64 libgcc support function for init_have_lse_atomics ===*/ ++/*====================================================================*/ ++ ++#if defined(VGP_arm64_linux) ++struct auxv ++{ ++ Word a_type; ++ union { ++ void *a_ptr; ++ Word a_val; ++ } u; ++}; ++#define AT_NULL 0 ++ ++unsigned long int __getauxval (unsigned long int type); ++unsigned long int __getauxval (unsigned long int type) ++{ ++ struct auxv *p; ++ for (p = (struct auxv *) VG_(client_auxv); ++ p != NULL && p->a_type != AT_NULL; ++ p++) ++ if (p->a_type == type) ++ return p->u.a_val; ++ ++ return 0; ++} ++#endif +-- +2.26.2 + diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb index 7954437a1..a764d1817 100644 --- a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb +++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb @@ -42,6 +42,7 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \ file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \ file://0001-tests-Make-pthread_detatch-call-portable-across-plat.patch \ file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \ + file://0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch \ " SRC_URI[md5sum] = "46e5fbdcbc3502a5976a317a0860a975" SRC_URI[sha256sum] = "417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1" diff --git a/poky/meta/recipes-extended/acpica/acpica_20200214.bb b/poky/meta/recipes-extended/acpica/acpica_20200214.bb deleted file mode 100644 index cfa9fec4f..000000000 --- a/poky/meta/recipes-extended/acpica/acpica_20200214.bb +++ /dev/null @@ -1,49 +0,0 @@ -SUMMARY = "ACPICA tools for the development and debug of ACPI tables" -DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ -OS-independent reference implementation of the Advanced Configuration and \ -Power Interface Specification (ACPI). ACPICA code contains those portions of \ -ACPI meant to be directly integrated into the host OS as a kernel-resident \ -subsystem, and a small set of tools to assist in developing and debugging \ -ACPI tables." - -HOMEPAGE = "http://www.acpica.org/" -SECTION = "console/tools" - -LICENSE = "Intel | BSD | GPLv2" -LIC_FILES_CHKSUM = "file://source/compiler/aslcompile.c;beginline=7;endline=150;md5=6adbcb81e9ee6ae50c569b94fe12f7c5" - -COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" - -DEPENDS = "m4-native flex-native bison-native" - -SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz" -SRC_URI[md5sum] = "3505ba6170b77db1399eae0e2a959113" -SRC_URI[sha256sum] = "e77ab9f8557ca104f6e8f49efaa8eead29f78ca11cadfc8989012469ecc0738e" -UPSTREAM_CHECK_URI = "https://acpica.org/downloads" - -S = "${WORKDIR}/acpica-unix-${PV}" - -inherit update-alternatives - -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_${PN} = "acpixtract acpidump" - -EXTRA_OEMAKE = "CC='${CC}' \ - OPT_CFLAGS=-Wall \ - DESTDIR=${D} \ - PREFIX=${prefix} \ - INSTALLDIR=${bindir} \ - INSTALLFLAGS= \ - " - -do_install() { - oe_runmake install -} - -# iasl*.bb is a subset of this recipe, so RREPLACE it -PROVIDES = "iasl" -RPROVIDES_${PN} += "iasl" -RREPLACES_${PN} += "iasl" -RCONFLICTS_${PN} += "iasl" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/acpica/acpica_20200430.bb b/poky/meta/recipes-extended/acpica/acpica_20200430.bb new file mode 100644 index 000000000..478be7f56 --- /dev/null +++ b/poky/meta/recipes-extended/acpica/acpica_20200430.bb @@ -0,0 +1,49 @@ +SUMMARY = "ACPICA tools for the development and debug of ACPI tables" +DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ +OS-independent reference implementation of the Advanced Configuration and \ +Power Interface Specification (ACPI). ACPICA code contains those portions of \ +ACPI meant to be directly integrated into the host OS as a kernel-resident \ +subsystem, and a small set of tools to assist in developing and debugging \ +ACPI tables." + +HOMEPAGE = "http://www.acpica.org/" +SECTION = "console/tools" + +LICENSE = "Intel | BSD | GPLv2" +LIC_FILES_CHKSUM = "file://source/compiler/aslcompile.c;beginline=7;endline=150;md5=6adbcb81e9ee6ae50c569b94fe12f7c5" + +COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" + +DEPENDS = "m4-native flex-native bison-native" + +SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz" +SRC_URI[sha256sum] = "fb807f1dec31664f972af37d213abf72987afe33abf68c83051e298da35d297c" + +UPSTREAM_CHECK_URI = "https://acpica.org/downloads" + +S = "${WORKDIR}/acpica-unix-${PV}" + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_${PN} = "acpixtract acpidump" + +EXTRA_OEMAKE = "CC='${CC}' \ + OPT_CFLAGS=-Wall \ + DESTDIR=${D} \ + PREFIX=${prefix} \ + INSTALLDIR=${bindir} \ + INSTALLFLAGS= \ + " + +do_install() { + oe_runmake install +} + +# iasl*.bb is a subset of this recipe, so RREPLACE it +PROVIDES = "iasl" +RPROVIDES_${PN} += "iasl" +RREPLACES_${PN} += "iasl" +RCONFLICTS_${PN} += "iasl" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/i686 b/poky/meta/recipes-extended/ghostscript/ghostscript/i686 deleted file mode 120000 index 87aaca590..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/i686 +++ /dev/null @@ -1 +0,0 @@ -i586 \ No newline at end of file diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch b/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch index 02c2fef55..f2fc8ee95 100644 --- a/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch +++ b/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch @@ -1,35 +1,22 @@ -From 788c47ceef7f115ab7f7aa17f918e58795f4e6c7 Mon Sep 17 00:00:00 2001 +From ad8e73306cb8293f7d32841e1599fd9048801f1f Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 20 Dec 2019 13:06:05 +0100 Subject: [PATCH] Add more musl exclusions Upstream-Status: Pending Signed-off-by: Alexander Kanavin +[ pvorel: rebase for 20200515: enable accept4_01 ] [ pvorel: rebase for 20200120: enable fanotify13, fanotify15, setxattr03 ] Signed-off-by: Petr Vorel --- - testcases/kernel/syscalls/accept4/Makefile | 4 ++++ testcases/kernel/syscalls/timer_create/Makefile | 4 ++++ - 2 files changed, 8 insertions(+) + 1 file changed, 4 insertions(+) -diff --git a/testcases/kernel/syscalls/accept4/Makefile b/testcases/kernel/syscalls/accept4/Makefile -index 504042e11..94db06266 100644 ---- a/testcases/kernel/syscalls/accept4/Makefile -+++ b/testcases/kernel/syscalls/accept4/Makefile -@@ -20,4 +20,8 @@ top_srcdir ?= ../../../.. - - include $(top_srcdir)/include/mk/testcases.mk - -+ifeq ($(LIBC),musl) -+FILTER_OUT_MAKE_TARGETS := accept4_01 -+endif -+ - include $(top_srcdir)/include/mk/generic_leaf_target.mk diff --git a/testcases/kernel/syscalls/timer_create/Makefile b/testcases/kernel/syscalls/timer_create/Makefile -index 8de247075..eb240f432 100644 +index ada241fe1..d454b01e7 100644 --- a/testcases/kernel/syscalls/timer_create/Makefile +++ b/testcases/kernel/syscalls/timer_create/Makefile -@@ -20,6 +20,10 @@ top_srcdir ?= ../../../.. +@@ -5,6 +5,10 @@ top_srcdir ?= ../../../.. include $(top_srcdir)/include/mk/testcases.mk @@ -40,5 +27,6 @@ index 8de247075..eb240f432 100644 CPPFLAGS += -D_GNU_SOURCE -I$(abs_srcdir)/../include LDLIBS += -lpthread -lrt --- -2.25.1 +-- +2.26.2 + diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch b/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch index b1a99959d..29b2bf7e4 100644 --- a/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch +++ b/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch @@ -1,15 +1,16 @@ -From be453d1be826b862d47e08663fd69eea9dd62730 Mon Sep 17 00:00:00 2001 +From 74958c3e341de713b596c8cfd35b2391d6c7bc09 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 7 Jan 2016 18:19:03 +0000 -Subject: [PATCH 1/6] build: Add option to select libc implementation +Subject: [PATCH] build: Add option to select libc implementation There are more than glibc for C library implementation available on linux now a days, uclibc cloaked like glibc but musl e.g. is very -different and does not implement all GNU extentions +different and does not implement all GNU extensions. Disable tests specifically not building _yet_ on musl based systems -Upstream-Status: Pending +Upstream-Status: Pending (pvorel: this is not going to be fixed, instead +each test needs to be fixed) rt_tgsigqueueinfo fails with: rt_tgsigqueueinfo01.c: In function 'sigusr1_handler': @@ -19,18 +20,17 @@ rt_tgsigqueueinfo01.c:42:22: error: 'siginfo_t' {aka 'struct '} has n | __si_fields Signed-off-by: Khem Raj +[ pvorel: rebase for 20200515: enable pty, ioctl ] [ pvorel: rebase for 20200120: enable mallopt, profil, rpc016, rt_sigsuspend, sbrk_mutex, setdomainname, sethostname, sigsuspend, testpi-3, testpi-5, testpi-6, ustat; move rt_tgsigqueueinfo from 0006-rt_tgsigqueueinfo-disable-test-on-musl.patch ] Signed-off-by: Petr Vorel -Signed-off-by: Petr Vorel --- Makefile | 5 +++++ - testcases/kernel/Makefile | 5 ++++- testcases/kernel/sched/Makefile | 4 +++- testcases/kernel/syscalls/Makefile | 4 ++++ - 4 files changed, 16 insertions(+), 2 deletions(-) + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 768ca4606..e9d679a71 100644 @@ -48,28 +48,6 @@ index 768ca4606..e9d679a71 100644 # CLEAN_TARGETS: Targets which exist solely in clean. # COMMON_TARGETS: Targets which exist in all, clean, and install. # INSTALL_TARGETS: Targets which exist in clean and install (contains -diff --git a/testcases/kernel/Makefile b/testcases/kernel/Makefile -index 3319b3163..94ea362c8 100644 ---- a/testcases/kernel/Makefile -+++ b/testcases/kernel/Makefile -@@ -49,13 +49,16 @@ SUBDIRS += connectors \ - logging \ - mem \ - numa \ -- pty \ - sched \ - security \ - sound \ - tracing \ - uevents \ - -+ifneq ($(LIBC),musl) -+SUBDIRS += pty -+endif -+ - ifeq ($(WITH_POWER_MANAGEMENT_TESTSUITE),yes) - SUBDIRS += power_management - endif diff --git a/testcases/kernel/sched/Makefile b/testcases/kernel/sched/Makefile index 6a57d79ee..74bb93370 100644 --- a/testcases/kernel/sched/Makefile @@ -84,19 +62,20 @@ index 6a57d79ee..74bb93370 100644 +endif include $(top_srcdir)/include/mk/generic_trunk_target.mk diff --git a/testcases/kernel/syscalls/Makefile b/testcases/kernel/syscalls/Makefile -index 45a00cf7d..af5a591a0 100644 +index c6dc8d9e7..aa50761ea 100644 --- a/testcases/kernel/syscalls/Makefile +++ b/testcases/kernel/syscalls/Makefile -@@ -29,6 +29,10 @@ FILTER_OUT_DIRS += capget capset chmod chown clone fork getcontext llseek \ +@@ -15,6 +15,10 @@ FILTER_OUT_DIRS += capget capset chmod chown clone fork getcontext llseek \ mincore mprotect nftw profil remap_file_pages sbrk endif +ifeq ($(LIBC),musl) -+FILTER_OUT_DIRS += confstr fmtmsg getcontext ioctl rt_tgsigqueueinfo ++FILTER_OUT_DIRS += confstr fmtmsg getcontext rt_tgsigqueueinfo +endif + ifeq ($(UCLIBC),1) FILTER_OUT_DIRS += profil endif --- -2.25.1 +-- +2.26.2 + diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch b/poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch new file mode 100644 index 000000000..27b890e22 --- /dev/null +++ b/poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch @@ -0,0 +1,33 @@ +From adb9587466a493fdd9d4410f1b8b130ebca06daa Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 19 May 2020 22:21:23 -0700 +Subject: [PATCH] ptrace01: Fix missing format string + +Fixes +| ptrace01.c:89:2: error: format string is not a string literal +(potentially insecure) [-Werror,-Wformat-security] +| tst_res(TINFO, tc->message); +| ^ ~~~~~~~~~~~ + +Signed-off-by: Khem Raj +Upstream-Status: Backport [58424835952641f4fd60c0ae3ab6c64decca3f8a] +--- + testcases/kernel/syscalls/ptrace/ptrace01.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/testcases/kernel/syscalls/ptrace/ptrace01.c b/testcases/kernel/syscalls/ptrace/ptrace01.c +index 87a99e4150..9071bbabaf 100644 +--- a/testcases/kernel/syscalls/ptrace/ptrace01.c ++++ b/testcases/kernel/syscalls/ptrace/ptrace01.c +@@ -86,7 +86,7 @@ static void run(unsigned int i) + + got_signal = 0; + +- tst_res(TINFO, tc->message); ++ tst_res(TINFO, "%s", tc->message); + + if (tc->handler == 1) { + parent_act.sa_handler = parent_handler; +-- +2.26.2 + diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch b/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch deleted file mode 100644 index ac8f08ef5..000000000 --- a/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch +++ /dev/null @@ -1,122 +0,0 @@ -From 89c5841bd148a7ae70c65f4a1ca5996b7f0cddfa Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 19 Feb 2020 22:52:04 -0800 -Subject: [PATCH] syscalls: Check for time64 unsafe syscalls before using them - -musl is using 64bit time_t now on 32bit architectures and these syscalls -no longer exist, therefore its better to check for them being available -before using them - -Signed-off-by: Khem Raj -Reviewed-by: Yang Xu -Reviewed-by: Petr Vorel -Signed-off-by: Petr Vorel -Upstream-Status: accepted as 5b57ae2913e2d2d167cbd3822784b4c4ba336812 ---- - lib/tst_clocks.c | 16 ++++++---------- - .../syscalls/gettimeofday/gettimeofday01.c | 6 ++---- - .../syscalls/gettimeofday/gettimeofday02.c | 8 +++----- - 3 files changed, 11 insertions(+), 19 deletions(-) - -diff --git a/lib/tst_clocks.c b/lib/tst_clocks.c -index 5195da38f..fa2f1cb84 100644 ---- a/lib/tst_clocks.c -+++ b/lib/tst_clocks.c -@@ -3,28 +3,24 @@ - * Copyright (c) 2017 Cyril Hrubis - */ - --/* -- * clock_gettime() and clock_getres() functions -- */ -- --#define _GNU_SOURCE --#include - #include --#include - -+#define TST_NO_DEFAULT_MAIN -+#include "tst_test.h" - #include "tst_clocks.h" -+#include "lapi/syscalls.h" - - int tst_clock_getres(clockid_t clk_id, struct timespec *res) - { -- return syscall(SYS_clock_getres, clk_id, res); -+ return tst_syscall(__NR_clock_getres, clk_id, res); - } - - int tst_clock_gettime(clockid_t clk_id, struct timespec *ts) - { -- return syscall(SYS_clock_gettime, clk_id, ts); -+ return tst_syscall(__NR_clock_gettime, clk_id, ts); - } - - int tst_clock_settime(clockid_t clk_id, struct timespec *ts) - { -- return syscall(SYS_clock_settime, clk_id, ts); -+ return tst_syscall(__NR_clock_settime, clk_id, ts); - } -diff --git a/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c b/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c -index 583d8f7b9..08ea1673a 100644 ---- a/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c -+++ b/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c -@@ -38,10 +38,8 @@ - #include - #include - #include "test.h" --#include - #include -- --#define gettimeofday(a,b) syscall(__NR_gettimeofday,a,b) -+#include "lapi/syscalls.h" - - char *TCID = "gettimeofday01"; - int TST_TOTAL = 1; -@@ -63,7 +61,7 @@ int main(int ac, char **av) - for (lc = 0; TEST_LOOPING(lc); lc++) { - tst_count = 0; - -- TEST(gettimeofday((void *)-1, (void *)-1)); -+ TEST(ltp_syscall(__NR_gettimeofday, (void *)-1, (void *)-1)); - - /* gettimeofday returns an int, so we need to turn the long - * TEST_RETURN into an int to test with */ -diff --git a/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c b/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c -index 1d60f448e..5170ad2f7 100644 ---- a/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c -+++ b/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c -@@ -16,14 +16,12 @@ - #include - #include - #include --#include - #include - #include - #include - - #include "tst_test.h" -- --#define gettimeofday(a,b) syscall(__NR_gettimeofday,a,b) -+#include "lapi/syscalls.h" - - static volatile sig_atomic_t done; - static char *str_rtime; -@@ -48,13 +46,13 @@ static void verify_gettimeofday(void) - - alarm(rtime); - -- if (gettimeofday(&tv1, NULL)) { -+ if (tst_syscall(__NR_gettimeofday, &tv1, NULL)) { - tst_res(TBROK | TERRNO, "gettimeofday() failed"); - return; - } - - while (!done) { -- if (gettimeofday(&tv2, NULL)) { -+ if (tst_syscall(__NR_gettimeofday, &tv2, NULL)) { - tst_res(TBROK | TERRNO, "gettimeofday() failed"); - return; - } --- -2.25.1 diff --git a/poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch b/poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch deleted file mode 100644 index df3e8831f..000000000 --- a/poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 1ce47a6ed811fd78ed04ea2f82e6321c6bca57b6 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Thu, 7 Jan 2016 19:40:08 +0000 -Subject: [PATCH] Check if __GLIBC_PREREQ is defined before using it - -__GLIBC_PREREQ is specific to glibc so it should be checked if it is -defined or not. - -Upstream-Status: Pending - -Signed-off-by: Khem Raj -Signed-off-by: Yi Zhao - ---- - testcases/kernel/syscalls/accept4/accept4_01.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/testcases/kernel/syscalls/accept4/accept4_01.c b/testcases/kernel/syscalls/accept4/accept4_01.c -index 29e18f27d..07444a46f 100644 ---- a/testcases/kernel/syscalls/accept4/accept4_01.c -+++ b/testcases/kernel/syscalls/accept4/accept4_01.c -@@ -38,6 +38,7 @@ - static struct sockaddr_in *conn_addr, *accept_addr; - static int listening_fd; - -+#if defined(__GLIBC__) && defined(__GLIBC_PREREQ) - #if !(__GLIBC_PREREQ(2, 10)) - static int - accept4_01(int fd, struct sockaddr *sockaddr, socklen_t *addrlen, int flags) -@@ -56,6 +57,7 @@ accept4_01(int fd, struct sockaddr *sockaddr, socklen_t *addrlen, int flags) - #endif - } - #endif -+#endif - - static int create_listening_socket(void) - { -@@ -114,12 +116,17 @@ static void verify_accept4(unsigned int nr) - SAFE_CONNECT(connfd, (struct sockaddr *)conn_addr, sizeof(*conn_addr)); - addrlen = sizeof(*accept_addr); - -+#if defined(__GLIBC__) && defined(__GLIBC_PREREQ) - #if !(__GLIBC_PREREQ(2, 10)) - TEST(accept4_01(listening_fd, (struct sockaddr *)accept_addr, &addrlen, - tcase->cloexec | tcase->nonblock)); - #else - TEST(accept4(listening_fd, (struct sockaddr *)accept_addr, &addrlen, - tcase->cloexec | tcase->nonblock)); -+#endif -+#else -+ TEST(accept4(listening_fd, (struct sockaddr *)&claddr, &addrlen, -+ tcase->cloexec | tcase->nonblock)); - #endif - if (TST_RET == -1) { - if (TST_ERR == ENOSYS) diff --git a/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch b/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch index 5622a64d4..e93886c9c 100644 --- a/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch +++ b/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch @@ -5,9 +5,9 @@ Subject: [PATCH] guard mallocopt() with __GLIBC__ mallocopt is not available on non glibc implementations -Upstream-Status: Pending - Signed-off-by: Khem Raj +Reviewed-by: Petr Vorel +[ Upstream-Status: accepted in 967612c454aea66770b64f69287671037fe895b3 ] --- utils/benchmark/ebizzy-0.3/ebizzy.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch b/poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch deleted file mode 100644 index 350091a70..000000000 --- a/poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 4b7db094d6fc5659001ae8dc17078bb65d46b9c9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= -Date: Fri, 13 May 2016 11:11:28 -0500 -Subject: [PATCH] acl: Security fix on string printf -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes build error when compiled with -Werror=format-security: - -acl1.c: In function ‘test_acl_default’: -acl1.c:305:2: error: format not a string literal and no format arguments [-Werror=format-security] - 305 | printf(cmd); - -Patch taken from openembedded-core, -original bug report: https://bugzilla.yoctoproject.org/9548 - -[YOCTO #9548] - -Signed-off-by: Aníbal Limón -Signed-off-by: Petr Vorel -Upstream-Status: accepted in 4b7db094d6fc5659001ae8dc17078bb65d46b9c9 ---- - testcases/network/nfsv4/acl/acl1.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/testcases/network/nfsv4/acl/acl1.c b/testcases/network/nfsv4/acl/acl1.c -index aae9484e5..ad778cd33 100644 ---- a/testcases/network/nfsv4/acl/acl1.c -+++ b/testcases/network/nfsv4/acl/acl1.c -@@ -302,7 +302,7 @@ void test_acl_default(char *dir, acl_t acl) - char *cmd = malloc(256); - - strcpy(cmd, "chmod 7777 "); -- printf(cmd); -+ printf(cmd, NULL); - strcat(cmd, dir); - system(cmd); - acl2 = acl_get_file(path, ACL_TYPE_ACCESS); --- -2.25.1 - diff --git a/poky/meta/recipes-extended/ltp/ltp_20200120.bb b/poky/meta/recipes-extended/ltp/ltp_20200120.bb deleted file mode 100644 index deac3917d..000000000 --- a/poky/meta/recipes-extended/ltp/ltp_20200120.bb +++ /dev/null @@ -1,114 +0,0 @@ -SUMMARY = "Linux Test Project" -DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features." -HOMEPAGE = "https://linux-test-project.github.io/" -SECTION = "console/utils" -LICENSE = "GPLv2 & GPLv2+ & LGPLv2+ & LGPLv2.1+ & BSD-2-Clause" -LIC_FILES_CHKSUM = "\ - file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://testcases/kernel/controllers/freezer/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ - file://testcases/kernel/controllers/freezer/run_freezer.sh;beginline=5;endline=17;md5=86a61d2c042d59836ffb353a21456498 \ - file://testcases/kernel/hotplug/memory_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ - file://testcases/kernel/hotplug/cpu_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ - file://testcases/open_posix_testsuite/COPYING;md5=48b1c5ec633e3e30ec2cf884ae699947 \ - file://testcases/realtime/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ - file://utils/benchmark/kernbench-0.42/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ -" - -DEPENDS = "attr libaio libcap acl openssl zip-native" -DEPENDS_append_libc-musl = " fts " -EXTRA_OEMAKE_append_libc-musl = " LIBC=musl " -EXTRA_OECONF_append_libc-musl = " LIBS=-lfts " - -# since ltp contains x86-64 assembler which uses the frame-pointer register, -# set -fomit-frame-pointer x86-64 to handle cases where optimisation -# is set to -O0 or frame pointers have been enabled by -fno-omit-frame-pointer -# earlier in CFLAGS, etc. -CFLAGS_append_x86-64 = " -fomit-frame-pointer" - -CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__" -CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__" -SRCREV = "4079aaf264d0e9ead042b59d1c5f4e643620d0d5" - -SRC_URI = "git://github.com/linux-test-project/ltp.git \ - file://0001-build-Add-option-to-select-libc-implementation.patch \ - file://0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch \ - file://0004-guard-mallocopt-with-__GLIBC__.patch \ - file://0007-Fix-test_proc_kill-hanging.patch \ - file://0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch \ - file://0001-Add-more-musl-exclusions.patch \ - file://0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch \ - " - -S = "${WORKDIR}/git" - -inherit autotools-brokensep - -TARGET_CC_ARCH += "${LDFLAGS}" - -export prefix = "/opt/${PN}" -export exec_prefix = "/opt/${PN}" - -PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl," -EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4" -EXTRA_OECONF = " --with-power-management-testsuite --with-realtime-testsuite --with-open-posix-testsuite " -# ltp network/rpc test cases ftbfs when libtirpc is found -EXTRA_OECONF += " --without-tirpc " - -do_install(){ - install -d ${D}${prefix}/ - oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install - - # fixup not deploy STPfailure_report.pl to avoid confusing about it fails to run - # as it lacks dependency on some perl moudle such as LWP::Simple - # And this script previously works as a tool for analyzing failures from LTP - # runs on the OSDL's Scaleable Test Platform (STP) and it mainly accesses - # http://khack.osdl.org to retrieve ltp test results run on - # OSDL's Scaleable Test Platform, but now http://khack.osdl.org unaccessible - rm -rf ${D}${prefix}/bin/STPfailure_report.pl - - # Copy POSIX test suite into ${D}${prefix}/testcases by manual - cp -r testcases/open_posix_testsuite ${D}${prefix}/testcases - - # Makefile were configured in the build system - find ${D}${prefix} -name Makefile | xargs -n 1 sed -i \ - -e 's@[^ ]*-fdebug-prefix-map=[^ "]*@@g' \ - -e 's@[^ ]*-fmacro-prefix-map=[^ "]*@@g' \ - -e 's@[^ ]*--sysroot=[^ "]*@@g' -} - -RDEPENDS_${PN} = "\ - attr \ - bash \ - cpio \ - cronie \ - curl \ - e2fsprogs-mke2fs \ - expect \ - file \ - gawk \ - gzip \ - iproute2 \ - ldd \ - libaio \ - logrotate \ - perl \ - python3-core \ - procps \ - quota \ - unzip \ - util-linux \ - which \ - tar \ -" - -FILES_${PN} += "${prefix}/* ${prefix}/runtest/* ${prefix}/scenario_groups/* ${prefix}/testcases/bin/* ${prefix}/testcases/bin/*/bin/* ${prefix}/testscripts/* ${prefix}/testcases/open_posix_testsuite/* ${prefix}/testcases/open_posix_testsuite/conformance/* ${prefix}/testcases/open_posix_testsuite/Documentation/* ${prefix}/testcases/open_posix_testsuite/functional/* ${prefix}/testcases/open_posix_testsuite/include/* ${prefix}/testcases/open_posix_testsuite/scripts/* ${prefix}/testcases/open_posix_testsuite/stress/* ${prefix}/testcases/open_posix_testsuite/tools/* ${prefix}/testcases/data/nm01/lib.a ${prefix}/lib/libmem.a" - -# Avoid stripping some generated binaries otherwise some of the ltp tests such as ldd01 & nm01 fail -INHIBIT_PACKAGE_STRIP_FILES = "${prefix}/testcases/bin/nm01 ${prefix}/testcases/bin/ldd01" -INSANE_SKIP_${PN} += "already-stripped staticdev" - -# Avoid file dependency scans, as LTP checks for things that may or may not -# exist on the running system. For instance it has specific checks for -# csh and ksh which are not typically part of OpenEmbedded systems (but -# can be added via additional layers.) -SKIP_FILEDEPS_${PN} = '1' diff --git a/poky/meta/recipes-extended/ltp/ltp_20200515.bb b/poky/meta/recipes-extended/ltp/ltp_20200515.bb new file mode 100644 index 000000000..67c759032 --- /dev/null +++ b/poky/meta/recipes-extended/ltp/ltp_20200515.bb @@ -0,0 +1,121 @@ +SUMMARY = "Linux Test Project" +DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features." +HOMEPAGE = "https://linux-test-project.github.io/" +SECTION = "console/utils" +LICENSE = "GPLv2 & GPLv2+ & LGPLv2+ & LGPLv2.1+ & BSD-2-Clause" +LIC_FILES_CHKSUM = "\ + file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://testcases/kernel/controllers/freezer/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ + file://testcases/kernel/controllers/freezer/run_freezer.sh;beginline=5;endline=17;md5=86a61d2c042d59836ffb353a21456498 \ + file://testcases/kernel/hotplug/memory_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ + file://testcases/kernel/hotplug/cpu_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ + file://testcases/open_posix_testsuite/COPYING;md5=48b1c5ec633e3e30ec2cf884ae699947 \ + file://testcases/realtime/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ + file://utils/benchmark/kernbench-0.42/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ +" + +DEPENDS = "attr libaio libcap acl openssl zip-native" +DEPENDS_append_libc-musl = " fts " +EXTRA_OEMAKE_append_libc-musl = " LIBC=musl " +EXTRA_OECONF_append_libc-musl = " LIBS=-lfts " + +# since ltp contains x86-64 assembler which uses the frame-pointer register, +# set -fomit-frame-pointer x86-64 to handle cases where optimisation +# is set to -O0 or frame pointers have been enabled by -fno-omit-frame-pointer +# earlier in CFLAGS, etc. +CFLAGS_append_x86-64 = " -fomit-frame-pointer" + +CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__" +CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__" +SRCREV = "0d79a93e6ca44d9bc95973faea6bcd7b0c6d1f43" + +SRC_URI = "git://github.com/linux-test-project/ltp.git \ + file://0001-build-Add-option-to-select-libc-implementation.patch \ + file://0004-guard-mallocopt-with-__GLIBC__.patch \ + file://0007-Fix-test_proc_kill-hanging.patch \ + file://0001-Add-more-musl-exclusions.patch \ + file://0001-ptrace01-Fix-missing-format-string.patch \ + " + +S = "${WORKDIR}/git" + +inherit autotools-brokensep pkgconfig + +TARGET_CC_ARCH += "${LDFLAGS}" + +export prefix = "/opt/${PN}" +export exec_prefix = "/opt/${PN}" + +PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl," +EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4" +EXTRA_OECONF = " --with-power-management-testsuite --with-realtime-testsuite --with-open-posix-testsuite " +# ltp network/rpc test cases ftbfs when libtirpc is found +EXTRA_OECONF += " --without-tirpc " + +do_install(){ + install -d ${D}${prefix}/ + oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install + + # fixup not deploy STPfailure_report.pl to avoid confusing about it fails to run + # as it lacks dependency on some perl moudle such as LWP::Simple + # And this script previously works as a tool for analyzing failures from LTP + # runs on the OSDL's Scaleable Test Platform (STP) and it mainly accesses + # http://khack.osdl.org to retrieve ltp test results run on + # OSDL's Scaleable Test Platform, but now http://khack.osdl.org unaccessible + rm -rf ${D}${prefix}/bin/STPfailure_report.pl + + # Copy POSIX test suite into ${D}${prefix}/testcases by manual + cp -r testcases/open_posix_testsuite ${D}${prefix}/testcases + + # Makefile were configured in the build system + find ${D}${prefix} -name Makefile | xargs -n 1 sed -i \ + -e 's@[^ ]*-fdebug-prefix-map=[^ "]*@@g' \ + -e 's@[^ ]*-fmacro-prefix-map=[^ "]*@@g' \ + -e 's@[^ ]*--sysroot=[^ "]*@@g' + + # The controllers memcg_stree test seems to cause us hangs and takes 900s + # (maybe we expect more regular output?), anyhow, skip it + sed -e '/^memcg_stress/d' -i ${D}${prefix}/runtest/controllers +} + +RDEPENDS_${PN} = "\ + attr \ + bash \ + bc \ + coreutils \ + cpio \ + cronie \ + curl \ + e2fsprogs \ + e2fsprogs-mke2fs \ + expect \ + file \ + gawk \ + gdb \ + gzip \ + iproute2 \ + ldd \ + libaio \ + logrotate \ + net-tools \ + perl \ + python3-core \ + procps \ + quota \ + unzip \ + util-linux \ + which \ + tar \ +" + +FILES_${PN} += "${prefix}/* ${prefix}/runtest/* ${prefix}/scenario_groups/* ${prefix}/testcases/bin/* ${prefix}/testcases/bin/*/bin/* ${prefix}/testscripts/* ${prefix}/testcases/open_posix_testsuite/* ${prefix}/testcases/open_posix_testsuite/conformance/* ${prefix}/testcases/open_posix_testsuite/Documentation/* ${prefix}/testcases/open_posix_testsuite/functional/* ${prefix}/testcases/open_posix_testsuite/include/* ${prefix}/testcases/open_posix_testsuite/scripts/* ${prefix}/testcases/open_posix_testsuite/stress/* ${prefix}/testcases/open_posix_testsuite/tools/* ${prefix}/testcases/data/nm01/lib.a ${prefix}/lib/libmem.a" + +# Avoid stripping some generated binaries otherwise some of the ltp tests such as ldd01 & nm01 fail +INHIBIT_PACKAGE_STRIP_FILES = "${prefix}/testcases/bin/nm01 ${prefix}/testcases/bin/ldd01" +INSANE_SKIP_${PN} += "already-stripped staticdev" + +# Avoid file dependency scans, as LTP checks for things that may or may not +# exist on the running system. For instance it has specific checks for +# csh and ksh which are not typically part of OpenEmbedded systems (but +# can be added via additional layers.) +SKIP_FILEDEPS_${PN} = '1' diff --git a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb index 15a8e6ded..16c2f9f2a 100644 --- a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb +++ b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb @@ -32,21 +32,23 @@ python __anonymous () { namemap["packagegroup-core-full-cmdline-sys-services"] = "packagegroup-core-sys-services" packages = d.getVar("PACKAGES").split() + mlprefix = d.getVar("MLPREFIX") for pkg in packages: + pkg2 = pkg[len(mlprefix):] if pkg.endswith('-dev'): - mapped = namemap.get(pkg[:-4], None) + mapped = namemap.get(pkg2[:-4], None) if mapped: mapped += '-dev' elif pkg.endswith('-dbg'): - mapped = namemap.get(pkg[:-4], None) + mapped = namemap.get(pkg2[:-4], None) if mapped: mapped += '-dbg' else: - mapped = namemap.get(pkg, None) + mapped = namemap.get(pkg2, None) if mapped: oldtaskname = mapped.replace("packagegroup-core", "task-core") - mapstr = " %s %s" % (mapped, oldtaskname) + mapstr = " %s%s %s%s" % (mlprefix, mapped, mlprefix, oldtaskname) d.appendVar("RPROVIDES_%s" % pkg, mapstr) d.appendVar("RREPLACES_%s" % pkg, mapstr) d.appendVar("RCONFLICTS_%s" % pkg, mapstr) diff --git a/poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb b/poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb deleted file mode 100644 index 2a90f89d2..000000000 --- a/poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb +++ /dev/null @@ -1,8 +0,0 @@ -require sysstat.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=a23a74b3f4caf9616230789d94217acb" - -SRC_URI += "file://0001-configure.in-remove-check-for-chkconfig.patch" - -SRC_URI[md5sum] = "9dfff5fac24e35bd92fb7896debf2ffb" -SRC_URI[sha256sum] = "8edb0e19b514ac560a098a02933a4735b881296d61014db89bf80f05dd7a4732" diff --git a/poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb b/poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb new file mode 100644 index 000000000..333d10295 --- /dev/null +++ b/poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb @@ -0,0 +1,8 @@ +require sysstat.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=a23a74b3f4caf9616230789d94217acb" + +SRC_URI += "file://0001-configure.in-remove-check-for-chkconfig.patch" + +SRC_URI[md5sum] = "1073fdf7bba58483a467a8a0681beeda" +SRC_URI[sha256sum] = "78388b64acec81378b962e66b40e57acd4b18ff17a849bc9308f95d290248c9c" diff --git a/poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch b/poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch deleted file mode 100644 index 198f19861..000000000 --- a/poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 8f91385dbd5e7c14b36ecbd8a01ca82c709f6d77 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 24 Jun 2016 18:19:29 +0000 -Subject: [PATCH] Include linux/param.h for EXEC_PAGESIZE definition - -Musl does not include linux/param.h whereas glibc -does, so it fails to build on musl. - -Signed-off-by: Khem Raj ---- -Upstream-Status: Submitted - - src/watchdog.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/watchdog.c b/src/watchdog.c -index acf6450..486384a 100644 ---- a/src/watchdog.c -+++ b/src/watchdog.c -@@ -26,6 +26,9 @@ - #include /* For EXEC_PAGESIZE */ - #include - #include -+#ifdef __linux__ -+#include -+#endif - #include - - #include --- -1.8.3.1 - diff --git a/poky/meta/recipes-extended/watchdog/watchdog_5.15.bb b/poky/meta/recipes-extended/watchdog/watchdog_5.15.bb deleted file mode 100644 index 1acab2e9e..000000000 --- a/poky/meta/recipes-extended/watchdog/watchdog_5.15.bb +++ /dev/null @@ -1,72 +0,0 @@ -SUMMARY = "Software watchdog" -DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ -working. If programs in user space are not longer executed \ -it will reboot the system." -HOMEPAGE = "http://watchdog.sourceforge.net/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" - -LICENSE = "GPL-2.0+" -LIC_FILES_CHKSUM = "file://COPYING;md5=ecc0551bf54ad97f6b541720f84d6569" - -SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz \ - file://0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch \ - file://0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch \ - file://watchdog.init \ - file://wd_keepalive.init \ -" - -SRC_URI[md5sum] = "678c32f6f35a0492c9c1b76b4aa88828" -SRC_URI[sha256sum] = "ffdc865137ad5d8e53664bd22bad4de6ca136d1b4636720320cb52af0c18947c" - -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" -UPSTREAM_CHECK_REGEX = "/watchdog/(?P(\d+[\.\-_]*)+)/" - -inherit autotools update-rc.d systemd pkgconfig - -DEPENDS += "libtirpc" -CFLAGS += "-I${STAGING_INCDIR}/tirpc" -LDFLAGS += "-ltirpc" - -EXTRA_OECONF += " --disable-nfs " - -INITSCRIPT_PACKAGES = "${PN} ${PN}-keepalive" - -INITSCRIPT_NAME_${PN} = "watchdog" -INITSCRIPT_PARAMS_${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ." - -INITSCRIPT_NAME_${PN}-keepalive = "wd_keepalive" -INITSCRIPT_PARAMS_${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ." - -SYSTEMD_PACKAGES = "${PN} ${PN}-keepalive" -SYSTEMD_SERVICE_${PN} = "watchdog.service" -SYSTEMD_SERVICE_${PN}-keepalive = "wd_keepalive.service" -# When using systemd, consider making use of internal watchdog support of systemd. -# See RuntimeWatchdogSec in /etc/systemd/system.conf. -SYSTEMD_AUTO_ENABLE = "disable" - -do_install_append() { - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir} - install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir} - - install -Dm 0755 ${WORKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog - install -Dm 0755 ${WORKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive - - # watchdog.conf is provided by the watchdog-config recipe - rm ${D}${sysconfdir}/watchdog.conf -} - -PACKAGES =+ "${PN}-keepalive" - -FILES_${PN}-keepalive = " \ - ${sysconfdir}/init.d/wd_keepalive \ - ${systemd_system_unitdir}/wd_keepalive.service \ - ${sbindir}/wd_keepalive \ -" - -RDEPENDS_${PN} += "${PN}-config" -RRECOMMENDS_${PN} += "kernel-module-softdog" - -RDEPENDS_${PN}-keepalive += "${PN}-config" -RCONFLICTS_${PN}-keepalive += "${PN}" -RRECOMMENDS_${PN}-keepalive += "kernel-module-softdog" diff --git a/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb new file mode 100644 index 000000000..0199487e2 --- /dev/null +++ b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb @@ -0,0 +1,71 @@ +SUMMARY = "Software watchdog" +DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ +working. If programs in user space are not longer executed \ +it will reboot the system." +HOMEPAGE = "http://watchdog.sourceforge.net/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" + +LICENSE = "GPL-2.0+" +LIC_FILES_CHKSUM = "file://COPYING;md5=084236108b1d4a9851bf5213fea586fd" + +SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz \ + file://0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch \ + file://watchdog.init \ + file://wd_keepalive.init \ +" + +SRC_URI[md5sum] = "1b4f51cabc64d1bee2fce7cdd626831f" +SRC_URI[sha256sum] = "b8e7c070e1b72aee2663bdc13b5cc39f76c9232669cfbb1ac0adc7275a3b019d" + +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" +UPSTREAM_CHECK_REGEX = "/watchdog/(?P(\d+[\.\-_]*)+)/" + +inherit autotools update-rc.d systemd pkgconfig + +DEPENDS += "libtirpc" +CFLAGS += "-I${STAGING_INCDIR}/tirpc" +LDFLAGS += "-ltirpc" + +EXTRA_OECONF += " --disable-nfs " + +INITSCRIPT_PACKAGES = "${PN} ${PN}-keepalive" + +INITSCRIPT_NAME_${PN} = "watchdog" +INITSCRIPT_PARAMS_${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ." + +INITSCRIPT_NAME_${PN}-keepalive = "wd_keepalive" +INITSCRIPT_PARAMS_${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ." + +SYSTEMD_PACKAGES = "${PN} ${PN}-keepalive" +SYSTEMD_SERVICE_${PN} = "watchdog.service" +SYSTEMD_SERVICE_${PN}-keepalive = "wd_keepalive.service" +# When using systemd, consider making use of internal watchdog support of systemd. +# See RuntimeWatchdogSec in /etc/systemd/system.conf. +SYSTEMD_AUTO_ENABLE = "disable" + +do_install_append() { + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir} + install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir} + + install -Dm 0755 ${WORKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog + install -Dm 0755 ${WORKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive + + # watchdog.conf is provided by the watchdog-config recipe + rm ${D}${sysconfdir}/watchdog.conf +} + +PACKAGES =+ "${PN}-keepalive" + +FILES_${PN}-keepalive = " \ + ${sysconfdir}/init.d/wd_keepalive \ + ${systemd_system_unitdir}/wd_keepalive.service \ + ${sbindir}/wd_keepalive \ +" + +RDEPENDS_${PN} += "${PN}-config" +RRECOMMENDS_${PN} += "kernel-module-softdog" + +RDEPENDS_${PN}-keepalive += "${PN}-config" +RCONFLICTS_${PN}-keepalive += "${PN}" +RRECOMMENDS_${PN}-keepalive += "kernel-module-softdog" diff --git a/poky/meta/recipes-extended/xz/xz_5.2.4.bb b/poky/meta/recipes-extended/xz/xz_5.2.4.bb deleted file mode 100644 index 1c4450a9e..000000000 --- a/poky/meta/recipes-extended/xz/xz_5.2.4.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "Utilities for managing LZMA compressed files" -HOMEPAGE = "https://tukaani.org/xz/" -SECTION = "base" - -# The source includes bits of PD, GPLv2, GPLv3, LGPLv2.1+, but the only file -# which is GPLv3 is an m4 macro which isn't shipped in any of our packages, -# and the LGPL bits are under lib/, which appears to be used for libgnu, which -# appears to be used for DOS builds. So we're left with GPLv2+ and PD. -LICENSE = "GPLv2+ & GPL-3.0-with-autoconf-exception & LGPLv2.1+ & PD" -LICENSE_${PN} = "GPLv2+" -LICENSE_${PN}-dev = "GPLv2+" -LICENSE_${PN}-staticdev = "GPLv2+" -LICENSE_${PN}-doc = "GPLv2+" -LICENSE_${PN}-dbg = "GPLv2+" -LICENSE_${PN}-locale = "GPLv2+" -LICENSE_liblzma = "PD" - -LIC_FILES_CHKSUM = "file://COPYING;md5=97d554a32881fee0aa283d96e47cb24a \ - file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ - file://COPYING.LGPLv2.1;md5=4fbd65380cdd255951079008b364516c \ - file://lib/getopt.c;endline=23;md5=2069b0ee710572c03bb3114e4532cd84 \ - " - -SRC_URI = "https://tukaani.org/xz/xz-${PV}.tar.gz" -SRC_URI[md5sum] = "5ace3264bdd00c65eeec2891346f65e6" -SRC_URI[sha256sum] = "b512f3b726d3b37b6dc4c8570e137b9311e7552e8ccbab4d39d47ce5f4177145" -UPSTREAM_CHECK_REGEX = "xz-(?P\d+(\.\d+)+)\.tar" - -CACHED_CONFIGUREVARS += "gl_cv_posix_shell=/bin/sh" - -inherit autotools gettext - -PACKAGES =+ "liblzma" - -FILES_liblzma = "${libdir}/liblzma*${SOLIBS}" - -inherit update-alternatives -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_${PN} = "xz xzcat unxz \ - lzma lzcat unlzma" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/xz/xz_5.2.5.bb b/poky/meta/recipes-extended/xz/xz_5.2.5.bb new file mode 100644 index 000000000..af21b6056 --- /dev/null +++ b/poky/meta/recipes-extended/xz/xz_5.2.5.bb @@ -0,0 +1,43 @@ +SUMMARY = "Utilities for managing LZMA compressed files" +HOMEPAGE = "https://tukaani.org/xz/" +SECTION = "base" + +# The source includes bits of PD, GPLv2, GPLv3, LGPLv2.1+, but the only file +# which is GPLv3 is an m4 macro which isn't shipped in any of our packages, +# and the LGPL bits are under lib/, which appears to be used for libgnu, which +# appears to be used for DOS builds. So we're left with GPLv2+ and PD. +LICENSE = "GPLv2+ & GPL-3.0-with-autoconf-exception & LGPLv2.1+ & PD" +LICENSE_${PN} = "GPLv2+" +LICENSE_${PN}-dev = "GPLv2+" +LICENSE_${PN}-staticdev = "GPLv2+" +LICENSE_${PN}-doc = "GPLv2+" +LICENSE_${PN}-dbg = "GPLv2+" +LICENSE_${PN}-locale = "GPLv2+" +LICENSE_liblzma = "PD" + +LIC_FILES_CHKSUM = "file://COPYING;md5=97d554a32881fee0aa283d96e47cb24a \ + file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING.LGPLv2.1;md5=4fbd65380cdd255951079008b364516c \ + file://lib/getopt.c;endline=23;md5=2069b0ee710572c03bb3114e4532cd84 \ + " + +SRC_URI = "https://tukaani.org/xz/xz-${PV}.tar.gz" +SRC_URI[md5sum] = "0d270c997aff29708c74d53f599ef717" +SRC_URI[sha256sum] = "f6f4910fd033078738bd82bfba4f49219d03b17eb0794eb91efbae419f4aba10" +UPSTREAM_CHECK_REGEX = "xz-(?P\d+(\.\d+)+)\.tar" + +CACHED_CONFIGUREVARS += "gl_cv_posix_shell=/bin/sh" + +inherit autotools gettext + +PACKAGES =+ "liblzma" + +FILES_liblzma = "${libdir}/liblzma*${SOLIBS}" + +inherit update-alternatives +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_${PN} = "xz xzcat unxz \ + lzma lzcat unlzma" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb index a3325b50b..d5a88dfb3 100644 --- a/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb +++ b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb @@ -8,7 +8,7 @@ BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" -DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt \ +DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt gnupg-native \ ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}" GNOMEBASEBUILDCLASS = "meson" diff --git a/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb b/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb deleted file mode 100644 index a68175dc8..000000000 --- a/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "GNOME desktop-wide GSettings schemas" -DESCRIPTION = "GSettings desktop-wide schemas contains a collection of \ -GSettings schemas for settings shared by various components of a desktop." -HOMEPAGE = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/issues" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -DEPENDS = "glib-2.0" - -GNOMEBASEBUILDCLASS = "meson" - -inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even - -SRC_URI[archive.md5sum] = "697db9e6b2ae058f8a0d0b023e32ceac" -SRC_URI[archive.sha256sum] = "764ab683286536324533a58d4e95fc57f81adaba7d880dd0ebbbced63e960ea6" -SRC_URI += "file://0001-Do-not-skip-gir-installation-for-cross-compiling.patch" diff --git a/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb b/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb new file mode 100644 index 000000000..f54b242e7 --- /dev/null +++ b/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb @@ -0,0 +1,18 @@ +SUMMARY = "GNOME desktop-wide GSettings schemas" +DESCRIPTION = "GSettings desktop-wide schemas contains a collection of \ +GSettings schemas for settings shared by various components of a desktop." +HOMEPAGE = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/issues" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +DEPENDS = "glib-2.0" + +GNOMEBASEBUILDCLASS = "meson" + +inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even + +SRC_URI[archive.md5sum] = "708ddd8dec388ebda5539667604197c3" +SRC_URI[archive.sha256sum] = "004bdbe43cf8290f2de7d8537e14d8957610ca479a4fa368e34dbd03f03ec9d9" +SRC_URI += "file://0001-Do-not-skip-gir-installation-for-cross-compiling.patch" diff --git a/poky/meta/recipes-gnome/gtk+/gtk+3.inc b/poky/meta/recipes-gnome/gtk+/gtk+3.inc index 5d1f59ea1..615415400 100644 --- a/poky/meta/recipes-gnome/gtk+/gtk+3.inc +++ b/poky/meta/recipes-gnome/gtk+/gtk+3.inc @@ -46,6 +46,8 @@ do_compile_prepend() { PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl wayland x11', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'glx', '', d)}" +PACKAGECONFIG_class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes" # this is provided by oe-core patch that removes epoxy/gl dependency from a X11 build diff --git a/poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch b/poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch new file mode 100644 index 000000000..51ee66f42 --- /dev/null +++ b/poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch @@ -0,0 +1,137 @@ +meson: add option introspection + +Add an option 'introspection' for meson which could control whether +build GIR files or not. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libsecret/-/merge_requests/53] + +Signed-off-by: Kai Kang +--- + libsecret/meson.build | 86 ++++++++++++++++++++++--------------------- + meson.build | 1 + + meson_options.txt | 1 + + 3 files changed, 46 insertions(+), 42 deletions(-) + +diff --git a/libsecret/meson.build b/libsecret/meson.build +index 759b5ef..2ee8850 100644 +--- a/libsecret/meson.build ++++ b/libsecret/meson.build +@@ -104,50 +104,52 @@ libsecret_dep = declare_dependency( + ) + + # GObject Introspection +-libsecret_gir_sources = [ +- 'secret-attributes.c', +- 'secret-attributes.h', +- 'secret-backend.c', +- 'secret-backend.h', +- 'secret-collection.c', +- 'secret-collection.h', +- 'secret-item.c', +- 'secret-item.h', +- 'secret-methods.c', +- 'secret-password.c', +- 'secret-password.h', +- 'secret-paths.c', +- 'secret-paths.h', +- 'secret-prompt.c', +- 'secret-prompt.h', +- 'secret-retrievable.c', +- 'secret-retrievable.h', +- 'secret-schema.c', +- 'secret-schema.h', +- 'secret-schemas.c', +- 'secret-schemas.h', +- 'secret-service.c', +- 'secret-service.h', +- 'secret-types.h', +- 'secret-value.c', +- 'secret-value.h', +-] +-libsecret_gir_sources += version_h +-libsecret_gir_sources += _enums_generated +- +-libsecret_gir = gnome.generate_gir(libsecret, +- sources: libsecret_gir_sources, +- namespace: 'Secret', +- nsversion: api_version_major, +- export_packages: 'libsecret-@0@'.format(api_version_major), +- includes: [ 'GObject-2.0', 'Gio-2.0' ], +- header: 'libsecret/secret.h', +- extra_args: [ '-D SECRET_COMPILATION'], +- install: true, +-) ++if with_gir ++ libsecret_gir_sources = [ ++ 'secret-attributes.c', ++ 'secret-attributes.h', ++ 'secret-backend.c', ++ 'secret-backend.h', ++ 'secret-collection.c', ++ 'secret-collection.h', ++ 'secret-item.c', ++ 'secret-item.h', ++ 'secret-methods.c', ++ 'secret-password.c', ++ 'secret-password.h', ++ 'secret-paths.c', ++ 'secret-paths.h', ++ 'secret-prompt.c', ++ 'secret-prompt.h', ++ 'secret-retrievable.c', ++ 'secret-retrievable.h', ++ 'secret-schema.c', ++ 'secret-schema.h', ++ 'secret-schemas.c', ++ 'secret-schemas.h', ++ 'secret-service.c', ++ 'secret-service.h', ++ 'secret-types.h', ++ 'secret-value.c', ++ 'secret-value.h', ++ ] ++ libsecret_gir_sources += version_h ++ libsecret_gir_sources += _enums_generated ++ ++ libsecret_gir = gnome.generate_gir(libsecret, ++ sources: libsecret_gir_sources, ++ namespace: 'Secret', ++ nsversion: api_version_major, ++ export_packages: 'libsecret-@0@'.format(api_version_major), ++ includes: [ 'GObject-2.0', 'Gio-2.0' ], ++ header: 'libsecret/secret.h', ++ extra_args: [ '-D SECRET_COMPILATION'], ++ install: true, ++ ) ++endif + + # Vapi +-if with_vapi ++if with_vapi and with_gir + libsecret_vapi = gnome.generate_vapi('libsecret-@0@'.format(api_version_major), + sources: libsecret_gir[0], + metadata_dirs: meson.source_root() / 'libsecret', +diff --git a/meson.build b/meson.build +index a26d046..d22e008 100644 +--- a/meson.build ++++ b/meson.build +@@ -22,6 +22,7 @@ with_gcrypt = get_option('gcrypt') + enable_debug = get_option('debugging') + with_vapi = get_option('vapi') + with_gtkdoc = get_option('gtk_doc') ++with_gir = get_option('introspection') + + # Some variables + config_h_dir = include_directories('.') +diff --git a/meson_options.txt b/meson_options.txt +index c1fda5d..445aeb0 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -3,3 +3,4 @@ option('gcrypt', type: 'boolean', value: true, description: 'With gcrypt and tra + option('debugging', type: 'boolean', value: false, description: 'Turn debugging on/off') + option('vapi', type: 'boolean', value: true, description: 'Create VAPI file.') + option('gtk_doc', type: 'boolean', value: true, description: 'Build reference documentation using gtk-doc') ++option('introspection', type: 'boolean', value: true, description: 'Create GIR file.') +-- +2.17.1 + diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb index d3a0c2ff5..533015a1e 100644 --- a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb +++ b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb @@ -13,15 +13,13 @@ inherit gnomebase gtk-doc vala gobject-introspection manpages DEPENDS += "glib-2.0 libgcrypt gettext-native" +SRC_URI += "file://0001-meson-add-option-introspection.patch" + SRC_URI[archive.md5sum] = "47c3fdfeb111a87b509ad271e4a6f496" SRC_URI[archive.sha256sum] = "4fcb3c56f8ac4ab9c75b66901fb0104ec7f22aa9a012315a14c0d6dffa5290e4" GTKDOC_MESON_OPTION = 'gtk_doc' -# gobject-introspection is mandatory and cannot be configured -REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" -UNKNOWN_CONFIGURE_WHITELIST_append = " introspection" - PACKAGECONFIG[manpages] = "-Dmanpage=true,-Dmanpage=false,libxslt-native xmlto-native" # http://errors.yoctoproject.org/Errors/Details/20228/ diff --git a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb index b772c2ece..092c77b82 100644 --- a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb +++ b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb @@ -42,6 +42,8 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)} \ trace" +PACKAGECONFIG_class-native = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb" diff --git a/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb b/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb deleted file mode 100644 index d1c093054..000000000 --- a/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb +++ /dev/null @@ -1,47 +0,0 @@ -SUMMARY = "Freetype font rendering library" -DESCRIPTION = "FreeType is a software font engine that is designed to be small, efficient, \ -highly customizable, and portable while capable of producing high-quality output (glyph \ -images). It can be used in graphics libraries, display servers, font conversion tools, text \ -image generation tools, and many other products as well." -HOMEPAGE = "http://www.freetype.org/" -BUGTRACKER = "https://savannah.nongnu.org/bugs/?group=freetype" -SECTION = "libs" - -LICENSE = "FreeType | GPLv2+" -LIC_FILES_CHKSUM = "file://docs/LICENSE.TXT;md5=4af6221506f202774ef74f64932878a1 \ - file://docs/FTL.TXT;md5=9f37b4e6afa3fef9dba8932b16bd3f97 \ - file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec" - -SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/${BPN}/${BP}.tar.xz \ - file://use-right-libtool.patch \ - " -SRC_URI[md5sum] = "bd42e75127f8431923679480efb5ba8f" -SRC_URI[sha256sum] = "16dbfa488a21fe827dc27eaf708f42f7aa3bb997d745d31a19781628c36ba26f" - -UPSTREAM_CHECK_REGEX = "freetype-(?P\d+(\.\d+)+)" - -inherit autotools pkgconfig multilib_header - -# Adapt autotools to work with the minimal autoconf usage in freetype -AUTOTOOLS_SCRIPT_PATH = "${S}/builds/unix" -CONFIGURE_SCRIPT = "${S}/configure" -EXTRA_AUTORECONF += "--exclude=autoheader --exclude=automake" - -PACKAGECONFIG ??= "zlib pixmap" - -PACKAGECONFIG[bzip2] = "--with-bzip2,--without-bzip2,bzip2" -# harfbuzz results in a circular dependency so enabling is non-trivial -PACKAGECONFIG[harfbuzz] = "--with-harfbuzz,--without-harfbuzz,harfbuzz" -PACKAGECONFIG[pixmap] = "--with-png,--without-png,libpng" -PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" -PACKAGECONFIG[freetypeconfig] = "--enable-freetype-config=yes,--enable-freetype-config=no," - -EXTRA_OECONF = "CC_BUILD='${BUILD_CC}'" - -TARGET_CPPFLAGS += "-D_FILE_OFFSET_BITS=64" - -do_install_append() { - oe_multilib_header freetype2/freetype/config/ftconfig.h -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb b/poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb new file mode 100644 index 000000000..1034ddc0d --- /dev/null +++ b/poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb @@ -0,0 +1,47 @@ +SUMMARY = "Freetype font rendering library" +DESCRIPTION = "FreeType is a software font engine that is designed to be small, efficient, \ +highly customizable, and portable while capable of producing high-quality output (glyph \ +images). It can be used in graphics libraries, display servers, font conversion tools, text \ +image generation tools, and many other products as well." +HOMEPAGE = "http://www.freetype.org/" +BUGTRACKER = "https://savannah.nongnu.org/bugs/?group=freetype" +SECTION = "libs" + +LICENSE = "FreeType | GPLv2+" +LIC_FILES_CHKSUM = "file://docs/LICENSE.TXT;md5=4af6221506f202774ef74f64932878a1 \ + file://docs/FTL.TXT;md5=9f37b4e6afa3fef9dba8932b16bd3f97 \ + file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec" + +SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/${BPN}/${BP}.tar.xz \ + file://use-right-libtool.patch \ + " +SRC_URI[md5sum] = "7c0d5a39f232d7eb9f9d7da76bf08074" +SRC_URI[sha256sum] = "1543d61025d2e6312e0a1c563652555f17378a204a61e99928c9fcef030a2d8b" + +UPSTREAM_CHECK_REGEX = "freetype-(?P\d+(\.\d+)+)" + +inherit autotools pkgconfig multilib_header + +# Adapt autotools to work with the minimal autoconf usage in freetype +AUTOTOOLS_SCRIPT_PATH = "${S}/builds/unix" +CONFIGURE_SCRIPT = "${S}/configure" +EXTRA_AUTORECONF += "--exclude=autoheader --exclude=automake" + +PACKAGECONFIG ??= "zlib pixmap" + +PACKAGECONFIG[bzip2] = "--with-bzip2,--without-bzip2,bzip2" +# harfbuzz results in a circular dependency so enabling is non-trivial +PACKAGECONFIG[harfbuzz] = "--with-harfbuzz,--without-harfbuzz,harfbuzz" +PACKAGECONFIG[pixmap] = "--with-png,--without-png,libpng" +PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" +PACKAGECONFIG[freetypeconfig] = "--enable-freetype-config=yes,--enable-freetype-config=no," + +EXTRA_OECONF = "CC_BUILD='${BUILD_CC}'" + +TARGET_CPPFLAGS += "-D_FILE_OFFSET_BITS=64" + +do_install_append() { + oe_multilib_header freetype2/freetype/config/ftconfig.h +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb index 0782c6ce3..6646ef79f 100644 --- a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb +++ b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb @@ -19,8 +19,6 @@ UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases" inherit meson pkgconfig features_check REQUIRED_DISTRO_FEATURES = "opengl" -REQUIRED_DISTRO_FEATURES_class-native = "" -REQUIRED_DISTRO_FEATURES_class-nativesdk = "" PACKAGECONFIG[egl] = "-Degl=yes, -Degl=no, virtual/egl" PACKAGECONFIG[x11] = "-Dglx=yes, -Dglx=no -Dx11=false, virtual/libx11 virtual/libgl" diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb index c1c941e45..83dce8680 100644 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb +++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb @@ -45,8 +45,8 @@ EXTRA_OECONF = "--disable-oss --disable-esd --disable-arts \ # and BSP layers to pick either (desktop) opengl, gles2, or no GL PACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" -PACKAGECONFIG_class-native = "x11" -PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG_class-native = "x11 ${PACKAGECONFIG_GL}" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${PACKAGECONFIG_GL}" PACKAGECONFIG ??= " \ ${PACKAGECONFIG_GL} \ ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ diff --git a/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb deleted file mode 100644 index 2c845238d..000000000 --- a/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb +++ /dev/null @@ -1,9 +0,0 @@ -require libva.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" -SRC_URI[md5sum] = "aef13eb48e01a47d1416d97462a22a11" -SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e48629401eaea5" - -do_install_append () { - rm -f ${D}${libdir}/*.so* -} diff --git a/poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb b/poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb new file mode 100644 index 000000000..3e2b806c6 --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb @@ -0,0 +1,8 @@ +require libva.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" +SRC_URI[sha256sum] = "a00ff19d9f969259b9784172adad7788dbf3de827d985c5d27c230efd5d98a04" + +do_install_append () { + rm -f ${D}${libdir}/*.so* +} diff --git a/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb b/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb deleted file mode 100644 index 03b38027a..000000000 --- a/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "libva-utils is a collection of utilities from libva project" - -DESCRIPTION = "libva-utils is a collection of utilities \ -and examples to exercise VA-API in accordance with the libva \ -project.VA-API is an open-source library and API specification, \ -which provides access to graphics hardware acceleration capabilities \ -for video processing. It consists of a main library and driver-specific \ -acceleration backends for each supported hardware vendor" - -HOMEPAGE = "https://01.org/linuxmedia/vaapi" -BUGTRACKER = "https://github.com/intel/libva-utils/issues" - -SECTION = "x11" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" - -SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.6-branch" -SRCREV = "8ea1eba433dcbceb0e5dcb54b8e3f984987f7a17" -S = "${WORKDIR}/git" - -UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))" - -DEPENDS = "libva" - -inherit meson pkgconfig features_check - -# depends on libva which requires opengl -REQUIRED_DISTRO_FEATURES = "opengl" - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" -PACKAGECONFIG[x11] = "-Dx11=true, -Dx11=false,virtual/libx11 libxext libxfixes" -PACKAGECONFIG[wayland] = "-Dwayland=true, -Dwayland=false,wayland-native wayland" diff --git a/poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb b/poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb new file mode 100644 index 000000000..92a5b099b --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb @@ -0,0 +1,32 @@ +SUMMARY = "libva-utils is a collection of utilities from libva project" + +DESCRIPTION = "libva-utils is a collection of utilities \ +and examples to exercise VA-API in accordance with the libva \ +project.VA-API is an open-source library and API specification, \ +which provides access to graphics hardware acceleration capabilities \ +for video processing. It consists of a main library and driver-specific \ +acceleration backends for each supported hardware vendor" + +HOMEPAGE = "https://01.org/linuxmedia/vaapi" +BUGTRACKER = "https://github.com/intel/libva-utils/issues" + +SECTION = "x11" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" + +SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.7-branch" +SRCREV = "5a24c635f6fb2b9ac31cab3360afca50e1860812" +S = "${WORKDIR}/git" + +UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))" + +DEPENDS = "libva" + +inherit meson pkgconfig features_check + +# depends on libva which requires opengl +REQUIRED_DISTRO_FEATURES = "opengl" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" +PACKAGECONFIG[x11] = "-Dx11=true, -Dx11=false,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[wayland] = "-Dwayland=true, -Dwayland=false,wayland-native wayland" diff --git a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb deleted file mode 100644 index e8cb8678b..000000000 --- a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb +++ /dev/null @@ -1,24 +0,0 @@ -require libva.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" -SRC_URI[md5sum] = "aef13eb48e01a47d1416d97462a22a11" -SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e48629401eaea5" - -PACKAGECONFIG ??= " \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \ -" - -PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes" -PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa" - -PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland" - -PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" - -RDEPENDS_${PN}-x11 =+ "${PN}" -RDEPENDS_${PN}-glx =+ "${PN}-x11" - -FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" -FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" -FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" diff --git a/poky/meta/recipes-graphics/libva/libva_2.7.1.bb b/poky/meta/recipes-graphics/libva/libva_2.7.1.bb new file mode 100644 index 000000000..b2deb017a --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva_2.7.1.bb @@ -0,0 +1,23 @@ +require libva.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" +SRC_URI[sha256sum] = "a00ff19d9f969259b9784172adad7788dbf3de827d985c5d27c230efd5d98a04" + +PACKAGECONFIG ??= " \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \ +" + +PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa" + +PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland" + +PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" + +RDEPENDS_${PN}-x11 =+ "${PN}" +RDEPENDS_${PN}-glx =+ "${PN}-x11" + +FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" +FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" +FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc index fede691d6..bb43a9a8b 100644 --- a/poky/meta/recipes-graphics/mesa/mesa.inc +++ b/poky/meta/recipes-graphics/mesa/mesa.inc @@ -212,18 +212,20 @@ python __anonymous() { ("gles", "libgles3",)): if not p[0] in pkgconfig: continue - fullp = p[1] + "-mesa" - pkgs = " ".join(p[1:]) + mlprefix = d.getVar("MLPREFIX") + fullp = mlprefix + p[1] + "-mesa" + mlprefix = d.getVar("MLPREFIX") + pkgs = " ".join(mlprefix + x for x in p[1:]) d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") d.appendVar("RREPLACES_" + fullp, pkgs) d.appendVar("RPROVIDES_" + fullp, pkgs) d.appendVar("RCONFLICTS_" + fullp, pkgs) - d.appendVar("RRECOMMENDS_" + fullp, " mesa-megadriver") + d.appendVar("RRECOMMENDS_" + fullp, " ${MLPREFIX}mesa-megadriver") # For -dev, the first element is both the Debian and original name fullp += "-dev" - pkgs = p[1] + "-dev" + pkgs = mlprefix + p[1] + "-dev" d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") d.appendVar("RREPLACES_" + fullp, pkgs) d.appendVar("RPROVIDES_" + fullp, pkgs) diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb index 1046b8504..29b12628d 100644 --- a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb +++ b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb @@ -22,5 +22,3 @@ inherit meson pkgconfig features_check BBCLASSEXTEND = "native nativesdk" REQUIRED_DISTRO_FEATURES = "opengl" -REQUIRED_DISTRO_FEATURES_class-native = "" -REQUIRED_DISTRO_FEATURES_class-nativesdk = "" diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb deleted file mode 100644 index 7173409e0..000000000 --- a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb +++ /dev/null @@ -1,936 +0,0 @@ -SUMMARY = "Firmware files for use with Linux kernel" -SECTION = "kernel" - -LICENSE = "\ - Firmware-Abilis \ - & Firmware-adsp_sst \ - & Firmware-agere \ - & Firmware-amdgpu \ - & Firmware-amd-ucode \ - & Firmware-amlogic_vdec \ - & Firmware-atheros_firmware \ - & Firmware-atmel \ - & Firmware-broadcom_bcm43xx \ - & Firmware-ca0132 \ - & Firmware-cavium \ - & Firmware-chelsio_firmware \ - & Firmware-cw1200 \ - & Firmware-cypress \ - & Firmware-dib0700 \ - & Firmware-e100 \ - & Firmware-ene_firmware \ - & Firmware-fw_sst_0f28 \ - & Firmware-go7007 \ - & Firmware-GPLv2 \ - & Firmware-hfi1_firmware \ - & Firmware-i2400m \ - & Firmware-i915 \ - & Firmware-ibt_firmware \ - & Firmware-it913x \ - & Firmware-iwlwifi_firmware \ - & Firmware-IntcSST2 \ - & Firmware-kaweth \ - & Firmware-Marvell \ - & Firmware-moxa \ - & Firmware-myri10ge_firmware \ - & Firmware-netronome \ - & Firmware-nvidia \ - & Firmware-OLPC \ - & Firmware-ath9k-htc \ - & Firmware-phanfw \ - & Firmware-qat \ - & Firmware-qcom \ - & Firmware-qla1280 \ - & Firmware-qla2xxx \ - & Firmware-qualcommAthos_ar3k \ - & Firmware-qualcommAthos_ath10k \ - & Firmware-r8a779x_usb3 \ - & Firmware-radeon \ - & Firmware-ralink_a_mediatek_company_firmware \ - & Firmware-ralink-firmware \ - & Firmware-rtlwifi_firmware \ - & Firmware-imx-sdma_firmware \ - & Firmware-siano \ - & Firmware-tda7706-firmware \ - & Firmware-ti-connectivity \ - & Firmware-ti-keystone \ - & Firmware-ueagle-atm4-firmware \ - & Firmware-via_vt6656 \ - & Firmware-wl1251 \ - & Firmware-xc4000 \ - & Firmware-xc5000 \ - & Firmware-xc5000c \ - & WHENCE \ -" - -LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ - file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ - file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ - file://LICENSE.amdgpu;md5=d357524f5099e2a3db3c1838921c593f \ - file://LICENSE.amd-ucode;md5=3c5399dc9148d7f0e1f41e34b69cf14f \ - file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \ - file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ - file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ - file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \ - file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \ - file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \ - file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \ - file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \ - file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \ - file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \ - file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \ - file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \ - file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \ - file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \ - file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \ - file://GPL-2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://LICENSE.hfi1_firmware;md5=5e7b6e586ce7339d12689e49931ad444 \ - file://LICENCE.i2400m;md5=14b901969e23c41881327c0d9e4b7d36 \ - file://LICENSE.i915;md5=2b0b2e0d20984affd4490ba2cba02570 \ - file://LICENCE.ibt_firmware;md5=fdbee1ddfe0fb7ab0b2fcd6b454a366b \ - file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \ - file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ - file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \ - file://LICENCE.iwlwifi_firmware;md5=3fd842911ea93c29cd32679aa23e1c88 \ - file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \ - file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \ - file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \ - file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \ - file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \ - file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \ - file://LICENCE.nvidia;md5=4428a922ed3ba2ceec95f076a488ce07 \ - file://LICENCE.NXP;md5=58bb8ba632cd729b9ba6183bc6aed36f \ - file://LICENCE.OLPC;md5=5b917f9d8c061991be4f6f5f108719cd \ - file://LICENCE.open-ath9k-htc-firmware;md5=1b33c9f4d17bc4d457bdb23727046837 \ - file://LICENCE.phanfw;md5=954dcec0e051f9409812b561ea743bfa \ - file://LICENCE.qat_firmware;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ - file://LICENSE.qcom;md5=164e3362a538eb11d3ac51e8e134294b \ - file://LICENCE.qla1280;md5=d6895732e622d950609093223a2c4f5d \ - file://LICENCE.qla2xxx;md5=505855e921b75f1be4a437ad9b79dff0 \ - file://LICENSE.QualcommAtheros_ar3k;md5=b5fe244fb2b532311de1472a3bc06da5 \ - file://LICENSE.QualcommAtheros_ath10k;md5=cb42b686ee5f5cb890275e4321db60a8 \ - file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \ - file://LICENSE.radeon;md5=68ec28bacb3613200bca44f404c69b16 \ - file://LICENCE.ralink_a_mediatek_company_firmware;md5=728f1a85fd53fd67fa8d7afb080bc435 \ - file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \ - file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \ - file://LICENSE.sdma_firmware;md5=51e8c19ecc2270f4b8ea30341ad63ce9 \ - file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \ - file://LICENCE.tda7706-firmware.txt;md5=835997cf5e3c131d0dddd695c7d9103e \ - file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \ - file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \ - file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \ - file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \ - file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \ - file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ - file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ - file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ - file://WHENCE;md5=c27d0c06cd5d376d8ab55860e65ba4e4 \ - " - -# These are not common licenses, set NO_GENERIC_LICENSE for them -# so that the license files will be copied from fetched source -NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis" -NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst" -NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere" -NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu" -NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode" -NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec" -NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware" -NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel" -NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx" -NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132" -NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence" -NO_GENERIC_LICENSE[Firmware-cavium] = "LICENCE.cavium" -NO_GENERIC_LICENSE[Firmware-chelsio_firmware] = "LICENCE.chelsio_firmware" -NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200" -NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress" -NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700" -NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100" -NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware" -NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28" -NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007" -NO_GENERIC_LICENSE[Firmware-GPLv2] = "GPL-2" -NO_GENERIC_LICENSE[Firmware-hfi1_firmware] = "LICENSE.hfi1_firmware" -NO_GENERIC_LICENSE[Firmware-i2400m] = "LICENCE.i2400m" -NO_GENERIC_LICENSE[Firmware-i915] = "LICENSE.i915" -NO_GENERIC_LICENSE[Firmware-ibt_firmware] = "LICENCE.ibt_firmware" -NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2" -NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x" -NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware" -NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth" -NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell" -NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek" -NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa" -NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware" -NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome" -NO_GENERIC_LICENSE[Firmware-nvidia] = "LICENCE.nvidia" -NO_GENERIC_LICENSE[Firmware-OLPC] = "LICENCE.OLPC" -NO_GENERIC_LICENSE[Firmware-ath9k-htc] = "LICENCE.open-ath9k-htc-firmware" -NO_GENERIC_LICENSE[Firmware-phanfw] = "LICENCE.phanfw" -NO_GENERIC_LICENSE[Firmware-qat] = "LICENCE.qat_firmware" -NO_GENERIC_LICENSE[Firmware-qcom] = "LICENSE.qcom" -NO_GENERIC_LICENSE[Firmware-qla1280] = "LICENCE.qla1280" -NO_GENERIC_LICENSE[Firmware-qla2xxx] = "LICENCE.qla2xxx" -NO_GENERIC_LICENSE[Firmware-qualcommAthos_ar3k] = "LICENSE.QualcommAtheros_ar3k" -NO_GENERIC_LICENSE[Firmware-qualcommAthos_ath10k] = "LICENSE.QualcommAtheros_ath10k" -NO_GENERIC_LICENSE[Firmware-r8a779x_usb3] = "LICENCE.r8a779x_usb3" -NO_GENERIC_LICENSE[Firmware-radeon] = "LICENSE.radeon" -NO_GENERIC_LICENSE[Firmware-ralink_a_mediatek_company_firmware] = "LICENCE.ralink_a_mediatek_company_firmware" -NO_GENERIC_LICENSE[Firmware-ralink-firmware] = "LICENCE.ralink-firmware.txt" -NO_GENERIC_LICENSE[Firmware-rtlwifi_firmware] = "LICENCE.rtlwifi_firmware.txt" -NO_GENERIC_LICENSE[Firmware-siano] = "LICENCE.siano" -NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware" -NO_GENERIC_LICENSE[Firmware-tda7706-firmware] = "LICENCE.tda7706-firmware.txt" -NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity" -NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone" -NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware" -NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656" -NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251" -NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" -NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" -NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" -NO_GENERIC_LICENSE[WHENCE] = "WHENCE" - -PE = "1" - -SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz" - -SRC_URI[md5sum] = "ac291b21f366ae2a37193ec8f14c39d2" -SRC_URI[sha256sum] = "a30e811b3736a72b874ac27e10662f5e5409b1cadf8aab7ba88e8f8bc8083986" - -inherit allarch - -CLEANBROKEN = "1" - -do_compile() { - : -} - -do_install() { - oe_runmake 'DESTDIR=${D}' 'FIRMWAREDIR=${nonarch_base_libdir}/firmware' install - cp GPL-2 LICEN[CS]E.* WHENCE ${D}${nonarch_base_libdir}/firmware/ -} - - -PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ - ${PN}-mt7601u-license ${PN}-mt7601u \ - ${PN}-radeon-license ${PN}-radeon \ - ${PN}-marvell-license ${PN}-pcie8897 ${PN}-pcie8997 \ - ${PN}-sd8686 ${PN}-sd8688 ${PN}-sd8787 ${PN}-sd8797 ${PN}-sd8801 ${PN}-sd8887 ${PN}-sd8897 \ - ${PN}-usb8997 \ - ${PN}-ti-connectivity-license ${PN}-wlcommon ${PN}-wl12xx ${PN}-wl18xx \ - ${PN}-vt6656-license ${PN}-vt6656 \ - ${PN}-rtl-license ${PN}-rtl8188 ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su ${PN}-rtl8723 ${PN}-rtl8821 \ - ${PN}-rtl8168 \ - ${PN}-cypress-license \ - ${PN}-broadcom-license \ - ${PN}-bcm-0bb4-0306 \ - ${PN}-bcm43143 \ - ${PN}-bcm43236b \ - ${PN}-bcm43241b0 \ - ${PN}-bcm43241b4 \ - ${PN}-bcm43241b5 \ - ${PN}-bcm43242a \ - ${PN}-bcm4329 \ - ${PN}-bcm4329-fullmac \ - ${PN}-bcm4330 \ - ${PN}-bcm4334 \ - ${PN}-bcm43340 \ - ${PN}-bcm4335 \ - ${PN}-bcm43362 \ - ${PN}-bcm4339 \ - ${PN}-bcm43430 \ - ${PN}-bcm43430a0 \ - ${PN}-bcm43455 \ - ${PN}-bcm4350 \ - ${PN}-bcm4350c2 \ - ${PN}-bcm4354 \ - ${PN}-bcm4356 \ - ${PN}-bcm4356-pcie \ - ${PN}-bcm43569 \ - ${PN}-bcm43570 \ - ${PN}-bcm4358 \ - ${PN}-bcm43602 \ - ${PN}-bcm4366b \ - ${PN}-bcm4366c \ - ${PN}-bcm4371 \ - ${PN}-bcm4373 \ - ${PN}-bcm43xx \ - ${PN}-bcm43xx-hdr \ - ${PN}-atheros-license ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k \ - ${PN}-gplv2-license ${PN}-carl9170 \ - ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-qca \ - \ - ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \ - \ - ${PN}-iwlwifi-license ${PN}-iwlwifi \ - ${PN}-iwlwifi-135-6 \ - ${PN}-iwlwifi-3160-7 ${PN}-iwlwifi-3160-8 ${PN}-iwlwifi-3160-9 \ - ${PN}-iwlwifi-3160-10 ${PN}-iwlwifi-3160-12 ${PN}-iwlwifi-3160-13 \ - ${PN}-iwlwifi-3160-16 ${PN}-iwlwifi-3160-17 \ - ${PN}-iwlwifi-6000-4 ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2a-6 \ - ${PN}-iwlwifi-6000g2b-5 ${PN}-iwlwifi-6000g2b-6 \ - ${PN}-iwlwifi-6050-4 ${PN}-iwlwifi-6050-5 \ - ${PN}-iwlwifi-7260 \ - ${PN}-iwlwifi-7265 \ - ${PN}-iwlwifi-7265d ${PN}-iwlwifi-8000c ${PN}-iwlwifi-8265 \ - ${PN}-iwlwifi-9000 \ - ${PN}-iwlwifi-misc \ - ${PN}-ibt-license ${PN}-ibt ${PN}-ibt-misc \ - ${PN}-ibt-11-5 ${PN}-ibt-12-16 ${PN}-ibt-hw-37-7 ${PN}-ibt-hw-37-8 \ - ${PN}-ibt-17 \ - ${PN}-i915-license ${PN}-i915 \ - ${PN}-adsp-sst-license ${PN}-adsp-sst \ - ${PN}-bnx2-mips \ - ${PN}-liquidio \ - ${PN}-netronome-license ${PN}-netronome \ - ${PN}-qat ${PN}-qat-license \ - ${PN}-qcom-license \ - ${PN}-qcom-venus-1.8 ${PN}-qcom-venus-4.2 \ - ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a530 \ - ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute ${PN}-qcom-sdm845-modem \ - ${PN}-whence-license \ - ${PN}-license \ - " - -# For atheros -LICENSE_${PN}-ar9170 = "Firmware-atheros_firmware" -LICENSE_${PN}-ath6k = "Firmware-atheros_firmware" -LICENSE_${PN}-ath9k = "Firmware-atheros_firmware" -LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware" - -FILES_${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware" -FILES_${PN}-ar9170 = " \ - ${nonarch_base_libdir}/firmware/ar9170*.fw \ -" -FILES_${PN}-ath6k = " \ - ${nonarch_base_libdir}/firmware/ath6k \ -" -FILES_${PN}-ath9k = " \ - ${nonarch_base_libdir}/firmware/ar9271.fw \ - ${nonarch_base_libdir}/firmware/ar7010*.fw \ - ${nonarch_base_libdir}/firmware/htc_9271.fw \ - ${nonarch_base_libdir}/firmware/htc_7010.fw \ - ${nonarch_base_libdir}/firmware/ath9k_htc/htc_7010-1.4.0.fw \ - ${nonarch_base_libdir}/firmware/ath9k_htc/htc_9271-1.4.0.fw \ -" - -RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license" -RDEPENDS_${PN}-ath6k += "${PN}-atheros-license" -RDEPENDS_${PN}-ath9k += "${PN}-atheros-license" - -# For carl9170 -LICENSE_${PN}-carl9170 = "Firmware-GPLv2" -LICENSE_${PN}-gplv2-license = "Firmware-GPLv2" - -FILES_${PN}-gplv2-license = "${nonarch_base_libdir}/firmware/GPL-2" -FILES_${PN}-carl9170 = " \ - ${nonarch_base_libdir}/firmware/carl9170*.fw \ -" - -RDEPENDS_${PN}-carl9170 += "${PN}-gplv2-license" - -# For QualCommAthos -LICENSE_${PN}-ar3k = "Firmware-qualcommAthos_ar3k" -LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k" -LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k" -LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" -LICENSE_${PN}-qca = "Firmware-qualcommAthos_ath10k" - -FILES_${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k" -FILES_${PN}-ar3k = " \ - ${nonarch_base_libdir}/firmware/ar3k \ -" - -FILES_${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k" -FILES_${PN}-ath10k = " \ - ${nonarch_base_libdir}/firmware/ath10k \ -" - -FILES_${PN}-qca = " \ - ${nonarch_base_libdir}/firmware/qca \ -" - -RDEPENDS_${PN}-ar3k += "${PN}-ar3k-license" -RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license" -RDEPENDS_${PN}-qca += "${PN}-ath10k-license" - -# For ralink -LICENSE_${PN}-ralink = "Firmware-ralink-firmware" -LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware" - -FILES_${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt" -FILES_${PN}-ralink = " \ - ${nonarch_base_libdir}/firmware/rt*.bin \ -" - -RDEPENDS_${PN}-ralink += "${PN}-ralink-license" - -# For mediatek MT7601U -LICENSE_${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware" -LICENSE_${PN}-mt7601u-license = "Firmware-ralink_a_mediatek_company_firmware" - -FILES_${PN}-mt7601u-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware" -FILES_${PN}-mt7601u = " \ - ${nonarch_base_libdir}/firmware/mt7601u.bin \ -" - -RDEPENDS_${PN}-mt7601u += "${PN}-mt7601u-license" - -# For radeon -LICENSE_${PN}-radeon = "Firmware-radeon" -LICENSE_${PN}-radeon-license = "Firmware-radeon" - -FILES_${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon" -FILES_${PN}-radeon = " \ - ${nonarch_base_libdir}/firmware/radeon \ -" - -RDEPENDS_${PN}-radeon += "${PN}-radeon-license" - -# For marvell -LICENSE_${PN}-pcie8897 = "Firmware-Marvell" -LICENSE_${PN}-pcie8997 = "Firmware-Marvell" -LICENSE_${PN}-sd8686 = "Firmware-Marvell" -LICENSE_${PN}-sd8688 = "Firmware-Marvell" -LICENSE_${PN}-sd8787 = "Firmware-Marvell" -LICENSE_${PN}-sd8797 = "Firmware-Marvell" -LICENSE_${PN}-sd8801 = "Firmware-Marvell" -LICENSE_${PN}-sd8887 = "Firmware-Marvell" -LICENSE_${PN}-sd8897 = "Firmware-Marvell" -LICENSE_${PN}-usb8997 = "Firmware-Marvell" -LICENSE_${PN}-marvell-license = "Firmware-Marvell" - -FILES_${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell" -FILES_${PN}-pcie8897 = " \ - ${nonarch_base_libdir}/firmware/mrvl/pcie8897_uapsta.bin \ -" -FILES_${PN}-pcie8997 = " \ - ${nonarch_base_libdir}/firmware/mrvl/pcie8997_wlan_v4.bin \ - ${nonarch_base_libdir}/firmware/mrvl/pcieuart8997_combo_v4.bin \ - ${nonarch_base_libdir}/firmware/mrvl/pcieusb8997_combo_v4.bin \ -" -FILES_${PN}-sd8686 = " \ - ${nonarch_base_libdir}/firmware/libertas/sd8686_v9* \ - ${nonarch_base_libdir}/firmware/sd8686* \ -" -FILES_${PN}-sd8688 = " \ - ${nonarch_base_libdir}/firmware/libertas/sd8688* \ - ${nonarch_base_libdir}/firmware/mrvl/sd8688* \ -" -FILES_${PN}-sd8787 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8787_uapsta.bin \ -" -FILES_${PN}-sd8797 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8797_uapsta.bin \ -" -FILES_${PN}-sd8801 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8801_uapsta.bin \ -" -FILES_${PN}-sd8887 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8887_uapsta.bin \ -" -FILES_${PN}-sd8897 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8897_uapsta.bin \ -" -FILES_${PN}-usb8997 = " \ - ${nonarch_base_libdir}/firmware/mrvl/usbusb8997_combo_v4.bin \ -" - -RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8688 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8787 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8801 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8887 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8897 += "${PN}-marvell-license" -RDEPENDS_${PN}-usb8997 += "${PN}-marvell-license" - -# For netronome -LICENSE_${PN}-netronome = "Firmware-netronome" - -FILES_${PN}-netronome-license = " \ - ${nonarch_base_libdir}/firmware/LICENCE.Netronome \ -" -FILES_${PN}-netronome = " \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0081*.nffw \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0099*.nffw \ -" - -RDEPENDS_${PN}-netronome += "${PN}-netronome-license" - -# For rtl -LICENSE_${PN}-rtl8188 = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8723 = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8821 = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8168 = "WHENCE" - -FILES_${PN}-rtl-license = " \ - ${nonarch_base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \ -" -FILES_${PN}-rtl8188 = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8188*.bin \ -" -FILES_${PN}-rtl8192cu = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \ -" -FILES_${PN}-rtl8192ce = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \ -" -FILES_${PN}-rtl8192su = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8712u.bin \ -" -FILES_${PN}-rtl8723 = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8723*.bin \ -" -FILES_${PN}-rtl8821 = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8821*.bin \ -" -FILES_${PN}-rtl8168 = " \ - ${nonarch_base_libdir}/firmware/rtl_nic/rtl8168*.fw \ -" - -RDEPENDS_${PN}-rtl8188 += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8192ce += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8192cu += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8192su = "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8723 += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8821 += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8168 += "${PN}-whence-license" - -# For ti-connectivity -LICENSE_${PN}-wlcommon = "Firmware-ti-connectivity" -LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity" -LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity" -LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity" - -FILES_${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity" -# wl18xx optionally needs wl1271-nvs.bin (which itself is a symlink to -# wl127x-nvs.bin) - see linux/drivers/net/wireless/ti/wlcore/sdio.c -# and drivers/net/wireless/ti/wlcore/spi.c. -# While they're optional and actually only used to override the MAC -# address on wl18xx, driver loading will delay (by udev timout - 60s) -# if not there. So let's make it available always. Because it's a -# symlink, both need to go to wlcommon. -FILES_${PN}-wlcommon = " \ - ${nonarch_base_libdir}/firmware/ti-connectivity/TI* \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl127x-nvs.bin \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl1271-nvs.bin \ -" -FILES_${PN}-wl12xx = " \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl12* \ -" -FILES_${PN}-wl18xx = " \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl18* \ -" - -RDEPENDS_${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" -RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" - -# For vt6656 -LICENSE_${PN}-vt6656 = "Firmware-via_vt6656" -LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656" - -FILES_${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656" -FILES_${PN}-vt6656 = " \ - ${nonarch_base_libdir}/firmware/vntwusb.fw \ -" - -RDEPENDS_${PN}-vt6656 = "${PN}-vt6656-license" - -# For broadcom - -# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e " \${PN}-$pkg \\"; done | sort -u - -LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx" -FILES_${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx" - -# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES_\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES - -FILES_${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw" -FILES_${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw" -FILES_${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin" -FILES_${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin" -FILES_${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin" -FILES_${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*" -FILES_${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin" -FILES_${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin" -FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin" -FILES_${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin" -FILES_${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin" -FILES_${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin" -FILES_${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin" -FILES_${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \ - ${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \ -" -FILES_${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*" -FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.*" -FILES_${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin" -FILES_${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin" -FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.bin" -FILES_${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin" -FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin" -FILES_${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin" -FILES_${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \ - ${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \ -" -FILES_${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin" -FILES_${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin" -FILES_${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin" - -# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE_\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done -# Currently 1st one and last 6 have cypress LICENSE - -LICENSE_${PN}-bcm43xx = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43xx += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43xx-hdr += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4329-fullmac += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43236b = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43236b += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4329 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4330 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4334 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4335 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4335 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4339 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4339 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43241b0 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43241b4 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43241b5 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43242a = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43242a += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43143 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43143 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43430a0 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4350c2 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4350 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4350 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4356 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4356 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43569 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43569 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43570 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43570 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4358 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4358 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43602 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43602 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4366b = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4366b += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4366c = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4366c += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4371 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4371 += "${PN}-broadcom-license" - -# For broadcom cypress - -LICENSE_${PN}-cypress-license = "Firmware-cypress" -FILES_${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress" - -FILES_${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd" -FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.*" -FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.*" -FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.*" -FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin" -FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.*" -FILES_${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \ - ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \ -" - -LICENSE_${PN}-bcm-0bb4-0306 = "Firmware-cypress" -RDEPENDS_${PN}-bcm-0bb4-0306 += "${PN}-cypress-license" -LICENSE_${PN}-bcm43340 = "Firmware-cypress" -RDEPENDS_${PN}-bcm43340 += "${PN}-cypress-license" -LICENSE_${PN}-bcm43362 = "Firmware-cypress" -RDEPENDS_${PN}-bcm43362 += "${PN}-cypress-license" -LICENSE_${PN}-bcm43430 = "Firmware-cypress" -RDEPENDS_${PN}-bcm43430 += "${PN}-cypress-license" -LICENSE_${PN}-bcm4354 = "Firmware-cypress" -RDEPENDS_${PN}-bcm4354 += "${PN}-cypress-license" -LICENSE_${PN}-bcm4356-pcie = "Firmware-cypress" -RDEPENDS_${PN}-bcm4356-pcie += "${PN}-cypress-license" -LICENSE_${PN}-bcm4373 = "Firmware-cypress" -RDEPENDS_${PN}-bcm4373 += "${PN}-cypress-license" - -# For Broadcom bnx2-mips -# -# which is a separate case to the other Broadcom firmwares since its -# license is contained in the shared WHENCE file. - -LICENSE_${PN}-bnx2-mips = "WHENCE" -LICENSE_${PN}-whence-license = "WHENCE" - -FILES_${PN}-bnx2-mips = "${nonarch_base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw" -FILES_${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE" - -RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license" - -# For imx-sdma -LICENSE_${PN}-imx-sdma-imx6q = "Firmware-imx-sdma_firmware" -LICENSE_${PN}-imx-sdma-imx7d = "Firmware-imx-sdma_firmware" -LICENSE_${PN}-imx-sdma-license = "Firmware-imx-sdma_firmware" - -FILES_${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin" - -RPROVIDES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" -RREPLACES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" -RCONFLICTS_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" - -FILES_${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin" - -FILES_${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware" - -RDEPENDS_${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license" -RDEPENDS_${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license" - -# For iwlwifi -LICENSE_${PN}-iwlwifi = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-135-6 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-7 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-8 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-9 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-10 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-12 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-13 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-16 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-17 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000-4 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6050-4 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6050-5 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-7260 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-7265 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-7265d = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-8000c = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-8265 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-9000 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-misc = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-license = "Firmware-iwlwifi_firmware" - - -FILES_${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware" -FILES_${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode" -FILES_${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode" -FILES_${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode" -FILES_${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode" -FILES_${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode" -FILES_${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode" -FILES_${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode" -FILES_${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode" -FILES_${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode" -FILES_${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode" -FILES_${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode" -FILES_${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode" -FILES_${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode" -FILES_${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode" -FILES_${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode" -FILES_${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode" -FILES_${PN}-iwlwifi-7260 = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode" -FILES_${PN}-iwlwifi-7265 = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode" -FILES_${PN}-iwlwifi-7265d = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode" -FILES_${PN}-iwlwifi-8000c = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode" -FILES_${PN}-iwlwifi-8265 = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode" -FILES_${PN}-iwlwifi-9000 = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode" -FILES_${PN}-iwlwifi-misc = "${nonarch_base_libdir}/firmware/iwlwifi-*.ucode" - -RDEPENDS_${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-7 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-8 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-9 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-10 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-12 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-13 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-16 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-17 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000-4 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6050-4 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6050-5 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-7265d = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-8000c = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-8265 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-9000 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-misc = "${PN}-iwlwifi-license" - -# -iwlwifi-misc is a "catch all" package that includes all the iwlwifi -# firmwares that are not already included in other -iwlwifi- packages. -# -iwlwifi is a virtual package that depends upon all iwlwifi packages. -# These are distinct in order to allow the -misc firmwares to be installed -# without pulling in every other iwlwifi package. -ALLOW_EMPTY_${PN}-iwlwifi = "1" -ALLOW_EMPTY_${PN}-iwlwifi-misc = "1" - -# Handle package updating for the newly merged iwlwifi groupings -RPROVIDES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" -RREPLACES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" -RCONFLICTS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" - -RPROVIDES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" -RREPLACES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" -RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" - -# For ibt -LICENSE_${PN}-ibt-license = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-11-5 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-12-16 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-17 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-misc = "Firmware-ibt_firmware" - -FILES_${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware" -FILES_${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq" -FILES_${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq" -FILES_${PN}-ibt-11-5 = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc" -FILES_${PN}-ibt-12-16 = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc" -FILES_${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc" -FILES_${PN}-ibt-misc = "${nonarch_base_libdir}/firmware/ibt-*" - -RDEPENDS_${PN}-ibt-hw-37-7 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-hw-37.8 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-11-5 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-12-16 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-17 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-misc = "${PN}-ibt-license" - -ALLOW_EMPTY_${PN}-ibt= "1" -ALLOW_EMPTY_${PN}-ibt-misc = "1" - -LICENSE_${PN}-i915 = "Firmware-i915" -LICENSE_${PN}-i915-license = "Firmware-i915" -FILES_${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915" -FILES_${PN}-i915 = "${nonarch_base_libdir}/firmware/i915" -RDEPENDS_${PN}-i915 = "${PN}-i915-license" - -FILES_${PN}-adsp-sst-license = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst" -LICENSE_${PN}-adsp-sst = "Firmware-adsp_sst" -LICENSE_${PN}-adsp-sst-license = "Firmware-adsp_sst" -FILES_${PN}-adsp-sst = "${nonarch_base_libdir}/firmware/intel/dsp_fw*" -RDEPENDS_${PN}-adsp-sst = "${PN}-adsp-sst-license" - -# For QAT -LICENSE_${PN}-qat = "Firmware-qat" -LICENSE_${PN}-qat-license = "Firmware-qat" -FILES_${PN}-qat-license = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware" -FILES_${PN}-qat = "${nonarch_base_libdir}/firmware/qat*.bin" -RDEPENDS_${PN}-qat = "${PN}-qat-license" - -# For QCOM VPU/GPU and SDM845 -LICENSE_${PN}-qcom-license = "Firmware-qcom" -FILES_${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt" -FILES_${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*" -FILES_${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*" -FILES_${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw" -FILES_${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*" -FILES_${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*" -FILES_${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*" -FILES_${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.*" -RDEPENDS_${PN}-qcom-venus-1.8 = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-venus-4.2 = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-adreno-a3xx = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-adreno-a530 = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-sdm845-audio = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-sdm845-compute = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-sdm845-modem = "${PN}-qcom-license" - -FILES_${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio" - -# For other firmwares -# Maybe split out to separate packages when needed. -LICENSE_${PN} = "\ - Firmware-Abilis \ - & Firmware-agere \ - & Firmware-amdgpu \ - & Firmware-amd-ucode \ - & Firmware-atmel \ - & Firmware-ca0132 \ - & Firmware-cavium \ - & Firmware-chelsio_firmware \ - & Firmware-cw1200 \ - & Firmware-dib0700 \ - & Firmware-e100 \ - & Firmware-ene_firmware \ - & Firmware-fw_sst_0f28 \ - & Firmware-go7007 \ - & Firmware-hfi1_firmware \ - & Firmware-i2400m \ - & Firmware-ibt_firmware \ - & Firmware-it913x \ - & Firmware-IntcSST2 \ - & Firmware-kaweth \ - & Firmware-moxa \ - & Firmware-myri10ge_firmware \ - & Firmware-nvidia \ - & Firmware-OLPC \ - & Firmware-ath9k-htc \ - & Firmware-phanfw \ - & Firmware-qat \ - & Firmware-qcom \ - & Firmware-qla1280 \ - & Firmware-qla2xxx \ - & Firmware-r8a779x_usb3 \ - & Firmware-radeon \ - & Firmware-ralink_a_mediatek_company_firmware \ - & Firmware-ralink-firmware \ - & Firmware-imx-sdma_firmware \ - & Firmware-siano \ - & Firmware-tda7706-firmware \ - & Firmware-ti-connectivity \ - & Firmware-ti-keystone \ - & Firmware-ueagle-atm4-firmware \ - & Firmware-wl1251 \ - & Firmware-xc4000 \ - & Firmware-xc5000 \ - & Firmware-xc5000c \ - & WHENCE \ -" - -FILES_${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*" -FILES_${PN} += "${nonarch_base_libdir}/firmware/*" -RDEPENDS_${PN} += "${PN}-license" -RDEPENDS_${PN} += "${PN}-whence-license" - -# Make linux-firmware depend on all of the split-out packages. -# Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. -# Make linux-firmware-ibt depend on all of the split-out ibt packages. -python populate_packages_prepend () { - firmware_pkgs = oe.utils.packages_filter_out_system(d) - d.appendVar('RRECOMMENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs)) - - iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs) - d.appendVar('RRECOMMENDS_linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs)) - - ibt_pkgs = filter(lambda x: x.find('-ibt-') != -1, firmware_pkgs) - d.appendVar('RRECOMMENDS_linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs)) -} - -# Firmware files are generally not ran on the CPU, so they can be -# allarch despite being architecture specific -INSANE_SKIP = "arch" diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb new file mode 100644 index 000000000..fa0507a88 --- /dev/null +++ b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb @@ -0,0 +1,938 @@ +SUMMARY = "Firmware files for use with Linux kernel" +SECTION = "kernel" + +LICENSE = "\ + Firmware-Abilis \ + & Firmware-adsp_sst \ + & Firmware-agere \ + & Firmware-amdgpu \ + & Firmware-amd-ucode \ + & Firmware-amlogic_vdec \ + & Firmware-atheros_firmware \ + & Firmware-atmel \ + & Firmware-broadcom_bcm43xx \ + & Firmware-ca0132 \ + & Firmware-cavium \ + & Firmware-chelsio_firmware \ + & Firmware-cw1200 \ + & Firmware-cypress \ + & Firmware-dib0700 \ + & Firmware-e100 \ + & Firmware-ene_firmware \ + & Firmware-fw_sst_0f28 \ + & Firmware-go7007 \ + & Firmware-GPLv2 \ + & Firmware-hfi1_firmware \ + & Firmware-i2400m \ + & Firmware-i915 \ + & Firmware-ibt_firmware \ + & Firmware-it913x \ + & Firmware-iwlwifi_firmware \ + & Firmware-IntcSST2 \ + & Firmware-kaweth \ + & Firmware-Marvell \ + & Firmware-moxa \ + & Firmware-myri10ge_firmware \ + & Firmware-netronome \ + & Firmware-nvidia \ + & Firmware-OLPC \ + & Firmware-ath9k-htc \ + & Firmware-phanfw \ + & Firmware-qat \ + & Firmware-qcom \ + & Firmware-qla1280 \ + & Firmware-qla2xxx \ + & Firmware-qualcommAthos_ar3k \ + & Firmware-qualcommAthos_ath10k \ + & Firmware-r8a779x_usb3 \ + & Firmware-radeon \ + & Firmware-ralink_a_mediatek_company_firmware \ + & Firmware-ralink-firmware \ + & Firmware-rtlwifi_firmware \ + & Firmware-imx-sdma_firmware \ + & Firmware-siano \ + & Firmware-tda7706-firmware \ + & Firmware-ti-connectivity \ + & Firmware-ti-keystone \ + & Firmware-ueagle-atm4-firmware \ + & Firmware-via_vt6656 \ + & Firmware-wl1251 \ + & Firmware-xc4000 \ + & Firmware-xc5000 \ + & Firmware-xc5000c \ + & WHENCE \ +" + +LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ + file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ + file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ + file://LICENSE.amdgpu;md5=d357524f5099e2a3db3c1838921c593f \ + file://LICENSE.amd-ucode;md5=3c5399dc9148d7f0e1f41e34b69cf14f \ + file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \ + file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ + file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ + file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \ + file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \ + file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \ + file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \ + file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \ + file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \ + file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \ + file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \ + file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \ + file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \ + file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \ + file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \ + file://GPL-2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://LICENSE.hfi1_firmware;md5=5e7b6e586ce7339d12689e49931ad444 \ + file://LICENCE.i2400m;md5=14b901969e23c41881327c0d9e4b7d36 \ + file://LICENSE.i915;md5=2b0b2e0d20984affd4490ba2cba02570 \ + file://LICENCE.ibt_firmware;md5=fdbee1ddfe0fb7ab0b2fcd6b454a366b \ + file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \ + file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ + file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \ + file://LICENCE.iwlwifi_firmware;md5=3fd842911ea93c29cd32679aa23e1c88 \ + file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \ + file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \ + file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \ + file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \ + file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \ + file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \ + file://LICENCE.nvidia;md5=4428a922ed3ba2ceec95f076a488ce07 \ + file://LICENCE.NXP;md5=58bb8ba632cd729b9ba6183bc6aed36f \ + file://LICENCE.OLPC;md5=5b917f9d8c061991be4f6f5f108719cd \ + file://LICENCE.open-ath9k-htc-firmware;md5=1b33c9f4d17bc4d457bdb23727046837 \ + file://LICENCE.phanfw;md5=954dcec0e051f9409812b561ea743bfa \ + file://LICENCE.qat_firmware;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ + file://LICENSE.qcom;md5=164e3362a538eb11d3ac51e8e134294b \ + file://LICENCE.qla1280;md5=d6895732e622d950609093223a2c4f5d \ + file://LICENCE.qla2xxx;md5=505855e921b75f1be4a437ad9b79dff0 \ + file://LICENSE.QualcommAtheros_ar3k;md5=b5fe244fb2b532311de1472a3bc06da5 \ + file://LICENSE.QualcommAtheros_ath10k;md5=cb42b686ee5f5cb890275e4321db60a8 \ + file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \ + file://LICENSE.radeon;md5=68ec28bacb3613200bca44f404c69b16 \ + file://LICENCE.ralink_a_mediatek_company_firmware;md5=728f1a85fd53fd67fa8d7afb080bc435 \ + file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \ + file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \ + file://LICENSE.sdma_firmware;md5=51e8c19ecc2270f4b8ea30341ad63ce9 \ + file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \ + file://LICENCE.tda7706-firmware.txt;md5=835997cf5e3c131d0dddd695c7d9103e \ + file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \ + file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \ + file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \ + file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \ + file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \ + file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ + file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ + file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ + file://WHENCE;md5=cb9a66eff0464b55335d3a7374fbc51c \ + " + +# These are not common licenses, set NO_GENERIC_LICENSE for them +# so that the license files will be copied from fetched source +NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis" +NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst" +NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere" +NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu" +NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode" +NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec" +NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware" +NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel" +NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx" +NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132" +NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence" +NO_GENERIC_LICENSE[Firmware-cavium] = "LICENCE.cavium" +NO_GENERIC_LICENSE[Firmware-chelsio_firmware] = "LICENCE.chelsio_firmware" +NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200" +NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress" +NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700" +NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100" +NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware" +NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28" +NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007" +NO_GENERIC_LICENSE[Firmware-GPLv2] = "GPL-2" +NO_GENERIC_LICENSE[Firmware-hfi1_firmware] = "LICENSE.hfi1_firmware" +NO_GENERIC_LICENSE[Firmware-i2400m] = "LICENCE.i2400m" +NO_GENERIC_LICENSE[Firmware-i915] = "LICENSE.i915" +NO_GENERIC_LICENSE[Firmware-ibt_firmware] = "LICENCE.ibt_firmware" +NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2" +NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x" +NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware" +NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth" +NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell" +NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek" +NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa" +NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware" +NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome" +NO_GENERIC_LICENSE[Firmware-nvidia] = "LICENCE.nvidia" +NO_GENERIC_LICENSE[Firmware-OLPC] = "LICENCE.OLPC" +NO_GENERIC_LICENSE[Firmware-ath9k-htc] = "LICENCE.open-ath9k-htc-firmware" +NO_GENERIC_LICENSE[Firmware-phanfw] = "LICENCE.phanfw" +NO_GENERIC_LICENSE[Firmware-qat] = "LICENCE.qat_firmware" +NO_GENERIC_LICENSE[Firmware-qcom] = "LICENSE.qcom" +NO_GENERIC_LICENSE[Firmware-qla1280] = "LICENCE.qla1280" +NO_GENERIC_LICENSE[Firmware-qla2xxx] = "LICENCE.qla2xxx" +NO_GENERIC_LICENSE[Firmware-qualcommAthos_ar3k] = "LICENSE.QualcommAtheros_ar3k" +NO_GENERIC_LICENSE[Firmware-qualcommAthos_ath10k] = "LICENSE.QualcommAtheros_ath10k" +NO_GENERIC_LICENSE[Firmware-r8a779x_usb3] = "LICENCE.r8a779x_usb3" +NO_GENERIC_LICENSE[Firmware-radeon] = "LICENSE.radeon" +NO_GENERIC_LICENSE[Firmware-ralink_a_mediatek_company_firmware] = "LICENCE.ralink_a_mediatek_company_firmware" +NO_GENERIC_LICENSE[Firmware-ralink-firmware] = "LICENCE.ralink-firmware.txt" +NO_GENERIC_LICENSE[Firmware-rtlwifi_firmware] = "LICENCE.rtlwifi_firmware.txt" +NO_GENERIC_LICENSE[Firmware-siano] = "LICENCE.siano" +NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware" +NO_GENERIC_LICENSE[Firmware-tda7706-firmware] = "LICENCE.tda7706-firmware.txt" +NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity" +NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone" +NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware" +NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656" +NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251" +NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" +NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" +NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" +NO_GENERIC_LICENSE[WHENCE] = "WHENCE" + +PE = "1" + +SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz" + +SRC_URI[md5sum] = "229a93395f4033da68429f165a62b952" +SRC_URI[sha256sum] = "6dd7cba25d694c031f65529b9027cc8faaffaddfae70a4e3b58c2e4a0af3bfa8" + +inherit allarch + +CLEANBROKEN = "1" + +do_compile() { + : +} + +do_install() { + oe_runmake 'DESTDIR=${D}' 'FIRMWAREDIR=${nonarch_base_libdir}/firmware' install + cp GPL-2 LICEN[CS]E.* WHENCE ${D}${nonarch_base_libdir}/firmware/ +} + + +PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ + ${PN}-mt7601u-license ${PN}-mt7601u \ + ${PN}-radeon-license ${PN}-radeon \ + ${PN}-marvell-license ${PN}-pcie8897 ${PN}-pcie8997 \ + ${PN}-sd8686 ${PN}-sd8688 ${PN}-sd8787 ${PN}-sd8797 ${PN}-sd8801 ${PN}-sd8887 ${PN}-sd8897 \ + ${PN}-usb8997 \ + ${PN}-ti-connectivity-license ${PN}-wlcommon ${PN}-wl12xx ${PN}-wl18xx \ + ${PN}-vt6656-license ${PN}-vt6656 \ + ${PN}-rtl-license ${PN}-rtl8188 ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su ${PN}-rtl8723 ${PN}-rtl8821 \ + ${PN}-rtl8168 \ + ${PN}-cypress-license \ + ${PN}-broadcom-license \ + ${PN}-bcm-0bb4-0306 \ + ${PN}-bcm43143 \ + ${PN}-bcm43236b \ + ${PN}-bcm43241b0 \ + ${PN}-bcm43241b4 \ + ${PN}-bcm43241b5 \ + ${PN}-bcm43242a \ + ${PN}-bcm4329 \ + ${PN}-bcm4329-fullmac \ + ${PN}-bcm4330 \ + ${PN}-bcm4334 \ + ${PN}-bcm43340 \ + ${PN}-bcm4335 \ + ${PN}-bcm43362 \ + ${PN}-bcm4339 \ + ${PN}-bcm43430 \ + ${PN}-bcm43430a0 \ + ${PN}-bcm43455 \ + ${PN}-bcm4350 \ + ${PN}-bcm4350c2 \ + ${PN}-bcm4354 \ + ${PN}-bcm4356 \ + ${PN}-bcm4356-pcie \ + ${PN}-bcm43569 \ + ${PN}-bcm43570 \ + ${PN}-bcm4358 \ + ${PN}-bcm43602 \ + ${PN}-bcm4366b \ + ${PN}-bcm4366c \ + ${PN}-bcm4371 \ + ${PN}-bcm4373 \ + ${PN}-bcm43xx \ + ${PN}-bcm43xx-hdr \ + ${PN}-atheros-license ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k \ + ${PN}-gplv2-license ${PN}-carl9170 \ + ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-qca \ + \ + ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \ + \ + ${PN}-iwlwifi-license ${PN}-iwlwifi \ + ${PN}-iwlwifi-135-6 \ + ${PN}-iwlwifi-3160-7 ${PN}-iwlwifi-3160-8 ${PN}-iwlwifi-3160-9 \ + ${PN}-iwlwifi-3160-10 ${PN}-iwlwifi-3160-12 ${PN}-iwlwifi-3160-13 \ + ${PN}-iwlwifi-3160-16 ${PN}-iwlwifi-3160-17 \ + ${PN}-iwlwifi-6000-4 ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2a-6 \ + ${PN}-iwlwifi-6000g2b-5 ${PN}-iwlwifi-6000g2b-6 \ + ${PN}-iwlwifi-6050-4 ${PN}-iwlwifi-6050-5 \ + ${PN}-iwlwifi-7260 \ + ${PN}-iwlwifi-7265 \ + ${PN}-iwlwifi-7265d ${PN}-iwlwifi-8000c ${PN}-iwlwifi-8265 \ + ${PN}-iwlwifi-9000 \ + ${PN}-iwlwifi-misc \ + ${PN}-ibt-license ${PN}-ibt ${PN}-ibt-misc \ + ${PN}-ibt-11-5 ${PN}-ibt-12-16 ${PN}-ibt-hw-37-7 ${PN}-ibt-hw-37-8 \ + ${PN}-ibt-17 \ + ${PN}-i915-license ${PN}-i915 \ + ${PN}-adsp-sst-license ${PN}-adsp-sst \ + ${PN}-bnx2-mips \ + ${PN}-liquidio \ + ${PN}-netronome-license ${PN}-netronome \ + ${PN}-qat ${PN}-qat-license \ + ${PN}-qcom-license \ + ${PN}-qcom-venus-1.8 ${PN}-qcom-venus-4.2 \ + ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a530 ${PN}-qcom-adreno-a630 \ + ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute ${PN}-qcom-sdm845-modem \ + ${PN}-whence-license \ + ${PN}-license \ + " + +# For atheros +LICENSE_${PN}-ar9170 = "Firmware-atheros_firmware" +LICENSE_${PN}-ath6k = "Firmware-atheros_firmware" +LICENSE_${PN}-ath9k = "Firmware-atheros_firmware" +LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware" + +FILES_${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware" +FILES_${PN}-ar9170 = " \ + ${nonarch_base_libdir}/firmware/ar9170*.fw \ +" +FILES_${PN}-ath6k = " \ + ${nonarch_base_libdir}/firmware/ath6k \ +" +FILES_${PN}-ath9k = " \ + ${nonarch_base_libdir}/firmware/ar9271.fw \ + ${nonarch_base_libdir}/firmware/ar7010*.fw \ + ${nonarch_base_libdir}/firmware/htc_9271.fw \ + ${nonarch_base_libdir}/firmware/htc_7010.fw \ + ${nonarch_base_libdir}/firmware/ath9k_htc/htc_7010-1.4.0.fw \ + ${nonarch_base_libdir}/firmware/ath9k_htc/htc_9271-1.4.0.fw \ +" + +RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license" +RDEPENDS_${PN}-ath6k += "${PN}-atheros-license" +RDEPENDS_${PN}-ath9k += "${PN}-atheros-license" + +# For carl9170 +LICENSE_${PN}-carl9170 = "Firmware-GPLv2" +LICENSE_${PN}-gplv2-license = "Firmware-GPLv2" + +FILES_${PN}-gplv2-license = "${nonarch_base_libdir}/firmware/GPL-2" +FILES_${PN}-carl9170 = " \ + ${nonarch_base_libdir}/firmware/carl9170*.fw \ +" + +RDEPENDS_${PN}-carl9170 += "${PN}-gplv2-license" + +# For QualCommAthos +LICENSE_${PN}-ar3k = "Firmware-qualcommAthos_ar3k" +LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k" +LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k" +LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" +LICENSE_${PN}-qca = "Firmware-qualcommAthos_ath10k" + +FILES_${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k" +FILES_${PN}-ar3k = " \ + ${nonarch_base_libdir}/firmware/ar3k \ +" + +FILES_${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k" +FILES_${PN}-ath10k = " \ + ${nonarch_base_libdir}/firmware/ath10k \ +" + +FILES_${PN}-qca = " \ + ${nonarch_base_libdir}/firmware/qca \ +" + +RDEPENDS_${PN}-ar3k += "${PN}-ar3k-license" +RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license" +RDEPENDS_${PN}-qca += "${PN}-ath10k-license" + +# For ralink +LICENSE_${PN}-ralink = "Firmware-ralink-firmware" +LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware" + +FILES_${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt" +FILES_${PN}-ralink = " \ + ${nonarch_base_libdir}/firmware/rt*.bin \ +" + +RDEPENDS_${PN}-ralink += "${PN}-ralink-license" + +# For mediatek MT7601U +LICENSE_${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware" +LICENSE_${PN}-mt7601u-license = "Firmware-ralink_a_mediatek_company_firmware" + +FILES_${PN}-mt7601u-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware" +FILES_${PN}-mt7601u = " \ + ${nonarch_base_libdir}/firmware/mt7601u.bin \ +" + +RDEPENDS_${PN}-mt7601u += "${PN}-mt7601u-license" + +# For radeon +LICENSE_${PN}-radeon = "Firmware-radeon" +LICENSE_${PN}-radeon-license = "Firmware-radeon" + +FILES_${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon" +FILES_${PN}-radeon = " \ + ${nonarch_base_libdir}/firmware/radeon \ +" + +RDEPENDS_${PN}-radeon += "${PN}-radeon-license" + +# For marvell +LICENSE_${PN}-pcie8897 = "Firmware-Marvell" +LICENSE_${PN}-pcie8997 = "Firmware-Marvell" +LICENSE_${PN}-sd8686 = "Firmware-Marvell" +LICENSE_${PN}-sd8688 = "Firmware-Marvell" +LICENSE_${PN}-sd8787 = "Firmware-Marvell" +LICENSE_${PN}-sd8797 = "Firmware-Marvell" +LICENSE_${PN}-sd8801 = "Firmware-Marvell" +LICENSE_${PN}-sd8887 = "Firmware-Marvell" +LICENSE_${PN}-sd8897 = "Firmware-Marvell" +LICENSE_${PN}-usb8997 = "Firmware-Marvell" +LICENSE_${PN}-marvell-license = "Firmware-Marvell" + +FILES_${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell" +FILES_${PN}-pcie8897 = " \ + ${nonarch_base_libdir}/firmware/mrvl/pcie8897_uapsta.bin \ +" +FILES_${PN}-pcie8997 = " \ + ${nonarch_base_libdir}/firmware/mrvl/pcie8997_wlan_v4.bin \ + ${nonarch_base_libdir}/firmware/mrvl/pcieuart8997_combo_v4.bin \ + ${nonarch_base_libdir}/firmware/mrvl/pcieusb8997_combo_v4.bin \ +" +FILES_${PN}-sd8686 = " \ + ${nonarch_base_libdir}/firmware/libertas/sd8686_v9* \ + ${nonarch_base_libdir}/firmware/sd8686* \ +" +FILES_${PN}-sd8688 = " \ + ${nonarch_base_libdir}/firmware/libertas/sd8688* \ + ${nonarch_base_libdir}/firmware/mrvl/sd8688* \ +" +FILES_${PN}-sd8787 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8787_uapsta.bin \ +" +FILES_${PN}-sd8797 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8797_uapsta.bin \ +" +FILES_${PN}-sd8801 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8801_uapsta.bin \ +" +FILES_${PN}-sd8887 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8887_uapsta.bin \ +" +FILES_${PN}-sd8897 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8897_uapsta.bin \ +" +FILES_${PN}-usb8997 = " \ + ${nonarch_base_libdir}/firmware/mrvl/usbusb8997_combo_v4.bin \ +" + +RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8688 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8787 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8801 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8887 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8897 += "${PN}-marvell-license" +RDEPENDS_${PN}-usb8997 += "${PN}-marvell-license" + +# For netronome +LICENSE_${PN}-netronome = "Firmware-netronome" + +FILES_${PN}-netronome-license = " \ + ${nonarch_base_libdir}/firmware/LICENCE.Netronome \ +" +FILES_${PN}-netronome = " \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0081*.nffw \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0099*.nffw \ +" + +RDEPENDS_${PN}-netronome += "${PN}-netronome-license" + +# For rtl +LICENSE_${PN}-rtl8188 = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8723 = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8821 = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8168 = "WHENCE" + +FILES_${PN}-rtl-license = " \ + ${nonarch_base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \ +" +FILES_${PN}-rtl8188 = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8188*.bin \ +" +FILES_${PN}-rtl8192cu = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \ +" +FILES_${PN}-rtl8192ce = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \ +" +FILES_${PN}-rtl8192su = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8712u.bin \ +" +FILES_${PN}-rtl8723 = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8723*.bin \ +" +FILES_${PN}-rtl8821 = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8821*.bin \ +" +FILES_${PN}-rtl8168 = " \ + ${nonarch_base_libdir}/firmware/rtl_nic/rtl8168*.fw \ +" + +RDEPENDS_${PN}-rtl8188 += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8192ce += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8192cu += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8192su = "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8723 += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8821 += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8168 += "${PN}-whence-license" + +# For ti-connectivity +LICENSE_${PN}-wlcommon = "Firmware-ti-connectivity" +LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity" +LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity" +LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity" + +FILES_${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity" +# wl18xx optionally needs wl1271-nvs.bin (which itself is a symlink to +# wl127x-nvs.bin) - see linux/drivers/net/wireless/ti/wlcore/sdio.c +# and drivers/net/wireless/ti/wlcore/spi.c. +# While they're optional and actually only used to override the MAC +# address on wl18xx, driver loading will delay (by udev timout - 60s) +# if not there. So let's make it available always. Because it's a +# symlink, both need to go to wlcommon. +FILES_${PN}-wlcommon = " \ + ${nonarch_base_libdir}/firmware/ti-connectivity/TI* \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl127x-nvs.bin \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl1271-nvs.bin \ +" +FILES_${PN}-wl12xx = " \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl12* \ +" +FILES_${PN}-wl18xx = " \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl18* \ +" + +RDEPENDS_${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" +RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" + +# For vt6656 +LICENSE_${PN}-vt6656 = "Firmware-via_vt6656" +LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656" + +FILES_${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656" +FILES_${PN}-vt6656 = " \ + ${nonarch_base_libdir}/firmware/vntwusb.fw \ +" + +RDEPENDS_${PN}-vt6656 = "${PN}-vt6656-license" + +# For broadcom + +# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e " \${PN}-$pkg \\"; done | sort -u + +LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx" +FILES_${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx" + +# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES_\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES + +FILES_${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw" +FILES_${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw" +FILES_${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin" +FILES_${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin" +FILES_${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin" +FILES_${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*" +FILES_${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin" +FILES_${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin" +FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin" +FILES_${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin" +FILES_${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin" +FILES_${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin" +FILES_${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin" +FILES_${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \ + ${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \ +" +FILES_${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*" +FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.*" +FILES_${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin" +FILES_${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin" +FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.bin" +FILES_${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin" +FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin" +FILES_${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin" +FILES_${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \ + ${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \ +" +FILES_${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin" +FILES_${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin" +FILES_${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin" + +# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE_\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done +# Currently 1st one and last 6 have cypress LICENSE + +LICENSE_${PN}-bcm43xx = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43xx += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43xx-hdr += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4329-fullmac += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43236b = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43236b += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4329 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4330 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4334 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4335 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4335 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4339 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4339 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43241b0 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43241b4 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43241b5 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43242a = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43242a += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43143 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43143 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43430a0 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4350c2 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4350 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4350 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4356 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4356 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43569 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43569 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43570 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43570 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4358 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4358 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43602 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43602 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4366b = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4366b += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4366c = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4366c += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4371 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4371 += "${PN}-broadcom-license" + +# For broadcom cypress + +LICENSE_${PN}-cypress-license = "Firmware-cypress" +FILES_${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress" + +FILES_${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd" +FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.*" +FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.*" +FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.*" +FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin" +FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.*" +FILES_${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \ + ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \ +" + +LICENSE_${PN}-bcm-0bb4-0306 = "Firmware-cypress" +RDEPENDS_${PN}-bcm-0bb4-0306 += "${PN}-cypress-license" +LICENSE_${PN}-bcm43340 = "Firmware-cypress" +RDEPENDS_${PN}-bcm43340 += "${PN}-cypress-license" +LICENSE_${PN}-bcm43362 = "Firmware-cypress" +RDEPENDS_${PN}-bcm43362 += "${PN}-cypress-license" +LICENSE_${PN}-bcm43430 = "Firmware-cypress" +RDEPENDS_${PN}-bcm43430 += "${PN}-cypress-license" +LICENSE_${PN}-bcm4354 = "Firmware-cypress" +RDEPENDS_${PN}-bcm4354 += "${PN}-cypress-license" +LICENSE_${PN}-bcm4356-pcie = "Firmware-cypress" +RDEPENDS_${PN}-bcm4356-pcie += "${PN}-cypress-license" +LICENSE_${PN}-bcm4373 = "Firmware-cypress" +RDEPENDS_${PN}-bcm4373 += "${PN}-cypress-license" + +# For Broadcom bnx2-mips +# +# which is a separate case to the other Broadcom firmwares since its +# license is contained in the shared WHENCE file. + +LICENSE_${PN}-bnx2-mips = "WHENCE" +LICENSE_${PN}-whence-license = "WHENCE" + +FILES_${PN}-bnx2-mips = "${nonarch_base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw" +FILES_${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE" + +RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license" + +# For imx-sdma +LICENSE_${PN}-imx-sdma-imx6q = "Firmware-imx-sdma_firmware" +LICENSE_${PN}-imx-sdma-imx7d = "Firmware-imx-sdma_firmware" +LICENSE_${PN}-imx-sdma-license = "Firmware-imx-sdma_firmware" + +FILES_${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin" + +RPROVIDES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" +RREPLACES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" +RCONFLICTS_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" + +FILES_${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin" + +FILES_${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware" + +RDEPENDS_${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license" +RDEPENDS_${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license" + +# For iwlwifi +LICENSE_${PN}-iwlwifi = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-135-6 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-7 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-8 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-9 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-10 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-12 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-13 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-16 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-17 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000-4 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6050-4 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6050-5 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-7260 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-7265 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-7265d = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-8000c = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-8265 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-9000 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-misc = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-license = "Firmware-iwlwifi_firmware" + + +FILES_${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware" +FILES_${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode" +FILES_${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode" +FILES_${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode" +FILES_${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode" +FILES_${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode" +FILES_${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode" +FILES_${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode" +FILES_${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode" +FILES_${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode" +FILES_${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode" +FILES_${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode" +FILES_${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode" +FILES_${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode" +FILES_${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode" +FILES_${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode" +FILES_${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode" +FILES_${PN}-iwlwifi-7260 = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode" +FILES_${PN}-iwlwifi-7265 = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode" +FILES_${PN}-iwlwifi-7265d = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode" +FILES_${PN}-iwlwifi-8000c = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode" +FILES_${PN}-iwlwifi-8265 = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode" +FILES_${PN}-iwlwifi-9000 = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode" +FILES_${PN}-iwlwifi-misc = "${nonarch_base_libdir}/firmware/iwlwifi-*.ucode" + +RDEPENDS_${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-7 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-8 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-9 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-10 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-12 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-13 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-16 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-17 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000-4 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6050-4 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6050-5 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-7265d = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-8000c = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-8265 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-9000 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-misc = "${PN}-iwlwifi-license" + +# -iwlwifi-misc is a "catch all" package that includes all the iwlwifi +# firmwares that are not already included in other -iwlwifi- packages. +# -iwlwifi is a virtual package that depends upon all iwlwifi packages. +# These are distinct in order to allow the -misc firmwares to be installed +# without pulling in every other iwlwifi package. +ALLOW_EMPTY_${PN}-iwlwifi = "1" +ALLOW_EMPTY_${PN}-iwlwifi-misc = "1" + +# Handle package updating for the newly merged iwlwifi groupings +RPROVIDES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" +RREPLACES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" +RCONFLICTS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" + +RPROVIDES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" +RREPLACES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" +RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" + +# For ibt +LICENSE_${PN}-ibt-license = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-11-5 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-12-16 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-17 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-misc = "Firmware-ibt_firmware" + +FILES_${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware" +FILES_${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq" +FILES_${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq" +FILES_${PN}-ibt-11-5 = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc" +FILES_${PN}-ibt-12-16 = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc" +FILES_${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc" +FILES_${PN}-ibt-misc = "${nonarch_base_libdir}/firmware/ibt-*" + +RDEPENDS_${PN}-ibt-hw-37-7 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-hw-37.8 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-11-5 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-12-16 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-17 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-misc = "${PN}-ibt-license" + +ALLOW_EMPTY_${PN}-ibt= "1" +ALLOW_EMPTY_${PN}-ibt-misc = "1" + +LICENSE_${PN}-i915 = "Firmware-i915" +LICENSE_${PN}-i915-license = "Firmware-i915" +FILES_${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915" +FILES_${PN}-i915 = "${nonarch_base_libdir}/firmware/i915" +RDEPENDS_${PN}-i915 = "${PN}-i915-license" + +FILES_${PN}-adsp-sst-license = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst" +LICENSE_${PN}-adsp-sst = "Firmware-adsp_sst" +LICENSE_${PN}-adsp-sst-license = "Firmware-adsp_sst" +FILES_${PN}-adsp-sst = "${nonarch_base_libdir}/firmware/intel/dsp_fw*" +RDEPENDS_${PN}-adsp-sst = "${PN}-adsp-sst-license" + +# For QAT +LICENSE_${PN}-qat = "Firmware-qat" +LICENSE_${PN}-qat-license = "Firmware-qat" +FILES_${PN}-qat-license = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware" +FILES_${PN}-qat = "${nonarch_base_libdir}/firmware/qat*.bin" +RDEPENDS_${PN}-qat = "${PN}-qat-license" + +# For QCOM VPU/GPU and SDM845 +LICENSE_${PN}-qcom-license = "Firmware-qcom" +FILES_${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt" +FILES_${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*" +FILES_${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*" +FILES_${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw" +FILES_${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*" +FILES_${PN}-qcom-adreno-a630 = "${nonarch_base_libdir}/firmware/qcom/a630*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*" +FILES_${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*" +FILES_${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*" +FILES_${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/wlanmdsp.mbn" +RDEPENDS_${PN}-qcom-venus-1.8 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-venus-4.2 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-adreno-a3xx = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-adreno-a530 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-adreno-a630 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-sdm845-audio = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-sdm845-compute = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-sdm845-modem = "${PN}-qcom-license" + +FILES_${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio" + +# For other firmwares +# Maybe split out to separate packages when needed. +LICENSE_${PN} = "\ + Firmware-Abilis \ + & Firmware-agere \ + & Firmware-amdgpu \ + & Firmware-amd-ucode \ + & Firmware-atmel \ + & Firmware-ca0132 \ + & Firmware-cavium \ + & Firmware-chelsio_firmware \ + & Firmware-cw1200 \ + & Firmware-dib0700 \ + & Firmware-e100 \ + & Firmware-ene_firmware \ + & Firmware-fw_sst_0f28 \ + & Firmware-go7007 \ + & Firmware-hfi1_firmware \ + & Firmware-i2400m \ + & Firmware-ibt_firmware \ + & Firmware-it913x \ + & Firmware-IntcSST2 \ + & Firmware-kaweth \ + & Firmware-moxa \ + & Firmware-myri10ge_firmware \ + & Firmware-nvidia \ + & Firmware-OLPC \ + & Firmware-ath9k-htc \ + & Firmware-phanfw \ + & Firmware-qat \ + & Firmware-qcom \ + & Firmware-qla1280 \ + & Firmware-qla2xxx \ + & Firmware-r8a779x_usb3 \ + & Firmware-radeon \ + & Firmware-ralink_a_mediatek_company_firmware \ + & Firmware-ralink-firmware \ + & Firmware-imx-sdma_firmware \ + & Firmware-siano \ + & Firmware-tda7706-firmware \ + & Firmware-ti-connectivity \ + & Firmware-ti-keystone \ + & Firmware-ueagle-atm4-firmware \ + & Firmware-wl1251 \ + & Firmware-xc4000 \ + & Firmware-xc5000 \ + & Firmware-xc5000c \ + & WHENCE \ +" + +FILES_${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*" +FILES_${PN} += "${nonarch_base_libdir}/firmware/*" +RDEPENDS_${PN} += "${PN}-license" +RDEPENDS_${PN} += "${PN}-whence-license" + +# Make linux-firmware depend on all of the split-out packages. +# Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. +# Make linux-firmware-ibt depend on all of the split-out ibt packages. +python populate_packages_prepend () { + firmware_pkgs = oe.utils.packages_filter_out_system(d) + d.appendVar('RRECOMMENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs)) + + iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs) + d.appendVar('RRECOMMENDS_linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs)) + + ibt_pkgs = filter(lambda x: x.find('-ibt-') != -1, firmware_pkgs) + d.appendVar('RRECOMMENDS_linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs)) +} + +# Firmware files are generally not ran on the CPU, so they can be +# allarch despite being architecture specific +INSANE_SKIP = "arch" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb index d550bf537..f6acb291f 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb @@ -11,13 +11,13 @@ python () { raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "c7609ad17612bd59c1cadb53faf23be8fd7250ef" -SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" +SRCREV_machine ?= "5db46f8cf9b485f320287147ce593789ee0b5447" +SRCREV_meta ?= "4ed477131e6e508d335d70c070eb84a5c3d673e5" 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.4;destsuffix=${KMETA}" -LINUX_VERSION ?= "5.4.34" +LINUX_VERSION ?= "5.4.40" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb index 078a15cec..f797aa1df 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb @@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig" require recipes-kernel/linux/linux-yocto.inc -LINUX_VERSION ?= "5.4.34" +LINUX_VERSION ?= "5.4.40" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" @@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine_qemuarm ?= "ba0b1e26460cb764005af5758334fc1777760dfd" -SRCREV_machine ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" +SRCREV_machine_qemuarm ?= "b84f9483ed29096cd9bb6b1922666e8a275dd496" +SRCREV_machine ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_meta ?= "4ed477131e6e508d335d70c070eb84a5c3d673e5" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb index e22509469..65afdc32f 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb @@ -12,16 +12,16 @@ KBRANCH_qemux86 ?= "v5.4/standard/base" KBRANCH_qemux86-64 ?= "v5.4/standard/base" KBRANCH_qemumips64 ?= "v5.4/standard/mti-malta64" -SRCREV_machine_qemuarm ?= "440e41f2f471ba2bb5e3c801ffc140523bdd59b1" -SRCREV_machine_qemuarm64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemumips ?= "941c329c8810e946840bd2f4ab983a94651e563f" -SRCREV_machine_qemuppc ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemuriscv64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemux86 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemux86-64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemumips64 ?= "b73834a11da2d4327cc3cb9f33fa3540f24d56aa" -SRCREV_machine ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" +SRCREV_machine_qemuarm ?= "cbe84f8dbb7fe4a67a337795d81cca735346f4c8" +SRCREV_machine_qemuarm64 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemumips ?= "b0ad6cf1238ec97860a9e26a6da1aa431c5b96fb" +SRCREV_machine_qemuppc ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemuriscv64 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemux86 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemux86-64 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemumips64 ?= "5247564ab2b897a678ed0cd8fb2905c918fc64df" +SRCREV_machine ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_meta ?= "4ed477131e6e508d335d70c070eb84a5c3d673e5" # remap qemuarm to qemuarma15 for the 5.4 kernel # KMACHINE_qemuarm ?= "qemuarma15" @@ -30,7 +30,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" -LINUX_VERSION ?= "5.4.34" +LINUX_VERSION ?= "5.4.40" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch new file mode 100644 index 000000000..58f4d2919 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch @@ -0,0 +1,853 @@ +From a2cc0e06330e55eefe668f7d6370de6d3177a907 Mon Sep 17 00:00:00 2001 +From: Mathieu Desnoyers +Date: Tue, 5 May 2020 13:38:31 -0400 +Subject: [PATCH] Update for kernel 5.7: use vmalloc_sync_mappings on kernels + >= 5.7 + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/da0fcb1497ff2437407883647a8a0bba12bd0f91] + +Signed-off-by: Mathieu Desnoyers +Signed-off-by: Ovidiu Panait +--- + lib/ringbuffer/ring_buffer_backend.c | 4 +-- + lttng-abi.c | 4 +-- + lttng-context-callstack.c | 2 +- + lttng-context-cgroup-ns.c | 2 +- + lttng-context-cpu-id.c | 2 +- + lttng-context-egid.c | 2 +- + lttng-context-euid.c | 2 +- + lttng-context-gid.c | 2 +- + lttng-context-hostname.c | 2 +- + lttng-context-interruptible.c | 2 +- + lttng-context-ipc-ns.c | 2 +- + lttng-context-migratable.c | 2 +- + lttng-context-mnt-ns.c | 2 +- + lttng-context-need-reschedule.c | 2 +- + lttng-context-net-ns.c | 2 +- + lttng-context-nice.c | 2 +- + lttng-context-perf-counters.c | 2 +- + lttng-context-pid-ns.c | 2 +- + lttng-context-pid.c | 2 +- + lttng-context-ppid.c | 2 +- + lttng-context-preemptible.c | 2 +- + lttng-context-prio.c | 2 +- + lttng-context-procname.c | 2 +- + lttng-context-sgid.c | 2 +- + lttng-context-suid.c | 2 +- + lttng-context-tid.c | 2 +- + lttng-context-uid.c | 2 +- + lttng-context-user-ns.c | 2 +- + lttng-context-uts-ns.c | 2 +- + lttng-context-vegid.c | 2 +- + lttng-context-veuid.c | 2 +- + lttng-context-vgid.c | 2 +- + lttng-context-vpid.c | 2 +- + lttng-context-vppid.c | 2 +- + lttng-context-vsgid.c | 2 +- + lttng-context-vsuid.c | 2 +- + lttng-context-vtid.c | 2 +- + lttng-context-vuid.c | 2 +- + lttng-context.c | 2 +- + lttng-events.c | 10 +++--- + lttng-ring-buffer-client.h | 4 +-- + lttng-ring-buffer-metadata-client.h | 4 +-- + lttng-syscalls.c | 2 +- + probes/lttng-kprobes.c | 2 +- + probes/lttng-kretprobes.c | 2 +- + probes/lttng-tracepoint-event-impl.h | 4 +-- + probes/lttng-uprobes.c | 2 +- + probes/lttng.c | 2 +- + tests/probes/lttng-test.c | 2 +- + wrapper/vmalloc.h | 49 ++++++++++++++++++++++++++-- + 50 files changed, 104 insertions(+), 61 deletions(-) + +diff --git a/lib/ringbuffer/ring_buffer_backend.c b/lib/ringbuffer/ring_buffer_backend.c +index d4bec25..d232b7f 100644 +--- a/lib/ringbuffer/ring_buffer_backend.c ++++ b/lib/ringbuffer/ring_buffer_backend.c +@@ -17,7 +17,7 @@ + #include + + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -156,7 +156,7 @@ int lib_ring_buffer_backend_allocate(const struct lib_ring_buffer_config *config + * If kmalloc ever uses vmalloc underneath, make sure the buffer pages + * will not fault. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + wrapper_clear_current_oom_origin(); + vfree(pages); + return 0; +diff --git a/lttng-abi.c b/lttng-abi.c +index b63e376..826ecab 100644 +--- a/lttng-abi.c ++++ b/lttng-abi.c +@@ -30,7 +30,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -1938,7 +1938,7 @@ int __init lttng_abi_init(void) + { + int ret = 0; + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_clock_ref(); + + ret = lttng_tp_mempool_init(); +diff --git a/lttng-context-callstack.c b/lttng-context-callstack.c +index 195990a..ba35a39 100644 +--- a/lttng-context-callstack.c ++++ b/lttng-context-callstack.c +@@ -141,7 +141,7 @@ int __lttng_add_callstack_generic(struct lttng_ctx **ctx, + field->record = lttng_callstack_record; + field->priv = fdata; + field->destroy = lttng_callstack_destroy; +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + + error_create: +diff --git a/lttng-context-cgroup-ns.c b/lttng-context-cgroup-ns.c +index 81486e5..f324b7e 100644 +--- a/lttng-context-cgroup-ns.c ++++ b/lttng-context-cgroup-ns.c +@@ -97,7 +97,7 @@ int lttng_add_cgroup_ns_to_ctx(struct lttng_ctx **ctx) + field->record = cgroup_ns_record; + field->get_value = cgroup_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_cgroup_ns_to_ctx); +diff --git a/lttng-context-cpu-id.c b/lttng-context-cpu-id.c +index 3778225..6e2f3f4 100644 +--- a/lttng-context-cpu-id.c ++++ b/lttng-context-cpu-id.c +@@ -68,7 +68,7 @@ int lttng_add_cpu_id_to_ctx(struct lttng_ctx **ctx) + field->record = cpu_id_record; + field->get_value = cpu_id_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_cpu_id_to_ctx); +diff --git a/lttng-context-egid.c b/lttng-context-egid.c +index 51536e2..bdcebb9 100644 +--- a/lttng-context-egid.c ++++ b/lttng-context-egid.c +@@ -70,7 +70,7 @@ int lttng_add_egid_to_ctx(struct lttng_ctx **ctx) + field->record = egid_record; + field->get_value = egid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_egid_to_ctx); +diff --git a/lttng-context-euid.c b/lttng-context-euid.c +index 1bcd53f..c2b8dcd 100644 +--- a/lttng-context-euid.c ++++ b/lttng-context-euid.c +@@ -70,7 +70,7 @@ int lttng_add_euid_to_ctx(struct lttng_ctx **ctx) + field->record = euid_record; + field->get_value = euid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_euid_to_ctx); +diff --git a/lttng-context-gid.c b/lttng-context-gid.c +index da54207..c355e8c 100644 +--- a/lttng-context-gid.c ++++ b/lttng-context-gid.c +@@ -70,7 +70,7 @@ int lttng_add_gid_to_ctx(struct lttng_ctx **ctx) + field->record = gid_record; + field->get_value = gid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_gid_to_ctx); +diff --git a/lttng-context-hostname.c b/lttng-context-hostname.c +index e485aa9..17dbd57 100644 +--- a/lttng-context-hostname.c ++++ b/lttng-context-hostname.c +@@ -101,7 +101,7 @@ int lttng_add_hostname_to_ctx(struct lttng_ctx **ctx) + field->record = hostname_record; + field->get_value = hostname_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_hostname_to_ctx); +diff --git a/lttng-context-interruptible.c b/lttng-context-interruptible.c +index f3da199..8bd279a 100644 +--- a/lttng-context-interruptible.c ++++ b/lttng-context-interruptible.c +@@ -75,7 +75,7 @@ int lttng_add_interruptible_to_ctx(struct lttng_ctx **ctx) + field->record = interruptible_record; + field->get_value = interruptible_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_interruptible_to_ctx); +diff --git a/lttng-context-ipc-ns.c b/lttng-context-ipc-ns.c +index 78d5966..40b901b 100644 +--- a/lttng-context-ipc-ns.c ++++ b/lttng-context-ipc-ns.c +@@ -96,7 +96,7 @@ int lttng_add_ipc_ns_to_ctx(struct lttng_ctx **ctx) + field->record = ipc_ns_record; + field->get_value = ipc_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_ipc_ns_to_ctx); +diff --git a/lttng-context-migratable.c b/lttng-context-migratable.c +index e3d8ede..65154b8 100644 +--- a/lttng-context-migratable.c ++++ b/lttng-context-migratable.c +@@ -68,7 +68,7 @@ int lttng_add_migratable_to_ctx(struct lttng_ctx **ctx) + field->record = migratable_record; + field->get_value = migratable_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_migratable_to_ctx); +diff --git a/lttng-context-mnt-ns.c b/lttng-context-mnt-ns.c +index b5bb955..cb59776 100644 +--- a/lttng-context-mnt-ns.c ++++ b/lttng-context-mnt-ns.c +@@ -98,7 +98,7 @@ int lttng_add_mnt_ns_to_ctx(struct lttng_ctx **ctx) + field->record = mnt_ns_record; + field->get_value = mnt_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_mnt_ns_to_ctx); +diff --git a/lttng-context-need-reschedule.c b/lttng-context-need-reschedule.c +index f29fb28..94efaa5 100644 +--- a/lttng-context-need-reschedule.c ++++ b/lttng-context-need-reschedule.c +@@ -68,7 +68,7 @@ int lttng_add_need_reschedule_to_ctx(struct lttng_ctx **ctx) + field->record = need_reschedule_record; + field->get_value = need_reschedule_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_need_reschedule_to_ctx); +diff --git a/lttng-context-net-ns.c b/lttng-context-net-ns.c +index 6694037..37de09f 100644 +--- a/lttng-context-net-ns.c ++++ b/lttng-context-net-ns.c +@@ -97,7 +97,7 @@ int lttng_add_net_ns_to_ctx(struct lttng_ctx **ctx) + field->record = net_ns_record; + field->get_value = net_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_net_ns_to_ctx); +diff --git a/lttng-context-nice.c b/lttng-context-nice.c +index 563e805..acaba85 100644 +--- a/lttng-context-nice.c ++++ b/lttng-context-nice.c +@@ -68,7 +68,7 @@ int lttng_add_nice_to_ctx(struct lttng_ctx **ctx) + field->record = nice_record; + field->get_value = nice_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_nice_to_ctx); +diff --git a/lttng-context-perf-counters.c b/lttng-context-perf-counters.c +index 43c4077..6b04d12 100644 +--- a/lttng-context-perf-counters.c ++++ b/lttng-context-perf-counters.c +@@ -321,7 +321,7 @@ int lttng_add_perf_counter_to_ctx(uint32_t type, + field->u.perf_counter = perf_field; + lttng_context_update(*ctx); + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) +diff --git a/lttng-context-pid-ns.c b/lttng-context-pid-ns.c +index f039f26..ccf629d 100644 +--- a/lttng-context-pid-ns.c ++++ b/lttng-context-pid-ns.c +@@ -98,7 +98,7 @@ int lttng_add_pid_ns_to_ctx(struct lttng_ctx **ctx) + field->record = pid_ns_record; + field->get_value = pid_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_pid_ns_to_ctx); +diff --git a/lttng-context-pid.c b/lttng-context-pid.c +index b3caabb..326eabe 100644 +--- a/lttng-context-pid.c ++++ b/lttng-context-pid.c +@@ -68,7 +68,7 @@ int lttng_add_pid_to_ctx(struct lttng_ctx **ctx) + field->record = pid_record; + field->get_value = pid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_pid_to_ctx); +diff --git a/lttng-context-ppid.c b/lttng-context-ppid.c +index ef84ad1..ff25288 100644 +--- a/lttng-context-ppid.c ++++ b/lttng-context-ppid.c +@@ -90,7 +90,7 @@ int lttng_add_ppid_to_ctx(struct lttng_ctx **ctx) + field->record = ppid_record; + field->get_value = ppid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_ppid_to_ctx); +diff --git a/lttng-context-preemptible.c b/lttng-context-preemptible.c +index 328f2a4..867805b 100644 +--- a/lttng-context-preemptible.c ++++ b/lttng-context-preemptible.c +@@ -86,7 +86,7 @@ int lttng_add_preemptible_to_ctx(struct lttng_ctx **ctx) + field->record = preemptible_record; + field->get_value = preemptible_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_preemptible_to_ctx); +diff --git a/lttng-context-prio.c b/lttng-context-prio.c +index b5d21e7..367f7bd 100644 +--- a/lttng-context-prio.c ++++ b/lttng-context-prio.c +@@ -89,7 +89,7 @@ int lttng_add_prio_to_ctx(struct lttng_ctx **ctx) + field->record = prio_record; + field->get_value = prio_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_prio_to_ctx); +diff --git a/lttng-context-procname.c b/lttng-context-procname.c +index 54007d1..8f18ca2 100644 +--- a/lttng-context-procname.c ++++ b/lttng-context-procname.c +@@ -72,7 +72,7 @@ int lttng_add_procname_to_ctx(struct lttng_ctx **ctx) + field->record = procname_record; + field->get_value = procname_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_procname_to_ctx); +diff --git a/lttng-context-sgid.c b/lttng-context-sgid.c +index 61c8d53..2a58cbd 100644 +--- a/lttng-context-sgid.c ++++ b/lttng-context-sgid.c +@@ -70,7 +70,7 @@ int lttng_add_sgid_to_ctx(struct lttng_ctx **ctx) + field->record = sgid_record; + field->get_value = sgid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_sgid_to_ctx); +diff --git a/lttng-context-suid.c b/lttng-context-suid.c +index 66d3ef5..ab3e2a9 100644 +--- a/lttng-context-suid.c ++++ b/lttng-context-suid.c +@@ -70,7 +70,7 @@ int lttng_add_suid_to_ctx(struct lttng_ctx **ctx) + field->record = suid_record; + field->get_value = suid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_suid_to_ctx); +diff --git a/lttng-context-tid.c b/lttng-context-tid.c +index d2a20e6..f6defc4 100644 +--- a/lttng-context-tid.c ++++ b/lttng-context-tid.c +@@ -71,7 +71,7 @@ int lttng_add_tid_to_ctx(struct lttng_ctx **ctx) + field->record = tid_record; + field->get_value = tid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_tid_to_ctx); +diff --git a/lttng-context-uid.c b/lttng-context-uid.c +index 5f11de2..5593852 100644 +--- a/lttng-context-uid.c ++++ b/lttng-context-uid.c +@@ -70,7 +70,7 @@ int lttng_add_uid_to_ctx(struct lttng_ctx **ctx) + field->record = uid_record; + field->get_value = uid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_uid_to_ctx); +diff --git a/lttng-context-user-ns.c b/lttng-context-user-ns.c +index 746e4d9..0ed62e3 100644 +--- a/lttng-context-user-ns.c ++++ b/lttng-context-user-ns.c +@@ -82,7 +82,7 @@ int lttng_add_user_ns_to_ctx(struct lttng_ctx **ctx) + field->record = user_ns_record; + field->get_value = user_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_user_ns_to_ctx); +diff --git a/lttng-context-uts-ns.c b/lttng-context-uts-ns.c +index 7352a3d..283bc73 100644 +--- a/lttng-context-uts-ns.c ++++ b/lttng-context-uts-ns.c +@@ -96,7 +96,7 @@ int lttng_add_uts_ns_to_ctx(struct lttng_ctx **ctx) + field->record = uts_ns_record; + field->get_value = uts_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_uts_ns_to_ctx); +diff --git a/lttng-context-vegid.c b/lttng-context-vegid.c +index 604da2a..1431dac 100644 +--- a/lttng-context-vegid.c ++++ b/lttng-context-vegid.c +@@ -70,7 +70,7 @@ int lttng_add_vegid_to_ctx(struct lttng_ctx **ctx) + field->record = vegid_record; + field->get_value = vegid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vegid_to_ctx); +diff --git a/lttng-context-veuid.c b/lttng-context-veuid.c +index 983ae6a..a1b5b70 100644 +--- a/lttng-context-veuid.c ++++ b/lttng-context-veuid.c +@@ -70,7 +70,7 @@ int lttng_add_veuid_to_ctx(struct lttng_ctx **ctx) + field->record = veuid_record; + field->get_value = veuid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_veuid_to_ctx); +diff --git a/lttng-context-vgid.c b/lttng-context-vgid.c +index e08c77d..0eed24e 100644 +--- a/lttng-context-vgid.c ++++ b/lttng-context-vgid.c +@@ -70,7 +70,7 @@ int lttng_add_vgid_to_ctx(struct lttng_ctx **ctx) + field->record = vgid_record; + field->get_value = vgid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vgid_to_ctx); +diff --git a/lttng-context-vpid.c b/lttng-context-vpid.c +index 982ce55..b5b6ce0 100644 +--- a/lttng-context-vpid.c ++++ b/lttng-context-vpid.c +@@ -83,7 +83,7 @@ int lttng_add_vpid_to_ctx(struct lttng_ctx **ctx) + field->record = vpid_record; + field->get_value = vpid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vpid_to_ctx); +diff --git a/lttng-context-vppid.c b/lttng-context-vppid.c +index 66d6382..347ac63 100644 +--- a/lttng-context-vppid.c ++++ b/lttng-context-vppid.c +@@ -112,7 +112,7 @@ int lttng_add_vppid_to_ctx(struct lttng_ctx **ctx) + field->record = vppid_record; + field->get_value = vppid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vppid_to_ctx); +diff --git a/lttng-context-vsgid.c b/lttng-context-vsgid.c +index aca5eda..3daf889 100644 +--- a/lttng-context-vsgid.c ++++ b/lttng-context-vsgid.c +@@ -70,7 +70,7 @@ int lttng_add_vsgid_to_ctx(struct lttng_ctx **ctx) + field->record = vsgid_record; + field->get_value = vsgid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vsgid_to_ctx); +diff --git a/lttng-context-vsuid.c b/lttng-context-vsuid.c +index 66c1300..d7fb0db 100644 +--- a/lttng-context-vsuid.c ++++ b/lttng-context-vsuid.c +@@ -70,7 +70,7 @@ int lttng_add_vsuid_to_ctx(struct lttng_ctx **ctx) + field->record = vsuid_record; + field->get_value = vsuid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vsuid_to_ctx); +diff --git a/lttng-context-vtid.c b/lttng-context-vtid.c +index 8fd68a8..e81ba0e 100644 +--- a/lttng-context-vtid.c ++++ b/lttng-context-vtid.c +@@ -83,7 +83,7 @@ int lttng_add_vtid_to_ctx(struct lttng_ctx **ctx) + field->record = vtid_record; + field->get_value = vtid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vtid_to_ctx); +diff --git a/lttng-context-vuid.c b/lttng-context-vuid.c +index 6ae575f..33e22d3 100644 +--- a/lttng-context-vuid.c ++++ b/lttng-context-vuid.c +@@ -70,7 +70,7 @@ int lttng_add_vuid_to_ctx(struct lttng_ctx **ctx) + field->record = vuid_record; + field->get_value = vuid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vuid_to_ctx); +diff --git a/lttng-context.c b/lttng-context.c +index eb4534c..a6d4ee6 100644 +--- a/lttng-context.c ++++ b/lttng-context.c +@@ -11,7 +11,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + +diff --git a/lttng-events.c b/lttng-events.c +index a1c8445..401f646 100644 +--- a/lttng-events.c ++++ b/lttng-events.c +@@ -30,7 +30,7 @@ + #include + #include + +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -2753,9 +2753,9 @@ end: + * Registers a transport which can be used as output to extract the data out of + * LTTng. The module calling this registration function must ensure that no + * trap-inducing code will be executed by the transport functions. E.g. +- * vmalloc_sync_all() must be called between a vmalloc and the moment the memory ++ * vmalloc_sync_mappings() must be called between a vmalloc and the moment the memory + * is made visible to the transport function. This registration acts as a +- * vmalloc_sync_all. Therefore, only if the module allocates virtual memory ++ * vmalloc_sync_mappings. Therefore, only if the module allocates virtual memory + * after its registration must it synchronize the TLBs. + */ + void lttng_transport_register(struct lttng_transport *transport) +@@ -2763,9 +2763,9 @@ void lttng_transport_register(struct lttng_transport *transport) + /* + * Make sure no page fault can be triggered by the module about to be + * registered. We deal with this here so we don't have to call +- * vmalloc_sync_all() in each module's init. ++ * vmalloc_sync_mappings() in each module's init. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + mutex_lock(&sessions_mutex); + list_add_tail(&transport->node, <tng_transport_list); +diff --git a/lttng-ring-buffer-client.h b/lttng-ring-buffer-client.h +index d5c512c..ff62830 100644 +--- a/lttng-ring-buffer-client.h ++++ b/lttng-ring-buffer-client.h +@@ -10,7 +10,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -766,7 +766,7 @@ static int __init lttng_ring_buffer_client_init(void) + * This vmalloc sync all also takes care of the lib ring buffer + * vmalloc'd module pages when it is built as a module into LTTng. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_transport_register(<tng_relay_transport); + return 0; + } +diff --git a/lttng-ring-buffer-metadata-client.h b/lttng-ring-buffer-metadata-client.h +index 17ffd75..a098b8d 100644 +--- a/lttng-ring-buffer-metadata-client.h ++++ b/lttng-ring-buffer-metadata-client.h +@@ -9,7 +9,7 @@ + + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + +@@ -428,7 +428,7 @@ static int __init lttng_ring_buffer_client_init(void) + * This vmalloc sync all also takes care of the lib ring buffer + * vmalloc'd module pages when it is built as a module into LTTng. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_transport_register(<tng_relay_transport); + return 0; + } +diff --git a/lttng-syscalls.c b/lttng-syscalls.c +index fb14f6b..97f1ba9 100644 +--- a/lttng-syscalls.c ++++ b/lttng-syscalls.c +@@ -760,7 +760,7 @@ int lttng_syscalls_register(struct lttng_channel *chan, void *filter) + struct lttng_kernel_event ev; + int ret; + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + if (!chan->sc_table) { + /* create syscall table mapping syscall to events */ +diff --git a/probes/lttng-kprobes.c b/probes/lttng-kprobes.c +index c0a15e4..a44eaa1 100644 +--- a/probes/lttng-kprobes.c ++++ b/probes/lttng-kprobes.c +@@ -132,7 +132,7 @@ int lttng_kprobes_register(const char *name, + * Well.. kprobes itself puts the page fault handler on the blacklist, + * but we can never be too careful. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + ret = register_kprobe(&event->u.kprobe.kp); + if (ret) +diff --git a/probes/lttng-kretprobes.c b/probes/lttng-kretprobes.c +index 4b18d46..ab98ff2 100644 +--- a/probes/lttng-kretprobes.c ++++ b/probes/lttng-kretprobes.c +@@ -221,7 +221,7 @@ int lttng_kretprobes_register(const char *name, + * Well.. kprobes itself puts the page fault handler on the blacklist, + * but we can never be too careful. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + ret = register_kretprobe(<tng_krp->krp); + if (ret) +diff --git a/probes/lttng-tracepoint-event-impl.h b/probes/lttng-tracepoint-event-impl.h +index 321cdfa..77b8638 100644 +--- a/probes/lttng-tracepoint-event-impl.h ++++ b/probes/lttng-tracepoint-event-impl.h +@@ -15,7 +15,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -1391,7 +1391,7 @@ static __used struct lttng_probe_desc TP_ID(__probe_desc___, TRACE_SYSTEM) = { + #ifndef TP_MODULE_NOINIT + static int TP_ID(__lttng_events_init__, TRACE_SYSTEM)(void) + { +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return lttng_probe_register(&TP_ID(__probe_desc___, TRACE_SYSTEM)); + } + +diff --git a/probes/lttng-uprobes.c b/probes/lttng-uprobes.c +index 64d8237..bc10128 100644 +--- a/probes/lttng-uprobes.c ++++ b/probes/lttng-uprobes.c +@@ -161,7 +161,7 @@ int lttng_uprobes_add_callsite(struct lttng_event *event, + } + + /* Ensure the memory we just allocated don't trigger page faults. */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + uprobe_handler->event = event; + uprobe_handler->up_consumer.handler = lttng_uprobes_handler_pre; +diff --git a/probes/lttng.c b/probes/lttng.c +index 383202c..05bc138 100644 +--- a/probes/lttng.c ++++ b/probes/lttng.c +@@ -116,7 +116,7 @@ int __init lttng_logger_init(void) + { + int ret = 0; + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + /* /dev/lttng-logger */ + ret = misc_register(&logger_dev); +diff --git a/tests/probes/lttng-test.c b/tests/probes/lttng-test.c +index e347639..b450e7d 100644 +--- a/tests/probes/lttng-test.c ++++ b/tests/probes/lttng-test.c +@@ -97,7 +97,7 @@ int __init lttng_test_init(void) + int ret = 0; + + (void) wrapper_lttng_fixup_sig(THIS_MODULE); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_test_filter_event_dentry = + proc_create_data(LTTNG_TEST_FILTER_EVENT_FILE, + S_IRUGO | S_IWUGO, NULL, +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index 0c3eb86..54715b5 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -21,8 +21,35 @@ + #include + #include + ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++ ++static inline ++void wrapper_vmalloc_sync_mappings(void) ++{ ++ void (*vmalloc_sync_mappings_sym)(void); ++ ++ vmalloc_sync_mappings_sym = (void *) kallsyms_lookup_funcptr("vmalloc_sync_mappings"); ++ if (vmalloc_sync_mappings_sym) { ++ vmalloc_sync_mappings_sym(); ++ } else { ++#ifdef CONFIG_X86 ++ /* ++ * Only x86 needs vmalloc_sync_mappings to make sure LTTng does not ++ * trigger recursive page faults. ++ */ ++ printk_once(KERN_WARNING "LTTng: vmalloc_sync_mappings symbol lookup failed.\n"); ++ printk_once(KERN_WARNING "Page fault handler and NMI tracing might trigger faults.\n"); ++#endif ++ } ++} ++ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ ++/* ++ * Map vmalloc_sync_mappings to vmalloc_sync_all() on kernels before 5.7. ++ */ + static inline +-void wrapper_vmalloc_sync_all(void) ++void wrapper_vmalloc_sync_mappings(void) + { + void (*vmalloc_sync_all_sym)(void); + +@@ -40,13 +67,29 @@ void wrapper_vmalloc_sync_all(void) + #endif + } + } ++ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ + #else + ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++ ++static inline ++void wrapper_vmalloc_sync_mappings(void) ++{ ++ return vmalloc_sync_mappings(); ++} ++ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ + static inline +-void wrapper_vmalloc_sync_all(void) ++void wrapper_vmalloc_sync_mappings(void) + { + return vmalloc_sync_all(); + } ++ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ + #endif + + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0)) +@@ -61,7 +104,7 @@ void *lttng_kvmalloc_node(unsigned long size, gfp_t flags, int node) + * Make sure we don't trigger recursive page faults in the + * tracing fast path. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + } + return ret; + } +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch new file mode 100644 index 000000000..807fe933c --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch @@ -0,0 +1,32 @@ +From 4d1817c129310945bf0b8227ebc0fbb4f6299dc7 Mon Sep 17 00:00:00 2001 +From: Michael Jeanson +Date: Wed, 6 May 2020 11:03:32 -0400 +Subject: [PATCH 2/4] Fix: missing wrapper rename to + wrapper_vmalloc_sync_mappings + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/c1ba644f2edf6a5bc030111ce4167a8798cc1053] + +Signed-off-by: Michael Jeanson +Signed-off-by: Mathieu Desnoyers +Change-Id: Idf7082a980c5a604bfef5c69906678b5083a9bbf +Signed-off-by: Ovidiu Panait +--- + wrapper/vmalloc.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index 54715b5..5d0b389 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -216,7 +216,7 @@ void *lttng_kvmalloc_node(unsigned long size, gfp_t flags, int node) + * Make sure we don't trigger recursive page faults in the + * tracing fast path. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + } + return ret; + } +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch new file mode 100644 index 000000000..48d7e2f00 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch @@ -0,0 +1,88 @@ +From 23cfd7b53ec1521d3c23ceddfda49352c2d349dc Mon Sep 17 00:00:00 2001 +From: Ovidiu Panait +Date: Thu, 14 May 2020 13:05:24 +0300 +Subject: [PATCH 3/4] Fix: Use vmalloc_sync_mappings on kernel 5.6 as well + +Upstream commit [1], that got rid of vmalloc_sync_all and introduced +vmalloc_sync_mappings, is a v5.6 commit: +$ git tag --contains 763802b53a427ed3cbd419dbba255c414fdd9e7c +v5.6 +v5.6-rc7 +v5.7-rc1 +v5.7-rc2 +v5.7-rc3 + +Extend the LINUX_VERSION_CODE check to v5.6 to fix the following warnings: +... +[ 483.242037] LTTng: vmalloc_sync_all symbol lookup failed. +[ 483.257056] Page fault handler and NMI tracing might trigger faults. +... + +[1] https://github.com/torvalds/linux/commit/763802b53a427ed3cbd419dbba255c414fdd9e7c + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/da356b324dfc160e09b8966b691792037badf455] + +Signed-off-by: Ovidiu Panait +Signed-off-by: Mathieu Desnoyers +Signed-off-by: Ovidiu Panait +--- + wrapper/vmalloc.h | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index 5d0b389..d905f60 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -21,7 +21,7 @@ + #include + #include + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -43,7 +43,7 @@ void wrapper_vmalloc_sync_mappings(void) + } + } + +-#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + /* + * Map vmalloc_sync_mappings to vmalloc_sync_all() on kernels before 5.7. +@@ -68,11 +68,11 @@ void wrapper_vmalloc_sync_mappings(void) + } + } + +-#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + #else + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -80,7 +80,7 @@ void wrapper_vmalloc_sync_mappings(void) + return vmalloc_sync_mappings(); + } + +-#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -88,7 +88,7 @@ void wrapper_vmalloc_sync_mappings(void) + return vmalloc_sync_all(); + } + +-#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + #endif + +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch new file mode 100644 index 000000000..a0b870486 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch @@ -0,0 +1,67 @@ +From f419315f28a1da656c4faa8a852a2928ce38c72d Mon Sep 17 00:00:00 2001 +From: Ovidiu Panait +Date: Thu, 14 May 2020 14:27:17 +0300 +Subject: [PATCH 4/4] Update: Use vmalloc_sync_mappings for stable kernels + +Starting from v5.4.28/v5.2.37/v4.19.113/v4.14.175/v4.9.218/v4.4.218, stable +kernel branches backported v5.6 upstream commit [1], causing the following +warnings: +... +[ 483.242037] LTTng: vmalloc_sync_all symbol lookup failed. +[ 483.257056] Page fault handler and NMI tracing might trigger faults. +... + +Extend check for vmalloc_sync_mappings for stable kernels as well. + +[1] https://github.com/torvalds/linux/commit/763802b53a427ed3cbd419dbba255c414fdd9e7c + +[ Edit: minor coding style fix by Mathieu Desnoyers. ] + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/5939591f87dc291bc858caf72decfb8569d802e3] + +Signed-off-by: Ovidiu Panait +Signed-off-by: Mathieu Desnoyers +Signed-off-by: Ovidiu Panait +--- + wrapper/vmalloc.h | 17 +++++++++++++++-- + 1 file changed, 15 insertions(+), 2 deletions(-) + +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index d905f60..c7538ae 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -20,8 +20,15 @@ + + #include + #include ++#include + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) \ ++ || LTTNG_KERNEL_RANGE(5,4,28, 5,5,0) \ ++ || LTTNG_KERNEL_RANGE(5,2,37, 5,3,0) \ ++ || LTTNG_KERNEL_RANGE(4,19,113, 4,20,0) \ ++ || LTTNG_KERNEL_RANGE(4,14,175, 4,15,0) \ ++ || LTTNG_KERNEL_RANGE(4,9,218, 4,10,0) \ ++ || LTTNG_KERNEL_RANGE(4,4,218, 4,5,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -72,7 +79,13 @@ void wrapper_vmalloc_sync_mappings(void) + + #else + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) \ ++ || LTTNG_KERNEL_RANGE(5,4,28, 5,5,0) \ ++ || LTTNG_KERNEL_RANGE(5,2,37, 5,3,0) \ ++ || LTTNG_KERNEL_RANGE(4,19,113, 4,20,0) \ ++ || LTTNG_KERNEL_RANGE(4,14,175, 4,15,0) \ ++ || LTTNG_KERNEL_RANGE(4,9,218, 4,10,0) \ ++ || LTTNG_KERNEL_RANGE(4,4,218, 4,5,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb deleted file mode 100644 index 6fff096a3..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb +++ /dev/null @@ -1,43 +0,0 @@ -SECTION = "devel" -SUMMARY = "Linux Trace Toolkit KERNEL MODULE" -DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" -LICENSE = "LGPLv2.1 & GPLv2 & MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" - -inherit module - -COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm|riscv).*-linux' - -SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ - file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ - file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ - " - -SRC_URI[md5sum] = "2e3bc8cfb264fa13f374618b46f170e7" -SRC_URI[sha256sum] = "8a42240813b8fd1d001835cd6f5ec687f7d7f3b26070d4e21604c35a51a6441d" - -export INSTALL_MOD_DIR="kernel/lttng-modules" - -EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" - -do_install_append() { - # Delete empty directories to avoid QA failures if no modules were built - find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; -} - -python do_package_prepend() { - if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): - bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) -} - -BBCLASSEXTEND = "devupstream:target" -LIC_FILES_CHKSUM_class-devupstream = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" -DEFAULT_PREFERENCE_class-devupstream = "-1" -SRC_URI_class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.11 \ - file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ - file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ - " -SRCREV_class-devupstream = "17c413953603f063f2a9d6c3788bec914ce6f955" -PV_class-devupstream = "2.11.2+git${SRCPV}" -S_class-devupstream = "${WORKDIR}/git" -SRCREV_FORMAT ?= "lttng_git" diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb new file mode 100644 index 000000000..4a6c42e3b --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb @@ -0,0 +1,47 @@ +SECTION = "devel" +SUMMARY = "Linux Trace Toolkit KERNEL MODULE" +DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" +LICENSE = "LGPLv2.1 & GPLv2 & MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" + +inherit module + +COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm|riscv).*-linux' + +SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ + file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ + file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ + file://0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch \ + file://0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch \ + file://0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch \ + file://0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch \ + " + +SRC_URI[md5sum] = "be252df5013ea03894921d0b493c7b6c" +SRC_URI[sha256sum] = "efeb2ae60e96dbe9a9b342d3a80dfc7642f06a8c09686089d491ad696bb98f4d" + +export INSTALL_MOD_DIR="kernel/lttng-modules" + +EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" + +do_install_append() { + # Delete empty directories to avoid QA failures if no modules were built + find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; +} + +python do_package_prepend() { + if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): + bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) +} + +BBCLASSEXTEND = "devupstream:target" +LIC_FILES_CHKSUM_class-devupstream = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" +DEFAULT_PREFERENCE_class-devupstream = "-1" +SRC_URI_class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.12 \ + file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ + file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ + " +SRCREV_class-devupstream = "17c413953603f063f2a9d6c3788bec914ce6f955" +PV_class-devupstream = "2.12.0+git${SRCPV}" +S_class-devupstream = "${WORKDIR}/git" +SRCREV_FORMAT ?= "lttng_git" diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch b/poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch new file mode 100644 index 000000000..a150d648a --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch @@ -0,0 +1,43 @@ +From e5d94cf4882cc6516af52b794c6acb8e4d6469a3 Mon Sep 17 00:00:00 2001 +From: Ovidiu Panait +Date: Mon, 18 May 2020 16:39:26 +0300 +Subject: [PATCH] tests: gen-ust-events-ns/tp.h: Fix build with musl libc + +Fix the following build error with musl libc: +In file included from ../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.h:14, + from ../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.c:10: +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.h:17:10: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~ +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.h:17:10: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~ +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/./tp.h:17:2: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~~~ +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/./tp.h:17:2: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~~~ + +Upstream-Status: Submitted [https://github.com/lttng/lttng-tools/pull/161] + +Signed-off-by: Ovidiu Panait +--- + tests/utils/testapp/gen-ust-events-ns/tp.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tests/utils/testapp/gen-ust-events-ns/tp.h b/tests/utils/testapp/gen-ust-events-ns/tp.h +index 4dbfed5..e0ddb29 100644 +--- a/tests/utils/testapp/gen-ust-events-ns/tp.h ++++ b/tests/utils/testapp/gen-ust-events-ns/tp.h +@@ -11,6 +11,7 @@ + #if !defined(_TRACEPOINT_TP_H) || defined(TRACEPOINT_HEADER_MULTI_READ) + #define _TRACEPOINT_TP_H + ++#include + #include + + TRACEPOINT_EVENT(tp, tptest, +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch b/poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch deleted file mode 100644 index 42cebf94a..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch +++ /dev/null @@ -1,36 +0,0 @@ -Fix build for x32 - -Signed-off-by: Christopher Larson - -Fix build error of src/common/utils.c for x32. - -Upstream-Status: Submitted [https://github.com/lttng/lttng-tools/pull/150] - -Signed-off-by: Kai Kang - -diff --git a/src/bin/lttng/utils.c b/src/bin/lttng/utils.c -index 0e96ef0c..5c79c8c7 100644 ---- a/src/bin/lttng/utils.c -+++ b/src/bin/lttng/utils.c -@@ -158,7 +158,7 @@ unsigned int fls_u32(uint32_t x) - #define HAS_FLS_U32 - #endif - --#if defined(__x86_64) -+#if defined(__x86_64) && !defined(__ILP32__) - static inline - unsigned int fls_u64(uint64_t x) - { -diff --git a/src/common/utils.c b/src/common/utils.c -index 08139e5e..3c389981 100644 ---- a/src/common/utils.c -+++ b/src/common/utils.c -@@ -1223,7 +1223,7 @@ static inline unsigned int fls_u32(uint32_t x) - #define HAS_FLS_U32 - #endif - --#if defined(__x86_64) -+#if defined(__x86_64) && !defined(__ILP32__) - static inline - unsigned int fls_u64(uint64_t x) - { diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb deleted file mode 100644 index 36a19ec18..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb +++ /dev/null @@ -1,166 +0,0 @@ -SECTION = "devel" -SUMMARY = "Linux Trace Toolkit Control" -DESCRIPTION = "The Linux trace toolkit is a suite of tools designed \ -to extract program execution details from the Linux operating system \ -and interpret them." - -LICENSE = "GPLv2 & LGPLv2.1" -LIC_FILES_CHKSUM = "file://LICENSE;md5=01d7fc4496aacf37d90df90b90b0cac1 \ - file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://lgpl-2.1.txt;md5=0f0d71500e6a57fd24d825f33242b9ca" - -DEPENDS = "liburcu popt libxml2 util-linux" -RDEPENDS_${PN} = "libgcc" -RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod lttng-modules sed python3-core" -RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" -RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils" -# babelstats.pl wants getopt-long -RDEPENDS_${PN}-ptest += "perl-module-getopt-long" - -PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ - am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ - PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ -" -PACKAGECONFIG ??= "lttng-ust" -PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" -PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" -PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" -PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" -PACKAGECONFIG_remove_arc = "lttng-ust" - -SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \ - file://x32.patch \ - file://0001-tests-do-not-strip-a-helper-library.patch \ - file://run-ptest \ - file://lttng-sessiond.service \ - file://0001-tests-regression-disable-the-tools-live-tests.patch \ - " - -SRC_URI[md5sum] = "68ed78f7fa4235477ea577e48b3cd245" -SRC_URI[sha256sum] = "936477305b25f65c5dd22db9161287d30a309ce868b6180857b1fd1fb5e6a56b" - -inherit autotools ptest pkgconfig useradd python3-dir manpages systemd - -SYSTEMD_SERVICE_${PN} = "lttng-sessiond.service" -SYSTEMD_AUTO_ENABLE = "disable" - -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "tracing" - -FILES_${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \ - ${PYTHON_SITEPACKAGES_DIR}/*" -FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a" -FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" - -# Since files are installed into ${libdir}/lttng/libexec we match -# the libexec insane test so skip it. -# Python module needs to keep _lttng.so -INSANE_SKIP_${PN} = "libexec dev-so" -INSANE_SKIP_${PN}-dbg = "libexec" - -PRIVATE_LIBS_${PN}-ptest = "libfoo.so" - -do_install_append () { - # install systemd unit file - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_unitdir}/system -} - -do_install_ptest () { - for f in Makefile tests/Makefile tests/utils/utils.sh tests/regression/tools/save-load/load-42*.lttng tests/regression/tools/save-load/configuration/load-42*.lttng tests/regression/tools/health/test_health.sh tests/regression/tools/metadata/utils.sh tests/regression/tools/rotation/rotate_utils.sh; do - install -D "${B}/$f" "${D}${PTEST_PATH}/$f" - done - - for f in config/tap-driver.sh config/test-driver src/common/config/session.xsd src/common/mi-lttng-3.0.xsd; do - install -D "${S}/$f" "${D}${PTEST_PATH}/$f" - done - - # Prevent 'make check' from recursing into non-test subdirectories. - sed -i -e 's!^SUBDIRS = .*!SUBDIRS = tests!' "${D}${PTEST_PATH}/Makefile" - - # We don't need these - sed -i -e '/dist_noinst_SCRIPTS = /,/^$/d' "${D}${PTEST_PATH}/tests/Makefile" - - # We shouldn't need to build anything in tests/utils - sed -i -e 's!am__append_1 = . utils!am__append_1 = . !' \ - "${D}${PTEST_PATH}/tests/Makefile" - - # Copy the tests directory tree and the executables and - # Makefiles found within. - for d in $(find "${B}/tests" -type d -not -name .libs -printf '%P ') ; do - install -d "${D}${PTEST_PATH}/tests/$d" - find "${B}/tests/$d" -maxdepth 1 -executable -type f \ - -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + - # Take all .py scripts for tests using the python bindings. - find "${B}/tests/$d" -maxdepth 1 -type f -name "*.py" \ - -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + - test -r "${B}/tests/$d/Makefile" && \ - install -t "${D}${PTEST_PATH}/tests/$d" "${B}/tests/$d/Makefile" - done - - for d in $(find "${B}/tests" -type d -name .libs -printf '%P ') ; do - for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do - cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f - case $f in - *.so) - install -d ${D}${PTEST_PATH}/tests/$d/ - ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f - # Remove any rpath/runpath to pass QA check. - chrpath --delete ${D}${PTEST_PATH}/tests/$d/$f - ;; - esac - done - done - - chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary - - # - # Use the versioned libs of liblttng-ust-dl. - # - ustdl="${D}${PTEST_PATH}/tests/regression/ust/ust-dl/test_ust-dl.py" - if [ -e $ustdl ]; then - sed -i -e 's!:liblttng-ust-dl.so!:liblttng-ust-dl.so.0!' $ustdl - fi - - install ${B}/tests/unit/ini_config/sample.ini ${D}${PTEST_PATH}/tests/unit/ini_config/ - - # We shouldn't need to build anything in tests/regression/tools - sed -i -e 's!^SUBDIRS = tools !SUBDIRS = !' \ - "${D}${PTEST_PATH}/tests/regression/Makefile" - - # Prevent attempts to update Makefiles during test runs, and - # silence "Making check in $SUBDIR" messages. - find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ - sed -i -e '/Makefile:/,/^$/d' -e '/%: %.in/,/^$/d' \ - -e '/echo "Making $$target in $$subdir"; \\/d' \ - -e 's/^srcdir = \(.*\)/srcdir = ./' \ - -e 's/^builddir = \(.*\)/builddir = ./' \ - -e 's/^all-am:.*/all-am:/' \ - {} + - - find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ - touch -r "${B}/Makefile" {} + - - # - # Need to stop generated binaries from rebuilding by removing their source dependencies - # - sed -e 's#\(^test.*OBJECTS.=\)#disable\1#g' \ - -e 's#\(^test.*DEPENDENCIES.=\)#disable\1#g' \ - -e 's#\(^test.*SOURCES.=\)#disable\1#g' \ - -e 's#\(^test.*LDADD.=\)#disable\1#g' \ - -i ${D}${PTEST_PATH}/tests/unit/Makefile - - # Substitute links to installed binaries. - for prog in lttng lttng-relayd lttng-sessiond lttng-consumerd lttng-crash; do - exedir="${D}${PTEST_PATH}/src/bin/${prog}" - install -d "$exedir" - case "$prog" in - lttng-consumerd) - ln -s "${libdir}/lttng/libexec/$prog" "$exedir" - ;; - *) - ln -s "${bindir}/$prog" "$exedir" - ;; - esac - done -} diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb new file mode 100644 index 000000000..148a7928d --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb @@ -0,0 +1,166 @@ +SECTION = "devel" +SUMMARY = "Linux Trace Toolkit Control" +DESCRIPTION = "The Linux trace toolkit is a suite of tools designed \ +to extract program execution details from the Linux operating system \ +and interpret them." + +LICENSE = "GPLv2 & LGPLv2.1" +LIC_FILES_CHKSUM = "file://LICENSE;md5=40ef17463fbd6f377db3c47b1cbaded8 \ + file://LICENSES/GPL-2.0;md5=e68f69a54b44ba526ad7cb963e18fbce \ + file://LICENSES/LGPL-2.1;md5=9920968d0f2ff585ce61fae30344dd95" + +DEPENDS = "liburcu popt libxml2 util-linux" +RDEPENDS_${PN} = "libgcc" +RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod lttng-modules sed python3-core" +RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" +RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils" +# babelstats.pl wants getopt-long +RDEPENDS_${PN}-ptest += "perl-module-getopt-long" + +PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ + am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ + PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ +" +PACKAGECONFIG ??= "lttng-ust" +PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" +PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" +PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" +PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" +PACKAGECONFIG_remove_arc = "lttng-ust" + +SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \ + file://0001-tests-do-not-strip-a-helper-library.patch \ + file://run-ptest \ + file://lttng-sessiond.service \ + file://0001-tests-regression-disable-the-tools-live-tests.patch \ + file://0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch \ + " + +SRC_URI[md5sum] = "4592201ea981f0722438345fb1f009d2" +SRC_URI[sha256sum] = "405661d27617dc79a42712174a051a45c7ca12d167576c0d93f2de708ed29445" + +inherit autotools ptest pkgconfig useradd python3-dir manpages systemd + +SYSTEMD_SERVICE_${PN} = "lttng-sessiond.service" +SYSTEMD_AUTO_ENABLE = "disable" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "tracing" + +FILES_${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \ + ${PYTHON_SITEPACKAGES_DIR}/*" +FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a" +FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" + +# Since files are installed into ${libdir}/lttng/libexec we match +# the libexec insane test so skip it. +# Python module needs to keep _lttng.so +INSANE_SKIP_${PN} = "libexec dev-so" +INSANE_SKIP_${PN}-dbg = "libexec" + +PRIVATE_LIBS_${PN}-ptest = "libfoo.so" + +do_install_append () { + # install systemd unit file + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_unitdir}/system +} + +do_install_ptest () { + for f in Makefile tests/Makefile tests/utils/utils.sh tests/regression/tools/save-load/load-42*.lttng tests/regression/tools/save-load/configuration/load-42*.lttng tests/regression/tools/health/test_health.sh tests/regression/tools/metadata/utils.sh tests/regression/tools/rotation/rotate_utils.sh; do + install -D "${B}/$f" "${D}${PTEST_PATH}/$f" + done + + for f in config/tap-driver.sh config/test-driver src/common/config/session.xsd src/common/mi-lttng-4.0.xsd; do + install -D "${S}/$f" "${D}${PTEST_PATH}/$f" + done + + # Prevent 'make check' from recursing into non-test subdirectories. + sed -i -e 's!^SUBDIRS = .*!SUBDIRS = tests!' "${D}${PTEST_PATH}/Makefile" + + # We don't need these + sed -i -e '/dist_noinst_SCRIPTS = /,/^$/d' "${D}${PTEST_PATH}/tests/Makefile" + + # We shouldn't need to build anything in tests/utils + sed -i -e 's!am__append_1 = . utils!am__append_1 = . !' \ + "${D}${PTEST_PATH}/tests/Makefile" + + # Copy the tests directory tree and the executables and + # Makefiles found within. + for d in $(find "${B}/tests" -type d -not -name .libs -printf '%P ') ; do + install -d "${D}${PTEST_PATH}/tests/$d" + find "${B}/tests/$d" -maxdepth 1 -executable -type f \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + + # Take all .py scripts for tests using the python bindings. + find "${B}/tests/$d" -maxdepth 1 -type f -name "*.py" \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + + test -r "${B}/tests/$d/Makefile" && \ + install -t "${D}${PTEST_PATH}/tests/$d" "${B}/tests/$d/Makefile" + done + + for d in $(find "${B}/tests" -type d -name .libs -printf '%P ') ; do + for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do + cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f + case $f in + *.so) + install -d ${D}${PTEST_PATH}/tests/$d/ + ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f + # Remove any rpath/runpath to pass QA check. + chrpath --delete ${D}${PTEST_PATH}/tests/$d/$f + ;; + esac + done + done + + chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary + + # + # Use the versioned libs of liblttng-ust-dl. + # + ustdl="${D}${PTEST_PATH}/tests/regression/ust/ust-dl/test_ust-dl.py" + if [ -e $ustdl ]; then + sed -i -e 's!:liblttng-ust-dl.so!:liblttng-ust-dl.so.0!' $ustdl + fi + + install ${B}/tests/unit/ini_config/sample.ini ${D}${PTEST_PATH}/tests/unit/ini_config/ + + # We shouldn't need to build anything in tests/regression/tools + sed -i -e 's!^SUBDIRS = tools !SUBDIRS = !' \ + "${D}${PTEST_PATH}/tests/regression/Makefile" + + # Prevent attempts to update Makefiles during test runs, and + # silence "Making check in $SUBDIR" messages. + find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ + sed -i -e '/Makefile:/,/^$/d' -e '/%: %.in/,/^$/d' \ + -e '/echo "Making $$target in $$subdir"; \\/d' \ + -e 's/^srcdir = \(.*\)/srcdir = ./' \ + -e 's/^builddir = \(.*\)/builddir = ./' \ + -e 's/^all-am:.*/all-am:/' \ + {} + + + find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ + touch -r "${B}/Makefile" {} + + + # + # Need to stop generated binaries from rebuilding by removing their source dependencies + # + sed -e 's#\(^test.*OBJECTS.=\)#disable\1#g' \ + -e 's#\(^test.*DEPENDENCIES.=\)#disable\1#g' \ + -e 's#\(^test.*SOURCES.=\)#disable\1#g' \ + -e 's#\(^test.*LDADD.=\)#disable\1#g' \ + -i ${D}${PTEST_PATH}/tests/unit/Makefile + + # Substitute links to installed binaries. + for prog in lttng lttng-relayd lttng-sessiond lttng-consumerd lttng-crash; do + exedir="${D}${PTEST_PATH}/src/bin/${prog}" + install -d "$exedir" + case "$prog" in + lttng-consumerd) + ln -s "${libdir}/lttng/libexec/$prog" "$exedir" + ;; + *) + ln -s "${bindir}/$prog" "$exedir" + ;; + esac + done +} diff --git a/poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb b/poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb deleted file mode 100644 index 3bd0dfad6..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "Linux Trace Toolkit Userspace Tracer 2.x" -DESCRIPTION = "The LTTng UST 2.x package contains the userspace tracer library to trace userspace codes." -HOMEPAGE = "http://lttng.org/ust" -BUGTRACKER = "https://bugs.lttng.org/projects/lttng-ust" - -LICENSE = "LGPLv2.1+ & MIT & GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=c963eb366b781252b0bf0fdf1624d9e9 \ - file://snprintf/snprintf.c;endline=32;md5=d3d544959d8a3782b2e07451be0a903c \ - file://snprintf/various.h;endline=31;md5=89f2509b6b4682c4fc95255eec4abe44" - -PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ - am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ - PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ -" - -inherit autotools lib_package manpages python3native - -EXTRA_OECONF = "--disable-numa" - -DEPENDS = "liburcu util-linux" -RDEPENDS_${PN}-bin = "python3-core" - -# For backwards compatibility after rename -RPROVIDES_${PN} = "lttng2-ust" -RREPLACES_${PN} = "lttng2-ust" -RCONFLICTS_${PN} = "lttng2-ust" - -PE = "2" - -SRC_URI = "https://lttng.org/files/lttng-ust/lttng-ust-${PV}.tar.bz2 \ - file://0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch \ - " - -SRC_URI[md5sum] = "7de04a8ff1f0a4effa09a42620ec4081" -SRC_URI[sha256sum] = "7fbab963d60741ffd4d8dd0a246f6cf168cdfe3b2385798bd90550f5f0bba869" - -CVE_PRODUCT = "ust" - -PACKAGECONFIG[examples] = "--enable-examples, --disable-examples," -PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" -PACKAGECONFIG[python3-agent] = "--enable-python-agent ${PYTHON_OPTION}, --disable-python-agent, python3, python3" - -FILES_${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*" -FILES_${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a" -FILES_${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la" - -do_install_append() { - # Patch python tools to use Python 3; they should be source compatible, but - # still refer to Python 2 in the shebang - sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp -} diff --git a/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb b/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb new file mode 100644 index 000000000..ad544d1b4 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb @@ -0,0 +1,51 @@ +SUMMARY = "Linux Trace Toolkit Userspace Tracer 2.x" +DESCRIPTION = "The LTTng UST 2.x package contains the userspace tracer library to trace userspace codes." +HOMEPAGE = "http://lttng.org/ust" +BUGTRACKER = "https://bugs.lttng.org/projects/lttng-ust" + +LICENSE = "LGPLv2.1+ & MIT & GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=c963eb366b781252b0bf0fdf1624d9e9 \ + file://snprintf/snprintf.c;endline=32;md5=d3d544959d8a3782b2e07451be0a903c \ + file://snprintf/various.h;endline=31;md5=89f2509b6b4682c4fc95255eec4abe44" + +PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ + am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ + PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ +" + +inherit autotools lib_package manpages python3native + +EXTRA_OECONF = "--disable-numa" + +DEPENDS = "liburcu util-linux" +RDEPENDS_${PN}-bin = "python3-core" + +# For backwards compatibility after rename +RPROVIDES_${PN} = "lttng2-ust" +RREPLACES_${PN} = "lttng2-ust" +RCONFLICTS_${PN} = "lttng2-ust" + +PE = "2" + +SRC_URI = "https://lttng.org/files/lttng-ust/lttng-ust-${PV}.tar.bz2 \ + file://0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch \ + " + +SRC_URI[md5sum] = "3bf4a04c305271d13cf6596c4e7b9b3c" +SRC_URI[sha256sum] = "1983edb525f3f27e3494088d8d5389b4c71af66bbfe63c6f1df2ad95aa44a528" + +CVE_PRODUCT = "ust" + +PACKAGECONFIG[examples] = "--enable-examples, --disable-examples," +PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" +PACKAGECONFIG[python3-agent] = "--enable-python-agent ${PYTHON_OPTION}, --disable-python-agent, python3, python3" + +FILES_${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*" +FILES_${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a" +FILES_${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la" + +do_install_append() { + # Patch python tools to use Python 3; they should be source compatible, but + # still refer to Python 2 in the shebang + sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp +} diff --git a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb index 460e05a44..0be1422a2 100644 --- a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb +++ b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb @@ -12,6 +12,8 @@ S = "${WORKDIR}" do_configure[depends] += "virtual/kernel:do_shared_workdir openssl-native:do_populate_sysroot" do_compile[depends] += "virtual/kernel:do_compile_kernelmodules" +RDEPENDS_${PN}-dev = "" + DEPENDS += "bc-native bison-native" EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="${BUILD_CPP}"" diff --git a/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb b/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb index 9882e1276..d092b158f 100644 --- a/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb +++ b/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb @@ -167,7 +167,7 @@ FILES_${PN}-pulseaudio-conf += "\ " RDEPENDS_${PN}-pulseaudio-conf += "\ - libasound-module-conf-pulse \ - libasound-module-ctl-pulse \ - libasound-module-pcm-pulse \ + ${MLPREFIX}libasound-module-conf-pulse \ + ${MLPREFIX}libasound-module-ctl-pulse \ + ${MLPREFIX}libasound-module-pcm-pulse \ " diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb index 288c715cc..e9941c7a2 100644 --- a/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb +++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb @@ -39,8 +39,8 @@ DEPENDS = "zlib libsoup-2.4 curl libxml2 cairo libxslt libgcrypt \ " PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '' ,d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2' ,d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2', d)} \ enchant \ libsecret \ " diff --git a/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb b/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb index 107d312d1..02a4d4712 100644 --- a/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb +++ b/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb @@ -9,7 +9,7 @@ SRC_URI[archive.sha256sum] = "901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216f DEPENDS = "dbus glib-2.0 glib-2.0-native atk at-spi2-core libxml2" GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase features_check upstream-version-is-even +inherit gnomebase upstream-version-is-even PACKAGES =+ "${PN}-gnome ${PN}-gtk2" diff --git a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb index 7c4db85b3..694c5f09b 100644 --- a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb +++ b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" SRC_URI = "git://github.com/intel/${BPN}" -SRCREV = "db7087b883bf52cbff063ad17a41cc1cbb85104d" +SRCREV = "a17f0e3ff8669dd3b1c44a741ae4f8162155faed" S = "${WORKDIR}/git" PV .= "+git${SRCPV}" diff --git a/poky/meta/recipes-support/boost/boost.inc b/poky/meta/recipes-support/boost/boost.inc index 8eb949438..ca140d595 100644 --- a/poky/meta/recipes-support/boost/boost.inc +++ b/poky/meta/recipes-support/boost/boost.inc @@ -62,12 +62,16 @@ PACKAGES = "${PN}-dbg ${BOOST_PACKAGES}" python __anonymous () { packages = [] extras = [] + mlprefix = d.getVar("MLPREFIX") for lib in d.getVar('BOOST_LIBS').split(): extras.append("--with-%s" % lib) - pkg = "boost-%s" % lib.replace("_", "-") - packages.append(pkg) + pkg = "boost-%s" % (lib.replace("_", "-")) + packages.append(mlprefix + pkg) if not d.getVar("FILES_%s" % pkg): - d.setVar("FILES_%s" % pkg, "${libdir}/libboost_%s*.so.*" % lib) + d.setVar("FILES_%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib) + else: + d.setVar("FILES_%s%s" % (mlprefix, pkg), d.getVar("FILES_%s" % pkg)) + d.setVar("BOOST_PACKAGES", " ".join(packages)) d.setVar("BJAM_EXTRA", " ".join(extras)) } diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_143.bb b/poky/meta/recipes-support/diffoscope/diffoscope_143.bb deleted file mode 100644 index 4ba3832d1..000000000 --- a/poky/meta/recipes-support/diffoscope/diffoscope_143.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "in-depth comparison of files, archives, and directories" -HOMEPAGE = "https://diffoscope.org/" -LICENSE = "GPL-3.0+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -PYPI_PACKAGE = "diffoscope" - -inherit pypi setuptools3 - -SRC_URI[md5sum] = "a86cf8467a5dec99832d5c082928f937" -SRC_URI[sha256sum] = "a1fb4dd97af92bb8ce275d1caf465971726919e28efe5f043bd3ea9afb50574a" - -RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic" - -# Dependencies don't build for musl -COMPATIBLE_HOST_libc-musl = 'null' - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_144.bb b/poky/meta/recipes-support/diffoscope/diffoscope_144.bb new file mode 100644 index 000000000..3a877cae1 --- /dev/null +++ b/poky/meta/recipes-support/diffoscope/diffoscope_144.bb @@ -0,0 +1,18 @@ +SUMMARY = "in-depth comparison of files, archives, and directories" +HOMEPAGE = "https://diffoscope.org/" +LICENSE = "GPL-3.0+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +PYPI_PACKAGE = "diffoscope" + +inherit pypi setuptools3 + +SRC_URI[md5sum] = "4ee9d1a36086caa31ccbc6300ad31652" +SRC_URI[sha256sum] = "9a45464b7b7184fa1ad2af9c52ebac8f00b3dd5dcf9e15dfc00c653c26fcc345" + +RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic" + +# Dependencies don't build for musl +COMPATIBLE_HOST_libc-musl = 'null' + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb b/poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb deleted file mode 100644 index 332af025d..000000000 --- a/poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "ISO language, territory, currency, script codes and their translations" -HOMEPAGE = "https://salsa.debian.org/iso-codes-team/iso-codes" -BUGTRACKER = "https://salsa.debian.org/iso-codes-team/iso-codes/issues" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=http" -SRCREV = "38edb926592954b87eb527124da0ec68d2a748f3" - -# inherit gettext cannot be used, because it adds gettext-native to BASEDEPENDS which -# are inhibited by allarch -DEPENDS = "gettext-native" - -S = "${WORKDIR}/git" - -inherit allarch autotools - -FILES_${PN} += "${datadir}/xml/" diff --git a/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb b/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb new file mode 100644 index 000000000..6f9868ffe --- /dev/null +++ b/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb @@ -0,0 +1,19 @@ +SUMMARY = "ISO language, territory, currency, script codes and their translations" +HOMEPAGE = "https://salsa.debian.org/iso-codes-team/iso-codes" +BUGTRACKER = "https://salsa.debian.org/iso-codes-team/iso-codes/issues" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=http" +SRCREV = "a36019e5014bff251f83d522ddcfebaecf52afd3" + +# inherit gettext cannot be used, because it adds gettext-native to BASEDEPENDS which +# are inhibited by allarch +DEPENDS = "gettext-native" + +S = "${WORKDIR}/git" + +inherit allarch autotools + +FILES_${PN} += "${datadir}/xml/" diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb deleted file mode 100644 index 6731b3373..000000000 --- a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "An HTTP library implementation in C" -HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup" -BUGTRACKER = "https://bugzilla.gnome.org/" -SECTION = "x11/gnome/libs" -LICENSE = "LGPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" - -DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl" - -SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" - -SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz" -SRC_URI[md5sum] = "603f3a945cd6ecc1fda644d7853b3b81" -SRC_URI[sha256sum] = "2d50b12922cc516ab6a7c35844d42f9c8a331668bbdf139232743d82582b3294" - -CVE_PRODUCT = "libsoup" - -S = "${WORKDIR}/libsoup-${PV}" - -inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc - -GIR_MESON_ENABLE_FLAG = 'enabled' -GIR_MESON_DISABLE_FLAG = 'disabled' - -# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default. -PACKAGECONFIG ??= "" -PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false" -PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5" - -EXTRA_OEMESON_append = " -Dvapi=disabled -Dtls_check=false" - -GTKDOC_MESON_OPTION = "gtk_doc" - -# When built without gnome support, libsoup-2.4 will contain only one shared lib -# and will therefore become subject to renaming by debian.bbclass. Prevent -# renaming in order to keep the package name consistent regardless of whether -# gnome support is enabled or disabled. -DEBIAN_NOAUTONAME_${PN} = "1" - -# glib-networking is needed for SSL, proxies, etc. -RRECOMMENDS_${PN} = "glib-networking" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb new file mode 100644 index 000000000..d10db7940 --- /dev/null +++ b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb @@ -0,0 +1,43 @@ +SUMMARY = "An HTTP library implementation in C" +HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup" +BUGTRACKER = "https://bugzilla.gnome.org/" +SECTION = "x11/gnome/libs" +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" + +DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl" + +SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" + +SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz" +SRC_URI[md5sum] = "c539f5b5ab534f024dc4e6a14e6d3f54" +SRC_URI[sha256sum] = "54b020f74aefa438918d8e53cff62e2b1e59efe2de53e06b19a4b07b1f4d5342" + +CVE_PRODUCT = "libsoup" + +S = "${WORKDIR}/libsoup-${PV}" + +inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc + +GIR_MESON_ENABLE_FLAG = 'enabled' +GIR_MESON_DISABLE_FLAG = 'disabled' + +# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default. +PACKAGECONFIG ??= "" +PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false" +PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5" + +EXTRA_OEMESON_append = " -Dvapi=disabled -Dtls_check=false" + +GTKDOC_MESON_OPTION = "gtk_doc" + +# When built without gnome support, libsoup-2.4 will contain only one shared lib +# and will therefore become subject to renaming by debian.bbclass. Prevent +# renaming in order to keep the package name consistent regardless of whether +# gnome support is enabled or disabled. +DEBIAN_NOAUTONAME_${PN} = "1" + +# glib-networking is needed for SSL, proxies, etc. +RRECOMMENDS_${PN} = "glib-networking" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb b/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb index 8c500dcad..d9ca0732f 100644 --- a/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb +++ b/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb @@ -28,7 +28,6 @@ PACKAGECONFIG[libcap] = "--with-libcap, --without-libcap, libcap" PACKAGECONFIG[qt] = "--enable-pinentry-qt, --disable-pinentry-qt, qtbase-native qtbase" PACKAGECONFIG[gtk2] = "--enable-pinentry-gtk2, --disable-pinentry-gtk2, gtk+ glib-2.0" -#To use libsecret, add meta-gnome PACKAGECONFIG[secret] = "--enable-libsecret, --disable-libsecret, libsecret" EXTRA_OECONF = " \ diff --git a/poky/meta/recipes-support/re2c/re2c_1.0.1.bb b/poky/meta/recipes-support/re2c/re2c_1.0.1.bb deleted file mode 100644 index 35200ecde..000000000 --- a/poky/meta/recipes-support/re2c/re2c_1.0.1.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "Tool for writing very fast and very flexible scanners" -HOMEPAGE = "http://re2c.sourceforge.net/" -AUTHOR = "Marcus Börger " -SECTION = "devel" -LICENSE = "PD" -LIC_FILES_CHKSUM = "file://README;beginline=146;md5=881056c9add17f8019ccd8c382ba963a" - -SRC_URI = "https://github.com/skvadrik/re2c/releases/download/${PV}/${BPN}-${PV}.tar.gz" -SRC_URI[md5sum] = "e2c6cf52fc6a21595f21bc82db5324f8" -SRC_URI[sha256sum] = "605058d18a00e01bfc32aebf83af35ed5b13180b4e9f279c90843afab2c66c7c" -UPSTREAM_CHECK_URI = "https://github.com/skvadrik/re2c/releases" - -BBCLASSEXTEND = "native" - -inherit autotools diff --git a/poky/meta/recipes-support/re2c/re2c_1.3.bb b/poky/meta/recipes-support/re2c/re2c_1.3.bb new file mode 100644 index 000000000..0e1d93874 --- /dev/null +++ b/poky/meta/recipes-support/re2c/re2c_1.3.bb @@ -0,0 +1,14 @@ +SUMMARY = "Tool for writing very fast and very flexible scanners" +HOMEPAGE = "http://re2c.sourceforge.net/" +AUTHOR = "Marcus Börger " +SECTION = "devel" +LICENSE = "PD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=64eca4d8a3b67f9dc7656094731a2c8d" + +SRC_URI = "https://github.com/skvadrik/re2c/releases/download/${PV}/${BPN}-${PV}.tar.xz" +SRC_URI[sha256sum] = "f37f25ff760e90088e7d03d1232002c2c2672646d5844fdf8e0d51a5cd75a503" +UPSTREAM_CHECK_URI = "https://github.com/skvadrik/re2c/releases" + +BBCLASSEXTEND = "native nativesdk" + +inherit autotools diff --git a/poky/scripts/lib/checklayer/__init__.py b/poky/scripts/lib/checklayer/__init__.py index 5aeec2f00..113800027 100644 --- a/poky/scripts/lib/checklayer/__init__.py +++ b/poky/scripts/lib/checklayer/__init__.py @@ -143,6 +143,9 @@ def detect_layers(layer_directories, no_auto): def _find_layer_depends(depend, layers): for layer in layers: + if 'collections' not in layer: + continue + for collection in layer['collections']: if depend == collection: return layer diff --git a/poky/scripts/lib/devtool/upgrade.py b/poky/scripts/lib/devtool/upgrade.py index cb6dce378..f962a71e4 100644 --- a/poky/scripts/lib/devtool/upgrade.py +++ b/poky/scripts/lib/devtool/upgrade.py @@ -391,12 +391,12 @@ def _create_new_recipe(newpv, md5, sha256, srcrev, srcbranch, srcsubdir_old, src newvalues['SRC_URI[%s.md5sum]' % name] = None newvalues['SRC_URI[%s.sha256sum]' % name] = None - if md5 and sha256: + if sha256: if addnames: nameprefix = '%s.' % addnames[0] else: nameprefix = '' - newvalues['SRC_URI[%smd5sum]' % nameprefix] = md5 + newvalues['SRC_URI[%smd5sum]' % nameprefix] = None newvalues['SRC_URI[%ssha256sum]' % nameprefix] = sha256 if srcsubdir_new != srcsubdir_old: diff --git a/poky/scripts/lib/resulttool/log.py b/poky/scripts/lib/resulttool/log.py index f1bfd9950..eb3927ec8 100644 --- a/poky/scripts/lib/resulttool/log.py +++ b/poky/scripts/lib/resulttool/log.py @@ -34,13 +34,17 @@ def log(args, logger): return 1 for _, run_name, _, r in resultutils.test_run_results(results): - if args.dump_ptest and 'ptestresult.sections' in r: - for name, ptest in r['ptestresult.sections'].items(): - logdata = resultutils.ptestresult_get_log(r, name) + if args.dump_ptest: + for sectname in ['ptestresult.sections', 'ltpposixresult.sections', 'ltpresult.sections']: + if sectname in r: + for name, ptest in r[sectname].items(): + logdata = resultutils.generic_get_log(sectname, r, name) if logdata is not None: dest_dir = args.dump_ptest if args.prepend_run: dest_dir = os.path.join(dest_dir, run_name) + if not sectname.startswith("ptest"): + dest_dir = os.path.join(dest_dir, sectname.split(".")[0]) os.makedirs(dest_dir, exist_ok=True) dest = os.path.join(dest_dir, '%s.log' % name) @@ -49,10 +53,13 @@ def log(args, logger): f.write(logdata) if args.raw_ptest: - rawlog = resultutils.ptestresult_get_rawlogs(r) - if rawlog is not None: - print(rawlog) - else: + found = False + for sectname in ['ptestresult.rawlogs', 'ltpposixresult.rawlogs', 'ltpresult.rawlogs']: + rawlog = resultutils.generic_get_rawlogs(sectname, r) + if rawlog is not None: + print(rawlog) + found = True + if not found: print('Raw ptest logs not found') return 1 diff --git a/poky/scripts/lib/resulttool/report.py b/poky/scripts/lib/resulttool/report.py index 7ceceac80..f0ca50ebe 100644 --- a/poky/scripts/lib/resulttool/report.py +++ b/poky/scripts/lib/resulttool/report.py @@ -96,7 +96,6 @@ class ResultsTextReport(object): if 'ltpresult.sections' in result and suite not in result['ltpresult.sections']: try: _, suite, suite1, test = k.split(".", 3) - print("split2: %s %s %s" % (suite, suite1, test)) if suite + "." + suite1 in result['ltpresult.sections']: suite = suite + "." + suite1 except ValueError: diff --git a/poky/scripts/lib/resulttool/resultutils.py b/poky/scripts/lib/resulttool/resultutils.py index 5fec01f6f..8917022d3 100644 --- a/poky/scripts/lib/resulttool/resultutils.py +++ b/poky/scripts/lib/resulttool/resultutils.py @@ -130,23 +130,29 @@ def decode_log(logdata): return data.decode("utf-8", errors='ignore') return None -def ptestresult_get_log(results, section): - if 'ptestresult.sections' not in results: +def generic_get_log(sectionname, results, section): + if sectionname not in results: return None - if section not in results['ptestresult.sections']: + if section not in results[sectionname]: return None - ptest = results['ptestresult.sections'][section] + ptest = results[sectionname][section] if 'log' not in ptest: return None return decode_log(ptest['log']) -def ptestresult_get_rawlogs(results): - if 'ptestresult.rawlogs' not in results: +def ptestresult_get_log(results, section): + return generic_get_log('ptestresuls.sections', results, section) + +def generic_get_rawlogs(sectname, results): + if sectname not in results: return None - if 'log' not in results['ptestresult.rawlogs']: + if 'log' not in results[sectname]: return None - return decode_log(results['ptestresult.rawlogs']['log']) + return decode_log(results[sectname]['log']) + +def ptestresult_get_rawlogs(results): + return generic_get_rawlogs('ptestresult.rawlogs', results) def save_resultsdata(results, destdir, fn="testresults.json", ptestjson=False, ptestlogs=False): for res in results: diff --git a/poky/scripts/multilib_header_wrapper.h b/poky/scripts/multilib_header_wrapper.h index c81e7ee5e..88f319381 100644 --- a/poky/scripts/multilib_header_wrapper.h +++ b/poky/scripts/multilib_header_wrapper.h @@ -5,26 +5,9 @@ * */ -#pragma once - -#if defined (__bpf__) -#define __MHWORDSIZE 64 -#elif defined (__arm__) -#define __MHWORDSIZE 32 -#elif defined (__aarch64__) && defined ( __LP64__) -#define __MHWORDSIZE 64 -#elif defined (__aarch64__) -#define __MHWORDSIZE 32 -#else #include -#if defined (__WORDSIZE) -#define __MHWORDSIZE __WORDSIZE -#else -#error "__WORDSIZE is not defined" -#endif -#endif -#if __MHWORDSIZE == 32 +#if __WORDSIZE == 32 #ifdef _MIPS_SIM @@ -40,7 +23,7 @@ #include #endif -#elif __MHWORDSIZE == 64 +#elif __WORDSIZE == 64 #include #else #error "Unknown __WORDSIZE detected" -- cgit v1.2.3