Android.mk revision 6791df284557f4173a9715b3634f4f4901a6bb8a
1LOCAL_PATH := $(call my-dir) 2 3# Shared library libslang for host 4# ======================================================== 5include $(CLEAR_VARS) 6include $(CLEAR_TBLGEN_VARS) 7 8LLVM_ROOT_PATH := external/llvm 9CLANG_ROOT_PATH := external/clang 10 11include $(CLANG_ROOT_PATH)/clang.mk 12 13LOCAL_MODULE := libslang 14LOCAL_MODULE_TAGS := optional 15 16LOCAL_MODULE_CLASS := SHARED_LIBRARIES 17 18LOCAL_CFLAGS += -Wno-sign-promo 19 20TBLGEN_TABLES := \ 21 AttrList.inc \ 22 Attrs.inc \ 23 DeclNodes.inc \ 24 DiagnosticCommonKinds.inc \ 25 DiagnosticFrontendKinds.inc \ 26 DiagnosticSemaKinds.inc \ 27 StmtNodes.inc 28 29LOCAL_SRC_FILES := \ 30 slang.cpp \ 31 slang_utils.cpp \ 32 slang_backend.cpp \ 33 slang_pragma_recorder.cpp \ 34 slang_diagnostic_buffer.cpp 35 36LOCAL_STATIC_LIBRARIES := \ 37 libLLVMLinker \ 38 libLLVMipo \ 39 libLLVMBitWriter \ 40 libLLVMBitReader \ 41 libLLVMARMAsmPrinter \ 42 libLLVMX86AsmPrinter \ 43 libLLVMAsmPrinter \ 44 libLLVMMCParser \ 45 libLLVMARMCodeGen \ 46 libLLVMARMInfo \ 47 libLLVMX86CodeGen \ 48 libLLVMX86Info \ 49 libLLVMSelectionDAG \ 50 libLLVMCodeGen \ 51 libLLVMScalarOpts \ 52 libLLVMInstCombine \ 53 libLLVMTransformUtils \ 54 libLLVMInstrumentation \ 55 libLLVMipa \ 56 libLLVMAnalysis \ 57 libLLVMTarget \ 58 libLLVMMC \ 59 libLLVMCore \ 60 libclangParse \ 61 libclangSema \ 62 libclangAnalysis \ 63 libclangAST \ 64 libclangLex \ 65 libclangFrontend \ 66 libclangCodeGen \ 67 libclangBasic \ 68 libLLVMSupport \ 69 libLLVMSystem 70 71LOCAL_LDLIBS := -ldl -lpthread 72 73include $(CLANG_HOST_BUILD_MK) 74include $(CLANG_TBLGEN_RULES_MK) 75include $(LLVM_GEN_INTRINSICS_MK) 76include $(BUILD_HOST_SHARED_LIBRARY) 77 78# Executable llvm-rs-link for host 79# ======================================================== 80include $(CLEAR_VARS) 81include $(CLEAR_TBLGEN_VARS) 82 83include $(LLVM_ROOT_PATH)/llvm.mk 84 85LOCAL_MODULE := llvm-rs-link 86 87LOCAL_MODULE_CLASS := EXECUTABLES 88 89LOCAL_SRC_FILES := \ 90 llvm-rs-link.cpp 91 92LOCAL_SHARED_LIBRARIES := \ 93 libslang 94 95LOCAL_LDLIBS := -ldl -lpthread 96 97include $(LLVM_HOST_BUILD_MK) 98include $(LLVM_GEN_INTRINSICS_MK) 99include $(BUILD_HOST_EXECUTABLE) 100 101# Host static library containing rs_types.rsh 102# ======================================================== 103include $(CLEAR_VARS) 104 105input_data_file := frameworks/base/libs/rs/scriptc/rs_types.rsh 106slangdata_output_var_name := rs_types_header 107 108LOCAL_IS_HOST_MODULE := true 109LOCAL_MODULE := librsheader-types 110LOCAL_MODULE_TAGS := optional 111 112include $(LOCAL_PATH)/SlangData.mk 113include $(BUILD_HOST_STATIC_LIBRARY) 114 115# Host static library containing rs_cl.rsh 116# ======================================================== 117include $(CLEAR_VARS) 118 119input_data_file := frameworks/base/libs/rs/scriptc/rs_cl.rsh 120slangdata_output_var_name := rs_cl_header 121 122LOCAL_IS_HOST_MODULE := true 123LOCAL_MODULE := librsheader-cl 124LOCAL_MODULE_TAGS := optional 125 126include $(LOCAL_PATH)/SlangData.mk 127include $(BUILD_HOST_STATIC_LIBRARY) 128 129# Host static library containing rs_cores.rsh 130# ======================================================== 131include $(CLEAR_VARS) 132 133input_data_file := frameworks/base/libs/rs/scriptc/rs_core.rsh 134slangdata_output_var_name := rs_core_header 135 136LOCAL_IS_HOST_MODULE := true 137LOCAL_MODULE := librsheader-core 138LOCAL_MODULE_TAGS := optional 139 140include $(LOCAL_PATH)/SlangData.mk 141include $(BUILD_HOST_STATIC_LIBRARY) 142 143# Host static library containing rs_math.rsh 144# ======================================================== 145include $(CLEAR_VARS) 146 147input_data_file := frameworks/base/libs/rs/scriptc/rs_math.rsh 148slangdata_output_var_name := rs_math_header 149 150LOCAL_IS_HOST_MODULE := true 151LOCAL_MODULE := librsheader-math 152LOCAL_MODULE_TAGS := optional 153 154include $(LOCAL_PATH)/SlangData.mk 155include $(BUILD_HOST_STATIC_LIBRARY) 156 157# Executable slang for host 158# ======================================================== 159include $(CLEAR_VARS) 160include $(CLEAR_TBLGEN_VARS) 161 162LOCAL_IS_HOST_MODULE := true 163LOCAL_MODULE := llvm-rs-cc 164LOCAL_MODULE_TAGS := optional 165 166LOCAL_MODULE_CLASS := EXECUTABLES 167 168LOCAL_CFLAGS += -Wno-sign-promo 169 170TBLGEN_TABLES := \ 171 AttrList.inc \ 172 Attrs.inc \ 173 DeclNodes.inc \ 174 DiagnosticCommonKinds.inc \ 175 DiagnosticDriverKinds.inc \ 176 DiagnosticSemaKinds.inc \ 177 StmtNodes.inc \ 178 RSCCOptions.inc 179 180LOCAL_SRC_FILES := \ 181 llvm-rs-cc.cpp \ 182 slang_rs.cpp \ 183 slang_rs_context.cpp \ 184 slang_rs_pragma_handler.cpp \ 185 slang_rs_backend.cpp \ 186 slang_rs_export_type.cpp \ 187 slang_rs_export_element.cpp \ 188 slang_rs_export_var.cpp \ 189 slang_rs_export_func.cpp \ 190 slang_rs_reflection.cpp \ 191 slang_rs_reflect_utils.cpp 192 193LOCAL_SHARED_LIBRARIES := \ 194 libslang 195 196LOCAL_STATIC_LIBRARIES := \ 197 libclangDriver \ 198 librsheader-types \ 199 librsheader-cl \ 200 librsheader-core \ 201 librsheader-math 202 203LOCAL_REQUIRED_MODULES := llvm-rs-link 204 205# For build RSCCOptions.inc from RSCCOptions.td 206intermediates := $(call local-intermediates-dir) 207LOCAL_GENERATED_SOURCES += $(intermediates)/RSCCOptions.inc 208$(intermediates)/RSCCOptions.inc: $(LOCAL_PATH)/RSCCOptions.td $(CLANG_ROOT_PATH)/include/clang/Driver/OptParser.td $(TBLGEN) 209 @echo "Building RenderScript compiler (llvm-rs-cc) Option tables with tblgen" 210 $(call transform-host-td-to-out,opt-parser-defs) 211 212include $(CLANG_HOST_BUILD_MK) 213include $(CLANG_TBLGEN_RULES_MK) 214include $(BUILD_HOST_EXECUTABLE) 215