anchor.diff:  	if os.path.exists(pam_libdirdebug):
   		do_split_packages(d, pam_libdirdebug, '^pam(.*)\.so$', 'pam-plugin%s-dbg', 'PAM plugin for %s debugging symbols', extra_depends='')
   	do_split_packages(d, pam_filterdir, '^(.*)$', 'pam-filter-%s', 'PAM filter for %s', extra_depends='')
  +
  +	pn = bb.data.getVar('PN', d, 1)
  +	metapkg =  pn + '-meta'
  +	bb.data.setVar('ALLOW_EMPTY_' + metapkg, "1", d)
  +	bb.data.setVar('FILES_' + metapkg, "", d)
  +	blacklist = [ pn + '-locale', pn + '-dev', pn + '-dbg', pn + '-doc' ]
  +	metapkg_rdepends = []
  +	packages = bb.data.getVar('PACKAGES', d, 1).split()
  +	for pkg in packages[1:]:
  +		if not pkg in blacklist and not pkg in metapkg_rdepends and not pkg.endswith('-dev') and not pkg.count('locale') and pkg.count('plugin'):
  +			metapkg_rdepends.append(pkg)
  +	bb.data.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends), d)
  +	bb.data.setVar('DESCRIPTION_' + metapkg, pn + ' meta package', d)
  +	packages.append(metapkg)
  +	bb.data.setVar('PACKAGES', ' '.join(packages), d)
   }
   
   
  
positive.code: 
  DEPENDS = "flex flex-native"
  
  PR = "r3"
  
  # The project is actually called Linux-PAM but that gives
  # a bad OE package name because of the upper case characters
  
negative.code: # maintain the pam default layout
  EXTRA_OECONF += " --includedir=${includedir}/security"
  
  PACKAGES_DYNAMIC += " libpam-meta pam-plugin-*"
  
  python populate_packages_prepend () {
  	import os.path
  
  	pam_libdir = bb.data.expand('${libdir}/security', d)
  	pam_libdirdebug = bb.data.expand('${libdir}/security/.debug', d)
  	pam_filterdir = bb.data.expand('${libdir}/security/pam_filter', d)
  	do_split_packages(d, pam_libdir, '^pam(.*)\.so$', 'pam-plugin%s', 'PAM plugin for %s', extra_depends='')
  