| This is the source code for the OpenVR API client binding library which connects | |
| OpenVR applications to the SteamVR runtime, taking into account the version | |
| of the OpenVR interface they were compiled against. | |
| The client binding library - openvr_api.dll on Windows, openvr_api.so on | |
| Linux, and openvr_api.dylib or OpenVR.framework on macOS - knows how to find | |
| and read the SteamVR runtime installation information which allows it to | |
| find and dynamically connect to the installed runtime. In combination with the | |
| interface version identifiers from /include/openvr.h which are baked | |
| into applications at the time they are built, the OpenVR API client | |
| binding library captures and conveys to the SteamVR runtime the version | |
| of the OpenVR API interface behavior that the application expects. | |
| Applications carry with them a private/local copy of the client binding | |
| library when they ship, and they should install it locally to their | |
| application. Applications should not install the client binding library | |
| globally or attempt to link to a globally installed client binding library. | |
| Doing so negates at least part of the ability for the client binding library | |
| to accurately reflect the version of the OpenVR API that the application | |
| was built against, and so hinders compatibility support in the face of | |
| API changes. | |
| Most applications should simply link to and redistribute with their application | |
| the pre-built client binding library found in the /bin directory of this | |
| repository. Some small number of applications which have specific requirements | |
| around redistributing only binaries they build themselves should build | |
| the client library from this source and either statically link it into | |
| their application or redistribute the binary they build. | |
| This is a cmake project, to build it use the version of cmake appropriate | |
| for your platform. For example, to build on a POSIX system simply perform | |
| cd src; mkdir _build; cd _build; cmake ..; make | |
| and you will end up with the static library /src/bin/<arch>/libopenvr_api.a | |
| To build a shared library, pass -DBUILD_SHARED=1 to cmake. | |
| To build as a framework on apple platforms, pass -DBUILD_FRAMEWORK=1 to cmake. | |
| To see a complete list of configurable build options, use `cmake -LAH` |