aboutsummaryrefslogtreecommitdiff
blob: 79e241c004ec04bc46e8df521d58938c43ab7412 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# R Overlay -- Manifest creation for ebuilds
# Copyright 2006-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2


import logging

import roverlay.portage.manifesthelpers

_MANIFEST_IMPLEMENTATION = \
	roverlay.portage.manifesthelpers.ExternalManifestCreation


def create_manifest ( package_info, nofail=False ):
	"""Creates a Manifest for package_info, using the <<best>> implementation
	available.

	current implementation: ExternalManifestCreation (using ebuild(1))

	arguments:
	* package_info --
	* nofail -- catch exceptions and return False
	"""
	try:
		return _MANIFEST_IMPLEMENTATION.do ( package_info )
	except Exception as e:
		logging.exception ( e )
		if nofail:
			return False
		else:
			raise
# --- end of create_manifest (...) ---