#!/usr/bin/env python
import os
import sys

import portage

def get_usage():
	return "usage: %s <atom>\n" % os.path.basename(sys.argv[0])

if __name__ == "__main__":

	if len(sys.argv)!=2:
		sys.stderr.write(get_usage())
		sys.exit(1)
	elif (len(sys.argv)==2 and sys.argv[1] in ("-h","--help")):
		sys.stdout.write(get_usage())
		sys.exit(0)

	atom_spec=sys.argv[1]

	auxdbkeys = [x for x in portage.auxdbkeys \
	  if not x.startswith("UNUSED_0")]
	auxdbkeys.append("_mtime_")
	auxdbkeys.append("_eclasses_")
	
	portdb = portage.db["/"]["porttree"].dbapi
	for cpv in portdb.xmatch("match-all", atom_spec):
		pkg_data = dict(zip(auxdbkeys, portdb.aux_get(cpv, auxdbkeys)))
		sys.stdout.write(cpv + "\n")
		for k in sorted(pkg_data):
			sys.stdout.write("\t%s=%s\n" % (k, pkg_data[k]))
		sys.stdout.write("\n")
