From 58ffd5a0ed288f9225cb82fd8cf1af30a4700bda Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Thu, 15 Jan 2009 17:55:32 +0100 Subject: base.bbclass: Add subdir feature to SRC_URI entries (from OE) --- meta/classes/base.bbclass | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'meta/classes') diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index 5f83af1fa..b7eb62c01 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -681,9 +681,20 @@ def oe_unpack_file(file, data, url = None): if os.path.samefile(file, dest): return True + # Change to subdir before executing command + save_cwd = os.getcwd(); + parm = bb.decodeurl(url)[5] + if 'subdir' in parm: + newdir = ("%s/%s" % (os.getcwd(), parm['subdir'])) + bb.mkdirhier(newdir) + os.chdir(newdir) + cmd = "PATH=\"%s\" %s" % (bb.data.getVar('PATH', data, 1), cmd) bb.note("Unpacking %s to %s/" % (file, os.getcwd())) ret = os.system(cmd) + + os.chdir(save_cwd) + return ret == 0 addtask unpack after do_fetch -- cgit v1.2.3 From f94bd6b312b20c7c0c99c0874bb38887684fd8d6 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 6 Oct 2008 12:49:05 +0000 Subject: package bbclass: add an 'allow_links' param to get symlinks packaged, usefull for splitting out libraries --- meta/classes/package.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'meta/classes') diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index a714b0822..282315567 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -21,7 +21,7 @@ def legitimize_package_name(s): # Remaining package name validity fixes return s.lower().replace('_', '-').replace('@', '+').replace(',', '+').replace('/', '-') -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): +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): """ Used in .bb files to split up dynamically generated subpackages of a given package, usually plugins or modules. @@ -70,7 +70,7 @@ def do_split_packages(d, root, file_regex, output_pattern, description, postinst continue f = os.path.join(dvar + root, o) mode = os.lstat(f).st_mode - if not (stat.S_ISREG(mode) or (allow_dirs and stat.S_ISDIR(mode))): + if not (stat.S_ISREG(mode) or (allow_links and stat.S_ISLNK(mode)) or (allow_dirs and stat.S_ISDIR(mode))): continue on = legitimize_package_name(m.group(1)) pkg = output_pattern % on -- cgit v1.2.3