我有2个Android.mk文件,第一个文件构建了一堆库,第二个文件构建了另一个库,但是在开始自己的构建之前,需要先完成一个库。有什么方法可以确保这种情况发生吗?
这是我到目前为止尝试过的:
LOCAL_ADDITIONAL_DEPENDENCIES := path/to/folder/for/android1.mk
LOCAL_SHARED_LIBRARIES := a.so b.so ...
但是,到目前为止,这些方法都没有帮助
######################################################################
# Android1.mk
######################################################################
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := a1.c a2.c
LOCAL_MODULE := lib_a
LOCAL_MODULE_TAGS := optional
LOCAL_PROPRIETARY_MODULE := true
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := b1.c b2.c
LOCAL_MODULE := lib_b
LOCAL_MODULE_TAGS := optional
LOCAL_PROPRIETARY_MODULE := true
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
include $(BUILD_SHARED_LIBRARY)
######################################################################
# Android2.mk
######################################################################
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := abc.c xyz.c
LOCAL_MODULE := lib_2
LOCAL_PRELINK_MODULE := false
LOCAL_MODULE_TAGS := optional
LOCAL_PROPRIETARY_MODULE := true
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
LOCAL_ADDITIONAL_DEPENDENCIES := /path/to/folder/where/Android1.mk/resides
LOCAL_SHARED_LIBRARIES += \
lib_a \
lib_b
include $(BUILD_SHARED_LIBRARY)
需要注意的是,abc.c / xyz.c没有在lib_a.so/lib_b.so/lib_z.so
中进行任何调用。但是,我正在生成一个脚本(在Android2.mk中),为此,需要先构建所有库(在Android1.mk
中)
答案 0 :(得分:0)
找到一种实现此目的的方法:
L_R, L_A, L_M, reference, position