summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xb2qt-init-build-env3
-rw-r--r--conf/bblayers.conf.rcar-gen3.sample54
-rw-r--r--conf/distro/include/h3ulcb.conf32
-rw-r--r--conf/distro/include/m3ulcb.conf32
-rw-r--r--conf/distro/include/rcar-gen3.inc66
-rw-r--r--conf/distro/include/salvator-x.conf32
-rw-r--r--conf/distro/include/tegra-t18x.conf57
-rw-r--r--meta-fsl-extras/recipes/linux/linux-toradex/0001-genksyms-fix-typeof-handling.patch1360
-rw-r--r--meta-fsl-extras/recipes/linux/linux-toradex_3.14.%.bbappend5
-rw-r--r--meta-nvidia-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend26
-rw-r--r--meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend48
-rw-r--r--meta-nvidia-extras/recipes/linux/linux-nvidia/0001-Fix-misleading-indentation-error.patch42
-rw-r--r--meta-nvidia-extras/recipes/wayland/wayland/always-build-scanner.patch105
-rw-r--r--meta-nvidia-extras/recipes/wayland/wayland_%.bbappend12
-rw-r--r--meta-nvidia-extras/recipes/weston/weston_%.bbappend10
-rw-r--r--meta-renesas-extras/conf/layer.conf40
-rw-r--r--meta-renesas-extras/recipes/arm-trusted-firmware/arm-trusted-firmware_git.bbappend31
-rw-r--r--meta-renesas-extras/recipes/mesa/mesa_12.%.bbappend10
-rw-r--r--meta-renesas-extras/recipes/optee-os/optee-os_git.bbappend30
-rw-r--r--meta-renesas-extras/recipes/qt5/b2qt-appcontroller.bbappend38
-rw-r--r--meta-renesas-extras/recipes/qt5/b2qt-appcontroller/appcontroller.conf8
-rw-r--r--meta-renesas-extras/recipes/qt5/b2qt-appcontroller/kms.conf4
-rw-r--r--meta-renesas-extras/recipes/qt5/qtbase/oe-device-extra.pri4
-rw-r--r--meta-renesas-extras/recipes/qt5/qtbase_git.bbappend32
-rw-r--r--meta-renesas-extras/recipes/u-boot/u-boot/0001-compiler-.h-sync-include-linux-compiler-.h-with-Linu.patch808
-rw-r--r--meta-renesas-extras/recipes/u-boot/u-boot_%.bbappend36
-rw-r--r--meta-renesas-extras/recipes/wayland/libgbm.bbappend30
-rw-r--r--scripts/manifest.xml26
-rwxr-xr-xscripts/setup-environment.sh3
29 files changed, 2803 insertions, 181 deletions
diff --git a/b2qt-init-build-env b/b2qt-init-build-env
index d72d28c..703c110 100755
--- a/b2qt-init-build-env
+++ b/b2qt-init-build-env
@@ -133,6 +133,9 @@ get_groups() {
133 jetson-tx1|jetson-tk1) 133 jetson-tx1|jetson-tk1)
134 PROJECT_GROUPS="jetson" 134 PROJECT_GROUPS="jetson"
135 ;; 135 ;;
136 salvator-x|h3ulcb|m3ulcb)
137 PROJECT_GROUPS="renesas-gen3"
138 ;;
136 *) 139 *)
137 echo "Unknown device configuration, including all meta layers" 140 echo "Unknown device configuration, including all meta layers"
138 PROJECT_GROUPS="external" 141 PROJECT_GROUPS="external"
diff --git a/conf/bblayers.conf.rcar-gen3.sample b/conf/bblayers.conf.rcar-gen3.sample
new file mode 100644
index 0000000..8f7a3c4
--- /dev/null
+++ b/conf/bblayers.conf.rcar-gen3.sample
@@ -0,0 +1,54 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf
31# changes incompatibly
32POKY_BBLAYERS_CONF_VERSION = "2"
33
34BBPATH = "${TOPDIR}"
35BBFILES ?= ""
36BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)) + '/../..')}"
37
38BBLAYERS ?= " \
39 ${BSPDIR}/sources/poky/meta \
40 ${BSPDIR}/sources/poky/meta-poky \
41 ${BSPDIR}/sources/meta-renesas/meta-rcar-gen3 \
42 ${BSPDIR}/sources/meta-freescale \
43 ${BSPDIR}/sources/meta-linaro/meta-optee \
44 ${BSPDIR}/sources/meta-openembedded/meta-oe \
45 ${BSPDIR}/sources/meta-openembedded/meta-python \
46 ${BSPDIR}/sources/meta-openembedded/meta-networking \
47 ${BSPDIR}/sources/meta-openembedded/meta-initramfs \
48 ${BSPDIR}/sources/meta-openembedded/meta-multimedia \
49 ${BSPDIR}/sources/meta-boot2qt \
50 ${BSPDIR}/sources/meta-boot2qt/meta-renesas-extras \
51 ${BSPDIR}/sources/meta-mingw \
52 ${BSPDIR}/sources/meta-qt5 \
53 "
54
diff --git a/conf/distro/include/h3ulcb.conf b/conf/distro/include/h3ulcb.conf
new file mode 100644
index 0000000..ddb40e0
--- /dev/null
+++ b/conf/distro/include/h3ulcb.conf
@@ -0,0 +1,32 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30include conf/distro/include/rcar-gen3.inc
31
32DEPLOY_CONF_NAME = "Renesas R-Car-H3 Starter Kit Premier"
diff --git a/conf/distro/include/m3ulcb.conf b/conf/distro/include/m3ulcb.conf
new file mode 100644
index 0000000..cff7893
--- /dev/null
+++ b/conf/distro/include/m3ulcb.conf
@@ -0,0 +1,32 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30include conf/distro/include/rcar-gen3.inc
31
32DEPLOY_CONF_NAME = "Renesas R-Car-M3 Starter Kit Pro"
diff --git a/conf/distro/include/rcar-gen3.inc b/conf/distro/include/rcar-gen3.inc
new file mode 100644
index 0000000..231dd27
--- /dev/null
+++ b/conf/distro/include/rcar-gen3.inc
@@ -0,0 +1,66 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30include conf/distro/include/fsl.inc
31
32QBSP_IMAGE_CONTENT = "\
33 ${IMAGE_LINK_NAME}.img \
34 ${IMAGE_LINK_NAME}.conf \
35 "
36
37BOOT_SPACE = "16384"
38
39# uncomment following if using the evaluation drivers
40#DISTRO_FEATURES_append = " use_eva_pkg"
41
42MACHINE_FEATURES_append = " gsx multimedia"
43
44MULTI_PROVIDER_WHITELIST += "virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2 virtual/libgbm"
45
46#DISTRO_FEATURES_append = " pam"
47PREFERRED_PROVIDER_virtual/libgles1 = ""
48PREFERRED_PROVIDER_virtual/libgles2 = "gles-user-module"
49PREFERRED_PROVIDER_virtual/egl = "gles-user-module"
50PREFERRED_PROVIDER_virtual/libgl = ""
51PREFERRED_PROVIDER_virtual/mesa = ""
52PREFERRED_PROVIDER_libgbm = "libgbm"
53PREFERRED_PROVIDER_libgbm-dev = "libgbm"
54PREFERRED_PROVIDER_virtual/libgbm = "libgbm"
55BBMASK += "mesa-gl"
56
57# internal copy of R-Car_Series_Evaluation_Software_Packages used for CI
58FILESEXTRAPATHS_append = "${BSPDIR}/sources/renesas-rcar-gen3/${PN}:"
59
60BBMASK += "\
61 meta-linaro/meta-optee/recipes-security/optee \
62 meta-rcar-gen3/recipes-connectivity/ppp \
63 meta-rcar-gen3/recipes-graphics/mesa \
64 meta-rcar-gen3/recipes-multimedia/gstreamer \
65 meta-rcar-gen3/recipes-multimedia/webp \
66 "
diff --git a/conf/distro/include/salvator-x.conf b/conf/distro/include/salvator-x.conf
new file mode 100644
index 0000000..c44dbe1
--- /dev/null
+++ b/conf/distro/include/salvator-x.conf
@@ -0,0 +1,32 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30include conf/distro/include/rcar-gen3.inc
31
32DEPLOY_CONF_NAME = "Renesas R-Car H3/M3 Salvator-X"
diff --git a/conf/distro/include/tegra-t18x.conf b/conf/distro/include/tegra-t18x.conf
index 85b0b6c..bde2d16 100644
--- a/conf/distro/include/tegra-t18x.conf
+++ b/conf/distro/include/tegra-t18x.conf
@@ -1,6 +1,6 @@
1############################################################################ 1############################################################################
2## 2##
3## Copyright (C) 2016 The Qt Company Ltd. 3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/ 4## Contact: https://www.qt.io/licensing/
5## 5##
6## This file is part of the Boot to Qt meta layer. 6## This file is part of the Boot to Qt meta layer.
@@ -27,18 +27,12 @@
27## 27##
28############################################################################ 28############################################################################
29 29
30OLDEST_KERNEL_aarch64 = "3.18"
31
32TARGET_CFLAGS += " -DWIN_INTERFACE_CUSTOM"
33
34IMAGE_FSTYPES += "tar.gz" 30IMAGE_FSTYPES += "tar.gz"
35 31
36QBSP_IMAGE_CONTENT = "\ 32QBSP_IMAGE_CONTENT = "\
37 ${IMAGE_LINK_NAME}.tar.gz \ 33 ${IMAGE_LINK_NAME}.tar.gz \
38 Image \
39 " 34 "
40 35
41KERN_DIR ?= '${@os.path.normpath("${TOPDIR}/../sources/vibrante-t186/kernel")}'
42PLATFORM_TOPDIR ?= '${@os.path.normpath("${TOPDIR}/../sources/vibrante-t186")}' 36PLATFORM_TOPDIR ?= '${@os.path.normpath("${TOPDIR}/../sources/vibrante-t186")}'
43NVLAYER_DIR ?= "${TOPDIR}/../sources/nvidia-layer" 37NVLAYER_DIR ?= "${TOPDIR}/../sources/nvidia-layer"
44 38
@@ -61,27 +55,42 @@ MACHINE_EXTRA_INSTALL += "\
61 libdrm-nv \ 55 libdrm-nv \
62 " 56 "
63 57
64PREFERRED_PROVIDER_virtual/libgles2 ?= "tegra-drivers" 58PREFERRED_PROVIDER_virtual/libgles2 = "tegra-drivers"
65PREFERRED_PROVIDER_virtual/libgles2-dev ?= "tegra-drivers" 59PREFERRED_PROVIDER_virtual/libgles2-dev = "tegra-drivers"
66PREFERRED_PROVIDER_virtual/libegl ?= "tegra-drivers" 60PREFERRED_PROVIDER_virtual/libegl = "tegra-drivers"
67PREFERRED_PROVIDER_virtual/libegl-dev ?= "tegra-drivers" 61PREFERRED_PROVIDER_virtual/libegl-dev = "tegra-drivers"
68PREFERRED_PROVIDER_virtual/egl ?= "tegra-drivers" 62PREFERRED_PROVIDER_virtual/egl = "tegra-drivers"
69PREFERRED_PROVIDER_virtual/libgl ?= "tegra-drivers" 63PREFERRED_PROVIDER_virtual/libgl = "tegra-drivers"
70PREFERRED_PROVIDER_virtual/libgles1 ?= "tegra-drivers" 64PREFERRED_PROVIDER_virtual/libgles1 = "tegra-drivers"
71PREFERRED_PROVIDER_virtual/mesa ?= "tegra-drivers" 65PREFERRED_PROVIDER_virtual/mesa = "tegra-drivers"
66PREFERRED_PROVIDER_drm = "libdrm-nv"
67PREFERRED_PROVIDER_libdrm = "libdrm-nv"
68PREFERRED_PROVIDER_virtual/kernel = "linux-nvidia"
69PREFERRED_VERSION_linux-libc-headers = "4.4"
70PREFERRED_VERSION_nativesdk-linux-libc-headers = "4.4"
72 71
73BBMASK += "\ 72BBMASK += "\
74 meta-vib4/recipes-connectivity/connman \ 73 meta-tegra/recipes-bsp/flashing \
75 meta-vib4/recipes-core/toybox \ 74 meta-vib4/recipes-core/busybox \
75 meta-vib4/recipes-core/glibc \
76 meta-vib4/recipes-core/images \ 76 meta-vib4/recipes-core/images \
77 meta-vib4/recipes-core/kbd \
77 meta-vib4/recipes-core/packagegroups \ 78 meta-vib4/recipes-core/packagegroups \
78 meta-vib4/recipes-extended \ 79 meta-vib4/recipes-core/toybox \
79 meta-vib4/recipes-multimedia/audiomanager \
80 meta-vib4/recipes-core/glibc \
81 meta-vib4/recipes-support/lvm2 \
82 meta-vib4/recipes-kernel/linux-libc-headers \
83 meta-vib4/recipes-devtools/binutils \ 80 meta-vib4/recipes-devtools/binutils \
84 meta-vib4/recipes-yocto-ivi/packagegroups \ 81 meta-vib4/recipes-devtools/gcc \
85 meta-vib4/recipes-graphics/wayland/wayland-ivi-extension_%.bbappend \ 82 meta-vib4/recipes-dummy/files \
83 meta-vib4/recipes-extended/common-api \
84 meta-vib4/recipes-extended/persistence-common-object \
85 meta-vib4/recipes-extended/quota \
86 meta-vib4/recipes-extended/xz \
86 meta-vib4/recipes-graphics/wayland/libinput_%.bbappend \ 87 meta-vib4/recipes-graphics/wayland/libinput_%.bbappend \
88 meta-vib4/recipes-graphics/wayland/wayland-ivi-extension_%.bbappend \
89 meta-vib4/recipes-graphics/weston \
90 meta-vib4/recipes-kernel/linux-libc-headers \
91 meta-vib4/recipes-multimedia/audiomanager \
92 meta-vib4/recipes-navigation/gpsd \
93 meta-vib4/recipes-support/keyutils \
94 meta-vib4/recipes-support/lvm2 \
95 meta-vib4/recipes-yocto-ivi \
87 " 96 "
diff --git a/meta-fsl-extras/recipes/linux/linux-toradex/0001-genksyms-fix-typeof-handling.patch b/meta-fsl-extras/recipes/linux/linux-toradex/0001-genksyms-fix-typeof-handling.patch
new file mode 100644
index 0000000..6c2b553
--- /dev/null
+++ b/meta-fsl-extras/recipes/linux/linux-toradex/0001-genksyms-fix-typeof-handling.patch
@@ -0,0 +1,1360 @@
1From dc53324060f324e8af6867f57bf4891c13c6ef18 Mon Sep 17 00:00:00 2001
2From: Jan Beulich <JBeulich@suse.com>
3Date: Thu, 3 Apr 2014 14:46:37 -0700
4Subject: [PATCH] genksyms: fix typeof() handling
5
6Recent increased use of typeof() throughout the tree resulted in a
7number of symbols (25 in a typical distro config of ours) not getting a
8proper CRC calculated for them anymore, due to the parser in genksyms
9not coping with several of these uses (interestingly in the majority of
10[if not all] cases the problem is due to the use of typeof() in code
11preceding a certain export, not in the declaration/definition of the
12exported function/object itself; I wasn't able to find a way to address
13this more general parser shortcoming).
14
15The use of parameter_declaration is a little more relaxed than would be
16ideal (permitting not just a bare type specification, but also one with
17identifier), but since the same code is being passed through an actual
18compiler, there's no apparent risk of allowing through any broken code.
19
20Otoh using parameter_declaration instead of the ad hoc
21"decl_specifier_seq '*'" / "decl_specifier_seq" pair allows all types to
22be handled rather than just plain ones and pointers to plain ones.
23
24Signed-off-by: Jan Beulich <jbeulich@suse.com>
25Cc: Michal Marek <mmarek@suse.cz>
26Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
27Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
28---
29 scripts/genksyms/keywords.gperf | 5 +-
30 scripts/genksyms/keywords.hash.c_shipped | 133 +++----
31 scripts/genksyms/lex.l | 51 ++-
32 scripts/genksyms/lex.lex.c_shipped | 51 ++-
33 scripts/genksyms/parse.tab.c_shipped | 608 ++++++++++++++++---------------
34 scripts/genksyms/parse.tab.h_shipped | 29 +-
35 scripts/genksyms/parse.y | 5 +-
36 7 files changed, 498 insertions(+), 384 deletions(-)
37
38diff --git a/scripts/genksyms/keywords.gperf b/scripts/genksyms/keywords.gperf
39index 3e77a943e7b7..a9096d993172 100644
40--- a/scripts/genksyms/keywords.gperf
41+++ b/scripts/genksyms/keywords.gperf
42@@ -23,6 +23,8 @@ __inline, INLINE_KEYW
43 __inline__, INLINE_KEYW
44 __signed, SIGNED_KEYW
45 __signed__, SIGNED_KEYW
46+__typeof, TYPEOF_KEYW
47+__typeof__, TYPEOF_KEYW
48 __volatile, VOLATILE_KEYW
49 __volatile__, VOLATILE_KEYW
50 # According to rth, c99 defines _Bool, __restrict, __restrict__, restrict. KAO
51@@ -51,9 +53,8 @@ signed, SIGNED_KEYW
52 static, STATIC_KEYW
53 struct, STRUCT_KEYW
54 typedef, TYPEDEF_KEYW
55+typeof, TYPEOF_KEYW
56 union, UNION_KEYW
57 unsigned, UNSIGNED_KEYW
58 void, VOID_KEYW
59 volatile, VOLATILE_KEYW
60-typeof, TYPEOF_KEYW
61-__typeof__, TYPEOF_KEYW
62diff --git a/scripts/genksyms/keywords.hash.c_shipped b/scripts/genksyms/keywords.hash.c_shipped
63index 82062607e8c0..e9452482e198 100644
64--- a/scripts/genksyms/keywords.hash.c_shipped
65+++ b/scripts/genksyms/keywords.hash.c_shipped
66@@ -34,7 +34,7 @@ struct resword;
67 static const struct resword *is_reserved_word(register const char *str, register unsigned int len);
68 #line 8 "scripts/genksyms/keywords.gperf"
69 struct resword { const char *name; int token; };
70-/* maximum key range = 64, duplicates = 0 */
71+/* maximum key range = 98, duplicates = 0 */
72
73 #ifdef __GNUC__
74 __inline
75@@ -48,32 +48,32 @@ is_reserved_hash (register const char *str, register unsigned int len)
76 {
77 static const unsigned char asso_values[] =
78 {
79- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
80- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
81- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
82- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
83- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
84- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
85- 67, 67, 67, 67, 67, 67, 67, 67, 67, 0,
86- 67, 67, 67, 67, 67, 67, 15, 67, 67, 67,
87- 0, 67, 67, 67, 67, 67, 67, 67, 67, 67,
88- 67, 67, 67, 67, 67, 0, 67, 0, 67, 5,
89- 25, 20, 15, 30, 67, 15, 67, 67, 10, 0,
90- 10, 40, 20, 67, 10, 5, 0, 10, 15, 67,
91- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
92- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
93- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
94- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
95- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
96- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
97- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
98- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
99- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
100- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
101- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
102- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
103- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
104- 67, 67, 67, 67, 67, 67
105+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
106+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
107+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
108+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
109+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
110+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
111+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 0,
112+ 101, 101, 101, 101, 101, 101, 15, 101, 101, 101,
113+ 0, 101, 101, 101, 101, 101, 101, 101, 101, 101,
114+ 101, 101, 101, 101, 101, 0, 101, 0, 101, 5,
115+ 25, 20, 55, 30, 101, 15, 101, 101, 10, 0,
116+ 10, 40, 10, 101, 10, 5, 0, 10, 15, 101,
117+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
118+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
119+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
120+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
121+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
122+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
123+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
124+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
125+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
126+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
127+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
128+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
129+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
130+ 101, 101, 101, 101, 101, 101
131 };
132 return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[0]] + asso_values[(unsigned char)str[len - 1]];
133 }
134@@ -89,17 +89,17 @@ is_reserved_word (register const char *str, register unsigned int len)
135 {
136 enum
137 {
138- TOTAL_KEYWORDS = 45,
139+ TOTAL_KEYWORDS = 46,
140 MIN_WORD_LENGTH = 3,
141 MAX_WORD_LENGTH = 24,
142 MIN_HASH_VALUE = 3,
143- MAX_HASH_VALUE = 66
144+ MAX_HASH_VALUE = 100
145 };
146
147 static const struct resword wordlist[] =
148 {
149 {""}, {""}, {""},
150-#line 33 "scripts/genksyms/keywords.gperf"
151+#line 35 "scripts/genksyms/keywords.gperf"
152 {"asm", ASM_KEYW},
153 {""},
154 #line 15 "scripts/genksyms/keywords.gperf"
155@@ -108,7 +108,7 @@ is_reserved_word (register const char *str, register unsigned int len)
156 #line 16 "scripts/genksyms/keywords.gperf"
157 {"__asm__", ASM_KEYW},
158 {""}, {""},
159-#line 59 "scripts/genksyms/keywords.gperf"
160+#line 27 "scripts/genksyms/keywords.gperf"
161 {"__typeof__", TYPEOF_KEYW},
162 {""},
163 #line 19 "scripts/genksyms/keywords.gperf"
164@@ -119,31 +119,31 @@ is_reserved_word (register const char *str, register unsigned int len)
165 {"__const__", CONST_KEYW},
166 #line 25 "scripts/genksyms/keywords.gperf"
167 {"__signed__", SIGNED_KEYW},
168-#line 51 "scripts/genksyms/keywords.gperf"
169+#line 53 "scripts/genksyms/keywords.gperf"
170 {"static", STATIC_KEYW},
171 {""},
172-#line 46 "scripts/genksyms/keywords.gperf"
173+#line 48 "scripts/genksyms/keywords.gperf"
174 {"int", INT_KEYW},
175-#line 39 "scripts/genksyms/keywords.gperf"
176+#line 41 "scripts/genksyms/keywords.gperf"
177 {"char", CHAR_KEYW},
178-#line 40 "scripts/genksyms/keywords.gperf"
179+#line 42 "scripts/genksyms/keywords.gperf"
180 {"const", CONST_KEYW},
181-#line 52 "scripts/genksyms/keywords.gperf"
182+#line 54 "scripts/genksyms/keywords.gperf"
183 {"struct", STRUCT_KEYW},
184-#line 31 "scripts/genksyms/keywords.gperf"
185+#line 33 "scripts/genksyms/keywords.gperf"
186 {"__restrict__", RESTRICT_KEYW},
187-#line 32 "scripts/genksyms/keywords.gperf"
188+#line 34 "scripts/genksyms/keywords.gperf"
189 {"restrict", RESTRICT_KEYW},
190 #line 12 "scripts/genksyms/keywords.gperf"
191 {"EXPORT_SYMBOL_GPL_FUTURE", EXPORT_SYMBOL_KEYW},
192 #line 23 "scripts/genksyms/keywords.gperf"
193 {"__inline__", INLINE_KEYW},
194 {""},
195-#line 27 "scripts/genksyms/keywords.gperf"
196+#line 29 "scripts/genksyms/keywords.gperf"
197 {"__volatile__", VOLATILE_KEYW},
198 #line 10 "scripts/genksyms/keywords.gperf"
199 {"EXPORT_SYMBOL", EXPORT_SYMBOL_KEYW},
200-#line 30 "scripts/genksyms/keywords.gperf"
201+#line 32 "scripts/genksyms/keywords.gperf"
202 {"_restrict", RESTRICT_KEYW},
203 {""},
204 #line 17 "scripts/genksyms/keywords.gperf"
205@@ -152,56 +152,65 @@ is_reserved_word (register const char *str, register unsigned int len)
206 {"EXPORT_SYMBOL_GPL", EXPORT_SYMBOL_KEYW},
207 #line 21 "scripts/genksyms/keywords.gperf"
208 {"__extension__", EXTENSION_KEYW},
209-#line 42 "scripts/genksyms/keywords.gperf"
210+#line 44 "scripts/genksyms/keywords.gperf"
211 {"enum", ENUM_KEYW},
212 #line 13 "scripts/genksyms/keywords.gperf"
213 {"EXPORT_UNUSED_SYMBOL", EXPORT_SYMBOL_KEYW},
214-#line 43 "scripts/genksyms/keywords.gperf"
215+#line 45 "scripts/genksyms/keywords.gperf"
216 {"extern", EXTERN_KEYW},
217 {""},
218 #line 24 "scripts/genksyms/keywords.gperf"
219 {"__signed", SIGNED_KEYW},
220 #line 14 "scripts/genksyms/keywords.gperf"
221 {"EXPORT_UNUSED_SYMBOL_GPL", EXPORT_SYMBOL_KEYW},
222-#line 54 "scripts/genksyms/keywords.gperf"
223+#line 57 "scripts/genksyms/keywords.gperf"
224 {"union", UNION_KEYW},
225-#line 58 "scripts/genksyms/keywords.gperf"
226- {"typeof", TYPEOF_KEYW},
227-#line 53 "scripts/genksyms/keywords.gperf"
228- {"typedef", TYPEDEF_KEYW},
229+ {""}, {""},
230 #line 22 "scripts/genksyms/keywords.gperf"
231 {"__inline", INLINE_KEYW},
232-#line 38 "scripts/genksyms/keywords.gperf"
233+#line 40 "scripts/genksyms/keywords.gperf"
234 {"auto", AUTO_KEYW},
235-#line 26 "scripts/genksyms/keywords.gperf"
236+#line 28 "scripts/genksyms/keywords.gperf"
237 {"__volatile", VOLATILE_KEYW},
238 {""}, {""},
239-#line 55 "scripts/genksyms/keywords.gperf"
240+#line 58 "scripts/genksyms/keywords.gperf"
241 {"unsigned", UNSIGNED_KEYW},
242 {""},
243-#line 49 "scripts/genksyms/keywords.gperf"
244+#line 51 "scripts/genksyms/keywords.gperf"
245 {"short", SHORT_KEYW},
246-#line 45 "scripts/genksyms/keywords.gperf"
247+#line 47 "scripts/genksyms/keywords.gperf"
248 {"inline", INLINE_KEYW},
249 {""},
250-#line 57 "scripts/genksyms/keywords.gperf"
251+#line 60 "scripts/genksyms/keywords.gperf"
252 {"volatile", VOLATILE_KEYW},
253-#line 47 "scripts/genksyms/keywords.gperf"
254+#line 49 "scripts/genksyms/keywords.gperf"
255 {"long", LONG_KEYW},
256-#line 29 "scripts/genksyms/keywords.gperf"
257+#line 31 "scripts/genksyms/keywords.gperf"
258 {"_Bool", BOOL_KEYW},
259 {""}, {""},
260-#line 48 "scripts/genksyms/keywords.gperf"
261+#line 50 "scripts/genksyms/keywords.gperf"
262 {"register", REGISTER_KEYW},
263-#line 56 "scripts/genksyms/keywords.gperf"
264+#line 59 "scripts/genksyms/keywords.gperf"
265 {"void", VOID_KEYW},
266-#line 44 "scripts/genksyms/keywords.gperf"
267- {"float", FLOAT_KEYW},
268-#line 41 "scripts/genksyms/keywords.gperf"
269+ {""},
270+#line 43 "scripts/genksyms/keywords.gperf"
271 {"double", DOUBLE_KEYW},
272+ {""},
273+#line 26 "scripts/genksyms/keywords.gperf"
274+ {"__typeof", TYPEOF_KEYW},
275+ {""}, {""},
276+#line 52 "scripts/genksyms/keywords.gperf"
277+ {"signed", SIGNED_KEYW},
278 {""}, {""}, {""}, {""},
279-#line 50 "scripts/genksyms/keywords.gperf"
280- {"signed", SIGNED_KEYW}
281+#line 56 "scripts/genksyms/keywords.gperf"
282+ {"typeof", TYPEOF_KEYW},
283+#line 55 "scripts/genksyms/keywords.gperf"
284+ {"typedef", TYPEDEF_KEYW},
285+ {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
286+ {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
287+ {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
288+#line 46 "scripts/genksyms/keywords.gperf"
289+ {"float", FLOAT_KEYW}
290 };
291
292 if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
293diff --git a/scripts/genksyms/lex.l b/scripts/genksyms/lex.l
294index f770071719cb..e583565f2011 100644
295--- a/scripts/genksyms/lex.l
296+++ b/scripts/genksyms/lex.l
297@@ -129,8 +129,9 @@ int
298 yylex(void)
299 {
300 static enum {
301- ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_BRACKET, ST_BRACE,
302- ST_EXPRESSION, ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
303+ ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_TYPEOF, ST_TYPEOF_1,
304+ ST_BRACKET, ST_BRACE, ST_EXPRESSION,
305+ ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
306 ST_TABLE_5, ST_TABLE_6
307 } lexstate = ST_NOTSTARTED;
308
309@@ -198,6 +199,10 @@ repeat:
310 lexstate = ST_ASM;
311 count = 0;
312 goto repeat;
313+ case TYPEOF_KEYW:
314+ lexstate = ST_TYPEOF;
315+ count = 0;
316+ goto repeat;
317
318 case STRUCT_KEYW:
319 case UNION_KEYW:
320@@ -284,6 +289,48 @@ repeat:
321 }
322 break;
323
324+ case ST_TYPEOF:
325+ switch (token)
326+ {
327+ case '(':
328+ if ( ++count == 1 )
329+ lexstate = ST_TYPEOF_1;
330+ else
331+ APP;
332+ goto repeat;
333+ case ')':
334+ APP;
335+ if (--count == 0)
336+ {
337+ lexstate = ST_NORMAL;
338+ token = TYPEOF_PHRASE;
339+ break;
340+ }
341+ goto repeat;
342+ default:
343+ APP;
344+ goto repeat;
345+ }
346+ break;
347+
348+ case ST_TYPEOF_1:
349+ if (token == IDENT)
350+ {
351+ if (is_reserved_word(yytext, yyleng)
352+ || find_symbol(yytext, SYM_TYPEDEF, 1))
353+ {
354+ yyless(0);
355+ unput('(');
356+ lexstate = ST_NORMAL;
357+ token = TYPEOF_KEYW;
358+ break;
359+ }
360+ _APP("(", 1);
361+ }
362+ APP;
363+ lexstate = ST_TYPEOF;
364+ goto repeat;
365+
366 case ST_BRACKET:
367 APP;
368 switch (token)
369diff --git a/scripts/genksyms/lex.lex.c_shipped b/scripts/genksyms/lex.lex.c_shipped
370index 0bf4157e6161..f82740a69b85 100644
371--- a/scripts/genksyms/lex.lex.c_shipped
372+++ b/scripts/genksyms/lex.lex.c_shipped
373@@ -1938,8 +1938,9 @@ int
374 yylex(void)
375 {
376 static enum {
377- ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_BRACKET, ST_BRACE,
378- ST_EXPRESSION, ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
379+ ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_TYPEOF, ST_TYPEOF_1,
380+ ST_BRACKET, ST_BRACE, ST_EXPRESSION,
381+ ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
382 ST_TABLE_5, ST_TABLE_6
383 } lexstate = ST_NOTSTARTED;
384
385@@ -2007,6 +2008,10 @@ repeat:
386 lexstate = ST_ASM;
387 count = 0;
388 goto repeat;
389+ case TYPEOF_KEYW:
390+ lexstate = ST_TYPEOF;
391+ count = 0;
392+ goto repeat;
393
394 case STRUCT_KEYW:
395 case UNION_KEYW:
396@@ -2093,6 +2098,48 @@ repeat:
397 }
398 break;
399
400+ case ST_TYPEOF:
401+ switch (token)
402+ {
403+ case '(':
404+ if ( ++count == 1 )
405+ lexstate = ST_TYPEOF_1;
406+ else
407+ APP;
408+ goto repeat;
409+ case ')':
410+ APP;
411+ if (--count == 0)
412+ {
413+ lexstate = ST_NORMAL;
414+ token = TYPEOF_PHRASE;
415+ break;
416+ }
417+ goto repeat;
418+ default:
419+ APP;
420+ goto repeat;
421+ }
422+ break;
423+
424+ case ST_TYPEOF_1:
425+ if (token == IDENT)
426+ {
427+ if (is_reserved_word(yytext, yyleng)
428+ || find_symbol(yytext, SYM_TYPEDEF, 1))
429+ {
430+ yyless(0);
431+ unput('(');
432+ lexstate = ST_NORMAL;
433+ token = TYPEOF_KEYW;
434+ break;
435+ }
436+ _APP("(", 1);
437+ }
438+ APP;
439+ lexstate = ST_TYPEOF;
440+ goto repeat;
441+
442 case ST_BRACKET:
443 APP;
444 switch (token)
445diff --git a/scripts/genksyms/parse.tab.c_shipped b/scripts/genksyms/parse.tab.c_shipped
446index ece53c79bb59..c9f0f0ce82ff 100644
447--- a/scripts/genksyms/parse.tab.c_shipped
448+++ b/scripts/genksyms/parse.tab.c_shipped
449@@ -1,8 +1,8 @@
450-/* A Bison parser, made by GNU Bison 2.5. */
451+/* A Bison parser, made by GNU Bison 2.5.1. */
452
453 /* Bison implementation for Yacc-like parsers in C
454
455- Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
456+ Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
457
458 This program is free software: you can redistribute it and/or modify
459 it under the terms of the GNU General Public License as published by
460@@ -44,7 +44,7 @@
461 #define YYBISON 1
462
463 /* Bison version. */
464-#define YYBISON_VERSION "2.5"
465+#define YYBISON_VERSION "2.5.1"
466
467 /* Skeleton name. */
468 #define YYSKELETON_NAME "yacc.c"
469@@ -117,6 +117,14 @@ static void record_compound(struct string_list **keyw,
470
471
472
473+# ifndef YY_NULL
474+# if defined __cplusplus && 201103L <= __cplusplus
475+# define YY_NULL nullptr
476+# else
477+# define YY_NULL 0
478+# endif
479+# endif
480+
481 /* Enabling traces. */
482 #ifndef YYDEBUG
483 # define YYDEBUG 1
484@@ -171,18 +179,19 @@ static void record_compound(struct string_list **keyw,
485 EXPORT_SYMBOL_KEYW = 284,
486 ASM_PHRASE = 285,
487 ATTRIBUTE_PHRASE = 286,
488- BRACE_PHRASE = 287,
489- BRACKET_PHRASE = 288,
490- EXPRESSION_PHRASE = 289,
491- CHAR = 290,
492- DOTS = 291,
493- IDENT = 292,
494- INT = 293,
495- REAL = 294,
496- STRING = 295,
497- TYPE = 296,
498- OTHER = 297,
499- FILENAME = 298
500+ TYPEOF_PHRASE = 287,
501+ BRACE_PHRASE = 288,
502+ BRACKET_PHRASE = 289,
503+ EXPRESSION_PHRASE = 290,
504+ CHAR = 291,
505+ DOTS = 292,
506+ IDENT = 293,
507+ INT = 294,
508+ REAL = 295,
509+ STRING = 296,
510+ TYPE = 297,
511+ OTHER = 298,
512+ FILENAME = 299
513 };
514 #endif
515
516@@ -304,6 +313,7 @@ YYID (yyi)
517 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
518 || defined __cplusplus || defined _MSC_VER)
519 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
520+ /* Use EXIT_SUCCESS as a witness for stdlib.h. */
521 # ifndef EXIT_SUCCESS
522 # define EXIT_SUCCESS 0
523 # endif
524@@ -395,20 +405,20 @@ union yyalloc
525 #endif
526
527 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
528-/* Copy COUNT objects from FROM to TO. The source and destination do
529+/* Copy COUNT objects from SRC to DST. The source and destination do
530 not overlap. */
531 # ifndef YYCOPY
532 # if defined __GNUC__ && 1 < __GNUC__
533-# define YYCOPY(To, From, Count) \
534- __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
535+# define YYCOPY(Dst, Src, Count) \
536+ __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
537 # else
538-# define YYCOPY(To, From, Count) \
539- do \
540- { \
541- YYSIZE_T yyi; \
542- for (yyi = 0; yyi < (Count); yyi++) \
543- (To)[yyi] = (From)[yyi]; \
544- } \
545+# define YYCOPY(Dst, Src, Count) \
546+ do \
547+ { \
548+ YYSIZE_T yyi; \
549+ for (yyi = 0; yyi < (Count); yyi++) \
550+ (Dst)[yyi] = (Src)[yyi]; \
551+ } \
552 while (YYID (0))
553 # endif
554 # endif
555@@ -417,20 +427,20 @@ union yyalloc
556 /* YYFINAL -- State number of the termination state. */
557 #define YYFINAL 4
558 /* YYLAST -- Last index in YYTABLE. */
559-#define YYLAST 532
560+#define YYLAST 514
561
562 /* YYNTOKENS -- Number of terminals. */
563-#define YYNTOKENS 53
564+#define YYNTOKENS 54
565 /* YYNNTS -- Number of nonterminals. */
566 #define YYNNTS 49
567 /* YYNRULES -- Number of rules. */
568 #define YYNRULES 132
569 /* YYNRULES -- Number of states. */
570-#define YYNSTATES 188
571+#define YYNSTATES 187
572
573 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
574 #define YYUNDEFTOK 2
575-#define YYMAXUTOK 298
576+#define YYMAXUTOK 299
577
578 #define YYTRANSLATE(YYX) \
579 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
580@@ -442,15 +452,15 @@ static const yytype_uint8 yytranslate[] =
581 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
582 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
583 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
584- 47, 49, 48, 2, 46, 2, 2, 2, 2, 2,
585- 2, 2, 2, 2, 2, 2, 2, 2, 52, 44,
586- 2, 50, 2, 2, 2, 2, 2, 2, 2, 2,
587+ 48, 49, 50, 2, 47, 2, 2, 2, 2, 2,
588+ 2, 2, 2, 2, 2, 2, 2, 2, 53, 45,
589+ 2, 51, 2, 2, 2, 2, 2, 2, 2, 2,
590 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
591 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
592 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
593 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
594 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
595- 2, 2, 2, 51, 2, 45, 2, 2, 2, 2,
596+ 2, 2, 2, 52, 2, 46, 2, 2, 2, 2,
597 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
598 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
599 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
600@@ -467,7 +477,7 @@ static const yytype_uint8 yytranslate[] =
601 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
602 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
603 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
604- 35, 36, 37, 38, 39, 40, 41, 42, 43
605+ 35, 36, 37, 38, 39, 40, 41, 42, 43, 44
606 };
607
608 #if YYDEBUG
609@@ -478,78 +488,77 @@ static const yytype_uint16 yyprhs[] =
610 0, 0, 3, 5, 8, 9, 12, 13, 18, 19,
611 23, 25, 27, 29, 31, 34, 37, 41, 42, 44,
612 46, 50, 55, 56, 58, 60, 63, 65, 67, 69,
613- 71, 73, 75, 77, 79, 81, 87, 92, 95, 98,
614- 101, 105, 109, 113, 116, 119, 122, 124, 126, 128,
615- 130, 132, 134, 136, 138, 140, 142, 144, 147, 148,
616- 150, 152, 155, 157, 159, 161, 163, 166, 168, 170,
617- 175, 180, 183, 187, 191, 194, 196, 198, 200, 205,
618- 210, 213, 217, 221, 224, 226, 230, 231, 233, 235,
619- 239, 242, 245, 247, 248, 250, 252, 257, 262, 265,
620- 269, 273, 277, 278, 280, 283, 287, 291, 292, 294,
621- 296, 299, 303, 306, 307, 309, 311, 315, 318, 321,
622- 323, 326, 327, 330, 334, 339, 341, 345, 347, 351,
623- 354, 355, 357
624+ 71, 73, 75, 77, 79, 81, 86, 88, 91, 94,
625+ 97, 101, 105, 109, 112, 115, 118, 120, 122, 124,
626+ 126, 128, 130, 132, 134, 136, 138, 140, 143, 144,
627+ 146, 148, 151, 153, 155, 157, 159, 162, 164, 166,
628+ 171, 176, 179, 183, 187, 190, 192, 194, 196, 201,
629+ 206, 209, 213, 217, 220, 222, 226, 227, 229, 231,
630+ 235, 238, 241, 243, 244, 246, 248, 253, 258, 261,
631+ 265, 269, 273, 274, 276, 279, 283, 287, 288, 290,
632+ 292, 295, 299, 302, 303, 305, 307, 311, 314, 317,
633+ 319, 322, 323, 326, 330, 335, 337, 341, 343, 347,
634+ 350, 351, 353
635 };
636
637 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
638 static const yytype_int8 yyrhs[] =
639 {
640- 54, 0, -1, 55, -1, 54, 55, -1, -1, 56,
641- 57, -1, -1, 12, 23, 58, 60, -1, -1, 23,
642- 59, 60, -1, 60, -1, 84, -1, 99, -1, 101,
643- -1, 1, 44, -1, 1, 45, -1, 64, 61, 44,
644- -1, -1, 62, -1, 63, -1, 62, 46, 63, -1,
645- 74, 100, 95, 85, -1, -1, 65, -1, 66, -1,
646- 65, 66, -1, 67, -1, 68, -1, 5, -1, 17,
647- -1, 21, -1, 11, -1, 14, -1, 69, -1, 73,
648- -1, 28, 47, 65, 48, 49, -1, 28, 47, 65,
649- 49, -1, 22, 37, -1, 24, 37, -1, 10, 37,
650- -1, 22, 37, 87, -1, 24, 37, 87, -1, 10,
651- 37, 96, -1, 10, 96, -1, 22, 87, -1, 24,
652- 87, -1, 7, -1, 19, -1, 15, -1, 16, -1,
653- 20, -1, 25, -1, 13, -1, 9, -1, 26, -1,
654- 6, -1, 41, -1, 48, 71, -1, -1, 72, -1,
655- 73, -1, 72, 73, -1, 8, -1, 27, -1, 31,
656- -1, 18, -1, 70, 74, -1, 75, -1, 37, -1,
657- 75, 47, 78, 49, -1, 75, 47, 1, 49, -1,
658- 75, 33, -1, 47, 74, 49, -1, 47, 1, 49,
659- -1, 70, 76, -1, 77, -1, 37, -1, 41, -1,
660- 77, 47, 78, 49, -1, 77, 47, 1, 49, -1,
661- 77, 33, -1, 47, 76, 49, -1, 47, 1, 49,
662- -1, 79, 36, -1, 79, -1, 80, 46, 36, -1,
663- -1, 80, -1, 81, -1, 80, 46, 81, -1, 65,
664- 82, -1, 70, 82, -1, 83, -1, -1, 37, -1,
665- 41, -1, 83, 47, 78, 49, -1, 83, 47, 1,
666- 49, -1, 83, 33, -1, 47, 82, 49, -1, 47,
667- 1, 49, -1, 64, 74, 32, -1, -1, 86, -1,
668- 50, 34, -1, 51, 88, 45, -1, 51, 1, 45,
669- -1, -1, 89, -1, 90, -1, 89, 90, -1, 64,
670- 91, 44, -1, 1, 44, -1, -1, 92, -1, 93,
671- -1, 92, 46, 93, -1, 76, 95, -1, 37, 94,
672- -1, 94, -1, 52, 34, -1, -1, 95, 31, -1,
673- 51, 97, 45, -1, 51, 97, 46, 45, -1, 98,
674- -1, 97, 46, 98, -1, 37, -1, 37, 50, 34,
675- -1, 30, 44, -1, -1, 30, -1, 29, 47, 37,
676- 49, 44, -1
677+ 55, 0, -1, 56, -1, 55, 56, -1, -1, 57,
678+ 58, -1, -1, 12, 23, 59, 61, -1, -1, 23,
679+ 60, 61, -1, 61, -1, 85, -1, 100, -1, 102,
680+ -1, 1, 45, -1, 1, 46, -1, 65, 62, 45,
681+ -1, -1, 63, -1, 64, -1, 63, 47, 64, -1,
682+ 75, 101, 96, 86, -1, -1, 66, -1, 67, -1,
683+ 66, 67, -1, 68, -1, 69, -1, 5, -1, 17,
684+ -1, 21, -1, 11, -1, 14, -1, 70, -1, 74,
685+ -1, 28, 48, 82, 49, -1, 32, -1, 22, 38,
686+ -1, 24, 38, -1, 10, 38, -1, 22, 38, 88,
687+ -1, 24, 38, 88, -1, 10, 38, 97, -1, 10,
688+ 97, -1, 22, 88, -1, 24, 88, -1, 7, -1,
689+ 19, -1, 15, -1, 16, -1, 20, -1, 25, -1,
690+ 13, -1, 9, -1, 26, -1, 6, -1, 42, -1,
691+ 50, 72, -1, -1, 73, -1, 74, -1, 73, 74,
692+ -1, 8, -1, 27, -1, 31, -1, 18, -1, 71,
693+ 75, -1, 76, -1, 38, -1, 76, 48, 79, 49,
694+ -1, 76, 48, 1, 49, -1, 76, 34, -1, 48,
695+ 75, 49, -1, 48, 1, 49, -1, 71, 77, -1,
696+ 78, -1, 38, -1, 42, -1, 78, 48, 79, 49,
697+ -1, 78, 48, 1, 49, -1, 78, 34, -1, 48,
698+ 77, 49, -1, 48, 1, 49, -1, 80, 37, -1,
699+ 80, -1, 81, 47, 37, -1, -1, 81, -1, 82,
700+ -1, 81, 47, 82, -1, 66, 83, -1, 71, 83,
701+ -1, 84, -1, -1, 38, -1, 42, -1, 84, 48,
702+ 79, 49, -1, 84, 48, 1, 49, -1, 84, 34,
703+ -1, 48, 83, 49, -1, 48, 1, 49, -1, 65,
704+ 75, 33, -1, -1, 87, -1, 51, 35, -1, 52,
705+ 89, 46, -1, 52, 1, 46, -1, -1, 90, -1,
706+ 91, -1, 90, 91, -1, 65, 92, 45, -1, 1,
707+ 45, -1, -1, 93, -1, 94, -1, 93, 47, 94,
708+ -1, 77, 96, -1, 38, 95, -1, 95, -1, 53,
709+ 35, -1, -1, 96, 31, -1, 52, 98, 46, -1,
710+ 52, 98, 47, 46, -1, 99, -1, 98, 47, 99,
711+ -1, 38, -1, 38, 51, 35, -1, 30, 45, -1,
712+ -1, 30, -1, 29, 48, 38, 49, 45, -1
713 };
714
715 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
716 static const yytype_uint16 yyrline[] =
717 {
718- 0, 123, 123, 124, 128, 128, 134, 134, 136, 136,
719- 138, 139, 140, 141, 142, 143, 147, 161, 162, 166,
720- 174, 187, 193, 194, 198, 199, 203, 209, 213, 214,
721- 215, 216, 217, 221, 222, 223, 224, 228, 230, 232,
722- 236, 238, 240, 245, 248, 249, 253, 254, 255, 256,
723- 257, 258, 259, 260, 261, 262, 263, 267, 272, 273,
724- 277, 278, 282, 282, 282, 283, 291, 292, 296, 305,
725- 307, 309, 311, 313, 320, 321, 325, 326, 327, 329,
726- 331, 333, 335, 340, 341, 342, 346, 347, 351, 352,
727- 357, 362, 364, 368, 369, 377, 381, 383, 385, 387,
728- 389, 394, 403, 404, 409, 414, 415, 419, 420, 424,
729- 425, 429, 431, 436, 437, 441, 442, 446, 447, 448,
730- 452, 456, 457, 461, 462, 466, 467, 470, 475, 483,
731- 487, 488, 492
732+ 0, 124, 124, 125, 129, 129, 135, 135, 137, 137,
733+ 139, 140, 141, 142, 143, 144, 148, 162, 163, 167,
734+ 175, 188, 194, 195, 199, 200, 204, 210, 214, 215,
735+ 216, 217, 218, 222, 223, 224, 225, 229, 231, 233,
736+ 237, 239, 241, 246, 249, 250, 254, 255, 256, 257,
737+ 258, 259, 260, 261, 262, 263, 264, 268, 273, 274,
738+ 278, 279, 283, 283, 283, 284, 292, 293, 297, 306,
739+ 308, 310, 312, 314, 321, 322, 326, 327, 328, 330,
740+ 332, 334, 336, 341, 342, 343, 347, 348, 352, 353,
741+ 358, 363, 365, 369, 370, 378, 382, 384, 386, 388,
742+ 390, 395, 404, 405, 410, 415, 416, 420, 421, 425,
743+ 426, 430, 432, 437, 438, 442, 443, 447, 448, 449,
744+ 453, 457, 458, 462, 463, 467, 468, 471, 476, 484,
745+ 488, 489, 493
746 };
747 #endif
748
749@@ -565,9 +574,9 @@ static const char *const yytname[] =
750 "SHORT_KEYW", "SIGNED_KEYW", "STATIC_KEYW", "STRUCT_KEYW",
751 "TYPEDEF_KEYW", "UNION_KEYW", "UNSIGNED_KEYW", "VOID_KEYW",
752 "VOLATILE_KEYW", "TYPEOF_KEYW", "EXPORT_SYMBOL_KEYW", "ASM_PHRASE",
753- "ATTRIBUTE_PHRASE", "BRACE_PHRASE", "BRACKET_PHRASE",
754+ "ATTRIBUTE_PHRASE", "TYPEOF_PHRASE", "BRACE_PHRASE", "BRACKET_PHRASE",
755 "EXPRESSION_PHRASE", "CHAR", "DOTS", "IDENT", "INT", "REAL", "STRING",
756- "TYPE", "OTHER", "FILENAME", "';'", "'}'", "','", "'('", "'*'", "')'",
757+ "TYPE", "OTHER", "FILENAME", "';'", "'}'", "','", "'('", "')'", "'*'",
758 "'='", "'{'", "':'", "$accept", "declaration_seq", "declaration", "$@1",
759 "declaration1", "$@2", "$@3", "simple_declaration",
760 "init_declarator_list_opt", "init_declarator_list", "init_declarator",
761@@ -584,7 +593,7 @@ static const char *const yytname[] =
762 "member_declarator_list_opt", "member_declarator_list",
763 "member_declarator", "member_bitfield_declarator", "attribute_opt",
764 "enum_body", "enumerator_list", "enumerator", "asm_definition",
765- "asm_phrase_opt", "export_definition", 0
766+ "asm_phrase_opt", "export_definition", YY_NULL
767 };
768 #endif
769
770@@ -597,28 +606,28 @@ static const yytype_uint16 yytoknum[] =
771 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
772 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
773 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
774- 295, 296, 297, 298, 59, 125, 44, 40, 42, 41,
775- 61, 123, 58
776+ 295, 296, 297, 298, 299, 59, 125, 44, 40, 41,
777+ 42, 61, 123, 58
778 };
779 # endif
780
781 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
782 static const yytype_uint8 yyr1[] =
783 {
784- 0, 53, 54, 54, 56, 55, 58, 57, 59, 57,
785- 57, 57, 57, 57, 57, 57, 60, 61, 61, 62,
786- 62, 63, 64, 64, 65, 65, 66, 66, 67, 67,
787- 67, 67, 67, 68, 68, 68, 68, 68, 68, 68,
788- 68, 68, 68, 68, 68, 68, 69, 69, 69, 69,
789- 69, 69, 69, 69, 69, 69, 69, 70, 71, 71,
790- 72, 72, 73, 73, 73, 73, 74, 74, 75, 75,
791- 75, 75, 75, 75, 76, 76, 77, 77, 77, 77,
792- 77, 77, 77, 78, 78, 78, 79, 79, 80, 80,
793- 81, 82, 82, 83, 83, 83, 83, 83, 83, 83,
794- 83, 84, 85, 85, 86, 87, 87, 88, 88, 89,
795- 89, 90, 90, 91, 91, 92, 92, 93, 93, 93,
796- 94, 95, 95, 96, 96, 97, 97, 98, 98, 99,
797- 100, 100, 101
798+ 0, 54, 55, 55, 57, 56, 59, 58, 60, 58,
799+ 58, 58, 58, 58, 58, 58, 61, 62, 62, 63,
800+ 63, 64, 65, 65, 66, 66, 67, 67, 68, 68,
801+ 68, 68, 68, 69, 69, 69, 69, 69, 69, 69,
802+ 69, 69, 69, 69, 69, 69, 70, 70, 70, 70,
803+ 70, 70, 70, 70, 70, 70, 70, 71, 72, 72,
804+ 73, 73, 74, 74, 74, 74, 75, 75, 76, 76,
805+ 76, 76, 76, 76, 77, 77, 78, 78, 78, 78,
806+ 78, 78, 78, 79, 79, 79, 80, 80, 81, 81,
807+ 82, 83, 83, 84, 84, 84, 84, 84, 84, 84,
808+ 84, 85, 86, 86, 87, 88, 88, 89, 89, 90,
809+ 90, 91, 91, 92, 92, 93, 93, 94, 94, 94,
810+ 95, 96, 96, 97, 97, 98, 98, 99, 99, 100,
811+ 101, 101, 102
812 };
813
814 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
815@@ -627,7 +636,7 @@ static const yytype_uint8 yyr2[] =
816 0, 2, 1, 2, 0, 2, 0, 4, 0, 3,
817 1, 1, 1, 1, 2, 2, 3, 0, 1, 1,
818 3, 4, 0, 1, 1, 2, 1, 1, 1, 1,
819- 1, 1, 1, 1, 1, 5, 4, 2, 2, 2,
820+ 1, 1, 1, 1, 1, 4, 1, 2, 2, 2,
821 3, 3, 3, 2, 2, 2, 1, 1, 1, 1,
822 1, 1, 1, 1, 1, 1, 1, 2, 0, 1,
823 1, 2, 1, 1, 1, 1, 2, 1, 1, 4,
824@@ -648,68 +657,68 @@ static const yytype_uint8 yydefact[] =
825 4, 4, 2, 0, 1, 3, 0, 28, 55, 46,
826 62, 53, 0, 31, 0, 52, 32, 48, 49, 29,
827 65, 47, 50, 30, 0, 8, 0, 51, 54, 63,
828- 0, 0, 0, 64, 56, 5, 10, 17, 23, 24,
829- 26, 27, 33, 34, 11, 12, 13, 14, 15, 39,
830- 0, 43, 6, 37, 0, 44, 22, 38, 45, 0,
831- 0, 129, 68, 0, 58, 0, 18, 19, 0, 130,
832- 67, 25, 42, 127, 0, 125, 22, 40, 0, 113,
833- 0, 0, 109, 9, 17, 41, 0, 0, 0, 0,
834- 57, 59, 60, 16, 0, 66, 131, 101, 121, 71,
835- 0, 0, 123, 0, 7, 112, 106, 76, 77, 0,
836- 0, 0, 121, 75, 0, 114, 115, 119, 105, 0,
837- 110, 130, 0, 36, 0, 73, 72, 61, 20, 102,
838- 0, 93, 0, 84, 87, 88, 128, 124, 126, 118,
839- 0, 76, 0, 120, 74, 117, 80, 0, 111, 0,
840- 35, 132, 122, 0, 21, 103, 70, 94, 56, 0,
841- 93, 90, 92, 69, 83, 0, 82, 81, 0, 0,
842- 116, 104, 0, 95, 0, 91, 98, 0, 85, 89,
843- 79, 78, 100, 99, 0, 0, 97, 96
844+ 0, 0, 0, 64, 36, 56, 5, 10, 17, 23,
845+ 24, 26, 27, 33, 34, 11, 12, 13, 14, 15,
846+ 39, 0, 43, 6, 37, 0, 44, 22, 38, 45,
847+ 0, 0, 129, 68, 0, 58, 0, 18, 19, 0,
848+ 130, 67, 25, 42, 127, 0, 125, 22, 40, 0,
849+ 113, 0, 0, 109, 9, 17, 41, 93, 0, 0,
850+ 0, 0, 57, 59, 60, 16, 0, 66, 131, 101,
851+ 121, 71, 0, 0, 123, 0, 7, 112, 106, 76,
852+ 77, 0, 0, 0, 121, 75, 0, 114, 115, 119,
853+ 105, 0, 110, 130, 94, 56, 0, 93, 90, 92,
854+ 35, 0, 73, 72, 61, 20, 102, 0, 0, 84,
855+ 87, 88, 128, 124, 126, 118, 0, 76, 0, 120,
856+ 74, 117, 80, 0, 111, 0, 0, 95, 0, 91,
857+ 98, 0, 132, 122, 0, 21, 103, 70, 69, 83,
858+ 0, 82, 81, 0, 0, 116, 100, 99, 0, 0,
859+ 104, 85, 89, 79, 78, 97, 96
860 };
861
862 /* YYDEFGOTO[NTERM-NUM]. */
863 static const yytype_int16 yydefgoto[] =
864 {
865- -1, 1, 2, 3, 35, 76, 56, 36, 65, 66,
866- 67, 79, 38, 39, 40, 41, 42, 68, 90, 91,
867- 43, 121, 70, 112, 113, 132, 133, 134, 135, 161,
868- 162, 44, 154, 155, 55, 80, 81, 82, 114, 115,
869- 116, 117, 129, 51, 74, 75, 45, 98, 46
870+ -1, 1, 2, 3, 36, 77, 57, 37, 66, 67,
871+ 68, 80, 39, 40, 41, 42, 43, 69, 92, 93,
872+ 44, 123, 71, 114, 115, 138, 139, 140, 141, 128,
873+ 129, 45, 165, 166, 56, 81, 82, 83, 116, 117,
874+ 118, 119, 136, 52, 75, 76, 46, 100, 47
875 };
876
877 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
878 STATE-NUM. */
879-#define YYPACT_NINF -135
880+#define YYPACT_NINF -140
881 static const yytype_int16 yypact[] =
882 {
883- -135, 20, -135, 321, -135, -135, 30, -135, -135, -135,
884- -135, -135, -28, -135, 2, -135, -135, -135, -135, -135,
885- -135, -135, -135, -135, -6, -135, 9, -135, -135, -135,
886- -5, 15, -17, -135, -135, -135, -135, 18, 491, -135,
887- -135, -135, -135, -135, -135, -135, -135, -135, -135, -22,
888- 31, -135, -135, 19, 106, -135, 491, 19, -135, 491,
889- 50, -135, -135, 11, -3, 51, 57, -135, 18, -14,
890- 14, -135, -135, 48, 46, -135, 491, -135, 33, 32,
891- 59, 154, -135, -135, 18, -135, 365, 56, 60, 61,
892- -135, -3, -135, -135, 18, -135, -135, -135, -135, -135,
893- 202, 74, -135, -23, -135, -135, -135, 77, -135, 16,
894- 101, 49, -135, 34, 92, 93, -135, -135, -135, 94,
895- -135, 110, 95, -135, 97, -135, -135, -135, -135, -20,
896- 96, 410, 99, 113, 100, -135, -135, -135, -135, -135,
897- 103, -135, 107, -135, -135, 111, -135, 239, -135, 32,
898- -135, -135, -135, 123, -135, -135, -135, -135, -135, 3,
899- 52, -135, 38, -135, -135, 454, -135, -135, 117, 128,
900- -135, -135, 134, -135, 135, -135, -135, 276, -135, -135,
901- -135, -135, -135, -135, 137, 138, -135, -135
902+ -140, 29, -140, 207, -140, -140, 40, -140, -140, -140,
903+ -140, -140, -27, -140, 44, -140, -140, -140, -140, -140,
904+ -140, -140, -140, -140, -22, -140, -18, -140, -140, -140,
905+ -9, 22, 28, -140, -140, -140, -140, -140, 42, 472,
906+ -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
907+ 46, 43, -140, -140, 47, 107, -140, 472, 47, -140,
908+ 472, 62, -140, -140, 16, -3, 57, 56, -140, 42,
909+ 35, -11, -140, -140, 53, 48, -140, 472, -140, 51,
910+ 21, 59, 157, -140, -140, 42, -140, 388, 58, 60,
911+ 70, 81, -140, -3, -140, -140, 42, -140, -140, -140,
912+ -140, -140, 253, 71, -140, -20, -140, -140, -140, 83,
913+ -140, 5, 102, 34, -140, 12, 95, 94, -140, -140,
914+ -140, 97, -140, 113, -140, -140, 2, 41, -140, 27,
915+ -140, 99, -140, -140, -140, -140, -24, 98, 101, 109,
916+ 104, -140, -140, -140, -140, -140, 105, -140, 110, -140,
917+ -140, 117, -140, 298, -140, 21, 112, -140, 120, -140,
918+ -140, 343, -140, -140, 121, -140, -140, -140, -140, -140,
919+ 434, -140, -140, 131, 137, -140, -140, -140, 138, 141,
920+ -140, -140, -140, -140, -140, -140, -140
921 };
922
923 /* YYPGOTO[NTERM-NUM]. */
924 static const yytype_int16 yypgoto[] =
925 {
926- -135, -135, 187, -135, -135, -135, -135, -50, -135, -135,
927- 98, 0, -59, -37, -135, -135, -135, -77, -135, -135,
928- -54, -30, -135, -90, -135, -134, -135, -135, 24, -58,
929- -135, -135, -135, -135, -18, -135, -135, 109, -135, -135,
930- 44, 87, 84, 148, -135, 102, -135, -135, -135
931+ -140, -140, 190, -140, -140, -140, -140, -45, -140, -140,
932+ 96, 1, -60, -31, -140, -140, -140, -78, -140, -140,
933+ -55, -7, -140, -92, -140, -139, -140, -140, -59, -39,
934+ -140, -140, -140, -140, -13, -140, -140, 111, -140, -140,
935+ 39, 87, 84, 147, -140, 106, -140, -140, -140
936 };
937
938 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
939@@ -718,149 +727,145 @@ static const yytype_int16 yypgoto[] =
940 #define YYTABLE_NINF -109
941 static const yytype_int16 yytable[] =
942 {
943- 86, 71, 111, 37, 172, 10, 83, 69, 58, 49,
944- 92, 152, 88, 169, 73, 20, 96, 140, 97, 142,
945- 4, 144, 137, 50, 29, 52, 104, 61, 33, 50,
946- 153, 53, 111, 89, 111, 77, -93, 127, 95, 85,
947- 157, 131, 59, 185, 173, 54, 57, 99, 62, 71,
948- 159, 64, -93, 141, 160, 62, 84, 108, 63, 64,
949- 54, 100, 60, 109, 64, 63, 64, 146, 73, 107,
950- 54, 176, 111, 108, 47, 48, 84, 105, 106, 109,
951- 64, 147, 160, 160, 110, 177, 141, 87, 131, 157,
952- 108, 102, 103, 173, 71, 93, 109, 64, 101, 159,
953- 64, 174, 175, 94, 118, 124, 131, 78, 136, 125,
954- 126, 7, 8, 9, 10, 11, 12, 13, 131, 15,
955- 16, 17, 18, 19, 20, 21, 22, 23, 24, 110,
956- 26, 27, 28, 29, 30, 143, 148, 33, 105, 149,
957- 96, 151, 152, -22, 150, 156, 165, 34, 163, 164,
958- -22, -107, 166, -22, -22, 119, 167, 171, -22, 7,
959- 8, 9, 10, 11, 12, 13, 180, 15, 16, 17,
960- 18, 19, 20, 21, 22, 23, 24, 181, 26, 27,
961- 28, 29, 30, 182, 183, 33, 186, 187, 5, 179,
962- 120, -22, 128, 170, 139, 34, 145, 72, -22, -108,
963- 0, -22, -22, 130, 0, 138, -22, 7, 8, 9,
964- 10, 11, 12, 13, 0, 15, 16, 17, 18, 19,
965- 20, 21, 22, 23, 24, 0, 26, 27, 28, 29,
966- 30, 0, 0, 33, 0, 0, 0, 0, -86, 0,
967- 168, 0, 0, 34, 7, 8, 9, 10, 11, 12,
968- 13, -86, 15, 16, 17, 18, 19, 20, 21, 22,
969- 23, 24, 0, 26, 27, 28, 29, 30, 0, 0,
970- 33, 0, 0, 0, 0, -86, 0, 184, 0, 0,
971- 34, 7, 8, 9, 10, 11, 12, 13, -86, 15,
972- 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
973- 26, 27, 28, 29, 30, 0, 0, 33, 0, 0,
974- 0, 0, -86, 0, 0, 0, 0, 34, 0, 0,
975- 0, 0, 6, 0, 0, -86, 7, 8, 9, 10,
976- 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
977- 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
978- 31, 32, 33, 0, 0, 0, 0, 0, -22, 0,
979- 0, 0, 34, 0, 0, -22, 0, 0, -22, -22,
980- 7, 8, 9, 10, 11, 12, 13, 0, 15, 16,
981- 17, 18, 19, 20, 21, 22, 23, 24, 0, 26,
982- 27, 28, 29, 30, 0, 0, 33, 0, 0, 0,
983- 0, 0, 0, 0, 0, 0, 34, 0, 0, 0,
984- 0, 0, 0, 122, 123, 7, 8, 9, 10, 11,
985- 12, 13, 0, 15, 16, 17, 18, 19, 20, 21,
986- 22, 23, 24, 0, 26, 27, 28, 29, 30, 0,
987- 0, 33, 0, 0, 0, 0, 0, 157, 0, 0,
988- 0, 158, 0, 0, 0, 0, 0, 159, 64, 7,
989+ 87, 88, 113, 156, 38, 10, 146, 163, 72, 127,
990+ 94, 50, 84, 59, 174, 20, 54, 90, 74, 148,
991+ 58, 150, 179, 101, 29, 51, 143, 164, 33, 4,
992+ 55, 70, 106, 113, 55, 113, -93, 102, 134, 60,
993+ 124, 78, 87, 147, 157, 86, 152, 110, 127, 127,
994+ 126, -93, 65, 111, 63, 65, 72, 91, 85, 109,
995+ 153, 160, 97, 110, 64, 98, 65, 53, 99, 111,
996+ 61, 65, 147, 62, 112, 161, 110, 113, 85, 124,
997+ 63, 74, 111, 157, 65, 48, 49, 158, 159, 126,
998+ 64, 65, 65, 87, 104, 105, 107, 108, 51, 55,
999+ 89, 87, 95, 96, 103, 120, 142, 130, 79, 131,
1000+ 87, 182, 7, 8, 9, 10, 11, 12, 13, 132,
1001+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1002+ 133, 26, 27, 28, 29, 30, 112, 149, 33, 34,
1003+ 154, 155, 107, 98, 162, -22, 169, 167, 163, 35,
1004+ 168, 170, -22, -107, 171, -22, 180, -22, 121, 172,
1005+ -22, 176, 7, 8, 9, 10, 11, 12, 13, 177,
1006+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1007+ 183, 26, 27, 28, 29, 30, 184, 185, 33, 34,
1008+ 186, 5, 135, 122, 175, -22, 145, 73, 151, 35,
1009+ 0, 0, -22, -108, 0, -22, 0, -22, 6, 0,
1010+ -22, 144, 7, 8, 9, 10, 11, 12, 13, 14,
1011+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1012+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1013+ 0, 0, 0, 0, 0, -22, 0, 0, 0, 35,
1014+ 0, 0, -22, 0, 137, -22, 0, -22, 7, 8,
1015+ 9, 10, 11, 12, 13, 0, 15, 16, 17, 18,
1016+ 19, 20, 21, 22, 23, 24, 0, 26, 27, 28,
1017+ 29, 30, 0, 0, 33, 34, 0, 0, 0, 0,
1018+ -86, 0, 0, 0, 0, 35, 0, 0, 0, 173,
1019+ 0, 0, -86, 7, 8, 9, 10, 11, 12, 13,
1020+ 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1021+ 24, 0, 26, 27, 28, 29, 30, 0, 0, 33,
1022+ 34, 0, 0, 0, 0, -86, 0, 0, 0, 0,
1023+ 35, 0, 0, 0, 178, 0, 0, -86, 7, 8,
1024+ 9, 10, 11, 12, 13, 0, 15, 16, 17, 18,
1025+ 19, 20, 21, 22, 23, 24, 0, 26, 27, 28,
1026+ 29, 30, 0, 0, 33, 34, 0, 0, 0, 0,
1027+ -86, 0, 0, 0, 0, 35, 0, 0, 0, 0,
1028+ 0, 0, -86, 7, 8, 9, 10, 11, 12, 13,
1029+ 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1030+ 24, 0, 26, 27, 28, 29, 30, 0, 0, 33,
1031+ 34, 0, 0, 0, 0, 0, 124, 0, 0, 0,
1032+ 125, 0, 0, 0, 0, 0, 126, 0, 65, 7,
1033 8, 9, 10, 11, 12, 13, 0, 15, 16, 17,
1034 18, 19, 20, 21, 22, 23, 24, 0, 26, 27,
1035- 28, 29, 30, 0, 0, 33, 0, 0, 0, 0,
1036- 178, 0, 0, 0, 0, 34, 7, 8, 9, 10,
1037- 11, 12, 13, 0, 15, 16, 17, 18, 19, 20,
1038- 21, 22, 23, 24, 0, 26, 27, 28, 29, 30,
1039- 0, 0, 33, 0, 0, 0, 0, 0, 0, 0,
1040- 0, 0, 34
1041+ 28, 29, 30, 0, 0, 33, 34, 0, 0, 0,
1042+ 0, 181, 0, 0, 0, 0, 35, 7, 8, 9,
1043+ 10, 11, 12, 13, 0, 15, 16, 17, 18, 19,
1044+ 20, 21, 22, 23, 24, 0, 26, 27, 28, 29,
1045+ 30, 0, 0, 33, 34, 0, 0, 0, 0, 0,
1046+ 0, 0, 0, 0, 35
1047 };
1048
1049 #define yypact_value_is_default(yystate) \
1050- ((yystate) == (-135))
1051+ ((yystate) == (-140))
1052
1053 #define yytable_value_is_error(yytable_value) \
1054 YYID (0)
1055
1056 static const yytype_int16 yycheck[] =
1057 {
1058- 59, 38, 79, 3, 1, 8, 56, 37, 26, 37,
1059- 64, 31, 1, 147, 37, 18, 30, 1, 32, 109,
1060- 0, 111, 45, 51, 27, 23, 76, 44, 31, 51,
1061- 50, 37, 109, 63, 111, 53, 33, 91, 68, 57,
1062- 37, 100, 47, 177, 41, 51, 37, 33, 37, 86,
1063- 47, 48, 49, 37, 131, 37, 56, 41, 47, 48,
1064- 51, 47, 47, 47, 48, 47, 48, 33, 37, 37,
1065- 51, 33, 149, 41, 44, 45, 76, 44, 45, 47,
1066- 48, 47, 159, 160, 52, 47, 37, 37, 147, 37,
1067- 41, 45, 46, 41, 131, 44, 47, 48, 50, 47,
1068- 48, 159, 160, 46, 45, 49, 165, 1, 34, 49,
1069- 49, 5, 6, 7, 8, 9, 10, 11, 177, 13,
1070- 14, 15, 16, 17, 18, 19, 20, 21, 22, 52,
1071- 24, 25, 26, 27, 28, 34, 44, 31, 44, 46,
1072- 30, 44, 31, 37, 49, 49, 46, 41, 49, 36,
1073- 44, 45, 49, 47, 48, 1, 49, 34, 52, 5,
1074- 6, 7, 8, 9, 10, 11, 49, 13, 14, 15,
1075- 16, 17, 18, 19, 20, 21, 22, 49, 24, 25,
1076- 26, 27, 28, 49, 49, 31, 49, 49, 1, 165,
1077- 81, 37, 94, 149, 107, 41, 112, 49, 44, 45,
1078- -1, 47, 48, 1, -1, 103, 52, 5, 6, 7,
1079- 8, 9, 10, 11, -1, 13, 14, 15, 16, 17,
1080- 18, 19, 20, 21, 22, -1, 24, 25, 26, 27,
1081- 28, -1, -1, 31, -1, -1, -1, -1, 36, -1,
1082- 1, -1, -1, 41, 5, 6, 7, 8, 9, 10,
1083- 11, 49, 13, 14, 15, 16, 17, 18, 19, 20,
1084- 21, 22, -1, 24, 25, 26, 27, 28, -1, -1,
1085- 31, -1, -1, -1, -1, 36, -1, 1, -1, -1,
1086- 41, 5, 6, 7, 8, 9, 10, 11, 49, 13,
1087- 14, 15, 16, 17, 18, 19, 20, 21, 22, -1,
1088- 24, 25, 26, 27, 28, -1, -1, 31, -1, -1,
1089- -1, -1, 36, -1, -1, -1, -1, 41, -1, -1,
1090- -1, -1, 1, -1, -1, 49, 5, 6, 7, 8,
1091- 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
1092- 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1093- 29, 30, 31, -1, -1, -1, -1, -1, 37, -1,
1094- -1, -1, 41, -1, -1, 44, -1, -1, 47, 48,
1095- 5, 6, 7, 8, 9, 10, 11, -1, 13, 14,
1096- 15, 16, 17, 18, 19, 20, 21, 22, -1, 24,
1097- 25, 26, 27, 28, -1, -1, 31, -1, -1, -1,
1098- -1, -1, -1, -1, -1, -1, 41, -1, -1, -1,
1099- -1, -1, -1, 48, 49, 5, 6, 7, 8, 9,
1100- 10, 11, -1, 13, 14, 15, 16, 17, 18, 19,
1101- 20, 21, 22, -1, 24, 25, 26, 27, 28, -1,
1102- -1, 31, -1, -1, -1, -1, -1, 37, -1, -1,
1103- -1, 41, -1, -1, -1, -1, -1, 47, 48, 5,
1104+ 60, 60, 80, 1, 3, 8, 1, 31, 39, 87,
1105+ 65, 38, 57, 26, 153, 18, 38, 1, 38, 111,
1106+ 38, 113, 161, 34, 27, 52, 46, 51, 31, 0,
1107+ 52, 38, 77, 111, 52, 113, 34, 48, 93, 48,
1108+ 38, 54, 102, 38, 42, 58, 34, 42, 126, 127,
1109+ 48, 49, 50, 48, 38, 50, 87, 64, 57, 38,
1110+ 48, 34, 69, 42, 48, 30, 50, 23, 33, 48,
1111+ 48, 50, 38, 45, 53, 48, 42, 155, 77, 38,
1112+ 38, 38, 48, 42, 50, 45, 46, 126, 127, 48,
1113+ 48, 50, 50, 153, 46, 47, 45, 46, 52, 52,
1114+ 38, 161, 45, 47, 51, 46, 35, 49, 1, 49,
1115+ 170, 170, 5, 6, 7, 8, 9, 10, 11, 49,
1116+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1117+ 49, 24, 25, 26, 27, 28, 53, 35, 31, 32,
1118+ 45, 47, 45, 30, 45, 38, 37, 49, 31, 42,
1119+ 49, 47, 45, 46, 49, 48, 35, 50, 1, 49,
1120+ 53, 49, 5, 6, 7, 8, 9, 10, 11, 49,
1121+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1122+ 49, 24, 25, 26, 27, 28, 49, 49, 31, 32,
1123+ 49, 1, 96, 82, 155, 38, 109, 50, 114, 42,
1124+ -1, -1, 45, 46, -1, 48, -1, 50, 1, -1,
1125+ 53, 105, 5, 6, 7, 8, 9, 10, 11, 12,
1126+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1127+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1128+ -1, -1, -1, -1, -1, 38, -1, -1, -1, 42,
1129+ -1, -1, 45, -1, 1, 48, -1, 50, 5, 6,
1130+ 7, 8, 9, 10, 11, -1, 13, 14, 15, 16,
1131+ 17, 18, 19, 20, 21, 22, -1, 24, 25, 26,
1132+ 27, 28, -1, -1, 31, 32, -1, -1, -1, -1,
1133+ 37, -1, -1, -1, -1, 42, -1, -1, -1, 1,
1134+ -1, -1, 49, 5, 6, 7, 8, 9, 10, 11,
1135+ -1, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1136+ 22, -1, 24, 25, 26, 27, 28, -1, -1, 31,
1137+ 32, -1, -1, -1, -1, 37, -1, -1, -1, -1,
1138+ 42, -1, -1, -1, 1, -1, -1, 49, 5, 6,
1139+ 7, 8, 9, 10, 11, -1, 13, 14, 15, 16,
1140+ 17, 18, 19, 20, 21, 22, -1, 24, 25, 26,
1141+ 27, 28, -1, -1, 31, 32, -1, -1, -1, -1,
1142+ 37, -1, -1, -1, -1, 42, -1, -1, -1, -1,
1143+ -1, -1, 49, 5, 6, 7, 8, 9, 10, 11,
1144+ -1, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1145+ 22, -1, 24, 25, 26, 27, 28, -1, -1, 31,
1146+ 32, -1, -1, -1, -1, -1, 38, -1, -1, -1,
1147+ 42, -1, -1, -1, -1, -1, 48, -1, 50, 5,
1148 6, 7, 8, 9, 10, 11, -1, 13, 14, 15,
1149 16, 17, 18, 19, 20, 21, 22, -1, 24, 25,
1150- 26, 27, 28, -1, -1, 31, -1, -1, -1, -1,
1151- 36, -1, -1, -1, -1, 41, 5, 6, 7, 8,
1152- 9, 10, 11, -1, 13, 14, 15, 16, 17, 18,
1153- 19, 20, 21, 22, -1, 24, 25, 26, 27, 28,
1154- -1, -1, 31, -1, -1, -1, -1, -1, -1, -1,
1155- -1, -1, 41
1156+ 26, 27, 28, -1, -1, 31, 32, -1, -1, -1,
1157+ -1, 37, -1, -1, -1, -1, 42, 5, 6, 7,
1158+ 8, 9, 10, 11, -1, 13, 14, 15, 16, 17,
1159+ 18, 19, 20, 21, 22, -1, 24, 25, 26, 27,
1160+ 28, -1, -1, 31, 32, -1, -1, -1, -1, -1,
1161+ -1, -1, -1, -1, 42
1162 };
1163
1164 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1165 symbol of state STATE-NUM. */
1166 static const yytype_uint8 yystos[] =
1167 {
1168- 0, 54, 55, 56, 0, 55, 1, 5, 6, 7,
1169+ 0, 55, 56, 57, 0, 56, 1, 5, 6, 7,
1170 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1171 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1172- 28, 29, 30, 31, 41, 57, 60, 64, 65, 66,
1173- 67, 68, 69, 73, 84, 99, 101, 44, 45, 37,
1174- 51, 96, 23, 37, 51, 87, 59, 37, 87, 47,
1175- 47, 44, 37, 47, 48, 61, 62, 63, 70, 74,
1176- 75, 66, 96, 37, 97, 98, 58, 87, 1, 64,
1177- 88, 89, 90, 60, 64, 87, 65, 37, 1, 74,
1178- 71, 72, 73, 44, 46, 74, 30, 32, 100, 33,
1179- 47, 50, 45, 46, 60, 44, 45, 37, 41, 47,
1180- 52, 70, 76, 77, 91, 92, 93, 94, 45, 1,
1181- 90, 74, 48, 49, 49, 49, 49, 73, 63, 95,
1182- 1, 65, 78, 79, 80, 81, 34, 45, 98, 94,
1183- 1, 37, 76, 34, 76, 95, 33, 47, 44, 46,
1184- 49, 44, 31, 50, 85, 86, 49, 37, 41, 47,
1185- 70, 82, 83, 49, 36, 46, 49, 49, 1, 78,
1186- 93, 34, 1, 41, 82, 82, 33, 47, 36, 81,
1187- 49, 49, 49, 49, 1, 78, 49, 49
1188+ 28, 29, 30, 31, 32, 42, 58, 61, 65, 66,
1189+ 67, 68, 69, 70, 74, 85, 100, 102, 45, 46,
1190+ 38, 52, 97, 23, 38, 52, 88, 60, 38, 88,
1191+ 48, 48, 45, 38, 48, 50, 62, 63, 64, 71,
1192+ 75, 76, 67, 97, 38, 98, 99, 59, 88, 1,
1193+ 65, 89, 90, 91, 61, 65, 88, 66, 82, 38,
1194+ 1, 75, 72, 73, 74, 45, 47, 75, 30, 33,
1195+ 101, 34, 48, 51, 46, 47, 61, 45, 46, 38,
1196+ 42, 48, 53, 71, 77, 78, 92, 93, 94, 95,
1197+ 46, 1, 91, 75, 38, 42, 48, 71, 83, 84,
1198+ 49, 49, 49, 49, 74, 64, 96, 1, 79, 80,
1199+ 81, 82, 35, 46, 99, 95, 1, 38, 77, 35,
1200+ 77, 96, 34, 48, 45, 47, 1, 42, 83, 83,
1201+ 34, 48, 45, 31, 51, 86, 87, 49, 49, 37,
1202+ 47, 49, 49, 1, 79, 94, 49, 49, 1, 79,
1203+ 35, 37, 82, 49, 49, 49, 49
1204 };
1205
1206 #define yyerrok (yyerrstatus = 0)
1207@@ -890,17 +895,18 @@ static const yytype_uint8 yystos[] =
1208
1209 #define YYRECOVERING() (!!yyerrstatus)
1210
1211-#define YYBACKUP(Token, Value) \
1212-do \
1213- if (yychar == YYEMPTY && yylen == 1) \
1214- { \
1215- yychar = (Token); \
1216- yylval = (Value); \
1217- YYPOPSTACK (1); \
1218- goto yybackup; \
1219- } \
1220- else \
1221- { \
1222+#define YYBACKUP(Token, Value) \
1223+do \
1224+ if (yychar == YYEMPTY) \
1225+ { \
1226+ yychar = (Token); \
1227+ yylval = (Value); \
1228+ YYPOPSTACK (yylen); \
1229+ yystate = *yyssp; \
1230+ goto yybackup; \
1231+ } \
1232+ else \
1233+ { \
1234 yyerror (YY_("syntax error: cannot back up")); \
1235 YYERROR; \
1236 } \
1237@@ -995,6 +1001,8 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep)
1238 YYSTYPE const * const yyvaluep;
1239 #endif
1240 {
1241+ FILE *yyo = yyoutput;
1242+ YYUSE (yyo);
1243 if (!yyvaluep)
1244 return;
1245 # ifdef YYPRINT
1246@@ -1246,12 +1254,12 @@ static int
1247 yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
1248 yytype_int16 *yyssp, int yytoken)
1249 {
1250- YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
1251+ YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
1252 YYSIZE_T yysize = yysize0;
1253 YYSIZE_T yysize1;
1254 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1255 /* Internationalized format string. */
1256- const char *yyformat = 0;
1257+ const char *yyformat = YY_NULL;
1258 /* Arguments of yyformat. */
1259 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1260 /* Number of reported tokens (one for the "unexpected", one per
1261@@ -1311,7 +1319,7 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
1262 break;
1263 }
1264 yyarg[yycount++] = yytname[yyx];
1265- yysize1 = yysize + yytnamerr (0, yytname[yyx]);
1266+ yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
1267 if (! (yysize <= yysize1
1268 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
1269 return 2;
1270@@ -1463,7 +1471,7 @@ yyparse ()
1271 `yyss': related to states.
1272 `yyvs': related to semantic values.
1273
1274- Refer to the stacks thru separate pointers, to allow yyoverflow
1275+ Refer to the stacks through separate pointers, to allow yyoverflow
1276 to reallocate them elsewhere. */
1277
1278 /* The state stack. */
1279@@ -2346,7 +2354,7 @@ yyabortlab:
1280 yyresult = 1;
1281 goto yyreturn;
1282
1283-#if !defined(yyoverflow) || YYERROR_VERBOSE
1284+#if !defined yyoverflow || YYERROR_VERBOSE
1285 /*-------------------------------------------------.
1286 | yyexhaustedlab -- memory exhaustion comes here. |
1287 `-------------------------------------------------*/
1288diff --git a/scripts/genksyms/parse.tab.h_shipped b/scripts/genksyms/parse.tab.h_shipped
1289index 93240a3cdecc..a4737dec4532 100644
1290--- a/scripts/genksyms/parse.tab.h_shipped
1291+++ b/scripts/genksyms/parse.tab.h_shipped
1292@@ -1,8 +1,8 @@
1293-/* A Bison parser, made by GNU Bison 2.5. */
1294+/* A Bison parser, made by GNU Bison 2.5.1. */
1295
1296 /* Bison interface for Yacc-like parsers in C
1297
1298- Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
1299+ Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
1300
1301 This program is free software: you can redistribute it and/or modify
1302 it under the terms of the GNU General Public License as published by
1303@@ -66,18 +66,19 @@
1304 EXPORT_SYMBOL_KEYW = 284,
1305 ASM_PHRASE = 285,
1306 ATTRIBUTE_PHRASE = 286,
1307- BRACE_PHRASE = 287,
1308- BRACKET_PHRASE = 288,
1309- EXPRESSION_PHRASE = 289,
1310- CHAR = 290,
1311- DOTS = 291,
1312- IDENT = 292,
1313- INT = 293,
1314- REAL = 294,
1315- STRING = 295,
1316- TYPE = 296,
1317- OTHER = 297,
1318- FILENAME = 298
1319+ TYPEOF_PHRASE = 287,
1320+ BRACE_PHRASE = 288,
1321+ BRACKET_PHRASE = 289,
1322+ EXPRESSION_PHRASE = 290,
1323+ CHAR = 291,
1324+ DOTS = 292,
1325+ IDENT = 293,
1326+ INT = 294,
1327+ REAL = 295,
1328+ STRING = 296,
1329+ TYPE = 297,
1330+ OTHER = 298,
1331+ FILENAME = 299
1332 };
1333 #endif
1334
1335diff --git a/scripts/genksyms/parse.y b/scripts/genksyms/parse.y
1336index 23c39998ad86..b9f4cf202302 100644
1337--- a/scripts/genksyms/parse.y
1338+++ b/scripts/genksyms/parse.y
1339@@ -103,6 +103,7 @@ static void record_compound(struct string_list **keyw,
1340
1341 %token ASM_PHRASE
1342 %token ATTRIBUTE_PHRASE
1343+%token TYPEOF_PHRASE
1344 %token BRACE_PHRASE
1345 %token BRACKET_PHRASE
1346 %token EXPRESSION_PHRASE
1347@@ -220,8 +221,8 @@ storage_class_specifier:
1348 type_specifier:
1349 simple_type_specifier
1350 | cvar_qualifier
1351- | TYPEOF_KEYW '(' decl_specifier_seq '*' ')'
1352- | TYPEOF_KEYW '(' decl_specifier_seq ')'
1353+ | TYPEOF_KEYW '(' parameter_declaration ')'
1354+ | TYPEOF_PHRASE
1355
1356 /* References to s/u/e's defined elsewhere. Rearrange things
1357 so that it is easier to expand the definition fully later. */
1358--
13592.11.0
1360
diff --git a/meta-fsl-extras/recipes/linux/linux-toradex_3.14.%.bbappend b/meta-fsl-extras/recipes/linux/linux-toradex_3.14.%.bbappend
index 492bea8..86fa105 100644
--- a/meta-fsl-extras/recipes/linux/linux-toradex_3.14.%.bbappend
+++ b/meta-fsl-extras/recipes/linux/linux-toradex_3.14.%.bbappend
@@ -27,6 +27,11 @@
27## 27##
28############################################################################ 28############################################################################
29 29
30FILESEXTRAPATHS_append := "${THISDIR}/${PN}:"
31SRC_URI += " \
32 file://0001-genksyms-fix-typeof-handling.patch \
33 "
34
30# kernel image files are not needed in the image 35# kernel image files are not needed in the image
31RDEPENDS_kernel-base = "" 36RDEPENDS_kernel-base = ""
32 37
diff --git a/meta-nvidia-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend b/meta-nvidia-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend
index f2bdba1..c7730c6 100644
--- a/meta-nvidia-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend
+++ b/meta-nvidia-extras/recipes/linux-libc-headers/linux-libc-headers_4.%.bbappend
@@ -1,7 +1,29 @@
1# Use our kernel instead of yocto which defaults to mainline 3.18 1# Copyright (c) 2015-2016, NVIDIA CORPORATION. All rights reserved.
2#
3# This program is free software; you can redistribute it and/or modify it
4# under the terms and conditions of the GNU General Public License,
5# version 2, as published by the Free Software Foundation.
6#
7# This program is distributed in the hope it will be useful, but WITHOUT
8# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
9# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
10# more details.
11#
12# You should have received a copy of the GNU General Public License
13# along with this program. If not, see <http://www.gnu.org/licenses/>.
14
15# KERN_DIR holds linux.tar.bz2
16KERN_DIR := "${LNX_TOPDIR}_src/kernel"
17# Kernel source is the kernel tarball in PDK
2SRC_URI = "file://${KERN_DIR}/linux.tar.bz2" 18SRC_URI = "file://${KERN_DIR}/linux.tar.bz2"
3PV = "3.18" 19PV = "4.4"
4 20
5# Extracting linux.tar.bz2 creates directories 21# Extracting linux.tar.bz2 creates directories
6# <top>/vibrante-oss-src/kernel 22# <top>/vibrante-oss-src/kernel
7S = "${WORKDIR}/vibrante-oss-src/kernel" 23S = "${WORKDIR}/vibrante-oss-src/kernel"
24
25# Need to pass this to for oe_runmake explicitly for building outside kerneldir
26EXTRA_OEMAKE += " -C ${S} O=${B}"
27
28# Apply RT patches
29require recipes-kernel/linux/apply-rt-patches.inc
diff --git a/meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend b/meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend
index 70ee515..835dfe8 100644
--- a/meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend
+++ b/meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend
@@ -1,6 +1,6 @@
1############################################################################ 1############################################################################
2## 2##
3## Copyright (C) 2016 The Qt Company Ltd. 3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/ 4## Contact: https://www.qt.io/licensing/
5## 5##
6## This file is part of the Boot to Qt meta layer. 6## This file is part of the Boot to Qt meta layer.
@@ -27,43 +27,31 @@
27## 27##
28############################################################################ 28############################################################################
29 29
30do_unpack_append() { 30FILESEXTRAPATHS_append := "${THISDIR}/${PN}:"
31 rm -rf ${STAGING_KERNEL_DIR} 31SRC_URI += "file://0001-Fix-misleading-indentation-error.patch;patchdir=.."
32 ln -s ${S} ${STAGING_KERNEL_DIR}
33}
34 32
35do_kernel_defconfig_prepend () { 33CROSS_COMPILE_PREFIX = "${CROSS_COMPILE}"
36}
37 34
38do_compile_prepend () { 35PACKAGES += "kernel-devicetree"
39 # cross_compile_exports 36FILES_kernel-devicetree = "/boot/*.dtb"
40 export ARCH=${KERNEL_ARCH}
41 export CROSS_COMPILE=${CROSS_COMPILE}
42 37
43 echo "CONFIG_USB_FUNCTIONFS=m" >> ${B}/.config 38RDEPENDS_kernel-base = "kernel-image kernel-devicetree"
44 echo "CONFIG_USB_ACM=m" >> ${B}/.config
45 39
46 make olddefconfig 40python do_patch () {
41 bb.build.exec_func('patch_do_patch', d)
47} 42}
48 43
49do_install () { 44do_unpack_append() {
50 kernel_do_install 45 mkdir -p ${STAGING_KERNEL_DIR}
51 46 rm -rf ${STAGING_KERNEL_DIR}
52 s=$(readlink -m "${S}") 47 ln -s ${S} ${STAGING_KERNEL_DIR}
53 kernsrc="${STAGING_KERNEL_DIR}"
54
55 if [ "${s}" != "${kernsrc}" ]; then
56 mkdir -p "${kernsrc}"
57 rm -rf "${kernsrc}"
58 mv "${S}" "${STAGING_KERNEL_DIR}"
59 ln -sf "${kernsrc}" "${s}"
60 fi
61} 48}
62 49
63do_deploy() { 50do_install_append() {
64 kernel_do_deploy 51 kernel_do_install
52 install -m 0664 -t ${D}/boot/ ${B}/arch/arm64/boot/dts/*.dtb
65} 53}
66 54
67do_compile () { 55dtbs_deploy() {
68 kernel_do_compile 56 install -m 0664 -t ${DEPLOY_DIR_IMAGE} ${B}/arch/arm64/boot/dts/*.dtb
69} 57}
diff --git a/meta-nvidia-extras/recipes/linux/linux-nvidia/0001-Fix-misleading-indentation-error.patch b/meta-nvidia-extras/recipes/linux/linux-nvidia/0001-Fix-misleading-indentation-error.patch
new file mode 100644
index 0000000..a344adc
--- /dev/null
+++ b/meta-nvidia-extras/recipes/linux/linux-nvidia/0001-Fix-misleading-indentation-error.patch
@@ -0,0 +1,42 @@
1From 33d112e943590020f2cda2a403a755531833b016 Mon Sep 17 00:00:00 2001
2From: Samuli Piippo <samuli.piippo@qt.io>
3Date: Fri, 31 Mar 2017 09:42:18 +0300
4Subject: [PATCH] Fix misleading-indentation error
5
6error: this 'if' clause does not guard... [-Werror=misleading-indentation]
7 if (!runlist->active_channels)
8---
9 nvgpu/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c | 16 ++++++++--------
10 1 file changed, 8 insertions(+), 8 deletions(-)
11
12diff --git a/nvgpu/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c b/nvgpu/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
13index 3e57c67..e2fe4db 100644
14--- a/nvgpu/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
15+++ b/nvgpu/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
16@@ -209,15 +209,15 @@ static int init_runlist(struct gk20a *g, struct fifo_gk20a *f)
17 if (!runlist->active_channels)
18 goto clean_up_runlist;
19
20- runlist_size = sizeof(u16) * f->num_channels;
21- for (i = 0; i < MAX_RUNLIST_BUFFERS; i++) {
22- int err = gk20a_gmmu_alloc_sys(g, runlist_size,
23- &runlist->mem[i]);
24- if (err) {
25- dev_err(d, "memory allocation failed\n");
26- goto clean_up_runlist;
27- }
28+ runlist_size = sizeof(u16) * f->num_channels;
29+ for (i = 0; i < MAX_RUNLIST_BUFFERS; i++) {
30+ int err = gk20a_gmmu_alloc_sys(g, runlist_size,
31+ &runlist->mem[i]);
32+ if (err) {
33+ dev_err(d, "memory allocation failed\n");
34+ goto clean_up_runlist;
35 }
36+ }
37 mutex_init(&runlist->mutex);
38
39 /* None of buffers is pinned if this value doesn't change.
40--
412.7.4
42
diff --git a/meta-nvidia-extras/recipes/wayland/wayland/always-build-scanner.patch b/meta-nvidia-extras/recipes/wayland/wayland/always-build-scanner.patch
deleted file mode 100644
index 5e0e6bf..0000000
--- a/meta-nvidia-extras/recipes/wayland/wayland/always-build-scanner.patch
+++ /dev/null
@@ -1,105 +0,0 @@
1build: always build wayland-scanner
2
3The previous idiom for building a cross-compiled Wayland is to build once for
4the build host (with --enable-scanner --disable-libraries) to get a
5wayland-scanner binary that can then be used in a cross-compile (with
6--disable-scanner). The problem with this is that the cross wayland is missing
7a wayland-scanner binary, which means you then can't do any Wayland development
8on the target.
9
10Instead, always build wayland-scanner for the target and change
11--enable/disable-scanner to --with/without-host-scanner. Normal builds use the
12default of --without-host-scanner and run the wayland-scanner it just built, and
13cross-compiled builds pass --with-host-scanner to use a previously built host
14scanner but still get a wayland-scanner to install.
15
16(a theoretically neater solution would be to build two scanners if required (one
17to run and one to install), but automake makes this overly complicated)
18
19Signed-off-by: Ross Burton <ross.burton@intel.com>
20Upstream-Status: Submitted
21
22diff --git a/Makefile.am b/Makefile.am
23index c19494f..c2d929b 100644
24--- a/Makefile.am
25+++ b/Makefile.am
26@@ -64,16 +64,17 @@ nodist_libwayland_client_la_SOURCES = \
27
28 pkgconfig_DATA += src/wayland-client.pc src/wayland-server.pc
29
30-if ENABLE_SCANNER
31-wayland_scanner = $(top_builddir)/wayland-scanner
32 bin_PROGRAMS = wayland-scanner
33 wayland_scanner_SOURCES = src/scanner.c
34 wayland_scanner_CFLAGS = $(EXPAT_CFLAGS) $(AM_CFLAGS)
35 wayland_scanner_LDADD = $(EXPAT_LIBS) libwayland-util.la
36-$(BUILT_SOURCES) : wayland-scanner
37 pkgconfig_DATA += src/wayland-scanner.pc
38-else
39+
40+if HOST_SCANNER
41 wayland_scanner = wayland-scanner
42+else
43+$(BUILT_SOURCES) : wayland-scanner
44+wayland_scanner = $(top_builddir)/wayland-scanner
45 endif
46
47 protocol/%-protocol.c : $(top_srcdir)/protocol/%.xml
48diff --git a/configure.ac b/configure.ac
49index c2a804e..de0b02f 100644
50--- a/configure.ac
51+++ b/configure.ac
52@@ -65,11 +65,11 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[],
53 [[#include <time.h>]])
54 AC_CHECK_HEADERS([execinfo.h])
55
56-AC_ARG_ENABLE([scanner],
57- [AC_HELP_STRING([--disable-scanner],
58- [Disable compilation of wayland-scanner])],
59- [],
60- [enable_scanner=yes])
61+AC_ARG_WITH([host-scanner],
62+ [AC_HELP_STRING([--with-host-scanner],
63+ [Use a host wayland-scanner])],
64+ [],
65+ [with_host_scanner=no])
66
67 AC_ARG_ENABLE([documentation],
68 [AC_HELP_STRING([--disable-documentation],
69@@ -77,25 +77,23 @@ AC_ARG_ENABLE([documentation],
70 [],
71 [enable_documentation=yes])
72
73-AM_CONDITIONAL(ENABLE_SCANNER, test "x$enable_scanner" = xyes)
74+AM_CONDITIONAL(HOST_SCANNER, test "x$with_host_scanner" = xyes)
75
76 AC_ARG_WITH(icondir, [ --with-icondir=<dir> Look for cursor icons here],
77 [ ICONDIR=$withval],
78 [ ICONDIR=${datadir}/icons])
79 AC_SUBST([ICONDIR])
80
81-if test "x$enable_scanner" = "xyes"; then
82- PKG_CHECK_MODULES(EXPAT, [expat], [],
83- [AC_CHECK_HEADERS(expat.h, [],
84- [AC_MSG_ERROR([Can't find expat.h. Please install expat.])])
85- SAVE_LIBS="$LIBS"
86- AC_SEARCH_LIBS(XML_ParserCreate, expat, [],
87- [AC_MSG_ERROR([Can't find expat library. Please install expat.])])
88- EXPAT_LIBS="$LIBS"
89- LIBS="$SAVE_LIBS"
90- AC_SUBST(EXPAT_LIBS)
91- ])
92-fi
93+PKG_CHECK_MODULES(EXPAT, [expat], [],
94+ [AC_CHECK_HEADERS(expat.h, [],
95+ [AC_MSG_ERROR([Can't find expat.h. Please install expat.])])
96+ SAVE_LIBS="$LIBS"
97+ AC_SEARCH_LIBS(XML_ParserCreate, expat, [],
98+ [AC_MSG_ERROR([Can't find expat library. Please install expat.])])
99+ EXPAT_LIBS="$LIBS"
100+ LIBS="$SAVE_LIBS"
101+ AC_SUBST(EXPAT_LIBS)
102+ ])
103
104 AC_PATH_PROG(XSLTPROC, xsltproc)
105 AM_CONDITIONAL([HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
diff --git a/meta-nvidia-extras/recipes/wayland/wayland_%.bbappend b/meta-nvidia-extras/recipes/wayland/wayland_%.bbappend
index 463d5a1..5ab7634 100644
--- a/meta-nvidia-extras/recipes/wayland/wayland_%.bbappend
+++ b/meta-nvidia-extras/recipes/wayland/wayland_%.bbappend
@@ -1,6 +1,6 @@
1############################################################################ 1############################################################################
2## 2##
3## Copyright (C) 2016 The Qt Company Ltd. 3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/ 4## Contact: https://www.qt.io/licensing/
5## 5##
6## This file is part of the Boot to Qt meta layer. 6## This file is part of the Boot to Qt meta layer.
@@ -27,10 +27,8 @@
27## 27##
28############################################################################ 28############################################################################
29 29
30FILESEXTRAPATHS_append := ":${NVLAYER_DIR}/packages:${LNX_TOPDIR}/${PN}:${THISDIR}/${PN}" 30FILESEXTRAPATHS_append := ":${LNX_TOPDIR}_src/wayland"
31 31
32SRC_URI_remove = "file://${NVLAYER_DIR}/packages/wayland-1.8.1-src.tar.gz" 32SRC_URI = "file://wayland-1.11.0-src.tar.gz"
33SRC_URI = "\ 33
34 file://wayland-1.8.1-src.tar.gz \ 34DEPENDS_class-target += "wayland-egl"
35 file://always-build-scanner.patch \
36 "
diff --git a/meta-nvidia-extras/recipes/weston/weston_%.bbappend b/meta-nvidia-extras/recipes/weston/weston_%.bbappend
index cfc286f..22f0f11 100644
--- a/meta-nvidia-extras/recipes/weston/weston_%.bbappend
+++ b/meta-nvidia-extras/recipes/weston/weston_%.bbappend
@@ -1,6 +1,6 @@
1############################################################################ 1############################################################################
2## 2##
3## Copyright (C) 2016 The Qt Company Ltd. 3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/ 4## Contact: https://www.qt.io/licensing/
5## 5##
6## This file is part of the Boot to Qt meta layer. 6## This file is part of the Boot to Qt meta layer.
@@ -27,10 +27,6 @@
27## 27##
28############################################################################ 28############################################################################
29 29
30FILESEXTRAPATHS_append := ":${THISDIR}/${PN}" 30PACKAGECONFIG_remove = "kms"
31S = "${WORKDIR}/${LNX_TOPDIR}/samples/wayland/weston"
32 31
33do_install_prepend() { 32TARGET_CFLAGS += "-DWIN_INTERFACE_CUSTOM"
34 mkdir -p ${WORKDIR}/${LNX_TOPDIR}/samples/weston/tools
35 cp ${WORKDIR}/${LNX_TOPDIR}/samples/wayland/weston/tools/weston.ini ${WORKDIR}/${LNX_TOPDIR}/samples/weston/tools/weston.ini
36}
diff --git a/meta-renesas-extras/conf/layer.conf b/meta-renesas-extras/conf/layer.conf
new file mode 100644
index 0000000..36091df
--- /dev/null
+++ b/meta-renesas-extras/conf/layer.conf
@@ -0,0 +1,40 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30# We have a conf and classes directory, append to BBPATH
31BBPATH .= ":${LAYERDIR}"
32
33# We have a recipes directory, add to BBFILES
34BBFILES += "${LAYERDIR}/recipes*/*/*.bb \
35 ${LAYERDIR}/recipes*/*/*.bbappend \
36 "
37
38BBFILE_COLLECTIONS += "b2qt_renesas"
39BBFILE_PATTERN_b2qt_renesas := "^${LAYERDIR}/"
40BBFILE_PRIORITY_b2qt_renesas = "20"
diff --git a/meta-renesas-extras/recipes/arm-trusted-firmware/arm-trusted-firmware_git.bbappend b/meta-renesas-extras/recipes/arm-trusted-firmware/arm-trusted-firmware_git.bbappend
new file mode 100644
index 0000000..801a073
--- /dev/null
+++ b/meta-renesas-extras/recipes/arm-trusted-firmware/arm-trusted-firmware_git.bbappend
@@ -0,0 +1,31 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30CFLAGS[unexport] = ""
31CFLAGS = "-Wno-error=pedantic"
diff --git a/meta-renesas-extras/recipes/mesa/mesa_12.%.bbappend b/meta-renesas-extras/recipes/mesa/mesa_12.%.bbappend
new file mode 100644
index 0000000..0542b65
--- /dev/null
+++ b/meta-renesas-extras/recipes/mesa/mesa_12.%.bbappend
@@ -0,0 +1,10 @@
1require include/gles-control.inc
2
3def map_libs(d):
4 if base_conditional('USE_GLES_WAYLAND', "1", "1", "0", d) == "1":
5 return "wayland"
6
7 return "dummy"
8
9MESATARGET := "${@map_libs(d)}"
10include recipes-graphics/mesa/mesa-${MESATARGET}.inc
diff --git a/meta-renesas-extras/recipes/optee-os/optee-os_git.bbappend b/meta-renesas-extras/recipes/optee-os/optee-os_git.bbappend
new file mode 100644
index 0000000..03862c5
--- /dev/null
+++ b/meta-renesas-extras/recipes/optee-os/optee-os_git.bbappend
@@ -0,0 +1,30 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30CFLAGS = "-Wno-error=unused-const-variable= -Wno-error=strict-aliasing -Wno-error=shift-negative-value"
diff --git a/meta-renesas-extras/recipes/qt5/b2qt-appcontroller.bbappend b/meta-renesas-extras/recipes/qt5/b2qt-appcontroller.bbappend
new file mode 100644
index 0000000..708ed85
--- /dev/null
+++ b/meta-renesas-extras/recipes/qt5/b2qt-appcontroller.bbappend
@@ -0,0 +1,38 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
31
32SRC_URI += "file://kms.conf"
33
34FILES_${PN} += "${sysconfdir}/kms.conf"
35
36do_install_append() {
37 install -m 0644 ${WORKDIR}/kms.conf ${D}${sysconfdir}/
38}
diff --git a/meta-renesas-extras/recipes/qt5/b2qt-appcontroller/appcontroller.conf b/meta-renesas-extras/recipes/qt5/b2qt-appcontroller/appcontroller.conf
new file mode 100644
index 0000000..97aaa5e
--- /dev/null
+++ b/meta-renesas-extras/recipes/qt5/b2qt-appcontroller/appcontroller.conf
@@ -0,0 +1,8 @@
1env=QML2_IMPORT_PATH=/data/user/qt/qmlplugins
2env=QT_QPA_EGLFS_KMS_CONFIG=/etc/kms.conf
3env=QT_IM_MODULE=qtvirtualkeyboard
4env=QT_QPA_EGLFS_FORCE888=0
5env=QT_QUICK_CONTROLS_STYLE=Flat
6env=XDG_RUNTIME_DIR=/tmp
7env=QSG_RENDER_LOOP=basic
8base=linux
diff --git a/meta-renesas-extras/recipes/qt5/b2qt-appcontroller/kms.conf b/meta-renesas-extras/recipes/qt5/b2qt-appcontroller/kms.conf
new file mode 100644
index 0000000..db7a503
--- /dev/null
+++ b/meta-renesas-extras/recipes/qt5/b2qt-appcontroller/kms.conf
@@ -0,0 +1,4 @@
1{
2 "device": "/dev/dri/card0",
3 "hwcursor": false
4}
diff --git a/meta-renesas-extras/recipes/qt5/qtbase/oe-device-extra.pri b/meta-renesas-extras/recipes/qt5/qtbase/oe-device-extra.pri
new file mode 100644
index 0000000..c6f88ad
--- /dev/null
+++ b/meta-renesas-extras/recipes/qt5/qtbase/oe-device-extra.pri
@@ -0,0 +1,4 @@
1QMAKE_PLATFORM += boot2qt
2
3QT_QPA_DEFAULT_PLATFORM = eglfs
4EGLFS_DEVICE_INTEGRATION = eglfs_kms
diff --git a/meta-renesas-extras/recipes/qt5/qtbase_git.bbappend b/meta-renesas-extras/recipes/qt5/qtbase_git.bbappend
new file mode 100644
index 0000000..ecba1f1
--- /dev/null
+++ b/meta-renesas-extras/recipes/qt5/qtbase_git.bbappend
@@ -0,0 +1,32 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
31
32PACKAGECONFIG += "gbm kms"
diff --git a/meta-renesas-extras/recipes/u-boot/u-boot/0001-compiler-.h-sync-include-linux-compiler-.h-with-Linu.patch b/meta-renesas-extras/recipes/u-boot/u-boot/0001-compiler-.h-sync-include-linux-compiler-.h-with-Linu.patch
new file mode 100644
index 0000000..639f67d
--- /dev/null
+++ b/meta-renesas-extras/recipes/u-boot/u-boot/0001-compiler-.h-sync-include-linux-compiler-.h-with-Linu.patch
@@ -0,0 +1,808 @@
1From 9b2c282b348dfe966bbba967dc7a45ce817cce50 Mon Sep 17 00:00:00 2001
2From: Tom Rini <trini@konsulko.com>
3Date: Mon, 29 Feb 2016 11:34:15 -0500
4Subject: [PATCH] compiler*.h: sync include/linux/compiler*.h with Linux
5 4.5-rc6
6
7Copy these from Linux v4.5-rc6 tag.
8
9This is needed so that we can keep up with newer gcc versions. Note
10that we don't have the uapi/ hierarchy from the kernel so continue to
11use <linux/types.h>
12
13Signed-off-by: Tom Rini <trini@konsulko.com>
14---
15 include/linux/compiler-gcc.h | 259 ++++++++++++++++++++++++++++++++---------
16 include/linux/compiler-gcc3.h | 23 ----
17 include/linux/compiler-gcc4.h | 88 --------------
18 include/linux/compiler-gcc5.h | 65 -----------
19 include/linux/compiler-intel.h | 5 +
20 include/linux/compiler.h | 178 ++++++++++++++++++++++++++--
21 6 files changed, 383 insertions(+), 235 deletions(-)
22 delete mode 100644 include/linux/compiler-gcc3.h
23 delete mode 100644 include/linux/compiler-gcc4.h
24 delete mode 100644 include/linux/compiler-gcc5.h
25
26diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h
27index e057bd2..22ab246 100644
28--- a/include/linux/compiler-gcc.h
29+++ b/include/linux/compiler-gcc.h
30@@ -5,14 +5,28 @@
31 /*
32 * Common definitions for all gcc versions go here.
33 */
34-#define GCC_VERSION (__GNUC__ * 10000 \
35- + __GNUC_MINOR__ * 100 \
36- + __GNUC_PATCHLEVEL__)
37-
38+#define GCC_VERSION (__GNUC__ * 10000 \
39+ + __GNUC_MINOR__ * 100 \
40+ + __GNUC_PATCHLEVEL__)
41
42 /* Optimization barrier */
43+
44 /* The "volatile" is due to gcc bugs */
45 #define barrier() __asm__ __volatile__("": : :"memory")
46+/*
47+ * This version is i.e. to prevent dead stores elimination on @ptr
48+ * where gcc and llvm may behave differently when otherwise using
49+ * normal barrier(): while gcc behavior gets along with a normal
50+ * barrier(), llvm needs an explicit input variable to be assumed
51+ * clobbered. The issue is as follows: while the inline asm might
52+ * access any memory it wants, the compiler could have fit all of
53+ * @ptr into memory registers instead, and since @ptr never escaped
54+ * from that, it proofed that the inline asm wasn't touching any of
55+ * it. This version works well with both compilers, i.e. we're telling
56+ * the compiler that the inline asm absolutely may see the contents
57+ * of @ptr. See also: https://llvm.org/bugs/show_bug.cgi?id=15495
58+ */
59+#define barrier_data(ptr) __asm__ __volatile__("": :"r"(ptr) :"memory")
60
61 /*
62 * This macro obfuscates arithmetic on a variable address so that gcc
63@@ -32,58 +46,63 @@
64 * the inline assembly constraint from =g to =r, in this particular
65 * case either is valid.
66 */
67-#define RELOC_HIDE(ptr, off) \
68- ({ unsigned long __ptr; \
69- __asm__ ("" : "=r"(__ptr) : "0"(ptr)); \
70- (typeof(ptr)) (__ptr + (off)); })
71+#define RELOC_HIDE(ptr, off) \
72+({ \
73+ unsigned long __ptr; \
74+ __asm__ ("" : "=r"(__ptr) : "0"(ptr)); \
75+ (typeof(ptr)) (__ptr + (off)); \
76+})
77
78 /* Make the optimizer believe the variable can be manipulated arbitrarily. */
79-#define OPTIMIZER_HIDE_VAR(var) __asm__ ("" : "=r" (var) : "0" (var))
80+#define OPTIMIZER_HIDE_VAR(var) \
81+ __asm__ ("" : "=r" (var) : "0" (var))
82
83 #ifdef __CHECKER__
84-#define __must_be_array(arr) 0
85+#define __must_be_array(a) 0
86 #else
87 /* &a[0] degrades to a pointer: a different type from an array */
88-#define __must_be_array(a) BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0]))
89+#define __must_be_array(a) BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0]))
90 #endif
91
92 /*
93 * Force always-inline if the user requests it so via the .config,
94 * or if gcc is too old:
95 */
96-#if !defined(CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING) || \
97+#if !defined(CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING) || \
98 !defined(CONFIG_OPTIMIZE_INLINING) || (__GNUC__ < 4)
99-# define inline inline __attribute__((always_inline)) notrace
100-# define __inline__ __inline__ __attribute__((always_inline)) notrace
101-# define __inline __inline __attribute__((always_inline)) notrace
102+#define inline inline __attribute__((always_inline)) notrace
103+#define __inline__ __inline__ __attribute__((always_inline)) notrace
104+#define __inline __inline __attribute__((always_inline)) notrace
105 #else
106 /* A lot of inline functions can cause havoc with function tracing */
107-# define inline inline notrace
108-# define __inline__ __inline__ notrace
109-# define __inline __inline notrace
110+#define inline inline notrace
111+#define __inline__ __inline__ notrace
112+#define __inline __inline notrace
113 #endif
114
115-#define __deprecated __attribute__((deprecated))
116-#ifndef __packed
117-#define __packed __attribute__((packed))
118-#endif
119-#ifndef __weak
120-#define __weak __attribute__((weak))
121-#endif
122+#define __always_inline inline __attribute__((always_inline))
123+#define noinline __attribute__((noinline))
124+
125+#define __deprecated __attribute__((deprecated))
126+#define __packed __attribute__((packed))
127+#define __weak __attribute__((weak))
128+#define __alias(symbol) __attribute__((alias(#symbol)))
129
130 /*
131- * it doesn't make sense on ARM (currently the only user of __naked) to trace
132- * naked functions because then mcount is called without stack and frame pointer
133- * being set up and there is no chance to restore the lr register to the value
134- * before mcount was called.
135+ * it doesn't make sense on ARM (currently the only user of __naked)
136+ * to trace naked functions because then mcount is called without
137+ * stack and frame pointer being set up and there is no chance to
138+ * restore the lr register to the value before mcount was called.
139+ *
140+ * The asm() bodies of naked functions often depend on standard calling
141+ * conventions, therefore they must be noinline and noclone.
142 *
143- * The asm() bodies of naked functions often depend on standard calling conventions,
144- * therefore they must be noinline and noclone. GCC 4.[56] currently fail to enforce
145- * this, so we must do so ourselves. See GCC PR44290.
146+ * GCC 4.[56] currently fail to enforce this, so we must do so ourselves.
147+ * See GCC PR44290.
148 */
149-#define __naked __attribute__((naked)) noinline __noclone notrace
150+#define __naked __attribute__((naked)) noinline __noclone notrace
151
152-#define __noreturn __attribute__((noreturn))
153+#define __noreturn __attribute__((noreturn))
154
155 /*
156 * From the GCC manual:
157@@ -95,34 +114,170 @@
158 * would be.
159 * [...]
160 */
161-#ifndef __pure
162-#define __pure __attribute__((pure))
163+#define __pure __attribute__((pure))
164+#define __aligned(x) __attribute__((aligned(x)))
165+#define __printf(a, b) __attribute__((format(printf, a, b)))
166+#define __scanf(a, b) __attribute__((format(scanf, a, b)))
167+#define __attribute_const__ __attribute__((__const__))
168+#define __maybe_unused __attribute__((unused))
169+#define __always_unused __attribute__((unused))
170+
171+/* gcc version specific checks */
172+
173+#if GCC_VERSION < 30200
174+# error Sorry, your compiler is too old - please upgrade it.
175+#endif
176+
177+#if GCC_VERSION < 30300
178+# define __used __attribute__((__unused__))
179+#else
180+# define __used __attribute__((__used__))
181+#endif
182+
183+#ifdef CONFIG_GCOV_KERNEL
184+# if GCC_VERSION < 30400
185+# error "GCOV profiling support for gcc versions below 3.4 not included"
186+# endif /* __GNUC_MINOR__ */
187+#endif /* CONFIG_GCOV_KERNEL */
188+
189+#if GCC_VERSION >= 30400
190+#define __must_check __attribute__((warn_unused_result))
191+#endif
192+
193+#if GCC_VERSION >= 40000
194+
195+/* GCC 4.1.[01] miscompiles __weak */
196+#ifdef __KERNEL__
197+# if GCC_VERSION >= 40100 && GCC_VERSION <= 40101
198+# error Your version of gcc miscompiles the __weak directive
199+# endif
200+#endif
201+
202+#define __used __attribute__((__used__))
203+#define __compiler_offsetof(a, b) \
204+ __builtin_offsetof(a, b)
205+
206+#if GCC_VERSION >= 40100 && GCC_VERSION < 40600
207+# define __compiletime_object_size(obj) __builtin_object_size(obj, 0)
208+#endif
209+
210+#if GCC_VERSION >= 40300
211+/* Mark functions as cold. gcc will assume any path leading to a call
212+ * to them will be unlikely. This means a lot of manual unlikely()s
213+ * are unnecessary now for any paths leading to the usual suspects
214+ * like BUG(), printk(), panic() etc. [but let's keep them for now for
215+ * older compilers]
216+ *
217+ * Early snapshots of gcc 4.3 don't support this and we can't detect this
218+ * in the preprocessor, but we can live with this because they're unreleased.
219+ * Maketime probing would be overkill here.
220+ *
221+ * gcc also has a __attribute__((__hot__)) to move hot functions into
222+ * a special section, but I don't see any sense in this right now in
223+ * the kernel context
224+ */
225+#define __cold __attribute__((__cold__))
226+
227+#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
228+
229+#ifndef __CHECKER__
230+# define __compiletime_warning(message) __attribute__((warning(message)))
231+# define __compiletime_error(message) __attribute__((error(message)))
232+#endif /* __CHECKER__ */
233+#endif /* GCC_VERSION >= 40300 */
234+
235+#if GCC_VERSION >= 40500
236+/*
237+ * Mark a position in code as unreachable. This can be used to
238+ * suppress control flow warnings after asm blocks that transfer
239+ * control elsewhere.
240+ *
241+ * Early snapshots of gcc 4.5 don't support this and we can't detect
242+ * this in the preprocessor, but we can live with this because they're
243+ * unreleased. Really, we need to have autoconf for the kernel.
244+ */
245+#define unreachable() __builtin_unreachable()
246+
247+/* Mark a function definition as prohibited from being cloned. */
248+#define __noclone __attribute__((__noclone__))
249+
250+#endif /* GCC_VERSION >= 40500 */
251+
252+#if GCC_VERSION >= 40600
253+/*
254+ * When used with Link Time Optimization, gcc can optimize away C functions or
255+ * variables which are referenced only from assembly code. __visible tells the
256+ * optimizer that something else uses this function or variable, thus preventing
257+ * this.
258+ */
259+#define __visible __attribute__((externally_visible))
260 #endif
261-#ifndef __aligned
262-#define __aligned(x) __attribute__((aligned(x)))
263+
264+
265+#if GCC_VERSION >= 40900 && !defined(__CHECKER__)
266+/*
267+ * __assume_aligned(n, k): Tell the optimizer that the returned
268+ * pointer can be assumed to be k modulo n. The second argument is
269+ * optional (default 0), so we use a variadic macro to make the
270+ * shorthand.
271+ *
272+ * Beware: Do not apply this to functions which may return
273+ * ERR_PTRs. Also, it is probably unwise to apply it to functions
274+ * returning extra information in the low bits (but in that case the
275+ * compiler should see some alignment anyway, when the return value is
276+ * massaged by 'flags = ptr & 3; ptr &= ~3;').
277+ */
278+#define __assume_aligned(a, ...) __attribute__((__assume_aligned__(a, ## __VA_ARGS__)))
279 #endif
280-#define __printf(a, b) __attribute__((format(printf, a, b)))
281-#define __scanf(a, b) __attribute__((format(scanf, a, b)))
282-#define noinline __attribute__((noinline))
283-#define __attribute_const__ __attribute__((__const__))
284-#define __maybe_unused __attribute__((unused))
285-#define __always_unused __attribute__((unused))
286
287-#define __gcc_header(x) #x
288-#define _gcc_header(x) __gcc_header(linux/compiler-gcc##x.h)
289-#define gcc_header(x) _gcc_header(x)
290-#include gcc_header(__GNUC__)
291+/*
292+ * GCC 'asm goto' miscompiles certain code sequences:
293+ *
294+ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
295+ *
296+ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
297+ *
298+ * (asm goto is automatically volatile - the naming reflects this.)
299+ */
300+#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
301+
302+#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
303+#if GCC_VERSION >= 40400
304+#define __HAVE_BUILTIN_BSWAP32__
305+#define __HAVE_BUILTIN_BSWAP64__
306+#endif
307+#if GCC_VERSION >= 40800 || (defined(__powerpc__) && GCC_VERSION >= 40600)
308+#define __HAVE_BUILTIN_BSWAP16__
309+#endif
310+#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
311+
312+#if GCC_VERSION >= 50000
313+#define KASAN_ABI_VERSION 4
314+#elif GCC_VERSION >= 40902
315+#define KASAN_ABI_VERSION 3
316+#endif
317+
318+#if GCC_VERSION >= 40902
319+/*
320+ * Tell the compiler that address safety instrumentation (KASAN)
321+ * should not be applied to that function.
322+ * Conflicts with inlining: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67368
323+ */
324+#define __no_sanitize_address __attribute__((no_sanitize_address))
325+#endif
326+
327+#endif /* gcc version >= 40000 specific checks */
328
329 #if !defined(__noclone)
330 #define __noclone /* not needed */
331 #endif
332
333+#if !defined(__no_sanitize_address)
334+#define __no_sanitize_address
335+#endif
336+
337 /*
338 * A trick to suppress uninitialized variable warning without generating any
339 * code
340 */
341 #define uninitialized_var(x) x = x
342-
343-#ifndef __always_inline
344-#define __always_inline inline __attribute__((always_inline))
345-#endif
346diff --git a/include/linux/compiler-gcc3.h b/include/linux/compiler-gcc3.h
347deleted file mode 100644
348index 7d89feb..0000000
349--- a/include/linux/compiler-gcc3.h
350+++ /dev/null
351@@ -1,23 +0,0 @@
352-#ifndef __LINUX_COMPILER_H
353-#error "Please don't include <linux/compiler-gcc3.h> directly, include <linux/compiler.h> instead."
354-#endif
355-
356-#if GCC_VERSION < 30200
357-# error Sorry, your compiler is too old - please upgrade it.
358-#endif
359-
360-#if GCC_VERSION >= 30300
361-# define __used __attribute__((__used__))
362-#else
363-# define __used __attribute__((__unused__))
364-#endif
365-
366-#if GCC_VERSION >= 30400
367-#define __must_check __attribute__((warn_unused_result))
368-#endif
369-
370-#ifdef CONFIG_GCOV_KERNEL
371-# if GCC_VERSION < 30400
372-# error "GCOV profiling support for gcc versions below 3.4 not included"
373-# endif /* __GNUC_MINOR__ */
374-#endif /* CONFIG_GCOV_KERNEL */
375diff --git a/include/linux/compiler-gcc4.h b/include/linux/compiler-gcc4.h
376deleted file mode 100644
377index 2507fd2..0000000
378--- a/include/linux/compiler-gcc4.h
379+++ /dev/null
380@@ -1,88 +0,0 @@
381-#ifndef __LINUX_COMPILER_H
382-#error "Please don't include <linux/compiler-gcc4.h> directly, include <linux/compiler.h> instead."
383-#endif
384-
385-/* GCC 4.1.[01] miscompiles __weak */
386-#ifdef __KERNEL__
387-# if GCC_VERSION >= 40100 && GCC_VERSION <= 40101
388-# error Your version of gcc miscompiles the __weak directive
389-# endif
390-#endif
391-
392-#define __used __attribute__((__used__))
393-#define __must_check __attribute__((warn_unused_result))
394-#define __compiler_offsetof(a,b) __builtin_offsetof(a,b)
395-
396-#if GCC_VERSION >= 40100 && GCC_VERSION < 40600
397-# define __compiletime_object_size(obj) __builtin_object_size(obj, 0)
398-#endif
399-
400-#if GCC_VERSION >= 40300
401-/* Mark functions as cold. gcc will assume any path leading to a call
402- to them will be unlikely. This means a lot of manual unlikely()s
403- are unnecessary now for any paths leading to the usual suspects
404- like BUG(), printk(), panic() etc. [but let's keep them for now for
405- older compilers]
406-
407- Early snapshots of gcc 4.3 don't support this and we can't detect this
408- in the preprocessor, but we can live with this because they're unreleased.
409- Maketime probing would be overkill here.
410-
411- gcc also has a __attribute__((__hot__)) to move hot functions into
412- a special section, but I don't see any sense in this right now in
413- the kernel context */
414-#define __cold __attribute__((__cold__))
415-
416-#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
417-
418-#ifndef __CHECKER__
419-# define __compiletime_warning(message) __attribute__((warning(message)))
420-# define __compiletime_error(message) __attribute__((error(message)))
421-#endif /* __CHECKER__ */
422-#endif /* GCC_VERSION >= 40300 */
423-
424-#if GCC_VERSION >= 40500
425-/*
426- * Mark a position in code as unreachable. This can be used to
427- * suppress control flow warnings after asm blocks that transfer
428- * control elsewhere.
429- *
430- * Early snapshots of gcc 4.5 don't support this and we can't detect
431- * this in the preprocessor, but we can live with this because they're
432- * unreleased. Really, we need to have autoconf for the kernel.
433- */
434-#define unreachable() __builtin_unreachable()
435-
436-/* Mark a function definition as prohibited from being cloned. */
437-#define __noclone __attribute__((__noclone__))
438-
439-#endif /* GCC_VERSION >= 40500 */
440-
441-#if GCC_VERSION >= 40600
442-/*
443- * Tell the optimizer that something else uses this function or variable.
444- */
445-#define __visible __attribute__((externally_visible))
446-#endif
447-
448-/*
449- * GCC 'asm goto' miscompiles certain code sequences:
450- *
451- * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
452- *
453- * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
454- * Fixed in GCC 4.8.2 and later versions.
455- *
456- * (asm goto is automatically volatile - the naming reflects this.)
457- */
458-#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
459-
460-#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
461-#if GCC_VERSION >= 40400
462-#define __HAVE_BUILTIN_BSWAP32__
463-#define __HAVE_BUILTIN_BSWAP64__
464-#endif
465-#if GCC_VERSION >= 40800 || (defined(__powerpc__) && GCC_VERSION >= 40600)
466-#define __HAVE_BUILTIN_BSWAP16__
467-#endif
468-#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
469diff --git a/include/linux/compiler-gcc5.h b/include/linux/compiler-gcc5.h
470deleted file mode 100644
471index c8c5659..0000000
472--- a/include/linux/compiler-gcc5.h
473+++ /dev/null
474@@ -1,65 +0,0 @@
475-#ifndef __LINUX_COMPILER_H
476-#error "Please don't include <linux/compiler-gcc5.h> directly, include <linux/compiler.h> instead."
477-#endif
478-
479-#define __used __attribute__((__used__))
480-#define __must_check __attribute__((warn_unused_result))
481-#define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
482-
483-/* Mark functions as cold. gcc will assume any path leading to a call
484- to them will be unlikely. This means a lot of manual unlikely()s
485- are unnecessary now for any paths leading to the usual suspects
486- like BUG(), printk(), panic() etc. [but let's keep them for now for
487- older compilers]
488-
489- Early snapshots of gcc 4.3 don't support this and we can't detect this
490- in the preprocessor, but we can live with this because they're unreleased.
491- Maketime probing would be overkill here.
492-
493- gcc also has a __attribute__((__hot__)) to move hot functions into
494- a special section, but I don't see any sense in this right now in
495- the kernel context */
496-#define __cold __attribute__((__cold__))
497-
498-#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
499-
500-#ifndef __CHECKER__
501-# define __compiletime_warning(message) __attribute__((warning(message)))
502-# define __compiletime_error(message) __attribute__((error(message)))
503-#endif /* __CHECKER__ */
504-
505-/*
506- * Mark a position in code as unreachable. This can be used to
507- * suppress control flow warnings after asm blocks that transfer
508- * control elsewhere.
509- *
510- * Early snapshots of gcc 4.5 don't support this and we can't detect
511- * this in the preprocessor, but we can live with this because they're
512- * unreleased. Really, we need to have autoconf for the kernel.
513- */
514-#define unreachable() __builtin_unreachable()
515-
516-/* Mark a function definition as prohibited from being cloned. */
517-#define __noclone __attribute__((__noclone__))
518-
519-/*
520- * Tell the optimizer that something else uses this function or variable.
521- */
522-#define __visible __attribute__((externally_visible))
523-
524-/*
525- * GCC 'asm goto' miscompiles certain code sequences:
526- *
527- * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
528- *
529- * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
530- *
531- * (asm goto is automatically volatile - the naming reflects this.)
532- */
533-#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
534-
535-#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
536-#define __HAVE_BUILTIN_BSWAP32__
537-#define __HAVE_BUILTIN_BSWAP64__
538-#define __HAVE_BUILTIN_BSWAP16__
539-#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
540diff --git a/include/linux/compiler-intel.h b/include/linux/compiler-intel.h
541index ba147a1..d4c7113 100644
542--- a/include/linux/compiler-intel.h
543+++ b/include/linux/compiler-intel.h
544@@ -13,9 +13,14 @@
545 /* Intel ECC compiler doesn't support gcc specific asm stmts.
546 * It uses intrinsics to do the equivalent things.
547 */
548+#undef barrier
549+#undef barrier_data
550 #undef RELOC_HIDE
551 #undef OPTIMIZER_HIDE_VAR
552
553+#define barrier() __memory_barrier()
554+#define barrier_data(ptr) barrier()
555+
556 #define RELOC_HIDE(ptr, off) \
557 ({ unsigned long __ptr; \
558 __ptr = (unsigned long) (ptr); \
559diff --git a/include/linux/compiler.h b/include/linux/compiler.h
560index d5ad7b1..020ad16 100644
561--- a/include/linux/compiler.h
562+++ b/include/linux/compiler.h
563@@ -17,6 +17,7 @@
564 # define __release(x) __context__(x,-1)
565 # define __cond_lock(x,c) ((c) ? ({ __acquire(x); 1; }) : 0)
566 # define __percpu __attribute__((noderef, address_space(3)))
567+# define __pmem __attribute__((noderef, address_space(5)))
568 #ifdef CONFIG_SPARSE_RCU_POINTER
569 # define __rcu __attribute__((noderef, address_space(4)))
570 #else
571@@ -42,6 +43,7 @@ extern void __chk_io_ptr(const volatile void __iomem *);
572 # define __cond_lock(x,c) (c)
573 # define __percpu
574 # define __rcu
575+# define __pmem
576 #endif
577
578 /* Indirect macros required for expanded argument pasting, eg. __LINE__. */
579@@ -54,7 +56,11 @@ extern void __chk_io_ptr(const volatile void __iomem *);
580 #include <linux/compiler-gcc.h>
581 #endif
582
583+#if defined(CC_USING_HOTPATCH) && !defined(__CHECKER__)
584+#define notrace __attribute__((hotpatch(0,0)))
585+#else
586 #define notrace __attribute__((no_instrument_function))
587+#endif
588
589 /* Intel compiler defines __GNUC__. So we will overwrite implementations
590 * coming from above header files here
591@@ -138,7 +144,7 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
592 */
593 #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
594 #define __trace_if(cond) \
595- if (__builtin_constant_p((cond)) ? !!(cond) : \
596+ if (__builtin_constant_p(!!(cond)) ? !!(cond) : \
597 ({ \
598 int ______r; \
599 static struct ftrace_branch_data \
600@@ -165,6 +171,10 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
601 # define barrier() __memory_barrier()
602 #endif
603
604+#ifndef barrier_data
605+# define barrier_data(ptr) barrier()
606+#endif
607+
608 /* Unreachable code */
609 #ifndef unreachable
610 # define unreachable() do { } while (1)
611@@ -186,6 +196,126 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
612 # define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __LINE__)
613 #endif
614
615+#include <linux/types.h>
616+
617+#define __READ_ONCE_SIZE \
618+({ \
619+ switch (size) { \
620+ case 1: *(__u8 *)res = *(volatile __u8 *)p; break; \
621+ case 2: *(__u16 *)res = *(volatile __u16 *)p; break; \
622+ case 4: *(__u32 *)res = *(volatile __u32 *)p; break; \
623+ case 8: *(__u64 *)res = *(volatile __u64 *)p; break; \
624+ default: \
625+ barrier(); \
626+ __builtin_memcpy((void *)res, (const void *)p, size); \
627+ barrier(); \
628+ } \
629+})
630+
631+static __always_inline
632+void __read_once_size(const volatile void *p, void *res, int size)
633+{
634+ __READ_ONCE_SIZE;
635+}
636+
637+#ifdef CONFIG_KASAN
638+/*
639+ * This function is not 'inline' because __no_sanitize_address confilcts
640+ * with inlining. Attempt to inline it may cause a build failure.
641+ * https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67368
642+ * '__maybe_unused' allows us to avoid defined-but-not-used warnings.
643+ */
644+static __no_sanitize_address __maybe_unused
645+void __read_once_size_nocheck(const volatile void *p, void *res, int size)
646+{
647+ __READ_ONCE_SIZE;
648+}
649+#else
650+static __always_inline
651+void __read_once_size_nocheck(const volatile void *p, void *res, int size)
652+{
653+ __READ_ONCE_SIZE;
654+}
655+#endif
656+
657+static __always_inline void __write_once_size(volatile void *p, void *res, int size)
658+{
659+ switch (size) {
660+ case 1: *(volatile __u8 *)p = *(__u8 *)res; break;
661+ case 2: *(volatile __u16 *)p = *(__u16 *)res; break;
662+ case 4: *(volatile __u32 *)p = *(__u32 *)res; break;
663+ case 8: *(volatile __u64 *)p = *(__u64 *)res; break;
664+ default:
665+ barrier();
666+ __builtin_memcpy((void *)p, (const void *)res, size);
667+ barrier();
668+ }
669+}
670+
671+/*
672+ * Prevent the compiler from merging or refetching reads or writes. The
673+ * compiler is also forbidden from reordering successive instances of
674+ * READ_ONCE, WRITE_ONCE and ACCESS_ONCE (see below), but only when the
675+ * compiler is aware of some particular ordering. One way to make the
676+ * compiler aware of ordering is to put the two invocations of READ_ONCE,
677+ * WRITE_ONCE or ACCESS_ONCE() in different C statements.
678+ *
679+ * In contrast to ACCESS_ONCE these two macros will also work on aggregate
680+ * data types like structs or unions. If the size of the accessed data
681+ * type exceeds the word size of the machine (e.g., 32 bits or 64 bits)
682+ * READ_ONCE() and WRITE_ONCE() will fall back to memcpy and print a
683+ * compile-time warning.
684+ *
685+ * Their two major use cases are: (1) Mediating communication between
686+ * process-level code and irq/NMI handlers, all running on the same CPU,
687+ * and (2) Ensuring that the compiler does not fold, spindle, or otherwise
688+ * mutilate accesses that either do not require ordering or that interact
689+ * with an explicit memory barrier or atomic instruction that provides the
690+ * required ordering.
691+ */
692+
693+#define __READ_ONCE(x, check) \
694+({ \
695+ union { typeof(x) __val; char __c[1]; } __u; \
696+ if (check) \
697+ __read_once_size(&(x), __u.__c, sizeof(x)); \
698+ else \
699+ __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
700+ __u.__val; \
701+})
702+#define READ_ONCE(x) __READ_ONCE(x, 1)
703+
704+/*
705+ * Use READ_ONCE_NOCHECK() instead of READ_ONCE() if you need
706+ * to hide memory access from KASAN.
707+ */
708+#define READ_ONCE_NOCHECK(x) __READ_ONCE(x, 0)
709+
710+#define WRITE_ONCE(x, val) \
711+({ \
712+ union { typeof(x) __val; char __c[1]; } __u = \
713+ { .__val = (__force typeof(x)) (val) }; \
714+ __write_once_size(&(x), __u.__c, sizeof(x)); \
715+ __u.__val; \
716+})
717+
718+/**
719+ * smp_cond_acquire() - Spin wait for cond with ACQUIRE ordering
720+ * @cond: boolean expression to wait for
721+ *
722+ * Equivalent to using smp_load_acquire() on the condition variable but employs
723+ * the control dependency of the wait to reduce the barrier on many platforms.
724+ *
725+ * The control dependency provides a LOAD->STORE order, the additional RMB
726+ * provides LOAD->LOAD order, together they provide LOAD->{LOAD,STORE} order,
727+ * aka. ACQUIRE.
728+ */
729+#define smp_cond_acquire(cond) do { \
730+ while (!(cond)) \
731+ cpu_relax(); \
732+ smp_rmb(); /* ctrl + rmb := acquire */ \
733+} while (0)
734+
735 #endif /* __KERNEL__ */
736
737 #endif /* __ASSEMBLY__ */
738@@ -304,6 +434,14 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
739 #define __visible
740 #endif
741
742+/*
743+ * Assume alignment of return value.
744+ */
745+#ifndef __assume_aligned
746+#define __assume_aligned(a, ...)
747+#endif
748+
749+
750 /* Are two types/vars the same type (ignoring qualifiers)? */
751 #ifndef __same_type
752 # define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
753@@ -311,7 +449,7 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
754
755 /* Is this type a native word size -- useful for atomic operations */
756 #ifndef __native_word
757-# define __native_word(t) (sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
758+# define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
759 #endif
760
761 /* Compile time object size, -1 for unknown */
762@@ -373,12 +511,38 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
763 * to make the compiler aware of ordering is to put the two invocations of
764 * ACCESS_ONCE() in different C statements.
765 *
766- * This macro does absolutely -nothing- to prevent the CPU from reordering,
767- * merging, or refetching absolutely anything at any time. Its main intended
768- * use is to mediate communication between process-level code and irq/NMI
769- * handlers, all running on the same CPU.
770+ * ACCESS_ONCE will only work on scalar types. For union types, ACCESS_ONCE
771+ * on a union member will work as long as the size of the member matches the
772+ * size of the union and the size is smaller than word size.
773+ *
774+ * The major use cases of ACCESS_ONCE used to be (1) Mediating communication
775+ * between process-level code and irq/NMI handlers, all running on the same CPU,
776+ * and (2) Ensuring that the compiler does not fold, spindle, or otherwise
777+ * mutilate accesses that either do not require ordering or that interact
778+ * with an explicit memory barrier or atomic instruction that provides the
779+ * required ordering.
780+ *
781+ * If possible use READ_ONCE()/WRITE_ONCE() instead.
782+ */
783+#define __ACCESS_ONCE(x) ({ \
784+ __maybe_unused typeof(x) __var = (__force typeof(x)) 0; \
785+ (volatile typeof(x) *)&(x); })
786+#define ACCESS_ONCE(x) (*__ACCESS_ONCE(x))
787+
788+/**
789+ * lockless_dereference() - safely load a pointer for later dereference
790+ * @p: The pointer to load
791+ *
792+ * Similar to rcu_dereference(), but for situations where the pointed-to
793+ * object's lifetime is managed by something other than RCU. That
794+ * "something other" might be reference counting or simple immortality.
795 */
796-#define ACCESS_ONCE(x) (*(volatile typeof(x) *)&(x))
797+#define lockless_dereference(p) \
798+({ \
799+ typeof(p) _________p1 = READ_ONCE(p); \
800+ smp_read_barrier_depends(); /* Dependency order vs. p above. */ \
801+ (_________p1); \
802+})
803
804 /* Ignore/forbid kprobes attach on very low level functions marked by this attribute: */
805 #ifdef CONFIG_KPROBES
806--
8072.7.4
808
diff --git a/meta-renesas-extras/recipes/u-boot/u-boot_%.bbappend b/meta-renesas-extras/recipes/u-boot/u-boot_%.bbappend
new file mode 100644
index 0000000..361abbf
--- /dev/null
+++ b/meta-renesas-extras/recipes/u-boot/u-boot_%.bbappend
@@ -0,0 +1,36 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
31
32SRC_URI += "file://0001-compiler-.h-sync-include-linux-compiler-.h-with-Linu.patch"
33
34do_deploy_prepend() {
35 cp ${B}/${UBOOT_SREC} ${S}/${UBOOT_SREC}
36}
diff --git a/meta-renesas-extras/recipes/wayland/libgbm.bbappend b/meta-renesas-extras/recipes/wayland/libgbm.bbappend
new file mode 100644
index 0000000..fd11a50
--- /dev/null
+++ b/meta-renesas-extras/recipes/wayland/libgbm.bbappend
@@ -0,0 +1,30 @@
1############################################################################
2##
3## Copyright (C) 2017 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30PROVIDES += "virtual/libgbm"
diff --git a/scripts/manifest.xml b/scripts/manifest.xml
index 0a38eb2..a4513f4 100644
--- a/scripts/manifest.xml
+++ b/scripts/manifest.xml
@@ -1,8 +1,5 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<manifest> 2<manifest>
3
4 <default sync-j="4" revision="dizzy"/>
5
6 <remote fetch="git://git.yoctoproject.org" name="yocto"/> 3 <remote fetch="git://git.yoctoproject.org" name="yocto"/>
7 <remote fetch="git://git.openembedded.org" name="oe"/> 4 <remote fetch="git://git.openembedded.org" name="oe"/>
8 <remote fetch="git://github.com/Freescale" name="freescale"/> 5 <remote fetch="git://github.com/Freescale" name="freescale"/>
@@ -13,6 +10,8 @@
13 <remote fetch="git://github.com/openembedded" name="oe-mirror"/> 10 <remote fetch="git://github.com/openembedded" name="oe-mirror"/>
14 <remote fetch="git://github.com/madisongh" name="madisongh"/> 11 <remote fetch="git://github.com/madisongh" name="madisongh"/>
15 <remote fetch="ssh://git@git.qt.io/boot2qt" name="playground"/> 12 <remote fetch="ssh://git@git.qt.io/boot2qt" name="playground"/>
13 <remote fetch="git://github.com/renesas-rcar" name="renesas"/>
14 <remote fetch="git://git.linaro.org/openembedded" name="linaro"/>
16 15
17 <project name="poky" 16 <project name="poky"
18 remote="yocto" 17 remote="yocto"
@@ -35,7 +34,7 @@
35 remote="freescale" 34 remote="freescale"
36 revision="fc804d29ee85d58e9bb66f7319e749b53e192457" 35 revision="fc804d29ee85d58e9bb66f7319e749b53e192457"
37 path="sources/meta-freescale" 36 path="sources/meta-freescale"
38 groups="notdefault,external,fsl,ti,smx6"/> 37 groups="notdefault,external,fsl,ti,smx6,renesas-gen3"/>
39 <project name="meta-ti" 38 <project name="meta-ti"
40 remote="yocto" 39 remote="yocto"
41 revision="0862a33b8d642e5fad031a78f90410d497453415" 40 revision="0862a33b8d642e5fad031a78f90410d497453415"
@@ -61,17 +60,32 @@
61 revision="fba09b70a8ac36248e5fcea611e3bb661bb089fc" 60 revision="fba09b70a8ac36248e5fcea611e3bb661bb089fc"
62 path="sources/meta-tegra" 61 path="sources/meta-tegra"
63 groups="notdefault,external,jetson"/> 62 groups="notdefault,external,jetson"/>
63 <project name="meta-renesas"
64 remote="renesas"
65 revision="95cb48ba09bc7e55fd549817e3e26723409e68d5"
66 path="sources/meta-renesas"
67 groups="notdefault,external,renesas-gen3"/>
68 <project name="meta-linaro"
69 remote="linaro"
70 revision="c44bd0ebc8ca2e6201996ef7cba8b71421d3aff7"
71 path="sources/meta-linaro"
72 groups="notdefault,external,renesas-gen3"/>
64 73
65 <project name="nvidia-layer" 74 <project name="nvidia-layer"
66 remote="playground" 75 remote="playground"
67 revision="7c95fabf8d71617130f71464207dd55c3079facd" 76 revision="1fa971efec70d999ac2a57782c12625fb70e5c76"
68 path="sources/nvidia-layer" 77 path="sources/nvidia-layer"
69 groups="notdefault,internal"/> 78 groups="notdefault,internal"/>
70 <project name="vibrante-t186" 79 <project name="vibrante-t186"
71 remote="playground" 80 remote="playground"
72 revision="e947e8f412b41ef673714e752a4065dc2f4fb04e" 81 revision="5e04f79155936ae10bbbea72e012336be6631448"
73 path="sources/vibrante-t186" 82 path="sources/vibrante-t186"
74 groups="notdefault,internal"/> 83 groups="notdefault,internal"/>
84 <project name="renesas-rcar-gen3"
85 remote="playground"
86 revision="41c966df95fad1d8fca5c24676c437a46e997c5f"
87 path="sources/renesas-rcar-gen3"
88 groups="notdefault,internal"/>
75 <project name="meta-smx6" 89 <project name="meta-smx6"
76 remote="playground" 90 remote="playground"
77 revision="c2f639ef4b2fd5809ab95fb330d28c2716aa290d" 91 revision="c2f639ef4b2fd5809ab95fb330d28c2716aa290d"
diff --git a/scripts/setup-environment.sh b/scripts/setup-environment.sh
index f29832d..85820e3 100755
--- a/scripts/setup-environment.sh
+++ b/scripts/setup-environment.sh
@@ -77,6 +77,9 @@ if [ ! -f ${PWD}/${BUILDDIRECTORY}/conf/bblayers.conf ]; then
77 tegra-x1|tegra-t18x) 77 tegra-x1|tegra-t18x)
78 LAYERSCONF="bblayers.conf.nvidia-tegra.sample" 78 LAYERSCONF="bblayers.conf.nvidia-tegra.sample"
79 ;; 79 ;;
80 salvator-x|h3ulcb|m3ulcb)
81 LAYERSCONF="bblayers.conf.rcar-gen3.sample"
82 ;;
80 emulator) 83 emulator)
81 LAYERSCONF="bblayers.conf.emulator.sample" 84 LAYERSCONF="bblayers.conf.emulator.sample"
82 ;; 85 ;;