0

Enable a minimal content/ build on iOS

This removes some files from the already-upstreamed iOS content/ gyp
support in order to get a minimal target building while the remaining
content/ changes are upstreamed.

Minor ifdefing is necessary in a few files in order to build them on
iOS; these are included since they are core files without which it's
very difficult to bring up a build at all.

Adds one new class to the ui/ build since it's needed by the content/
code that is now built.

BUG=None


Review URL: https://chromiumcodereview.appspot.com/10933091

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157421 0039d316-1c4b-4281-b951-d872f2087c98
This commit is contained in:
stuartmorgan@chromium.org
2012-09-18 21:36:32 +00:00
parent 34d01155ba
commit 9fc7e36e83
11 changed files with 51 additions and 21 deletions

@ -11,6 +11,7 @@
'dependencies': [
'some.gyp:*',
'../base/base.gyp:*',
'../content/content.gyp:*',
'../crypto/crypto.gyp:*',
'../media/media.gyp:*',
'../net/net.gyp:*',
@ -32,7 +33,6 @@
'dependencies': [
'../cc/cc_tests.gyp:*',
'../chrome/chrome.gyp:*',
'../content/content.gyp:*',
'../gpu/gpu.gyp:*',
'../gpu/tools/tools.gyp:*',
'../ipc/ipc.gyp:*',

@ -51,6 +51,9 @@
['OS=="ios"', {
'sources!': [
'app/content_main.cc',
# TODO(ios): Remove this once content_main_runner builds
# for iOS.
'app/content_main_runner.cc',
],
}],
],

@ -845,16 +845,13 @@
'sources/': [
# iOS only needs a small portion of content; exclude all the
# implementation, and re-include what is used.
['exclude', '\\.cc$'],
['exclude', '\\.mm$'],
['exclude', '\\.(cc|mm)$'],
['include', '_ios\\.(cc|mm)$'],
['include', '^public/browser/content_browser_client\\.cc$'],
['include', '^public/browser/notification_registrar\\.cc$'],
['include', '^public/browser/speech_recognition_'],
['include', '^browser/browser_context\\.cc$'],
['include', '^browser/notification_service_impl\\.cc$'],
# Pull in all but one file from speech.
['include', '^browser/speech/'],
['exclude', '^browser/speech/input_tag_speech_dispatcher_host\\.cc$$'],
],
}, { # OS!="ios"
'dependencies': [

@ -11,7 +11,6 @@
'../skia/skia.gyp:skia',
'../third_party/icu/icu.gyp:icuuc',
'../ui/ui.gyp:ui',
'../webkit/support/webkit_support.gyp:forms',
'../webkit/support/webkit_support.gyp:user_agent',
],
'include_dirs': [
@ -381,6 +380,7 @@
# implementation, and re-include what is used.
['exclude', '\\.(cc|mm)$'],
['include', '_ios\\.(cc|mm)$'],
['include', '^public/common/content_client\\.cc$'],
['include', '^public/common/content_constants\\.cc$'],
['include', '^public/common/content_switches\\.cc$'],
['include', '^public/common/frame_navigate_params\\.cc$'],
@ -407,6 +407,7 @@
'../webkit/support/webkit_support.gyp:blob',
'../webkit/support/webkit_support.gyp:database',
'../webkit/support/webkit_support.gyp:fileapi',
'../webkit/support/webkit_support.gyp:forms',
'../webkit/support/webkit_support.gyp:webkit_base',
],
}],

@ -14,10 +14,6 @@
'content_browser',
'content_common',
'../net/net.gyp:net_test_support',
'../ppapi/ppapi_internal.gyp:ppapi_host',
'../ppapi/ppapi_internal.gyp:ppapi_proxy',
'../ppapi/ppapi_internal.gyp:ppapi_shared',
'../ppapi/ppapi_internal.gyp:ppapi_unittest_shared',
'../skia/skia.gyp:skia',
'../testing/gmock.gyp:gmock',
'../testing/gtest.gyp:gtest',
@ -151,10 +147,13 @@
['include', '^public/test/content_test_suite_base\\.cc$'],
['include', '^public/test/mock_notification_observer\\.cc$'],
['include', '^public/test/mock_resource_context\\.cc$'],
['include', '^public/test/test_browser_thread\\.cc$'],
['include', '^public/test/test_content_client_initializer\\.cc$'],
['include', '^public/test/test_notification_tracker\\.cc$'],
['include', '^public/test/test_utils\\.cc$'],
['include', '^public/test/unittest_test_suite\\.cc$'],
['include', '^test/content_test_suite\\.cc$'],
['include', '^test/test_content_browser_client\\.cc$'],
['include', '^test/test_content_client\\.cc$'],
],
}, { # OS != "ios"
'dependencies': [
@ -240,7 +239,6 @@
'../testing/gmock.gyp:gmock',
'../testing/gtest.gyp:gtest',
'../ui/ui.gyp:ui',
'../webkit/support/webkit_support.gyp:forms',
'../webkit/support/webkit_support.gyp:user_agent',
],
'include_dirs': [
@ -465,9 +463,7 @@
# implementation, and re-include what is used.
['exclude', '\\.(cc|mm)$'],
['include', '_ios\\.(cc|mm)$'],
['include', '^browser/browser_thread_unittest\\.cc$'],
['include', '^browser/notification_service_impl_unittest\\.cc$'],
['include', '^browser/speech/.*_unittest\\.cc$'],
['include', '^test/run_all_unittests\\.cc$'],
],
}, { # OS != "ios"
@ -491,6 +487,7 @@
'../webkit/support/webkit_support.gyp:database',
'../webkit/support/webkit_support.gyp:dom_storage',
'../webkit/support/webkit_support.gyp:fileapi',
'../webkit/support/webkit_support.gyp:forms',
'../webkit/support/webkit_support.gyp:glue',
'../webkit/support/webkit_support.gyp:quota',
'../webkit/support/webkit_support.gyp:webkit_base',

@ -5,9 +5,12 @@
#include "content/public/app/content_main_delegate.h"
#include "content/public/browser/content_browser_client.h"
#if !defined(OS_IOS)
#include "content/public/plugin/content_plugin_client.h"
#include "content/public/renderer/content_renderer_client.h"
#include "content/public/utility/content_utility_client.h"
#endif
namespace content {
@ -50,15 +53,27 @@ ContentBrowserClient* ContentMainDelegate::CreateContentBrowserClient() {
}
ContentPluginClient* ContentMainDelegate::CreateContentPluginClient() {
#if defined(OS_IOS)
return NULL;
#else
return new ContentPluginClient();
#endif
}
ContentRendererClient* ContentMainDelegate::CreateContentRendererClient() {
#if defined(OS_IOS)
return NULL;
#else
return new ContentRendererClient();
#endif
}
ContentUtilityClient* ContentMainDelegate::CreateContentUtilityClient() {
#if defined(OS_IOS)
return NULL;
#else
return new ContentUtilityClient();
#endif
}
} // namespace content

@ -7,9 +7,12 @@
#include "base/logging.h"
#include "base/string_piece.h"
#include "ui/gfx/image/image.h"
#include "webkit/plugins/ppapi/host_globals.h"
#include "webkit/user_agent/user_agent.h"
#if !defined(OS_IOS)
#include "webkit/plugins/ppapi/host_globals.h"
#endif
namespace content {
static ContentClient* g_client;
@ -35,7 +38,11 @@ const std::string& GetUserAgent(const GURL& url) {
}
webkit::ppapi::HostGlobals* GetHostGlobals() {
#if defined(OS_IOS)
return NULL;
#else
return webkit::ppapi::HostGlobals::Get();
#endif
}
ContentClient::ContentClient()

@ -13,6 +13,7 @@
namespace content {
#if !defined(OS_IOS)
// A stubbed out WebKit platform support impl.
class UnitTestTestSuite::UnitTestWebKitPlatformSupport
: public WebKit::WebKitPlatformSupport {
@ -37,16 +38,21 @@ class UnitTestTestSuite::UnitTestWebKitPlatformSupport
private:
webkit::WebCompositorSupportImpl compositor_support_;
};
#endif // !OS_IOS
UnitTestTestSuite::UnitTestTestSuite(base::TestSuite* test_suite)
: test_suite_(test_suite) {
DCHECK(test_suite);
#if !defined(OS_IOS)
webkit_platform_support_.reset(new UnitTestWebKitPlatformSupport);
WebKit::initialize(webkit_platform_support_.get());
#endif
}
UnitTestTestSuite::~UnitTestTestSuite() {
#if !defined(OS_IOS)
WebKit::shutdown();
#endif
}
int UnitTestTestSuite::Run() {

@ -30,8 +30,10 @@ class UnitTestTestSuite {
private:
scoped_ptr<base::TestSuite> test_suite_;
#if !defined(OS_IOS)
class UnitTestWebKitPlatformSupport;
scoped_ptr<UnitTestWebKitPlatformSupport> webkit_platform_support_;
#endif
DISALLOW_COPY_AND_ASSIGN(UnitTestTestSuite);
};

@ -10,8 +10,6 @@
#include "base/logging.h"
#include "content/test/test_web_contents_view.h"
#include "googleurl/src/gurl.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "ui/base/clipboard/clipboard.h"
namespace content {
@ -24,9 +22,13 @@ TestContentBrowserClient::~TestContentBrowserClient() {
WebContentsView* TestContentBrowserClient::OverrideCreateWebContentsView(
WebContents* web_contents,
RenderViewHostDelegateView** render_view_host_delegate_view) {
#if defined(OS_IOS)
return NULL;
#else
TestWebContentsView* rv = new TestWebContentsView;
*render_view_host_delegate_view = rv;
return rv;
#endif
}
FilePath TestContentBrowserClient::GetDefaultDownloadDirectory() {

@ -45,6 +45,9 @@
'base/layout.h',
'base/models/tree_node_iterator.h',
'base/models/tree_node_model.h',
'base/resource/data_pack.cc',
'base/resource/data_pack.h',
'base/resource/resource_handle.h',
'base/ui_base_paths.cc',
'base/ui_base_paths.h',
'base/ui_base_switches.cc',
@ -317,8 +320,6 @@
'base/range/range.h',
'base/range/range_mac.mm',
'base/range/range_win.cc',
'base/resource/data_pack.cc',
'base/resource/data_pack.h',
'base/resource/resource_bundle.cc',
'base/resource/resource_bundle.h',
'base/resource/resource_bundle_android.cc',
@ -329,7 +330,6 @@
'base/resource/resource_bundle_win.h',
'base/resource/resource_data_dll_win.cc',
'base/resource/resource_data_dll_win.h',
'base/resource/resource_handle.h',
'base/text/bytes_formatting.cc',
'base/text/bytes_formatting.h',
'base/text/text_elider.cc',