I have a project I successfully built under mingw32 and I'm now attempting
to build under mingw64.
I am cross compiling under Fedora x86_64...
In order to pull in all the DLLs for CPack I devised the following:
# Try to grab all the runtime dlls for the windows installer.
# This will break if the dll names change!
foreach(RUNTIME
libgcc_s_sjlj-1.dll
libgcc_s_seh-1.dll
libstdc++-6.dll
libsndfile-1.dll
....
message(STATUS "Checking for ${RUNTIME}")
find_library(${RUNTIME}_LIB NAMES ${RUNTIME})
if(${RUNTIME}_LIB-FOUND)
message(STATUS "runtime found: ${${RUNTIME}_LIB}")
list(APPEND CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS ${${RUNTIME}_LIB})
else()
message(STATUS "${RUNTIME} not found. Hope nothing breaks!")
endif()
endforeach()
The problem is that two different libgcc_s library variants are used...
libgcc_s_sjlj-1.dll w/ mingw32
libgcc_s_seh-1.dll w/ mingw64
I could take them out of the foreach loop and check for them separately but
I was looking for something a bit more elegant which is why I added the
NAMES modifier to find_library.
Is there a way to pass both to the find_library macro? I tried making them
a list but then foreach iterated over them. I tried putting them in quotes
but then it treats them as a string...
Ideas?
Thanks,
Richard
--
Powered by www.kitware.com
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Kitware offers various services to support the CMake community. For more
information on each offering, please visit:
CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake