Bug 5717

Summary: GITSM fetcher should use ud.basecmd
Product: [Build System, Metadata & Runtime] BitBake Reporter: Rudolf J Streif <rudolf.streif>
Component: bitbakeAssignee: Richard Purdie <richard.purdie>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: Medium CC: bluelightning, poky.bs.watcher, poky.watcher
Version: unspecified   
Target Milestone: 1.6   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Rudolf J Streif 2014-01-13 01:43:23 UTC
The gitsm fetcher inherits from the git fetcher but it does hardcodes git into the runfetchcmd() calls in update_submodules():

def update_submodules(self, u, ud, d):
...
        runfetchcmd("git reset --hard", d)
        runfetchcmd("git submodule init", d)
        runfetchcmd("git submodule update", d)
...

It should use ud.basecmd instead. (Interestingly enough it does so in uses_submodules()). That is merely an inconsistency. However, it also does not allow for FETCHCMD_git to be used to override the command.

Proposed fix:

        runfetchcmd("%s reset --hard" % (ud.basecmd), d)
        runfetchcmd("%s submodule init" % (ud.basecmd), d)
        runfetchcmd("%s submodule update" % (ud.basecmd), d)