LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE:= test
LOCAL_SRC_FILES:= test.c
include $(BULID_EXECUTABLE)
# 模块生成目录
LOCAL_MODULE_PATH := /lib/out
# 当前路径下所有c文件
LOCAL_ALL_FILES := $(call all-c-files-under)
LOCAL_SRC_FILES := $(LOCAL_ALL_FILES)
# 当前路径下所有java文件
LOCAL_SRC_FILES := $(call all-subdir-java-files)
# src路径下所有java文件
LOCAL_SRC_FILES := $(call all-java-files-under, src)
#
LOCAL_SDK_VERSION := current
# 引入静态jar包
LOCAL_STATIC_JAVA_LIBRARIES := my-static-lib
# 引入动态jar包
LOCAL_JAVA_LIBRARIES := my-share-lib
# 包含所有makefile
include $(call all-makefiles-under, $(LOCAL_PATH))
# 头文件路径
LOCAL_C_INCLUDES += /lib/include
# 定义输出文件
include $(BUILD_SHARED_LIBRARY) # 动态库
include $(BUILD_STATIC_LIBRARY) # 静态库
include $(BULID_EXECUTABLE) # 可执行文件
include $(BUILD_PACKAGE) # apk
include $(BUILD_STATIC_JAVA_LIBRARY) # 静态jar包
include $(BUILD_JAVA_LIBRARY) # 动态jar包
# java模块
LOCAL_MODULE:=com.test.myjar
# apk名字
LOCAL_PACKAGE_NAME := pkgName
# 引入系统库
LOCAL_SHARED_LIBRARIES += liblog
# 引入第三方库
LOCAL_LDFLAGS := -L ./lib/src -ltest #引入lib/src下的libtest.so
LOCAL_LDFLAGS := $(LOCAL_PATH)/bin/libtest.a
# 编译标签
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TAGS := debug
LOCAL_MODULE_TAGS := eng
预编译jar包
# 功能:引用静态jar包,编译为动态jar包
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_CLASS:= JAVA_LIBRARIES # JAVA_LIBRARIES生成共享jar包
LOCAL_MODULE := com.test.share # 指定jar包名
LOCAL_SRC_FILES:= com.test.static # com.test.static 已经存在的静态jar包
include $(BUILD_PREBUILT)
# tips:
LOCAL_MODULE_CLASS:= JAVA_LIBRARIES # JAVA_LIBRARIES生成共享jar包 dex归档
LOCAL_MODULE_CLASS:= APPS # APK文件
LOCAL_MODULE_CLASS:= SHARED_LIBRARIES # 动态库文件.so
LOCAL_MODULE_CLASS:= EXECUTABLES # 二进制文件
LOCAL_MODULE_CLASS:= ETC # 其他格式文件
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := new_static.jar:proto_static.jar
include $(BUILD_MULTI_PREBUILT)
判断语句
ifeq($(VALUE), x) # ifneq
else
endif