From f956591bbe246fae0dc4ed9b6d911bcec526463f Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Thu, 13 Oct 2016 13:06:09 +0300 Subject: Revert "tegra: update to latest vibrante pdk" Problems with eglfs, so revert back to previous PDK. This reverts commit 323408406d9133a5462a24fea4ec86e649088180. Change-Id: I3ee36809cb823aefdc03f8a24d052c2a76f308db Reviewed-by: Teemu Holappa --- b2qt-init-build-env | 3 + conf/bblayers.conf.nvidia-logan.sample | 53 ++++++++ conf/distro/include/nvidia-logan.conf | 66 ++++++++++ conf/distro/include/tegra-t18x.conf | 18 ++- conf/distro/include/tegra.inc | 17 +++ .../recipes/libdrm-nv/libdrm-nv/libdrm.pc | 11 ++ .../recipes/libdrm-nv/libdrm-nv_1.0.bbappend | 40 +++++++ meta-vib3-extras/conf/layer.conf | 40 +++++++ .../recipes/graphics-fw/graphics-fw_1.0.bbappend | 34 ++++++ .../linux-libc-headers_4.%.bbappend | 14 +++ ...LLVMLinux-use-static-inline-in-ARM-ftrace.patch | 52 ++++++++ ...octl-to-wait-for-qgroup-rescan-completion.patch | 124 +++++++++++++++++++ ...001-Change-extern-inline-to-static-inline.patch | 133 +++++++++++++++++++++ .../Fix_compile_error_in_tegra_drivers.patch | 20 ++++ .../Fix_compiler_error_in_tegra12_lock.patch | 11 ++ .../recipes/linux/linux-nvidia_3.10.bbappend | 71 +++++++++++ meta-vib3-extras/recipes/qt5/qtbase_git.bbappend | 31 +++++ .../0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch | 18 +++ .../recipes/systemd/systemd_%.bbappend | 2 +- .../recipes/wayland-nv/wayland-nv.bbappend | 49 ++++++++ .../wayland-nv/wayland-nv/wayland-client.pc | 12 ++ .../wayland-nv/wayland-nv/wayland-cursor.pc | 10 ++ .../recipes/wayland-nv/wayland-nv/wayland-egl.pc | 11 ++ .../wayland-nv/wayland-nv/wayland-server.pc | 12 ++ .../wayland/wayland/always-build-scanner.patch | 105 ---------------- .../recipes/wayland/wayland_%.bbappend | 36 ------ meta-vib4-extras/recipes/weston/weston-nv.bbappend | 32 +++++ .../weston/disable-wayland-scanner-pkg-check.patch | 13 -- meta-vib4-extras/recipes/weston/weston_%.bbappend | 36 ------ scripts/manifest.xml | 9 +- scripts/setup-environment.sh | 3 + scripts/upload.sh | 2 +- 32 files changed, 888 insertions(+), 200 deletions(-) create mode 100644 conf/bblayers.conf.nvidia-logan.sample create mode 100644 conf/distro/include/nvidia-logan.conf create mode 100644 conf/distro/include/tegra.inc create mode 100644 meta-tegra-extras/recipes/libdrm-nv/libdrm-nv/libdrm.pc create mode 100644 meta-tegra-extras/recipes/libdrm-nv/libdrm-nv_1.0.bbappend create mode 100644 meta-vib3-extras/conf/layer.conf create mode 100644 meta-vib3-extras/recipes/graphics-fw/graphics-fw_1.0.bbappend create mode 100644 meta-vib3-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend create mode 100644 meta-vib3-extras/recipes/linux/linux-nvidia/0001-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch create mode 100644 meta-vib3-extras/recipes/linux/linux-nvidia/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch create mode 100644 meta-vib3-extras/recipes/linux/linux-nvidia/0001-Change-extern-inline-to-static-inline.patch create mode 100644 meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compile_error_in_tegra_drivers.patch create mode 100644 meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compiler_error_in_tegra12_lock.patch create mode 100644 meta-vib3-extras/recipes/linux/linux-nvidia_3.10.bbappend create mode 100644 meta-vib3-extras/recipes/qt5/qtbase_git.bbappend create mode 100644 meta-vib4-extras/recipes/systemd/systemd/tegra-t18x/0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch create mode 100644 meta-vib4-extras/recipes/wayland-nv/wayland-nv.bbappend create mode 100644 meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-client.pc create mode 100644 meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-cursor.pc create mode 100644 meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-egl.pc create mode 100644 meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-server.pc delete mode 100644 meta-vib4-extras/recipes/wayland/wayland/always-build-scanner.patch delete mode 100644 meta-vib4-extras/recipes/wayland/wayland_%.bbappend create mode 100644 meta-vib4-extras/recipes/weston/weston-nv.bbappend delete mode 100644 meta-vib4-extras/recipes/weston/weston/disable-wayland-scanner-pkg-check.patch delete mode 100644 meta-vib4-extras/recipes/weston/weston_%.bbappend diff --git a/b2qt-init-build-env b/b2qt-init-build-env index f35e40a..08abc2a 100755 --- a/b2qt-init-build-env +++ b/b2qt-init-build-env @@ -127,6 +127,9 @@ get_groups() { intel-corei7-64) PROJECT_GROUPS="intel" ;; + nvidia-logan) + PROJECT_GROUPS="nvidia-logan" + ;; tegra-x1|tegra-t18x) PROJECT_GROUPS="nvidia-tegra" ;; diff --git a/conf/bblayers.conf.nvidia-logan.sample b/conf/bblayers.conf.nvidia-logan.sample new file mode 100644 index 0000000..9a7272c --- /dev/null +++ b/conf/bblayers.conf.nvidia-logan.sample @@ -0,0 +1,53 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf +# changes incompatibly +POKY_BBLAYERS_CONF_VERSION = "2" + +BBPATH = "${TOPDIR}" +BBFILES ?= "" +BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)) + '/../..')}" + +BBLAYERS ?= " \ + ${BSPDIR}/sources/poky/meta \ + ${BSPDIR}/sources/poky/meta-poky \ + ${BSPDIR}/sources/nvidia-layer/meta-tegra \ + ${BSPDIR}/sources/nvidia-layer/meta-vib3 \ + ${BSPDIR}/sources/meta-openembedded/meta-oe \ + ${BSPDIR}/sources/meta-openembedded/meta-python \ + ${BSPDIR}/sources/meta-openembedded/meta-networking \ + ${BSPDIR}/sources/meta-openembedded/meta-initramfs \ + ${BSPDIR}/sources/meta-openembedded/meta-multimedia \ + ${BSPDIR}/sources/meta-boot2qt \ + ${BSPDIR}/sources/meta-boot2qt/meta-vib3-extras \ + ${BSPDIR}/sources/meta-boot2qt/meta-tegra-extras \ + ${BSPDIR}/sources/meta-mingw \ + ${BSPDIR}/sources/meta-qt5 \ + " diff --git a/conf/distro/include/nvidia-logan.conf b/conf/distro/include/nvidia-logan.conf new file mode 100644 index 0000000..0dc1d84 --- /dev/null +++ b/conf/distro/include/nvidia-logan.conf @@ -0,0 +1,66 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +TARGET_CFLAGS += " -DWIN_INTERFACE_CUSTOM" + +DEFAULTTUNE = "cortexa15hf-neon" + +KERN_DIR ?= '${@os.path.normpath("${TOPDIR}/../sources/jetson-tk1-pro/vibrante-vcm30t124-linux")}' +PLATFORM_TOPDIR ?= '${@os.path.normpath("${TOPDIR}/../sources/jetson-tk1-pro/vibrante-vcm30t124-linux")}' +NVLAYER_DIR ?= "${TOPDIR}/../sources/nvidia-layer" + +MACHINE_EXTRA_INSTALL = "\ + libegl \ + libgles2 \ + tegra-firmware-gk20a \ + graphics-fw \ + libdrm-nv \ +" + +MACHINE_EXTRA_INSTALL_SDK = "\ + libegl-dev \ + libgles2-dev \ + graphics-headers-dev \ + libdrm-nv-dev \ +" + +PREFERRED_PROVIDER_libdrm ?= "libdrm-nv" +PREFERRED_PROVIDER_drm ?= "libdrm-nv" + +BBMASK += "\ + meta-vib3/recipes-kernel/linux-libc-headers \ + meta-vib3/recipes-devtools/binutils \ + meta-vib3/recipes-core/eglibc \ + meta-vib3/recipes-core/systemd \ + meta-vib3/recipes-connectivity \ + meta-vib3/recipes-multimedia/pulseaudio \ + meta-vib3/recipes-core/meta \ + meta-vib3/recipes-core/packagegroups \ + meta-vib3/recipes-devtools/gcc \ + " diff --git a/conf/distro/include/tegra-t18x.conf b/conf/distro/include/tegra-t18x.conf index 34d23a9..a1fad00 100644 --- a/conf/distro/include/tegra-t18x.conf +++ b/conf/distro/include/tegra-t18x.conf @@ -20,13 +20,15 @@ ## ############################################################################# +include conf/distro/include/tegra.inc + OLDEST_KERNEL_aarch64 = "3.18" TARGET_CFLAGS += " -DWIN_INTERFACE_CUSTOM" DISTRO_FEATURES_DEFAULT += "wayland" KERN_DIR ?= '${@os.path.normpath("${TOPDIR}/../sources/vibrante-t186/kernel")}' -PLATFORM_TOPDIR ?= '${@os.path.normpath("${TOPDIR}/../sources/vibrante-t186")}' +PLATFORM_TOPDIR ?= '${@os.path.normpath("${TOPDIR}/../sources/vibrante-t186/vibrante-t186ref-linux")}' NVLAYER_DIR ?= "${TOPDIR}/../sources/nvidia-layer" MACHINE_EXTRA_INSTALL += "\ @@ -46,6 +48,7 @@ MACHINE_EXTRA_INSTALL += "\ virtual/libegl \ virtual/libgles2 \ libdrm-nv \ + asound-conf \ " PREFERRED_PROVIDER_virtual/libgles2 ?= "tegra-drivers" @@ -57,18 +60,21 @@ PREFERRED_PROVIDER_virtual/libgl ?= "tegra-drivers" PREFERRED_PROVIDER_virtual/libgles1 ?= "tegra-drivers" PREFERRED_PROVIDER_virtual/mesa ?= "tegra-drivers" +PREFERRED_PROVIDER_wayland ?= "wayland-nv" +PREFERRED_PROVIDER_wayland-native ?= "wayland-nv" +PREFERRED_PROVIDER_nativesdk-wayland ?= "wayland-nv" + BBMASK += "\ meta-vib4/recipes-connectivity/connman \ - meta-vib4/recipes-core/toybox \ + meta-vib4/recipes-core/busybox \ meta-vib4/recipes-core/images \ + meta-vib4/recipes-core/meta \ meta-vib4/recipes-core/packagegroups \ + meta-vib4/recipes-core/systemd/systemd \ + meta-vib4/recipes-devtools \ meta-vib4/recipes-extended \ meta-vib4/recipes-multimedia/audiomanager \ meta-vib4/recipes-core/glibc \ meta-vib4/recipes-support/lvm2 \ meta-vib4/recipes-kernel/linux-libc-headers \ - meta-vib4/recipes-devtools/binutils \ - meta-vib4/recipes-yocto-ivi/packagegroups \ - meta-vib4/recipes-graphics/wayland/wayland-ivi-extension_%.bbappend \ - meta-vib4/recipes-graphics/wayland/libinput_%.bbappend \ " diff --git a/conf/distro/include/tegra.inc b/conf/distro/include/tegra.inc new file mode 100644 index 0000000..618a634 --- /dev/null +++ b/conf/distro/include/tegra.inc @@ -0,0 +1,17 @@ +python set_nv_drv_version () { + # Boiler plate code to setup bitbake objects + d = e.data + + nv_drv_version = d.getVar('NV_DRV_VER', True) + if nv_drv_version != "ignore": + # FIXME: When we add support to internal builds, both debug and release + # builds will need to be considered + path = d.getVar('PLATFORM_TOPDIR', True) + get_nv_drv_cmd = "strings " + path + "/lib-target/nvidia_drv.so \ +| grep -o -P '(?<=Driver ).*(?=Release)' | awk {'print $1'}" + # Execute cmd + nv_drv_version = bb.process.run(get_nv_drv_cmd)[0].strip() + # Store returned value in NV_DRV_VER + d.setVar('NV_DRV_VER', nv_drv_version) +} + diff --git a/meta-tegra-extras/recipes/libdrm-nv/libdrm-nv/libdrm.pc b/meta-tegra-extras/recipes/libdrm-nv/libdrm-nv/libdrm.pc new file mode 100644 index 0000000..6fe139e --- /dev/null +++ b/meta-tegra-extras/recipes/libdrm-nv/libdrm-nv/libdrm.pc @@ -0,0 +1,11 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: libdrm +Description: Userspace interface to kernel DRM services +Version: 2.4.66 +Libs: -L${libdir} -ldrm +Cflags: -I${includedir} -I${includedir}/libdrm + diff --git a/meta-tegra-extras/recipes/libdrm-nv/libdrm-nv_1.0.bbappend b/meta-tegra-extras/recipes/libdrm-nv/libdrm-nv_1.0.bbappend new file mode 100644 index 0000000..f346a6b --- /dev/null +++ b/meta-tegra-extras/recipes/libdrm-nv/libdrm-nv_1.0.bbappend @@ -0,0 +1,40 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +FILESEXTRAPATHS_append := "${THISDIR}/${PN}:" + +SRC_URI += " file://libdrm.pc" +SRC_URI_remove_nvidia-logan = "file://${PLATFORM_TOPDIR}/include/drm_fourcc.h" + +do_install_append() { + install -d ${D}/usr/lib/pkgconfig + install -m 0776 ${WORKDIR}/libdrm.pc ${D}/usr/lib/pkgconfig/libdrm.pc +} + +PACKAGES += "${PN}-dev" diff --git a/meta-vib3-extras/conf/layer.conf b/meta-vib3-extras/conf/layer.conf new file mode 100644 index 0000000..1a2dadb --- /dev/null +++ b/meta-vib3-extras/conf/layer.conf @@ -0,0 +1,40 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +# We have a conf and classes directory, append to BBPATH +BBPATH .= ":${LAYERDIR}" + +# We have a recipes directory, add to BBFILES +BBFILES += "${LAYERDIR}/recipes*/*/*.bb \ + ${LAYERDIR}/recipes*/*/*.bbappend \ +" + +BBFILE_COLLECTIONS += "b2qt_vib3" +BBFILE_PATTERN_b2qt_vib3 := "^${LAYERDIR}/" +BBFILE_PRIORITY_b2qt_vib3 = "20" diff --git a/meta-vib3-extras/recipes/graphics-fw/graphics-fw_1.0.bbappend b/meta-vib3-extras/recipes/graphics-fw/graphics-fw_1.0.bbappend new file mode 100644 index 0000000..30e2acc --- /dev/null +++ b/meta-vib3-extras/recipes/graphics-fw/graphics-fw_1.0.bbappend @@ -0,0 +1,34 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +SRC_URI_remove = " \ + file://${PLATFORM_TOPDIR}/lib-target/NETB_img.bin \ + file://${PLATFORM_TOPDIR}/lib-target/nvhost_msenc031.fw \ + file://${PLATFORM_TOPDIR}/lib-target/vic03_ucode.bin \ +" diff --git a/meta-vib3-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend b/meta-vib3-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend new file mode 100644 index 0000000..661e595 --- /dev/null +++ b/meta-vib3-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend @@ -0,0 +1,14 @@ + +# Use our kernel instead of yocto which defaults to mainline 3.10. +# Commit id of our kernel's include/uapi directory in kernel tree - +# 8c37e1bfe7dd26a9d4cf4510460a75264c906444 +SRC_URI = "file://${KERN_DIR}/linux.tar.bz2" + +# Extracting linux.tar.bz2 creates directories +# /vibrante-oss-src/kernel +S = "${WORKDIR}/vibrante-oss-src/kernel" + +FILESEXTRAPATHS_prepend := "${THISDIR}/../linux/linux-nvidia:" +SRC_URI += "\ + file://0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch \ + " diff --git a/meta-vib3-extras/recipes/linux/linux-nvidia/0001-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch b/meta-vib3-extras/recipes/linux/linux-nvidia/0001-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch new file mode 100644 index 0000000..ee61a74 --- /dev/null +++ b/meta-vib3-extras/recipes/linux/linux-nvidia/0001-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch @@ -0,0 +1,52 @@ +From ef372125fd64fc181869be4cf528488f9e8b46c2 Mon Sep 17 00:00:00 2001 +From: Behan Webster +Date: Wed, 24 Sep 2014 01:06:46 +0100 +Subject: [PATCH] ARM: 8158/1: LLVMLinux: use static inline in ARM ftrace.h + +With compilers which follow the C99 standard (like modern versions of gcc and +clang), "extern inline" does the wrong thing (emits code for an externally +linkable version of the inline function). In this case using static inline +and removing the NULL version of return_address in return_address.c does +the right thing. + +Signed-off-by: Behan Webster +Reviewed-by: Mark Charlebois +Acked-by: Steven Rostedt +Signed-off-by: Russell King +--- + arch/arm/include/asm/ftrace.h | 2 +- + arch/arm/kernel/return_address.c | 5 ----- + 2 files changed, 1 insertion(+), 6 deletions(-) + +diff --git a/arch/arm/include/asm/ftrace.h b/arch/arm/include/asm/ftrace.h +index f89515a..2bb8cac 100644 +--- a/arch/arm/include/asm/ftrace.h ++++ b/arch/arm/include/asm/ftrace.h +@@ -45,7 +45,7 @@ void *return_address(unsigned int); + + #else + +-extern inline void *return_address(unsigned int level) ++static inline void *return_address(unsigned int level) + { + return NULL; + } +diff --git a/arch/arm/kernel/return_address.c b/arch/arm/kernel/return_address.c +index fafedd8..f6aa84d 100644 +--- a/arch/arm/kernel/return_address.c ++++ b/arch/arm/kernel/return_address.c +@@ -63,11 +63,6 @@ void *return_address(unsigned int level) + #warning "TODO: return_address should use unwind tables" + #endif + +-void *return_address(unsigned int level) +-{ +- return NULL; +-} +- + #endif /* if defined(CONFIG_FRAME_POINTER) && !defined(CONFIG_ARM_UNWIND) / else */ + + EXPORT_SYMBOL_GPL(return_address); +-- +1.9.1 + diff --git a/meta-vib3-extras/recipes/linux/linux-nvidia/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch b/meta-vib3-extras/recipes/linux/linux-nvidia/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch new file mode 100644 index 0000000..b495d39 --- /dev/null +++ b/meta-vib3-extras/recipes/linux/linux-nvidia/0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch @@ -0,0 +1,124 @@ +From 57254b6ebce4ceca02d9c8b615f6059c56c19238 Mon Sep 17 00:00:00 2001 +From: Jan Schmidt +Date: Mon, 6 May 2013 19:14:17 +0000 +Subject: [PATCH] Btrfs: add ioctl to wait for qgroup rescan completion + +btrfs_qgroup_wait_for_completion waits until the currently running qgroup +operation completes. It returns immediately when no rescan process is in +progress. This is useful to automate things around the rescan process (e.g. +testing). + +Signed-off-by: Jan Schmidt +Signed-off-by: Josef Bacik +--- + fs/btrfs/ctree.h | 2 ++ + fs/btrfs/ioctl.c | 12 ++++++++++++ + fs/btrfs/qgroup.c | 21 +++++++++++++++++++++ + include/uapi/linux/btrfs.h | 1 + + 4 files changed, 36 insertions(+) + +diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h +index a365400..e36e97b 100644 +--- a/fs/btrfs/ctree.h ++++ b/fs/btrfs/ctree.h +@@ -1613,6 +1613,7 @@ struct btrfs_fs_info { + struct mutex qgroup_rescan_lock; /* protects the progress item */ + struct btrfs_key qgroup_rescan_progress; + struct btrfs_workers qgroup_rescan_workers; ++ struct completion qgroup_rescan_completion; + + /* filesystem state */ + unsigned long fs_state; +@@ -3820,6 +3821,7 @@ int btrfs_quota_enable(struct btrfs_trans_handle *trans, + int btrfs_quota_disable(struct btrfs_trans_handle *trans, + struct btrfs_fs_info *fs_info); + int btrfs_qgroup_rescan(struct btrfs_fs_info *fs_info); ++int btrfs_qgroup_wait_for_completion(struct btrfs_fs_info *fs_info); + int btrfs_add_qgroup_relation(struct btrfs_trans_handle *trans, + struct btrfs_fs_info *fs_info, u64 src, u64 dst); + int btrfs_del_qgroup_relation(struct btrfs_trans_handle *trans, +diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c +index 0f81d67..1e0dda1 100644 +--- a/fs/btrfs/ioctl.c ++++ b/fs/btrfs/ioctl.c +@@ -3937,6 +3937,16 @@ static long btrfs_ioctl_quota_rescan_status(struct file *file, void __user *arg) + return ret; + } + ++static long btrfs_ioctl_quota_rescan_wait(struct file *file, void __user *arg) ++{ ++ struct btrfs_root *root = BTRFS_I(fdentry(file)->d_inode)->root; ++ ++ if (!capable(CAP_SYS_ADMIN)) ++ return -EPERM; ++ ++ return btrfs_qgroup_wait_for_completion(root->fs_info); ++} ++ + static long btrfs_ioctl_set_received_subvol(struct file *file, + void __user *arg) + { +@@ -4179,6 +4189,8 @@ long btrfs_ioctl(struct file *file, unsigned int + return btrfs_ioctl_quota_rescan(file, argp); + case BTRFS_IOC_QUOTA_RESCAN_STATUS: + return btrfs_ioctl_quota_rescan_status(file, argp); ++ case BTRFS_IOC_QUOTA_RESCAN_WAIT: ++ return btrfs_ioctl_quota_rescan_wait(file, argp); + case BTRFS_IOC_DEV_REPLACE: + return btrfs_ioctl_dev_replace(root, argp); + case BTRFS_IOC_GET_FSLABEL: +diff --git a/fs/btrfs/qgroup.c b/fs/btrfs/qgroup.c +index 7f38cce..d059d86 100644 +--- a/fs/btrfs/qgroup.c ++++ b/fs/btrfs/qgroup.c +@@ -2070,6 +2070,8 @@ out: + } else { + pr_err("btrfs: qgroup scan failed with %d\n", err); + } ++ ++ complete_all(&fs_info->qgroup_rescan_completion); + } + + static void +@@ -2110,6 +2112,7 @@ btrfs_qgroup_rescan(struct btrfs_fs_info *fs_info) + fs_info->qgroup_flags |= BTRFS_QGROUP_STATUS_FLAG_RESCAN; + memset(&fs_info->qgroup_rescan_progress, 0, + sizeof(fs_info->qgroup_rescan_progress)); ++ init_completion(&fs_info->qgroup_rescan_completion); + + /* clear all current qgroup tracking information */ + for (n = rb_first(&fs_info->qgroup_tree); n; n = rb_next(n)) { +@@ -2126,3 +2129,21 @@ btrfs_qgroup_rescan(struct btrfs_fs_info *fs_info) + + return 0; + } ++ ++int btrfs_qgroup_wait_for_completion(struct btrfs_fs_info *fs_info) ++{ ++ int running; ++ int ret = 0; ++ ++ mutex_lock(&fs_info->qgroup_rescan_lock); ++ spin_lock(&fs_info->qgroup_lock); ++ running = fs_info->qgroup_flags & BTRFS_QGROUP_STATUS_FLAG_RESCAN; ++ spin_unlock(&fs_info->qgroup_lock); ++ mutex_unlock(&fs_info->qgroup_rescan_lock); ++ ++ if (running) ++ ret = wait_for_completion_interruptible( ++ &fs_info->qgroup_rescan_completion); ++ ++ return ret; ++} +diff --git a/include/uapi/linux/btrfs.h b/include/uapi/linux/btrfs.h +index 5ef0df5..5b683b5 100644 +--- a/include/uapi/linux/btrfs.h ++++ b/include/uapi/linux/btrfs.h +@@ -530,6 +530,7 @@ struct btrfs_ioctl_send_args { + struct btrfs_ioctl_quota_rescan_args) + #define BTRFS_IOC_QUOTA_RESCAN_STATUS _IOR(BTRFS_IOCTL_MAGIC, 45, \ + struct btrfs_ioctl_quota_rescan_args) ++#define BTRFS_IOC_QUOTA_RESCAN_WAIT _IO(BTRFS_IOCTL_MAGIC, 46) + #define BTRFS_IOC_GET_FSLABEL _IOR(BTRFS_IOCTL_MAGIC, 49, \ + char[BTRFS_LABEL_SIZE]) + #define BTRFS_IOC_SET_FSLABEL _IOW(BTRFS_IOCTL_MAGIC, 50, \ diff --git a/meta-vib3-extras/recipes/linux/linux-nvidia/0001-Change-extern-inline-to-static-inline.patch b/meta-vib3-extras/recipes/linux/linux-nvidia/0001-Change-extern-inline-to-static-inline.patch new file mode 100644 index 0000000..66f031f --- /dev/null +++ b/meta-vib3-extras/recipes/linux/linux-nvidia/0001-Change-extern-inline-to-static-inline.patch @@ -0,0 +1,133 @@ +From 0873625fb43dda5a54919b7414f235cdfdd98ddc Mon Sep 17 00:00:00 2001 +From: Samuli Piippo +Date: Wed, 13 Apr 2016 15:42:49 +0300 +Subject: [PATCH] Change "extern inline" to "static inline" + +With compilers which follow the C99 standard (like modern versions of gcc and +clang), "extern inline" does the wrong thing (emits code for an externally +linkable version of the inline function). "static inline" is the correct choice +instead. +--- + drivers/staging/rtl8192u/ieee80211/ieee80211.h | 10 +++++----- + drivers/staging/rtl8712/ieee80211.h | 4 ++-- + lib/mpi/mpi-inline.h | 2 +- + lib/mpi/mpi-internal.h | 16 ++++++++-------- + 4 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211.h b/drivers/staging/rtl8192u/ieee80211/ieee80211.h +index 502bfdb..1c8d026 100644 +--- a/drivers/staging/rtl8192u/ieee80211/ieee80211.h ++++ b/drivers/staging/rtl8192u/ieee80211/ieee80211.h +@@ -2254,7 +2254,7 @@ static inline void *ieee80211_priv(struct net_device *dev) + return ((struct ieee80211_device *)netdev_priv(dev))->priv; + } + +-extern inline int ieee80211_is_empty_essid(const char *essid, int essid_len) ++static inline int ieee80211_is_empty_essid(const char *essid, int essid_len) + { + /* Single white space is for Linksys APs */ + if (essid_len == 1 && essid[0] == ' ') +@@ -2270,7 +2270,7 @@ extern inline int ieee80211_is_empty_essid(const char *essid, int essid_len) + return 1; + } + +-extern inline int ieee80211_is_valid_mode(struct ieee80211_device *ieee, int mode) ++static inline int ieee80211_is_valid_mode(struct ieee80211_device *ieee, int mode) + { + /* + * It is possible for both access points and our device to support +@@ -2296,7 +2296,7 @@ extern inline int ieee80211_is_valid_mode(struct ieee80211_device *ieee, int mod + return 0; + } + +-extern inline int ieee80211_get_hdrlen(u16 fc) ++static inline int ieee80211_get_hdrlen(u16 fc) + { + int hdrlen = IEEE80211_3ADDR_LEN; + +@@ -2582,12 +2582,12 @@ void ieee80211_softmac_scan_syncro(struct ieee80211_device *ieee); + + extern const long ieee80211_wlan_frequencies[]; + +-extern inline void ieee80211_increment_scans(struct ieee80211_device *ieee) ++static inline void ieee80211_increment_scans(struct ieee80211_device *ieee) + { + ieee->scans++; + } + +-extern inline int ieee80211_get_scans(struct ieee80211_device *ieee) ++static inline int ieee80211_get_scans(struct ieee80211_device *ieee) + { + return ieee->scans; + } +diff --git a/drivers/staging/rtl8712/ieee80211.h b/drivers/staging/rtl8712/ieee80211.h +index 21515c3..7518061 100644 +--- a/drivers/staging/rtl8712/ieee80211.h ++++ b/drivers/staging/rtl8712/ieee80211.h +@@ -734,7 +734,7 @@ enum ieee80211_state { + #define IEEE_G (1<<2) + #define IEEE_MODE_MASK (IEEE_A|IEEE_B|IEEE_G) + +-extern inline int ieee80211_is_empty_essid(const char *essid, int essid_len) ++static inline int ieee80211_is_empty_essid(const char *essid, int essid_len) + { + /* Single white space is for Linksys APs */ + if (essid_len == 1 && essid[0] == ' ') +@@ -748,7 +748,7 @@ extern inline int ieee80211_is_empty_essid(const char *essid, int essid_len) + return 1; + } + +-extern inline int ieee80211_get_hdrlen(u16 fc) ++static inline int ieee80211_get_hdrlen(u16 fc) + { + int hdrlen = 24; + +diff --git a/lib/mpi/mpi-inline.h b/lib/mpi/mpi-inline.h +index e2b3985..c245ea3 100644 +--- a/lib/mpi/mpi-inline.h ++++ b/lib/mpi/mpi-inline.h +@@ -30,7 +30,7 @@ + #define G10_MPI_INLINE_H + + #ifndef G10_MPI_INLINE_DECL +-#define G10_MPI_INLINE_DECL extern inline ++#define G10_MPI_INLINE_DECL static inline + #endif + + G10_MPI_INLINE_DECL mpi_limb_t +diff --git a/lib/mpi/mpi-internal.h b/lib/mpi/mpi-internal.h +index 77adcf6..4566d11 100644 +--- a/lib/mpi/mpi-internal.h ++++ b/lib/mpi/mpi-internal.h +@@ -172,20 +172,20 @@ void mpi_rshift_limbs(MPI a, unsigned int count); + int mpi_lshift_limbs(MPI a, unsigned int count); + + /*-- mpihelp-add.c --*/ +-mpi_limb_t mpihelp_add_1(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, +- mpi_size_t s1_size, mpi_limb_t s2_limb); ++//mpi_limb_t mpihelp_add_1(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, ++// mpi_size_t s1_size, mpi_limb_t s2_limb); + mpi_limb_t mpihelp_add_n(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, + mpi_ptr_t s2_ptr, mpi_size_t size); +-mpi_limb_t mpihelp_add(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, +- mpi_ptr_t s2_ptr, mpi_size_t s2_size); ++//mpi_limb_t mpihelp_add(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, ++// mpi_ptr_t s2_ptr, mpi_size_t s2_size); + + /*-- mpihelp-sub.c --*/ +-mpi_limb_t mpihelp_sub_1(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, +- mpi_size_t s1_size, mpi_limb_t s2_limb); ++//mpi_limb_t mpihelp_sub_1(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, ++// mpi_size_t s1_size, mpi_limb_t s2_limb); + mpi_limb_t mpihelp_sub_n(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, + mpi_ptr_t s2_ptr, mpi_size_t size); +-mpi_limb_t mpihelp_sub(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, +- mpi_ptr_t s2_ptr, mpi_size_t s2_size); ++//mpi_limb_t mpihelp_sub(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, ++// mpi_ptr_t s2_ptr, mpi_size_t s2_size); + + /*-- mpihelp-cmp.c --*/ + int mpihelp_cmp(mpi_ptr_t op1_ptr, mpi_ptr_t op2_ptr, mpi_size_t size); +-- +1.9.1 + diff --git a/meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compile_error_in_tegra_drivers.patch b/meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compile_error_in_tegra_drivers.patch new file mode 100644 index 0000000..8bbc38b --- /dev/null +++ b/meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compile_error_in_tegra_drivers.patch @@ -0,0 +1,20 @@ +--- a/drivers/platform/tegra/tegra_cl_dvfs.c 2016-04-19 13:05:46.897056724 +0300 ++++ b/drivers/platform/tegra/tegra_cl_dvfs.c 2016-04-19 12:55:28.053751626 +0300 +@@ -1021,7 +1021,7 @@ + + static void cl_dvfs_calibrate(struct tegra_cl_dvfs *cld) + { +- u32 val, data; ++ u32 val=0, data=0; + ktime_t now; + unsigned long rate; + unsigned long step = RATE_STEP(cld); +@@ -3303,7 +3303,7 @@ + + static int monitor_get(void *data, u64 *val) + { +- u32 v, s; ++ u32 v=0, s=0; + unsigned long flags; + struct clk *c = (struct clk *)data; + struct tegra_cl_dvfs *cld = ((struct clk *)data)->u.dfll.cl_dvfs; diff --git a/meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compiler_error_in_tegra12_lock.patch b/meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compiler_error_in_tegra12_lock.patch new file mode 100644 index 0000000..fc8fe9f --- /dev/null +++ b/meta-vib3-extras/recipes/linux/linux-nvidia/Fix_compiler_error_in_tegra12_lock.patch @@ -0,0 +1,11 @@ +--- a/drivers/platform/tegra/tegra12_clocks.c 2016-04-19 13:51:34.912235128 +0300 ++++ b/drivers/platform/tegra/tegra12_clocks.c 2016-04-19 13:51:55.739478254 +0300 +@@ -1331,7 +1331,7 @@ + */ + static void tegra12_cpu_clk_init(struct clk *c) + { +- c->state = (!is_lp_cluster() == (c->u.cpu.mode == MODE_G))? ON : OFF; ++ c->state = ((!is_lp_cluster()) == (c->u.cpu.mode == MODE_G))? ON : OFF; + } + + static int tegra12_cpu_clk_enable(struct clk *c) diff --git a/meta-vib3-extras/recipes/linux/linux-nvidia_3.10.bbappend b/meta-vib3-extras/recipes/linux/linux-nvidia_3.10.bbappend new file mode 100644 index 0000000..ee2d5ba --- /dev/null +++ b/meta-vib3-extras/recipes/linux/linux-nvidia_3.10.bbappend @@ -0,0 +1,71 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +FILESEXTRAPATHS_prepend := "__default:${THISDIR}/${PN}:" + +DEPENDS_remove = "external-tegra-toolchain" +do_kernel_defconfig[depends] = "kern-tools-native:do_populate_sysroot" + +SRC_URI += "\ + file://0001-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch \ + file://0001-Change-extern-inline-to-static-inline.patch \ + file://Fix_compile_error_in_tegra_drivers.patch \ + file://Fix_compiler_error_in_tegra12_lock.patch \ + file://0001-Btrfs-add-ioctl-to-wait-for-qgroup-rescan-completion.patch \ + " + +do_unpack_append() { + rm -rf ${STAGING_KERNEL_DIR} + ln -s ${S} ${STAGING_KERNEL_DIR} +} + +do_compile_prepend () { + # Cross compiling exports + export ARCH=${TARGET_ARCH} + export CROSS_COMPILE=${CROSS_COMPILE} + + echo "CONFIG_FHANDLE=y" >> ${B}/.config + make olddefconfig +} + +do_install_append() { + s=$(readlink -m "${S}") + kernsrc="${STAGING_KERNEL_DIR}" + + if [ "${s}" != "${kernsrc}" ]; then + mkdir -p "${kernsrc}" + rm -rf "${kernsrc}" + mv "${S}" "${STAGING_KERNEL_DIR}" + ln -sf "${kernsrc}" "${s}" + fi +} + +python do_patch () { + bb.build.exec_func('patch_do_patch', d) +} diff --git a/meta-vib3-extras/recipes/qt5/qtbase_git.bbappend b/meta-vib3-extras/recipes/qt5/qtbase_git.bbappend new file mode 100644 index 0000000..4abb469 --- /dev/null +++ b/meta-vib3-extras/recipes/qt5/qtbase_git.bbappend @@ -0,0 +1,31 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +DEPENDS += "graphics-headers" +PACKAGECONFIG += "kms" diff --git a/meta-vib4-extras/recipes/systemd/systemd/tegra-t18x/0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch b/meta-vib4-extras/recipes/systemd/systemd/tegra-t18x/0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch new file mode 100644 index 0000000..629ccf4 --- /dev/null +++ b/meta-vib4-extras/recipes/systemd/systemd/tegra-t18x/0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch @@ -0,0 +1,18 @@ +diff --git a/configure.ac b/configure.ac +index 97a29d6..b0e4060 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -208,10 +208,6 @@ AS_CASE([$CC], [*clang*], + -Wno-gnu-variable-sized-type-not-at-end \ + ])]) + +-AS_CASE([$CFLAGS], [*-O[[12345sz\ ]]*], +- [CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ +- -flto -ffat-lto-objects])], +- [AC_MSG_RESULT([skipping -flto, optimization not enabled])]) + AC_SUBST([OUR_CFLAGS], "$with_cflags $sanitizer_cflags") + + AS_CASE([$CFLAGS], [*-O[[12345\ ]]*], +-- +2.5.0 + diff --git a/meta-vib4-extras/recipes/systemd/systemd_%.bbappend b/meta-vib4-extras/recipes/systemd/systemd_%.bbappend index 53ea1e4..dbeb030 100644 --- a/meta-vib4-extras/recipes/systemd/systemd_%.bbappend +++ b/meta-vib4-extras/recipes/systemd/systemd_%.bbappend @@ -27,4 +27,4 @@ ## ############################################################################ -SRC_URI_remove = "file://0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch" +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" diff --git a/meta-vib4-extras/recipes/wayland-nv/wayland-nv.bbappend b/meta-vib4-extras/recipes/wayland-nv/wayland-nv.bbappend new file mode 100644 index 0000000..f892961 --- /dev/null +++ b/meta-vib4-extras/recipes/wayland-nv/wayland-nv.bbappend @@ -0,0 +1,49 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +FILESEXTRAPATHS_append := "${THISDIR}/${PN}:" + +SRC_URI += " \ + file://wayland-client.pc \ + file://wayland-cursor.pc \ + file://wayland-egl.pc \ + file://wayland-server.pc \ + file://${PLATFORM_TOPDIR}/include/wayland-egl-core.h \ + " + +FILES_${PN} += "${libdir}/pkgconfig" + +WAYLAND_PACKAGES += "wayland-dev" + +do_install_append() { + install -d ${D}${libdir}/pkgconfig + install -m 0776 ${WORKDIR}/*.pc ${D}${libdir}/pkgconfig + install -d ${D}${includedir} + install -m 0775 ${PLATFORM_TOPDIR}/include/wayland-egl-core.h ${D}${includedir} +} diff --git a/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-client.pc b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-client.pc new file mode 100644 index 0000000..e639768 --- /dev/null +++ b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-client.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=/usr +datarootdir=${prefix}/share +pkgdatadir=/usr/share/wayland +libdir=/usr/lib +includedir=/usr/include + +Name: Wayland Client +Description: Wayland client side library +Version: 1.6.0 +Cflags: -I${includedir} +Libs: -L${libdir} -lwayland-client diff --git a/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-cursor.pc b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-cursor.pc new file mode 100644 index 0000000..36538ad --- /dev/null +++ b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-cursor.pc @@ -0,0 +1,10 @@ +prefix=/usr +exec_prefix=/usr +libdir=/usr/lib +includedir=/usr/include + +Name: Wayland Cursor +Description: Wayland cursor helper library +Version: 1.6.0 +Cflags: -I${includedir} +Libs: -L${libdir} -lwayland-cursor diff --git a/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-egl.pc b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-egl.pc new file mode 100644 index 0000000..dc8393f --- /dev/null +++ b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-egl.pc @@ -0,0 +1,11 @@ +prefix=/usr +exec_prefix=/usr +libdir=/usr/lib +includedir=/usr/include + +Name: wayland-egl +Description: wayland-egl library +Version: 9.1.6 +Libs: -L${libdir} -lwayland-egl +Cflags: -I${includedir} + diff --git a/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-server.pc b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-server.pc new file mode 100644 index 0000000..dab87b9 --- /dev/null +++ b/meta-vib4-extras/recipes/wayland-nv/wayland-nv/wayland-server.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=/usr +datarootdir=${prefix}/share +pkgdatadir=/usr/share/wayland +libdir=/usr/lib +includedir=/usr/include + +Name: Wayland Server +Description: Server side implementation of the Wayland protocol +Version: 1.6.0 +Cflags: -I${includedir} +Libs: -L${libdir} -lwayland-server diff --git a/meta-vib4-extras/recipes/wayland/wayland/always-build-scanner.patch b/meta-vib4-extras/recipes/wayland/wayland/always-build-scanner.patch deleted file mode 100644 index 5e0e6bf..0000000 --- a/meta-vib4-extras/recipes/wayland/wayland/always-build-scanner.patch +++ /dev/null @@ -1,105 +0,0 @@ -build: always build wayland-scanner - -The previous idiom for building a cross-compiled Wayland is to build once for -the build host (with --enable-scanner --disable-libraries) to get a -wayland-scanner binary that can then be used in a cross-compile (with ---disable-scanner). The problem with this is that the cross wayland is missing -a wayland-scanner binary, which means you then can't do any Wayland development -on the target. - -Instead, always build wayland-scanner for the target and change ---enable/disable-scanner to --with/without-host-scanner. Normal builds use the -default of --without-host-scanner and run the wayland-scanner it just built, and -cross-compiled builds pass --with-host-scanner to use a previously built host -scanner but still get a wayland-scanner to install. - -(a theoretically neater solution would be to build two scanners if required (one -to run and one to install), but automake makes this overly complicated) - -Signed-off-by: Ross Burton -Upstream-Status: Submitted - -diff --git a/Makefile.am b/Makefile.am -index c19494f..c2d929b 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -64,16 +64,17 @@ nodist_libwayland_client_la_SOURCES = \ - - pkgconfig_DATA += src/wayland-client.pc src/wayland-server.pc - --if ENABLE_SCANNER --wayland_scanner = $(top_builddir)/wayland-scanner - bin_PROGRAMS = wayland-scanner - wayland_scanner_SOURCES = src/scanner.c - wayland_scanner_CFLAGS = $(EXPAT_CFLAGS) $(AM_CFLAGS) - wayland_scanner_LDADD = $(EXPAT_LIBS) libwayland-util.la --$(BUILT_SOURCES) : wayland-scanner - pkgconfig_DATA += src/wayland-scanner.pc --else -+ -+if HOST_SCANNER - wayland_scanner = wayland-scanner -+else -+$(BUILT_SOURCES) : wayland-scanner -+wayland_scanner = $(top_builddir)/wayland-scanner - endif - - protocol/%-protocol.c : $(top_srcdir)/protocol/%.xml -diff --git a/configure.ac b/configure.ac -index c2a804e..de0b02f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -65,11 +65,11 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], - [[#include ]]) - AC_CHECK_HEADERS([execinfo.h]) - --AC_ARG_ENABLE([scanner], -- [AC_HELP_STRING([--disable-scanner], -- [Disable compilation of wayland-scanner])], -- [], -- [enable_scanner=yes]) -+AC_ARG_WITH([host-scanner], -+ [AC_HELP_STRING([--with-host-scanner], -+ [Use a host wayland-scanner])], -+ [], -+ [with_host_scanner=no]) - - AC_ARG_ENABLE([documentation], - [AC_HELP_STRING([--disable-documentation], -@@ -77,25 +77,23 @@ AC_ARG_ENABLE([documentation], - [], - [enable_documentation=yes]) - --AM_CONDITIONAL(ENABLE_SCANNER, test "x$enable_scanner" = xyes) -+AM_CONDITIONAL(HOST_SCANNER, test "x$with_host_scanner" = xyes) - - AC_ARG_WITH(icondir, [ --with-icondir= Look for cursor icons here], - [ ICONDIR=$withval], - [ ICONDIR=${datadir}/icons]) - AC_SUBST([ICONDIR]) - --if test "x$enable_scanner" = "xyes"; then -- PKG_CHECK_MODULES(EXPAT, [expat], [], -- [AC_CHECK_HEADERS(expat.h, [], -- [AC_MSG_ERROR([Can't find expat.h. Please install expat.])]) -- SAVE_LIBS="$LIBS" -- AC_SEARCH_LIBS(XML_ParserCreate, expat, [], -- [AC_MSG_ERROR([Can't find expat library. Please install expat.])]) -- EXPAT_LIBS="$LIBS" -- LIBS="$SAVE_LIBS" -- AC_SUBST(EXPAT_LIBS) -- ]) --fi -+PKG_CHECK_MODULES(EXPAT, [expat], [], -+ [AC_CHECK_HEADERS(expat.h, [], -+ [AC_MSG_ERROR([Can't find expat.h. Please install expat.])]) -+ SAVE_LIBS="$LIBS" -+ AC_SEARCH_LIBS(XML_ParserCreate, expat, [], -+ [AC_MSG_ERROR([Can't find expat library. Please install expat.])]) -+ EXPAT_LIBS="$LIBS" -+ LIBS="$SAVE_LIBS" -+ AC_SUBST(EXPAT_LIBS) -+ ]) - - AC_PATH_PROG(XSLTPROC, xsltproc) - AM_CONDITIONAL([HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"]) diff --git a/meta-vib4-extras/recipes/wayland/wayland_%.bbappend b/meta-vib4-extras/recipes/wayland/wayland_%.bbappend deleted file mode 100644 index 463d5a1..0000000 --- a/meta-vib4-extras/recipes/wayland/wayland_%.bbappend +++ /dev/null @@ -1,36 +0,0 @@ -############################################################################ -## -## Copyright (C) 2016 The Qt Company Ltd. -## Contact: https://www.qt.io/licensing/ -## -## This file is part of the Boot to Qt meta layer. -## -## $QT_BEGIN_LICENSE:GPL$ -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see https://www.qt.io/terms-conditions. For further -## information use the contact form at https://www.qt.io/contact-us. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 3 or (at your option) any later version -## approved by the KDE Free Qt Foundation. The licenses are as published by -## the Free Software Foundation and appearing in the file LICENSE.GPL3 -## included in the packaging of this file. Please review the following -## information to ensure the GNU General Public License requirements will -## be met: https://www.gnu.org/licenses/gpl-3.0.html. -## -## $QT_END_LICENSE$ -## -############################################################################ - -FILESEXTRAPATHS_append := ":${NVLAYER_DIR}/packages:${LNX_TOPDIR}/${PN}:${THISDIR}/${PN}" - -SRC_URI_remove = "file://${NVLAYER_DIR}/packages/wayland-1.8.1-src.tar.gz" -SRC_URI = "\ - file://wayland-1.8.1-src.tar.gz \ - file://always-build-scanner.patch \ - " diff --git a/meta-vib4-extras/recipes/weston/weston-nv.bbappend b/meta-vib4-extras/recipes/weston/weston-nv.bbappend new file mode 100644 index 0000000..31b1ad1 --- /dev/null +++ b/meta-vib4-extras/recipes/weston/weston-nv.bbappend @@ -0,0 +1,32 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) any later version +## approved by the KDE Free Qt Foundation. The licenses are as published by +## the Free Software Foundation and appearing in the file LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +do_install_prepend() { + mv ${WORKDIR}/prebuilt/* ${WORKDIR}/ +} diff --git a/meta-vib4-extras/recipes/weston/weston/disable-wayland-scanner-pkg-check.patch b/meta-vib4-extras/recipes/weston/weston/disable-wayland-scanner-pkg-check.patch deleted file mode 100644 index 062da5c..0000000 --- a/meta-vib4-extras/recipes/weston/weston/disable-wayland-scanner-pkg-check.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: weston-1.5.0/configure.ac -=================================================================== ---- weston-1.5.0.orig/configure.ac -+++ weston-1.5.0/configure.ac -@@ -503,7 +503,7 @@ if test x$wayland_scanner = x; then - AC_MSG_ERROR([wayland-scanner is needed to compile weston]) - fi - --PKG_CHECK_MODULES(WAYLAND_SCANNER, wayland-scanner) -+#PKG_CHECK_MODULES(WAYLAND_SCANNER, wayland-scanner) - - AC_CONFIG_FILES([Makefile src/version.h src/weston.pc]) - diff --git a/meta-vib4-extras/recipes/weston/weston_%.bbappend b/meta-vib4-extras/recipes/weston/weston_%.bbappend deleted file mode 100644 index cfc286f..0000000 --- a/meta-vib4-extras/recipes/weston/weston_%.bbappend +++ /dev/null @@ -1,36 +0,0 @@ -############################################################################ -## -## Copyright (C) 2016 The Qt Company Ltd. -## Contact: https://www.qt.io/licensing/ -## -## This file is part of the Boot to Qt meta layer. -## -## $QT_BEGIN_LICENSE:GPL$ -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see https://www.qt.io/terms-conditions. For further -## information use the contact form at https://www.qt.io/contact-us. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 3 or (at your option) any later version -## approved by the KDE Free Qt Foundation. The licenses are as published by -## the Free Software Foundation and appearing in the file LICENSE.GPL3 -## included in the packaging of this file. Please review the following -## information to ensure the GNU General Public License requirements will -## be met: https://www.gnu.org/licenses/gpl-3.0.html. -## -## $QT_END_LICENSE$ -## -############################################################################ - -FILESEXTRAPATHS_append := ":${THISDIR}/${PN}" -S = "${WORKDIR}/${LNX_TOPDIR}/samples/wayland/weston" - -do_install_prepend() { - mkdir -p ${WORKDIR}/${LNX_TOPDIR}/samples/weston/tools - cp ${WORKDIR}/${LNX_TOPDIR}/samples/wayland/weston/tools/weston.ini ${WORKDIR}/${LNX_TOPDIR}/samples/weston/tools/weston.ini -} diff --git a/scripts/manifest.xml b/scripts/manifest.xml index afbc05c..e6a423c 100644 --- a/scripts/manifest.xml +++ b/scripts/manifest.xml @@ -69,12 +69,17 @@ +