整理常见Android.mk写法

来源:互联网 发布:淘宝网dotacoko 编辑:程序博客网 时间:2024/04/28 17:51
常用第三方库,加入android系统的Android.mk写法


1 直接导入第三方ko


include $(CLEAR_VARS)
LOCAL_MODULE := jpge.ko
LOCAL_MODULE_TAGS := eng
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/modules
LOCAL_SRC_FILES := msp/graphics/jpge/driver/driver/jpge.ko
include $(BUILD_PREBUILT)


2 直接导入第三方静态库,并且被其它编译依赖
include $(CLEAR_VARS)
LOCAL_PRELINK_MODULE := false
LOCAL_MODULE := test
LOCAL_SRC_FILES := test.a
LOCAL_MODULE_TAGS := eng
include $(BUILD_STATIC_LIBRARY)


3 直接导入第三方动态库,并且被其它编译依赖
include $(CLEAR_VARS)
LOCAL_PRELINK_MODULE := false
LOCAL_MODULE := test
LOCAL_SRC_FILES := test.so
LOCAL_MODULE_TAGS := eng
include $(BUILD_SHARED_LIBRARY)


4 直接导入脚本到out下面system/etc/目录


include $(CLEAR_VARS)
LOCAL_MODULE := sample_insmod.sh
LOCAL_MODULE_TAGS := eng
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)
LOCAL_SRC_FILES := sample/sample_insmod.sh
include $(BUILD_PREBUILT)


5 直接导入bin到out下面system/bin/目录


include $(CLEAR_VARS)
LOCAL_MODULE := test.bin
LOCAL_MODULE_TAGS := eng
LOCAL_MODULE_CLASS := EXECUTABLE
LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)
LOCAL_SRC_FILES := sample/sample_insmod.sh

include $(BUILD_PREBUILT)


6 当然最常见的用法是编译so bin文件

include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := eng
LOCAL_MODULE = test_bin
LOCAL_MODULE_PATH := $(TARGET_OUT)/bin
LOCAL_SRC_FILES:= test.cpp

LOCAL_SHARED_LIBRARIES := libcutils libutils liblog


LOCAL_C_INCLUDES += \
    frameworks/tv/include/ \

# No specia compiler flags.
LOCAL_CFLAGS += -D_cplusplus
LOCAL_PRELINK_MODULE := false
include $(BUILD_EXECUTABLE)

#####################        so       ###############

include $(CLEAR_VARS)
LOCAL_PRELINK_MODULE := false
LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)




LOCAL_SHARED_LIBRARIES := liblog libcutils libhardware
LOCAL_SRC_FILES := start_dtv.c
LOCAL_MODULE := libcheck_use_dtv_flag


base := $(LOCAL_PATH)/../..
LOCAL_MODULE_TAGS :=eng
include $(BUILD_SHARED_LIBRARY)



原创粉丝点击