Break out metal headers used by C++ and ObjC code

The chromium build the metal part of code in a different [1]
target than the rest of the code. As such, they see a
gn check errors like:
    ERROR at //third_party/skia/src/gpu/ganesh/GrBackendUtils.cpp:26:11: Including a private header.
    #include "src/gpu/ganesh/mtl/GrMtlCppUtil.h"
              ^--------------------------------
    This file is private to the target //skia:skia_metal
    ERROR at //third_party/skia/src/gpu/ganesh/GrDirectContext.cpp:40:11: Including a private header.
    #include "src/gpu/ganesh/mtl/GrMtlTrampoline.h"
              ^-----------------------------------
    This file is private to the target //skia:skia_metal

To fix this, we can split the headers used by the C++ code
out into their own GNI file group and list that in both
targets (rather than trying to make GrMtlCppUtil.h et al public)

[1] https://source.chromium.org/chromium/chromium/src/+/main:skia/BUILD.gn;l=767-769;drc=f62bcc24c9aaff6ea3db5c870d813fb9c6449f04

Change-Id: I781e35c61123b0f6f874bdb0ed2542fceff81807
Bug: skia:13983
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/628981
Reviewed-by: Jim Van Verth <jvanverth@google.com>
5 files changed