/* * Copyright 2024 Google LLC * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #include "include/core/SkTypes.h" #include "src/sksl/SkSLModuleData.h" #include // We include minified SkSL module code and pass it directly to the compiler. #if defined(SK_ENABLE_OPTIMIZE_SIZE) || !defined(SK_DEBUG) #include "src/sksl/generated/sksl_shared.minified.sksl" #include "src/sksl/generated/sksl_compute.minified.sksl" #include "src/sksl/generated/sksl_frag.minified.sksl" #include "src/sksl/generated/sksl_gpu.minified.sksl" #include "src/sksl/generated/sksl_public.minified.sksl" #include "src/sksl/generated/sksl_rt_shader.minified.sksl" #include "src/sksl/generated/sksl_vert.minified.sksl" #if defined(SK_GRAPHITE) #include "src/sksl/generated/sksl_graphite_frag.minified.sksl" #include "src/sksl/generated/sksl_graphite_vert.minified.sksl" #include "src/sksl/generated/sksl_graphite_frag_es2.minified.sksl" #include "src/sksl/generated/sksl_graphite_vert_es2.minified.sksl" #endif #else #include "src/sksl/generated/sksl_shared.unoptimized.sksl" #include "src/sksl/generated/sksl_compute.unoptimized.sksl" #include "src/sksl/generated/sksl_frag.unoptimized.sksl" #include "src/sksl/generated/sksl_gpu.unoptimized.sksl" #include "src/sksl/generated/sksl_public.unoptimized.sksl" #include "src/sksl/generated/sksl_rt_shader.unoptimized.sksl" #include "src/sksl/generated/sksl_vert.unoptimized.sksl" #if defined(SK_GRAPHITE) #include "src/sksl/generated/sksl_graphite_frag.unoptimized.sksl" #include "src/sksl/generated/sksl_graphite_vert.unoptimized.sksl" #include "src/sksl/generated/sksl_graphite_frag_es2.unoptimized.sksl" #include "src/sksl/generated/sksl_graphite_vert_es2.unoptimized.sksl" #endif #endif namespace SkSL { std::string GetModuleData(ModuleName name, const char* /*filename*/) { #define M(name) case ModuleName::name: return std::string(SKSL_MINIFIED_##name); switch (name) { M(sksl_shared) M(sksl_compute) M(sksl_frag) M(sksl_gpu) M(sksl_public) M(sksl_rt_shader) M(sksl_vert) #if defined(SK_GRAPHITE) M(sksl_graphite_frag) M(sksl_graphite_frag_es2) M(sksl_graphite_vert) M(sksl_graphite_vert_es2) #endif default: SkUNREACHABLE; } #undef M } } // namespace SkSL