diff options
| -rw-r--r-- | meta/classes/package.bbclass | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 6fba5b6907..8b0ac55b76 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -1266,7 +1266,8 @@ python package_do_shlibs() {  		for l in lines:  			m = re.match("\s+NEEDED\s+([^\s]*)", l)  			if m: -				needed[pkg].append(m.group(1)) +				if m.group(1) not in needed[pkg]: +					needed[pkg].append(m.group(1))  			m = re.match("\s+SONAME\s+([^\s]*)", l)  			if m:  				this_soname = m.group(1) @@ -1338,7 +1339,7 @@ python package_do_shlibs() {  								name = dep.replace("-l", "lib")  							if pkg not in needed:  								needed[pkg] = [] -							if name: +							if name and name not in needed[pkg]:  								needed[pkg].append(name)  								#bb.note("Adding %s for %s" % (name, pkg)) @@ -1443,6 +1444,8 @@ python package_do_shlibs() {  			if n in shlib_provider.keys():  				(dep_pkg, ver_needed) = shlib_provider[n] +				bb.debug(2, '%s: Dependency %s requires package %s' % (pkg, n, dep_pkg)) +  				if dep_pkg == pkg:  					continue | 
