Похоже, это возможно, но мой script производит нечетные результаты:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
include $(LOCAL_PATH)/libos/Android.mk
include $(LOCAL_PATH)/libbase/Android.mk
include $(LOCAL_PATH)/utils/Android.mk
LOCAL_MODULE := native
include $(BUILD_SHARED_LIBRARY)
Только первое включение обрабатывается отлично, другие файлы Android.mk застревают на нечетных путях. Предложения?
Обновление: Я сломал свою среду здания... В офисе все было в порядке, но у себя дома LOCAL_PATH: = $(вызов my-dir) определяет LOCAL_PATH для NDK-сервера вместо проекта dir, Это моя партия для сборки:
set BASHPATH=K:\cygwin\bin\bash
set PROJECTDIR=/cygdrive/h/Alex/Alex/Work/Android/remote-android
set NDKDIR=/cygdrive/h/Alex/Programming_Docs/Android/android-ndk-r6/ndk-build
set APP_BUILD_SCRIPT=/cygdrive/h/Alex/Alex/Work/Android/project/jni/Android.mk
set DEV_ROOT=h:/Alex/Alex/Work/Android/project
%BASHPATH% --login -c "cd %PROJECTDIR% && %NDKDIR%"
Обновление: я абсолютно не понимаю, как эта вещь сочиняет пути. Я получаю ошибки с такими путями, как "/cygdrive/d/project/jni//cygdrive/d/Soft/project/jni/libos/src/libos.cpp". Это после того, как я решил указать все файлы в корне Android.mk вместо включения подмодулей.
Обновление 2: Не повезло, это тоже не работает:
LOCAL_PATH:= $(call my-dir)
# Include makefiles here.
include $(LOCAL_PATH)/libos/Android.mk
include $(LOCAL_PATH)/libbase/Android.mk
include $(LOCAL_PATH)/utils/Android.mk
# Clear variables here.
include $(CLEAR_VARS)