From 357a60863f25df1e14162e5eecc26feaa47f2049 Mon Sep 17 00:00:00 2001 From: Clifford Yapp <238416+starseeker@users.noreply.github.com> Date: Mon, 9 Sep 2024 12:56:35 -0400 Subject: [PATCH] Adjust LoadLibrary cmake script --- CMake/LoadLibraryCheck.cmake | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/CMake/LoadLibraryCheck.cmake b/CMake/LoadLibraryCheck.cmake index a4dce448..f0a77628 100644 --- a/CMake/LoadLibraryCheck.cmake +++ b/CMake/LoadLibraryCheck.cmake @@ -38,18 +38,23 @@ function(LoadLibraryCheck LLTEST_EXEC dlldir) if (NOT EXISTS "${dlldir}") + message("Dll directory ${dlldir} not found\n") return() endif (NOT EXISTS "${dlldir}") if (NOT EXISTS "${LLTEST_EXEC}") + message("Test executable ${LLTEST_EXEC} not found\n") return() endif (NOT EXISTS "${LLTEST_EXEC}") file(GLOB dll_files RELATIVE "${dlldir}" "${dlldir}/*.dll") set(load_fail 0) foreach(dlf ${dll_files}) - message("Dll LoadLibrary check: ${dlf}") - execute_process(COMMAND ${LLTEST_EXEC} ${dlf} RESULT_VARIABLE LSTATUS OUTPUT_VARIABLE LOUT) + message("Dll LoadLibrary check: ${LLTEST_EXEC} ${dlf}") + execute_process(COMMAND ${LLTEST_EXEC} ${dlf} + RESULT_VARIABLE LSTATUS OUTPUT_VARIABLE LOUT ERROR_VARIABLE LOUT + WORKING_DIRECTORY ${dlldir} + ) if (LSTATUS) - message("LoadLibrary call with dll file ${dllfile} did not succeed.") + message("LoadLibrary call with dll file ${dllfile} did not succeed: ${LOUT}") set(load_fail 1) endif (LSTATUS) endforeach(dlf ${dll_files}) @@ -58,9 +63,9 @@ function(LoadLibraryCheck LLTEST_EXEC dlldir) endif (load_fail) endfunction(LoadLibraryCheck) -if (CMAKE_BUILD_TYPE AND LEXEC AND DLL_DIR) - LoadLibraryCheck(${CMAKE_BUILD_TYPE} ${LEXEC} ${DLL_DIR}) -endif (CMAKE_BUILD_TYPE AND LEXEC AND DLL_DIR) +if (LEXEC AND DLL_DIR) + LoadLibraryCheck(${LEXEC} ${DLL_DIR}) +endif (LEXEC AND DLL_DIR) # Local Variables: # tab-width: 8