My project was initially not meant for Android, and its assets are organised along the following directory structure (I hope the ASCII art renders reasonably well):
/ +- engine/ | +- src/ | | enginefile1.cpp | | ... | `- textures/ | texture1.tex | ... +- game/ | +- src/ | | gamefile1.cpp | | ... | +- textures/ | | gametexture1.tex | | ... | +- ios/ | | [various iOS-specific files] | `- android/ | | build.xml | | AndroidManifest.xml | +- jni/ | | Android.mk | +- assets/ | [other Android-specific files] `- othergame/
game/android/jni directory is almost empty because
Android.mk points to the relative paths of the source files in
game/src. Actually, it even includes the proper
Makefiles so that I never have to modify
Android.mk when I add or remove a source file to the project.
game provide assets that need to be shipped with the Android build. I would like
build.xml to refer to these assets without having to manually copy them. A rule that copies the assets at build time then deletes them would be acceptable, but of course I would prefer a zero copy solution. Does this make sense? How did others solve this cross-platform build problem?