Update to newest SPIRV-Tools. It checks the Vulkan rule that all resources must have a set and binding decoration, which many tests fail. So add code to set a default value of zero. Also disable PCH for Ninja builds.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7dc35b0..5dc9c66 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -46,12 +46,8 @@
 
 # Precompiled header macro. Parameters are source file list and filename for pch cpp file.
 macro(glslang_pch SRCS PCHCPP)
-  if(MSVC)
-    if (CMAKE_GENERATOR MATCHES "^Visual Studio")
-      set(PCH_NAME "$(IntDir)\\pch.pch")
-    else()
-      set(PCH_NAME "${CMAKE_CURRENT_BINARY_DIR}/pch.pch")
-    endif()
+  if(MSVC AND CMAKE_GENERATOR MATCHES "^Visual Studio")
+    set(PCH_NAME "$(IntDir)\\pch.pch")
     # make source files use/depend on PCH_NAME
     set_source_files_properties(${${SRCS}} PROPERTIES COMPILE_FLAGS "/Yupch.h /FIpch.h /Fp${PCH_NAME} /Zm300" OBJECT_DEPENDS "${PCH_NAME}")
     # make PCHCPP file compile and generate PCH_NAME