2012-12-06 2 views
0

.cpp 디렉토리에 Classes,EasyLib and EasyLibUse 디렉토리를 모두 포함시키고 모든 하위 디렉토리에 .cpp 파일을 포함 시키려고합니다. 하지만 난 그렇게 할 수 없어, 친절하게 내 타격을 확인 android.mk 파일.android.mk에있는 디렉토리와 하위 디렉토리에있는 모든 .cpp 파일의 FILE_LIST 만들기

나는 cocos2dx 게임의 파일을 android에 포함시키기 위해이 작업을 수행하고 있습니다.

LOCAL_PATH := $(call my-dir) 

include $(CLEAR_VARS) 

LOCAL_MODULE := game_shared 

LOCAL_MODULE_FILENAME := libgame 

FILE_LIST := $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp) 
FILE_LIST += $(wildcard $(LOCAL_PATH)/../../EasyLib/**/*.cpp) 
FILE_LIST += $(wildcard $(LOCAL_PATH)/../../EasyLibUse/**/*.cpp) 

LOCAL_SRC_FILES := hellocpp/main.cpp \ 
        $(FILE_LIST:$(LOCAL_PATH)/%=%) 

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes     
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../Lib 
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../LibUse 

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static cocosdenshion_static cocos_extension_static 

include $(BUILD_SHARED_LIBRARY) 

$(call import-module,CocosDenshion/android) \ 
$(call import-module,cocos2dx) \ 
$(call import-module,extensions) 

편집 :

FILE_LIST += $(wildcard $(LOCAL_PATH)/../../EasyLib/**/*.cpp) 

FILE_LIST += $(wildcard $(LOCAL_PATH)/../../EasyLibUse/**/*.cpp) 

이 하위 디렉토리에있는 파일을 cpp를 구축하는 데 실패이.

LOCAL_PATH := $(call my-dir) 

include $(CLEAR_VARS) 

LOCAL_MODULE := game_shared 

LOCAL_MODULE_FILENAME := libgame 

cppfiles := $(shell find $(LOCAL_PATH) -name "*.cpp" -printf "%P \n") 

LOCAL_SRC_FILES := $(cppfiles) 


folders := $(shell find $(LOCAL_PATH) -type d -printf "%P \n") 

LOCAL_C_INCLUDES := $(folders)  

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static cocosdenshion_static cocos_extension_static 


include $(BUILD_SHARED_LIBRARY) 

$(call import-module,CocosDenshion/android) \ 
$(call import-module,cocos2dx) \ 
$(call import-module,extensions) 
+0

이 세 가지 중 어떤에서 파일을 찾을 실패 확인 않습니다

관련, – Beta

+0

수정을 확인하십시오. –

답변

1

이 내 Android.mk입니다

Aqif, 나는 이것이 당신이 찾고있는 무슨 생각?
+0

'$ (LOCAL_PATH)'에있는 디렉토리 아래에 서브 디렉토리가 있다면? –

+1

@IgorGanapolsky, "find -d"명령은 모두 검색합니다. –

관련 문제