Android.mk, include all cpp files
You could try something like this...
FILE_LIST := $(wildcard $(LOCAL_PATH)/[DIRECTORY]/*.cpp)
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
... Change [DIRECTORY]
to the actual directory of the files. If they are in the same directory as your .mk
file then remove that part. Create the FILE_LIST
variable to find all of the .cpp
files under the [DIRECTORY]
directory. Then use it in the file listing. The LOCAL_SRC_FILES
line will then remove the LOCAL_PATH
from the listing.
How about like this:
LOCAL_SRC_FILES := $(subst $(LOCAL_PATH)/,,$(wildcard $(LOCAL_PATH)/*.cpp))
If you'd be afraid that expansion of * contains $(LOCAL_PATH)/, it might be OK:
LOCAL_SRC_FILES := $(subst $(LOCAL_PATH)/./,,$(wildcard $(LOCAL_PATH)/./*.cpp))
I've been using this script for my Android.mk saved me so much time!
#traverse all the directory and subdirectory
define walk
$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
endef
#find all the file recursively under jni/
ALLFILES = $(call walk, $(LOCAL_PATH))
FILE_LIST := $(filter %.cpp, $(ALLFILES))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
Here is the gist