Unify type spec by creating rs-spec-gen.

rs-spec-gen (slang_rs_spec_table.cpp) will help llvm-rs-cc to share
the RS spec it used across the other projects. This will makes code
cleaner and therefore easier to add new spec/synchronize the spec
between other project (e.g., libbcc and libRS).

This CL is the first part. It eliminated the needs of
slang_rs_export_element_support.inc and
slang_rs_export_type_support.inc.
diff --git a/Android.mk b/Android.mk
index aca6d42..7e1310c 100644
--- a/Android.mk
+++ b/Android.mk
@@ -131,6 +131,20 @@
 include $(LLVM_GEN_INTRINSICS_MK)
 include $(BUILD_HOST_EXECUTABLE)
 
+# Executable rs-spec-gen for host
+# ========================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := rs-spec-gen
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_MODULE_CLASS := EXECUTABLES
+
+LOCAL_SRC_FILES :=	\
+	slang_rs_spec_table.cpp
+
+include $(BUILD_HOST_EXECUTABLE)
+
 # Executable llvm-rs-cc for host
 # ========================================================
 include $(CLEAR_VARS)
@@ -155,6 +169,13 @@
 	StmtNodes.inc	\
 	RSCCOptions.inc
 
+RS_SPEC_TABLES :=	\
+	RSClangBuiltinEnums.inc	\
+	RSDataTypeEnums.inc	\
+	RSDataElementEnums.inc	\
+	RSDataKindEnums.inc	\
+	RSObjectTypeEnums.inc
+
 LOCAL_SRC_FILES :=	\
 	llvm-rs-cc.cpp	\
 	slang_rs.cpp	\
@@ -182,6 +203,7 @@
 	@echo "Building RenderScript compiler (llvm-rs-cc) Option tables with tblgen"
 	$(call transform-host-td-to-out,opt-parser-defs)
 
+include frameworks/compile/slang/RSSpec.mk
 include $(CLANG_HOST_BUILD_MK)
 include $(CLANG_TBLGEN_RULES_MK)
 include $(BUILD_HOST_EXECUTABLE)