xref: /aosp_15_r20/external/skia/src/pdf/BUILD.bazel (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workerload("//bazel:skia_rules.bzl", "generate_cpp_files_for_headers", "skia_cc_library", "split_srcs_and_hdrs")
2*c8dee2aaSAndroid Build Coastguard Worker
3*c8dee2aaSAndroid Build Coastguard Workerpackage(
4*c8dee2aaSAndroid Build Coastguard Worker    default_applicable_licenses = ["//:license"],
5*c8dee2aaSAndroid Build Coastguard Worker)
6*c8dee2aaSAndroid Build Coastguard Worker
7*c8dee2aaSAndroid Build Coastguard Workerlicenses(["notice"])
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard WorkerPDF_FILES = [
10*c8dee2aaSAndroid Build Coastguard Worker    "SkBitmapKey.h",
11*c8dee2aaSAndroid Build Coastguard Worker    "SkClusterator.cpp",
12*c8dee2aaSAndroid Build Coastguard Worker    "SkClusterator.h",
13*c8dee2aaSAndroid Build Coastguard Worker    "SkDeflate.cpp",
14*c8dee2aaSAndroid Build Coastguard Worker    "SkDeflate.h",
15*c8dee2aaSAndroid Build Coastguard Worker    "SkKeyedImage.cpp",
16*c8dee2aaSAndroid Build Coastguard Worker    "SkKeyedImage.h",
17*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFBitmap.cpp",
18*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFBitmap.h",
19*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFDevice.cpp",
20*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFDevice.h",
21*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFDocument.cpp",
22*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFDocumentPriv.h",
23*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFFont.cpp",
24*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFFont.h",
25*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFFormXObject.cpp",
26*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFFormXObject.h",
27*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFGlyphUse.h",
28*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFGradientShader.cpp",
29*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFGradientShader.h",
30*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFGraphicStackState.cpp",
31*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFGraphicStackState.h",
32*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFGraphicState.cpp",
33*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFGraphicState.h",
34*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFMakeCIDGlyphWidthsArray.cpp",
35*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFMakeCIDGlyphWidthsArray.h",
36*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFMakeToUnicodeCmap.cpp",
37*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFMakeToUnicodeCmap.h",
38*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFMetadata.cpp",
39*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFMetadata.h",
40*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFResourceDict.cpp",
41*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFResourceDict.h",
42*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFShader.cpp",
43*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFShader.h",
44*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFSubsetFont.cpp",
45*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFSubsetFont.h",
46*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFTag.cpp",
47*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFTag.h",
48*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFType1Font.cpp",
49*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFType1Font.h",
50*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFTypes.cpp",
51*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFTypes.h",
52*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFUnion.h",
53*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFUtils.cpp",
54*c8dee2aaSAndroid Build Coastguard Worker    "SkPDFUtils.h",
55*c8dee2aaSAndroid Build Coastguard Worker    "SkUUID.h",
56*c8dee2aaSAndroid Build Coastguard Worker]
57*c8dee2aaSAndroid Build Coastguard Worker
58*c8dee2aaSAndroid Build Coastguard Workersplit_srcs_and_hdrs(
59*c8dee2aaSAndroid Build Coastguard Worker    name = "_pdf",
60*c8dee2aaSAndroid Build Coastguard Worker    files = PDF_FILES,
61*c8dee2aaSAndroid Build Coastguard Worker)
62*c8dee2aaSAndroid Build Coastguard Worker
63*c8dee2aaSAndroid Build Coastguard Workergenerate_cpp_files_for_headers(
64*c8dee2aaSAndroid Build Coastguard Worker    name = "headers_to_compile",
65*c8dee2aaSAndroid Build Coastguard Worker    headers = [
66*c8dee2aaSAndroid Build Coastguard Worker        "SkBitmapKey.h",
67*c8dee2aaSAndroid Build Coastguard Worker        "SkPDFDocumentPriv.h",
68*c8dee2aaSAndroid Build Coastguard Worker        "SkPDFUnion.h",
69*c8dee2aaSAndroid Build Coastguard Worker        "SkUUID.h",
70*c8dee2aaSAndroid Build Coastguard Worker    ],
71*c8dee2aaSAndroid Build Coastguard Worker)
72*c8dee2aaSAndroid Build Coastguard Worker
73*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library(
74*c8dee2aaSAndroid Build Coastguard Worker    name = "pdf",
75*c8dee2aaSAndroid Build Coastguard Worker    srcs = [
76*c8dee2aaSAndroid Build Coastguard Worker        ":_pdf_hdrs",
77*c8dee2aaSAndroid Build Coastguard Worker        ":_pdf_srcs",
78*c8dee2aaSAndroid Build Coastguard Worker    ],
79*c8dee2aaSAndroid Build Coastguard Worker    hdrs = [
80*c8dee2aaSAndroid Build Coastguard Worker        "//include/docs:pdf_hdrs",
81*c8dee2aaSAndroid Build Coastguard Worker    ],
82*c8dee2aaSAndroid Build Coastguard Worker    local_defines = ["SK_PDF_USE_HARFBUZZ_SUBSET"],
83*c8dee2aaSAndroid Build Coastguard Worker    visibility = ["//:__pkg__"],
84*c8dee2aaSAndroid Build Coastguard Worker    deps = [
85*c8dee2aaSAndroid Build Coastguard Worker        "//:core",
86*c8dee2aaSAndroid Build Coastguard Worker        "//:jpeg_decode_codec",
87*c8dee2aaSAndroid Build Coastguard Worker        "//:jpeg_encode_codec",
88*c8dee2aaSAndroid Build Coastguard Worker        "//:pathops",
89*c8dee2aaSAndroid Build Coastguard Worker        "//src/core:core_priv",
90*c8dee2aaSAndroid Build Coastguard Worker        "//src/utils:clip_stack_utils",
91*c8dee2aaSAndroid Build Coastguard Worker        "//src/utils:float_to_decimal",
92*c8dee2aaSAndroid Build Coastguard Worker        "@zlib_skia//:zlib",
93*c8dee2aaSAndroid Build Coastguard Worker    ] +
94*c8dee2aaSAndroid Build Coastguard Worker    # We have this harfbuzz dependency all by itself because we need to turn this into a
95*c8dee2aaSAndroid Build Coastguard Worker    # select statement when rolling into G3.
96*c8dee2aaSAndroid Build Coastguard Worker    [
97*c8dee2aaSAndroid Build Coastguard Worker        "@harfbuzz",
98*c8dee2aaSAndroid Build Coastguard Worker    ],
99*c8dee2aaSAndroid Build Coastguard Worker)
100