summaryrefslogtreecommitdiffstats
path: root/ppapi
diff options
context:
space:
mode:
authorbradchen@google.com <bradchen@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-06 17:41:18 +0000
committerbradchen@google.com <bradchen@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-06 17:41:18 +0000
commit3618be828ea5ceebc4644497325f245dd34de83a (patch)
tree02a6abcb797476196e2cf1fa9aeda5686a0d425a /ppapi
parentbbfacc89f9f8eb332c9193d272249592d226ee8e (diff)
downloadchromium_src-3618be828ea5ceebc4644497325f245dd34de83a.zip
chromium_src-3618be828ea5ceebc4644497325f245dd34de83a.tar.gz
chromium_src-3618be828ea5ceebc4644497325f245dd34de83a.tar.bz2
Enable PPAPINaCl GLIBC browser_tests.
NOTE: NaCl CL to update untrusted.gypi must go in first. BUG=127699 TEST=this is a test Review URL: https://chromiumcodereview.appspot.com/10409032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140786 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi')
-rw-r--r--ppapi/native_client/native_client.gyp18
-rw-r--r--ppapi/native_client/tests/ppapi_tests/ppapi_nacl_tests_newlib.nmf7
-rw-r--r--ppapi/ppapi_untrusted.gyp36
-rw-r--r--ppapi/tests/test_case.html9
4 files changed, 60 insertions, 10 deletions
diff --git a/ppapi/native_client/native_client.gyp b/ppapi/native_client/native_client.gyp
index df3007e3..c34d6b5 100644
--- a/ppapi/native_client/native_client.gyp
+++ b/ppapi/native_client/native_client.gyp
@@ -1,4 +1,4 @@
-# Copyright (c) 2011 The Chromium Authors. All rights reserved.
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
@@ -16,6 +16,8 @@
'../../native_client/src/untrusted/pthread/pthread.gyp:pthread_lib',
'../../native_client/src/untrusted/irt_stub/irt_stub.gyp:ppapi_stub_lib',
],
+ # Here we copy linker scripts out of the Native Client repository.
+ # These are source, not build artifacts.
'copies': [
{
'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32',
@@ -30,6 +32,20 @@
],
},
{
+ 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32',
+ 'files': [
+ '<(DEPTH)/native_client/src/untrusted/irt_stub/libppapi.a',
+ '<(DEPTH)/native_client/src/untrusted/irt_stub/libppapi.so',
+ ],
+ },
+ {
+ 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64',
+ 'files': [
+ '<(DEPTH)/native_client/src/untrusted/irt_stub/libppapi.a',
+ '<(DEPTH)/native_client/src/untrusted/irt_stub/libppapi.so',
+ ],
+ },
+ {
'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm',
'files': [
'<(DEPTH)/native_client/src/untrusted/irt_stub/libppapi.a',
diff --git a/ppapi/native_client/tests/ppapi_tests/ppapi_nacl_tests_newlib.nmf b/ppapi/native_client/tests/ppapi_tests/ppapi_nacl_tests_newlib.nmf
new file mode 100644
index 0000000..f0bb249
--- /dev/null
+++ b/ppapi/native_client/tests/ppapi_tests/ppapi_nacl_tests_newlib.nmf
@@ -0,0 +1,7 @@
+{
+ "program": {
+ "x86-64": {"url": "ppapi_nacl_tests_newlib_x64.nexe"},
+ "x86-32": {"url": "ppapi_nacl_tests_newlib_x32.nexe"},
+ "arm": {"url": "ppapi_nacl_tests_newlib_arm.nexe"}
+ }
+}
diff --git a/ppapi/ppapi_untrusted.gyp b/ppapi/ppapi_untrusted.gyp
index 57fe4a1..1817dca 100644
--- a/ppapi/ppapi_untrusted.gyp
+++ b/ppapi/ppapi_untrusted.gyp
@@ -1,4 +1,4 @@
-# Copyright (c) 2011 The Chromium Authors. All rights reserved.
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
@@ -17,7 +17,7 @@
'type': 'none',
'variables': {
'nlib_target': 'libppapi_cpp.a',
- 'build_glibc': 0,
+ 'build_glibc': 1,
'build_newlib': 1,
'sources': [
'<@(cpp_source_files)',
@@ -39,8 +39,14 @@
],
'variables': {
'nexe_target': 'ppapi_nacl_tests',
- 'build_glibc': 0,
+ 'build_glibc': 1,
'build_newlib': 1,
+ # NOTE: Use /lib, not /lib64 here; it is a symbolic link which
+ # doesn't work on Windows.
+ 'libdir_glibc64': '>(nacl_glibc_tc_root)/x86_64-nacl/lib',
+ 'libdir_glibc32': '>(nacl_glibc_tc_root)/x86_64-nacl/lib32',
+ 'nacl_objdump': '>(nacl_glibc_tc_root)/bin/x86_64-nacl-objdump',
+ 'nmf_glibc%': '<(PRODUCT_DIR)/>(nexe_target)_glibc.nmf',
'include_dirs': [
'lib/gl/include',
'..',
@@ -55,10 +61,6 @@
'<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_cpp.a',
'<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi.a',
],
- 'extra_deps32': [
- '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi_cpp.a',
- '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi.a',
- ],
'extra_deps_newlib64': [
'<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_cpp.a',
'<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi.a',
@@ -84,6 +86,26 @@
'<@(test_nacl_source_files)',
],
},
+ 'actions': [
+ {
+ 'action_name': 'Generate GLIBC NMF and copy libs',
+ 'inputs': ['>(out_glibc64)', '>(out_glibc32)'],
+ # NOTE: There is no explicit dependency for the lib32
+ # and lib64 directories created in the PRODUCT_DIR.
+ # They are created as a side-effect of NMF creation.
+ 'outputs': ['>(nmf_glibc)'],
+ 'action': [
+ 'python',
+ '<(DEPTH)/native_client_sdk/src/tools/create_nmf.py',
+ '>@(_inputs)',
+ '--objdump=>(nacl_objdump)',
+ '--library-path=>(libdir_glibc64)',
+ '--library-path=>(libdir_glibc32)',
+ '--output=>(nmf_glibc)',
+ '--stage-dependencies=<(PRODUCT_DIR)',
+ ],
+ },
+ ],
},
],
}
diff --git a/ppapi/tests/test_case.html b/ppapi/tests/test_case.html
index d395f13..a9d0879 100644
--- a/ppapi/tests/test_case.html
+++ b/ppapi/tests/test_case.html
@@ -197,9 +197,14 @@ onload = function() {
var mode = ExtractSearchParameter("mode");
document.title = 'Test ' + testcase;
var obj;
- if (mode == "nacl") {
+ if (mode == "nacl_newlib") {
obj = document.createElement("EMBED");
- obj.setAttribute("src", "test_case.nmf");
+ obj.setAttribute("src", "ppapi_nacl_tests_newlib.nmf");
+ obj.setAttribute("type", "application/x-nacl");
+ obj.setAttribute("mode", mode);
+ } else if (mode == "nacl_glibc") {
+ obj = document.createElement("EMBED");
+ obj.setAttribute("src", "ppapi_nacl_tests_glibc.nmf");
obj.setAttribute("type", "application/x-nacl");
obj.setAttribute("mode", mode);
} else {