diff options
author | Vincent Torri <vincent.torri@gmail.com> | 2020-11-19 19:34:43 +0100 |
---|---|---|
committer | Jay Satiro <raysatiro@yahoo.com> | 2021-02-09 02:43:04 -0500 |
commit | d4a3b87c13da5db437dc66d646132bdeb902e196 (patch) | |
tree | 0215167200b64cb9ac44810dbd60e073c1300055 | |
parent | f1e5e498796d3f71e3c22e9406796e9ab6c82d1f (diff) | |
download | curl-d4a3b87c13da5db437dc66d646132bdeb902e196.tar.gz |
cmake: fix import library name for non-MS compiler on Windows
- Use _imp.lib suffix only for Microsoft's compiler (MSVC).
Prior to this change library suffix _imp.lib was used for the import
library on Windows regardless of compiler.
With this change the other compilers should now use their default
suffix which should be .dll.a.
This change is motivated by the usage of pkg-config on MSYS2.
Indeed, when 'pkg-config --libs libcurl' is used, -lcurl is
passed to ld. The documentation of ld on Windows :
https://sourceware.org/binutils/docs/ld/WIN32.html
lists, in the 'direct linking to a dll' section, the pattern
of the searched import library, and libcurl_imp.lib is not there.
Closes https://github.com/curl/curl/pull/6225
-rw-r--r-- | lib/CMakeLists.txt | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index 9736e39e5..f6c364239 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -117,8 +117,11 @@ endif() if(WIN32) if(BUILD_SHARED_LIBS) - # Add "_imp" as a suffix before the extension to avoid conflicting with the statically linked "libcurl.lib" - set_target_properties(${LIB_NAME} PROPERTIES IMPORT_SUFFIX "_imp.lib") + if(MSVC) + # Add "_imp" as a suffix before the extension to avoid conflicting with + # the statically linked "libcurl.lib" + set_target_properties(${LIB_NAME} PROPERTIES IMPORT_SUFFIX "_imp.lib") + endif() endif() endif() |