5
Android 용 하드웨어 테스트를 구축 중입니다. 당신이 볼 수 있듯이여러 실행 파일을 빌드하는 Android.mk 파일 단순화
##### shared #####
LOCAL_PATH := $(my-dir)
##### test_number_one #####
test_name := test_number_one
include $(CLEAR_VARS)
LOCAL_CFLAGS := $(commonCflags)
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../
LOCAL_MODULE_TAGS := optional eng
LOCAL_SHARED_LIBRARIES := some_library some_other_library
LOCAL_MODULE := $(test_name)
LOCAL_SRC_FILES := tests/$(test_name)/$(test_name).c
include $(BUILD_EXECUTABLE)
##### test_number_two #####
test_name := test_number_two
include $(CLEAR_VARS)
LOCAL_CFLAGS := $(commonCflags)
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../
LOCAL_MODULE_TAGS := optional eng
LOCAL_SHARED_LIBRARIES := some_library some_other_library
LOCAL_MODULE := $(test_name)
LOCAL_SRC_FILES := tests/$(test_name)/$(test_name).c
include $(BUILD_EXECUTABLE)
은, 코드의 대부분은 반복되어 아래와 같이 나는, 각 메이크 코드 블록을 사용하여 하나씩이 실행 파일을 빌드 Android.mk 파일이 각 시험 (include $(CLEAR_VARS)
과 include $(CLEAR_VARS)
사이). 나는 이것들을 단순화하여 테스트 이름리스트와 makefile 코드 섹션을 가지고있다. 코드를 다른 파일로 분할해야하는지는 신경 쓰지 않습니다. 다음은 내가하려고하는 것을 보여주기위한 파이썬 에스 케이프 의사 코드입니다.
##### shared #####
LOCAL_PATH := $(my-dir)
##### test_number_one #####
test_names := test_number_one test_numer_two
for each item in test_names:
include $(CLEAR_VARS)
LOCAL_CFLAGS := $(commonCflags)
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../
LOCAL_MODULE_TAGS := optional eng
LOCAL_SHARED_LIBRARIES := some_library some_other_library
LOCAL_MODULE := $(item)
LOCAL_SRC_FILES := tests/$(item)/$(item).c
include $(BUILD_EXECUTABLE)
Android.mk 파일에서 가능한가요? 어떻게 할 수 있습니까?
플래그가 변경되지 않으면 플래그를 다시 초기화 할 필요가 없습니다. – Geoffroy