Update from https://crrev.com/319330
- New chromium clang rules require explicit external destructors so
  system/lib added for MessagePipe, DataPipe and SharedBuffer
- New chromium clang rules require override and no virtual in
  declarations, so many files updated.
- cc_strip_video patch updated.

BUG=
R=jamesr@chromium.org

Review URL: https://codereview.chromium.org/988693005
diff --git a/services/http_server/http_server_app.cc b/services/http_server/http_server_app.cc
index e4486fe..98e4dd7 100644
--- a/services/http_server/http_server_app.cc
+++ b/services/http_server/http_server_app.cc
@@ -18,9 +18,9 @@
                       public mojo::InterfaceFactory<HttpServerFactory> {
  public:
   HttpServerApp() {}
-  ~HttpServerApp() {}
+  ~HttpServerApp() override {}
 
-  virtual void Initialize(mojo::ApplicationImpl* app) override { app_ = app; }
+  void Initialize(mojo::ApplicationImpl* app) override { app_ = app; }
 
  private:
   // ApplicationDelegate:
diff --git a/services/js/js_app.h b/services/js/js_app.h
index 8e7e793..adcf45e 100644
--- a/services/js/js_app.h
+++ b/services/js/js_app.h
@@ -27,7 +27,7 @@
  public:
   JSApp(mojo::InterfaceRequest<mojo::Application> application_request,
         mojo::URLResponsePtr response);
-  virtual ~JSApp();
+  ~JSApp() override;
 
  private:
   static const char kMainModuleName[];
diff --git a/services/kiosk_wm/kiosk_wm.h b/services/kiosk_wm/kiosk_wm.h
index 309f50e..c5814cc 100644
--- a/services/kiosk_wm/kiosk_wm.h
+++ b/services/kiosk_wm/kiosk_wm.h
@@ -30,7 +30,7 @@
                 public ui::AcceleratorTarget {
  public:
   KioskWM();
-  virtual ~KioskWM();
+  ~KioskWM() override;
 
   base::WeakPtr<KioskWM> GetWeakPtr();
 
diff --git a/services/kiosk_wm/navigator_host_impl.h b/services/kiosk_wm/navigator_host_impl.h
index 7ff7355..f258e4f 100644
--- a/services/kiosk_wm/navigator_host_impl.h
+++ b/services/kiosk_wm/navigator_host_impl.h
@@ -16,7 +16,7 @@
 class NavigatorHostImpl : public mojo::NavigatorHost {
  public:
   NavigatorHostImpl(KioskWM* kiosk_wm);
-  ~NavigatorHostImpl();
+  ~NavigatorHostImpl() override;
 
   void Bind(mojo::InterfaceRequest<mojo::NavigatorHost> request);
 
diff --git a/services/nacl/BUILD.gn b/services/nacl/BUILD.gn
index a30fe86..51ef84c 100644
--- a/services/nacl/BUILD.gn
+++ b/services/nacl/BUILD.gn
@@ -21,6 +21,6 @@
       "//url",
     ]
 
-    data_deps = [ "//nacl_bindings:irt_mojo(//native_client/build/toolchain/nacl:irt_${cpu_arch})" ]
+    data_deps = [ "//nacl_bindings:irt_mojo(//native_client/build/toolchain/nacl:irt_${target_cpu})" ]
   }
 }
diff --git a/services/reaper/reaper_impl.h b/services/reaper/reaper_impl.h
index b0ae2a4..760841d 100644
--- a/services/reaper/reaper_impl.h
+++ b/services/reaper/reaper_impl.h
@@ -33,7 +33,7 @@
   typedef uint64 AppSecret;
 
   ReaperImpl();
-  ~ReaperImpl();
+  ~ReaperImpl() override;
 
   void GetApplicationSecret(const GURL& caller_app,
                             const mojo::Callback<void(AppSecret)>&);
diff --git a/services/surfaces/surfaces_scheduler.cc b/services/surfaces/surfaces_scheduler.cc
index 500ef97..b5edb05 100644
--- a/services/surfaces/surfaces_scheduler.cc
+++ b/services/surfaces/surfaces_scheduler.cc
@@ -11,8 +11,7 @@
 SurfacesScheduler::SurfacesScheduler() {
   cc::SchedulerSettings settings;
   scheduler_ = cc::Scheduler::Create(
-      this, settings, 0, base::MessageLoop::current()->task_runner(), nullptr,
-      nullptr);
+      this, settings, 0, base::MessageLoop::current()->task_runner(), nullptr);
   scheduler_->SetCanStart();
   scheduler_->SetVisible(true);
   scheduler_->SetCanDraw(true);
diff --git a/services/surfaces/surfaces_scheduler.h b/services/surfaces/surfaces_scheduler.h
index 5e2e5c4..1c98af1 100644
--- a/services/surfaces/surfaces_scheduler.h
+++ b/services/surfaces/surfaces_scheduler.h
@@ -18,7 +18,7 @@
 class SurfacesScheduler : public cc::SchedulerClient {
  public:
   SurfacesScheduler();
-  ~SurfacesScheduler();
+  ~SurfacesScheduler() override;
 
   void SetNeedsDraw();
 
diff --git a/services/window_manager/focus_controller.h b/services/window_manager/focus_controller.h
index 20f966e..6837c68 100644
--- a/services/window_manager/focus_controller.h
+++ b/services/window_manager/focus_controller.h
@@ -25,7 +25,7 @@
  public:
   // |rules| cannot be null.
   explicit FocusController(scoped_ptr<FocusRules> rules);
-  virtual ~FocusController();
+  ~FocusController() override;
 
   void AddObserver(FocusControllerObserver* observer);
   void RemoveObserver(FocusControllerObserver* observer);
diff --git a/services/window_manager/focus_controller_unittest.cc b/services/window_manager/focus_controller_unittest.cc
index a657e36..ba47c73 100644
--- a/services/window_manager/focus_controller_unittest.cc
+++ b/services/window_manager/focus_controller_unittest.cc
@@ -1071,7 +1071,7 @@
     disposition_view->parent()->RemoveChild(disposition_view);
     window_to_destroy_ = disposition_view;
   }
-  virtual void TearDown() override {
+  void TearDown() override {
     if (window_to_destroy_)
       window_to_destroy_->Destroy();
 
diff --git a/services/window_manager/window_manager_apptest.cc b/services/window_manager/window_manager_apptest.cc
index 818999f..1f8519e 100644
--- a/services/window_manager/window_manager_apptest.cc
+++ b/services/window_manager/window_manager_apptest.cc
@@ -31,7 +31,7 @@
 
  private:
   // ApplicationDelegate:
-  virtual void Initialize(ApplicationImpl* app) override {
+  void Initialize(ApplicationImpl* app) override {
     view_manager_client_factory_.reset(
         new ViewManagerClientFactory(app->shell(), this));
   }