Patchwork Ignore externals from a SVN source in SRC_URI

login
register
mail settings
Submitter Francois Retief
Date April 4, 2011, 7:51 a.m.
Message ID <4D997896.9050607@gmail.com>
Download mbox | patch
Permalink /patch/1903/
State New, archived
Headers show

Comments

Francois Retief - April 4, 2011, 7:51 a.m.
Hello,

What is the recommended way to ignore external directories from a SVN
source? Tried SVNCOOPTS, but it did not work.

So I hacked bitbake for my needs with the patch below. But is there a
better way?

SRC_URI =
"svn://svn.somesite.com/trunk;module=somemodule;externals=ignore;proto=https"

Cheers
  Francois

             if ud.revision:
                 options.append("-r %s" % ud.revision)
Khem Raj - April 5, 2011, 2:44 a.m.
On 4/4/2011 12:51 AM, Francois Retief wrote:
> Hello,
>
> What is the recommended way to ignore external directories from a SVN
> source? Tried SVNCOOPTS, but it did not work.
>

yes it could mislead thats why. Since it wont update external svn repos
when you change SRCREV it will give false information of updating all
thats checked out.

> So I hacked bitbake for my needs with the patch below. But is there a
> better way?
>

This seems ok

> SRC_URI =
> "svn://svn.somesite.com/trunk;module=somemodule;externals=ignore;proto=https"
>
> Cheers
>    Francois
>
> diff --git a/lib/bb/fetch/svn.py b/lib/bb/fetch/svn.py
> index ba9f6ab..f22f572 100644
> --- a/lib/bb/fetch/svn.py
> +++ b/lib/bb/fetch/svn.py
> @@ -114,6 +114,12 @@ class Svn(Fetch):
>           if command is "info":
>               svncmd = "%s info %s %s://%s/%s/" % (basecmd, "
> ".join(options), proto, svnroot, ud.module)
>           else:
> +            if "externals" in ud.parm:
> +                if ud.parm["externals"] == "ignore":
> +                    options.append("--ignore-externals")
> +                else:
> +                    raise FetchError("Invalid value for 'externals':
> expected 'ignore'")
> +
>               suffix = ""
>               if ud.revision:
>                   options.append("-r %s" % ud.revision)
>
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Patch

diff --git a/lib/bb/fetch/svn.py b/lib/bb/fetch/svn.py
index ba9f6ab..f22f572 100644
--- a/lib/bb/fetch/svn.py
+++ b/lib/bb/fetch/svn.py
@@ -114,6 +114,12 @@  class Svn(Fetch):
         if command is "info":
             svncmd = "%s info %s %s://%s/%s/" % (basecmd, "
".join(options), proto, svnroot, ud.module)
         else:
+            if "externals" in ud.parm:
+                if ud.parm["externals"] == "ignore":
+                    options.append("--ignore-externals")
+                else:
+                    raise FetchError("Invalid value for 'externals':
expected 'ignore'")
+
             suffix = ""