diff options
author | Jocelyn Turcotte <jocelyn.turcotte@digia.com> | 2014-04-15 14:59:06 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-04-22 15:58:38 +0200 |
commit | 76f2298dffdafb73d80cb21b49a7ed7ea1b7830c (patch) | |
tree | 379aacbf06695e3931a67433f98bc11400cf8bd9 /patches | |
parent | 88e705ba8f610f3c8f8d36bcbe72bb11a085d90f (diff) |
Update the 3rdparty submodule and patch files
Change-Id: Ifa50b810f27f0f9307e1cbe27795a5f4e6b3c335
Reviewed-by: Michael Bruning <michael.bruning@digia.com>
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Diffstat (limited to 'patches')
6 files changed, 539 insertions, 2 deletions
diff --git a/patches/chromium/0020-fixup-select-elements.patch b/patches/chromium/0020-fixup-select-elements.patch new file mode 100644 index 000000000..47e94a03a --- /dev/null +++ b/patches/chromium/0020-fixup-select-elements.patch @@ -0,0 +1,52 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Pierre Rossi <pierre.rossi@digia.com> +Date: Thu, 3 Apr 2014 12:18:16 +0200 +Subject: fixup select elements. + +We use RenderWidgetHostViewQt, not RWHVMac, even on Mac. +Since some platform decisions seem to have transpired all the way to +the content layer, we should simply use the web ui for select elements +on mac for the time being. + +Change-Id: Iefe1dd3b246fc210ac18ff9eb0e7ad498c061eac +Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> +--- + content/browser/web_contents/web_contents_impl.cc | 4 ++-- + content/renderer/render_thread_impl.cc | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc +index 6b6cf00..ee5b901d 100644 +--- a/content/browser/web_contents/web_contents_impl.cc ++++ b/content/browser/web_contents/web_contents_impl.cc +@@ -1464,7 +1464,7 @@ void WebContentsImpl::CreateNewWidget(int render_process_id, + // Save the created widget associated with the route so we can show it later. + pending_widget_views_[route_id] = widget_view; + +-#if defined(OS_MACOSX) ++#if defined(OS_MACOSX) && !defined(TOOLKIT_QT) + // A RenderWidgetHostViewMac has lifetime scoped to the view. We'll retain it + // to allow it to survive the trip without being hosted. + base::mac::NSObjectRetain(widget_view->GetNativeView()); +@@ -1529,7 +1529,7 @@ void WebContentsImpl::ShowCreatedWidget(int route_id, + // used to implement Pepper Flash fullscreen. + render_widget_host_impl->set_allow_privileged_mouse_lock(is_fullscreen); + +-#if defined(OS_MACOSX) ++#if defined(OS_MACOSX) && !defined(TOOLKIT_QT) + // A RenderWidgetHostViewMac has lifetime scoped to the view. Now that it's + // properly embedded (or purposefully ignored) we can release the retain we + // took in CreateNewWidget(). +diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc +index e910b8b..609b965 100644 +--- a/content/renderer/render_thread_impl.cc ++++ b/content/renderer/render_thread_impl.cc +@@ -314,7 +314,7 @@ void RenderThreadImpl::Init() { + v8::V8::SetCreateHistogramFunction(CreateHistogram); + v8::V8::SetAddHistogramSampleFunction(AddHistogramSample); + +-#if defined(OS_MACOSX) || defined(OS_ANDROID) ++#if (defined(OS_MACOSX) || defined(OS_ANDROID)) && !defined(TOOLKIT_QT) + // On Mac and Android, the select popups are rendered by the browser. + blink::WebView::setUseExternalPopupMenus(true); + #endif diff --git a/patches/chromium/third_party/WebKit/0005-Use-compositor-with-select-popups.patch b/patches/chromium/third_party/WebKit/0005-Use-compositor-with-select-popups.patch new file mode 100644 index 000000000..d84001ce0 --- /dev/null +++ b/patches/chromium/third_party/WebKit/0005-Use-compositor-with-select-popups.patch @@ -0,0 +1,238 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: "jbauman@chromium.org" <jbauman@chromium.org> +Date: Wed, 29 Jan 2014 00:14:45 +0000 +Subject: Use compositor with select popups. + +BUG=271575 + +Review URL: https://codereview.chromium.org/132173005 + +git-svn-id: svn://svn.chromium.org/blink/trunk@165977 bbb929c8-8fbe-4397-9dbb-9b2b20218538 + +Change-Id: I78b3354b1040b193c984b82db51c90b8183ebd24 +Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> +--- + Source/web/WebPopupMenuImpl.cpp | 69 +++++++++++++++++++++++++++++++++++++++++ + Source/web/WebPopupMenuImpl.h | 59 +++++++++++++++++++++-------------- + 2 files changed, 104 insertions(+), 24 deletions(-) + +diff --git a/Source/web/WebPopupMenuImpl.cpp b/Source/web/WebPopupMenuImpl.cpp +index 05c1d05..e8adfd7 100644 +--- a/Source/web/WebPopupMenuImpl.cpp ++++ b/Source/web/WebPopupMenuImpl.cpp +@@ -49,6 +49,10 @@ + #include "platform/graphics/GraphicsContext.h" + #include "platform/graphics/skia/SkiaUtils.h" + #include "platform/scroll/FramelessScrollView.h" ++#include "public/platform/Platform.h" ++#include "public/platform/WebCompositorSupport.h" ++#include "public/platform/WebContentLayer.h" ++#include "public/platform/WebLayerTreeView.h" + #include "public/platform/WebRect.h" + #include <skia/ext/platform_canvas.h> + +@@ -68,6 +72,10 @@ WebPopupMenu* WebPopupMenu::create(WebWidgetClient* client) + + WebPopupMenuImpl::WebPopupMenuImpl(WebWidgetClient* client) + : m_client(client) ++ , m_layerTreeView(0) ++ , m_isAcceleratedCompositingActive(false) ++ // Set to impossible point so we always get the first mouse position. ++ , m_lastMousePosition(WebPoint(-1, -1)) + , m_widget(0) + { + // Set to impossible point so we always get the first mouse position. +@@ -80,6 +88,12 @@ WebPopupMenuImpl::~WebPopupMenuImpl() + m_widget->setClient(0); + } + ++void WebPopupMenuImpl::willCloseLayerTreeView() ++{ ++ enterForceCompositingMode(false); ++ m_layerTreeView = 0; ++} ++ + void WebPopupMenuImpl::initialize(FramelessScrollView* widget, const WebRect& bounds) + { + m_widget = widget; +@@ -174,6 +188,9 @@ void WebPopupMenuImpl::resize(const WebSize& newSize) + WebRect damagedRect(0, 0, m_size.width, m_size.height); + m_client->didInvalidateRect(damagedRect); + } ++ ++ if (m_rootLayer) ++ m_rootLayer->layer()->setBounds(newSize); + } + + void WebPopupMenuImpl::willEndLiveResize() +@@ -188,6 +205,54 @@ void WebPopupMenuImpl::layout() + { + } + ++void WebPopupMenuImpl::enterForceCompositingMode(bool enter) ++{ ++ if (m_isAcceleratedCompositingActive == enter) ++ return; ++ ++ if (!enter) { ++ m_isAcceleratedCompositingActive = false; ++ m_client->didDeactivateCompositor(); ++ } else if (m_layerTreeView) { ++ m_isAcceleratedCompositingActive = true; ++ m_client->didActivateCompositor(0); ++ } else { ++ TRACE_EVENT0("webkit", "WebPopupMenuImpl::enterForceCompositingMode(true)"); ++ ++ m_client->initializeLayerTreeView(); ++ m_layerTreeView = m_client->layerTreeView(); ++ if (m_layerTreeView) { ++ m_layerTreeView->setVisible(true); ++ m_client->didActivateCompositor(0); ++ m_isAcceleratedCompositingActive = true; ++ m_layerTreeView->setDeviceScaleFactor(m_client->deviceScaleFactor()); ++ m_rootLayer = adoptPtr(Platform::current()->compositorSupport()->createContentLayer(this)); ++ m_rootLayer->layer()->setBounds(m_size); ++ m_layerTreeView->setRootLayer(*m_rootLayer->layer()); ++ } else { ++ m_isAcceleratedCompositingActive = false; ++ m_client->didDeactivateCompositor(); ++ } ++ } ++} ++ ++void WebPopupMenuImpl::didExitCompositingMode() ++{ ++ enterForceCompositingMode(false); ++ m_client->didInvalidateRect(IntRect(0, 0, m_size.width, m_size.height)); ++} ++ ++void WebPopupMenuImpl::paintContents(WebCanvas* canvas, const WebRect& rect, bool, WebFloatRect&) ++{ ++ if (!m_widget) ++ return; ++ ++ if (!rect.isEmpty()) { ++ GraphicsContext context(canvas); ++ m_widget->paint(&context, rect); ++ } ++} ++ + void WebPopupMenuImpl::paint(WebCanvas* canvas, const WebRect& rect, PaintOptions) + { + if (!m_widget) +@@ -343,6 +408,8 @@ void WebPopupMenuImpl::invalidateContentsAndRootView(const IntRect& paintRect) + return; + if (m_client) + m_client->didInvalidateRect(paintRect); ++ if (m_rootLayer) ++ m_rootLayer->layer()->invalidateRect(FloatRect(paintRect)); + } + + void WebPopupMenuImpl::invalidateContentsForSlowScroll(const IntRect& updateRect) +@@ -361,6 +428,8 @@ void WebPopupMenuImpl::scroll(const IntSize& scrollDelta, const IntRect& scrollR + int dy = scrollDelta.height(); + m_client->didScrollRect(dx, dy, clipRect); + } ++ if (m_rootLayer) ++ m_rootLayer->layer()->invalidateRect(FloatRect(clipRect)); + } + + IntPoint WebPopupMenuImpl::screenToRootView(const IntPoint& point) const +diff --git a/Source/web/WebPopupMenuImpl.h b/Source/web/WebPopupMenuImpl.h +index e5777be..0384675 100644 +--- a/Source/web/WebPopupMenuImpl.h ++++ b/Source/web/WebPopupMenuImpl.h +@@ -33,6 +33,7 @@ + + #include "WebPopupMenu.h" + #include "platform/scroll/FramelessScrollViewClient.h" ++#include "public/platform/WebContentLayerClient.h" + #include "public/platform/WebPoint.h" + #include "public/platform/WebSize.h" + #include "wtf/OwnPtr.h" +@@ -49,44 +50,50 @@ class Widget; + } + + namespace blink { ++class WebContentLayer; + class WebGestureEvent; + class WebKeyboardEvent; ++class WebLayerTreeView; + class WebMouseEvent; + class WebMouseWheelEvent; + class WebRange; + struct WebRect; + class WebTouchEvent; + +-class WebPopupMenuImpl : public WebPopupMenu, +- public WebCore::FramelessScrollViewClient, +- public RefCounted<WebPopupMenuImpl> { ++class WebPopupMenuImpl : public WebPopupMenu, public WebCore::FramelessScrollViewClient, public WebContentLayerClient, public RefCounted<WebPopupMenuImpl> { + WTF_MAKE_FAST_ALLOCATED; + public: + // WebWidget functions: +- virtual void close() OVERRIDE; +- virtual WebSize size() OVERRIDE { return m_size; } +- virtual void willStartLiveResize() OVERRIDE; +- virtual void resize(const WebSize&) OVERRIDE; +- virtual void willEndLiveResize() OVERRIDE; +- virtual void animate(double frameBeginTime) OVERRIDE; +- virtual void layout() OVERRIDE; +- virtual void paint(WebCanvas*, const WebRect&, PaintOptions = ReadbackFromCompositorIfAvailable) OVERRIDE; +- virtual void themeChanged() OVERRIDE; +- virtual bool handleInputEvent(const WebInputEvent&) OVERRIDE; +- virtual void mouseCaptureLost() OVERRIDE; +- virtual void setFocus(bool enable) OVERRIDE; ++ virtual void close() OVERRIDE FINAL; ++ virtual WebSize size() OVERRIDE FINAL { return m_size; } ++ virtual void willStartLiveResize() OVERRIDE FINAL; ++ virtual void resize(const WebSize&) OVERRIDE FINAL; ++ virtual void willEndLiveResize() OVERRIDE FINAL; ++ virtual void animate(double frameBeginTime) OVERRIDE FINAL; ++ virtual void layout() OVERRIDE FINAL; ++ virtual void enterForceCompositingMode(bool enable) OVERRIDE FINAL; ++ virtual void didExitCompositingMode() OVERRIDE FINAL; ++ virtual void paint(WebCanvas*, const WebRect&, PaintOptions = ReadbackFromCompositorIfAvailable) OVERRIDE FINAL; ++ virtual void themeChanged() OVERRIDE FINAL; ++ virtual bool handleInputEvent(const WebInputEvent&) OVERRIDE FINAL; ++ virtual void mouseCaptureLost() OVERRIDE FINAL; ++ virtual void setFocus(bool enable) OVERRIDE FINAL; + virtual bool setComposition( + const WebString& text, + const WebVector<WebCompositionUnderline>& underlines, +- int selectionStart, int selectionEnd) OVERRIDE; +- virtual bool confirmComposition() OVERRIDE; +- virtual bool confirmComposition(ConfirmCompositionBehavior selectionBehavior) OVERRIDE; +- virtual bool confirmComposition(const WebString& text) OVERRIDE; +- virtual bool compositionRange(size_t* location, size_t* length) OVERRIDE; +- virtual bool caretOrSelectionRange(size_t* location, size_t* length) OVERRIDE; +- virtual void setTextDirection(WebTextDirection) OVERRIDE; +- virtual bool isAcceleratedCompositingActive() const OVERRIDE { return false; } +- virtual bool isPopupMenu() const OVERRIDE { return true; } ++ int selectionStart, int selectionEnd) OVERRIDE FINAL; ++ virtual bool confirmComposition() OVERRIDE FINAL; ++ virtual bool confirmComposition(ConfirmCompositionBehavior selectionBehavior) OVERRIDE FINAL; ++ virtual bool confirmComposition(const WebString& text) OVERRIDE FINAL; ++ virtual bool compositionRange(size_t* location, size_t* length) OVERRIDE FINAL; ++ virtual bool caretOrSelectionRange(size_t* location, size_t* length) OVERRIDE FINAL; ++ virtual void setTextDirection(WebTextDirection) OVERRIDE FINAL; ++ virtual bool isAcceleratedCompositingActive() const OVERRIDE FINAL { return false; } ++ virtual bool isPopupMenu() const OVERRIDE FINAL { return true; } ++ virtual void willCloseLayerTreeView() OVERRIDE FINAL; ++ ++ // WebContentLayerClient ++ virtual void paintContents(WebCanvas*, const WebRect& clip, bool canPaintLCDTest, WebFloatRect& opaque) OVERRIDE FINAL; + + // WebPopupMenuImpl + void initialize(WebCore::FramelessScrollView* widget, const WebRect& bounds); +@@ -127,6 +134,10 @@ public: + WebWidgetClient* m_client; + WebSize m_size; + ++ WebLayerTreeView* m_layerTreeView; ++ OwnPtr<WebContentLayer> m_rootLayer; ++ bool m_isAcceleratedCompositingActive; ++ + WebPoint m_lastMousePosition; + + // This is a non-owning ref. The popup will notify us via popupClosed() diff --git a/patches/chromium/third_party/WebKit/0006-Use-compositor-for-page-popups.patch b/patches/chromium/third_party/WebKit/0006-Use-compositor-for-page-popups.patch new file mode 100644 index 000000000..3b260a8dc --- /dev/null +++ b/patches/chromium/third_party/WebKit/0006-Use-compositor-for-page-popups.patch @@ -0,0 +1,190 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: "jbauman@chromium.org" <jbauman@chromium.org> +Date: Fri, 21 Feb 2014 00:46:34 +0000 +Subject: Use compositor for page popups. + +This is essentially the last user of the legacy 2d path. + +BUG=271140 + +Review URL: https://codereview.chromium.org/171343003 + +Change-Id: I64911d0d83b9d1d4782dff9b09db1bbcc439da24 +git-svn-id: svn://svn.chromium.org/blink/trunk@167552 bbb929c8-8fbe-4397-9dbb-9b2b20218538 +Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> +--- + Source/web/WebPagePopupImpl.cpp | 87 +++++++++++++++++++++++++++++++++++++++++ + Source/web/WebPagePopupImpl.h | 13 ++++++ + 2 files changed, 100 insertions(+) + +diff --git a/Source/web/WebPagePopupImpl.cpp b/Source/web/WebPagePopupImpl.cpp +index b129dc6..cadbc14 100644 +--- a/Source/web/WebPagePopupImpl.cpp ++++ b/Source/web/WebPagePopupImpl.cpp +@@ -138,6 +138,16 @@ private: + m_popup->widgetClient()->hasTouchEventHandlers(needsTouchEvents); + } + ++ virtual GraphicsLayerFactory* graphicsLayerFactory() const OVERRIDE ++ { ++ return m_popup->m_webView->graphicsLayerFactory(); ++ } ++ ++ virtual void attachRootGraphicsLayer(Frame*, GraphicsLayer* graphicsLayer) OVERRIDE ++ { ++ m_popup->setRootGraphicsLayer(graphicsLayer); ++ } ++ + WebPagePopupImpl* m_popup; + }; + +@@ -157,6 +167,10 @@ bool PagePopupFeaturesClient::isEnabled(Document*, ContextFeatures::FeatureType + WebPagePopupImpl::WebPagePopupImpl(WebWidgetClient* client) + : m_widgetClient(client) + , m_closing(false) ++ , m_layerTreeView(0) ++ , m_rootLayer(0) ++ , m_rootGraphicsLayer(0) ++ , m_isAcceleratedCompositingActive(false) + { + ASSERT(client); + } +@@ -224,6 +238,49 @@ void WebPagePopupImpl::destroyPage() + m_page.clear(); + } + ++void WebPagePopupImpl::setRootGraphicsLayer(GraphicsLayer* layer) ++{ ++ m_rootGraphicsLayer = layer; ++ m_rootLayer = layer ? layer->platformLayer() : 0; ++ ++ setIsAcceleratedCompositingActive(layer); ++ if (m_layerTreeView) { ++ if (m_rootLayer) { ++ m_layerTreeView->setRootLayer(*m_rootLayer); ++ } else { ++ m_layerTreeView->clearRootLayer(); ++ } ++ } ++} ++ ++void WebPagePopupImpl::setIsAcceleratedCompositingActive(bool enter) ++{ ++ if (m_isAcceleratedCompositingActive == enter) ++ return; ++ ++ if (!enter) { ++ m_isAcceleratedCompositingActive = false; ++ m_widgetClient->didDeactivateCompositor(); ++ } else if (m_layerTreeView) { ++ m_isAcceleratedCompositingActive = true; ++ m_widgetClient->didActivateCompositor(0); ++ } else { ++ TRACE_EVENT0("webkit", "WebPagePopupImpl::setIsAcceleratedCompositingActive(true)"); ++ ++ m_widgetClient->initializeLayerTreeView(); ++ m_layerTreeView = m_widgetClient->layerTreeView(); ++ if (m_layerTreeView) { ++ m_layerTreeView->setVisible(true); ++ m_widgetClient->didActivateCompositor(0); ++ m_isAcceleratedCompositingActive = true; ++ m_layerTreeView->setDeviceScaleFactor(m_widgetClient->deviceScaleFactor()); ++ } else { ++ m_isAcceleratedCompositingActive = false; ++ m_widgetClient->didDeactivateCompositor(); ++ } ++ } ++} ++ + WebSize WebPagePopupImpl::size() + { + return m_popupClient->contentSize(); +@@ -234,6 +291,36 @@ void WebPagePopupImpl::animate(double) + PageWidgetDelegate::animate(m_page.get(), monotonicallyIncreasingTime()); + } + ++void WebPagePopupImpl::enterForceCompositingMode(bool enter) ++{ ++ if (m_page->settings().forceCompositingMode() == enter) ++ return; ++ ++ TRACE_EVENT1("webkit", "WebPagePopupImpl::enterForceCompositingMode", "enter", enter); ++ m_page->settings().setForceCompositingMode(enter); ++ if (enter) { ++ if (!m_page) ++ return; ++ Frame* mainFrame = m_page->mainFrame(); ++ if (!mainFrame) ++ return; ++ mainFrame->view()->updateCompositingLayersAfterStyleChange(); ++ } ++} ++ ++void WebPagePopupImpl::didExitCompositingMode() ++{ ++ setIsAcceleratedCompositingActive(false); ++ m_widgetClient->didInvalidateRect(IntRect(0, 0, size().width, size().height)); ++ m_page->mainFrame()->document()->setNeedsStyleRecalc(SubtreeStyleChange); ++} ++ ++void WebPagePopupImpl::willCloseLayerTreeView() ++{ ++ setIsAcceleratedCompositingActive(false); ++ m_layerTreeView = 0; ++} ++ + void WebPagePopupImpl::layout() + { + PageWidgetDelegate::layout(m_page.get()); +diff --git a/Source/web/WebPagePopupImpl.h b/Source/web/WebPagePopupImpl.h +index 660c47f..050f3ae 100644 +--- a/Source/web/WebPagePopupImpl.h ++++ b/Source/web/WebPagePopupImpl.h +@@ -38,6 +38,7 @@ + #include "wtf/RefCounted.h" + + namespace WebCore { ++class GraphicsLayer; + class Page; + class PagePopupClient; + class PlatformKeyboardEvent; +@@ -46,6 +47,8 @@ class PlatformKeyboardEvent; + namespace blink { + + class PagePopupChromeClient; ++class WebLayerTreeView; ++class WebLayer; + class WebViewImpl; + + class WebPagePopupImpl : public WebPagePopup, +@@ -68,6 +71,9 @@ private: + virtual WebSize size() OVERRIDE; + virtual void animate(double) OVERRIDE; + virtual void layout() OVERRIDE; ++ virtual void enterForceCompositingMode(bool enter) OVERRIDE; ++ virtual void didExitCompositingMode() OVERRIDE; ++ virtual void willCloseLayerTreeView() OVERRIDE; + virtual void paint(WebCanvas*, const WebRect&, PaintOptions = ReadbackFromCompositorIfAvailable) OVERRIDE; + virtual void resize(const WebSize&) OVERRIDE; + virtual void close() OVERRIDE; +@@ -83,6 +89,8 @@ private: + explicit WebPagePopupImpl(WebWidgetClient*); + bool initializePage(); + void destroyPage(); ++ void setRootGraphicsLayer(WebCore::GraphicsLayer*); ++ void setIsAcceleratedCompositingActive(bool enter); + + WebWidgetClient* m_widgetClient; + WebRect m_windowRectInScreen; +@@ -92,6 +100,11 @@ private: + WebCore::PagePopupClient* m_popupClient; + bool m_closing; + ++ WebLayerTreeView* m_layerTreeView; ++ WebLayer* m_rootLayer; ++ WebCore::GraphicsLayer* m_rootGraphicsLayer; ++ bool m_isAcceleratedCompositingActive; ++ + friend class WebPagePopup; + friend class PagePopupChromeClient; + }; diff --git a/patches/chromium/v8/0001-Prevent-V8-from-overridding-the-RuntimeLibrary-cflag.patch b/patches/chromium/v8/0001-Prevent-V8-from-overridding-the-RuntimeLibrary-cflag.patch new file mode 100644 index 000000000..0911d3abd --- /dev/null +++ b/patches/chromium/v8/0001-Prevent-V8-from-overridding-the-RuntimeLibrary-cflag.patch @@ -0,0 +1,55 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jocelyn Turcotte <jocelyn.turcotte@digia.com> +Date: Tue, 15 Apr 2014 14:22:52 +0200 +Subject: Prevent V8 from overridding the RuntimeLibrary cflags + +Since we're never going to statically link to the runtime library on +Windows (unlink Chromium when built as a monolitic chrome.exe), make +sure that our /M flag setting is also properly set for V8. + +Change-Id: Ia17073f6811f43aa264d08c270b1ab841a09408f +Reviewed-by: Michael Bruning <michael.bruning@digia.com> +--- + build/toolchain.gypi | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/build/toolchain.gypi b/build/toolchain.gypi +index 99f357a..2dc3c04 100644 +--- a/build/toolchain.gypi ++++ b/build/toolchain.gypi +@@ -444,7 +444,7 @@ + ['v8_optimized_debug==0', { + 'Optimization': '0', + 'conditions': [ +- ['component=="shared_library"', { ++ ['component=="shared_library" or use_qt==1', { + 'RuntimeLibrary': '3', # /MDd + }, { + 'RuntimeLibrary': '1', # /MTd +@@ -459,7 +459,7 @@ + 'StringPooling': 'true', + 'BasicRuntimeChecks': '0', + 'conditions': [ +- ['component=="shared_library"', { ++ ['component=="shared_library" or use_qt==1', { + 'RuntimeLibrary': '3', # /MDd + }, { + 'RuntimeLibrary': '1', # /MTd +@@ -474,7 +474,7 @@ + 'StringPooling': 'true', + 'BasicRuntimeChecks': '0', + 'conditions': [ +- ['component=="shared_library"', { ++ ['component=="shared_library" or use_qt==1', { + 'RuntimeLibrary': '3', #/MDd + }, { + 'RuntimeLibrary': '1', #/MTd +@@ -666,7 +666,7 @@ + 'FavorSizeOrSpeed': '0', + 'StringPooling': 'true', + 'conditions': [ +- ['component=="shared_library"', { ++ ['component=="shared_library" or use_qt==1', { + 'RuntimeLibrary': '2', #/MD + }, { + 'RuntimeLibrary': '0', #/MT diff --git a/patches/patch-chromium.sh b/patches/patch-chromium.sh index 0f204fed4..d210d2b4d 100755 --- a/patches/patch-chromium.sh +++ b/patches/patch-chromium.sh @@ -57,7 +57,8 @@ for MODULE in \ /third_party/libjingle/source/talk \ /third_party/libvpx \ /tools/gyp \ - /tools/grit + /tools/grit \ + /v8 do cd $CHROMIUM_SRC_DIR$MODULE echo "Entering $PWD" diff --git a/patches/update-patches.sh b/patches/update-patches.sh index feef41267..7fa303d52 100755 --- a/patches/update-patches.sh +++ b/patches/update-patches.sh @@ -50,7 +50,8 @@ for MODULE in \ /third_party/libjingle/source/talk \ /third_party/libvpx \ /tools/gyp \ - /tools/grit + /tools/grit \ + /v8 do cd $THIRDPARTY_UPSTREAM_CHROMIUM_DIR$MODULE echo "Entering $PWD" |