Move pdfium sources into fpdfsdk

This is necessary to prevent targets like test_support from depending
on pdfium.  test_support depends on pdfium internals, so should not
depend on pdfium when it's a shared library because of ODR violations.

With this change, the dependency on pdfium can be removed (in a followup).

BUG=chromium:960288
R=thestig

Change-Id: I3a65a30b07f3b05bb23e88629546c578983089f0
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/54352
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Auto-Submit: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
diff --git a/BUILD.gn b/BUILD.gn
index 97dfbd6..0581fde 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -130,45 +130,16 @@
 }
 
 jumbo_component("pdfium") {
-  sources = [
-    "fpdfsdk/fpdf_annot.cpp",
-    "fpdfsdk/fpdf_attachment.cpp",
-    "fpdfsdk/fpdf_catalog.cpp",
-    "fpdfsdk/fpdf_dataavail.cpp",
-    "fpdfsdk/fpdf_doc.cpp",
-    "fpdfsdk/fpdf_editimg.cpp",
-    "fpdfsdk/fpdf_editpage.cpp",
-    "fpdfsdk/fpdf_editpath.cpp",
-    "fpdfsdk/fpdf_edittext.cpp",
-    "fpdfsdk/fpdf_ext.cpp",
-    "fpdfsdk/fpdf_flatten.cpp",
-    "fpdfsdk/fpdf_formfill.cpp",
-    "fpdfsdk/fpdf_ppo.cpp",
-    "fpdfsdk/fpdf_progressive.cpp",
-    "fpdfsdk/fpdf_save.cpp",
-    "fpdfsdk/fpdf_searchex.cpp",
-    "fpdfsdk/fpdf_structtree.cpp",
-    "fpdfsdk/fpdf_sysfontinfo.cpp",
-    "fpdfsdk/fpdf_text.cpp",
-    "fpdfsdk/fpdf_transformpage.cpp",
-    "fpdfsdk/fpdf_view.cpp",
-  ]
-
   libs = []
   configs += [ ":pdfium_core_config" ]
 
   deps = [
     ":pdfium_public_headers",
     "constants",
-    "core/fdrm",
     "core/fpdfapi",
-    "core/fpdfapi/edit",
-    "core/fpdfapi/font",
     "core/fpdfapi/page",
     "core/fpdfapi/parser",
-    "core/fpdfapi/render",
     "core/fpdfdoc",
-    "core/fpdftext",
     "core/fxcodec",
     "core/fxcrt",
     "core/fxge",
@@ -184,12 +155,9 @@
     "core/fxcrt",
   ]
 
-  defines = [ "FPDF_IMPLEMENTATION" ]
-
   if (pdf_enable_xfa) {
     deps += [
       "fpdfsdk/fpdfxfa",
-      "fxbarcode",
       "xfa/fxfa",
       "xfa/fxfa/parser",
     ]
diff --git a/fpdfsdk/BUILD.gn b/fpdfsdk/BUILD.gn
index 68de270..fcea031 100644
--- a/fpdfsdk/BUILD.gn
+++ b/fpdfsdk/BUILD.gn
@@ -44,20 +44,47 @@
     "cpdfsdk_widget.h",
     "cpdfsdk_widgethandler.cpp",
     "cpdfsdk_widgethandler.h",
+    "fpdf_annot.cpp",
+    "fpdf_attachment.cpp",
+    "fpdf_catalog.cpp",
+    "fpdf_dataavail.cpp",
+    "fpdf_doc.cpp",
+    "fpdf_editimg.cpp",
+    "fpdf_editpage.cpp",
+    "fpdf_editpath.cpp",
+    "fpdf_edittext.cpp",
+    "fpdf_ext.cpp",
+    "fpdf_flatten.cpp",
+    "fpdf_formfill.cpp",
+    "fpdf_ppo.cpp",
+    "fpdf_progressive.cpp",
+    "fpdf_save.cpp",
+    "fpdf_searchex.cpp",
+    "fpdf_structtree.cpp",
+    "fpdf_sysfontinfo.cpp",
+    "fpdf_text.cpp",
+    "fpdf_transformpage.cpp",
+    "fpdf_view.cpp",
     "ipdfsdk_annothandler.h",
     "ipdfsdk_pauseadapter.cpp",
     "ipdfsdk_pauseadapter.h",
   ]
 
+  defines = [ "FPDF_IMPLEMENTATION" ]
+
   configs += [ "../:pdfium_core_config" ]
   deps = [
     "../:pdfium_public_headers",
     "../constants",
+    "../core/fdrm",
     "../core/fpdfapi",
+    "../core/fpdfapi/edit",
+    "../core/fpdfapi/font",
     "../core/fpdfapi/page",
     "../core/fpdfapi/parser",
     "../core/fpdfapi/render",
     "../core/fpdfdoc",
+    "../core/fpdftext",
     "../core/fxcrt",
     "../core/fxge",
     "../fxjs",
@@ -82,6 +109,7 @@
     ]
 
     deps += [
+      "../fxbarcode",
       "../xfa/fwl",
       "../xfa/fxfa",
       "../xfa/fxfa/parser",