1# 2# Copyright (C) 2008 The Android Open Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16LOCAL_PATH := $(call my-dir) 17 18$(eval $(call declare-1p-copy-files,frameworks/base,.ogg)) 19$(eval $(call declare-1p-copy-files,frameworks/base,.kl)) 20$(eval $(call declare-1p-copy-files,frameworks/base,.kcm)) 21$(eval $(call declare-1p-copy-files,frameworks/base,.idc)) 22$(eval $(call declare-1p-copy-files,frameworks/base,dirty-image-objects)) 23$(eval $(call declare-1p-copy-files,frameworks/base/config,)) 24$(eval $(call declare-1p-copy-files,frameworks/native/data,)) 25 26# Load framework-specific path mappings used later in the build. 27include $(LOCAL_PATH)/pathmap.mk 28 29# Build the master framework library. 30# The framework contains too many method references (>64K) for poor old DEX. 31# So we first build the framework as a monolithic static library then split it 32# up into smaller pieces. 33# ============================================================ 34 35# embedded builds use nothing in frameworks/base 36ifneq ($(ANDROID_BUILD_EMBEDDED),true) 37 38# Copy AIDL files to be preprocessed and included in the SDK, 39# specified relative to the root of the build tree. 40# ============================================================ 41include $(CLEAR_VARS) 42 43# sdk.atree needs to copy the whole dir: $(OUT_DOCS)/offline-sdk to the final zip. 44# So keep offline-sdk-timestamp target here, and unzip offline-sdk-docs.zip to 45# $(OUT_DOCS)/offline-sdk. 46$(OUT_DOCS)/offline-sdk-timestamp: $(OUT_DOCS)/offline-sdk-docs-docs.zip 47 $(hide) rm -rf $(OUT_DOCS)/offline-sdk 48 $(hide) mkdir -p $(OUT_DOCS)/offline-sdk 49 ( unzip -qo $< -d $(OUT_DOCS)/offline-sdk && touch -f $@ ) || exit 1 50 51.PHONY: docs offline-sdk-docs 52docs offline-sdk-docs: $(OUT_DOCS)/offline-sdk-timestamp 53 54SDK_METADATA_DIR :=$= $(call intermediates-dir-for,PACKAGING,framework-doc-stubs-metadata,,COMMON) 55SDK_METADATA_FILES :=$= $(addprefix $(SDK_METADATA_DIR)/,\ 56 activity_actions.txt \ 57 broadcast_actions.txt \ 58 categories.txt \ 59 features.txt \ 60 service_actions.txt \ 61 widgets.txt) 62SDK_METADATA :=$= $(firstword $(SDK_METADATA_FILES)) 63$(SDK_METADATA): .KATI_IMPLICIT_OUTPUTS := $(filter-out $(SDK_METADATA),$(SDK_METADATA_FILES)) 64$(SDK_METADATA): $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/framework-doc-stubs-metadata.zip 65 rm -rf $(SDK_METADATA_DIR) 66 mkdir -p $(SDK_METADATA_DIR) 67 unzip -DDqo $< -d $(SDK_METADATA_DIR) 68 69.PHONY: framework-doc-stubs 70framework-doc-stubs: $(SDK_METADATA) 71 72# Run this for checkbuild 73checkbuild: doc-comment-check-docs 74 75# Include subdirectory makefiles 76# ============================================================ 77 78# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework 79# team really wants is to build the stuff defined by this makefile. 80ifeq (,$(ONE_SHOT_MAKEFILE)) 81include $(call first-makefiles-under,$(LOCAL_PATH)) 82endif 83 84endif # ANDROID_BUILD_EMBEDDED 85