Have pathkit use libpathkit.a for faster builds

Of note, it is very important for the -DSK_RELEASE/-DSK_DEBUG
to match between libskia.a and the WASM bindings, otherwise
things like SKDEBUGCODE are sometimes compiled in and sometimes
not, which can cause headaches like sizeof() mismatching between
.cpp files and .h files.

Bug: skia:
Change-Id: Id6ef58c44a7c10014a243b36708e0891514f6008
Reviewed-on: https://skia-review.googlesource.com/158341
Reviewed-by: Mike Klein <mtklein@google.com>
diff --git a/BUILD.gn b/BUILD.gn
index 361d388..3e8b240 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -976,6 +976,71 @@
   }
 }
 
+static_library("pathkit") {
+  public_configs = [ ":skia_public" ]
+  configs += skia_library_configs
+
+  deps = [
+    ":arm64",
+    ":armv7",
+    ":avx",
+    ":crc32",
+    ":hsw",
+    ":none",
+    ":sse2",
+    ":sse41",
+    ":sse42",
+    ":ssse3",
+  ]
+
+  # This file (and all GN files in Skia) are designed to work with an
+  # empty sources assignment filter; we handle all that explicitly.
+  # We clear the filter here for clients who may have set up a global filter.
+  set_sources_assignment_filter([])
+
+  sources = []
+  sources += skia_pathops_sources
+  sources += [
+    "src/core/SkAnalyticEdge.cpp",
+    "src/core/SkArenaAlloc.cpp",
+    "src/core/SkCubicMap.cpp",
+    "src/core/SkEdge.cpp",
+    "src/core/SkEdgeBuilder.cpp",
+    "src/core/SkEdgeClipper.cpp",
+    "src/core/SkGeometry.cpp",
+    "src/core/SkLineClipper.cpp",
+    "src/core/SkMallocPixelRef.cpp",
+    "src/core/SkMath.cpp",
+    "src/core/SkMatrix.cpp",
+    "src/core/SkOpts.cpp",
+    "src/core/SkPaint.cpp",
+    "src/core/SkPath.cpp",
+    "src/core/SkPathEffect.cpp",
+    "src/core/SkPathMeasure.cpp",
+    "src/core/SkPathRef.cpp",
+    "src/core/SkPoint.cpp",
+    "src/core/SkRRect.cpp",
+    "src/core/SkRect.cpp",
+    "src/core/SkSemaphore.cpp",
+    "src/core/SkStream.cpp",
+    "src/core/SkString.cpp",
+    "src/core/SkStringUtils.cpp",
+    "src/core/SkStroke.cpp",
+    "src/core/SkStrokeRec.cpp",
+    "src/core/SkStrokerPriv.cpp",
+    "src/core/SkThreadID.cpp",
+    "src/core/SkUtils.cpp",
+    "src/effects/SkDashPathEffect.cpp",
+    "src/effects/SkTrimPathEffect.cpp",
+    "src/ports/SkDebug_stdio.cpp",
+    "src/ports/SkMemory_malloc.cpp",
+    "src/utils/SkDashPath.cpp",
+    "src/utils/SkParse.cpp",
+    "src/utils/SkParsePath.cpp",
+    "src/utils/SkUTF.cpp",
+  ]
+}
+
 # Targets guarded by skia_enable_tools may use //third_party freely.
 if (skia_enable_tools) {
   # Used by gn_to_bp.py to list our public include dirs.