diff options
Diffstat (limited to 'bitbake/lib/bb/fetch2')
-rw-r--r-- | bitbake/lib/bb/fetch2/svn.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/bitbake/lib/bb/fetch2/svn.py b/bitbake/lib/bb/fetch2/svn.py index baeb0e7eea..59ce93160c 100644 --- a/bitbake/lib/bb/fetch2/svn.py +++ b/bitbake/lib/bb/fetch2/svn.py | |||
@@ -91,6 +91,13 @@ class Svn(FetchMethod): | |||
91 | svncmd = "%s log --limit 1 %s %s://%s/%s/" % (ud.basecmd, " ".join(options), proto, svnroot, ud.module) | 91 | svncmd = "%s log --limit 1 %s %s://%s/%s/" % (ud.basecmd, " ".join(options), proto, svnroot, ud.module) |
92 | else: | 92 | else: |
93 | suffix = "" | 93 | suffix = "" |
94 | |||
95 | # externals may be either 'allowed' or 'nowarn', but not both. Allowed | ||
96 | # will not issue a warning, but will log to the debug buffer what has likely | ||
97 | # been downloaded by SVN. | ||
98 | if not ("externals" in ud.parm and ud.parm["externals"] == "allowed"): | ||
99 | options.append("--ignore-externals") | ||
100 | |||
94 | if ud.revision: | 101 | if ud.revision: |
95 | options.append("-r %s" % ud.revision) | 102 | options.append("-r %s" % ud.revision) |
96 | suffix = "@%s" % (ud.revision) | 103 | suffix = "@%s" % (ud.revision) |
@@ -136,6 +143,18 @@ class Svn(FetchMethod): | |||
136 | bb.fetch2.check_network_access(d, svnfetchcmd, ud.url) | 143 | bb.fetch2.check_network_access(d, svnfetchcmd, ud.url) |
137 | runfetchcmd(svnfetchcmd, d, workdir=ud.pkgdir) | 144 | runfetchcmd(svnfetchcmd, d, workdir=ud.pkgdir) |
138 | 145 | ||
146 | if not ("externals" in ud.parm and ud.parm["externals"] == "nowarn"): | ||
147 | # Warn the user if this had externals (won't catch them all) | ||
148 | output = runfetchcmd("svn propget svn:externals", d, workdir=ud.moddir) | ||
149 | if output: | ||
150 | if "--ignore-externals" in svnfetchcmd.split(): | ||
151 | bb.warn("%s contains svn:externals." % ud.url) | ||
152 | bb.warn("These should be added to the recipe SRC_URI as necessary.") | ||
153 | bb.warn("svn fetch has ignored externals:\n%s" % output) | ||
154 | bb.warn("To disable this warning add ';externals=nowarn' to the url.") | ||
155 | else: | ||
156 | bb.debug(1, "svn repository has externals:\n%s" % output) | ||
157 | |||
139 | scmdata = ud.parm.get("scmdata", "") | 158 | scmdata = ud.parm.get("scmdata", "") |
140 | if scmdata == "keep": | 159 | if scmdata == "keep": |
141 | tar_flags = "" | 160 | tar_flags = "" |