Title: [119888] trunk/Tools
Revision
119888
Author
[email protected]
Date
2012-06-08 19:45:25 -0700 (Fri, 08 Jun 2012)

Log Message

[Chromium-Android] Build DumpRenderTree with Android SDK
https://bugs.webkit.org/show_bug.cgi?id=88598

Change WebKit side of DRT related code according to some recent changes at chromium side.

Reviewed by Adam Barth.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.__init__):
(ChromiumAndroidPort._path_to_driver):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (119887 => 119888)


--- trunk/Tools/ChangeLog	2012-06-09 02:29:09 UTC (rev 119887)
+++ trunk/Tools/ChangeLog	2012-06-09 02:45:25 UTC (rev 119888)
@@ -1,3 +1,17 @@
+2012-06-08  Xianzhu Wang  <[email protected]>
+
+        [Chromium-Android] Build DumpRenderTree with Android SDK
+        https://bugs.webkit.org/show_bug.cgi?id=88598
+
+        Change WebKit side of DRT related code according to some recent changes at chromium side.
+
+        Reviewed by Adam Barth.
+
+        * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
+        * Scripts/webkitpy/layout_tests/port/chromium_android.py:
+        (ChromiumAndroidPort.__init__):
+        (ChromiumAndroidPort._path_to_driver):
+
 2012-06-08  Wei James  <[email protected]>
 
         Add app_abi option for DumpRenderTree_apk

Modified: trunk/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp (119887 => 119888)


--- trunk/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp	2012-06-09 02:29:09 UTC (rev 119887)
+++ trunk/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp	2012-06-09 02:45:25 UTC (rev 119888)
@@ -408,33 +408,44 @@
         }],
         ['OS=="android"', {
             # Wrap libDumpRenderTree.so into an android apk for execution.
-            # See <(chromium_src_dir)/base/base.gyp for TODO(jrg)s about this strategy.
             'targets': [{
                 'target_name': 'DumpRenderTree_apk',
                 'type': 'none',
                 'dependencies': [
+                    '<(chromium_src_dir)/base/base.gyp:base_java',
+                    '<(chromium_src_dir)/net/net.gyp:net_java',
+                    '<(chromium_src_dir)/media/media.gyp:media_java',
                     'DumpRenderTree',
                 ],
+                'variables': {
+                    'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)DumpRenderTree<(SHARED_LIB_SUFFIX)',
+                    'input_jars_paths': [
+                        '<(PRODUCT_DIR)/lib.java/chromium_base.jar',
+                        '<(PRODUCT_DIR)/lib.java/chromium_net.jar',
+                        '<(PRODUCT_DIR)/lib.java/chromium_media.jar',
+                    ],
+                },
+                # Part of the following was copied from <(chromium_src_dir)/build/apk_test.gpyi.
+                # Not including it because gyp include doesn't support variable in path or under
+                # conditions. And we also have some different requirements.
                 'actions': [{
-                    # Generate apk files (including source and antfile) from
-                    # a template, and builds them.
-                    'action_name': 'generate_and_build',
+                    'action_name': 'apk_DumpRenderTree',
+                    'message': 'Building DumpRenderTree test apk.',
                     'inputs': [
+                        '<(chromium_src_dir)/testing/android/AndroidManifest.xml',
                         '<(chromium_src_dir)/testing/android/generate_native_test.py',
-                        '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)DumpRenderTree<(SHARED_LIB_SUFFIX)',
-                        # FIXME: Build the jar for native tests with SDK.
-                        # For now we are using Android.mk to build the apk.
+                        '<(input_shlib_path)',
+                        '<@(input_jars_paths)',
                     ],
                     'outputs': [
-                        '<(PRODUCT_DIR)/DumpRenderTree_apk/ChromeNativeTests-debug.apk',
+                        '<(PRODUCT_DIR)/DumpRenderTree_apk/DumpRenderTree-debug.apk',
                     ],
                     'action': [
                         '<(chromium_src_dir)/testing/android/generate_native_test.py',
                         '--native_library',
-                        '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)DumpRenderTree<(SHARED_LIB_SUFFIX)',
-                        # FIXME: Build the jar for native tests with SDK.
-                        # '--jar',
-                        # 'foo/bar.jar',
+                        '<(input_shlib_path)',
+                        '--jars',
+                        '"<@(input_jars_paths)"',
                         '--output',
                         '<(PRODUCT_DIR)/DumpRenderTree_apk',
                         '--ant-args',

Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py (119887 => 119888)


--- trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py	2012-06-09 02:29:09 UTC (rev 119887)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py	2012-06-09 02:45:25 UTC (rev 119888)
@@ -152,6 +152,12 @@
     def __init__(self, host, port_name, **kwargs):
         chromium.ChromiumPort.__init__(self, host, port_name, **kwargs)
 
+        # FIXME: Stop using test_shell mode: https://bugs.webkit.org/show_bug.cgi?id=88542
+        if not hasattr(self._options, 'additional_drt_flag'):
+            self._options.additional_drt_flag = []
+        if not '--test-shell' in self._options.additional_drt_flag:
+            self._options.additional_drt_flag.append('--test-shell')
+
         # The Chromium port for Android always uses the hardware GPU path.
         self._options.enable_hardware_gpu = True
 
@@ -267,7 +273,7 @@
     def _path_to_driver(self, configuration=None):
         if not configuration:
             configuration = self.get_option('configuration')
-        return self._build_path(configuration, 'DumpRenderTree_apk/ChromeNativeTests-debug.apk')
+        return self._build_path(configuration, 'DumpRenderTree_apk/DumpRenderTree-debug.apk')
 
     def _path_to_helper(self):
         return self._build_path(self.get_option('configuration'), 'forwarder')
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to