The Ubuntu One file synchronization daemon,
ubuntuone-syncdaemon and the related commandline utility
u1sdtool, are python programs and as such don't need “building” in the traditional sense (the parts of
ubuntuone-client that need building are the nautilus extension—which you don't want—and the icons used by it). At runtime
u1sdtool simply talks to
syncdaemon over dbus, and
syncdaemon has very narrow dependencies on some services provided by the Ubuntu desktop, and then again only via dbus (so you could in theory satisfy the dependencies with another service that provided the same API).
You need something on the session bus providing
org.freedesktop.Secret.Session and related interfaces. This is used by
ubuntu-sso-client, which is used by
syncdaemon to provide the needed credentials.
You probably also want something on the system bus providing
org.freedesktop.NetworkManager (typically Network Manager itself) to give the
syncdaemon awareness of whether you are connected to the network or not. This isn't essential, however.
You also need the following python libraries:
ubuntuone.storageprotocol (which in turn depends on some of the above and also
protobuf). Optionally you could have
zeitgeist, and some Unity-related things that I'm assuming you won't have.
Good luck porting, and if I've forgotten anything or you get stuck, please let us know!