Blizzard / Blizzard/s2client-api
CMake install
- Dominant language
- C++
- Stars
- 1.7k
- Forks
- 280
- PR merge metrics
- No merged PRs in 30d
Description
I've started looking at creating an install target for the api. The main problem right now is that civetweb always tries to install its executable along with it's library component. You currently disable building the executable using the [EXCLUDE_FROM_ALL property](https://github.com/Blizzard/s2client-api/blob/master/CMakeLists.txt#L48), but that doesn't disable it from trying to install when we run make (and generates a warning like you mention a few lines above it). As far as I can tell, this is the only real barrier to creating a decent install target.
I see a couple of options, though, one which involves installing into the cmake binary dir and then we reinstall the header and library file from our cmake; another that was switching the `add_subdirectory` call to [ExternalProject_Add](https://cmake.org/cmake/help/v3.9/module/ExternalProject.html) and disabling the install step, then again installing the generated library and header ourselves; finally, which I think is the most reasonable approach that I can think of, so far, is to add a flag to disable the executable install. I have a patch prepared to add that to the ~blizzard fork~ civetweb master.
After applying that change to my local files I'm investigating a problem from protobuf:
```
CMake Error at contrib/protobuf/cmake/cmake_install.cmake:571 (file):
file INSTALL cannot find
"/home/braedy/dev/cpp/s2client-api/build/lib/cmake/protobuf".
Call Stack (most recent call first):
cmake_install.cmake:38 (include)
```
Will update if I find something.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.