1*c8dee2aaSAndroid Build Coastguard Workerload( 2*c8dee2aaSAndroid Build Coastguard Worker "//bazel:skia_rules.bzl", 3*c8dee2aaSAndroid Build Coastguard Worker "generate_cpp_files_for_headers", 4*c8dee2aaSAndroid Build Coastguard Worker "skia_cc_library", 5*c8dee2aaSAndroid Build Coastguard Worker "skia_filegroup", 6*c8dee2aaSAndroid Build Coastguard Worker) 7*c8dee2aaSAndroid Build Coastguard Worker 8*c8dee2aaSAndroid Build Coastguard Workerpackage( 9*c8dee2aaSAndroid Build Coastguard Worker default_applicable_licenses = ["//:license"], 10*c8dee2aaSAndroid Build Coastguard Worker) 11*c8dee2aaSAndroid Build Coastguard Worker 12*c8dee2aaSAndroid Build Coastguard Workerlicenses(["notice"]) 13*c8dee2aaSAndroid Build Coastguard Worker 14*c8dee2aaSAndroid Build Coastguard Worker# Headers with no corresponding .cpp files 15*c8dee2aaSAndroid Build Coastguard WorkerIWYU_HDRS = [ 16*c8dee2aaSAndroid Build Coastguard Worker "SkArenaAllocList.h", 17*c8dee2aaSAndroid Build Coastguard Worker "SkBitmaskEnum.h", 18*c8dee2aaSAndroid Build Coastguard Worker "SkEndian.h", 19*c8dee2aaSAndroid Build Coastguard Worker "SkEnumBitMask.h", 20*c8dee2aaSAndroid Build Coastguard Worker "SkFixedArray.h", 21*c8dee2aaSAndroid Build Coastguard Worker "SkFloatBits.h", 22*c8dee2aaSAndroid Build Coastguard Worker "SkLeanWindows.h", 23*c8dee2aaSAndroid Build Coastguard Worker "SkMSAN.h", 24*c8dee2aaSAndroid Build Coastguard Worker "SkNoDestructor.h", 25*c8dee2aaSAndroid Build Coastguard Worker "SkRandom.h", 26*c8dee2aaSAndroid Build Coastguard Worker "SkRectMemcpy.h", 27*c8dee2aaSAndroid Build Coastguard Worker "SkScopeExit.h", 28*c8dee2aaSAndroid Build Coastguard Worker "SkStringView.h", 29*c8dee2aaSAndroid Build Coastguard Worker "SkTBlockList.h", 30*c8dee2aaSAndroid Build Coastguard Worker "SkTDPQueue.h", 31*c8dee2aaSAndroid Build Coastguard Worker "SkTInternalLList.h", 32*c8dee2aaSAndroid Build Coastguard Worker "SkTLazy.h", 33*c8dee2aaSAndroid Build Coastguard Worker "SkTSort.h", 34*c8dee2aaSAndroid Build Coastguard Worker "SkZip.h", 35*c8dee2aaSAndroid Build Coastguard Worker] 36*c8dee2aaSAndroid Build Coastguard Worker 37*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 38*c8dee2aaSAndroid Build Coastguard Worker name = "private_hdrs", 39*c8dee2aaSAndroid Build Coastguard Worker srcs = IWYU_HDRS + [ 40*c8dee2aaSAndroid Build Coastguard Worker "SkArenaAlloc.h", 41*c8dee2aaSAndroid Build Coastguard Worker "SkAutoMalloc.h", 42*c8dee2aaSAndroid Build Coastguard Worker "SkBase64.h", 43*c8dee2aaSAndroid Build Coastguard Worker "SkBezierCurves.h", 44*c8dee2aaSAndroid Build Coastguard Worker "SkBlockAllocator.h", 45*c8dee2aaSAndroid Build Coastguard Worker "SkBuffer.h", 46*c8dee2aaSAndroid Build Coastguard Worker "SkCubics.h", 47*c8dee2aaSAndroid Build Coastguard Worker "SkHalf.h", 48*c8dee2aaSAndroid Build Coastguard Worker "SkMathPriv.h", 49*c8dee2aaSAndroid Build Coastguard Worker "SkQuads.h", 50*c8dee2aaSAndroid Build Coastguard Worker "SkSafeMath.h", 51*c8dee2aaSAndroid Build Coastguard Worker "SkSharedMutex.h", 52*c8dee2aaSAndroid Build Coastguard Worker "SkSpinlock.h", 53*c8dee2aaSAndroid Build Coastguard Worker "SkTSearch.h", 54*c8dee2aaSAndroid Build Coastguard Worker "SkTime.h", 55*c8dee2aaSAndroid Build Coastguard Worker "SkUTF.h", 56*c8dee2aaSAndroid Build Coastguard Worker "SkUtils.h", 57*c8dee2aaSAndroid Build Coastguard Worker "SkVx.h", # Causes IWYU to crash when compiling. 58*c8dee2aaSAndroid Build Coastguard Worker ], 59*c8dee2aaSAndroid Build Coastguard Worker) 60*c8dee2aaSAndroid Build Coastguard Worker 61*c8dee2aaSAndroid Build Coastguard Worker# In a separate file group because these files are exported to sksl.gni:skslc_deps. 62*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 63*c8dee2aaSAndroid Build Coastguard Worker name = "skslc_srcs", 64*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 65*c8dee2aaSAndroid Build Coastguard Worker "SkArenaAlloc.cpp", 66*c8dee2aaSAndroid Build Coastguard Worker "SkBlockAllocator.cpp", 67*c8dee2aaSAndroid Build Coastguard Worker "SkContainers.cpp", 68*c8dee2aaSAndroid Build Coastguard Worker "SkHalf.cpp", 69*c8dee2aaSAndroid Build Coastguard Worker "SkMalloc.cpp", 70*c8dee2aaSAndroid Build Coastguard Worker "SkMathPriv.cpp", 71*c8dee2aaSAndroid Build Coastguard Worker "SkSafeMath.cpp", 72*c8dee2aaSAndroid Build Coastguard Worker "SkSemaphore.cpp", 73*c8dee2aaSAndroid Build Coastguard Worker "SkThreadID.cpp", 74*c8dee2aaSAndroid Build Coastguard Worker "SkUTF.cpp", 75*c8dee2aaSAndroid Build Coastguard Worker "SkUtils.cpp", 76*c8dee2aaSAndroid Build Coastguard Worker ], 77*c8dee2aaSAndroid Build Coastguard Worker) 78*c8dee2aaSAndroid Build Coastguard Worker 79*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 80*c8dee2aaSAndroid Build Coastguard Worker name = "srcs", 81*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 82*c8dee2aaSAndroid Build Coastguard Worker "SkBase64.cpp", 83*c8dee2aaSAndroid Build Coastguard Worker "SkBezierCurves.cpp", 84*c8dee2aaSAndroid Build Coastguard Worker "SkBuffer.cpp", 85*c8dee2aaSAndroid Build Coastguard Worker "SkCubics.cpp", 86*c8dee2aaSAndroid Build Coastguard Worker "SkDebug.cpp", 87*c8dee2aaSAndroid Build Coastguard Worker "SkDeque.cpp", 88*c8dee2aaSAndroid Build Coastguard Worker "SkFloatingPoint.cpp", 89*c8dee2aaSAndroid Build Coastguard Worker "SkQuads.cpp", 90*c8dee2aaSAndroid Build Coastguard Worker "SkSharedMutex.cpp", 91*c8dee2aaSAndroid Build Coastguard Worker "SkSpinlock.cpp", 92*c8dee2aaSAndroid Build Coastguard Worker "SkTDArray.cpp", 93*c8dee2aaSAndroid Build Coastguard Worker "SkTSearch.cpp", 94*c8dee2aaSAndroid Build Coastguard Worker "SkTime.cpp", 95*c8dee2aaSAndroid Build Coastguard Worker ":skslc_srcs", 96*c8dee2aaSAndroid Build Coastguard Worker ], 97*c8dee2aaSAndroid Build Coastguard Worker) 98*c8dee2aaSAndroid Build Coastguard Worker 99*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 100*c8dee2aaSAndroid Build Coastguard Worker name = "base", 101*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 102*c8dee2aaSAndroid Build Coastguard Worker ":srcs", 103*c8dee2aaSAndroid Build Coastguard Worker "//src/ports:base_srcs", 104*c8dee2aaSAndroid Build Coastguard Worker ], 105*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 106*c8dee2aaSAndroid Build Coastguard Worker ":private_hdrs", 107*c8dee2aaSAndroid Build Coastguard Worker "//include/private/base:private_hdrs", 108*c8dee2aaSAndroid Build Coastguard Worker ], 109*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 110*c8dee2aaSAndroid Build Coastguard Worker visibility = [ 111*c8dee2aaSAndroid Build Coastguard Worker "//bench:__subpackages__", 112*c8dee2aaSAndroid Build Coastguard Worker "//experimental/rust_png:__subpackages__", 113*c8dee2aaSAndroid Build Coastguard Worker "//modules:__subpackages__", 114*c8dee2aaSAndroid Build Coastguard Worker "//src:__subpackages__", 115*c8dee2aaSAndroid Build Coastguard Worker "//tests:__subpackages__", 116*c8dee2aaSAndroid Build Coastguard Worker "//tools:__subpackages__", 117*c8dee2aaSAndroid Build Coastguard Worker ], 118*c8dee2aaSAndroid Build Coastguard Worker deps = ["@skia_user_config//:user_config"], 119*c8dee2aaSAndroid Build Coastguard Worker) 120*c8dee2aaSAndroid Build Coastguard Worker 121*c8dee2aaSAndroid Build Coastguard Workergenerate_cpp_files_for_headers( 122*c8dee2aaSAndroid Build Coastguard Worker name = "headers_to_compile", 123*c8dee2aaSAndroid Build Coastguard Worker headers = IWYU_HDRS, 124*c8dee2aaSAndroid Build Coastguard Worker) 125