1、system/app
include $(BUILD_*) | LOCAL_* |
include $(BUILD_PACKAGE) #or# LOCAL_MODULE_CLASS := APPS include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE not set LOCAL_MODULE_TAGS to tests |
首先明確一點
include $(CLEAR_VARS)
include $(BUILD_PACKAGE)
組合用於編譯帶源碼src文件夾
include $(CLEAR_VARS)
LOCAL_MODULE_CLASS := APPS
include $(BUILD_PREBUILT)
組合用於編譯帶apk文件
不指定路徑時,默認輸出到 system/app 目錄
frameworks\base\packages\EasterEgg\Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_STATIC_JAVA_LIBRARIES := \
android-support-v4 \
android-support-v13 \
android-support-dynamic-animation \
android-support-v7-recyclerview \
android-support-v7-preference \
android-support-v7-appcompat \
android-support-v14-preference \
jsr305
LOCAL_SRC_FILES := $(call all-java-files-under, src)
LOCAL_PACKAGE_NAME := EasterEgg
LOCAL_CERTIFICATE := platform
include $(BUILD_PACKAGE)
include $(call all-makefiles-under,$(LOCAL_PATH))
2、system/bin
include $(BUILD_*) | LOCAL_* |
include $(BUILD_EXECUTABLE) #or# LOCAL_MODULE_CLASS :=EXECUTABLES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE |
3、system/etc
include $(BUILD_*) | LOCAL_* |
LOCAL_MODULE_CLASS := ETC include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE |
4、system/etc/xxxx
include $(BUILD_*) | LOCAL_* |
LOCAL_MODULE_CLASS := ETC include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE LOCAL_MODULE_RELATIVE_PATH := xxxx |
5、system/framework
include $(BUILD_*) | LOCAL_* |
include $(BUILD_JAVA_LIBRARY) #or# LOCAL_MODULE_CLASS := JAVA_LIBRARIES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE |
6、system/lib
include $(BUILD_*) | LOCAL_* |
include $(BUILD_SHARED_LIBRARY) #or# LOCAL_MODULE_CLASS :=SHARED_LIBRARIES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE |
7、system/lib/xxxx
include $(BUILD_*) | LOCAL_* |
include $(BUILD_SHARED_LIBRARY) #or# LOCAL_MODULE_CLASS :=SHARED_LIBRARIES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE LOCAL_MODULE_RELATIVE_PATH := xxxx |
8、system/priv-app
include $(BUILD_*) | LOCAL_* |
include $(BUILD_PACKAGE) #or# LOCAL_MODULE_CLASS := APPS include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_MODULE_TAGS to tests LOCAL_PRIVILEGED_MODULE := true |
9、system/xbin
include $(BUILD_*) | LOCAL_* |
include $(BUILD_EXECUTABLE) #or# LOCAL_MODULE_CLASS :=EXECUTABLES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES) |
10、system/yyyy
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE LOCAL_MODULE_PATH := $(TARGET_OUT)/yyyy |
11、vendor/app
include $(BUILD_*) | LOCAL_* |
include $(BUILD_PACKAGE) #or# LOCAL_MODULE_CLASS := APPS include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk |
12、vendor/bin
include $(BUILD_*) | LOCAL_* |
include $(BUILD_EXECUTABLE) #or# LOCAL_MODULE_CLASS :=EXECUTABLES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk |
13、vendor/etc
include $(BUILD_*) | LOCAL_* |
LOCAL_MODULE_CLASS := ETC include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk |
14、vendor/etc/xxxx
include $(BUILD_*) | LOCAL_* |
LOCAL_MODULE_CLASS := ETC include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk LOCAL_MODULE_RELATIVE_PATH := xxxx |
15、vendor/framework
include $(BUILD_*) | LOCAL_* |
include $(BUILD_JAVA_LIBRARY) #or# LOCAL_MODULE_CLASS := JAVA_LIBRARIES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk |
16、vendor/lib
include $(BUILD_*) | LOCAL_* |
include $(BUILD_SHARED_LIBRARY) #or# LOCAL_MODULE_CLASS :=SHARED_LIBRARIES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk |
17、vendor/lib/xxxx
include $(BUILD_*) | LOCAL_* |
include $(BUILD_SHARED_LIBRARY) #or# LOCAL_MODULE_CLASS := SHARED_LIBRARIES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk LOCAL_MODULE_RELATIVE_PATH := xxxx |
18、vendor/priv-app
include $(BUILD_*) | LOCAL_* |
include $(BUILD_PACKAGE) #or# LOCAL_MODULE_CLASS := APPS include $(BUILD_PREBUILT) |
(only for O. not support N and before) not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk LOCAL_PRIVILEGED_MODULE := true |
19、vendor/xbin
include $(BUILD_*) | LOCAL_* |
include $(BUILD_EXECUTABLE) #or# LOCAL_MODULE_CLASS := EXECUTABLES include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_OPTIONAL_EXECUTABLES) |
20、vendor/yyyy
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_OWNER := mtk LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/yyyy |
21、data
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_PATH := $(TARGET_OUT_DATA) |
22、data/app
include $(BUILD_*) | LOCAL_* |
include $(BUILD_PACKAGE) #or# LOCAL_MODULE_CLASS := APPS include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_TAGS := tests |
23、data/xxxx
include $(BUILD_*) | LOCAL_* |
not set LOCAL_PRIVILEGED_MODULE not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)/xxxx |
24、root
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT) |
25、root/bin
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_BIN) |
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_PATH := $((TARGET_ROOT_OUT_SBIN) |
27、root/etc
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_ETC) |
28、root/usr
include $(BUILD_*) | LOCAL_* |
not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PRIVILEGED_MODULE not set LOCAL_PROPRIETARY_MODULE LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_USR) |
29、odm/app
include $(BUILD_*) | LOCAL_* |
include $(BUILD_PACKAGE) #or# LOCAL_MODULE_CLASS := APPS include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE LOCAL_ODM_MODULE := true |
30、oem/app
include $(BUILD_*) | LOCAL_* |
include $(BUILD_PACKAGE) #or# LOCAL_MODULE_CLASS := APPS include $(BUILD_PREBUILT) |
not set LOCAL_MODULE_PATH not set LOCAL_MODULE_RELATIVE_PATH not set LOCAL_PROPRIETARY_MODULE not set LOCAL_PRIVILEGED_MODULE LOCAL_OEM_MODULE := true |