Move HidlSupport and IServiceManager from libhwbinder.

libhidl will contain data types and functionality that
is independent from libhwbinder, such as hidl_vec,
hidl_string, etc.

libhidl also contains an implementation of the service
manager interface. Initially that implementation is
exactly the same as the servicemanager we had in libhwbinder,
but eventually it should be capable of passing out
pass-through or remote HAL interfaces as well. Therefore,
the servicemanager belongs more in libhidl than in libhwbinder.

This initial version of the library still links against
libhwbinder because of the following dependencies:
- hidl_vec/hidl_string have methods for (de)serialization
  to/from a Parcel
- IServiceManager requires instantiation of a proxy for
  the hwbinder ServiceManager.

These can be dealt with in the future, if we deem it necessary,
since they don't leak through to clients; clients can link
against libhidl only when we have the other changes to the
class hierarchy in place.

Bug: 30839546
Change-Id: Ib05de8c98ba8a807618a0b2e37d809a29d2de9ca
7 files changed
tree: 85542ee0baa8bdae8a1be4021bbf225e926c6130
  1. include/
  2. Android.mk
  3. HidlSupport.cpp
  4. IServiceManager.cpp
  5. Static.cpp