Currently (well, at least on Windows), the created DLL files aren't installed to the correct directory after a build. The DLL files are installed to the 'lib' directory. Which actually is the place for the static library and only the shared library's symbols file (.lib).
The shared library runtimes should be installed to the 'bin' output directory, as proposed in this pull request.
It's considered best practice and follows convention as used in other notable libraries as libpng, libogg/vorbis, freetype, zlib, tinyxml, etc, to install the runtime output in the 'bin' directory.
To conform even more to convention, the shared library output should not have '_shared' postfixed, but instead the static library output should have '_static' postfixed to it.
But I thought that would maybe break current builds at user machines, and should maybe have its own pull request?
Currently (well, at least on Windows), the created DLL files aren't installed to the correct directory after a build. The DLL files are installed to the 'lib' directory. Which actually is the place for the static library and only the shared library's symbols file (.lib). The shared library runtimes should be installed to the 'bin' output directory, as proposed in this pull request. It's considered best practice and follows convention as used in other notable libraries as libpng, libogg/vorbis, freetype, zlib, tinyxml, etc, to install the runtime output in the 'bin' directory.
See the
CONFIGURATIONS
option in Install command introduction in the CMake manual for an example.To conform even more to convention, the shared library output should not have '_shared' postfixed, but instead the static library output should have '_static' postfixed to it. But I thought that would maybe break current builds at user machines, and should maybe have its own pull request?