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)