Perlmint / glew-cmake

GLEW(https://github.com/nigels-com/glew, source updated nightly) with Cmake and pre-generated sources
Other
234 stars 95 forks source link

cmake: error no LIBRARY DESTINATION for shared library target. #17

Closed ArthurSonzogni closed 5 years ago

ArthurSonzogni commented 5 years ago

When doing

cmake ..

I get:

CMake Error at CMakeLists.txt:79 (INSTALL):
  INSTALL TARGETS given no LIBRARY DESTINATION for shared library target
  "libglew_shared".

CMake Error at CMakeLists.txt:94 (INSTALL):
  INSTALL TARGETS given no LIBRARY DESTINATION for shared library target
  "libglewmx_shared".

-- Configuring incomplete, errors occurred!

I bisected. This is caused by the merge:


commit e4de8a77a1f91aa99088187c7b8f7ff6bd6d107c Merge: f92c14b 5a7232f Author: Gyusun Yeom omniavinco@gmail.com Date: Sat Apr 20 15:45:09 2019 +0900

Merge pull request #16 from GekkieHenkie/patch-1

Update library install directories in Cmake

commit 5a7232fc53496fe667d53fc9c98206b644befd12 Author: GekkieHenkie 33967804+GekkieHenkie@users.noreply.github.com Date: Tue Apr 9 23:59:48 2019 +0200

Install directories set in single statement

commit def19e7de4b34e6182e8f346cd14952424c574aa Author: GekkieHenkie 33967804+GekkieHenkie@users.noreply.github.com Date: Tue Apr 9 23:22:16 2019 +0200

Update library install directories in Cmake

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 or the shared library's symbols file (.lib).
The shared library runtimes should be installed to the 'bin' output directory, as proposed in this PR.

See the ```CONFIGURATIONS``` option in [Install command introduction in the CMake manual](https://cmake.org/cmake/help/v3.14/command/install.html#introduction) for an example.

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.
ArthurSonzogni commented 5 years ago

Fixed.