2012-12-06 58 views
0

我想包括所有.cppClasses,EasyLib and EasyLibUse目录和所有.cpp文件罪有子目录。但我无法这样做,请检查我的打击android.mk文件。在android.mk目录和子目录中创建所有.cpp文件的FILE_LIST

我这样做,包括我的cocos2dx游戏.cpp文件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子目录中的文件。

问候, Aqif

+0

在其中的三个确实让无法找到文件? – Beta

+0

请检查编辑。 –

回答

1

这是我的Android.mk,我认为这是你在找什么:

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

如果我在'$(LOCAL_PATH)'的目录下有子目录怎么办? –

+1

@IgorGanapolsky,“find -d”命令全部检索它们。 –

相关问题