android常用编译指令
PRODUCT_COPY_FILES 和 BUILD_PREBUILT
PRODUCT_COPY_FILES
PRODUCT_COPY_FILES变量主要用于执行编译前的一些拷贝操作,语法如下:
PRODUCT_COPY_FILES += \
<source file>:<dest file>
该变量在build/make/core/product.mk脚本之后变为只读状态。
要修改该变量要在build/make/core/product.mk之前修改。
如果需要在build/make/core/product.mk之后添加拷贝可以用:
BUILD_PREBUILT
BUILD_PREBUILT 把拷贝操作当成一个项目操作,语法如下:
include $(CLEAR_VARS)
LOCAL_MODULE := libxxx
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
LOCAL_MODULE_SUFFIX := .so
LOCAL_STRIP_MODULE := false
LOCAL_MULTILIB := 64
LOCAL_MODULE_OWNER := qcom
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := ./lib64/libxxx.so
LOCAL_MODULE_PATH := $(PRODUCT_OUT)/$(TARGET_COPY_OUT_VENDOR)/lib64
LOCAL_PROPRIETARY_MODULE := true
include $(BUILD_PREBUILT)
异同:
PRODUCT_COPY_FILES 和 BUILD_PREBUILT都可以执行拷贝操作,不同点在于PRODUCT_COPY_FILES的拷贝在生成img时会打包进去,BUILD_PREBUILT的拷贝不会被打包,需要在PRODUCT_PACKAGES中添加local才可以。
如下:
PODUCT_PACKAGES += \
libxxx
或者通过LOCAL_MODULE_TAGS变量在编译时动态控制。
PODUCT_PACKAGES
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论