'Return a copy of this spec.
By default, returns a deep copy. To control how dependencies are
copied, supply:
deps=True:  deep copy
deps=False: shallow copy (no dependencies)
deps=(\'link\', \'build\'):
only build and link dependencies.  Similar for other deptypes.'

def copy(self, deps=True):

    clone = Spec.__new__(Spec)
    clone._dup(self, deps=deps)
    return clone
