Configurations ======================= It is possible to build ProtocolFilters project as a dll or a static library, with C or C++ interface. Here is a list of supported project configurations: - Debug : builds a debug version of dll with C++ interface and lib to link with dll. - Release : builds a release version of dll with C++ interface and lib to link with dll. - Debug_c_api : builds a debug version of dll with C interface and lib to link with dll. - Release_c_api : builds a release version of dll with C interface and lib to link with dll. - Debug_static_dll : builds a debug version of static library with C++ interface, linking with C runtime dynamically (uses /MDd compiler flag). - Release_static_dll : builds the release version of static library with C++ interface, linking with C runtime dynamically (uses /MD compiler flag). - Release_static : builds the release version of static library with C++ interface, linking statically with C runtime (uses /MT compiler flag). The generated lib files are saved to lib\\$(ConfigurationName)\\$(PlatformName), and dll files are saved to bin\\$(ConfigurationName)\\$(PlatformName). Each configuration links with appropriate builds of OpenSSL libraries via lib files. If SSL filtering (FT_SSL) is not required, it is possible to define the symbol PF_NO_SSL_FILTER in a project configuration to disable linking with OpenSSL. It is necessary to define the symbol _PF_STATIC_LIB in your project when linking with the static build of the library. Linux and Mac OS builds always use a static linkage.