diff --git a/BUILD.gn b/BUILD.gn
index 0d26287..ff0ff97 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -815,9 +815,6 @@
   public_deps = [
     "//v8",
   ]
-  deps = [
-    "//v8:v8_libplatform",
-  ]
 }
 
 static_library("jsapi") {
diff --git a/fpdfsdk/include/javascript/IJavaScript.h b/fpdfsdk/include/javascript/IJavaScript.h
index fbd89d2..9d50b04 100644
--- a/fpdfsdk/include/javascript/IJavaScript.h
+++ b/fpdfsdk/include/javascript/IJavaScript.h
@@ -7,10 +7,6 @@
 #ifndef _IJAVASCRIPT_H_
 #define _IJAVASCRIPT_H_
 
-namespace v8 {
-class Platform;
-}
-
 class IFXJS_Context
 {
 public:
@@ -101,7 +97,7 @@
 class CJS_RuntimeFactory
 {
 public:
-	CJS_RuntimeFactory():m_bInit(FALSE),m_nRef(0),m_pGlobalData(NULL),m_nGlobalDataCount(0),m_platform(NULL) {}
+	CJS_RuntimeFactory():m_bInit(FALSE),m_nRef(0),m_pGlobalData(NULL),m_nGlobalDataCount(0) {}
 	~CJS_RuntimeFactory();
 	IFXJS_Runtime*					NewJSRuntime(CPDFDoc_Environment* pApp);
 	void							DeleteJSRuntime(IFXJS_Runtime* pRuntime);
@@ -115,7 +111,6 @@
 	int m_nRef;
 	CJS_GlobalData*					m_pGlobalData;
 	FX_INT32						m_nGlobalDataCount;
-        v8::Platform*						m_platform;
 };
 
 #endif //_IJAVASCRIPT_H_
diff --git a/fpdfsdk/src/javascript/JS_Runtime.cpp b/fpdfsdk/src/javascript/JS_Runtime.cpp
index cf06f9a..b0e80dd 100644
--- a/fpdfsdk/src/javascript/JS_Runtime.cpp
+++ b/fpdfsdk/src/javascript/JS_Runtime.cpp
@@ -29,8 +29,6 @@
 #include "../../include/fpdfxfa/fpdfxfa_app.h"
 #include "../../../xfa/src/fxjse/src/value.h"
 
-#include <libplatform/libplatform.h>
-
 CJS_RuntimeFactory::~CJS_RuntimeFactory()
 {
 }
@@ -40,11 +38,6 @@
 	if (!m_bInit)
 	{
 		JS_Initial();
-/*
-                m_platform = v8::platform::CreateDefaultPlatform();
-                v8::V8::InitializePlatform(m_platform);
-                v8::V8::Initialize();
-*/
 		m_bInit = TRUE;
 	}
 	return new CJS_Runtime(pApp);
@@ -63,9 +56,6 @@
 		{
 			JS_Release();
 			ReleaseGlobalData();
-                        v8::V8::ShutdownPlatform();
-                        delete m_platform;
-                        m_platform = NULL;
 			m_bInit = FALSE;
 		}
 	}
diff --git a/pdfium.gyp b/pdfium.gyp
index 65caf6f..d9c8ac2 100644
--- a/pdfium.gyp
+++ b/pdfium.gyp
@@ -803,13 +803,12 @@
     {
       'target_name': 'javascript',
       'type': 'static_library',
-        'include_dirs': [
-          '<(DEPTH)/v8',
-          '<(DEPTH)/v8/include',
-        ],
+      'include_dirs': [
+        '<(DEPTH)/v8',
+        '<(DEPTH)/v8/include',
+      ],
       'dependencies': [
         '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
-        '<(DEPTH)/v8/tools/gyp/v8.gyp:v8_libplatform',
       ],
       'export_dependent_settings': [
         '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
diff --git a/samples/BUILD.gn b/samples/BUILD.gn
index 7f2f41f..6bd2a81 100644
--- a/samples/BUILD.gn
+++ b/samples/BUILD.gn
@@ -15,6 +15,11 @@
   ]
   deps = [
     "//third_party/pdfium",
+    "//v8:v8_libplatform",
+  ]
+  include_dirs = [
+    "//v8",
+    "//v8/include",
   ]
 }
 
@@ -27,4 +32,4 @@
   deps = [
     "//third_party/pdfium",
   ]
-}
\ No newline at end of file
+}
diff --git a/samples/pdfium_test.cc b/samples/pdfium_test.cc
index a813c9c..4f6e832 100644
--- a/samples/pdfium_test.cc
+++ b/samples/pdfium_test.cc
@@ -20,8 +20,10 @@
 #include "../fpdfsdk/include/fpdftext.h"
 #include "../fpdfsdk/include/fpdfview.h"
 #include "../core/include/fxcrt/fx_system.h"
-#include "v8/include/v8.h"
 #include "image_diff_png.h"
+#include "v8/include/v8.h"
+#include "v8/include/libplatform/libplatform.h"
+
 
 #ifdef _WIN32
 #define snprintf _snprintf
@@ -573,6 +575,9 @@
   }
 
   v8::V8::InitializeICU();
+  v8::Platform* platform = v8::platform::CreateDefaultPlatform();
+  v8::V8::InitializePlatform(platform);
+  v8::V8::Initialize();
 
 #ifdef V8_USE_EXTERNAL_STARTUP_DATA
   v8::StartupData natives;
@@ -606,6 +611,8 @@
   }
 
   FPDF_DestroyLibrary();
+  v8::V8::ShutdownPlatform();
+  delete platform;
 
   return 0;
 }
diff --git a/samples/samples.gyp b/samples/samples.gyp
index e559790..c972142 100644
--- a/samples/samples.gyp
+++ b/samples/samples.gyp
@@ -7,8 +7,13 @@
     'type': 'executable',
     'dependencies': [
       '../pdfium.gyp:pdfium',
+      '<(DEPTH)/v8/tools/gyp/v8.gyp:v8_libplatform',
     ],
-    'include_dirs': ['<(DEPTH)'],
+    'include_dirs': [
+      '<(DEPTH)',
+      '<(DEPTH)/v8',
+      '<(DEPTH)/v8/include',
+    ],
   },
   'targets': [
     {
diff --git a/xfa/src/fxjse/src/runtime.cpp b/xfa/src/fxjse/src/runtime.cpp
index 0a1b0db..c4dc61c 100644
--- a/xfa/src/fxjse/src/runtime.cpp
+++ b/xfa/src/fxjse/src/runtime.cpp
@@ -28,10 +28,6 @@
         "--block_concurrent_recompilation "
         ;
     v8::V8::SetFlagsFromString(szCmdFlags, FXSYS_strlen(szCmdFlags));
-    v8::V8::InitializeICU();
-    v8::Platform* platform = v8::platform::CreateDefaultPlatform();
-    v8::V8::InitializePlatform(platform);
-    v8::V8::Initialize();
 }
 static void FXJSE_Runtime_DisposeCallback(v8::Isolate* pIsolate)
 {
