mirror of
https://github.com/reactos/CMake.git
synced 2024-11-27 13:30:39 +00:00
MinGW: Update find_library to not find plain .dll files
Modern distributions of packages built with MinGW tools provide `.dll.a` import libraries. Prefer those instead of finding plain `.dll` files. This avoids accidentally finding unrelated Windows `.dll` files. Fixes: #20019
This commit is contained in:
parent
941c09616b
commit
afbbfe5109
6
Help/release/dev/mingw-find-no-dll.rst
Normal file
6
Help/release/dev/mingw-find-no-dll.rst
Normal file
@ -0,0 +1,6 @@
|
||||
mingw-find-no-dll
|
||||
-----------------
|
||||
|
||||
* When using MinGW tools, the :command:`find_library` command no longer
|
||||
finds ``.dll`` files by default. Instead it expects ``.dll.a`` import
|
||||
libraries to be available.
|
@ -24,7 +24,7 @@ macro(__windows_compiler_clang_gnu lang)
|
||||
set(CMAKE_DEPFILE_FLAGS_${lang} "-MD -MT <OBJECT> -MF <DEPFILE>")
|
||||
|
||||
set(CMAKE_FIND_LIBRARY_PREFIXES "lib" "")
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll" ".dll.a" ".a" ".lib")
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a" ".lib")
|
||||
set(CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS 1)
|
||||
set (CMAKE_LINK_DEF_FILE_FLAG "-Xlinker /DEF:")
|
||||
|
||||
|
@ -25,7 +25,7 @@ endif()
|
||||
|
||||
if(MINGW)
|
||||
set(CMAKE_FIND_LIBRARY_PREFIXES "lib" "")
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll" ".dll.a" ".a" ".lib")
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a" ".lib")
|
||||
set(CMAKE_C_STANDARD_LIBRARIES_INIT "-lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32")
|
||||
set(CMAKE_CXX_STANDARD_LIBRARIES_INIT "${CMAKE_C_STANDARD_LIBRARIES_INIT}")
|
||||
endif()
|
||||
|
Loading…
Reference in New Issue
Block a user