From 6e60e8b2b2bab889379b380a28a167a0edd9d1d3 Mon Sep 17 00:00:00 2001 From: Brad Bishop Date: Thu, 1 Feb 2018 10:27:11 -0500 Subject: Yocto 2.3 Move OpenBMC to Yocto 2.3(pyro). Tested: Built and verified Witherspoon and Palmetto images Change-Id: I50744030e771f4850afc2a93a10d3507e76d36bc Signed-off-by: Brad Bishop Resolves: openbmc/openbmc#2461 --- .../meta/recipes-graphics/cairo/cairo-fpu.inc | 2 +- .../meta/recipes-graphics/cairo/cairo.inc | 3 +- .../meta/recipes-graphics/cairo/cairo_1.14.6.bb | 43 -- .../meta/recipes-graphics/cairo/cairo_1.14.8.bb | 43 ++ .../cantarell-fonts/cantarell-fonts_git.bb | 2 +- .../meta/recipes-graphics/clutter/clutter-1.0.inc | 2 +- .../clutter/clutter-gst-3.0_3.0.18.bb | 7 - .../clutter/clutter-gst-3.0_3.0.22.bb | 7 + .../clutter/clutter-gtk-1.0_1.8.0.bb | 6 - .../clutter/clutter-gtk-1.0_1.8.2.bb | 6 + ...Fix-an-incorrect-preprocessor-conditional.patch | 32 ++ .../meta/recipes-graphics/cogl/cogl-1.0_1.22.0.bb | 7 - .../meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb | 8 + .../recipes-graphics/drm/libdrm/installtests.patch | 28 +- .../meta/recipes-graphics/drm/libdrm_2.4.70.bb | 47 --- .../meta/recipes-graphics/drm/libdrm_2.4.75.bb | 51 +++ .../recipes-graphics/eglinfo/eglinfo-fb_1.0.0.bb | 2 +- .../recipes-graphics/eglinfo/eglinfo-x11_1.0.0.bb | 5 +- .../meta/recipes-graphics/eglinfo/eglinfo.inc | 2 + ...icts-with-integer-width-macros-from-TS-18.patch | 72 ++++ .../fontconfig/fontconfig_2.12.1.bb | 3 +- .../recipes-graphics/freetype/freetype_2.6.5.bb | 49 --- .../recipes-graphics/freetype/freetype_2.7.1.bb | 49 +++ .../meta/recipes-graphics/glew/glew_2.0.0.bb | 19 +- .../recipes-graphics/harfbuzz/harfbuzz_1.3.0.bb | 39 -- .../recipes-graphics/harfbuzz/harfbuzz_1.4.1.bb | 39 ++ .../jpeg/libjpeg-turbo/fix-mips.patch | 45 +++ .../recipes-graphics/jpeg/libjpeg-turbo_1.5.0.bb | 46 --- .../recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb | 51 +++ ...-platforms-based-on-configuration-results.patch | 128 ------ ...0002-add-an-option-to-disable-glx-support.patch | 42 -- .../libepoxy/libepoxy/no-need-for-python3.patch | 20 - .../recipes-graphics/libepoxy/libepoxy_1.4.0.bb | 20 + .../meta/recipes-graphics/libepoxy/libepoxy_git.bb | 27 -- .../meta/recipes-graphics/libsdl/libsdl_1.2.15.bb | 9 +- ...-sysroot-path-so-that-make-finds-our-wayl.patch | 34 ++ ...ideo-make-it-compatible-with-wayland-1.10.patch | 57 --- ...void-finding-build-host-s-wayland-scanner.patch | 31 ++ .../libsdl2/libsdl2/fix-build-failure-on-ppc.patch | 50 +++ .../meta/recipes-graphics/libsdl2/libsdl2_2.0.4.bb | 68 ---- .../meta/recipes-graphics/libsdl2/libsdl2_2.0.5.bb | 69 ++++ ...-configure.ac-Use-wayland-scanner-in-PATH.patch | 37 ++ ...and-Don-t-commit-and-ship-generated-files.patch | 339 ++++++++++++++++ .../meta/recipes-graphics/libva/libva_1.7.3.bb | 53 +++ .../matchbox-wm/matchbox-wm_1.2.1.bb | 39 -- .../matchbox-wm/matchbox-wm_1.2.2.bb | 39 ++ .../menu-cache/menu-cache_1.0.1.bb | 18 - .../menu-cache/menu-cache_1.0.2.bb | 18 + .../0001-Use-wayland-scanner-in-the-path.patch | 37 ++ .../mesa/files/clang-compile-PR89599.patch | 116 ------ .../files/replace_glibc_check_with_linux.patch | 25 +- .../meta/recipes-graphics/mesa/libglu_9.0.0.bb | 2 +- .../meta/recipes-graphics/mesa/mesa-demos_8.3.0.bb | 4 +- .../meta/recipes-graphics/mesa/mesa-gl_12.0.1.bb | 13 - .../meta/recipes-graphics/mesa/mesa-gl_17.0.2.bb | 13 + .../yocto-poky/meta/recipes-graphics/mesa/mesa.inc | 41 +- .../meta/recipes-graphics/mesa/mesa_12.0.1.bb | 18 - .../meta/recipes-graphics/mesa/mesa_17.0.2.bb | 18 + .../packagegroups/packagegroup-core-x11-xserver.bb | 2 +- .../packagegroups/packagegroup-core-x11.bb | 9 +- .../meta/recipes-graphics/pango/pango_1.40.1.bb | 52 --- .../meta/recipes-graphics/pango/pango_1.40.3.bb | 52 +++ ...fine-GBM_BO_MAP-only-when-symbol-is-found.patch | 51 +++ .../0001-cmake-Link-test-utils-with-ldl.patch | 41 -- ...0001-cmake-Link-utils-with-xcb-explicitly.patch | 54 --- ...nour-Surfaceless-MESA-in-get_default_disp.patch | 54 +++ ...atform_surfaceless-Don-t-use-eglGetPlatfo.patch | 36 ++ ...atform_surfaceless-Use-EXT-functions-for-.patch | 78 ++++ .../meta/recipes-graphics/piglit/piglit_git.bb | 17 +- .../recipes-graphics/pong-clock/pong-clock_1.0.bb | 2 +- ...se-getenv-if-secure_getenv-does-not-exist.patch | 34 ++ .../vulkan/demos-Don-t-build-tri-or-cube.patch | 106 +++++ .../recipes-graphics/vulkan/vulkan_1.0.39.1.bb | 34 ++ .../meta/recipes-graphics/waffle/waffle_1.5.2.bb | 11 +- .../recipes-graphics/wayland/libinput_1.4.1.bb | 25 -- .../recipes-graphics/wayland/libinput_1.6.1.bb | 25 ++ ...0001-scanner-Use-unit32_t-instead-of-uint.patch | 30 -- .../recipes-graphics/wayland/wayland_1.11.0.bb | 43 -- .../recipes-graphics/wayland/wayland_1.13.0.bb | 41 ++ .../meta/recipes-graphics/wayland/weston-init.bb | 2 +- ...1-configure.ac-Fix-wayland-protocols-path.patch | 11 +- .../wayland/weston/0001-make-error-portable.patch | 30 +- .../0001-shared-include-stdint.h-for-int32_t.patch | 28 -- ...ch-Provide-a-default-version-that-doesn-t.patch | 45 +-- ...eston-launch-exit-for-unrecognized-option.patch | 33 -- ...on-1.11-config-option-for-no-input-device.patch | 123 ------ ...t-pitch-correctly-for-subsampled-textures.patch | 55 +++ .../meta/recipes-graphics/wayland/weston_1.11.0.bb | 118 ------ .../meta/recipes-graphics/wayland/weston_2.0.0.bb | 115 ++++++ .../x11-common/x11-common/etc/X11/Xdefaults | 3 - .../x11-common/x11-common/etc/X11/Xsession | 38 -- .../x11-common/etc/X11/Xsession.d/12keymap.sh | 4 - .../x11-common/etc/X11/Xsession.d/13xdgbasedirs.sh | 13 - .../etc/X11/Xsession.d/89xdgautostart.sh | 7 - .../etc/X11/Xsession.d/90XWindowManager.sh | 7 - .../x11-common/x11-common/etc/X11/default.xmodmap | 260 ------------ .../x11-common/x11-common/gplv2-license.patch | 355 ----------------- .../recipes-graphics/x11-common/x11-common_0.1.bb | 22 -- .../x11-common/xserver-nodm-init.bb | 61 --- .../x11-common/xserver-nodm-init/X11/Xsession | 38 ++ .../X11/Xsession.d/13xdgbasedirs.sh | 13 + .../X11/Xsession.d/89xdgautostart.sh | 7 + .../X11/Xsession.d/90XWindowManager.sh | 7 + .../xserver-nodm-init/xserver-nodm.conf.in | 2 +- .../x11-common/xserver-nodm-init_3.0.bb | 69 ++++ .../add-geometry-input-when-calibrating.patch | 34 -- .../xinput-calibrator/xinput-calibrator_git.bb | 9 +- .../recipes-graphics/xorg-app/mkfontdir_1.0.7.bb | 3 - .../recipes-graphics/xorg-app/mkfontscale_1.1.2.bb | 2 - .../meta/recipes-graphics/xorg-app/xauth_1.0.10.bb | 15 + .../meta/recipes-graphics/xorg-app/xauth_1.0.9.bb | 15 - .../meta/recipes-graphics/xorg-app/xhost_1.0.7.bb | 2 +- .../xorg-driver/xf86-input-evdev_2.10.3.bb | 20 - .../xorg-driver/xf86-input-evdev_2.10.5.bb | 21 + .../xorg-driver/xf86-input-keyboard_1.8.1.bb | 13 - .../xorg-driver/xf86-input-keyboard_1.9.0.bb | 13 + .../xorg-driver/xf86-input-keyboard_git.bb | 16 - .../xorg-driver/xf86-input-libinput_0.19.0.bb | 11 - .../xorg-driver/xf86-input-libinput_0.24.0.bb | 11 + .../xorg-driver/xf86-input-mouse/unbreak.patch | 21 - .../xorg-driver/xf86-input-mouse_1.9.1.bb | 15 - .../xorg-driver/xf86-input-mouse_1.9.2.bb | 14 + .../xorg-driver/xf86-input-mouse_git.bb | 18 - .../xorg-driver/xf86-input-synaptics_1.8.3.bb | 16 - .../xorg-driver/xf86-input-synaptics_1.9.0.bb | 16 + .../xorg-driver/xf86-input-synaptics_git.bb | 18 - .../xorg-driver/xf86-video-intel_git.bb | 3 +- .../xorg-driver/xf86-video-omap_0.4.4.bb | 41 -- .../xorg-driver/xf86-video-omap_0.4.5.bb | 41 ++ .../0002-add-option-for-vmwgfx.patch | 37 +- .../xorg-driver/xf86-video-vmware_13.1.0.bb | 19 - .../xorg-driver/xf86-video-vmware_13.2.1.bb | 19 + .../xorg-driver/xorg-driver-common.inc | 4 +- .../xorg-driver/xorg-driver-input.inc | 2 +- .../xorg-driver/xorg-driver-video.inc | 2 +- .../xorg-font/xorg-font-common.inc | 4 +- .../meta/recipes-graphics/xorg-lib/libice_1.0.9.bb | 2 +- .../meta/recipes-graphics/xorg-lib/libsm_1.2.2.bb | 2 +- .../recipes-graphics/xorg-lib/libx11-diet_1.6.3.bb | 19 - .../recipes-graphics/xorg-lib/libx11-diet_1.6.4.bb | 19 + .../xorg-lib/libx11/CVE-2016-7942.patch | 69 ---- .../xorg-lib/libx11/CVE-2016-7943.patch | 103 ----- .../libx11/libX11-Add-missing-NULL-check.patch | 72 ---- .../meta/recipes-graphics/xorg-lib/libx11_1.6.3.bb | 13 - .../meta/recipes-graphics/xorg-lib/libx11_1.6.4.bb | 10 + .../recipes-graphics/xorg-lib/libxfixes_5.0.2.bb | 22 -- .../recipes-graphics/xorg-lib/libxfixes_5.0.3.bb | 23 ++ .../recipes-graphics/xorg-lib/libxfont2_2.0.1.bb | 22 ++ .../recipes-graphics/xorg-lib/libxfont_1.5.1.bb | 25 -- .../recipes-graphics/xorg-lib/libxfont_1.5.2.bb | 25 ++ .../meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb | 2 +- .../meta/recipes-graphics/xorg-lib/libxi_1.7.6.bb | 21 - .../meta/recipes-graphics/xorg-lib/libxi_1.7.9.bb | 22 ++ .../xorg-lib/libxkbcommon_0.6.1.bb | 22 -- .../xorg-lib/libxkbcommon_0.7.1.bb | 22 ++ .../meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb | 2 +- .../recipes-graphics/xorg-lib/libxpm_3.5.11.bb | 27 -- .../recipes-graphics/xorg-lib/libxpm_3.5.12.bb | 27 ++ .../libxrandr/CVE-2016-7947_CVE-2016-7948.patch | 439 --------------------- .../recipes-graphics/xorg-lib/libxrandr_1.5.0.bb | 26 -- .../recipes-graphics/xorg-lib/libxrandr_1.5.1.bb | 23 ++ .../xorg-lib/libxrender/CVE-2016-7949.patch | 59 --- .../recipes-graphics/xorg-lib/libxrender_0.9.10.bb | 24 ++ .../recipes-graphics/xorg-lib/libxrender_0.9.9.bb | 26 -- .../recipes-graphics/xorg-lib/libxtst_1.2.3.bb | 1 + .../meta/recipes-graphics/xorg-lib/libxv_1.0.10.bb | 18 - .../meta/recipes-graphics/xorg-lib/libxv_1.0.11.bb | 19 + .../recipes-graphics/xorg-lib/libxvmc_1.0.10.bb | 19 + .../recipes-graphics/xorg-lib/libxvmc_1.0.9.bb | 19 - .../xorg-lib/xkeyboard-config_2.18.bb | 31 -- .../xorg-lib/xkeyboard-config_2.20.bb | 31 ++ .../xorg-proto/presentproto_git.bb | 6 +- .../recipes-graphics/xorg-proto/xproto_7.0.29.bb | 19 - .../recipes-graphics/xorg-proto/xproto_7.0.31.bb | 19 + .../xorg-util/util-macros_1.19.0.bb | 19 - .../xorg-util/util-macros_1.19.1.bb | 19 + .../xserver-xf86-config/10-preload-modules.conf | 9 - .../xserver-xf86-config/qemuarm/xorg.conf | 31 -- .../xserver-xf86-config/qemumips/xorg.conf | 31 -- .../xserver-xf86-config/qemumips64/xorg.conf | 31 -- .../xserver-xf86-config/qemuppc/xorg.conf | 31 -- .../xserver-xf86-config/qemush4/xorg.conf | 31 -- .../xserver-xf86-config/qemux86-64/xorg.conf | 31 -- .../xserver-xf86-config/qemux86/xorg.conf | 31 -- .../xorg-xserver/xserver-xf86-config_0.1.bb | 8 - .../recipes-graphics/xorg-xserver/xserver-xorg.inc | 18 +- ...onfigure.ac-Fix-check-for-CLOCK_MONOTONIC.patch | 61 +++ ...c-Fix-wayland-scanner-and-protocols-locat.patch | 38 ++ .../0003-Remove-check-for-useSIGIO-option.patch | 47 +++ ...003-modesetting-Fix-16-bit-depth-bpp-mode.patch | 46 +++ .../xserver-xorg/CVE-2017-10971-1.patch | 76 ++++ .../xserver-xorg/CVE-2017-10971-2.patch | 55 +++ .../xserver-xorg/CVE-2017-10971-3.patch | 50 +++ .../xorg-xserver/xserver-xorg_1.18.4.bb | 27 -- .../xorg-xserver/xserver-xorg_1.19.1.bb | 35 ++ 195 files changed, 3061 insertions(+), 3852 deletions(-) delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.6.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.8.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.18.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.22.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.2.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.70.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.75.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.6.5.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.7.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.3.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.4.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo/fix-mips.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0001-select-platforms-based-on-configuration-results.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0002-add-an-option-to-disable-glx-support.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/no-need-for-python3.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_git.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-prepend-our-sysroot-path-so-that-make-finds-our-wayl.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-src-video-make-it-compatible-with-wayland-1.10.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Avoid-finding-build-host-s-wayland-scanner.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/fix-build-failure-on-ppc.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.4.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.5.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-configure.ac-Use-wayland-scanner-in-PATH.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-wayland-Don-t-commit-and-ship-generated-files.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/libva/libva_1.7.3.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.2.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/mesa/files/0001-Use-wayland-scanner-in-the-path.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/mesa/files/clang-compile-PR89599.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_12.0.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_17.0.2.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_12.0.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_17.0.2.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.3.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-test-utils-with-ldl.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-utils-with-xcb-explicitly.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.4.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.6.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Use-unit32_t-instead-of-uint.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.11.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.13.0.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-1.11-config-option-for-no-input-device.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_1.11.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_2.0.0.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xdefaults delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/12keymap.sh delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/13xdgbasedirs.sh delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/89xdgautostart.sh delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/90XWindowManager.sh delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/default.xmodmap delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/gplv2-license.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common_0.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession.d/13xdgbasedirs.sh create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession.d/89xdgautostart.sh create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession.d/90XWindowManager.sh create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator/add-geometry-input-when-calibrating.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.10.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.9.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.3.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.5.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.8.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.9.0.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_git.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.19.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.24.0.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse/unbreak.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.2.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_git.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.8.3.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.0.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_git.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.4.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.5.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.1.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.2.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.3.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.4.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7942.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7943.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/libX11-Add-missing-NULL-check.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.3.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.4.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.2.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.3.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.2.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.6.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.9.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.6.1.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.7.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.11.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr/CVE-2016-7947_CVE-2016-7948.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender/CVE-2016-7949.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.10.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.9.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.10.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.11.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.9.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.18.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.20.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.29.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.31.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.0.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.1.bb delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/10-preload-modules.conf create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0002-configure.ac-Fix-wayland-scanner-and-protocols-locat.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-modesetting-Fix-16-bit-depth-bpp-mode.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-1.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-2.patch create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-3.patch delete mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.18.4.bb create mode 100644 import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb (limited to 'import-layers/yocto-poky/meta/recipes-graphics') diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo-fpu.inc b/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo-fpu.inc index ef72e8904..fe7c53337 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo-fpu.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo-fpu.inc @@ -1,6 +1,6 @@ def get_cairo_fpu_setting(bb, d): - if d.getVar('TARGET_FPU', True) in [ 'soft' ]: + if d.getVar('TARGET_FPU') in [ 'soft' ]: return "--disable-some-floating-point" return "" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo.inc b/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo.inc index c4b6f329e..8e1e2e1b8 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo.inc @@ -13,6 +13,7 @@ SECTION = "libs" LICENSE = "MPL-1 & LGPLv2.1 & GPLv3+" LICENSE_${PN} = "MPL-1 & LGPLv2.1" LICENSE_${PN}-dev = "MPL-1 & LGPLv2.1" +LICENSE_${PN}-doc = "MPL-1 & LGPLv2.1" LICENSE_${PN}-gobject = "MPL-1 & LGPLv2.1" LICENSE_${PN}-script-interpreter = "MPL-1 & LGPLv2.1" LICENSE_${PN}-perf-utils = "GPLv3+" @@ -21,7 +22,7 @@ X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}" + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.6.bb b/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.6.bb deleted file mode 100644 index d2c1e12cd..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.6.bb +++ /dev/null @@ -1,43 +0,0 @@ -require cairo.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77" - -SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.xz" - -SRC_URI[md5sum] = "23a0b2f0235431d35238df1d3a517fdb" -SRC_URI[sha256sum] = "613cb38447b76a93ff7235e17acd55a78b52ea84a9df128c3f2257f8eaa7b252" - -PACKAGES =+ "cairo-gobject cairo-script-interpreter cairo-perf-utils" - -SUMMARY_${PN} = "The Cairo 2D vector graphics library" -DESCRIPTION_${PN} = "Cairo is a multi-platform library providing anti-aliased \ -vector-based rendering for multiple target backends. Paths consist \ -of line segments and cubic splines and can be rendered at any width \ -with various join and cap styles. All colors may be specified with \ -optional translucence (opacity/alpha) and combined using the \ -extended Porter/Duff compositing algebra as found in the X Render \ -Extension." - -SUMMARY_cairo-gobject = "The Cairo library GObject wrapper library" -DESCRIPTION_cairo-gobject = "A GObject wrapper library for the Cairo API." - -SUMMARY_cairo-script-interpreter = "The Cairo library script interpreter" -DESCRIPTION_cairo-script-interpreter = "The Cairo script interpreter implements \ -CairoScript. CairoScript is used by tracing utilities to enable the ability \ -to replay rendering." - -DESCRIPTION_cairo-perf-utils = "The Cairo library performance utilities" - -FILES_${PN} = "${libdir}/libcairo.so.*" -FILES_${PN}-dev += "${libdir}/cairo/*.so" -FILES_${PN}-gobject = "${libdir}/libcairo-gobject.so.*" -FILES_${PN}-script-interpreter = "${libdir}/libcairo-script-interpreter.so.*" -FILES_${PN}-perf-utils = "${bindir}/cairo-trace ${libdir}/cairo/*.la ${libdir}/cairo/libcairo-trace.so.*" - -do_install_append () { - rm -rf ${D}${bindir}/cairo-sphinx - rm -rf ${D}${libdir}/cairo/cairo-fdr* - rm -rf ${D}${libdir}/cairo/cairo-sphinx* - rm -rf ${D}${libdir}/cairo/.debug/cairo-fdr* - rm -rf ${D}${libdir}/cairo/.debug/cairo-sphinx* -} diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.8.bb b/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.8.bb new file mode 100644 index 000000000..5a3c74f8e --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/cairo/cairo_1.14.8.bb @@ -0,0 +1,43 @@ +require cairo.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77" + +SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.xz" + +SRC_URI[md5sum] = "4ef0db2eacb271c74f8a3fd87822aa98" +SRC_URI[sha256sum] = "d1f2d98ae9a4111564f6de4e013d639cf77155baf2556582295a0f00a9bc5e20" + +PACKAGES =+ "cairo-gobject cairo-script-interpreter cairo-perf-utils" + +SUMMARY_${PN} = "The Cairo 2D vector graphics library" +DESCRIPTION_${PN} = "Cairo is a multi-platform library providing anti-aliased \ +vector-based rendering for multiple target backends. Paths consist \ +of line segments and cubic splines and can be rendered at any width \ +with various join and cap styles. All colors may be specified with \ +optional translucence (opacity/alpha) and combined using the \ +extended Porter/Duff compositing algebra as found in the X Render \ +Extension." + +SUMMARY_cairo-gobject = "The Cairo library GObject wrapper library" +DESCRIPTION_cairo-gobject = "A GObject wrapper library for the Cairo API." + +SUMMARY_cairo-script-interpreter = "The Cairo library script interpreter" +DESCRIPTION_cairo-script-interpreter = "The Cairo script interpreter implements \ +CairoScript. CairoScript is used by tracing utilities to enable the ability \ +to replay rendering." + +DESCRIPTION_cairo-perf-utils = "The Cairo library performance utilities" + +FILES_${PN} = "${libdir}/libcairo.so.*" +FILES_${PN}-dev += "${libdir}/cairo/*.so" +FILES_${PN}-gobject = "${libdir}/libcairo-gobject.so.*" +FILES_${PN}-script-interpreter = "${libdir}/libcairo-script-interpreter.so.*" +FILES_${PN}-perf-utils = "${bindir}/cairo-trace ${libdir}/cairo/*.la ${libdir}/cairo/libcairo-trace.so.*" + +do_install_append () { + rm -rf ${D}${bindir}/cairo-sphinx + rm -rf ${D}${libdir}/cairo/cairo-fdr* + rm -rf ${D}${libdir}/cairo/cairo-sphinx* + rm -rf ${D}${libdir}/cairo/.debug/cairo-fdr* + rm -rf ${D}${libdir}/cairo/.debug/cairo-sphinx* +} diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_git.bb index e3e4cde2c..c71ab1165 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_git.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_git.bb @@ -18,7 +18,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P(?!0\.13)(?!0\.10\.1)\d+\.\d+(\.\d+)+)" S = "${WORKDIR}/git" -inherit autotools allarch fontcache +inherit autotools allarch fontcache pkgconfig PACKAGECONFIG ??= "" PACKAGECONFIG[fontforge] = "--enable-source-rebuild=yes,--enable-source-rebuild=no,fontforge-native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-1.0.inc b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-1.0.inc index c6ecd0804..6dbbf4d80 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-1.0.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-1.0.inc @@ -35,7 +35,7 @@ PACKAGECONFIG[wayland-compositor] = "--enable-wayland-compositor,--disable-wayla # Default configuration, distros might want to override PACKAGECONFIG ??= "egl \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11', '', d)}" FILES_${PN}-examples = "${libdir}/clutter/examples" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.18.bb b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.18.bb deleted file mode 100644 index 9626cd905..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.18.bb +++ /dev/null @@ -1,7 +0,0 @@ -require clutter-gst-3.0.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ - file://clutter-gst/clutter-gst.h;beginline=1;endline=24;md5=95baacba194e814c110ea3bdf25ddbf4" - -SRC_URI[archive.md5sum] = "3e4f64477f26d9cfd2db06d3aaed203a" -SRC_URI[archive.sha256sum] = "0aec0d0c6020cd19a5bb0dab1165a92748f81a9a3acdfabb0f966d5f53bc8093" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.22.bb b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.22.bb new file mode 100644 index 000000000..6177c9180 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gst-3.0_3.0.22.bb @@ -0,0 +1,7 @@ +require clutter-gst-3.0.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ + file://clutter-gst/clutter-gst.h;beginline=1;endline=24;md5=95baacba194e814c110ea3bdf25ddbf4" + +SRC_URI[archive.md5sum] = "88eea2dd5fc4357b5b18f1dfeed56c62" +SRC_URI[archive.sha256sum] = "f1fc57fb32ea7e3d9234b58db35eb9ef3028cf0b266d85235f959edc0fe3dfd4" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.0.bb deleted file mode 100644 index 675365cbb..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.0.bb +++ /dev/null @@ -1,6 +0,0 @@ -require clutter-gtk-1.0.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" - -SRC_URI[archive.md5sum] = "351cf9229cf941d36b441ede2236d742" -SRC_URI[archive.sha256sum] = "742ef9d68ece36cbb1b2e1a4a6fbdad932f6645360be7e6de75abbb140dfbf1d" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.2.bb new file mode 100644 index 000000000..78050df7d --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/clutter/clutter-gtk-1.0_1.8.2.bb @@ -0,0 +1,6 @@ +require clutter-gtk-1.0.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" + +SRC_URI[archive.md5sum] = "6698207ee6e3d5a1c0ffc0a23444e12f" +SRC_URI[archive.sha256sum] = "da27d486325490ad3f65d2abf9413aeb8b4a8f7b559e4b2f73567a5344a26b94" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch b/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch new file mode 100644 index 000000000..2a9d8f829 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch @@ -0,0 +1,32 @@ +Signed-off-by: Jussi Kukkonen +Upstream-Status: Backport + + +Original upstream commit follows: + +From b583e21d8698dbd58013320cfb47739102efdea7 Mon Sep 17 00:00:00 2001 +From: Kalev Lember +Date: Wed, 19 Oct 2016 23:38:28 +0200 +Subject: [PATCH] Fix an incorrect preprocessor conditional + +This fixes the build with wayland wayland egl server support disabled. +--- + cogl/winsys/cogl-winsys-egl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cogl/winsys/cogl-winsys-egl.c b/cogl/winsys/cogl-winsys-egl.c +index 39bfd884..4a9f3aa6 100644 +--- a/cogl/winsys/cogl-winsys-egl.c ++++ b/cogl/winsys/cogl-winsys-egl.c +@@ -1029,7 +1029,7 @@ _cogl_egl_create_image (CoglContext *ctx, + egl_ctx = EGL_NO_CONTEXT; + else + #endif +-#if COGL_HAS_WAYLAND_EGL_SERVER_SUPPORT ++#ifdef COGL_HAS_WAYLAND_EGL_SERVER_SUPPORT + /* The WL_bind_wayland_display spec states that EGL_NO_CONTEXT is to be used + * in conjunction with the EGL_WAYLAND_BUFFER_WL target */ + if (target == EGL_WAYLAND_BUFFER_WL) +-- +2.11.0 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.0.bb deleted file mode 100644 index ed10c7a39..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.0.bb +++ /dev/null @@ -1,7 +0,0 @@ -require cogl-1.0.inc - -SRC_URI += "file://test-backface-culling.c-fix-may-be-used-uninitialize.patch" - -LIC_FILES_CHKSUM = "file://COPYING;md5=1b1a508d91d25ca607c83f92f3e31c84" -SRC_URI[archive.md5sum] = "ab684ec96848d79d22757fb3064820c8" -SRC_URI[archive.sha256sum] = "689dfb5d14fc1106e9d2ded0f7930dcf7265d0bc84fa846b4f03941633eeaa91" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb new file mode 100644 index 000000000..5901062a4 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb @@ -0,0 +1,8 @@ +require cogl-1.0.inc + +SRC_URI += "file://test-backface-culling.c-fix-may-be-used-uninitialize.patch \ + file://0001-Fix-an-incorrect-preprocessor-conditional.patch" +SRC_URI[archive.md5sum] = "d53b708ca7c4af03d7254e46945d6b33" +SRC_URI[archive.sha256sum] = "39a718cdb64ea45225a7e94f88dddec1869ab37a21b339ad058a9d898782c00d" + +LIC_FILES_CHKSUM = "file://COPYING;md5=1b1a508d91d25ca607c83f92f3e31c84" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm/installtests.patch b/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm/installtests.patch index 30e0a61fd..ec1fb0236 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm/installtests.patch +++ b/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm/installtests.patch @@ -1,15 +1,25 @@ -tests: also install tests app +From 5c6eb43c2f6e7f2ee7c25c92e42f4e4403fa0527 Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen +Date: Tue, 21 Feb 2017 14:37:52 +0200 +Subject: [PATCH] tests: also install test apps Upstream-Status: Inappropriate [configuration] Signed-off-by: Yu Ke +Signed-off-by: Jussi Kukkonen +--- + tests/Makefile.am | 1 + + 1 file changed, 1 insertion(+) -Index: libdrm-2.4.66/tests/Makefile.am -=================================================================== ---- libdrm-2.4.66.orig/tests/Makefile.am -+++ libdrm-2.4.66/tests/Makefile.am -@@ -73,3 +73,4 @@ TESTS += \ - endif - - check_PROGRAMS += $(TESTS) +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 0355a92..b4882cd 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -45,3 +45,4 @@ TESTS = \ + check_PROGRAMS = \ + $(TESTS) \ + drmdevice +bin_PROGRAMS = $(check_PROGRAMS) +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.70.bb b/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.70.bb deleted file mode 100644 index a2b5282ea..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.70.bb +++ /dev/null @@ -1,47 +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 udev libpciaccess" - -SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.bz2 \ - file://installtests.patch \ - file://fix_O_CLOEXEC_undeclared.patch \ - file://0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch \ - " - -SRC_URI[md5sum] = "920957cfe25a80efb02be9bd90bf3c1e" -SRC_URI[sha256sum] = "b17d4b39ed97ca0e4cffa0db06ff609e617bac94646ec38e8e0579d530540e7b" - -inherit autotools pkgconfig - -EXTRA_OECONF += "--disable-cairo-tests \ - --without-cunit \ - --enable-omap-experimental-api \ - --enable-install-test-programs \ - --disable-manpages \ - --disable-valgrind \ - " - -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" - -RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \ - ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu" - -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.*" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.75.bb b/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.75.bb new file mode 100644 index 000000000..56963d487 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/drm/libdrm_2.4.75.bb @@ -0,0 +1,51 @@ +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 libpciaccess" + +SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.bz2 \ + file://installtests.patch \ + file://fix_O_CLOEXEC_undeclared.patch \ + file://0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch \ + " + +SRC_URI[md5sum] = "57b0589122ec4b8d5dfb9e430a21f0b3" +SRC_URI[sha256sum] = "2d5a500eef412cc287d12268eed79d571e262d4957a2ec9258073f305985054f" + +inherit autotools pkgconfig manpages + +EXTRA_OECONF += "--disable-cairo-tests \ + --without-cunit \ + --enable-omap-experimental-api \ + --enable-etnaviv-experimental-api \ + --enable-install-test-programs \ + --disable-valgrind \ + " +PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, 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.*" +FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.0.bb index 455d31e87..dc2820cda 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.0.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.0.bb @@ -1,6 +1,6 @@ EGLINFO_PLATFORM ?= "fb" EGLINFO_BINARY_NAME ?= "eglinfo-fb" -include eglinfo.inc +require eglinfo.inc SUMMARY += "(Framebuffer version)" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.0.bb index 3427fdf42..48ab8805d 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.0.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.0.bb @@ -1,12 +1,13 @@ EGLINFO_PLATFORM ?= "x11" EGLINFO_BINARY_NAME ?= "eglinfo-x11" -include eglinfo.inc +require eglinfo.inc DEPENDS += "virtual/libx11" inherit distro_features_check + # depends on virtual/libx11 -REQUIRED_DISTRO_FEATURES = "x11" +REQUIRED_DISTRO_FEATURES += "x11" SUMMARY += "(X11 version)" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo.inc b/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo.inc index d0c0c2761..8e7d9bddd 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/eglinfo/eglinfo.inc @@ -11,6 +11,8 @@ SRC_URI = "git://github.com/dv1/eglinfo.git;branch=master \ " SRCREV = "4b317648ec6cf39556a9e5d8078f605bc0edd5de" +CVE_PRODUCT = "eglinfo" + S = "${WORKDIR}/git" inherit waf distro_features_check diff --git a/import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch b/import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch new file mode 100644 index 000000000..cad71707a --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch @@ -0,0 +1,72 @@ +From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 11 Dec 2016 14:32:00 -0800 +Subject: [PATCH] Avoid conflicts with integer width macros from TS + 18661-1:2014 + +glibc 2.25+ has now defined these macros in +https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a + +Signed-off-by: Khem Raj +--- +Upstream-Status: Submitted + + fontconfig/fontconfig.h | 2 +- + src/fcobjs.h | 2 +- + src/fcobjshash.gperf | 2 +- + src/fcobjshash.h | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +Index: fontconfig-2.12.1/fontconfig/fontconfig.h +=================================================================== +--- fontconfig-2.12.1.orig/fontconfig/fontconfig.h ++++ fontconfig-2.12.1/fontconfig/fontconfig.h +@@ -128,7 +128,8 @@ typedef int FcBool; + #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION + + /* Adjust outline rasterizer */ +-#define FC_CHAR_WIDTH "charwidth" /* Int */ ++#define FC_CHARWIDTH "charwidth" /* Int */ ++#define FC_CHAR_WIDTH FC_CHARWIDTH + #define FC_CHAR_HEIGHT "charheight"/* Int */ + #define FC_MATRIX "matrix" /* FcMatrix */ + +Index: fontconfig-2.12.1/src/fcobjs.h +=================================================================== +--- fontconfig-2.12.1.orig/src/fcobjs.h ++++ fontconfig-2.12.1/src/fcobjs.h +@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble, NULL) + FC_OBJECT (RGBA, FcTypeInteger, NULL) + FC_OBJECT (SCALE, FcTypeDouble, NULL) + FC_OBJECT (MINSPACE, FcTypeBool, NULL) +-FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL) ++FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL) + FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL) + FC_OBJECT (MATRIX, FcTypeMatrix, NULL) + FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet) +Index: fontconfig-2.12.1/src/fcobjshash.gperf +=================================================================== +--- fontconfig-2.12.1.orig/src/fcobjshash.gperf ++++ fontconfig-2.12.1/src/fcobjshash.gperf +@@ -44,7 +44,7 @@ int id; + "rgba",FC_RGBA_OBJECT + "scale",FC_SCALE_OBJECT + "minspace",FC_MINSPACE_OBJECT +-"charwidth",FC_CHAR_WIDTH_OBJECT ++"charwidth",FC_CHARWIDTH_OBJECT + "charheight",FC_CHAR_HEIGHT_OBJECT + "matrix",FC_MATRIX_OBJECT + "charset",FC_CHARSET_OBJECT +Index: fontconfig-2.12.1/src/fcobjshash.h +=================================================================== +--- fontconfig-2.12.1.orig/src/fcobjshash.h ++++ fontconfig-2.12.1/src/fcobjshash.h +@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char + {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT}, + {-1}, + #line 47 "fcobjshash.gperf" +- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT}, ++ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT}, + #line 48 "fcobjshash.gperf" + {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT}, + #line 55 "fcobjshash.gperf" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb index 115f558ee..95b066ce4 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.1.bb @@ -22,6 +22,7 @@ DEPENDS = "expat freetype zlib" SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \ file://revert-static-pkgconfig.patch \ + file://0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch \ " SRC_URI[md5sum] = "ce55e525c37147eee14cc2de6cc09f6c" SRC_URI[sha256sum] = "a9f42d03949f948a3a4f762287dbc16e53a927c91a07ee64207ebd90a9e5e292" @@ -36,7 +37,7 @@ RREPLACES_fontconfig-utils = "libfontconfig-utils" RCONFLICTS_fontconfig-utils = "libfontconfig-utils" DEBIAN_NOAUTONAME_fontconfig-utils = "1" -inherit autotools pkgconfig +inherit autotools pkgconfig relative_symlinks FONTCONFIG_CACHE_DIR ?= "${localstatedir}/cache/fontconfig" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.6.5.bb b/import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.6.5.bb deleted file mode 100644 index 97dde3a62..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.6.5.bb +++ /dev/null @@ -1,49 +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=13b25413274c9b3b09b63e4028216ff4 \ - file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec" - -SRC_URI = "${SOURCEFORGE_MIRROR}/freetype/freetype-${PV}.tar.bz2 \ - file://use-right-libtool.patch" - -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/freetype/files/freetype2/" -UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)" - -SRC_URI[md5sum] = "6a386964e18ba28cb93370e57a19031b" -SRC_URI[sha256sum] = "e20a6e1400798fd5e3d831dd821b61c35b1f9a6465d6b18a53a9df4cf441acf0" - -inherit autotools pkgconfig binconfig-disabled 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" - -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" - -EXTRA_OECONF = "CC_BUILD='${BUILD_CC}'" - -TARGET_CPPFLAGS += "-D_FILE_OFFSET_BITS=64" - -do_install_append() { - oe_multilib_header freetype2/freetype/config/ftconfig.h -} - -BINCONFIG = "${bindir}/freetype-config" - -BBCLASSEXTEND = "native nativesdk" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.7.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.7.1.bb new file mode 100644 index 000000000..544f83582 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/freetype/freetype_2.7.1.bb @@ -0,0 +1,49 @@ +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=13b25413274c9b3b09b63e4028216ff4 \ + file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec" + +SRC_URI = "${SOURCEFORGE_MIRROR}/freetype/freetype-${PV}.tar.bz2 \ + file://use-right-libtool.patch" + +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/freetype/files/freetype2/" +UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)" + +SRC_URI[md5sum] = "b3230110e0cab777e0df7631837ac36e" +SRC_URI[sha256sum] = "3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88" + +inherit autotools pkgconfig binconfig-disabled 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" + +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" + +EXTRA_OECONF = "CC_BUILD='${BUILD_CC}'" + +TARGET_CPPFLAGS += "-D_FILE_OFFSET_BITS=64" + +do_install_append() { + oe_multilib_header freetype2/freetype/config/ftconfig.h +} + +BINCONFIG = "${bindir}/freetype-config" + +BBCLASSEXTEND = "native nativesdk" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/glew/glew_2.0.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/glew/glew_2.0.0.bb index 489dd7c8f..1c93ca07b 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/glew/glew_2.0.0.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/glew/glew_2.0.0.bb @@ -2,12 +2,9 @@ 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" -SECTION = "x11" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ac251558de685c6b9478d89be3149c2" -DEPENDS = "virtual/libx11 virtual/libgl libglu libxext libxi libxmu" - SRC_URI = "${SOURCEFORGE_MIRROR}/project/glew/glew/${PV}/glew-${PV}.tgz \ file://no-strip.patch" @@ -19,12 +16,18 @@ UPSTREAM_CHECK_REGEX = "/glew/(?P(\d+[\.\-_]*)+)/" inherit lib_package pkgconfig distro_features_check -REQUIRED_DISTRO_FEATURES = "x11" +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" -# Override SYSTEM 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 = "SYSTEM='linux' \ +# 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}' \ diff --git a/import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.3.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.3.0.bb deleted file mode 100644 index f24c443a7..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.3.0.bb +++ /dev/null @@ -1,39 +0,0 @@ -SUMMARY = "Text shaping library" -DESCRIPTION = "HarfBuzz is an OpenType text shaping engine." -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/HarfBuzz" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=HarfBuzz" -SECTION = "libs" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=e021dd6dda6ff1e6b1044002fc662b9b \ - file://src/hb-ucdn/COPYING;md5=994ba0f1295f15b4bda4999a5bbeddef \ -" - -DEPENDS = "glib-2.0 cairo fontconfig freetype" - -SRC_URI = "http://www.freedesktop.org/software/harfbuzz/release/${BP}.tar.bz2" - -SRC_URI[md5sum] = "a82d49ff67197bc3c96ea34b98880c52" -SRC_URI[sha256sum] = "b04be31633efee2cae1d62d46434587302554fa837224845a62565ec68a0334d" - -inherit autotools pkgconfig lib_package gtk-doc - -PACKAGECONFIG ??= "icu" -PACKAGECONFIG[icu] = "--with-icu,--without-icu,icu" - -EXTRA_OECONF = " \ - --with-cairo \ - --with-fontconfig \ - --with-freetype \ - --with-glib \ - --without-graphite2 \ -" - -PACKAGES =+ "${PN}-icu ${PN}-icu-dev" - -FILES_${PN}-icu = "${libdir}/libharfbuzz-icu.so.*" -FILES_${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \ - ${libdir}/libharfbuzz-icu.so \ - ${libdir}/pkgconfig/harfbuzz-icu.pc \ -" - -BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.4.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.4.1.bb new file mode 100644 index 000000000..fc4773ef6 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/harfbuzz/harfbuzz_1.4.1.bb @@ -0,0 +1,39 @@ +SUMMARY = "Text shaping library" +DESCRIPTION = "HarfBuzz is an OpenType text shaping engine." +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/HarfBuzz" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=HarfBuzz" +SECTION = "libs" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=e021dd6dda6ff1e6b1044002fc662b9b \ + file://src/hb-ucdn/COPYING;md5=994ba0f1295f15b4bda4999a5bbeddef \ +" + +DEPENDS = "glib-2.0 cairo fontconfig freetype" + +SRC_URI = "http://www.freedesktop.org/software/harfbuzz/release/${BP}.tar.bz2" + +SRC_URI[md5sum] = "7b3f445d0a58485a31c18c03ce9b4e3c" +SRC_URI[sha256sum] = "85a27fab639a1d651737dcb6b69e4101e3fd09522fdfdcb793df810b5cb315bd" + +inherit autotools pkgconfig lib_package gtk-doc + +PACKAGECONFIG ??= "icu" +PACKAGECONFIG[icu] = "--with-icu,--without-icu,icu" + +EXTRA_OECONF = " \ + --with-cairo \ + --with-fontconfig \ + --with-freetype \ + --with-glib \ + --without-graphite2 \ +" + +PACKAGES =+ "${PN}-icu ${PN}-icu-dev" + +FILES_${PN}-icu = "${libdir}/libharfbuzz-icu.so.*" +FILES_${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \ + ${libdir}/libharfbuzz-icu.so \ + ${libdir}/pkgconfig/harfbuzz-icu.pc \ +" + +BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo/fix-mips.patch b/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo/fix-mips.patch new file mode 100644 index 000000000..4d41237f1 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo/fix-mips.patch @@ -0,0 +1,45 @@ +Fix a regression that causes the MIPS code from building. + +Upstream-Status: Backport +Signed-off-by: Ross Burton + +From 7bfb22af123ac10798a9a4c9ec7b23e5065db35e Mon Sep 17 00:00:00 2001 +From: DRC +Date: Mon, 26 Sep 2016 17:59:14 -0500 +Subject: [PATCH] Fix broken MIPS build + +Regression introduced by 9055fb408dcb585ce9392d395e16630d51002152 + +Fixes #104 +--- + ChangeLog.md | 3 +++ + simd/jsimd_mips.c | 2 ++ + 2 files changed, 5 insertions(+) + +diff --git a/ChangeLog.md b/ChangeLog.md +index e2b9df3..71ddcaa 100644 +--- a/ChangeLog.md ++++ b/ChangeLog.md +@@ -6,6 +6,9 @@ + 1. Fixed a regression introduced by 1.5.1[7] that prevented libjpeg-turbo from + building with Android NDK platforms prior to android-21 (5.0). + ++2. Fixed a regression introduced by 1.5.1[1] that prevented the MIPS DSPR2 SIMD ++code in libjpeg-turbo from building. ++ + + 1.5.1 + ===== +diff --git a/simd/jsimd_mips.c b/simd/jsimd_mips.c +index 63b8115..02e90cd 100644 +--- a/simd/jsimd_mips.c ++++ b/simd/jsimd_mips.c +@@ -63,6 +63,8 @@ parse_proc_cpuinfo(const char* search_string) + LOCAL(void) + init_simd (void) + { ++ char *env = NULL; ++ + if (simd_support != ~0U) + return; + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.0.bb deleted file mode 100644 index c9e70d73d..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.0.bb +++ /dev/null @@ -1,46 +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=05bab7c7ad899d85bfba60da1a1271f2 \ - file://jpeglib.h;endline=16;md5=f67d70e547a2662c079781c72f877f72 \ - file://djpeg.c;endline=11;md5=b90b6d2b4119f9e5807cd273f525d2af \ -" -DEPENDS = "nasm-native" - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz" -SRC_URI[md5sum] = "3fc5d9b6a8bce96161659ae7a9939257" -SRC_URI[sha256sum] = "9f397c31a67d2b00ee37597da25898b03eb282ccd87b135a50a69993b6a2035f" -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 autotools pkgconfig - -# Work around missing x32 ABI support -EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "--without-simd", "", d)}" - -# Work around missing non-floating point ABI support in MIPS -EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "--without-simd", "", d)}" - -# Provide a workaround if Altivec unit is not present in PPC -EXTRA_OECONF_append_class-target_powerpc = "${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "--without-simd", d)}" -EXTRA_OECONF_append_class-target_powerpc64 = "${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "--without-simd", 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" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb new file mode 100644 index 000000000..de2eeaf78 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb @@ -0,0 +1,51 @@ +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=05bab7c7ad899d85bfba60da1a1271f2 \ + file://jpeglib.h;endline=16;md5=f67d70e547a2662c079781c72f877f72 \ + file://djpeg.c;endline=11;md5=b90b6d2b4119f9e5807cd273f525d2af \ +" +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://fix-mips.patch" +SRC_URI[md5sum] = "55deb139b0cac3c8200b75d485fc13f3" +SRC_URI[sha256sum] = "41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c" +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 autotools pkgconfig + +# Add nasm-native dependency consistently for all build arches is hard +EXTRA_OECONF_append_class-native = " --without-simd" + +# Work around missing x32 ABI support +EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "--without-simd", "", d)}" + +# Work around missing non-floating point ABI support in MIPS +EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "--without-simd", "", d)}" + +# Provide a workaround if Altivec unit is not present in PPC +EXTRA_OECONF_append_class-target_powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "--without-simd", d)}" +EXTRA_OECONF_append_class-target_powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "--without-simd", 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" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0001-select-platforms-based-on-configuration-results.patch b/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0001-select-platforms-based-on-configuration-results.patch deleted file mode 100644 index 674c8e833..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0001-select-platforms-based-on-configuration-results.patch +++ /dev/null @@ -1,128 +0,0 @@ -From 3a93150bc0aec86afdb7d053247dc2448925e09a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Wed, 6 May 2015 10:45:22 +0200 -Subject: [PATCH 1/2] select platforms based on configuration results -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Upstream-Status: Submitted [1] - -[1] https://github.com/anholt/libepoxy/pull/52 - -Signed-off-by: Andreas Müller ---- - configure.ac | 13 +++++-------- - src/dispatch_common.c | 9 ++++++--- - src/dispatch_common.h | 9 +++++---- - 3 files changed, 16 insertions(+), 15 deletions(-) - -diff --git a/configure.ac b/configure.ac -index a52fc58..bdd70da 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -58,6 +58,10 @@ AC_CHECK_HEADER([KHR/khrplatform.h], - # uintptr_t to a void *") by default. Kill that. - XORG_TESTSET_CFLAG(CWARNFLAGS, [-Wno-int-conversion]) - -+PKG_CHECK_MODULES(X11, [x11], [x11=yes], [x11=no]) -+ -+AM_CONDITIONAL(HAVE_X11, test x$x11 = xyes) -+ - has_znow=yes - - case $host_os in -@@ -86,7 +90,7 @@ case $host_os in - ;; - *) - build_egl=yes -- build_glx=yes -+ build_glx=$x11 - build_wgl=no - # On platforms with dlopen, we load everything dynamically and - # don't link against a specific window system or GL implementation. -@@ -144,13 +148,6 @@ esac - - AC_SUBST([VISIBILITY_CFLAGS]) - --PKG_CHECK_MODULES(X11, [x11], [x11=yes], [x11=no]) --if test x$x11 = xno -a x$build_glx = xyes; then -- AC_MSG_ERROR([libX11 headers (libx11-dev) required to build with GLX support]) --fi -- --AM_CONDITIONAL(HAVE_X11, test x$x11 = xyes) -- - PKG_CHECK_MODULES(GL, [gl], [gl=yes], [gl=no]) - - AC_CONFIG_FILES([ -diff --git a/src/dispatch_common.c b/src/dispatch_common.c -index 4e34d6e..2ab84ed 100644 ---- a/src/dispatch_common.c -+++ b/src/dispatch_common.c -@@ -615,10 +615,13 @@ epoxy_get_proc_address(const char *name) - #elif defined(__APPLE__) - return epoxy_gl_dlsym(name); - #else -+#if PLATFORM_HAS_GLX - if (epoxy_current_context_is_glx()) { - return glXGetProcAddressARB((const GLubyte *)name); -- } else { -+ } else -+#endif /* PLATFORM_HAS_GLX */ - #if PLATFORM_HAS_EGL -+ { - GLenum egl_api = epoxy_egl_get_current_gl_context_api(); - - switch (egl_api) { -@@ -628,10 +631,10 @@ epoxy_get_proc_address(const char *name) - case EGL_NONE: - break; - } --#endif - } -+#endif /* PLATFORM_HAS_EGL */ - errx(1, "Couldn't find current GLX or EGL context.\n"); --#endif -+#endif /* _WIN32 | __APPLE__*/ - } - - void -diff --git a/src/dispatch_common.h b/src/dispatch_common.h -index 6b8503a..82681e4 100644 ---- a/src/dispatch_common.h -+++ b/src/dispatch_common.h -@@ -21,12 +21,13 @@ - * IN THE SOFTWARE. - */ - -+#include - #include - - #ifdef _WIN32 - #define PLATFORM_HAS_EGL 0 - #define PLATFORM_HAS_GLX 0 --#define PLATFORM_HAS_WGL 1 -+#define PLATFORM_HAS_WGL BUILD_WGL - #define EPOXY_IMPORTEXPORT __declspec(dllexport) - #elif defined(__APPLE__) - #define PLATFORM_HAS_EGL 0 -@@ -34,13 +35,13 @@ - #define PLATFORM_HAS_WGL 0 - #define EPOXY_IMPORTEXPORT - #elif defined(ANDROID) --#define PLATFORM_HAS_EGL 1 -+#define PLATFORM_HAS_EGL BUILD_EGL - #define PLATFORM_HAS_GLX 0 - #define PLATFORM_HAS_WGL 0 - #define EPOXY_IMPORTEXPORT - #else --#define PLATFORM_HAS_EGL 1 --#define PLATFORM_HAS_GLX 1 -+#define PLATFORM_HAS_EGL BUILD_EGL -+#define PLATFORM_HAS_GLX BUILD_GLX - #define PLATFORM_HAS_WGL 0 - #define EPOXY_IMPORTEXPORT - #endif --- -1.9.3 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0002-add-an-option-to-disable-glx-support.patch b/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0002-add-an-option-to-disable-glx-support.patch deleted file mode 100644 index 262d6845f..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/0002-add-an-option-to-disable-glx-support.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 24868cbfb9dda5f6929dd277c47d35df016e8754 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Wed, 6 May 2015 11:05:48 +0200 -Subject: [PATCH 2/2] add an option to disable glx support -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -this option would help us in yocto to get deterministic build results - -Upstream-Status: Submitted [1] - -[1] https://github.com/anholt/libepoxy/pull/52 - -Signed-off-by: Andreas Müller ---- - configure.ac | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index bdd70da..6c7153d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -58,7 +58,14 @@ AC_CHECK_HEADER([KHR/khrplatform.h], - # uintptr_t to a void *") by default. Kill that. - XORG_TESTSET_CFLAG(CWARNFLAGS, [-Wno-int-conversion]) - --PKG_CHECK_MODULES(X11, [x11], [x11=yes], [x11=no]) -+AC_ARG_ENABLE([glx], -+ [AS_HELP_STRING([--disable-glx], -+ [disable if you don't want x11/glx support])], -+ [], -+ [enable_glx=yes] -+ ) -+ -+PKG_CHECK_MODULES(X11, [x11], [x11=$enable_glx], [x11=no]) - - AM_CONDITIONAL(HAVE_X11, test x$x11 = xyes) - --- -1.9.3 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/no-need-for-python3.patch b/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/no-need-for-python3.patch deleted file mode 100644 index 4b8fea58d..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy/no-need-for-python3.patch +++ /dev/null @@ -1,20 +0,0 @@ -There is no need to use python3 by this package (the python scripts -that are using during configuration only need python2.7+) - -Upstream-Status: Inappropriate [configuration] - -Signed-off-by: Gary Thomas --- -Index: git/configure.ac -=================================================================== ---- git.orig/configure.ac -+++ git/configure.ac -@@ -40,7 +40,7 @@ m4_ifndef([XORG_MACROS_VERSION], - XORG_MACROS_VERSION(1.8) - XORG_DEFAULT_OPTIONS - --AC_CHECK_PROGS([PYTHON], [python3 python2 python]) -+AC_CHECK_PROGS([PYTHON], [python2 python]) - - # Initialize libtool - AC_DISABLE_STATIC diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb new file mode 100644 index 000000000..ee9f694cc --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_1.4.0.bb @@ -0,0 +1,20 @@ +SUMMARY = "OpenGL function pointer management library" +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/v1.4/${BP}.tar.xz" +SRC_URI[md5sum] = "d8d8cbf2beb64975d424fcc5167a2a38" +SRC_URI[sha256sum] = "25a906b14a921bc2b488cfeaa21a00486fe92630e4a9dd346e4ecabeae52ab41" +UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases" + +inherit autotools pkgconfig distro_features_check + +REQUIRED_DISTRO_FEATURES = "opengl" + +DEPENDS = "util-macros virtual/egl" + +PACKAGECONFIG[x11] = "--enable-glx, --disable-glx, virtual/libx11" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_git.bb deleted file mode 100644 index 6c247ccaf..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/libepoxy/libepoxy_git.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "OpenGL function pointer management library" -HOMEPAGE = "https://github.com/anholt/libepoxy/" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b" - - -SRC_URI = " \ - git://github.com/anholt/libepoxy.git \ - file://0001-select-platforms-based-on-configuration-results.patch \ - file://0002-add-an-option-to-disable-glx-support.patch \ - file://no-need-for-python3.patch \ -" -SRCREV="e2c33af5bfcfc9d168f9e776156dd47c33f428b3" -PV = "1.3.1" - -S = "${WORKDIR}/git" - -inherit autotools pkgconfig distro_features_check -# depends on virtual/egl -REQUIRED_DISTRO_FEATURES = "opengl" - -DEPENDS = "util-macros virtual/egl" - -PACKAGECONFIG[x11] = "--enable-glx, --disable-glx, virtual/libx11" -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb b/import-layers/yocto-poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb index 9c0ec541e..c802a6f69 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb @@ -41,13 +41,10 @@ EXTRA_OECONF = "--disable-static --enable-cdrom --enable-threads --enable-timers --disable-video-picogui --disable-video-qtopia --enable-sdl-dlopen \ --disable-rpath" -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" PACKAGECONFIG_class-native = "x11" -PACKAGECONFIG_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib" PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-prepend-our-sysroot-path-so-that-make-finds-our-wayl.patch b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-prepend-our-sysroot-path-so-that-make-finds-our-wayl.patch new file mode 100644 index 000000000..efc84188f --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-prepend-our-sysroot-path-so-that-make-finds-our-wayl.patch @@ -0,0 +1,34 @@ +From b44808e43130dcd13b43e5b978b9b24aeb4c134c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Thu, 20 Oct 2016 14:57:51 +0200 +Subject: [PATCH] prepend our sysroot path so that make finds our + wayland-protocol files +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Andreas Müller +--- + configure.in | 4 +- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.in b/configure.in +index 726ded3..3376600 100644 +--- a/configure.in ++++ b/configure.in +@@ -1206,7 +1206,7 @@ AC_HELP_STRING([--enable-video-wayland-qt-touch], [QtWayland server support for + WAYLAND_CFLAGS=`$PKG_CONFIG --cflags wayland-client wayland-egl wayland-cursor xkbcommon` + WAYLAND_LIBS=`$PKG_CONFIG --libs wayland-client wayland-egl wayland-cursor xkbcommon` + WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner` +- WAYLAND_CORE_PROTOCOL_DIR=`$PKG_CONFIG --variable=pkgdatadir wayland-client` +- WAYLAND_PROTOCOLS_DIR=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols` ++ WAYLAND_CORE_PROTOCOL_DIR=${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-client` ++ WAYLAND_PROTOCOLS_DIR=${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols` + video_wayland=yes + fi + fi +-- +2.5.5 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-src-video-make-it-compatible-with-wayland-1.10.patch b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-src-video-make-it-compatible-with-wayland-1.10.patch deleted file mode 100644 index 44e6d4df9..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0001-src-video-make-it-compatible-with-wayland-1.10.patch +++ /dev/null @@ -1,57 +0,0 @@ -From b1ed3533433501ec52c8289a5b3a294e57e7f798 Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Thu, 26 May 2016 11:31:52 +0000 -Subject: [PATCH] src/video: make it compatible with wayland 1.10 - -| build/.libs/SDL_waylandevents.o: In function `wl_registry_bind': -| /usr/include/wayland-client-protocol.h:305: undefined reference to `wl_proxy_marshal_constructor_versioned' -| /usr/include/wayland-client-protocol.h:305: undefined reference to `wl_proxy_marshal_constructor_versioned' -| build/.libs/SDL_waylandkeyboard.o: In function `wl_registry_bind': -| /usr/include/wayland-client-protocol.h:305: undefined reference to `wl_proxy_marshal_constructor_versioned' -| /usr/include/wayland-client-protocol.h:305: undefined reference to `wl_proxy_marshal_constructor_versioned' -| build/.libs/SDL_waylandvideo.o: In function `wl_registry_bind': -| /usr/include/wayland-client-protocol.h:305: undefined reference to `wl_proxy_marshal_constructor_versioned' -| collect2: error: ld returned 1 exit status -| make: *** [build/libSDL2.la] Error 1 -| ERROR: oe_runmake failed - -Upstream-Status: Pending -Signed-off-by: Martin Jansa - ---- - src/video/wayland/SDL_waylanddyn.h | 1 + - src/video/wayland/SDL_waylandsym.h | 4 ++++ - src/video/webos/SDL_waylanddyn.h | 1 + - src/video/webos/SDL_waylandsym.h | 4 ++++ - 4 files changed, 10 insertions(+) - -diff --git a/src/video/wayland/SDL_waylanddyn.h b/src/video/wayland/SDL_waylanddyn.h -index 8d9313a..c7b0157 100644 ---- a/src/video/wayland/SDL_waylanddyn.h -+++ b/src/video/wayland/SDL_waylanddyn.h -@@ -79,6 +79,7 @@ void SDL_WAYLAND_UnloadSymbols(void); - #define wl_proxy_get_user_data (*WAYLAND_wl_proxy_get_user_data) - #define wl_proxy_add_listener (*WAYLAND_wl_proxy_add_listener) - #define wl_proxy_marshal_constructor (*WAYLAND_wl_proxy_marshal_constructor) -+#define wl_proxy_marshal_constructor_versioned (*WAYLAND_wl_proxy_marshal_constructor_versioned) - - #define wl_seat_interface (*WAYLAND_wl_seat_interface) - #define wl_surface_interface (*WAYLAND_wl_surface_interface) -diff --git a/src/video/wayland/SDL_waylandsym.h b/src/video/wayland/SDL_waylandsym.h -index c3b4fa5..b9a0d97 100644 ---- a/src/video/wayland/SDL_waylandsym.h -+++ b/src/video/wayland/SDL_waylandsym.h -@@ -55,6 +55,10 @@ SDL_WAYLAND_SYM(void, wl_list_insert_list, (struct wl_list *, struct wl_list *)) - SDL_WAYLAND_MODULE(WAYLAND_CLIENT_1_4) - SDL_WAYLAND_SYM(struct wl_proxy *, wl_proxy_marshal_constructor, (struct wl_proxy *, uint32_t opcode, const struct wl_interface *interface, ...)) - -+/* These functions are available in Wayland >= 1.10 */ -+SDL_WAYLAND_MODULE(WAYLAND_CLIENT_1_10) -+SDL_WAYLAND_SYM(struct wl_proxy *, wl_proxy_marshal_constructor_versioned, (struct wl_proxy *proxy, uint32_t opcode, const struct wl_interface *interface, uint32_t version, ...)) -+ - SDL_WAYLAND_INTERFACE(wl_seat_interface) - SDL_WAYLAND_INTERFACE(wl_surface_interface) - SDL_WAYLAND_INTERFACE(wl_shm_pool_interface) --- -1.9.1 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Avoid-finding-build-host-s-wayland-scanner.patch b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Avoid-finding-build-host-s-wayland-scanner.patch new file mode 100644 index 000000000..7837315f1 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/0002-Avoid-finding-build-host-s-wayland-scanner.patch @@ -0,0 +1,31 @@ +From ae879091cf65cb70293b375ec7e61ed12a96d8a7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Fri, 2 Dec 2016 09:39:25 +0100 +Subject: [PATCH] Avoid finding build host's wayland-scanner +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Andreas Müller +--- + configure.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.in b/configure.in +index 3376600..2aa6ed4 100644 +--- a/configure.in ++++ b/configure.in +@@ -1204,7 +1204,7 @@ AC_HELP_STRING([--enable-video-wayland-qt-touch], [QtWayland server support for + if $PKG_CONFIG --exists wayland-client wayland-scanner wayland-protocols wayland-egl wayland-cursor egl xkbcommon ; then + WAYLAND_CFLAGS=`$PKG_CONFIG --cflags wayland-client wayland-egl wayland-cursor xkbcommon` + WAYLAND_LIBS=`$PKG_CONFIG --libs wayland-client wayland-egl wayland-cursor xkbcommon` +- WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner` ++ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) + WAYLAND_CORE_PROTOCOL_DIR=${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-client` + WAYLAND_PROTOCOLS_DIR=${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols` + video_wayland=yes +-- +2.7.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/fix-build-failure-on-ppc.patch b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/fix-build-failure-on-ppc.patch new file mode 100644 index 000000000..1520bcfb6 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2/fix-build-failure-on-ppc.patch @@ -0,0 +1,50 @@ +Upstream-Status: Backport [https://hg.libsdl.org/SDL/rev/5184186d4366] + +Backport patch from upstream to fix build failures on ppc and ppc64. + +Signed-off-by: Kai Kang +--- +# HG changeset patch +# User Sam Lantinga +# Date 1477159315 25200 +# Node ID 5184186d4366169617b434f5b71c618a7035cde4 +# Parent 71d4148e32de5088c4bc2f04c1e5ded647a2bf82 +Fixed bug 3466 - Can't build 2.0.5 on ppc64 + +/home/fedora/SDL2-2.0.5/src/video/SDL_blit_N.c: In function 'calc_swizzle32': +/home/fedora/SDL2-2.0.5/src/video/SDL_blit_N.c:127:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] + const vector unsigned char plus = VECUINT8_LITERAL(0x00, 0x00, 0x00, 0x00, + ^ + +diff -r 71d4148e32de -r 5184186d4366 src/video/SDL_blit_N.c +--- a/src/video/SDL_blit_N.c Wed Oct 19 21:22:42 2016 -0700 ++++ b/src/video/SDL_blit_N.c Sat Oct 22 11:01:55 2016 -0700 +@@ -118,12 +118,6 @@ + 16, 8, 0, 24, + 0, NULL + }; +- if (!srcfmt) { +- srcfmt = &default_pixel_format; +- } +- if (!dstfmt) { +- dstfmt = &default_pixel_format; +- } + const vector unsigned char plus = VECUINT8_LITERAL(0x00, 0x00, 0x00, 0x00, + 0x04, 0x04, 0x04, 0x04, + 0x08, 0x08, 0x08, 0x08, +@@ -136,6 +130,14 @@ + Uint32 gmask = RESHIFT(srcfmt->Gshift) << (dstfmt->Gshift); + Uint32 bmask = RESHIFT(srcfmt->Bshift) << (dstfmt->Bshift); + Uint32 amask; ++ ++ if (!srcfmt) { ++ srcfmt = &default_pixel_format; ++ } ++ if (!dstfmt) { ++ dstfmt = &default_pixel_format; ++ } ++ + /* Use zero for alpha if either surface doesn't have alpha */ + if (dstfmt->Amask) { + amask = + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.4.bb b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.4.bb deleted file mode 100644 index 844ff333c..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.4.bb +++ /dev/null @@ -1,68 +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=b2304ad7e91711027590d3f102a754b7" - -PROVIDES = "virtual/libsdl2" - -DEPENDS_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/nativesdk-libx11 nativesdk-libxrandr nativesdk-libxrender nativesdk-libxext', '', d)}" - -SRC_URI = "http://www.libsdl.org/release/SDL2-${PV}.tar.gz \ - file://linkage.patch \ - file://0001-src-video-make-it-compatible-with-wayland-1.10.patch \ -" - -S = "${WORKDIR}/SDL2-${PV}" - -SRC_URI[md5sum] = "44fc4a023349933e7f5d7a582f7b886e" -SRC_URI[sha256sum] = "da55e540bf6331824153805d58b590a29c39d2d506c6d02fa409aedeab21174b" - -inherit autotools lib_package binconfig pkgconfig - -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" - -# 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.contains('DISTRO_FEATURES', 'opengl', 'opengl', '', d)}" - -PACKAGECONFIG ??= " \ - ${PACKAGECONFIG_GL} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland gles2', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', 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[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 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" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.5.bb b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.5.bb new file mode 100644 index 000000000..12d3aaf6f --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.5.bb @@ -0,0 +1,69 @@ +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=b2304ad7e91711027590d3f102a754b7" + +PROVIDES = "virtual/libsdl2" + +DEPENDS_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/nativesdk-libx11 nativesdk-libxrandr nativesdk-libxrender nativesdk-libxext', '', d)}" + +SRC_URI = " \ + http://www.libsdl.org/release/SDL2-${PV}.tar.gz \ + file://linkage.patch \ + file://0001-prepend-our-sysroot-path-so-that-make-finds-our-wayl.patch \ + file://0002-Avoid-finding-build-host-s-wayland-scanner.patch \ + file://fix-build-failure-on-ppc.patch \ +" + +S = "${WORKDIR}/SDL2-${PV}" + +SRC_URI[md5sum] = "d4055424d556b4a908aa76fad63abd3c" +SRC_URI[sha256sum] = "442038cf55965969f2ff06d976031813de643af9c9edc9e331bd761c242e8785" + +inherit autotools lib_package binconfig pkgconfig + +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 \ + WAYLAND_PROTOCOLS_SYSROOT_DIR=${RECIPE_SYSROOT}" + +# 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 ??= " \ + ${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[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" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-configure.ac-Use-wayland-scanner-in-PATH.patch b/import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-configure.ac-Use-wayland-scanner-in-PATH.patch new file mode 100644 index 000000000..a99c225ff --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-configure.ac-Use-wayland-scanner-in-PATH.patch @@ -0,0 +1,37 @@ +From 0af30602502035155929dd2a14482b82a9747cf8 Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen +Date: Thu, 23 Feb 2017 15:23:15 +0200 +Subject: [PATCH] configure.ac: Use wayland-scanner in PATH + +pkg-config will give us the wrong wayland-scanner location. +Use the one in path instead: it will be from native sysroot. + +This is a workaround and should be fixed upstream: preferably +with the same fix as all the other wayland-scanner users +(see YOCTO #11100). + +Upstream-Status: Inappropriate [workaround] +Signed-off-by: Jussi Kukkonen +--- + configure.ac | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 64eddf2..5536f35 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -273,10 +273,7 @@ if test "$enable_wayland" = "yes"; then + PKG_CHECK_MODULES([WAYLAND], [wayland-client >= wayland_api_version], + [USE_WAYLAND="yes"], [:]) + if test "$USE_WAYLAND" = "yes"; then +- +- WAYLAND_PREFIX=`$PKG_CONFIG --variable=prefix wayland-client` +- AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner],, +- [${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH]) ++ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) + + AC_DEFINE([HAVE_VA_WAYLAND], [1], + [Defined to 1 if VA/Wayland API is built]) +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-wayland-Don-t-commit-and-ship-generated-files.patch b/import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-wayland-Don-t-commit-and-ship-generated-files.patch new file mode 100644 index 000000000..bd97e2229 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libva/files/0001-wayland-Don-t-commit-and-ship-generated-files.patch @@ -0,0 +1,339 @@ +From 5993a7710cc8fd9a392d5015be5109987a42b498 Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen +Date: Thu, 23 Feb 2017 16:10:09 +0200 +Subject: [PATCH] wayland: Don't commit and ship generated files + +I believe shipping wayland-drm-client-protocol.h is wrong: The header +should always be generated by the wayland-scanner that matches the +runtime wayland version. Currently when someone clones the repo and +builds, the shipped version is used. + +Upstream-Status: Submitted [https://github.com/01org/libva/pull/33] +Signed-off-by: Jussi Kukkonen +--- + va/wayland/Makefile.am | 5 +- + va/wayland/wayland-drm-client-protocol.h | 290 ------------------------------- + 2 files changed, 4 insertions(+), 291 deletions(-) + delete mode 100644 va/wayland/wayland-drm-client-protocol.h + +diff --git a/va/wayland/Makefile.am b/va/wayland/Makefile.am +index 4f8262c..4ab8d07 100644 +--- a/va/wayland/Makefile.am ++++ b/va/wayland/Makefile.am +@@ -53,7 +53,7 @@ protocol_source_h = \ + noinst_LTLIBRARIES = libva_wayland.la + libva_waylandincludedir = ${includedir}/va + libva_waylandinclude_HEADERS = $(source_h) +-libva_wayland_la_SOURCES = $(source_c) $(protocol_source_h) ++libva_wayland_la_SOURCES = $(source_c) + noinst_HEADERS = $(source_h_priv) + + # Wayland protocol +@@ -65,5 +65,8 @@ EXTRA_DIST = \ + wayland-drm.xml \ + $(NULL) + ++BUILT_SOURCES = $(protocol_source_h) ++CLEANFILES = $(BUILT_SOURCES) ++ + # Extra clean files so that maintainer-clean removes *everything* + MAINTAINERCLEANFILES = Makefile.in +diff --git a/va/wayland/wayland-drm-client-protocol.h b/va/wayland/wayland-drm-client-protocol.h +deleted file mode 100644 +index da267e8..0000000 +--- a/va/wayland/wayland-drm-client-protocol.h ++++ /dev/null +@@ -1,290 +0,0 @@ +-/* Generated by wayland-scanner 1.11.90 */ +- +-#ifndef DRM_CLIENT_PROTOCOL_H +-#define DRM_CLIENT_PROTOCOL_H +- +-#include +-#include +-#include "wayland-client.h" +- +-#ifdef __cplusplus +-extern "C" { +-#endif +- +-/** +- * @page page_drm The drm protocol +- * @section page_ifaces_drm Interfaces +- * - @subpage page_iface_wl_drm - +- * @section page_copyright_drm Copyright +- *
+- *
+- * Copyright © 2008-2011 Kristian Høgsberg
+- * Copyright © 2010-2011 Intel Corporation
+- *
+- * Permission to use, copy, modify, distribute, and sell this
+- * software and its documentation for any purpose is hereby granted
+- * without fee, provided that\n the above copyright notice appear in
+- * all copies and that both that copyright notice and this permission
+- * notice appear in supporting documentation, and that the name of
+- * the copyright holders not be used in advertising or publicity
+- * pertaining to distribution of the software without specific,
+- * written prior permission.  The copyright holders make no
+- * representations about the suitability of this software for any
+- * purpose.  It is provided "as is" without express or implied
+- * warranty.
+- *
+- * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
+- * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+- * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
+- * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
+- * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+- * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
+- * THIS SOFTWARE.
+- * 
+- */ +-struct wl_buffer; +-struct wl_drm; +- +-/** +- * @page page_iface_wl_drm wl_drm +- * @section page_iface_wl_drm_api API +- * See @ref iface_wl_drm. +- */ +-/** +- * @defgroup iface_wl_drm The wl_drm interface +- */ +-extern const struct wl_interface wl_drm_interface; +- +-#ifndef WL_DRM_ERROR_ENUM +-#define WL_DRM_ERROR_ENUM +-enum wl_drm_error { +- WL_DRM_ERROR_AUTHENTICATE_FAIL = 0, +- WL_DRM_ERROR_INVALID_FORMAT = 1, +- WL_DRM_ERROR_INVALID_NAME = 2, +-}; +-#endif /* WL_DRM_ERROR_ENUM */ +- +-#ifndef WL_DRM_FORMAT_ENUM +-#define WL_DRM_FORMAT_ENUM +-enum wl_drm_format { +- WL_DRM_FORMAT_C8 = 0x20203843, +- WL_DRM_FORMAT_RGB332 = 0x38424752, +- WL_DRM_FORMAT_BGR233 = 0x38524742, +- WL_DRM_FORMAT_XRGB4444 = 0x32315258, +- WL_DRM_FORMAT_XBGR4444 = 0x32314258, +- WL_DRM_FORMAT_RGBX4444 = 0x32315852, +- WL_DRM_FORMAT_BGRX4444 = 0x32315842, +- WL_DRM_FORMAT_ARGB4444 = 0x32315241, +- WL_DRM_FORMAT_ABGR4444 = 0x32314241, +- WL_DRM_FORMAT_RGBA4444 = 0x32314152, +- WL_DRM_FORMAT_BGRA4444 = 0x32314142, +- WL_DRM_FORMAT_XRGB1555 = 0x35315258, +- WL_DRM_FORMAT_XBGR1555 = 0x35314258, +- WL_DRM_FORMAT_RGBX5551 = 0x35315852, +- WL_DRM_FORMAT_BGRX5551 = 0x35315842, +- WL_DRM_FORMAT_ARGB1555 = 0x35315241, +- WL_DRM_FORMAT_ABGR1555 = 0x35314241, +- WL_DRM_FORMAT_RGBA5551 = 0x35314152, +- WL_DRM_FORMAT_BGRA5551 = 0x35314142, +- WL_DRM_FORMAT_RGB565 = 0x36314752, +- WL_DRM_FORMAT_BGR565 = 0x36314742, +- WL_DRM_FORMAT_RGB888 = 0x34324752, +- WL_DRM_FORMAT_BGR888 = 0x34324742, +- WL_DRM_FORMAT_XRGB8888 = 0x34325258, +- WL_DRM_FORMAT_XBGR8888 = 0x34324258, +- WL_DRM_FORMAT_RGBX8888 = 0x34325852, +- WL_DRM_FORMAT_BGRX8888 = 0x34325842, +- WL_DRM_FORMAT_ARGB8888 = 0x34325241, +- WL_DRM_FORMAT_ABGR8888 = 0x34324241, +- WL_DRM_FORMAT_RGBA8888 = 0x34324152, +- WL_DRM_FORMAT_BGRA8888 = 0x34324142, +- WL_DRM_FORMAT_XRGB2101010 = 0x30335258, +- WL_DRM_FORMAT_XBGR2101010 = 0x30334258, +- WL_DRM_FORMAT_RGBX1010102 = 0x30335852, +- WL_DRM_FORMAT_BGRX1010102 = 0x30335842, +- WL_DRM_FORMAT_ARGB2101010 = 0x30335241, +- WL_DRM_FORMAT_ABGR2101010 = 0x30334241, +- WL_DRM_FORMAT_RGBA1010102 = 0x30334152, +- WL_DRM_FORMAT_BGRA1010102 = 0x30334142, +- WL_DRM_FORMAT_YUYV = 0x56595559, +- WL_DRM_FORMAT_YVYU = 0x55595659, +- WL_DRM_FORMAT_UYVY = 0x59565955, +- WL_DRM_FORMAT_VYUY = 0x59555956, +- WL_DRM_FORMAT_AYUV = 0x56555941, +- WL_DRM_FORMAT_NV12 = 0x3231564e, +- WL_DRM_FORMAT_NV21 = 0x3132564e, +- WL_DRM_FORMAT_NV16 = 0x3631564e, +- WL_DRM_FORMAT_NV61 = 0x3136564e, +- WL_DRM_FORMAT_YUV410 = 0x39565559, +- WL_DRM_FORMAT_YVU410 = 0x39555659, +- WL_DRM_FORMAT_YUV411 = 0x31315559, +- WL_DRM_FORMAT_YVU411 = 0x31315659, +- WL_DRM_FORMAT_YUV420 = 0x32315559, +- WL_DRM_FORMAT_YVU420 = 0x32315659, +- WL_DRM_FORMAT_YUV422 = 0x36315559, +- WL_DRM_FORMAT_YVU422 = 0x36315659, +- WL_DRM_FORMAT_YUV444 = 0x34325559, +- WL_DRM_FORMAT_YVU444 = 0x34325659, +-}; +-#endif /* WL_DRM_FORMAT_ENUM */ +- +-#ifndef WL_DRM_CAPABILITY_ENUM +-#define WL_DRM_CAPABILITY_ENUM +-/** +- * @ingroup iface_wl_drm +- * wl_drm capability bitmask +- * +- * Bitmask of capabilities. +- */ +-enum wl_drm_capability { +- /** +- * wl_drm prime available +- */ +- WL_DRM_CAPABILITY_PRIME = 1, +-}; +-#endif /* WL_DRM_CAPABILITY_ENUM */ +- +-/** +- * @ingroup iface_wl_drm +- * @struct wl_drm_listener +- */ +-struct wl_drm_listener { +- /** +- */ +- void (*device)(void *data, +- struct wl_drm *wl_drm, +- const char *name); +- /** +- */ +- void (*format)(void *data, +- struct wl_drm *wl_drm, +- uint32_t format); +- /** +- */ +- void (*authenticated)(void *data, +- struct wl_drm *wl_drm); +- /** +- */ +- void (*capabilities)(void *data, +- struct wl_drm *wl_drm, +- uint32_t value); +-}; +- +-/** +- * @ingroup wl_drm_iface +- */ +-static inline int +-wl_drm_add_listener(struct wl_drm *wl_drm, +- const struct wl_drm_listener *listener, void *data) +-{ +- return wl_proxy_add_listener((struct wl_proxy *) wl_drm, +- (void (**)(void)) listener, data); +-} +- +-#define WL_DRM_AUTHENTICATE 0 +-#define WL_DRM_CREATE_BUFFER 1 +-#define WL_DRM_CREATE_PLANAR_BUFFER 2 +-#define WL_DRM_CREATE_PRIME_BUFFER 3 +- +-/** +- * @ingroup iface_wl_drm +- */ +-#define WL_DRM_AUTHENTICATE_SINCE_VERSION 1 +-/** +- * @ingroup iface_wl_drm +- */ +-#define WL_DRM_CREATE_BUFFER_SINCE_VERSION 1 +-/** +- * @ingroup iface_wl_drm +- */ +-#define WL_DRM_CREATE_PLANAR_BUFFER_SINCE_VERSION 1 +-/** +- * @ingroup iface_wl_drm +- */ +-#define WL_DRM_CREATE_PRIME_BUFFER_SINCE_VERSION 2 +- +-/** @ingroup iface_wl_drm */ +-static inline void +-wl_drm_set_user_data(struct wl_drm *wl_drm, void *user_data) +-{ +- wl_proxy_set_user_data((struct wl_proxy *) wl_drm, user_data); +-} +- +-/** @ingroup iface_wl_drm */ +-static inline void * +-wl_drm_get_user_data(struct wl_drm *wl_drm) +-{ +- return wl_proxy_get_user_data((struct wl_proxy *) wl_drm); +-} +- +-static inline uint32_t +-wl_drm_get_version(struct wl_drm *wl_drm) +-{ +- return wl_proxy_get_version((struct wl_proxy *) wl_drm); +-} +- +-/** @ingroup iface_wl_drm */ +-static inline void +-wl_drm_destroy(struct wl_drm *wl_drm) +-{ +- wl_proxy_destroy((struct wl_proxy *) wl_drm); +-} +- +-/** +- * @ingroup iface_wl_drm +- */ +-static inline void +-wl_drm_authenticate(struct wl_drm *wl_drm, uint32_t id) +-{ +- wl_proxy_marshal((struct wl_proxy *) wl_drm, +- WL_DRM_AUTHENTICATE, id); +-} +- +-/** +- * @ingroup iface_wl_drm +- */ +-static inline struct wl_buffer * +-wl_drm_create_buffer(struct wl_drm *wl_drm, uint32_t name, int32_t width, int32_t height, uint32_t stride, uint32_t format) +-{ +- struct wl_proxy *id; +- +- id = wl_proxy_marshal_constructor((struct wl_proxy *) wl_drm, +- WL_DRM_CREATE_BUFFER, &wl_buffer_interface, NULL, name, width, height, stride, format); +- +- return (struct wl_buffer *) id; +-} +- +-/** +- * @ingroup iface_wl_drm +- */ +-static inline struct wl_buffer * +-wl_drm_create_planar_buffer(struct wl_drm *wl_drm, uint32_t name, int32_t width, int32_t height, uint32_t format, int32_t offset0, int32_t stride0, int32_t offset1, int32_t stride1, int32_t offset2, int32_t stride2) +-{ +- struct wl_proxy *id; +- +- id = wl_proxy_marshal_constructor((struct wl_proxy *) wl_drm, +- WL_DRM_CREATE_PLANAR_BUFFER, &wl_buffer_interface, NULL, name, width, height, format, offset0, stride0, offset1, stride1, offset2, stride2); +- +- return (struct wl_buffer *) id; +-} +- +-/** +- * @ingroup iface_wl_drm +- */ +-static inline struct wl_buffer * +-wl_drm_create_prime_buffer(struct wl_drm *wl_drm, int32_t name, int32_t width, int32_t height, uint32_t format, int32_t offset0, int32_t stride0, int32_t offset1, int32_t stride1, int32_t offset2, int32_t stride2) +-{ +- struct wl_proxy *id; +- +- id = wl_proxy_marshal_constructor((struct wl_proxy *) wl_drm, +- WL_DRM_CREATE_PRIME_BUFFER, &wl_buffer_interface, NULL, name, width, height, format, offset0, stride0, offset1, stride1, offset2, stride2); +- +- return (struct wl_buffer *) id; +-} +- +-#ifdef __cplusplus +-} +-#endif +- +-#endif +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/libva/libva_1.7.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/libva/libva_1.7.3.bb new file mode 100644 index 000000000..6c0b90f5d --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/libva/libva_1.7.3.bb @@ -0,0 +1,53 @@ +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/01org/libva/issues" + +SECTION = "x11" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" + +SRC_URI = "git://github.com/01org/libva.git;protocol=http;branch=v1.7-branch \ + file://0001-configure.ac-Use-wayland-scanner-in-PATH.patch \ + file://0001-wayland-Don-t-commit-and-ship-generated-files.patch" +SRCREV = "dbf9f7e33349c3cee8d131e93a6a4f91255635cb" +UPSTREAM_CHECK_GITTAGREGEX = "libva-(?P(\d+(\.\d+)+))" + +S = "${WORKDIR}/git" + +DEPENDS = "libdrm virtual/mesa virtual/libgles1 virtual/libgles2 virtual/egl" + +inherit autotools pkgconfig distro_features_check + +REQUIRED_DISTRO_FEATURES = "opengl" + +EXTRA_OECONF = "--disable-dummy-driver" + +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}-tpi ${PN}-glx ${PN}-egl ${PN}-wayland" + +RDEPENDS_${PN}-tpi =+ "${PN}" +RDEPENDS_${PN}-x11 =+ "${PN}" +RDEPENDS_${PN}-glx =+ "${PN}-x11" +RDEPENDS_${PN}-egl =+ "${PN}-x11" + +FILES_${PN}-dbg += "${libdir}/dri/.debug" + +FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" +FILES_${PN}-tpi =+ "${libdir}/libva-tpi*${SOLIBS}" +FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" +FILES_${PN}-egl =+ "${libdir}/libva-egl*${SOLIBS}" +FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.1.bb deleted file mode 100644 index c3d2d23db..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.1.bb +++ /dev/null @@ -1,39 +0,0 @@ -SUMMARY = "Matchbox lightweight window manager" -HOMEPAGE = "http://matchbox-project.org" -BUGTRACKER = "http://bugzilla.yoctoproject.org/" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://src/wm.h;endline=21;md5=a7e844465edbcf79c282369f93caa835 \ - file://src/main.c;endline=21;md5=3e5d9f832b527b0d72dbe8e3c4c60b95 \ - file://src/wm.c;endline=21;md5=8dc9d24477d87ef5dfbc2e4927146aab" - -SECTION = "x11/wm" -DEPENDS = "libmatchbox virtual/libx11 libxext libxrender startup-notification expat gconf libxcursor libxfixes" - -# SRCREV tagged 1.2.1 -SRCREV = "9fd1806dfa7c8f2202db18b7bc880857a3019f8c" -SRC_URI = "git://git.yoctoproject.org/matchbox-window-manager \ - file://kbdconfig" - -S = "${WORKDIR}/git" - -inherit autotools pkgconfig distro_features_check -# depends on virtual/libx11 -REQUIRED_DISTRO_FEATURES = "x11" - -FILES_${PN} = "${bindir}/* \ - ${datadir}/matchbox \ - ${sysconfdir}/matchbox \ - ${datadir}/themes/blondie/matchbox \ - ${datadir}/themes/Default/matchbox \ - ${datadir}/themes/MBOpus/matchbox" - -EXTRA_OECONF = " --enable-startup-notification \ - --disable-xrm \ - --enable-expat \ - --with-expat-lib=${STAGING_LIBDIR} \ - --with-expat-includes=${STAGING_INCDIR}" - -do_install_prepend() { - install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig -} diff --git a/import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb new file mode 100644 index 000000000..815a75f36 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb @@ -0,0 +1,39 @@ +SUMMARY = "Matchbox lightweight window manager" +HOMEPAGE = "http://matchbox-project.org" +BUGTRACKER = "http://bugzilla.yoctoproject.org/" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://src/wm.h;endline=21;md5=a7e844465edbcf79c282369f93caa835 \ + file://src/main.c;endline=21;md5=3e5d9f832b527b0d72dbe8e3c4c60b95 \ + file://src/wm.c;endline=21;md5=8dc9d24477d87ef5dfbc2e4927146aab" + +SECTION = "x11/wm" +DEPENDS = "libmatchbox virtual/libx11 libxext libxrender startup-notification expat gconf libxcursor libxfixes" + +# SRCREV tagged 1.2.2 +SRCREV = "27da947e7fbdf9659f7e5bd1e92af92af6c03970" +SRC_URI = "git://git.yoctoproject.org/matchbox-window-manager \ + file://kbdconfig" + +S = "${WORKDIR}/git" + +inherit autotools pkgconfig distro_features_check +# depends on virtual/libx11 +REQUIRED_DISTRO_FEATURES = "x11" + +FILES_${PN} = "${bindir}/* \ + ${datadir}/matchbox \ + ${sysconfdir}/matchbox \ + ${datadir}/themes/blondie/matchbox \ + ${datadir}/themes/Default/matchbox \ + ${datadir}/themes/MBOpus/matchbox" + +EXTRA_OECONF = " --enable-startup-notification \ + --disable-xrm \ + --enable-expat \ + --with-expat-lib=${STAGING_LIBDIR} \ + --with-expat-includes=${STAGING_INCDIR}" + +do_install_prepend() { + install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig +} diff --git a/import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.1.bb deleted file mode 100644 index a1a8e26e0..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.1.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Library for caching application menus" -DESCRIPTION = "A library creating and utilizing caches to speed up freedesktop.org application menus" -HOMEPAGE = "http://lxde.sourceforge.net/" - -LICENSE = "LGPLv2.1+" -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[md5sum] = "a856ba860b16fdc8c69ee784bc4ade36" -SRC_URI[sha256sum] = "0ac72649919946070258320aafc320467dd040bcef7b3a225e2ab7241ddffd59" - -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/lxde/files/menu-cache/1.0/" - -inherit autotools gettext pkgconfig gtk-doc diff --git a/import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.2.bb new file mode 100644 index 000000000..71540cf1d --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/menu-cache/menu-cache_1.0.2.bb @@ -0,0 +1,18 @@ +SUMMARY = "Library for caching application menus" +DESCRIPTION = "A library creating and utilizing caches to speed up freedesktop.org application menus" +HOMEPAGE = "http://lxde.sourceforge.net/" + +LICENSE = "LGPLv2.1+" +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[md5sum] = "8dde7a3f5bd9798d0129d1979a5d7640" +SRC_URI[sha256sum] = "6f83edf2de34f83e701dcb52145d755250a5677580cd413476cc4d7f2d2012d5" + +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/lxde/files/menu-cache/1.0/" + +inherit autotools gettext pkgconfig gtk-doc diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/0001-Use-wayland-scanner-in-the-path.patch b/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/0001-Use-wayland-scanner-in-the-path.patch new file mode 100644 index 000000000..e49695bf8 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/0001-Use-wayland-scanner-in-the-path.patch @@ -0,0 +1,37 @@ +From 2f68fcaaf4964e7feeb383f5c26851965cda037c Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen +Date: Tue, 15 Nov 2016 15:20:49 +0200 +Subject: [PATCH] Simplify wayland-scanner lookup + +Don't use pkg-config to lookup the path of a binary that's in the path. + +Alternatively we'd have to prefix the path returned by pkg-config with +PKG_CONFIG_SYSROOT_DIR. + +Upstream-Status: Pending +Signed-off-by: Jussi Kukkonen +--- + configure.ac | 7 +------ + 1 file changed, 1 insertion(+), 6 deletions(-) + +diff --git a/configure.ac b/configure.ac +index e56e35a..a92005a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2020,12 +2020,7 @@ if test "x$with_egl_platforms" != "x" -a "x$enable_egl" != xyes; then + AC_MSG_ERROR([cannot build egl state tracker without EGL library]) + fi + +-PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner], +- WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`, +- WAYLAND_SCANNER='') +-if test "x$WAYLAND_SCANNER" = x; then +- AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) +-fi ++AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) + + # Do per-EGL platform setups and checks + egl_platforms=`IFS=', '; echo $with_egl_platforms` +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/clang-compile-PR89599.patch b/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/clang-compile-PR89599.patch deleted file mode 100644 index 48bd32567..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/clang-compile-PR89599.patch +++ /dev/null @@ -1,116 +0,0 @@ -From 5ec140c17b54c25920091501b665b9aa809cc5e8 Mon Sep 17 00:00:00 2001 -From: Matt Turner -Date: Mon, 11 Jul 2016 10:44:25 -0700 -Subject: mapi: Massage code to allow clang to compile. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -According to https://llvm.org/bugs/show_bug.cgi?id=19778#c3 this code -was violating the spec, resulting in it failing to compile. - -Cc: mesa-stable@lists.freedesktop.org -Co-authored-by: Tomasz Paweł Gajc -Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89599 -Reviewed-by: Emil Velikov - -Upstream-Status: Backport -Signed-off-by: Khem Raj - -diff --git a/configure.ac b/configure.ac -index 3799d8d..1ca8359 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -226,6 +226,7 @@ AX_GCC_FUNC_ATTRIBUTE([packed]) - AX_GCC_FUNC_ATTRIBUTE([pure]) - AX_GCC_FUNC_ATTRIBUTE([returns_nonnull]) - AX_GCC_FUNC_ATTRIBUTE([unused]) -+AX_GCC_FUNC_ATTRIBUTE([visibility]) - AX_GCC_FUNC_ATTRIBUTE([warn_unused_result]) - AX_GCC_FUNC_ATTRIBUTE([weak]) - -diff --git a/src/mapi/entry_x86-64_tls.h b/src/mapi/entry_x86-64_tls.h -index 38faccc..c5262a1 100644 ---- a/src/mapi/entry_x86-64_tls.h -+++ b/src/mapi/entry_x86-64_tls.h -@@ -25,6 +25,11 @@ - * Chia-I Wu - */ - -+#ifdef HAVE_FUNC_ATTRIBUTE_VISIBIITY -+#define HIDDEN __attribute__((visibility("hidden"))) -+#else -+#define HIDDEN -+#endif - - __asm__(".text\n" - ".balign 32\n" -@@ -54,8 +59,8 @@ entry_patch_public(void) - { - } - --static char --x86_64_entry_start[]; -+extern char -+x86_64_entry_start[] HIDDEN; - - mapi_func - entry_get_public(int slot) -diff --git a/src/mapi/entry_x86_tls.h b/src/mapi/entry_x86_tls.h -index 46d2ece..231b409 100644 ---- a/src/mapi/entry_x86_tls.h -+++ b/src/mapi/entry_x86_tls.h -@@ -27,6 +27,12 @@ - - #include - -+#ifdef HAVE_FUNC_ATTRIBUTE_VISIBIITY -+#define HIDDEN __attribute__((visibility("hidden"))) -+#else -+#define HIDDEN -+#endif -+ - __asm__(".text"); - - __asm__("x86_current_tls:\n\t" -@@ -71,8 +77,8 @@ __asm__(".text"); - extern unsigned long - x86_current_tls(); - --static char x86_entry_start[]; --static char x86_entry_end[]; -+extern char x86_entry_start[] HIDDEN; -+extern char x86_entry_end[] HIDDEN; - - void - entry_patch_public(void) -diff --git a/src/mapi/entry_x86_tsd.h b/src/mapi/entry_x86_tsd.h -index ea7bacb..03d9735 100644 ---- a/src/mapi/entry_x86_tsd.h -+++ b/src/mapi/entry_x86_tsd.h -@@ -25,6 +25,11 @@ - * Chia-I Wu - */ - -+#ifdef HAVE_FUNC_ATTRIBUTE_VISIBIITY -+#define HIDDEN __attribute__((visibility("hidden"))) -+#else -+#define HIDDEN -+#endif - - #define X86_ENTRY_SIZE 32 - -@@ -58,8 +63,8 @@ __asm__(".balign 32\n" - #include - #include "u_execmem.h" - --static const char x86_entry_start[]; --static const char x86_entry_end[]; -+extern const char x86_entry_start[] HIDDEN; -+extern const char x86_entry_end[] HIDDEN; - - void - entry_patch_public(void) --- -cgit v0.10.2 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/replace_glibc_check_with_linux.patch b/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/replace_glibc_check_with_linux.patch index e4461ef17..0280ee859 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/replace_glibc_check_with_linux.patch +++ b/import-layers/yocto-poky/meta/recipes-graphics/mesa/files/replace_glibc_check_with_linux.patch @@ -2,16 +2,25 @@ endianness check is OS wide and not specific to libc Signed-off-by: Khem Raj Upstream-Status: Pending -Index: mesa-11.1.1/src/gallium/include/pipe/p_config.h -=================================================================== ---- mesa-11.1.1.orig/src/gallium/include/pipe/p_config.h -+++ mesa-11.1.1/src/gallium/include/pipe/p_config.h -@@ -130,7 +130,7 @@ - * Endian detection. - */ + +Signed-off-by: Jussi Kukkonen +--- + src/util/u_endian.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/util/u_endian.h b/src/util/u_endian.h +index b9d563d..2d5eab9 100644 +--- a/src/util/u_endian.h ++++ b/src/util/u_endian.h +@@ -27,7 +27,7 @@ + #ifndef U_ENDIAN_H + #define U_ENDIAN_H --#ifdef __GLIBC__ +-#if defined(__GLIBC__) || defined(ANDROID) +#if defined(__linux__) #include #if __BYTE_ORDER == __LITTLE_ENDIAN +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/libglu_9.0.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/mesa/libglu_9.0.0.bb index 010998d92..8b94613c7 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/mesa/libglu_9.0.0.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/mesa/libglu_9.0.0.bb @@ -24,7 +24,7 @@ DEPENDS = "virtual/libgl" inherit autotools pkgconfig distro_features_check # Requires libGL.so which is provided by mesa when x11 in DISTRO_FEATURES -REQUIRED_DISTRO_FEATURES = "x11" +REQUIRED_DISTRO_FEATURES = "x11 opengl" # Remove the mesa-glu dependency in mesa-glu-dev, as mesa-glu is empty RDEPENDS_${PN}-dev = "" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-demos_8.3.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-demos_8.3.0.bb index fab0bdb2e..e43b9effb 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-demos_8.3.0.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-demos_8.3.0.bb @@ -30,7 +30,7 @@ PACKAGECONFIG ?= "drm osmesa freetype2 gbm egl gles1 gles2 \ x11 glew glu glx" # The Wayland code doesn't work with Wayland 1.0, so disable it for now -#${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}" +#${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)}" EXTRA_OECONF = "--with-system-data-files" @@ -40,7 +40,7 @@ PACKAGECONFIG[freetype2] = "--enable-freetype2,--disable-freetype2,freetype" PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/libgl" PACKAGECONFIG[gles1] = "--enable-gles1,--disable-gles1,virtual/libgles1" PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2" -PACKAGECONFIG[glut] = "--with-glut=${STAGING_EXECPREFIXDIR},--without-glut," +PACKAGECONFIG[glut] = "--with-glut=${STAGING_EXECPREFIXDIR},--without-glut,freeglut" PACKAGECONFIG[osmesa] = "--enable-osmesa,--disable-osmesa," PACKAGECONFIG[vg] = "--enable-vg,--disable-vg,virtual/libopenvg" PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,virtual/libgl wayland" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_12.0.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_12.0.1.bb deleted file mode 100644 index f06a3e9b5..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_12.0.1.bb +++ /dev/null @@ -1,13 +0,0 @@ -require mesa_${PV}.bb - -SUMMARY += " (OpenGL only, no EGL/GLES)" - -FILESEXTRAPATHS =. "${FILE_DIRNAME}/mesa:" - -PROVIDES = "virtual/libgl virtual/mesa" - -S = "${WORKDIR}/mesa-${PV}" - -PACKAGECONFIG ??= "dri ${MESA_CRYPTO} ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" - -EXCLUDE_FROM_WORLD = "1" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_17.0.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_17.0.2.bb new file mode 100644 index 000000000..e3604f30b --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa-gl_17.0.2.bb @@ -0,0 +1,13 @@ +require mesa_${PV}.bb + +SUMMARY += " (OpenGL only, no EGL/GLES)" + +FILESEXTRAPATHS =. "${FILE_DIRNAME}/mesa:" + +PROVIDES = "virtual/libgl virtual/mesa" + +S = "${WORKDIR}/mesa-${PV}" + +PACKAGECONFIG ??= "dri ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" + +EXCLUDE_FROM_WORLD = "1" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa.inc b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa.inc index 525a2d54c..25cbf631a 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa.inc @@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://docs/license.html;md5=899fbe7e42d494c7c8c159c7001693d PE = "2" -DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native udev" +DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native" PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa" @@ -22,13 +22,12 @@ inherit autotools pkgconfig pythonnative gettext distro_features_check REQUIRED_DISTRO_FEATURES = "opengl" +export LLVM_CONFIG = "${STAGING_BINDIR_CROSS}/llvm-config" EXTRA_OECONF = "--enable-shared-glapi" -PACKAGECONFIG ??= "gbm egl gles dri ${MESA_CRYPTO} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}\ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}\ +PACKAGECONFIG ??= "gbm egl gles dri \ + ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)} \ " - PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm" X11_DEPS = "xf86driproto glproto virtual/libx11 libxext libxxf86vm libxdamage libxfixes" @@ -42,6 +41,10 @@ DRIDRIVERS_append_x86-64 = ",radeon,r200,nouveau,i965,i915" PACKAGECONFIG[dri] = "--enable-dri --with-dri-drivers=${DRIDRIVERS}, --disable-dri, dri2proto libdrm" PACKAGECONFIG[dri3] = "--enable-dri3, --disable-dri3, dri3proto presentproto libxshmfence" +# Vulkan drivers need dri3 enabled +# radeon could be enabled as well but requires gallium-llvm with llvm >= 3.9 +PACKAGECONFIG[vulkan] = "--with-vulkan-drivers=intel, --without-vulkan-drivers" + PACKAGECONFIG[gles] = "--enable-gles1 --enable-gles2, --disable-gles1 --disable-gles2" EGL_PLATFORMS = "drm" @@ -49,7 +52,12 @@ EGL_PLATFORMS .="${@bb.utils.contains('PACKAGECONFIG', 'x11', ',x11', '', d)}" EGL_PLATFORMS .="${@bb.utils.contains('PACKAGECONFIG', 'wayland', ',wayland', '', d)}" PACKAGECONFIG[egl] = "--enable-egl --with-egl-platforms=${EGL_PLATFORMS}, --disable-egl" +PACKAGECONFIG[etnaviv] = "" +PACKAGECONFIG[imx] = "" + GALLIUMDRIVERS = "swrast" +GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'etnaviv', ',etnaviv', '', d)}" +GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'imx', ',imx', '', d)}" GALLIUMDRIVERS_LLVM33 = "${@bb.utils.contains('PACKAGECONFIG', 'r600', 'radeonsi,r600', '', d)}" PACKAGECONFIG[r600] = "" GALLIUMDRIVERS_LLVM33_ENABLED = "${@base_version_less_or_equal('MESA_LLVM_RELEASE', '3.2', False, len('${GALLIUMDRIVERS_LLVM33}') > 0, d)}" @@ -64,11 +72,8 @@ PACKAGECONFIG[gallium-llvm] = "--enable-gallium-llvm --enable-llvm-shared-libs, export WANT_LLVM_RELEASE = "${MESA_LLVM_RELEASE}" PACKAGECONFIG[xa] = "--enable-xa, --disable-xa" -# Mesa requires one of the following crypto implementation, pick one of them -MESA_CRYPTO ??= "openssl" -PACKAGECONFIG[openssl] = "--with-sha1=libcrypto,,openssl" -PACKAGECONFIG[nettle] = "--with-sha1=libnettle,,nettle" -PACKAGECONFIG[gcrypt] = "--with-sha1=libgcrypt,,libgcrypt" +OSMESA = "${@bb.utils.contains('PACKAGECONFIG', 'gallium', 'gallium-osmesa', 'osmesa', d)}" +PACKAGECONFIG[osmesa] = "--enable-${OSMESA},--disable-${OSMESA}" # llvmpipe is slow if compiled with -fomit-frame-pointer (e.g. -O2) FULL_OPTIMIZATION_append = " -fno-omit-frame-pointer" @@ -91,9 +96,8 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \ libgles2-mesa libgles2-mesa-dev \ libgles3-mesa libgles3-mesa-dev \ libwayland-egl libwayland-egl-dev \ - libxvmcsoftpipe libxvmcsoftpipe-dev \ libxatracker libxatracker-dev \ - mesa-megadriver \ + mesa-megadriver mesa-vulkan-drivers \ " do_install_append () { @@ -111,7 +115,7 @@ do_install_append () { # they don't get Debian-renamed (which would remove the -mesa suffix), and # RPROVIDEs/RCONFLICTs on the generic libgl name. python __anonymous() { - pkgconfig = (d.getVar('PACKAGECONFIG', True) or "").split() + pkgconfig = (d.getVar('PACKAGECONFIG') or "").split() for p in (("egl", "libegl", "libegl1"), ("dri", "libgl", "libgl1"), ("gles", "libgles1", "libglesv1-cm1"), @@ -145,7 +149,7 @@ python mesa_populate_packages() { d.setVar("RREPLACES_%s" % pkg, pkg.replace("mesa", "mesa-dri", 1)) import re - dri_drivers_root = oe.path.join(d.getVar('PKGD', True), d.getVar('libdir', True), "dri") + dri_drivers_root = oe.path.join(d.getVar('PKGD'), d.getVar('libdir'), "dri") if os.path.isdir(dri_drivers_root): dri_pkgs = os.listdir(dri_drivers_root) lib_name = d.expand("${MLPREFIX}mesa-megadriver") @@ -157,7 +161,7 @@ python mesa_populate_packages() { d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name) d.appendVar("RREPLACES_%s" % lib_name, pkg_name) - pipe_drivers_root = os.path.join(d.getVar('libdir', True), "gallium-pipe") + pipe_drivers_root = os.path.join(d.getVar('libdir'), "gallium-pipe") do_split_packages(d, pipe_drivers_root, '^pipe_(.*)\.so$', 'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='') } @@ -167,6 +171,7 @@ PACKAGES_DYNAMIC += "^mesa-driver-.*" FILES_${PN} += "${sysconfdir}/drirc" FILES_mesa-megadriver = "${libdir}/dri/*" +FILES_mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan" FILES_libegl-mesa = "${libdir}/libEGL.so.*" FILES_libgbm = "${libdir}/libgbm.so.*" FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*" @@ -175,10 +180,9 @@ FILES_libgl-mesa = "${libdir}/libGL.so.*" FILES_libglapi = "${libdir}/libglapi.so.*" FILES_libosmesa = "${libdir}/libOSMesa.so.*" FILES_libwayland-egl = "${libdir}/libwayland-egl.so.*" -FILES_libxvmcsoftpipe = "${libdir}/libXvMCsoftpipe.so.*" FILES_libxatracker = "${libdir}/libxatracker.so.*" -FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc" +FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc ${includedir}/vulkan" 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" @@ -186,9 +190,8 @@ FILES_libglapi-dev = "${libdir}/libglapi.*" FILES_libgles1-mesa-dev = "${libdir}/libGLESv1*.* ${includedir}/GLES ${libdir}/pkgconfig/glesv1*.pc" FILES_libgles2-mesa-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc" FILES_libgles3-mesa-dev = "${includedir}/GLES3" -FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/osmesa.h ${libdir}/pkgconfig/osmesa.pc" +FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/GL/osmesa.h ${libdir}/pkgconfig/osmesa.pc" FILES_libwayland-egl-dev = "${libdir}/pkgconfig/wayland-egl.pc ${libdir}/libwayland-egl.*" -FILES_libxvmcsoftpipe-dev = "${libdir}/libXvMCsoftpipe.so ${libdir}/libXvMCsoftpipe.la" FILES_libxatracker-dev = "${libdir}/libxatracker.so ${libdir}/libxatracker.la \ ${includedir}/xa_tracker.h ${includedir}/xa_composite.h ${includedir}/xa_context.h \ ${libdir}/pkgconfig/xatracker.pc" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_12.0.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_12.0.1.bb deleted file mode 100644 index 80189e3ff..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_12.0.1.bb +++ /dev/null @@ -1,18 +0,0 @@ -require ${BPN}.inc - -SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/mesa-${PV}.tar.xz \ - file://replace_glibc_check_with_linux.patch \ - file://clang-compile-PR89599.patch \ - file://disable-asm-on-non-gcc.patch \ -" - -SRC_URI[md5sum] = "972fd5ad5a63aeabf173fb9adefc6522" -SRC_URI[sha256sum] = "bab24fb79f78c876073527f515ed871fc9c81d816f66c8a0b051d8d653896389" - -#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/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_17.0.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_17.0.2.bb new file mode 100644 index 000000000..2689e8fac --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/mesa/mesa_17.0.2.bb @@ -0,0 +1,18 @@ +require ${BPN}.inc + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/mesa-${PV}.tar.xz \ + file://replace_glibc_check_with_linux.patch \ + file://disable-asm-on-non-gcc.patch \ + file://0001-Use-wayland-scanner-in-the-path.patch \ +" + +SRC_URI[md5sum] = "8f808e92b893d412fbd6510e1d16f5c5" +SRC_URI[sha256sum] = "f8f191f909e01e65de38d5bdea5fb057f21649a3aed20948be02348e77a689d4" + +#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/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb b/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb index 6b5002856..97dcac5f7 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb @@ -11,7 +11,7 @@ inherit packagegroup distro_features_check # rdepends on XSERVER REQUIRED_DISTRO_FEATURES = "x11" -XSERVER ?= "xserver-xorg xf86-video-fbdev xf86-input-evdev" +XSERVER ?= "xserver-xorg xf86-video-fbdev" XSERVERCODECS ?= "" RDEPENDS_${PN} = "\ diff --git a/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb b/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb index 42914246d..001db9e5e 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb @@ -5,13 +5,12 @@ PR = "r40" inherit packagegroup distro_features_check -# rdepends on x11-common REQUIRED_DISTRO_FEATURES = "x11" PACKAGES = "${PN} ${PN}-utils" -# xserver-common, x11-common -VIRTUAL-RUNTIME_xserver_common ?= "x11-common" +# backwards compatibility for xserver-common +VIRTUAL-RUNTIME_xserver_common ?= "" # elsa, xserver-nodm-init VIRTUAL-RUNTIME_graphical_init_manager ?= "xserver-nodm-init" @@ -30,4 +29,8 @@ RDEPENDS_${PN}-utils = "\ xhost \ xset \ xrandr \ + xmodmap \ + xdpyinfo \ + xinput-calibrator \ + dbus-x11 \ " diff --git a/import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.1.bb deleted file mode 100644 index f9f344a86..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.1.bb +++ /dev/null @@ -1,52 +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" - -inherit gnomebase gtk-doc ptest-gnome upstream-version-is-even gobject-introspection - -SRC_URI += "file://run-ptest \ - file://0001-Drop-introspection-macros-from-acinclude.m4.patch \ - file://0001-Enforce-recreation-of-docs-pango.types-it-is-build-c.patch \ -" -SRC_URI[archive.md5sum] = "6fc88c6529890d6c8e03074d57a3eceb" -SRC_URI[archive.sha256sum] = "e27af54172c72b3ac6be53c9a4c67053e16c905e02addcf3a603ceb2005c1a40" - -DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" -PACKAGECONFIG[x11] = "--with-xft,--without-xft,virtual/libx11 libxft" - -EXTRA_AUTORECONF = "" - -EXTRA_OECONF = " \ - --disable-debug \ - " - -LEAD_SONAME = "libpango-1.0*" -LIBV = "1.8.0" - -# This binary needs to be compiled for the host architecture. This isn't pretty! -do_compile_prepend_class-target () { - if ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'true', 'false', d)}; then - make CC="${BUILD_CC}" CFLAGS="" LDFLAGS="${BUILD_LDFLAGS}" AM_CPPFLAGS="$(pkg-config-native --cflags glib-2.0)" gen_all_unicode_LDADD="$(pkg-config-native --libs glib-2.0)" -C ${B}/tests gen-all-unicode - fi -} - -FILES_${PN} = "${bindir}/* ${libdir}/libpango*${SOLIBS}" -FILES_${PN}-dev += "${libdir}/pango/${LIBV}/modules/*.la" - -RDEPENDS_${PN}-ptest += "liberation-fonts cantarell-fonts" - -RPROVIDES_${PN} += "pango-modules pango-module-indic-lang \ - pango-module-basic-fc pango-module-arabic-lang" - -BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.3.bb new file mode 100644 index 000000000..e259a820c --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/pango/pango_1.40.3.bb @@ -0,0 +1,52 @@ +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" + +inherit gnomebase gtk-doc ptest-gnome upstream-version-is-even gobject-introspection + +SRC_URI += "file://run-ptest \ + file://0001-Drop-introspection-macros-from-acinclude.m4.patch \ + file://0001-Enforce-recreation-of-docs-pango.types-it-is-build-c.patch \ +" +SRC_URI[archive.md5sum] = "17c26720f5a862a12f7e1745e2f1d966" +SRC_URI[archive.sha256sum] = "abba8b5ce728520c3a0f1535eab19eac3c14aeef7faa5aded90017ceac2711d3" + +DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG[x11] = "--with-xft,--without-xft,virtual/libx11 libxft" + +EXTRA_AUTORECONF = "" + +EXTRA_OECONF = " \ + --disable-debug \ + " + +LEAD_SONAME = "libpango-1.0*" +LIBV = "1.8.0" + +# This binary needs to be compiled for the host architecture. This isn't pretty! +do_compile_prepend_class-target () { + if ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'true', 'false', d)}; then + make CC="${BUILD_CC}" CFLAGS="" LDFLAGS="${BUILD_LDFLAGS}" AM_CPPFLAGS="$(pkg-config-native --cflags glib-2.0)" gen_all_unicode_LDADD="$(pkg-config-native --libs glib-2.0)" -C ${B}/tests gen-all-unicode + fi +} + +FILES_${PN} = "${bindir}/* ${libdir}/libpango*${SOLIBS}" +FILES_${PN}-dev += "${libdir}/pango/${LIBV}/modules/*.la" + +RDEPENDS_${PN}-ptest += "liberation-fonts cantarell-fonts" + +RPROVIDES_${PN} += "pango-modules pango-module-indic-lang \ + pango-module-basic-fc pango-module-arabic-lang" + +BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch new file mode 100644 index 000000000..8b634243a --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch @@ -0,0 +1,51 @@ +From 47697aee05a112422acf203982085e7b3e6c05b2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20D=C3=ADaz?= +Date: Thu, 4 May 2017 00:57:39 -0500 +Subject: [PATCH 1/4] CMake: define GBM_BO_MAP only when symbol is found +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +gbm_bo_map() and _unmap() have been added recently to Mesa, +and this update may not have reached all implementations of +GBM, such as the one provided by Mali r6, where said +definitions can be found in the header file but not in the +library itself. This leads to errors like the following when +linking: + ../../../../lib/libpiglitutil_gl.so.0: undefined reference to `gbm_bo_unmap' + ../../../../lib/libpiglitutil_gl.so.0: undefined reference to `gbm_bo_map' + collect2: error: ld returned 1 exit status + make[2]: *** [bin/point-sprite] Error 1 + +Instead of relying on the header file, actually try to link +using that symbol to determine if PIGLIT_HAS_GBM_BO_MAP +should be defined. + +Upstream-Status: Submitted [piglit@lists.freedesktop.org] + +Signed-off-by: Daniel Díaz +Reviewed-by: Jan Vesely +Reviewed-by: Dylan Baker +--- + CMakeLists.txt | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a4ff99e..cc26fa8 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -141,8 +141,9 @@ IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") + if(GBM_FOUND) + set(PIGLIT_HAS_GBM True) + add_definitions(-DPIGLIT_HAS_GBM) +- if (GBM_VERSION VERSION_EQUAL "12.1" OR GBM_VERSION VERSION_GREATER "12.1") +- set(PIGLIT_HAS_GBM_BO_MAP True) ++ set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${GBM_LIBRARIES}) ++ CHECK_FUNCTION_EXISTS(gbm_bo_map PIGLIT_HAS_GBM_BO_MAP) ++ if (PIGLIT_HAS_GBM_BO_MAP) + add_definitions(-DPIGLIT_HAS_GBM_BO_MAP) + endif() + endif(GBM_FOUND) +-- +1.9.1 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-test-utils-with-ldl.patch b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-test-utils-with-ldl.patch deleted file mode 100644 index 2e1c9476f..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-test-utils-with-ldl.patch +++ /dev/null @@ -1,41 +0,0 @@ -Backport patch to fix build with gold linker. - -Signed-off-by: Jussi Kukkonen -Upstream-Status: Backport - - - -From 93a7113485cf1c55fd7076116faf5b3a690706b2 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen -Date: Tue, 30 Aug 2016 17:17:28 +0300 -Subject: [PATCH] cmake: Link test utils with "-ldl" - -Without this linking CXX executables (e.g. fbo-blit-stretch) fails -with gold linker: - -| libpiglitutil_gl.so.0: error: undefined reference to 'dlsym' -| libpiglitutil_gl.so.0: error: undefined reference to 'dlerror' -| libpiglitutil_gl.so.0: error: undefined reference to 'dlopen' - -Signed-off-by: Jussi Kukkonen -Reviewed-by: Emil Velikov ---- - tests/util/CMakeLists.txt | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/tests/util/CMakeLists.txt b/tests/util/CMakeLists.txt -index e1f8073..3d5bef5 100644 ---- a/tests/util/CMakeLists.txt -+++ b/tests/util/CMakeLists.txt -@@ -11,6 +11,8 @@ set_source_files_properties( - PROPERTIES GENERATED 1 - ) - -+link_libraries(${CMAKE_DL_LIBS}) -+ - if(HAVE_LIBCACA) - link_libraries(caca) - endif() --- -2.9.3 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-utils-with-xcb-explicitly.patch b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-utils-with-xcb-explicitly.patch deleted file mode 100644 index 845804dd6..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0001-cmake-Link-utils-with-xcb-explicitly.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 73e4fbc5777eddd89bb0fb16e90343551fe3e0ef Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen -Date: Tue, 5 Jul 2016 10:56:23 +0300 -Subject: [PATCH] cmake: Link utils with xcb explicitly - -Linking with g++ can reportedly lead to: - -libpiglitutil_gl.so.0: error: undefined reference to 'xcb_connect' -libpiglitutil_gl.so.0: error: undefined reference to 'xcb_get_setup' -libpiglitutil_gl.so.0: error: undefined reference to 'xcb_setup_roots_iterator' - -This may have appeared now because xcb-dri2 used to overlink publicly -but now does not. - -Signed-off-by: Jussi Kukkonen -Upstream-Status: Accepted ---- - CMakeLists.txt | 1 + - tests/util/CMakeLists.txt | 2 ++ - 2 files changed, 3 insertions(+) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 8e2abba..2e1a473 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -151,6 +151,7 @@ IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") - - pkg_check_modules(LIBDRM QUIET libdrm) - pkg_check_modules(LIBDRM_INTEL QUIET libdrm_intel) -+ pkg_check_modules(XCB QUIET xcb) - pkg_check_modules(XCB_DRI2 QUIET xcb-dri2) - pkg_check_modules(GLPROTO QUIET glproto) - ELSEIF(${CMAKE_SYSTEM_NAME} MATCHES "Windows") -diff --git a/tests/util/CMakeLists.txt b/tests/util/CMakeLists.txt -index fb22ffa..e1f8073 100644 ---- a/tests/util/CMakeLists.txt -+++ b/tests/util/CMakeLists.txt -@@ -121,11 +121,13 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") - - list(APPEND UTIL_GL_LIBS - ${LIBDRM_LDFLAGS} -+ ${XCB_LDFLAGS} - ${XCB_DRI2_LDFLAGS} - ) - - list(APPEND UTIL_GL_INCLUDES - ${LIBDRM_INCLUDE_DIRS} -+ ${XCB_INCLUDE_DIRS} - ${XCB_DRI2_INCLUDE_DIRS} - ) - --- -2.1.4 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch new file mode 100644 index 000000000..f3aa1ba1d --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch @@ -0,0 +1,54 @@ +From a6608f218b5023cef36b3de5ec3c5f00b0211d1c Mon Sep 17 00:00:00 2001 +From: Daniel Diaz +Date: Wed, 17 May 2017 18:00:15 -0500 +Subject: [PATCH 2/4] util/egl: Honour Surfaceless MESA in get_default_display +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The EGL_MESA_platform_surfaceless extension was introduced not too long +ago. Add support for it our helper. + +Upstream-Status: Accepted, since git 7b74602. + +Signed-off-by: Daniel Díaz +Reviewed-by: Emil Velikov +--- + tests/util/piglit-util-egl.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/tests/util/piglit-util-egl.c b/tests/util/piglit-util-egl.c +index 106c735..389fe12 100644 +--- a/tests/util/piglit-util-egl.c ++++ b/tests/util/piglit-util-egl.c +@@ -85,6 +85,7 @@ piglit_egl_get_default_display(EGLenum platform) + static bool has_x11 = false; + static bool has_wayland = false; + static bool has_gbm = false; ++ static bool has_surfaceless_mesa = false; + + static EGLDisplay (*peglGetPlatformDisplayEXT)(EGLenum platform, void *native_display, const EGLint *attrib_list); + +@@ -99,6 +100,7 @@ piglit_egl_get_default_display(EGLenum platform) + has_x11 = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_EXT_platform_x11"); + has_wayland = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_EXT_platform_wayland"); + has_gbm = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_EXT_platform_gbm"); ++ has_surfaceless_mesa = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_MESA_platform_surfaceless"); + + peglGetPlatformDisplayEXT = (void*) eglGetProcAddress("eglGetPlatformDisplayEXT"); + } +@@ -123,6 +125,11 @@ piglit_egl_get_default_display(EGLenum platform) + return EGL_NO_DISPLAY; + } + break; ++ case EGL_PLATFORM_SURFACELESS_MESA: ++ if (!has_surfaceless_mesa) { ++ return EGL_NO_DISPLAY; ++ } ++ break; + default: + fprintf(stderr, "%s: unrecognized platform %#x\n", __func__, platform); + return EGL_NO_DISPLAY; +-- +1.9.1 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch new file mode 100644 index 000000000..0f24dc181 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch @@ -0,0 +1,36 @@ +From c0dc430b8f5deeacdb11cd188195e16f512af233 Mon Sep 17 00:00:00 2001 +From: Daniel Diaz +Date: Wed, 17 May 2017 18:00:16 -0500 +Subject: [PATCH 3/4] egl_mesa_platform_surfaceless: Don't use + eglGetPlatformDisplay directly +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The entry point is not guaranteed to exist, so use the +piglit_egl_get_default_display() helper which does the correct thing. + +Upstream-Status: Accepted, since git 7b74602. + +Signed-off-by: Daniel Díaz +Reviewed-by: Emil Velikov +--- + .../spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c +index 3bbd6aa..81a3919 100644 +--- a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c ++++ b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c +@@ -31,7 +31,7 @@ test_setup(EGLDisplay *dpy) + + piglit_require_egl_extension(EGL_NO_DISPLAY, "EGL_MESA_platform_surfaceless"); + +- *dpy = eglGetPlatformDisplay(EGL_PLATFORM_SURFACELESS_MESA, NULL, NULL); ++ *dpy = piglit_egl_get_default_display(EGL_PLATFORM_SURFACELESS_MESA); + if (*dpy == EGL_NO_DISPLAY) { + printf("failed to get EGLDisplay\n"); + piglit_report_result(PIGLIT_SKIP); +-- +1.9.1 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch new file mode 100644 index 000000000..0952af582 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit/0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch @@ -0,0 +1,78 @@ +From 57de1ff6758ec5ea4a52637f233e3e3150086255 Mon Sep 17 00:00:00 2001 +From: Daniel Diaz +Date: Wed, 17 May 2017 18:00:17 -0500 +Subject: [PATCH 4/4] egl_mesa_platform_surfaceless: Use EXT functions for + surfaces +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +These EXT symbols are guaranteed to exist since they require +EGL_EXT_platform_base. + +Upstream-Status: Accepted, since git 7b74602. + +Signed-off-by: Daniel Díaz +Reviewed-by: Emil Velikov +--- + .../egl_mesa_platform_surfaceless.c | 23 ++++++++++++++++++++-- + 1 file changed, 21 insertions(+), 2 deletions(-) + +diff --git a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c +index 81a3919..264ed71 100644 +--- a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c ++++ b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c +@@ -24,6 +24,24 @@ + #include "piglit-util.h" + #include "piglit-util-egl.h" + ++/* Extension function pointers. ++ * ++ * Use prefix 'pegl' (piglit egl) instead of 'egl' to avoid collisions with ++ * prototypes in eglext.h. */ ++EGLSurface (*peglCreatePlatformPixmapSurfaceEXT)(EGLDisplay display, EGLConfig config, ++ NativePixmapType native_pixmap, const EGLint *attrib_list); ++EGLSurface (*peglCreatePlatformWindowSurfaceEXT)(EGLDisplay display, EGLConfig config, ++ NativeWindowType native_window, const EGLint *attrib_list); ++ ++static void ++init_egl_extension_funcs(void) ++{ ++ peglCreatePlatformPixmapSurfaceEXT = (void*) ++ eglGetProcAddress("eglCreatePlatformPixmapSurfaceEXT"); ++ peglCreatePlatformWindowSurfaceEXT = (void*) ++ eglGetProcAddress("eglCreatePlatformWindowSurfaceEXT"); ++} ++ + static void + test_setup(EGLDisplay *dpy) + { +@@ -72,7 +90,7 @@ test_create_window(void *test_data) + + test_setup(&dpy); + +- surf = eglCreatePlatformWindowSurface(dpy, EGL_NO_CONFIG_KHR, ++ surf = peglCreatePlatformWindowSurfaceEXT(dpy, EGL_NO_CONFIG_KHR, + /*native_window*/ NULL, + /*attrib_list*/ NULL); + if (surf) { +@@ -103,7 +121,7 @@ test_create_pixmap(void *test_data) + + test_setup(&dpy); + +- surf = eglCreatePlatformPixmapSurface(dpy, EGL_NO_CONFIG_KHR, ++ surf = peglCreatePlatformPixmapSurfaceEXT(dpy, EGL_NO_CONFIG_KHR, + /*native_window*/ NULL, + /*attrib_list*/ NULL); + if (surf) { +@@ -205,6 +223,7 @@ main(int argc, char **argv) + piglit_report_result(PIGLIT_FAIL); + } + ++ init_egl_extension_funcs(); + result = piglit_run_selected_subtests(subtests, selected_names, + num_selected, result); + piglit_report_result(result); +-- +1.9.1 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit_git.bb index 82adcdeca..2ea57794a 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit_git.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/piglit/piglit_git.bb @@ -5,23 +5,28 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b2beded7103a3d8a442a2a0391d607b0" SRC_URI = "git://anongit.freedesktop.org/piglit \ file://0001-cmake-install-bash-completions-in-the-right-place.patch \ file://0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch \ - file://0001-cmake-Link-utils-with-xcb-explicitly.patch \ - file://0001-cmake-Link-test-utils-with-ldl.patch \ + file://0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch \ + file://0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch \ + file://0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch \ + file://0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch \ " -# From 2016-07-07 -SRCREV = "c39e41a86551eb390b8da23232dc8577639403d0" +# From 2017-02-06 +SRCREV = "ca58eec0b965655c7eba592a634cbf4aadfbc675" # (when PV goes above 1.0 remove the trailing r) PV = "1.0+gitr${SRCPV}" S = "${WORKDIR}/git" -DEPENDS = "libpng virtual/libx11 libxrender waffle virtual/libgl libglu python3-mako-native python3-numpy-native python3-six-native" +DEPENDS = "libpng virtual/libx11 libxkbcommon libxrender waffle virtual/libgl libglu python3-mako-native python3-numpy-native python3-six-native virtual/egl" inherit cmake python3native distro_features_check bash-completion # depends on virtual/libx11 REQUIRED_DISTRO_FEATURES = "x11" +# depends on virtual/libgl +REQUIRED_DISTRO_FEATURES += "opengl" + # The built scripts go into the temporary directory according to tempfile # (typically /tmp) which can race if multiple builds happen on the same machine, # so tell it to use a directory in ${B} to avoid overwriting. @@ -46,7 +51,7 @@ RDEPENDS_${PN} = "waffle python3 python3-mako python3-json \ python3-subprocess python3-misc python3-importlib \ python3-unixadmin python3-xml python3-multiprocessing \ python3-six python3-shell python3-io python3-argparse \ - mesa-demos bash \ + python3-netserver mesa-demos bash \ " INSANE_SKIP_${PN} += "dev-so already-stripped" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb index 6c3bcd831..cdfe38a22 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb @@ -2,7 +2,7 @@ SUMMARY = "A clock combined with a game of pong" LICENSE = "GPLv2+" DEPENDS = "virtual/libx11 xdmcp xau" -inherit distro_features_check +inherit distro_features_check pkgconfig # depends on virtual/libx11 REQUIRED_DISTRO_FEATURES = "x11" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch b/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch new file mode 100644 index 000000000..694922cd1 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch @@ -0,0 +1,34 @@ +From 20525add1df8e1fb13fef90ac068f982def8b958 Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen +Date: Wed, 8 Mar 2017 13:23:58 +0200 +Subject: [PATCH] Use getenv() if secure_getenv() does not exist + +musl does not implement secure version: default to getenv() in that +case. + +https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/1538 + +Upstream-Status: Pending +Signed-off-by: Jussi Kukkonen +--- + loader/loader.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/loader/loader.c b/loader/loader.c +index 24758f4..bff79c1 100644 +--- a/loader/loader.c ++++ b/loader/loader.c +@@ -54,6 +54,10 @@ + #endif + #endif + ++#if !defined(__secure_getenv) ++#define __secure_getenv getenv ++#endif ++ + struct loader_struct loader = {0}; + // TLS for instance for alloc/free callbacks + THREAD_LOCAL_DECL struct loader_instance *tls_instance; +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch b/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch new file mode 100644 index 000000000..3cf241d62 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch @@ -0,0 +1,106 @@ +commit f63cbe944107b5cd8f150ceaaec43b26099d5688 +Author: Adam Jackson +Date: Tue Feb 16 10:05:25 2016 -0500 + + demos: Don't build tri or cube + + There are more interesting demos, all we really want here is vulkaninfo. + This helps because we don't need to pre-build glslang/llvm/lunarglass + just to get the loader and layers. + +Upstream-Status: Inappropriate [configuration] +Signed-off-by: Jussi Kukkonen + +--- a/demos/CMakeLists.txt ++++ b/demos/CMakeLists.txt +@@ -61,46 +61,6 @@ + else() + endif() + +-if(WIN32) +- # For Windows, since 32-bit and 64-bit items can co-exist, we build each in its own build directory. +- # 32-bit target data goes in build32, and 64-bit target data goes into build. So, include/link the +- # appropriate data at build time. +- if (CMAKE_CL_64) +- set (BUILDTGT_DIR build) +- else () +- set (BUILDTGT_DIR build32) +- endif() +- +- # Use static MSVCRT libraries +- foreach(configuration in CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELEASE CMAKE_C_FLAGS_RELWITHDEBINFO +- CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_RELWITHDEBINFO) +- if(${configuration} MATCHES "/MD") +- string(REGEX REPLACE "/MD" "/MT" ${configuration} "${${configuration}}") +- endif() +- endforeach() +- +- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv +- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert +- DEPENDS cube.vert ${GLSLANG_VALIDATOR} +- ) +- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv +- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag +- DEPENDS cube.frag ${GLSLANG_VALIDATOR} +- ) +- file(COPY cube.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos) +- file(COPY vulkaninfo.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos) +-else() +- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) +- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv +- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert +- DEPENDS cube.vert ${GLSLANG_VALIDATOR} +- ) +- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv +- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag +- DEPENDS cube.frag ${GLSLANG_VALIDATOR} +- ) +- endif() +-endif() + + if(WIN32) + include_directories ( +@@ -114,43 +74,6 @@ + add_executable(${API_LOWERCASE}info vulkaninfo.c) + target_link_libraries(${API_LOWERCASE}info ${LIBRARIES}) + +-if(NOT WIN32) +- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) +- add_executable(cube cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv) +- target_link_libraries(cube ${LIBRARIES}) +- endif() +-else() +- if (CMAKE_CL_64) +- set (LIB_DIR "Win64") +- else() +- set (LIB_DIR "Win32") +- endif() +- +- add_executable(cube WIN32 cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv) +- target_link_libraries(cube ${LIBRARIES}) +-endif() +- +-if(NOT WIN32) +- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) +- add_executable(cubepp cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv) +- target_link_libraries(cubepp ${LIBRARIES}) +- endif() +-else() +- if (CMAKE_CL_64) +- set (LIB_DIR "Win64") +- else() +- set (LIB_DIR "Win32") +- endif() +- +- add_executable(cubepp WIN32 cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv) +- target_link_libraries(cubepp ${LIBRARIES}) +-endif() +- +-if ((${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})) +- if ((DEMOS_WSI_SELECTION STREQUAL "XCB") OR (DEMOS_WSI_SELECTION STREQUAL "WAYLAND") OR WIN32 OR (CMAKE_SYSTEM_NAME STREQUAL "Android")) +- add_subdirectory(smoke) +- endif() +-endif() + + if(UNIX) + install(TARGETS ${API_LOWERCASE}info DESTINATION ${CMAKE_INSTALL_BINDIR}) diff --git a/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb new file mode 100644 index 000000000..45d1c493e --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb @@ -0,0 +1,34 @@ +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-LoaderAndValidationLayers" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=99c647ca3d4f6a4b9d8628f757aad156 \ + file://loader/loader.c;endline=25;md5=a87cd5442291c23d1fce4eece4cfde9d" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.git;branch=sdk-1.0.39 \ + file://demos-Don-t-build-tri-or-cube.patch \ + file://0001-Use-getenv-if-secure_getenv-does-not-exist.patch \ +" +SRCREV = "9c21ed0fb275589c3af6118aec9ef4f1d1544dc1" + +S = "${WORKDIR}/git" + + +inherit cmake python3native lib_package distro_features_check +ANY_OF_DISTRO_FEATURES = "x11 wayland" + +EXTRA_OECMAKE = "-DBUILD_WSI_MIR_SUPPORT=OFF \ + -DBUILD_LAYERS=OFF \ + -DBUILD_TESTS=OFF" + +# must choose x11 or wayland or both +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}" +PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON -DDEMOS_WSI_SELECTION=XCB, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF -DDEMOS_WSI_SELECTION=WAYLAND, libxcb libx11 libxrandr" +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb index f7db1bc95..a5179db1d 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb @@ -20,18 +20,21 @@ PACKAGECONFIG ??= "glx" # libx11 requires x11 in DISTRO_FEATURES. REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'glx', 'x11', '', d)}" +# virtual/libgl requires opengl in DISTRO_FEATURES. +REQUIRED_DISTRO_FEATURES += "${@bb.utils.contains('DEPENDS', 'virtual/${MLPREFIX}libgl', 'opengl', '', d)}" + # I say virtual/libgl, actually wants gl.pc -PACKAGECONFIG[glx] = "-Dwaffle_has_glx=1,-Dwaffle_has_glx=0,virtual/libgl libx11" +PACKAGECONFIG[glx] = "-Dwaffle_has_glx=1,-Dwaffle_has_glx=0,virtual/${MLPREFIX}libgl libx11" # I say virtual/libgl, actually wants wayland-egl.pc, egl.pc, and the wayland # DISTRO_FEATURE. -PACKAGECONFIG[wayland] = "-Dwaffle_has_wayland=1,-Dwaffle_has_wayland=0,virtual/libgl wayland" +PACKAGECONFIG[wayland] = "-Dwaffle_has_wayland=1,-Dwaffle_has_wayland=0,virtual/${MLPREFIX}libgl wayland" # I say virtual/libgl, actually wants gbm.pc egl.pc -PACKAGECONFIG[gbm] = "-Dwaffle_has_gbm=1,-Dwaffle_has_gbm=0,virtual/libgl udev" +PACKAGECONFIG[gbm] = "-Dwaffle_has_gbm=1,-Dwaffle_has_gbm=0,virtual/${MLPREFIX}libgl udev" # I say virtual/libgl, actually wants egl.pc -PACKAGECONFIG[x11-egl] = "-Dwaffle_has_x11_egl=1,-Dwaffle_has_x11_egl=0,virtual/libgl libxcb" +PACKAGECONFIG[x11-egl] = "-Dwaffle_has_x11_egl=1,-Dwaffle_has_x11_egl=0,virtual/${MLPREFIX}libgl libxcb" FILES_${PN}-dev += "${datadir}/cmake/Modules/FindWaffle.cmake \ ${libdir}/cmake/Waffle/" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.4.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.4.1.bb deleted file mode 100644 index 358039226..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.4.1.bb +++ /dev/null @@ -1,25 +0,0 @@ -SUMMARY = "Library to handle input devices in Wayland compositors" -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=2184aef38ff137ed33ce9a63b9d1eb8f" - -DEPENDS = "libevdev udev mtdev" - -SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \ - file://touchpad-serial-synaptics-need-to-fake-new-touches-on-TRIPLETAP.patch \ -" -SRC_URI[md5sum] = "2e7ba577ed74d8d1baeb07dbd4fb912a" -SRC_URI[sha256sum] = "26e7b3ab499358caba499705680ea7e5851af2bd37dc32f2be64181610d6392a" - -inherit autotools pkgconfig - -PACKAGECONFIG ??= "" -PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind" -PACKAGECONFIG[libwacom] = "--enable-libwacom,--disable-libwacom,libwacom" -PACKAGECONFIG[gui] = "--enable-event-gui,--disable-event-gui,cairo gtk+3" - -UDEVDIR = "`pkg-config --variable=udevdir udev`" - -EXTRA_OECONF += "--with-udev-dir=${UDEVDIR}" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.6.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.6.1.bb new file mode 100644 index 000000000..c8714f23e --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/libinput_1.6.1.bb @@ -0,0 +1,25 @@ +SUMMARY = "Library to handle input devices in Wayland compositors" +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2184aef38ff137ed33ce9a63b9d1eb8f" + +DEPENDS = "libevdev udev mtdev" + +SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \ + file://touchpad-serial-synaptics-need-to-fake-new-touches-on-TRIPLETAP.patch \ +" +SRC_URI[md5sum] = "7e282344f8ed7ec5cf87ca9fc22674fb" +SRC_URI[sha256sum] = "9d816f13eee63bcca0e9c3bb652c52ab55f39be4d1b90b54e4bfd1dc92ef55a8" + +inherit autotools pkgconfig + +PACKAGECONFIG ??= "" +PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind" +PACKAGECONFIG[libwacom] = "--enable-libwacom,--disable-libwacom,libwacom" +PACKAGECONFIG[gui] = "--enable-event-gui,--disable-event-gui,cairo gtk+3" + +UDEVDIR = "`pkg-config --variable=udevdir udev`" + +EXTRA_OECONF += "--with-udev-dir=${UDEVDIR}" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Use-unit32_t-instead-of-uint.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Use-unit32_t-instead-of-uint.patch deleted file mode 100644 index dece95c76..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland/0001-scanner-Use-unit32_t-instead-of-uint.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 5516d32e694badca35b6c71b02a3f08f650308bf Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 15 Jul 2016 16:23:48 -0700 -Subject: [PATCH] scanner: Use unit32_t instead of uint - -uint32_t is C99 defined stdint type - -Signed-off-by: Khem Raj -Signed-off-by: Jussi Kukkonen -Upstream-Status: Submitted ---- - src/scanner.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/scanner.c b/src/scanner.c -index 5f06e8e..10a4023 100644 ---- a/src/scanner.c -+++ b/src/scanner.c -@@ -808,7 +808,7 @@ find_enumeration(struct protocol *protocol, - struct interface *i; - struct enumeration *e; - char *enum_name; -- uint idx = 0, j; -+ uint32_t idx = 0, j; - - for (j = 0; j + 1 < strlen(enum_attribute); j++) { - if (enum_attribute[j] == '.') { --- -2.1.4 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.11.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.11.0.bb deleted file mode 100644 index 3413406d0..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.11.0.bb +++ /dev/null @@ -1,43 +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" - -SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ - file://0001-scanner-Use-unit32_t-instead-of-uint.patch \ - " -SRC_URI[md5sum] = "fccf680be066e234729d5b69e0bd0fa9" -SRC_URI[sha256sum] = "9540925f7928becfdf5e3b84c70757f6589bf1ceef09bea78784d8e4772c0db0" - -EXTRA_OECONF_class-native = "--disable-documentation --disable-libraries" - -inherit autotools pkgconfig - -BBCLASSEXTEND = "native nativesdk" - -DEPENDS = "expat libxml2 libffi wayland-native" - -EXTRA_OECONF = "--disable-documentation --with-host-scanner" - -# 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" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.13.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.13.0.bb new file mode 100644 index 000000000..b9396b6c7 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/wayland_1.13.0.bb @@ -0,0 +1,41 @@ +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 \ + " +SRC_URI[md5sum] = "cae152ed956da6de53f9727bc1c45039" +SRC_URI[sha256sum] = "69b052c031a61e89af7cc8780893d0da1e301492352aa449dee9345043e6fe51" + +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/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston-init.bb b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston-init.bb index 291cd16b2..22ba5f3fb 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston-init.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston-init.bb @@ -1,6 +1,6 @@ SUMMARY = "Startup script and systemd unit file for the Weston Wayland compositor" LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" SRC_URI = "file://init \ file://weston.service \ diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch index 00118d78b..5f4d79c38 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch @@ -13,22 +13,17 @@ breaks multilib weston as it would point to multilib sysroot when the Signed-off-by: Jussi Kukkonen Upstream-Status: Inappropriate [embedded specific] --- - configure.ac | 2 +- + configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/configure.ac b/configure.ac -index bc7c329..15a05d3 100644 --- a/configure.ac +++ b/configure.ac -@@ -187,7 +187,7 @@ PKG_CHECK_MODULES(LIBINPUT_BACKEND, [libinput >= 0.8.0]) +@@ -187,7 +187,7 @@ PKG_CHECK_MODULES(LIBINPUT_BACKEND, [lib PKG_CHECK_MODULES(COMPOSITOR, [$COMPOSITOR_MODULES]) - PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.2], + PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.7], - [ac_wayland_protocols_pkgdatadir=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`]) + [ac_wayland_protocols_pkgdatadir=${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`]) AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, $ac_wayland_protocols_pkgdatadir) AC_ARG_ENABLE(wayland-compositor, [ --enable-wayland-compositor],, --- -2.1.4 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch index 148848d8d..e2213aca6 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch @@ -10,17 +10,15 @@ Signed-off-by: Khem Raj --- Upstream-Status: Submitted - configure.ac | 2 ++ - src/weston-error.h | 20 ++++++++++++++++++++ - src/weston-launch.c | 2 +- + configure.ac | 2 ++ + libweston/weston-error.h | 20 ++++++++++++++++++++ + libweston/weston-launch.c | 2 +- 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 src/weston-error.h -diff --git a/configure.ac b/configure.ac -index 263fc22..f52cd62 100644 --- a/configure.ac +++ b/configure.ac -@@ -57,6 +57,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], +@@ -60,6 +60,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], [[#include ]]) AC_CHECK_HEADERS([execinfo.h]) @@ -28,12 +26,9 @@ index 263fc22..f52cd62 100644 + AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate]) - COMPOSITOR_MODULES="wayland-server >= 1.7.93 pixman-1 >= 0.25.2" -diff --git a/src/weston-error.h b/src/weston-error.h -new file mode 100644 -index 0000000..2089d02 + COMPOSITOR_MODULES="wayland-server >= $WAYLAND_PREREQ_VERSION pixman-1 >= 0.25.2" --- /dev/null -+++ b/src/weston-error.h ++++ b/libweston/weston-error.h @@ -0,0 +1,20 @@ +#ifndef _WESTON_ERROR_H +#define _WESTON_ERROR_H @@ -55,11 +50,9 @@ index 0000000..2089d02 + +#endif + -diff --git a/src/weston-launch.c b/src/weston-launch.c -index 10c66de..3e6d30a 100644 ---- a/src/weston-launch.c -+++ b/src/weston-launch.c -@@ -30,7 +30,6 @@ +--- a/libweston/weston-launch.c ++++ b/libweston/weston-launch.c +@@ -33,7 +33,6 @@ #include #include @@ -67,7 +60,7 @@ index 10c66de..3e6d30a 100644 #include #include -@@ -56,6 +55,7 @@ +@@ -59,6 +58,7 @@ #endif #include "weston-launch.h" @@ -75,6 +68,3 @@ index 10c66de..3e6d30a 100644 #define DRM_MAJOR 226 --- -2.1.4 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch deleted file mode 100644 index 91ef727d3..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch +++ /dev/null @@ -1,28 +0,0 @@ -From ba02b8abe4e2afac2bfbf2559972d5059d75a041 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen -Date: Sat, 16 Jul 2016 22:50:19 +0300 -Subject: [PATCH weston] shared: include stdint.h for int32_t - -This fixes build on musl. - -Signed-off-by: Jussi Kukkonen -Upstream-Status: Submitted ---- - shared/xalloc.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/shared/xalloc.h b/shared/xalloc.h -index 85fccb4..484de2d 100644 ---- a/shared/xalloc.h -+++ b/shared/xalloc.h -@@ -30,6 +30,7 @@ - extern "C" { - #endif - -+#include - #include - #include - --- -2.1.4 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch index 5542036be..70b988898 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch @@ -1,6 +1,6 @@ -From d02226b3d5872b184c1d50c7f4706ac9467ffb81 Mon Sep 17 00:00:00 2001 +From 8ff6ed03ec4079f32e9b34085414e57be4730e04 Mon Sep 17 00:00:00 2001 From: Tom Hochstein -Date: Fri, 15 Jul 2016 11:00:15 +0300 +Date: Wed, 22 Feb 2017 15:53:30 +0200 Subject: [PATCH] weston-launch: Provide a default version that doesn't require PAM @@ -13,16 +13,17 @@ without non-root-user support. Upstream-Status: Pending Signed-off-by: Tom Hochstein +Signed-off-by: Jussi Kukkonen --- - configure.ac | 9 +++++++-- - src/weston-launch.c | 20 ++++++++++++++++++++ + configure.ac | 9 +++++++-- + libweston/weston-launch.c | 20 ++++++++++++++++++++ 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac -index 32fdde7..240966f 100644 +index 46cb2c7..bb45f46 100644 --- a/configure.ac +++ b/configure.ac -@@ -416,13 +416,17 @@ AC_ARG_ENABLE(resize-optimization, +@@ -435,13 +435,17 @@ AC_ARG_ENABLE(resize-optimization, AS_IF([test "x$enable_resize_optimization" = "xyes"], [AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as a performance optimization])]) @@ -30,11 +31,11 @@ index 32fdde7..240966f 100644 + AS_HELP_STRING([--with-pam], [Use PAM]), + [use_pam=$withval], [use_pam=yes]) AC_ARG_ENABLE(weston-launch, [ --enable-weston-launch],, enable_weston_launch=yes) - AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch == xyes) --if test x$enable_weston_launch == xyes; then + AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch = xyes) +-if test x$enable_weston_launch = xyes; then +if test x$enable_weston_launch = xyes -a x$use_pam = xyes; then WESTON_SEARCH_LIBS([PAM], [pam], [pam_open_session], [have_pam=yes], [have_pam=no]) - if test x$have_pam == xno; then + if test x$have_pam = xno; then - AC_ERROR([weston-launch requires pam]) + AC_ERROR([PAM support is explicitly requested, but libpam couldn't be found]) fi @@ -42,7 +43,7 @@ index 32fdde7..240966f 100644 fi AM_CONDITIONAL(HAVE_PANGO, test "x$have_pango" = "xyes") -@@ -673,6 +677,7 @@ AC_MSG_RESULT([ +@@ -701,6 +705,7 @@ AC_MSG_RESULT([ Enable developer documentation ${enable_devdocs} weston-launch utility ${enable_weston_launch} @@ -50,10 +51,10 @@ index 32fdde7..240966f 100644 systemd-login support ${have_systemd_login} systemd notify support ${enable_systemd_notify} -diff --git a/src/weston-launch.c b/src/weston-launch.c -index b8b2ba0..a865061 100644 ---- a/src/weston-launch.c -+++ b/src/weston-launch.c +diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c +index 0491896..07e7469 100644 +--- a/libweston/weston-launch.c ++++ b/libweston/weston-launch.c @@ -51,7 +51,9 @@ #include @@ -107,7 +108,7 @@ index b8b2ba0..a865061 100644 if (ioctl(wl->tty, KDSKBMUTE, 0) && ioctl(wl->tty, KDSKBMODE, wl->kb_mode)) -@@ -600,6 +608,7 @@ setup_session(struct weston_launch *wl) +@@ -600,6 +608,7 @@ setup_session(struct weston_launch *wl, char **child_argv) setenv("HOME", wl->pw->pw_dir, 1); setenv("SHELL", wl->pw->pw_shell, 1); @@ -115,15 +116,15 @@ index b8b2ba0..a865061 100644 env = pam_getenvlist(wl->ph); if (env) { for (i = 0; env[i]; ++i) { -@@ -608,6 +617,7 @@ setup_session(struct weston_launch *wl) +@@ -608,6 +617,7 @@ setup_session(struct weston_launch *wl, char **child_argv) } free(env); } +#endif - } - static void -@@ -665,7 +675,9 @@ static void + /* + * We open a new session, so it makes sense +@@ -675,7 +685,9 @@ static void help(const char *name) { fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name); @@ -133,7 +134,7 @@ index b8b2ba0..a865061 100644 fprintf(stderr, " -t, --tty Start session on alternative tty\n"); fprintf(stderr, " -v, --verbose Be verbose\n"); fprintf(stderr, " -h, --help Display this help message\n"); -@@ -678,7 +690,9 @@ main(int argc, char *argv[]) +@@ -688,7 +700,9 @@ main(int argc, char *argv[]) int i, c; char *tty = NULL; struct option opts[] = { @@ -143,7 +144,7 @@ index b8b2ba0..a865061 100644 { "tty", required_argument, NULL, 't' }, { "verbose", no_argument, NULL, 'v' }, { "help", no_argument, NULL, 'h' }, -@@ -690,9 +704,13 @@ main(int argc, char *argv[]) +@@ -700,9 +714,13 @@ main(int argc, char *argv[]) while ((c = getopt_long(argc, argv, "u:t::vh", opts, &i)) != -1) { switch (c) { case 'u': @@ -157,7 +158,7 @@ index b8b2ba0..a865061 100644 break; case 't': tty = optarg; -@@ -730,8 +748,10 @@ main(int argc, char *argv[]) +@@ -740,8 +758,10 @@ main(int argc, char *argv[]) if (setup_tty(&wl, tty) < 0) exit(EXIT_FAILURE); diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch deleted file mode 100644 index 0c408a43d..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch +++ /dev/null @@ -1,33 +0,0 @@ -From e8b615250f700f7854b423aaaf0a0aeea92c05a9 Mon Sep 17 00:00:00 2001 -From: Tom Hochstein -Date: Sat, 7 May 2016 08:51:58 -0300 -Subject: [PATCH] weston-launch: Handle invalid command line options -Organization: O.S. Systems Software LTDA. - -Exit the program if an unrecognized command line option is found. - -Upstream-Status: Submitted - -Signed-off-by: Tom Hochstein -Signed-off-by: Otavio Salvador ---- - - src/weston-launch.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/weston-launch.c b/src/weston-launch.c -index b8dfb17..9987d8e 100644 ---- a/src/weston-launch.c -+++ b/src/weston-launch.c -@@ -703,6 +703,8 @@ main(int argc, char *argv[]) - case 'h': - help("weston-launch"); - exit(EXIT_FAILURE); -+ default: -+ exit(EXIT_FAILURE); - } - } - --- -2.8.2 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-1.11-config-option-for-no-input-device.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-1.11-config-option-for-no-input-device.patch deleted file mode 100644 index 6f5ad6652..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-1.11-config-option-for-no-input-device.patch +++ /dev/null @@ -1,123 +0,0 @@ -From bbf2e6ebbd9c051775f43e1e3c3a2f41322342e8 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20D=C3=ADaz?= -Date: Fri, 21 Oct 2016 14:03:13 -0500 -Subject: [PATCH] Add configuration option for no input device. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -[Backported from master, 75b7197.] - -As it has been discussed in the past [1], running Weston -without any input device at launch might be beneficial for -some use cases. - -Certainly, it's best for the vast majority of users (and -the project) to require an input device to be present, as -to avoid frustration and hassle, but for those brave souls -that so prefer, this patch lets them run without any input -device at all. - -This introduces a simple configuration in weston.ini: - [core] - require-input=true - -True is the default, so no behavioral change is introduced. - -[1] https://lists.freedesktop.org/archives/wayland-devel/2015-November/025193.html - -Signed-off-by: Daniel Díaz ---- - man/weston.ini.man | 5 +++++ - src/compositor.h | 4 ++++ - src/libinput-seat.c | 6 ++++++ - src/main.c | 5 +++++ - weston.ini.in | 1 + - 5 files changed, 21 insertions(+) - -diff --git a/man/weston.ini.man b/man/weston.ini.man -index d7c4a6f..c7d0f01 100644 ---- a/man/weston.ini.man -+++ b/man/weston.ini.man -@@ -169,6 +169,11 @@ time, the one specified in the command-line will be used. On the other - hand, if none of these sets the value, default idle timeout will be - set to 300 seconds. - .RS -+.PP -+.RE -+.TP 7 -+.BI "require-input=" true -+require an input device for launch - - .SH "LIBINPUT SECTION" - The -diff --git a/src/compositor.h b/src/compositor.h -index 0bbf458..476b650 100644 ---- a/src/compositor.h -+++ b/src/compositor.h -@@ -803,6 +803,10 @@ struct weston_compositor { - - void *user_data; - void (*exit)(struct weston_compositor *c); -+ -+ /* Whether to let the compositor run without any input device. */ -+ bool require_input; -+ - }; - - struct weston_buffer { -diff --git a/src/libinput-seat.c b/src/libinput-seat.c -index 8ce0ee0..e1fdcf0 100644 ---- a/src/libinput-seat.c -+++ b/src/libinput-seat.c -@@ -255,6 +255,12 @@ udev_input_enable(struct udev_input *input) - devices_found = 1; - } - -+ if (devices_found == 0 && !c->require_input) { -+ weston_log("warning: no input devices found, but none required " -+ "as per configuration.\n"); -+ return 0; -+ } -+ - if (devices_found == 0) { - weston_log( - "warning: no input devices on entering Weston. " -diff --git a/src/main.c b/src/main.c -index 3279ac6..09905ea 100644 ---- a/src/main.c -+++ b/src/main.c -@@ -1298,6 +1298,7 @@ int main(int argc, char *argv[]) - struct wl_client *primary_client; - struct wl_listener primary_client_destroyed; - struct weston_seat *seat; -+ int require_input; - - const struct weston_option core_options[] = { - { WESTON_OPTION_STRING, "backend", 'B', &backend }, -@@ -1373,6 +1374,10 @@ int main(int argc, char *argv[]) - if (weston_compositor_init_config(ec, config) < 0) - goto out; - -+ weston_config_section_get_bool(section, "require-input", -+ &require_input, true); -+ ec->require_input = require_input; -+ - if (load_backend(ec, backend, &argc, argv, config) < 0) { - weston_log("fatal: failed to create compositor backend\n"); - goto out; -diff --git a/weston.ini.in b/weston.ini.in -index 14a4c0c..d837fb5 100644 ---- a/weston.ini.in -+++ b/weston.ini.in -@@ -2,6 +2,7 @@ - #modules=xwayland.so,cms-colord.so - #shell=desktop-shell.so - #gbm-format=xrgb2101010 -+#require-input=true - - [shell] - background-image=/usr/share/backgrounds/gnome/Aqua.jpg --- -1.9.1 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch new file mode 100644 index 000000000..c18801855 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch @@ -0,0 +1,55 @@ +Multi-plane sub-sampled textures have partial width/height, e.g. +YUV420/I420 has a full-size Y plane, followed by a half-width/height U +plane, and a half-width/height V plane. + +zwp_linux_dmabuf_v1 allows clients to pass an explicit pitch for each +plane, but for wl_shm this must be inferred. gl-renderer was correctly +accounting for the width and height when subsampling, but the pitch was +being taken as the pitch for the first plane. + +This does not match the requirements for GStreamer's waylandsink, in +particular, as well as other clients. Fix the SHM upload path to +correctly set the pitch for each plane, according to subsampling. + +Tested with: + $ gst-launch-1.0 videotestsrc ! waylandsink + +Upstream-Status: Backport [https://patchwork.freedesktop.org/patch/180767/] + +Signed-off-by: Daniel Stone +Fixes: fdeefe42418 ("gl-renderer: add support of WL_SHM_FORMAT_YUV420") +Reported-by: Fabien Lahoudere +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103063 + +--- + libweston/gl-renderer.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libweston/gl-renderer.c b/libweston/gl-renderer.c +index 244ce309..40bf0bb6 100644 +--- a/libweston/gl-renderer.c ++++ b/libweston/gl-renderer.c +@@ -1285,14 +1285,13 @@ gl_renderer_flush_damage(struct weston_surface *surface) + goto done; + } + +- glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT, gs->pitch); +- + if (gs->needs_full_upload) { + glPixelStorei(GL_UNPACK_SKIP_PIXELS_EXT, 0); + glPixelStorei(GL_UNPACK_SKIP_ROWS_EXT, 0); + wl_shm_buffer_begin_access(buffer->shm_buffer); + for (j = 0; j < gs->num_textures; j++) { + glBindTexture(GL_TEXTURE_2D, gs->textures[j]); ++ glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT, gs->pitch / gs->hsub[j]); + glTexImage2D(GL_TEXTURE_2D, 0, + gs->gl_format[j], + gs->pitch / gs->hsub[j], +@@ -1317,6 +1316,7 @@ gl_renderer_flush_damage(struct weston_surface *surface) + glPixelStorei(GL_UNPACK_SKIP_ROWS_EXT, r.y1); + for (j = 0; j < gs->num_textures; j++) { + glBindTexture(GL_TEXTURE_2D, gs->textures[j]); ++ glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT, gs->pitch / gs->hsub[j]); + glTexSubImage2D(GL_TEXTURE_2D, 0, + r.x1 / gs->hsub[j], + r.y1 / gs->vsub[j], diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_1.11.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_1.11.0.bb deleted file mode 100644 index 9740ce9c9..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_1.11.0.bb +++ /dev/null @@ -1,118 +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://src/compositor.c;endline=23;md5=1d535fed266cf39f6d8c0647f52ac331" - -SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ - file://weston.png \ - file://weston.desktop \ - file://0001-make-error-portable.patch \ - file://0001-configure.ac-Fix-wayland-protocols-path.patch \ - file://0001-shared-include-stdint.h-for-int32_t.patch \ - file://xwayland.weston-start \ - file://make-weston-launch-exit-for-unrecognized-option.patch \ - file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ - file://weston-1.11-config-option-for-no-input-device.patch \ -" -SRC_URI[md5sum] = "bc6f90a2039163804aecfa663b69c4c2" -SRC_URI[sha256sum] = "05e086e9f186a06843b9f7a5e1abf19347b1a6e4be26d7e74927abc17b6b7125" - -inherit autotools pkgconfig useradd distro_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" - -EXTRA_OECONF = "--enable-setuid-install \ - --disable-rpi-compositor \ - --disable-rdp-compositor \ - WAYLAND_PROTOCOLS_SYSROOT_DIR=${STAGING_DIR}/${MACHINE} \ - " -EXTRA_OECONF[vardepsexclude] = "MACHINE" - -EXTRA_OECONF_append_qemux86 = "\ - WESTON_NATIVE_BACKEND=fbdev-backend.so \ - " -EXTRA_OECONF_append_qemux86-64 = "\ - WESTON_NATIVE_BACKEND=fbdev-backend.so \ - " -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \ - clients launch" -# -# Compositor choices -# -# Weston on KMS -PACKAGECONFIG[kms] = "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa mtdev" -# Weston on Wayland (nested Weston) -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,virtual/mesa" -# Weston on X11 -PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo" -# Headless Weston -PACKAGECONFIG[headless] = "--enable-headless-compositor,--disable-headless-compositor" -# Weston on framebuffer -PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor,--disable-fbdev-compositor,udev mtdev" -# weston-launch -PACKAGECONFIG[launch] = "--enable-weston-launch,--disable-weston-launch,drm" -# VA-API desktop recorder -PACKAGECONFIG[vaapi] = "--enable-vaapi-recorder,--disable-vaapi-recorder,libva" -# Weston with EGL support -PACKAGECONFIG[egl] = "--enable-egl --enable-simple-egl-clients,--disable-egl --disable-simple-egl-clients,virtual/egl" -# Weston with cairo glesv2 support -PACKAGECONFIG[cairo-glesv2] = "--with-cairo-glesv2,--with-cairo=image,cairo" -# Weston with lcms support -PACKAGECONFIG[lcms] = "--enable-lcms,--disable-lcms,lcms" -# Weston with webp support -PACKAGECONFIG[webp] = "--with-webp,--without-webp,libwebp" -# Weston with unwinding support -PACKAGECONFIG[libunwind] = "--enable-libunwind,--disable-libunwind,libunwind" -# Weston with systemd-login support -PACKAGECONFIG[systemd] = "--enable-systemd-login,--disable-systemd-login,systemd dbus" -# Weston with Xwayland support (requires X11 and Wayland) -PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland" -# colord CMS support -PACKAGECONFIG[colord] = "--enable-colord,--disable-colord,colord" -# Clients support -PACKAGECONFIG[clients] = "--enable-clients --enable-simple-clients --enable-demo-clients-install,--disable-clients --disable-simple-clients" -# Weston with PAM support -PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam" - -do_install_append() { - # Weston doesn't need the .la files to load modules, so wipe them - rm -f ${D}/${libdir}/weston/*.la - - # If X11, ship a desktop file to launch it - if [ "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" = "x11" ]; 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 -} - -PACKAGE_BEFORE_PN += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)}" -PACKAGES += "${PN}-examples" - -FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so ${datadir}" -FILES_${PN}-examples = "${bindir}/*" - -FILES_${PN}-xwayland = "${libdir}/${BPN}/xwayland.so" -RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" - -RDEPENDS_${PN} += "xkeyboard-config" -RRECOMMENDS_${PN} = "liberation-fonts" -RRECOMMENDS_${PN}-dev += "wayland-protocols" - -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "--system weston-launch" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_2.0.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_2.0.0.bb new file mode 100644 index 000000000..063494c9a --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/wayland/weston_2.0.0.bb @@ -0,0 +1,115 @@ +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=26;md5=e342df749174a8ee11065583157c7a38" + +SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ + file://weston.png \ + file://weston.desktop \ + file://0001-make-error-portable.patch \ + file://0001-configure.ac-Fix-wayland-protocols-path.patch \ + file://xwayland.weston-start \ + file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ + file://weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch \ +" +SRC_URI[md5sum] = "15f38945942bf2a91fe2687145fb4c7d" +SRC_URI[sha256sum] = "b4e446ac27f118196f1609dab89bb3cb3e81652d981414ad860e733b355365d8" + +inherit autotools pkgconfig useradd distro_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" + +EXTRA_OECONF = "--enable-setuid-install \ + --disable-rdp-compositor \ + WAYLAND_PROTOCOLS_SYSROOT_DIR=${RECIPE_SYSROOT} \ + " +EXTRA_OECONF_append_qemux86 = "\ + WESTON_NATIVE_BACKEND=fbdev-backend.so \ + " +EXTRA_OECONF_append_qemux86-64 = "\ + WESTON_NATIVE_BACKEND=fbdev-backend.so \ + " +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)} \ + clients launch" +# +# Compositor choices +# +# Weston on KMS +PACKAGECONFIG[kms] = "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa mtdev" +# Weston on Wayland (nested Weston) +PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,virtual/mesa" +# Weston on X11 +PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo" +# Headless Weston +PACKAGECONFIG[headless] = "--enable-headless-compositor,--disable-headless-compositor" +# Weston on framebuffer +PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor,--disable-fbdev-compositor,udev mtdev" +# weston-launch +PACKAGECONFIG[launch] = "--enable-weston-launch,--disable-weston-launch,drm" +# VA-API desktop recorder +PACKAGECONFIG[vaapi] = "--enable-vaapi-recorder,--disable-vaapi-recorder,libva" +# Weston with EGL support +PACKAGECONFIG[egl] = "--enable-egl --enable-simple-egl-clients,--disable-egl --disable-simple-egl-clients,virtual/egl" +# Weston with cairo glesv2 support +PACKAGECONFIG[cairo-glesv2] = "--with-cairo-glesv2,--with-cairo=image,cairo" +# Weston with lcms support +PACKAGECONFIG[lcms] = "--enable-lcms,--disable-lcms,lcms" +# Weston with webp support +PACKAGECONFIG[webp] = "--with-webp,--without-webp,libwebp" +# Weston with unwinding support +PACKAGECONFIG[libunwind] = "--enable-libunwind,--disable-libunwind,libunwind" +# Weston with systemd-login support +PACKAGECONFIG[systemd] = "--enable-systemd-login,--disable-systemd-login,systemd dbus" +# Weston with Xwayland support (requires X11 and Wayland) +PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland" +# colord CMS support +PACKAGECONFIG[colord] = "--enable-colord,--disable-colord,colord" +# Clients support +PACKAGECONFIG[clients] = "--enable-clients --enable-simple-clients --enable-demo-clients-install,--disable-clients --disable-simple-clients" +# Weston with PAM support +PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam" + +do_install_append() { + # Weston doesn't need the .la files to load modules, so wipe them + rm -f ${D}/${libdir}/libweston-2/*.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 +} + +PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ + libweston-2 ${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-2 = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-2/*.so" +SUMMARY_libweston-2 = "Helper library for implementing 'wayland window managers'." + +FILES_${PN}-examples = "${bindir}/*" + +FILES_${PN}-xwayland = "${libdir}/libweston-2/xwayland.so" +RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" + +RDEPENDS_${PN} += "xkeyboard-config" +RRECOMMENDS_${PN} = "liberation-fonts" +RRECOMMENDS_${PN}-dev += "wayland-protocols" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "--system weston-launch" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xdefaults b/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xdefaults deleted file mode 100644 index f5b69dd51..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xdefaults +++ /dev/null @@ -1,3 +0,0 @@ -Rxvt*scrollBar_right: true -Rxvt*font: xft:Mono:pixelsize=9 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession b/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession deleted file mode 100644 index 0b73127ae..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh - -if [ -x /usr/bin/dbus-launch ]; then - # As this is the X session script, always start a new DBus session. - eval `dbus-launch --sh-syntax --exit-with-session -+ Copyright (C) -+ -+ 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, write to the Free Software Foundation, Inc., -+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -+ -+Also add information on how to contact you by electronic and paper mail. -+ -+If the program is interactive, make it output a short notice like this -+when it starts in an interactive mode: -+ -+ Gnomovision version 69, Copyright (C) year name of author -+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. -+ This is free software, and you are welcome to redistribute it -+ under certain conditions; type `show c' for details. -+ -+The hypothetical commands `show w' and `show c' should show the appropriate -+parts of the General Public License. Of course, the commands you use may -+be called something other than `show w' and `show c'; they could even be -+mouse-clicks or menu items--whatever suits your program. -+ -+You should also get your employer (if you work as a programmer) or your -+school, if any, to sign a "copyright disclaimer" for the program, if -+necessary. Here is a sample; alter the names: -+ -+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program -+ `Gnomovision' (which makes passes at compilers) written by James Hacker. -+ -+ , 1 April 1989 -+ Ty Coon, President of Vice -+ -+This General Public License does not permit incorporating your program into -+proprietary programs. If your program is a subroutine library, you may -+consider it more useful to permit linking proprietary applications with the -+library. If this is what you want to do, use the GNU Lesser General -+Public License instead of this License. diff --git a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common_0.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common_0.1.bb deleted file mode 100644 index ab9a939ce..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/x11-common_0.1.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "Common X11 scripts and configuration files" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" -SECTION = "x11" -PR = "r47" - -inherit distro_features_check -# rdepends on xdypinfo xmodmap xinit -REQUIRED_DISTRO_FEATURES = "x11" - -SRC_URI = "file://etc \ - file://gplv2-license.patch" - -S = "${WORKDIR}" - -do_install() { - cp -R ${S}/etc ${D}${sysconfdir} - chmod -R 755 ${D}${sysconfdir} -} - -RDEPENDS_${PN} = "dbus-x11 xmodmap xdpyinfo xinput-calibrator formfactor" - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init.bb b/import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init.bb deleted file mode 100644 index a6d0d5eee..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init.bb +++ /dev/null @@ -1,61 +0,0 @@ -SUMMARY = "Simple Xserver Init Script (no dm)" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" -SECTION = "x11" -PR = "r31" - -SRC_URI = "file://xserver-nodm \ - file://Xserver \ - file://gplv2-license.patch \ - file://xserver-nodm.service.in \ - file://xserver-nodm.conf.in \ -" - -S = "${WORKDIR}" - -# Since we refer to ROOTLESS_X which is normally enabled per-machine -PACKAGE_ARCH = "${MACHINE_ARCH}" - -inherit update-rc.d systemd distro_features_check - -REQUIRED_DISTRO_FEATURES = "x11" - -PACKAGECONFIG ??= "blank" -# dpms and screen saver will be on only if 'blank' is in PACKAGECONFIG -PACKAGECONFIG[blank] = "" - -do_install() { - install -d ${D}${sysconfdir}/default - install xserver-nodm.conf.in ${D}${sysconfdir}/default/xserver-nodm - install -d ${D}${sysconfdir}/xserver-nodm - install Xserver ${D}${sysconfdir}/xserver-nodm/Xserver - - BLANK_ARGS="${@bb.utils.contains('PACKAGECONFIG', 'blank', '', '-s 0 -dpms', d)}" - if [ "${ROOTLESS_X}" = "1" ] ; then - XUSER_HOME="/home/xuser" - XUSER="xuser" - else - XUSER_HOME=${ROOT_HOME} - XUSER="root" - fi - sed -i "s:@HOME@:${XUSER_HOME}:; s:@USER@:${XUSER}:; s:@BLANK_ARGS@:${BLANK_ARGS}:" \ - ${D}${sysconfdir}/default/xserver-nodm - - if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${WORKDIR}/xserver-nodm.service.in ${D}${systemd_unitdir}/system/xserver-nodm.service - sed -i "s:@USER@:${XUSER}:" ${D}${systemd_unitdir}/system/xserver-nodm.service - fi - - if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then - install -d ${D}${sysconfdir}/init.d - install xserver-nodm ${D}${sysconfdir}/init.d - fi -} - -RDEPENDS_${PN} = "xinit ${@base_conditional('ROOTLESS_X', '1', 'xuser-account', '', d)}" - -INITSCRIPT_NAME = "xserver-nodm" -INITSCRIPT_PARAMS = "start 9 5 . stop 20 0 1 2 3 6 ." -SYSTEMD_SERVICE_${PN} = "xserver-nodm.service" - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession b/import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession new file mode 100644 index 000000000..0b73127ae --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession @@ -0,0 +1,38 @@ +#!/bin/sh + +if [ -x /usr/bin/dbus-launch ]; then + # As this is the X session script, always start a new DBus session. + eval `dbus-launch --sh-syntax --exit-with-session -Date: Tue, 9 Aug 2016 17:03:31 +0300 -Subject: [PATCH] add geometry input when calibrating - -Send monitor geometry to xinput_calibrator when running the script -Update: - Remove bashism - -Upstream-Status: Inappropriate [no longer maintained] - -Signed-off-by: Jonathan David -Signed-off-by: Maxin B. John ---- - scripts/xinput_calibrator_pointercal.sh | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/scripts/xinput_calibrator_pointercal.sh b/scripts/xinput_calibrator_pointercal.sh -index fccb197..fea7c2f 100755 ---- a/scripts/xinput_calibrator_pointercal.sh -+++ b/scripts/xinput_calibrator_pointercal.sh -@@ -24,7 +24,8 @@ if [ -e $CALFILE ] ; then - fi - fi - --CALDATA=`$BINARY --output-type xinput -v | tee $LOGFILE | grep ' xinput set' | sed 's/^ //g; s/$/;/g'` -+RESOLUTION=$(xrandr | awk -F '[[:space:]+]' '/ connected/ { if ($3 != "primary") print $3; if ($3 == "primary") print $4 }') -+CALDATA=`$BINARY --geometry $RESOLUTION --output-type xinput -v | tee $LOGFILE | grep ' xinput set' | sed 's/^ //g; s/$/;/g'` - if [ ! -z "$CALDATA" ] ; then - echo $CALDATA > $CALFILE - echo "Calibration data stored in $CALFILE (log in $LOGFILE)" --- -2.4.0 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb index 57c3a7a9a..68e62ea6d 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb @@ -2,7 +2,7 @@ SUMMARY = "Touchscreen calibration program for X11" HOMEPAGE = "http://www.freedesktop.org/wiki/Software/xinput_calibrator" LICENSE = "MIT-X" LIC_FILES_CHKSUM = "file://src/calibrator.cpp;endline=22;md5=1bcba08f67cdb56f34021557898e4b5a" -DEPENDS = "virtual/libx11 libxi" +DEPENDS = "virtual/libx11 libxi libxrandr" PV = "0.7.5+git${SRCPV}" PR = "r6" @@ -11,11 +11,10 @@ inherit autotools pkgconfig distro_features_check # depends on virtual/libx11 REQUIRED_DISTRO_FEATURES = "x11" -SRCREV = "c01c5af807cb4b0157b882ab07a893df9a810111" +SRCREV = "03dadf55109bd43d3380f040debe9f82f66f2f35" SRC_URI = "git://github.com/tias/xinput_calibrator.git \ file://30xinput_calibrate.sh \ - file://Allow-xinput_calibrator_pointercal.sh-to-be-run-as-n.patch \ - file://add-geometry-input-when-calibrating.patch" + file://Allow-xinput_calibrator_pointercal.sh-to-be-run-as-n.patch" S = "${WORKDIR}/git" @@ -34,5 +33,5 @@ do_install_append() { } FILES_${PN} += "${sysconfdir}/xdg/autostart" -RDEPENDS_${PN} = "xinput formfactor xrandr" +RDEPENDS_${PN} = "xinput formfactor" RRECOMMENDS_${PN} = "pointercal-xinput" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb index 737bc9de4..a453e2487 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontdir_1.0.7.bb @@ -11,9 +11,6 @@ files." PE = "1" PR = "${INC_PR}.0" -DEPENDS = "util-macros-native" -REQUIRED_DISTRO_FEATURES_class-native = "" - RDEPENDS_${PN} += "mkfontscale" RDEPENDS_${PN}_class-native += "mkfontscale-native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.2.bb index d1aa9b361..31cf18676 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.2.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/mkfontscale_1.1.2.bb @@ -10,8 +10,6 @@ is used by the mkfontdir program." DEPENDS = "util-macros-native zlib libfontenc freetype xproto" -REQUIRED_DISTRO_FEATURES_class-native = "" - BBCLASSEXTEND = "native" LIC_FILES_CHKSUM = "file://COPYING;md5=2e0d129d05305176d1a790e0ac1acb7f" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.10.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.10.bb new file mode 100644 index 000000000..0e90ffd67 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.10.bb @@ -0,0 +1,15 @@ +require xorg-app-common.inc +SUMMARY = "X authority utilities" +DESCRIPTION = "X application to edit and display the authorization \ +information used in connecting to the X server." + +LIC_FILES_CHKSUM = "file://COPYING;md5=5ec74dd7ea4d10c4715a7c44f159a40b" + +DEPENDS += "libxau libxext libxmu" +PE = "1" + +SRC_URI[md5sum] = "f3f76cb10f69b571c43893ea6a634aa4" +SRC_URI[sha256sum] = "5afe42ce3cdf4f60520d1658d2b17face45c74050f39af45dccdc95e73fafc4d" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.9.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.9.bb deleted file mode 100644 index 59b332373..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xauth_1.0.9.bb +++ /dev/null @@ -1,15 +0,0 @@ -require xorg-app-common.inc -SUMMARY = "X authority utilities" -DESCRIPTION = "X application to edit and display the authorization \ -information used in connecting to the X server." - -LIC_FILES_CHKSUM = "file://COPYING;md5=5ec74dd7ea4d10c4715a7c44f159a40b" - -DEPENDS += "libxau libxext libxmu" -PE = "1" - -SRC_URI[md5sum] = "7d6003f32838d5b688e2c8a131083271" -SRC_URI[sha256sum] = "56ce1523eb48b1f8a4f4244fe1c3d8e6af1a3b7d4b0e6063582421b0b68dc28f" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xhost_1.0.7.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xhost_1.0.7.bb index f23d258e0..77490f548 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xhost_1.0.7.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-app/xhost_1.0.7.bb @@ -16,5 +16,5 @@ PE = "1" SRC_URI[md5sum] = "f5d490738b148cb7f2fe760f40f92516" SRC_URI[sha256sum] = "93e619ee15471f576cfb30c663e18f5bc70aca577a63d2c2c03f006a7837c29a" -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.3.bb deleted file mode 100644 index f81c3ec64..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.3.bb +++ /dev/null @@ -1,20 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "X.Org X server -- event devices (evdev) input driver" - -DESCRIPTION = "evdev is an Xorg input driver for Linux's generic event \ -devices. It therefore supports all input devices that the kernel knows \ -about, including most mice and keyboards. \ -\ -The evdev driver can serve as both a pointer and a keyboard input \ -device, and may be used as both the core keyboard and the core pointer. \ -Multiple input devices are supported by multiple instances of this \ -driver, with one Load directive for evdev in the Module section of your \ -xorg.conf for each input device that will use this driver. " - -LIC_FILES_CHKSUM = "file://COPYING;md5=fefe33b1cf0cacba0e72e3b0fa0f0e16" - -DEPENDS += "mtdev libevdev" - -SRC_URI[md5sum] = "aa3363ce5061d0c4d1e7f7019b99716d" -SRC_URI[sha256sum] = "5aa21ba4be8df927e5676a99c7f4f0343abc089f5451b7e73e39536f29b332a2" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.5.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.5.bb new file mode 100644 index 000000000..96b220ccb --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.10.5.bb @@ -0,0 +1,21 @@ +require xorg-driver-input.inc + +SUMMARY = "X.Org X server -- event devices (evdev) input driver" + +DESCRIPTION = "evdev is an Xorg input driver for Linux's generic event \ +devices. It therefore supports all input devices that the kernel knows \ +about, including most mice and keyboards. \ +\ +The evdev driver can serve as both a pointer and a keyboard input \ +device, and may be used as both the core keyboard and the core pointer. \ +Multiple input devices are supported by multiple instances of this \ +driver, with one Load directive for evdev in the Module section of your \ +xorg.conf for each input device that will use this driver. " + +LIC_FILES_CHKSUM = "file://COPYING;md5=fefe33b1cf0cacba0e72e3b0fa0f0e16" + +DEPENDS += "mtdev libevdev" + +SRC_URI[md5sum] = "94c2c8354c74ab1cfbbb0a222078b9c6" +SRC_URI[sha256sum] = "9edaa6205baf6d2922cc4db3d8e54a7e7773b5f733b0ae90f6be7725f983b70d" + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.8.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.8.1.bb deleted file mode 100644 index 6fe51accb..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.8.1.bb +++ /dev/null @@ -1,13 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "X.Org X server -- keyboard input driver" - -DESCRIPTION = "keyboard is an Xorg input driver for keyboards. The \ -driver supports the standard OS-provided keyboard interface. The driver \ -functions as a keyboard input device, and may be used as the X server's \ -core keyboard." - -LIC_FILES_CHKSUM = "file://COPYING;md5=ea2099d24ac9e316a6d4b9f20b3d4e10" - -SRC_URI[md5sum] = "96ccc43d389b970afbd3893875dfd678" -SRC_URI[sha256sum] = "1ac8ff39bf9da7d2fc7fd6c24515726e8138340c0518ab8c606e008cf93ca211" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.9.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.9.0.bb new file mode 100644 index 000000000..1896fff9f --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.9.0.bb @@ -0,0 +1,13 @@ +require xorg-driver-input.inc + +SUMMARY = "X.Org X server -- keyboard input driver" + +DESCRIPTION = "keyboard is an Xorg input driver for keyboards. The \ +driver supports the standard OS-provided keyboard interface. The driver \ +functions as a keyboard input device, and may be used as the X server's \ +core keyboard." + +LIC_FILES_CHKSUM = "file://COPYING;md5=ea2099d24ac9e316a6d4b9f20b3d4e10" + +SRC_URI[md5sum] = "a3a3f0dd32361dcdbd406e894dafe090" +SRC_URI[sha256sum] = "f7c900f21752683402992b288d5a2826de7a6c0c0abac2aadd7e8a409e170388" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_git.bb deleted file mode 100644 index dfb08f724..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_git.bb +++ /dev/null @@ -1,16 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "X.Org X server -- keyboard input driver" - -DESCRIPTION = "keyboard is an Xorg input driver for keyboards. The \ -driver supports the standard OS-provided keyboard interface. The driver \ -functions as a keyboard input device, and may be used as the X server's \ -core keyboard." - -SRCREV = "3e28d68b50d291938734e9684b8296ca864f3892" -PV = "1.3.2+git${SRCPV}" -PR = "${INC_PR}.0" - -SRC_URI = "git://anongit.freedesktop.org/git/xorg/driver/xf86-input-keyboard" -S = "${WORKDIR}/git" - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.19.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.19.0.bb deleted file mode 100644 index 5e5c4710a..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.19.0.bb +++ /dev/null @@ -1,11 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "Generic input driver for the X.Org server based on libinput" -LIC_FILES_CHKSUM = "file://COPYING;md5=5e6b20ea2ef94a998145f0ea3f788ee0" - -DEPENDS += "libinput" - -SRC_URI[md5sum] = "52c38b1369764243bfcf6ead1e4c6d32" -SRC_URI[sha256sum] = "6c5d30dc7c8b8ae34261340e1dc9cbb8ef435078e084b8ef507527a8a21af477" - -FILES_${PN} += "${datadir}/X11/xorg.conf.d" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.24.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.24.0.bb new file mode 100644 index 000000000..14b1271b4 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_0.24.0.bb @@ -0,0 +1,11 @@ +require xorg-driver-input.inc + +SUMMARY = "Generic input driver for the X.Org server based on libinput" +LIC_FILES_CHKSUM = "file://COPYING;md5=5e6b20ea2ef94a998145f0ea3f788ee0" + +DEPENDS += "libinput" + +SRC_URI[md5sum] = "bd3fa118e4abadb8804dc6a099bb4ab3" +SRC_URI[sha256sum] = "ddcb07350aed59b2996a92a1b4ff64d1c0b0c86a3f0ddca15b2b1c8c8bb13628" + +FILES_${PN} += "${datadir}/X11/xorg.conf.d" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse/unbreak.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse/unbreak.patch deleted file mode 100644 index 6930864ed..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse/unbreak.patch +++ /dev/null @@ -1,21 +0,0 @@ -Unbreak the linux mouse driver by using config.h - -RP - 4/11/07 - -Upstream-Status: Pending - -Index: git/src/lnx_mouse.c -=================================================================== ---- git.orig/src/lnx_mouse.c 2008-11-04 23:46:05.000000000 +0000 -+++ git/src/lnx_mouse.c 2008-11-04 23:46:15.000000000 +0000 -@@ -3,8 +3,8 @@ - * Copyright 1999 by The XFree86 Project, Inc. - */ - --#ifdef HAVE_XORG_CONFIG_H --#include -+#ifdef HAVE_CONFIG_H -+#include - #endif - - #include diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.1.bb deleted file mode 100644 index 1f0b78a15..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.1.bb +++ /dev/null @@ -1,15 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "X.Org X server -- mouse input driver" - -DESCRIPTION = "mouse is an Xorg input driver for mice. The driver \ -supports most available mouse types and interfaces. The mouse driver \ -functions as a pointer input device, and may be used as the X server's \ -core pointer. Multiple mice are supported by multiple instances of this \ -driver." - -LIC_FILES_CHKSUM = "file://COPYING;md5=90ea9f90d72b6d9327dede5ffdb2a510" - -SRC_URI[md5sum] = "77085b649c5c0b333565ba562f573951" -SRC_URI[sha256sum] = "3485d375779c08406f0789feedde15933dc703158a086ddac638598f479fc5ce" - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.2.bb new file mode 100644 index 000000000..0750476a2 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.9.2.bb @@ -0,0 +1,14 @@ +require xorg-driver-input.inc + +SUMMARY = "X.Org X server -- mouse input driver" + +DESCRIPTION = "mouse is an Xorg input driver for mice. The driver \ +supports most available mouse types and interfaces. The mouse driver \ +functions as a pointer input device, and may be used as the X server's \ +core pointer. Multiple mice are supported by multiple instances of this \ +driver." + +LIC_FILES_CHKSUM = "file://COPYING;md5=90ea9f90d72b6d9327dede5ffdb2a510" + +SRC_URI[md5sum] = "ce2d679283a22c8e0dccdd9248594845" +SRC_URI[sha256sum] = "f425d5b05c6ab412a27e0a1106bb83f9e2662b307210abbe48270892387f4b2f" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_git.bb deleted file mode 100644 index d79a2e4dd..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-mouse_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "X.Org X server -- mouse input driver" - -DESCRIPTION = "mouse is an Xorg input driver for mice. The driver \ -supports most available mouse types and interfaces. The mouse driver \ -functions as a pointer input device, and may be used as the X server's \ -core pointer. Multiple mice are supported by multiple instances of this \ -driver." - -SRCREV = "ea5cfe804e112f320f14ad896c7802d53551d3e6" -PV = "1.3.0+git${SRCPV}" -PR = "${INC_PR}.0" - -SRC_URI = "git://anongit.freedesktop.org/git/xorg/driver/xf86-input-mouse \ - file://unbreak.patch" -S = "${WORKDIR}/git" - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.8.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.8.3.bb deleted file mode 100644 index b47c82cc6..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.8.3.bb +++ /dev/null @@ -1,16 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "X.Org X server -- synaptics touchpad input driver" - -DESCRIPTION = "synaptics is an Xorg input driver for the touchpads from \ -Synaptics Incorporated. Even though these touchpads (by default, \ -operating in a compatibility mode emulating a standard mouse) can be \ -handled by the normal evdev or mouse drivers, this driver allows more \ -advanced features of the touchpad to become available." - -LIC_FILES_CHKSUM = "file://COPYING;md5=55aacd3535a741824955c5eb8f061398" - -SRC_URI[md5sum] = "4e3c8bed1ab4a67db2160c2c3d7e2a34" -SRC_URI[sha256sum] = "d39f100c74f3673778b53f17bab7690161925e25dd998a15dd8cc69b52e83f01" - -DEPENDS += "libxi mtdev libxtst libevdev" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.0.bb new file mode 100644 index 000000000..d327a3b42 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.9.0.bb @@ -0,0 +1,16 @@ +require xorg-driver-input.inc + +SUMMARY = "X.Org X server -- synaptics touchpad input driver" + +DESCRIPTION = "synaptics is an Xorg input driver for the touchpads from \ +Synaptics Incorporated. Even though these touchpads (by default, \ +operating in a compatibility mode emulating a standard mouse) can be \ +handled by the normal evdev or mouse drivers, this driver allows more \ +advanced features of the touchpad to become available." + +LIC_FILES_CHKSUM = "file://COPYING;md5=55aacd3535a741824955c5eb8f061398" + +SRC_URI[md5sum] = "58e5b7722a402114093bf193962d1e3a" +SRC_URI[sha256sum] = "afba3289d7a40217a19d90db98ce181772f9ca6d77e1898727b0afcf02073b5a" + +DEPENDS += "libxi mtdev libxtst libevdev" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_git.bb deleted file mode 100644 index 140f633b4..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -require xorg-driver-input.inc - -SUMMARY = "X.Org X server -- synaptics touchpad input driver" - -DESCRIPTION = "synaptics is an Xorg input driver for the touchpads from \ -Synaptics Incorporated. Even though these touchpads (by default, \ -operating in a compatibility mode emulating a standard mouse) can be \ -handled by the normal evdev or mouse drivers, this driver allows more \ -advanced features of the touchpad to become available." - -SRCREV = "934bc0012f948c52aadc8eda912f7728fb7394a2" -PV = "0.15.2+git${SRCPV}" -PR = "${INC_PR}.1" - -SRC_URI = "git://anongit.freedesktop.org/git/xorg/driver/xf86-input-synaptics" -S = "${WORKDIR}/git" - -DEPENDS += "libxi mtdev libxtst" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb index 06cc730f4..f86de6f92 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb @@ -9,7 +9,7 @@ Infrastructure (DRI)." LIC_FILES_CHKSUM = "file://COPYING;md5=8730ad58d11c7bbad9a7066d69f7808e" -SRCREV = "8f33f80100096f7790c7b819ce37a3ed8ce8b5fa" +SRCREV = "e4fe79cf0d9a05ee3f3a027148ef0aeb2b1b34e1" PV = "2.99.917+git${SRCPV}" S = "${WORKDIR}/git" @@ -20,6 +20,7 @@ SRC_URI = "git://anongit.freedesktop.org/xorg/driver/xf86-video-intel \ SRC_URI[md5sum] = "fa196a66e52c0c624fe5d350af7a5e7b" SRC_URI[sha256sum] = "00b781eea055582820a123c47b62411bdf6aabf4f03dc0568faec55faf9667c9" +UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" DEPENDS += "virtual/libx11 drm libpciaccess pixman" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.4.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.4.bb deleted file mode 100644 index 78954497a..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.4.bb +++ /dev/null @@ -1,41 +0,0 @@ -require xorg-driver-video.inc - -SUMMARY = "X.Org X server -- Texas Instruments OMAP framebuffer driver" - -SUMMARY = "X.Org X server -- TI OMAP integrated graphics chipsets driver" - -DESCRIPTION = "Open-source X.org graphics driver for TI OMAP graphics \ -Currently relies on a closed-source submodule for EXA acceleration on \ -the following chipsets: \ - + OMAP3430 \ - + OMAP3630 \ - + OMAP4430 \ - + OMAP4460 \ - + OMAP5430 \ - + OMAP5432 \ -\ -NOTE: this driver is work in progress.. you probably don't want to try \ -and use it yet. The API/ABI between driver and kernel, and driver and \ -acceleration submodules is not stable yet. This driver requires the \ -omapdrm kernel driver w/ GEM support. \ -" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=10ce5de3b111315ea652a5f74ec0c602" -DEPENDS += "virtual/libx11 libdrm xf86driproto" - -SRC_URI[md5sum] = "a364e151a537948f75bb8c9b840a31da" -SRC_URI[sha256sum] = "a7192690b8638f5c8d611a1bae07cc13081e22edd4070f37a2f5c3f8d79e7ebc" - -CFLAGS += " -I${STAGING_INCDIR}/xorg " - -# Use overlay 2 on omap3 to enable other apps to use overlay 1 (e.g. dmai or omapfbplay) -do_compile_prepend_armv7a () { - sed -i -e s:fb1:fb2:g ${S}/src/omap_xv.c -} - -python () { - if not bb.utils.contains ('DISTRO_FEATURES', 'opengl', True, False, d): - raise bb.parse.SkipPackage("'opengl' not in DISTRO_FEATURES") -} - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.5.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.5.bb new file mode 100644 index 000000000..e65239451 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-omap_0.4.5.bb @@ -0,0 +1,41 @@ +require xorg-driver-video.inc + +SUMMARY = "X.Org X server -- Texas Instruments OMAP framebuffer driver" + +SUMMARY = "X.Org X server -- TI OMAP integrated graphics chipsets driver" + +DESCRIPTION = "Open-source X.org graphics driver for TI OMAP graphics \ +Currently relies on a closed-source submodule for EXA acceleration on \ +the following chipsets: \ + + OMAP3430 \ + + OMAP3630 \ + + OMAP4430 \ + + OMAP4460 \ + + OMAP5430 \ + + OMAP5432 \ +\ +NOTE: this driver is work in progress.. you probably don't want to try \ +and use it yet. The API/ABI between driver and kernel, and driver and \ +acceleration submodules is not stable yet. This driver requires the \ +omapdrm kernel driver w/ GEM support. \ +" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=10ce5de3b111315ea652a5f74ec0c602" +DEPENDS += "virtual/libx11 libdrm xf86driproto" + +SRC_URI[md5sum] = "3b8ea5e8fba63355c0dc6681c49d5fe5" +SRC_URI[sha256sum] = "93e7d42107521e61f61980eaea64fb452e87b7b94272e48938ac8d904ccfab5a" + +CFLAGS += " -I${STAGING_INCDIR}/xorg " + +# Use overlay 2 on omap3 to enable other apps to use overlay 1 (e.g. dmai or omapfbplay) +do_compile_prepend_armv7a () { + sed -i -e s:fb1:fb2:g ${S}/src/omap_xv.c +} + +python () { + if not bb.utils.contains ('DISTRO_FEATURES', 'opengl', True, False, d): + raise bb.parse.SkipPackage("'opengl' not in DISTRO_FEATURES") +} + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware/0002-add-option-for-vmwgfx.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware/0002-add-option-for-vmwgfx.patch index 6039d089a..5bda720ce 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware/0002-add-option-for-vmwgfx.patch +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware/0002-add-option-for-vmwgfx.patch @@ -1,17 +1,18 @@ -Upstream-Status:Submitted -Signed-off-by: Ross Burton +From da6612659a279bcb02f70622b53a3894fbc11052 Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen +Date: Fri, 9 Dec 2016 14:35:45 +0200 +Subject: [PATCH] Add option for vmwgfx -From f103d6f570671c649ccd7b225e6d6c9f14371888 Mon Sep 17 00:00:00 2001 -From: Ross Burton -Date: Wed, 25 Jun 2014 16:16:44 +0100 -Subject: [PATCH 2/2] add option for vmwgfx +Upstream-Status:Submitted +Signed-off-by: Ross Burton +Signed-off-by: Jussi Kukkonen --- - configure.ac | 49 ++++++++++++++++++++----------------------------- - 1 file changed, 20 insertions(+), 29 deletions(-) + configure.ac | 51 +++++++++++++++++++++------------------------------ + 1 file changed, 21 insertions(+), 30 deletions(-) diff --git a/configure.ac b/configure.ac -index be40ed7..8e15307 100644 +index 9f259ce..f3fec57 100644 --- a/configure.ac +++ b/configure.ac @@ -64,6 +64,13 @@ AC_ARG_ENABLE(vmwarectrl-client, @@ -40,7 +41,7 @@ index be40ed7..8e15307 100644 PKG_CHECK_EXISTS([xorg-server >= 1.12.0], [AC_DEFINE([HAVE_XORG_SERVER_1_12_0], 1, [Has version 1.12.0 or greater of the Xserver])]) -@@ -114,39 +116,28 @@ AM_CONDITIONAL(XSERVER_LIBPCIACCESS, test "x$XSERVER_LIBPCIACCESS" = xyes) +@@ -114,34 +116,22 @@ AM_CONDITIONAL(XSERVER_LIBPCIACCESS, test "x$XSERVER_LIBPCIACCESS" = xyes) AC_SUBST([moduledir]) @@ -62,6 +63,7 @@ index be40ed7..8e15307 100644 -# +AC_MSG_CHECKING([whether to build Kernel Mode Setting and 3D]) +if test x$VMWGFX = xyes; then ++ AC_MSG_RESULT([yes]) + PKG_CHECK_MODULES([LIBDRM], [libdrm]) + # Check for prime. PKG_CHECK_EXISTS([libdrm >= 2.4.38], @@ -75,15 +77,18 @@ index be40ed7..8e15307 100644 -AC_MSG_CHECKING([whether to build Kernel Mode Setting and 3D]) -if test x$BUILD_VMWGFX = xyes; then - AC_MSG_RESULT([yes]) +- AC_DEFINE([BUILD_VMWGFX], 1, [Building the vmwgfx driver path]) + # Early versions of mesa 10 forgot to bump the XA major version number + # in the xa_tracker.h header + PKG_CHECK_MODULES([XATRACKER], [xatracker >= 0.4.0], + [PKG_CHECK_EXISTS([xatracker = 2.0.0], -+ [AC_DEFINE([HAVE_XA_2], 1, -+ [Has version 2 of XA])])]) - AC_DEFINE([BUILD_VMWGFX], 1, [Building the vmwgfx driver path]) -+ AC_MSG_RESULT([yes]) - else ++ [AC_DEFINE([HAVE_XA_2], 1, ++ [Has version 2 of XA])])]) ++ AC_DEFINE([BUILD_VMWGFX], 1, [Building the vmwgfx driver path]) + libudev_check=yes + AC_ARG_WITH([libudev], + [AS_HELP_STRING([--without-libudev], +@@ -158,7 +148,8 @@ else AC_MSG_RESULT([no]) fi @@ -94,5 +99,5 @@ index be40ed7..8e15307 100644 AC_CONFIG_FILES([ Makefile -- -1.7.10.4 +2.1.4 diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.1.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.1.0.bb deleted file mode 100644 index 8c891e6ae..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.1.0.bb +++ /dev/null @@ -1,19 +0,0 @@ -require xorg-driver-video.inc - -SUMMARY = "X.Org X server -- VMware SVGA display driver" - -DESCRIPTION = "vmware is an Xorg driver for VMware virtual video cards." - -LIC_FILES_CHKSUM = "file://COPYING;md5=5fcd7d437a959a15fbee8707747c6b53" - -DEPENDS += "virtual/libx11 xineramaproto videoproto libpciaccess" - -SRC_URI += "file://0002-add-option-for-vmwgfx.patch" - -SRC_URI[md5sum] = "0cba22fed4cb639d5c4276f7892c543d" -SRC_URI[sha256sum] = "3c1d244e4b1b77e92126957965cdc9fb82de4c215c0706a3a8aaff6939e4a0cc" - -COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' - -PACKAGECONFIG ?= "" -PACKAGECONFIG[vmwgfx] = "--enable-vmwgfx, --disable-vmwgfx, libdrm virtual/mesa" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.2.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.2.1.bb new file mode 100644 index 000000000..706d35d2f --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xf86-video-vmware_13.2.1.bb @@ -0,0 +1,19 @@ +require xorg-driver-video.inc + +SUMMARY = "X.Org X server -- VMware SVGA display driver" + +DESCRIPTION = "vmware is an Xorg driver for VMware virtual video cards." + +LIC_FILES_CHKSUM = "file://COPYING;md5=5fcd7d437a959a15fbee8707747c6b53" + +DEPENDS += "virtual/libx11 xineramaproto videoproto libpciaccess" + +SRC_URI += "file://0002-add-option-for-vmwgfx.patch" + +SRC_URI[md5sum] = "4c3912e4d8947f6c2fc1ee9e2f211d74" +SRC_URI[sha256sum] = "e2f7f7101fba7f53b268e7a25908babbf155b3984fb5268b3d244eb6c11bf62b" + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + +PACKAGECONFIG ?= "" +PACKAGECONFIG[vmwgfx] = "--enable-vmwgfx, --disable-vmwgfx, libdrm virtual/mesa" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc index 57a4c827d..fe42f11b6 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc @@ -33,8 +33,8 @@ def _add_xorg_abi_depends(d, name): } output = os.popen("pkg-config xorg-server --variable=%s" % abis[name]).read() - mlprefix = d.getVar('MLPREFIX', True) or '' + mlprefix = d.getVar('MLPREFIX') or '' abi = "%sxorg-abi-%s-%s" % (mlprefix, name, output.split(".")[0]) - pn = d.getVar("PN", True) + pn = d.getVar("PN") d.appendVar('RDEPENDS_' + pn, ' ' + abi) diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc index c4dba1b19..342067d6c 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc @@ -1,4 +1,4 @@ -include xorg-driver-common.inc +require xorg-driver-common.inc DEPENDS += "inputproto kbproto " diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-video.inc b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-video.inc index 38281e0f2..b5862dae1 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-video.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-driver/xorg-driver-video.inc @@ -1,4 +1,4 @@ -include xorg-driver-common.inc +require xorg-driver-common.inc DEPENDS =+ "renderproto videoproto xextproto fontsproto" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc b/import-layers/yocto-poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc index da20ab9b5..cdbebcf78 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc @@ -4,7 +4,7 @@ BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg" SECTION = "x11/fonts" LICENSE = "MIT-X" -DEPENDS = " encodings font-alias font-util-native mkfontdir-native mkfontscale-native" +DEPENDS = " encodings font-alias font-util-native" RDEPENDS_${PN} = "encodings font-util font-alias" XORG_PN = "${BPN}" @@ -18,7 +18,6 @@ inherit autotools pkgconfig distro_features_check # The mkfontscale-native requires x11 in DISTRO_FEATURES REQUIRED_DISTRO_FEATURES = "x11" -REQUIRED_DISTRO_FEATURES_class-native = "" EXTRA_OEMAKE += "FCCACHE=/bin/true UTIL_DIR=${STAGING_DIR_TARGET}\$\(MAPFILES_PATH\)" @@ -31,6 +30,7 @@ do_install_append() { FILES_${PN} += " ${libdir}/X11/fonts ${datadir}" +PACKAGE_WRITE_DEPS += "mkfontdir-native mkfontscale-native" pkg_postinst_${PN} () { for fontdir in `find $D/usr/lib/X11/fonts -type d`; do mkfontdir $fontdir diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libice_1.0.9.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libice_1.0.9.bb index b361ad6dd..f069749ce 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libice_1.0.9.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libice_1.0.9.bb @@ -23,6 +23,6 @@ BBCLASSEXTEND = "native" SRC_URI[md5sum] = "addfb1e897ca8079531669c7c7711726" SRC_URI[sha256sum] = "8f7032f2c1c64352b5423f6b48a8ebdc339cc63064af34d66a6c9aa79759e202" -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" PACKAGECONFIG[arc4] = "ac_cv_lib_bsd_arc4random_buf=yes,ac_cv_lib_bsd_arc4random_buf=no,libbsd" PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libsm_1.2.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libsm_1.2.2.bb index da4ed9251..48922cb99 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libsm_1.2.2.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libsm_1.2.2.bb @@ -27,5 +27,5 @@ BBCLASSEXTEND = "native" SRC_URI[md5sum] = "499a7773c65aba513609fe651853c5f3" SRC_URI[sha256sum] = "0baca8c9f5d934450a70896c4ad38d06475521255ca63b717a6510fdb6e287bd" -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.3.bb deleted file mode 100644 index c0d014825..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.3.bb +++ /dev/null @@ -1,19 +0,0 @@ -require libx11.inc - -DESCRIPTION += " Support for XCMS and XLOCALE is disabled in \ -this version." - -SRC_URI += "file://X18NCMSstubs.diff \ - file://fix-disable-xlocale.diff \ - file://fix-utf8-wrong-define.patch \ - " - -RPROVIDES_${PN}-dev = "libx11-dev" -RPROVIDES_${PN}-locale = "libx11-locale" - -SRC_URI[md5sum] = "2e36b73f8a42143142dda8129f02e4e0" -SRC_URI[sha256sum] = "cf31a7c39f2f52e8ebd0db95640384e63451f9b014eed2bb7f5de03e8adc8111" - -EXTRA_OECONF += "--disable-xlocale" - -PACKAGECONFIG ??= "" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.4.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.4.bb new file mode 100644 index 000000000..0c761d766 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11-diet_1.6.4.bb @@ -0,0 +1,19 @@ +require libx11.inc + +DESCRIPTION += " Support for XCMS and XLOCALE is disabled in \ +this version." + +SRC_URI += "file://X18NCMSstubs.diff \ + file://fix-disable-xlocale.diff \ + file://fix-utf8-wrong-define.patch \ + " + +RPROVIDES_${PN}-dev = "libx11-dev" +RPROVIDES_${PN}-locale = "libx11-locale" + +SRC_URI[md5sum] = "6d54227082f3aa2c596f0b3a3fbb9175" +SRC_URI[sha256sum] = "b7c748be3aa16ec2cbd81edc847e9b6ee03f88143ab270fb59f58a044d34e441" + +EXTRA_OECONF += "--disable-xlocale" + +PACKAGECONFIG ??= "" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7942.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7942.patch deleted file mode 100644 index f5b4d69d4..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7942.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 8ea762f94f4c942d898fdeb590a1630c83235c17 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann -Date: Sun, 25 Sep 2016 21:25:25 +0200 -Subject: Validation of server responses in XGetImage() - -Check if enough bytes were received for specified image type and -geometry. Otherwise GetPixel and other functions could trigger an -out of boundary read later on. - -CVE: CVE-2016-7942 -Upstream-Status: Backport - -Signed-off-by: Tobias Stoeckmann -Reviewed-by: Matthieu Herrb -Signed-off-by: Sona Sarmadi - -diff --git a/src/GetImage.c b/src/GetImage.c -index c461abc..ff32d58 100644 ---- a/src/GetImage.c -+++ b/src/GetImage.c -@@ -59,6 +59,7 @@ XImage *XGetImage ( - char *data; - unsigned long nbytes; - XImage *image; -+ int planes; - LockDisplay(dpy); - GetReq (GetImage, req); - /* -@@ -91,18 +92,28 @@ XImage *XGetImage ( - return (XImage *) NULL; - } - _XReadPad (dpy, data, nbytes); -- if (format == XYPixmap) -- image = XCreateImage(dpy, _XVIDtoVisual(dpy, rep.visual), -- Ones (plane_mask & -- (((unsigned long)0xFFFFFFFF) >> (32 - rep.depth))), -- format, 0, data, width, height, dpy->bitmap_pad, 0); -- else /* format == ZPixmap */ -- image = XCreateImage (dpy, _XVIDtoVisual(dpy, rep.visual), -- rep.depth, ZPixmap, 0, data, width, height, -- _XGetScanlinePad(dpy, (int) rep.depth), 0); -+ if (format == XYPixmap) { -+ image = XCreateImage(dpy, _XVIDtoVisual(dpy, rep.visual), -+ Ones (plane_mask & -+ (((unsigned long)0xFFFFFFFF) >> (32 - rep.depth))), -+ format, 0, data, width, height, dpy->bitmap_pad, 0); -+ planes = image->depth; -+ } else { /* format == ZPixmap */ -+ image = XCreateImage (dpy, _XVIDtoVisual(dpy, rep.visual), -+ rep.depth, ZPixmap, 0, data, width, height, -+ _XGetScanlinePad(dpy, (int) rep.depth), 0); -+ planes = 1; -+ } - - if (!image) - Xfree(data); -+ if (planes < 1 || image->height < 1 || image->bytes_per_line < 1 || -+ INT_MAX / image->height <= image->bytes_per_line || -+ INT_MAX / planes <= image->height * image->bytes_per_line || -+ nbytes < planes * image->height * image->bytes_per_line) { -+ XDestroyImage(image); -+ image = NULL; -+ } - UnlockDisplay(dpy); - SyncHandle(); - return (image); --- -cgit v0.10.2 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7943.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7943.patch deleted file mode 100644 index 50024236d..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/CVE-2016-7943.patch +++ /dev/null @@ -1,103 +0,0 @@ -From 8c29f1607a31dac0911e45a0dd3d74173822b3c9 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann -Date: Sun, 25 Sep 2016 21:22:57 +0200 -Subject: The validation of server responses avoids out of boundary accesses. - -v2: FontNames.c return a NULL list whenever a single -length field from the server is incohent. - -CVE: CVE-2016-7943 -Upstream-Status: Backport - -Signed-off-by: Tobias Stoeckmann -Reviewed-by: Matthieu Herrb -Signed-off-by: Sona Sarmadi - -diff --git a/src/FontNames.c b/src/FontNames.c -index 21dcafe..e55f338 100644 ---- a/src/FontNames.c -+++ b/src/FontNames.c -@@ -66,7 +66,7 @@ int *actualCount) /* RETURN */ - - if (rep.nFonts) { - flist = Xmalloc (rep.nFonts * sizeof(char *)); -- if (rep.length < (INT_MAX >> 2)) { -+ if (rep.length > 0 && rep.length < (INT_MAX >> 2)) { - rlen = rep.length << 2; - ch = Xmalloc(rlen + 1); - /* +1 to leave room for last null-terminator */ -@@ -93,11 +93,22 @@ int *actualCount) /* RETURN */ - if (ch + length < chend) { - flist[i] = ch + 1; /* skip over length */ - ch += length + 1; /* find next length ... */ -- length = *(unsigned char *)ch; -- *ch = '\0'; /* and replace with null-termination */ -- count++; -- } else -- flist[i] = NULL; -+ if (ch <= chend) { -+ length = *(unsigned char *)ch; -+ *ch = '\0'; /* and replace with null-termination */ -+ count++; -+ } else { -+ Xfree(flist); -+ flist = NULL; -+ count = 0; -+ break; -+ } -+ } else { -+ Xfree(flist); -+ flist = NULL; -+ count = 0; -+ break; -+ } - } - } - *actualCount = count; -diff --git a/src/ListExt.c b/src/ListExt.c -index be6b989..0516e45 100644 ---- a/src/ListExt.c -+++ b/src/ListExt.c -@@ -55,7 +55,7 @@ char **XListExtensions( - - if (rep.nExtensions) { - list = Xmalloc (rep.nExtensions * sizeof (char *)); -- if (rep.length < (INT_MAX >> 2)) { -+ if (rep.length > 0 && rep.length < (INT_MAX >> 2)) { - rlen = rep.length << 2; - ch = Xmalloc (rlen + 1); - /* +1 to leave room for last null-terminator */ -@@ -80,9 +80,13 @@ char **XListExtensions( - if (ch + length < chend) { - list[i] = ch+1; /* skip over length */ - ch += length + 1; /* find next length ... */ -- length = *ch; -- *ch = '\0'; /* and replace with null-termination */ -- count++; -+ if (ch <= chend) { -+ length = *ch; -+ *ch = '\0'; /* and replace with null-termination */ -+ count++; -+ } else { -+ list[i] = NULL; -+ } - } else - list[i] = NULL; - } -diff --git a/src/ModMap.c b/src/ModMap.c -index a809aa2..49a5d08 100644 ---- a/src/ModMap.c -+++ b/src/ModMap.c -@@ -42,7 +42,8 @@ XGetModifierMapping(register Display *dpy) - GetEmptyReq(GetModifierMapping, req); - (void) _XReply (dpy, (xReply *)&rep, 0, xFalse); - -- if (rep.length < (INT_MAX >> 2)) { -+ if (rep.length < (INT_MAX >> 2) && -+ (rep.length >> 1) == rep.numKeyPerModifier) { - nbytes = (unsigned long)rep.length << 2; - res = Xmalloc(sizeof (XModifierKeymap)); - if (res) --- -cgit v0.10.2 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/libX11-Add-missing-NULL-check.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/libX11-Add-missing-NULL-check.patch deleted file mode 100644 index f2abf7c7a..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11/libX11-Add-missing-NULL-check.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 4d85d5f3bd8afac893738fd88e19d8cb5cf998ff Mon Sep 17 00:00:00 2001 -From: Drew Moseley -Date: Sun, 27 Jul 2014 13:10:07 -0400 -Subject: [PATCH] libX11: Add missing NULL check on im and im->methods - -Upstream-Status: Backport (c827edcd1c4a7f920aa25208083b5b58d60d2b44) -Signed-off-by: Drew Moseley - ---- - src/xlibi18n/ICWrap.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff -ru libX11-1.6.2-orig/src/xlibi18n/ICWrap.c libX11-1.6.2/src/xlibi18n/ICWrap.c ---- libX11-1.6.2-orig/src/xlibi18n/ICWrap.c 2014-07-27 13:38:29.586666449 -0400 -+++ libX11-1.6.2/src/xlibi18n/ICWrap.c 2014-07-27 13:41:39.671609030 -0400 -@@ -169,7 +169,7 @@ - va_list var; - int total_count; - XIMArg *args; -- char *ret; -+ char *ret = NULL; - - /* - * so count the stuff dangling here -@@ -185,7 +185,8 @@ - _XIMVaToNestedList(var, total_count, &args); - va_end(var); - -- ret = (*im->methods->set_values) (im, args); -+ if (im && im->methods) -+ ret = (*im->methods->set_values) (im, args); - Xfree(args); - return ret; - } -@@ -196,7 +197,7 @@ - va_list var; - int total_count; - XIMArg *args; -- char *ret; -+ char *ret = NULL; - - /* - * so count the stuff dangling here -@@ -212,7 +213,8 @@ - _XIMVaToNestedList(var, total_count, &args); - va_end(var); - -- ret = (*im->methods->get_values) (im, args); -+ if (im && im->methods) -+ ret = (*im->methods->get_values) (im, args); - Xfree(args); - return ret; - } -@@ -228,7 +230,7 @@ - va_list var; - int total_count; - XIMArg *args; -- XIC ic; -+ XIC ic = NULL; - - /* - * so count the stuff dangling here -@@ -244,7 +246,8 @@ - _XIMVaToNestedList(var, total_count, &args); - va_end(var); - -- ic = (XIC) (*im->methods->create_ic) (im, args); -+ if (im && im->methods) -+ ic = (XIC) (*im->methods->create_ic) (im, args); - Xfree(args); - if (ic) { - ic->core.next = im->core.ic_chain; diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.3.bb deleted file mode 100644 index 23a77891e..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.3.bb +++ /dev/null @@ -1,13 +0,0 @@ -require libx11.inc -inherit gettext - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI += "file://disable_tests.patch \ - file://libX11-Add-missing-NULL-check.patch \ - file://CVE-2016-7942.patch \ - file://CVE-2016-7943.patch \ - " - -SRC_URI[md5sum] = "2e36b73f8a42143142dda8129f02e4e0" -SRC_URI[sha256sum] = "cf31a7c39f2f52e8ebd0db95640384e63451f9b014eed2bb7f5de03e8adc8111" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.4.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.4.bb new file mode 100644 index 000000000..caa95fb48 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libx11_1.6.4.bb @@ -0,0 +1,10 @@ +require libx11.inc +inherit gettext + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI += "file://disable_tests.patch \ + " + +SRC_URI[md5sum] = "6d54227082f3aa2c596f0b3a3fbb9175" +SRC_URI[sha256sum] = "b7c748be3aa16ec2cbd81edc847e9b6ee03f88143ab270fb59f58a044d34e441" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.2.bb deleted file mode 100644 index f078aed19..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.2.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "XFixes: X Fixes extension library" - -DESCRIPTION = "X applications have often needed to work around various \ -shortcomings in the core X window system. This extension is designed to \ -provide the minimal server-side support necessary to eliminate problems \ -caused by these workarounds." - -require xorg-lib-common.inc - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=3c1ce42c334a6f5cccb0277556a053e0" - -DEPENDS += "virtual/libx11 xproto fixesproto xextproto" - -PE = "1" - -XORG_PN = "libXfixes" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI[md5sum] = "544d73df94e638ba7b64147be416e576" -SRC_URI[sha256sum] = "9bd20edfec084a1bed481d48dd4815dee88139fffad091418cdda081129a9aea" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.3.bb new file mode 100644 index 000000000..c80042d34 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfixes_5.0.3.bb @@ -0,0 +1,23 @@ +SUMMARY = "XFixes: X Fixes extension library" + +DESCRIPTION = "X applications have often needed to work around various \ +shortcomings in the core X window system. This extension is designed to \ +provide the minimal server-side support necessary to eliminate problems \ +caused by these workarounds." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=3c1ce42c334a6f5cccb0277556a053e0" + +DEPENDS += "virtual/libx11 xproto fixesproto xextproto" + +PE = "1" + +XORG_PN = "libXfixes" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "07e01e046a0215574f36a3aacb148be0" +SRC_URI[sha256sum] = "de1cd33aff226e08cefd0e6759341c2c8e8c9faf8ce9ac6ec38d43e287b22ad6" + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.1.bb new file mode 100644 index 000000000..4bfb290ae --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.1.bb @@ -0,0 +1,22 @@ +SUMMARY = "XFont2: X Font rasterisation library" + +DESCRIPTION = "libXfont2 provides various services for X servers, most \ +notably font selection and rasterisation (through external libraries \ +such as freetype)." + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style & BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=a46c8040f2f737bcd0c435feb2ab1c2c" + +DEPENDS += "freetype xtrans fontsproto libfontenc zlib" + +XORG_PN = "libXfont2" + +BBCLASSEXTEND = "native" + +SRC_URI[md5sum] = "0d9f6dd9c23bf4bcbfb00504b566baf5" +SRC_URI[sha256sum] = "e9fbbb475ddd171b3a6a54b989cbade1f6f874fc35d505ebc5be426bc6e4db7e" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.1.bb deleted file mode 100644 index e01f3311f..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.1.bb +++ /dev/null @@ -1,25 +0,0 @@ -SUMMARY = "XFont: X Font rasterisation library" - -DESCRIPTION = "libXfont provides various services for X servers, most \ -notably font selection and rasterisation (through external libraries \ -such as freetype)." - -require xorg-lib-common.inc - -LICENSE = "MIT & MIT-style & BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=a46c8040f2f737bcd0c435feb2ab1c2c" - -DEPENDS += "freetype xtrans fontsproto libfontenc zlib" -PROVIDES = "xfont" - -PE = "1" - -XORG_PN = "libXfont" - -BBCLASSEXTEND = "native" - -SRC_URI[md5sum] = "96f76ba94b4c909230bac1e2dcd551c4" -SRC_URI[sha256sum] = "b70898527c73f9758f551bbab612af611b8a0962202829568d94f3edf4d86098" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.2.bb new file mode 100644 index 000000000..b11dda57e --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxfont_1.5.2.bb @@ -0,0 +1,25 @@ +SUMMARY = "XFont: X Font rasterisation library" + +DESCRIPTION = "libXfont provides various services for X servers, most \ +notably font selection and rasterisation (through external libraries \ +such as freetype)." + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style & BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=a46c8040f2f737bcd0c435feb2ab1c2c" + +DEPENDS += "freetype xtrans fontsproto libfontenc zlib" +PROVIDES = "xfont" + +PE = "1" + +XORG_PN = "libXfont" + +BBCLASSEXTEND = "native" + +SRC_URI[md5sum] = "254ee42bd178d18ebc7a73aacfde7f79" +SRC_URI[sha256sum] = "02945ea68da447102f3e6c2b896c1d2061fd115de99404facc2aca3ad7010d71" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb index a967cdc58..b4547819f 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb @@ -28,6 +28,6 @@ XORG_PN = "libXft" BBCLASSEXTEND = "native" python () { - if d.getVar('DEBIAN_NAMES', True): + if d.getVar('DEBIAN_NAMES'): d.setVar('PKG_${PN}', '${MLPREFIX}libxft2') } diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.6.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.6.bb deleted file mode 100644 index 752347969..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.6.bb +++ /dev/null @@ -1,21 +0,0 @@ -require xorg-lib-common.inc - -SUMMARY = "XI: X Input extension library" - -DESCRIPTION = "libxi is an extension to the X11 protocol to support \ -input devices other than the core X keyboard and pointer. It allows \ -client programs to select input from these devices independently from \ -each other and independently from the core devices." - -LICENSE = "MIT & MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=17b064789fab936a1c58c4e13d965b0f \ - file://src/XIGetDevFocus.c;endline=23;md5=cdfb0d435a33ec57ea0d1e8e395b729f" - -DEPENDS += "libxext inputproto libxfixes" - -PE = "1" - -XORG_PN = "libXi" - -SRC_URI[md5sum] = "510e555ecfffa8d2298a0f42b725e563" -SRC_URI[sha256sum] = "1f32a552cec0f056c0260bdb32e853cec0673d2f40646ce932ad5a9f0205b7ac" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.9.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.9.bb new file mode 100644 index 000000000..74f0527b7 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxi_1.7.9.bb @@ -0,0 +1,22 @@ +require xorg-lib-common.inc + +SUMMARY = "XI: X Input extension library" + +DESCRIPTION = "libxi is an extension to the X11 protocol to support \ +input devices other than the core X keyboard and pointer. It allows \ +client programs to select input from these devices independently from \ +each other and independently from the core devices." + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=17b064789fab936a1c58c4e13d965b0f \ + file://src/XIGetDevFocus.c;endline=23;md5=cdfb0d435a33ec57ea0d1e8e395b729f" + +DEPENDS += "libxext inputproto libxfixes" + +PE = "1" + +XORG_PN = "libXi" + +SRC_URI[md5sum] = "1f0f2719c020655a60aee334ddd26d67" +SRC_URI[sha256sum] = "c2e6b8ff84f9448386c1b5510a5cf5a16d788f76db018194dacdc200180faf45" + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.6.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.6.1.bb deleted file mode 100644 index fc08109c8..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.6.1.bb +++ /dev/null @@ -1,22 +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=09457b156e3155972abebcaaaa0cb434" -LICENSE = "MIT & MIT-style" - -DEPENDS = "util-macros flex-native bison-native" - -SRC_URI = "http://xkbcommon.org/download/${BPN}-${PV}.tar.xz" - -SRC_URI[md5sum] = "67a8f322b5fa32352272e811bb90dd73" -SRC_URI[sha256sum] = "5b0887b080b42169096a61106661f8d35bae783f8b6c58f97ebcd3af83ea8760" - -UPSTREAM_CHECK_URI = "http://xkbcommon.org/" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-docs" - -PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" -PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxcb xkeyboard-config," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.7.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.7.1.bb new file mode 100644 index 000000000..81df1dd8d --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxkbcommon_0.7.1.bb @@ -0,0 +1,22 @@ +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] = "947ba609cb0239b9462127d5cf8908ee" +SRC_URI[sha256sum] = "ba59305d2e19e47c27ea065c2e0df96ebac6a3c6e97e28ae5620073b6084e68b" + +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," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb index d5935ff34..4740c1573 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb @@ -31,5 +31,5 @@ BBCLASSEXTEND = "native" SRC_URI[md5sum] = "41d92ab627dfa06568076043f3e089e4" SRC_URI[sha256sum] = "756edc7c383254eef8b4e1b733c3bf1dc061b523c9f9833ac7058378b8349d0b" -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.11.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.11.bb deleted file mode 100644 index 545874cdd..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.11.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 = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=51f4270b012ecd4ab1a164f5f4ed6cf7" -DEPENDS += "libxext libsm libxt" -PE = "1" - -XORG_PN = "libXpm" - -PACKAGES =+ "sxpm cxpm" -FILES_cxpm = "${bindir}/cxpm" -FILES_sxpm = "${bindir}/sxpm" - -SRC_URI[md5sum] = "769ee12a43611cdebd38094eaf83f3f0" -SRC_URI[sha256sum] = "c5bdafa51d1ae30086fac01ab83be8d47fe117b238d3437f8e965434090e041c" - -BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.bb new file mode 100644 index 000000000..13a1b919e --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.12.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 = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=51f4270b012ecd4ab1a164f5f4ed6cf7" +DEPENDS += "libxext libsm libxt" +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/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr/CVE-2016-7947_CVE-2016-7948.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr/CVE-2016-7947_CVE-2016-7948.patch deleted file mode 100644 index a9b3dbc65..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr/CVE-2016-7947_CVE-2016-7948.patch +++ /dev/null @@ -1,439 +0,0 @@ -From a0df3e1c7728205e5c7650b2e6dce684139254a6 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann -Date: Sun, 25 Sep 2016 22:21:40 +0200 -Subject: Avoid out of boundary accesses on illegal responses - -The responses of the connected X server have to be properly checked -to avoid out of boundary accesses that could otherwise be triggered -by a malicious server. - -CVE: CVE-2016-7947 -libXrandr: Insufficient validation of server responses result in Integer overflows - -CVE: CVE-2016-7948 -libXrandr: Insufficient validation of server responses result in various data mishandlings - -Upstream-Status: Backport - -Signed-off-by: Tobias Stoeckmann -Reviewed-by: Matthieu Herrb -Signed-off-by: Sona Sarmadi - -diff --git a/src/XrrConfig.c b/src/XrrConfig.c -index 2f0282b..e68c45a 100644 ---- a/src/XrrConfig.c -+++ b/src/XrrConfig.c -@@ -29,6 +29,7 @@ - #include - #endif - -+#include - #include - #include - /* we need to be able to manipulate the Display structure on events */ -@@ -272,23 +273,30 @@ static XRRScreenConfiguration *_XRRGetScreenInfo (Display *dpy, - rep.rate = 0; - rep.nrateEnts = 0; - } -+ if (rep.length < INT_MAX >> 2) { -+ nbytes = (long) rep.length << 2; - -- nbytes = (long) rep.length << 2; -+ nbytesRead = (long) (rep.nSizes * SIZEOF (xScreenSizes) + -+ ((rep.nrateEnts + 1)& ~1) * 2 /* SIZEOF(CARD16) */); - -- nbytesRead = (long) (rep.nSizes * SIZEOF (xScreenSizes) + -- ((rep.nrateEnts + 1)& ~1) * 2 /* SIZEOF (CARD16) */); -+ /* -+ * first we must compute how much space to allocate for -+ * randr library's use; we'll allocate the structures in a single -+ * allocation, on cleanlyness grounds. -+ */ - -- /* -- * first we must compute how much space to allocate for -- * randr library's use; we'll allocate the structures in a single -- * allocation, on cleanlyness grounds. -- */ -+ rbytes = sizeof (XRRScreenConfiguration) + -+ (rep.nSizes * sizeof (XRRScreenSize) + -+ rep.nrateEnts * sizeof (int)); - -- rbytes = sizeof (XRRScreenConfiguration) + -- (rep.nSizes * sizeof (XRRScreenSize) + -- rep.nrateEnts * sizeof (int)); -+ scp = (struct _XRRScreenConfiguration *) Xmalloc(rbytes); -+ } else { -+ nbytes = 0; -+ nbytesRead = 0; -+ rbytes = 0; -+ scp = NULL; -+ } - -- scp = (struct _XRRScreenConfiguration *) Xmalloc(rbytes); - if (scp == NULL) { - _XEatData (dpy, (unsigned long) nbytes); - return NULL; -diff --git a/src/XrrCrtc.c b/src/XrrCrtc.c -index 5ae35c5..6665092 100644 ---- a/src/XrrCrtc.c -+++ b/src/XrrCrtc.c -@@ -24,6 +24,7 @@ - #include - #endif - -+#include - #include - #include - /* we need to be able to manipulate the Display structure on events */ -@@ -57,22 +58,33 @@ XRRGetCrtcInfo (Display *dpy, XRRScreenResources *resources, RRCrtc crtc) - return NULL; - } - -- nbytes = (long) rep.length << 2; -+ if (rep.length < INT_MAX >> 2) -+ { -+ nbytes = (long) rep.length << 2; - -- nbytesRead = (long) (rep.nOutput * 4 + -- rep.nPossibleOutput * 4); -+ nbytesRead = (long) (rep.nOutput * 4 + -+ rep.nPossibleOutput * 4); - -- /* -- * first we must compute how much space to allocate for -- * randr library's use; we'll allocate the structures in a single -- * allocation, on cleanlyness grounds. -- */ -+ /* -+ * first we must compute how much space to allocate for -+ * randr library's use; we'll allocate the structures in a single -+ * allocation, on cleanlyness grounds. -+ */ - -- rbytes = (sizeof (XRRCrtcInfo) + -- rep.nOutput * sizeof (RROutput) + -- rep.nPossibleOutput * sizeof (RROutput)); -+ rbytes = (sizeof (XRRCrtcInfo) + -+ rep.nOutput * sizeof (RROutput) + -+ rep.nPossibleOutput * sizeof (RROutput)); -+ -+ xci = (XRRCrtcInfo *) Xmalloc(rbytes); -+ } -+ else -+ { -+ nbytes = 0; -+ nbytesRead = 0; -+ rbytes = 0; -+ xci = NULL; -+ } - -- xci = (XRRCrtcInfo *) Xmalloc(rbytes); - if (xci == NULL) { - _XEatDataWords (dpy, rep.length); - UnlockDisplay (dpy); -@@ -194,12 +206,21 @@ XRRGetCrtcGamma (Display *dpy, RRCrtc crtc) - if (!_XReply (dpy, (xReply *) &rep, 0, xFalse)) - goto out; - -- nbytes = (long) rep.length << 2; -+ if (rep.length < INT_MAX >> 2) -+ { -+ nbytes = (long) rep.length << 2; - -- /* three channels of CARD16 data */ -- nbytesRead = (rep.size * 2 * 3); -+ /* three channels of CARD16 data */ -+ nbytesRead = (rep.size * 2 * 3); - -- crtc_gamma = XRRAllocGamma (rep.size); -+ crtc_gamma = XRRAllocGamma (rep.size); -+ } -+ else -+ { -+ nbytes = 0; -+ nbytesRead = 0; -+ crtc_gamma = NULL; -+ } - - if (!crtc_gamma) - { -@@ -357,7 +378,7 @@ XRRGetCrtcTransform (Display *dpy, - xRRGetCrtcTransformReq *req; - int major_version, minor_version; - XRRCrtcTransformAttributes *attr; -- char *extra = NULL, *e; -+ char *extra = NULL, *end = NULL, *e; - int p; - - *attributes = NULL; -@@ -395,9 +416,17 @@ XRRGetCrtcTransform (Display *dpy, - else - { - int extraBytes = rep.length * 4 - CrtcTransformExtra; -- extra = Xmalloc (extraBytes); -+ if (rep.length < INT_MAX / 4 && -+ rep.length * 4 >= CrtcTransformExtra) { -+ extra = Xmalloc (extraBytes); -+ end = extra + extraBytes; -+ } else -+ extra = NULL; - if (!extra) { -- _XEatDataWords (dpy, rep.length - (CrtcTransformExtra >> 2)); -+ if (rep.length > (CrtcTransformExtra >> 2)) -+ _XEatDataWords (dpy, rep.length - (CrtcTransformExtra >> 2)); -+ else -+ _XEatDataWords (dpy, rep.length); - UnlockDisplay (dpy); - SyncHandle (); - return False; -@@ -429,22 +458,38 @@ XRRGetCrtcTransform (Display *dpy, - - e = extra; - -+ if (e + rep.pendingNbytesFilter > end) { -+ XFree (extra); -+ return False; -+ } - memcpy (attr->pendingFilter, e, rep.pendingNbytesFilter); - attr->pendingFilter[rep.pendingNbytesFilter] = '\0'; - e += (rep.pendingNbytesFilter + 3) & ~3; - for (p = 0; p < rep.pendingNparamsFilter; p++) { - INT32 f; -+ if (e + 4 > end) { -+ XFree (extra); -+ return False; -+ } - memcpy (&f, e, 4); - e += 4; - attr->pendingParams[p] = (XFixed) f; - } - attr->pendingNparams = rep.pendingNparamsFilter; - -+ if (e + rep.currentNbytesFilter > end) { -+ XFree (extra); -+ return False; -+ } - memcpy (attr->currentFilter, e, rep.currentNbytesFilter); - attr->currentFilter[rep.currentNbytesFilter] = '\0'; - e += (rep.currentNbytesFilter + 3) & ~3; - for (p = 0; p < rep.currentNparamsFilter; p++) { - INT32 f; -+ if (e + 4 > end) { -+ XFree (extra); -+ return False; -+ } - memcpy (&f, e, 4); - e += 4; - attr->currentParams[p] = (XFixed) f; -diff --git a/src/XrrMonitor.c b/src/XrrMonitor.c -index a9eaa7b..adc5330 100644 ---- a/src/XrrMonitor.c -+++ b/src/XrrMonitor.c -@@ -24,6 +24,7 @@ - #include - #endif - -+#include - #include - #include - /* we need to be able to manipulate the Display structure on events */ -@@ -65,6 +66,15 @@ XRRGetMonitors(Display *dpy, Window window, Bool get_active, int *nmonitors) - return NULL; - } - -+ if (rep.length > INT_MAX >> 2 || -+ rep.nmonitors > INT_MAX / SIZEOF(xRRMonitorInfo) || -+ rep.noutputs > INT_MAX / 4 || -+ rep.nmonitors * SIZEOF(xRRMonitorInfo) > INT_MAX - rep.noutputs * 4) { -+ _XEatData (dpy, rep.length); -+ UnlockDisplay (dpy); -+ SyncHandle (); -+ return NULL; -+ } - nbytes = (long) rep.length << 2; - nmon = rep.nmonitors; - noutput = rep.noutputs; -@@ -111,6 +121,14 @@ XRRGetMonitors(Display *dpy, Window window, Bool get_active, int *nmonitors) - mon[m].outputs = output; - buf += SIZEOF (xRRMonitorInfo); - xoutput = (CARD32 *) buf; -+ if (xmon->noutput > rep.noutputs) { -+ Xfree(buf); -+ Xfree(mon); -+ UnlockDisplay (dpy); -+ SyncHandle (); -+ return NULL; -+ } -+ rep.noutputs -= xmon->noutput; - for (o = 0; o < xmon->noutput; o++) - output[o] = xoutput[o]; - output += xmon->noutput; -diff --git a/src/XrrOutput.c b/src/XrrOutput.c -index 85f0b6e..30f3d40 100644 ---- a/src/XrrOutput.c -+++ b/src/XrrOutput.c -@@ -25,6 +25,7 @@ - #include - #endif - -+#include - #include - #include - /* we need to be able to manipulate the Display structure on events */ -@@ -60,6 +61,16 @@ XRRGetOutputInfo (Display *dpy, XRRScreenResources *resources, RROutput output) - return NULL; - } - -+ if (rep.length > INT_MAX >> 2 || rep.length < (OutputInfoExtra >> 2)) -+ { -+ if (rep.length > (OutputInfoExtra >> 2)) -+ _XEatDataWords (dpy, rep.length - (OutputInfoExtra >> 2)); -+ else -+ _XEatDataWords (dpy, rep.length); -+ UnlockDisplay (dpy); -+ SyncHandle (); -+ return NULL; -+ } - nbytes = ((long) (rep.length) << 2) - OutputInfoExtra; - - nbytesRead = (long) (rep.nCrtcs * 4 + -diff --git a/src/XrrProvider.c b/src/XrrProvider.c -index 9e620c7..d796cd0 100644 ---- a/src/XrrProvider.c -+++ b/src/XrrProvider.c -@@ -25,6 +25,7 @@ - #include - #endif - -+#include - #include - #include - /* we need to be able to manipulate the Display structure on events */ -@@ -59,12 +60,20 @@ XRRGetProviderResources(Display *dpy, Window window) - return NULL; - } - -- nbytes = (long) rep.length << 2; -+ if (rep.length < INT_MAX >> 2) { -+ nbytes = (long) rep.length << 2; - -- nbytesRead = (long) (rep.nProviders * 4); -+ nbytesRead = (long) (rep.nProviders * 4); - -- rbytes = (sizeof(XRRProviderResources) + rep.nProviders * sizeof(RRProvider)); -- xrpr = (XRRProviderResources *) Xmalloc(rbytes); -+ rbytes = (sizeof(XRRProviderResources) + rep.nProviders * -+ sizeof(RRProvider)); -+ xrpr = (XRRProviderResources *) Xmalloc(rbytes); -+ } else { -+ nbytes = 0; -+ nbytesRead = 0; -+ rbytes = 0; -+ xrpr = NULL; -+ } - - if (xrpr == NULL) { - _XEatDataWords (dpy, rep.length); -@@ -121,6 +130,17 @@ XRRGetProviderInfo(Display *dpy, XRRScreenResources *resources, RRProvider provi - return NULL; - } - -+ if (rep.length > INT_MAX >> 2 || rep.length < ProviderInfoExtra >> 2) -+ { -+ if (rep.length < ProviderInfoExtra >> 2) -+ _XEatDataWords (dpy, rep.length); -+ else -+ _XEatDataWords (dpy, rep.length - (ProviderInfoExtra >> 2)); -+ UnlockDisplay (dpy); -+ SyncHandle (); -+ return NULL; -+ } -+ - nbytes = ((long) rep.length << 2) - ProviderInfoExtra; - - nbytesRead = (long)(rep.nCrtcs * 4 + -diff --git a/src/XrrScreen.c b/src/XrrScreen.c -index b8ce7e5..1f7ffe6 100644 ---- a/src/XrrScreen.c -+++ b/src/XrrScreen.c -@@ -24,6 +24,7 @@ - #include - #endif - -+#include - #include - #include - /* we need to be able to manipulate the Display structure on events */ -@@ -105,27 +106,36 @@ doGetScreenResources (Display *dpy, Window window, int poll) - xrri->has_rates = _XRRHasRates (xrri->minor_version, xrri->major_version); - } - -- nbytes = (long) rep.length << 2; -+ if (rep.length < INT_MAX >> 2) { -+ nbytes = (long) rep.length << 2; - -- nbytesRead = (long) (rep.nCrtcs * 4 + -- rep.nOutputs * 4 + -- rep.nModes * SIZEOF (xRRModeInfo) + -- ((rep.nbytesNames + 3) & ~3)); -+ nbytesRead = (long) (rep.nCrtcs * 4 + -+ rep.nOutputs * 4 + -+ rep.nModes * SIZEOF (xRRModeInfo) + -+ ((rep.nbytesNames + 3) & ~3)); - -- /* -- * first we must compute how much space to allocate for -- * randr library's use; we'll allocate the structures in a single -- * allocation, on cleanlyness grounds. -- */ -+ /* -+ * first we must compute how much space to allocate for -+ * randr library's use; we'll allocate the structures in a single -+ * allocation, on cleanlyness grounds. -+ */ -+ -+ rbytes = (sizeof (XRRScreenResources) + -+ rep.nCrtcs * sizeof (RRCrtc) + -+ rep.nOutputs * sizeof (RROutput) + -+ rep.nModes * sizeof (XRRModeInfo) + -+ rep.nbytesNames + rep.nModes); /* '\0' terminate names */ - -- rbytes = (sizeof (XRRScreenResources) + -- rep.nCrtcs * sizeof (RRCrtc) + -- rep.nOutputs * sizeof (RROutput) + -- rep.nModes * sizeof (XRRModeInfo) + -- rep.nbytesNames + rep.nModes); /* '\0' terminate names */ -+ xrsr = (XRRScreenResources *) Xmalloc(rbytes); -+ wire_names = (char *) Xmalloc (rep.nbytesNames); -+ } else { -+ nbytes = 0; -+ nbytesRead = 0; -+ rbytes = 0; -+ xrsr = NULL; -+ wire_names = NULL; -+ } - -- xrsr = (XRRScreenResources *) Xmalloc(rbytes); -- wire_names = (char *) Xmalloc (rep.nbytesNames); - if (xrsr == NULL || wire_names == NULL) { - Xfree (xrsr); - Xfree (wire_names); -@@ -174,6 +184,14 @@ doGetScreenResources (Display *dpy, Window window, int poll) - wire_name = wire_names; - for (i = 0; i < rep.nModes; i++) { - xrsr->modes[i].name = names; -+ if (xrsr->modes[i].nameLength > rep.nbytesNames) { -+ Xfree (xrsr); -+ Xfree (wire_names); -+ UnlockDisplay (dpy); -+ SyncHandle (); -+ return NULL; -+ } -+ rep.nbytesNames -= xrsr->modes[i].nameLength; - memcpy (names, wire_name, xrsr->modes[i].nameLength); - names[xrsr->modes[i].nameLength] = '\0'; - names += xrsr->modes[i].nameLength + 1; --- -cgit v0.10.2 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.0.bb deleted file mode 100644 index 35c60b419..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.0.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "XRandR: X Resize, Rotate and Reflect extension library" - -DESCRIPTION = "The X Resize, Rotate and Reflect Extension, called RandR \ -for short, brings the ability to resize, rotate and reflect the root \ -window of a screen. It is based on the X Resize and Rotate Extension as \ -specified in the Proceedings of the 2001 Usenix Technical Conference \ -[RANDR]." - -require xorg-lib-common.inc - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=c9d1a2118a6cd5727521db8e7a2fee69" - -DEPENDS += "virtual/libx11 randrproto libxrender libxext" - -PE = "1" - -XORG_PN = "libXrandr" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI += "file://CVE-2016-7947_CVE-2016-7948.patch \ - " - -SRC_URI[md5sum] = "309762867e41c6fd813da880d8a1bc93" -SRC_URI[sha256sum] = "6f864959b7fc35db11754b270d71106ef5b5cf363426aa58589cb8ac8266de58" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb new file mode 100644 index 000000000..48e88d20a --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb @@ -0,0 +1,23 @@ +SUMMARY = "XRandR: X Resize, Rotate and Reflect extension library" + +DESCRIPTION = "The X Resize, Rotate and Reflect Extension, called RandR \ +for short, brings the ability to resize, rotate and reflect the root \ +window of a screen. It is based on the X Resize and Rotate Extension as \ +specified in the Proceedings of the 2001 Usenix Technical Conference \ +[RANDR]." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=c9d1a2118a6cd5727521db8e7a2fee69" + +DEPENDS += "virtual/libx11 randrproto libxrender libxext" + +PE = "1" + +XORG_PN = "libXrandr" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "28e486f1d491b757173dd85ba34ee884" +SRC_URI[sha256sum] = "1ff9e7fa0e4adea912b16a5f0cfa7c1d35b0dcda0e216831f7715c8a3abcf51a" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender/CVE-2016-7949.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender/CVE-2016-7949.patch deleted file mode 100644 index 73315b108..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender/CVE-2016-7949.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 9362c7ddd1af3b168953d0737877bc52d79c94f4 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann -Date: Sun, 25 Sep 2016 21:43:09 +0200 -Subject: Validate lengths while parsing server data. - -Individual lengths inside received server data can overflow -the previously reserved memory. - -It is therefore important to validate every single length -field to not overflow the previously agreed sum of all invidual -length fields. - -v2: consume remaining bytes in the reply buffer on error. - -CVE: CVE-2016-7949 -Upstream-Status: Backport - -Signed-off-by: Tobias Stoeckmann -Reviewed-by: Matthieu Herrb@laas.fr -Signed-off-by: Sona Sarmadi - -diff --git a/src/Xrender.c b/src/Xrender.c -index 3102eb2..71cf3e6 100644 ---- a/src/Xrender.c -+++ b/src/Xrender.c -@@ -533,12 +533,30 @@ XRenderQueryFormats (Display *dpy) - screen->fallback = _XRenderFindFormat (xri, xScreen->fallback); - screen->subpixel = SubPixelUnknown; - xDepth = (xPictDepth *) (xScreen + 1); -+ if (screen->ndepths > rep.numDepths) { -+ Xfree (xri); -+ Xfree (xData); -+ _XEatDataWords (dpy, rep.length); -+ UnlockDisplay (dpy); -+ SyncHandle (); -+ return 0; -+ } -+ rep.numDepths -= screen->ndepths; - for (nd = 0; nd < screen->ndepths; nd++) - { - depth->depth = xDepth->depth; - depth->nvisuals = xDepth->nPictVisuals; - depth->visuals = visual; - xVisual = (xPictVisual *) (xDepth + 1); -+ if (depth->nvisuals > rep.numVisuals) { -+ Xfree (xri); -+ Xfree (xData); -+ _XEatDataWords (dpy, rep.length); -+ UnlockDisplay (dpy); -+ SyncHandle (); -+ return 0; -+ } -+ rep.numVisuals -= depth->nvisuals; - for (nv = 0; nv < depth->nvisuals; nv++) - { - visual->visual = _XRenderFindVisual (dpy, xVisual->visual); --- -cgit v0.10.2 - diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.10.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.10.bb new file mode 100644 index 000000000..92b310270 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.10.bb @@ -0,0 +1,24 @@ +SUMMARY = "XRender: X Rendering Extension library" + +DESCRIPTION = "The X Rendering Extension (Render) introduces digital \ +image composition as the foundation of a new rendering model within the \ +X Window System. Rendering geometric figures is accomplished by \ +client-side tessellation into either triangles or trapezoids. Text is \ +drawn by loading glyphs into the server and rendering sets of them." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=d8bc71986d3b9b3639f6dfd6fac8f196" + +DEPENDS += "virtual/libx11 renderproto xproto" + +PE = "1" + +XORG_PN = "libXrender" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "802179a76bded0b658f4e9ec5e1830a4" +SRC_URI[sha256sum] = "c06d5979f86e64cabbde57c223938db0b939dff49fdb5a793a1d3d0396650949" + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.9.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.9.bb deleted file mode 100644 index eac367906..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxrender_0.9.9.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "XRender: X Rendering Extension library" - -DESCRIPTION = "The X Rendering Extension (Render) introduces digital \ -image composition as the foundation of a new rendering model within the \ -X Window System. Rendering geometric figures is accomplished by \ -client-side tessellation into either triangles or trapezoids. Text is \ -drawn by loading glyphs into the server and rendering sets of them." - -require xorg-lib-common.inc - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=d8bc71986d3b9b3639f6dfd6fac8f196" - -DEPENDS += "virtual/libx11 renderproto xproto" - -PE = "1" - -XORG_PN = "libXrender" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI += "file://CVE-2016-7949.patch \ - " - -SRC_URI[md5sum] = "5db92962b124ca3a8147daae4adbd622" -SRC_URI[sha256sum] = "fc2fe57980a14092426dffcd1f2d9de0987b9d40adea663bd70d6342c0e9be1a" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxtst_1.2.3.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxtst_1.2.3.bb index 31ea4392d..5717fa5b7 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxtst_1.2.3.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxtst_1.2.3.bb @@ -18,3 +18,4 @@ XORG_PN = "libXtst" SRC_URI[md5sum] = "ef8c2c1d16a00bd95b9fdcef63b8a2ca" SRC_URI[sha256sum] = "4655498a1b8e844e3d6f21f3b2c4e2b571effb5fd83199d428a6ba7ea4bf5204" + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.10.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.10.bb deleted file mode 100644 index f02b8b64f..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.10.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Xv: X Video extension library" - -DESCRIPTION = "libXv provides an X Window System client interface to the \ -X Video extension to the X protocol. The X Video extension allows for \ -accelerated drawing of videos. Hardware adaptors are exposed to \ -clients, which may draw in a number of colourspaces, including YUV." - -require xorg-lib-common.inc - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=827da9afab1f727f2a66574629e0f39c" - -DEPENDS += "libxext videoproto" - -XORG_PN = "libXv" - -SRC_URI[md5sum] = "e0af49d7d758b990e6fef629722d4aca" -SRC_URI[sha256sum] = "55fe92f8686ce8612e2c1bfaf58c057715534419da700bda8d517b1d97914525" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.11.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.11.bb new file mode 100644 index 000000000..a226c2753 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxv_1.0.11.bb @@ -0,0 +1,19 @@ +SUMMARY = "Xv: X Video extension library" + +DESCRIPTION = "libXv provides an X Window System client interface to the \ +X Video extension to the X protocol. The X Video extension allows for \ +accelerated drawing of videos. Hardware adaptors are exposed to \ +clients, which may draw in a number of colourspaces, including YUV." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=827da9afab1f727f2a66574629e0f39c" + +DEPENDS += "libxext videoproto" + +XORG_PN = "libXv" + +SRC_URI[md5sum] = "210b6ef30dda2256d54763136faa37b9" +SRC_URI[sha256sum] = "d26c13eac99ac4504c532e8e76a1c8e4bd526471eb8a0a4ff2a88db60cb0b088" + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb new file mode 100644 index 000000000..6ed49b1f3 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb @@ -0,0 +1,19 @@ +SUMMARY = "XvMC: X Video Motion Compensation extension library" + +DESCRIPTION = "XvMC extends the X Video extension (Xv) and enables \ +hardware rendered motion compensation support." + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=0a207f08d4961489c55046c9a5e500da \ + file://wrapper/XvMCWrapper.c;endline=26;md5=5151daa8172a3f1bb0cb0e0ff157d9de" + +DEPENDS += "libxext libxv videoproto" + +PE = "1" + +XORG_PN = "libXvMC" + +SRC_URI[md5sum] = "4cbe1c1def7a5e1b0ed5fce8e512f4c6" +SRC_URI[sha256sum] = "e501a079b5dfaef0897c56152770c77e05e362065cec58910289aa567277ee2e" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.9.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.9.bb deleted file mode 100644 index 41e8498a6..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.9.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "XvMC: X Video Motion Compensation extension library" - -DESCRIPTION = "XvMC extends the X Video extension (Xv) and enables \ -hardware rendered motion compensation support." - -require xorg-lib-common.inc - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=0a207f08d4961489c55046c9a5e500da \ - file://wrapper/XvMCWrapper.c;endline=26;md5=5151daa8172a3f1bb0cb0e0ff157d9de" - -DEPENDS += "libxext libxv videoproto" - -PE = "1" - -XORG_PN = "libXvMC" - -SRC_URI[md5sum] = "eba6b738ed5fdcd8f4203d7c8a470c79" -SRC_URI[sha256sum] = "0703d7dff6ffc184f1735ca5d4eb9dbb402b522e08e008f2f96aee16c40a5756" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.18.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.18.bb deleted file mode 100644 index 79fcbd897..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.18.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] = "c28cf45616bfec276879360bc36c6b27" -SRC_URI[sha256sum] = "c41d917d6c8a59feb7ccbda51c40a6ada824fdd1e9684b52dd48c9530617ddd0" - -SECTION = "x11/libs" -DEPENDS = "intltool-native virtual/gettext 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/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.20.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.20.bb new file mode 100644 index 000000000..d00904df2 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.20.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] = "1f68886339116ae3877052204c9b9b88" +SRC_URI[sha256sum] = "d1bfc72553c4e3ef1cd6f13eec0488cf940498b612ab8a0b362e7090c94bc134" + +SECTION = "x11/libs" +DEPENDS = "intltool-native virtual/gettext 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/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/presentproto_git.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/presentproto_git.bb index dbb6f32bc..e6d32f95a 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/presentproto_git.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/presentproto_git.bb @@ -9,16 +9,14 @@ DESCRIPTION = "The Present extension provides a way for applications to update t LICENSE = "GPLv2" -SRCREV = "24f3a56e541b0a9e6c6ee76081f441221a120ef9" -PV = "1.0+git${SRCPV}" +SRCREV = "bfdc7e052302c79c5803ad95a73c9b63b350c40c" +PV = "1.1+git${SRCPV}" LIC_FILES_CHKSUM = "file://COPYING;md5=47e508ca280fde97906eacb77892c3ac" SRC_URI = "git://anongit.freedesktop.org/git/xorg/proto/presentproto" S = "${WORKDIR}/git" -PR = "r1" - inherit autotools BBCLASSEXTEND = "native" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.29.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.29.bb deleted file mode 100644 index 412b6a277..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.29.bb +++ /dev/null @@ -1,19 +0,0 @@ -require xorg-proto-common.inc - -SUMMARY = "Xlib: C Language X interface headers" - -DESCRIPTION = "This package provides the basic headers for the X Window \ -System." - -LICENSE = "MIT & MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=b9e051107d5628966739a0b2e9b32676" - -PE = "1" - -SRC_URI += "file://xproto_fix_for_x32.patch" - -EXTRA_OECONF_append = " --enable-specs=no" -BBCLASSEXTEND = "native nativesdk" - -SRC_URI[md5sum] = "eeeae1f47d43a33ef0d5c56727410326" -SRC_URI[sha256sum] = "6c1a477092ca73233902b8d5f33012635c4b0208f17e7833cc7efe5c93ba9f8a" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.31.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.31.bb new file mode 100644 index 000000000..febcc6792 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-proto/xproto_7.0.31.bb @@ -0,0 +1,19 @@ +require xorg-proto-common.inc + +SUMMARY = "Xlib: C Language X interface headers" + +DESCRIPTION = "This package provides the basic headers for the X Window \ +System." + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=b9e051107d5628966739a0b2e9b32676" + +PE = "1" + +SRC_URI += "file://xproto_fix_for_x32.patch" + +EXTRA_OECONF_append = " --enable-specs=no" +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "16791f7ca8c51a20608af11702e51083" +SRC_URI[sha256sum] = "c6f9747da0bd3a95f86b17fb8dd5e717c8f3ab7f0ece3ba1b247899ec1ef7747" diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.0.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.0.bb deleted file mode 100644 index 26cf50f2f..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.0.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "X autotools macros" - -DESCRIPTION = "M4 autotools macros used by various X.org programs." - -require xorg-util-common.inc - -LICENSE = "MIT & MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=1970511fddd439b07a6ba789d28ff662" - -PE = "1" - -SRC_URI[md5sum] = "40e1caa49a71a26e0aa68ddd00203717" -SRC_URI[sha256sum] = "0d4df51b29023daf2f63aebf3ebc638ea88efedfd560ab5866741ab3f92acaa1" - -# ${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/import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.1.bb new file mode 100644 index 000000000..b39d78756 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-util/util-macros_1.19.1.bb @@ -0,0 +1,19 @@ +SUMMARY = "X autotools macros" + +DESCRIPTION = "M4 autotools macros used by various X.org programs." + +require xorg-util-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=1970511fddd439b07a6ba789d28ff662" + +PE = "1" + +SRC_URI[md5sum] = "3f8a8e6100556f7f28e469809805dee8" +SRC_URI[sha256sum] = "472ad0e41d1e0abf5ecafd29460bf1b8d47e53d4b7d3abf1f66d02dc576547b8" + +# ${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/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/10-preload-modules.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/10-preload-modules.conf deleted file mode 100644 index 72e4fbf59..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/10-preload-modules.conf +++ /dev/null @@ -1,9 +0,0 @@ -Section "Module" - Load "fbdevhw" - Load "fb" - Load "shadow" - Load "shadowfb" - Load "int10" - Load "vbe" - Load "vgahw" -EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuarm/xorg.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuarm/xorg.conf index 629ae214e..f4cd139e8 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuarm/xorg.conf +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuarm/xorg.conf @@ -2,34 +2,6 @@ Section "Files" EndSection -Section "InputDevice" - Identifier "Generic Keyboard" - Driver "evdev" - Option "CoreKeyboard" - Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" - Option "XkbRules" "xorg" - Option "XkbModel" "evdev" - Option "XkbLayout" "us" -EndSection - -Section "InputDevice" - Identifier "Configured Mouse" - Driver "mouse" - Option "CorePointer" - Option "Device" "/dev/input/mice" - Option "Protocol" "ImPS/2" - Option "ZAxisMapping" "4 5" - Option "Emulate3Buttons" "true" -EndSection - -Section "InputDevice" - Identifier "Qemu Tablet" - Driver "evdev" - Option "CorePointer" - Option "Device" "/dev/input/touchscreen0" - Option "USB" "on" -EndSection - Section "Device" Identifier "Graphics Controller" Driver "fbdev" @@ -62,8 +34,5 @@ EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" - InputDevice "Generic Keyboard" - # InputDevice "Configured Mouse" - InputDevice "QEMU Tablet" Option "AllowEmptyInput" "no" EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf index e6c8b514e..1d3c64f62 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips/xorg.conf @@ -2,34 +2,6 @@ Section "Files" EndSection -Section "InputDevice" - Identifier "Generic Keyboard" - Driver "evdev" - Option "CoreKeyboard" - Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" - Option "XkbRules" "xorg" - Option "XkbModel" "evdev" - Option "XkbLayout" "us" -EndSection - -Section "InputDevice" - Identifier "Configured Mouse" - Driver "mouse" - Option "CorePointer" - Option "Device" "/dev/input/mice" - Option "Protocol" "ImPS/2" - Option "ZAxisMapping" "4 5" - Option "Emulate3Buttons" "true" -EndSection - -Section "InputDevice" - Identifier "Qemu Tablet" - Driver "evdev" - Option "CorePointer" - Option "Device" "/dev/input/touchscreen0" - Option "USB" "on" -EndSection - Section "Device" Identifier "Graphics Controller" Driver "fbdev" @@ -63,8 +35,5 @@ EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" - InputDevice "Generic Keyboard" - # InputDevice "Configured Mouse" - InputDevice "QEMU Tablet" Option "AllowEmptyInput" "no" EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf index 629ae214e..f4cd139e8 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemumips64/xorg.conf @@ -2,34 +2,6 @@ Section "Files" EndSection -Section "InputDevice" - Identifier "Generic Keyboard" - Driver "evdev" - Option "CoreKeyboard" - Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" - Option "XkbRules" "xorg" - Option "XkbModel" "evdev" - Option "XkbLayout" "us" -EndSection - -Section "InputDevice" - Identifier "Configured Mouse" - Driver "mouse" - Option "CorePointer" - Option "Device" "/dev/input/mice" - Option "Protocol" "ImPS/2" - Option "ZAxisMapping" "4 5" - Option "Emulate3Buttons" "true" -EndSection - -Section "InputDevice" - Identifier "Qemu Tablet" - Driver "evdev" - Option "CorePointer" - Option "Device" "/dev/input/touchscreen0" - Option "USB" "on" -EndSection - Section "Device" Identifier "Graphics Controller" Driver "fbdev" @@ -62,8 +34,5 @@ EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" - InputDevice "Generic Keyboard" - # InputDevice "Configured Mouse" - InputDevice "QEMU Tablet" Option "AllowEmptyInput" "no" EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuppc/xorg.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuppc/xorg.conf index 629ae214e..f4cd139e8 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuppc/xorg.conf +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemuppc/xorg.conf @@ -2,34 +2,6 @@ Section "Files" EndSection -Section "InputDevice" - Identifier "Generic Keyboard" - Driver "evdev" - Option "CoreKeyboard" - Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" - Option "XkbRules" "xorg" - Option "XkbModel" "evdev" - Option "XkbLayout" "us" -EndSection - -Section "InputDevice" - Identifier "Configured Mouse" - Driver "mouse" - Option "CorePointer" - Option "Device" "/dev/input/mice" - Option "Protocol" "ImPS/2" - Option "ZAxisMapping" "4 5" - Option "Emulate3Buttons" "true" -EndSection - -Section "InputDevice" - Identifier "Qemu Tablet" - Driver "evdev" - Option "CorePointer" - Option "Device" "/dev/input/touchscreen0" - Option "USB" "on" -EndSection - Section "Device" Identifier "Graphics Controller" Driver "fbdev" @@ -62,8 +34,5 @@ EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" - InputDevice "Generic Keyboard" - # InputDevice "Configured Mouse" - InputDevice "QEMU Tablet" Option "AllowEmptyInput" "no" EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemush4/xorg.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemush4/xorg.conf index 629ae214e..f4cd139e8 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemush4/xorg.conf +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemush4/xorg.conf @@ -2,34 +2,6 @@ Section "Files" EndSection -Section "InputDevice" - Identifier "Generic Keyboard" - Driver "evdev" - Option "CoreKeyboard" - Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" - Option "XkbRules" "xorg" - Option "XkbModel" "evdev" - Option "XkbLayout" "us" -EndSection - -Section "InputDevice" - Identifier "Configured Mouse" - Driver "mouse" - Option "CorePointer" - Option "Device" "/dev/input/mice" - Option "Protocol" "ImPS/2" - Option "ZAxisMapping" "4 5" - Option "Emulate3Buttons" "true" -EndSection - -Section "InputDevice" - Identifier "Qemu Tablet" - Driver "evdev" - Option "CorePointer" - Option "Device" "/dev/input/touchscreen0" - Option "USB" "on" -EndSection - Section "Device" Identifier "Graphics Controller" Driver "fbdev" @@ -62,8 +34,5 @@ EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" - InputDevice "Generic Keyboard" - # InputDevice "Configured Mouse" - InputDevice "QEMU Tablet" Option "AllowEmptyInput" "no" EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf index bbda9eaa6..c12d92c20 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf @@ -2,34 +2,6 @@ Section "Files" EndSection -Section "InputDevice" - Identifier "Generic Keyboard" - Driver "evdev" - Option "CoreKeyboard" - Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" - Option "XkbRules" "xorg" - Option "XkbModel" "evdev" - Option "XkbLayout" "us" -EndSection - -Section "InputDevice" - Identifier "Configured Mouse" - Driver "vmmouse" - Option "CorePointer" - Option "Device" "/dev/input/mice" - Option "Protocol" "ImPS/2" - Option "ZAxisMapping" "4 5" - Option "Emulate3Buttons" "true" -EndSection - -Section "InputDevice" - Identifier "Qemu Tablet" - Driver "evdev" - Option "CorePointer" - Option "Device" "/dev/input/touchscreen0" - Option "USB" "on" -EndSection - Section "Monitor" Identifier "Generic Monitor" Option "DPMS" @@ -57,8 +29,5 @@ EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" - InputDevice "Generic Keyboard" - # InputDevice "Configured Mouse" - InputDevice "QEMU Tablet" Option "AllowEmptyInput" "no" EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf index bbda9eaa6..c12d92c20 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf @@ -2,34 +2,6 @@ Section "Files" EndSection -Section "InputDevice" - Identifier "Generic Keyboard" - Driver "evdev" - Option "CoreKeyboard" - Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" - Option "XkbRules" "xorg" - Option "XkbModel" "evdev" - Option "XkbLayout" "us" -EndSection - -Section "InputDevice" - Identifier "Configured Mouse" - Driver "vmmouse" - Option "CorePointer" - Option "Device" "/dev/input/mice" - Option "Protocol" "ImPS/2" - Option "ZAxisMapping" "4 5" - Option "Emulate3Buttons" "true" -EndSection - -Section "InputDevice" - Identifier "Qemu Tablet" - Driver "evdev" - Option "CorePointer" - Option "Device" "/dev/input/touchscreen0" - Option "USB" "on" -EndSection - Section "Monitor" Identifier "Generic Monitor" Option "DPMS" @@ -57,8 +29,5 @@ EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" - InputDevice "Generic Keyboard" - # InputDevice "Configured Mouse" - InputDevice "QEMU Tablet" Option "AllowEmptyInput" "no" EndSection diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb index e07c204c7..4c442bc71 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb @@ -7,10 +7,6 @@ PR = "r33" SRC_URI = "file://xorg.conf" -SRC_URI_append_libc-musl = "\ - file://10-preload-modules.conf \ -" - S = "${WORKDIR}" CONFFILES_${PN} = "${sysconfdir}/X11/xorg.conf" @@ -25,7 +21,3 @@ do_install () { install -m 0644 ${WORKDIR}/xorg.conf ${D}/${sysconfdir}/X11/ fi } - -do_install_append_libc-musl () { - install -Dm 0644 ${WORKDIR}/10-preload-modules.conf ${D}/${sysconfdir}/X11/xorg.conf.d/10-preload-modules.conf -} diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc index 29503b1a5..1650c7994 100644 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc @@ -27,7 +27,7 @@ inherit distro_features_check REQUIRED_DISTRO_FEATURES = "x11" PROTO_DEPS = "randrproto renderproto fixesproto damageproto xextproto xproto xf86dgaproto xf86miscproto xf86vidmodeproto compositeproto recordproto resourceproto videoproto scrnsaverproto xineramaproto fontsproto kbproto inputproto bigreqsproto xcmiscproto presentproto" -LIB_DEPS = "pixman libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess" +LIB_DEPS = "pixman libxfont2 xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess" DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} font-util" # Split out some modules and extensions from the main package @@ -71,7 +71,7 @@ PACKAGES =+ "${PN}-sdl \ SUMMARY_xf86-video-modesetting = "X.Org X server -- modesetting display driver" INSANE_SKIP_${MLPREFIX}xf86-video-modesetting = "xorg-driver-abi" -XSERVER_RRECOMMENDS = "xkeyboard-config rgb xserver-xf86-config xkbcomp" +XSERVER_RRECOMMENDS = "xkeyboard-config rgb xserver-xf86-config xkbcomp xf86-input-libinput" RRECOMMENDS_${PN} += "${XSERVER_RRECOMMENDS}" RRECOMMENDS_${PN}-xwayland += "${XSERVER_RRECOMMENDS}" RDEPENDS_${PN}-xvfb += "xkeyboard-config" @@ -117,12 +117,14 @@ EXTRA_OECONF += "--with-fop=no \ --sysconfdir=/etc/X11 \ --localstatedir=/var \ --with-xkb-output=/var/lib/xkb \ + WAYLAND_PROTOCOLS_SYSROOT_DIR=${RECIPE_SYSROOT} \ " +OPENGL_PKGCONFIGS = "dri glx glamor dri3 xshmfence" PACKAGECONFIG ??= "dri2 udev ${XORG_CRYPTO} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'dri glx', '', d)} \ - ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "xwayland", "", d)} \ - ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "systemd", "", d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '${OPENGL_PKGCONFIGS}', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'xwayland', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \ " PACKAGECONFIG[udev] = "--enable-config-udev,--disable-config-udev,udev" @@ -138,7 +140,7 @@ PACKAGECONFIG[xmlto] = "--with-xmlto, --without-xmlto, xmlto-native docbook-xml- PACKAGECONFIG[systemd-logind] = "--enable-systemd-logind=yes,--enable-systemd-logind=no,dbus," PACKAGECONFIG[systemd] = "--with-systemd-daemon,--without-systemd-daemon,systemd" PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,xineramaproto" -PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland,wayland libepoxy" +PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland,wayland wayland-native wayland-protocols libepoxy" # Xorg requires a SHA1 implementation, pick one XORG_CRYPTO ??= "openssl" @@ -170,10 +172,10 @@ python populate_packages_prepend() { shell=True, env=newenv, stdout=subprocess.PIPE) stdout, stderr = p.communicate() output = stdout.decode("utf-8").split(".")[0] - mlprefix = d.getVar('MLPREFIX', True) or '' + mlprefix = d.getVar('MLPREFIX') or '' return "%sxorg-abi-%s-%s" % (mlprefix, name, output) - pn = d.getVar("PN", True) + pn = d.getVar("PN") d.appendVar("RPROVIDES_" + pn, " " + get_abi("input")) d.appendVar("RPROVIDES_" + pn, " " + get_abi("video")) } diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch new file mode 100644 index 000000000..16ec3edb3 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch @@ -0,0 +1,61 @@ +Discover monotonic clock using compile-time check + +monotonic clock check does not work when cross-compiling. + +Upstream-Status: Denied [Does not work on OpenBSD] +Signed-off-by: Jussi Kukkonen + + + +Original patch follows: + +When xorg-xserver is being cross-compiled, there is currently no way +for us to detect whether the monotonic clock is available on the +target system, because we aren't able to run a test program on the host +system. Currently, in this situation, we default to not use the +monotonic clock. One problem with this situation is that the user will +be treated as idle when the date is updated. + +To fix this situation, we now use a compile-time check to detect whether the +monotonic clock is available. This check can run just fine when we are +cross-compiling. + +Signed-off-by: David James +--- + configure.ac | 17 +++++++---------- + 1 file changed, 7 insertions(+), 10 deletions(-) + +diff --git a/configure.ac b/configure.ac +index f7ab48c..26e85cd 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1048,19 +1048,16 @@ if ! test "x$have_clock_gettime" = xno; then + CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L" + fi + +- AC_RUN_IFELSE([AC_LANG_SOURCE([ ++ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #include +- +-int main(int argc, char *argv[[]]) { +- struct timespec tp; +- +- if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0) ++#include ++int main() { ++#if !(defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK >= 0 && defined(CLOCK_MONOTONIC)) ++ #error No monotonic clock ++#endif + return 0; +- else +- return 1; + } +- ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no], +- [MONOTONIC_CLOCK="cross compiling"]) ++]])],[MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no]) + + LIBS="$LIBS_SAVE" + CPPFLAGS="$CPPFLAGS_SAVE" +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0002-configure.ac-Fix-wayland-scanner-and-protocols-locat.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0002-configure.ac-Fix-wayland-scanner-and-protocols-locat.patch new file mode 100644 index 000000000..eafd07a5f --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0002-configure.ac-Fix-wayland-scanner-and-protocols-locat.patch @@ -0,0 +1,38 @@ +From 963428f914c42270d3312d4f0c0840565521534e Mon Sep 17 00:00:00 2001 +From: Jussi Kukkonen +Date: Wed, 16 Nov 2016 00:41:51 +0200 +Subject: [PATCH 2/2] configure.ac: Fix wayland-scanner and protocols locations + +We want to use the wayland-scanner in path (native sysroot) +instead of using pkg-config which gives us target paths. + +The protocols paths on the other hand need to be prefixed with the +(allarch) sysroot because, again, pkg-config gives us target paths. + +Upstream-Status: Inappropriate [embedded specific] +Signed-off-by: Jussi Kukkonen +--- + configure.ac | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 58f1567..383a7df 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2525,11 +2525,9 @@ if test "x$XWAYLAND" = xyes; then + AC_MSG_ERROR([Xwayland requires CLOCK_MONOTONIC support.]) + fi + +- WAYLAND_PREFIX=`$PKG_CONFIG --variable=prefix wayland-client` +- AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner],, +- [${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH]) ++ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) + +- AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-protocols`) ++ AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, ${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`) + fi + + +-- +2.1.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch new file mode 100644 index 000000000..beed6cb4a --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch @@ -0,0 +1,47 @@ +From cf407b16cd65ad6e26a9c8e5984e163409a5c0f7 Mon Sep 17 00:00:00 2001 +From: Prabhu Sundararaj +Date: Mon, 30 Jan 2017 16:32:06 -0600 +Subject: [PATCH] Remove check for useSIGIO option + +Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of useSIGIO +option. + +As the xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO +and OsReleaseSIGIO. + +No longer the check for useSIGIO is needed + +Upstream-Status: Pending + +Signed-off-by: Prabhu Sundararaj +--- + hw/xfree86/os-support/shared/sigio.c | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/hw/xfree86/os-support/shared/sigio.c b/hw/xfree86/os-support/shared/sigio.c +index 884a71c..be76498 100644 +--- a/hw/xfree86/os-support/shared/sigio.c ++++ b/hw/xfree86/os-support/shared/sigio.c +@@ -185,9 +185,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure) + int i; + int installed = FALSE; + +- if (!xf86Info.useSIGIO) +- return 0; +- + for (i = 0; i < MAX_FUNCS; i++) { + if (!xf86SigIOFuncs[i].f) { + if (xf86IsPipe(fd)) +@@ -256,9 +253,6 @@ xf86RemoveSIGIOHandler(int fd) + int max; + int ret; + +- if (!xf86Info.useSIGIO) +- return 0; +- + max = 0; + ret = 0; + for (i = 0; i < MAX_FUNCS; i++) { +-- +2.7.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-modesetting-Fix-16-bit-depth-bpp-mode.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-modesetting-Fix-16-bit-depth-bpp-mode.patch new file mode 100644 index 000000000..5243761f1 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-modesetting-Fix-16-bit-depth-bpp-mode.patch @@ -0,0 +1,46 @@ +From 5028ef46ff4ab0930224b71024a7349b05610d42 Mon Sep 17 00:00:00 2001 +From: Stefan Agner +Date: Thu, 22 Dec 2016 15:41:06 +0100 +Subject: [PATCH] modesetting: Fix 16 bit depth/bpp mode + +When setting DefaultDepth to 16 in the Screen section, the current +code requests a 32 bpp framebuffer, however the X-Server seems to +assumes 16 bpp. + +Fixes commit 21217d02168d ("modesetting: Implement 32->24 bpp +conversion in shadow update") + +Signed-off-by: Stefan Agner + +Upstream-Status: Submitted [1] + +[1] https://lists.x.org/archives/xorg-devel/2016-December/052113.html +--- + hw/xfree86/drivers/modesetting/driver.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/hw/xfree86/drivers/modesetting/driver.c b/hw/xfree86/drivers/modesetting/driver.c +index d7030e5..647ad83 100644 +--- a/hw/xfree86/drivers/modesetting/driver.c ++++ b/hw/xfree86/drivers/modesetting/driver.c +@@ -930,7 +930,7 @@ PreInit(ScrnInfoPtr pScrn, int flags) + "Using 24bpp hw front buffer with 32bpp shadow\n"); + defaultbpp = 32; + } else { +- ms->drmmode.kbpp = defaultbpp; ++ ms->drmmode.kbpp = 0; + } + bppflags = PreferConvert24to32 | SupportConvert24to32 | Support32bppFb; + +@@ -950,6 +950,8 @@ PreInit(ScrnInfoPtr pScrn, int flags) + return FALSE; + } + xf86PrintDepthBpp(pScrn); ++ if (!ms->drmmode.kbpp) ++ ms->drmmode.kbpp = pScrn->bitsPerPixel; + + /* Process the options */ + xf86CollectOptions(pScrn, NULL); +-- +2.7.4 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-1.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-1.patch new file mode 100644 index 000000000..23c804989 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-1.patch @@ -0,0 +1,76 @@ +From 215f894965df5fb0bb45b107d84524e700d2073c Mon Sep 17 00:00:00 2001 +From: Michal Srb +Date: Wed, 24 May 2017 15:54:40 +0300 +Subject: [PATCH] dix: Disallow GenericEvent in SendEvent request. + +The SendEvent request holds xEvent which is exactly 32 bytes long, no more, +no less. Both ProcSendEvent and SProcSendEvent verify that the received data +exactly match the request size. However nothing stops the client from passing +in event with xEvent::type = GenericEvent and any value of +xGenericEvent::length. + +In the case of ProcSendEvent, the event will be eventually passed to +WriteEventsToClient which will see that it is Generic event and copy the +arbitrary length from the receive buffer (and possibly past it) and send it to +the other client. This allows clients to copy unitialized heap memory out of X +server or to crash it. + +In case of SProcSendEvent, it will attempt to swap the incoming event by +calling a swapping function from the EventSwapVector array. The swapped event +is written to target buffer, which in this case is local xEvent variable. The +xEvent variable is 32 bytes long, but the swapping functions for GenericEvents +expect that the target buffer has size matching the size of the source +GenericEvent. This allows clients to cause stack buffer overflows. + +Signed-off-by: Michal Srb +Reviewed-by: Peter Hutterer +Signed-off-by: Peter Hutterer + +CVE: CVE-2017-10971 + +Upstream-Status: Backport [https://cgit.freedesktop.org/xorg/xserver/commit/?id=215f894965df5fb0bb45b107d84524e700d2073c] + +Signed-off-by: Jackie Huang +--- + dix/events.c | 6 ++++++ + dix/swapreq.c | 7 +++++++ + 2 files changed, 13 insertions(+) + +diff --git a/dix/events.c b/dix/events.c +index 3e3a01e..d3a33ea 100644 +--- a/dix/events.c ++++ b/dix/events.c +@@ -5366,6 +5366,12 @@ ProcSendEvent(ClientPtr client) + client->errorValue = stuff->event.u.u.type; + return BadValue; + } ++ /* Generic events can have variable size, but SendEvent request holds ++ exactly 32B of event data. */ ++ if (stuff->event.u.u.type == GenericEvent) { ++ client->errorValue = stuff->event.u.u.type; ++ return BadValue; ++ } + if (stuff->event.u.u.type == ClientMessage && + stuff->event.u.u.detail != 8 && + stuff->event.u.u.detail != 16 && stuff->event.u.u.detail != 32) { +diff --git a/dix/swapreq.c b/dix/swapreq.c +index 719e9b8..6785059 100644 +--- a/dix/swapreq.c ++++ b/dix/swapreq.c +@@ -292,6 +292,13 @@ SProcSendEvent(ClientPtr client) + swapl(&stuff->destination); + swapl(&stuff->eventMask); + ++ /* Generic events can have variable size, but SendEvent request holds ++ exactly 32B of event data. */ ++ if (stuff->event.u.u.type == GenericEvent) { ++ client->errorValue = stuff->event.u.u.type; ++ return BadValue; ++ } ++ + /* Swap event */ + proc = EventSwapVector[stuff->event.u.u.type & 0177]; + if (!proc || proc == NotImplemented) /* no swapping proc; invalid event type? */ +-- +1.7.9.5 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-2.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-2.patch new file mode 100644 index 000000000..5c9887afa --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-2.patch @@ -0,0 +1,55 @@ +From 8caed4df36b1f802b4992edcfd282cbeeec35d9d Mon Sep 17 00:00:00 2001 +From: Michal Srb +Date: Wed, 24 May 2017 15:54:41 +0300 +Subject: [PATCH] Xi: Verify all events in ProcXSendExtensionEvent. + +The requirement is that events have type in range +EXTENSION_EVENT_BASE..lastEvent, but it was tested +only for first event of all. + +Signed-off-by: Michal Srb +Reviewed-by: Peter Hutterer +Signed-off-by: Peter Hutterer + +CVE: CVE-2017-10971 + +Upstream-Status: Backport [https://cgit.freedesktop.org/xorg/xserver/commit/?id=8caed4df36b1f802b4992edcfd282cbeeec35d9d] + +Signed-off-by: Jackie Huang +--- + Xi/sendexev.c | 12 +++++++----- + 1 file changed, 7 insertions(+), 5 deletions(-) + +diff --git a/Xi/sendexev.c b/Xi/sendexev.c +index 1cf118a..5e63bfc 100644 +--- a/Xi/sendexev.c ++++ b/Xi/sendexev.c +@@ -117,7 +117,7 @@ SProcXSendExtensionEvent(ClientPtr client) + int + ProcXSendExtensionEvent(ClientPtr client) + { +- int ret; ++ int ret, i; + DeviceIntPtr dev; + xEvent *first; + XEventClass *list; +@@ -141,10 +141,12 @@ ProcXSendExtensionEvent(ClientPtr client) + /* The client's event type must be one defined by an extension. */ + + first = ((xEvent *) &stuff[1]); +- if (!((EXTENSION_EVENT_BASE <= first->u.u.type) && +- (first->u.u.type < lastEvent))) { +- client->errorValue = first->u.u.type; +- return BadValue; ++ for (i = 0; i < stuff->num_events; i++) { ++ if (!((EXTENSION_EVENT_BASE <= first[i].u.u.type) && ++ (first[i].u.u.type < lastEvent))) { ++ client->errorValue = first[i].u.u.type; ++ return BadValue; ++ } + } + + list = (XEventClass *) (first + stuff->num_events); +-- +1.7.9.5 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-3.patch b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-3.patch new file mode 100644 index 000000000..54ba48102 --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg/CVE-2017-10971-3.patch @@ -0,0 +1,50 @@ +From ba336b24052122b136486961c82deac76bbde455 Mon Sep 17 00:00:00 2001 +From: Michal Srb +Date: Wed, 24 May 2017 15:54:42 +0300 +Subject: [PATCH] Xi: Do not try to swap GenericEvent. + +The SProcXSendExtensionEvent must not attempt to swap GenericEvent because +it is assuming that the event has fixed size and gives the swapping function +xEvent-sized buffer. + +A GenericEvent would be later rejected by ProcXSendExtensionEvent anyway. + +Signed-off-by: Michal Srb +Reviewed-by: Peter Hutterer +Signed-off-by: Peter Hutterer + +CVE: CVE-2017-10971 + +Upstream-Status: Backport [https://cgit.freedesktop.org/xorg/xserver/commit/?id=ba336b24052122b136486961c82deac76bbde455] + +Signed-off-by: Jackie Huang +--- + Xi/sendexev.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/Xi/sendexev.c b/Xi/sendexev.c +index 5e63bfc..5c2e0fc 100644 +--- a/Xi/sendexev.c ++++ b/Xi/sendexev.c +@@ -95,9 +95,17 @@ SProcXSendExtensionEvent(ClientPtr client) + + eventP = (xEvent *) &stuff[1]; + for (i = 0; i < stuff->num_events; i++, eventP++) { ++ if (eventP->u.u.type == GenericEvent) { ++ client->errorValue = eventP->u.u.type; ++ return BadValue; ++ } ++ + proc = EventSwapVector[eventP->u.u.type & 0177]; +- if (proc == NotImplemented) /* no swapping proc; invalid event type? */ ++ /* no swapping proc; invalid event type? */ ++ if (proc == NotImplemented) { ++ client->errorValue = eventP->u.u.type; + return BadValue; ++ } + (*proc) (eventP, &eventT); + *eventP = eventT; + } +-- +1.7.9.5 + diff --git a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.18.4.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.18.4.bb deleted file mode 100644 index 670056579..000000000 --- a/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.18.4.bb +++ /dev/null @@ -1,27 +0,0 @@ -require xserver-xorg.inc - -SRC_URI += "file://musl-arm-inb-outb.patch" -SRC_URI[md5sum] = "d4842dfe3bd9a9d062f2fa1df9104a46" -SRC_URI[sha256sum] = "278459b2c31d61a15655d95a72fb79930c480a6bb8cf9226e48a07df8b1d31c8" - -# 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/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb new file mode 100644 index 000000000..0d6df325e --- /dev/null +++ b/import-layers/yocto-poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bb @@ -0,0 +1,35 @@ +require xserver-xorg.inc + +SRC_URI += "file://musl-arm-inb-outb.patch \ + file://0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch \ + file://0002-configure.ac-Fix-wayland-scanner-and-protocols-locat.patch \ + file://0003-modesetting-Fix-16-bit-depth-bpp-mode.patch \ + file://0003-Remove-check-for-useSIGIO-option.patch \ + file://CVE-2017-10971-1.patch \ + file://CVE-2017-10971-2.patch \ + file://CVE-2017-10971-3.patch \ + " +SRC_URI[md5sum] = "caa8ee7b2950abbf734347d137529fb6" +SRC_URI[sha256sum] = "79ae2cf39d3f6c4a91201d8dad549d1d774b3420073c5a70d390040aa965a7fb" + +# 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