cmake: list_spaces_append_once fails with spaces in filename
Windows standard libraries are located in C:/Program Files/Microsoft SDKs/[...]. They are already included in the default MSVC LIBPATH. Hence, find_library(WSOCK32_LIBRARY wsock32) and find_library(WS2_32_LIBRARY ws2_32) are not needed. They return the full path to the libraries including spaces. Of course, list_spaces_append_once will mangle the result and the build fails. Bug: http://curl.haxx.se/bug/view.cgi?id=3494968
This commit is contained in:
Родитель
0c8e36c18a
Коммит
ede9ad43fc
|
@ -148,9 +148,9 @@ option(ENABLE_IPV6 "Define if you want to enable IPv6 support" OFF)
|
||||||
mark_as_advanced(ENABLE_IPV6)
|
mark_as_advanced(ENABLE_IPV6)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
find_library(WSOCK32_LIBRARY wsock32)
|
# Windows standard libraries are located in C:/Program Files/Microsoft SDKs/[...]
|
||||||
find_library(WS2_32_LIBRARY ws2_32)
|
# They are already included in the default MSVC LIBPATH => no find_library is needed!
|
||||||
list_spaces_append_once(CMAKE_C_STANDARD_LIBRARIES ${WSOCK32_LIBRARY} ${WS2_32_LIBRARY}) # bufferoverflowu.lib
|
list_spaces_append_once(CMAKE_C_STANDARD_LIBRARIES wsock32.lib ws2_32.lib) # bufferoverflowu.lib
|
||||||
if(CURL_DISABLE_LDAP)
|
if(CURL_DISABLE_LDAP)
|
||||||
# Remove wldap32.lib from space-separated list
|
# Remove wldap32.lib from space-separated list
|
||||||
string(REPLACE " " ";" _LIST ${CMAKE_C_STANDARD_LIBRARIES})
|
string(REPLACE " " ";" _LIST ${CMAKE_C_STANDARD_LIBRARIES})
|
||||||
|
|
Загрузка…
Ссылка в новой задаче