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# Load framework-specific path mappings used later in the build. 19include $(LOCAL_PATH)/pathmap.mk 20 21# Build the master framework library. 22# The framework contains too many method references (>64K) for poor old DEX. 23# So we first build the framework as a monolithic static library then split it 24# up into smaller pieces. 25# ============================================================ 26 27# embedded builds use nothing in frameworks/base 28ifneq ($(ANDROID_BUILD_EMBEDDED),true) 29 30# Copy AIDL files to be preprocessed and included in the SDK, 31# specified relative to the root of the build tree. 32# ============================================================ 33include $(CLEAR_VARS) 34 35# This is used by ide.mk as the list of source files that are 36# always included. 37INTERNAL_SDK_SOURCE_DIRS := $(addprefix $(LOCAL_PATH)/,$(dirs_to_document)) 38 39# sdk.atree needs to copy the whole dir: $(OUT_DOCS)/offline-sdk to the final zip. 40# So keep offline-sdk-timestamp target here, and unzip offline-sdk-docs.zip to 41# $(OUT_DOCS)/offline-sdk. 42$(OUT_DOCS)/offline-sdk-timestamp: $(OUT_DOCS)/offline-sdk-docs-docs.zip 43 $(hide) rm -rf $(OUT_DOCS)/offline-sdk 44 $(hide) mkdir -p $(OUT_DOCS)/offline-sdk 45 ( unzip -qo $< -d $(OUT_DOCS)/offline-sdk && touch -f $@ ) || exit 1 46 47.PHONY: docs offline-sdk-docs 48docs offline-sdk-docs: $(OUT_DOCS)/offline-sdk-timestamp 49 50SDK_METADATA_DIR :=$= $(call intermediates-dir-for,PACKAGING,framework-doc-stubs-metadata,,COMMON) 51SDK_METADATA_FILES :=$= $(addprefix $(SDK_METADATA_DIR)/,\ 52 activity_actions.txt \ 53 broadcast_actions.txt \ 54 categories.txt \ 55 features.txt \ 56 service_actions.txt \ 57 widgets.txt) 58SDK_METADATA :=$= $(firstword $(SDK_METADATA_FILES)) 59$(SDK_METADATA): .KATI_IMPLICIT_OUTPUTS := $(filter-out $(SDK_METADATA),$(SDK_METADATA_FILES)) 60$(SDK_METADATA): $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/framework-doc-stubs-metadata.zip 61 rm -rf $(SDK_METADATA_DIR) 62 mkdir -p $(SDK_METADATA_DIR) 63 unzip -qo $< -d $(SDK_METADATA_DIR) 64 65.PHONY: framework-doc-stubs 66framework-doc-stubs: $(SDK_METADATA) 67 68# Run this for checkbuild 69checkbuild: doc-comment-check-docs 70 71# Include subdirectory makefiles 72# ============================================================ 73 74# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework 75# team really wants is to build the stuff defined by this makefile. 76ifeq (,$(ONE_SHOT_MAKEFILE)) 77include $(call first-makefiles-under,$(LOCAL_PATH)) 78endif 79 80endif # ANDROID_BUILD_EMBEDDED 81