Android.mk revision 1d4637b3d94732a4eaa83b129054ee9245bed24e
19b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# Copyright (C) 2010 The Android Open Source Project 29b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# 39b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# Licensed under the Apache License, Version 2.0 (the "License"); 49b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# you may not use this file except in compliance with the License. 59b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# You may obtain a copy of the License at 69b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# 79b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# http://www.apache.org/licenses/LICENSE-2.0 89b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# 99b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# Unless required by applicable law or agreed to in writing, software 109b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# distributed under the License is distributed on an "AS IS" BASIS, 119b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 129b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# See the License for the specific language governing permissions and 139b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# limitations under the License. 149b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 159b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_PATH := $(call my-dir) 169b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 179b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# build baksmali jar 189b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# ============================================================ 199b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 209b6ec9471cebdbd68639492825956b96f807e382Ben Gruverinclude $(CLEAR_VARS) 219b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 22f3d921d1f8eb52f20440a0e43f604a7aae972e94Ben GruverLOCAL_MODULE := baksmalilib 239b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 249b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_MODULE_TAGS := optional 259b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 269b6ec9471cebdbd68639492825956b96f807e382Ben Gruver#LOCAL_MODULE_CLASS and LOCAL_IS_HOST_MODULE must be defined before calling $(local-intermediates-dir) 279b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_MODULE_CLASS := JAVA_LIBRARIES 289b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_IS_HOST_MODULE := true 299b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 309b6ec9471cebdbd68639492825956b96f807e382Ben Gruverintermediates := $(call local-intermediates-dir,COMMON) 319b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 329b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_SRC_FILES := \ 339b6ec9471cebdbd68639492825956b96f807e382Ben Gruver $(call all-java-files-under, src/main/java) \ 341d4637b3d94732a4eaa83b129054ee9245bed24eBen Gruver $(call all-java-files-under, ../dexlib2/src/main/java) \ 359b6ec9471cebdbd68639492825956b96f807e382Ben Gruver $(call all-java-files-under, ../util/src/main/java) 369b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 379b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_JAR_MANIFEST := manifest.txt 389b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 399b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_STATIC_JAVA_LIBRARIES := \ 409b6ec9471cebdbd68639492825956b96f807e382Ben Gruver antlr-runtime \ 41f3d921d1f8eb52f20440a0e43f604a7aae972e94Ben Gruver commons-cli-1.2 \ 42f3d921d1f8eb52f20440a0e43f604a7aae972e94Ben Gruver guavalib 439b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 44f3d921d1f8eb52f20440a0e43f604a7aae972e94Ben Gruver#read in the version number 451d4637b3d94732a4eaa83b129054ee9245bed24eBen GruverBAKSMALI_VERSION := $(shell cat $(LOCAL_PATH)/../build.gradle | \ 461d4637b3d94732a4eaa83b129054ee9245bed24eBen Gruver grep -o -e "^version = '\(.*\)'" | grep -o -e "[0-9.]\+") 471d4637b3d94732a4eaa83b129054ee9245bed24eBen Gruver 481d4637b3d94732a4eaa83b129054ee9245bed24eBen GruverBAKSMALI_VERSION := $(BAKSMALI_VERSION)-aosp 499b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 509b6ec9471cebdbd68639492825956b96f807e382Ben Gruver#create a new baksmali.properties file using the correct version 519b6ec9471cebdbd68639492825956b96f807e382Ben Gruver$(intermediates)/resources/baksmali.properties: 529b6ec9471cebdbd68639492825956b96f807e382Ben Gruver $(hide) mkdir -p $(dir $@) 539b6ec9471cebdbd68639492825956b96f807e382Ben Gruver $(hide) echo "application.version=$(BAKSMALI_VERSION)" > $@ 549b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 559b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_JAVA_RESOURCE_FILES := $(intermediates)/resources/baksmali.properties 569b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 579b6ec9471cebdbd68639492825956b96f807e382Ben Gruverinclude $(BUILD_HOST_JAVA_LIBRARY) 589b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 599b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 609b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 619b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# copy baksmali script 629b6ec9471cebdbd68639492825956b96f807e382Ben Gruver# ============================================================ 639b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 649b6ec9471cebdbd68639492825956b96f807e382Ben Gruverinclude $(CLEAR_VARS) 659b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_IS_HOST_MODULE := true 669b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_MODULE_CLASS := EXECUTABLES 679b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_MODULE_TAGS := optional 689b6ec9471cebdbd68639492825956b96f807e382Ben GruverLOCAL_MODULE := baksmali 699b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 709b6ec9471cebdbd68639492825956b96f807e382Ben Gruverinclude $(BUILD_SYSTEM)/base_rules.mk 719b6ec9471cebdbd68639492825956b96f807e382Ben Gruver 72f3d921d1f8eb52f20440a0e43f604a7aae972e94Ben Gruver$(LOCAL_BUILT_MODULE): $(HOST_OUT_JAVA_LIBRARIES)/baksmalilib.jar 739b6ec9471cebdbd68639492825956b96f807e382Ben Gruver$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/../scripts/baksmali | $(ACP) 749b6ec9471cebdbd68639492825956b96f807e382Ben Gruver @echo "Copy: $(PRIVATE_MODULE) ($@)" 759b6ec9471cebdbd68639492825956b96f807e382Ben Gruver $(copy-file-to-new-target) 769b6ec9471cebdbd68639492825956b96f807e382Ben Gruver $(hide) chmod 755 $@