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 <dwrite.h>
 #include <d2d1.h>
 
diff --git a/modules/skcms/skcms.cc b/modules/skcms/skcms.cc
index 1b643f45cf..c1981110da 100644
--- a/modules/skcms/skcms.cc
+++ b/modules/skcms/skcms.cc
@@ -2371,7 +2372,9 @@ typedef enum {
     Op_store_hhhh,
     Op_store_fff,
     Op_store_ffff,
-} Op;
+} Op_skcms;
+
+#define Op Op_skcms
 
 #if defined(__clang__)
     template <int N, typename T> using Vec = T __attribute__((ext_vector_type(N)));
