Normally this directory is changed to before building,
@item submodules=yes
-Use if the project (git only) has submodules - causes git submodule
-init and update to be executed after the source is cloned.
+Use if the project (git only) has submodules - causes @code{git submodule
+update --init --recursive} to be executed after the source is cloned.
+Submodules are reset and cleaned like the main app repository itself before
+each build.
@item init=xxxx
As for 'prebuild', but runs on the source code BEFORE any other processing
def initsubmodules(self):
self.checkrepo()
- if subprocess.call(['git', 'submodule', 'init'],
- cwd=self.local) != 0:
- raise VCSException("Git submodule init failed")
- if subprocess.call(['git', 'submodule', 'update'],
+ if subprocess.call(['git', 'submodule', 'update',
+ '--init', '--recursive'],
cwd=self.local) != 0:
raise VCSException("Git submodule update failed")
if subprocess.call(['git', 'submodule', 'foreach',