No such constructor exists in Cython because Cython does not support C++11 move semantics.
To do it in Cython:
from cython.operator cimport dereference as deref
#assume up is a unique_ptr[FOO], and assume FOO
#is a copyable type
cdef shared_ptr[FOO] x = shared_ptr[FOO](new foo(deref(up.get()))
up.reset(NULL) #Untested--nullptr should be preferred here, but Cython does not support that.
This should all work if the types are [FOO,DELETER], too.
The main problem is that Cython is supporting C++98 and not modern C++.