Skip to contentSkip to conversation

chromium updates

PATCH In review Trevor Woerner 1 participant 6 messages Jul 21, 2016 – Aug 3, 2016

lore
Share & tools
lore
#0 lore raw

v2 cover chromium updates

Building chromium for wayland is a significantly more difficult action than building it for x11. In order for chromium to run on top of wayland, a shim is required. This shim is added by checking out a separate repository which provides patches that are applied to the chromium sources. These patches are only generated a couple times per year, meaning only a small number of chromium releases are capable of being run on wayland. This artificially holds back the versions of chromium which this recipe can provide.

This patch set:
- starts off with a little cleanup (removing an unused patch),
- adds gcc-6 support (making it possible to build successfully with gcc-6),
- splits out a chromium-wayland recipe from chromiumso each can move independently and, therefore, lower the maintenance effort while keeping up-to-date, and
- updates the chromium recipe to 52.0.2743.76 which is considered the latest stable (as per https://www.chromium.org/developers/calendar)

Changes in v2:

In the first version of this patch set, I split the "chromium" recipe into "chromium-wayland" and "chromium-x11" (thus removing the existing/expected "chromium" recipe. In this patch set I leave the "chromium" recipe to continue building for x11 and define a new recipe specifically for "chromium-wayland".

Trevor Woerner (4):
chromium: remove unused patch
chromium: gcc-6 support
chromium: split -wayland out
chromium: update 48.0.2548.0 -> 52.0.2743.76

 recipes-browser/chromium/chromium-browser.inc      |  33 ++--
 .../chromium/chromium-wayland_48.0.2548.0.bb       |  32 ++++
 ...0001-bignum.cc-disable-warning-from-gcc-5.patch |  60 -------
 .../0002-Disable-API-keys-info-bar.patch           |  33 ----
 ...-image_util.cc-disable-warning-from-gcc-5.patch |  39 -----
 .../0008-Fix-GCC-uninitialized-warning.patch       |  26 ---
 ...9-Fix-build-errors-with-GCC-in-Debug-mode.patch |  46 -----
 ...be-used-uninitialized-in-this-function-wa.patch |  25 ---
 ...for-unused-variable-error-in-ui-gfx-color.patch |  86 ----------
 .../0006-Remove-GBM-support-from-wayland.gyp.patch |   0
 ...for-glib-related-build-error-with-ozone-w.patch |   0
 .../0011-Replace-readdir_r-with-readdir.patch      |   0
 .../add_missing_stat_h_include.patch               |   0
 .../chromium/chromium-wayland/remove-Werror.patch  |  73 ++++++++
 .../0011-Replace-readdir_r-with-readdir.patch      | 186 +++++++++++++++++++++
 .../chromium/add_missing_stat_h_include.patch      |  39 +++++
 .../chromium/chromium/chromium/remove-Werror.patch |  74 ++++++++
 recipes-browser/chromium/chromium/unistd-2.patch   |  27 ---
 recipes-browser/chromium/chromium_48.0.2548.0.bb   |  50 ------
 recipes-browser/chromium/chromium_52.0.2743.76.bb  |  18 ++
 ...accelerated-Canvas-support-from-blacklist.patch |   0
 ...3-Remove-hard-coded-values-for-CC-and-CXX.patch |   0
 ...y-i18n_process_css_test.html-file-to-avoi.patch |   0
 ...erride-root-filesystem-access-restriction.patch |   0
 recipes-browser/chromium/files/api-keys.patch      |  13 ++
 .../{chromium => files}/armv6/include.gypi         |   0
 .../{chromium => files}/armv6/oe-defaults.gypi     |   0
 .../{chromium => files}/armv7a/include.gypi        |   0
 .../{chromium => files}/armv7a/oe-defaults.gypi    |   0
 .../{chromium => files}/component-build.gypi       |   0
 .../chromium/{chromium => files}/google-chrome     |   0
 .../{chromium => files}/google-chrome.desktop      |   0
 .../{chromium => files}/x86-64/include.gypi        |   0
 .../{chromium => files}/x86-64/oe-defaults.gypi    |   0
 .../chromium/{chromium => files}/x86/include.gypi  |   0
 .../{chromium => files}/x86/oe-defaults.gypi       |   0
 36 files changed, 447 insertions(+), 413 deletions(-)
 create mode 100644 recipes-browser/chromium/chromium-wayland_48.0.2548.0.bb
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0001-bignum.cc-disable-warning-from-gcc-5.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0002-Disable-API-keys-info-bar.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0002-image_util.cc-disable-warning-from-gcc-5.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0008-Fix-GCC-uninitialized-warning.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0009-Fix-build-errors-with-GCC-in-Debug-mode.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0010-Fix-rv-may-be-used-uninitialized-in-this-function-wa.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0012-Workaround-for-unused-variable-error-in-ui-gfx-color.patch
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0006-Remove-GBM-support-from-wayland.gyp.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0011-Replace-readdir_r-with-readdir.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/add_missing_stat_h_include.patch (100%)
 create mode 100644 recipes-browser/chromium/chromium/chromium-wayland/remove-Werror.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/0011-Replace-readdir_r-with-readdir.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/add_missing_stat_h_include.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/remove-Werror.patch
 delete mode 100644 recipes-browser/chromium/chromium/unistd-2.patch
 delete mode 100644 recipes-browser/chromium/chromium_48.0.2548.0.bb
 create mode 100644 recipes-browser/chromium/chromium_52.0.2743.76.bb
 rename recipes-browser/chromium/{chromium/chromium-48 => files}/0001-Remove-accelerated-Canvas-support-from-blacklist.patch (100%)
 rename recipes-browser/chromium/{chromium/chromium-48 => files}/0003-Remove-hard-coded-values-for-CC-and-CXX.patch (100%)
 rename recipes-browser/chromium/{chromium/chromium-48 => files}/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch (100%)
 rename recipes-browser/chromium/{chromium/chromium-48 => files}/0005-Override-root-filesystem-access-restriction.patch (100%)
 create mode 100644 recipes-browser/chromium/files/api-keys.patch
 rename recipes-browser/chromium/{chromium => files}/armv6/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/armv6/oe-defaults.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/armv7a/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/armv7a/oe-defaults.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/component-build.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/google-chrome (100%)
 rename recipes-browser/chromium/{chromium => files}/google-chrome.desktop (100%)
 rename recipes-browser/chromium/{chromium => files}/x86-64/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/x86-64/oe-defaults.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/x86/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/x86/oe-defaults.gypi (100%)
Signature · 1 line
2.9.0
#1 lore raw

PATCH v2 1/4 chromium: remove unused patch

The unistd-2 patch was no longer being referenced by the recipe, so remove it.

---
 recipes-browser/chromium/chromium-browser.inc    |  5 ++---
 recipes-browser/chromium/chromium/unistd-2.patch | 27 ------------------------
 2 files changed, 2 insertions(+), 30 deletions(-)
 delete mode 100644 recipes-browser/chromium/chromium/unistd-2.patch
recipes-browser/chromium/chromium-browser.inc +2 -3
index 365f883..c9da1f7 100644
@@ -2,9 +2,8 @@
 # 1) Add patches to SRC_URI. Version specific patches should be contained in a
 #    "chromium-XX" subdirectory, where XX is the major version. There are also
 #    patches that are shared amongst versions but may one day no longer be
-#    needed (like unistd2.patch). These do not belong in such a subdirectory,
-#    but still need to be explicitely be added. Do NOT add ozone-wayland patches
-#    to SRC_URI here!
+#    needed. These do not belong in such a subdirectory, but still need to be
+#    explicitely be added. Do NOT add ozone-wayland patches to SRC_URI here!
 # 2) Add md5sum and sha256sum hashes of the tarball.
 # 3) Add ozone-wayland patches to the OZONE_WAYLAND_EXTRA_PATCHES variable.
 #    The rule with the chromium-XX subdirectory also applies here.
recipes-browser/chromium/chromium/unistd-2.patch deleted +0 -27
deleted file mode 100644
index 6b5018b..0000000
@@ -1,27 +0,0 @@
-diff --git a/chrome/browser/memory_details_linux.cc b/chrome/browser/memory_details_linux.cc
-index bee24ce..299f237 100644
---- a/chrome/browser/memory_details_linux.cc
-+++ b/chrome/browser/memory_details_linux.cc
-@@ -7,6 +7,10 @@
- #include <map>
- #include <set>
- 
-+#if defined(OS_POSIX)
-+#include <unistd.h>
-+#endif
-+
- #include "base/bind.h"
- #include "base/process_util.h"
- #include "base/string_util.h"
-diff --git a/ipc/ipc_channel.h b/ipc/ipc_channel.h
-index 14c375b..345f9eb 100644
---- a/ipc/ipc_channel.h
-+++ b/ipc/ipc_channel.h
-@@ -10,6 +10,7 @@
- 
- #if defined(OS_POSIX)
- #include <sys/types.h>
-+#include <unistd.h>
- #endif
- 
- #include "base/compiler_specific.h"
Signature · 1 line
2.9.0
#2 lore raw

PATCH v2 2/4 chromium: gcc-6 support

In reply to Trevor Woerner

Allow chromium to build with gcc-6.

---
 ...0001-bignum.cc-disable-warning-from-gcc-5.patch | 60 ---------------
 ...-image_util.cc-disable-warning-from-gcc-5.patch | 39 ----------
 .../0008-Fix-GCC-uninitialized-warning.patch       | 26 -------
 ...9-Fix-build-errors-with-GCC-in-Debug-mode.patch | 46 ------------
 ...be-used-uninitialized-in-this-function-wa.patch | 25 -------
 ...for-unused-variable-error-in-ui-gfx-color.patch | 86 ----------------------
 .../chromium/chromium-48/remove-Werror.patch       | 73 ++++++++++++++++++
 recipes-browser/chromium/chromium_48.0.2548.0.bb   | 12 +--
 8 files changed, 74 insertions(+), 293 deletions(-)
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0001-bignum.cc-disable-warning-from-gcc-5.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0002-image_util.cc-disable-warning-from-gcc-5.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0008-Fix-GCC-uninitialized-warning.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0009-Fix-build-errors-with-GCC-in-Debug-mode.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0010-Fix-rv-may-be-used-uninitialized-in-this-function-wa.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium-48/0012-Workaround-for-unused-variable-error-in-ui-gfx-color.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium-48/remove-Werror.patch
recipes-browser/chromium/chromium/chromium-48/0001-bignum.cc-disable-warning-from-gcc-5.patch deleted +0 -60
deleted file mode 100644
index 67f9800..0000000
@@ -1,60 +0,0 @@
-From 5b8c53a6bb11c8aa9b575b5a8155c25c5085f349 Mon Sep 17 00:00:00 2001
-From: Max Krummenacher <[email protected]>
-Date: Fri, 6 Nov 2015 12:22:35 +0100
-Subject: [PATCH] bignum.cc: disable warning from gcc 5
-
-addresses:
-  ../../third_party/WebKit/Source/wtf/dtoa/bignum.cc:105:10: error: assuming
-  signed overflow does not occur when assuming that (X + c) < X is always
-  false [-Werror=strict-overflow]
-      void Bignum::AssignDecimalString(Vector<const char> value) {
-           ^
-
-Signed-off-by: Max Krummenacher <[email protected]>
-
-Upstream-Status: Pending
-See the discussion on the issue in Chromium upstream:
-https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/3uwBwunIa7g
----
- third_party/WebKit/Source/wtf/dtoa/bignum.cc | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/third_party/WebKit/Source/wtf/dtoa/bignum.cc b/third_party/WebKit/Source/wtf/dtoa/bignum.cc
-index a000b46..6c6d336 100644
---- a/third_party/WebKit/Source/wtf/dtoa/bignum.cc
-+++ b/third_party/WebKit/Source/wtf/dtoa/bignum.cc
-@@ -102,7 +102,10 @@
-     }
- 
- 
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic warning "-Wstrict-overflow"
-     void Bignum::AssignDecimalString(Vector<const char> value) {
-+#pragma GCC diagnostic pop
-         // 2^64 = 18446744073709551616 > 10^19
-         const int kMaxUint64DecimalDigits = 19;
-         Zero();
-@@ -696,7 +696,10 @@
-     }
-
-
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic warning "-Wstrict-overflow"
-     void Bignum::Align(const Bignum& other) {
-+#pragma GCC diagnostic pop
-         if (exponent_ > other.exponent_) {
-             // If "X" represents a "hidden" digit (by the exponent) then we are in the
-             // following case (a == this, b == other):
-@@ -709,7 +709,10 @@
-             for (int i = used_digits_ - 1; i >= 0; --i) {
-                 bigits_[i + zero_digits] = bigits_[i];
-             }
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic warning "-Wstrict-overflow"
-             for (int i = 0; i < zero_digits; ++i) {
-+#pragma GCC diagnostic pop
-                 bigits_[i] = 0;
-             }
-             used_digits_ += zero_digits;
--- 
-1.8.4.5
recipes-browser/chromium/chromium/chromium-48/0002-image_util.cc-disable-warning-from-gcc-5.patch deleted +0 -39
deleted file mode 100644
index 1825a85..0000000
@@ -1,39 +0,0 @@
-From 2f674d980a116075dc7123a3e243b1451e4a732d Mon Sep 17 00:00:00 2001
-From: Max Krummenacher <[email protected]>
-Date: Tue, 3 Nov 2015 22:13:40 +0100
-Subject: [PATCH] image_util.cc: disable warning from gcc 5
-
-addresses:
-  ../../ui/gfx/image/image_util.cc:50:6: error: assuming signed overflow does
-  not occur when assuming that (X - c) <= X is always true
-  [-Werror=strict-overflow]
-  bool VisibleMargins(const ImageSkia& image, int* leading, int* trailing) {
-       ^
-
-Signed-off-by: Max Krummenacher <[email protected]>
-
-Upstream-Status: Pending
-See the discussion on the issue in Chromium upstream:
-https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/3uwBwunIa7g
-
----
- ui/gfx/image/image_util.cc | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/ui/gfx/image/image_util.cc b/ui/gfx/image/image_util.cc
-index 89a3f8c..d595da3 100644
---- a/ui/gfx/image/image_util.cc
-+++ b/ui/gfx/image/image_util.cc
-@@ -47,7 +47,10 @@
- }
- #endif  // !defined(OS_IOS)
- 
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic warning "-Wstrict-overflow"
- bool VisibleMargins(const ImageSkia& image, int* leading, int* trailing) {
-+#pragma GCC diagnostic pop
-   *leading = 0;
-   *trailing = std::max(1, image.width()) - 1;
-   if (!image.HasRepresentation(1.0))
--- 
-1.8.4.5
recipes-browser/chromium/chromium/chromium-48/0008-Fix-GCC-uninitialized-warning.patch deleted +0 -26
deleted file mode 100644
index 3bf6d96..0000000
@@ -1,26 +0,0 @@
-From 12d7fb643188ea5033aaf70ffe64b4c58eefc5eb Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <[email protected]>
-Date: Fri, 29 Apr 2016 14:02:44 +0200
-Subject: [PATCH] Fix GCC uninitialized warning
-
-Signed-off-by: Carlos Rafael Giani <[email protected]>
----
- third_party/ots/src/name.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/third_party/ots/src/name.cc b/third_party/ots/src/name.cc
-index a0dd1ea..070ddae 100644
---- a/third_party/ots/src/name.cc
-+++ b/third_party/ots/src/name.cc
-@@ -79,7 +79,7 @@ bool ots_name_parse(Font *font, const uint8_t* data, size_t length) {
-   const char* string_base = reinterpret_cast<const char*>(data) +
-       string_offset;
- 
--  NameRecord prev_record;
-+  NameRecord prev_record(0, 0, 0, 0);
-   bool sort_required = false;
- 
-   // Read all the names, discarding any with invalid IDs,
--- 
-2.5.0
-
recipes-browser/chromium/chromium/chromium-48/0009-Fix-build-errors-with-GCC-in-Debug-mode.patch deleted +0 -46

46 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium-48/0010-Fix-rv-may-be-used-uninitialized-in-this-function-wa.patch deleted +0 -25
deleted file mode 100644
index 30cd511..0000000
@@ -1,25 +0,0 @@
-From 135debdc4613d5d323d1659166466f74f2e75284 Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <[email protected]>
-Date: Fri, 6 May 2016 12:44:36 +0200
-Subject: [PATCH] Fix "'rv' may be used uninitialized in this function" warning
-
-Signed-off-by: Carlos Rafael Giani <[email protected]>
----
- third_party/mojo/src/mojo/edk/system/unique_identifier.cc | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/mojo/src/mojo/edk/system/unique_identifier.cc b/third_party/mojo/src/mojo/edk/system/unique_identifier.cc
-index 22abf22..6f9a761 100644
---- a/third_party/mojo/src/mojo/edk/system/unique_identifier.cc
-+++ b/third_party/mojo/src/mojo/edk/system/unique_identifier.cc
-@@ -31,6 +31,7 @@ UniqueIdentifier UniqueIdentifier::FromString(const std::string& s,
-     memcpy(rv.data_, &bytes[0], sizeof(rv.data_));
-     *success = true;
-   } else {
-+    memset(rv.data_, 0, sizeof(rv.data_));
-     *success = false;
-   }
-   return rv;
--- 
-2.7.4
-
recipes-browser/chromium/chromium/chromium-48/0012-Workaround-for-unused-variable-error-in-ui-gfx-color.patch deleted +0 -86

86 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium-48/remove-Werror.patch new file +73 -0

73 lines not on this page · raw message

recipes-browser/chromium/chromium_48.0.2548.0.bb +1 -11
index 2a52568..70afa6c 100644
@@ -2,16 +2,11 @@ include chromium-browser.inc
 
 SRC_URI += "\
         file://chromium-48/add_missing_stat_h_include.patch \
-        file://chromium-48/0001-bignum.cc-disable-warning-from-gcc-5.patch \
-        file://chromium-48/0002-image_util.cc-disable-warning-from-gcc-5.patch \
         file://chromium-48/0003-Remove-hard-coded-values-for-CC-and-CXX.patch \
         file://chromium-48/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch \
         file://chromium-48/0005-Override-root-filesystem-access-restriction.patch \
-        file://chromium-48/0008-Fix-GCC-uninitialized-warning.patch \
-        file://chromium-48/0009-Fix-build-errors-with-GCC-in-Debug-mode.patch \
-        file://chromium-48/0010-Fix-rv-may-be-used-uninitialized-in-this-function-wa.patch \
         file://chromium-48/0011-Replace-readdir_r-with-readdir.patch \
-        file://chromium-48/0012-Workaround-for-unused-variable-error-in-ui-gfx-color.patch \
+        file://chromium-48/remove-Werror.patch \
         ${@bb.utils.contains('PACKAGECONFIG', 'ignore-lost-context', 'file://chromium-48/0001-Remove-accelerated-Canvas-support-from-blacklist.patch', '', d)} \
         ${@bb.utils.contains('PACKAGECONFIG', 'disable-api-keys-info-bar', 'file://chromium-48/0002-Disable-API-keys-info-bar.patch', '', d)} \
 "
@@ -43,8 +38,3 @@ CHROMIUM_X11_DEPENDS = "xextproto gtk+ libxi libxss"
 CHROMIUM_X11_GYP_DEFINES = ""
 CHROMIUM_WAYLAND_DEPENDS = "wayland libxkbcommon"
 CHROMIUM_WAYLAND_GYP_DEFINES = "use_ash=1 use_aura=1 chromeos=0 use_ozone=1 use_xkbcommon=1"
-
-# | gen/protoc_out/components/enhanced_bookmarks/proto/cluster.pb.cc:257:3: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
-# |    if (!_extensions_.IsInitialized()) return false;  return true;
-# |    ^~
-PNBLACKLIST[chromium] ?= "BROKEN: fails to build with gcc-6"
Signature · 1 line
2.9.0
#3 lore raw

PATCH v2 3/4 chromium: split -wayland out

In reply to Trevor Woerner

The wayland dependency on the ozone patches holds back the x11 version. By splitting out the wayland-specific parts into its own recipe, each can target separate versions.

---
 recipes-browser/chromium/chromium-browser.inc      |  31 +--
 .../chromium/chromium-wayland_48.0.2548.0.bb       |  33 +++
 ...accelerated-Canvas-support-from-blacklist.patch |   0
 .../0002-Disable-API-keys-info-bar.patch           |   0
 ...3-Remove-hard-coded-values-for-CC-and-CXX.patch |   0
 ...y-i18n_process_css_test.html-file-to-avoi.patch |   0
 ...erride-root-filesystem-access-restriction.patch |   0
 .../0006-Remove-GBM-support-from-wayland.gyp.patch |   0
 ...for-glib-related-build-error-with-ozone-w.patch |   0
 .../0011-Replace-readdir_r-with-readdir.patch      |   0
 .../add_missing_stat_h_include.patch               |   0
 .../remove-Werror.patch                            |   0
 ...accelerated-Canvas-support-from-blacklist.patch |  49 +++++
 .../chromium/0002-Disable-API-keys-info-bar.patch  |  33 +++
 ...3-Remove-hard-coded-values-for-CC-and-CXX.patch |  43 ++++
 ...y-i18n_process_css_test.html-file-to-avoi.patch |  26 +++
 ...erride-root-filesystem-access-restriction.patch |  30 +++
 .../0011-Replace-readdir_r-with-readdir.patch      | 237 +++++++++++++++++++++
 .../chromium/add_missing_stat_h_include.patch      |  39 ++++
 .../chromium/chromium/chromium/remove-Werror.patch |  73 +++++++
 recipes-browser/chromium/chromium_48.0.2548.0.bb   |  43 +---
 .../{chromium => files}/armv6/include.gypi         |   0
 .../{chromium => files}/armv6/oe-defaults.gypi     |   0
 .../{chromium => files}/armv7a/include.gypi        |   0
 .../{chromium => files}/armv7a/oe-defaults.gypi    |   0
 .../{chromium => files}/component-build.gypi       |   0
 .../chromium/{chromium => files}/google-chrome     |   0
 .../{chromium => files}/google-chrome.desktop      |   0
 .../{chromium => files}/x86-64/include.gypi        |   0
 .../{chromium => files}/x86-64/oe-defaults.gypi    |   0
 .../chromium/{chromium => files}/x86/include.gypi  |   0
 .../{chromium => files}/x86/oe-defaults.gypi       |   0
 32 files changed, 585 insertions(+), 52 deletions(-)
 create mode 100644 recipes-browser/chromium/chromium-wayland_48.0.2548.0.bb
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0001-Remove-accelerated-Canvas-support-from-blacklist.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0002-Disable-API-keys-info-bar.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0003-Remove-hard-coded-values-for-CC-and-CXX.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0005-Override-root-filesystem-access-restriction.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0006-Remove-GBM-support-from-wayland.gyp.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/0011-Replace-readdir_r-with-readdir.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/add_missing_stat_h_include.patch (100%)
 rename recipes-browser/chromium/chromium/{chromium-48 => chromium-wayland}/remove-Werror.patch (100%)
 create mode 100644 recipes-browser/chromium/chromium/chromium/0001-Remove-accelerated-Canvas-support-from-blacklist.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/0002-Disable-API-keys-info-bar.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/0003-Remove-hard-coded-values-for-CC-and-CXX.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/0005-Override-root-filesystem-access-restriction.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/0011-Replace-readdir_r-with-readdir.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/add_missing_stat_h_include.patch
 create mode 100644 recipes-browser/chromium/chromium/chromium/remove-Werror.patch
 rename recipes-browser/chromium/{chromium => files}/armv6/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/armv6/oe-defaults.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/armv7a/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/armv7a/oe-defaults.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/component-build.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/google-chrome (100%)
 rename recipes-browser/chromium/{chromium => files}/google-chrome.desktop (100%)
 rename recipes-browser/chromium/{chromium => files}/x86-64/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/x86-64/oe-defaults.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/x86/include.gypi (100%)
 rename recipes-browser/chromium/{chromium => files}/x86/oe-defaults.gypi (100%)
recipes-browser/chromium/chromium-browser.inc +11 -20
index c9da1f7..fc7ac04 100644
@@ -1,19 +1,16 @@
 # Recipe files have to perform the following tasks after including this file:
-# 1) Add patches to SRC_URI. Version specific patches should be contained in a
-#    "chromium-XX" subdirectory, where XX is the major version. There are also
-#    patches that are shared amongst versions but may one day no longer be
-#    needed. These do not belong in such a subdirectory, but still need to be
-#    explicitely be added. Do NOT add ozone-wayland patches to SRC_URI here!
+# 1) Add patches to SRC_URI. Platform-specific patches should be contained in
+#    either "chromium-x11" or "chromium-wayland". There are also patches that
+#    are shared amongst platforms but may one day no longer be needed. These
+#    do not belong in such a subdirectory, but still need to be explicitely be
+#    added. Do NOT add ozone-wayland patches to SRC_URI here!
 # 2) Add md5sum and sha256sum hashes of the tarball.
 # 3) Add ozone-wayland patches to the OZONE_WAYLAND_EXTRA_PATCHES variable.
-#    The rule with the chromium-XX subdirectory also applies here.
 # 4) Set the OZONE_WAYLAND_GIT_BRANCH and OZONE_WAYLAND_GIT_SRCREV values.
 # 5) Optionally, set values for these variables:
 #    * OZONE_WAYLAND_PATCH_FILE_GLOB
 #    * OZONE_WAYLAND_GIT_DESTSUFFIX
-#    * CHROMIUM_X11_DEPENDS
 #    * CHROMIUM_X11_GYP_DEFINES
-#    * CHROMIUM_WAYLAND_DEPENDS
 #    * CHROMIUM_WAYLAND_GYP_DEFINES
 
 include chromium.inc
@@ -22,13 +19,16 @@ DESCRIPTION = "Chromium browser"
 DEPENDS += "libgnome-keyring"
 
 SRC_URI = "\
-        http://gsdview.appspot.com/chromium-browser-official/${P}.tar.xz \
+        http://gsdview.appspot.com/chromium-browser-official/chromium-${PV}.tar.xz \
         file://include.gypi \
         file://oe-defaults.gypi \
         file://google-chrome \
         file://google-chrome.desktop \
 "
 
+S = "${WORKDIR}/chromium-${PV}"
+BPN = "chromium"
+
 
 # PACKAGECONFIG options
 # ^^^^^^^^^^^^^^^^^^^^^
@@ -121,9 +121,7 @@ OZONE_WAYLAND_EXTRA_PATCHES ?= ""
 
 # These are present as their own variables, since they have changed between versions
 # a few times in the past already; making them variables makes it easier to handle that
-CHROMIUM_X11_DEPENDS ?= ""
 CHROMIUM_X11_GYP_DEFINES ?= ""
-CHROMIUM_WAYLAND_DEPENDS ?= ""
 CHROMIUM_WAYLAND_GYP_DEFINES ?= ""
 
 
@@ -134,12 +132,6 @@ CHROMIUM_EXTRA_ARGS ?= " \
         ${@bb.utils.contains('PACKAGECONFIG', 'kiosk-mode', '--start-fullscreen --kiosk --no-first-run', '', d)} \
 "
 
-SRC_URI += "\
-        ${@bb.utils.contains('PACKAGECONFIG', 'component-build', 'file://component-build.gypi', '', d)} \
-        ${@oe.utils.conditional('CHROMIUM_ENABLE_WAYLAND', '1', 'git://github.com/01org/ozone-wayland.git;destsuffix=${OZONE_WAYLAND_GIT_DESTSUFFIX};branch=${OZONE_WAYLAND_GIT_BRANCH};rev=${OZONE_WAYLAND_GIT_SRCREV}', '', d)} \
-"
-
-
 # Some sanity checks.
 python do_check_variables() {
     CHROMIUM_BUILD_TYPE = d.getVar('CHROMIUM_BUILD_TYPE', True)
@@ -158,7 +150,7 @@ python do_check_variables() {
     if (CHROMIUM_ENABLE_WAYLAND == '1'):
         bb.plain("INFO: Chromium has been configured with Wayland support (ozone-wayland). Build type is \'%s\'" %CHROMIUM_BUILD_TYPE)
     else:
-        bb.plain("INFO: Chromium has been configured without Wayland support. Build type is \'%s\'" %CHROMIUM_BUILD_TYPE)
+        bb.plain("INFO: Chromium has been configured for X11. Build type is \'%s\'" %CHROMIUM_BUILD_TYPE)
 }
 addtask check_variables before do_fetch
 
@@ -191,6 +183,7 @@ EXTRA_OEGYP = " \
 	-Dclang=0 \
 	-Dhost_clang=0 \
 	-Ddisable_fatal_linker_warnings=1 \
+	-Dv8_use_external_startup_data=0 \
 	-Dlinux_use_bundled_gold=0 \
 	-Dlinux_use_bundled_binutils=0 \
 	${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-Dlinux_use_gold_flags=1', '-Dlinux_use_gold_flags=0', d)} \
@@ -203,10 +196,8 @@ EXTRA_OEGYP = " \
 
 python() {
     if d.getVar('CHROMIUM_ENABLE_WAYLAND', True) == '1':
-        d.appendVar('DEPENDS', ' %s ' % d.getVar('CHROMIUM_WAYLAND_DEPENDS', True))
         d.appendVar('GYP_DEFINES', ' %s ' % d.getVar('CHROMIUM_WAYLAND_GYP_DEFINES', True))
     else:
-        d.appendVar('DEPENDS', ' %s ' % d.getVar('CHROMIUM_X11_DEPENDS', True))
         d.appendVar('GYP_DEFINES', ' %s ' % d.getVar('CHROMIUM_X11_GYP_DEFINES', True))
 }
 
recipes-browser/chromium/chromium-wayland_48.0.2548.0.bb new file +33 -0
new file mode 100644
index 0000000..a5d59a0
@@ -0,0 +1,33 @@
+include chromium-browser.inc
+
+DEPENDS += "wayland libxkbcommon"
+
+SRC_URI += "\
+        file://chromium-wayland/add_missing_stat_h_include.patch \
+        file://chromium-wayland/0003-Remove-hard-coded-values-for-CC-and-CXX.patch \
+        file://chromium-wayland/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch \
+        file://chromium-wayland/0005-Override-root-filesystem-access-restriction.patch \
+	file://chromium-wayland/0006-Remove-GBM-support-from-wayland.gyp.patch \
+	file://chromium-wayland/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch \
+        file://chromium-wayland/0011-Replace-readdir_r-with-readdir.patch \
+        file://chromium-wayland/remove-Werror.patch \
+        ${@bb.utils.contains('PACKAGECONFIG', 'component-build', 'file://component-build.gypi', '', d)} \
+        ${@bb.utils.contains('PACKAGECONFIG', 'ignore-lost-context', 'file://chromium-wayland/0001-Remove-accelerated-Canvas-support-from-blacklist.patch', '', d)} \
+        ${@bb.utils.contains('PACKAGECONFIG', 'disable-api-keys-info-bar', 'file://chromium-wayland/0002-Disable-API-keys-info-bar.patch', '', d)} \
+"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=0fca02217a5d49a14dfe2d11837bb34d"
+SRC_URI[md5sum] = "0534981cc21efcd11e64b67b85854420"
+SRC_URI[sha256sum] = "4ca4e2adb340b3fb4d502266ad7d6bda45fa3519906dbf63cce11a63f680dbc8"
+
+OZONE_WAYLAND_GIT_BRANCH = "Milestone-SouthSister"
+OZONE_WAYLAND_GIT_SRCREV = "c605505044af3345a276abbd7c29fd53db1dea40"
+
+# Component build is unsupported in ozone-wayland for Chromium 48
+python() {
+    if (d.getVar('CHROMIUM_ENABLE_WAYLAND', True) == '1'):
+        if bb.utils.contains('PACKAGECONFIG', 'component-build', True, False, d):
+            bb.fatal("Chromium 48 Wayland version cannot be built in component-mode")
+}
+
+CHROMIUM_WAYLAND_GYP_DEFINES = "use_ash=1 use_aura=1 chromeos=0 use_ozone=1 use_xkbcommon=1"
recipes-browser/chromium/chromium/chromium-wayland/0001-Remove-accelerated-Canvas-support-from-blacklist.patch renamed from recipes-browser/chromium/chromium/chromium-48/0001-Remove-accelerated-Canvas-support-from-blacklist.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0001-Remove-accelerated-Canvas-support-from-blacklist.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0001-Remove-accelerated-Canvas-support-from-blacklist.patch
recipes-browser/chromium/chromium/chromium-wayland/0002-Disable-API-keys-info-bar.patch renamed from recipes-browser/chromium/chromium/chromium-48/0002-Disable-API-keys-info-bar.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0002-Disable-API-keys-info-bar.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0002-Disable-API-keys-info-bar.patch
recipes-browser/chromium/chromium/chromium-wayland/0003-Remove-hard-coded-values-for-CC-and-CXX.patch renamed from recipes-browser/chromium/chromium/chromium-48/0003-Remove-hard-coded-values-for-CC-and-CXX.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0003-Remove-hard-coded-values-for-CC-and-CXX.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0003-Remove-hard-coded-values-for-CC-and-CXX.patch
recipes-browser/chromium/chromium/chromium-wayland/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch renamed from recipes-browser/chromium/chromium/chromium-48/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch
recipes-browser/chromium/chromium/chromium-wayland/0005-Override-root-filesystem-access-restriction.patch renamed from recipes-browser/chromium/chromium/chromium-48/0005-Override-root-filesystem-access-restriction.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0005-Override-root-filesystem-access-restriction.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0005-Override-root-filesystem-access-restriction.patch
recipes-browser/chromium/chromium/chromium-wayland/0006-Remove-GBM-support-from-wayland.gyp.patch renamed from recipes-browser/chromium/chromium/chromium-48/0006-Remove-GBM-support-from-wayland.gyp.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0006-Remove-GBM-support-from-wayland.gyp.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0006-Remove-GBM-support-from-wayland.gyp.patch
recipes-browser/chromium/chromium/chromium-wayland/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch renamed from recipes-browser/chromium/chromium/chromium-48/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch
recipes-browser/chromium/chromium/chromium-wayland/0011-Replace-readdir_r-with-readdir.patch renamed from recipes-browser/chromium/chromium/chromium-48/0011-Replace-readdir_r-with-readdir.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/0011-Replace-readdir_r-with-readdir.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/0011-Replace-readdir_r-with-readdir.patch
recipes-browser/chromium/chromium/chromium-wayland/add_missing_stat_h_include.patch renamed from recipes-browser/chromium/chromium/chromium-48/add_missing_stat_h_include.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/add_missing_stat_h_include.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/add_missing_stat_h_include.patch
recipes-browser/chromium/chromium/chromium-wayland/remove-Werror.patch renamed from recipes-browser/chromium/chromium/chromium-48/remove-Werror.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-48/remove-Werror.patch
rename to recipes-browser/chromium/chromium/chromium-wayland/remove-Werror.patch
recipes-browser/chromium/chromium/chromium/0001-Remove-accelerated-Canvas-support-from-blacklist.patch new file +49 -0

49 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium/0002-Disable-API-keys-info-bar.patch new file +33 -0
new file mode 100644
index 0000000..56a5b28
@@ -0,0 +1,33 @@
+From 68773f2faea2608145e820bf23cf5efaf50e3399 Mon Sep 17 00:00:00 2001
+From: Carlos Rafael Giani <[email protected]>
+Date: Mon, 9 Jun 2014 15:05:11 +0200
+Subject: [PATCH] Disable API keys info bar
+
+Upstream-Status: Inappropriate [other]
+The info bar is not a bug; it is just undesirable in some use cases.
+A clean approach - which requires discussion with upstream - is to
+disable it by using a command line option.
+
+Signed-off-by: Carlos Rafael Giani <[email protected]>
+---
+ chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc b/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
+index edea11a..4aef68f 100644
+--- a/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
++++ b/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
+@@ -18,8 +18,10 @@ void GoogleApiKeysInfoBarDelegate::Create(InfoBarService* infobar_service) {
+   if (google_apis::HasKeysConfigured())
+     return;
+ 
++#if 0
+   infobar_service->AddInfoBar(infobar_service->CreateConfirmInfoBar(
+       scoped_ptr<ConfirmInfoBarDelegate>(new GoogleApiKeysInfoBarDelegate())));
++#endif
+ }
+ 
+ GoogleApiKeysInfoBarDelegate::GoogleApiKeysInfoBarDelegate()
+-- 
+1.9.1
+
recipes-browser/chromium/chromium/chromium/0003-Remove-hard-coded-values-for-CC-and-CXX.patch new file +43 -0

43 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch new file +26 -0
new file mode 100644
index 0000000..24bec71
@@ -0,0 +1,26 @@
+From 5158da97132db1a43c95f4c0ad65b4ac2629c4da Mon Sep 17 00:00:00 2001
+From: Carlos Rafael Giani <[email protected]>
+Date: Sat, 23 Apr 2016 14:05:04 +0200
+Subject: [PATCH] Create empty i18n_process_css_test.html file to avoid build
+ failure
+
+According to https://groups.google.com/a/chromium.org/forum/#!topic/chromium-packagers/9JX1N2nf4PU
+creating an empty i18n_process_css_test.html is a valid workaround for the
+following build error:
+
+"Exception: Failed to open test/data/webui/i18n_process_css_test.html while trying to flatten test/data/webui/i18n_process_css_test.html. (No such file or directory)"
+
+Upstream-Status: Pending
+
+Signed-off-by: Carlos Rafael Giani <[email protected]>
+---
+ chrome/test/data/webui/i18n_process_css_test.html | 0
+ 1 file changed, 0 insertions(+), 0 deletions(-)
+ create mode 100644 chrome/test/data/webui/i18n_process_css_test.html
+
+diff --git a/chrome/test/data/webui/i18n_process_css_test.html b/chrome/test/data/webui/i18n_process_css_test.html
+new file mode 100644
+index 0000000..e69de29
+-- 
+2.5.0
+
recipes-browser/chromium/chromium/chromium/0005-Override-root-filesystem-access-restriction.patch new file +30 -0
new file mode 100644
index 0000000..ceb6c6c
@@ -0,0 +1,30 @@
+From ef3aaa58be440c1845e60432a498501088da07fe Mon Sep 17 00:00:00 2001
+From: Carlos Rafael Giani <[email protected]>
+Date: Thu, 28 Apr 2016 09:29:59 +0200
+Subject: [PATCH] Override root filesystem access restriction
+
+Signed-off-by: Carlos Rafael Giani <[email protected]>
+---
+ sandbox/linux/suid/client/setuid_sandbox_client.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc
+index 12ef7f9..b59908a 100644
+--- a/sandbox/linux/suid/client/setuid_sandbox_client.cc
++++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc
+@@ -21,8 +21,12 @@
+ namespace {
+ 
+ bool IsFileSystemAccessDenied() {
++#if 0
+   base::ScopedFD root_dir(HANDLE_EINTR(open("/", O_RDONLY)));
+   return !root_dir.is_valid();
++#else
++  return true;
++#endif
+ }
+ 
+ int GetHelperApi(base::Environment* env) {
+-- 
+2.5.0
+
recipes-browser/chromium/chromium/chromium/0011-Replace-readdir_r-with-readdir.patch new file +237 -0

237 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium/add_missing_stat_h_include.patch new file +39 -0
new file mode 100644
index 0000000..4620db2
@@ -0,0 +1,39 @@
+sys/stat.h used to be indirectly included through
+device/udev_linux/scoped_udev.h -> libudev.h -> sys/stat.h
+but libudev.h in jethro no longer includes sys/stat.h resulting in the
+following compile time errors:
+
+arm-angstrom-linux-gnueabi-g++ ...  ../../components/storage_monitor/storage_monitor_linux.cc -o obj/components/storage_monitor/storage_monitor.storage_monitor_linux.o
+../../components/storage_monitor/storage_monitor_linux.cc: In function 'scoped_ptr<storage_monitor::StorageInfo> storage_monitor::{anonymous}::GetDeviceInfo(const base::FilePath&, const base::FilePath&)':
+../../components/storage_monitor/storage_monitor_linux.cc:132:15: error: aggregate 'storage_monitor::{anonymous}::GetDeviceInfo(const base::FilePath&, const base::FilePath&)::stat device_stat' has incomplete type and cannot be defined
+   struct stat device_stat;
+               ^
+../../components/storage_monitor/storage_monitor_linux.cc:133:53: error: invalid use of incomplete type 'struct storage_monitor::{anonymous}::GetDeviceInfo(const base::FilePath&, const base::FilePath&)::stat'
+   if (stat(device_path.value().c_str(), &device_stat) < 0)
+                                                     ^
+../../components/storage_monitor/storage_monitor_linux.cc:132:10: error: forward declaration of 'struct storage_monitor::{anonymous}::GetDeviceInfo(const base::FilePath&, const base::FilePath&)::stat'
+   struct stat device_stat;
+          ^
+../../components/storage_monitor/storage_monitor_linux.cc:137:34: error: 'S_ISCHR' was not declared in this scope
+   if (S_ISCHR(device_stat.st_mode))
+                                  ^
+../../components/storage_monitor/storage_monitor_linux.cc:139:39: error: 'S_ISBLK' was not declared in this scope
+   else if (S_ISBLK(device_stat.st_mode))
+                                       ^
+
+As the code makes use of stat systemcalls include the file explicitely.
+Tested with ARCH armv7.
+
+Signed-off-by: Max Krummenacher <max.oss.09 at gmail.com>
+Upstream-Status: Pending
+
+--- a/components/storage_monitor/storage_monitor_linux.cc~	2015-01-21 21:28:16.000000000 +0100
++++ b/components/storage_monitor/storage_monitor_linux.cc	2015-10-27 13:21:08.405655894 +0100
+@@ -8,6 +8,7 @@
+ 
+ #include <mntent.h>
+ #include <stdio.h>
++#include <sys/stat.h>
+ 
+ #include <list>
+ 
recipes-browser/chromium/chromium/chromium/remove-Werror.patch new file +73 -0

73 lines not on this page · raw message

recipes-browser/chromium/chromium_48.0.2548.0.bb +11 -32

51 lines not on this page · raw message

recipes-browser/chromium/files/armv6/include.gypi renamed from recipes-browser/chromium/chromium/armv6/include.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/armv6/include.gypi
rename to recipes-browser/chromium/files/armv6/include.gypi
recipes-browser/chromium/files/armv6/oe-defaults.gypi renamed from recipes-browser/chromium/chromium/armv6/oe-defaults.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/armv6/oe-defaults.gypi
rename to recipes-browser/chromium/files/armv6/oe-defaults.gypi
recipes-browser/chromium/files/armv7a/include.gypi renamed from recipes-browser/chromium/chromium/armv7a/include.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/armv7a/include.gypi
rename to recipes-browser/chromium/files/armv7a/include.gypi
recipes-browser/chromium/files/armv7a/oe-defaults.gypi renamed from recipes-browser/chromium/chromium/armv7a/oe-defaults.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/armv7a/oe-defaults.gypi
rename to recipes-browser/chromium/files/armv7a/oe-defaults.gypi
recipes-browser/chromium/files/component-build.gypi renamed from recipes-browser/chromium/chromium/component-build.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/component-build.gypi
rename to recipes-browser/chromium/files/component-build.gypi
recipes-browser/chromium/files/google-chrome renamed from recipes-browser/chromium/chromium/google-chrome +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/google-chrome
rename to recipes-browser/chromium/files/google-chrome
recipes-browser/chromium/files/google-chrome.desktop renamed from recipes-browser/chromium/chromium/google-chrome.desktop +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/google-chrome.desktop
rename to recipes-browser/chromium/files/google-chrome.desktop
recipes-browser/chromium/files/x86-64/include.gypi renamed from recipes-browser/chromium/chromium/x86-64/include.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/x86-64/include.gypi
rename to recipes-browser/chromium/files/x86-64/include.gypi
recipes-browser/chromium/files/x86-64/oe-defaults.gypi renamed from recipes-browser/chromium/chromium/x86-64/oe-defaults.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/x86-64/oe-defaults.gypi
rename to recipes-browser/chromium/files/x86-64/oe-defaults.gypi
recipes-browser/chromium/files/x86/include.gypi renamed from recipes-browser/chromium/chromium/x86/include.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/x86/include.gypi
rename to recipes-browser/chromium/files/x86/include.gypi
recipes-browser/chromium/files/x86/oe-defaults.gypi renamed from recipes-browser/chromium/chromium/x86/oe-defaults.gypi +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/x86/oe-defaults.gypi
rename to recipes-browser/chromium/files/x86/oe-defaults.gypi
Signature · 1 line
2.9.0
#4 lore raw

PATCH v2 4/4 chromium: update 48.0.2548.0 -> 52.0.2743.76

In reply to Trevor Woerner
---
 recipes-browser/chromium/chromium-browser.inc      |  1 +
 .../chromium/chromium-wayland_48.0.2548.0.bb       |  9 +--
 .../0002-Disable-API-keys-info-bar.patch           | 33 ---------
 ...accelerated-Canvas-support-from-blacklist.patch | 49 -------------
 .../chromium/0002-Disable-API-keys-info-bar.patch  | 33 ---------
 ...3-Remove-hard-coded-values-for-CC-and-CXX.patch | 43 -----------
 ...y-i18n_process_css_test.html-file-to-avoi.patch | 26 -------
 ...erride-root-filesystem-access-restriction.patch | 30 --------
 .../0011-Replace-readdir_r-with-readdir.patch      | 55 +-------------
 .../chromium/add_missing_stat_h_include.patch      | 12 +--
 .../chromium/chromium/chromium/remove-Werror.patch | 85 +++++++++++-----------
 recipes-browser/chromium/chromium_48.0.2548.0.bb   | 19 -----
 recipes-browser/chromium/chromium_52.0.2743.76.bb  | 18 +++++
 ...accelerated-Canvas-support-from-blacklist.patch |  0
 ...3-Remove-hard-coded-values-for-CC-and-CXX.patch |  0
 ...y-i18n_process_css_test.html-file-to-avoi.patch |  0
 ...erride-root-filesystem-access-restriction.patch |  0
 recipes-browser/chromium/files/api-keys.patch      | 13 ++++
 18 files changed, 87 insertions(+), 339 deletions(-)
 delete mode 100644 recipes-browser/chromium/chromium/chromium-wayland/0002-Disable-API-keys-info-bar.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium/0001-Remove-accelerated-Canvas-support-from-blacklist.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium/0002-Disable-API-keys-info-bar.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium/0003-Remove-hard-coded-values-for-CC-and-CXX.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch
 delete mode 100644 recipes-browser/chromium/chromium/chromium/0005-Override-root-filesystem-access-restriction.patch
 delete mode 100644 recipes-browser/chromium/chromium_48.0.2548.0.bb
 create mode 100644 recipes-browser/chromium/chromium_52.0.2743.76.bb
 rename recipes-browser/chromium/{chromium/chromium-wayland => files}/0001-Remove-accelerated-Canvas-support-from-blacklist.patch (100%)
 rename recipes-browser/chromium/{chromium/chromium-wayland => files}/0003-Remove-hard-coded-values-for-CC-and-CXX.patch (100%)
 rename recipes-browser/chromium/{chromium/chromium-wayland => files}/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch (100%)
 rename recipes-browser/chromium/{chromium/chromium-wayland => files}/0005-Override-root-filesystem-access-restriction.patch (100%)
 create mode 100644 recipes-browser/chromium/files/api-keys.patch
recipes-browser/chromium/chromium-browser.inc +1 -0
index fc7ac04..4fb47fd 100644
@@ -23,6 +23,7 @@ SRC_URI = "\
         file://include.gypi \
         file://oe-defaults.gypi \
         file://google-chrome \
+        ${@bb.utils.contains('PACKAGECONFIG', 'disable-api-keys-info-bar', 'file://api-keys.patch;patchdir=${WORKDIR}', '', d)} \
         file://google-chrome.desktop \
 "
 
recipes-browser/chromium/chromium-wayland_48.0.2548.0.bb +4 -5
index a5d59a0..b1a32dc 100644
@@ -4,16 +4,15 @@ DEPENDS += "wayland libxkbcommon"
 
 SRC_URI += "\
         file://chromium-wayland/add_missing_stat_h_include.patch \
-        file://chromium-wayland/0003-Remove-hard-coded-values-for-CC-and-CXX.patch \
-        file://chromium-wayland/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch \
-        file://chromium-wayland/0005-Override-root-filesystem-access-restriction.patch \
+        file://0003-Remove-hard-coded-values-for-CC-and-CXX.patch \
+        file://0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch \
+        file://0005-Override-root-filesystem-access-restriction.patch \
 	file://chromium-wayland/0006-Remove-GBM-support-from-wayland.gyp.patch \
 	file://chromium-wayland/0007-Workaround-for-glib-related-build-error-with-ozone-w.patch \
         file://chromium-wayland/0011-Replace-readdir_r-with-readdir.patch \
         file://chromium-wayland/remove-Werror.patch \
         ${@bb.utils.contains('PACKAGECONFIG', 'component-build', 'file://component-build.gypi', '', d)} \
-        ${@bb.utils.contains('PACKAGECONFIG', 'ignore-lost-context', 'file://chromium-wayland/0001-Remove-accelerated-Canvas-support-from-blacklist.patch', '', d)} \
-        ${@bb.utils.contains('PACKAGECONFIG', 'disable-api-keys-info-bar', 'file://chromium-wayland/0002-Disable-API-keys-info-bar.patch', '', d)} \
+        ${@bb.utils.contains('PACKAGECONFIG', 'ignore-lost-context', 'file://0001-Remove-accelerated-Canvas-support-from-blacklist.patch', '', d)} \
 "
 
 LIC_FILES_CHKSUM = "file://LICENSE;md5=0fca02217a5d49a14dfe2d11837bb34d"
recipes-browser/chromium/chromium/chromium-wayland/0002-Disable-API-keys-info-bar.patch deleted +0 -33
deleted file mode 100644
index 56a5b28..0000000
@@ -1,33 +0,0 @@
-From 68773f2faea2608145e820bf23cf5efaf50e3399 Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <[email protected]>
-Date: Mon, 9 Jun 2014 15:05:11 +0200
-Subject: [PATCH] Disable API keys info bar
-
-Upstream-Status: Inappropriate [other]
-The info bar is not a bug; it is just undesirable in some use cases.
-A clean approach - which requires discussion with upstream - is to
-disable it by using a command line option.
-
-Signed-off-by: Carlos Rafael Giani <[email protected]>
----
- chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc b/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
-index edea11a..4aef68f 100644
---- a/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
-+++ b/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
-@@ -18,8 +18,10 @@ void GoogleApiKeysInfoBarDelegate::Create(InfoBarService* infobar_service) {
-   if (google_apis::HasKeysConfigured())
-     return;
- 
-+#if 0
-   infobar_service->AddInfoBar(infobar_service->CreateConfirmInfoBar(
-       scoped_ptr<ConfirmInfoBarDelegate>(new GoogleApiKeysInfoBarDelegate())));
-+#endif
- }
- 
- GoogleApiKeysInfoBarDelegate::GoogleApiKeysInfoBarDelegate()
--- 
-1.9.1
-
recipes-browser/chromium/chromium/chromium/0001-Remove-accelerated-Canvas-support-from-blacklist.patch deleted +0 -49

49 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium/0002-Disable-API-keys-info-bar.patch deleted +0 -33
deleted file mode 100644
index 56a5b28..0000000
@@ -1,33 +0,0 @@
-From 68773f2faea2608145e820bf23cf5efaf50e3399 Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <[email protected]>
-Date: Mon, 9 Jun 2014 15:05:11 +0200
-Subject: [PATCH] Disable API keys info bar
-
-Upstream-Status: Inappropriate [other]
-The info bar is not a bug; it is just undesirable in some use cases.
-A clean approach - which requires discussion with upstream - is to
-disable it by using a command line option.
-
-Signed-off-by: Carlos Rafael Giani <[email protected]>
----
- chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc b/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
-index edea11a..4aef68f 100644
---- a/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
-+++ b/chrome/browser/ui/startup/google_api_keys_infobar_delegate.cc
-@@ -18,8 +18,10 @@ void GoogleApiKeysInfoBarDelegate::Create(InfoBarService* infobar_service) {
-   if (google_apis::HasKeysConfigured())
-     return;
- 
-+#if 0
-   infobar_service->AddInfoBar(infobar_service->CreateConfirmInfoBar(
-       scoped_ptr<ConfirmInfoBarDelegate>(new GoogleApiKeysInfoBarDelegate())));
-+#endif
- }
- 
- GoogleApiKeysInfoBarDelegate::GoogleApiKeysInfoBarDelegate()
--- 
-1.9.1
-
recipes-browser/chromium/chromium/chromium/0003-Remove-hard-coded-values-for-CC-and-CXX.patch deleted +0 -43

43 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch deleted +0 -26
deleted file mode 100644
index 24bec71..0000000
@@ -1,26 +0,0 @@
-From 5158da97132db1a43c95f4c0ad65b4ac2629c4da Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <[email protected]>
-Date: Sat, 23 Apr 2016 14:05:04 +0200
-Subject: [PATCH] Create empty i18n_process_css_test.html file to avoid build
- failure
-
-According to https://groups.google.com/a/chromium.org/forum/#!topic/chromium-packagers/9JX1N2nf4PU
-creating an empty i18n_process_css_test.html is a valid workaround for the
-following build error:
-
-"Exception: Failed to open test/data/webui/i18n_process_css_test.html while trying to flatten test/data/webui/i18n_process_css_test.html. (No such file or directory)"
-
-Upstream-Status: Pending
-
-Signed-off-by: Carlos Rafael Giani <[email protected]>
----
- chrome/test/data/webui/i18n_process_css_test.html | 0
- 1 file changed, 0 insertions(+), 0 deletions(-)
- create mode 100644 chrome/test/data/webui/i18n_process_css_test.html
-
-diff --git a/chrome/test/data/webui/i18n_process_css_test.html b/chrome/test/data/webui/i18n_process_css_test.html
-new file mode 100644
-index 0000000..e69de29
--- 
-2.5.0
-
recipes-browser/chromium/chromium/chromium/0005-Override-root-filesystem-access-restriction.patch deleted +0 -30
deleted file mode 100644
index ceb6c6c..0000000
@@ -1,30 +0,0 @@
-From ef3aaa58be440c1845e60432a498501088da07fe Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <[email protected]>
-Date: Thu, 28 Apr 2016 09:29:59 +0200
-Subject: [PATCH] Override root filesystem access restriction
-
-Signed-off-by: Carlos Rafael Giani <[email protected]>
----
- sandbox/linux/suid/client/setuid_sandbox_client.cc | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc
-index 12ef7f9..b59908a 100644
---- a/sandbox/linux/suid/client/setuid_sandbox_client.cc
-+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc
-@@ -21,8 +21,12 @@
- namespace {
- 
- bool IsFileSystemAccessDenied() {
-+#if 0
-   base::ScopedFD root_dir(HANDLE_EINTR(open("/", O_RDONLY)));
-   return !root_dir.is_valid();
-+#else
-+  return true;
-+#endif
- }
- 
- int GetHelperApi(base::Environment* env) {
--- 
-2.5.0
-
recipes-browser/chromium/chromium/chromium/0011-Replace-readdir_r-with-readdir.patch +2 -53

69 lines not on this page · raw message

recipes-browser/chromium/chromium/chromium/add_missing_stat_h_include.patch +6 -6
index 4620db2..dc34437 100644
@@ -27,13 +27,13 @@ Tested with ARCH armv7.
 Signed-off-by: Max Krummenacher <max.oss.09 at gmail.com>
 Upstream-Status: Pending
 
---- a/components/storage_monitor/storage_monitor_linux.cc~	2015-01-21 21:28:16.000000000 +0100
-+++ b/components/storage_monitor/storage_monitor_linux.cc	2015-10-27 13:21:08.405655894 +0100
-@@ -8,6 +8,7 @@
- 
+--- chromium-53.0.2774.4-ORIG/components/storage_monitor/storage_monitor_linux.cc       2016-06-22 12:04:10.000000000 -0400
++++ chromium-53.0.2774.4/components/storage_monitor/storage_monitor_linux.cc    2016-06-24 17:43:39.874640219 -0400
+@@ -9,6 +9,7 @@
  #include <mntent.h>
+ #include <stdint.h>
  #include <stdio.h>
 +#include <sys/stat.h>
- 
+ #include <limits>
  #include <list>
- 
+ #include <utility>
recipes-browser/chromium/chromium/chromium/remove-Werror.patch +43 -42

113 lines not on this page · raw message

recipes-browser/chromium/chromium_48.0.2548.0.bb deleted +0 -19
deleted file mode 100644
index d72c621..0000000
@@ -1,19 +0,0 @@
-include chromium-browser.inc
-
-DEPENDS += "xextproto gtk+ libxi libxss"
-
-SRC_URI += "\
-        file://chromium/add_missing_stat_h_include.patch \
-        file://chromium/0003-Remove-hard-coded-values-for-CC-and-CXX.patch \
-        file://chromium/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch \
-        file://chromium/0005-Override-root-filesystem-access-restriction.patch \
-        file://chromium/0011-Replace-readdir_r-with-readdir.patch \
-        file://chromium/remove-Werror.patch \
-        ${@bb.utils.contains('PACKAGECONFIG', 'component-build', 'file://component-build.gypi', '', d)} \
-        ${@bb.utils.contains('PACKAGECONFIG', 'ignore-lost-context', 'file://chromium/0001-Remove-accelerated-Canvas-support-from-blacklist.patch', '', d)} \
-        ${@bb.utils.contains('PACKAGECONFIG', 'disable-api-keys-info-bar', 'file://chromium/0002-Disable-API-keys-info-bar.patch', '', d)} \
-"
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=0fca02217a5d49a14dfe2d11837bb34d"
-SRC_URI[md5sum] = "0534981cc21efcd11e64b67b85854420"
-SRC_URI[sha256sum] = "4ca4e2adb340b3fb4d502266ad7d6bda45fa3519906dbf63cce11a63f680dbc8"
recipes-browser/chromium/chromium_52.0.2743.76.bb new file +18 -0
new file mode 100644
index 0000000..14b519c
@@ -0,0 +1,18 @@
+include chromium-browser.inc
+
+DEPENDS += "xextproto gtk+ libxi libxss"
+
+SRC_URI += "\
+        file://chromium/add_missing_stat_h_include.patch \
+        file://0003-Remove-hard-coded-values-for-CC-and-CXX.patch \
+        file://0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch \
+        file://0005-Override-root-filesystem-access-restriction.patch \
+        file://chromium/0011-Replace-readdir_r-with-readdir.patch \
+        file://chromium/remove-Werror.patch \
+        ${@bb.utils.contains('PACKAGECONFIG', 'component-build', 'file://component-build.gypi', '', d)} \
+        ${@bb.utils.contains('PACKAGECONFIG', 'ignore-lost-context', 'file://0001-Remove-accelerated-Canvas-support-from-blacklist.patch', '', d)} \
+"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=0fca02217a5d49a14dfe2d11837bb34d"
+SRC_URI[md5sum] = "0fee71466e1f2dc39ed4549d04b58ee2"
+SRC_URI[sha256sum] = "c54cdc11c3324152f3d5be98dcb4eae2bda0fc9dac7dd5f9010150458d68c18c"
recipes-browser/chromium/files/0001-Remove-accelerated-Canvas-support-from-blacklist.patch renamed from recipes-browser/chromium/chromium/chromium-wayland/0001-Remove-accelerated-Canvas-support-from-blacklist.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-wayland/0001-Remove-accelerated-Canvas-support-from-blacklist.patch
rename to recipes-browser/chromium/files/0001-Remove-accelerated-Canvas-support-from-blacklist.patch
recipes-browser/chromium/files/0003-Remove-hard-coded-values-for-CC-and-CXX.patch renamed from recipes-browser/chromium/chromium/chromium-wayland/0003-Remove-hard-coded-values-for-CC-and-CXX.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-wayland/0003-Remove-hard-coded-values-for-CC-and-CXX.patch
rename to recipes-browser/chromium/files/0003-Remove-hard-coded-values-for-CC-and-CXX.patch
recipes-browser/chromium/files/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch renamed from recipes-browser/chromium/chromium/chromium-wayland/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-wayland/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch
rename to recipes-browser/chromium/files/0004-Create-empty-i18n_process_css_test.html-file-to-avoi.patch
recipes-browser/chromium/files/0005-Override-root-filesystem-access-restriction.patch renamed from recipes-browser/chromium/chromium/chromium-wayland/0005-Override-root-filesystem-access-restriction.patch +0 -0
similarity index 100%
rename from recipes-browser/chromium/chromium/chromium-wayland/0005-Override-root-filesystem-access-restriction.patch
rename to recipes-browser/chromium/files/0005-Override-root-filesystem-access-restriction.patch
recipes-browser/chromium/files/api-keys.patch new file +13 -0
new file mode 100644
index 0000000..85dc40c
@@ -0,0 +1,13 @@
+--- a/google-chrome	2016-07-08 09:47:11.121810646 -0400
++++ b/google-chrome	2016-07-08 09:47:37.881683637 -0400
+@@ -3,6 +3,10 @@
+ export CHROME_DEVEL_SANDBOX=/usr/sbin/chrome-devel-sandbox
+ export LD_LIBRARY_PATH=/usr/lib/chromium
+ 
++export GOOGLE_API_KEY="no"
++export GOOGLE_DEFAULT_CLIENT_ID="no"
++export GOOGLE_DEFAULT_CLIENT_SECRET="no"
++
+ CHROME_EXTRA_ARGS=""
+ if [ "`whoami`" = "root" ] ; then
+ 	CHROME_EXTRA_ARGS="${CHROME_EXTRA_ARGS} --user-data-dir=ROOT_HOME/.chromium/"
Signature · 1 line
2.9.0
#5 lore raw
In reply to Trevor Woerner

ping :-)

Is it possible to get an update on whether this patch is being considered or not?

There's also an earlier patch from July 15th which hasn't been added yet either.