Updated to arc-runtime-45.5021.392.0
diff --git a/mods/android/bionic/libc/include/uchar.h b/mods/android/bionic/libc/include/uchar.h
new file mode 100644
index 0000000..a0289f1
--- /dev/null
+++ b/mods/android/bionic/libc/include/uchar.h
@@ -0,0 +1,59 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#ifndef _UCHAR_H_
+#define _UCHAR_H_
+
+#include <sys/cdefs.h>
+#include <wchar.h>
+
+__BEGIN_DECLS
+
+// ARC MOD BEGIN UPSTREAM bionic-fix-char16-definition
+#if !defined(__cplusplus) && __STDC_VERSION__ >= 201112L
+typedef __CHAR16_TYPE__ char16_t;
+typedef __CHAR32_TYPE__ char32_t;
+#endif
+// ARC MOD END UPSTREAM
+#define __STD_UTF_16__ 1
+#define __STD_UTF_32__ 1
+
+size_t c16rtomb(char* __restrict, char16_t, mbstate_t* __restrict);
+size_t c32rtomb(char* __restrict, char32_t, mbstate_t* __restrict);
+size_t mbrtoc16(char16_t* __restrict,
+ const char* __restrict,
+ size_t,
+ mbstate_t* __restrict);
+size_t mbrtoc32(char32_t* __restrict,
+ const char* __restrict,
+ size_t,
+ mbstate_t* __restrict);
+
+__END_DECLS
+
+#endif /* _UCHAR_H_ */
diff --git a/mods/chromium-ppapi/config.py b/mods/chromium-ppapi/config.py
index 2970a5e..4231ed5 100644
--- a/mods/chromium-ppapi/config.py
+++ b/mods/chromium-ppapi/config.py
@@ -54,7 +54,9 @@
# generation and later phases.
n.rule(rule_name,
command=('(' + ' '.join(gen_command) + ')' +
- ' && touch $out.tmp && mv $out.tmp $out'),
+ ' && touch $out.tmp && mv $out.tmp $out' +
+ ' && printf "%s: %s" $out "$in" > $out.d'),
+ depfile='$out.d',
description=rule_name + ' $out')
idls = n.find_all_files(api_dir, '.idl', use_staging=False)
diff --git a/src/build/DEPS.chrome b/src/build/DEPS.chrome
index 3c1e66a..a9a495f 100644
--- a/src/build/DEPS.chrome
+++ b/src/build/DEPS.chrome
@@ -1 +1 @@
-330591
+332162
diff --git a/src/build/DEPS.naclsdk b/src/build/DEPS.naclsdk
index b41a8e2..cbb657b 100644
--- a/src/build/DEPS.naclsdk
+++ b/src/build/DEPS.naclsdk
@@ -41,49 +41,6 @@
"archives": [
{
"checksum": {
- "sha1": "7574819c9f07f8c8e939180d6eb4bc076cf924a8"
- },
- "host_os": "all",
- "size": 75915941,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/37.0.2062.94/naclports.tar.bz2"
- },
- {
- "checksum": {
- "sha1": "98e20f1150bb4b9fcf35ceea89bf0a4d3734f02f"
- },
- "host_os": "linux",
- "size": 350765766,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/37.0.2062.94/naclsdk_linux.tar.bz2"
- },
- {
- "checksum": {
- "sha1": "1577b3e7e9a59a3bc307b1fc1f745c7ffa6793c5"
- },
- "host_os": "mac",
- "size": 296872323,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/37.0.2062.94/naclsdk_mac.tar.bz2"
- },
- {
- "checksum": {
- "sha1": "248243b95f509f7d1ecddc3041951c2fc09508a6"
- },
- "host_os": "win",
- "size": 332414690,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/37.0.2062.94/naclsdk_win.tar.bz2"
- }
- ],
- "description": "Chrome 37 bundle. Chrome revision: 290621. NaCl revision: 55a8716",
- "name": "pepper_37",
- "recommended": "no",
- "repath": "pepper_37",
- "revision": 290621,
- "stability": "post_stable",
- "version": 37
- },
- {
- "archives": [
- {
- "checksum": {
"sha1": "e851b20346337f208dc010bbdd933d03f833bc34"
},
"host_os": "all",
@@ -299,42 +256,42 @@
"archives": [
{
"checksum": {
- "sha1": "d8f464c08e4db0479cf82a29a8c6890e151e23f3"
+ "sha1": "61b6c9758a458ef3d038d06645391fee96a5a0a3"
},
"host_os": "all",
- "size": 78016465,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.65/naclports.tar.bz2"
+ "size": 78017028,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.81/naclports.tar.bz2"
},
{
"checksum": {
- "sha1": "95346c47e2430909be8f7235eb4cc3cddbc61009"
+ "sha1": "751fa8088d9ca6ce0f5c95071efaec5dce379d9d"
},
"host_os": "linux",
- "size": 364389676,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.65/naclsdk_linux.tar.bz2"
+ "size": 364379974,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.81/naclsdk_linux.tar.bz2"
},
{
"checksum": {
- "sha1": "d7f3c2d1739a4c181b931c96fcc34db0cfcf3c07"
+ "sha1": "626f74fbea644b056086fbe038340c6ba261ad37"
},
"host_os": "mac",
- "size": 357686692,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.65/naclsdk_mac.tar.bz2"
+ "size": 357669712,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.81/naclsdk_mac.tar.bz2"
},
{
"checksum": {
- "sha1": "a6f5043eef32d3e42827e941294866d103faad67"
+ "sha1": "3c6807f47703d70c45283ae27f5b6f9c69465e97"
},
"host_os": "win",
- "size": 359641717,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.65/naclsdk_win.tar.bz2"
+ "size": 359639375,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/43.0.2357.81/naclsdk_win.tar.bz2"
}
],
- "description": "Chrome 43 bundle. Chrome revision: 385. NaCl revision: bd095c3ad5f1f25a9c6f44b7f38cec89383a5c33",
+ "description": "Chrome 43 bundle. Chrome revision: 434. NaCl revision: bd095c3ad5f1f25a9c6f44b7f38cec89383a5c33",
"name": "pepper_43",
"recommended": "yes",
"repath": "pepper_43",
- "revision": 385,
+ "revision": 434,
"stability": "stable",
"version": 43
},
@@ -342,42 +299,85 @@
"archives": [
{
"checksum": {
- "sha1": "9ab2bafffa2eeaca348308223fb36af05ac0bbbd"
+ "sha1": "b5ffe1cc4e3ea8f898771545612e693a6b9d6da5"
},
"host_os": "all",
- "size": 77571079,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.330503/naclports.tar.bz2"
+ "size": 77796366,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/44.0.2403.18/naclports.tar.bz2"
},
{
"checksum": {
- "sha1": "12a50dfa547a4c5367a5af8a4ae2f595626aa79d"
+ "sha1": "649971471638a71bc266e385f2d19f2e4650ed0e"
},
"host_os": "linux",
- "size": 364721471,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.330503/naclsdk_linux.tar.bz2"
+ "size": 364133812,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/44.0.2403.18/naclsdk_linux.tar.bz2"
},
{
"checksum": {
- "sha1": "3e73af15961761ea7f5cb7ae198fb85b85a36475"
+ "sha1": "bac980d11a1a9b13a0b388f63404783778292e71"
},
"host_os": "mac",
- "size": 354199133,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.330503/naclsdk_mac.tar.bz2"
+ "size": 354521007,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/44.0.2403.18/naclsdk_mac.tar.bz2"
},
{
"checksum": {
- "sha1": "cb350b447f2119b8b963f68c9b27e9c82964d88f"
+ "sha1": "429dbecb1c19a98246ff81ed33f8d48e7cb318aa"
},
"host_os": "win",
- "size": 356500620,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.330503/naclsdk_win.tar.bz2"
+ "size": 356566484,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/44.0.2403.18/naclsdk_win.tar.bz2"
}
],
- "description": "Chrome 45 bundle. Chrome revision: 330503. NaCl revision: 862ca265aa1fdcabe8b3ab518251381bfbf48468",
+ "description": "Chrome 44 bundle. Chrome revision: 89. NaCl revision: 862ca265aa1fdcabe8b3ab518251381bfbf48468",
+ "name": "pepper_44",
+ "recommended": "no",
+ "repath": "pepper_44",
+ "revision": 89,
+ "stability": "beta",
+ "version": 44
+ },
+ {
+ "archives": [
+ {
+ "checksum": {
+ "sha1": "f301ddc3875c3a87af2ddac7106e236b1cd13c76"
+ },
+ "host_os": "all",
+ "size": 77571501,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.332141/naclports.tar.bz2"
+ },
+ {
+ "checksum": {
+ "sha1": "00b82b26f2c26182f41ae15f9b427ad31bf01fe3"
+ },
+ "host_os": "linux",
+ "size": 364328542,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.332141/naclsdk_linux.tar.bz2"
+ },
+ {
+ "checksum": {
+ "sha1": "f24ff4c26097d6a955917050e9ea5373eb22adad"
+ },
+ "host_os": "mac",
+ "size": 353982914,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.332141/naclsdk_mac.tar.bz2"
+ },
+ {
+ "checksum": {
+ "sha1": "bb8a9386af2d7ffab145e91a0baea092c1076aee"
+ },
+ "host_os": "win",
+ "size": 355571951,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.332141/naclsdk_win.tar.bz2"
+ }
+ ],
+ "description": "Chrome 45 bundle. Chrome revision: 332141. NaCl revision: ec2d51e124a58435534985710f421145d10b093e",
"name": "pepper_canary",
"recommended": "no",
"repath": "pepper_45",
- "revision": 330503,
+ "revision": 332141,
"stability": "canary",
"version": 45
},
@@ -385,18 +385,18 @@
"archives": [
{
"checksum": {
- "sha1": "3b8cba08f2e298febab39dfeb2736310fa472160"
+ "sha1": "b06dc379a2a929b3dc15eb3b2f11c63a4b3a8aea"
},
"host_os": "linux",
- "size": 417287324,
- "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.330508/naclsdk_bionic.tar.bz2"
+ "size": 416722073,
+ "url": "https://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.332145/naclsdk_bionic.tar.bz2"
}
],
- "description": "Chrome 45 bundle. Chrome revision: 330508. NaCl revision: 862ca265aa1fdcabe8b3ab518251381bfbf48468",
+ "description": "Chrome 45 bundle. Chrome revision: 332145. NaCl revision: ec2d51e124a58435534985710f421145d10b093e",
"name": "bionic_canary",
"recommended": "no",
"repath": "pepper_45",
- "revision": 330508,
+ "revision": 332145,
"stability": "canary",
"version": 45
}
diff --git a/src/build/build_options.py b/src/build/build_options.py
index 2b6bd41..8fdc9b9 100644
--- a/src/build/build_options.py
+++ b/src/build/build_options.py
@@ -108,7 +108,7 @@
self._goma_dir = None
self._system_packages = []
self._values = {}
- self.parse([], read_defaults_from_file=False)
+ self.parsed = False
def __getattr__(self, name):
"""Provides getters for values originated from the command line options.
@@ -466,6 +466,8 @@
parser.print_help()
print '\n', error
return -1
+
+ self.parsed = True
return 0
def _check_args(self, args):
@@ -589,4 +591,29 @@
def get_configure_options_file(self):
return os.path.join('out', 'configure.options')
-OPTIONS = _Options()
+ def check_access(self, name):
+ """Called by AccessControlProxy to check attribute access."""
+ if (not self.parsed and
+ name not in ('parse', 'parsed', 'parse_configure_file')):
+ raise AttributeError(
+ 'Attempted to access uninitialized OPTIONS values. Please consider '
+ 'calling OPTIONS.parse_configure_file() in the very beginning of '
+ 'your script.')
+
+
+class _AccessControlProxy(object):
+ """Wraps an arbitrary object to add attribute access check."""
+
+ __slots__ = ['__target', '__check_access']
+
+ def __init__(self, target, check_access):
+ self.__target = target
+ self.__check_access = check_access
+
+ def __getattr__(self, name):
+ self.__check_access(name)
+ return getattr(self.__target, name)
+
+
+_real_options = _Options()
+OPTIONS = _AccessControlProxy(_real_options, _real_options.check_access)
diff --git a/src/build/make_table_of_contents.py b/src/build/make_table_of_contents.py
index d500e42..7dc3962 100755
--- a/src/build/make_table_of_contents.py
+++ b/src/build/make_table_of_contents.py
@@ -18,6 +18,7 @@
import subprocess
import sys
+from build_options import OPTIONS
import toolchain
from util import file_util
@@ -58,6 +59,8 @@
def main(args):
+ OPTIONS.parse_configure_file()
+
if len(args) != 3:
return -1
diff --git a/src/build/ninja_generator.py b/src/build/ninja_generator.py
index e4487f3..e513eb1 100644
--- a/src/build/ninja_generator.py
+++ b/src/build/ninja_generator.py
@@ -1298,7 +1298,7 @@
return ('$commonflags ' +
CNinjaGenerator.get_archasmflags() +
'-pthread -Wall ' + CNinjaGenerator._get_debug_cflags() +
- '-DANDROID '
+ '-DANDROID -DANDROID_SMP=1 '
# GCC sometimes predefines the _FORTIFY_SOURCE macro which is
# not compatible with our function wrapping system. Undefine
# the macro to turn off the feature. (crbug.com/226930)
@@ -1411,7 +1411,8 @@
@staticmethod
def get_hostasmflags():
- return '-DHAVE_ARC_HOST ' + CNinjaGenerator.get_targetflags()
+ return ('-DHAVE_ARC_HOST -DANDROID_SMP=1 ' +
+ CNinjaGenerator.get_targetflags())
@staticmethod
def get_hostcflags():
diff --git a/src/build/prep_launch_chrome_test.py b/src/build/prep_launch_chrome_test.py
index c8bfcc2..3d2b5b9 100755
--- a/src/build/prep_launch_chrome_test.py
+++ b/src/build/prep_launch_chrome_test.py
@@ -7,6 +7,7 @@
import unittest
+from build_options import OPTIONS
import launch_chrome_options
import prep_launch_chrome
@@ -14,6 +15,9 @@
class PrepLaunchChromeTest(unittest.TestCase):
+ def setUp(self):
+ OPTIONS.parse([])
+
def metadata_from_command_line(self, command):
args = launch_chrome_options.parse_args(command.split(' '))
return (prep_launch_chrome.
diff --git a/src/build/run_integration_tests_test.py b/src/build/run_integration_tests_test.py
index 0dc9498..038107e 100755
--- a/src/build/run_integration_tests_test.py
+++ b/src/build/run_integration_tests_test.py
@@ -387,7 +387,8 @@
# TODO(lpique): Look into making them work without stubbing them out.
@patch('apk_to_crx.build_crx', _stub_return_none)
@patch('prep_launch_chrome.update_shell_command', _stub_return_none)
-@patch('build_options.OPTIONS.parse_configure_file', _stub_parse_configure_file)
+@patch('build_options._real_options.parse_configure_file',
+ _stub_parse_configure_file)
# The unittest files may not be created yet.
@patch('util.test.unittest_util.get_all_tests', lambda: [])
class RunIntegrationTestsSlowTest(_RunIntegrationTestsTestBase):
@@ -450,7 +451,8 @@
# TODO(lpique): Look into making them work without stubbing them out.
@patch('apk_to_crx.build_crx', _stub_return_none)
@patch('prep_launch_chrome.update_shell_command', _stub_return_none)
-@patch('build_options.OPTIONS.parse_configure_file', _stub_parse_configure_file)
+@patch('build_options._real_options.parse_configure_file',
+ _stub_parse_configure_file)
# The unittest files may not be created yet.
@patch('util.test.unittest_util.get_all_tests', lambda: [])
# These tests run faster by limiting the number of tests constructed at startup
diff --git a/src/build/util/test/suite_runner_config_test.py b/src/build/util/test/suite_runner_config_test.py
index 9590d5d..24d9bf6 100755
--- a/src/build/util/test/suite_runner_config_test.py
+++ b/src/build/util/test/suite_runner_config_test.py
@@ -7,6 +7,7 @@
import collections
import unittest
+from build_options import OPTIONS
from util.test import suite_runner_config
from util.test.suite_runner import SuiteRunnerBase
from util.test.suite_runner_config_flags import _ExclusiveFlag
@@ -221,6 +222,9 @@
},
}))
+ def setUp(self):
+ OPTIONS.parse([])
+
def _make_suite_runner(self, name):
return SuiteRunnerBase(
name,
diff --git a/third_party/chromium-ppapi b/third_party/chromium-ppapi
index 6cdb692..2a4d4cc 160000
--- a/third_party/chromium-ppapi
+++ b/third_party/chromium-ppapi
@@ -1 +1 @@
-Subproject commit 6cdb69279cb4f83fd8d1f31f58eb0edf44d2bec3
+Subproject commit 2a4d4cc8e85d7b94388732f09261f258ed832603
diff --git a/third_party/native_client b/third_party/native_client
index 862ca26..ec2d51e 160000
--- a/third_party/native_client
+++ b/third_party/native_client
@@ -1 +1 @@
-Subproject commit 862ca265aa1fdcabe8b3ab518251381bfbf48468
+Subproject commit ec2d51e124a58435534985710f421145d10b093e
diff --git a/third_party/tools/depot_tools b/third_party/tools/depot_tools
index 79e43ff..e5d984b 160000
--- a/third_party/tools/depot_tools
+++ b/third_party/tools/depot_tools
@@ -1 +1 @@
-Subproject commit 79e43ffaad95119e9d4ba480a45a37832e43e320
+Subproject commit e5d984b90aad82e180780d95d07754aaf09ead13