r"""
	Find a path from start to target where target is relative to start.

	>>> tmp = str(getfixture('tmpdir_as_cwd'))

	>>> findpath('d:\\')
	'd:\\'

	>>> findpath('d:\\', tmp)
	'd:\\'

	>>> findpath('\\bar', 'd:\\')
	'd:\\bar'

	>>> findpath('\\bar', 'd:\\foo') # fails with '\\bar'
	'd:\\bar'

	>>> findpath('bar', 'd:\\foo')
	'd:\\foo\\bar'

	>>> findpath('\\baz', 'd:\\foo\\bar') # fails with '\\baz'
	'd:\\baz'

	>>> os.path.abspath(findpath('\\bar')).lower()
	'c:\\bar'

	>>> os.path.abspath(findpath('bar'))
	'...\\bar'

	>>> findpath('..', 'd:\\foo\\bar')
	'd:\\foo'

	The parent of the root directory is the root directory.
	>>> findpath('..', 'd:\\')
	'd:\\'

def resolve_path(target, start=os.path.curdir):
	r"""
	Find a path from start to target where target is relative to start.

	>>> tmp = str(getfixture('tmpdir_as_cwd'))

	>>> findpath('d:\\')
	'd:\\'

	>>> findpath('d:\\', tmp)
	'd:\\'

	>>> findpath('\\bar', 'd:\\')
	'd:\\bar'

	>>> findpath('\\bar', 'd:\\foo') # fails with '\\bar'
	'd:\\bar'

	>>> findpath('bar', 'd:\\foo')
	'd:\\foo\\bar'

	>>> findpath('\\baz', 'd:\\foo\\bar') # fails with '\\baz'
	'd:\\baz'

	>>> os.path.abspath(findpath('\\bar')).lower()
	'c:\\bar'

	>>> os.path.abspath(findpath('bar'))
	'...\\bar'

	>>> findpath('..', 'd:\\foo\\bar')
	'd:\\foo'

	The parent of the root directory is the root directory.
	>>> findpath('..', 'd:\\')
	'd:\\'
	"""
	return os.path.normpath(join(start, target))