[oe-commits] org.oe.dev package.bbclass: Turn install path into a variable (PKGDATA) and cleanup some unneeded complexity (from poky)

rpurdie commit openembedded-commits at lists.openembedded.org
Tue Sep 4 09:04:20 UTC 2007


package.bbclass: Turn install path into a variable (PKGDATA) and cleanup some unneeded complexity (from poky)

Author: rpurdie at openembedded.org
Branch: org.openembedded.dev
Revision: a9a8c4a4574f9f7b968c91225f9af27a8928b785
ViewMTN: http://monotone.openembedded.org/revision.psp?id=a9a8c4a4574f9f7b968c91225f9af27a8928b785
Files:
1
classes/package.bbclass
Diffs:

#
# mt diff -r190270f4a71846a8098815d7407fafc9193bfdcf -ra9a8c4a4574f9f7b968c91225f9af27a8928b785
#
# 
# 
# patch "classes/package.bbclass"
#  from [6d38d123e9ab2e3f1235b253086a38e70abf8518]
#    to [133959252573ef8846b3b217a8fc0a1245d0233f]
# 
============================================================
--- classes/package.bbclass	6d38d123e9ab2e3f1235b253086a38e70abf8518
+++ classes/package.bbclass	133959252573ef8846b3b217a8fc0a1245d0233f
@@ -1,7 +1,9 @@
 #
 # General packaging help functions
 #
 
+PKGDEST = "${WORKDIR}/install"
+
 def legitimize_package_name(s):
 	"""
 	Make sure package names are legitimate strings
@@ -374,25 +376,21 @@ python populate_packages () {
 				if not os.path.islink(file) and not os.path.isdir(file) and isexec(file):
 					runstrip(file, d)
 
+	pkgdest = bb.data.getVar('PKGDEST', d, 1)
+	os.system('rm -rf %s' % pkgdest)
+
 	for pkg in package_list:
 		localdata = bb.data.createCopy(d)
-		root = os.path.join(workdir, "install", pkg)
+		root = os.path.join(pkgdest, pkg)
+		bb.mkdirhier(root)
 
-		os.system('rm -rf %s' % root)
-
-		bb.data.setVar('ROOT', '', localdata)
-		bb.data.setVar('ROOT_%s' % pkg, root, localdata)
 		bb.data.setVar('PKG', pkg, localdata)
-
 		overrides = bb.data.getVar('OVERRIDES', localdata, 1)
 		if not overrides:
 			raise bb.build.FuncFailed('OVERRIDES not defined')
-		bb.data.setVar('OVERRIDES', overrides+':'+pkg, localdata)
-
+		bb.data.setVar('OVERRIDES', overrides + ':' + pkg, localdata)
 		bb.data.update_data(localdata)
 
-		root = bb.data.getVar('ROOT', localdata, 1)
-		bb.mkdirhier(root)
 		filesvar = bb.data.getVar('FILES', localdata, 1) or ""
 		files = filesvar.split()
 		for file in files:
@@ -445,7 +443,7 @@ python populate_packages () {
 	for pkg in package_list:
 		dangling_links[pkg] = []
 		pkg_files[pkg] = []
-		inst_root = os.path.join(workdir, "install", pkg)
+		inst_root = os.path.join(pkgdest, pkg)
 		for root, dirs, files in os.walk(inst_root):
 			for f in files:
 				path = os.path.join(root, f)
@@ -566,6 +564,8 @@ python package_do_shlibs() {
 		bb.error("TARGET_SYS not defined")
 		return
 
+	pkgdest = bb.data.getVar('PKGDEST', d, 1)
+
 	shlibs_dir = os.path.join(staging, target_sys, "shlibs")
 	old_shlibs_dir = os.path.join(staging, "shlibs")
 	bb.mkdirhier(shlibs_dir)
@@ -578,7 +578,7 @@ python package_do_shlibs() {
 
 		needed[pkg] = []
 		sonames = list()
-		top = os.path.join(workdir, "install", pkg)
+		top = os.path.join(pkgdest, pkg)
 		for root, dirs, files in os.walk(top):
 			for file in files:
 				soname = None
@@ -664,7 +664,7 @@ python package_do_shlibs() {
 			else:
 				bb.note("Couldn't find shared library provider for %s" % n)
 
-		deps_file = os.path.join(workdir, "install", pkg + ".shlibdeps")
+		deps_file = os.path.join(pkgdest, pkg + ".shlibdeps")
 		if os.path.exists(deps_file):
 			os.remove(deps_file)
 		if len(deps):
@@ -697,6 +697,8 @@ python package_do_pkgconfig () {
 		bb.error("TARGET_SYS not defined")
 		return
 
+	pkgdest = bb.data.getVar('PKGDEST', d, 1)
+
 	shlibs_dir = os.path.join(staging, target_sys, "shlibs")
 	old_shlibs_dir = os.path.join(staging, "shlibs")
 	bb.mkdirhier(shlibs_dir)
@@ -710,7 +712,7 @@ python package_do_pkgconfig () {
 	for pkg in packages.split():
 		pkgconfig_provided[pkg] = []
 		pkgconfig_needed[pkg] = []
-		top = os.path.join(workdir, "install", pkg)
+		top = os.path.join(pkgdest, pkg)
 		for root, dirs, files in os.walk(top):
 			for file in files:
 				m = pc_re.match(file)
@@ -773,7 +775,7 @@ python package_do_pkgconfig () {
 					found = True
 			if found == False:
 				bb.note("couldn't find pkgconfig module '%s' in any package" % n)
-		deps_file = os.path.join(workdir, "install", pkg + ".pcdeps")
+		deps_file = os.path.join(pkgdest, pkg + ".pcdeps")
 		if os.path.exists(deps_file):
 			os.remove(deps_file)
 		if len(deps):
@@ -787,14 +789,14 @@ python read_shlibdeps () {
 	packages = (bb.data.getVar('PACKAGES', d, 1) or "").split()
 	for pkg in packages:
 		rdepends = explode_deps(bb.data.getVar('RDEPENDS_' + pkg, d, 0) or bb.data.getVar('RDEPENDS', d, 0) or "")
-		shlibsfile = bb.data.expand("${WORKDIR}/install/" + pkg + ".shlibdeps", d)
+		shlibsfile = bb.data.expand("${PKGDEST}/" + pkg + ".shlibdeps", d)
 		if os.access(shlibsfile, os.R_OK):
 			fd = file(shlibsfile)
 			lines = fd.readlines()
 			fd.close()
 			for l in lines:
 				rdepends.append(l.rstrip())
-		pcfile = bb.data.expand("${WORKDIR}/install/" + pkg + ".pcdeps", d)
+		pcfile = bb.data.expand("${PKGDEST}/" + pkg + ".pcdeps", d)
 		if os.access(pcfile, os.R_OK):
 			fd = file(pcfile)
 			lines = fd.readlines()






More information about the Openembedded-commits mailing list