diff options
author | Richard Purdie <richard@ted.(none)> | 2009-04-28 08:24:11 +0100 |
---|---|---|
committer | Richard Purdie <richard@ted.(none)> | 2009-04-28 08:24:11 +0100 |
commit | 3927e38eba96a172c7df2c7270c31728b83612eb (patch) | |
tree | 48b0a30d721af9e2f25e03bea8e41035e9ff40bb /meta/classes | |
parent | 49ca46f588425c88e37a85df00b1fd4591a01ab6 (diff) | |
parent | d65be3dd2aaa643b5596c8470caf7f291513efee (diff) | |
download | poky-3927e38eba96a172c7df2c7270c31728b83612eb.tar.gz |
Merge ssh://gitserver@git.pokylinux.org/poky
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/base.bbclass | 11 | ||||
-rw-r--r-- | meta/classes/package.bbclass | 4 |
2 files changed, 13 insertions, 2 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index 1f280a0dc5..e801fd12a9 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass | |||
@@ -681,9 +681,20 @@ def oe_unpack_file(file, data, url = None): | |||
681 | if os.path.samefile(file, dest): | 681 | if os.path.samefile(file, dest): |
682 | return True | 682 | return True |
683 | 683 | ||
684 | # Change to subdir before executing command | ||
685 | save_cwd = os.getcwd(); | ||
686 | parm = bb.decodeurl(url)[5] | ||
687 | if 'subdir' in parm: | ||
688 | newdir = ("%s/%s" % (os.getcwd(), parm['subdir'])) | ||
689 | bb.mkdirhier(newdir) | ||
690 | os.chdir(newdir) | ||
691 | |||
684 | cmd = "PATH=\"%s\" %s" % (bb.data.getVar('PATH', data, 1), cmd) | 692 | cmd = "PATH=\"%s\" %s" % (bb.data.getVar('PATH', data, 1), cmd) |
685 | bb.note("Unpacking %s to %s/" % (file, os.getcwd())) | 693 | bb.note("Unpacking %s to %s/" % (file, os.getcwd())) |
686 | ret = os.system(cmd) | 694 | ret = os.system(cmd) |
695 | |||
696 | os.chdir(save_cwd) | ||
697 | |||
687 | return ret == 0 | 698 | return ret == 0 |
688 | 699 | ||
689 | addtask unpack after do_fetch | 700 | addtask unpack after do_fetch |
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index fa53b1358c..df870142f1 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
@@ -23,7 +23,7 @@ def legitimize_package_name(s): | |||
23 | # Remaining package name validity fixes | 23 | # Remaining package name validity fixes |
24 | return s.lower().replace('_', '-').replace('@', '+').replace(',', '+').replace('/', '-') | 24 | return s.lower().replace('_', '-').replace('@', '+').replace(',', '+').replace('/', '-') |
25 | 25 | ||
26 | def do_split_packages(d, root, file_regex, output_pattern, description, postinst=None, recursive=False, hook=None, extra_depends=None, aux_files_pattern=None, postrm=None, allow_dirs=False, prepend=False, match_path=False, aux_files_pattern_verbatim=None): | 26 | def do_split_packages(d, root, file_regex, output_pattern, description, postinst=None, recursive=False, hook=None, extra_depends=None, aux_files_pattern=None, postrm=None, allow_dirs=False, prepend=False, match_path=False, aux_files_pattern_verbatim=None, allow_links=False): |
27 | """ | 27 | """ |
28 | Used in .bb files to split up dynamically generated subpackages of a | 28 | Used in .bb files to split up dynamically generated subpackages of a |
29 | given package, usually plugins or modules. | 29 | given package, usually plugins or modules. |
@@ -72,7 +72,7 @@ def do_split_packages(d, root, file_regex, output_pattern, description, postinst | |||
72 | continue | 72 | continue |
73 | f = os.path.join(dvar + root, o) | 73 | f = os.path.join(dvar + root, o) |
74 | mode = os.lstat(f).st_mode | 74 | mode = os.lstat(f).st_mode |
75 | if not (stat.S_ISREG(mode) or (allow_dirs and stat.S_ISDIR(mode))): | 75 | if not (stat.S_ISREG(mode) or (allow_links and stat.S_ISLNK(mode)) or (allow_dirs and stat.S_ISDIR(mode))): |
76 | continue | 76 | continue |
77 | on = legitimize_package_name(m.group(1)) | 77 | on = legitimize_package_name(m.group(1)) |
78 | pkg = output_pattern % on | 78 | pkg = output_pattern % on |