Installation
To install the library, simply compile all the source files statically into your project. Additionally, CMake users can use the provided CMakeLists.txt
file as a submodule. Finally, you may use pkgconfig
to find the library if installed using a system package.
The library also depends on the yaml-cpp
library, which is added as a submodule for convenience.
Configuration
Exporting symbols out of the library
To export symbols out of the library, define the UVK_LOG_EXPORT_FROM_LIBRARY
macro. When compiling the library, also make sure to define the UVK_LIB_COMPILE
macro, otherwise the linker will try to import the symbols, not export them.
This is enabled and handled by default for CMake users.
Configuring yaml-cpp
Users of CMake can vendor yaml-cpp
by setting the BUILD_VARIANT_VENDOR
CMake variable to ON
. Otherwise, CMake will try to use pkgconfig to find it.
You might also "vendor" yaml-cpp
for your own project. In this case, you can set the USE_PRECONFIGURED_YAML
variable to ON
and set the YAML_CPP_INCLUDE_DIRS_T
variable to be equal to the include directories of your own bundled version.
Note: Windows will always be in "vendored" mode.
Enabling installation of files
If you're using CMake, set UIMGUI_INSTALL
to ON
to install the headers and library.
Setting the library mode
If you're using CMake, set BUILD_VARIANT_STATIC
to ON
to build the library as a static library.
Setting a custom string implementation
You can define the UI18N_CUSTOM_STRING
macro to define a custom string. Make sure that it replaces with the type of your string. After that, define the UI18N_CUSTOM_STRING_INCLUDE
macro and set it to replace as the header directory in quotes.
Setting a custom map implementation
You can define the UI18N_CUSTOM_MAP
macro to define a custom map. Make sure that it replaces with the type of your map. After that, define the UI18N_CUSTOM_MAP_INCLUDE
macro and set it to replace as the header directory in quotes.