A context management system is a distributed system that enables applications to obtain context information about (mobile) users and forms a key component of any pervasive computing environment. Context management systems are however very environment-specific (e.g., specific for home environments) and therefore do not interoperate very well. This limits the operation of context-aware applications because they cannot get context information on users that reside in an environment served by a context management system that is of a different type than the one used by the application. This is particularly important for mobile users, whose context information is typically available through different types of context management systems as they move across different environments. In this paper, we address this interoperability problem by placing bridges between different types of context management systems, in particular systems for home, mobile, and ad-hoc environments. The novelty of our bridges is that they focus on resolving functional differences between context management systems, whereas prior work in this area concentrates on resolving differences in data models. We discuss our bridging architecture and zoom in on a few selected bridges, focusing on their context discovery and exchange functions. We also outline how we implemented these bridges.