Support Glslang with its new HLSL parser library

This commit requires a matching update to
github.com/google/glslang to catch up to
github.com/KhronosGroup/glslang.

Also remove include directories for SPIRV-Tools that no
longer exist.
diff --git a/Android.mk b/Android.mk
index 9a988b9..9c20c31 100644
--- a/Android.mk
+++ b/Android.mk
@@ -10,6 +10,7 @@
 	libshaderc.a \
 	libshaderc_util.a \
 	libSPIRV.a \
+	libHLSL.a \
 	libSPIRV-Tools.a
 
 define gen_libshaderc
diff --git a/glslc/CMakeLists.txt b/glslc/CMakeLists.txt
index f0a53fb..ba4d4c5 100644
--- a/glslc/CMakeLists.txt
+++ b/glslc/CMakeLists.txt
@@ -16,7 +16,7 @@
 shaderc_default_compile_options(glslc)
 target_include_directories(glslc PUBLIC ${glslang_SOURCE_DIR})
 target_link_libraries(glslc PRIVATE glslang OSDependent OGLCompiler
-  glslang SPIRV ${CMAKE_THREAD_LIBS_INIT})
+  HLSL glslang SPIRV ${CMAKE_THREAD_LIBS_INIT})
 target_link_libraries(glslc PRIVATE shaderc_util shaderc)
 
 add_executable(glslc_exe src/main.cc)
diff --git a/libshaderc_util/CMakeLists.txt b/libshaderc_util/CMakeLists.txt
index c94dd1b..bb32520 100644
--- a/libshaderc_util/CMakeLists.txt
+++ b/libshaderc_util/CMakeLists.txt
@@ -25,7 +25,7 @@
   PUBLIC include PRIVATE ${glslang_SOURCE_DIR})
 find_package(Threads)
 target_link_libraries(shaderc_util PRIVATE
-  glslang OSDependent OGLCompiler glslang SPIRV
+  glslang OSDependent OGLCompiler HLSL glslang SPIRV
   SPIRV-Tools ${CMAKE_THREAD_LIBS_INIT})
 
 shaderc_add_tests(
diff --git a/third_party/Android.mk b/third_party/Android.mk
index 4405f50..ed07147 100644
--- a/third_party/Android.mk
+++ b/third_party/Android.mk
@@ -39,6 +39,20 @@
 LOCAL_STATIC_LIBRARIES:=OSDependent
 include $(BUILD_STATIC_LIBRARY)
 
+
+# Build Glslang's HLSL parser library.
+include $(CLEAR_VARS)
+LOCAL_MODULE:=HLSL
+LOCAL_CXXFLAGS:=-std=c++11 -fno-exceptions -fno-rtti
+LOCAL_SRC_FILES:= \
+		hlsl/hlslGrammar.cpp \
+		hlsl/hlslParseHelper.cpp \
+		hlsl/hlslScanContext.cpp
+LOCAL_C_INCLUDES:=$(GLSLANG_LOCAL_PATH) \
+	$(GLSLANG_LOCAL_PATH)/hlsl
+include $(BUILD_STATIC_LIBRARY)
+
+
 include $(CLEAR_VARS)
 
 GLSLANG_OUT_PATH=$(abspath $(TARGET_OUT))
@@ -79,7 +93,7 @@
 LOCAL_C_INCLUDES:=$(GLSLANG_LOCAL_PATH) \
 	$(GLSLANG_LOCAL_PATH)/glslang/MachineIndependent \
 	$(GLSLANG_OUT_PATH)
-LOCAL_STATIC_LIBRARIES:=OSDependent OGLCompiler SPIRV
+LOCAL_STATIC_LIBRARIES:=OSDependent OGLCompiler SPIRV HLSL
 include $(BUILD_STATIC_LIBRARY)
 
 
@@ -113,12 +127,10 @@
 LOCAL_MODULE := SPIRV-Tools
 LOCAL_C_INCLUDES := \
 		$(SPVTOOLS_LOCAL_PATH)/include \
-		$(SPVTOOLS_LOCAL_PATH)/external/include \
 		$(SPVTOOLS_LOCAL_PATH)/source \
 		$(SPVTOOLS_OUT_PATH)
 LOCAL_EXPORT_C_INCLUDES := \
-		$(SPVTOOLS_LOCAL_PATH)/include \
-		$(SPVTOOLS_LOCAL_PATH)/external/include
+		$(SPVTOOLS_LOCAL_PATH)/include
 LOCAL_CXXFLAGS:=-std=c++11 -fno-exceptions -fno-rtti
 LOCAL_SRC_FILES:= \
 		source/assembly_grammar.cpp \