diff --git a/include/core/SkColor.h b/include/core/SkColor.h index a6e63def23..1c0655c3d7 100644 --- a/include/core/SkColor.h +++ b/include/core/SkColor.h @@ -420,6 +420,7 @@ using SkColor4f = SkRGBA4f; template <> SK_API SkColor4f SkColor4f::FromColor(SkColor); template <> SK_API SkColor SkColor4f::toSkColor() const; +template <> uint32_t SkColor4f::toBytes_RGBA() const; namespace SkColors { constexpr SkColor4f kTransparent = {0, 0, 0, 0}; diff --git a/include/private/SkColorData.h b/include/private/SkColorData.h index a59e7b0446..960b4c0313 100644 --- a/include/private/SkColorData.h +++ b/include/private/SkColorData.h @@ -438,4 +438,6 @@ constexpr SkPMColor4f SK_PMColor4fILLEGAL = { SK_FloatNegativeInfinity, SK_FloatNegativeInfinity, SK_FloatNegativeInfinity }; +template <> uint32_t SkPMColor4f::toBytes_RGBA() const; + #endif diff --git a/src/core/SkM44.cpp b/src/core/SkM44.cpp index 02b1741763..4cece999d2 100644 --- a/src/core/SkM44.cpp +++ b/src/core/SkM44.cpp @@ -341,6 +341,8 @@ SkM44 SkM44::LookAt(const SkV3& eye, const SkV3& center, const SkV3& up) { return m; } +#undef near +#undef far SkM44 SkM44::Perspective(float near, float far, float angle) { SkASSERT(far > near); diff --git a/src/gpu/ganesh/vk/GrVkSemaphore.cpp b/src/gpu/ganesh/vk/GrVkSemaphore.cpp index 70c7f0ea80..ab8319a447 100644 --- a/src/gpu/ganesh/vk/GrVkSemaphore.cpp +++ b/src/gpu/ganesh/vk/GrVkSemaphore.cpp @@ -10,6 +10,7 @@ #include "include/gpu/GrBackendSemaphore.h" #include "src/gpu/ganesh/vk/GrVkGpu.h" #include "src/gpu/ganesh/vk/GrVkUtil.h" +#include "tools/gpu/vk/GrVulkanDefines.h" #ifdef VK_USE_PLATFORM_WIN32_KHR // windows wants to define this as CreateSemaphoreA or CreateSemaphoreW diff --git a/src/sksl/ir/SkSLPoison.h b/src/sksl/ir/SkSLPoison.h index 035f94e1f6..3cf12db902 100644 --- a/src/sksl/ir/SkSLPoison.h +++ b/src/sksl/ir/SkSLPoison.h @@ -5,6 +5,9 @@ * found in the LICENSE file. */ +#ifndef SKSL_POISON +#define SKSL_POISON + #include "src/sksl/SkSLCompiler.h" #include "src/sksl/SkSLContext.h" @@ -38,3 +41,5 @@ private: }; } // namespace SkSL + +#endif diff --git a/src/utils/win/SkDWriteGeometrySink.h b/src/utils/win/SkDWriteGeometrySink.h index af4909aaaf..825ec35c83 100644 --- a/src/utils/win/SkDWriteGeometrySink.h +++ b/src/utils/win/SkDWriteGeometrySink.h @@ -13,6 +13,8 @@ class SkPath; +#define CONST const + #include #include diff --git a/third_party/skcms/skcms.cc b/third_party/skcms/skcms.cc index 1b643f45cf..c1981110da 100644 --- a/third_party/skcms/skcms.cc +++ b/third_party/skcms/skcms.cc @@ -130,7 +130,8 @@ static float minus_1_ulp(float x) { // Most transfer functions we work with are sRGBish. // For exotic HDR transfer functions, we encode them using a tf.g that makes no sense, // and repurpose the other fields to hold the parameters of the HDR functions. -enum TFKind { Bad, sRGBish, PQish, HLGish, HLGinvish }; +enum TFKind_skcms { Bad, sRGBish, PQish, HLGish, HLGinvish }; +#define TFKind TFKind_skcms struct TF_PQish { float A,B,C,D,E,F; }; struct TF_HLGish { float R,G,a,b,c,K_minus_1; }; // We didn't originally support a scale factor K for HLG, and instead just stored 0 in @@ -2318,7 +2319,9 @@ typedef enum { Op_store_hhhh, Op_store_fff, Op_store_ffff, -} Op; +} Op_skcms; + +#define Op Op_skcms #if defined(__clang__) template using Vec = T __attribute__((ext_vector_type(N)));