Disable the HLSL code in Angle if it is not being used.

We're only using the HLSL code in Windows so
it's not necessary to compile and distribute it on other platforms.

This adds a defined ANGLE_ENABLE_HLSL that can be checked in files that
are used by non-HLSL code as well. Mostly the HLSL code is just not
include by the build system.

Details of the space savings (heavily truncated)

Total change: -165717 bytes
===========================
 -606 - Source: angle/src/common/utilities.cpp
 -627 - Source: angle/src/compiler/translator/FlagStd140Structs.cpp
 -695 - Source: /usr/include/c++/4.8/bits/stl_algo.h
 -710 - Source: angle/src/compiler/translator/TranslatorHLSL.cpp
 -713 - Source: angle/src/compiler/translator/IntermNode.h
 -863 - Source: /usr/include/c++/4.8/bits/stl_map.h
 -935 - Source: angle/src/compiler/translator/blocklayout.cpp
 -1515 - Source: angle/src/compiler/translator/BuiltInFunctionEmulator.cpp
 -1655 - Source: angle/src/compiler/translator/UnfoldShortCircuit.cpp
 -2375 - Source: /usr/include/c++/4.8/bits/vector.tcc
 -3135 - Source: angle/src/compiler/translator/RewriteElseBlocks.cpp
 -4656 - Source: angle/src/compiler/translator/UtilsHLSL.cpp
 -5265 - Source: angle/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp
 -6505 - Source: /usr/include/c++/4.8/bits/stl_tree.h
 -11480 - Source: angle/src/compiler/translator/UniformHLSL.cpp
 -13580 - Source: angle/src/compiler/translator/StructureHLSL.cpp
 -18964 - Source: ??
    (constant strings and a few vtbls)
 -89332 - Source: angle/src/compiler/translator/OutputHLSL.cpp

Change-Id: I23ccc98abd0a21f847dd34f9482800b3ba679d56
Reviewed-on: https://chromium-review.googlesource.com/251528
Tested-by: bratell at Opera <bratell@opera.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/compiler/translator/CodeGen.cpp b/src/compiler/translator/CodeGen.cpp
index 71056f4..10809e8 100644
--- a/src/compiler/translator/CodeGen.cpp
+++ b/src/compiler/translator/CodeGen.cpp
@@ -6,7 +6,9 @@
 
 #include "compiler/translator/TranslatorESSL.h"
 #include "compiler/translator/TranslatorGLSL.h"
+#ifdef ANGLE_ENABLE_HLSL
 #include "compiler/translator/TranslatorHLSL.h"
+#endif // ANGLE_ENABLE_HLSL
 
 //
 // This function must be provided to create the actual
@@ -23,8 +25,15 @@
         return new TranslatorGLSL(type, spec);
     case SH_HLSL9_OUTPUT:
     case SH_HLSL11_OUTPUT:
+#ifdef ANGLE_ENABLE_HLSL
         return new TranslatorHLSL(type, spec, output);
+#else
+        // This compiler is not supported in this
+        // configuration. Return NULL per the ShConstructCompiler API.
+        return NULL;
+#endif // ANGLE_ENABLE_HLSL
     default:
+        // Unknown format. Return NULL per the ShConstructCompiler API.
         return NULL;
     }
 }