1932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# 2db169187dea4602e4ad32058762d23d474753fd0Stephen Hines# Copyright (C) 2010-2012 The Android Open Source Project 3932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# 4932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# Licensed under the Apache License, Version 2.0 (the "License"); 5932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# you may not use this file except in compliance with the License. 6932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# You may obtain a copy of the License at 7932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# 8932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# http://www.apache.org/licenses/LICENSE-2.0 9932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# 10932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# Unless required by applicable law or agreed to in writing, software 11932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# distributed under the License is distributed on an "AS IS" BASIS, 12932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# See the License for the specific language governing permissions and 14932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# limitations under the License. 15932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang# 16932648d528f333d43defdf16b3f8e84afa865cc8Zonr Chang 1777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoLOCAL_PATH := $(call my-dir) 18ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr ChangLIBBCC_ROOT_PATH := $(LOCAL_PATH) 19ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Changinclude $(LIBBCC_ROOT_PATH)/libbcc.mk 20cd61af3513b64e6eb0cbfbb4e0182f898bae91edShih-wei Liao 21e109434cfd2bc24d324506238483c1ecd587e228Stephen Hinesinclude frameworks/compile/slang/rs_version.mk 22e109434cfd2bc24d324506238483c1ecd587e228Stephen Hines 23743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 24743968520a8a6c1e23212d4ed155d053891f630aLogan Chien# Whole Static Library to Be Linked In 25743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 26358490082d8435aa36feaff8107aa55c3cf363adLogan 27743968520a8a6c1e23212d4ed155d053891f630aLogan Chienlibbcc_WHOLE_STATIC_LIBRARIES += \ 28e198abec6c5e3eab380ccf6897b0a0b9c2dd92ddStephen Hines libbccRenderscript \ 29743968520a8a6c1e23212d4ed155d053891f630aLogan Chien libbccExecutionEngine \ 30c72c4ddfcd79c74f70713da91a69569451b5c19eZonr Chang libbccCore \ 31c72c4ddfcd79c74f70713da91a69569451b5c19eZonr Chang libbccSupport 32743968520a8a6c1e23212d4ed155d053891f630aLogan Chien 33743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 34743968520a8a6c1e23212d4ed155d053891f630aLogan Chien# Device Shared Library libbcc 35743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 36c6e6ee4392390c0888f808220adf33334e1f64a4Tim Murrayifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS)) 3771df05005d8cbc15b4c288ff643be243af0c7b88Colin Crossifeq ($(TARGET_ARCH),mips64) 3871df05005d8cbc15b4c288ff643be243af0c7b88Colin Cross$(info TODOMips64: $(LOCAL_PATH)/Android.mk Enable libbcc build) 3971df05005d8cbc15b4c288ff643be243af0c7b88Colin Crossendif 402ca6e576421e86e0128991b825c238f1d4221910Joseph Wen 4177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liaoinclude $(CLEAR_VARS) 4297bd44dd749c26b03333cb769d6f7c41d1a1bbfeIliyan Malchev 4377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoLOCAL_MODULE := libbcc 44932648d528f333d43defdf16b3f8e84afa865cc8Zonr ChangLOCAL_MODULE_TAGS := optional 455de1adfe315bbb088f7614936b1023c6d6d3fc35Joseph WenLOCAL_MODULE_CLASS := SHARED_LIBRARIES 4661cb230180231bbcff0166ebc90ca8e16aba05dcLogan 4721392f0642029bb5c41e3255ae7a302a337ecd6bLogan ChienLOCAL_WHOLE_STATIC_LIBRARIES := $(libbcc_WHOLE_STATIC_LIBRARIES) 4821392f0642029bb5c41e3255ae7a302a337ecd6bLogan Chien 49590a249d2a5fad67f4c386f4a4ca16ef633fe9eaShih-wei LiaoLOCAL_WHOLE_STATIC_LIBRARIES += librsloader 5041cb761b5b36126fa4cc7f1f97e46dce6617fc81Logan Chien 51c2074caf075818abb6d3689ad924ca09f4a5ba1fTim MurrayLOCAL_SHARED_LIBRARIES := libbcinfo libLLVM libdl libutils libcutils liblog libc++ 5277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 5321392f0642029bb5c41e3255ae7a302a337ecd6bLogan Chien# Modules that need get installed if and only if the target libbcc.so is 5421392f0642029bb5c41e3255ae7a302a337ecd6bLogan Chien# installed. 55c5e607adff80a66bc5420baffd299862abdf368dJean-Luc BrouilletLOCAL_REQUIRED_MODULES := libclcore.bc libclcore_debug.bc libcompiler_rt 563ae8c2a783ead3f233d6b290019cad37bfe6bbf5Ying Wang 5771df05005d8cbc15b4c288ff643be243af0c7b88Colin CrossLOCAL_REQUIRED_MODULES_x86 += libclcore_x86.bc 5871df05005d8cbc15b4c288ff643be243af0c7b88Colin CrossLOCAL_REQUIRED_MODULES_x86_64 += libclcore_x86.bc 59cdcce323a2acddb4234e6906c691e20bb3d714f9Michael Liao 6043b3727e5c4f6bcd03ea4fdfbae1c205ace798a6Stephen Hinesifeq ($(ARCH_ARM_HAVE_NEON),true) 6171df05005d8cbc15b4c288ff643be243af0c7b88Colin Cross LOCAL_REQUIRED_MODULES_arm += libclcore_neon.bc 6243b3727e5c4f6bcd03ea4fdfbae1c205ace798a6Stephen Hinesendif 6343b3727e5c4f6bcd03ea4fdfbae1c205ace798a6Stephen Hines 64ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Changinclude $(LIBBCC_DEVICE_BUILD_MK) 65f21590eae009b4f596d7e448d0b8e142c46fc382Stephen Hinesinclude $(LLVM_DEVICE_BUILD_MK) 6677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liaoinclude $(BUILD_SHARED_LIBRARY) 67c6e6ee4392390c0888f808220adf33334e1f64a4Tim Murrayendif 6877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 69743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 70743968520a8a6c1e23212d4ed155d053891f630aLogan Chien# Host Shared Library libbcc 71743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 7221392f0642029bb5c41e3255ae7a302a337ecd6bLogan Chien 738d01bd8b61482f83539a7dbcec38df9a2e5a6c56Ying Wang# Don't build for unbundled branches 748d01bd8b61482f83539a7dbcec38df9a2e5a6c56Ying Wangifeq (,$(TARGET_BUILD_APPS)) 758d01bd8b61482f83539a7dbcec38df9a2e5a6c56Ying Wang 7677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liaoinclude $(CLEAR_VARS) 7777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 7877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoLOCAL_MODULE := libbcc 79932648d528f333d43defdf16b3f8e84afa865cc8Zonr ChangLOCAL_MODULE_TAGS := optional 805de1adfe315bbb088f7614936b1023c6d6d3fc35Joseph WenLOCAL_MODULE_CLASS := SHARED_LIBRARIES 815de1adfe315bbb088f7614936b1023c6d6d3fc35Joseph WenLOCAL_IS_HOST_MODULE := true 82743968520a8a6c1e23212d4ed155d053891f630aLogan Chien 83be115357011f1ddbaaa8069d5099878fed8f6d30Logan Chienifneq ($(HOST_OS),windows) 84c2074caf075818abb6d3689ad924ca09f4a5ba1fTim MurrayLOCAL_CLANG := true 85be115357011f1ddbaaa8069d5099878fed8f6d30Logan Chienendif 86c2074caf075818abb6d3689ad924ca09f4a5ba1fTim Murray 87743968520a8a6c1e23212d4ed155d053891f630aLogan ChienLOCAL_WHOLE_STATIC_LIBRARIES += $(libbcc_WHOLE_STATIC_LIBRARIES) 8861cb230180231bbcff0166ebc90ca8e16aba05dcLogan 89590a249d2a5fad67f4c386f4a4ca16ef633fe9eaShih-wei LiaoLOCAL_WHOLE_STATIC_LIBRARIES += librsloader 9077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 9121392f0642029bb5c41e3255ae7a302a337ecd6bLogan ChienLOCAL_STATIC_LIBRARIES += \ 92c989dcec0385c20a9174a8ed536e0d304c29a2e2Zonr Chang libutils \ 932edf6d63b4a99faab9644e42f28e85f23a98913bYing Wang libcutils \ 942edf6d63b4a99faab9644e42f28e85f23a98913bYing Wang liblog 9521392f0642029bb5c41e3255ae7a302a337ecd6bLogan Chien 96ba8d7ceb2f0f920ae82afc2c91db625534482e15Stephen HinesLOCAL_SHARED_LIBRARIES := libbcinfo libLLVM 97569986da116ed602c752395f9563260db38f6945Stephen Hines 9848cd745480738c026312931877ecb8ebecb1c64eStephen Hinesifndef USE_MINGW 9977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei LiaoLOCAL_LDLIBS := -ldl -lpthread 10048cd745480738c026312931877ecb8ebecb1c64eStephen Hinesendif 10177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 102ddf5661793de8fb4e16906b7f7822972fcb13c6dZonr Changinclude $(LIBBCC_HOST_BUILD_MK) 103f21590eae009b4f596d7e448d0b8e142c46fc382Stephen Hinesinclude $(LLVM_HOST_BUILD_MK) 10477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liaoinclude $(BUILD_HOST_SHARED_LIBRARY) 10577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 1066297382734716a572100f5a395b3df1b2b98908dTim Murrayendif # Don't build in unbundled branches 107743968520a8a6c1e23212d4ed155d053891f630aLogan Chien 108743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 109743968520a8a6c1e23212d4ed155d053891f630aLogan Chien# Include Subdirectories 110743968520a8a6c1e23212d4ed155d053891f630aLogan Chien#===================================================================== 11177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liaoinclude $(call all-makefiles-under,$(LOCAL_PATH)) 112