| /* |
| * 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 <string> |
| |
| // 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 |